@charset "utf-8";
/*
	Last Update: 2024/03/28
	Auther: yt
*/
/*===================================================================
	base layout
===================================================================*/
html { background:url(../image/layout/bg_1.jpg) repeat-y top center / 100% auto; }

.wrapper2, .wrapper2-t { padding-top:40px; }
.wrapper2, .wrapper2-b { padding-bottom:40px; }
@media (max-width: 767px){
	.wrapper, .wrapper-t { padding-top:60px; }
	.wrapper, .wrapper-b { padding-bottom:60px; }
}
@media (min-width: 768px){
	.wrapper, .wrapper-t { padding-top:80px; }
	.wrapper, .wrapper-b { padding-bottom:80px; }
}

.center { max-width:1300px; }
.center2 { max-width:1100px; }
.center3 { max-width:1000px; }
.center4 { max-width:640px; }
	@media (max-width:1340px){
		.center { padding-left:20px; padding-right:20px; }
	}
	@media (max-width:1140px){
		.center2 { padding-left:20px; padding-right:20px; }
	}
	@media (max-width:1040px){
		.center3 { padding-left:20px; padding-right:20px; }
	}
	@media (max-width:680px){
		.center4 { padding-left:20px; padding-right:20px; max-width:100%; }
	}

.indent { text-indent:-1em; padding-left:1em; }

.x-small { font-size:.8em; }
.small { font-size:.9em; }
.s-large { font-size:1.1em; }
.large { font-size:1.25em; }
.x-large { font-size:1.5em; }
.xx-large { font-size:2em; }

/*===================================================================
	color / font
===================================================================*/
:root {
	--c-dgreen:#535F4D;
	--c-green:#697562;
	--c-lgreen:#658D43;
	--c-ocher:#BCA65E;
	--c-ocher2:#D0B869;
	--c-brown:#BE7243;
	--c-red:#B43331;
	--c-beige:#FDF2E5;
	--c-white:#fff;
	--c-black:#414141;
	--c-gray:#dddddd;
}
html body { --line-height:1.6; }
html.wcacc_lineheight1 body { --line-height:2.0; }
html.wcacc_lineheight2 body { --line-height:2.5; }
html.wcacc_lineheight3 body { --line-height:3.5; }

.bg_dgreen { background-color:var(--c-dgreen) !important; }
.bg_green { background-color:var(--c-green) !important; }
.bg_lgreen { background-color:var(--c-lgreen) !important; }
.bg_ocher { background-color:var(--c-ocher) !important; }
.bg_ocher2 { background-color:var(--c-ocher2) !important; }
.bg_brown { background-color:var(--c-brown) !important; }
.bg_red { background-color:var(--c-red) !important; }
.bg_beige { background-color:var(--c-beige) !important; }
.bg_white { background-color:var(--c-white) !important; }
.bg_black { background-color:var(--c-black) !important; }
.bg_black { background-color:var(--c-gray) !important; }

.c_dgreen { color:var(--c-dgreen) !important; }
.c_green { color:var(--c-green) !important; }
.c_lgreen { color:var(--c-lgreen) !important; }
.c_ocher { color:var(--c-ocher) !important; }
.c_ocher2 { color:var(--c-ocher2) !important; }
.c_brown { color:var(--c-brown) !important; }
.c_red { color:var(--c-red) !important; }
.c_beige { color:var(--c-beige) !important; }
.c_white { color:var(--c-white) !important; }
.c_black { color:var(--c-black) !important; }
.c_black { color:var(--c-gray) !important; }

.en { font-family:'Montserrat', sans-serif; }

.fw_medium { font-weight:500; }

/*===================================================================
	common class
===================================================================*/
.need:not(._no) { border:1px solid #ff3a5f; background:#ff3a5f; color:#fff; }
.need._no { border:1px solid #ff3a5f; background-color:#fff; color:#ff3a5f; }
.error { background:#ffe1df; color:#ff453a; border:1px solid #ff453a; }

.list_pager ul { display:flex; align-items:center; justify-content:center; }
.list_pager ul li > * { border:1px solid transparent; width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; font-weight:bold; border-radius:40px; }
.list_pager ul li > a { text-decoration:none; }
.list_pager ul li > strong { color:var(--c-green); background:var(--c-white); }
.list_pager ul li > a[data-back],
.list_pager ul li > a[data-next] { border-color:#fff; background:no-repeat center center / 10px auto; display:block; }
.list_pager ul li > a[data-back] { background-image:url(../image/icon/arrow2-l-w.svg); }
.list_pager ul li > a[data-next] { background-image:url(../image/icon/arrow2-r-w.svg); }
body.pc .list_pager ul li > a:hover { background-color:var(--c-white); color:var(--c-green); }
.list_pager ul li > a[data-back]:hover { background-image:url(../image/icon/arrow2-l-g2.svg); }
.list_pager ul li > a[data-next]:hover { background-image:url(../image/icon/arrow2-r-g2.svg); }

.tel_wrap { text-align:center; }
.tel_wrap .tel_unit { font-weight:bold; }
.tel_wrap .tel_unit .tel { display:inline-block; line-height:100%; }
.tel_wrap .tel_time { font-size:0.9em; }
	@media (max-width: 575px){
		.tel_wrap { margin-bottom:10px; }
		.tel_wrap .tel_unit .tel { font-size:2em; }
	}
	@media (min-width: 576px){
		.tel_wrap .tel_unit .tel { font-size:2.25em; }
	}

.vertical_unit { margin-bottom:30px; padding:15px; }
.vertical_unit .photo { text-align:center; }
	@media (max-width: 575px){
		.vertical_unit .photo { margin-bottom:10px; }
		.vertical_unit .text { padding:10px 0; }
	}
	@media (min-width: 576px) and (max-width: 767px){
		.vertical_unit [class^="col-sm-"] .photo { margin-bottom:10px; }
	}

.holizontal_text { position:relative; }
	@media (max-width: 991px){
		.holizontal_text { padding:30px 20px 50px; }
	}
	@media (min-width: 992px){
		.holizontal_text._left { padding:0 40px 0 20px; }
		.holizontal_text._right { padding:0 20px 0 40px; }
	}

.hv_change_unit { margin-bottom:30px; padding:15px; }
	@media (max-width: 575px){
		.hv_change_unit { display:flex; align-items:top; }
		.hv_change_unit > * { display:inline-block; }
		.hv_change_unit .photo { width:40%; }
		.hv_change_unit .text { width:60%; padding:0 0 0 15px; }
	}
	@media (min-width: 576px){
		.hv_change_unit .photo { margin-bottom:20px; }
	}


.tbl_1 { width:100%; }
.tbl_1 > tbody > tr > * { border-bottom:1px solid var(--c-white); }
.tbl_1 > tbody > tr > th { padding:20px 30px; min-width:210px; font-size:1.1em; }
.tbl_1 > tbody > tr > td { padding:20px 30px 20px 0; }
	@media (max-width:767px) {
		.tbl_1.tbl_sp,
		.tbl_1.tbl_sp > tbody {}
		.tbl_1.tbl_sp > tbody > tr,
		.tbl_1.tbl_sp > tbody > tr > * { display:block; width:100%; }
		.tbl_1 > tbody > tr > th { padding:20px 10px 0; border-bottom:0; }
		.tbl_1 > tbody > tr > td { padding:10px 10px 20px; }
	}
	@media (max-width: 575px){
		.tbl_1:not(.tbl_sp) tr > * { padding:10px; }
	}

.tbl_2 { width:100%; }
.tbl_2 > tbody > tr:not(:last-child) > * { padding-bottom:10px; }
.tbl_2 > tbody > tr > th { width:140px; }
@media (max-width:767px) {
	.tbl_2 > tbody > tr > th { width:120px; }
	.tbl_1 .tbl_2:not(.tbl_sp) { white-space:wrap; }
}

.tbl_3 { width:100%; }
.tbl_3 tr > * { padding:10px 20px; border-bottom:1px dotted #A8A8A8; }
.tbl_3 tr > th { width:150px; padding-right:0; }
.tbl_3 tr > td { font-weight:500; }
@media (max-width:767px) {
	.tbl_3 tr > * { padding-left:10px; padding-right:10px; }
	.tbl_3 tr > th { width:100px; padding-right:0; }
}


.tbl_form { width:100%; }
.tbl_form tr > * { vertical-align:top; border-bottom:1px dotted rgba(255, 255, 255, 0.5); }
.tbl_form tr > th > div { position:relative; padding-right:60px; line-height:100%; }
.tbl_form tr > th .need { position:absolute; right:0; top:50%; transform:translateY(-50%); background:var(--c-red); border-color:var(--c-red); }
	@media (max-width: 575px){
		.tbl_form .birthday_wrap .row { margin-bottom:10px; }
	}
	@media (max-width: 767px){
		.tbl_form,
		.tbl_form tbody,
		.tbl_form tr,
		.tbl_form tr > * { display:block; }
		.tbl_form tr > th { padding:15px 10px; }
		.tbl_form tr > td { padding:10px 0 30px; }
		.tbl_form .birthday_wrap .row { max-width:300px; }
	}
	@media (min-width: 768px){
		.tbl_form tr > th { padding:30px 15px; }
		.tbl_form tr > td { padding:20px 15px; }
	}

.tbl_life { width:100%; }
.tbl_life thead tr > * { padding-bottom:20px; }
.tbl_life thead tr > *:not(:last-child) { padding-right:20px; }
.tbl_life thead tr th .category { padding:10px 25px; color:var(--c-white); font-weight:bold; font-size:1.25em; border-radius:25px; min-height:45px; display:flex; align-items:center; justify-content:center; border:2px solid var(--c-white); text-align:center; }
.tbl_life tbody tr th { width:140px; position:relative; }
.tbl_life tbody tr:not(:last-child) th::before { content:""; position:absolute; display:block; width:4px; height:100%; top:12px; background:#DEDEDE; opacity:.42; left:10px }
.tbl_life tbody tr > * { vertical-align:top; }
.tbl_life tbody tr:not(:last-child) > * { padding-bottom:20px; }
.tbl_life tbody tr > *:not(:last-child) { padding-right:20px; }
.tbl_life tbody tr th .time { font-weight:bold; font-size:1.25em; padding-left:40px; position:relative; min-height:45px; display:flex; align-items:center; }
.tbl_life tbody tr th .time::before { content:""; position:absolute; display:block; width:24px; height:24px; border-radius:24px; background:var(--c-ocher); left:0; top:50%; transform:translateY(-50%); }
.tbl_life tbody tr td .event { padding:10px 25px; background:var(--c-beige); color:var(--c-green); font-weight:bold; font-size:1.25em; border-radius:25px; min-height:45px; display:flex; align-items:center; }
@media (max-width:767px) {
	.tbl_life.tbl_sp tbody tr > *:not(:last-child) { padding-right:0; }
	.tbl_life tbody tr th { width:90px; }
	.tbl_life tbody tr th .time { padding-left:30px; font-size:1em; }
	.tbl_life tbody tr td .event { padding:10px 15px; font-size:1em; }
}

.varidate_btn { background:var(--c-red); color:#fff; font-weight:bold; border:0; padding:10px 20px; font-family:inherit; }
.varidate_btn .main { font-size:1.1em; }
.varidate_btn .sub { font-size:.9em; }

.input.required.default { border:2px solid #c40018; background:#fbe2e2; }

.radio_wrap { position:relative; display:inline-block; }
.radio_wrap + .radio_wrap { margin-left:5px; }
.radio_wrap input[type="radio"],
.radio_wrap input[type="checkbox"] { position:absolute; left:10px; top:50%; transform:translateY(-50%); margin:0; }
.radio_wrap span { display:inline-block; padding:6px 10px 6px 30px; border:1px solid #ddd; border-radius:10px; }
.radio_wrap input[type="radio"]:checked + span,
.radio_wrap input[type="checkbox"]:checked + span { background:#f2f2f7; }

.check_wrap { position:relative; display:block; }
.check_wrap + .check_wrap { margin-top:5px; }
.check_wrap input[type="radio"],
.check_wrap input[type="checkbox"] { position:absolute; left:10px; top:50%; transform:translateY(-50%); margin:0; }
.check_wrap span { display:inline-block; padding:4px 10px 4px 30px; border:1px solid #ddd; border-radius:10px; }
.check_wrap input[type="radio"]:checked + span,
.check_wrap input[type="checkbox"]:checked + span { background:#f2f2f7; }

.form_dl { display:table; width:100%; }
.form_dl + .form_dl { margin-top:10px; }
.form_dl > * { display:table-cell; vertical-align:top; }
.form_dl dt { font-weight:bold; width:120px; padding:8px 0 0; }

.form_privacy_area { max-height:150px; padding:20px 15px; overflow-y:auto; font-size:0.9em; border:1px solid #ddd; }
.form_privacy_title { font-size:1.15em; margin-bottom:5px; }
.form_privacy { padding:10px; text-align:center; }

.page_lead_wrap { display:flex; width:calc(100% + 45px); margin-right:-45px; align-items:center; }
.page_lead_wrap .text_wrap { width:40%; position:relative; padding-right:40px; padding-top:15px; }
.page_lead_wrap .text_wrap .title { font-size:1.75em; font-weight:bold; padding-bottom:40px; margin-bottom:40px; position:relative; }
.page_lead_wrap .text_wrap .title::before { content:""; width:140%; position:absolute; height:1px; background:#CBCBCB; bottom:0; left:0; }
.page_lead_wrap .text_wrap .comment { font-weight:500; line-height:2; }
.page_lead_wrap .image_wrap { width:60%; }
.page_lead_wrap .image_wrap .image { border-radius:10px; overflow:hidden; box-shadow:30px 30px 0 rgba(255,255,255,.8); }
@media (max-width:1200px) {
	.page_lead_wrap { width:100%; margin-right:0; }
	.page_lead_wrap .image_wrap .image { box-shadow:10px 10px 0 rgba(255,255,255,.8); border-radius:5px; }
	.page_lead_wrap .text_wrap { padding-right:20px; }
	.page_lead_wrap .text_wrap .title { font-size:1.75em; padding-bottom:20px; margin-bottom:20px; }
}
@media (max-width:991px) {
	.page_lead_wrap .text_wrap { width:50%; }
	.page_lead_wrap .image_wrap { width:50%; }
	.page_lead_wrap .text_wrap .title::before { width:120%; }
}
@media (max-width:767px) {
	.page_lead_wrap { flex-direction:column-reverse; }
	.page_lead_wrap > * { width:100%!important; }
	.page_lead_wrap .image_wrap .image { margin-bottom:20px; }
	.page_lead_wrap .text_wrap { padding-right:0; }
	.page_lead_wrap .text_wrap .title::before { width:calc(100% + 20px); }
}

.googlemap_wrap { position:relative; width:100%; height:0; padding-bottom:46.6%; }
.googlemap_wrap iframe { width:100%; height:100%; display:block; position:absolute; top:0; left:0; }
@media (max-width:767px) {
	.googlemap_wrap { padding-bottom:80%; }
}

.file_list .row { margin-bottom:-20px; }
.file_list .row > * { margin-bottom:20px; }
.file_list .row .unit { display:flex; background:var(--c-white); align-items:center; padding:15px 30px; border-radius:50px; height:100%; }
.file_list .row .unit .main { display:flex; min-height:28px; align-items:center; color:var(--c-black); font-weight:500; }
.file_list .row .unit .main._pdf { padding-left:30px; background:url(../image/icon/pdf.png) no-repeat center left / 22px auto; }
.file_list .row .unit .main._clone { padding-left:30px; background:url(../image/icon/clone-g.svg) no-repeat center left / 22px auto; }
@media (max-width:767px) {
	.file_list .row .unit { padding:10px 20px; }
}

.select_wrap { position:relative; display:inline-block; max-width:100%; }
.select_wrap::before { content:""; display:block; position:absolute; pointer-events:none; width:10px; height:7px; background:url(../image/icon/arrow2-b-g2.svg) no-repeat center center / cover; right:10px; top:50%; transform:translateY(-50%); }
.select_wrap select { appearance:none; -webkit-appearance:none; padding-right:25px; }
.select_wrap._small select { padding-top:8px; padding-bottom:8px; }

.news_list_search { margin-bottom:40px; }
.news_list_search ._top { display:flex; margin-bottom:20px; }
.news_list_search .label { width:100px; display:flex; align-items:center; }
.news_list_search .category_list { width:calc(100% - 100px); }
.news_list_search .category_list ul { display:flex; flex-wrap:wrap; width:calc(100% + 15px); margin-right:-15px; margin-bottom:-10px; }
.news_list_search .category_list ul li { padding-right:15px; padding-bottom:10px; }
.news_list_search .category_list ul li a { padding:2px 20px; border-radius:40px; text-align:center; font-weight:bold; border:1px solid var(--c-white); display:block; }
.news_list_search .category_list ul li a.active { background:var(--c-white); color:var(--c-green); }
.news_list_search ._bottom { display:flex; flex-wrap:wrap; align-items:flex-start; }
.news_list_search ._bottom > *:not(:last-child) { margin-right:20px; }
@media (max-width:767px) {
	.news_list_search ._top { flex-direction:column; }
	.news_list_search ._top > .label { margin-bottom:10px; }
	.news_list_search ._top > * { width:100%!important; }
	.news_list_search ._bottom { flex-direction:column; }
	.news_list_search ._bottom > *:not(:last-child) { margin-right:0; margin-bottom:20px; }
}

.news_list {}
.news_list .news_unit { padding-bottom:20px; border-bottom:1px dotted var(--c-white); margin-bottom:20px; display:flex; align-items:center; }
.news_list .news_unit .image_wrap { width:190px; }
.news_list .news_unit .image_wrap .image { border-radius:5px; overflow:hidden; }
.news_list .news_unit .image_wrap .img_back { padding-bottom:85.185%; }
.news_list .news_unit .text_wrap { width:calc(100% - 190px); padding-left:40px; }
.news_list .news_unit .text_wrap .title { font-weight:bold; font-size:1.2em; }
.news_list .news_unit:hover .text_wrap .title { text-decoration:underline; }
@media (max-width:991px) {
	.news_list .news_unit .text_wrap { padding-left:20px; }
}
@media (max-width:767px) {
	.news_list .news_unit .text_wrap { padding-left:10px; }
	.news_list .news_unit .text_wrap .title { font-size:1em; }
	.news_list .news_unit .image_wrap { width:80px; }
	.news_list .news_unit .text_wrap { width:calc(100% - 80px); }
}

.news_head { display:flex; align-items:center; flex-wrap:wrap; margin-bottom:20px; }
.news_head > *:not(:last-child) { margin-right:10px; }
.news_head > .tag { font-size:.8em; padding:5px 10px; border-radius:5px; background:var(--c-white); color:var(--c-green); }
@media (max-width:767px) {
	.news_head { margin-bottom:10px; }
}

.news_detail {}
.news_detail .title_wrap { padding-bottom:20px; margin-bottom:40px; border-bottom:1px solid #E5E5E5; }
.news_detail .title_wrap .title { font-weight:bold; font-size:1.5em; }

.contact_unit { background:rgba(255, 255, 255, 0.07); border-radius:3px; padding:20px 40px; display:flex; justify-content:center; margin-bottom:60px; }
.contact_unit > * { display:flex; align-items:center; justify-content:center; text-align:center; width:50%; padding:10px 20px; }
.contact_unit > ._left { border-right:1px solid #fff; }
.contact_unit .hl_contact_unit { font-weight:500; font-size:2em; letter-spacing:2px; text-indent:2px; }
.contact_unit .tel_wrap .tel { background:url(../image/icon/tel-w.svg) no-repeat center left / 25px auto; font-size:2.25em; margin-bottom:5px; display:inline-flex; min-height:32px; align-items:center; }
.contact_unit .tel_wrap > * { padding-left:30px; }
.contact_unit .tel_time { font-size:0.85em; padding-left:25px; }
@media (max-width:991px) {
	.contact_unit { flex-direction:column; padding:20px; }
	.contact_unit > * { width:100%; }
	.contact_unit > ._left { border-bottom:1px solid #fff; border-right:0; padding:0 0 20px; }
	.contact_unit > ._right { padding:20px 0 0; }
}
@media (max-width:767px) {
	.contact_unit { margin-bottom:20px; }
	.contact_unit .hl_contact_unit { font-size:1.5em; }
	.contact_unit .tel_wrap .tel { font-size:2em; background-size:18px auto; }
	.contact_unit .tel_wrap > * { padding-left:20px; }
}

.ul_1 li { padding-left:20px; position:relative; line-height:1.6; }
.ul_1 li::before { content:""; width:8px; height:8px; background:var(--c-ocher2); display:block; position:absolute; left:0; top:calc( (1em * var(--line-height)) / 2 ); transform:translateY(-50%); }

.service_box { background:url(../image/layout/bg_image1.jpg) repeat top left; padding:40px; color:var(--c-black); }
.service_box:not(:last-child) { margin-bottom:40px; }
.service_box .service_title { padding-bottom:15px; margin-bottom:15px; border-bottom:1px solid #9A9A9A; }
.service_box .service_title .title { font-size:1.75em; color:var(--c-dgreen); margin-bottom:10px; }
.service_box .service_title .tag_list { display:flex; flex-wrap:wrap; width:calc(100% + 5px); margin-right:-5px; align-items:center; }
.service_box .service_title .tag_list li { padding-right:5px; padding-bottom:5px; }
.service_box .service_title .tag_list li .tag { display:block; background:var(--c-dgreen); padding:5px 10px; border-radius:20px; font-weight:bold; color:var(--c-white); }
@media (max-width:767px) {
	.service_box .service_image { margin-bottom:20px; }
}
@media (max-width:991px) {
	.service_box { padding:40px 20px; }
}

.unit_list { counter-reset:unit_num; }
.unit_list .row { margin-bottom:-40px; }
.unit_list .row > * { margin-bottom:40px; }
.unit_list .unit_wrap { counter-increment:unit_num; position:relative; display:flex; flex-direction:column; height:100%; }
.unit_list .unit_wrap .unit_num { position:absolute; left:-10px; top:-10px; display:flex; background:var(--c-brown); width:50px; height:50px; border-radius:50px; font-size:1.5em; text-align:center; justify-content:center; align-items:center; z-index:1; color:var(--c-white); }
.unit_list .unit_wrap .unit_num::before { content:''counter(unit_num); font-family:inherit; letter-spacing:2px; text-indent:2px; font-weight:500; }
.unit_list .unit_wrap .image._icon { padding-top:20px; text-align:center; }
.unit_list .unit { border-radius:10px; overflow:hidden; background:var(--c-white); flex-grow:1; }
.unit_list .unit .text { padding:15px 20px; }
.unit_list .unit .text .title { text-align:center; font-size:1.25em; font-weight:bold; padding-bottom:10px; margin-bottom:10px; border-bottom:1px dashed #BEBEBE; }
.unit_list .unit .text .comment { line-height:1.4; font-weight:500; }

.wide_image img { width:100%; }

.guide_list .row { margin-bottom:-40px; }
.guide_list .row > * { margin-bottom:40px; }
.guide_list .guide_unit { background:url(../image/layout/bg_image1.jpg) repeat top left; padding:20px; border-radius:10px; height:100%; color:var(--c-black); font-weight:500; }
.guide_list .guide_unit .title { text-align:center; color:var(--c-green); font-weight:bold; font-size:1.5em; padding-bottom:20px; border-bottom:1px dotted #9A9A9A; margin-bottom:20px; }

.file_btn { display:block; background:var(--c-white); padding:15px 25px; border:2px solid var(--c-red); border-radius:40px; }
.file_btn .main { padding-left:35px; background:url(../image/icon/pdf.png) no-repeat left center / 22px auto; display:flex; align-items:center; color:var(--c-black); }

.flow_list { counter-reset:flow; }
.flow_list .flow_unit_wrap { counter-increment:flow; position:relative; }
.flow_list .flow_unit_wrap:not(:last-child) { margin-bottom:40px; }
.flow_list .flow_unit_wrap .unit_num { position:absolute; left:-10px; top:-10px; display:flex; background:var(--c-brown); width:50px; height:50px; border-radius:50px; font-size:1.5em; text-align:center; justify-content:center; align-items:center; z-index:1; color:var(--c-white); }
.flow_list .flow_unit_wrap .unit_num::before { content:'0'counter(flow); font-family:inherit; letter-spacing:2px; text-indent:2px; font-weight:500; }
.flow_list .flow_unit { background:url(../image/layout/bg_image1.jpg) repeat top left; padding:20px 60px; border-radius:10px; height:100%; color:var(--c-black); font-weight:500; display:flex; align-items:center; }
.flow_list .flow_unit ._left { width:100px; }
.flow_list .flow_unit ._right { width:calc(100% - 100px); padding-left:20px; }
.flow_list .flow_unit ._right .text .title { font-size:1.25em; padding-bottom:10px; margin-bottom:10px; border-bottom:1px dashed #BEBEBE; }
.flow_list .flow_unit ._right .text p { font-weight:500; }
@media (max-width:991px) {
	.flow_list .flow_unit { padding:20px; }
}
@media (max-width:767px) {
	.flow_list .flow_unit ._left { width:65px; }
	.flow_list .flow_unit ._right { width:calc(100% - 65px); padding-left:10px; }
}

.group_box { display:block; background:var(--c-white); border:1px solid var(--c-green); border-radius:3px; overflow:hidden; }
.group_box:not(:last-child) { margin-bottom:20px; }
.group_box dt { text-align:center; background:var(--c-green); color:var(--c-white); display:flex; align-items:center; justify-content:center; padding:5px; }
.group_box dt .main { font-weight:bold; color:var(--c-white); font-size:1.1em; }
.group_box dt .number { display:inline-flex; width:1.1em; height:1.1em; background:var(--c-white); color:var(--c-green); font-weight:1em; align-items:center; justify-content:center; border-radius:1.1em; font-weight:bold; margin-left:5px; }
.group_box dd { text-align:center; padding:10px 5px; font-weight:500; }

.fee_list .row { margin-bottom:-40px; }
.fee_list .row > * { margin-bottom:40px; }
.fee_list .fee_unit { padding:15px; background:url(../image/layout/bg_image1.jpg) repeat top left; border-radius:3px; color:var(--c-black); }
.fee_list .fee_unit .title { background:var(--c-green); color:var(--c-white); padding:10px; text-align:center; font-weight:bold; font-size:1.25em; margin-bottom:20px; border-radius:3px; }
.fee_list .fee_unit .tag { background:var(--c-dgreen); padding:5px 10px; border-radius:20px; font-weight:bold; color:var(--c-white); }

/*===================================================================
	button
===================================================================*/
.button._contact { border-radius:50px; width:400px; max-width:100%; font-weight:bold; }
.button._check,
.button._send,
.button._back { border-radius:40px; width:250px; max-width:100%; font-weight:bold; padding:15px 0; border:none; background:var(--c-white); color:var(--c-green); }
.button._back { background:var(--c-gray); color:var(--c-black); }
.button._zip { border-radius:30px; padding:11px 10px; border:none; font-size:0.9em; background:transparent; border:1px solid var(--c-white); margin-left:20px; }
.button[disabled] { opacity:.2; pointer-events:none; }
	@media (max-width: 575px){
		.button._contact { padding:15px; font-size:1.2em; }
	}
	@media (min-width: 576px){
		.button._contact { padding:20px; font-size:1.25em; }
	}

.button._type1 { background:var(--c-white); padding:20px 10px; text-align:center; border-radius:40px; width:320px; max-width:100%; }
.button._type1 .main { display:inline-block; font-weight:500; color:var(--c-black); font-size:1.25em; letter-spacing:1px; }
.button._type1 .main._mail { padding-left:30px; background:url(../image/icon/mail-bk.svg) no-repeat center left / 23px auto; }



/*===================================================================
	hl
===================================================================*/
.hl_1 { padding-left:25px; position:relative; display:flex; align-items:center; margin-bottom:40px; }
.hl_1::before { content:""; display:block; position:absolute; left:0; top:50%; transform:translateY(-50%); width:16px; height:16px; background:var(--c-white); opacity:.3; border-radius:16px; }
.hl_1 .main { font-weight:500; font-size:2.5em; letter-spacing:2px; }
.hl_1 .sub { padding-left:20px; font-weight:bold; font-size:1.25em; }
@media (max-width:767px) {
	.hl_1 { padding-left:18px; margin-bottom:20px; }
	.hl_1::before { width:12px; height:12px; }
	.hl_1 .main { font-size:1.75em; letter-spacing:1px; }
	.hl_1 .sub { padding-left:10px; font-size:1.1em; }
}

.hl_2 { padding-bottom:20px; margin-bottom:40px; text-align:center; position:relative; }
.hl_2::before { content:""; width:30px; height:2px; background:var(--c-white); bottom:0; left:50%; transform:translateX(-50%); display:block; position:absolute; }
.hl_2 .main { display:block; text-align:center; font-weight:500; font-size:2.5em; letter-spacing:2px; text-indent:2px; margin-bottom:20px; }
.hl_2 .sub { font-weight:bold; font-size:1.25em; }
@media (max-width:767px) {
	.hl_2 .main { font-size:2em; }
	.hl_2 .sub { font-size:1.1em; }
}


/*===================================================================
	layout
===================================================================*/
#head { position:fixed; top:0; left:0; width:100%; z-index:2000; display:flex; align-items:center; padding:0 20px; line-height:1; font-size:16px; height:100px; }
#head .head_navi_wrap #head_tel,
#head .head_navi_wrap #head_contact,
#head .head_navi_wrap #btn_open { filter:drop-shadow(0 0 2px rgba(0,0,0,.8)); }
#head * { line-height:inherit; font-size:inherit; }
#head .head_wrap { width:100%; position:relative; display:flex; align-items:center; justify-content:space-between; }
#head .head_wrap > * { display:inline-block; }
#head .site_logo { position:relative; max-width:calc(100% - 200px); }
#head .site_logo::before { content:""; width:100%; height:100%; border-radius:50%; background:#fff; display:block; position:absolute; left:0; top:0; filter:blur(36px); transform:translate(-10%, -10%); }
#head .site_logo a { display:inline-block; position:relative; z-index:1; filter:drop-shadow(0 0 4px #fff); max-width:100%; }
	@media (min-width:1200px){
		#head .site_logo a { padding:15px 0 10px 0; }
	}
	@media (min-width: 992px) and (max-width:1199px){
		#head .site_logo a { padding:15px 0 10px 0; width:250px; }
	}
	@media (max-width: 991px){
		#head,
		#head .head_wrap { height:80px; }
		#head .site_logo a { width:200px; }
	}

#head_contact { padding-right:15px; }
#head_contact .head_contact_btn { width:72px; height:72px; border:2px solid var(--c-white); display:flex; align-items:center; justify-content:center; border-radius:72px; }
@media (max-width:991px) {
	#head_contact .head_contact_btn { width:60px; height:60px; background-size:40px auto; }
}
@media (max-width:575px) {
	#head_contact { padding-right:8px; }
	#head_contact .head_contact_btn { width:55px; height:55px; }
}

.head_navi_wrap { margin-left:auto; display:flex; }
.head_navi_wrap > * { display:inline-block; vertical-align:middle; }
#base:not(.open) #head_navi { display:none !important; }
#head_tel { text-align:center; padding:0 15px; }
#head_tel .head_tel_wrap { font-weight:500; line-height:130%; padding-left:25px; background:url(../image/icon/tel-w.svg) no-repeat center left / 20px auto; font-size:2.25em; line-height:1; margin-bottom:5px; }
#head_tel .head_tel_time { font-size:0.85em; padding-left:25px; }
#head_navi { top:100px; right:0; position:fixed; border-right:0; max-height:calc(100vh - 100px); overflow-y:auto; overscroll-behavior:none; padding-bottom:100px; }
#head_navi ul { list-style:none; border:1px solid var(--c-white); border-bottom:0; }
#head_navi ul li { border-bottom:1px solid var(--c-white); }
#head_navi a { display:block; padding:15px 20px; background:var(--c-green); }
#head_navi span { display:block; padding:15px 20px; background:var(--c-green); text-decoration: none;}
#head_navi li.submenu a{padding-left: 30px; background:#7c946e;text-decoration: underline; }
#head_navi li.submenu a:hover { text-decoration: none; }
#menu_cover { position:fixed; top:0; left:0; width:100%; height:100vh; background:rgba(0,0,0,0.5); z-index:1999; }
@media (max-width:991px) {
	#head_navi { top:80px; max-height:calc(100vh - 80px); }
	#head_tel { padding-left:0; }
	#head_tel a { width:60px; height:60px; background:none; border:2px solid var(--c-white); border-radius:60px; display:flex; align-items:center; justify-content:center; }
	#head_tel a .main { display:none; }
	#head_tel .head_tel_wrap { margin-bottom:0; background:none; padding-left:0; }
	#head_tel .head_tel_time { display:none; }
}
@media (max-width:575px) {
	#head_navi { width:100%; }
	#head_navi ul { border-left:0; }
	#head_tel { padding-right:8px; }
	#head_tel a { width:55px; height:55px; }
}

#btn_open { margin-left:auto; line-height:1px; }
#btn_open a { position:relative; width:72px; height:72px; background:var(--c-white); color:var(--c-green); border-radius:72px; border:2px solid var(--c-white); display:block; }
#btn_open a > .line { position:absolute; right:19px; height:4px; border-radius:4px; background:var(--c-green); transition:all .3s; transform-origin:right center; width:30px; height:4px; }
#btn_open a > .line.l1 { top:16px; }
#btn_open a > .line.l2 { top:28px; }
#btn_open a > .text { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); white-space:nowrap; font-weight:bold; font-size:.8em; letter-spacing:2px; text-indent:2px; }
#base:not(.open) #btn_open a > .text._close,
#base.open #btn_open a > .text._open { display:none; }
#base.open #btn_open a > span.l1 { top:15px; transform:rotate(-30deg); right:20px; }
#base.open #btn_open a > span.l2 { top:30px; transform:rotate(30deg); right:20px; }
@media (max-width:991px) {
	#btn_open a { width:60px; height:60px; }
	#btn_open a > .line { right:14px; }
	#btn_open a > .line.l1 { top:14px; }
	#btn_open a > .line.l2 { top:24px; }
	#btn_open a > .text { bottom:15px; letter-spacing:0; text-indent:0; }
	#base.open #btn_open a > span.l1 { top:11px;  right:16px; }
	#base.open #btn_open a > span.l2 { top:26px; right:16px; }
}
@media (max-width:575px) {
	#btn_open a { width:55px; height:55px; }
	#btn_open a > .line { right:11px; }
	#btn_open a > .line.l1 { top:10px; }
	#btn_open a > .line.l2 { top:20px; }
	#base.open #btn_open a > span.l1 { top:7px;  right:13px; }
	#base.open #btn_open a > span.l2 { top:22px; right:13px; }
}


#pagetop { position:fixed; right:20px; bottom:20px; z-index:1800; }
#pagetop a { display:block; width:62px; height:62px; border-radius:62px; background:#fff url(../image/icon/pagetop.svg) no-repeat center center / 28px auto; border:1px solid #246D4E; }
#foot { padding-bottom:80px; }
#foot .foot_contact_wrap { background:url(../image/layout/contact_bg.jpg) no-repeat center center / cover; padding:90px 20px; }
#foot .foot_contact_wrap .hl_contact { text-align:center; margin-bottom:20px; }
#foot .foot_contact_wrap .hl_contact .main { font-size:2em; font-weight:500; letter-spacing:2px; letter-spacing:2px; }
#foot .foot_logo { margin-bottom:10px; }
#foot .contact_wrap { display:flex; align-items:center; justify-content:center; }
#foot .contact_wrap ._left { padding-right:20px; }
#foot .contact_wrap .tel_wrap {}
#foot .contact_wrap .tel_wrap > * { padding-left:30px; }
#foot .contact_wrap .tel_wrap .tel { background:url(../image/icon/tel-w.svg) no-repeat center left / 25px auto; font-size:2.25em; margin-bottom:5px; display:inline-flex; min-height:32px; align-items:center; }
#foot .foot_bottom { display:flex; align-items:center; justify-content:space-between; padding:40px 0; }
#foot .foot_bottom ._left { display:flex; align-items:center; }
#foot .foot_bottom ._left > *:not(:last-child) { padding-right:20px; }
#foot .foot_bottom ._left address { line-height:1.6; }
#foot .foot_bottom ._left .foot_logo { width:196px; height:auto; display:flex; align-items:center; margin-bottom:0; }
#foot .foot_bottom ._left .sns_wrap ul { display:flex; align-items:center; }
#foot .foot_bottom ._left .sns_wrap ul li:not(:last-child) { padding-right:15px; }
#foot .foot_bottom ._right .sub_navi ul { display:flex; justify-content:flex-end; }
#foot .foot_bottom ._right .sub_navi ul li:not(:first-child) { padding-left:15px; }
#foot address a { text-decoration:underline; }
#copyright { text-align:center; font-size:0.9em; text-align:right; }
	@media (max-width: 991px) {
		#foot .foot_bottom { flex-direction:column; justify-content:center; }
		#foot .foot_bottom ._left { padding-bottom:20px; }
		#foot .foot_bottom ._right .sub_navi ul { justify-content:center; }
	}
	@media (max-width: 767px){
		#foot .foot_contact_wrap { padding:40px 20px; }
		#foot .foot_bottom ._left { flex-direction:column; }
		#foot .foot_bottom ._left > *:not(:last-child) { padding-right:0; padding-bottom:20px; }
		#foot address { text-align:center; }
		#foot .contact_wrap { flex-direction:column; }
		#foot .contact_wrap > * { width:100%; }
		#foot .contact_wrap ._left { padding-right:0; padding-bottom:20px; }
		#foot .contact_wrap ._right { text-align:center; }
		#pagetop a { display:block; width:50px; height:50px; border-radius:62px; background-size:18px auto; }
	}


html:not(.wcacc_animestop) .plx { transition:opacity 1s, transform 1s, filter 1s; }
html:not(.wcacc_animestop) .plx._blur:not(.plx_on) { filter:blur(20px); opacity:0; }
html:not(.wcacc_animestop) .plx._vertical2:not(.plx_on) { transform:translateY(40px); opacity:0; }
