@charset "utf-8";
/*
	Last Update:2025/04/09
	Auther: iw
*/
:root {
	--wc-baseFont:"Noto Sans JP","Meiryo UI","メイリオ",Meiryo,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro",Avenir,Arial,Verdana,Roboto,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	--wc-baseFontSize:16px;
	--wc-baseFontSizeSp:14px;
	--wc-baseColor:#1c1c1e;
}
@-ms-viewport { width:auto; initial-scale:1; }
*, *::before, *::after { box-sizing:border-box; word-break:break-word; }
*:focus { outline:none; }
/* font */
body,input,select,option,textarea,button { font-family:var(--wc-baseFont); }
body { position:relative; line-height:170%; font-weight:normal; font-style:normal; text-align:left; -webkit-text-size-adjust:100%; font-size:var(--wc-baseFontSize); color:var(--wc-baseColor); }
@media (max-width: 767px){ body { font-size:var(--wc-baseFontSizeSp); } }
@font-face { font-family:"Yu Gothic"; src:local("Yu Gothic Medium"); font-weight:normal; }
@font-face { font-family:"Yu Gothic"; src:local("Yu Gothic Bold"); font-weight:bold; }
.yugothic { font-family:"Yu Gothic","YuGothic","游ゴシック体","游ゴシック",sans-serif; }
.mincho { font-family:"ヒラギノ明朝 ProN","Hiragino Mincho ProN","Noto Serif JP","Sawarabi Mincho","游明朝","YuMincho","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; }
/* reset */
html,body,p,h1,h2,h3,h4,h5,h6,table,th,td,ul,ol,li,dl,dt,dd,img,a,figure,figcaption,blockquote { margin:0; padding:0; }
header,nav,main,footer,section,article,aside { display:inline; }
address,figure,figcaption,fieldset,blockquote,details,summary,legend { display:block; }
h1,h2,h3,h4,h5,h6 { font-size:1em; font-weight:bold; line-height:130%; }
address, cite, q { font-style:normal; }
th,strong,em,b,legend { font-weight:bold; font-style:normal; }
table { border-collapse:collapse; }
th,td { vertical-align:middle; text-align:left; line-height:140%; }
ul { list-style:none; }
figure, figcaption { text-align:center; }
figure > figcaption, caption { padding-top:10px; font-size:0.9em; }
details summary { position:relative; outline:0; cursor:pointer; list-style:none; }
details summary::-webkit-details-marker { display:none !important; }
details summary::before { content:'' !important; display:none; }
img { border:none; vertical-align:bottom; max-width:100%; height:auto; }
hr { display:none; }
mark { background:#ffe014; }
fieldset, dialog { border:none; padding:0; }
blockquote { text-align:left; }
/* media */
video, iframe { border:none; outline:none; margin:0; max-width:100%; }
.youtube { position:relative; padding-top:56%; line-height:0; }
.youtube iframe, .youtube video { position:absolute; top:0; left:0; width:100%; height:100%; }
.gmap { position:relative; line-height:0; }
.gmap iframe { width:100%; }
@media (max-width: 575px){ .gmap iframe, .youtube iframe, .youtube video { max-height:100vw; } }
.img_back { position:relative; overflow:hidden; line-height:1px; }
.img_back > img { object-fit:cover; width:100%; height:100%; }
.img_back._contain > img { object-fit:contain; }
.img_rect { aspect-ratio:16 / 9; } .img_sq { aspect-ratio:1 / 1; }
/* link */
a, button, input[type="submit"], input[type="button"], .button, label { cursor:pointer; }
a, a:link, a:visited, a:hover, a:active, .button { text-decoration:none; color:var(--wc-baseColor); }
.button { position:relative; display:inline-block; text-decoration:none; border:none; text-align:center; }
.button > span { position:relative; display:inline-block; line-height:100%; }
.button[disabled] { opacity:0.2; pointer-events:none; cursor:not-allowed; }
._u, a._u, .button._u > span { text-decoration:underline !important; }
._u2, a._u2, .button._u2 > span { text-decoration:none !important; }
body.pc .ov { transition:0.2s; cursor:pointer; }
body.pc .ov:hover { opacity:0.75; }
body.pc a._u:hover, body.pc .button._u:hover > span { text-decoration:none !important; }
body.pc a._u2:hover, body.pc .button._u2:hover > span { text-decoration:underline !important; }
body.ipad .tel > a { pointer-events:none; }
body.safari select { -webkit-appearance:none; }
/* form */
textarea { field-sizing:content; }
input, textarea, button, select, .button { max-width:100%; }
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="date"], input[type="number"], input[type="url"], input[type="search"], textarea, select { border:1px solid #ccc; background:#FCFCFC; padding:8px; border-radius:3px; margin:0; }
input[type="text"], input[type="email"], input[type="url"], input[type="password"], textarea { width:100%; }
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="number"]:focus, input[type="url"]:focus, input[type="search"]:focus, textarea:focus { background:#fff; }
input[type="number"] { width:5em; text-align:right; -moz-appearance:textfield; }
input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance:none; }
input[type="date"] { width:10.5em; }
input[name="tel"], input[name="fax"] { max-width:12em; }
input[name="zip"] { max-width:10.5em; }
input[type="checkbox"], input[type="radio"] { margin-right:5px; }
.error { display:block; margin:0 0 5px; padding:5px 10px; border-radius:3px; font-weight:normal; }
.need { display:inline-block; font-size:12px; line-height:100%; padding:3px 5px; border-radius:3px; }
.required.default { border:2px solid #c40018; background:#fbe2e2; }
input[type="checkbox"].required.default { outline:3px solid #c40018; }
/* position */
.clearfix:after{ content:"."; font-size:1px; display:block; height:0; clear:both; line-height:0; visibility:hidden; }
.pos_al { text-align:left; } .pos_ac { text-align:center; } .pos_ar { text-align:right; }
.pos_vt { vertical-align:top !important; } .pos_vm { vertical-align:middle !important; } .pos_vb { vertical-align:bottom !important; }
.pos_re { position:relative; }
.abs_middle { position:absolute; left:0; top:50%; transform:translateY(-50%); width:100%; }
@media (min-width: 575px){ .pos_ac-xs { text-align:center; } }
@media (min-width: 768px){ .pos_ac-sm { text-align:center; } }
@media (min-width: 992px){ .pos_ar-md { text-align:right; } }
/* display */
.fw_bold { font-weight:bold !important; } .fw_normal { font-weight:normal !important; } .fw_middle { font-weight:500 !important; }
.disp_b { display:block; } .disp_ib { display:inline-block; }
.c_white { color:#fff !important; }
.wrapper, .wrapper-t, .wrapper-b, .wrapper2, .wrapper2-t, .wrapper2-b { position:relative; }
.center, .center2, .center3, .center4 { width:100%; margin-left:auto; margin-right:auto; text-align:left; padding-left:20px; padding-right:20px; }
.mb0 { margin-bottom:0 !important; } .mb5 { margin-bottom:5px !important; } .mb10 { margin-bottom:10px !important; }
.mb15 { margin-bottom:15px !important; } .mb20 { margin-bottom:20px !important; } .mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; } .mb50 { margin-bottom:50px !important; }
.p10 { padding:10px; } .p15 { padding:15px; }
@media (max-width: 575px){ .p30 { padding:20px 15px; } }
@media (min-width: 576px){ .p30 { padding:30px; } }
.rad5 { border-radius:5px; overflow:hidden; }
.rad10 { border-radius:10px; overflow:hidden; }
body.sp .hidden-sp { display:none !important; }
html { overflow-x:hidden; }
body, #base, #body { position:relative; width:100%; }
#alert_preview { position:fixed; bottom:0; left:0; width:100%; z-index:5000; padding:10px; color:#fff; background:#ff453a; text-align:center; opacity:0.5; }
/* parts */
.box { box-shadow:0 0 4px rgba(0,0,0,0.2); }
.tag { display:inline-block; line-height:100%; text-align:center; }
.list_pager ul:not(.pos_ar) { text-align:center; }
.list_pager ul li { display:inline-block; margin:0 3px 6px; }
.list_pager ul li > * { display:inline-block; aspect-ratio:1 / 1; width:45px; padding:10px 0; text-align:center; text-decoration:none; line-height:100%; }
@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%; !important; -webkit-text-size-adjust:100%; -moz-text-size-adjust:none; -ms-text-size-adjust:100%; text-size-adjust:100%; }
}
body.plx_on .plx { transition:opacity .7s .3s, transform 1s .3s; }
body.plx_on .plx.plx_op:not(.plx_on) { opacity:0; }
body.plx_on .plx.plx_vertical:not(.plx_on) { opacity:0; transform:translateY(25%); }
body.plx_on .plx.plx_left:not(.plx_on) { opacity:0; transform:translateX(-50%); }
body.plx_on .plx.plx_right:not(.plx_on) { opacity:0; transform:translateX(50%); }
/* entry */
.entry a { text-decoration:underline; color:#}
body.pc a:hover { text-decoration:none; }
.entry h2, .entry h3, .entry h4, .entry h5 { font-weight:bold; line-height:120%; }
.entry h2 { margin-bottom:20px; font-size:1.5em; }
.entry h3 { margin-bottom:15px; font-size:1.25em; }
.entry h4 { margin-bottom:10px; font-size:1.15em; }
.entry h5 { margin-bottom:5px; }
.entry * + h2 { margin-top:50px; }
.entry * + h3 { margin-top:40px; }
.entry * + h4 { margin-top:30px; }
.entry * + h5 { margin-top:20px; }
.entry h2 + h3, .entry h3 + h4, .entry h4 + h5 { margin-top:0; }
.entry p + p { margin-top:10px; }
.entry * + ul, .entry * + ol { margin-top:15px; }
.entry ul, .entry ol { list-style:none; list-style-type:none; margin-bottom:20px; }
.entry ul > li, .entry ol > li { position:relative; margin:0 0 5px; padding-left:20px; }
.entry ul > li > ul, .entry ul > li > ol, .entry ol > li > ul, .entry ol > li > ol { margin-top:5px; margin-bottom:5px; }
.entry ol { counter-reset:ol_li; }
.entry ul > li:before { position:absolute; content:"●"; font-size:0.6em; top:0.2em; left:0; }
.entry ul > li > ul > li:before { content:"■"; }
.entry ol > li:before { counter-increment:ol_li; content:counter(ol_li)"."; position:absolute; top:0; left:0; font-weight:bold; }
.entry * + table, .entry * + .sp_table_wrap { margin-top:15px; }
.entry table { width:100%; }
.entry table, .entry .sp_table_wrap { margin-bottom:20px; }
.entry table tr > * { vertical-align:middle; }
.entry table th { font-weight:bold; }
.entry table thead th { text-align:center; }
.entry table tbody th { text-align:left; }
@media (max-width: 575px){
	.entry table { font-size:13px; }
	.entry table tr > * { padding:10px 5px; }
}
@media (min-width: 576px) and (max-width: 767px){
	.entry table { font-size:14px; }
	.entry table tr > * { padding:10px; }
}
@media (min-width: 768px){
	.entry table tr > * { padding:15px; }
	.entry table tbody th { width:200px; }
}
/* cookie */
#foot_cookie { position:fixed; bottom:0; left:0; width:100%; z-index:1000; }
#foot_cookie .foot_cookie_wrap { padding:0 20px; margin:0 auto; }
#foot_cookie .foot_cookie_button a { display:inline-block; width:100%; text-align:center; line-height:100%; }
#foot_cookie .title { font-weight:bold; }
#foot_cookie .btn_cookie { display:block; }
#foot_cookie .btn_cookie._ok { padding:15px 0; }
#foot_cookie .btn_cookie._no { padding:12px 0; }
@media (max-width: 575px){
	#foot_cookie p { margin-bottom:10px; }
	#foot_cookie .foot_cookie_buttons { display:flex; align-items:center; }
	#foot_cookie .foot_cookie_button { width:50%; }
	#foot_cookie .foot_cookie_button:first-child { padding-right:3px; }
	#foot_cookie .foot_cookie_button:last-child { padding-left:3px; }
}
@media (min-width: 576px){
	#foot_cookie .foot_cookie_wrap { display:flex; align-items:center; }
	#foot_cookie .foot_cookie_unit._left { padding-right:15px; }
	#foot_cookie .foot_cookie_unit._right { flex:1 0 auto; }
	#foot_cookie .btn_cookie._ok { margin-bottom:5px; }
}
@media (min-width: 576px) and (max-width: 767px){
	#foot_cookie .foot_cookie_unit._right { width:120px; }
}
@media (min-width: 768px) and (max-width: 991px){
	#foot_cookie .foot_cookie_unit._right { width:150px; }
}
@media (max-width: 991px){
	#foot_cookie { padding:15px 0; }
	#foot_cookie .title { font-size:16px; }
	#foot_cookie p { font-size:12px; line-height:19px; }
	#foot_cookie .foot_cookie_button a { font-size:15px; }
	body.wcacc #foot_cookie { padding-bottom:55px; }
}
@media (min-width: 992px){
	#foot_cookie { padding:15px 0 20px; }
	#foot_cookie .foot_cookie_unit._right { width:180px; }
	#foot_cookie .title { font-size:18px; }
	#foot_cookie p { font-size:15px; line-height:22px; }
	#foot_cookie .foot_cookie_button a { font-size:16px; }
}
@media (min-width: 992px) and (max-width:1599px){
	body.wcacc #foot_cookie { padding-bottom:65px; }
}
@media (min-width:1600px){
	body.wcacc #foot_cookie { padding-left:300px; }
}
@media (min-width:2000px){
	#foot_cookie .foot_cookie_unit._right { width:300px; }
	#foot_cookie .foot_cookie_buttons { display:flex; align-items:center; }
	#foot_cookie .foot_cookie_button { width:50%; }
	#foot_cookie .foot_cookie_button:first-child { padding-right:3px; }
	#foot_cookie .foot_cookie_button:last-child { padding-left:3px; }
	#foot_cookie .btn_cookie._ok { margin-bottom:0; }
}
@media (prefers-color-scheme: light){
	#foot_cookie { background:#f2f2f7; }
	#foot_cookie .btn_cookie._ok { border:2px solid #007aff; color:#007aff; }
	#foot_cookie .btn_cookie._no { border:1px solid #657086; color:#657086; }
	html.wcacc_dark #foot_cookie{ background:#6c6c70; }
	html.wcacc_dark #foot_cookie .btn_cookie._ok { border:2px solid #fff; color:#fff; }
	html.wcacc_dark #foot_cookie .btn_cookie._no { border:1px solid #d8d8dc; color:#d8d8dc; }
}
@media (prefers-color-scheme: dark){
	#foot_cookie { background:#6c6c70; }
	#foot_cookie .btn_cookie._ok { border:2px solid #fff; color:#fff; }
	#foot_cookie .btn_cookie._no { border:1px solid #ebebf0; color:#ebebf0; }
}
