@charset "utf-8";

/*----- reset -----*/
html{font-size:62.5%;height:100%;}
body{margin:0;padding:0;font-size:1.6rem;font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif;line-height:1.8;color:#333;height:100%;position:relative;letter-spacing:0.8px;overflow-wrap:break-word;word-wrap:break-word;-webkit-text-size-adjust:100%;background:#F8F3EC;width:auto;}
header,main,article,section,nav,footer{display:block;}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;font-size:100%;}
textarea, select{font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif;}
input{font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif;line-height:1.5;color:#333;position:relative;letter-spacing:0.1em;overflow-wrap:break-word;word-wrap:break-word;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border: 0;}
address,caption,cite,code,dfn,th,var{font-style:normal;font-weight:normal;}
em{font-style:normal;font-weight:500;}
ol,ul{list-style: none;}
caption{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym{border:0;}
input[type="text"],input[type="submit"],input[type="email"],input[type="tel"],select{-webkit-appearance:none;appearance:none;border-radius:0;border:none;background:none;}
select::-ms-expand{display:none;}

*, *::before, *::after{box-sizing:border-box;}
/*----- reset end -----*/
:root{
	--vw-100:100vw;
	--vw-50:calc(var(--vw-100)*.5);
	/* --dd-height:70px; */
}

html{visibility:hidden;}
html.wf-active, html.wf-inactive{visibility:visible;}

#wrapper{overflow:hidden;position:relative;min-height:660px;}
#wrapper::before{
	content:'';
	display:block;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	background:#F8F3EC url(/log/img/common/bg_1.png) top center no-repeat;
	background-size:1500px auto;
	z-index:-1;
}

.sp_size{display:none !important;}


.sp_size{display:none !important;}

body.fixed{
	position:fixed;
	width:100%;
	overflow-y:scroll;
}

/*----- header -----*/
#header_wrap{
	position:fixed;
	z-index:1003;
	top:0;
	left:0;
	width:100%;
	background:none;
	transition:background 0.3s, transform 0.5s;
}
#header_wrap.scroll{background:rgba(255,255,255,0.9);}
#header_wrap.hide{transform:translateY(-101%);}
#header_area{
	display:flex;
	align-items:center;
	justify-content:space-between;
	position:relative;
	z-index:1000;
	width:100%;
	min-height:150px;
	padding:8px 41px 11px 40px;
	background:none;
	transition:background 0.3s, transform 0.5s;
}
#header_wrap.scroll #header_area{min-height:75px;}
#logo{
	display:block;
	position:absolute;
	width:288px;
	left:0;
	right:0;
	margin:auto;
}
.logo_link{
	display:block;
	position:relative;
}
.logo_img{
	display:block;
	width:288px;
	height:auto;
	transition:opacity 0.3s;
}

#header_wrap.scroll #logo,#header_wrap.scroll .logo_img{width:208px;}
#header_wrap.scroll .m_logo_img{width:195px;height:auto;}
.header_menu{display:flex;align-items:center;}
#toggle{position:relative;z-index:1003;}
.toggle_btn{
	display:block;
	position:relative;
	width:35px;
	height:35px;
	border-radius:50%;
	padding:0;
	background:none;
	font-size:0;
	cursor:pointer;
	border:none;
	background:#fff;
	border:1px solid #ddd;
	transition:background .3s;
}
.toggle_btn.open,.toggle_btn:hover{background-color:#00CBAB;}
.toggle_btn::before, .toggle_btn::after, .toggle_txt::before{
	content:'';
	display:block;
	position:absolute;
	z-index:10;
	left:0;
	right:0;
	margin:auto;
	width:13px;
	height:1.5px;
	background:#333;
	border-radius:1px;
	transition:all 0.3s;
}
.toggle_btn:hover::before,.toggle_btn:hover::after,.toggle_btn:hover .toggle_txt::before{background:#fff;}
.toggle_btn::before{top:11px;}
.toggle_btn::after{top:15px;}
.toggle_txt::before{top:19px;}
.toggle_btn.open::before{
	top:16px;
	background:#fff;
	transform:rotate(150deg);
}
.toggle_btn.open::after{
	top:16px;
	background:#fff;
	transform:rotate(-150deg);
}
.open .toggle_txt::before{
	opacity:0;
	visibility:hidden;
}
#menu{
	display:block;
	position:fixed;
	z-index:1002;
	top:0;
	right:0;
	width:100%;
	height:auto;
	min-height:500px;
	padding:104px 30px 0;
	background:#F8F3EC;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	transform:translateY(-100%);
	transition:transform 0.45s cubic-bezier(.22,1,.36,1);
}
#menu:not(.menu_dis){
	transform:translateY(0);
}
#menu_overlay{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.8);
	z-index:1001;
	opacity:0;
	visibility:hidden;
	transition:opacity 0.3s, visibility 0.3s;
}
#menu_overlay:not(.menu_dis){
	opacity:1;
	visibility:visible;
}
.menu_wrap{
	margin:0 auto;
	height:auto;
	position:relative;
	padding-bottom:50px;
}
.menu_area{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	min-height:533px;
	padding:2px 30px 70px;
	margin:auto;
	max-width:860px;
	position:relative;
}
.menu_box{width:calc(50% - 15px);margin-bottom:30px;}
.menu_head{
	font-size:2rem;
	font-weight:bold;
	letter-spacing:0;
	line-height:2.9rem;
	padding-bottom:17px;
	border-bottom:1px solid #c2c2c2;
}
.menu_list{display:block;padding:0;margin:0;}
.menu_item{
	margin-bottom:0 !important;
	list-style:none;
	border-bottom:1px solid #c2c2c2;
}
.menu_link{
	position:relative;
	display:block;
	font-size:1.4rem;
	letter-spacing:0;
	line-height:2rem;
	font-weight:bold;
	padding:16px 50px 17px 10px;
	color:#333 !important;
	text-decoration:none !important;
	transition:color 0.3s,background .3s;
}
.menu_link:hover{background-color:#F0FFFD;color:#00A88E !important;}
.menu_link::before{
	content:'';
	position:absolute;
	top:calc(50% - 9px);
	right:10px;
	width:18px;
	height:18px;
	border-radius:50%;
	background:#00A88E url(/log/img/common/arrow_r_white.svg) center no-repeat;
	background-size:5px 8px;
}

.menu_c_list{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:15px;
	margin:20px 0 0;
	padding:0;
}
.menu_c_item{margin:0 !important;list-style:none !important;}
.menu_c_link{
	display:flex;
	align-items:center;
	justify-content:center;
	height:42px;
	font-size:1.4rem;
	border-radius:30px;
	color:#fff !important;
	text-decoration:none !important;
	background:#00A88E;
	border:1px solid #00A88E;
	font-weight:500;
	transition:background 0.3s,color 0.3s;
}
.menu_c_link:hover{
	background:#F0FFFD;
	color:#00A88E !important;
}

.header_corp_link{
	position:absolute;
	bottom:40px;
	left:0;
	width:100%;
	padding:0;
	display:flex;
	align-items:center;
	justify-content:center;
}
.header_corp_link ul{
	padding:0;
	margin:0;
	display:flex;
	align-items:center;
	justify-content:center;
}
.header_corp_link ul li{list-style:none;}
#menu .header_corp_link{bottom:50px;}

/*----- search -----*/
#search{position:relative;margin-right:15px;}
.modal_open{
	display:block;
	position:relative;
	z-index:1004;
	width:35px;
	height:35px;
	border-radius:50%;
	border:1px solid #ddd;
	background:#fff url(/log/img/common/icon_search_black.svg) center no-repeat;
	cursor:pointer;
	text-decoration:none;
	transition:background 0.3s;
}
.modal_open.true{background:#00CBAB url(/log/img/common/icon_search_white.svg) center no-repeat;}
.modal_open:hover{background:#00CBAB url(/log/img/common/icon_search_white.svg) center no-repeat;}
.modal_txt{
	display:block;
	position:relative;
	height:100%;
	background:url(/img/common/search.svg) no-repeat center/30px;
	border-radius:10px;
	font-size:0;
}
.modal_content{
	position:fixed;
	display:block;
	z-index:1002;
	top:0;
	right:0;
	width:100%;
	min-height:560px;
	padding:136px 30px 122px;
	background:#F8F3EC;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	transform:translateY(-100%);
	visibility:hidden;
	pointer-events:none;
	transition:transform 0.45s cubic-bezier(.22,1,.36,1), visibility 0s linear 0.45s;
}
.modal_content.is_open{
	transform:translateY(0);
	visibility:visible;
	pointer-events:auto;
	transition:transform 0.45s cubic-bezier(.22,1,.36,1), visibility 0s;
}
.search_wrap{
	margin:0 auto;
	max-width:880px;
	padding:2px 30px 0;
}
.search_box{
	position:relative;
	width:100%;
	background:#fff;
	border-radius:50px;
	border:1px solid #c2c2c2;
	overflow:hidden;
}
.search_txt{
	display:block;
	width:100%;
	padding:17px 60px 16px 20px;
	background:none;
	border:none;
	box-sizing:border-box;
	font-size:1.8rem;
	outline:none;
}
.search_txt::placeholder{color:#aaa;}
input[type="submit"].search_btn{
	display:block;
	position:absolute;
	top:0;
	right:0;
	font-size:0;
	width:80px;
	height:60px;
	background:url(/log/img/common/icon_search_green.svg) center no-repeat;
	background-size:19px;
	border:none;
	cursor:pointer;
}
.search_keywords{margin-top:36px;padding:0 10px;}
.search_head{
	font-size:2rem;
	font-weight:bold;
	letter-spacing:0;
	line-height:2.9rem;
	padding-bottom:17px;
	border-bottom:1px solid #c2c2c2;
}
.search_keyword_list{
	display:flex;
	flex-wrap:wrap;
	padding:0;
}
.search_keyword_item{list-style:none;margin:20px 50px 0 0;}
.search_keyword_link{
	display:block;
	color:#333;
	font-size:1.4rem;
	font-weight:500;
	letter-spacing:0;
	line-height:2rem;
	text-decoration:underline;
}
.search_keyword_link:hover{
	text-decoration:underline;
}
#s_overlay{
	position:fixed;
	z-index:1001;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.35);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity 0.3s, visibility 0.3s;
}
#s_overlay.is_open{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}
.corp_link,.c_logo_img{width:195px;height:auto;}

/*----- footer -----*/
#return{
	position:relative;
	z-index:1000;
}
.return_btn{
	display:block;
	position:fixed;
	right:15px;
	bottom:15px;
	width:35px;
	height:35px;
	background:#4B4B4B;
	text-decoration:none;
	transition:background 0.3s;
}
.return_btn:hover{background:#000;}
.return_btn::after{
	content:'';
	display:block;
	position:absolute;
	top:7px;
	right:0;
	bottom:0;
	left:0;
	margin:auto;
	width:10px;
	height:10px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	transform:rotate(-45deg);
}
.return_txt{display:none;}
.return_btn.display{
	opacity:1;
	visibility:visible;
}
.return_btn.pos_end{
	position:absolute;
	bottom:-17.5px;
	opacity:1;
	visibility:visible;
}

#footer_wrap{
	position:relative;
	background:#EFE8DE;
}
#footer_content{
	max-width:1160px;
	margin:0 auto;
	padding:70px 30px 45px;
}
.f_logo_link,.f_logo_img{
	display:block;
	width:auto;
	height:auto;
}
#footer_content address{
	font-size:1.1rem;
	line-height:1.6rem;
	letter-spacing:1.1px;
	margin:15px 0 40px;
}
#footer_b{
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-size:1.1rem;
	letter-spacing:1.1px;
	line-height:1.6rem;
}
.footer_nav{
	display:flex;
	align-items:center;
}
.footer_link_list{
	margin:0 39px 0 0;
	padding:0;
}
.footer_link_item{
	list-style:none;
	margin:0 !important;
}
.footer_link{
	display:block;
	padding-left:20px;
	background:url(/log/img/common/icon_popup_black.svg) 0 center no-repeat;
	color:#333 !important;
	text-decoration:none;
}
.footer_link:hover{text-decoration:underline;}
.footer_sns{
	display:flex;
	align-items:center;
}
.footer_sns p{margin:0 !important;}
.footer_sns_list{
	display:flex;
	align-items:center;
	margin:0 0 0 8px;
	padding:0;
}
.footer_sns_item{
	list-style:none;
	margin:0 15px 0 0;
}
.footer_sns_link{
	display:block;
	width:35px;
	height:35px;
	position:relative;
	padding:0 !important;
	background:none !important;
}
.footer_sns_link span{display:none;}
.footer_sns_link::before,
.footer_sns_link::after{
	content:'';
	position:absolute;
	left:0;
	top:0;
	display:block;
	width:35px;
	height:35px;
	background:#fff;
	transition:opacity 0.3s, visibility 0.3s;
}
.footer_sns_link.facebook::before{background:url(/log/img/common/icon_facebook.svg);}
.footer_sns_link.facebook::after{background:url(/log/img/common/icon_facebook_hover.svg);}
.footer_sns_link.x::before{background:url(/log/img/common/icon_x.svg);}
.footer_sns_link.x::after{background:url(/log/img/common/icon_x_hover.svg);}
.footer_sns_link.insta::before{background:url(/log/img/common/icon_instagram.svg);}
.footer_sns_link.insta::after{background:url(/log/img/common/icon_instagram_hover.svg);}
.footer_sns_link.line::before{background:url(/log/img/common/icon_line.svg);}
.footer_sns_link.line::after{background:url(/log/img/common/icon_line_hover.svg);}
.footer_sns_link:hover::before,.footer_sns_link::after{opacity:0;visibility:hidden;}
.footer_sns_link:hover::after{opacity:1;visibility:visible;}

.copyright,.copy_txt{margin:0 !important;font-size:1.1rem;letter-spacing:1.1px;line-height:1.6rem;}

/*----- main -----*/
a, a:visited{
	color:#333;
	text-decoration:underline;
}
a:hover{text-decoration:none;}
a[target="_blank"]{
	padding-left:20px;
	background:url(/log/img/common/icon_popup_black.svg) no-repeat center left;
}
a.non[target="_blank"]{
	padding-left:0;
	background:none;
}
a[href$=".doc"], a[href$=".docx"]{
	padding-left:20px;
	background:url(/img/common/icon_word.svg) no-repeat center left;
}
a[href$=".xls"], a[href$=".xlsx"]{
	padding-left:20px;
	background:url(/img/common/icon_excel.svg) no-repeat center left;
}
a[href$=".pdf"]{
	padding-left:20px;
	background:url(/img/common/icon_pdf.svg) no-repeat center left;
}
a.none[href$=".pdf"]{
	padding-left:0;
	background:none;
}
[href^="tel:"]{
	color:#333 !important;
	pointer-events:none;
}

img{
	display:block;
	max-width:100%;
	width:auto;
	height:auto;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
a img{pointer-events:none;}


@media screen and (min-width:768px) and (max-width:1024px){

/*----- header -----*/



/*----- footer -----*/

}


@media screen and (max-width:767px){
.pc_size{display:none !important;}
.sp_size{display:block !important;}


/*----- header -----*/
#header_wrap{position:relative;background:none !important;}
#header_area{
	min-height:85px;
	padding:8px 15px 11px 15px;
}
#header_wrap.scroll #header_area{min-height:75px;}
#m_logo{display:none;}
#logo{
	position:relative;
	width:210px;
	left:auto;
	right:auto;
	margin:0;
}
.logo_link{
	display:block;
	position:relative;
}
.logo_img{
	width:210px;
	height:auto;
}
#header_wrap.scroll #logo,#header_wrap.scroll .logo_img{width:200px;}

#menu{
	top:85px;
	height:calc(100dvh - 85px);
	min-height:calc(100dvh - 85px);
	padding:0 15px 0;
	transform:translateX(100%);
	transition:transform 0.45s cubic-bezier(.22,1,.36,1);
}
#header_wrap.scroll #menu{
	top:75px;
	height:calc(100dvh - 75px);
	min-height:calc(100dvh - 75px);
}
#menu:not(.menu_dis){
	transform:translateX(0);
}
#menu_overlay{
	position:fixed;
	top:85px;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:calc(100dvh - 85px);
	background:rgba(0,0,0,0.8);
	z-index:1001;
	opacity:0;
	visibility:hidden;
	transition:opacity 0.3s, visibility 0.3s;
}
#header_wrap.scroll #menu_overlay{
	top:75px;
	height:calc(100dvh - 75px);
}
#menu_overlay:not(.menu_dis){
	opacity:1;
	visibility:visible;
}
.menu_wrap{
	margin:0 auto;
	height:auto;
	position:relative;
	padding-bottom:50px;
}
.menu_area{
	display:block;
	min-height:100px;
	padding:0;
	margin:0 auto 40px;
	max-width:none;
	position:relative;
}
.menu_box{width:auto;margin-bottom:30px;}
.menu_head{
	font-size:1.8rem;
	line-height:2.6rem;
	padding-bottom:14px;
}
.menu_link{
	padding:16px 50px 17px 10px;
}
.menu_c_list{
	gap:10px;
	margin:20px 0 0;
}
.menu_c_link{height:40px;}
.header_corp_link{
	position:relative;
	bottom:auto;
	left:auto;
}
.header_corp_link ul li{max-width:150px;}
#menu .header_corp_link{bottom:auto;}

/*----- search -----*/
.modal_content{
	z-index:1002;
	top:85px;
	height:calc(100dvh - 85px);
	min-height:calc(100dvh - 85px);
	padding:0 15px 40px;
	transform:translateX(100%);
	visibility:hidden;
	pointer-events:none;
	transition:transform 0.45s cubic-bezier(.22,1,.36,1), visibility 0s linear 0.45s;
}
#header_wrap.scroll .modal_content{
	top:75px;
	height:calc(100dvh - 75px);
	min-height:calc(100dvh - 75px);
}
.modal_content.is_open{
	transform:translateX(0);
	visibility:visible;
	pointer-events:auto;
	transition:transform 0.45s cubic-bezier(.22,1,.36,1), visibility 0s;
}
.search_wrap{
	padding:0;
}
.search_txt{
	padding:14px 60px 13px 20px;
	font-size:1.5rem;
}
input[type="submit"].search_btn{
	width:50px;
	height:50px;
}
.search_keywords{margin:26px 0 56px;padding:0;}
.search_head{
	font-size:1.8rem;
	line-height:2.6rem;
	padding-bottom:14px;
}
.search_keyword_list{
	display:flex;
	flex-wrap:wrap;
	padding:0;
}
.search_keyword_item{list-style:none;margin:20px 40px 0 0;}
#s_overlay{
	z-index:1001;
	top:85px;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:calc(100dvh - 85px);
}
#header_wrap.scroll #s_overlay{
	top:75px;
	height:calc(100dvh - 75px);
}
#s_overlay.is_open{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}
.corp_link,.c_logo_img{width:195px;height:auto;}


/*----- footer -----*/

#footer_content{
	padding:40px 20px 35px;
}
.f_logo{display:flex;justify-content:center;}
#footer_content address{
	text-align:center;
	margin:15px 0 40px;
}
#footer_b{
	display:block;
	text-align:center;
}
.footer_link{display:inline-block;}
.footer_nav{
	display:block;
	margin-bottom:40px;
}
.footer_link_list{
	margin:0 0 20px;
}
.footer_sns{display:block;}
.footer_sns_list{
	justify-content:center;
	margin:5px 0 0;
}
.footer_sns_item{
	margin:0 7.5px !important;
}



/*----- main -----*/
[href^="tel:"]{
	text-decoration:underline;
	pointer-events:auto;
}

}


/*----- print -----*/
@media print{
	:root{--vw-100:1200px;}
	body{
		width:1200px;
		transform:scale(1);
		-moz-transform:scale(1);
		-webkit-transform:scale(1);
		transform-origin:0 0;
		zoom:.91;
		margin:auto
	}
	@media all and (-ms-high-contrast:none){
		body{width:1200px}
	}
	@media (-ms-high-contrast:none),(-ms-high-contrast:active){
		body{width:1200px}
	}
	@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm){
		body{
			width:1200px;
			transform:scale(.8);
			-moz-transform:scale(.8);
			-webkit-transform:scale(.8);
			transform-origin:0 0;
			margin:auto
		}
	}
}
/*----- print end -----*/