@charset "utf-8";
/*************************************************************************************************/
*{
	margin:0;
	padding:0;
	box-sizing:border-box;
	font-family:'Ubuntu','Noto Sans JP';
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

html,
body{
	height:100%;
	width:100%;
}

body{
	padding-top:70px;
}

ul,
ol{
	list-style:none;
}

button,
a{
	text-decoration:none;
	cursor:pointer;
	display:block;
}

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

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

.bx-wrapper{
	margin:0 !important;
	height:300px;
}
.bx-viewport{
	height:100% !important;
}

.__sp_menu_btn{
	display:none;
}

/*パンクズ*/
.__bread_crumb{
	padding:20px;
	font-size:13px;
}
.__bread_crumb ul li{
	margin-right:10px;
	position:relative;
}
.__bread_crumb ul li:hover{
	text-decoration:underline;
}
.__bread_crumb ul li:nth-last-of-type(1){
	margin:0;
}
.__bread_crumb ul li:before{
    content: "";
    position: absolute;
    border: 1px solid #555;
    border-left: 0;
    border-bottom: 0;
    transform: rotate(45deg);
    right: -7px;
    top: calc((100% - 3px)/2);
    width: 4px;
    height: 4px;
}
.__bread_crumb ul li:nth-last-of-type(1):before{
	display:none;
}

/*************************************************************************************************/

/** header **/
header{
	padding:10px 10%;
	justify-content:space-between;
	position:fixed;
	align-items:center;
	left:0;
	top:0;
	z-index:99999999999;
	background: #fefefe;
    background: -moz-linear-gradient(top, #fefefe 28%, #fafafa 100%);
    background: -webkit-linear-gradient(top, #fefefe 28%,#fafafa 100%);
    background: linear-gradient(to bottom, #fefefe 28%,#fafafa 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefefe', endColorstr='#fafafa',GradientType=0 );
	width:100%;
	box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
}
header .__logo{
	align-items:center;
}
header .__logo_image{
	width:170px;
	margin-right:5px;
}
header .__header_menu{
}
header .__header_menu > ul{
	justify-content:space-between;
}
header .__header_menu > ul > li{
	color:#444;
	cursor:pointer;
	position:relative;
	padding:0 10px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	font-size:15px;
}

/*header .__header_menu > ul > li:after{
    content: "";
    border-right: 1px solid #aaa;
    display: block;
    height: 1em;
    position: absolute;
    right: 0px;
    top: 5px;
}*/
header .__header_menu > ul > li.__open{
	background:#50B847;
	color:#fff;
	border-radius:5px;
}
header .__header_menu > ul > li:nth-last-of-type(1):after{
	display:none;
}

header .__header_menu > ul > li:hover{
	text-decoration:underline;
}

header .__header_menu > ul > li .__inner_menu{
	display:none;
	position:absolute;
	left:0;
	top:115%;
	z-index:99999;
}
header .__header_menu > ul > li > a{
	padding:10px;
	border-radius:5px;
	color:#555;
}
header .__header_menu > ul > li > a:hover{
	background:#50B847;
	color:#fff;
}
header .__header_menu > ul > li.__open .__inner_menu{
	display:block;
	background:#fafafa;
    box-shadow: 0px 0px 1px rgba(0,0,0,.4);
    padding:10px;
}
header .__header_menu > ul > li.__open .__inner_menu:before{
	content:"";
	position:absolute;
	width:0;
	height:0;
	border:8px solid transparent;
	border-top-color:#50B847;
	left:35px;
	top:-7px;
}
header .__header_menu > ul > li.__open .__inner_menu a{
	word-break:keep-all;
	color:#555;
	padding:10px 20px;
	display:block;
}
header .__header_menu > ul > li.__open .__inner_menu a:hover{
	background:#50B847;
	color:#fff;
	border-radius:5px;
	text-decoration:underline;
}


/** table_style **/
.__table_style dl{
	border-bottom:1px solid #aaa;
}
.__table_style dl dt{
	width:200px;
	background:#eee;
	padding:10px;
}
.__table_style dl dd{
	padding:10px;
}


/** section **/
section.__contents_wrapper{
	padding:5% 10%;
}

section.__contents_wrapper .__content_title{
	margin-bottom:20px;
	position:relative;
	text-align:center;
	color:#555;
}
section.__contents_wrapper .__content_title:before{
	content:attr(data-title_eng);
	font-size:18px;
	position:absolute;
	width:100%;
	left:0;
	top:-20px;
	display:block;
	text-align:center;
	color:#777;
}
section.__contents_wrapper .__content_title:after{
	content:"";
	background:url(../images/parts/colorful_flag) no-repeat center;
	background-size:60px;
	height:20px;
	display:flex;
	justify-content:center;
	margin:5px 0 0;
}
section.__contents_wrapper .__content_title .__title{
	font-size:23px;
	font-weight:normal;
}

.__contents_wrapper .__content_mini_title{
	align-items:center;
	border-bottom:1px solid #aaa;
	margin-bottom:20px;
	padding-bottom:5px;
}
.__contents_wrapper .__content_mini_title .__title_icon{
	width:40px;
	margin-right:10px;
}
.__contents_wrapper .__content_mini_title .__title{
	font-size:18px;
	color:#444;
	display:flex;
	flex-wrap:wrap;
	width:calc(100% - 50px);
}
.__contents_wrapper .__content_mini_title .__title:before{
	content:attr(data-title_eng);
	font-size:13px;
	display:block;
	width:100%;
	letter-spacing:1.5px;
}



/** footer **/
footer{
	background:#fafafa;
	padding:5% 10% 10px;
}
footer .__footer_menu{
	justify-content:space-between;
}
footer .__footer_menu .__service_list{
}
footer .__footer_menu div > .__title{
	font-size:15px;
	padding-left:10px;
	margin-bottom:10px;
	border-left:5px solid #50B847;
	color:#555;
}

footer .__footer_menu > div > ul > li{
	position:relative;
	padding-left:10px;
	margin-bottom:5px;
}
footer .__footer_menu > div > ul > li:before{
	content:"";
	border:1px solid #555;
	border-left:0;
	border-bottom:0;
	position:absolute;
	transform:rotate(45deg);
	left:0;
	top:calc((100% - 5px)/2);
	width:5px;
	height:5px;
}
footer .__footer_menu > div > ul > li a{
	font-size:14px;
	color:#555;
}
footer .__footer_menu > div > ul > li a:hover{
	text-decoration:underline;
	opacity:.8;
}
footer .__footer_menu .__corporation{
	width:40%;
	margin:0 0 0 4%;
}
footer .__footer_menu .__corporation .__logo{
}
footer .__footer_menu .__corporation .__logo figure{
	width:200px;
}
footer .__corporation .__logo .__description{
	font-size:13px;
	color:#444;
	padding:5px;
}
footer .__bottom_menu{
	width:100%;
	max-width:400px;
	margin:30px auto 0;
}
footer .__bottom_menu ul{
	width:100%;
	justify-content:space-between;
	font-size:12px;
}
footer .__bottom_menu ul a{
	color:#999;
	text-align:center;
}

small{
	display:block;
	width:100%;
	text-align:center;
	padding:5px;
	background:#fafafa;
	color:#444;
}


/****************************/
/** index *******************/
/****************************/
.__main_visual{
	height:380px;
	background:#F3F7F9;
	overflow:hidden;
	position:relative;
}
.__main_visual .__change_cover{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:0;
	background:#fff;
	z-index:11111;
	transition:1s;
	opacity:0;
}
.__main_visual .__change_cover.__move{
	height:100%;
	transition:1.5s;
	opacity:1;
}

.__main_visual .__image_wrapper{
	width:100%;
	height:100%;
	position:relative;
}
.__main_visual .__image_wrapper ul{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
.__main_visual .__image_wrapper ul li{
	height:100%;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	opacity:0;
	transition:.3s;
}
.__main_visual .__image_wrapper ul li.__view{
	opacity:1;
	transition:1s;
}

/** mainview slide **/
/* logo */
.__main_visual .__image_wrapper ul li.__logo .__image{
	background:#fff;
	height:380px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fefefe+28,fafafa+100 */
	background: #fefefe; /* Old browsers */
	background: -moz-linear-gradient(top, #fefefe 28%, #fafafa 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #fefefe 28%,#fafafa 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #fefefe 28%,#fafafa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefefe', endColorstr='#fafafa',GradientType=0 ); /* IE6-9 */
	background:url(../images/service/aircon) no-repeat center;
	background-size: cover;
	transition:.3s;
}
.__main_visual .__image_wrapper ul li .__image:before{
	content:"";
	background:inherit;
	position:absolute;
	left:0;
	top:0;
	display:block;
	width:100%;
	height:100%;
	filter:blur(2px);
	z-index:2;
}
.__main_visual .__image_wrapper ul li .__image:after{
	content:"";
	background:rgba(255,255,255,.4);
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:3;
}
.__main_visual .__image_wrapper ul li.__logo .__image img{
	max-width:500px;
	width:90%;
	margin:0 auto;
	position:relative;
	z-index:5;
	background: #fefefe; /* Old browsers */
	background: -moz-linear-gradient(top, #fefefe 28%, #fafafa 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #fefefe 28%,#fafafa 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #fefefe 28%,#fafafa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefefe', endColorstr='#fafafa',GradientType=0 ); /* IE6-9 */
	box-shadow:5px 5px 5px #aaa;
	border-radius: 10px;
    border: 3px solid #f1f1f1;
}

.__main_visual .__image_wrapper ul li.__logo .__pls_choose_for_me{
	color: #50B847;
    position: absolute;
    left: 0;
    top: 80px;
    width: 100%;
    font-size: 18px;
    z-index: 5;
    text-align: center;
    font-weight: bold;
    text-shadow: 2px 2px #ffffff;
}

/* appeal */
.__main_visual .__image_wrapper ul li.__appeal {
	background:#fff;
}

.__main_visual .__image_wrapper ul li.__appeal.__price .__image{
	width:100%;
	background:url(../images/service/kitchen2) no-repeat center;
	background-size:cover;
}

.__main_visual .__image_wrapper ul li.__appeal.__quality .__image{
	width:100%;
	background:url(../images/service/rangehood) no-repeat center;
	background-size:cover;
}

.__main_visual .__image_wrapper ul li.__appeal.__deodorant .__image{
	width:100%;
	background:url(../images/service/room_image) no-repeat center;
	background-size:cover;	
}

.__main_visual .__image_wrapper ul li.__appeal .__appeal_point{
	max-width:450px;
	width:100%;
	height:100%;
	padding:30px;
	background:rgba(0, 0, 0, .5);
	position:absolute;
	z-index:6;
	left:-30px;
	top:0;
	color:#fff;
	transition:2s;
}
.__main_visual .__image_wrapper ul li.__appeal.__view .__appeal_point{
	left:0;
	transition:2s;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point .__title{
	font-weight:normal;
	text-align:center;
	font-size:25px;
	margin-bottom:30px;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point .__title:before{
	content:attr(data-title_eng);
	font-weight:20px;
	width:100%;
	display:block;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point .__desc{
	margin-bottom:30px;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point a.__to_link_page{
	background: #50B847;
    color: #fff;
    display: block;
    width: 100%;
    text-align: center;
    border-radius: 10px;
    padding: 15px 0;
    font-size: 18px;
    border: 2px solid #555;
    border-bottom: 5px solid #555;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point a.__to_link_page:hover{
	opacity:.8;
}
.__main_visual .__image_wrapper ul li.__appeal .__appeal_point a.__to_link_page:after{
	content:"";
	border:2px solid #fff;
	border-left:0;
	border-bottom:0;
	display:inline-block;
	transform:rotate(45deg);
	margin-left:5px;
	width:8px;
	height:8px;
}


/** service **/
.__contents_wrapper.__service{
	padding-bottom:3%;
	background:#fafafa;
}
.__service .__content > ul{
	justify-content:space-between;
}
.__service .__content > ul > li{
	width:24%;
	border:1px solid #eee;
	margin-bottom:30px;
	border-radius:5px;
	background:#fff;
	position:relative;
	overflow:hidden;
	box-shadow:0 0 3px #aaa;
}

.__service .__content > ul > li .__service_image{
	width:100%;
	height:15vw;
	transition:.3s;
	position:relative;
}
.__service .__content > ul > li.__co_aircon .__service_image{
	background:url(../images/service/co_aircon) no-repeat center;
	background-size:100%;
}
.__service .__content > ul > li.__aircon .__service_image{
	background:url(../images/service/aircon) no-repeat center;
	background-size:100%;
}
.__service .__content > ul > li.__bathroom .__service_image{
	background:url(../images/service/bathroom) no-repeat center;
	background-size:100%;	
}
.__service .__content > ul > li.__kitchen .__service_image{
	background:url(../images/service/kitchen) no-repeat center;
	background-size:100%;	
}
.__service .__content > ul > li.__pipe .__service_image{
	background:url(../images/service/pipe) no-repeat center;
	background-size:100%;	
}
.__service .__content > ul > li.__rangehood .__service_image{
	background:url(../images/service/rangehood) no-repeat center;
	background-size:100%;	
}
.__service .__content > ul > li.__washroom .__service_image{
	background:url(../images/service/washroom) no-repeat center;
	background-size:100%;	
}


.__service .__content > ul > li .__service_image:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0, 0, 0, .3);
	opacity:0;
	transition:.3s;
}
.__service .__content > ul > li .__service_image:after{
	content:"詳細を見る";
	color:#fff;
	border:1px solid #fff;
	z-index:10px;
	position:absolute;
	padding:3px 5px;
	left:calc((100% - 92px)/2);
	top:calc((100% - 22px)/2);
	transition:.3s;
	opacity:0;
}
.__service .__content > ul > li:hover .__service_image:after{
	top:calc((100% - 32px)/2);
	transition:.3s;
	opacity:1;
}
.__service .__content > ul > li:hover .__service_image{
	background-size:110%;
	transition:.3s;
}
.__service .__content > ul > li:hover .__service_image:before{
	opacity:1;
	transition:.3s;
}

.__service .__content > ul > li .__detail{
	padding:20px;
}
.__service .__content > ul > li .__detail .__title{
	font-size:18px;
	text-align:center;
	margin-bottom:10px;
}

.__service .__content > ul > li .__detail .__price_card{
	justify-content:space-between;
	align-items:center;
	padding-bottom:5px;
	border-bottom:1px dashed #aaa;
	display:none;
}
.__service .__content > ul > li .__detail .__price_card .__card_title{
	background: #f55;
    color: #fff;
    padding: 2px 5px;
    border-radius: 5px;
}
.__service .__content > ul > li .__detail .__price_card .__price{
	font-size:25px;
	font-weight:bold;
	color:#f55;
}
.__service .__content > ul > li .__detail .__price_card .__price .__unit{
	font-size:15px;
	margin-left:3px;
	font-weight:normal;
}

.__service .__content > ul > li .__detail .__coping_part{
	margin:10px 0 0;
	background:#fff;
	color:#555;
	font-size:14px;
	padding:5px;
}

.__service .__content > ul > li .__detail .__coping_part ul li{
	position:relative;
	padding-left:10px;
	margin-right:5px;
}
.__service .__content > ul > li .__detail .__coping_part ul li:before{
	content:"";
	display:inline-block;
	position:absolute;
	left:0;
	top:calc((100% - 5px)/2);
	width:3px;
	height:3px;
	border:1px solid #555;
	border-bottom:0;
	border-left:0;
	transform:rotate(45deg);
}


/** about **/
.__contents_wrapper.__about{
	position:relative;
	padding:0 10% 5%;
	background:#fafafa;
}
.__contents_wrapper.__about .__to_links{
	position:relative;
}
.__contents_wrapper.__about .__to_links ul{
	width:100%;
	justify-content:space-around;
}
.__contents_wrapper.__about .__to_links ul li{
	width: 35%;
    background: #f55;
    border-radius: 5px;
    /*border: 1px solid #a55;
    border-bottom: 5px solid #a55;*/
}
.__contents_wrapper.__about .__to_links ul li.__to_about{
	background:#50B847;
}
.__contents_wrapper.__about .__to_links ul li.__to_guide{
	background:#50B847;
}
.__contents_wrapper.__about .__to_links ul li:hover{
	opacity:.8;
}
.__contents_wrapper.__about .__to_links ul li a{
	align-items:center;
	justify-content:center;
	color:#fff;
	height:60px;
	position:relative;
	letter-spacing:1.5px;
	padding-right:20px;
}
.__contents_wrapper.__about .__to_links ul li.__to_about a figure.__icon{
	width:30px;
	margin-right:10px;
}	
.__contents_wrapper.__about .__to_links ul li.__to_guide a figure.__icon{
	width:20px;
	margin-right:10px;
}

/** ranking **/
.__contents_wrapper.__ranking{
	padding:0 10% 5%;
	display:none;
}
.__contents_wrapper.__ranking ul{
	justify-content:space-between;
}
.__contents_wrapper.__ranking ul li{
	width:30%;
	position:relative;
	border:1px solid #aaa;
	background:#fff;
	border-radius:5px;
	overflow:hidden;
}
.__contents_wrapper.__ranking ul li a{
	align-items:center;
}
.__contents_wrapper.__ranking ul li .__small_msg{
	display:block;
	background:#008D56;
	color:#fff;
	width:100%;
	text-align:center;
	padding:5px 0;
}
.__contents_wrapper.__ranking ul li .__rank_img{
	width:80px;
	padding:10px;
}
.__contents_wrapper.__ranking ul li .__title{
	font-size:18px;
}
.__contents_wrapper.__ranking ul li .__detail{
	padding:5px 10px;
}
.__contents_wrapper.__ranking ul li .__detail .__price_card{
	margin:5px 0 0;
}
.__contents_wrapper.__ranking ul li .__detail .__price_card .__card_title{
	margin-right:5px;
}
.__contents_wrapper.__ranking ul li .__detail .__price_card .__price{
	font-size:20px;
	font-weight:bold;
}
.__contents_wrapper.__ranking ul li .__detail .__price_card .__price .__unit{
	font-size:14px;
	font-weight:normal;
	margin-left:5px;
}
.__contents_wrapper.__ranking ul li .__to_service_page{
	padding: 5px 0;
    width: 100%;
    border-top: 1px solid #eee;
    margin: 0 15px;
    font-size: 15px;
    text-align:right;
    position:relative;
}
.__contents_wrapper.__ranking ul li .__to_service_page:after{
	content:"";
	display:inline-block;
	height:0;
	width:0;
	border:5px solid transparent;
	border-left-color:#00f;
	margin-left:5px;
}


/** campaign **/
.__contents_wrapper.__campaign{
	background:#eee;
	display:none;
}

.__contents_wrapper.__campaign .__campaign_list li{
}


/** feature **/
.__feature .__content > ul{
	justify-content:space-between;
}
.__feature .__content > ul > li{
	width:20%;
}
.__feature .__content > ul > li .__icon{
	width:60%;
	margin:0 auto 10px;
	filter:drop-shadow(2px 2px 2px #aaa);
}
.__feature .__content > ul > li .__title{
	font-size:18px;
	text-align:center;
	padding:5px 0;
	background:#efe;
	margin-bottom:5px;
	color:#444;
}
.__feature .__content > ul > li p{
	font-size:15px;
}


/** flow **/
.__contents_wrapper.__flow{
	background:#fafafa;
}
.__flow .__flow_box li{
	width:100%;
	margin-bottom:50px;
}
.__flow .__flow_box li .__title{
	font-size:22px;
	letter-spacing:2px;
	color:#0f5b92;
	font-weight:normal;
	border-bottom:2px solid #0f5b92;
	background:aliceblue;
	display:flex;
	margin-bottom:20px;
	position:relative;
}
.__flow .__flow_box li .__title:before{
	content:"Step.1";
	background:#0f5b92;
	color:#fff;
	display:inline-block;
	padding:2px 10px;
	margin-right:10px;
}
.__flow .__flow_box li:nth-of-type(2) .__title:before{
	content:"Step.2";
}
.__flow .__flow_box li:nth-of-type(3) .__title:before{
	content:"Step.3";
}
.__flow .__flow_box li:nth-of-type(4) .__title:before{
	content:"Step.4";
}
.__flow .__flow_box li .__title:after{
	content:"";
	width:0;
	height:0;
	border:10px solid transparent;
	border-top-color:#0f5b92;
	position:absolute;
	left: 30px;
    top: 100%;
}

.__flow .__flow_box li .__detail{
	justify-content:space-between;
}

.__flow .__flow_box li .__detail .__flow_image{
	width: 25%;
    filter: drop-shadow(2px 2px 2px #aaa);
    border: 2px solid #fff;
}
.__flow .__flow_box li .__detail .__flow_text{
	width:70%;
}
.__flow .__flow_box li .__detail .__flow_text p{
	line-height:1.8em;
}

.__flow .__flow_box li .__detail a.__to_apply{
    background: #0F5B92;
    color: #fff;
    max-width: 500px;
    margin: 30px auto 0;
    text-align: center;
    padding: 10px 0;
    border-radius: 5px;
    border: 2px solid #242A5E;
    border-bottom: 5px solid #242A5E;
    font-size:20px;
}
.__flow .__flow_box li .__detail a.__to_apply:hover{
	opacity:.8;
}
.__flow .__flow_box li .__detail a.__to_apply:after{
	content:"24時間受付メールフォーム";
	font-size:14px;
	display:block;
	width:80%;
	text-align:center;
	margin:0 auto;
	border-top:1px solid #fff;
}

.__flow .__flow_box li .__detail a.__to_term{
	position:relative;
	align-items:center;
	color: blue;
    margin: 10px 0 0;
    text-decoration: underline;
    justify-content:flex-end;
}
.__flow .__flow_box li .__detail a.__to_term:before{
	content:"";
	background:url(../images/icon/new_window) no-repeat center;
	background-size:contain;
	width:20px;
	height:20px;
	display:block;
	margin-right:5px;
}


/** news **/
.__contents_wrapper.__news{

}

.__contents_wrapper.__news .__content > ul > li{
	border-bottom: 1px dashed #aaa;
    padding: 6px 0;
    margin-bottom: 2px;
}
.__contents_wrapper.__news .__content > ul > li:before{
	content: attr(data-date);
    display: inline-block;
    margin-right: 10px;
    border: 2px solid #faa;
    border-radius: 50px;
    padding: 2px 10px;
    color: #f77;
}

/****************************/
/** service *****************/
/****************************/
.__service_main_visual{
	background:#F3F7F9;
	height:350px;
	position:relative;
}
.__service_main_visual .__images_wrapper{
	position:absolute;
	left:0;
	top:0;
	background:url(../images/service/aircon) no-repeat center;
	background-size:cover;
	width:60%;
	height:100%;
}
.__service_visual_box{
	margin-bottom:30px;
	border:10px solid #50B847;
}
.__service_visual_box .__service_image{
	width:100%;
}
.__service_menu_box{
	padding-bottom:0 !important;
}

.__service_menu_box .__content{
	border-radius:5px;
	box-shadow:0 0 3px #aaa;
	padding:20px;
	width:80%;
	margin:0 auto 50px;
	background: #f4f4f4;
    background: -moz-linear-gradient(top, #f4f4f4 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, #f4f4f4 0%,#ffffff 100%);
    background: linear-gradient(to bottom, #f4f4f4 0%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff',GradientType=0 );
    border:2px solid #eee;
}
.__service_menu_box .__content:nth-last-of-type(1){
	margin-bottom:0;
}
.__service_menu_box .__content > a{
	width:100%;
}
.__service_menu_box .__service_menu_title{
	margin-bottom:10px;
}
.__service_menu_box .__service_menu_title .__title{
	font-size:20px;
}

.__service_menu_box .__content .__object{
	width:100%;
	align-items:flex-end;
	position:relative;
	transition:.3s;
	cursor:pointer;
}
.__service_menu_box .__content .__object:hover{
	opacity:.8;
	transition:.3s;
}
.__service_menu_box .__content .__object:after{
    content: "";
    border: 3px solid #888;
    display: block;
    width: 8px;
    height: 8px;
    border-left: 0;
    border-bottom: 0;
    position: absolute;
    right: 0;
    top: calc((100% - 8px)/2);
    transform: rotate(45deg);
}

.__service_menu_box .__content .__object .__detail_wrapper{
	width:50%;
}
.__service_menu_box .__content .__object .__data_board{
	width:100%;
}
.__service_menu_box .__content .__object .__data_board .__menu_title{
	color:#555;
}
.__service_menu_box .__content .__object .__data_board .__work_point ul{
	padding:20px 10px 10px;
	background:#ffc;
	position:relative;
	border:2px solid #f99;
	border-radius:10px;
	font-size:14px;
}
.__service_menu_box .__content .__object .__data_board .__work_point ul:before{
    content: "作業箇所";
    font-size: 15px;
    color: #fff;
    background: #f55;
    position: absolute;
    left: 20px;
    top: -10px;
    padding: 1px 5px;
    font-weight: normal;
}
.__service_menu_box .__content .__object .__data_board .__work_point ul li{
	margin-right:20px;
	position:relative;
}
.__service_menu_box .__content .__object .__data_board .__work_point ul li:after{
	content: "";
    display: block;
    border-right: 1px solid #f99;
    position: absolute;
    top: 5px;
    right: -10px;
    height: 1em;
    transform: rotate(10deg);
}

.__service_menu_box .__content .__object .__data_board .__serivce_ag{
    align-items: center;
    justify-content: flex-end;
    margin-top: 5px;
    text-decoration: underline #00f;
}
.__service_menu_box .__content .__object .__data_board .__serivce_ag .__icon{
	width:30px;
}
.__service_menu_box .__content .__object .__data_board .__serivce_ag p{
	color:#00f;
	font-weight:bold;
	letter-spacing:1.5px;
}

.__service_menu_box .__content .__object .__data_board .__price{
	text-align:left;
	color:#444;
}
.__service_menu_box .__content .__object .__data_board .__price .__number:before{
	content:"料金";
	color:#444;
	margin-right:10px;
	font-size:20px;
	font-weight:normal;
}
.__service_menu_box .__content .__object .__data_board .__price .__number{
	font-size:30px;
	font-weight:bold;
	color:#f55;
}
.__service_menu_box .__content .__object .__data_board .__price .__unit{
	font-size:20px;
}
.__service_menu_box .__content .__object .__data_board .__price .__unit:after{
	content:"(税抜)";
	font-size:17px;
	font-weight:normal;
	margin-left:5px;
}

.__service_menu_box .__content .__object .__data_board .__time{
	text-align:left;
	color:#444;
}
.__service_menu_box .__content .__object .__data_board .__time:before{
	content:"(";
	display:inline-block;
}
.__service_menu_box .__content .__object .__data_board .__time:after{
	content:")";
	display:inline-block;
}
.__service_menu_box .__content .__object .__data_board .__time .__min_number,
.__service_menu_box .__content .__object .__data_board .__time .__max_number{
	font-size:25px;
}
.__service_menu_box .__content .__object .__data_board .__time .__min_number:before{
	content:"作業時間目安";
	font-size:15px;
	display:inline-block;
	margin-right:5px;
}
.__service_menu_box .__content .__object .__data_board .__time .__min_number:after{
	content:"～";
	font-size:15px;
	display:inline-block;
	margin:0 0 0 3px;
}
.__service_menu_box .__content .__object .__detail_wrapper .__to_apply{
	padding:15px 0 0;
	border-top:1px solid #aaa;
}
.__service_menu_box .__content .__object .__detail_wrapper .__to_apply a{
    background: #f55;
    border: 1px solid #f55;
    border-bottom: 3px solid #a55;
    display: flex;
    align-items: center;
    justify-content: center;
	padding: 15px;
    font-size: 18px;
    border-radius: 10px;
    color: #fff;
}

.__service_menu_box .__content .__object .__tags{
	width:40%;
}
.__service_menu_box .__content .__object .__tags .__tagmark{
	display:inline-block;
	padding:2px 20px;
	text-align:center;
	background:#f55;
	color:#fff;
	border-radius:50px;
	font-size:13px;
}

.__service_menu_box .__tips{
	font-size:15px;
}
.__service_menu_box .__tips a{
	justify-content:center;
	align-items:center;
	text-align:center;
	text-decoration:underline;
}
.__service_menu_box .__tips a .__icon{
	margin-right:5px;
	width:20px;
}

/** modal **/
.__service_menu_box .__modal_window{
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .4);
    display:none;
    transition:.3s;
	z-index:9999999999999999999999999999;
}
.__service_menu_box .__modal_window.open{
	display:block;
}
.__service_menu_box .__modal_window .__service_detail{
	width:450px;
	background:#eee;
	position:absolute;
	left:calc((100% - 450px)/2);
	height:400px;
	top:calc((100% - 400px)/2.5);
	border-radius:10px;
	padding:20px;
}
.__service_menu_box .__modal_window .__close_btn{
	display:block;
	right:10px;
	top:10px;
	position:absolute;
	font-size:30px;
	font-weight:bold;
	cursor:pointer;
	line-height:10px;
}
.__service_menu_box .__modal_window .__service_detail .__service_name,
.__service_menu_box .__modal_window .__service_detail .__work_place{
	margin-bottom:10px;
}
.__service_menu_box .__modal_window .__service_detail .__service_name h4{
	font-weight:normal;
}
.__service_menu_box .__modal_window .__service_detail .__tag{
	border-left:5px solid #34A853;
	padding-left:5px;
	margin-bottom:5px;
	display:block;
}
.__service_menu_box .__modal_window .__service_detail .__work_place li{
	font-size:15px;
	margin-right:10px;
	position:relative;
}
.__service_menu_box .__modal_window .__service_detail .__work_place li:after{
	content: "";
    position: absolute;
    border-right: 1px solid #777;
    display: block;
    height: 1em;
    right: -5px;
    top: 5px;
    transform: rotate(10deg);
}
.__service_menu_box .__modal_window .__service_detail .__work_place li:nth-last-of-type(1):after{
	display:none;
}

.__service_menu_box .__modal_window .__service_detail .__into_basket_btn{
	position:absolute;
	width:calc(100% - 40px);
	left:20px;
	bottom:20px;
}
.__service_menu_box .__modal_window .__service_detail .__into_basket{
	width: 100%;
    margin: 0 auto;
    border-radius: 5px;
    border: 2px solid #060;
    border-bottom: 5px solid #060;
    background: #34A853;
    color: #fff;
    font-size: 16px;
    padding: 10px 0;
}
.__service_menu_box .__modal_window .__service_detail .__into_basket:hover{
	opacity:.8;
}



.__label_title{
	margin-bottom:30px;
	padding:10px;
	background:#f1f1f1;
	border-radius:5px;
}
.__label_title .__title{
	font-size:17px;
	color:#555;
	border-left:8px solid #34A853;
	padding-left:10px;
}

.__recommend .__recommend_case{
	justify-content:space-between;
}
.__recommend .__recommend_case li{
	width:22%;
}

.__recommend .__recommend_case li .__situation > p{
	background:#34A853;
	color:#fff;
	text-align:center;
	padding:2px 0;
}
.__recommend .__recommend_case li .__resolve{
	background:rgba(52,168,83, .2);
}
.__recommend .__recommend_case li .__resolve p{
	width:100%;
	padding: 10px;
    font-size: 18px;
    color:#444;
    min-height:100px;
}
.__recommend .__recommend_case li .__resolve p:before{
    content: "お悩み解決";
    background: #f55;
    color: #fff;
    display: block;
    padding: 2px 5px;
    font-size: 13px;
    font-weight: normal;
    box-shadow: 2px 2px #aaa;
    text-align: center;
    margin-bottom:5px;
    margin-right: 60%;
}


.__explain .__aircon_ex{
	width:90%;
	margin:0 auto 50px;
}
.__explain .__aircon_ex:nth-last-of-type(1){
	margin:0 auto;
}

.__proceed ul li{
	width:30%;
	margin-right:5%;
	margin-bottom:20px;
}
.__proceed ul li:nth-of-type(3n){
	margin:0;
}
.__proceed ul li .__flow_title{
	letter-spacing:2px;
	padding:5px;
	color:#444;
}
.__proceed ul li .__flow_title:before{
    content: attr(data-number);
    color: #fff;
    background: #34A853;
    border-radius: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 25px;
    margin-right: 5px;
}
.__proceed ul li .__image{
	border-radius:5px;
	overflow:hidden;
	filter:drop-shadow(2px 2px 2px #ccc);
}
.__proceed ul li p{
	font-size:16px;
	padding:5px;
}


.__faq{

}
.__faq .__faq_block{
	border: 2px solid #aaa;
    border-radius: 5px;
    padding: 10px 15px;
    box-shadow: 3px 3px #aaa;
    margin-bottom:30px;
    background:#ffe;
    opacity:0;
    margin-top:50px;
    transition:2s;
}
.__faq .__faq_block.__view{
	opacity:1;
	margin-top:0;
	transition:2s;
}
.__faq .__faq_block:nth-last-of-type(1){
	margin:0;
}
.__faq .__faq_block dl dt{
	width:2em;
}
.__faq .__faq_block dl.__question{
	border-bottom:1px solid #888;
	padding-bottom:5px;
	margin-bottom:5px;
	color:#444;
	font-weight:bold;
}
.__faq .__faq_block dl dd{
	width:calc(100% - 3em);
}

.__faq .__faq_block dl.__answer{
	color:#f55;
	font-weight:bold;
}

.__attention{
	background:#fcfcfc;
}

.__attention .__label_title .__title{
	border-left-color:#f55;
}

.__attention p.__small_msg{
	font-size:15px;
	margin-bottom:5px;
}

/****************************/
/** term ********************/
/****************************/

.__lead_text{
	margin-bottom:15px;
}
.__content .__block{
	margin-bottom:20px;
}
.__content .__block .__block_title{
	margin-bottom:10px;
	position:relative;
	color:#444;
	letter-spacing:1.5px;
	font-size:18px;
}
.__content .__block .__block_title:before{
	content:"";
	position:absolute;
	width:100%;
	height:2px;
	background:#555;
	left:0;
	bottom:-5px;
	z-index:1;
}
.__content .__block .__block_title:after{
	content:"";
	position:absolute;
	left:0;
	bottom:-5px;
	height:2px;
	width:5em;
	background:#008D56;
	z-index:2;
}
.__content .__block .__block_content{
}
.__content .__block .__block_content p{
	position:relative;
	display:flex;
}
.__content .__block .__block_content p:before{
	content:"-";
	margin-right:5px;
}
.__content .__block .__block_content ul{
	margin:5px 10px;
	font-size:15px;
}
.__content .__block .__block_content ul li{
	border-bottom:1px dashed #555;
	padding-left:5px;
}
.__content .__block .__block_content ul.__number li:nth-of-type(1):before{
	content:"1.";
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
	color:#008D56;
}
.__content .__block .__block_content ul.__number li:nth-of-type(2):before{
	content:"2.";
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
	color:#008D56;
}
.__content .__block .__block_content ul.__number li:nth-of-type(3):before{
	content:"3.";
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
	color:#008D56;
}

.__content .__block .__support_box{
	padding:10px;
	background:#eee;
	margin:15px 0 0;
}
.__content .__block .__support_box h5{}
.__content .__block .__support_box span{
	display:block;
	font-size:14px;
}


/****************************/
/** corporation *************/
/****************************/
.__corporation .__small_msg{
	margin:0 0 30px;
}


/****************************/
/** about *******************/
/****************************/

.__contents_wrapper.__inview_targ{
	opacity:0;
	margin-top:20px;
	transition:1s;
}
.__contents_wrapper.__inview_targ.__view{
	opacity:1;
	margin-top:0;
	transition:1s;
}

.__about .__catch_copy{
	background:#50B847;
    box-shadow: 5px 5px #aaa;
    position: absolute;
    animation: moveBox 2s ease alternate;
    padding: 50px 40px;
    width: 400px;
    height: 200px;
}
.__about .__catch_copy:before{
	content: "";
    position: absolute;
    left: 5px;
    top: 5px;
    height: calc(100% - 20px);
    width: calc(100% - 20px);
    display: block;
    border: 2px solid #fff;
}
.__about .__catch_copy:after{
    content: "";
    display: block;
    left: 10px;
    top: 10px;
    height: calc(100% - 20px);
    width: calc(100% - 20px);
    position: absolute;
    border: 2px solid #fff;
}
.__about .__catch_copy .__sep{
	display:flex;
	align-items:flex-end;
	color:#fff;
}
.__about .__catch_copy .__sep .__strong_point{
	font-size:30px;
	font-weight:bold;
	color:#fff;
	margin-right:5px;
	text-shadow:none;
}
.__about .__catch_copy .__sep{
	font-size:22px;
	margin-bottom:10px;
}
.__about .__catch_copy .__sep:nth-of-type(2){
	margin:0;
	margin-left:1em;
}
.__about .__first_view .__block{
	align-items:center;
	justify-content:space-between;
	height:350px;
	position:relative;
}
.__about .__first_view .__image_wrapper{
	background:url(../images/banner/family) no-repeat center;
	background-size:cover;
	width:60%;
	margin-left:40%;
	height:100%;
}
.__about .__introduction{
	background:#fafafa;
}
.__about .__introduction .__logo{
	width:30%;
	padding:0 50px;
}
.__about .__block figure{
	width:30%;
}

.__about .__block{
	justify-content:space-between;
	align-items:center;
}
.__about .__text{
	width:65%;
	font-size:16px;
}
.__about .__text p{
	margin-bottom:10px;
}
.__about .__text p:nth-last-of-type(1){
	margin:0;
}

.__about .__price .__construct_price{
	width:30%;
	border:1px solid #34A853;
}
.__about .__price .__construct_price .__title{
	background: #34A853;
    color: #fff;
    padding: 5px 10px;
    font-weight: normal;
}
.__about .__price .__construct_price dl{
	border-bottom:1px dashed #aaa;
	padding:5px;
}
.__about .__price .__construct_price dl:nth-last-of-type(1){
	border-bottom:0;
}
.__about .__price .__construct_price dl dt{
	width:100%;
	position:relative;
	align-items:center;
	justify-content:space-between;
	font-weight:bold;
	color:#444;
	font-size:15px;
}
.__about .__price .__construct_price dl dd.__price{
	width:100%;
	font-size:25px;
	color:#f55;
	font-weight:bold;
	text-align:right;
}
.__about .__price .__construct_price dl dd.__price span.__unit{
	font-size:18px;
	margin-left:5px;
	color:#444;
}
.__about .__price .__construct_price dl dd.__price span.__unit:after{
	content:"(税別)";
	display:inline-block;
	font-size:14px;
	margin-left:3px;
}

/** animation keyframes *************/
@keyframes moveBox{
	0%{
		left:-5%;
		opacity:0;
	}
	100%{
		left:0;
		opacity:1;
	}
}




/****************************/
/** formstyle ***************/
/****************************/
.__form_style{

}
.__form_style dl{
	border-bottom:1px solid #aaa;
}
.__form_style dl:nth-of-type(1){
	border-top:1px solid #aaa;
}
.__form_style dl dt{
	width:200px;
	background:#f1f1f1;
	padding:20px 10px;
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
}
.__form_style dl.must dt:after{
	content:"必須";
	color:#f55;
	display:inline-block;
	padding:0 2px;
	border:2px solid #f55;
	font-size:10px;
	font-weight:bold;
	border-radius:5px;
	background:#fee;
}
.__form_style dl dd{
	padding:20px;
	width:calc(100% - 200px);
}
.__form_style input{
	font-size:16px;
	border:1px solid #aaa;
	border-radius:5px;
	padding:5px;
	height:35px;
}
.__form_style input[type="checkbox"],
.__form_style input[type="radio"]{
	height:auto;
}
.__form_style input[type="tel"]{
	width:4em;
	margin:0 5px;
}
.__form_style input[type="tel"]:nth-of-type(1){
	margin-left:0;
}
.__form_style select{
	font-size:16px;
	height:35px;
	padding:5px;
	border-radius:5px;
	border:1px solid #aaa;
}
.__form_style textarea{
	border-radius:5px;
	border:1px solid #aaa;
	font-size:16px;
	padding:5px;
	height:8em;
}
.__form_style .__w300{
	max-width:300px;
	width:100%;
}
.__form_style .__w500{
	max-width:500px;
	width:100%;
}
.__form_style .__link_to{
	margin:10px 0;
}
.__form_style .__link_to ul{
	justify-content:center;
}
.__form_style .__link_to ul li{
	margin:0 20px;
}
.__form_style .__link_to ul li a{
	position:relative;
	display:flex;
	justify-content:flex-end;
}
.__form_style .__link_to ul li a:hover{
	opacity:.8;
}
.__form_style .__link_to ul li a:before{
	content:"";
	background:url(../images/icon/new_window) no-repeat center;
	background-size:contain;
	display:inline-block;
	width:30px;
	height:30px;
}

.__form_style .__check_rules{
	text-align:center;
	padding:10px 0;
}
.__form_style .__check_rules label{
	cursor:pointer;
	text-decoration:underline;
}
.__form_style .__check_rules label:hover{
	opacity:.8;
}
.__form_style .__check_rules label input{
	margin-right:5px;
}

.__form_style .__btnGrp{
	justify-content:space-between;
	align-items:center;
	margin:30px 0;
}
.__form_style .__btnGrp.__single{
	justify-content:center;
}
.__form_style .__btnGrp button{
	max-width:350px;
	width:100%;
	font-size:16px;
	padding:20px 0;
	border-radius:5px;
	border:1px solid #aaa;
	position:relative;
}
.__form_style .__btnGrp button:not(:disabled):hover{
	opacity:.8;
}
.__form_style .__btnGrp.__single button{
	max-width:500px;
}

.__form_style .__prev_btn{
	position:relative;
	color:#555;
}
.__form_style .__prev_btn:before{
	content:"";
	display:inline-block;
	border:2px solid #555;
	border-right:0;
	border-top:0;
	width:8px;
	height:8px;
	position:absolute;
	top:calc((100% - 13px)/2);
	transform:rotate(45deg);
	left:20px;
}

.__form_style .__next_btn{
	background:#34A853;
	color:#fff;
	border:1px solid #060;
	transition:.3s;
}
.__form_style .__next_btn:before{
	content:"";
	display:inline-block;
	border:2px solid #fff;
	border-left:0;
	border-bottom:0;
	width:8px;
	height:8px;
	position:absolute;
	top:calc((100% - 13px)/2);
	transform:rotate(45deg);
	right:20px;
}
.__form_style .__btnGrp button:disabled{
	background:#aaa;
	color:#eee;
	cursor:default;
	transition:.3s;
}
.__form_style .__btnGrp button:disabled:before{
	border-color:#eee;
}



.__contact .__small_msg{
    font-size: 15px;
    margin: 0 0 20px;
    text-align:center;
}
.__contact .__small_msg .__must_style{
	display:inline-block;
	color:#f55;
	border:2px solid #f55;
	border-radius:5px;
	background:#fee;
	font-size:10px;
	font-weight:bold;
	padding:0 2px;
	margin-right:5px;
}


/****************/
/*** apply ******/
/****************/
.__apply_service{

}
.__apply_service ul li{
	width:100%;
	margin-bottom:0;
}
.__apply_service ul li:nth-of-type(even){
	background:#ffe;
}
.__apply_service ul li label{
	cursor:pointer;
	padding:5px 10px;
	display:block;
	display:flex;
	align-items:center;
}
.__apply_service ul li label input{
	margin-right:5px;
}

.__want_datetime .__datepick_targ{
	width:110px;
	text-align:center;
	margin-right:10px;
}




/** 1200px ***************************************************************************************/
@media screen and (max-width:1200px){
	.__service .__content > ul > li{
		width:45%;
	}
	.__service .__content > ul > li .__service_image{
		height:20vw;
	}
	.__contents_wrapper.__ranking ul li{
		width:33%;
	}
	.__contents_wrapper.__ranking ul li .__small_msg{
		font-size:15px;
	}	
	.__contents_wrapper.__ranking ul li .__rank_img{
		width:60px;
	}	
	.__contents_wrapper.__ranking ul li .__title{
		font-size:16px;
	}
	.__contents_wrapper.__ranking ul li .__detail .__price_card{
		font-size:15px;
	}
	.__contents_wrapper.__ranking ul li .__detail .__price{
		font-size:17px;
	}


	.__service_menu_box .__content{
		width:100%;
	}
	.__service_menu_box .__content .__object .__data_board .__work_point ul{
		font-size:13px;
	}

	.__recommend .__recommend_case li .__situation > p{
		font-size:14px;
	}
	.__recommend .__recommend_case li .__resolve p:before{
		margin:0 20% 5px;
	}
	.__recommend .__recommend_case li .__resolve p{
		font-size:16px;
	}
}


/** 1000px ***************************************************************************************/
@media screen and (max-width:1000px){
	header{
		padding:10px 5%;
	}

	header .__header_menu{
		position:fixed;
		top:73px;
		height:calc(100% - 70px);
		right:-300px;
		transition:.3s;
		background:none;
	}
	header .__header_menu > ul{
		display:block;
		position:absolute;
		right:0;
		top:0;
		height:100%;
		width:auto;
		z-index:9990;
		background:#fafafa;
	}
	header .__header_menu > ul > li{
	}
	header .__header_menu > ul > li:after{
		display:none;
	}
	header .__header_menu ul li{
		width:100%;
		border-bottom:1px solid #eee;
	}
	header .__header_menu ul li.__service_list{
		cursor:default;
		padding:5px 10px;
	}
	header .__header_menu ul li.__service_list:hover{
		text-decoration:none;
	}
	header .__header_menu > ul > li .__inner_menu{
		display:block;
		position:static;
		width:100%;
		margin:0 10px;
		font-weight:bold;
	}

	header .__header_menu.__open{
		right:0;
		transition:.3s;
		width:100%;
	}
	header .__header_menu.__open:before{
		content:"";
		background:rgba(0,0,0,.3);
		display:block;
		width:100%;
		height:100%;
		position:absolute;
		left:0;
		top:0;
	}
	header .__header_menu.__open ul li a{
	    position: relative;
	    width: 100%;
	    padding: 10px 60px 10px 20px;
	    font-size: 14px;
	    color:#555;
	    border-radius:5px;
	}
	header .__header_menu.__open ul li a:hover{
		color:#fff;
		background:#50B847;
	}
	header .__header_menu.__open ul li a:before{
		content:"";
		display:inline-block;
		position:absolute;
		border:4px solid transparent;
		border-left-color:#444;
		left:5px;
		top:calc((100% - 8px)/2);
	}
	header .__header_menu.__open ul li a:hover:before{
		border-left-color:#fff;
	}
	header .__header_menu > ul > li .__inner_menu a{
		font-size:12px;
	}
	header .__header_menu > ul > li .__inner_menu a:hover{
		text-decoration:underline;
	}
	header .__header_menu > ul > li .__inner_menu li:nth-last-of-type(1){
		border:0;
	}

	header .__sp_menu_btn{
		display:flex;
		width:30px;
		height:25px;
		cursor:pointer;
		align-items:center;
		flex-wrap:wrap;
		position:relative;
	}
	header .__sp_menu_btn .__menu_bar{
		background:#aaa;
		height:3px;
		width:100%;
		display:block;
		border-radius:2px;
		position:absolute;
		transition:.3s;
	}
	header .__sp_menu_btn .__menu_bar.__bar1{
		top:0;
		left:0;
	}

	header .__sp_menu_btn .__menu_bar.__bar3{
		bottom:0;
		left:0;
	}

	/** メニュー表示時 **/
	header .__sp_menu_btn.__open .__menu_bar.__bar1{
		top:unset;
		left:unset;
		transform:rotate(45deg);
	}
	header .__sp_menu_btn.__open .__menu_bar.__bar2{
		display:none;
	}

	header .__sp_menu_btn.__open .__menu_bar.__bar3{
		bottom:unset;
		left:unset;
		transform:rotate(-45deg);
	}


	.__main_visual{
		overflow:hidden;	
	}
	.__main_visual .__image_wrapper{
	}
	.bx-wrapper{
		margin-bottom:0px !important;
	}

	.__contents_wrapper.__about .__to_links ul{
		justify-content:space-between;
	}
	.__contents_wrapper.__about .__to_links ul li{
		width:45%;
	}

	.__contents_wrapper.__ranking ul li{
		width:100%;
		margin-bottom:20px;
	}	
	.__contents_wrapper.__ranking ul li:nth-last-of-type(1){
		margin:0;
	}
	.__contents_wrapper.__ranking ul li .__rank_img{
		width:80px;
	}


	.__feature .__content > ul > li{
		width:45%;
		margin-bottom:60px;
	}	
	.__feature .__content > ul > li:nth-of-type(n + 3){
		margin:0;
	}
	.__feature .__content > ul > li .__icon{
		width:50%;
		margin-bottom:20px;
	}


	.__flow .__flow_box li .__detail .__flow_image{
		width:40%;
	}
	.__flow .__flow_box li .__detail .__flow_text{
		width:55%;
	}


	footer .__footer_menu .__service_list,
	footer .__footer_menu .__guide,
	footer .__footer_menu .__corporation{
		width:100%;
		margin:0 0 20px;
	}

	footer .__footer_menu .__corporation{
		margin:0;
	}


	.__service_main_visual{
		height:300px;
	}

	.__recommend .__recommend_case li{
		width:100%;
		margin-bottom:30px;
		display:flex;
		justify-content:center;
		align-items:flex-end;
	}
	.__recommend .__recommend_case li:nth-last-of-type(1){
		margin:0;
	}
	.__recommend .__recommend_case li .__situation{
		width:30%;
		margin-right:10%;
		position:relative;
	}
	.__recommend .__recommend_case li .__situation:after{
	    content: "";
	    border: 15px solid transparent;
	    border-left-color: #34A853;
	    position: absolute;
	    width: 0;
	    height: 0;
	    right: -30%;
	    top: 60%;
	}
	.__recommend .__recommend_case li .__resolve{
		width:40%;
	}
	.__recommend .__recommend_case li .__resolve p:before{
		margin-bottom:10px;
	}

	.__proceed ul li{
		width:100%;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin-bottom:30px;
	}
	.__proceed ul li:nth-of-type(3n){
		margin-bottom:30px;
	}
	.__proceed ul li:nth-last-of-type(1){
		margin:0;
	}
	.__proceed ul li .__flow_title{
		width:100%;
		margin-bottom:10px;
	}
	.__proceed ul li .__image{
		width:35%;
	}
	.__proceed ul li p{
		width:60%;
	}

	.__about .__first_view{
		margin-bottom:60px;
	}
	.__about .__catch_copy{
		left: calc((100% - 400px)/2);
   		top: 70%;
   		animation: moveBox 2s alternate;
	}
	.__about .__first_view .__image_wrapper{
		width:100%;
		margin:0;
	}


	/** keyframes **/
	@keyframes moveBox{
		0%{
			top:75%;
			opacity:0;
		}
		100%{
			top:70%;
			opacity:1;
		}
	}


	.__form_style .__btnGrp{
		justify-content:center;
	}

	.__form_style .__btnGrp .__next_btn{
		order:1;
		margin-bottom:20px;
	}
	.__form_style .__btnGrp .__prev_btn{
		order:2;
	}

}


/** 800px ****************************************************************************************/
@media screen and (max-width:800px){
	section.__contents_wrapper{
		padding:50px 5%;
	}

	.__service .__content > ul > li{
		width:100%;
	}
	.__service .__content > ul > li a{
		display:flex;
		flex-wrap:wrap;
	}
	.__service .__content > ul > li .__service_image{
		width:100%;
		height:45vw;
	}
	.__service .__content > ul > li .__detail{
		width:100%;
	}
	.__service .__content > ul > li .__detail .__coping_part{
		font-size:12.5px;
	}

	.__contents_wrapper.__about{
		padding:0 5% 50px;
	}
	.__contents_wrapper.__about .__to_links ul li{
		width:100%;
		margin-bottom:20px;
	}
	.__contents_wrapper.__about .__to_links ul li:nth-last-of-type(1){
		margin:0;
	}

	.__contents_wrapper.__ranking{
		padding-bottom:50px;
	}

	.__flow .__flow_box li:nth-last-of-type(1){
		margin:0;
	}
	.__flow .__flow_box li .__detail .__flow_image{
		width:100%;
		margin:0 auto 20px;
	}
	.__flow .__flow_box li .__detail .__flow_text{
		width:100%;
	}

	.__contents_wrapper.__news .__content > ul{
		padding:10px;
	}
	.__contents_wrapper.__news .__content > ul > li:before{
		margin-right:100%;
	}

	footer{
		padding:50px 10% 10px;
	}

	.__service_main_visual .__images_wrapper{
		width:100%;
	}
	.__service_menu_box .__content .__object .__object_image{
		width:100%;
	}
	.__service_menu_box .__content .__object .__detail_wrapper{
		width:100%;
		margin-bottom:10px;
	}
	.__service_menu_box .__content .__object .__data_board{
		width:100%;
	}
	.__service_menu_box .__content .__object .__tags{
		width:100%;
	}
	.__recommend .__recommend_case li .__resolve{
		width:60%;
	}

	.__block .__block_content .__image{
		margin-bottom:20px;
	}


	.__about .__text{
		width:100%;
	}
	.__about .__block figure,
	.__about .__introduction .__logo,
	.__about .__price .__construct_price{
		width:60%;
		margin:0 auto 20px;
	}


	.__form_style dl dt{
		width:180px;
	}
	.__form_style dl dd{
		width:calc(100% - 180px);
	}

}


/** 600px ****************************************************************************************/
@media screen and (max-width:600px){
	body{
		min-width:360px;
	}
	header .__logo h1{
		font-size:20px;
	}

	header .__header_menu{
		padding:5px 0;
	}


	.__table_style dl dt,
	.__table_style dl dd{
		width:100%;
	}

	.__feature .__content > ul > li:nth-of-type(n + 3){
		margin-bottom:50px;
	}
	.__feature .__content > ul > li{
		width:100%;
		padding:0;
	}
	.__feature .__content > ul > li:nth-last-of-type(1){
		margin:0;
	}


	footer .__footer_menu > div{
		width:100%;
		margin-bottom:30px;
	}


	.__service_menu_box .__content .__object .__data_board dl dt,
	.__service_menu_box .__content .__object .__data_board dl dd{
		width:100%;
	}

	/** modal **/
	.__service_menu_box .__modal_window .__service_detail{
		width:300px;
		left:calc((100% - 300px)/2);
	}

	.__recommend .__recommend_case li{
		flex-wrap:wrap;
		margin-bottom:50px;
	}
	.__recommend .__recommend_case li:nth-last-of-type(1){
		margin:0;
	}
	.__recommend .__recommend_case li .__situation{
		width:80%;
		margin:0 auto;
	}
	.__recommend .__recommend_case li .__situation:after{
		display:none;
	}
	.__recommend .__recommend_case li .__resolve{
		width:80%;
		margin:0 auto;
	}
	.__proceed ul li{

	}
	.__proceed ul li .__image{
		width:100%;
		margin-bottom:10px;
	}
	.__proceed ul li p{
		width:100%;
		padding:0;
	}

	.__about .__catch_copy{
		width:300px;
		height:150px;
		left:calc((100% - 300px)/2);
		padding:30px;
	}
	.__about .__catch_copy .__sep{
		font-size:16px;
		margin-bottom:5px;
	}
	.__about .__catch_copy .__sep .__strong_point{
		font-size:25px;
	}

	.__about .__block figure,
	.__about .__introduction .__logo,
	.__about .__price .__construct_price{
		width:100%;
	}


	.__form_style dl dt{
		width:100%;
		padding:10px;
	}
	.__form_style dl dd{
		width:100%;
		padding:20px 10px;
	}
}