@charset "utf-8";
/*
	Last Update:2026/07/27
	Auther: iw
*/
:root {
	--wc-color1:#0062A6;
	--wc-color1-o:#F6FBFF;
	--wc-color2:#FF7F50;
}

header { display:inline; }
#base { position:relative; container:wciBase / inline-size; }

@container wciBase (width < 576px) {
	.hidden-only { display:none; }
	.pos_ac-only { text-align:center; }
}
@container wciBase (width >= 576px) {
	.visible-only { display:none; }
}
@container wciBase (width < 768px) {
	.hidden-xs { display:none; }
}
@container wciBase (width >= 768px) {
	.visible-xs { display:none; }
}

.wrapper, .wrapper-t { padding-top:80px; }
.wrapper, .wrapper-b { padding-bottom:80px; }
.wrapper2, .wrapper2-t { padding-top:40px; }
.wrapper2, .wrapper2-b { padding-bottom:40px; }
@container wciBase (width < 768px) {
	.wrapper, .wrapper-t, .wrapper-b { padding-top:40px; padding-bottom:40px; }
	.wrapper2, .wrapper2-t, .wrapper2-b { padding-top:20px; padding-bottom:20px; }
}
.center { max-width:1140px; }
.center2 { max-width:1060px; }
.en { font-family:"Viga", sans-serif; }
.en2 { font-family:"Jost", sans-serif; }
.maru { font-family:"Zen Maru Gothic", sans-serif; }
.c_orange { color:var(--wc-color2); }
.bg_blue-o { background-color:#F4FCFF; }
.bg_blue-o2 { background-color:#f8fbff; }
.hl_1 { text-align:center; }
.hl_1 .sub { font-size:min(20px, 4.5vw); color:var(--wc-color1); letter-spacing:0.07em; }
.hl_1 .main { font-size:min(30px, 6.5vw); letter-spacing:0.1em; }
.hl_1 .main:has(wbr) { word-break:keep-all; }
@container wciBase (width < 576px) {
	.hl_1 { margin-bottom:30px; }
}
@container wciBase (width >= 576px) {
	.hl_1 { margin-bottom:40px; }
}
.hl_2 { margin-bottom:30px; border-left:5px solid var(--wc-color1); padding-left:10px; }
.hl_2 .main { font-size:1.5em; font-weight:bold; }
.hl_3 { text-align:center; color:var(--wc-color1); font-size:min(25px, 5vw); margin-bottom:20px; font-weight:bold; line-height:1.6; }
@container wciBase (width < 576px) {
	.hl_2 { margin-bottom:20px; }
	.hl_2 .main { font-size:min(27px, 5.5vw); }
}

.tel_wrap { padding-left:75px; position:relative; display:inline-flex; flex-direction:column; align-items:center; justify-content:center; }
.tel_wrap::before { content:""; align-items:center; width:62px; height:auto; aspect-ratio:62/44.72; background:var(--wc-color1); --mask:url(../image2/icon/free-dial.svg) no-repeat center center / contain; mask:var(--mask); -webkit-mask:var(--mask); position:absolute; left:0; top:50%; transform:translateY(-50%); }
.tel_wrap .number { font-size:2em; line-height:1.1; color:var(--wc-color1); letter-spacing:.025em; }
.tel_wrap .time { font-weight:500; font-size:.8em; }

.tbl_1 { width:100%; }
.tbl_1 thead th { background:var(--wc-color1); color:#fff; text-align:center; border-color:#fff; }
.tbl_1 thead td { background:var(--wc-color1-o); color:var(--wc-color1); }
.tbl_1 tbody th { background:var(--wc-color1-o); color:var(--wc-color1); font-weight:500; }
.tbl_1 tbody td { background:#fff; color:var(--wc-baseColor); }
.tbl_1 tr > * { border:1px solid #E4E4E4; }
@container wciBase (width < 576px) {
	.tbl_1 th,
	.tbl_1 td { padding:10px 10px; font-size:0.9em; }
	.tbl_1 th wbr,
	.tbl_1 td wbr { display:block; }
}
@container wciBase (width >= 576px) {
	.tbl_1 th,
	.tbl_1 td { padding:10px 15px; }
}

.btn_1 { display:inline-flex; align-items:center; justify-content:center; background:var(--wc-color1); border:1px solid var(--wc-color1); color:#fff; font-weight:bold; padding:15px 40px; max-width:100%; width:380px; border-radius:40px; font-size:1.2em; letter-spacing:.05em; position:relative; }
.btn_1._white { background:#fff; color:var(--wc-color1); }
.btn_1._back::before,
.btn_1._next::before { content:""; display:block; width:20px; height:20px; background:no-repeat center center / contain; top:50%; transform:translateY(-50%); position:absolute; }
.btn_1._back::before { background-image:url(../image2/icon/arrow_l-w.svg); left:15px; }
.btn_1._next::before { background-image:url(../image2/icon/arrow_r-w.svg); right:15px; }
.btn_1._back._white::before { background-image:url(../image2/icon/arrow_l.svg); }
.btn_1._next._white::before { background-image:url(../image2/icon/arrow_r.svg); }
.btn_2 { display:flex; align-items:center; justify-content:center; border:1px solid #F0F0F0; border-radius:5px; align-items:center; padding:10px 40px; position:relative; font-weight:bold; color:var(--wc-color1); text-align:center; line-height:1.3; }
a.btn_2 { color:var(--wc-color1); }
.btn_2::after { content:""; display:block; width:22px; height:22px; background:url(../image2/icon/arrow4_b.svg) no-repeat center center / contain; position:absolute; right:10px; top:50%; transform:translateY(-50%); }
@container wciBase (width < 576px) {
	.btn_1 { width:280px; padding:10px 30px; }
	.btn_1._back { padding:10px 15px 10px 30px; }
	.btn_1._back::before { left:10px; }
	.btn_1._next::before { right:10px; }
}
@container wciBase (width > 576px) {
	.btn_2 { min-height:56px; }
}

.form_buttons_wrap { display:flex; justify-content:center; gap:20px; }

.need { border:1px solid var(--wc-color2); background-color:var(--wc-color2); color:#fff; margin-left:5px; }
.error { background:#ffe1df; color:#ff453a; border:1px solid #ff453a; padding:5px 10px; margin-bottom:5px; }

.tbl_form textarea { width:100%; }
@container wciBase (width >= 768px) {
	.tbl_form th { width:300px; }
}
@container wciBase (width < 768px) {
	.tbl_form,
	.tbl_form tbody,
	.tbl_form tr,
	.tbl_form tr > * { display:block; width:100%; }
}

.contact_unit_wrap .button { color:#fff; flex-direction:column; border-radius:50px; padding:10px 20px 13px; width:100%; }
.contact_unit_wrap .contact_unit_tel .button { background:var(--wc-color1); }
.contact_unit_wrap .contact_unit_mail .button { background:var(--wc-color2); }
.contact_unit_wrap .contact_unit_tel_text { font-size:31px; letter-spacing:0.03em; background:url(../image2/icon/free_tel-w.png) no-repeat left center / 1em auto; padding:0 0 0 1.25em; }
.contact_unit_wrap .contact_unit_tel_time { font-size:11px; letter-spacing:0.05em; font-weight:bold; margin-top:5px; }
.contact_unit_wrap .contact_unit_mail_text { font-size:21px; letter-spacing:0.01em; font-weight:bold; background:url(../image2/icon/mail-w.png) no-repeat left center / 1.15em auto; padding:0 0 0 1.5em; }
@container wciBase (width < 768px) {
	.contact_unit_wrap { display:flex; align-items:stretch; gap:10px; flex-direction:column; }
	.contact_unit_wrap .button { min-height:65px; }
}
@container wciBase (width >= 768px) {
	.contact_unit_wrap { display:flex; align-items:stretch; gap:15px; }
	.contact_unit_wrap > * { flex:1 0 0; width:50%; }
	.contact_unit_wrap .button { height:100%; }
}

#head { border-top:3px solid var(--wc-color1); }
#head .head_wrap { display:flex; justify-content:space-between; align-items:center; padding:5px 10px; gap:20px; }
#head_navi { background:#F8FBFF; }
#head_navi > ul a { font-weight:bold; }
body.pc #head_navi > ul a:hover { color:var(--wc-color1); }
@container wciBase (width < 576px) {
	#head .head_wrap { height:60px; }
	#head .head_logo { max-width:250px; }
	#head .head_logo_sub { max-width:120px; line-height:1.4; }
	#head .head_wrap .head_tel { display:none; }
	#head .head_tel .tel_wrap { min-width:220px; }
	#head_navi { top:60px; max-height:calc(100dvh - 60px); }
}
@container wciBase (width >= 576px) and (width < 992px) {
	#head .head_wrap { height:75px; }
	#head .head_logo { max-width:300px; }
	#head .head_logo_sub { max-width:120px; line-height:1.4; }
	#head .head_wrap .head_tel { margin-left:auto; }
	#head .head_tel .tel_wrap { min-width:220px; }
	#head_navi { top:75px; max-height:calc(100dvh - 75px); }
}
@container wciBase (width < 992px) {
	#head { position:sticky; top:0; left:0; width:100%; z-index:100; background:#fff; box-shadow:0 3px 5px rgba(0,0,0,0.1); }
	#head_button_open { display:block; position:relative; aspect-ratio:1 / 1; width:50px; border:none; background:var(--wc-color1); border-radius:5px; }
	#head_button_open::before,
	#head_button_open::after,
	#head_button_open .head_button_open_text::before { content:""; display:block; position:absolute; right:10px; height:4px; width:calc(100% - 20px); background:#fff; transition:all 0.3s; }
	#head_button_open::before { top:13px; }
	#head_button_open::after { bottom:13px; }
	#head_button_open .head_button_open_text { display:block; text-indent:-9998px; }
	#head_button_open .head_button_open_text::before { top:calc(50% - 2px); }
	#base.open #head_button_open::before { transform:rotate(-45deg); top:23px; right:9px; }
	#base.open #head_button_open::after { transform:rotate(45deg); bottom:23px; right:9px; }
	#base.open #head_button_open .head_button_open_text::before { width:0; }
	#base:not(.open) #head_navi { display:none; }
	#head_navi { position:fixed; left:0; z-index:20; width:100%; overflow-y:auto; overscroll-behavior:none; }
	#head_navi li + li { border-top:1px solid #ddd; }
	#head_navi ul a { display:block; padding:15px; }
	#head_navi .head_navi_sub { background:#fff; border-top:1px solid #ddd; }
	#head_navi .head_navi_sub a { padding:10px 10px 10px 40px; }
	#head_navi .head_tel { background:#fff; padding:15px 0 80px; text-align:center; }
}
@container wciBase (width >= 992px) {
	#head .head_wrap { padding:20px 40px; }
	#head .head_logo { display:flex; align-items:center; gap:10px; }
	#head_navi > ul { display:flex; height:62px; justify-content:space-between; align-items:center; max-width:1040px; margin:0 auto; padding:0 20px; }
	#head_navi .head_navi_sub { display:none; }
	#head_navi .head_tel { display:none; }
	#head_button,
	#head_button_open { display:none; }
}
@container wciBase (width < 1200px) {
	#head .head_tel .tel_wrap { padding-left:45px; min-width:240px; }
	#head .head_tel .tel_wrap::before { width:40px; }
	#head .head_tel .tel_wrap .number { font-size:1.65em; }
}

#foot_contact { position:relative; background:#1877b9 url(../image2/layout/foot_contact_back1.jpg) no-repeat center top / cover; color:#fff; }
#foot_contact .foot_contact_title_wrap { background:url(../image2/layout/foot_contact_back2.png) no-repeat center left / contain; margin-bottom:20px; }
#foot_contact .hl_1 { text-align:left; }
#foot_contact .hl_1 .sub,
#foot_contact .hl_1 .main { color:#fff; }
#foot_contact .contact_unit_wrap { position:relative; z-index:2; background:#fff; border-radius:60px; padding:13px 15px; }
#foot_contact .foot_contact_title_text { word-break:keep-all; }
@container wciBase (width < 992px) {
	#foot_contact { padding-top:40px; padding-bottom:20px; }
	#foot_contact .hl_1 { margin-bottom:15px; }
	#foot_contact .contact_unit_wrap { border-radius:10px; }
	#foot_contact .foot_contact_title_text { width:max(50vw, calc(100vw - 230px)); }
	#foot_contact .foot_contact_image { position:absolute; top:-10vw; right:0; }
}
@container wciBase (width < 768px) {
	#foot_contact .foot_contact_image { max-width:230px; width:50vw; }
}
@container wciBase (width >= 768px) and (width < 992px){
	#foot_contact .foot_contact_image { width:280px; }
}
@container wciBase (width >= 992px) {
	#foot_contact .foot_contact_wrap { display:flex; align-items:center; }
	#foot_contact .foot_contact_wrap > * { flex:0 0 auto; }
	#foot_contact .foot_contact_unit { width:68%; }
	#foot_contact .foot_contact_image { width:32%; margin-top:-4%; padding-left:30px; }
	#foot_contact .foot_contact_title_wrap { display:flex; align-items:center; gap:60px; padding:20px 0; }
	#foot_contact .foot_contact_title_text { font-size:1.1em; line-height:2.0; }
	#foot_contact .hl_1 { margin-bottom:0; flex:0 0 auto; }
}

#access .access_unit_dl { box-shadow:0 2px 4px rgba(0,0,0,0.1); background:#fff; }
#access .access_unit_dl + dl { margin-top:20px; }
#access .access_unit_dl dt { background:var(--wc-color1); color:#fff; font-weight:bold; font-size:20px; text-align:center; padding:8px; }
#access .access_unit_dl dt > span { display:inline-block; padding:0 0 0 1.5em; }
#access .access_unit_dl dt .map { background:url(../image2/icon/map-w.png) no-repeat left center / auto 1.2em; }
#access .access_unit_dl dt .car { background:url(../image2/icon/car-w.png) no-repeat left center / auto 1em; }
#access .access_unit_dl dt .train { background:url(../image2/icon/train-w.png) no-repeat left center / auto 1.2em; }
#access .access_unit_dl dd { padding:13px 15px; line-height:1.4; }
#access .access_unit_dl dd:has(wbr) { word-break:keep-all; }
@container wciBase (width < 992px) {
	#access .access_wrap .gmap { margin-bottom:30px; }
}
@container wciBase (width >= 992px) {
	#access .access_wrap { display:flex; align-items:start; }
	#access .access_wrap > * { flex:0 0 auto; }
	#access .access_wrap .gmap { width:55%; }
	#access .access_wrap .access_unit { width:45%; padding-left:30px; }
}

#foot { background:#F4FCFF; }
#foot .center { max-width:1200px; }
#foot .foot_company { margin-bottom:5px; font-size:20px; }
#foot_navi > ul > li > a { font-weight:500; }
#foot_navi > ul > li > ul { padding-left:1em; margin-top:10px; }
#foot_navi li + li { margin-top:10px; }
body.pc #foot_navi a:hover { color:var(--wc-color1); text-decoration:underline; }
#foot .copyright { font-size:min(16px, 3vw); color:rgba(115,115,115,0.6); }
@container wciBase (width < 768px) {
	#foot .foot_unit { text-align:center; margin-bottom:30px; }
	#foot .foot_unit address { display:inline-block; text-align:left; }
	#foot .foot_logo { max-width:100%; width:300px; margin:0 auto 20px; }
	#foot_navi { display:none; }
	#foot .copyright { text-align:center; }
}
@container wciBase (width >= 768px) {
	#foot .foot_wrap { display:flex; justify-content:space-between; }
	#foot .foot_unit { width:45%; }
	#foot .foot_logo { margin-bottom:40px; }
	#foot_navi { display:flex; gap:0 90px; }
}

#foot_fixed { position:fixed; z-index:10; }
#foot_fixed a { display:block; padding:35px 20px 10px 10px; color:#fff; font-weight:bold; font-size:20px; letter-spacing:0.1em; }
#foot_fixed .fixed_tel a { background:var(--wc-color1) url(../image2/icon/free_tel-w.png) no-repeat top 10px left 16px / 24px auto; }
#foot_fixed .fixed_contact a { background:var(--wc-color2) url(../image2/icon/mail-w.png) no-repeat top 11px left 17px / 21px auto; }
@container wciBase (width >= 576px) {
	#foot_fixed { right:0; top:50%; transform:translateY(-40%); }
	#foot_fixed ul > li + li { margin-top:20px; }
	#foot_fixed a { writing-mode:tb; border-radius:10px 0 0 10px; transition:transform 0.5s; transform:translateX(10px); }
	body.pc #foot_fixed a:hover { transform:translateX(0px); }
}

#page_title { background:url(../image2/layout/page_title_bg.jpg) no-repeat center center / cover; min-height:220px; display:flex; align-items:center; }
#page_title._large { min-height:350px; padding:20px 0; }
#page_title .page_title_inner { display:flex; justify-content:space-between; align-items:center; }
#page_title .page_title_inner .text .sub { color:var(--wc-color1); letter-spacing:0.07em; font-size:1.25em; }
#page_title .page_title_inner .text .main { font-size:2.25em; font-weight:bold; color:#3C3C3C; }
#page_title .page_title_inner .text .comment { margin-top:20px; line-height:2.0; color:#2E2E2E; }
@container wciBase (width < 768px) {
	#page_title { min-height:160px; }
	#page_title._large { min-height:unset; }
	#page_title .page_title_inner .text { flex:1; }
	#page_title .page_title_inner .text .sub { font-size:1em; }
	#page_title .page_title_inner .text .main { font-size:1.5em; }
	#page_title .page_title_inner .text .comment { margin-top:10px; line-height:1.4; font-size:.9em; }
	#page_title .page_title_inner .image { width:90px; }
}

#pankuzu { font-size:13px; padding-top:10px; padding-bottom:10px; margin-top:calc(var(--img-offset) * -1); }
#pankuzu a { color:#B7B7B7; }
#pankuzu li, #pankuzu li:before { vertical-align:baseline; line-height:100%; }
#pankuzu li:before { display:inline-block; }
#pankuzu ul { text-align:left; padding:0 20px; }
#pankuzu li { display:inline-block; }
#pankuzu ul > li:not(:first-child):before { content:"/"; margin:0 8px; color:#D9D9D9; }
body.pc #pankuzu a:hover { text-decoration:underline; }
@container wciBase (width < 576px) {
	#pankuzu ul { text-overflow:ellipsis; overflow:hidden; white-space:nowrap; }
	#pankuzu li { display:inline; }
}

.back_button { position:relative; width:100%; max-width:200px; display:inline-block; background:#fff; border:1px solid var(--wc-color1); padding:8px 16px; text-align:center; }
.back_button .main { font-weight:600; color:var(--wc-color1); }

a.file_link { display:inline-flex; align-items:center; gap:0.4em; color:var(--wc-color1); }
a.file_link::before { content:""; display:inline-block; width:1.25em; height:1.25em; background:url(../image2/icon/file.svg) no-repeat center / contain; flex-shrink:0; }

.entry a { color:var(--wc-color1); text-decoration:underline; }
.entry ul > li:before { content:"●"; color:var(--wc-color1); top:.5em; }
.entry ul > li > ul > li:before { content:"■"; color:var(--wc-color2); }
.entry ol > li:before { color:var(--wc-color1); }
.entry ol > li > ol > li:before { color:var(--wc-color2); }
.entry table thead th { background:var(--wc-color1); color:#fff; }
.entry table thead td { background:var(--wc-color2); color:#fff; }
.entry table tbody th { background:var(--wc-color1-o); color:var(--wc-color1); }
.entry table tbody td { background:#fff; color:var(--wc-baseColor); }
.entry table tr > * { border:1px solid #ccc; }
.entry h2 { background:var(--wc-color1); color:#fff; display:block; padding:10px 15px 10px 30px; position:relative; font-size:1.75em; margin-bottom:20px; }
.entry h2::before { content:""; width:3px; height:calc(100% - 20px); background:#fff; left:10px; top:50%; transform:translateY(-50%); display:block; position:absolute; }
.entry h3 { color:var(--wc-baseColor); display:block; font-size:1.5em; position:relative; padding-bottom:10px; margin-bottom:20px; }
.entry h3::before,
.entry h3::after { content:""; height:2px; bottom:0; left:0; display:block; position:absolute; }
.entry h3::before { background:#D6D6D6; width:100%; z-index:1; }
.entry h3::after { background:var(--wc-color1); width:80px; z-index:2; }
.entry h4 { padding:10px; background:#F8F8F8; color:var(--wc-color1); font-size:1.25em; margin-bottom:15px; }
.entry h5 { color:var(--wc-baseColor); border-left:3px solid var(--wc-color1); display:block; padding-left:8px; font-size:1.15em; margin-bottom:10px; }
.entry h6 { color:var(--wc-color1); font-size:1.1em; margin-bottom:5px; }
@container wciBase (width < 768px) {
	.entry .sp_table_wrap { overflow-x:auto; }
	.entry .sp_table_wrap table { white-space:nowrap; margin-bottom:0; }
	.entry h2 { font-size:1.5em; padding-left:20px; }
	.entry h2::before { width:2px; }
	.entry h3 { font-size:1.35em; }
	.entry h4 { font-size:1.15em; }
	.entry h5 { font-size:1.1em; border-left-width:2px; padding-left:5px; }
	.entry h6 { font-size:1.05em; }
}

.list_pager ul li > * { border:1px solid #fff; width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; line-height:18px; }
.list_pager ul li > a { text-decoration:none; background:#fff; color:#707070; border:1px solid #d3d3d3; }
.list_pager ul li > strong { color:#fff; font-weight:bold; background:var(--wc-color1); border:1px solid var(--wc-color1); }
.list_pager ul li.prev > a span,
.list_pager ul li.next > a span { font-size:1.4em; line-height:1; font-family:inherit; }
body.pc .list_pager ul li > a:hover { background:var(--wc-color1); color:#fff; }

.news_list { margin-bottom:70px; }
.news_list .news_item { padding:16px; border-bottom:1px dotted #F1F1F1; display:flex; align-items:center; gap:5px 10px; }
.news_list .news_item::after { content:""; display:block; width:16px; height:auto; aspect-ratio:16/12; background:url(../image2/icon/arrow2_r.svg) no-repeat center center / contain; }
.news_list .news_item .news_item_meta { display:flex; gap:16px; align-items:center; }
.news_list .news_item div,
.news_list .news_item .title { display:inline-block; font-weight:600; }
.news_list .news_item .title { flex:1; }
body.pc .news_list .news_item:hover .title { text-decoration:underline; }
.news_list .news_item .tag { color:#fff; background-color:var(--wc-color1); min-width:80px; display:inline-block; display:inline-block; padding:6px 12px; border-radius:40px; font-size:.85em; }
.news_list .news_item .date { color:#8F8F8F; font-weight:500; }
.news_list_pages { text-align:center; }
.news_list_pages a { color:#717171; margin:0.25em; padding:0.25em 0.5em; font-weight:600; border:1.1px solid #D3D3D3; }
.news_list_pages a.current { color:#fff; background-color:var(--c-blue); }
@container wciBase (width < 768px) {
	.news_list { margin-bottom:30px; }
	.news_list .news_item { padding-left:0; padding-right:0; flex-wrap:wrap; }
	.news_list .news_item .news_item_meta { width:100%; }
}

.news_detail .news_detail_title { padding-bottom:8px; margin-bottom:40px; border-bottom:1px dotted #A4A4A4; }
.news_detail .news_detail_title .meta { display:flex; gap:16px; align-items:center; margin-bottom:8px; }
.news_detail .news_detail_title .meta .tag { color:#fff; background-color:var(--wc-color1); padding:6px 12px; border-radius:40px; font-size:.85em; }
.news_detail .news_detail_title .meta .date { color:#8F8F8F; font-weight:500; }
.news_detail .news_detail_title .text {  font-weight:600; font-size:1.5em; }
.news_detail .content { margin-top:40px; margin-bottom:70px; }
.news_detail .news_images { display:flex; flex-wrap:wrap; width:calc(100% + 20px); margin-left:-10px; margin-right:-10px; }
.news_detail .news_images .wcft_image { padding:0 10px; }
.news_detail .news_images .wcft_image:first-child { width:100%; }
.news_detail .news_images .wcft_image:not(:first-child) { width:25%; }
@container wciBase (width < 768px) {
	.news_detail .news_images { width:calc(100% + 10px); margin-left:-5px; margin-right:-5px; }
	.news_detail .news_images .wcft_image { padding:0 5px; }
	.news_detail .news_images .wcft_image:not(:first-child) { width:50%; }
}

.left_number_card { background:#fff; border-radius:10px; position:relative; padding:20px 0; }
.left_number_card .number_wrap { position:absolute; left:0; top:0; background:var(--wc-color1); color:#fff; }
.left_number_card .number { display:flex; aspect-ratio:1 / 1; font-size:30px; padding:0 10px; align-items:center; }
.left_number_card .image { text-align:center; }
.left_number_card .title_wrap { display:flex; align-items:center; justify-content:center; min-height:3.25em; font-size:min(25px, 6.25vw); }
.left_number_card .title { text-align:center; word-break:keep-all; padding:0 10px; }
.left_number_card .title .tag { background:var(--wc-color2); color:#fff; font-size:min(18px, 4vw); padding:3px 5px; border-radius:20px; margin-right:5px; vertical-align:center; }
.left_number_card .text { padding:0 20px; }
#strengths .left_number_card .title .c_orange { font-size:min(28px, 7vw); }
@container wciBase (width < 768px) {
	.left_number_card { margin-bottom:30px; }
}
@container wciBase (width >= 768px) {
	.left_number_card_wrap { display:grid; gap:30px; grid-template-columns:1fr 1fr 1fr; }
}

.right_number_card { background:#F4FCFF; border-radius:10px; position:relative; display:flex; align-items:center; }
.right_number_card .number_wrap { position:absolute; right:0; top:0; color:#E3F1F9; }
.right_number_card .number { font-weight:800; font-size:45px; line-height:1.0; }
.right_number_card .image { display:flex; aspect-ratio:1 / 1; background:#fff; align-items:center; justify-content:center; border-radius:50px; flex:0 0 auto; }
.right_number_card .text_wrap { color:var(--wc-color1); }
.right_number_card .title { font-size:min(25px, 6vw); font-weight:bold; }
.right_number_card .text { font-size:min(15px, 4vw); font-weight:bold; line-height:1.3; margin-top:5px; }
.right_number_card small.text { color:#999; font-size:12px; font-weight:bold; }
@container wciBase (width < 768px) {
	.right_number_card { margin-bottom:20px; padding:0 15px 0 15px; min-height:130px; }
	.right_number_card .image { width:70px; }
	.right_number_card .text_wrap { padding-left:15px; }
}
@container wciBase (width >= 768px) {
	.right_number_card_wrap { display:grid; gap:30px; grid-template-columns:1fr 1fr; }
	.right_number_card { padding:0 20px 0 40px; min-height:140px; }
	.right_number_card .image { width:92px; }
	.right_number_card .text_wrap { padding-left:20px; }
}

.service_main_image { border-radius:10px; margin-bottom:30px; }
.service_worries { background:#f9f9f9 url(../image2/layout/worries_back.jpg) no-repeat center top / cover; }
.service_worries_ul { list-style:none; }
.service_worries_ul li { background:#fff url(../image2/icon/check.svg) no-repeat; border-radius:80px; box-shadow:0 1px 4px rgba(0,0,0,.2); color:var(--wc-color1); font-weight:bold; line-height:1.3; }
.service_worries_ul li + li { margin-top:15px; }
@container wciBase (width < 768px) {
	.service_worries_image { text-align:center; margin-bottom:20px; }
}
@container wciBase (width >= 768px) {
	.service_worries_wrap { display:flex; gap:30px; align-items:center; }
}
@container wciBase (width < 992px) {
	.service_worries_ul li { padding:10px 10px 10px 30px; background-size:16px auto; background-position:left 8px center; font-size:1em; }
}
@container wciBase (width >= 992px) {
	.service_worries_ul li { padding:15px 20px 15px 70px; background-size:27px auto; background-position:left 27px center; font-size:min(20px, 1.15em); }
}

.service_option { background:#fbfbfb url(../image2/layout/option_back.jpg) no-repeat center top / cover; }
.service_option .hl_1 { text-align:left; }
@container wciBase (width < 768px) {
	.service_option_image { text-align:center; margin-bottom:20px; }
}
@container wciBase (width >= 768px) {
	.service_option_wrap { display:flex; gap:30px; align-items:center; }
}

.fee_box { background:var(--wc-color1-o); padding:20px 15px 30px; text-align:center; }
.fee_box_wrap { color:var(--wc-color1); font-weight:bold; font-size:min(27px, 5.5vw); }
.fee_box_wrap .number { font-size:min(39px, 7vw); margin-right:3px; }

.anchor_list { --this-rows:var(--rows, 3); display:grid; grid-template-columns:repeat(var(--this-rows), 1fr); gap:10px 20px; }
.anchor_list .anchor_item > * { height:100%; }
@container wciBase (width < 768px) {
	.anchor_list { --this-rows:var(--rows-sp, 1); }
}
@container wciBase (width >= 768px) and (width < 992px) {
	.anchor_list { --this-rows:var(--rows-tab, 1); }
}

.faq_list { display:flex; flex-direction:column; gap:15px; }
.faq_list details { border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 1px 5px rgba(0,0,0,.08); }
.faq_list summary { display:flex; align-items:flex-start; gap:12px; padding:18px 52px 18px 18px; background:var(--wc-color1-o); color:var(--wc-color1); font-weight:bold; cursor:pointer; list-style:none; position:relative; line-height:1.5; }
.faq_list summary::-webkit-details-marker { display:none; }
.faq_list summary::marker { content:""; }
.faq_list summary::after { content:""; display:block; width:24px; height:14px; background:url(../image2/icon/arrow5_t.svg) no-repeat center center / contain; position:absolute; right:16px; top:50%; transform:translateY(-50%) rotate(180deg); transition:transform .25s ease; }
.faq_list details:not([open]) summary::after { transform:translateY(-50%) rotate(0deg); }
.faq_list .label_wrap { flex:0 0 auto; }
.faq_list .label { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; color:#fff; font-weight:bold; font-size:1.5em; line-height:1; }
.faq_list summary .label { background:var(--wc-color1); }
.faq_list summary .main { flex:1; min-height:40px; display:flex; align-items:center; font-size:1.15em; }
.faq_list .contents { display:flex; align-items:flex-start; gap:12px; padding:18px; line-height:1.7; }
.faq_list .contents .label { background:#F4AE44; }
.faq_list .contents .main { flex:1; min-height:40px; display:flex; align-items:center; color:#333; }
.faq_list .contents .main p { margin:0; }
@container wciBase (width < 768px) {
	.faq_list .label { width:28px; height:28px; font-size:1.25em; }
	.faq_list summary { padding:16px 32px 16px 16px; }
	.faq_list summary .main { font-size:1.1em; }
	.faq_list summary .main,
	.faq_list .contents .main { min-height:28px; }
	.faq_list summary::after { width:16px; height:9px; right:8px; }
}

/* top */
#top_mainvisual { background:url(../image2/top/mv_bg.jpg) no-repeat center center / cover; padding:100px 0; }
#top_mainvisual .mv_text_wrap { margin-left:auto; margin-right:auto; position:relative; width:100%; max-width:680px; }
#top_mainvisual .mv_text_wrap::before,
#top_mainvisual .mv_text_wrap::after { content:""; display:block; background:no-repeat center center / contain; position:absolute; width:auto; top:0; top:50%; transform:translateY(-50%); }
#top_mainvisual .mv_text_wrap::before { aspect-ratio:271/555; background-image:url(../image2/top/mv_img1.png); right:100%; height:calc(100% + 80px); }
#top_mainvisual .mv_text_wrap::after { aspect-ratio:235/561; background-image:url(../image2/top/mv_img2.png); left:105%; height:calc(100% + 100px); }
@container wciBase (width < 768px) {
	#top_mainvisual .contact_unit_wrap { max-width:400px; margin-left:auto; margin-right:auto; }
}
@container wciBase (width < 992px) {
	#top_mainvisual { padding:40px 0; }
	#top_mainvisual .mv_text_wrap::before,
	#top_mainvisual .mv_text_wrap::after { display:none; }
	#top_mainvisual .mv_text_wrap .mv_text { margin-bottom:20px; }
	#top_mainvisual .mv_text_wrap .mv_text img { width:calc(100% + 30px); max-width:unset; margin-left:-15px; margin-right:-15px; }
}
@container wciBase (width >= 992px) {
	#top_mainvisual .mv_text_wrap .mv_text { margin-bottom:40px; }
	#top_mainvisual .mv_text_wrap .mv_text img { width:120%; max-width:unset; margin-left:-10%; margin-right:-10%; }
}
@container wciBase (width < 1200px) and (width >= 992px) {
	#top_mainvisual .mv_text_wrap { max-width:560px; }
	#top_mainvisual .mv_text_wrap .contact_unit_wrap { width:calc(100% + 80px); margin-left:-40px; margin-right:-40px; }
}

#about { background:url(../image2/top/about_bg.jpg) no-repeat center center / cover; }
#about .about_wrap { display:flex; gap:40px; }
#about .about_wrap .image_wrap { width:45%; position:relative; }
#about .about_wrap .image_wrap .image { width:100%; position:absolute; bottom:0; left:0; }
#about .about_wrap .image_wrap .image img { width:104%; max-width:unset; height:auto; margin-left:-4%; }
#about .about_wrap .text_wrap { flex:1; display:flex; flex-direction:column; gap:15px; }
#about .about_wrap .text_wrap .comment { line-height:1.6; font-weight:500; }
#about .about_wrap .text_wrap ul { display:flex; flex-direction:column; gap:15px; }
#about .about_wrap .text_wrap ul li { background:#fff url(../image2/icon/check.svg) no-repeat left 27px center / 30px auto; border-radius:80px; padding:15px 20px 15px 75px; box-shadow:0 1px 4px rgba(0,0,0,.2); color:var(--wc-color1); font-weight:bold; font-size:1.35em; line-height:1.4; }
#about .about_wrap .text_wrap ul li .strong { color:var(--wc-color2); background:linear-gradient(to top, #FFF86A 0%, #FFF86A 30%, transparent 30%, transparent 100%); display:inline-block; padding:0 5px; }
@container wciBase (width < 1200px) {
	#about .about_wrap .text_wrap ul li { font-size:1.15em; }
}
@container wciBase (width < 992px) {
	#about .about_wrap { flex-direction:column; gap:20px; }
	#about .about_wrap .image_wrap { width:100%; }
	#about .about_wrap .image_wrap .image { position:relative; top:auto; left:auto; max-width:280px; width:100%; margin-left:auto; margin-right:auto; }
	#about .about_wrap .text_wrap ul li { padding:10px 10px 10px 30px; background-size:16px auto; background-position:left 8px center; font-size:1em; }
}

#service .service_list { display:grid; grid-template-columns:repeat(3, 1fr); gap:30px; }
#service .service_list .service_item { display:flex; flex-direction:column; box-shadow:0 1px 4px rgba(0,0,0,.2); background:#fff; border-radius:10px; overflow:hidden; width:100%; max-width:500px; margin-left:auto; margin-right:auto; }
#service .service_list .service_item .image img { width:100%; height:auto; }
#service .service_list .service_item .text_wrap { flex:1; display:flex; flex-direction:column; gap:15px; padding:15px 20px; }
#service .service_list .service_item .title_wrap { display:flex; align-items:center; justify-content:space-between; gap:10px; }
#service .service_list .service_item .title_wrap::after { content:""; display:block; width:21px; height:21px; background:url(../image2/icon/arrow3_r.svg) no-repeat center center / contain; }
#service .service_list .service_item .title { font-weight:bold; font-size:1.25em; color:#1A1A1A; }
#service .service_list .service_item .text { flex:1; line-height:1.4; }
@container wciBase (width < 992px) {
	#service .service_list { grid-template-columns:repeat(2, 1fr); }
}
@container wciBase (width < 767px) {
	#service .service_list { grid-template-columns:1fr; }
}

#flow { background:#F4FCFF; }
#flow .flow_list { display:flex; flex-direction:column; gap:70px; }
#flow .flow_item { background:#fff; border:1px solid #DCE8EF; border-radius:10px; box-shadow:0 1px 4px rgba(0,0,0,.08); position:relative; overflow:visible; }
#flow .flow_item::after { content:""; display:block; width:90px; height:28px; background:#EEEEEE; clip-path:polygon(50% 100%, 0 0, 100% 0); position:absolute; left:50%; bottom:-35px; transform:translate(-50%, 50%); }
#flow .flow_item:last-child::after { display:none; }
#flow .flow_image { position:relative; overflow:hidden; border-radius:10px 10px 0 0; }
#flow .flow_image img { width:100%; height:auto; }
#flow .flow_text_wrap { padding:22px 28px 24px; }
#flow .flow_number_wrap { position:absolute; left:0; top:0; background:var(--wc-color1); color:#fff; }
#flow .flow_number { display:flex; align-items:center; justify-content:center; width:53px; height:53px; font-size:1.75em;; line-height:1; }
#flow .flow_title { font-size:1.75em; font-weight:bold; line-height:1.35; margin-bottom:10px; color:#333; }
#flow .flow_text { line-height:1.9; color:#595959; font-weight:500; }
#flow .flow_note { margin-top:18px; line-height:1.7; color:#595959; font-weight:500; }
#flow .flow_item .contact_unit_wrap { margin-top:20px; }
@container wciBase (width < 992px) {
	#flow .flow_item { width:100%; max-width:500px; margin-left:auto; margin-right:auto; }
	#flow .flow_text_wrap { padding:18px 15px 20px; }
	#flow .flow_title { font-size:1.5em; }
	#flow .flow_item .contact_unit_wrap { flex-direction:column; }
	#flow .flow_item .contact_unit_wrap > * { width:100%; min-height:65px; }
}
@container wciBase (width >= 992px) {
	#flow .flow_item { display:flex; align-items:stretch; }
	#flow .flow_image { width:37%; border-radius:10px 0 0 10px; flex:0 0 auto; }
	#flow .flow_image img { height:100%; object-fit:cover; }
	#flow .flow_text_wrap { flex:1; padding:24px 28px 24px 34px; display:flex; flex-direction:column; justify-content:center; min-height:190px; }
	#flow .flow_item .contact_unit_wrap { max-width:700px; }
}
@container wciBase (width < 1200px) and (width >= 992px) {
	#flow .flow_item .contact_unit_wrap .contact_unit_tel_text { font-size:1.5em; }
	#flow .flow_item .contact_unit_wrap .contact_unit_mail_text { font-size:1.1em; }
}

#top_news .top_news_wrap { display:flex; align-items:center; gap:5px 20px; padding:30px 0; }
#top_news .top_news_wrap .hl_wrap { width:25%; }
#top_news .top_news_wrap .hl_wrap .hl_1 { text-align:left; margin-bottom:15px; }
#top_news .top_news_wrap .hl_wrap .news_more_btn { display:inline-flex; align-items:center; gap:10px; border:1px solid var(--wc-color1); color:var(--wc-color1); font-weight:bold; border-radius:40px; padding:2px 16px; }
#top_news .top_news_wrap .hl_wrap .news_more_btn::before { content:""; display:block; width:13px; height:13px; background:url(../image2/icon/arrow_r.svg) no-repeat center center / contain; }
#top_news .top_news_wrap .news_list_wrap { flex:1; }
#top_news .top_news_wrap .news_list_wrap .news_list { margin-bottom:0; }
@container wciBase (width < 768px) {
	#top_news .top_news_wrap { flex-direction:column; padding:0 0 40px; }
	#top_news .top_news_wrap > * { width:100%; }
	#top_news .top_news_wrap .hl_wrap { display:flex; align-items:center; justify-content:space-between; width:100%; }
}

.top_preparations { font-weight:bold; font-size:min(21px, 4vw); }
.top_preparations .top_preparations_line { background:linear-gradient(to bottom, #fff 0%,#fff 60%,#FFF86A 60%, #FFF86A 100%);; }
.top_preparations .c_orange { font-size:min(31px, 7vw); }
