@charset "utf-8";

/*----- reset -----*/
html{font-size:62.5%;height:100%;}
body{margin:0;padding:0;font-size:1.5rem;font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif;line-height:1.5;color:#333;height:100%;position:relative;letter-spacing:0.1em;overflow-wrap:break-word;word-wrap:break-word;-webkit-text-size-adjust:100%;background:#fff;width:auto;font-weight:400;}
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;}


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

#wrapper{overflow:hidden;}

.tab_size{display:none !important;}
.sp_size{display:none !important;}


/*----- header -----*/
#header_wrap{
	position:fixed;
	z-index:20;
	top:0;
	right:0;
	left:0;
	width:100%;
	background:none;
	background:rgba(255,255,255,0.9);
	transition:background 0.3s, transform 0.5s;
}
#header_wrap.scroll{background:rgba(255,255,255,0.9);}
#header_wrap.hide{transform:translateY(-101%);}
#header_wrap.is_show{background:#fff;}
#header_area{
	max-width:1860px;
	padding:0 30px;
	margin:auto;
	position:relative;
}

#logo{position:absolute;left:30px;top:29px;z-index:10;}
.logo_link,.logo_img{
	display:block;
	width:100%;
	max-width:223px;
	height:auto;
}
#toggle{display:none;}
#menu{
	display:flex;
	justify-content:center;
	width:100%;
	position:relative;
}
.menu_list{
	display:flex;
	padding:0;
	margin:0;
}
.menu_item{
	list-style:none;
	padding:0;
	margin:0 15px !important;
}
.menu_link{
	position:relative;
	display:block;
	color:#000 !important;
	font-weight:400;
	text-decoration:none;
	transition:color 0.3s;
}
.menu_link span{display:flex;position:relative;align-items:center;height:90px;}
.has_child .menu_link span{padding-right:16px;}
.has_child .menu_link::before,.has_child .menu_link::after{
	position:absolute;
	content:'';
	width:11px;
	height:1px;
	background:#093741;
	top:0;
	bottom:0;
	right:0;
	margin:auto;
	transition:transform 0.3s;
}
.has_child .menu_link::after{transform:rotate(90deg);}
.has_child.is-show .menu_link::after{transform:rotate(0);}
.menu_link span::after{
	content:'';
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:0;
	height:2px;
	background:#093741;
	transition:width 0.3s;
}
.menu_link:hover span::after,.on .menu_link span::after,.menu_link.open span::after{width:100%;}
.menu_child_list{
	opacity:0;
	position:absolute;
	top:90px;
	background:#fff;
	margin:0;
	width:270px;
	padding:26px 10px 16px 30px;
	box-shadow:0 3px 10px rgba(0,0,0,0.2);
	transform:translateY(-10px);
	visibility:hidden;
	transition:opacity .3s,transform .3s,visibility .3s;
}
.menu_child_list.is-open{opacity:1;transform:translateY(0);visibility:visible;}
.is-show .menu_child_list{opacity:1;transform:translateY(0);visibility:visible;}
.menu_child_item_p{margin:0 0 13px;padding:0;list-style:none !important;display:none;}
.menu_child_item{margin:0 0 13px;padding:0 0 0 14px;position:relative;list-style:none !important;}
.menu_child_item::before{
	content:'';
	display:block;
	width:6px;
	height:1px;
	position:absolute;
	left:0;
	top:11px;
	background:#333;
}
.menu_child_link{
	color:#000 !important;
	text-decoration:none;
	font-size:1.3rem;
	letter-spacing:1.3px;
	font-weight:400;
}
.menu_child_link:hover{text-decoration:underline;}
.menu_rent{
	position:absolute;
	right:0;
	top:calc(50% - 16.5px);
}
.menu_rent a{
	display:flex;
	width:160px;
	height:33px;
	border-radius:4px;
	border:1px solid #7A9096;
	color:#0A4451 !important;
	text-decoration:none !important;
	align-items:center;
	justify-content:center;
	transition:background .3s,color .3s,border .3s;
}
.menu_rent a:hover{color:#fff !important;background:#073742;border-color:#073742;}

/*----- footer -----*/
#return{
	position:relative;
	z-index:10;
}
.return_btn{
	display:block;
	position:fixed;
	right:20px;
	bottom:20px;
	width:54px;
	height:54px;
	background:#fff;
	border:1px solid #7A9096;
	border-radius:50px;
	opacity:0;
	visibility:hidden;
	text-decoration:none !important;
	transition:background 0.3s, opacity 0.3s, visibility 0.3s;
}
.return_btn::after{
	content:'';
	display:block;
	position:absolute;
	top:8px;
	right:0;
	bottom:0;
	left:0;
	margin:auto;
	width:15px;
	height:15px;
	border-top:1px solid #093741;
	border-right:1px solid #093741;
	transform:rotate(-45deg);
}
.return_btn:hover{background:#7A9096;}
.return_btn:hover::after{border-color:#fff;}
.return_btn.display{
	opacity:1;
	visibility:visible;
}
.return_btn.pos_end{
	position:absolute;
	bottom:-27px;
	opacity:1;
	visibility:visible;
}
.return_txt{display:none;}
.footer_area{
	position:relative;
	background:#073742;
	padding:100px 30px 0;
}
.footer_info{
	background:#F7F7F5;
	border-radius:10px;
	max-width:1100px;
	margin:auto;
	display:flex;
	align-items:center;
	padding:45px 0 47px;
}
.footer_info_txt{
	position:relative;
	width:50%;
	padding:0 30px;
}
.footer_info_txt::before{
	content:'';
	display:block;
	width:1px;
	height:100%;
	background:#ddd;
	position:absolute;
	right:0;
	top:0;
}
.footer_info_txt_in{
	width:fit-content;
	margin:auto;
}
.f_logo_link,.f_logo_img{
	display:block;
	width:100%;
	max-width:350px;
	height:auto;
	margin:auto;
}
.footer_info_txt_in address{
	display:block;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.5;
	margin-top:14px;
	white-space:nowrap;
}
.footer_address_tel{display:inline-block;margin-right:15px;}
.footer_mail{margin-top:15px;}
.footer_info_contact{
	width:50%;
	padding:0 20px;
	text-align:center;
	color:#0B5A6C;
	position:relative;
}
.footer_info_contact p strong{
	font-family: "Noto Serif JP", serif;
	letter-spacing:0;
	font-size:1.8rem;
}
.footer_contact_tel{
	font-family: "Noto Serif JP", serif;
	letter-spacing:1px;
	font-size:2rem;
	font-weight:bold;
	margin:9px 0 3px;
}
.footer_contact_tel a{
	color:#0B5A6C !important;
	text-decoration:none !important;
	font-size:3.4rem;
	line-height:1.2;
}
.footer_info_contact p{font-size:1.4rem;letter-spacing:0;font-weight:400;}
.footer_info_contact p span{font-size:1.2rem;}
.link_btn_contact{
	display:block;
	margin:20px auto 0;
	max-width:300px;
	padding:20px;
	color:#fff !important;
	text-decoration:none;
	background:#073742;
	border:1px solid #073742;
	border-radius:4px;
	transition:background .3s,color .3s,border .3s;
	font-size:1.8rem;
}
.link_btn_contact span{
	display:inline-block;
	padding-left:37px;
	background:url(/img/common/icon_mail_white.svg) 0 center no-repeat;
}
.link_btn_contact:hover{
	color:#073742 !important;
	background:#fff;
}
.link_btn_contact:hover span{background:url(/img/common/icon_mail_green.svg) 0 center no-repeat;}
.footer_list{
	margin:51px auto 0;
	max-width:1100px;
	padding:0;
	display:grid;
	grid-gap:40px;
	grid-template-columns:repeat(auto-fit, calc((100% - 160px) / 5));
}
.footer_list_item{margin:0 0 13px;padding:0;position:relative;list-style:none;}
.footer_list_link{
	display:block;
	color:#fff !important;
	text-decoration:none !important;
	position:relative;
}
.has_child .footer_list_link::before,.has_child .footer_list_link::after{
	position:absolute;
	content:'';
	width:11px;
	height:1px;
	background:#fff;
	top:0;
	bottom:0;
	right:0;
	margin:auto;
	transition:transform 0.3s;
}
.has_child .footer_list_link::after{transform:rotate(90deg);}
.has_child .footer_list_link.open::after{transform:rotate(0);}
.footer_list_link span{
	display:block;
	position:relative;
	padding:8px 16px 8px 0;
	border-bottom:1px solid rgba(255,255,255,0.3);
}
.footer_list_link span::after{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#fff;
	transition:width 0.3s;
}
.footer_list_link:hover span::after,.on .footer_list_link span::after,.footer_list_link.open span::after{width:100%;}
.footer_child_list{
	margin:0;
	padding:26px 20px 18px;
	background:rgba(255,255,255,0.3);
	display:none;
}
.footer_child_item_p{margin:0 0 14px;padding:0;list-style:none !important;}
.footer_child_item{
	padding:0 0 0 14px;
	position:relative;
	margin:0 0 14px;
	line-height:1.4;
	list-style:none !important;
}
.footer_child_item::before{
	content:'';
	display:block;
	width:6px;
	height:1px;
	position:absolute;
	left:0;
	top:12px;
	background:#fff;
}
.footer_child_link{
	color:#fff !important;
	text-decoration:none;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.5;
}
.footer_child_link:hover{text-decoration:underline;}
.footer_b{
	display:flex;
	max-width:1100px;
	justify-content:space-between;
	align-items:center;
	margin:auto;
	padding:50px 0;
}
.footer_sub_list{
	display:flex;
	margin:0;
	padding:0;
}
.footer_sub_item{margin-right:36px;list-style:none;}
.footer_sub_item a{
	color:#fff !important;
	text-decoration:none;
	font-size:1.2rem;
	letter-spacing:1.2px;
}
.footer_sub_item a:hover{text-decoration:underline;}
.copy_txt{
	font-size:1.2rem;
	letter-spacing:1.2px;
	color:#fff;
}

/*----- main -----*/
a{
	color:#333;
	text-decoration:underline;
}
a:visited{
	color:#9E088F;
	text-decoration:underline;
}
a:hover{text-decoration:none;}
a[target="_blank"]{
	padding-left:20px;
	background:url(/img/common/icon_popup.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;
	text-decoration:none !important;
}
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:1101px) and (max-width:1220px){
/*----- header -----*/
.logo_link,.logo_img{max-width:180px;}
.menu_item{margin:0 12px;}
.menu_rent a{width:140px;}

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

}

@media screen and (min-width:1025px) and (max-width:1100px){
/*----- header -----*/
.logo_link,.logo_img{max-width:180px;}
#menu{justify-content:flex-end;padding-right:130px;}
.menu_item{margin:0 10px !important;}
.menu_rent a{width:120px;}

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

}

@media screen and (max-width:1024px){
/*----- header -----*/
#header_area{padding:0;height:54px;}
.is_show #header_area{border-bottom:1px solid #ddd;}
#logo{
	position:relative;
	left:auto;
	top:auto;
	padding:15px 0 15px 30px;
}
.logo_link,.logo_img{max-width:177px;}
#toggle{display:block;position:absolute;right:0;top:0;z-index:10;}
.toggle_btn{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	border:none;
	background:none;
	width:89px;
	height:54px;
	font-size:0;
	text-decoration:none;
	cursor:pointer;
}
.toggle_txt{
	position:relative;
	display:block;
	width:69px;
	height:54px;
}
.toggle_btn::before, .toggle_btn::after, .toggle_txt::before{
	content:'';
	display:block;
	position:absolute;
	z-index:10;
	left:0;
	right:0;
	margin:auto;
	width:29px;
	height:2px;
	background:#02687F;
	transition:all 0.3s;
}
.toggle_btn::before{top:18px;}
.toggle_btn::after{top:32px;}
.toggle_txt::before{top:25px;}
.toggle_btn.open::before{
	top:26px;
	transform:rotate(150deg);
}
.toggle_btn.open::after{
	top:26px;
	transform:rotate(-150deg);
}
.open .toggle_txt::before{
	opacity:0;
	visibility:hidden;
}
.menu_dis{display:none !important;}
#menu{
	display:block;
	position:fixed;
	z-index:50;
	top:54px;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	height:calc(100% - 54px);
	background:#fff;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
}
.menu_list{
	display:block;
	margin:0;
}
.menu_item{
	margin:0 !important;
	border-bottom:1px solid #ddd;
}
.menu_link{
	padding:18px 50px 11px 30px;
	background:url(/img/common/arrow_r_green.svg) right 30px center no-repeat;
	font-size:1.4rem;
	letter-spacing:1.4px;
}
.menu_link span{padding-bottom:4px;}
.menu_link span::after{height:1px;}
.has_child .menu_link{background:none;}
.menu_link span{display:inline-block;height:auto;}
.has_child .menu_link span{padding-right:0;}
.has_child .menu_link::before,.has_child .menu_link::after{right:34px;width:13px;}
.is-open .menu_link::after{transform:translateY(0);}
.menu_child_list{
	display:none;
	opacity:1;
	position:relative;
	top:auto;
	background:#F7F7F5;
	border-top:1px solid #ddd;
	width:auto;
	padding:0 30px;
	box-shadow:none;
	transform:none;
	visibility:visible;
}
.menu_child_item_p{border-bottom:1px solid #ddd;margin:0 !important;display:block;}
.menu_child_item{margin:0 0 0 20px !important;border-bottom:1px solid #ddd;padding:0;}
.menu_child_item::before{display:none;}
.menu_child_item:last-child{border-bottom:none;}
.menu_child_link{
	display:block;
	padding:17px 40px 14px 0;
	background:url(/img/common/arrow_r_green.svg) right center no-repeat;
}
.menu_rent{
	position:relative;
	right:auto;
	top:auto;
	padding:30px;
}
.menu_rent a{
	width:100%;
	height:50px;
	margin:auto;
}


/*----- footer -----*/
.footer_list{
	grid-gap:20px;
	grid-template-columns:repeat(auto-fit, calc((100% - 80px) / 5));
}
.footer_info .sp_size{display:inline !important;}

}

@media screen and (max-width:900px){
.return_btn{
	right:10px;
	bottom:10px;
	width:45px;
	height:45px;
}
.return_btn::after{
	top:8px;
	width:12px;
	height:12px;
}
.return_btn.pos_end{bottom:-22px;}
.footer_area{padding-top:60px;}
.f_logo_link,.f_logo_img{max-width:295px;}
.footer_info{padding:38px 0 40px;}
.footer_info_txt_in{margin:21px auto 0;}
.footer_info_txt_in address{
	line-height:1.7;
	margin-top:10px;
}
.footer_info_contact{padding:0 30px;}
.footer_info_contact p strong{font-size:1.6rem;}
.footer_contact_tel{
	font-size:1.7rem;
	margin:11px 0 13px;
}
.footer_contact_tel a{
	font-size:2.9rem;
	letter-spacing:1.45px;
}
.footer_info_contact p{font-size:1.3rem;}
.link_btn_contact{
	font-size:1.6rem;
	letter-spacing:1.6px;
	margin-top:24px;
}
.footer_list{display:block;margin-top:28px;}
.footer_list_item{margin:0 0 11px;}
.footer_list_link{
	font-size:1.4rem;
	letter-spacing:1.4px;
}
.footer_list_link span{padding:12px 16px 11px 0;}
.footer_child_list{padding:27px 20px 12px;}
.footer_child_item_p{margin:0 0 17px;}
.footer_child_link{
	font-size:1.3rem;
	letter-spacing:1.3px;
}
.footer_child_item{margin:0 0 18px;}
.footer_b{
	display:block;
	padding:0;
}
.footer_sub_list{
	display:block;
	padding:0;
	margin:26px 0 38px;
}
.footer_sub_item{margin:15px 0;}
.copyright{
	padding:20px 20px 18px;
	text-align:center;
	border-top:1px solid rgba(255,255,255,0.3);
	margin:0 -30px;
}
.copy_txt{
	font-size:1.1rem;
	letter-spacing:1.1px;
}
.tab_size{display:inline !important;}
}


@media screen and (max-width:767px){
#logo{padding:15px 0 15px 20px;}
.toggle_btn{
	width:69px;
	height:54px;
}
.menu_child_list{padding:0 20px;}
.menu_link{
	padding:16px 50px 13px 20px;
	background:url(/img/common/arrow_r_green.svg) right 20px center no-repeat;
}
.menu_link span{display:inline-block;height:auto;}
.has_child .menu_link::before,.has_child .menu_link::after{right:23px;width:13px;}
.menu_child_link{
	padding:16px 40px 14px 0;
	background:url(/img/common/arrow_r_green.svg) right center no-repeat;
}
.menu_rent{padding:30px 20px;}

.pc_size{display:none !important;}
.tab_size{display:none !important;}
.sp_size{display:block !important;}

/*----- footer -----*/
.footer_area{
	padding:60px 20px 0;
}
.footer_info{
	display:block;
	padding:0 20px;
}
.footer_info_txt{
	width:auto;
	padding:40px 0 20px;
}
.footer_info_txt_in{
	text-align:center;
	margin:auto;
}
.f_logo_link,.f_logo_img{
	margin:auto;
}
.footer_info_txt_in address{
	line-height:1.75;
	margin-top:14px;
	white-space:inherit;
	text-align:left;
}
.footer_info_contact{
	width:auto;
	padding:26px 0 30px;
}
.footer_info_txt::before{
	width:100%;
	height:1px;
	top:auto;
	bottom:0;
}
.footer_info_contact p strong{
	font-size:1.6rem;
}
.footer_contact_tel{
	letter-spacing:0.85px;
	font-size:1.7rem;
	margin:9px 0 12px;
}
.footer_contact_tel a{
	font-size:2.9rem;
	text-decoration:underline !important;
}
.footer_contact_tel a:hover{text-decoration:none !important;}
.link_btn_contact{padding:22px 20px;}
.footer_info_contact p{font-size:1.3rem;}
.footer_info_contact p span{font-size:1.2rem;}

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

}


@media screen and (max-width:599px){
.footer_address_tel{display:block;margin-right:0;}
}

/*----- 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 -----*/