@charset "utf-8";
/*
	Last Update:2022/02/02
	Auther: iw
*/
/*===================================================================
	layout
===================================================================*/
a:link { color:#444; }
a:visited { color:#555; }

@media (max-width: 991px){
	.wrapper, .wrapper-t { padding-top:50px; }
	.wrapper, .wrapper-b { padding-bottom:50px; }
}
@media (min-width: 992px){
	.wrapper, .wrapper-t { padding-top:70px; }
	.wrapper, .wrapper-b { padding-bottom:70px; }
}

.center { max-width:1100px; }
.center2 { max-width:900px; }
	@media (max-width:1130px){
		.center { padding-left:15px; padding-right:15px; }
	}
	@media (max-width:930px){
		.center2 { padding-left:15px; padding-right:15px; }
	}


/*===================================================================
	#layout
===================================================================*/
#head { position:relative; top:0; left:0; width:100%; z-index:1000; background:#fff; }
#head a { text-decoration:none; }
#head .head_wrap { text-align:left; display:table; height:100%; width:100%; }
#head .head_wrap > * { display:table-cell; vertical-align:middle; }
#head .site_logo h1 { font-size:12px; margin-bottom:10px; }
#head .site_logo a { display:block; }
	@media(max-width: 991px){
		#base { padding-top:70px; }
		#head { position:fixed; height:70px; }
		#head.fixed { box-shadow:0 5px 5px rgba(0,0,0,0.3); }
		#head .site_logo { padding:10px 0 10px 5px; }
		#head .site_logo h1 { display:none; }
		#head .site_logo a { width:120px; }
	}
	@media (min-width: 992px){
		#head .site_logo { padding:10px 0 10px 15px; }
		#head .site_logo > * { width:320px; }
	}

#head_navi {}
#head_navi a { display:block; }
#head_navi .contact_navi > ul > li > a { color:#fff; text-align:center; }
#head_navi .contact_navi > ul > li > a > span { background-repeat:no-repeat; }
#head_navi .contact_navi .request { background-image:url(../image/icon/icon_book-w.png); }
#head_navi .contact_navi .mail { background-image:url(../image/icon/icon_mail-w.png); }
#head_navi li:not(.on) .sub_menu { display:none !important; }
body.pc #head_navi .main_navi > ul > li > a:hover,
body.pc #head_navi .sub_navi a:hover { color:#0046a4; }
	@media(max-width: 991px){
		#base:not(.open) #head_navi { display:none; }
		#base.open #head_navi { display:block !important; }
		#head_navi { position:fixed; top:70px; left:0; width:100%; background:#fff; height:calc(100vh - 70px); overflow-y:auto; overflow-x:hidden; }
		#head_navi .main_navi > ul > li,
		#head_navi .sub_navi > ul > li { border-top:1px solid #ccc; }
		#head_navi .main_navi > ul > li > a,
		#head_navi .sub_navi > ul > li > a,
		#head_navi .contact_navi > ul > li > a { padding:15px; }
		#head_navi .contact_navi > ul > li > a > span { display:inline-block; background-position:left center; background-size:20px auto; padding:0 0 0 30px; }
	}
	@media (min-width: 576px) and (max-width: 991px){
		#head_navi .sub_menu .unit dd { font-size:12px; }
		#header_product_category_list { margin-left:-5px; margin-right:-5px; }
		#header_product_category_list > * { padding-left:5px; padding-right:5px; }
	}
	@media (min-width: 992px){
		#head_navi .head_navi_wrap { display:table; width:100%; height:100%; max-width:1050px; margin:0 0 0 auto; }
		#head_navi .head_navi_wrap > * { display:table-cell; }
		#head_navi .main_navi { vertical-align:bottom; }
		#head_navi .main_navi > ul { display:table; }
		#head_navi .main_navi > ul > li { display:table-cell; padding:20px 0; border-bottom:3px solid #fff; }
		#head_navi .main_navi > ul > li > a { color:#354056; font-weight:bold; line-height:100%; border-right:1px solid #ddd; }
		#head_navi .main_navi > ul > li:first-child > a { border-left:1px solid #ddd; }
		#head_navi .main_navi > ul > li.on { border-bottom:3px solid #0046a4; }
		#head_navi .sub_navi { vertical-align:bottom; }
		#head_navi .sub_navi > ul { display:table; }
		#head_navi .sub_navi > ul > li { display:table-cell; }
		#head_navi .sub_navi > ul > li a { color:#354056; line-height:100%; border-bottom:3px solid #fff; }
		#head_navi .contact_navi > ul { display:table; width:100%; height:100%; }
		#head_navi .contact_navi > ul > li { display:table-cell; width:50%; }
		#head_navi .contact_navi > ul > li > a { padding:25px 0 0; }
		#head_navi .contact_navi > ul > li > a > span { display:block; padding:25px 0 0; background-position:center top; background-size:auto 20px; }
	}
	@media (min-width: 992px) and (max-width:1199px){
		#head_navi .head_navi_wrap { font-size:14px; }
		#head_navi .main_navi > ul > li > a { padding:0 15px; }
		#head_navi .sub_navi > ul > li { padding:20px 10px; }
		#head_navi .contact_navi { width:210px; }
		#head_navi .contact_navi > ul > li > a > span { font-size:14px; }
	}
	@media (min-width:1200px){
		#head_navi .main_navi > ul > li > a { padding:0 30px; }
		#head_navi .sub_navi > ul > li { padding:20px 20px; }
		#head_navi .contact_navi { width:230px; }
	}

#head_navi .sub_menu .unit dt { font-weight:bold; font-size:1.15em; border-bottom:1px solid #ddd; }
#head_navi .sub_menu .unit dt .sub { font-weight:normal; font-size:12px; margin-left:15px; }
#head_navi .sub_menu .unit dd a { padding:12px 15px; background:#fff url(../image/icon/arrow1-rg.png) no-repeat calc(100% - 10px) center / auto 10px; }
	@media (max-width: 767px){
		#head_navi .sub_menu { border-top:1px solid #ccc; }
		#head_navi .sub_menu .center { padding:0; }
		#head_navi .sub_menu .link_unit a { padding:30px; }
		#head_navi .sub_menu .link_unit a .button { padding:15px 0; }
		#head_navi .sub_menu .row > .col-xs-4:not(:last-child) .unit dl { margin-bottom:20px; }
		#head_navi .sub_menu .unit dt { padding:15px 0 10px 15px; }
		#head_navi .sub_menu .unit dd { border-bottom:1px solid #ddd; }
		#head_navi .sub_menu .unit dd a { background-color:#fcfcfc; }
	}
	@media (min-width: 768px){
		#head_navi .sub_menu { background:rgba(239,239,239,0.9); text-align:left; padding:0 0 20px; }
		#head_navi .sub_menu .link_unit { margin-bottom:30px; }
		#head_navi .sub_menu .unit dt { padding:0 0 10px; }
		#head_navi .sub_menu .unit dd { margin-top:10px; }
		body.pc #head_navi .sub_menu .unit dd a:hover { color:#0046a4; }
	}
	@media (min-width: 768px) and (max-width: 991px){
		#head_navi .sub_menu .unit dd a { padding:12px 12px 12px 8px; background-position:calc(100% - 6px) center; }
	}
	@media (min-width: 992px){
		#head_navi .sub_menu { position:absolute; top:100%; left:0; width:100%; padding:50px 0; }
	}

#btn_open { text-align:right; }
#btn_open a { display:inline-block; padding:5px 15px; }
	@media(max-width: 991px){
		#base.open #btn_open a { background:url(../image/layout/btn_close.png) no-repeat center center / contain; }
		#base.open #btn_open img { opacity:0; }
	}
	@media (min-width: 992px){
		#btn_open { display:none !important; }
	}

#foot_navi { padding:50px 0; background:#314252 url(../image/layout/foot_navi_back.jpg) no-repeat center center / cover; color:#fff; }
#foot_navi a { color:#fff; }
#foot_navi h3,
#foot_navi dt { font-weight:bold; }
#foot_navi h3 + dl:before { content:""; display:block; height:1px; width:20px; border-top:2px solid #fff; margin:20px 0; }
#foot_navi h3 + h3,
#foot_navi dl + h3 { margin-top:35px; }
#foot_navi dd { font-size:14px; margin-top:10px; }
#foot_navi dd:before { content:"-"; margin-right:10px; }
#foot_navi dd + dt { margin-top:25px; }
body.pc #foot_navi dl dd a:hover { text-decoration:underline; }
	@media (max-width: 767px){
		#foot_navi { display:none; }
	}
	@media (min-width: 768px) and (max-width: 991px){
		#foot_navi { font-size:12px; }
	}


#foot .center { text-align:center; }
#foot .site_logo { margin-bottom:20px; }
	@media (max-width: 767px){
		#foot { padding:30px 0; }
	}
	@media (min-width: 768px){
		#foot { padding:50px 0; }
	}

#foot_license { border-top:1px solid #ddd; }
#foot_license figcaption { font-size:12px; }
	@media (max-width: 767px){
		#foot_license { padding:30px 0; }
	}
	@media (min-width: 768px){
		#foot_license { padding:50px 0; }
	}

#foot_sub_navi { font-size:12px; background:#314252 url(../image/layout/copyright_back.jpg) no-repeat center center / cover; color:#fff; }
#foot_sub_navi a { color:#fff; }
body.pc #foot_sub_navi a:hover { text-decoration:underline; }
	@media (max-width: 767px){
		#foot_sub_navi { padding:20px 0; }
		#foot_sub_navi ul { margin:0 auto; }
		#foot_sub_navi li { text-align:center; }
		#copyright { font-size:11px; text-align:center; margin-bottom:10px; }
	}
	@media (min-width: 768px){
		#foot_sub_navi { padding:30px 0; }
		#foot_sub_navi ul { display:table; margin:0 0 0 auto; }
		#foot_sub_navi li { display:table-cell; }
		#foot_sub_navi ul > li:not(:first-child) { padding-left:20px; }
	}

#pagetop { position:fixed; }
	@media (max-width: 575px){
		#pagetop { right:10px; bottom:10px; }
		#pagetop img { width:40px; }
	}
	@media (min-width: 576px){
		#pagetop { right:30px; bottom:30px; }
	}


/*===================================================================
	#page
===================================================================*/
#page_title { position:relative; }
#page_title .img_back { max-height:330px; }
#page_title .page_title_wrap { position:absolute; left:0; top:50%; width:100%; transform:translateY(-50%); -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); color:#fff; }
#page_title .en2 { font-weight:400; text-align:center; line-height:120%; }
#page_title h2 { font-weight:bold; text-align:center; }
	@media(max-width: 575px){
		#page_title .img_back { height:35vw; }
		#page_title .en2 { font-size:1.75em; }
		#page_title h2 { font-size:1em; }
	}
	@media (min-width: 576px){
		#page_title .img_back { height:24vw; }
		#page_title .en2 { font-size:2.75em; letter-spacing:6px; }
		#page_title h2 { font-size:1.25em; }
	}

#pankuzu { font-size:13px; padding:15px 0 20px; color:#999; }
#pankuzu a { color:#333; text-decoration:none; }
#pankuzu ul { display:table; }
#pankuzu ul > li { display:table-cell; line-height:100%; vertical-align:middle; }
#pankuzu ul > li > *,
#pankuzu ul > li > *:before { display:inline-block; vertical-align:text-bottom; line-height:100%; }
#pankuzu ul > li:not(:first-child) > *:before { content:"／"; color:#ccc; font-size:24px; height:24px; margin:0 5px; }
#pankuzu ul > li:first-child > *:before { content:""; width:14px; margin:0 8px 0 0; height:24px; background:url(../image/icon/icon_home.png) no-repeat left 7px / contain; }
body.pc #pankuzu a:hover { text-decoration:underline; }
	@media (max-width: 575px){
		#pankuzu { display:none; }
	}


/*===================================================================
	#news
===================================================================*/
.tag { display:inline-block; line-height:100%; color:#fff; padding:5px 10px; background:#000; font-size:12px; }
.info_unit { margin-bottom:40px; }
.info_unit .text_wrap { padding:15px 15px 25px; }
.info_unit .meta { margin-bottom:10px; }
.info_unit .meta .date { display:block; }
.info_unit .meta .tag + .date { margin-top:10px; }
.info_unit .title { font-weight:bold; line-height:130%; }
.info_unit .tag._c1 { background:#8F1C38; }
.info_unit .tag._c2 { background:#000; }
.info_unit .tag._c3 { background:#0046a4; }

.info_list { border-top:1px solid #ddd; }
.info_list a { position:relative; display:block; text-decoration:none !important; color:#333 !important; }
.info_list dl { width:100%; }
.info_list .tag { margin-left:25px; }
.info_list .date { font-size:0.9em; color:#999; }
body.pc .info_list a:hover dd { text-decoration:underline; color:#D91B0C; }
	@media(max-width: 575px){
		.info_list dt { padding:10px 0 0; }
		.info_list dd { padding:5px 0 10px; border-bottom:1px solid #ddd; }
	}
	@media(min-width: 576px){
		.info_list dl { display:table; }
		.info_list dl > * { display:table-cell; vertical-align:top; border-bottom:1px solid #ddd; padding:20px 0; }
		.info_list dl dt { width:200px; }
	}

#news_category {}
#news_category h5:after { content:""; width:50px; height:1px; display:inline-block; border-top:1px solid #ccc; margin:0 20px; vertical-align:middle; }
#news_category ul > li { display:inline-block; margin-right:15px; }
#news_category ul > li a { display:block; border-radius:50px; padding:3px 20px; text-align:center; }
#news_category ul > li a.active { background:#000; color:#fff; }
	@media(min-width: 576px){
		#news_category .center { display:table; width:100%; }
		#news_category .center > * { display:table-cell; vertical-align:top; }
		#news_category h5 { width:180px; }
		#news_category ul > li a { min-width:100px; }
	}



/*===================================================================
	common
===================================================================*/
.img_back { background-position:center center; background-repeat:no-repeat; background-size:cover; overflow:hidden; line-height:1px; }
.img_back > img { visibility:hidden; width:1px; height:1px; }
.img_rect { padding-top:65%; }
.img_sq { padding-top:100%; }

.parallax,
.parallax:before,
.parallax:after { transition:opacity .7s, transform .7s, left .7s, right .7s; }
.parallax[data-parallax-in="vertical"],
.parallax[data-parallax-in="vertical2"],
.parallax[data-parallax-in="vertical3"] { opacity:1; transform:translateY(0); -webkit-transform:translateY(0); -ms-transform:translateY(0); }
.parallax[data-parallax-in="vertical"]:not(.parallax_on),
.parallax[data-parallax-in="vertical2"]:not(.parallax_on),
.parallax[data-parallax-in="vertical3"]:not(.parallax_on) { opacity:0 !important; }
.parallax[data-parallax-in="vertical"]:not(.parallax_on)  { transform:translateY(30px); -webkit-transform:translateY(30px); -ms-transform:translateY(30px); }
.parallax[data-parallax-in="vertical2"]:not(.parallax_on) { transform:translateY(60px); -webkit-transform:translateY(60px); -ms-transform:translateY(60px); }
.parallax[data-parallax-in="vertical3"]:not(.parallax_on) { transform:translateY(90px); -webkit-transform:translateY(90px); -ms-transform:translateY(90px); }
.parallax[data-parallax-in="left"] { position:relative; left:0; }
.parallax[data-parallax-in="left"]:not(.parallax_on) { left:-100vw; }
.parallax[data-parallax-in="right"] { position:relative; right:0; }
.parallax[data-parallax-in="right"]:not(.parallax_on) { right:-100vw; }

@media (max-width: 767px){
	.sp_table_wrap { overflow-x:auto; width:100%; white-space:nowrap; }
	.sp_table_wrap::-webkit-scrollbar { height:10px; }
	.sp_table_wrap::-webkit-scrollbar-track { background:#F1F1F1; }
	.sp_table_wrap::-webkit-scrollbar-thumb { background:#BCBCBC; }
	.sp_table_wrap table { width:100%; }
	.sp_table_wrap table { font-size:13px !important; -webkit-text-size-adjust:100%; -moz-text-size-adjust:none; -ms-text-size-adjust:100%; text-size-adjust:100%; }
}
