@charset "utf-8";

/*******************************
/* リセット
*******************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-weight: normal;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.object-fit-img {
  object-fit: cover;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;'
}
*{margin:0;padding:0;}
html {
overflow: auto;
}
body{
font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;
font-weight: 400;
color: #181c1f;
font-size: 16px;
line-height: 1.8;
letter-spacing:0.1rem;
overflow-x: hidden;
	min-width: 1200px;
}


a{color:#252a2f;text-decoration:none;transition: all 300ms ease-out 0s;
    will-change: transform;}
a:hover{color:#252a2f;}
a:active, a:focus {outline: 0;}
img{border:0; vertical-align:bottom;}
p{ line-height: 2.5; font-size: 1rem;}
.clear{clear:both;}
p.center{text-align:center; padding-bottom: 40px;}
p.left{ padding-bottom: 40px;}
.right{text-align:right;}
li{ list-style:none;}
h2,h3,h4{ font-weight: bold;}
strong{ font-weight: bold;}
.en{font-family: 'Lato', sans-serif; font-weight: 900;}
.roboto{font-family: "Roboto", sans-serif; font-weight: 900;}

.none_pc{ display:none;}
.none_sp{ display: inline-block;}
.tel {
    cursor: default;
    pointer-events: none;
}
.num{font-family: 'Lato', cursive;}
input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}
input {
  -webkit-appearance: none;
  border-radius: 0;
}

.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }
@media screen and (max-width:767px) {
html {
overflow: auto;
}
body{
font-size: 3.8vw;
line-height: 1.8;
letter-spacing:0.1rem;
overflow-x: hidden;
	min-width:auto;
}
p{ line-height: 2; font-size: 3.8vw; text-align: left;}
.center{text-align:center; font-size: 3.6vw;}
img{ width: 100%; }
.none_pc{ display: block;}
.none_sp{ display: none;}
.tel {
    pointer-events: auto;
}
}

/*******************************
/* 共通
*******************************/
.border-radius{ border-radius: 3px;}
.text_center{ text-align: center; padding-bottom: 50px;}

/*******************************
/* ヘッダー
*******************************/
header{ width: 100%;  z-index: 9999; height: 100px; box-sizing: border-box; position: fixed;}
.header-color{ background: #fff;transition: 0.2s;}
.header_inner{display: flex; justify-content: space-between; align-items: center; margin: 0 auto; max-width: 2000px; padding: 0 5%; position: relative;height: 100px;}

.logo{ padding: 20px 0;}
.logo img{ height: 35px;}
.logo h1{ font-size: .65rem; color: #fff; padding-bottom: 5px;}
.header-color .logo h1{ color: #0a0a0a;}
.logo p{ font-size: .65rem; line-height: 1.8; padding-bottom: 5px;}
.header_lower_layer .logo p{ color:#0a0a0a;}
.header-color .logo p{ color: #0a0a0a;}

.header_inner nav{}
.header_inner nav ul{ display: flex;align-items: center;height: 100px;color: #fff;}
.header-color .header_inner nav ul{color: #0a0a0a;}
.header_inner nav ul li:nth-of-type(n+2){ margin-left: 20px;}
.header_inner nav ul li a{ font-weight:600; font-size: .85rem; display: block;height: 100px; line-height: 100px;}
.header_lower_layer nav ul li a{color: #0a0a0a;}
.header-color .header_inner nav ul li a{ color: #0a0a0a;}
.header_inner nav ul li.header_nav_tel{ margin-left: 30px;}
.header_inner nav ul li.header_nav_tel a{ font-size: 1.5rem; line-height: 1 !important; height: auto !important; }
.header_inner nav ul li.header_nav_tel a i{}
.header_lower_layer .header_inner nav ul li.header_nav_tel a i{ color: #0a0a0a;}
.header-color .header_inner nav ul li.header_nav_tel a i{ color: #0a0a0a;}
.header_nav_tel small{ display: block; font-size: .7rem; padding-bottom: 10px;font-weight: 500;}
.header_nav_mail, .header_nav_line{align-items: center;border-radius: 9999px;font-size: .75rem;cursor: pointer;padding: 23px 0;width: 145px;}
.header_nav_mail{background-color:#e7242e;display: flex;justify-content: center;transition-duration: .5s;margin-left: 10px !important;}
.header_nav_mail a{ color: #fff !important;height: auto !important;line-height: 1 !important;}
.header_nav_line{align-items: center;background-color:#00B900;border-radius: 9999px;cursor: pointer;display: flex;justify-content: center;transition-duration: .5s; margin-left: 10px !important;}
.header_nav_line a{ color: #fff !important;height: auto !important;line-height: 1 !important;}
.header_nav_mail a span,.header_nav_line a span{ font-weight: 700;}

@media screen and (max-width:1200px) {
	.header_inner nav ul li:nth-of-type(2){ display: none;}
	.header_inner nav ul li:nth-of-type(3){ display: none;}
}
@media screen and (max-width:1300px) {
	.header_inner nav ul li:nth-of-type(4){ display: none;}
}
@media screen and (max-width:1480px) {
	.header_inner nav ul li:nth-of-type(5){ display: none;}
}
@media screen and (max-width:1700px) {
	.header_inner{ padding: 0 50px; box-sizing: border-box;}
	
}
@media screen and (max-width:767px) {
header{height: 60px;}
.header_inner{padding: 0 0 0 3%; position: relative; height: 60px;}
.logo{ padding: 10px 0; position: relative; z-index: 999999;}
.logo img{ height: 25px; width: auto !important;}
.logo h1,.logo p{ display: none;}	
	
nav{position: fixed;top: 0px;right: 0;width: 100vw; height: 100vh; text-align: left;background:#fff;box-sizing:border-box;padding:70px 10% 10% 10%;opacity:0;transform: translateX(100vw); transition: .4s all;visibility: visible;overflow: hidden;overflow-y: scroll;scroll-behavior: smooth;}
	
nav.open{transform: translateX(0);opacity:1;visibility: visible;overflow:hidden; overflow-y: scroll;
  scroll-behavior: smooth;z-index:10;}
	
.header_inner nav{ padding: 70px 5vw 30vw 5vw; box-sizing: border-box;}
.header_inner nav ul{ display: flex; align-items: baseline; flex-wrap: wrap; height: auto !important;}
.header_inner nav ul li{ display: block; width: 100%; padding: 5vw 0;}
.header_inner nav ul li:nth-of-type(n+2){ margin-left: 0px;border-top: 1px solid #ccc; }
.header_inner nav ul li:nth-of-type(6){ display: block;}
.header_inner nav ul li a{ height: auto !important; line-height: 1.5 !important; font-size: 3vw;color: #0a0a0a; }
	
.header_inner nav ul li.header_nav_tel{ margin-top: 10vw; pointer-events: auto;background: #0058a2; height: 8vw; display: flex; align-items: center; justify-content: center; border-radius: 9999px;}
.header_inner nav ul li.header_nav_tel a{ display: block;text-align: center; color: #fff;}
.header_lower_layer .header_inner nav ul li.header_nav_tel a i{ color: #fff;}
.header-color .header_inner nav ul li.header_nav_tel a i {color: #fff;}
.header_nav_tel small{ padding-bottom: 1.5vw;display: block;}
	
.header_inner nav ul li.header_nav_mail{margin-top: 3vw; pointer-events: auto;background: #e7242e;height: 8vw; display: flex; align-items: center; justify-content: center; border-radius: 9999px; margin-left: 0 !important;}
.header_inner nav ul li.header_nav_mail a{ display: block; text-align: center; color: #fff; font-size: 4vw;}
.header_nav_mail small{ display: block;font-size:2.6vw;}
.header_nav_mail span{ }
	
.header_inner nav ul li.header_nav_line{margin-top: 3vw; pointer-events: auto;background: #07b53b;height: 8vw; display: flex; align-items: center; justify-content: center; border-radius: 9999px; margin-left: 0 !important;}
.header_inner nav ul li.header_nav_line a{ display: block; text-align: center; color: #fff; font-size: 4vw;}
.header_nav_line small{ display: block;font-size:2.6vw;}
.header_nav_line span{}
	
.menu-trigger_oya{ position: fixed; right:2%; top:3px; z-index:11;width: 50px; height: 50px;transition: all .3s ease-in-out;}

.openbtn7{
  position: relative;/*ボタン内側の基点となるためrelativeを指定*/
  cursor: pointer;
    width: 50px;
    height:50px;
	top: 5px;
  border-radius: 5px;
	z-index: 9999;
}	
.openbtn7 .openbtn-area{
    transition: all .4s;
}

.openbtn7 span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
  background: #0a0a0a;
    width: 45%;
  }


.openbtn7 span:nth-of-type(1) {
  top:15px; 
}

.openbtn7 span:nth-of-type(2) {
  top:23px;
}

.openbtn7 span:nth-of-type(3) {
  top:31px;
}

/*activeクラスが付与されると
線と周りのエリアが回転して×になる*/

.openbtn7.active .openbtn-area{
  transform: rotateY(-360deg);
}

.openbtn7.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-135deg);
    width: 30%;
}

.openbtn7.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn7.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(135deg);
    width: 30%;
}
}

/*******************************
/* メイン画像
*******************************/
.main_v{position: relative; display: flex; justify-content: center; align-items: center;padding: 20px; box-sizing: border-box;background-image: radial-gradient(circle, rgba(255, 242, 58, 1), rgba(224, 162, 8, 1)); margin-top: 100px;}
.main_v img{width: 100%;height: 800px; object-fit: cover; box-sizing: border-box;border-radius: 20px; overflow: hidden;}
.mv{ position: relative;width: 100%;height: 800px;  display: flex; justify-content: center; align-items: center;}
.mv:after {background-color: rgba(56, 27, 4, 0.5);border-radius: 20px;content: "";height: 800px;left: 0;position: absolute;top: 0;width: 100%;}
.mv_inner{position: absolute; width: 1200px; height: 800px; display: flex; justify-content: center; align-items: center;}
.mv_inner img { position: absolute; z-index: 2; width: auto; height: auto;}
.mv_inner img.aircon{ display: flex; justify-content: center; right: 0; bottom: 180px;}
.mv_inner img.mv_text{ left: 0; bottom: 100px;}
.mv_inner h1{ color:#fff; position: absolute;z-index: 2;display: inline-block; background:#0058a2; top: 150px; left: 0; font-size: 2rem; padding: 0 25px; border-radius: 10px; font-weight: 800;}
.supplement{position: absolute;z-index: 2; bottom: 10px; left: 0; font-size: .75rem; color: #fff;}

.area_main.main_v img{height: 700px;}
.area_main .mv{ height: 700px; }
.area_main .mv:after {height: 700px;}
.area_main .mv_inner{height: 700px;}
.area_main .mv_inner img { position: absolute; z-index: 2; width: auto; height: auto;}
.area_main .mv_inner img.aircon{ display: flex; justify-content: center; right: 0; bottom: 180px;}
.area_main .mv_inner img.mv_text{ left: 0; bottom: 75px;}
.area_main .mv_inner h1{ top: 105px; font-size: 1.6rem;font-weight: 700;}

@media screen and (max-width:767px) {
	.main_v{margin-top: 60px;padding:3vw;}
	.main_v img{height:120vw;}
	.mv{ height: 120vw;}
	.mv:after {height: 120vw;}
	.mv_inner{width:100%; height:120vw;}
	.mv_inner img { width: auto; height: auto;}
	.mv_inner img.aircon{ width: 60%; right: -1.5vw; bottom: 5vw;}
	.mv_inner img.mv_text{ width:90%;left: 3vw; bottom:30vw;}
	.mv_inner h1{ top: 150px; left: 3vw; font-size:3.8vw; padding: 1vw 3vw; border-radius: 13px; font-weight: 700;}
	.supplement{ padding: 0 3vw; bottom: 10px;font-size:2vw; color: #fff;}
	
}
/*******************************
/* 下層メイン
*******************************/
.lower_layer_main{ height: 250px; padding-top: 100px;position: relative;background: #f0f8ff;}
.wave {
  position: absolute;
  height: 70px;
  width: 100%;
  background: #f0f8ff;
  bottom: 0;
}

.wave::before, .wave::after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 100% 50%;
}

.wave::before {
  width: 55%;
  height: 109%;
  background-color: #fff;
  right: -1.5%;
  top: 60%;
}
.wave::after {
  width: 55%;
  height: 100%;
  background-color: #f0f8ff;
  left: -1.5%;
  top: 40%;
}
.lower_layer_main .inner{ }
.lower_layer_main .inner h1{display: flex; align-items: center; justify-content: center;height: 250px; font-size: 3rem; font-weight: 800;color: #0058a2;}
@media screen and (max-width:767px) {
	.lower_layer_main{ height: 45vw; padding-top: 60px;}
	.lower_layer_main .inner h1{height:45vw; font-size:7vw; }
}
/*******************************
/* 枠
*******************************/
.contents{ padding: 130px 0; position: relative;}
.contents_pt_0{ padding:0 0 130px 0;}
.contents_pb_0{ padding:130px 0 0px 0;}
.contents_about{ padding: 130px 0;}

.inner{width: 1200px; margin: 0 auto; position: relative;}
.bg_01{background:#f0f8ff;}

@media screen and (max-width:767px) {
	.contents{ padding: 50px 0;}
	.contents_pt_0{ padding:0 0 50px 0;}
	.contents_pb_0{ padding:50px 0 0px 0;}
	.contents_about{ padding:50px 0;}
	.inner{width: 100%; margin: 0 auto; padding: 0 5%; box-sizing: border-box;}
	.contents_title{font-size: 6vw; margin-bottom:30px;}
}

.pankuzu{ padding-top: 40px; font-size: .9rem;}
.pankuzu a{color:#1A4472;text-decoration: underline;}
.pankuzu a i{color:#1A4472;}
.pankuzu i{ padding: 0 8px; color: #ccc;}
@media screen and (max-width:767px) {
    .pankuzu{padding-top: 10vw; font-size: 3vw;}
}

/*******************************
/* hタグ
*******************************/
h2.contents_title{text-align: center;font-size: 3rem; font-weight: 900; margin-bottom: 50px; color: #181c1f; }
h2.contents_title strong{ color:#0058a2;font-weight: 900;}
h2.contents_title em{color: #0058a2;font-weight: 900;}
.title_sub_text{ text-align: center; padding-bottom: 40px;}

@media screen and (max-width:767px) {
	h2.contents_title{font-size: 7vw; margin-bottom: 50px;}
	.title_sub_text{ font-size: 3.4vw; padding-bottom: 50px;}

}
/*******************************
/* TOP
*******************************/
.top_about{ display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center;}
.top_about h2{ font-size: 3rem; line-height: 1.5; text-align: left;}
.top_about_left{ width: 60%; }
.top_about_right{ width: 35%;}
.top_about_right img{border-radius: 10px;}
@media screen and (max-width:767px) {
	.top_about h2{ font-size: 6vw;}
	.top_about_left{ width:100%; }
	.top_about_right{ width:100%; margin-top: 50px;}
}

.reason_bg::before {
    position: absolute;
    content: "";
    bottom: -130px;
	right: -100px;
    height: calc(100% + 260px);
    width: calc(100% + 300%);
    z-index: -2;
    background: #f0f8ff;
	border-radius: 0 32px 32px 0; 
}
.reason{ position: relative;}
.reason_img{ position: absolute; width: 500px; top: -280px; right:-220px;}
.reason h2{}
.reason h2 strong{ font-size:10rem;text-emphasis:none; line-height: 1;}
.reason_flex{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.reason_flex_box{ width: 30%;}
.reason_flex_box img{ width: 100%; height: 240px; object-fit: cover; border-radius: 10px; margin-bottom: 15px;}
.reason_flex_box h3{ text-align: center; font-size: 1.8rem; padding-bottom: 10px;}
.reason_flex_box p{ line-height: 2;}
@media screen and (max-width:767px) {
	.reason_bg::before {bottom: -50px;right: 0px; left: 0; height: calc(100% + 100px);width: calc(97.5% + 0%);
	border-radius: 0 32px 32px 0; }
	.reason_img{ width:60vw; top: -40vw; right:-7vw;}
	.reason h2 strong{ font-size:30vw; letter-spacing: -5vw;}
	.reason_flex_box{ width: 100%;}
	.reason_flex_box:nth-of-type(n+2){ margin-top: 50px;}
	.reason_flex_box img{ width: 100%; height:50vw; }
	.reason_flex_box h3{font-size:5vw; padding-bottom: 10px;}
}

.aircon_purchase_target{}
ul.aircon_purchase_target_type{ display: flex; justify-content: space-between; flex-wrap: wrap;}
ul.aircon_purchase_target_type::after {content: "";display:block;width:48%;}
ul.aircon_purchase_target_type li{ width: 47%;}
ul.aircon_purchase_target_type li img{ width: 100%;border-radius: 15px; object-fit: cover; height:420px; }
ul.aircon_purchase_target_type li h3{font-weight: bold; font-size: 1.3rem; text-align: left; padding-top: 20px;}
ul.aircon_purchase_target_type p{}
@media screen and (max-width:767px) {
	ul.aircon_purchase_target_type li{ width:100%;}
	ul.aircon_purchase_target_type li:nth-of-type(n+2){ margin-top: 50px;}
	ul.aircon_purchase_target_type::after {display: none;}
	ul.aircon_purchase_target_type li img{ height:60vw; }
	ul.aircon_purchase_target_type li h3{font-size:4.5vw; }
	ul.aircon_purchase_target_type p{ font-size: 3.6vw;}
}

.purchase{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.purchase:after {content: "";display: block;width: 30%;height: 0;}
.purchase_list{ width: 30%;}
.purchase_list:nth-of-type(n+4){ margin-top: 50px;}
.purchase_list img{ width: 100%; border-radius: 10px;}
.purchase_list h3{ font-size: 1.1rem; padding-top: 10px;}
.purchase_text dl{ display: flex; justify-content:flex-end; flex-wrap: wrap; align-items:baseline;}
.purchase_text dl dt{ width:auto; padding-right: 5px;}
.purchase_text dl dd{ width:auto;}
.purchase_text dl dd span{ font-size: 2.5rem;color: #e7242e;}
@media screen and (max-width:767px) {
	.purchase:after {display: none;}
	.purchase_list{ width:47.5%;}
	.purchase_list:nth-of-type(n+3){ margin-top: 50px;}
	.purchase_list h3{ font-size:3vw;}
	.purchase_text dl{ font-size: 2.6vw;}
	.purchase_text dl dd span{ font-size:7vw;}
}

.model{padding-top: 50px;}
.model table{width: 100%;border-collapse: collapse;}
.model table tr{ }
.model table th{background:#0058a2; color: #fff; padding: 20px; border: 1px solid #d3d6d8; text-align: center; font-weight: bold;width: 60%;}
.model table th:nth-of-type(2){ width: 20%; }
.model table th:nth-of-type(3){ width: 20%; }
.model table td{ border: 1px solid #d3d6d8;font-size: .85rem; padding: 20px; text-align:center; vertical-align: middle;background: #fff;}
.model table td ul{ display: flex; flex-wrap: wrap;}
.model table td ul li{ width:150px; padding-left: 15px; text-align: center;}
.model table td ul li:nth-of-type(n+5){ margin-top: 15px;}
.model table td ul li img{ width: 80%;}
.model table td ul li p{ font-size: .7rem; line-height: 1.5; text-align: center;}
.model table td ul li p span{ display: block;}
@media screen and (max-width:767px) {
	.model table th{padding:3vw 2vw;width: 49%; font-size:2.8vw; }
	.model table td{font-size:2.4vw; padding:2.5vw; width:30%;}
	.model table td:nth-of-type(3){width: 21%;}
	.model table td ul{ justify-content: space-between;}
	.model table td ul li{ width:47.5%; padding-left:0px;}
	.model table td ul li:nth-of-type(n+3){ margin-top: 10px;}
	.model table td ul li img{ width:100%;}
	.model table td ul li p{ font-size:1.8vw; line-height: 1.5; text-align: center;}
}

.flow{}
.flow_box{border: 1px solid #d3d6d8;padding: 42px 85px 50px 50px; box-sizing: border-box;border-radius:10px; display: flex; justify-content: space-between; position: relative; background: #fff;}
.flow_box:nth-of-type(n+2){ margin-top: 40px;}
.flow_box_left{ width: 260px;}
.flow_box_left img{ width: 100%; height: 170px; object-fit: cover; border-radius: 10px;}
.flow_box .fa-angles-down{ position: absolute; bottom: -20px; left: 170px; font-size: 2.5rem;color: #e7242e;}
.flow_box_right{width: 750px;}
.flow_box_right h3{ font-size: 2rem; font-weight: 800; line-height: 1.3; margin-bottom: 20px;color:#0058a2;}
.flow_box_right h3 span{ display: block;font-size: 1rem;color: #e7242e;}
.flow_box_right p{ line-height: 2;}
@media screen and (max-width:767px) {
	.flow_box{padding: 5vw;}
	.flow_box .fa-angles-down{bottom: -20px; left: 15vw; font-size:6vw;}
	.flow_box_left{ width:30%;}
	.flow_box_left img{height:40vw;}
	.flow_box_right{width:65%;}
	.flow_box_right h3{ font-size:5vw; line-height: 1.3; margin-bottom: 20px;}
	.flow_box_right h3 span{font-size:3vw;color: #e7242e;}
	.flow_box_right p{ font-size: 3vw; line-height: 2;}
}

.area_bg h2{}
.area{}
.area h3{background:#0058a2; color: #fff; padding: 8px 25px; font-size: 1.3rem; text-align: center;}
.area h3:nth-of-type(n+2){ margin-top: 40px;}
.area table{ width: 100%;}
.area table th{ width: 20%;vertical-align: middle; font-weight: bold;padding: 10px; box-sizing: border-box; border: 1px solid #d3d6d8; background:#f2f4f5; color:#0058a2;}
.area table th a{}
.area table td{ width: 80%; background: #fff; padding: 10px 25px; box-sizing: border-box;border: 1px solid #d3d6d8; }
.area table td ul{display: flex; flex-wrap: wrap;}
.area table td ul li{ width: auto; margin-right: 10px;}
.area table td ul li a{text-decoration: underline;}
.area table td ul li a:hover{}
@media screen and (max-width:767px) {
	.area h3{padding:2vw 3vw; font-size:4vw;}
	.area table th{font-size:3vw;}
	.area table td{font-size:3vw; width: 80%; padding: 10px 25px;}
}

.faq h3{ text-align: left; font-size: 1.5rem; margin-bottom: 20px;}
.faq h3:nth-of-type(n+2){ margin-top: 80px;}
.faq h3 i{ color:#0058a2; }
.faq_box{ width: 100%;}
.faq_box:nth-of-type(n+2){ margin-top: 20px;}
.q_title{ display: flex; align-items: center; height: 80px; font-weight: bold; font-size: 1rem; padding: 0 10px 0 10px; box-sizing: border-box; position: relative;transition: all 400ms cubic-bezier(254, 98, 13, 1);border-bottom: 1px solid #d3d6d8;}
.q_title i{ display: flex; align-items: center; justify-content: center; background:#0058a2; color: #fff; height: 35px; width: 35px; border-radius: 50%; font-size: 1rem; margin-right: 10px; }
.faq_in .q_title{background: #dcf1ee;}
.a_box{ line-height: 1; display: none;  box-sizing: border-box; padding:15px 0;}
.faq_in .a_box{ background: #fff;}
.a_box_in{ display: flex; justify-content: space-between;}
.a_box_img{ width:4%; }
.a_box_in p{ width: 100%; line-height: 1.5; padding: 0 15px; box-sizing: border-box; font-size: .9rem;}
.a_box_in p a{ color:#e7242e; text-decoration: underline; }
.qa_icon {display: inline-block;position: absolute;right: 20px;width: 29px;height: 29px;border-radius: 50%;-webkit-transition: all 400ms cubic-bezier(254, 98, 13, 1);transition: all 400ms cubic-bezier(254, 98, 13, 1);}
.faq_in .qa_icon{background: #00afc9;}
.qa_icon:before, .qa_icon:after {-webkit-transition: all 400ms cubic-bezier(254, 98, 13, 1);transition: all 400ms cubic-bezier(254, 98, 13, 1);content: "";display: block;position: absolute;width: 13px;height: 3px;top: 50%;left: 50%;margin: -2px 0 0 -6.5px;background: #0058a2;border-radius: 1.5px;}
.qa_icon:after  {-webkit-transform: rotate(90deg);transform: rotate(90deg);}
.active::after {transform: rotate(0);transition: 0.5s;}

@media screen and (max-width:767px) {
	.faq h3{ font-size:4vw; margin-bottom: 20px;}
	.q_title{ height: 17vw;font-size:3.2vw; padding: 0 7vw 0 10vw; }
	.q_title i{ position: absolute; left: 0;  height:7vw; width:7vw;border-radius: 50%; font-size:3vw; margin-right: 3vw;}
	.a_box{ line-height: 1.5;padding:5vw 0; font-size:3vw;}
	.a_box_in p{font-size:3vw; width: 100%; line-height:2; padding: 0 0vw; box-sizing: border-box;}
	.qa_icon{right: 0px;}
}

/*******************************
/* 下層ページ
*******************************/



.company table {width: 100%;border-collapse: collapse;}
.company table th {width: 20%;border: 1px solid #ccc;vertical-align: middle;background: #00afc9;color: #fff;}
.company table td {width: 80%;border: 1px solid #ccc;padding: 15px 25px;box-sizing: border-box;}
@media screen and (max-width:767px) {
	.company table th {width: 20%; font-size: 3vw;}
	.company table td {width: 80%;padding:3vw;font-size: 3vw;}
}
/*******************************
/* 対応エリア
*******************************/
.area_single_fv{display: flex; justify-content: space-between; flex-wrap: wrap;}
.area_single_fv_text{ width: 60%;}
.area_single_fv_map{width: 35%;}
.area_single_fv_text h1{text-align:left;font-size:2rem; font-weight: 900; margin-bottom: 50px;}
.area_single_fv_text h1 em{color: #FE620D;font-weight: 900;}
.area_single_fv_text p small{ font-size: .8rem; display: block; padding-top: 10px;}
.area_single_fv_map iframe{ width: 100%; height: 450px; border-radius: 10px;}
@media screen and (max-width:767px) {
	.area_single_fv_text h1{text-align:left;font-size:5vw; font-weight: 900; margin-bottom: 25px;}
	.area_single_fv_text{ width:100%;}
	.area_single_fv_map{width:100%; padding-top: 25px;}
	.area_single_fv_map iframe{height:50vw;}
}

.area_feature{ margin-bottom: 50px;}
.area_feature h3,.area_clean_center h3{text-align: left; font-size: 1.6rem; margin-bottom: 25px}
.area_clean_center table{width: 100%;border-collapse: collapse;}
.area_clean_center table tr{ }
.area_clean_center table th{ background:#00afc9; color: #fff; padding: 10px; border: 1px solid #ccc;font-size: .85rem; text-align: left;}
.area_clean_center table th:nth-of-type(1){ width: 20%;}
.area_clean_center table th:nth-of-type(2){ width: 30%;}
.area_clean_center table th:nth-of-type(3){ width: 35%;}
.area_clean_center table th:nth-of-type(4){ width: 15%;}
.area_clean_center table td{ border: 1px solid #ccc;font-size: .85rem; padding: 10px; text-align: left; vertical-align: middle;}
@media screen and (max-width:767px) {
	.area_feature h3,.area_clean_center h3{font-size: 4vw;}
	.area_feature p{ font-size: 3vw;}
	.table_scroll {overflow-x: auto;white-space: nowrap;}
	.area_clean_center table th{font-size:2.8vw;}
	.area_clean_center table td{font-size:2.8vw;}
}

.area_original{}
.area_original h3{display: flex;align-items: center; font-size: 1.3rem; padding: 10px 15px; background-color: #f0f8ff; margin-bottom:30px;}
.area_original h3::before {display: inline-block;width: 5px;height: 1.5em;margin-right: .5em;background-color: #0058a2;content: '';}
.area_original h3:nth-of-type(n+2){ margin-top: 50px;}
.area_original h4:nth-of-type(n+2){ margin-top: 20px;}
.area_original p{ padding-top: 0 !important;}
.area_original p:nth-of-type(n+2){ padding-top: 0 !important;}
@media screen and (max-width:767px) {
	.area_original h3{font-size:4vw; padding: 3vw 3vw 3vw 6vw;margin-bottom:30px; position: relative;}
	.area_original h3::before {width: 5px;height:70%;margin-right:0; left: 3vw; position: absolute;}
}
/*******************************
/* 下層
*******************************/
.company{ padding: 0 100px;}
.company dl{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.company dl dt{ width: 17%; border-bottom: 1px solid #0058a2; padding: 25px 0; font-weight: bold;}
.company dl dd{ width: 83%;border-bottom: 1px dashed #d3d6d8;padding: 25px 0 25px 25px; box-sizing: border-box;}
@media screen and (max-width:767px) {
	.company{ padding: 0 0;}
	.company dl{ font-size: 3vw;}
	.company dl dt{ width: 20%;  padding: 5vw 0;}
	.company dl dd{ width: 80%;padding: 5vw 0 5vw 5vw; }
}
/*******************************
/* フッター
*******************************/
footer{ padding: 100px 0 50px 0;}

.footer_contact{ position: relative; padding: 130px 0; margin-bottom: 180px;}
.footer_contact::before{ position: absolute; top: 0; display: inline-block; content: ""; width: 100%; height:100%;  background-image: url("images/footer_contact_bg.webp"); background-size: cover; z-index: -2;}
.footer_contact::after{position: absolute;top: 0;display: inline-block; content: ""; background:rgba(0, 88, 162, .85);width: 100%; height:100%;  z-index: -1;}
.footer_contact h3{ text-align: center; color: #fff; font-size: 4rem; font-weight: 800; line-height: 1.5; margin-bottom: 50px;}
.footer_contact h3 span{ display: block; font-size: 2rem;font-weight: 700;}

.footer_contact_flex{ display: flex;  justify-content: space-between; flex-wrap: wrap; align-items: center; background: #fff; border-radius: 10px;padding: 40px 55px 50px 50px; box-sizing: border-box;box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3); position: absolute; width: 100%;}
.footer_contact_flex_box:nth-of-type(1){ width: 38%; margin-right: 2.5%;}
.footer_contact_flex_box:nth-of-type(n+2){ width: 28.5%;}
.footer_contact_tel{border: 4px solid #0058a2; text-align: center; border-radius:90px;padding: 30px 0px;}
.footer_contact_tel a{ display: block; font-size: 2rem; line-height: 1;}
.footer_contact_tel a small{ display: block;font-size: 1rem; padding-bottom: 10px;}
.footer_contact_mail a{background-color: #e7242e;border-radius:90px; display: block; color: #fff; text-align: center;padding: 15px 25px;}
.footer_contact_mail a span{font-size: 1.1rem; font-weight: 800; line-height: 1.5;}
.footer_contact_mail a small{ display: block;font-size: 1rem;}
.footer_contact_line a{background-color: #00B908;border-radius:90px; display: block; color: #fff; text-align: center;padding: 15px 25px;}
.footer_contact_line a span{font-size: 1.1rem; font-weight: 800;line-height: 1.5;}
.footer_contact_line a small{ display: block;font-size: 1rem;}


.ft_flex{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;}
.ft_flex_box{ width: 45%;}
.ft_flex_box:nth-of-type(1) a img{ margin-bottom: 20px;}
.ft_flex_box span{ display: block; font-size: .9rem;}
.ft_flex_box:nth-of-type(n+2){ width: 55%;display: flex; justify-content: flex-end; flex-wrap:wrap;}
.ft_flex_box:nth-of-type(n+2) ul{ width: auto;}
.ft_flex_box:nth-of-type(n+2) ul:nth-of-type(n+2){ margin-left: 30px;}
.ft_flex_box:nth-of-type(n+2) ul li a{color:#1A4472; text-decoration: underline;}
.ft_flex_box:nth-of-type(n+2) ul li.sub{ padding-left: 10px;}
.ft_flex_box:nth-of-type(n+2) ul li a .fa-caret-right{ padding-right: 5px;}
.copyright {display: block;text-align: center;padding-top: 80px;font-size: .75rem;font-weight: 600;}

@media screen and (max-width:767px) {
	footer{ padding: 80px 0 20vw 0;}
	
	.footer_contact{padding: 50px 0; margin-bottom: 100px;}
	.footer_contact::before{height:100vw;  background-image: url("images/footer_contact_bg.webp"); background-size: cover; z-index: -2;}
	.footer_contact::after{height:100vw;  z-index: -1;}
	.footer_contact h3{ font-size: 7vw;margin-bottom: 30px;}
	.footer_contact h3 span{font-size:4vw;}
	
	.footer_contact_flex{padding:10vw 7.5vw; width:90%; z-index: 3;}
	.footer_contact_flex_box:nth-of-type(1){ width:100%; margin-right:0%;}
	.footer_contact_flex_box:nth-of-type(n+2){ width: 100%; margin-top: 20px;}
	
	.footer_contact_tel{border: 4px solid #0058a2;padding:4vw 0;}
	.footer_contact_tel a{font-size:5vw; line-height: 1;}
	.footer_contact_tel a small{font-size:3vw;font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;
font-weight: 400; padding-bottom: 10px;}
	.footer_contact_mail a{background-color: #e7242e;border-radius:90px; display: block; color: #fff; text-align: center;padding: 15px 25px;}
	.footer_contact_mail a span{font-size:4vw; }
	.footer_contact_mail a small{ font-size:3vw;}
	.footer_contact_line a{background-color: #00B908;border-radius:90px; display: block; color: #fff; text-align: center;padding: 15px 25px;}
	.footer_contact_line a span{font-size:4vw;}
	.footer_contact_line a small{ font-size:3vw;}
	
	.ft_flex_box{ width:100%; padding-top: 70vw;}
	.ft_flex_box:nth-of-type(1) a img{ width:60%; margin-bottom: 20px;}
	.ft_flex_box span{font-size: 2.8vw;}
	.ft_flex_box:nth-of-type(n+2){ width:100%;justify-content: space-between; padding-top: 25px; box-sizing: border-box;}
	.ft_flex_box:nth-of-type(n+2) ul{ width: 47.5%;}
	.ft_flex_box:nth-of-type(n+2) ul:nth-of-type(n+2){ margin-left:0vw;}
	.ft_flex_box:nth-of-type(n+2) ul li a{ font-size: 3vw;}
	.copyright {padding-top: 50px;font-size: 2.3vw;}
}

.sp_fixed_menu{ display: none;}
@media screen and (max-width:767px) {
	.sp_fixed_menu{ display: flex; justify-content: space-between; position: fixed;background:#fff; bottom: 0; height: 15vw; z-index: 99; width: 100%; align-items: center; padding: 1vw 2vw; box-sizing: border-box;}
    .sp_fixed_menu div{ padding: 2vw 0;border-radius: 7px;}
	.sp_fixed_menu div:nth-of-type(1){ width: 39%;background:#0058a2; border-bottom: 5px solid #1A4472;border-radius: 3px;}
	.sp_fixed_menu div:nth-of-type(2){ width: 29%; background:#e7242e;border-bottom: 5px solid #AF011C; border-radius: 3px;}
	.sp_fixed_menu div:nth-of-type(3){ width: 29%;background:#07b53b;border-bottom: 5px solid #347648; border-radius: 3px;}
	.sp_fixed_menu div a{ display: block; text-align: center; font-size: 3.1vw;color: #fff; font-weight: bold; line-height: 1; letter-spacing: .01vw;}
	.sp_fixed_menu div a span{ display: block; font-size: 2.6vw; padding-bottom: 1vw; }
	.sp_fixed_menu div:nth-of-type(1) a{ display: block; letter-spacing: -.0vw; }
	.sp_fixed_menu div:nth-of-type(1) a span{ display: block; font-size: 2.6vw;}
	.sp_fixed_menu div:nth-of-type(2) a{}
	.sp_fixed_menu div:nth-of-type(3) a{ }
}
/*******************************
/* ボタン
*******************************/
.button{ margin-top: 100px;}
.button a {
    background:#0058a2;
    border-radius: 9999px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: auto;
    max-width: 250px;
    padding: 15px 25px;
    text-decoration: none;
    color: #fff;
    line-height: 1.8;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	border: 3px solid #0058a2;
}
.button a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button a:hover {
  background:#fff;
  color:#0058a2;
}
.button a:hover:after {
  right: 1.4rem;
}
@media screen and (max-width:767px) {
	.button{ margin-top:50px;}
	.button a {max-width:auto;padding: 15px 25px; font-size: 3.6vw;}
}
/*******************************
/* 画像ホバーアニメーション
*******************************/
a .imgbox{ width:100%; display:block; overflow:hidden; position:relative;transform: translate3d(0px, 0px, 10px); }

a .imgbox img{transition: all .6s ease-out 0s !important; border-radius: 10px;}
a:hover .imgbox img{ transform: scale(1.02);filter: saturate(200%);}

a .overlay{transform: translate3d(0px, 0px, 10px); }
a .overlay::after{
    content: "";
    position: absolute;
    background-color: rgba(56, 27, 4,0.7);
    width: 100%;
    height: 100%;
	left:0;
	z-index: 1;
	border-radius:3px;
	transform: translate3d(0px, 0px, 100px);
    transition: all .25s ease-out 0s;
}
a:hover .overlay::after{
    background-color: rgba(56, 27, 4,0.3);
}

/* scroll animation
----------------------------------------- */
.scrollAnim { }
.scrollAnim.scrollAnimShape { position: relative; overflow: hidden; }
.scrollAnim.scrollAnimShape img { display: block; position: relative; opacity: 0; width:100%; transition-delay: .5s; }
.scrollAnim.scrollAnimShape::before { content: ""; position: absolute; z-index: 10; top: 0; left: -50%; width: 0; height: 100%; background-color:#b5a029; transform: skewX(19deg); transform-origin: 0 50% 0; }
.storeInfo__imgWrap a:hover img { transition-delay: 0s; }
.scrollAnim.scrollAnimShape.show img { opacity: 1; }
.scrollAnim.scrollAnimShape.show::before {
	transition: width .7s cubic-bezier(.21, 1.06, .93, .96), left .7s cubic-bezier(.18, .85, .85, .94) .5s;
	left: 130%;
	width: 200%;
}
.scrollAnim2.scrollAnimShape.show::before { transition: width .7s cubic-bezier(.21, 1.06, .93, .96), left .7s cubic-bezier(.18, .85, .85, .94) .5s; }
.scrollAnim3.scrollAnimShape.show::before { transition: width .6s cubic-bezier(.21, 1.06, .93, .96), left .6s cubic-bezier(.18, .85, .85, .94) .5s; }
.js-grad::after { width: 0; transition: width .3s cubic-bezier(.21, 1.06, .93, .96), left 1.3s cubic-bezier(.21, 1.06, .93, .96) .6s; transform-origin: left; }
.js-grad.show::after { width: 100%; }