/* CSS Document */

.header {
    display: none !important;
}

.header_sp {
    display: visible !important;
}

.menu {
    display: none !important;
}

.header_menu_list {
    display: none;
}

.contact_pc {
    display: none;
}

.top_area_contents2 {
    display: none;
}

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.fleft {
    float: left;
}

.fright {
    float: right;
}

.block {
    display: block;
}

.inline {
    display: inline;
}

.inline_block {
    display: inline-block;
}

a img:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
}

@font-face {
    font-family: 'Revenge';
    src: url(./font/CFRevenge_Regular.ttf) format('truetype');
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: HGGothicE;
    src: url(./font/HGGothicE_Regular.TTC);
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: HGPSoei;
    src: url(./font/HGSoeiKakugothicUB.ttf);
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: 'HGSoeiPresenceEB';
    src: url(./font/HGPSoeiPresenceEB.ttf) format('truetype');
    font-style: normal;
    font-weight: normal;
}


/*********** header ***************/

.header_sp {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
    background-color: #fff;
    width: 100%;
}

.header_sp2 {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10;
    background-color: #fff;
    width: 100%;
}

.logo img {
    width: 40%;
    float: left;
}

.tel_sp1 {
    float: left;
    position: relative;
    width: 85%;
}

.tel_sp2 {
    float: left;
    position: absolute;
    bottom: 2%;
    right: 1%
}

.head_menu {
    float: right;
    width: 14%;
}

.header_menu_list .footer_list {
    line-height: 170% !important;
    overflow-y: scroll;
    height: calc(100vh - 100px);
    padding: 20px 0;
}

.header_menu_list .footer_list li {
    z-index: 2;
    position: relative;
}

.teaser_area {
    margin-top: 15%;
}

.bx-wrapper {
    margin-bottom: 30px;
}

.bx-wrapper .bx-controls-direction a {
    z-index: 1;
}


/***************** top_service ************************/

.top_service {
    width: 90%;
    margin: 0 auto 40px;
}

.top_service_maintitle {
    margin: 0 3% 20px;
    text-align: center;
}

.top_service_area {
    margin: 10px auto;
    width: 49%;
    margin-top: 10px;
    float: left;
    margin-right: 1%;
}

.top_service_photo img {
    width: 100%;
}

.top_service_column {}

.service_title {
    margin-bottom: 5px;
    margin-top: 10px;
    font-size: 90%;
    font-weight: bold;
}

.service_text {
    overflow: hidden;
    font-size: 60%;
    line-height: 150%;
    margin-bottom: 10px;
}

.button {
    display: inline-block;
    width: 60%;
    height: 30px;
    text-align: center;
    text-decoration: none;
    line-height: 38px;
    outline: none;
    font-size: 80%;
}

.button,
.button::before,
.button::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.button {
    position: relative;
    background-color: #fff;
    border: 1px solid #eb70a6;
    color: #eb70a6 !important;
    line-height: 30px;
    overflow: hidden;
}


/*************  top_feature *******************/

.top_feature img {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
}

.top_feature {
    width: 100%;
    position: relative;
}

.top_feature::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 60%;
    left: 0;
    bottom: 0;
    background: rgb(255, 255, 255, .5);
    z-index: 1;
}

.top_feature img {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
}

.top_feature_alt {
    font-weight: bold;
    z-index: 2;
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 6vw;
    color: #000000;
    letter-spacing: -.1em;
    text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
}

.top_feature_txt {
    font-weight: bold;
    z-index: 2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: right;
    padding: 10px;
    font-size: 6vw;
    color: #fff;
    letter-spacing: -.1em;
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
}


/********* top_suggestion ************/

.top_suggestion {
    background: #ff0000;
    padding-bottom: 30px;
    position: relative;
}

.top_suggestion_wrapper {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

.top_suggestion h2 {
    text-align: center;
    padding: 20px;
    font-size: 7.5vw;
    color: #fff;
    letter-spacing: -.1em;
    line-height: 1.2;
    font-weight: bold;
}

.top_suggestion_item {
    display: flex;
    flex-wrap: wrap;
}

.top_suggestion1 {
    background: linear-gradient(to bottom, #fff 45%, #ff0000 40%);
}

.top_suggestion_inner {
    width: 100%;
    text-align: center;
    font-size: 30px;
    letter-spacing: -.1em;
    line-height: 1.6;
}

.top_suggestion_cont {
    width: 100%;
    max-width: 100%;
    background: #fff;
    padding: 40px;
}

.top_suggestion h3 {
    font-weight: bold;
    color: #ff0000;
    font-size: 60px;
    letter-spacing: -.1em;
    text-shadow: rgb(0, 0, 0) 5px 0px 0px, rgb(0, 0, 0) 4.90033px 0.993347px 0px, rgb(0, 0, 0) 4.60531px 1.94709px 0px, rgb(0, 0, 0) 4.12668px 2.82321px 0px, rgb(0, 0, 0) 3.48353px 3.58678px 0px, rgb(0, 0, 0) 2.70151px 4.20736px 0px, rgb(0, 0, 0) 1.81179px 4.6602px 0px, rgb(0, 0, 0) 0.849836px 4.92725px 0px, rgb(0, 0, 0) -0.145998px 4.99787px 0px, rgb(0, 0, 0) -1.13601px 4.86924px 0px, rgb(0, 0, 0) -2.08073px 4.54649px 0px, rgb(0, 0, 0) -2.94251px 4.04248px 0px, rgb(0, 0, 0) -3.68697px 3.37732px 0px, rgb(0, 0, 0) -4.28444px 2.57751px 0px, rgb(0, 0, 0) -4.71111px 1.67494px 0px, rgb(0, 0, 0) -4.94996px 0.7056px 0px, rgb(0, 0, 0) -4.99147px -0.291871px 0px, rgb(0, 0, 0) -4.83399px -1.27771px 0px, rgb(0, 0, 0) -4.48379px -2.2126px 0px, rgb(0, 0, 0) -3.95484px -3.05929px 0px, rgb(0, 0, 0) -3.26822px -3.78401px 0px, rgb(0, 0, 0) -2.4513px -4.35788px 0px, rgb(0, 0, 0) -1.53666px -4.75801px 0px, rgb(0, 0, 0) -0.560763px -4.96845px 0px, rgb(0, 0, 0) 0.437495px -4.98082px 0px, rgb(0, 0, 0) 1.41831px -4.79462px 0px, rgb(0, 0, 0) 2.34258px -4.41727px 0px, rgb(0, 0, 0) 3.17346px -3.86382px 0px, rgb(0, 0, 0) 3.87783px -3.15633px 0px, rgb(0, 0, 0) 4.4276px -2.32301px 0px, rgb(0, 0, 0) 4.80085px -1.39708px 0px, rgb(0, 0, 0) 4.98271px -0.415447px 0px;
}

.suggestion_save {
    background: #fff;
    padding: 40px;
}

.suggestion_link {
    background: #00ffff;
    position: relative;
    padding: 45px 60px;
}

.suggestion_link img {
    width: 100%;
}

.suggestion_link a {
    display: block;
    position: absolute;
    bottom: 45px;
    left: 60px;
    width: calc(100% - 120px);
    padding: 20px;
    background: #f19ec2;
    border-radius: 10px;
    color: #fff;
    text-align: center;
    font-size: 7vw;
    letter-spacing: -.1em;
}

.suggestion_character {
    display: none;
}

.suggestion_character_sp {
    display: block;
    float: left;
    width: 52%;
}

@media (max-width: 480px) {
    .top_suggestion_cont,
    .suggestion_save,
    .suggestion_link {
        padding: 40px 20px;
    }
    .suggestion_link a {
        width: calc(100% - 40px);
        left: 20px;
    }
    .top_suggestion h3 {
        font-size: 12vw;
    }
    .top_suggestion_inner {
        font-size: 6vw;
    }
}


/********* top_plan ************/

.top_plan {
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
    padding-bottom: 60px;
}

.top_plan_maintitle {
    margin-bottom: 40px;
    padding-top: 60px;
}

.top_plan_mainarea {
    margin: 0 auto;
    width: 80%;
}

.top_plan_area {
    margin: 20px auto;
}

.top_plan_area img {
    width: 100%;
}

.top_plan_contact_button {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 20px;
}


/***************** top_campaign ******************/

.top_campaign {
    background: #ffff00;
    padding: 60px 15px 10px;
    position: relative;
    margin-bottom: 70px;
}

.top_campaign::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 70px;
    background: #00ffff;
}

.top_campaign h2 {
    text-align: center;
    font-size: 60px;
    text-shadow: rgb(0, 0, 0) 5px 0px 0px, rgb(0, 0, 0) 4.90033px 0.993347px 0px, rgb(0, 0, 0) 4.60531px 1.94709px 0px, rgb(0, 0, 0) 4.12668px 2.82321px 0px, rgb(0, 0, 0) 3.48353px 3.58678px 0px, rgb(0, 0, 0) 2.70151px 4.20736px 0px, rgb(0, 0, 0) 1.81179px 4.6602px 0px, rgb(0, 0, 0) 0.849836px 4.92725px 0px, rgb(0, 0, 0) -0.145998px 4.99787px 0px, rgb(0, 0, 0) -1.13601px 4.86924px 0px, rgb(0, 0, 0) -2.08073px 4.54649px 0px, rgb(0, 0, 0) -2.94251px 4.04248px 0px, rgb(0, 0, 0) -3.68697px 3.37732px 0px, rgb(0, 0, 0) -4.28444px 2.57751px 0px, rgb(0, 0, 0) -4.71111px 1.67494px 0px, rgb(0, 0, 0) -4.94996px 0.7056px 0px, rgb(0, 0, 0) -4.99147px -0.291871px 0px, rgb(0, 0, 0) -4.83399px -1.27771px 0px, rgb(0, 0, 0) -4.48379px -2.2126px 0px, rgb(0, 0, 0) -3.95484px -3.05929px 0px, rgb(0, 0, 0) -3.26822px -3.78401px 0px, rgb(0, 0, 0) -2.4513px -4.35788px 0px, rgb(0, 0, 0) -1.53666px -4.75801px 0px, rgb(0, 0, 0) -0.560763px -4.96845px 0px, rgb(0, 0, 0) 0.437495px -4.98082px 0px, rgb(0, 0, 0) 1.41831px -4.79462px 0px, rgb(0, 0, 0) 2.34258px -4.41727px 0px, rgb(0, 0, 0) 3.17346px -3.86382px 0px, rgb(0, 0, 0) 3.87783px -3.15633px 0px, rgb(0, 0, 0) 4.4276px -2.32301px 0px, rgb(0, 0, 0) 4.80085px -1.39708px 0px, rgb(0, 0, 0) 4.98271px -0.415447px 0px;
    margin-bottom: 50px;
    color: #fff;
    font-weight: bold;
}

.top_campaign_wrapper {
    width: 100%;
    margin: 0 auto;
}

.top_campaign ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.top_campaign ul li {
    width: 49%;
    margin-bottom: 20px;
    position: relative;
}

.top_campaign ul li .campaign-txt {
    position: absolute;
    right: 15px;
    bottom: 20px;
    color: #fff;
    font-size: 2.75vw;
    text-align: right;
    font-weight: bold;
    line-height: 1.3;
}

.top_campaign ul li .campaign-txt h3 {
    font-size: 3.7vw;
}

@media (max-width: 600px) {
    .top_campaign ul li {
        width: 100%;
    }
    .top_campaign h2 {
        font-size: 10vw;
    }
    .top_campaign ul li .campaign-txt {
        font-size: 6vw;
    }
    .top_campaign ul li .campaign-txt h3 {
        font-size: 7.5vw;
    }
}


/**************** top_pickup *********************/

.top_pickup {
    background: linear-gradient(to bottom, #ff0000 30px, #fff 30px 50px, #ff0000 50px);
    padding: 20px 30px;
    letter-spacing: -.1em;
}

.top_pickup_wrapper {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
}

.top_pickup h2 {
    font-size: 60px;
    color: #fff;
    text-shadow: rgb(204, 0, 0) 10px 0px 0px, rgb(204, 0, 0) 9.95004px 0.998334px 0px, rgb(204, 0, 0) 9.80067px 1.98669px 0px, rgb(204, 0, 0) 9.55336px 2.9552px 0px, rgb(204, 0, 0) 9.21061px 3.89418px 0px, rgb(204, 0, 0) 8.77583px 4.79426px 0px, rgb(204, 0, 0) 8.25336px 5.64642px 0px, rgb(204, 0, 0) 7.64842px 6.44218px 0px, rgb(204, 0, 0) 6.96707px 7.17356px 0px, rgb(204, 0, 0) 6.2161px 7.83327px 0px, rgb(204, 0, 0) 5.40302px 8.41471px 0px, rgb(204, 0, 0) 4.53596px 8.91207px 0px, rgb(204, 0, 0) 3.62358px 9.32039px 0px, rgb(204, 0, 0) 2.67499px 9.63558px 0px, rgb(204, 0, 0) 1.69967px 9.8545px 0px, rgb(204, 0, 0) 0.707372px 9.97495px 0px, rgb(204, 0, 0) -0.291995px 9.99574px 0px, rgb(204, 0, 0) -1.28844px 9.91665px 0px, rgb(204, 0, 0) -2.27202px 9.73848px 0px, rgb(204, 0, 0) -3.2329px 9.463px 0px, rgb(204, 0, 0) -4.16147px 9.09297px 0px, rgb(204, 0, 0) -5.04846px 8.63209px 0px, rgb(204, 0, 0) -5.88501px 8.08496px 0px, rgb(204, 0, 0) -6.66276px 7.45705px 0px, rgb(204, 0, 0) -7.37394px 6.75463px 0px, rgb(204, 0, 0) -8.01144px 5.98472px 0px, rgb(204, 0, 0) -8.56889px 5.15501px 0px, rgb(204, 0, 0) -9.04072px 4.2738px 0px, rgb(204, 0, 0) -9.42222px 3.34988px 0px, rgb(204, 0, 0) -9.70958px 2.39249px 0px, rgb(204, 0, 0) -9.89993px 1.4112px 0px, rgb(204, 0, 0) -9.99135px 0.415807px 0px, rgb(204, 0, 0) -9.98295px -0.583741px 0px, rgb(204, 0, 0) -9.8748px -1.57746px 0px, rgb(204, 0, 0) -9.66798px -2.55541px 0px, rgb(204, 0, 0) -9.36457px -3.50783px 0px, rgb(204, 0, 0) -8.96758px -4.4252px 0px, rgb(204, 0, 0) -8.481px -5.29836px 0px, rgb(204, 0, 0) -7.90968px -6.11858px 0px, rgb(204, 0, 0) -7.25932px -6.87766px 0px, rgb(204, 0, 0) -6.53644px -7.56803px 0px, rgb(204, 0, 0) -5.74824px -8.18277px 0px, rgb(204, 0, 0) -4.90261px -8.71576px 0px, rgb(204, 0, 0) -4.00799px -9.16166px 0px, rgb(204, 0, 0) -3.07333px -9.51602px 0px, rgb(204, 0, 0) -2.10796px -9.7753px 0px, rgb(204, 0, 0) -1.12153px -9.93691px 0px, rgb(204, 0, 0) -0.123887px -9.99923px 0px, rgb(204, 0, 0) 0.87499px -9.96165px 0px, rgb(204, 0, 0) 1.86512px -9.82453px 0px, rgb(204, 0, 0) 2.83662px -9.58924px 0px, rgb(204, 0, 0) 3.77978px -9.25815px 0px, rgb(204, 0, 0) 4.68517px -8.83455px 0px, rgb(204, 0, 0) 5.54374px -8.32267px 0px, rgb(204, 0, 0) 6.34693px -7.72764px 0px, rgb(204, 0, 0) 7.0867px -7.0554px 0px, rgb(204, 0, 0) 7.75566px -6.31267px 0px, rgb(204, 0, 0) 8.34713px -5.50686px 0px, rgb(204, 0, 0) 8.8552px -4.64602px 0px, rgb(204, 0, 0) 9.27478px -3.73877px 0px, rgb(204, 0, 0) 9.6017px -2.79415px 0px, rgb(204, 0, 0) 9.83268px -1.82162px 0px, rgb(204, 0, 0) 9.96542px -0.830894px 0px;
    text-align: center;
    transform: translateY(-40%);
}

.top_pickup_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.top_pickup_list li {
    width: 100%;
}

.top_pickup_ttl {
    color: #fff;
    font-size: 36px;
    text-align: center;
    margin: 30px 0 20px;
}

.top_pickup_cont {
    font-size: 24px;
    padding: 10px 10px 20px;
    background: #fff;
    position: relative;
}

.top_pickup_cont img {
    width: 100%;
    margin-bottom: 20px;
}

.top_pickup_cont .pickup-link {
    position: absolute;
    padding: 20px 0 40px 20px;
    background: url(./images/triangle.png) no-repeat;
    background-size: auto 100%;
    background-position: left;
    top: 0;
    left: 0;
}

.top_pickup_cont .pickup-link a {
    color: #0000cc;
    font-size: 24px;
    font-weight: bold;
}

.pickup-service-ttl {
    margin: 50px 0 20px;
    color: #fff;
    font-size: 42px;
    text-align: center;
    font-weight: bold;
}

.pickup-service-cont {
    background: #facd89;
    border-radius: 10px;
    padding: 20px;
    font-size: 24px;
    line-height: 1.2;
    color: #fff;
}

.pickup-service-cont span {
    color: #cc3333;
}


/**************** top_logo *********************/

.top_logo {
    background: url(./images/torihikisaki.jpg);
    background-size: auto 100%;
    font-weight: bold;
}

.top_logo_cont {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    background: rgba(164, 0, 0, .6);
    padding: 30px 20px;
    text-align: center;
    color: #fff;
    font-size: 30px;
    line-height: 1.25;
    letter-spacing: -.1em;
}

.top_logo_cont .text-stroke {
    text-shadow: rgb(0, 0, 0) 5px 0px 0px, rgb(0, 0, 0) 4.90033px 0.993347px 0px, rgb(0, 0, 0) 4.60531px 1.94709px 0px, rgb(0, 0, 0) 4.12668px 2.82321px 0px, rgb(0, 0, 0) 3.48353px 3.58678px 0px, rgb(0, 0, 0) 2.70151px 4.20736px 0px, rgb(0, 0, 0) 1.81179px 4.6602px 0px, rgb(0, 0, 0) 0.849836px 4.92725px 0px, rgb(0, 0, 0) -0.145998px 4.99787px 0px, rgb(0, 0, 0) -1.13601px 4.86924px 0px, rgb(0, 0, 0) -2.08073px 4.54649px 0px, rgb(0, 0, 0) -2.94251px 4.04248px 0px, rgb(0, 0, 0) -3.68697px 3.37732px 0px, rgb(0, 0, 0) -4.28444px 2.57751px 0px, rgb(0, 0, 0) -4.71111px 1.67494px 0px, rgb(0, 0, 0) -4.94996px 0.7056px 0px, rgb(0, 0, 0) -4.99147px -0.291871px 0px, rgb(0, 0, 0) -4.83399px -1.27771px 0px, rgb(0, 0, 0) -4.48379px -2.2126px 0px, rgb(0, 0, 0) -3.95484px -3.05929px 0px, rgb(0, 0, 0) -3.26822px -3.78401px 0px, rgb(0, 0, 0) -2.4513px -4.35788px 0px, rgb(0, 0, 0) -1.53666px -4.75801px 0px, rgb(0, 0, 0) -0.560763px -4.96845px 0px, rgb(0, 0, 0) 0.437495px -4.98082px 0px, rgb(0, 0, 0) 1.41831px -4.79462px 0px, rgb(0, 0, 0) 2.34258px -4.41727px 0px, rgb(0, 0, 0) 3.17346px -3.86382px 0px, rgb(0, 0, 0) 3.87783px -3.15633px 0px, rgb(0, 0, 0) 4.4276px -2.32301px 0px, rgb(0, 0, 0) 4.80085px -1.39708px 0px, rgb(0, 0, 0) 4.98271px -0.415447px 0px;
}

.top_logo_cont .col-yel {
    color: #ffcc00;
}


/**************** top_scene *********************/

.top_scene {
    padding-bottom: 50px;
}

.top_scene_maintitle {
    text-align: center;
    margin-top: 60px;
    margin-bottom: 20px;
}

.top_scene_area {
    width: 90%;
    margin: 0 auto;
}

.top_scene_contents {
    width: 48%;
    display: block;
    float: left;
    margin-right: 2%;
}

.top_scene_contents img {
    margin-top: 20px;
}

.top_scene_text {
    font-size: 65%;
    text-align: center;
    line-height: 150%;
    margin-top: 10px;
}


/*********  top_banner **************/

.top_banner {
    padding-top: 3px;
    padding-bottom: 3px;
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
}

.top_banner_area {
    width: 90%;
    margin: 0 auto;
}

.top_banner_area img {
    width: 100%;
}


/****************** top_area *********************/

.eri01 {
    text-align: center;
    margin: 0 auto;
    border: solid 2px #999999;
    color: gray;
    table-layout: fixed;
    word-wrap: break-word;
    padding: 15px;
    max-width: 90%;
}

.top_area_area {
    margin-top: 30px;
    margin-bottom: 30px;
}

.top_area_contents {
    text-align: center;
    margin-bottom: 40px;
}

.top_area_contents2 {
    text-align: center;
    margin-bottom: 40px;
    background: url("./images/back01.jpg") repeat top left;
    width: 100%;
    height: auto;
    overflow: visible;
}

.top_area_contact_button {
    text-align: center;
    margin-top: 60px;
    margin-bottom: 100px;
}


/************ top_regional ************/

.top_regional {
    padding-top: 60px;
}

.top_regional h2 {
    font-family: 'HGPSoeiKakugothicUB';
    color: #45bdcf;
    font-size: 36px;
    text-align: center;
    margin-bottom: 30px;
}

.top_regional p.en-ttl {
    font-family: 'Noto Serif JP', serif;
    color: #666;
    font-size: 16px;
    text-align: center;
    line-height: 2;
    margin-bottom: 10px;
    position: relative;
    padding: 15px 0px 20px;
    margin-top: 10px;
    font-style: italic;
}

.top_regional p.en-ttl::before {
    content: '';
    display: block;
    height: 20px;
    width: 1.5px;
    background: #45bdcf;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: calc(50% + 30px);
}

.top_regional p.en-ttl::after {
    content: '';
    display: block;
    height: 20px;
    width: 1.5px;
    background: #45bdcf;
    transform: rotate(45deg);
    position: absolute;
    bottom: 0;
    right: calc(50% + 30px);
}

.pc {
    display: none !important;
}

.top_regional ul li a {
    width: 100%;
    background: #49bed0;
    border: 1px solid #fff;
    display: block;
    color: #c7edf3;
    font-family: 'HGSoeiPresenceEB';
    font-size: 30px;
    letter-spacing: -.1em;
    padding: 30px 0;
    text-align: center;
}

.top_regional_area {
    background: #ccffff;
    padding: 30px 20px;
    text-align: center;
    line-height: 1.7;
}

/* 1/29 masamaru ここから */
/************  top_information **************/
.top_information {
  margin-top: 40px;
}

.top_information a {
  background-color: transparent;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.top_information .container {
  margin: 0 auto;
  padding: 0;
  max-width: 1200px;
  width: 90%;
}

.top_information__title-wrapper {
  margin-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top_information__title-wrapper .top_information__title {
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.875rem;
  line-height: 1.875rem;
  color: #333333;
}

.top_information__btn {
  display: block;
  position: relative;
  font-weight: bold;
  color: #333333;
}

.top_information .top_information__btn.display-none {
  display: none;
}

.top_information .top_information__btn::before {
  content: "";
  margin: auto;
  position: absolute;
  top: -7px;
  bottom: 0;
  left: -25px;
  width: 16px;
  height: 16px;
  background: url(./images/sub/icon_arrow_r.svg) no-repeat 0 0/100% auto;
}

.top_information__content-wrapper .nav {
  padding: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.top_information__content-wrapper .nav .nav-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
}

.top_information__content-wrapper .nav .nav-link {
  margin: 0 1%;
  padding: 15px 0;
  display: block;
  color: #fff;
  background: none;
  border-radius: 0.25rem;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.top_information__content-wrapper .nav .nav-link.active {
  color: #fbe660;
  background: #595959;
  position: relative;
}

.top_information__content-wrapper .nav .nav-link.active::after {
  margin: auto;
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 15px;
  height: 2px;
  background: #fbe660;
}

.top_information__content-wrapper .top_information__content {
  background: #fff;
  -webkit-box-shadow: 0 0 10px #808080;
          box-shadow: 0 0 10px #808080;
  padding: 20px;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  max-height: 380px;
  overflow-y: auto;
}

.top_information__content-wrapper .top_information__content > .active {
  display: block;
}

.top_information .p-news-list {
  border-top: dotted 1px #d9d9d9;
}

.top_information .p-news-list__item {
  padding-top: 12px;
  padding-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: dotted 1px #d9d9d9;
}

.top_information .p-news-list__date {
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
}

.top_information .p-news-list__category {
  padding: 4px 10px;
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  color: #333;
  font-size: 0.75rem;
  font-weight: bold;
  text-align: center;
  border-radius: 5px;
}

.top_information .p-news-list .p-category-news {
  background-color: #FFFF00;
}

.top_information .p-news-list .p-category-notice {
  background-color: #FF00FF;
}

.top_information .p-news-list__title {
  margin-left: 15px;
  font-size: 0.875rem;
  -ms-flex-preferred-size: 73%;
      flex-basis: 73%;
  font-weight: bold;
  color: #333333;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin: 10px 0;
}

.top_information .p-news-list__title a {
  display: block;
  color: #333333;
  position: relative;
}

.top_information__btnsp {
  margin-top: 30px;
}

.top_information__btnsp.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
/* 1/29 masamaru ここまで */

/************  top_cross **************/

.top_cross {
    background: linear-gradient(to bottom, #00ffff 40px, #ff0000 40px);
    padding: 70px 20px 20px;
    color: #fff;
}

.top_cross_wrapper {
    width: 100%;
    max-width: 1300px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
}

.top_cross_cont {
    width: 100%;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: -.1em;
}

.top_cross_cont h2 {
    font-size: 8vw;
    letter-spacing: -.1em;
    margin-bottom: 20px;
    font-weight: bold;
}

.top_cross_link {
    margin-top: 30px;
    text-align: center;
    font-size: 9vw;
    width: 100%;
    letter-spacing: -.1em;
    font-weight: bold;
}

.top_cross_link a {
    margin-top: 10px;
    display: block;
    background: #facd89;
    border-radius: 10px;
    padding: 20px;
    font-size: 10vw;
    color: #fff;
    letter-spacing: -.1em;
}


/************ footer ******************/

.footer {
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
    padding-top: 40px;
    padding-bottom: 40px;
}

.footer .inner {
    padding: 0 15px;
}

.footer_left {
    width: 100%;
    margin: 0 0 40px;
    text-align: center;
}

.footer_address {
    font-size: 80%;
    width: 90%;
    margin-left: 5%;
    line-height: 150%;
}

.footer_right {
    flex: none;
    width: 100%;
}

.footer .footer_list {
    width: 33.33%;
    line-height: 300%;
}

.footer_list li {
    border-top: 1px dashed #999;
    padding-left: 3%;
}

.footer_list a {
    width: 100%;
    display: block;
}

.footer_list a:hover {
    color: #eb70a6;
}

.footer_social {
    margin-top: 50px;
}

.footer_social a {
    display: block;
    width: 75px;
    margin: 0 10px;
}

.copy {
    padding-bottom: 90px;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 80%;
}

@media screen and (max-width: 640px) {
    .footer_right {
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 480px) {
    .footer .footer_list {
        width: 100%;
    }
}


/*************** topic_path *************************/

.topic_path {
    width: 97%;
    margin-top: 18%;
    margin-left: 3%;
    font-size: 70%;
}

.topic_path a {
    color: #666;
}

.subpage_title_area {
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
    margin-top: 1%;
    height: 90px;
}

.subpage_title {
    width: 100%;
    margin: 0 auto;
}

.subpage_title h1 {
    font-size: 160%;
    font-weight: bold;
    font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    line-height: 348%;
    float: left;
    margin-right: 20px;
    padding-left: 3%;
}

.etext {
    line-height: 500%;
    font-size: 120%;
    font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-style: italic;
    color: #999;
}


/************ subpage_mainphoto_area *****************/

.subpage_mainphoto_area {
    background-color: #f1adcc;
    width: 100%;
}

.subpage_mainphoto_area2 {
    background-color: #62c4e9;
    width: 100%;
}

.subpage_mainphoto_area3 {
    background-color: #d8f0fa;
    width: 100%;
}

.subpage_mainphoto_area3 .subpage_main_photo_right h2 {
    color: #00AFF8 !important;
}

.subpage_mainphoto_area3 .subpage_main_photo_right_text {
    color: #00AFF8 !important;
}

.subpage_main_photo_left {
    width: 100%;
}

.subpage_main_photo_left img {
    width: 100%;
}

.subpage_main_photo_right {
    width: 100%;
    padding: 5%;
}

.subpage_main_photo_right h3 {
    font-size: 150%;
    color: #fff;
    text-align: center;
    margin: 0 auto 10px;
    width: 100%;
    font-weight: bold;
    letter-spacing: 5px;
    line-height: 150%
}

.subpage_main_photo_right_text {
    font-size: 100%;
    color: #fff;
    text-align: center;
    margin: 10px auto 0;
    width: 100%;
    line-height: 150%;
}


/************ feature ******************/

.feature_area {
    margin-bottom: 10%;
}

.feature {
    margin: 10% auto 10%;
    width: 100%;
    border-top: 1px dashed #aaa;
    border-bottom: 1px dashed #aaa;
    font-size: 120%;
    color: #666;
    vertical-align: middle;
    padding: 5% 0 4%;
}

.feature_title {
    margin: 0 auto;
    text-align: center;
}

.feature_title img {
    vertical-align: middle;
    margin-right: 10px;
    margin-top: -10px;
    width: 15%;
}

.tanpin_title {
    text-align: center;
    margin-top: 60px;
    margin-bottom: 60px;
}

.tanpin_sub_title {
    margin-top: 60px;
}

.title_center {
    text-align: center;
    margin: 80px auto;
}

.title_underline {
    background: url("./images/sub/under_line_y.png") bottom left repeat-x;
    padding-left: 3%;
    padding-right: 3%;
    text-align: center;
    font-size: 140%;
    color: #333;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "メイリオ", Meiryo, serif;
    display: inline;
}

.title_underline_p {
    background: url("./images/sub/under_line_p.png") bottom left repeat-x;
    padding-left: 3%;
    padding-right: 3%;
    text-align: center;
    font-size: 140%;
    color: #333;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "メイリオ", Meiryo, serif;
    display: inline;
}

.title_underline_lb {
    background: url("./images/sub/under_line_lb.png") bottom left repeat-x;
    padding-left: 3%;
    padding-right: 3%;
    text-align: center;
    font-size: 140%;
    color: #333;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "メイリオ", Meiryo, serif;
    display: inline;
}

.sub_area {
    margin: 0 auto;
    width: 90%;
}

.sub_photo img {
    width: 100%;
}

.sub_text {
    line-height: 150%;
    text-align: center;
    margin: 20px 0;
}

.feature_contents {
    width: 100%;
    margin: 0 auto;
}

.feature_contents img {
    display: block;
    width: 100%;
}

.feature_text {
    display: block;
    font-size: 80%;
    line-height: 200%;
    width: 90%;
    margin: 2% auto;
}


/********* faq *********************/

.faq {
    width: 90%;
    margin: 10% auto;
}

.faq_q {
    background: url("./images/sub/ruki52.png") no-repeat center left;
    padding-left: 40px;
    line-height: 50px;
}

.faq_a {
    padding: 20px;
    line-height: 150%;
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
    margin-bottom: 40px;
}

.faq_a:before {
    content: url("./images/sub/ruki53.png");
    margin-top: 5px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.border1 {
    border: 1px dashed #ddd;
    margin: 10% 0;
}

.flow {
    width: 90%;
    margin: 10% auto;
}

.flow_title img {
    vertical-align: middle;
    margin-right: 10px;
    line-height: 75px;
    margin-top: -10px;
}

.flow_title {
    font-size: 120%;
    font-weight: bold;
    color: #333;
    line-height: 200%;
}

.flow_text {
    /*  */
}


/******* contact ********/

.contact_main_text {
    display: none;
}

#contact_pg {
    background: #f9f8f4;
}

#formWrap {
    width: 90%;
    margin: 10% auto 15%;
    color: #555;
    line-height: 160%;
    font-size: 140%;
}

.formTable {
    width: 100%;
    margin: 20px auto;
    border-collapse: collapse;
}

.formTable .form_text input {
    width: 100%;
    border-radius: 8px;
    border: solid #dfdfdf 1px;
    margin: 2px auto;
}

.formTable .form_text textarea {
    width: 100%;
    height: 200px;
}

.form_title {
    font-size: 80%;
    border-left: 5px solid #eb70a6;
    padding-left: 5%;
    margin-top: 4%;
    margin-bottom: 1%;
    line-height: 2em;
    background: #ebeae4;
    box-shadow: 1px 3px 3px grey;
}

.con_need {
    vertical-align: top;
    background: url("./images/contact_need.png") top right no-repeat;
    /* border: solid red 1px; */
}

.con_policy {
    border: none;
    width: 100%;
    height: 80%;
}

.con_check {
    width: 100%;
    /* border: solid red 1px; */
}

.form_check {
    font-size: 80%;
    padding-left: 6%;
}

.form_check input {
    transform: scale(1.5);
    margin-right: 3%;
}

p.error_messe {
    margin: 5px 0;
    color: red;
}

.red {
    color: #CF0303;
}

.text_lb {
    font-size: 120%;
    font-weight: bold;
    color: #62c4e9;
}

.text_p {
    font-size: 110%;
    font-weight: bold;
    color: #eb70a6;
}

.lh200 {
    line-height: 150%;
}

table.formTable {
    width: 100%;
    margin: 20px auto;
    border-collapse: collapse;
}

table.formTable td,
table.formTable th {
    border: 1px solid #ccc;
    padding: 10px;
}

table.formTable th {
    width: 30%;
    font-weight: normal;
    background: #efefef;
    text-align: left;
}

.saiyou_area {
    width: 85%;
    margin: 0 auto;
}

.price_text {
    width: 90%;
    margin: 0 auto;
    border: 1px dashed #ccc;
    padding: 2%;
}

.de1 {
    position: relative;
    background: #d8f0fa;
    box-shadow: 0px 0px 0px 5px #d8f0fa;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
    color: #454545;
}

.de1:after {
    position: absolute;
    content: '';
    left: -7px;
    top: -7px;
    border-width: 0 0 15px 15px;
    border-style: solid;
    border-color: #fff #fff #a8d4ff;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

.de2 {
    background: #a8d4ff;
    box-shadow: 0px 0px 0px 5px #a8d4ff;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
}

.de3 {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: -webkit-repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
    background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
}

.box30 {
    margin: 2em auto;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
    width: 90%;
    line-height: 150%;
}

.box30 .box-title {
    font-size: 1.2em;
    background: #5fc2f5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.box30 p {
    padding: 15px 20px;
    margin: 0;
    font-size: 80%;
}

.w40 {
    width: 90%;
    margin: 0 auto;
}

.w60 {
    width: 90%;
    margin: 0 auto;
}

.lb_text {
    color: #0C8FC0;
}

.box26 {
    position: relative;
    margin: 2em auto;
    padding: 2em 2em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}

.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #95ccff;
    font-weight: bold;
}

.box26 p {
    margin: 0;
    padding: 0;
}

.lh400 {
    line-height: 400%;
}

.box2 {
    padding: 0.5em 1em;
    margin: 2em auto;
    font-weight: bold;
    color: #6091d3;
    /*文字色*/
    background: #FFF;
    border: solid 3px #6091d3;
    /*線*/
    border-radius: 10px;
    /*角の丸み*/
}

.box5 {
    padding: 2em 2em;
    margin: 2em auto;
    border: double 5px #4ec4d3;
    text-align: left;
    font-size: 90%;
}

.w90 {
    width: 90%;
    margin: 0 auto;
}

.center {
    width: 80%;
    margin: 0 auto;
    text-align: left;
}

.box27 {
    position: relative;
    margin: 10% auto;
    padding: 2em 2em;
    border: solid 3px #62c1ce;
    width: 90%;
    line-height: 150%;
}

.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 2px 5%;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}

.sub_back {
    background-color: #f8f5f0;
    background-image: linear-gradient( -45deg, #fff 25%, #f8f5f0 25%, #f8f5f0 50%, #fff 50%, #fff 75%, #f8f5f0 75%, #f8f5f0);
    -webkit-background-size: 7px 7px;
    padding: 20px 0;
    margin: 60px 0;
}

.title_underline_small {
    background: url("./images/sub/under_line_y.png") bottom left repeat-x;
    padding-right: 3%;
    margin-bottom: 20px;
    margin-top: 10px;
    text-align: center;
    font-size: 150%;
    color: #333;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "メイリオ", Meiryo, serif;
    display: inline-block;
}

.saiyou_area {
    width: 90%;
    margin: 0 auto;
    border: 1px dashed #ddd;
    padding: 5%;
}


/***** aircon clean **********/

.subarea1 {
    text-align: center;
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    /* border:solid red 1px;  */
}

.subarea1 img {
    position: relative;
    max-width: 100%;
    height: auto;
}

.sub_text1 {
    position: absolute;
    /* z-index: 1; */
    font-size: 1.5em;
    font-weight: bold;
    color: #ffff33;
    display: inline-block;
    left: 12vw;
    top: 8vw;
    -webkit-text-stroke: 0.1rem #ffff33;
    letter-spacing: 1vw;
    font-family: CP_Revenge, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
    /* border:solid red 1px;  */
}

.sub_text2 {
    position: absolute;
    left: 3vw;
    top: 30vw;
    width: auto;
    font-weight: bold;
    -webkit-text-stroke: 0.05rem #000000;
    letter-spacing: -0.8vw;
    font-family: HGPGothicE, Revenge, YuMincho, Meiryo, serif;
    /* border:solid blue 1px;		 */
}

.sub_text21 {
    font-size: 2em;
    color: #3333ff;
    display: inline-block;
    /* border: solid red 1px; 	 */
}

.sub_text22 {
    font-size: 2em;
    color: white;
    display: inline-block;
    /* border : solid red 1px;  */
}

.sub_text3 {
    position: absolute;
    /* z-index: 10000; */
    font-size: calc(112.5% + 2vw);
    font-weight: bold;
    font-family: HGPGothicE, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
    color: #ffcc66;
    display: inline-block;
    left: 35vw;
    top: 50vw;
    -webkit-text-stroke: 0.1rem #ffcc66;
    -ms-transform: rotate(350deg);
    /* use over IE 9 */
    -webkit-transform: rotate(350deg);
    /* use chrome, safari, opera */
    transform: rotate(350deg);
    /* border:solid red 1px;  */
}

.subarea1 img {
    vertical-align: top;
}

.subarea2 {
    /* shadow effect */
    text-shadow: 2px 2px 2px gray;
    margin: 0 auto;
    padding: 0px;
    max-width: 1400px;
    text-align: center;
    background-color: #f19ec2;
}

.sub2_image1 {
    background: url(./images/aircon_back2.png) center right/contain no-repeat;
    background-size: 55%;
    height: auto;
    padding-bottom: calc(4vw*1.5);
    /* border:solid red 1px; */
}

.sub2_title {
    padding-top: 3vh;
    width: 100%;
    font-size: 1.8em;
    font-weight: bold;
    font-family: CP_Revenge, Revenge, YuMincho, Meiryo, serif;
    color: white;
    -webkit-text-stroke: 0.03rem black;
}

.sub2_text1_hd {
    margin-top: calc(5vw*3);
    padding-left: calc(5vw*2);
    text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.02rem red;
    font-family: CP_Revenge, Revenge, YuMincho, Meiryo, serif;
}

.sub2_text1_li1 {
    margin-top: calc(1vw*3);
    padding-left: calc(5vw*2);
    text-align: left;
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.07rem #ff6666;
    letter-spacing: 0.1rem;
    font-family: CP_Revenge, Revenge, YuMincho, Meiryo, serif;
}

.sub2_image2 {
    padding-bottom: 5vw;
    background: url(./images/aircon_back3.png) center left/contain no-repeat;
    background-size: 70%;
    height: auto;
    padding-bottom: calc(4vw*1.5);
}

.sub2_text2_hd {
    margin-top: calc(5vw*3);
    padding-right: calc(3vw*2);
    text-align: right;
    font-size: 1.8rem;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.1rem red;
    font-family: CP_Revenge, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
}

.sub2_text2_li1 {
    margin-top: calc(1vw*3);
    padding-right: calc(3vw*2);
    text-align: right;
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.07rem #ff6666;
    letter-spacing: 0.1rem;
    font-family: CP_Revenge, Revenge, HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
}

.subarea3 {
    position: relative;
    margin: 0 auto;
    max-width: 1400px;
    background: #00ffff;
    padding-top: 2.5vw;
}

.sub3_text1 {
    max-width: 100%;
    position: relative;
    padding-bottom: 2.5vw;
    text-align: center;
    font-size: 2em;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.05rem white;
    font-family: CP_Revenge, Revenge, HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
}

.sub3_text2 {
    background: #f19ec2;
    padding-top: 3vw;
}

.subarea4 {
    position: relative;
    margin: 0 auto;
    max-width: 1400px;
    background: #00ffff;
    padding-top: 5vw;
}

.sub4_text1 {
    font-size: 2.5em;
    padding-left: 6vw;
    color: red;
    font-weight: bold;
    font-family: HGPSoei, YuMincho, Meiryo, serif;
}

.sub4_text2 {
    color: white;
    font-size: 1.3em;
    padding-top: 2vw;
    padding-left: 6vw;
    -webkit-text-stroke: 0.03rem black;
    font-weight: bold;
    letter-spacing: -0.8vw;
    font-family: HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
}

.sub4_text3 {
    color: red;
    font-size: 1.15em;
    padding-bottom: 2vw;
    padding-left: 6vw;
    /* -webkit-text-stroke: 0.05rem red; */
    font-weight: bold;
    font-family: CP_Revenge, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
}

.sub4_btn {
    max-width: 85%;
    margin: 2vw auto;
    padding: 4vw 1vw;
    border-radius: 5px;
    background-color: #f39800;
    color: white;
    text-align: center;
    font-size: 1.5em;
    -webkit-text-stroke: 0.03rem black;
    font-weight: bold;
    letter-spacing: -0.3vw;
    font-family: CP_Revenge, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
}

.img_girl_1 {
    position: absolute;
    right: calc(1vw * 1.1);
    top: calc(1vw * 1.1);
    width: 30vw;
}

.subarea5 {
    max-width: 100%;
    padding: 6vw 5vw;
    background-color: #ff66cc;
    letter-spacing: -0.2rem;
    font-family: HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.sub5_text11 {
    font-size: 2em;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.03rem black;
    display: inline-block;
}

.sub5_text12 {
    font-size: 2em;
    font-weight: bold;
    color: #ffcc66;
    -webkit-text-stroke: 0.03rem black;
    display: inline-block;
}

.sub5_text13 {
    font-size: 2em;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.03rem black;
    display: inline-block;
}

.sub5_text2 {
    color: white;
    letter-spacing: 0pt;
    line-height: 1.2em;
    font-size: 1em;
    /* font-weight: bold;  */
    padding-bottom: 5vw;
    /* border:solid red 1px; */
}


/* office */

.b_content {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.office_sub1 {
    position: relative;
    max-width: 100%;
    /* border:solid red 1px; */
}

.office_bgimage {
    position: absolute;
    max-width: 100%;
    display: inline-block;
    left: 0;
    top: 0;
}

.office_sub1_txt1 {
    position: relative;
    text-align: left;
    color: #cc3333;
    font-weight: bold;
    font-size: 1.2rem;
    padding-top: 5vw;
    padding-left: 14vw;
    font-family: HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
    letter-spacing: -0.3vw;
    /* border: solid blue 1px; */
}

.office_sub1_txt2 {
    position: relative;
    text-align: left;
    color: black;
    font-weight: bold;
    font-size: 1.3em;
    margin-top: 10vw;
    margin-left: 7vw;
    margin-bottom: 11vw;
    /* border: solid blue 1px; */
}

.office_sub2 {
    max-width: 100%;
    background: #fff45c;
    position: relative;
    /* border: solid blue 1px; */
}

.office_sub2_container {
    margin: 0 auto;
    max-width: 88%;
    background: #ffcc66;
}

.office_sub2_txt1 {
    margin: 0 auto;
    text-align: center;
    padding-top: 2vw;
    margin-bottom: 2vw;
    font-size: 1.3rem;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.1rem black;
    letter-spacing: -0.3vw;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.office_sub2_txt2 {
    margin: 0 auto;
    text-align: left;
    padding: 0 10vw;
    padding-bottom: 3vw;
    font-size: 0.8em;
    font-weight: bold;
    color: white;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    line-height: 5vw;
}

.sub3 {
    position: relative;
    max-width: 100%;
    background: #ffff00;
    /* border:solid red 1px; */
}

.sub3_header {
    margin: 0 auto;
    text-align: center;
    background: #ffff00;
    padding-top: 5vw;
    margin-bottom: 5vw;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.08rem black;
    letter-spacing: -0.5vw;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.sub3_head_txt1 {
    font-size: 2rem;
}

.sub3_head_txt2 {
    font-size: 1rem;
}

.sub3_content {
    margin: 0 auto;
    max-width: 90%;
    background: #ffff00;
    font-size: 1rem;
    font-weight: bold;
    line-height: 2em;
    flex: wrap;
    /* border:solid red 1px; */
}

.sub3_text {
    max-width: 90%;
    margin: 0 auto;
    text-align: left;
    /* border:solid red 1px; */
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.sub4 {
    max-width: 100%;
    background: #e60012;
    ;
    text-align: center;
    padding-top: 5vw;
    padding-bottom: 5vw;
    color: white;
    font-size: 1.3em;
    font-weight: bold;
}

.sub4_content {
    max-width: 100%;
    padding: 2vw 5vw;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1.3em;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}


/* ------------- cross-rifle --------------*/

.cross_back {
    position: relative;
    max-width: 100%;
    /* text-align: center; */
    padding-top: 1vw;
    color: white;
    font-size: 2rem;
    -webkit-text-stroke: 0.1rem black;
    letter-spacing: -1vw;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.cross_txt1 {
    display: inline-block;
    color: #6666ff;
}

.cross_txt2 {
    display: inline-block;
    color: #ffcc66;
}

.cross_txt3 {
    display: inline-block;
    color: #66ff99;
}

.cross_txt4 {
    display: inline-block;
    color: white;
}

.cross1_content {
    position: relative;
    padding: 2vw 8vw;
    text-align: center;
    font-size: 0.95em;
    font-weight: bold;
    line-height: 1.5em;
    letter-spacing: -0.3vw;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.cross1_btn {
    position: relative;
    text-align: center;
    font-size: 0.95em;
    font-weight: bold;
    line-height: 1.5rem;
    letter-spacing: -0.1rem;
    color: black;
    display: inline-block;
    /* border:solid red 1px; */
}

.cross_txt5 {
    background: url(./images/cross_btn1.png) top center no-repeat;
    background-size: 90%;
    display: inline-block;
    width: 60%;
    line-height: 3em;
}

.cross_txt6 {
    background: url(./images/cross_btn2.png) top center no-repeat;
    background-size: 90%;
    display: inline-block;
    width: 60%;
    line-height: 3em;
}

.cross_txt7 {
    background: url(./images/cross_btn3.png) top center no-repeat;
    background-size: 90%;
    display: inline-block;
    width: 60%;
    line-height: 3em;
}

.cross2_notice {
    position: relative;
    margin: 3%;
    padding: 5%;
    border: solid #858585 2px;
    border-radius: 23px;
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    line-height: 1.5em;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.cross2_content {
    margin-top: 5%;
    font-size: 0.9em;
    line-height: 1em;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.cross2_line1 {
    padding-top: 15px;
    background: url(images/sub/under_line_lb.png);
    /* border:solid red 1px; */
}

.cross2_line2 {
    padding-top: 15px;
    background: url(images/sub/under_line_p.png);
    /* border:solid red 1px; */
}

.cross2_line3 {
    padding-top: 15px;
    background: url(images/sub/under_line_y.png);
    /* border:solid red 1px; */
}

.cross3 {
    margin: 1vw 7vw;
    padding-top: 3vw;
    padding-bottom: 3vw;
    text-align: center;
    background: red;
    color: white;
    font-weight: bold;
    font-size: 1.2em;
    letter-spacing: -0.3rem;
    -webkit-text-stroke: 0.05rem black;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.cross4_content {
    text-align: center;
    margin: 0 auto;
    max-width: 90%;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4em;
    flex: wrap;
    padding: 5vw;
    /* border:solid red 1px; */
}

.cross4_text {
    text-align: left;
    /* border:solid red 1px; */
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.cross5_content {
    max-width: 100%;
    /* border:solid red 1px; */
}

.cross5_header {
    background: url(./images/cross_open4.png) left center;
    max-width: 100%;
    color: white;
    text-align: center;
    font-weight: bold;
    font-size: 2em;
    line-height: 1.5em;
    letter-spacing: -0.1em;
    -webkit-text-stroke: 0.12rem #ffcc66;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.cross5_bt {
    max-width: 100%;
    background: #ffcc66;
    padding-top: 5%;
    padding-bottom: 5%;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.cross5_btn {
    margin: 0 auto;
    max-width: 90%;
    background: #eb6100;
    border-radius: 8px;
    padding-top: 5%;
    padding-bottom: 5%;
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    color: white;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}


/*************** new page(about) *************************/

.about_teaser_area {
    margin-top: 0;
}

.about-teaser {
    margin-top: 0px;
    padding: 10px 0;
    line-height: 0;
    position: relative;
    letter-spacing: -.1em;
    width: 100%;
    max-width: 1160px;
    font-weight: bold;
}

.sub-teaser-top1 {
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
    font-size: 8vw;
    color: #fff;
    position: absolute;
    left: 30px;
    top: 8%;
    line-height: 1.1;
}

.sub-teaser-top2 {
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
    font-size: 6.5vw;
    color: #fff;
    position: absolute;
    left: 30px;
    top: 24%;
    line-height: 1.1;
    max-width: 55%;
}

.sub-teaser-bottom {
    color: #333;
    font-size: 7vw;
    text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
    position: absolute;
    left: 30px;
    bottom: 7%;
    line-height: 1.1;
}

.col-sky {
    color: #00ffff;
}

.col-orange {
    color: #ff9933;
}

.col-red {
    color: #cc0000;
}

.about-main {
    width: 100%;
    max-width: 1160px;
    padding: 0px;
    margin: 30px 0;
    letter-spacing: -.1em;
    color: #000000;
    margin: 50px auto;
}

.about-main h2 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
    text-align: center;
    padding: 0 20px;
}

.about-main-cont {
    background: #ffcc66;
    padding: 20px 20px 40px;
}

.about-main-txt {
    background: #fff;
    padding: 20px 10px;
    font-size: 20px;
    margin-bottom: 40px;
}

.about-main-link {
    text-align: center;
}

.about-main-link a {
    background: #e4007f;
    border-radius: 10px;
    color: #fff;
    font-size: 24px;
    padding: 20px 30px;
}

.about-confirm {
    background: #ffcc66;
    padding-top: 50px;
    letter-spacing: -.1em;
}

.about-confirm-cont {
    width: 100%;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
}

.about-confirm-cont h2 {
    text-align: center;
    color: #fff;
    font-size: 38px;
    font-weight: bold;
    line-height: 1.2;
    text-shadow: rgb(0, 0, 0) 5px 0px 0px, rgb(0, 0, 0) 4.90033px 0.993347px 0px, rgb(0, 0, 0) 4.60531px 1.94709px 0px, rgb(0, 0, 0) 4.12668px 2.82321px 0px, rgb(0, 0, 0) 3.48353px 3.58678px 0px, rgb(0, 0, 0) 2.70151px 4.20736px 0px, rgb(0, 0, 0) 1.81179px 4.6602px 0px, rgb(0, 0, 0) 0.849836px 4.92725px 0px, rgb(0, 0, 0) -0.145998px 4.99787px 0px, rgb(0, 0, 0) -1.13601px 4.86924px 0px, rgb(0, 0, 0) -2.08073px 4.54649px 0px, rgb(0, 0, 0) -2.94251px 4.04248px 0px, rgb(0, 0, 0) -3.68697px 3.37732px 0px, rgb(0, 0, 0) -4.28444px 2.57751px 0px, rgb(0, 0, 0) -4.71111px 1.67494px 0px, rgb(0, 0, 0) -4.94996px 0.7056px 0px, rgb(0, 0, 0) -4.99147px -0.291871px 0px, rgb(0, 0, 0) -4.83399px -1.27771px 0px, rgb(0, 0, 0) -4.48379px -2.2126px 0px, rgb(0, 0, 0) -3.95484px -3.05929px 0px, rgb(0, 0, 0) -3.26822px -3.78401px 0px, rgb(0, 0, 0) -2.4513px -4.35788px 0px, rgb(0, 0, 0) -1.53666px -4.75801px 0px, rgb(0, 0, 0) -0.560763px -4.96845px 0px, rgb(0, 0, 0) 0.437495px -4.98082px 0px, rgb(0, 0, 0) 1.41831px -4.79462px 0px, rgb(0, 0, 0) 2.34258px -4.41727px 0px, rgb(0, 0, 0) 3.17346px -3.86382px 0px, rgb(0, 0, 0) 3.87783px -3.15633px 0px, rgb(0, 0, 0) 4.4276px -2.32301px 0px, rgb(0, 0, 0) 4.80085px -1.39708px 0px, rgb(0, 0, 0) 4.98271px -0.415447px 0px;
    margin-bottom: 20px;
}

.about-confirm-cont h2 span {
    padding: 0 15px;
    background: url(./images/bg-txt.png) no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.about-confirm-txt img {
    float: left;
    width: 25%;
    margin-top: -30px;
    margin-right: 30px;
}

.about-confirm-txt p {
    padding: 30px 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.25;
}

.about-confirm-bottom {
    border-top: 15px solid #eb6100;
    padding: 30px 20px;
    font-size: 30px;
    color: #000000;
    text-align: center;
    line-height: 1.2;
    font-weight: bold;
}

.about-work {
    background: #ea68a2;
    padding: 30px 20px 0;
    letter-spacing: -.1em;
}

.about-work-wrapper {
    width: 100%;
    max-width: 1160px;
    margin: 0 auto;
}

.about-work h2 {
    color: #fff;
    font-size: 30px;
    text-align: center;
    margin: 20px 0 50px;
    font-weight: bold;
}

.about-work-wrapper ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.about-work-wrapper ul li {
    width: 100%;
    margin-bottom: 30px;
}

.about-work-wrapper ul li a {
    display: block;
    line-height: 0;
    position: relative;
}

.about-work-wrapper ul li a img {
    width: 100%;
}

.about-work-txt {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
    padding: 25px 5px;
    text-align: center;
    background: rgba(255, 255, 255, .6);
    font-size: 30px;
    color: #000;
    line-height: 1;
}

.about-service {
    padding: 20px;
    letter-spacing: -.1em;
}

.about-service h2 {
    text-align: center;
    color: #333;
    font-size: 30px;
    margin: 20px 0 30px;
    font-weight: bold;
}


/*************** area *******************/

h2.area-title {
    background: #ea68a2;
    color: #fff;
    font-family: 'HGSoeiPresenceEB';
    font-size: 40px;
    text-align: center;
    padding: 30px 0;
}

.city-info-ttl,
.area-main h2 {
    text-align: center;
    font-size: 36px;
    color: #33cccc;
    font-family: 'HGSoeiPresenceEB';
    margin: 50px auto 20px;
}

.city-info-cont {
    background: #49bed0;
    color: #fff;
    text-align: center;
    font-size: 24px;
    line-height: 1.5;
    padding: 30px 20px;
}

.city-info-img img {
    width: 100%;
}

.area-main {
    padding: 0 20px;
    margin: 50px 0 100px;
}

.area-main h3 {
    font-size: 28px;
    color: #33cccc;
    font-family: 'HGSoeiPresenceEB';
    margin: 30px auto 20px;
    border-bottom: 5px solid #49bed0;
    padding-bottom: 10px;
}

.area-main section p {
    font-family: 'HGSoeiPresenceEB';
    font-size: 20px;
    line-height: 2;
}


/*************** area-item *******************/

.area-item-page {
    font-family: HGPSoei;
    color: #333;
}

.area-item-page .topic_path {
    margin-top: 20px;
}

.area-item-header {
    background: url(images/sub/area-item-banner.jpg);
    background-size: cover;
    background-position: center;
    padding: 20px 0;
    width: 100%;
    max-width: 100%;
    margin: 0;
    display: block !important;
}

.area-item-header .wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.area-item-header .wrapper * {
    margin: 0;
}

.area-item-header .logo {
    width: 100%;
}

.area-item-header .logo img {
    width: 60%;
    padding-left: 10px;
    max-width: 200px;
}

.area-item-header h1 {
    font-size: 32px;
    letter-spacing: -.1em;
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
    color: #fff;
    font-family: HGPSoei;
    line-height: 1.2;
    width: 100%;
    text-align: right;
    padding-right: 5px;
}

.area-item-header h1 span {
    font-size: 67%;
}

.area-item-title {
    font-size: 50px;
    text-align: right;
    letter-spacing: -.1em;
    margin-top: 20px;
}

.area-item-page section h2 {
    font-size: 24px;
    color: #fff;
    margin-right: 20px;
    padding: 20px 15px;
    background: #ff9999;
    box-shadow: 20px 20px 0 #ff0000;
    vertical-align: middle;
    letter-spacing: -.1em;
    margin-bottom: 50px;
    margin-top: 30px;
    text-indent: -35px;
    padding-left: 50px;
}

.area-item-page section h2 span {
    font-size: 120%;
}

.area-item-page .sec1-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

.area-item-page .sec1-left-cont {
    padding: 30px 15px;
    background: #ff9999;
}

.area-item-page .sec1-left-cont h3 {
    font-size: 28px;
    text-align: center;
    color: #fff;
    letter-spacing: -.1em;
    margin-bottom: 20px;
}

.area-item-page .sec1-left-cont p {
    font-size: 24px;
    letter-spacing: -.1em;
    text-indent: -20px;
    padding-left: 20px;
    line-height: 1.2;
    margin-top: 5px;
}

.area-item-page .sec1-img {
    flex: 1;
    text-align: center;
}

.area-item-page .sec1-img img {
    width: 100%;
    max-width: 400px;
    transform: rotateY(-180deg);
}

.area-item-page .sec1-bottom h3 {
    padding: 0 15px;
    font-size: 36px;
    text-align: center;
    letter-spacing: -.1em;
    line-height: 1.5;
}

.area-item-page .sec1-bottom p {
    font-size: 24px;
    padding: 0 15px;
    text-align: center;
    letter-spacing: -.1em;
    line-height: 1.2;
}

.area-item-page .sec2-cont {
    padding: 0;
    text-align: center;
}

.area-item-page .sec2-cont h3 {
    text-align: center;
    font-size: 42px;
    letter-spacing: -.1em;
}

.area-item-page .sec2-cont ul {
    padding: 30px 20px;
    font-size: 4.75vw;
    letter-spacing: -.1em;
    line-height: 1.25;
}

.area-item-page .sec2-bottom {
    background: #f6b37f;
    text-align: center;
    padding: 20px;
    font-size: 24px;
    letter-spacing: -.1em;
    line-height: 1.2;
}

.area-item-page .sec3-cont {
    font-size: 24px;
    letter-spacing: -.1em;
    line-height: 1.2;
    padding: 0 15px;
}

.area-item-page .sec3-price {
    text-align: center;
    font-size: 28px;
    line-height: 1.2;
    letter-spacing: -.1em;
}

.area-item-page .sec3-price h3 {
    font-size: 9vw;
    letter-spacing: -.1em;
    margin: 20px 0;
}

.area-item-page .sec3-price-ttl {
    text-align: center;
    font-size: 8vw;
    color: #fff;
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
    letter-spacing: -.1em;
    margin-bottom: -15px;
}

.area-item-page .sec3-price-cont {
    padding: 30px 10px;
    background: #f6b37f;
    font-size: 8vw;
    letter-spacing: -.1em;
    text-align: center;
    margin-bottom: 15px;
}

.area-item-page .sec4-cont ul {
    margin: 30px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.area-item-page .sec4-cont {
    font-size: 24px;
    letter-spacing: -.1em;
    line-height: 1.2;
    padding: 0 15px;
}

.area-item-page .sec4-cont ul li {
    width: calc(100% - 35px);
    border-radius: 10px;
    background: #facd89;
    box-shadow: 35px 35px 0 #ec6941;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 48px;
    color: #fff;
    letter-spacing: -.1em;
    padding: 20px 10px;
    min-height: 175px;
    margin-bottom: 50px;
}

.area-item-page .sec5-cont {
    font-size: 24px;
    letter-spacing: -.1em;
    line-height: 1.35;
    padding: 0 15px;
}

.area-item-page .sec5-cont h3 {
    text-align: center;
    font-size: 42px;
    letter-spacing: -.1em;
    margin-bottom: 20px;
}

.area-item-page .area-item-info {
    margin-top: 100px;
    background: #ff9999;
    padding: 30px 0;
}

.area-item-page .area-item-info h2 {
    background: #fff;
    font-size: 50px;
    letter-spacing: -.1em;
    text-align: center;
    padding: 20px 0;
}

.area-item-page .area-item-info h2 span.small {
    font-size: 55%;
}

.area-item-page .area-item-info h2 span.medium {
    font-size: 80%;
}

.area-item-page .area-item-info h2 span.red {
    color: #ff0000;
}

.area-item-page .area-item-info .area-info-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
    align-items: center;
    padding-top: 30px;
}

.area-item-page .area-item-info .area-info-left {
    width: 100%;
    color: #fff;
    font-size: 40px;
    letter-spacing: -.1em;
}

.area-item-page .area-item-info .area-info-left span {
    font-size: 75%;
}

.area-item-page .area-item-info .area-info-left img {
    margin-top: 20px;
    width: 100%;
    max-width: 400px;
}

.area-item-page .area-item-info .area-info-right {
    width: 100%;
    font-size: 40px;
    letter-spacing: -.1em;
    margin-top: 30px;
}

.area-item-page .area-item-bottom {
    border-bottom: 25px solid #ff0000;
    line-height: 0;
}

.area-item-page .area-item-bottom img {
    width: 100%;
}

.area-item-page .area-item-info .area-info-right iframe {
    width: 100%;
    margin-top: 30px;
}

.menu1 a {
    cursor: pointer;
}

.menu1 .hide {
    display: none;
}


/************* top_estimate(2020.5.25) **************/

@font-face {
    font-family: 'HGPSoeiKakugothicUB';
    src: url(./font/HGPSoeiKakugothicUB.ttf) format('truetype');
    font-style: normal;
    font-weight: normal;
    font-display: swap;
}

.top_estimate {
    font-family: 'HGPSoeiKakugothicUB';
    background: linear-gradient(to top, #ffff00 70%, #fff 70%);
    letter-spacing: -.15em;
}

.top_estimate_wrapper {
    margin: 0 auto;
}

.e-character1 {
    width: 19%;
}

.e-character2 {
    width: 29%;
}

.e-cont-txt {
    width: 52%;
}

.e-cont-ttl {
    font-size: 8vw;
    margin-bottom: 10px;
}

.e-cont-ttl span {
    font-size: 75%;
}

.e-cont-ttl .text-left {
    margin-left: -6%;
}

.e-cont-txt .bg-red {
    background: #ff0000;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 4.75vw;
}

.e-cont-txt .bg-red span {
    color: #ffff00;
    font-size: 130%;
}

.e-cont::before {
    content: '';
    width: 90%;
    height: 100%;
    position: absolute;
    left: 5%;
    background: #f39700;
}

.e-cont {
    margin-top: 15px;
    padding-top: 5px;
}

.e-cont * {
    position: relative;
}

.menu {
    z-index: 2;
}

.top_estimate h2 {
    padding: 10px 0;
    font-size: 6.75vw;
    line-height: 1.2;
    text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;
}

.top_estimate h2 span.f-sm {
    font-size: 72%;
}

.col-r {
    color: #ff0000 !important;
}

.top_regional h2 span {
    color: #666;
}

.top_hole {
    color: #666;
    font-size: 2.25rem;
}

.top_hole_wrapper {
    padding: 0 15px;
    margin: 50px auto;
}

.top_hole ul {
    margin-bottom: 15px;
}

.top_hole ul li figure {
    width: 50%;
}

.top_hole ul li .top-hole-cont {
    width: 48%;
    font-size: 1.9rem;
}

.hole-pattern span {
    font-size: 3rem;
    padding: 5px 10px;
    background: #7ecef4;
    letter-spacing: -.05em;
    font-family: 'HGPSoeiKakugothicUB';
}

.top-hole-cont h3 {
    margin: 15px 0;
    font-size: 3rem;
    letter-spacing: -.05em;
    font-family: 'HGPSoeiKakugothicUB';
}

.top_regional ul li .top-hole-cont a {
    background: #f19ec2;
    border-radius: 10px;
    padding: 10px;
    margin: 10px 0 20px;
    font-size: 3rem;
    font-family: 'HGPSoeiKakugothicUB';
    letter-spacing: 0;
    cursor: pointer;
}

.top_office_wrapper {
    margin-top: 60px;
}

.top_office ul li {
    width: 31%;
    margin-bottom: 20px;
}

.top_office ul li h3 {
    font-size: 4vw;
    color: #999;
    margin-bottom: 10px;
    font-family: 'HGSoeiPresenceEB';
}

.top_office ul li .top-office-cont {
    width: 100%;
    height: 20vw;
    font-size: 4vw;
    background: #7ecef4;
    font-family: 'HGSoeiPresenceEB';
    line-height: 1.4;
}

@media screen and (max-width: 768px) {
    .top_hole ul li figure {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    .top_hole ul li .top-hole-cont {
        width: 100%;
    }
}

@media screen and (max-width: 480px) {
    .top_estimate h2 {
        font-size: 8.5vw;
    }
    .top_estimate {
        letter-spacing: 0;
    }
    .e-cont-ttl {
        margin-bottom: 5px;
    }
    .e-cont-txt .bg-red {
        padding: 5px 0;
        font-size: 4.5vw;
        border-radius: 5px;
        margin-bottom: 5px;
    }
    .hole-pattern span,
    .top-hole-cont h3,
    .top_regional ul li .top-hole-cont a {
        font-size: 2rem;
    }
    .top_hole ul li .top-hole-cont {
        font-size: 1.25rem;
    }
    .top_hole {
        font-size: 1.25rem;
        line-height: 1.25;
    }
    .top_office ul li {
        width: 100%;
    }
    .top_office ul li h3 {
        font-size: 10vw;
    }
    .top_office ul li .top-office-cont {
        height: 45vw;
        font-size: 10vw;
    }
}