@charset "UTF-8";

/* reset */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,figure,footer,header,hgroup,menu,nav,section,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}article,aside,figure,footer,header,hgroup,nav,section{display:block;}img,object,embed{vertical-align: bottom;}html{overflow-y:scroll;}ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}table{border-collapse:collapse;border-spacing:0;}th{font-weight:bold;vertical-align:bottom;}td{font-weight:normal;vertical-align:top;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}pre{white-space:pre;white-space:pre-wrap;white-space:pre-line;word-wrap:break-word;}input[type="radio"]{vertical-align:text-bottom;}input[type="checkbox"]{vertical-align:bottom;*vertical-align:baseline;}select,input,textarea{font:99% sans-serif;}table{font-size:inherit;font:100%;}a:hover,a:active{outline:none;}strong,th{font-weight:bold;}td,td img{vertical-align:top;}sub,sup{font-size:75%;line-height:0;position:relative;}sup{top:-0.5em;}sub{bottom:-0.25em;}pre,code,kbd,samp{font-family:monospace,sans-serif;}label,input[type=button],input[type=submit],button{cursor:pointer;}button,input,select,textarea{margin:0;}button{width:auto;overflow:visible;}.clear:before,.clear:after{content:"\0020";display:block;height:0;overflow:hidden;}.clear:after{clear:both;}.clear{zoom:1;}

/* base */


html {
	font-family: '游ゴシック',YuGothic,'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
	font-size: 62.5%; /* 10px */
	font-weight:500; /* @font-faceが効かなくなったchromeのかすれ対策 */
}

body {
	position:relative;
	width:100%;
	height:100%;
	font-size:1.4rem;
	letter-spacing:0;
	line-height:1;
	color : #221714;
	-webkit-text-size-adjust: 100%;
	padding-top:116px;
}
/*■ HOME #b-home ■*/
body#b-home {
}


/* ゴシック体+ 欧文Trebuchet MS */
.en{
	font-family: 'Trebuchet MS','游ゴシック',YuGothic,'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/* 明朝体 */
.serif{
	font-family: '游明朝',YuMincho,'ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','ＭＳ Ｐ明朝',serif;
	font-weight: normal;
}
/* 明朝体+ 欧文Times */
.serif_en{
	font-family: 'Times New Roman','游明朝',YuMincho,'ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','ＭＳ Ｐ明朝',serif;
	letter-spacing: 0.1em;
	font-weight: normal;
}



p,li,dd,td {
  text-align: justify;
  text-justify: inter-ideograph;
}
h1,h2,h3,h4,h5{
	font-weight: 500;
}
* {
    box-sizing: border-box;
}


a:link,
a:visited,
a:hover,
a:active{
	color: #221714;
	text-decoration: none;
}

a.textlink:link,
a.textlink:visited{
	color: #221714;
	text-decoration: underline;
	transition: color 0.3s;
}
a.textlink:hover,
a.textlink:active{
	color: #09f;
}

@media screen and (min-width: 1024px) { /******** PC以上 ********/

    a.alpha:link,
    a.alpha:visited,
    a.trans:link,
    a.trans:visited {
        transition: opacity 0.3s ease-out;
        opacity: 1;
    }
    a.alpha:hover,
    a.alpha:active {
        opacity: 0.6;
    }
    a.trans:hover,
    a.trans:active {
        opacity: 0;
    }

}

img {
	max-width:100%;
	height:auto;
	image-rendering: -webkit-optimize-contrast; /* Chromeぼやけ対策 */
}

.sp{
	display:none;
}
.ta{
	display:none;
}
.pc{
	display:inline;
}


@media screen and (min-width: 1024px) { /******** PC以上 ********/
}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/
	body {
		padding-top:70px;
	}
	.pc{
		display:none;
	}
	.ta{
		display:inline;
	}
}
@media screen and (min-width: 768px) { /****** tablet以上 ******/
/*	body {
		min-width:1040px;  tablet以上をPCと同じ表示にするときはこれ 
	}*/
}
@media screen and (max-width: 479px) { /** sp **/
	body {
		min-width:320px;
	}
	.ta{
		display:none;
	}
	.sp{
		display:inline;
	}
}


@media print, screen and (min-width: 768px) { /****** tablet以上 ******/
	.sp_only{
		display:none;
	}
	.pc_only{
		display:block;
	}
	th.pc_only,
	td.pc_only{
		display:table-cell;
	}
	.br_sp{
		display:none;
	}
	.br_pc{
		display:inline;
	}
}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/
	.sp_only{
		display:block;
	}
	th.sp_only,
	td.sp_only{
		display:table-cell;
	}
	.pc_only{
		display:none;
	}
	.br_sp{
		display:inline;
	}
	.br_pc{
		display:none;
	}
}


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

#header{
	position:fixed;
	top:0;
	left:0;
	width:100%; 
	height: 116px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	background-color:rgba(255,255,255,.95);
	transition: all 0.3s ease-in-out;
	border-top:solid 22px #a2ca0f;
	z-index:500;
}
#header .header_logo{
	padding-left: 2.5vw;
	width:auto;
	height:100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	transition: all 0.3s ease-in-out;
}
#header .header_logo a{
	display: block;
	width:380px;
	height:74px;/* 両方指定しないと動きがおかしくなる */
	background: url("../../img/common/logo_header.svg") 0 0 no-repeat;
	background-size: contain;
	font-size: 0%;
	line-height: 0%;
	text-indent: 100%;
	transition: all 0.3s ease-in-out;
}


@media screen and (min-width: 1024px) { /******** PC以上 ********/

	#header .header_logo{
		width: 30%;
	}

}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	#header{
		height:70px;
		border-top:solid 10px #a2ca0f;
		box-shadow: 0 2px 4px 0 rgba(0,0,0,.12);
	}
	#header .header_logo{
	}
	#header .header_logo a{
		width:154px;
		height:46px;
		background-image: url("../../img/common/logo_header_sp@2x.png");
	}

}


/* #header_contact *************************************/
/* .contact_nav *************************************/

#header_contact{
	position: absolute;
	top:-22px;
	right:0;
	width:410px;
	height:67px;
	padding-top: 33px;
	padding-right: 30px;
	background:url("../../img/common/2whitelines@2x.png") 70% 0 no-repeat;
	background-size: auto 22px;
	transition: all 0.3s ease-in-out;
}


.contact_nav{
	display: flex;
	justify-content: space-between;
	transition: all 0.3s ease-in-out;
}
.contact_nav li{
	width: 49.5%;
	transition: all 0.3s ease-in-out;
}

.contact_nav li#btn_menu{
	display:none;
}

.contact_nav li a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 34px;
	background-color: #fff;
	border:solid 3px #F4A400;
	transition: all 0.2s ease-out;
}
.contact_nav li.cnav_tel a{
	background-color: #fff;
}
.contact_nav li.cnav_form a{
	background-color: #F4A400;
}

.contact_nav li a .cnav_text{
	display: inline-block;
	padding: 3px 0 1px 28px;
	background:0 50% no-repeat;
	background-size:contain;
	letter-spacing: 0.15em;
	font-weight: bold;
	color:#fff;
}
.contact_nav li.cnav_tel a .cnav_text{
	background-image: url(/img/common/icn_tel_ora@3x.png);
	color:#F4A400;
}
.contact_nav li.cnav_form a .cnav_text{
	background-image: url(/img/common/icn_mail_wht@3x.png);
}

@media screen and (min-width: 1024px) { /******** PC以上 ********/
	.contact_nav li.cnav_tel a:hover{
		background-color: #F4A400;
	}
	.contact_nav li.cnav_form a:hover{
		background-color: #fff;
	}
	.contact_nav li.cnav_tel a .cnav_text{
		padding-top: 2px;
		font-size: 1.5rem;
		letter-spacing: 0.08em;
	}
	.contact_nav li.cnav_tel a:hover .cnav_text{
		color:#fff;
		background-image: url(/img/common/icn_tel_wht@3x.png);
	}
	.contact_nav li.cnav_form a:hover .cnav_text{
		color:#F4A400;
		background-image: url(/img/common/icn_mail_ora@3x.png);
	}
}

@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	#header_contact{
		top:-10px;
		width:182px;
		height:71px;
		padding-top: 11px;
		padding-right: 0;
		background:url("../../img/common/2whitelines@2x.png") 75% 0 no-repeat;
		background-size: auto 14px;
	}

	#header_contact .contact_nav{
		width:182px;
		height:60px;
	}
	#header_contact .contact_nav li{
		width: 60px;
	}
	#header_contact .contact_nav li#btn_menu{
		display:block;
	}

	#header_contact .contact_nav li a,
	#header_contact .contact_nav li.cnav_form a{
		width: 60px;
		height: 60px;
	}
	#header_contact .contact_nav li a .cnav_text{
		padding-top: 32px;
		padding-left:0;
		font-size: 0.9rem;
		line-height: 1;
		overflow: hidden;
		background-position:50% 32%;
		background-size:24px auto;
	}
	#header_contact .contact_nav li a span.pc{
		display:none;
	}
	#header_contact .contact_nav li a span.sp{
		display:inline-block;
	}
	#header_contact .contact_nav li#btn_menu a{
		background-color: #898068;
		border:solid 3px #898068;
	}
	#header_contact .contact_nav li#btn_menu a .cnav_text{
		background-image: url(../../img/common/icn_menu.png);
	}
	#header_contact .contact_nav li#btn_menu.active a .cnav_text{
		background-image:url(../../img/common/icn_close.png);
	}

}



/* .global_nav *************************************/

.global_nav li a span.amp{
	display:inline-block;
	padding:0 2px;
	font-size:1.2rem;
}


@media screen and (min-width: 1024px) { /******** PC以上 ********/

	.global_nav{
		width: 68%;
		max-width: 940px;
		padding-right: 10px;
	}
	.global_nav ul.gnav{
		width: 100%;
		height: 48px;
		display: flex;
		justify-content: space-around;
		transition: all 0.3s ease-out;
	}
	.global_nav li.gnav_item{
		flex-grow: 1;
	}

	.global_nav a.gnav_item_a{
		display:flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		padding: 0 5px;
		transition: all 0.1s ease-out;
	}

	.global_nav a.gnav_item_a:link,
	.global_nav a.gnav_item_a:visited{
		border-bottom: solid 0px #A2CA0F;
	}
	.global_nav a.gnav_item_a:hover,
	.global_nav a.gnav_item_a:active{
		border-bottom: solid 6px #A2CA0F;
	}


	#b-repaint .global_nav li.gnav_repaint a.gnav_item_a,
	#b-plan .global_nav li.gnav_plan a.gnav_item_a,
	#b-architecturalfinish .global_nav li.gnav_architecturalfinish a.gnav_item_a,
	#b-works .global_nav li.gnav_works a.gnav_item_a,
	#b-recommend .global_nav li.gnav_recommend a.gnav_item_a,
	#b-voice .global_nav li.gnav_voice a.gnav_item_a,
	#b-company .global_nav li.gnav_company a.gnav_item_a{
		cursor:default;
		border-bottom: solid 6px #A2CA0F;
	}

	.global_nav li.gnav_home{
		display:none;
	}

}
@media print, screen and (min-width: 1024px) and (max-width: 1100px) { /****** 狭いPC ******/

	#header .global_nav a.gnav_item_a{
		font-size: 1.3rem;
	}

}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	#header_nav{
		display: none;
	}

}

/* スクロールで狭くなる */

@media screen and (min-width: 1024px) { /******** PC以上 ********/

	#b-home #header .header_logo a:hover{
		cursor:default;
	}

	#header.narrow{
		height: 82px;
		box-shadow: 0 2px 6px 0 rgba(0,0,0,.05);
		border-top:solid 16px #a2ca0f;
	}
	#header.narrow .header_logo{
	}
	#header.narrow .header_logo a{
		width:304px;
		height:58px;
	}

	#header.narrow #header_contact{
		top:-16px;
		width:380px;
		height:50px;
		padding-top: 22px;
		background:url("../../img/common/2whitelines@2x.png") 70% 0 no-repeat;
		background-size: auto 16px;
	}
	#header.narrow .contact_nav li a{
		height:28px;
		font-size: 1.2rem;
		background-size:16px auto;
	}
	#header.narrow .contact_nav li.cnav_tel a .cnav_text{
		font-size: 1.3rem;
	}

	#header.narrow .global_nav ul.gnav{
		height: 32px;
	}
	#header.narrow .global_nav a.gnav_item_a{
		font-size: 1.2rem;
	}

	#header.narrow .global_nav a.gnav_item_a:hover,
	#header.narrow .global_nav a.gnav_item_a:active{
		border-bottom: solid 5px #A2CA0F;
	}


	#b-repaint #header.narrow .global_nav li.gnav_repaint a.gnav_item_a,
	#b-plan #header.narrow .global_nav li.gnav_plan a.gnav_item_a,
	#b-architecturalfinish #header.narrow .global_nav li.gnav_architecturalfinish a.gnav_item_a,
	#b-works #header.narrow .global_nav li.gnav_works a.gnav_item_a,
	#b-recommend #header.narrow .global_nav li.gnav_recommend a.gnav_item_a,
	#b-voice #header.narrow .global_nav li.gnav_voice a.gnav_item_a,
	#b-company #header.narrow .global_nav li.gnav_company a.gnav_item_a{
		cursor:default;
		border-bottom: solid 5px #A2CA0F;
	}

}

/****************************************************************************
#header_visual
****************************************************************************/

#header_visual {
	position: relative;
	width: 100%;
	height: 200px;
	background: #ECE7D7 50% 50% no-repeat;
	background-size: cover;
}

@media screen and (min-width: 768px) { /****** tablet以上 ******/

    .b-repaint #header_visual {
        background-image: url(../../img/mainimage/mainimage_repaint@1.5x-80.jpg);
    }
    #b-repainting #header_visual {
        background-image: url(../../img/mainimage/mainimage_repainting@1.5x-80.jpg);
    }
    #b-foundation #header_visual {
        background-image: url(../../img/mainimage/mainimage_foundation@1.5x-80.jpg);
    }
    #b-process #header_visual {
        background-image: url(../../img/mainimage/mainimage_process@1.5x-80.jpg);
    }
    #b-paintproduct #header_visual {
        background-image: url(../../img/mainimage/mainimage_paintproduct@1.5x-80.jpg);
    }
    #b-siding #header_visual {
        background-image: url(../../img/mainimage/mainimage_siding@1.5x-80.jpg);
    }
    #b-colonial #header_visual {
        background-image: url(../../img/mainimage/mainimage_colonial@1.5x-80.jpg);
    }
    #b-ironroof #header_visual {
        background-image: url(../../img/mainimage/mainimage_ironroof@1.5x-80.jpg);
    }
    #b-thermalbarrier #header_visual {
        background-image: url(../../img/mainimage/mainimage_thermalbarrier@1.5x-80.jpg);
    }
    #b-warning #header_visual {
        background-image: url(../../img/mainimage/mainimage_warning@1.5x-80.jpg);
    }

    #b-price #header_visual {
        background-image: url(../../img/mainimage/mainimage_price@1.5x-80.jpg);
    }
    #b-price03 #header_visual {
        background-image: url(../../img/mainimage/mainimage_price03@1.5x-80.jpg);
    }
    #b-price04 #header_visual {
        background-image: url(../../img/mainimage/mainimage_price04@1.5x-80.jpg);
    }
    #b-loan #header_visual {
        background-image: url(../../img/mainimage/mainimage_loan@1.5x-80.jpg);
    }

    #b-flow #header_visual {
        background-image: url(../../img/mainimage/mainimage_flow@1.5x-80.jpg);
    }
    #b-faq #header_visual {
        background-image: url(../../img/mainimage/mainimage_faq@1.5x-80.jpg);
    }

    .b-architecturalfinish #header_visual {
        background-image: url(../../img/mainimage/mainimage_architecturalfinish@1.5x-80.jpg);
    }
    #b-wood #header_visual {
        background-position: 85% 50%;
        background-image: url(../../img/mainimage/mainimage_wood@1.5x-80.jpg);
    }
    #b-paint #header_visual {
        background-image: url(../../img/mainimage/mainimage_paint@1.5x-80.jpg);
    }
    #b-natural-paint #header_visual {
        background-image: url(../../img/mainimage/mainimage_natural-paint@1.5x-80.jpg);
    }
    #b-care-for-wood #header_visual {
        background-image: url(../../img/mainimage/mainimage_care-for-wood@1.5x-80.jpg);
    }
    #b-tile #header_visual {
        background-position: 35% 50%;
        background-image: url(../../img/mainimage/mainimage_tile@1.5x-80.jpg);
    }
    #b-drywall #header_visual {
        background-image: url(../../img/mainimage/mainimage_drywall@1.5x-80.jpg);
    }
    #b-interiorpaint #header_visual {
        background-image: url(../../img/mainimage/mainimage_interiorpaint@1.5x-80.jpg);
    }

    .b-recommend #header_visual {
        background-image: url(../../img/mainimage/mainimage_recommend@1.5x-80.jpg);
    }
    #b-r04nano #header_visual {
        background-image: url(../../img/mainimage/mainimage_r04nano@1.5x-80.jpg);
    }
    #b-r05osmo #header_visual {
        background-image: url(../../img/mainimage/mainimage_r05osmo@1.5x-80.jpg);
    }
    #b-r06farrow #header_visual {
        background-image: url(../../img/mainimage/mainimage_r06farrow@1.5x-80.jpg);
    }
    #b-r08uvclear #header_visual {
        background-image: url(../../img/mainimage/mainimage_r08uvclear@1.5x-80.jpg);
    }
    #b-r09auton #header_visual {
        background-image: url(../../img/mainimage/mainimage_r09auton@1.5x-80.jpg);
    }

    .b-works #header_visual {
        background-image: url(../../img/mainimage/mainimage_works@1.5x-80.jpg);
    }

    .b-company #header_visual {
        background-image: url(../../img/mainimage/mainimage_company@1.5x-80.jpg);
    }
    #b-kokoroiki #header_visual {
        background-image: url(../../img/mainimage/mainimage_kokoroiki@1.5x-80.jpg);
    }
    #b-companyinfo #header_visual {
        background-image: url(../../img/mainimage/mainimage_companyinfo@1.5x-80.jpg);
    }
    #b-craftsman #header_visual {
        background-image: url(../../img/mainimage/mainimage_craftsman@1.5x-80.jpg);
    }
    #b-achievement #header_visual {
        background-image: url(../../img/mainimage/mainimage_achievement@1.5x-80.jpg);
    }
    #b-house #header_visual {
        background-image: url(../../img/mainimage/mainimage_house-80.jpg);
    }
    #b-csr #header_visual {
        background-image: url(../../img/mainimage/mainimage_csr.jpg);
    }

    .b-voice #header_visual {
        background-image: url(../../img/mainimage/mainimage_voice@1.5x-80.jpg);
    }

    .b-contact #header_visual {
        background-image: url(../../img/mainimage/mainimage_contact-80.jpg);
    }
    #b-contact-thx #header_visual {
        display: none;
    }
    
    .b-about #header_visual {
        background-image: url(../../img/mainimage/mainimage_about@1.5x-80.jpg);
    }
    #b-copyright #header_visual {
        background-image: url(../../img/mainimage/mainimage_copyright@1.5x-80.jpg);
    }

    .b-channel #header_visual {
        background-color: #f7ba3d;
        background-image: url("../../img/mainimage/mainimage_channel@2x-80.jpg");
        background-size: 1366px 200px;
    }

}
@media screen and (max-width: 768px) { /**** tablet以下 ****/

    .b-repaint #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_repaint.jpg);
    }
    #b-repainting #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_repainting.jpg);
    }
    #b-foundation #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_foundation.jpg);
    }
    #b-process #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_process.jpg);
    }
    #b-paintproduct #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_paintproduct.jpg);
    }
    #b-siding #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_siding.jpg);
    }
    #b-colonial #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_colonial.jpg);
    }
    #b-ironroof #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_ironroof.jpg);
    }
    #b-thermalbarrier #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_thermalbarrier.jpg);
    }
    #b-warning #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_warning.jpg);
    }

    #b-price #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_price.jpg);
    }
    #b-price03 #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_price03.jpg);
    }
    #b-price04 #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_price04.jpg);
    }
    #b-loan #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_loan.jpg);
    }

    #b-flow #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_flow.jpg);
    }
    #b-faq #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_faq.jpg);
    }

    .b-architecturalfinish #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_architecturalfinish.jpg);
    }
    #b-wood #header_visual {
        background-position: 85% 50%;
        background-image: url(../../img/mainimage_sp/mainimage_wood.jpg);
    }
    #b-paint #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_paint.jpg);
    }
    #b-natural-paint #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_natural-paint.jpg);
    }
    #b-care-for-wood #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_care-for-wood.jpg);
    }
    #b-tile #header_visual {
        background-position: 35% 50%;
        background-image: url(../../img/mainimage_sp/mainimage_tile.jpg);
    }
    #b-drywall #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_drywall.jpg);
    }
    #b-interiorpaint #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_interiorpaint.jpg);
    }

    .b-recommend #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_recommend.jpg);
    }
    #b-r04nano #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_r04nano.jpg);
    }
    #b-r05osmo #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_r05osmo.jpg);
    }
    #b-r06farrow #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_r06farrow.jpg);
    }
    #b-r08uvclear #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_r08uvclear.jpg);
    }
    #b-r09auton #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_r09auton.jpg);
    }

    .b-works #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_works.jpg);
    }

    .b-company #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_company.jpg);
    }
    #b-kokoroiki #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_kokoroiki.jpg);
    }
    #b-companyinfo #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_companyinfo.jpg);
    }
    #b-craftsman #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_craftsman.jpg);
    }
    #b-achievement #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_achievement.jpg);
    }
    #b-house #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_house.jpg);
    }
    #b-csr #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_csr.jpg);
    }

    .b-voice #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_voice.jpg);
    }

    .b-contact #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_contact.jpg);
    }
    .b-about #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_about.jpg);
    }
    #b-copyright #header_visual {
        background-image: url(../../img/mainimage_sp/mainimage_copyright.jpg);
    }

    .b-channel #header_visual {
    	background-color: #f7ba3d;
		background-image: url("../../img/mainimage/mainimage_channel_sp@2x-80.jpg");
		background-size: 768px 160px;
	}

}
@media screen and (max-width: 479px) { /** sp **/
	#b-concert #header_visual {
		background-position:60% 0;
	}

}

.content_cat_label {
	width: 90%;
	max-width: 1200px;
	height: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
.content_cat_label .en{
	font-size: 2rem;
	letter-spacing: 0.15em;
}

#b-repaint .content_cat_label,
#b-flow .content_cat_label,
#b-care-for-wood .content_cat_label,
#b-tile .content_cat_label,
#b-kokoroiki .content_cat_label,
#b-repainting .content_cat_label,
#b-kokoroiki .content_cat_label,
#b-kokoroiki .content_cat_label,
#b-kokoroiki .content_cat_label,
#b-kokoroiki .content_cat_label
{
	text-shadow: 0 1px 1px rgba(0,0,0,.4), 2px 2px 10px rgba(0,0,0,.4), -2px -2px 10px rgba(0,0,0,.4);
}

@media screen and (max-width: 767px) { /**** tablet未満 ****/

	#header_visual {
		height: 160px;
		background-size: cover;
	}
	.content_cat_label {
		align-items: center;
		font-size: 2.0rem;
	}
	.content_cat_label .en{
		font-size: 1.8rem;
		letter-spacing: 0.1em;
	}

	#b-company #header_visual {
		background-position:70% 0;
	}
	#b-achievement #header_visual {
		background-position:100% 0;
	}

	.b-architecturalfinish .content_cat_label,
	.b-works .content_cat_label,
	#b-recommend .content_cat_label
	{
		text-shadow: 0 1px 1px rgba(0,0,0,.4), 2px 2px 10px rgba(0,0,0,.4), -2px -2px 10px rgba(0,0,0,.4);
	}
}
@media screen and (max-width: 480px) { /** sp **/

	#b-repaint #header_visual{
		background-position:70% 0;
	}

}

/****************************************************************************
.content_cat_menu
****************************************************************************/

@media screen and (min-width: 1024px) { /******** PC以上 ********/

	li.gnav_item .content_cat_menu{
		position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
		height: 0;
		visibility: hidden;
		opacity: 0;
		z-index: -1;
		transition: all 0.3s ease-out;
	}
	li.gnav_item:hover .content_cat_menu{
		height: auto;
		visibility: visible;
		opacity: 1;
		z-index: 500;
	}
    
}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	li.gnav_item .content_cat_menu{
		display: none;
	}

}

.content_cat_menu{
    position: relative;
}

.cmenu2 {
	width: 100%;
	background-color: rgba(236,232,218,0.95);
}
.cmenu3 {
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    visibility: hidden;
    opacity: 0;
    z-index: -1;
	background-color: rgba(247,245,240,0.95);
}
#header_visual + .content_cat .cmenu3 {
	top: 100%;
}
#content + .content_cat .cmenu3 {
	bottom: 100%;
}
.b-process .content_cat .cmenu3.cmenu3_process,
.b-price .content_cat .cmenu3.cmenu3_price,
.b-achievement .content_cat .cmenu3.cmenu3_achievement,
.cmenu3.cmenu3_works{
    height: auto;
    visibility: visible;
    opacity: 1;
    z-index: 400;
}
.cmenu3.cmenu3_works{
    position: relative;
}

@media screen and (min-width: 1024px) { /******** PC以上 ********/

    .cmenu3 {
        transition: all 0.3s ease-out;
    }
	.content_cat_menu_repaint .cmenu2_list_item:nth-child(3):hover .cmenu3_process,
    .content_cat_menu_repaint .cmenu2_list_item:nth-child(4):hover .cmenu3_price{
		height: auto;
		visibility: visible;
		opacity: 1;
		z-index: 410;
	}
    
}
@media screen and (min-width: 768px) { /****** tablet以上 ******/

    .b-process #header_visual + .content_cat,
    .b-price #header_visual + .content_cat,
    .b-achievement #header_visual + .content_cat{
        margin-bottom: 46px;
    }
    .b-process #content + .content_cat,
    .b-price #content + .content_cat,
    .b-achievement #content + .content_cat{
        margin-top: 46px;
    }

}
@media screen and (max-width: 767px) { /**** tablet未満 ****/

    .b-process #content + .content_cat,
    .b-price #content + .content_cat,
    .b-achievement #content + .content_cat{
        margin-top: 130px;
    }

}

.cmenu2_list,
.cmenu3_list{
	width: 100%;
	max-width: 1120px;
	height: 66px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}
.cmenu3_list{
	height: 46px;
}
@media screen and (min-width: 768px) { /****** tablet以上 ******/
	.cmenu2_list.cmenu2_list_architecturalfinish{
		height: 136px;
	}
	.cmenu2_list.cmenu2_list_recommend{
		height: 116px;
	}
}

.cmenu2_list_item,
.cmenu3_list_item{
	flex-grow:1;
}
.cmenu2_list_architecturalfinish .cmenu2_list_item{
	width: 12.5%;
}
.cmenu2_list_recommend .cmenu2_list_item{
	width: 14.28%;
}

.cmenu2_list_item a,
.cmenu3_list_item a{
	width: 100%;
	height: 100%;
	padding: 0 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all 0.2s;
}
.cmenu2_list_architecturalfinish .cmenu2_list_item a{
	flex-direction: column;
	justify-content: flex-start;
	padding-top: 2.25em;
}
.cmenu2_list_architecturalfinish .cmenu2_list_item a img{
	padding-bottom: 0.5em;
}

.cmenu2_list_recommend .cmenu2_list_item_img{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 96%;
	height: 56px;
	padding: 8px 5px;
	background-color: #fff;
}
.cmenu2_list_recommend .cmenu2_list_item_img img{
	max-height: 100%;
}

/**** works ****/
@media screen and (min-width: 768px) { /****** tablet以上 ******/
	.cmenu2_list.cmenu2_list_works{
		flex-wrap: wrap;
		justify-content: flex-start;
		height: auto;
		padding: 1em 0;
	}
	.cmenu2_list_works .cmenu2_list_item{
		width: 20%;
		flex-grow:0;
	}
	.cmenu2_list_works .cmenu2_list_item a{
		padding: 0.6em 0.5em 0.6em 1.7em;
		justify-content: flex-start;
		position: relative;
	}
	.cmenu2_list_works .cmenu2_list_item a:hover{
		border-bottom: none;
	}

	.cmenu2_list_works .cmenu2_list_item a::before{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 6px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 6px;
		height: 6px;
		border-top: 4px solid #A2CA0F;
		border-right: 4px solid #A2CA0F;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/
	.cmenu2_list{
		height: 46px;
	}
	.cmenu3_list{
		height: 36px;
	}
	.cmenu2_list_item a{
		font-size: 1.2rem;
	}
	.cmenu3_list_item a{
		font-size: 1.0rem;
	}
}
@media screen and (min-width: 1024px) { /******** PC以上 ********/
	.cmenu2_list_item a:hover{
		border-bottom: solid 4px #A2CA0F;
		background: rgba(255,255,255,0.60);
	}
	.cmenu3_list_item a:hover{
		border-bottom: solid 2px #A2CA0F;
		background: rgba(255,255,255,0.60);
	}
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	.cmenu2_list,
	.cmenu3_list{
		height: auto;
		flex-wrap: wrap;
		border-left: solid 1px #fff;
		border-top: solid 1px #fff;
	}
	.cmenu2_list_item,
	.cmenu3_list_item{
		width: 50%;
		border-right: solid 1px #fff;
		border-bottom: solid 1px #fff;
	}
	.cmenu2_list_architecturalfinish .cmenu2_list_item{
		width: 25%;
	}
	.cmenu2_list_recommend .cmenu2_list_item{
		width: 25%;
	}
	.cmenu2_list_item a{
		padding: 1.2em 0.2em;
	}
	.cmenu2_list_architecturalfinish .cmenu2_list_item a{
		padding: 1em 0.2em 0.5em;
		min-width: 60px;
	}
	.cmenu2_list_architecturalfinish .cmenu2_list_item a img{
		width: 60px;
		height: auto;
	}
	.cmenu2_list_recommend .cmenu2_list_item_img{
		width: 96%;
		height: 36px;
		padding: 6px 3px;
	}
	.cmenu3_list_item a{
		padding: 1.2em 0;
		font-size: 1.2rem;
	}
}


#b-repaint .content_cat .content_cat_menu .cmenu2_list_item:nth-child(1) a,
#b-repainting .content_cat .content_cat_menu .cmenu2_list_item:nth-child(2) a,
.b-process .content_cat .content_cat_menu .cmenu2_list_item:nth-child(3) > a,
.b-price .content_cat .content_cat_menu .cmenu2_list_item:nth-child(4) > a,
#b-flow .content_cat .content_cat_menu .cmenu2_list_item:nth-child(5) a,
#b-faq .content_cat .content_cat_menu .cmenu2_list_item:nth-child(6) a,

#b-architecturalfinish .content_cat .content_cat_menu .cmenu2_list_item:nth-child(1) a,
#b-wood .content_cat .content_cat_menu .cmenu2_list_item:nth-child(2) a,
#b-paint .content_cat .content_cat_menu .cmenu2_list_item:nth-child(3) a,
#b-natural-paint .content_cat .content_cat_menu .cmenu2_list_item:nth-child(4) a,
#b-care-for-wood .content_cat .content_cat_menu .cmenu2_list_item:nth-child(5) a,
#b-tile .content_cat .content_cat_menu .cmenu2_list_item:nth-child(6) a,
#b-drywall .content_cat .content_cat_menu .cmenu2_list_item:nth-child(7) a,
#b-interiorpaint .content_cat .content_cat_menu .cmenu2_list_item:nth-child(8) a,

#b-recommend .content_cat .content_cat_menu .cmenu2_list_item:nth-child(2) a,
#b-r04nano .content_cat .content_cat_menu .cmenu2_list_item:nth-child(3) a,
#b-r05osmo .content_cat .content_cat_menu .cmenu2_list_item:nth-child(4) a,
#b-r06farrow .content_cat .content_cat_menu .cmenu2_list_item:nth-child(5) a,
#b-r08uvclear .content_cat .content_cat_menu .cmenu2_list_item:nth-child(6) a,
#b-r09auton .content_cat .content_cat_menu .cmenu2_list_item:nth-child(7) a,

#b-company .content_cat .content_cat_menu .cmenu2_list_item:nth-child(1) a,
#b-craftsman .content_cat .content_cat_menu .cmenu2_list_item:nth-child(2) a,
#b-kokoroiki .content_cat .content_cat_menu .cmenu2_list_item:nth-child(3) a,
#b-companyinfo .content_cat .content_cat_menu .cmenu2_list_item:nth-child(4) a,
#b-csr .content_cat .content_cat_menu .cmenu2_list_item:nth-child(5) a,
.b-achievement .content_cat .content_cat_menu .cmenu2_list_item:nth-child(7) > a,

#b-about .content_cat .content_cat_menu .cmenu2_list_item:nth-child(1) a,
#b-copyright .content_cat .content_cat_menu .cmenu2_list_item:nth-child(2) a
{
	border-bottom: solid 4px #A2CA0F;
}

#b-foundation .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(1) a,
#b-process .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(2) a,
#b-paintproduct .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(3) a,
#b-siding .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(4) a,
#b-colonial .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(5) a,
#b-ironroof .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(6) a,
#b-thermalbarrier .content_cat .content_cat_menu .cmenu3_process .cmenu3_list_item:nth-child(7) a,

#b-price .content_cat .content_cat_menu .cmenu3_price .cmenu3_list_item:nth-child(1) a,
#b-price03 .content_cat .content_cat_menu .cmenu3_price .cmenu3_list_item:nth-child(2) a,
#b-price04 .content_cat .content_cat_menu .cmenu3_price .cmenu3_list_item:nth-child(3) a,
#b-loan .content_cat .content_cat_menu .cmenu3_price .cmenu3_list_item:nth-child(5) a,

#b-achievement .content_cat .content_cat_menu .cmenu3_achievement .cmenu3_list_item:nth-child(1) a,
#b-house .content_cat .content_cat_menu .cmenu3_achievement .cmenu3_list_item:nth-child(2) a
{
	border-bottom: solid 2px #A2CA0F;
}


/****************************************************************************
#breadcrumbs
****************************************************************************/

#breadcrumbs{
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
	color: #666;
}
.b-diary #breadcrumbs,
.b-news #breadcrumbs{
	max-width: 1000px;
}

#breadcrumbs a,
.breadcrumb_last{
	display: inline-block;
	padding: 5px;
	color: #666;
}

@media screen and (min-width: 768px) { /****** tablet以上 ******/

	#breadcrumbs{
		padding: 1.5em 0 0;
		font-size: 1.3rem;
	}
	#breadcrumbs a,
	.breadcrumb_last{
		background-color: rgba(162,202,15,0);
		transition: all 0.5s ease-out;
	}
	#breadcrumbs a:hover{
		background-color: rgba(162,202,15,0.25);
	}

}
@media screen and (max-width: 767px) { /**** tablet未満 ****/

	#breadcrumbs{
		padding: 0.5em;
		font-size: 1.2rem;
	}

}



/****************************************************************************
#main #content の中身
****************************************************************************/


#content{
	padding-bottom: 80px;
	line-height: 1.6;
}
#b-home #content{
	padding-bottom: 0;
}

/* .content_header ********************/

.content_header{
	margin: 0 auto;
	padding: 60px 0;
	max-width: 1000px;
	width: 90%;
}
.content_header.content_header_repaint{
	max-width: 900px;
}
#b-craftsman .content_header.content_header_repaint{
	max-width: 1000px;
}
.content_header.content_header_recommend{
	max-width: 940px;
	padding-bottom: 24px;
}
.content_header.content_header_architecturalfinish,
.content_header.content_header_works{
	padding-bottom: 16px;
}
.content_header.content_header_voice{
	padding: 16px 0;
}
.content_header.content_header_index,
.content_header.content_header_channel{
	padding-bottom: 24px;
}

.content_header_cat{
	font-size:1.6rem;
	letter-spacing: 0.05em;
}
.content_header_label{
	font-size:3.2rem;
	line-height: 1.4;
	letter-spacing: 0.05em;
}
.content_header_copy{
	padding-top: 20px;
	padding-left: 2px;
	padding-right: 20px;
	line-height: 2;
}
#b-craftsman .content_header_copy{
	padding-bottom: 30px;
}

.content_header_channel .content_header_cat{
	padding-bottom: 0.2em;
	font-size:1.8rem;
	letter-spacing: 0.05em;
}

.content_header_recommend .content_header_label{
	text-align: center;
}
.content_header_label_text{
	display: inline-block;
	font-size:3.4rem;
	font-weight: lighter;
	color: #888;
	letter-spacing: 0;
	padding-bottom: 0.1em;
	margin-bottom: 0.8em;
	border-bottom: double 6px #ccc;
}
.contents_listitem .content_header_label_text{
	font-size:2.0rem;
	color: #666;
	border-bottom: double 5px #ccc;
}

.contents_listitem .content_header_label_logo{
	display: flex;
	width: 100%;
	height: 70px;
	padding: 5px 10px;
	justify-content: center;
	align-items: center;
	background-color: #fff;
}
.contents_listitem .content_header_label_logo img{
	max-height: 60px;
}


@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	.content_header_label{
		font-size:2.2rem;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}
	.content_header_copy{
		padding-top: 10px;
		padding-left: 10px;
		padding-right: 10px;
		line-height: 1.8;
	}

	.content_header_label_text{
		font-size:2.4rem;
		border-bottom: double 4px #ccc;
	}
	.contents_listitem .content_header_label_text{
		font-size:1.6rem;
	}

}
@media screen and (min-width: 768px) { /****** tablet以上 ******/

	.content_header.content_header_repaint,
	.content_header.content_header_recommend{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: center;
	}
	.content_header.content_header_repaint .content_header_img{
		width: 50%;
		max-width: 450px;
	}
	.content_header.content_header_repaint .content_header_text{
		width: 50%;
	}
	#b-craftsman .content_header.content_header_repaint .content_header_img{
		width: 60%;
		max-width: 590px;
	}
	#b-craftsman .content_header.content_header_repaint .content_header_text{
		width: 40%;
	}
	.content_header.content_header_recommend .content_header_img{
		width: 48%;
		max-width: 450px;
	}
	.content_header.content_header_recommend .content_header_text{
		width: 48%;
		max-width: 450px;
	}
	.content_header.content_header_recommend .content_header_label_logo{
		max-width: 400px;
		max-height: 116px;
	}
	#b-r09auton .content_header.content_header_recommend .content_header_label_logo{
		max-width: 100%;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満 ****/

	.content_header{
		padding: 40px 0 40px;
	}
	.content_header.content_header_repaint .content_header_img,
	.content_header.content_header_recommend .content_header_img{
		padding-bottom: 20px;
	}
	.content_header.content_header_repaint .content_header_label{
		text-align: center;
	}

	.content_header.content_header_recommend .content_header_label_logo{
		max-width: 86%;
		max-height: 70px;
	}

	.content_header_cat{
		font-size:1.4rem;
		letter-spacing: 0;
	}
	.content_header_works .content_header_label{
		font-size:2.0rem;
		letter-spacing: 0;
	}

	.content_header.content_header_channel{
		padding-bottom: 16px;
	}
	.content_header_channel .content_header_cat{
		font-size:1.4rem;
	}

	.contents_listitem .content_header_label_text{
		font-size:1.1rem;
	}
	.contents_listitem .content_header_label_logo{
		height: 40px;
		padding: 5px;
	}
	.contents_listitem .content_header_label_logo img{
		max-height: 30px;
	}

}

/* indexページのリスト.contents_list の .content_header ********************/

.contents_list{
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
}

.contents_listitem a{
	display: block;
	width: 100%;
	height: 100%;
	background-color: #F7F5F0;
}
.contents_listitem .content_header_label{
	padding-top: 1em;
	text-align: center;
	font-size:2.0rem;
	letter-spacing: 0;
}
.contents_listitem .content_header_copy{
	padding-top: 1.25em;
	padding-left: 0;
	padding-right: 0;
	line-height: 1.5;
}
.contents_listitem .content_header_copy br.pc{
	display: none;
}

.contents_list_label{
	padding: 1.5em 0 0.5em;
	font-weight: bold;
}

@media print, screen and (min-width: 768px) { /****** tablet以上 ******/

	.contents_list{
		margin-left: -10px;
		margin-right: -10px;
	}
	.contents_listitem{
		width: calc(33.33% - 20px);
		margin: 10px;
	}

	.contents_listitem a{
		padding: 25px;
		filter: drop-shadow(0 3px 4px rgba(0,0,0,0));
		transition: all 0.5s ease-out;
	}
	.contents_listitem a:hover{
		background-color: #fff;
		filter: drop-shadow(0 3px 4px rgba(0,0,0,0.4));
	}

	.contents_list_label{
		font-size: 2.4rem;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.contents_list{
		margin-left: -2.67vw;
		margin-right: -2.67vw;
	}

	.contents_listitem{
		width: calc(50% - 4px);
		margin: 2px;
	}

	.contents_listitem a{
		padding: 1em;
	}

	.contents_listitem .content_header_label{
		font-size:4vw;
	}
	.contents_listitem .content_header_copy{
		font-size: 3.2vw;
		line-height: 1.4;
	}

}


/* .contents-menu ********************/

.contents-menu{
	margin: 0 auto;
	padding: 60px 0 60px;
	max-width: 1000px;
	width: 90%;
}
.content_header + .contents-menu{
	padding-top: 0;
}
.content_header.content_header_company + .contents-menu{
	margin-top: -44px;
}

.contents-menu_list{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 0.8em 0 0.8em 1.5em;
	border-top: solid 1px rgba(162,202,15,0.50);
	background-color: #f9f9f9;
	background-image: -webkit-linear-gradient(bottom left, #f9f9f9, #f9f9f9 45%, #E5EDC6 46%, #E5EDC6 50%, #f9f9f9 51%, #f9f9f9 95%, #E5EDC6 96%, #E5EDC6 100%);
	background-image: -o-linear-gradient(bottom left, #f9f9f9, #f9f9f9 45%, #E5EDC6 46%, #E5EDC6 50%, #f9f9f9 51%, #f9f9f9 95%, #E5EDC6 96%, #E5EDC6 100%);
	background-image: linear-gradient(to top right, #f9f9f9, #f9f9f9 45%, #E5EDC6 46%, #E5EDC6 50%, #f9f9f9 51%, #f9f9f9 95%, #E5EDC6 96%, #E5EDC6 100%);
	background-size: 4px 4px;

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.content_header.content_header_company + .contents-menu{
		margin-top: -24px;
	}
	.contents-menu_list{
		padding: 0.8em 0 0.8em 0.8em;
	}

}
.list_column{
	flex-direction: column;
}
.contents-menu_list li{
	padding-right: 1.5em;
}
.contents-menu_list li a{
	display: inline-block;
	padding: 0.2em 0.5em;
}
.contents-menu_list li a .step_num,
.contents-menu_list li a .part_num{
	display: inline-block;
	padding-right: 1em;
	color: #A2CA0F;
	font-weight: bold;
	font-family: 'Trebuchet MS';
}
.contents-menu_list li a .label_xs{
	margin-right: 0.5em;
	font-family: 'Trebuchet MS';
}

@media screen and (min-width: 1024px) { /******** PC以上 ********/
	
	.contents-menu_list li a{
		transition: all 0.5s ease-out;
	}
	.contents-menu_list li a:hover{
		background-color: rgba(162,202,15,0.25);
	}

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.contents-menu_list li{
		padding-right: 0.8em;
	}

}

/* コンテンツのタイトル */

.shome_title{
	padding: 48px 0 32px;
	text-align: center;
	font-size: 1.5rem;
	color: #231815;
	letter-spacing: 0.08em;
}
.shome_title .en{
	display: block;
	padding-bottom: 0;
	text-align: center;
	font-size: 3.0rem;
	letter-spacing: 0.08em;
	color:#f4a400;
}

.shome_title_s{
	padding: 28px 0 18px;
	text-align: center;
	font-size: 1.5rem;
	color: #231815;
}
.shome_title_s .en{
	display: inline-block;
	padding-right: 14px;
	font-size: 2.0rem;
	letter-spacing: 0.08em;
	color:#f4a400;
}


.shome_title_ora2 .en{
	color:#fb9700;
}
.shome_title_ora3 .en{
	color:#f97000;
}
.shome_title_gre .en{
	color:#a2ca0f;
}
.shome_title_gray .en{
	color:#717071;
}
.shome_title_wht,
.shome_title_wht .en{
	color:#fff;
}


/* section.section ********************/

.section{
}
.section_bg_ora{
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: rgba(251,151,0,0.80);
}
.section_bg_gre{
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: rgba(162,202,15,0.80);
}
.section_bg_gray{
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: #F3F3F3;
}

.section + .section{
	margin-top:80px;
}

.section_inner{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}

.c5 + .c5{
	margin-top: 80px;
}
.label_c5{
	padding-bottom: 40px;
	font-size: 2.6rem;
}
.label_c5_num,
.step_num,
.part_num{
	display: inline-block;
	padding-right: 0.6em;
	color:#A2CA0F;
	font-weight: bold;
	font-family: 'Trebuchet MS';
	vertical-align: baseline;
}
.label_c5_num,
.label_c5 .step_num,
.label_c5 .part_num{
	font-size: 3.6rem;
}
.label_c5 .label_beforeafter{
	display: inline-block;
	padding: 0 0.8em;
	margin-right: 0.6em;
	font-size: 2.0rem;
	letter-spacing: 0.1em;
	color:#fff;
	font-weight: bold;
	font-family: 'Trebuchet MS';
	vertical-align: middle;
	background-color: #A2CA0F;
	border-radius: 0.5em;
}

.label_c5_sankou,
.label_c5_kokoroiki,
.label_c5_point{
	display: inline-block;
	width: 184px;
	height: 70px;
	padding-left: 40px;
	padding-top: 30px;
	margin-right: 16px;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.12em;
	background: url("../../img/common/bg_label_sankou@1.5x.png") 0 0 no-repeat;
	background-size: contain;
	vertical-align: baseline;
}
.label_c5_kokoroiki{
	width: 284px;
	height: 56px;
	padding-top: 15px;
	background-image: url("../../img/common/bg_label_kokoroiki@1.5x.png");
}
.label_c5_point{
	height: 56px;
	padding-top: 15px;
	font-size: 2.0rem;
	letter-spacing: 0.25em;
	font-family: 'Trebuchet MS';
	background-image: url("../../img/common/bg_label_point@1.5x.png");
}

.section_body + .section_body,
.c6 + .c6{
	padding-top:40px;
}
.c5,
.section_body{
	line-height: 1.75;
}

.sbody_text + .sbody_text{
	padding-top:15px;
}
.c5 p + p,
.section_body p + p{
	padding-top:15px;
}

.section_body p a,
.section_body li a,
.c5 p a,
.c5 li a{
	text-decoration: underline;
	text-decoration-color: #bbb;
	transition: all 0.3s;
}
.section_body p a:hover,
.section_body li a:hover,
.c5 p a:hover,
.c5 li a:hover{
	color: #09f;
	text-decoration-color: #09f;
}

.c6 h6,
.c6 h4,
.c6 h3{
	padding-bottom: 20px;
	padding-left: 2.5em;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	position: relative;
}
.c6 h6::before,
.c6 h4::before,
.c6 h3::before{
	position: absolute;
	top: 0.7em;
	left: 0;
	display: block;
	width: 2em;
	height: 1px;
	background-color: #A2CA0F;
	content: "";
}

.label_uline{
	padding-bottom: 0;
	margin-bottom: 1em;
	font-size: 2.6rem;
	border-bottom: solid 1px #E2DAC2;
}
.label_uline .label_s{
	vertical-align: middle;
	margin-right: 1em;
}



@media screen and (min-width: 1024px) { /******** PC以上 ********/

	.section_body,
	.c5{
		font-size: 1.6rem;
	}
	.section_body_narrow{
		width: 90%;
		margin: 0 auto;
	}

}
@media print, screen and (max-width: 1023px) { /******** tablet以下 ********/ 

	.label_c5{
		font-size: 2.2rem;
	}
	.label_uline{
		font-size: 2.2rem;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満 ****/

	.section_bg_ora,
	.section_bg_gre{
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.section + .section{
		margin-top:40px;
	}

	.c5 + .c5{
		margin-top: 40px;
	}
	.label_c5{
		padding-bottom: 20px;
		font-size: 1.8rem;
	}
	.label_c5_num,
	.label_c5 .step_num,
	.label_c5 .part_num{
		font-size: 2.4rem;
	}
	.label_c5 .label_beforeafter{
		padding: 0 0.4em;
		font-size: 1.2rem;
		letter-spacing: 0.05em;
	}
	.label_c5_sankou,
	.label_c5_kokoroiki,
	.label_c5_point{
		display: block;
		width: 137px;
		height: 53px;
		padding-left: 34px;
		padding-top: 21px;
		margin-right: 8px;
		font-size: 1.4rem;
		letter-spacing: 0.05em;
	}
	.label_c5_point{
		height: 42px;
		padding-top: 12px;
		letter-spacing: 0.25em;
	}
	.label_c5_kokoroiki{
		width: 210px;
		height: 42px;
		padding-left: 30px;
		padding-top: 11px;
	}

	.section_body + .section_body,
	.c6 + .c6{
		padding-top:20px;
	}
	.c6 h6,
	.c6 h3{
		padding-bottom: 12px;
		padding-left: 1.0em;
		font-size: 1.5rem;
	}
	.c6 h6::before,
	.c6 h3::before{
		left: -0.5em;
		top: 0.6em;
		width: 1em;
		height: 2px;
	}

	.label_uline{
		font-size: 1.8rem;
	}

	.label_color{
		text-align: left;
	}

}



/* .sbody_2clm ********************/

.sbody_2clm{
	display: flex;
	justify-content:space-between;
	align-items: stretch;
}
.sbody_2clm.sbody_sp_floatr{/* SPで画像 float:right; のとき */
	flex-direction: row-reverse;
}
.sbody_2clm .sbody_text{
	width: 47%;
}
.sbody_2clm .sbody_img{
	width: calc(50% - 10px);
}
.sbody_2clm .sbody_text + .sbody_text{
	padding-top: 0;
}

@media print, screen and (min-width: 768px) { /****** tablet以上 ******/
	.sbody_2clm .sbody_img.box_gray{
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) { /**** tablet未満 ****/

	.sbody_sp_1clm{
		display: flex;
		flex-direction:column;
		justify-content:center;
		align-items: center;
	}
	.sbody_sp_1clm .sbody_img,
	.sbody_sp_1clm .sbody_text{
		width: 100%;
		padding-bottom: 10px;
	}

	.sbody_sp_floatr:before,
	.sbody_sp_floatr:after,
	.sbody_sp_floatl:before,
	.sbody_sp_floatl:after{
		content:"\0020";
		display:block;
		height:0;
		overflow:hidden;
	}
	.sbody_sp_floatr:after,
	.sbody_sp_floatl:after{
		clear:both;
	}
	.sbody_sp_floatr,
	.sbody_sp_floatl{
		zoom:1;
		display: block;/* .sbody_2clm の flex 上書き */
	}
	.sbody_sp_floatr .sbody_img{
		width: 58%;
		float: right;
		padding-left: 5%;
		padding-bottom: 10px;
	}
	.sbody_sp_floatr .sbody_text{
		display: inline;
	}
	.sbody_sp_floatl .sbody_img{
		width: 58%;
		float: left;
		padding-right: 5%;
		padding-bottom: 10px;
	}
	.sbody_sp_floatl .sbody_text{
		display: inline;
	}

}

/********* 旧サイトの指定 ************/

/*float*/
.f-left{float:left;}
.f-right{float:right;}
.f-clear{clear:both;}

img.f-left{padding:0 15px 8px 0;}
img.f-right{padding:0 0 5px 18px;}


.box-both{
	padding-bottom:15px;
}
.box-both .box-f-left,
.box-both .box-f-right{
	padding:0;
}

/********* 旧サイトの指定　ここまで ************/

.box_img_row{
	display: flex;
	justify-content:center;
	align-items: stretch;
	margin:2em -10px;
}
.box_img_item{
	padding: 10px;
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	.box_img_sp_column{
		display: flex;
		flex-direction: column;
		justify-content:center;
		align-items: center;
		margin:1.5em 0;
	}
	.box_img_item{
		padding: 5px;
	}
}

.fig_center,
.img_center,
.box-ta-center{
	text-align:center;
	margin-top:20px;
	margin-bottom:20px;
}
@media screen and (min-width: 1024px) { /******** PC以上 ********/
	.fig_center img,
	.img_center img,
	.box-ta-center img{
		max-width:900px;
		margin-left: auto;
		margin-right: auto;
	}
}

.fig_right,
.img_right,
.box-f-right{
	display:inline-block;
	width:45%;
	max-width:400px;
	margin-left:5%;
	margin-bottom:20px;
	float:right;
}
.fig_left,
.img_left,
.box-f-left{
	display:inline-block;
	width:45%;
	max-width:400px;
	margin-right:5%;
	margin-bottom:20px;
	float:left;
}

.fig_right.img_s,
.img_right.img_s,
.box-f-right.img_s,
.fig_left.img_s,
.img_left.img_s,
.box-f-left.img_s {
	max-width:350px;
}

.fig_right.img_xs,
.img_right.img_xs,
.box-f-right.img_xs,
.fig_left.img_xs,
.img_left.img_xs,
.box-f-left.img_xs {
	max-width:260px;
}

.fig_right.img_tate,
.img_right.img_tate,
.fig_left.img_tate,
.img_left.img_tate{
	width:37%;
}

.fig_bg_wht{
	padding: 10px 20px;
	background-color: #fff;
}

@media screen and (max-width: 767px) { /**** tablet未満 ****/

	.fig_right,
	.fig_left,
	.fig_right.img_tate,
	.fig_left.img_tate{
	width: 100%;
	box-sizing: border-box;
	float: none;
	text-align:center;
	margin-left: auto;
	margin-right: auto;
	}

	.fig_bg_wht{
		padding: 10px 5vw;
	}

}
@media screen and (max-width: 479px) { /* sp */
	.img_right,
	.img_left,
	.box-f-right,
	.box-f-left{
		width:57%;
	}
	.img_right.img_s,
	.box-f-right.img_s,
	.img_left.img_s,
	.box-f-left.img_s,
	.img_right.img_xs,
	.box-f-right.img_xs,
	.img_left.img_xs,
	.box-f-left.img_xs {
		width:45%;
	}
	.img_right.img_tate,
	.img_left.img_tate{
		width:45%;
	}

}

.fig_center img + img,
.img_center img + img,
.fig_right img + img,
.img_right img + img,
.box-f-right img + img,
.fig_left img + img,
.img_left img + img,
.box-f-left img + img,
.fig_right br + img,
.img_right br + img,
.box-f-right br + img,
.fig_left br + img,
.img_left br + img,
.box-f-left br + img{
	margin-top:5px;
}

.fig_center a + a,
.img_center a + a,
.fig_right a + a,
.img_right a + a,
.box-f-right a + a,
.fig_left a + a,
.img_left a + a,
.box-f-left a + a{
	display:inline-block;
	margin-top:5px;
}


.caption,
.img_caption{
	padding-top:6px;
	text-align:center;
	font-size: 1.4rem;
}
.img_caption_left{
	padding:6px 4px 0;
	text-align:left;
	font-size: 1.4rem;
}
.img_caption_right{
	padding-top:6px;
	text-align:right;
	font-size: 1.4rem;
}
.caption + img,
.img_caption + img,
.img_caption_left + img,
.img_caption_right + img{
	padding-top:8px;
}

@media screen and (max-width: 1023px) { /******** tablet以下 ********/
	.caption,
	.img_caption,
	.img_caption_left,
	.img_caption_right{
		font-size: 1.2rem;
	}
}


.ta-right{
	text-align:right;
}
.ta-center{
	text-align:center;
}


.box_line,
.box-dotline{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	border: solid 1px rgba(154,121,81,0.3);
}
.box_line.box_line_gre{
	border: solid 1px rgba(182,209,79,0.90);
	background-color: #fff;
}
.box_line.box_line_ora{
	border: solid 2px rgba(247,180,79,0.80);
}
.box_doubleline{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	border: double 4px rgba(154,121,81,0.2);
}
.box_gray,
.note{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	background-color: rgba(236,231,215,0.40);
}
.note-wht{
	background-color: #FFFFFF;
}
.box-gray{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	background-color: #EEEEEE;
}
.box-pink{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	background-color: #F9EAE6;
}
.box_lightora{
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 30px 40px;
	background-color: #FFF5E6;
}
.box_line .label,
.box-dotline .label,
.box_doubleline .label,
.box_gray .label,
.box-gray .label,
.box_lightora .label,
.note .label{
	margin: -30px 0 20px -40px;
}
.label_xs,
.label_s,
.label_m,
.label_l{
	display: inline-block;
	width: auto;
	height: auto;
	min-width: 3em;
	line-height: 1;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.05em;
	background-color: rgba(162,202,15,1.00);
}
.label_xs{
	padding: 0.2em 0.4em;
	font-size: 1.2rem;
}
.label_s{
	padding: 0.6em 1.0em 0.5em;
	font-size: 1.4rem;
}
.label_m{
	padding: 0.6em 2.5em 0.5em;
	font-size: 1.6rem;
}
.label_l{
	padding: 0.6em 2.5em 0.5em;
	font-size: 2.0rem;
}
.label_ora{
	background-color: #FB9700;
}
.label_blue{
	background-color: #29A6CC;
}

.label_outside{
	margin-top: 20px;
}
.label_outside .label_m{
	height: 34px;
}
.label_outside + .note{
	margin-top: -34px;
	padding-top: 50px !important;
}

.label_point{
	margin: -12px 0 10px -15px;
}
.label_point_text{
	font-weight: bold;
}

@media screen and (max-width: 1023px) { /******** tablet以下 ********/
	
	.box_line,
	.box-dotline,
	.box_doubleline,
	.box_gray,
	.box-gray,
	.box_lightora,
	.note{
		padding: 20px 3vw;
	}
	.box_line .label,
	.box-dotline .label,
	.box_doubleline .label,
	.box_gray .label,
	.box-gray .label,
	.box_lightora .label,
	.note .label{
		margin: -20px 0 15px -3vw;
	}
	.label_xs{
		font-size: 1.0rem;
	}
	.label_s{
		font-size: 1.2rem;
	}
	.label_m{
		font-size: 1.4rem;
	}
	.label_l{
		padding: 0.6em 1.5em 0.5em;
		font-size: 1.6rem;
	}

	.label_outside .label_m{
		height: 28px;
	}
	.label_outside + .note{
		margin-top: -28px;
		padding-top: 44px !important;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.box_line,
	.box-dotline,
	.box_doubleline,
	.box_gray,
	.box-gray,
	.box_lightora,
	.note{
		padding: 20px 2vw;
	}
	.box_line .label,
	.box-dotline .label,
	.box_doubleline .label,
	.box_gray .label,
	.box-gray .label,
	.box_lightora .label,
	.note .label{
		margin: -20px 0 15px -2vw;
	}
	.label_point{
		margin: -10px 0 10px 0;
	}

}


.box_4_2x2{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: nowrap;
}
.box_4_2x2 li{
	width: calc(25% - 20px);
	margin: 10px;

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/
	.box_4_2x2{
		flex-wrap: wrap;
	}
	.box_4_2x2 li{
		width: calc(50% - 10px);
		margin: 5px;
	}
}

/* 　動画貼り付け　 */


.movie_center {
    position: relative;
	width: 100%;
	max-width: 800px;
    margin: 20px auto;
}
.movie_center:before {
    content: "";
    display: block;
    padding-top: 56.25%;
}
.movie_center object,
.movie_center iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* 　ボタン類　 */

.btn_center{
  display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.btn_left{
  display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.btn_right{
  display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}


.btn_s_wht{
	padding: 10px 0;
}
.btn_s_wht a{
  display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	height: auto;
	padding: 0.4em 1.2em 0.3em;
	font-size: 1.2rem;
	line-height: 1;
	color: #40210d;
	background-color:rgba(255,255,255,0.8);
	transition: background-color 0.3s;
}
@media screen and (min-width: 768px) { /* PC */
	.btn_s_wht a:hover{
		background-color:rgba(255,255,255,1);
	}
}


.btn_l_line{
	padding: 24px 0;
}
.btn_l_line a{
  display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	height: auto;
	padding: 1em 2em 0.8em;
	font-size: 1.4rem;
	line-height: 1;
	color: #221714;
	background-color:#FFFFFF;
	border: solid 1px #9a7951;
	transition: all 0.3s ease-in-out;
}

.btn_l_line a .en{
	display: inline-block;
	padding-right: 1em;
	font-size: 1.2rem;
	color: #907e74;
	transition: all 0.3s ease-in-out;
}
.btn_text:after{
  display: inline-block;
  content: '\003e';
	margin-left: 0.6em;
	font-size: 1.2rem;
	vertical-align:top;
}
.btn_l_line.bll_wht a{
	color: rgba(255,255,255,1);
	background-color:rgba(255,255,255,0);
	border: solid 1px rgba(255,255,255,0.80);
}
.btn_l_line.bll_wht a .en{
	color:rgba(140,140,140,1.00);
}


.news_btn .btn_l_line a{
	margin: 5px;
	width: 300px;
	padding: 0.6em 1.5em 0.4em;
}
.news_btn .btn_l_line a#blog_more{
	border: solid 1px #1b3470;
	background-color:#1B3470;
	color: #fff;
	line-height: 1.3;
}
.news_btn .btn_l_line a#news_more{
	border: solid 1px #FB9700;
	background-color:#FB9700;
	color: #fff;
	line-height: 1.3;
}
.news_btn .btn_l_line a .en{
	color: #fff;
}

#shome_kokoroiki_tokon_news .btn_l_line{
	padding: 0;
}
#shome_kokoroiki_tokon_news .btn_l_line a{
	font-size: 1.2rem;
	line-height: 1;
	color:#FB9700;
	border: solid 1px #fff;
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	#shome_kokoroiki_tokon_news .btn_l_line a{
		padding: 0.8em 0.5em 0.6em;
		font-size: 1rem;
	}
}

#shome_company_menu .btn_l_line.bll_wht a{
	background-color:rgba(0,0,0,0.20);
}


@media screen and (min-width: 768px) { /* PC */
	.btn_l_line a:hover{
		color: rgba(255,255,255,1);
		background-color:#9a7951;
	}
	.btn_l_line a:hover .en{
		color: rgba(255,255,255,06);
	}
	.btn_l_line.bll_wht a:hover,
	#shome_company_menu .btn_l_line.bll_wht a:hover{
		color: rgba(73,73,73,1.00);
		background-color:rgba(255,255,255,1);
		border: solid 1px rgba(255,255,255,1);
	}
	.btn_l_line.bll_wht a:hover .en{
		color:rgba(140,140,140,1.00);
	}

	.news_btn .btn_l_line a#blog_more:hover{
		background-color:#fff;
		color: #1b3470;
	}
	.news_btn .btn_l_line a#news_more:hover{
		background-color:#fff;
		color: #FB9700;
	}
	.news_btn .btn_l_line a#blog_more:hover .en{
		color: #1b3470;
	}
	.news_btn .btn_l_line a#news_more:hover .en{
		color: #FB9700;
	}

	#shome_kokoroiki_tokon_news .btn_l_line a:hover{
		background-color:#FB9700;
		color: #fff;
	}

}



.more{
  display: flex;
	justify-content: flex-end;
}
.more a{
  display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 150px;
	height: 44px;
	background-color:rgba(173,215,213,.1);
	transition: background-color 0.3s;
}
@media screen and (min-width: 768px) { /* PC */
	.more a:hover{
		background-color: rgba(173,215,213,.4);
	}
}

.btn_icn{
	display: inline-block;
	padding-bottom: 8px;
}
.btn_icn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1.8em;
	height: 1.8em;
	font-size: 1.8rem;
	line-height: 1;
	color: #A2CA0F;
	background-color:#FFFFFF;
	text-decoration: none !important;
	border: solid 1px #A2CA0F;
	border-radius: 2px;
	transition: all 0.3s ease-in-out;
}


.icn-san-ora a{
	display: block;
	width: 100%;
	height: auto;
	padding-left: 18px;
	position: relative;
	transition: all 0.3s ease-in-out;
}
.icn-san-ora a::before{
	position: absolute;
	top: 0.3em;
/*	bottom: 0;*/
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 0;
	height: 0;
	border-left: 7px solid #FB9700;
	border-bottom: 7px solid transparent;
	border-top: 7px solid transparent;
	transition: all 0.3s ease-in-out;
}


.box-linkmenu li{
	padding: 5px 0;
}
.box-linkmenu li a,
.box-linkmenu.icn-san-ora a{
	display: block;
	width: 100%;
	height: auto;
	padding: 0.6em 2em 0.6em 0.4em;
	position: relative;
	background-color:#fff;
	border: solid 2px #A2CA0F;
	color: #A2CA0F;
	font-weight: bold;
	text-align: center;
	text-decoration: none !important;
	line-height: 1.4;
	transition: all 0.3s ease-in-out;
}
.box-linkmenu li a::before,
.box-linkmenu.icn-san-ora a::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: auto;
	right: 1em;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-left: none;
	border-bottom: none;
	border-top: 4px solid #A2CA0F;
	border-right: 4px solid #A2CA0F;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: all 0.3s ease-in-out;
}
.box-linkmenu li a:hover{
	background-color:#A2CA0F;
	color: #fff;
	text-decoration: none !important;
}
.box-linkmenu li a:hover::before{
	border-top: 4px solid #fff;
	border-right: 4px solid #fff;
}


.btn_l_ora{
	display: inline-block;
	padding: 0 0.5em;
}
.btn_l_ora a{
	display: inline-block;
	width: auto;
	height: auto;
	padding: 0.5em 2em 0.5em 0.8em;
	position: relative;
	background-color:#fff;
	border: solid 2px #FB9700;
	color: #FB9700;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none !important;
	line-height: 1;
	transition: all 0.3s ease-in-out;
}
.btn_l_ora a::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: auto;
	right: 1em;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 5px;
	height: 5px;
	border-left: none;
	border-bottom: none;
	border-top: 3px solid #FB9700;
	border-right: 3px solid #FB9700;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: all 0.3s ease-in-out;
}
.btn_l_ora a:hover{
	background-color:#FB9700;
	color: #fff !important;
	text-decoration: none !important;
}
.btn_l_ora a:hover::before{
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}




/* 小見出し */

.caption-header{
	position: relative;
	padding:5px 0 5px 1.5em;
	font-size: 1.7rem;
	line-height: 1.5;
	font-weight: bold;
}
.caption-header::before{
	position: absolute;
	top: 5px;
	left: 5px;
	content: "\0025cf";
	font-size: 1.6rem;
	color: #A2CA0F;
}

p + .caption-header{
	margin-top: 10px;
}

@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.caption-header{
		font-size: 1.5rem;
	}
	.caption-header::before{
		top: 7px;
		left: 5px;
		font-size: 1.2rem;
	}

}


/* ul リスト */

.icn-maru-ora{
	padding:20px 0 15px;
}
.icn-maru-ora.note{
	padding:30px 40px 25px;
}
.icn-maru-ora li{
	position: relative;
	padding-left:20px;
	padding-bottom: 5px;
	line-height: 1.8;
}
.icn-maru-ora li::before{
	position: absolute;
	top: 5px;
	left: 5px;
	content: "\0025cf";
	font-size: 0.8rem;
	line-height: 1.4rem;
	color: rgba(251,151,0,1.00);
}

@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/
	.icn-maru-ora.note{
		padding: 15px 3vw 10px;
	}
}

.shimashima{
}
.shimashima.icn-maru-ora{
	padding:0;
}
.shimashima > li{
	padding:1.5em;
	background-color: rgba(236,231,215,0.40);
}
.shimashima.icn-maru-ora > li{
	padding-left:3em;
}
.shimashima.icn-maru-ora > li::before{
	top: 3.7em;
	left: 3em;
}
.shimashima > li:nth-child(2n){
	background-color: #fff;
}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/
	.shimashima > li{
		padding:1.5em 1em;
	}
	.shimashima.icn-maru-ora > li{
		padding-left:2em;
	}
	.shimashima.icn-maru-ora > li::before{
		top: 3.2em;
		left: 1.5em;
	}
}

.dotline{
	border-top:dotted 1px #ccc;
}
.dotline > li{
	padding-top:1.5em;
	padding-bottom:1.5em;
	border-bottom:dotted 1px #ccc;
}

.list_small > li{
	padding:0.5em 1em;
}


/* dl リスト */

dl.clear{
}

dl.clear dt{
	width:5em;
	font-weight:bold;
	float:left;
	clear:left;
}
dl.clear dd{
	margin-left:6em;
	padding-bottom:15px;
}

dl.clear.lh_s{
	padding-bottom:15px;
}
dl.clear.lh_s dd{
	padding-bottom:0;
}

dl.clear.underline{
	padding-bottom:0;
	margin-bottom:10px;
	border-bottom:solid 1px rgba(188,167,144,0.40);
}
dl.clear.underline dt,
dl.clear.underline dd{
	padding-top:15px;
	padding-bottom:15px;
	border-top:solid 1px rgba(188,167,144,0.40);
}
dl.clear.underline dt{
	width:6em;
}
dl.clear.underline dd{
}
dl.clear.underline dt.firstChild,
dl.clear.underline dd.firstChild{
	border-top:none;
}


.section_body dl p + p{
	margin-top:10px;
}


.list_ind,
.list_ind2{
	margin-bottom:10px;
}
.list_ind li,
.ind-10 li,
p.ind-10,
div.ind-10{
	padding-left:1em;
	text-indent:-1em;
	line-height: 1.75;
}
.list_ind2 li{
	padding-left:2em;
	text-indent:-2em;
	line-height: 1.75;
}
.list_ind li + li,
.list_ind2 li + li{
	margin-top:10px;
}
.list_ind li li,
.list_ind2 li li{
	margin-top:0;
}


.list_line{
	border-top:solid 1px rgba(188,167,144,0.40);
}
.list_line li{
	padding: 10px;
	border-bottom:solid 1px rgba(188,167,144,0.40);
}


/* table 表 */

table caption{
	position: relative;
	padding:5px 0 5px 1.5em;
	text-align: left;
	font-size: 1.7rem;
	line-height: 1.5;
	font-weight: bold;
}
table caption::before{
	position: absolute;
	top: 5px;
	left: 5px;
	content: "\0025cf";
	font-size: 1.6rem;
	color: #A2CA0F;
}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	table caption{
		font-size: 1.5rem;
	}
	table caption::before{
		top: 7px;
		left: 5px;
		font-size: 1.2rem;
	}

}

.table_gray{
	width: 100%;
}
.table_gray th{
	min-width:5em;
	padding:12px 10px;
	line-height:1.5;
	color: #fff;
	text-align: center;
	vertical-align: top;
	background-color:rgba(162,202,15,1.00);
	border-top: solid 1px #cecebf;
}
.table_gray td{
	padding:12px 10px;
	line-height:1.5;
	color: #000;
	text-align: left;
	background-color:rgba(236,231,215,0.40);
	border-top: solid 1px #cecebf;
}
.table_gray th + th,
.table_gray td + td{
	border-left: solid 1px #D5D5C4;
}
.table_gray tr:first-child th,
.table_gray tr:first-child td{
	border-top: none;
}

.table_va_middle th,
.table_va_middle td{
	vertical-align: middle !important;
}

td.td_ph{
	padding:0 !important;
}
#table_foundationlist td.td_ph{
	width: 120px;
}

@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.table_gray th{
		padding:6px 5px;
		font-size: 1.2rem;
	}
	.table_gray td{
		padding:6px 5px;
		font-size: 1.2rem;
	}

	#table_foundationlist td.td_ph{
		width: 0;
	}
	#table_foundationlist td.td_ph img{
		display: none;
	}
	#table_foundationlist td.bg-light{
		min-width: 12em;
		border-left: none;
	}

}


.table_line{
	width: 100%;
}
.table_line tr:first-child th,
.table_line tr:first-child td{
	border-top: solid 1px rgba(188,167,144,0.5);
}
.table_line th{
	padding:12px 10px;
	line-height:1.5;
	text-align: left;
	vertical-align: top;
	border-bottom: solid 1px rgba(188,167,144,0.5);
}
.table_line td{
	padding:12px 10px;
	line-height:1.5;
	border-bottom: solid 1px rgba(188,167,144,0.5);
}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.table_line th,
	.table_line td{
		padding:8px 4px;
	}

}

.table_s{
	font-size: 1.2rem;
	line-height: 1.4;
}
.table_l th,
.table_l td{
	padding:15px 15px;
}
.table_l th{
	font-size: 1.6;
}

.table_gray a,
.line-all a{
	text-decoration: underline;
	text-decoration-color: #ccc;
	transition: all 0.3s;
}
.table_gray a:hover,
.line-all a:hover{
	color: #09f;
	text-decoration-color: #09f;
}


table.line-all{
	width: 100%;
	border-top:solid 1px #cecebf;
	border-left:solid 1px #cecebf;
}
table.line-all td,
table.line-all th{
	border-bottom:solid 1px #cecebf;
	border-right:solid 1px #cecebf;
	padding:12px 10px;
	line-height:1.5;
	text-align: left;
	vertical-align: top;
}
table.line-all th{
	background-color:rgba(162,202,15,1.00);
	color:#fff;
}
table.line-all tr.bg-dark td{
	border-bottom:solid 1px #cecebf;
	border-right:solid 1px #cecebf;
}


.bg-white{
	background-color:#fff;
}
.bg-light,
table.line-all tr.bg-light,
table.line-all td.bg-light,
table.line-all th.bg-light{
	background-color:rgba(236,231,215,0.40);
	color:#454012;
}
.bg-dark,
table.line-all tr.bg-dark,
table.line-all td.bg-dark,
table.line-all th.bg-dark,
table.table_gray tr.bg-dark,
table.table_gray td.bg-dark,
table.table_gray th.bg-dark{
	background-color:rgba(236,231,215,1.00);
	color:#454012;
}
.bg-blue,
table.line-all tr.bg-blue,
table.line-all th.bg-blue{
	background-color:#E0EBF8;
	color:#454012;
}

.bg-pink,
table.line-all th.bg-pink{
	background-color:#FCE2E9;
	color:#454012;
}
.bg-ora,
table.line-all th.bg-ora{
	background-color:#FFE8CA;
	color:#454012;
}
.bg-yel,
table.line-all th.bg-yel{
	background-color:#FBFBBF;
	color:#454012;
}
.bg-gre,
table.line-all th.bg-gre{
	background-color:#DFF4CA;
	color:#454012;
}
.bg-aqua,
table.line-all th.bg-aqua{
	background-color:#D2EFF7;
	color:#454012;
}
.bg-pink,
table.line-all th.bg-pink{
	background-color:#FCE2E9;
	color:#454012;
}

.bg-pink em{
	color:#FF4675;
}
.bg-ora em{
	color:#FF5811;
}
.bg-yel em{
	color:#FF8800;
}
.bg-gre em{
	color:#5FAD10;
}
.bg-aqua em{
	color:#1D9FCB;
}




.ta-center,
tr.ta-center td,
tr.ta-center th{
	text-align:center !important;
}
.ta-right,
tr.ta-right td{
	text-align:right !important;
}
.va-top{
	vertical-align:top !important;
}
.va-middle{
	vertical-align:middle !important;
}



@media print, screen and (min-width: 768px) { /****** tablet以上 ******/

	/* 単価基準表 */
	/* 参考見積 */
	table.line-all.table-price03 td,
	table.line-all.table-price03 th,
	table.line-all.table-price04 td,
	table.line-all.table-price04 th{
		padding:6px 10px;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	table.line-all th{
		padding:6px 5px;
	}
	table.line-all td{
		padding:6px 5px;
	}

	/* SPで縦にする */
	table.table_v_sp thead {
		display:none;
	}
	table.table_v_sp tbody th {
		display:block;
	}
	table.table_v_sp tbody td {
		display:block;
		padding:6px 5px;
	}
	table.table_v_sp tbody td {
		padding-left:9em;
		text-align: left;
		position: relative;
	}
	table.table_v_sp tbody td::before {
		content: attr(label);
		display: block;
		width: 9em;
		position: absolute;
		top: 6px;
		left: 5px;
		color: #A2CA0F;
		font-weight: bold;
	}
	table.table_v_sp tbody td.td_empty {
		display: none;
	}

	/* 単価基準表 */
	/* 参考見積 */
	.table-price03,
	.table-price04{
		font-size: 1.2rem;
		line-height: 1.4;
	}
	#table-price0304{
		font-size: 1.0rem;
		line-height: 1.4;
	}
	table.line-all#table-price0304 th{
		padding:6px 3px;
	}
	table.line-all#table-price0304 td{
		padding:6px 3px;
	}

}


/******** 関連ブログ記事で詳しく見る ********/
.related_articles{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 0 -10px;
}
.related_articles_item{
	width: calc(50% - 21px);
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border:solid 1px #ddd;
	background-color: #fff;
	margin:10px;
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	.related_articles_item{
		width: calc(100% - 20px);
	}
}

.related_articles_item a{
	display:flex;
	width:100%;
	height:100%;
	transition: all 0.3s ease-in-out;
}
.c5 .related_articles_item a,
.c5 .related_articles_item a:hover{
	color: #221714;
	text-decoration: none;
}

.related_articles_item .entry_img{
	width:35%;
	overflow:hidden;
}
.related_articles_item .entry_img img{
	width:100%;
	height:150px;
	object-fit: cover;
}

.related_articles_item .entry_text{
	width:65%;
}
.related_articles_item .entry_date{
	padding:0 14px;
	font-size:1.2rem;
	line-height:20px;
	color:#fff;
	font-weight:bold;
	letter-spacing: 0.1em;
	background-color:#898068;
}
.related_articles_item .entry_title{
	padding:8px 14px;
	line-height:1.3;
	background-color:#ece7d7;
}
.related_articles_item .entry_excerpt{
	padding:8px 14px 4px;
	font-size:1.2rem;
	line-height:1.5;
}
.related_articles_item .entry_more{
	padding:0 14px 6px;
	font-size:1.2rem;
	text-align:right;
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	.related_articles_item .entry_date{
		padding:0 12px;
		font-size:1.0rem;
	}
	.related_articles_item .entry_title{
		padding:8px 12px;
		font-size:1.2rem;
	}
	.related_articles_item .entry_excerpt{
		padding:6px 12px 4px;
		font-size:1.1rem;
	}
	.related_articles_item .entry_more{
		padding:0 12px 4px;
		font-size:1.1rem;
	}
}





/* ページごとの指定 ************************************
********************************************************/



/* お問い合わせ ************************************/

.section_inner.section_inner_contact{
	max-width: 900px;
}

@media print, screen and (min-width: 768px) { /****** tablet以上 ******/

	#contact_tel{
		margin-top: 100px;
	}
	#contact_mail{
		margin-top: 80px;
	}

}
@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	#contact_tel{
		margin-top: 50px;
	}
	#contact_mail{
		margin-top: 40px;
	}

}

.label_contact{
	display: flex;
	justify-content: center;
	align-items: flex-end;
    background-image: -webkit-linear-gradient(bottom left, rgba(244,164,0,0.7), rgba(244,164,0,0.7) 45%, rgba(255,201,93,1.00) 46%, rgba(255,201,93,1.00) 50%, rgba(244,164,0,0.7) 51%, rgba(244,164,0,0.7) 95%, rgba(255,201,93,1.00) 96%, rgba(255,201,93,1.00) 100%);
    background-image: -o-linear-gradient(bottom left, rgba(244,164,0,0.7), rgba(244,164,0,0.7) 45%, rgba(255,201,93,1.00) 46%, rgba(255,201,93,1.00) 50%, rgba(244,164,0,0.7) 51%, rgba(244,164,0,0.7) 95%, rgba(255,201,93,1.00) 96%, rgba(255,201,93,1.00) 100%);
    background-image: linear-gradient(to top right, rgba(244,164,0,0.7), rgba(244,164,0,0.7) 45%, rgba(255,201,93,1.00) 46%, rgba(255,201,93,1.00) 50%, rgba(244,164,0,0.7) 51%, rgba(244,164,0,0.7) 95%, rgba(255,201,93,1.00) 96%, rgba(255,201,93,1.00) 100%);
    background-size: 6px 6px;
}
.label_contact_ill{
	height: 148px;
	width: auto;
	margin-top: -48px;
}
.label_contact_text{
	display: inline-block;
	margin: 0.7em 1em 0.5em;
	font-size: 2.4rem;
	letter-spacing: 0.08em;
}
.label_contact_text .en{
	display: block;
	padding-left:1.2em;
	margin-bottom: 0.1em;
	font-size: 2.2rem;
	line-height: 1;
    color: #fff;
	background: url("/img/common/icn_tel_wht@3x.png") 0 50% no-repeat;
	background-size: auto 20px;
}
.label_contact_mail .label_contact_text .en{
	padding-left:1.5em;
	background-image: url("/img/common/icn_mail_wht@3x.png");
}

.section_contact{
	padding: 40px 60px 20px;
	border: solid 4px rgba(244,164,0,0.70);
}

.section_contact .section_body_lead{
	padding-bottom: 2em;
}
.section_contact .section_body_lead p{
	text-align: center;
	color: #FB9700;
	font-weight: bold;
}
@media screen and (min-width: 1024px) { /******** PC以上 ********/
	.section_contact_mail .section_body_lead p{
		font-size: 1.8rem;
	}
}
.tel_num{
	display: inline-block;
	padding-left:1.0em;
	background: url(/img/common/icn_tel_ora@3x.png) 0 50% no-repeat;
	background-size: auto 40px;
	font-size: 5rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0;
    color: #FB9700;
	text-decoration: none;
}

@media screen and (max-width: 767px) { /**** tablet未満（SP） ****/

	.label_contact_ill{
		height: 100px;
		margin-top: -20px;
	}
	.label_contact_text{
		margin: 0.7em 0.5em 0.5em;
		font-size: 1.8rem;
		letter-spacing: 0;
	}

	.section_contact{
		padding: 20px 15px 10px;
		border: solid 2px rgba(244,164,0,0.70);
	}
	.section_contact .section_body_lead{
		padding-bottom: 1em;
	}
	.section_contact_mail .section_body_lead p{
		text-align: left;
	}
	.tel_num{
		background-size: auto 28px;
		font-size: 3rem;
	}

}


#contact_form table{
	width: 100%;
	max-width: 740px;
	margin: 0 auto;

}
#contact_form th{
	width:12em;
	vertical-align: text-top;
	text-align: left;
}
#contact_form td,
#contact_form th{
	padding: 10px;
}

#contact_form .mw_wp_form_input th label{
	display: block;
	padding-top: 10px;
}
.must{
	display:inline-block;
	margin-left: 12px;
	padding: 1px 4px;
	font-size: 1.1rem;
	font-weight: bold;
	background-color: #FB9700;
	color:#fff;
	border-radius: 3px;
}

#contact_form input[type="text"],
#contact_form textarea{
	width: 100%;
	box-sizing: border-box;
	padding:8px;
	background-color:#fff;
	border:solid 1px #dbccbf;
	border-radius:0;
	-webkit-appearance: none;
}
#contact_form select {
	padding:8px;
	background-color:#fff;
	border:solid 1px #dbccbf;
	border-radius:0;
/*	-webkit-appearance: none;*/
}
#contact_form input[type="file"]{
	width: 100%;
}
#contact_form input[type="checkbox"],
#contact_form input[type="radio"]{
	vertical-align: middle;
}

#contact_form input[type="text"]#zip{
	width: 4em;
}
#contact_form input[type="text"]#zip2{
	width: 5em;
}
#contact_form input[type="text"]#zip3{
	width: 8em;
}
#contact_form input[type="text"].input-tel{
	width: 5em;
}
.form_notice,
#mail2,
#spref,
#address,
#strt,
#address1,
#address2
{
	margin-top: 10px;
}
#contact_form input[type="text"].tel{
	width: 5em;
}

.form_zip,
.form_notice{
	display: inline-block;
}
.form_mail2{
	display: block;
}

.form_meiwaku,
.form_meiwaku strong,
.form_meiwaku a{
    font-size: 1.4rem;
	color: #FB0000;
}
p.form_meiwaku a{
    text-decoration-color: #FB0000;
}


.form_btn{
	padding: 2em 0;
}

.submitbtn{
	text-align: center;
	padding-bottom: 20px;
}
.submitbtn input[type="submit"],
.submitbtn input[type="button"] {
	-webkit-appearance: none;
	display:inline-block;
	width:auto;
	height:auto;
	padding:18px 40px;
	margin-left: 5px;
	margin-right: 5px;
	cursor:pointer;
	text-align:center;
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1;
	color:#fff;
	border:solid 3px #F4A400;
	background-color:#F4A400;
	border-radius:0;
/*	box-shadow: 0 3px 4px 0 rgba(0,0,0,.2);*/
	transition: all 0.3s ease-in-out;
}
.submitbtn input[type="submit"]:hover{
/*	box-shadow: 0 3px 6px 2px rgba(0,0,0,.3);*/
	color:#F4A400;
	background-color:#fff;
}
.submitbtn input[type="button"] {
	border:solid 3px #A2CA0F;
	background-color:#A2CA0F;
}
.submitbtn input[type="button"]:hover{
	color:#A2CA0F;
	background-color:#fff;
}

/* 入力画面 */
.mw_wp_form .contact_lead_confirm{
	display:none;
}
.mw_wp_form .js_que{
    padding-bottom: 0.5em;
    cursor: pointer;
}

/* エラーメッセージ */
.errmsg,
 .mw_wp_form #contact_form .error{
	display:inline-block !important;
	margin-top:3px;
	margin-left: 5px;
	padding:4px 8px;
	background-color:#E84231;
	border-radius:0;
	font-size:1.2rem;
	line-height: 1;
	font-weight:bold;
	color:#fff !important;
}

/* 確認画面 */
.mw_wp_form_confirm #contact_tel,
.mw_wp_form_confirm .contact_lead_input,
.mw_wp_form_confirm .notice,
.mw_wp_form_confirm .form_notice,
.mw_wp_form_confirm .form_mail2,
.mw_wp_form_confirm .addbtn,
.mw_wp_form_confirm .js_que{
	display:none;
}
.mw_wp_form_confirm .contact_lead_confirm{
	display:block;
}
.mw_wp_form_confirm .js_ans{
	display:block !important;
}

.confirm_text {
    display: block;
    padding: 8px 10px;
    min-height: 2.75em;
    background-color: rgba(219,204,191,0.20);
}

/* 完了画面 */
#thx,
.mw_wp_form_complete{
}
.thx_label{
	padding:20px 0 30px;
	font-size:2.6rem;
	font-weight: bold;
	line-height: 1.6;
	color:#FB9700;
	text-align: center;
}
#thx .section_body p + ul,
#thx .section_body p + p,
.mw_wp_form_complete p + p{
	padding-top:20px;
}



@media screen and (max-width: 767px) {

	#contact_form th,
	#contact_form td{
		display: block;
		padding:7px 0;
		width: 100%;
		box-sizing: border-box;
	}
	#contact_form td{
		padding-top:0;
	}

	#contact_form input[type="text"],
	#contact_form textarea{
		padding:5px;
	}
	#contact_form select {
		padding:5px;
	}
	.addbtn{
		margin-top: 5px;
	}
	.form_btn input[type="submit"],
	.form_btn input[type="button"] {
		padding-left:1.3em;
		padding-right:1.3em;
		font-size: 1.6rem;
		letter-spacing: 0;
	}

}




/* 404 エラーページ *********************************/
#section_error{
	margin: 50px auto;
	padding: 50px 6vw 30px;
	box-sizing: border-box;
	max-width: 1000px;
	width: 90%;
	background-color: rgba(64,33,13,0.05);
}




/****************************************************************************
#page-top
****************************************************************************/

#page-top {
	position: fixed;
	bottom: 30px;
	right: 0;
	width: 66px;
	height: 66px;
	z-index:400;
}
#page-top a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color:rgba(64,33,13,1.00);
	border: solid 1px rgba(255,255,255,0.5);
/*	border-radius: 5px 0 0 5px;*/
	color: #fff;
	transition: opacity 0.3s;
  opacity: 0.4;
}
#page-top a span{
	display: block;
	width: auto;
	height: auto;
	font-size:1.1rem;
	line-height: 1;
	text-align: center;
}
#page-top a span.and{
	font-size:1.6rem;
	font-weight:bold;
	padding-bottom: 4px;
}
#page-top a:hover{
  opacity: 0.7;
}


@media screen and (max-width: 767px) {
	#page-top {
		bottom: 20px;
		width: 56px;
		height: 56px;
	}
}

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

#footer{
	width:100%;
}

#footer_contact{
	width:100%;
	padding: 18px 0 34px;
	background: #ccc6ae;
}

.shome_title#fcontact_title{
	padding: 17px 0 23px;
}
.shome_title#fcontact_title .en{
	font-size: 2.6rem;
	line-height: 1.6;
	color:rgba(255,255,255,1);
}

#footer_contact .contact_nav{
	max-width:680px;
	margin: 0 auto;
	padding: 0 4vw;
}
#footer_contact .contact_nav li a{
	height: 46px;
	font-size: 1.6rem;
}
#footer_contact .contact_nav li.cnav_tel a .cnav_text{
	font-size: 1.9rem;
}

@media screen and (max-width: 600px) { /** sp **/
	#footer_contact .contact_nav{
		flex-direction: column;
	}
	#footer_contact .contact_nav li{
		width: 100%;
		padding-top: 4px;
	}

}

/* 内部バナー ＆ Facebook */

#footer_link{
	width:auto;
	max-width: 1040px;
	margin: 0 auto;
	padding: 60px 2vw;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items:stretch;
	flex-direction: row-reverse;
}

#footer_fb{ /* 800px以上で2カラム */
	flex-grow:1;
	flex-shrink:1;
	flex-basis:300px; /* 最小幅 */
	height: 810px;
	padding: 10px 2vw;
}
#footer_bnr1{
	flex-grow:1;
	flex-shrink:1;
	flex-basis:300px; /* 最小幅 */
	padding: 5px 2vw;
}

.fb-page{
	width: 100% !important;
}

.footer_bnr_contents{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
	height: 100%
}
.footer_bnr_contents li{
	padding: 5px 0;
}
.footer_bnr_contents li a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-color: #ece7d7;
}
.footer_bnr_contents li a img{
	width: 44%;
	height: auto;
	flex-basis:200px; /* 最小幅 */
}
.footer_bnr_contents li a p{
	width: 56%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0 25px;
	font-size: 1.2rem;
	line-height: 1.6;
	letter-spacing: 0;
}
@media print, screen and (max-width: 1023px) { /******** tablet以下 ********/ 

	.footer_bnr_contents li a p{
		line-height: 1.4;
	}
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/

	#footer_bnr1{
		padding-top: 20px;
	}

	.footer_bnr_contents li a p{
		padding: 0 15px;
	}
}

.footer_bnr li a{
	transition: all 0.2s ease-in-out;
	opacity: 1;
}
@media screen and (min-width: 1024px) { /******** PC以上 ********/

	.footer_bnr li a:hover{
		opacity: 0.6;
		/*box-shadow: 0 3px 4px 0 rgba(0,0,0,.2);*/
	}

	.footer_bnr_contents li a img{
		width: 200px;
	}
	.footer_bnr_contents li a p{
		width: calc(100% - 200px);
	}

}

/* 外部バナー */

#footer_banner{
	width:100%;
	padding: 30px 2vw;
	background-color: rgba(236,231,215,0.40);
}
#footer_bnr2{
	width:auto;
	max-width: 900px;
	margin: 0 auto;
}
.footer_bnr_link{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
.footer_bnr_link li{
	padding: 10px;
}

@media screen and (min-width: 480px) { /** SP以上 **/
}
@media screen and (max-width: 479px) { /** sp **/
	.footer_bnr_link{
		justify-content: flex-start;
	}
	.footer_bnr_link li{
		padding: 5px;
		width: 50%;
	}
}


/* フッターナビ */

#footer_nav{
	width:auto;
	max-width: 1040px;
	margin: 0 auto;
	padding: 50px 2vw;
	color: #524741;
}
.footer_logo{
	padding: 0 5px 16px;
}
.logo_footer{
	max-width: 360px;
}
@media screen and (max-width: 479px) { /** sp **/
	.footer_logo{
		padding: 0 5px 10px;
	}
	.logo_footer{
		max-width: 320px;
	}
}

.fnav_wrap{
	padding: 20px 0;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:stretch;
	border-top: solid 1px #717071;
	border-bottom: solid 1px #717071;
}
.fnav{
/*	flex-grow:1;
	flex-shrink:1;*/
	padding: 10px;
	font-size: 1.2rem;
	line-height: 1.9;
}
@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	#gnav_sp{
		position:fixed;
		top: 0;
		right:-110vw;
		width: 100vw;
		height: 100%;
		background:#fff;
		box-shadow: 0 6px 6px 0 rgba(0,0,0,.12);
		overflow: hidden;
		z-index: 450;
		transition: all 0.3s;
	}
	#gnav_sp.active{
		right:0;
	}
	.fnav_wrap{
		position: relative;
		overflow-y: auto;
		width: 100%;
		height: 100%;
		padding:80px 2vw 20px;
		border-top: none;
		border-bottom: none;
	}

}
@media screen and (max-width: 970px) {/* 3列に */
	.fnav_wrap{
		justify-content:flex-start;
	}
	.fnav{
		width: 33%;
	}
}
@media screen and (max-width: 650px) {/* 2列に */
	.fnav{
		width: 50%;
	}
}
@media screen and (max-width: 479px) { /** SP専用 1列 **/

	#gnav_sp{
		width: 80vw;
	}
	.fnav{
		width: 100%;
	}
	.fnav li a{
		font-size: 1.3rem;
		line-height: 2.5;
	}
}

.fnav_label,
.fnav_ul2 li{
	font-weight: bold;
	color: #231815;
	padding-bottom: 4px;
}
.fnav_ul4{
	padding-left: 1em;
}
.fnav_ul3 a,
.fnav_ul4 a{
	padding-left: 1em;
	position: relative;
}
.fnav_ul3 a::before,
.fnav_ul4 a::before{
	position: absolute;
	top: 4px;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 4px;
	height: 4px;
	border-top: 2px solid #F4A400;
	border-right: 2px solid #F4A400;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.fnav_ul4 a::before{
	top: 5px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #F4A400;
	border-right: 1px solid #F4A400;
}

.fnav_ul3 + .fnav_label{
	padding-top: 8px;
}

@media screen and (min-width: 1024px) { /******** PC以上 ********/
	.fnav a:link,
	.fnav a:visited{
		color: #524741;
	}
	.fnav a:hover,
	.fnav a:active{
		color:rgba(244,164,0,1.00);
		text-decoration: underline;	
	}
}


#footer_company{
	padding: 30px 16px 0;
	line-height: 1.6;
}
#footer_company p + p{
	padding-top: 20px;
}

#footer_message{
	padding: 20px 16px;
	line-height: 1.6;
}
#footer_message p + p{
	padding-top: 20px;
}

/* コピーライトと緑ライン */

#footer{
	position: relative;
	border-bottom:solid 22px #a2ca0f;
}

#copyright{
	position: absolute;
	bottom:-22px;
	left:0;
	width: 100%;
	padding-bottom: 40px;
	background:url("../../img/common/2whitelines@2x.png") 90% 100% no-repeat;
	background-size: auto 22px;
	font-size:1.2rem;
	text-align: center;
}


@media screen and (max-width: 1023px) { /******** tablet以下 ********/

	#footer{
		border-bottom:solid 10px #a2ca0f;
	}

	#footer_company{
		padding-top: 10px;
	}

	#copyright{
		bottom:-10px;
		padding-bottom: 30px;
		background-size: auto 14px;
	}

}


/****************************************************************************
汎用クラス
****************************************************************************/

.hidden{
  height: 0px;
  font-size: 0%;
  line-height: 0%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  padding: 0;
  margin: 0;
}

.center{
	text-align:center;
}

.small{
	font-size:1.4rem;
}
.x-small{
	font-size:1.2rem;
}
.xx-small{
	font-size:1.0rem;
}

.large{
	font-size:2.2rem;
}
.x-large{
	font-size:2.4rem;
}
.xx-large{
	font-size:3.8rem;
}
@media screen and (max-width: 767px) { /**** tablet未満 ****/
	
	.small{
		font-size:1.2rem;
	}
	.x-small{
		font-size:1.0rem;
	}
	.xx-small{
		font-size:0.8rem;
	}

	.large{
		font-size:1.6rem;
	}
	.x-large{
		font-size:1.8rem;
	}
	.xx-large{
		font-size:2.2rem;
	}
	
}


strong{
	font-weight:bold;
	font-style:normal;
	color:#FB4600;
}
em{
	font-weight:bold;
	font-style:normal;
	color: #40210d;
}

.notice,
.caution{
	color:#e0043d;
}

.ora{
	color: #FB9700;
}
.gre{
	color: #A2CA0F;
}
.red{
	color: #e0043d;
}

.yellow{
	color: #FBF100;
}
.limegreen{
	color: #9BDF16;
}
.green{
	color: #00B854;
}
.skyblue{
	color: #16CFED;
}
.blue{
	color: #2871F3;
}
.purple{
	color: #C706D3;
}
.pink{
	color: #FF5EC2;
}
.brown{
	color: #82551D;
}
.white{
	color: #eee;
}
.black{
	color: #000;
}

