@charset "utf-8";

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

#wrap{overflow:hidden;}

.sp_size{display:none !important;}


/*----- header -----*/
#header_wrap{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	padding:0 15px;
	height:95px;
	top:0;
	left:0;
	position:fixed;
	z-index:1000;
	background:#fff;
	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{
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:15px 20px;
	height:95px;
	position:relative;
	border-bottom:1px solid #ddd;
}
.logo{
	position:absolute;
	left:5px;
	top:calc(50% - 27.5px);
}
.logo_link, .logo_img{
	display:block;
	width:47px;
	height:55px;
}
#toggle{display:none;}
#menu{
	display:flex;
	align-items:center;
}
.menu_list{
	display:flex;
	gap:30px;
	padding:0;
	margin:0;
}
.menu_item{
	list-style:none;
	margin:0;
}
.menu_link{
	position:relative;
	display:block;
	height:95px;
	line-height:95px;
	font-size:1.5rem;
	letter-spacing:0.75px;
	color:#222 !important;
	font-weight:500;
	text-decoration:none;
	transition:color 0.3s;
}
.on .menu_link{color:#007BBA !important;}
.menu_link::after{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:3px;
	background:#007BBA;
	transition:width 0.3s;
}
.on .menu_link::after{width:100%;}
.menu_sub_list{
	position:absolute;
	right:15px;
	display:flex;
	top:auto;
	bottom:auto;
	margin:auto;
	margin:0;
	padding:0;
	gap:26px;
}
.menu_sub_item{
	list-style:none;
	margin:0;
}
.menu_sub_link{
	font-size:1.4rem;
	letter-spacing:0.7px;
	color:#222 !important;
	text-decoration:none !important;
	transition:color 0.3s;
}
.menu_sub_link:hover{color:#007BBA !important;}


/*----- footer -----*/
#footer_area{
	border-top:1px solid #ddd;
	margin:0 15px;
}
#footer_area_in{
	max-width: 1030px;
	padding: 40px 15px 30px;
	margin: auto;
}
.footer_area_top{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 29px;
}
#footer_logo{
	width: 140px;
	height: auto;
}
.return_btn{
	display:block;
	text-decoration: none;
	font-size:1.1rem;
	letter-spacing:0.55px;
	color:#222 !important;
	transition:color 0.3s;
}
.return_btn:hover{color:#007BBA !important;}
.return_txt{
	padding: 0 8px 0 22px;
	background: url(/img/common/arrow_t_blue.svg) no-repeat bottom 2px left 9px / 6px;
}
.footer_area_bottom{
	display: flex;
	align-items: end;
	justify-content: space-between;
}
.footer_area_menue{display:flex;}
.f_menu_list{
	margin:0 35px 0 0;
	padding:0;
}
.f_menu_item{list-style:none;}
.f_menu_item:not(:last-child){margin-bottom:13px;}
.f_menu_link{
	font-size: 1.5rem;
	letter-spacing: 0.75px;
	text-decoration: none;
	color: #222 !important;
	transition:color 0.3s;
}
.f_menu_link:hover{color:#007BBA !important;}
.f_child_list{
	list-style:none;
	margin: 5px 0 0 7px;
	padding: 0;
}
.f_child_item{
	list-style:none;
	margin-bottom: 6px;
}
.f_child_link{
	font-size: 1.4rem;
	letter-spacing: 0.7px;
	text-decoration: none;
	color: #222 !important;
	position:relative;
	padding-left: 13px;
	transition:color 0.3s;
}
.f_child_link::before{
	position:absolute;
	content:'・';
	top:0;
	left:0;
	bottom:0;
	margin:auto;
}
.f_child_link:hover{color:#007BBA !important;}
#footer_privacy{
	width:70px;
	height:auto;
	margin-bottom:10px;
}

#footer_sub{
	border-top:1px solid #ddd;
	margin:0 15px;
}
#footer_sub_in{
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1030px;
	padding: 19px 15px;
	margin: auto;
}
.f_sub_list{
	display: flex;
	gap: 20px;
	margin: 0;
	padding: 0;
}
.f_sub_item{
	list-style:none;
	margin: 0;
}
.f_sub_link{
	font-size: 1.3rem;
	letter-spacing: 0.65px;
	color: #222 !important;
	text-decoration: none;
	transition:color 0.3s;
}
.f_sub_link:hover{color:#007BBA !important;}
.copyright{
	font-size: 1.2rem;
	letter-spacing: 0.6px;
	color: #757575;
}
#footer_sub_privacy{display:none;}


/*----- main -----*/
a{
	color:#007BBA;
	text-decoration:underline;
}
a:visited{color:#9E088F;}
a[target="_blank"]{
	padding-right:20px;
	background:url(/img/common/popup.svg) no-repeat center right 2px;
}
a.non[target="_blank"]{
	padding-left:0;
	background:none;
}
a[href$=".doc"], a[href$=".docx"]{
	padding-right:24px;
	background:url(/img/common/icon_word.svg) no-repeat center right 2px;
}
a[href$=".xls"], a[href$=".xlsx"]{
	padding-right:24px;
	background:url(/img/common/icon_excel.svg) no-repeat center right 2px;
}
a[href$=".pdf"]{
	padding-right:24px;
	background:url(/img/common/icon_pdf.svg) no-repeat center right 2px;
}
a.none[href$=".pdf"]{
	padding-right:0;
	background:none;
}
[href^="tel:"]{
	color:#222 !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;}

a:hover{text-decoration:none;}

@media (hover:hover){

.menu_link:hover{color:#007BBA !important;}
.menu_link:hover::after{width:100%;}
.modal_open:hover{opacity:0.5;}

}


@media screen and (max-width:900px){
body{font-size:1.5rem;letter-spacing:0.75px;}
#header_wrap.scroll.is_show{background:#fff;}
#header_wrap{
	height:60px;
	padding:0 10px;
}
#header_area{
	height:60px;
	padding:0;
}
.logo{top:calc(50% - 18.5px);}
.logo_link, .logo_img{width:31px;height:37px;}
.menu_link{font-size:1.3rem;letter-spacing:0.65px;height:60px;line-height:60px;}
.menu_sub_list{right:10px;}
.menu_sub_link{font-size:1.2rem;letter-spacing:0.6px;}

#footer_sub_in{padding:19px 5px 24px;}
.f_menu_link{
	font-size:1.4rem;
	letter-spacing:0.7px;
}
.f_child_link{
	font-size:1.3rem;
	letter-spacing:0.65px;
}
.f_sub_link{
	font-size:1.2rem;
	letter-spacing:0.6px;
}
#footer_privacy{width:80px;margin-bottom:0;}
#footer_area{margin:0 10px;}
#footer_area_in{padding:30px 10px;}

}


@media screen and (max-width:767px){
body{font-size:1.4rem;letter-spacing:0.7px;}
#wrap.fixed{
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
}

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


/*----- header -----*/
#header_wrap.scroll.is_show{background:#fff;}
#header_wrap{
	height:60px;
	padding:0 10px;
}
#header_area{
	height:60px;
	justify-content:flex-end;
	padding:0;
}
.logo{top:calc(50% - 18.5px);}
.logo_link, .logo_img{width:31px;height:37px;}


#toggle{display:block;position:absolute;top:0;right:-10px;width:60px;height:60px;z-index:1001;}
.toggle_btn{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:60px;
	height:60px;
	font-size:0;
	background:none;
	border:none;
	border-radius:0;
	text-decoration:none;
	padding:0;
}
.toggle_txt{
	position:relative;
	display:block;
	width:60px;
	height:60px;
}
.toggle_btn::before, .toggle_btn::after, .toggle_txt::before{
	content:'';
	display:block;
	position:absolute;
	z-index:10;
	left:0;
	right:0;
	margin:auto;
	width:26px;
	height:1px;
	background:#222;
	transition:all 0.3s;
}
.toggle_btn::before{top:24px;}
.toggle_btn::after{top:36px;}
.toggle_txt::before{top:30px;}
.toggle_btn.open::before{
	top:30px;
	transform:rotate(135deg);
}
.toggle_btn.open::after{
	top:30px;
	transform:rotate(-135deg);
}
.open .toggle_txt::before{
	opacity:0;
	visibility:hidden;
}
#menu{
	display:block;
	position:fixed;
	z-index:50;
	top:60px;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	height:calc(100% - 60px);
	background:#fff;
	transition:all 0.3s;
}
.menu_dis{display:none !important;}
.menu_list{
	display:block;
	margin:0 20px;
}
.menu_item{
	margin:0;
	border-bottom:1px solid #ddd;
}
.menu_link,.menu_sub_link{
	display:block;
	height:auto;
	font-weight:500;
	line-height:52px;
	font-size:1.4rem;
	letter-spacing:0.7px;
}
.menu_link::after{display:none;}
.menu_sub_list{
	position:relative;
	right:auto;
	display:block;
	margin:0 20px;
}
.menu_sub_item{
	border-bottom:1px solid #ddd;
}

/*----- footer -----*/
#footer_area{margin:0 10px;}
#footer_area_in{padding:30px 10px 0;}
.footer_area_top{
	margin-bottom: 29px;
}
#footer_logo{
	width: 140px;
	height: auto;
}
.footer_area_bottom{
	display:block;
}
.footer_area_menue{display:block;}
.f_menu_list{margin:0;border-top:1px solid #ddd;}
.f_menu_item:not(:last-child),.f_child_item:not(:last-child){margin-bottom:0;border-bottom:1px solid #ddd;}

.f_menu_link,.f_child_link{
	display:block;
	padding: 15px 0;
	font-size: 1.3rem;
	letter-spacing: 0.65px;
}
.f_menu_link.has_child{border-bottom:1px solid #ddd;}
.f_child_link::before{top:auto;bottom:auto;left:5px;}
.f_child_list{
	list-style:none;
	margin: 5px 0 0 7px;
	padding: 0;
}
.f_child_item{
	margin-bottom:0;
}
.f_child_link{
	font-size: 1.2rem;
	letter-spacing: 0.6px;
	padding-left:20px;
}
#footer_privacy{display:none;}

#footer_sub{
	border-top:none;
	margin:0 10px;
}
#footer_sub_in{
	display:block;
	margin:0;
	padding:0;
}
.f_sub_list{
	padding:20px 0 0;
	display:block;
	margin:0 10px;
	border-top:1px solid #ddd;
}
.f_sub_item{margin-bottom:16px;}
.f_sub_link{
	font-size:1.2rem;
	letter-spacing: 0.6px;
}
#footer_sub_privacy{display:block;width:80px;margin:10px 10px 30px;}
.copyright{
	display:block;
	text-align:center;
	font-size:1.2rem;
	letter-spacing:0.6px;
	padding:20px 0 24px;
	border-top:1px solid #ddd;
}


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