/* CSS Document */

.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:hover,
a img:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
}

.footer_sp {
    display: none;
}

.header_sp {
    display: none;
}

.header_sp2 {
    display: none;
}

.header_menu_list {
    display: none;
}

.contact_sp {
    display: none;
}

.top_area_contents2_sp {
    display: none;
}

@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/HGPSoeiKakugothicUB.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;
}

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


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

.header {
    margin: 20px auto;
    width: 1160px;
}

.logo {
    margin-left: 40px;
}

.tel {
    margin-right: 40px;
}

h1 {
    font-size: 0.5em;
    color: brown;
}


/********** teaser **************/

.teaser_area {
    background-color: #eb70a6;
    background-image: linear-gradient( -45deg, #fff 25%, #ffc0cb 25%, #ffc0cb 50%, #fff 50%, #fff 75%, #ffc0cb 75%, #ffc0cb);
    -webkit-background-size: 7px 7px;
}

.teaser {
    margin: 0 auto;
    width: 1160px;
}

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


/**************** menu **********************/

.menu {
    margin: 0 auto;
    width: 1160px;
    position: relative;
    text-align: left;
    z-index: 2;
}

.menu ul {
    text-align: left;
}

.menu ul li {
    display: inline-block;
}

.menu ul li {
    border-left: 1px solid #999;
    border-right: 1px solid #999;
}

.menu ul li+li {
    border-left: 0px;
    border-right: 1px solid #999;
    padding-right: 0px;
}

.menu_service {
    display: block;
    width: 230px;
    text-align: center;
    padding: 10px 0;
    cursor: pointer;
}

.menu ul li a {
    display: block;
    width: 230px;
    text-align: center;
    padding: 10px 0;
}

.menu ul li a:hover {
    display: block;
    width: 230px;
    text-align: center;
    background-color: #62c4e9;
    text-decoration: none;
    padding: 10px 0;
    color: #fff;
}

.menu ul li ul {
    list-style: none;
    position: absolute;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 0;
}

.menu ul li ul li {
    overflow: hidden;
    width: 231px;
    height: 0;
    border: none;
    background-color: #EDA9C7;
}

.menu ul li ul li a {
    color: #fff;
    width: 231px;
}

.menu ul li ul li a:hover {
    color: #fff;
    width: 231px;
}

.menu ul li:hover ul li {
    overflow: visible;
    height: 36px;
}


/************* sub_menu ***************/

.sub_menu {
    background-color: #EDA9C7;
}


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

.top_service {
    margin: 80px auto;
    width: 1160px;
}

.top_service_area {
    width: 300px;
    float: left;
    margin-right: 130px;
    margin-top: 40px;
}

.top_service_area:nth-child(4),
.top_service_area:nth-child(7) {
    margin-right: 0px;
}

.top_service_column {
    width: 300px;
    height: 350px;
    overflow: hidden;
}

.top_service_maintitle {
    margin-bottom: 40px;
}

.service_title {
    margin-bottom: 10px;
    margin-top: 10px;
    font-size: 110%;
    font-weight: bold;
    color: #333;
}

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

.button {
    display: inline-block;
    width: 150px;
    height: 40px;
    text-align: center;
    text-decoration: none;
    line-height: 40px;
    outline: none;
}

.button::before,
.button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

.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;
    z-index: 2;
    background-color: #fff;
    border: 2px solid #eb70a6;
    color: #eb70a6 !important;
    line-height: 40px;
    overflow: hidden;
}

.button:hover {
    color: #fff !important;
}

.button::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.button:hover::after {
    -webkit-transform: scale(2) rotate(180deg);
    transform: scale(2) rotate(180deg);
    background: #eb70a6;
}


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

.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 {
    z-index: 2;
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: 72px;
    color: #000000;
    letter-spacing: -.1em;
    text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
}

.top_feature_txt {
    z-index: 2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: right;
    padding: 20px;
    font-weight: bold;
    font-size: 72px;
    color: #fff;
    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;
}


/********* 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: right;
    padding: 40px;
    font-size: 72px;
    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: 50%;
    text-align: center;
    font-size: 30px;
    letter-spacing: -.1em;
    line-height: 1.6;
}

.top_suggestion_cont {
    width: 100%;
    max-width: 700px;
    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: 48px;
    letter-spacing: -.1em;
}

.suggestion_character {
    position: absolute;
    bottom: calc(50% - 130px);
    left: calc(50% - 700px);
    width: 620px;
    z-index: 3;
}

.suggestion_character_sp {
    display: none;
}


/********* 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 {
    width: 962px;
    margin: 0 auto;
}

.top_plan_area {
    width: 304px;
    float: left;
    margin-right: 25px;
    margin-top: 20px;
}

.top_plan_area:nth-child(3),
.top_plan_area:nth-child(6) {
    margin-right: 0px;
}

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


/***************** 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: 72px;
    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%;
    max-width: 1200px;
    margin: 0 auto;
}

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

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

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

.top_campaign ul li .campaign-txt h3 {
    font-size: 36px;
}


/**************** 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: 120px;
    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: 30%;
}

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

.top_pickup_cont {
    font-size: 30px;
    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: 72px;
    text-align: center;
    font-weight: bold;
}

.pickup-service-cont {
    background: #ffa500;
    border-radius: 10px;
    padding: 20px;
    font-size: 40px;
    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%;
}

.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: 60px;
    line-height: 1.25;
    letter-spacing: -.1em;
    font-weight: bold;
}

.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: 100px;
}

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

.top_scene_area {
    width: 962px;
    margin: 0 auto;
}

.top_scene_contents {
    width: 210px;
    display: block;
    float: left;
    margin-right: 40px;
}

.top_scene_contents:nth-child(4) {
    margin-right: 0px;
}

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

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


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

.top_banner {
    padding-top: 10px;
    padding-bottom: 10px;
    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_banner22 {
    padding-top: 1px;
    padding-bottom: 10px;
    background-color: #91B8E1;
    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: 962px;
    margin: 0 auto;
}

.top_banner_area a {
    margin-right: 40px;
}

.top_banner_area a:nth-child(3) {
    margin-right: 0px;
}


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

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

.top_area_area {
    margin-top: 60px;
    margin-bottom: 60px;
    /* border: solid red 1px; */
}

.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: 290px;
    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: 'HGSoeiPresenceEB';
    color: #45bdcf;
    font-size: 45px;
    text-align: center;
}

.top_regional p.en-ttl {
    font-family: 'HGSoeiPresenceEB';
    color: #666;
    font-size: 18px;
    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);
}

.top_regional_wrapper {
    margin: 30px 0;
    margin: 70px 0 0;
    padding: 30px 0;
    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;
}

.sp {
    display: none !important;
}

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

.top_regional ul li a {
    color: #33cccc;
    font-family: 'HGSoeiPresenceEB';
    font-size: 50px;
    letter-spacing: -.1em;
}

.top_regional_area {
    background: #ccffff;
    padding: 30px 0;
    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 a:link {
  color: #333;
}

.top_information .container {
  margin: 0 auto;
  padding: 0 15px 0;
  max-width: 960px;
}

.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 {
  font-size: 1.875rem;
  line-height: 1.875rem;
  color: #333333;
}

.top_information .top_information__btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-weight: bold;
  color: #333333;
}

.top_information .top_information__btn.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.top_information .top_information__btn::before {
  content: "";
  margin: auto;
  position: absolute;
  top: -4px;
  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 .nav-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  text-align: center;
}

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

.top_information__content-wrapper .nav .nav-link.active {
  background: #595959;
}

.top_information__content-wrapper .top_information__content {
  background: #fff;
  -webkit-box-shadow: 0 0 10px #808080;
          box-shadow: 0 0 10px #808080;
  padding: 50px 40px;
  max-height: 395px;
  overflow-y: auto;
}

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

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

.top_information__content-wrapper .top_information__content .p-news-list__item {
  padding: 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: dotted 1px #d9d9d9;
}

.top_information__content-wrapper .top_information__content .p-news-list__date {
  -ms-flex-preferred-size: 17%;
      flex-basis: 17%;
}

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

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

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

.top_information__content-wrapper .top_information__content .p-news-list__title {
  -ms-flex-preferred-size: 73%;
      flex-basis: 73%;
  margin-left: 20px;
  font-size: 0.875rem;
  font-weight: bold;
  color: #333;
}

.top_information__content-wrapper .top_information__content .p-news-list__title a {
  position: relative;
  display: block;
  color: #333;
}

.top_information__btnsp.display-none {
  display: none;
}
/* 1/29 masamaru ここまで */

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

.top_cross {
    background: linear-gradient(to bottom, #00ffff 40px, #ff69b4 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: 60%;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: -.1em;
}

.top_cross_cont h2 {
    font-size: 60px;
    letter-spacing: -.1em;
    font-weight: bold;
}

.top_cross_link {
    text-align: center;
    font-size: 50px;
    width: 38%;
    letter-spacing: -.1em;
    font-weight: bold;
}

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


/************ 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_area {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.footer_left {
    width: 380px;
    margin-right: 3%;
}

.footer_right {
    flex: 1;
}

.footer_address {
    font-size: 80%;
    margin-left: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.footer_list {
    line-height: 210%;
    font-size: 90%;
    margin-left: 20px;
    padding-top: 20px;
}

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

.footer_social {
    margin-top: 50px;
}

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

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


/************ sub ****************/

.topic_path {
    width: 1160px;
    margin: 40px auto 10px;
    font-size: 80%;
}

.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;
    height: 100px;
}

.subpage_title {
    width: 1160px;
    margin: 0 auto;
}

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

.etext {
    line-height: 100px;
    padding-top: 4px;
    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;
    height: 300px;
    margin-bottom: 100px;
}

.subpage_mainphoto_area2 {
    background-color: #62c4e9;
    height: 300px;
    /* margin-bottom: 100px; */
}

.subpage_mainphoto_area3 {
    background-color: #d8f0fa;
    height: 300px;
    margin-bottom: 100px;
}

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

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

.subpage_mainphoto {
    width: 1160px;
    margin: 0 auto;
}

.subpage_main_photo_left {
    float: left;
    width: auto;
}

.subpage_main_photo_left img {
    height: 300px;
}

.subpage_main_photo_right {
    float: left;
    width: auto;
}

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

.subpage_main_photo_right_text {
    font-size: 90%;
    color: #fff;
    text-align: center;
    margin: 40px auto 20px;
    width: 710px;
    line-height: 150%
}

.subpage_mainphoto_area4 {
    background-image: url("./images/aircon_cln.jpg") center center no-repeat;
    height: 1400px;
    margin-bottom: 100px;
}


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

.feature_area {
    margin-bottom: 160px;
}

.feature {
    margin: 80px auto 80px;
    width: 1160px;
    border-top: 1px dashed #aaa;
    border-bottom: 1px dashed #aaa;
    padding: 20px 80px;
    font-size: 250%;
    color: #666;
    vertical-align: middle;
    line-height: 100px;
}

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

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

.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 30px;
}

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

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

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

.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;
}

.sub_area {
    margin: 0 auto;
    width: 1160px;
}

.sub_area2 {
    margin: 0 auto;
    width: 720px;
}

.sub_photo {
    float: left;
    margin-right: 2%;
}

.sub_photo2 {
    float: right;
    margin-left: 2%;
}

.sub_text {
    line-height: 200%;
    overflow: auto;
}

.feature_contents {
    width: 1160px;
    margin: 0 auto;
}

.feature_contents img {
    float: left;
    display: block;
    width: 590px;
}

.feature_text {
    display: block;
    float: left;
    font-size: 90%;
    letter-spacing: 5px;
    line-height: 200%;
    margin-left: 40px;
    width: 530px;
}


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

.faq {
    width: 962px;
    margin: 0 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: 160px 0;
}

.flow {
    width: 962px;
    margin: 20px auto;
}

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

.flow_title {
    font-size: 180%;
    font-weight: bold;
    color: #333;
    line-height: 75px;
}

.flow_text {
    margin-left: 86px;
    margin-top: 10px;
    margin-bottom: 40px;
}


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

textarea,
input[type=text],
input[type=email],
input[type=file] {
    width: 100%;
}

select {
    height: 38px;
    padding: 0 10px;
}

#contact_pg {
    background: #f9f8f4;
}

#formWrap {
    width: 962px;
    margin: 0 auto 80px;
    color: #555;
    line-height: 200%;
    font-size: 100%;
    /* border: solid red 1px; */
}

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

table.formTable td,
table.formTable th {
    border: 1px solid rgb(247, 247, 247);
    padding: 10px;
}

table.formTable th {
    width: 30%;
    font-weight: bold;
    font-size: 110%;
    background: #ebeae4;
    text-align: left;
    box-shadow: 5px 1px 3px grey;
    font-family: "Kokoro", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "メイリオ", Meiryo, serif;
}

table.formTable td {
    padding-left: 2.5vw;
}

.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%;
}

#fileupload {
    background-color: #323232;
    /* height: 22px; */
    padding: 5px;
    margin-bottom: 5px;
    border-radius: 4px;
    color: #ffffff;
}

.con_check {
    float: left;
    width: 45%;
    /* border: solid red 1px; */
}


/* policy */

#contact_page {
    width: 100%;
    background: #f9f8f4;
}

.con_header {
    width: 100%;
    border-left: solid red 3px;
    /* border:solid red 1px; */
}

.con_content {
    width: 100%;
    color: #2e2e2e;
}

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

.red {
    color: #CF0303;
}

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

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

.lh200 {
    line-height: 200%;
}

.company_table_area {
    width: 1160px;
    margin: 0 auto;
}

.saiyou_area {
    width: 882px;
    margin: 0 auto;
    border: 2px dashed #ddd;
    padding: 40px
}

.price_text {
    width: 40%;
    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: 2em 2em;
    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: 40%;
    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: 40%;
    margin: 0 auto;
}

.w60 {
    width: 60%;
    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%;
}

.fullimage img {
    width: 100%;
}

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

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

.mt40px {
    margin-top: 40px;
}

.mt60px {
    margin-top: 60px;
}

.mb40px {
    margin-bottom: 40px;
}

.mb60px {
    margin-bottom: 60px;
}

.p_boder_l {
    border-left: 10px solid #eb70a6;
    padding-left: 10px;
}


/******* tuika ********/

.w60 h2 {
    padding-top: 10px;
    font-size: 2em;
    text-align: center;
}

.risu01 ul,
ol {
    color: #1e366a;
    border-top: solid #1e366a 1px;
    /*上のボーダー*/
    border-bottom: solid #1e366a 1px;
    /*下のボーダー*/
    padding: 0.5em 0 0.5em 1.5em;
}

.risu01 ul li,
ol li {
    line-height: 1.5;
    padding: 0.5em 0;
}


/*  */


/***** 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: 10000;
    font-size: 8em;
    font-weight: bold;
    font-family: 'Revenge', YuMincho, Meiryo, serif;
    color: #ffff33;
    display: inline-block;
    left: 7vw;
    top: 4vw;
    -webkit-text-stroke: 1rem #ffff33;
    letter-spacing: 1vw;
    /* border:solid red 1px;  */
}

.sub_text2 {
    position: absolute;
    left: 2vw;
    top: 20vw;
    width: auto;
    height: 10vw;
    font-weight: bold;
    font-family: HGGothicE, YuMincho, Meiryo, serif;
    -webkit-text-stroke: 0.5rem #000000;
    letter-spacing: -0.8vw;
    /* border:solid blue 1px;		 */
}

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

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

.sub_text3 {
    position: absolute;
    z-index: 10000;
    font-size: 7em;
    font-weight: bold;
    font-family: HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
    color: #ffcc66;
    display: inline-block;
    left: 25vw;
    top: 33.5vw;
    -webkit-text-stroke: 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 {
    margin: 0 auto;
    padding: 0px;
    max-width: 1400px;
    text-align: center;
    background-color: #f19ec2;
}

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

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

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

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

.sub2_image2 {
    padding-bottom: 7vh;
    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(8vw*2);
    padding-right: calc(5vw*1.5);
    text-align: right;
    font-size: 5em;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.2rem red;
    font-family: CP_Revenge, Revenge, HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
}

.sub2_text2_li1 {
    margin-top: calc(1vw*2);
    padding-right: calc(5vw*1.5);
    text-align: right;
    font-size: 5em;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.3rem #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: 8vw;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.3rem white;
    font-family: CP_Revenge, Revenge, 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: 9vw;
    padding-left: 6vw;
    color: red;
    font-weight: bold;
    font-family: HGPSoei, YuMincho, Meiryo, serif;
}

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

.sub4_text3 {
    color: red;
    font-size: 3.5vw;
    padding-bottom: 2vw;
    padding-left: 6vw;
    -webkit-text-stroke: 0.1rem red;
    font-weight: bold;
    font-family: HGSSoeiKakugothicUB, YuMincho, Meiryo, serif;
}

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

.img_girl_1 {
    position: absolute;
    right: calc(0.5vw * 1.1);
    top: calc(0.1vw * 1.1);
    width: 35%;
    /* border: solid red 1px; */
}

.subarea5 {
    margin: 0% auto;
    max-width: 1400px;
    padding-top: 4vw;
    padding-left: 3vw;
    background-color: #ff66cc;
    letter-spacing: -0.4rem;
    font-family: HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
}

.sub5_text11 {
    font-size: 6vw;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.5rem black;
    display: inline-block;
}

.sub5_text12 {
    font-size: 6vw;
    font-weight: bold;
    color: #ffcc66;
    -webkit-text-stroke: 0.3rem black;
    display: inline-block;
}

.sub5_text13 {
    z-index: 10;
    font-size: 6vw;
    font-weight: bold;
    color: white;
    -webkit-text-stroke: 0.3rem black;
    display: inline-block;
}

.sub5_text2 {
    margin-right: 2.5vw;
    letter-spacing: 0vw;
    color: white;
    font-size: 50px;
    font-weight: bold;
    padding-bottom: 5vw;
    line-height: 70px;
}


/* /////////////// office ///////////////*/

.b_content {
    text-align: center;
    margin: 0 auto;
    max-width: 1400px;
    /* border: solid blue 1px; */
}

.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: 4.5rem;
    padding-top: 3.5vw;
    padding-left: 11vw;
    font-family: HGSSoeiKakupoptai, YuMincho, Meiryo, serif;
    letter-spacing: -0.3vw;
    /* border: solid blue 1px; */
}

.office_sub1_txt2 {
    position: relative;
    text-align: left;
	color: dimgray;
    font-size: 3.5rem;
    margin-top: 5.8vw;
    margin-left: 7vw;
    margin-bottom: 11.5vw;
    /* 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: #ffaaaa;
}

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

.office_sub2_txt2 {
    margin: 0 auto;
    text-align: center;
    padding-left: 2vw;
    padding-right: 2vw;
    padding-bottom: 3vw;
    font-size: 2.5vw;
    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: 4vw;
    margin-bottom: 5vw;
    font-weight: bold;
    color: red;
    -webkit-text-stroke: 0.3rem black;
    letter-spacing: -0.3vw;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.sub3_head_txt1 {
    font-size: 6vw;
}

.sub3_head_txt2 {
    font-size: 4vw;
}

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

.sub3_photo {
    float: left;
    width: 40%;
    /* border:solid red 1px; */
}

.sub3_text {
    float: left;
    max-width: 60%;
    padding: 0 3vw 2vw 3vw;
    text-align: left;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}

.sub4 {
    max-width: 100%;
    background: #e60012;
    ;
    text-align: center;
    padding-top: 60px;
    padding-bottom: 60px;
    color: white;
    font-size: 50pt;
    font-weight: bold;
}

.sub4_content {
    max-width: 100%;
    padding: 50px 40px;
    text-align: center;
    font-size: 40pt;
    font-weight: bold;
    line-height: 1.2em;
    letter-spacing: -0.2rem;
    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: 6vw;
    font-weight: bold;
    -webkit-text-stroke: 0.4rem black;
    letter-spacing: -0.6vw;
    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: 2.8vw;
    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: 2.5vw;
    font-weight: bold;
    line-height: 1.5em;
    letter-spacing: -0.3vw;
    color: black;
    display: inline-block;
    /* border:solid red 1px; */
}

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

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

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

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

.cross2_content {
    font-size: 40pt;
    line-height: 1.2em;
    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: 1vw;
    padding-bottom: 1vw;
    text-align: center;
    background: red;
    color: white;
    font-weight: bold;
    font-size: 3.3vw;
    -webkit-text-stroke: 0.2rem black;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
    /* border:solid red 1px; */
}

.cross4_content {
    max-width: 100%;
    padding-top: 3vw;
    padding-bottom: 3vw;
    /* border:solid red 1px; */
}

.cross4_photo {
    float: left;
    max-width: 45%;
    padding-left: 5%;
    /* border:solid red 1px; */
}

.cross4_text {
    float: left;
    padding-left: 4%;
    max-width: 60%;
    font-size: 28pt;
    font-weight: bold;
    line-height: 1.25em;
    /* border:solid blue 1px; */
}

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

.cross5_header {
    background: url(./images/cross_open4.png) left center;
    max-width: 100%;
    color: white;
    font-weight: bold;
    font-size: 6vw;
    line-height: 6vw;
    letter-spacing: -0.2rem;
    -webkit-text-stroke: 0.4rem #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: 10px;
    padding-top: 5%;
    padding-bottom: 5%;
    text-align: center;
    font-size: 70pt;
    font-weight: bold;
    color: white;
    font-family: HGPGothicE, YuMincho, Meiryo, serif;
}


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

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

.sub-teaser-top1 {
    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;
    font-size: 90px;
    color: #fff;
    position: absolute;
    left: 30px;
    top: 5%;
    line-height: 1.1;
}

.sub-teaser-top2 {
    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;
    font-size: 55px;
    color: #fff;
    position: absolute;
    left: 30px;
    top: 19%;
    line-height: 1.1;
}

.sub-teaser-bottom {
    color: #333;
    font-size: 72px;
    text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
    position: absolute;
    left: 30px;
    bottom: 3%;
    line-height: 1.1;
}

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

.col-orange {
    color: #ff9933;
}

.col-red {
    color: #cc0000;
}

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

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

.about-main-cont {
    background: #ffcc66;
    padding: 50px 50px 70px;
}

.about-main-txt {
    background: #fff;
    padding: 30px 20px;
    font-size: 36px;
    margin-bottom: 70px;
}

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

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

@media (max-width: 1160px) {
    .sub-teaser-top1 {
        font-size: 8vw;
    }
    .sub-teaser-top2 {
        font-size: 4.75vw;
    }
    .sub-teaser-bottom {
        font-size: 6vw;
    }
}

.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: right;
    font-weight: bold;
    color: #fff;
    font-size: 72px;
    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: -50px;
    margin-right: 30px;
}

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

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

.about-work {
    background: #ffc0cb;
    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: 60px;
    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: 30%;
    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-work-wrapper ul li a:hover .about-work-txt {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

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

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


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

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

.city-info-ttl {
    text-align: right;
    font-size: 60px;
    color: #33cccc;
    font-family: 'HGSoeiPresenceEB';
    margin: 50px auto 20px;
}

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

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

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

.area-main h2 {
    text-align: center;
    font-size: 60px;
    color: #33cccc;
    font-family: 'HGSoeiPresenceEB';
    margin-bottom: 20px;
}

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

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


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

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

.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;
}

.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 h1 {
    font-size: 55px;
    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;
}

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

.area-item-title {
    font-size: 60px;
    text-align: right;
    letter-spacing: -.1em;
}

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

.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;
    background: #ff9999;
}

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

.area-item-page .sec1-left-cont p {
    font-size: 36px;
    letter-spacing: -.1em;
    text-indent: -30px;
    padding-left: 30px;
    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 {
    font-size: 50px;
    text-align: center;
    letter-spacing: -.1em;
    line-height: 1.5;
}

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

.area-item-page .sec2-cont {
    padding: 0 0 0 27%;
    background: url(images/character3.png) no-repeat;
    background-size: 27% auto;
    background-position: left center;
}

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

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

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

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

.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: 50px;
    letter-spacing: -.1em;
    margin: 20px 0;
}

.area-item-page .sec3-price-ttl {
    text-align: center;
    font-size: 50px;
    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: -30px;
}

.area-item-page .sec3-price-cont {
    padding: 30px 20px;
    background: #f6b37f;
    font-size: 42px;
    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: 40px;
    letter-spacing: -.1em;
    line-height: 1.2;
}

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

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

.area-item-page .sec5-cont h3 {
    text-align: center;
    font-size: 50px;
    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: 72px;
    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: 45%;
    color: #fff;
    font-size: 48px;
    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%;
}

.area-item-page .area-item-info .area-info-right {
    width: 50%;
    font-size: 50px;
    letter-spacing: -.1em;
}

.area-item-page .area-item-info .area-info-right iframe {
    width: 100%;
    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%;
}


/************* 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 {
    max-width: 1200px;
    margin: 0 auto;
}

.e-character1 {
    width: 19%;
}

.e-character2 {
    width: 29%;
}

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

.e-cont-ttl {
    font-size: 6.5rem;
    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: 3.5rem;
}

.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: 5rem;
    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_estimate h2 span.f-sm {
    font-size: 72%;
}

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

.top_regional h2 span {
    color: #666;
}

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

.top_hole_wrapper {
    max-width: 1160px;
    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;
}

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

.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 {
    max-width: 1360px;
    margin: 60px auto 0;
}

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

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

.top_office ul li .top-office-cont {
    width: 100%;
    height: 270px;
    background: #7ecef4;
    font-size: 3.5rem;
    font-family: 'HGSoeiPresenceEB';
    line-height: 1.4;
}

@media screen and (max-width: 1200px) {
    .top_office ul li h3 {
        font-size: 4vw;
    }
    .top_office ul li .top-office-cont {
        height: 20vw;
        font-size: 4vw;
    }
}