@charset "utf-8";

/*========================

common.css

========================*/

/*---------------------------------------------
reset
---------------------------------------------*/
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}

h1, h2, h3, h4, h5, h6 { font-size:100%; font-weight:normal; }
table, th, td { border-collapse:collapse;border-spacing:0;}
th , td { word-wrap:break-word; }
ol li, ul li { list-style:none; }
img { border:0; vertical-align:bottom; }
input, textarea { vertical-align:middle; }
address, em { font-style:normal; }

*:focus { outline: none; }

html { font-size: 62.5%; }

body { font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Noto Sans JP', 'roboto', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif; line-height:1; height:100%; text-align:left; margin:0; padding:0; background-color:var(--blue02); color:#2b2b2b; -webkit-text-size-adjust:100%; position:relative; overflow-x:hidden; }

:root {
--at:#d9152a;
--at_op10:#fdeef0;
--mt:#0053a0;
--mt_op10:f2f6fe;

--deepblue:#00479C;
--blue:#108CCF;
--blue01:#E7F4FB;
--blue02:#D3EBFB;
--blue03:#A8D6F6;
--pale_blue:#dcedfa;

--light_yellow:#fef282;
--yellow:#FEE506;

--orange:#ff6200;
--middle_orange:#ff9600;
--light_orange:#fbe1bd;
--light_orange2:ffcc99;
--light_orange3:#fdcb98;
--pale_orange:#fff0db;
--orange2:#f68f4a;
--orange3:#F2971C;
--cl_orange:#F36101;

--light_red:#FDE2D3;
--red:#CB0402;
--light_green:#E1F3E8;
/*--green:#3BC183;*/
/*--green:#44a75a;*/
--green:#50B300;
--middle_green:#34865C;
--deep_green:#064726;
--golf:#369c09;

--gray_f2:#f2f2f2;
--gray_ee:#EEEEEE;
--gray_eb:#EBEBEB;
--gray_dd:#DDDDDD;
--gray_cc:#CCCCCC;
--gray_9f:#9F9F9F;
--gray_70:#707070;
--gray_66:#666666;
--gray_51:#515151;
--gray_33:#333333;
--pale_gray:#F4F4F7;
--white:#FFFFFF;
--dark_black:#1A1A1A;
--black:#333333;

--black_op20:rgba(0,0,0,0.2);
--black_op60:rgba(0,0,0,0.6);
--black_op70:rgba(0,0,0,0.7);
--black_op80:rgba(0,0,0,0.8);

--pale_yellow:#fffdeb;
--pink:#f76a6a;
--light_pink:#FFC9EC;
--pale_pink:#ffe6eb;

--light_blue:#D9F2FF;
--pale_blue:#bce8f1;

--light_green:#eef6e7;
--blue_green:#4fac80;

/*--- gradient ---*/
--grad_blue:rgb(16,140,207);
--grad_blue:linear-gradient(180deg, rgba(33,161,231,1) 0%, rgba(16,140,207,1) 100%);
--grad_blue_rev:rgb(16,140,207);
--grad_blue_rev:linear-gradient(180deg, rgba(16,140,207,1) 0%, rgba(33,161,231,1) 100%);

--grad_blue2:rgb(168,214,246);
--grad_blue2:linear-gradient(180deg, rgba(211,235,251,1) 0%, rgba(168,214,246,1) 100%);
--grad_blue2_rev:rgb(168,214,246);
--grad_blue2_rev:linear-gradient(180deg, rgba(168,214,246,1) 0%, rgba(211,235,251,1) 100%);

--grad_blue3:rgb(211,235,251);
--grad_blue3:linear-gradient(180deg, rgba(231,244,251,1) 0%, rgba(211,235,251,1) 100%);
--grad_blue3_rev:rgb(211,235,251);
--grad_blue3_rev:linear-gradient(180deg, rgba(211,235,251,1) 0%, rgba(231,244,251,1) 100%);


--option_bg:#ffed9d;
--option_bg_op20:rgba(255,237,157,0.2);
--option_shadow:#bfb276;

--option01:#2e9fff;
--option02:#ee70a6;
--option03:#56c1ab;
--option04:#7ac70c;
--option05:#00b6e3;
--option06:#a560e8;
--option07:#faa918;
--option08:#8762c9;

--target:#ffd14f;

--hilight:#ffff77;

--link:#3399cc;
--link_color:#021e88;


/*--- plan ---*/

--short:#D9152A;
--schedule:#19933E;

--safety:#f26c8d;
--safety_shadow:#bc3a59;
--safety_op10:rgba(242,108,141,0.1);
--safety_op20:rgba(242,108,141,0.2);
--safety_op40:rgba(242,108,141,0.4);
--safety_op80:rgba(242,108,141,0.8);

--short:#4ebe67;
--short_shadow:#3e6a48;
--short_op20:rgba(78,190,103,0.2);
--short_op40:rgba(78,190,103,0.4);

--reserve:#4E85ED;
--reserve_shadow:#2e4c86;
--reserve_op20:rgba(78,133,237,0.2);
--reserve_op40:rgba(78,133,237,0.4);

--fullorder:#8455be;
--fullorder_shadow:#664292;
--fullorder_op20:rgba(132,85,190,0.2);
--fullorder_op40:rgba(132,85,190,0.4);

--semiorder:#eb9320;
--semiorder_shadow:#966415;
--semiorder_op20:rgba(235,147,32,0.2);
--semiorder_op40:rgba(235,147,32,0.4);

--standard:#4E85ED;

.cl_white { color:#FFFFFF; }
.cl_red { color:#d9152a; }
.cl_blue { color:#108CCF; }
.cl_orange { color:var(--orange); }

.cl_sun { color:#d9152a; }
.cl_sat { color:#4E85ED; }

.font_bold { font-weight:600; }

--max-width:1280px;

/*--- gradient ---*/
--grad_btn:rgb(190,211,231);
--grad_btn:linear-gradient(180deg, rgba(238,243,246,1) 0%, rgba(190,211,231,1) 100%);
--grad_btn_rev:rgb(190,211,231);
--grad_btn_rev:linear-gradient(180deg, rgba(190,211,231,1) 0%, rgba(238,243,246,1) 100%);


--mincho:"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
--icon: "Font Awesome 6 Pro";
}

.di_none { display:none; }

.sp { display:none; }
.pc { display:flex; }

.t_left { text-align:left; }
.t_center { text-align:center; }
.t_right { text-align:right; }

/*---------------------------------------------
header
---------------------------------------------*/
header {
position:relative;
z-index:3;
}

#header {
align-items:center;
display:flex;
justify-content:center;
padding:0 20px;
position:fixed;
top:15px;
width:100%;
z-index:3;
}

#header #header_cont {
align-items:center;
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
column-gap:15px;
display:flex;
flex:1 1 1280px;
justify-content:space-between;
padding:0 10px 0 20px;
overflow-x:hidden;
}

#header #header_cont #header_left {
align-items:center;
column-gap:20px;
display:flex;
flex:1 1 auto;
justify-content:start;
overflow-x:hidden;
}

#header #header_cont #header_left h1 {
/*flex:0 1 180px;/
flex:0 1 200px;
min-width:109px;
/*max-width:180px;*/
max-width:200px;
padding:15px 0;
}

#header #header_cont #header_left h1 a img {
aspect-ratio:38 / 13;
height:auto;
max-height:46px;
width:auto;
}

#header #header_cont #header_left h1 a:hover img {
opacity:0.7;
}

#header #header_cont #header_left #h_nav {
flex:1 1 auto;
overflow-x:hidden;
}

#header #header_cont #header_left #h_nav > ul {
border-left:1px solid var(--gray_dd);
display:flex;
}

#header #header_cont #header_left #h_nav > ul > li {
border-right:1px solid var(--gray_dd);
padding:0 10px;
position:relative;
}

#header #header_cont #header_left #h_nav > ul > li dl {
align-items:center;
column-gap:5px;
display:flex;
justify-content:center;
}

#header #header_cont #header_left #h_nav > ul > li dl dt {
position:relative;
}

#header #header_cont #header_left #h_nav > ul > li dl dt > a {
display:flex;
font-size: 1.5rem;
font-weight:600;
line-height:1;
padding:15px 25px 15px 15px;
position:relative;
white-space: nowrap;
}

#header #header_cont #header_left #h_nav > ul > li dl dt > a:after {
content:"\f078";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:5px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#header #header_cont #header_left #h_nav > ul > li dl dt > a:hover {
background-color:var(--light_yellow);
border-radius:6px;
color:var(--blue);
font-weight:600;
}

#header #header_cont #header_left #h_nav > ul > li dl dt > a:hover:after {
color:var(--blue);
font-weight:600;
}

#header #header_cont #header_left #h_nav > ul > li dl dd {
position:relative;
}

#header #header_cont #header_left #h_nav > ul > li dl dd a {
display:flex;
font-size: 1.5rem;
font-weight:600;
line-height:1;
padding:15px 30px 15px 20px;
position:relative;
white-space: nowrap;
}

#header #header_cont #header_left #h_nav > ul > li dl dd a:after {
content:"\f078";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#header #header_cont #header_left #h_nav > ul > li dl dd a:hover {
background-color:var(--light_yellow);
border-radius:6px;
color:var(--blue);
font-weight:600;
}

#header #header_cont #header_left #h_nav > ul > li dl dd a:hover:after {
color:var(--blue);
font-weight:600;
}

#header #header_cont #header_left #h_nav > ul > li > a  {
display:flex;
font-size: 1.5rem;
font-weight:600;
padding:15px 45px 15px 20px;
position:relative;
white-space: nowrap;
}

#header #header_cont #header_left #h_nav > ul > li > a:after {
content:"\f078";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#header #header_cont #header_left #h_nav > ul > li > a:hover {
background-color:var(--light_yellow);
border-radius:6px;
color:var(--blue);
}

#header #header_cont #header_left #h_nav > ul > li > a:hover:after {
color:var(--blue);
font-weight:600;
}

/* Submenu */

#header #header_cont #header_left #h_nav > ul > li .sub_menu {
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
border-radius:0 0 6px 6px;
position:fixed;
opacity:0;
display:none;
margin-left:-10px;
padding: 16px 0 0;
z-index:4;
-webkit-transition:opacity 0.5s;
transition: opacity 0.5s;
}

#header #header_cont #header_left #h_nav > ul > li:hover .sub_menu {
display:flex;
flex-direction:column;
opacity:1;
}

#header #header_cont #header_left #h_nav > ul > li .sub_menu > a {
background-color:var(--white);
border-top:1px solid var(--gray_ee);
display:flex;
font-size:1.3rem;
padding:20px 50px 20px 25px;
position:relative;
z-index:4;
}

#header #header_cont #header_left #h_nav > ul > li .sub_menu > a:last-child {
border-radius:0 0 6px 6px;
}

#header #header_cont #header_left #h_nav > ul > li .sub_menu > a:after {
content:"\f054";
color:var(--blue);
font-family:var(--icon);
font-size:1.0rem;
font-weight:600;
right:15px;
top:50%;
margin-top:-6px;
opacity:0.7;
position:absolute;
z-index:4;
}

#header #header_cont #header_left #h_nav > ul > li .sub_menu > a:hover:before {
background-color:var(--light_yellow);
border-radius:6px;
color:var(--blue);
content:" ";
height:38px;
left:10px;
top:7px;
position:absolute;
width:calc(100% - 20px);
z-index:-1;
}

#header #header_cont #header_left .student_menu {
display:flex;
position: fixed;
left: 15px;
bottom: 15px;
}

#header #header_cont #header_left .student_menu a {
background-color:var(--white);
border:1px solid var(--blue);
border-radius:25px;
color:var(--blue);
display:flex;
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
padding:13px 25px 13px 15px;
position:relative;
}

#header #header_cont #header_left .student_menu a:after {
content:"\f054";
color:var(--blue);
font-family:var(--icon);
font-size: calc(0.4rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:0.5;
position:absolute;
z-index:3;
}

/*--- header_right ---*/

#header #header_cont #header_right {
align-items:center;
column-gap:15px;
display:flex;
justify-content:flex-end;
flex: 0 1 auto;
}

#header #header_cont #header_right .entry {
}

#header #header_cont #header_right .entry a {
background-color:var(--orange);
border:2px solid var(--orange);
border-radius:4px;
color:var(--white);
font-size: 1.3rem;
font-weight:600;
line-height:1;
letter-spacing:-0.05em;
padding:10px 18px;
white-space: nowrap;
}

#header #header_cont #header_right .entry a:hover {
background-color:var(--white);
color:var(--orange);
}

#header #header_cont #header_right .contact {
display:flex;
}

#header #header_cont #header_right .contact a {
align-items:center;
background-color:var(--white);
border-radius:4px;
border:1px solid var(--blue);
display:flex;
letter-spacing:-0.05em;
padding:0 10px 0 0;
position:relative;
white-space: nowrap;
}

#header #header_cont #header_right .contact a span {
color:var(--blue);
font-weight:600;
font-size: 1.1rem;
line-height:1.2;
height: 100%;
display: flex;
align-items: center;
padding-top: 1px;
}

#header #header_cont #header_right .contact a img {
height:35px;
width:62px;
}

#header #header_cont #header_right .contact a:hover {
background-color:var(--blue);
}

#header #header_cont #header_right .contact a:hover span {
color:var(--white);
}

/*---------------------------------------------
h_menu
---------------------------------------------*/
#header #header_cont #h_menu {
display:flex;
width:54px;
height:54px;
z-index:12;
}

#header #header_cont #h_menu dl {
display:flex;
flex-direction:column;
justify-content:center;
}

#header #header_cont #h_menu dl dt {
position:relative;
width:54px;
height:54px;
}

#header #header_cont #h_menu dl dt .menu_trigger,
#header #header_cont #h_menu dl dt .menu_trigger span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
cursor:pointer;
}

#header #header_cont #h_menu dl dt .menu_trigger {
align-items:center;
display:flex;
justify-content:center;
position:relative;
top: 0;
left:8px;
width:34px;
height:34px;
z-index: 102;
}

#header #header_cont #h_menu dl dt .menu_trigger span {
position: absolute;
background-color: var(--blue);
width:22px;
height:2px;
left:7px;
right: auto;
margin: auto;
border-radius:6px;
}

#header #header_cont #h_menu dl dt .menu_trigger span:nth-of-type(1) {
top:10px;
}

#header #header_cont #h_menu dl dt .menu_trigger span:nth-of-type(2) {
top:17px;
}

#header #header_cont #h_menu dl dt .menu_trigger span:nth-of-type(3) {
top:24px;
}

#header #header_cont #h_menu dl dt .menu_trigger.active span {
background-color: var(--blue);
}

/*
#header #header_cont #h_menu dl dt .menu_trigger.active span {
background-color: var(--blue);
}

#header #header_cont #h_menu dl dt .menu_trigger.active span:nth-of-type(1) {
-webkit-transform: translateY(6px) rotate(-45deg);
transform: translateY(6px) rotate(-45deg);
}

#header #header_cont #h_menu dl dt .menu_trigger.active span:nth-of-type(2) {
opacity:0;
}

#header #header_cont #h_menu dl dt .menu_trigger.active span:nth-of-type(3) {
-webkit-transform: translateY(-8px) rotate(45deg);
transform: translateY(-8px) rotate(45deg);
}
*/

#header #header_cont #h_menu dl dd {
color:var(--blue);
font-weight:600;
letter-spacing:-0.05em;
padding-bottom:8px;
text-align:center;
}

.fixed #header #header_cont {
}

/*--- pattern_b ---*/
#header.pattern_b {
}

#header.pattern_b #header_cont {
}

#header.pattern_b #header_cont #header_left  {
}

#header.pattern_b #header_cont #header_left  h1 {
padding:5px 0;
max-width:300px;
}

#header.pattern_b #header_cont #header_left  h1 a  {
column-gap:15px;
display:flex;
justify-content:start;
}

#header.pattern_b #header_cont #header_left  h1 a span.site_name {
align-items:start;
display:flex;
flex-direction:column;
justify-content:center;
row-gap:5px;
padding-top:5px;
}

#header.pattern_b #header_cont #header_left  h1 a span span:first-child {
color:#1275b9;
font-size:calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
white-space:nowrap;
}

#header.pattern_b #header_cont #header_left  h1 a span span:nth-child(2) {
font-size:calc(0.2rem + ((1vw - 0.48rem) * 0.6944));
}

/*--- pattern_c ---*/
#header.pattern_c {
}

#header.pattern_c #header_cont {
background-color:var(--blue);
}

#header.pattern_c #header_cont #header_left  {
}

#header.pattern_c #header_cont #header_left  h1 {
padding:5px 0;
max-width:300px;
}

#header.pattern_c #header_cont #header_left  h1 a  {
column-gap:15px;
display:flex;
justify-content:start;
}

#header.pattern_c #header_cont #header_left  h1 a span.site_name {
align-items:start;
display:flex;
flex-direction:column;
justify-content:center;
row-gap:5px;
padding-top:5px;
}

#header.pattern_c #header_cont #header_left  h1 a span span:first-child {
color:var(--white);
font-size:calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
white-space:nowrap;
}

#header.pattern_c #header_cont #header_left  h1 a span span:nth-child(2) {
color:var(--white);
font-size:calc(0.2rem + ((1vw - 0.48rem) * 0.6944));
}

#header.pattern_c #header_cont #header_left #h_nav > ul > li dl dt > a span {
color:var(--white);
}

#header.pattern_c #header_cont #header_left #h_nav > ul > li dl dd a span {
color:var(--white);
}

#header.pattern_c #header_cont #header_left #h_nav > ul > li > a span {
color:var(--white);
}

#header.pattern_c #header_cont #h_menu dl dt .menu_trigger span {
background-color:var(--white);
}

#header.pattern_c #header_cont #h_menu dl dd {
color:var(--white);
}

#header.pattern_c #header_cont #header_left #h_nav > ul > li > a:hover span,
#header.pattern_c #header_cont #header_left #h_nav > ul > li dl dd a:hover span,
#header.pattern_c #header_cont #header_left #h_nav > ul > li dl dt > a:hover span {
color:var(--black);
}

/*---------------------------------------------
container
---------------------------------------------*/
#container {
display:flex;
}

/*---------------------------------------------
left_nav
---------------------------------------------*/
#left_nav {
flex: 0 0 290px;
height:100vh;
padding-top:0;
position:relative;
width:290px;
z-index:2;
}

#left_nav #left_nav_menu {
position:fixed;
left:0;
overflow-y: scroll;
width:290px;
z-index:2;
height:calc(100vh - 120px);
top:auto;
overflow-y:auto;
height:100%;
-webkit-overflow-scrolling:touch;
padding:110px 0 150px;
}

#left_nav #left_nav_menu #left_nav_menu_cont {
background-color:var(--white);
border-radius:0 12px 12px 0;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex-direction:column;
margin-top:15px;
padding:0;
}

#left_nav .bigginers {
align-items:center;
display:flex;
justify-content:center;
margin:0 0 0 auto;
padding:0;
width:calc(100% - 80px);
z-index:2;
}

#left_nav .bigginers a {
align-items:center;
background-color:var(--green);
border-radius:24px;
color:var(--white);
column-gap:10px;
display:flex;
flex:1;
justify-content:center;
padding:10px 20px 10px 10px;
position:relative;
}

#left_nav .bigginers a:after {
content:"\f054";
color:var(--white);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:15px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:2;
}

#left_nav .bigginers a img {
width: 100%;
height: 100%;
aspect-ratio: 36 / 55;
max-height:23px;
width:auto;
}

#left_nav .bigginers a span {
font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
white-space: nowrap;
}

#left_nav .bigginers a:hover {
background-color:var(--light_yellow);
color:var(--blue);
}

#left_nav .bigginers a:hover:after {
color:var(--blue);
}


#left_nav #left_nav_menu dl.menu {
background-color:var(--blue);
border-radius:0 12px 0 0;
display:flex;
flex-direction:column;
row-gap:25px;
margin-top:0px;
padding:35px;
}

#left_nav #left_nav_menu dl.menu dt {
color:var(--white);
font-size:1.7rem;
font-weight:600;
text-align:center;
}

#left_nav #left_nav_menu dl.menu > dd {
}

#left_nav #left_nav_menu dl.menu > dd > ul {
background-image: linear-gradient(to right, #fff, #fff 1px, transparent 1px, transparent 3px);
background-size: 3px 1px;
background-repeat: repeat-x;
background-position: left top;
display:flex;
flex-direction:column;
}

#left_nav #left_nav_menu dl.menu > dd > ul > li {
background-image: linear-gradient(to right, #fff, #fff 1px, transparent 1px, transparent 3px);
background-size: 3px 1px;
background-repeat: repeat-x;
background-position: left bottom;
color:var(--white);
font-size:1.7rem;
font-weight:600;
padding:5px 0;
}

#left_nav #left_nav_menu dl.menu > dd > ul > li > a {
display:flex;
padding:15px 15px;
position:relative;
width:100%;
}

#left_nav #left_nav_menu dl.menu > dd > ul > li > a:after {
content:"\f054";
color:var(--white);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:5px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#left_nav #left_nav_menu dl.menu > dd > ul > li > a:hover {
background-color:var(--light_yellow);
border-radius:6px;
color:var(--blue);
cursor:pointer;
}

#left_nav #left_nav_menu dl.menu > dd > ul > li > a:hover:after {
color:var(--blue);
font-weight:600;
}

#left_nav #left_nav_menu #left_nav_conversion {
background-color:var(--white);
border-radius:0 0 12px 0;
display:flex;
flex-direction:column;
padding:20px 30px 25px;
row-gap:15px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel {
display:flex;
flex-direction:column;
row-gap:10px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel > dl {
}

#left_nav #left_nav_menu #left_nav_conversion .tel > dl > dt {
align-items:center;
background-color:var(--blue01);
border-radius:20px;
color:var(--blue);
display:flex;
justify-content:center;
font-size:1.3rem;
font-weight:600;
line-height:1.6;
padding:5px 10px;
text-align:center;
}

#left_nav #left_nav_menu #left_nav_conversion .tel > dl > dd a {
align-items:center;
display:flex;
justify-content:center;
}

#left_nav #left_nav_menu #left_nav_conversion .tel > dl > dd a img {
width: 100%;
height: 100%;
aspect-ratio: 55 / 9;
}

#left_nav #left_nav_menu #left_nav_conversion .tel > dl > dd a:hover img {
opacity:0.7;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour {

}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul {
display:flex;
flex-direction:column;
row-gap:10px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li {

}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li dl {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li dl dt {
font-size: 1.3rem;
flex: 0 0 50px;
padding:3px;
white-space: nowrap;
width:50px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li dl dd {
letter-spacing:-0.03em;
white-space: nowrap;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li dl dd span:first-child {
font-size: 1.6rem;
font-family: Arial;
font-weight:600;
letter-spacing:-0.01em;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li dl dd span:nth-child(2) {
font-size: 1.2rem;
letter-spacing:-0.03em;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li.weekdays dl dt {
background-color:var(--blue01);
color:var(--deepblue);
text-align:center;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour ul li.sat_sun_hol dl dt {
background-color:var(--light_red);
color:var(--red);
text-align:center;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour .extended {
background-color:var(--pale_orange);
border-radius:3px;
margin-top:15px;
padding:10px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour .extended dl {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour .extended dl dt {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour .extended dl dt span {
background-color:var(--white);
border-radius:3px;
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
padding:3px;
}

#left_nav #left_nav_menu #left_nav_conversion .tel .open_hour .extended dl dd {
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
}

#left_nav #left_nav_menu #left_nav_conversion #left_nav_conversion_bottom {
display:flex;
flex-direction:column;
row-gap:15px;
}

#left_nav #left_nav_menu #left_nav_conversion .entry a {
background-color:var(--orange);
border-radius:4px;
border:2px solid var(--orange);
color:var(--white);
display:flex;
justify-content:center;
font-size: 1.3rem;
font-weight:600;
line-height:1;
letter-spacing:-0.05em;
padding:14px 18px;
position:relative;
white-space: nowrap;
}

#left_nav #left_nav_menu #left_nav_conversion .entry a:after {
content:"\f054";
color:var(--white);
font-family:var(--icon);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
right:5px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#left_nav #left_nav_menu #left_nav_conversion .entry a:hover {
background-color:var(--white);
color:var(--orange);
}

#left_nav #left_nav_menu #left_nav_conversion .entry a:hover:after {
color:var(--orange);
}

#left_nav #left_nav_menu #left_nav_conversion .contact {

}

#left_nav #left_nav_menu #left_nav_conversion .contact a {
align-items:center;
border-radius:4px;
border:1px solid var(--blue);
display:flex;
justify-content:center;
letter-spacing:-0.05em;
padding:15px 10px 15px 0;
position:relative;
white-space: nowrap;
}

#left_nav #left_nav_menu #left_nav_conversion .contact a:after {
content:"\f054";
color:var(--blue);
font-family:var(--icon);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
right:5px;
top:50%;
margin-top:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

#left_nav #left_nav_menu #left_nav_conversion .contact a span {
color:var(--blue);
font-weight:600;
font-size: 1.3rem;
text-align:center;
}

#left_nav #left_nav_menu #left_nav_conversion .contact a img {
height:35px;
width:62px;
left:50%;
margin-left:-31px;
top:-18px;
position:absolute;
}

#left_nav #left_nav_menu #left_nav_conversion .contact a:hover {
background-color:var(--blue);
}

#left_nav #left_nav_menu #left_nav_conversion .contact a:hover:after {
color:var(--white);
}

#left_nav #left_nav_menu #left_nav_conversion .contact a:hover span {
color:var(--white);
}

/*--- left_nav_bottom_menu ---*/
#left_nav #left_nav_menu #left_nav_bottom_menu {

}

#left_nav #left_nav_menu #left_nav_bottom_menu ul {
display:flex;
padding: 0 35px 35px;
}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li {

}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li a {
align-items:center;
background-color:var(--blue01);
border-radius:6px;
display:flex;
flex-direction:column;
justify-content:center;
padding:10px;
row-gap:10px;
}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li a img {
height:20px;
width:auto;
}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li a span {
font-weight:600;
font-size: 1.0rem;
}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li a:hover {
background-color:var(--light_yellow);
border:none;
}

#left_nav #left_nav_menu #left_nav_bottom_menu ul li a:hover span {
color:var(--blue);
}

#left_nav.close {
display:none;
}

#container #open_close_btn {
height:43px;
background-color:var(--white);
border-radius:0 20px 20px 0;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
justify-content:center;
padding:15px;
position:fixed;
top:110px; 
width:60px; 
z-index:5;
}

#container #open_close_btn:hover {
background-color:var(--yellow);
cursor:pointer;
}

#container #open_close_btn:after {
content:"\f053";
color:var(--blue);
font-family:var(--icon);
font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
left:23px;
top:50%;
margin-top:-6px;
position:absolute;
z-index:3;
}

#container.close_left_nav #open_close_btn:after {
content:"\f054";
}

#container #open_close_btn:hover:after {
color:var(--blue);
}


/*---------------------------------------------
main
---------------------------------------------*/
#main {
flex:1;
}

/*---------------------------------------------
pagetop
---------------------------------------------*/
#pagetop {
position:fixed;
/*bottom:20px;*/
/*left:30px;*/
right:0;
bottom:110px;
z-index:5;
}

#pagetop a {
align-items:center;
background-color:var(--blue);
/*border-radius:50%;*/
border-radius:6px 0 0 6px;
flex-direction:column;
display:flex;
justify-content:center;
position:relative;
/*height:100px;*/
/*width:100px;*/
height:50px;
width:50px;
}

#pagetop a:hover {
opacity:0.8;
}

#pagetop a:after {
content:"\f077";
color:var(--white);
font-family:var(--icon);
font-size:1.2rem;
font-weight:600;
left:50%;
margin-left:-6px;
top:20px;
opacity:0.7;
position:absolute;
font-size:100%;
z-index:3;
}
#pagetop a span {
display:none;
color:var(--white);
font-size:1.1rem;
font-weight:600;
}

body.fixed #pagetop {
z-index:1;
}

/*---------------------------------------------
btn
---------------------------------------------*/
.btn label,
.btn a {
align-items:center;
background-color:var(--white);
border-color:var(--gray_70);
border-style:solid;
border-width:1px;
border-radius:40px;
column-gap:15px;
display:flex;
font-size:1.8rem;
font-weight:600;
justify-content:center;
padding:30px 60px;
position:relative;
text-align:center;
}
.btn label:after,
.btn a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-weight:600;
right:20px;
top:50%;
margin-top:-7px;
position:absolute;
font-size:1.6rem;
z-index:1; 
}

.btn a img {
height:19px;
width:auto;
}

.btn.orange a {
border-color:var(--orange);
color:var(--orange);
font-weight:600;
}
.btn.orange a:after {
color:var(--orange);
}
.btn.orange a:hover {
opacity:0.7;
}

.btn.blue label,
.btn.blue a {
border-color:var(--blue);
color:var(--blue);
font-weight:600;
}

.btn.blue label:after,
.btn.blue a:after {
color:var(--blue);
}
.btn.blue a:hover {
opacity:0.7;
}

.btn.gray label,
.btn.gray a {
border-color:var(--gray_dd);
color:var(--gray_9f);
font-weight:600;
}

.btn.gray label:after,
.btn.gray a:after {
color:var(--gray_dd);
}

.btn.gray label:hover,
.btn.gray a:hover {
border-color:var(--group);
color:var(--group);
}
.btn.gray label:hover:after,
.btn.gray a:hover:after {
color:var(--group);
}

.btn.red a {
border-color:var(--group);
color:var(--red);
font-weight:600;
}
.btn.red a:after {
color:var(--group);
}
.btn.red a:hover {
opacity:0.7;
}

/*--- btn_bg_color ---*/
.btn.bg_red label,
.btn.bg_red a {
background-color:var(--group);
border:none;
color:var(--white);
font-weight:600;
}
.btn.bg_red label,
.btn.bg_red a:after {
color:var(--white);
opacity:0.7;
font-size:1.5rem;
}
.btn.bg_red label:hover,
.btn.bg_red a:hover {
cursor:pointer;
opacity:0.7;
}

.btn.bg_blue label,
.btn.bg_blue a {
background-color:var(--blue);
border:none;
color:var(--white);
font-weight:600;
}
.btn.bg_blue label:after,
.btn.bg_blue a:after {
color:var(--white);
opacity:0.7;
}
.btn.bg_blue label:hover,
.btn.bg_blue a:hover {
cursor:pointer;
opacity:0.7;
}

.btn.bg_orange label,
.btn.bg_orange a {
background-color:var(--orange);
border:none;
color:var(--white);
font-weight:600;
}
.btn.bg_orange label:after,
.btn.bg_orange a:after {
color:var(--white);
opacity:0.6;
}
.btn.bg_orange label:hover,
.btn.bg_orange a:hover {
cursor:pointer;
opacity:0.6;
}

.btn.bg_green label,
.btn.bg_green a {
background-color:var(--green);
border:none;
color:var(--white);
font-weight:600;
}
.btn.bg_green label:after,
.btn.bg_green a:after {
color:var(--white);
opacity:0.6;
}
.btn.bg_green label:hover,
.btn.bg_green a:hover {
cursor:pointer;
opacity:0.6;
}

/*--- btn_group ---*/
.btn_group {
margin-top:30px;
}
.btn_group ul {
column-gap:30px;
display:flex;
flex-direction:column;
}
.btn_group ul li {
flex:0 0 100%;
}
.btn_group ul li a {
}

/*--- size ---*/
.btn.s label,
.btn.s a {
border-radius:30px;
font-size: 1.3rem;
font-weight: 600;
padding: 17px 30px;
}

.btn.s label:after,
.btn.s a:after {
font-size:1.2rem;
right:15px;
top:50%;
margin-top:-6px;
}

.btn.l label,
.btn.l a {
border-radius:50px;
display:flex;
font-size:1.6rem;
padding:30px 50px;
}

/*--- disabled ---*/

/*---------------------------------------------
nav
---------------------------------------------*/
nav {
position:relative;
width:100%;
}
#nav {
background-color:var(--white);
display:none;
justify-content:center;
position:relative;
}

/*
#nav:after {
background-color:var(--middle_beige);
content:" ";
height:5px;
position:absolute;
bottom:0;
width:100%;
}
#nav ol {
display:flex;
justify-content:center;
flex:1;
margin:0 auto;
max-width:1280px;
padding:0 50px;
position:relative;
}
#nav ol li {
display:flex;
position:relative;
text-align:center;
flex:0 0 20%;
}

#nav ol li:after {
background-color:var(--light_gray);
content:" ";
height:30px;
margin-top:-15px;
position:absolute;
top:50%;
width:1px;
}

#nav ol li:last-child:before {
background-color:var(--light_gray);
content:" ";
height:30px;
margin-top:-15px;
position:absolute;
top:50%;
right:0;
width:1px;
}

#nav ol li a {
align-items:center;
color:var(--gray);
display:flex;
font-weight:600;
justify-content:center;
font-size:1.6rem;
line-height:1.6;
padding:30px 15px;
position:relative;
width:100%;
}

#nav ol li a:before {
content:"\f078";
color:var(--light_gray);
font-family:var(--icon);
font-weight:600;
right:20px;
top:50%;
margin-top:-8px;
position:absolute;
font-size:1.0rem;
}

#nav ol li a:hover {
color:var(--green);
}

#nav ol li a:hover:before {
color:var(--green);
}

#nav ol li a:after {
transform: scale(0, 0);
transform-origin: left top;
}

#nav ol li a:hover:after {
background-color:var(--green);
content:" ";
height:5px;
position:absolute;
bottom:0;
width:100%;
z-index:2;
transition: all .6s;
transform: scale(1, 1);
transform-origin: left top;
}

#nav ol li.selected a {
color:var(--green);
position:relative;
}

#nav ol li.selected a:before {
color:var(--green);
}

#nav ol li.selected a:after,
#nav ol li.selected a:hover:after {
background-color: var(--green);
content: " ";
height:5px;
position:absolute;
bottom:0;
left:0;
transform: scale(1, 1);
width:100%;
z-index:2;
}

#nav_bottom {
display:none;
}

@media screen and (max-width:1080px) {
#nav ol li a {
font-size:1.4rem;
}
#nav ol li a:before {
top:auto;
right:auto;
bottom:10px;
margin-right:-5px;
}
}
*/

/*---------------------------------------------
modal
---------------------------------------------*/
.modal-wrap > input {
	display: none;
}

.modal-overlay {
	background: rgba(39, 39, 41, .50);
	display: flex;
	justify-content: center;
	overflow: auto;
	height: 100%;
	width: 100%;
	position: fixed;
	top:0;
	left:0;
	z-index: 9999;
	opacity: 0;
	transition: opacity 0.5s, transform 0s 0.3s;
	transform: scale(0);
}

.modal-trigger {
	position: absolute;
	width: 100%;
	height: 100%;
}

.modal-content {
	background:var(--white);
	box-shadow: 0 0 15px rgba(0, 0, 0, .07);
	box-sizing: border-box;
	align-self: center;
	line-height: 1.4em;
	max-width:80vw;
 max-height:90vh;
	padding:5vw;
	min-width:80vw;
	transform: scale(1.2);
	transition: 0.3s;
 overflow-y:scroll;
}

.close-button {
	align-items: center;
 background-color:var(--dark_black);
	border-radius:24px;
	color: var(--white);
	cursor: pointer;
	display:flex;
	justify-content: center;
	font-size:1.4rem;
	line-height: 1;
	height:48px;
	width:120px;
	position: absolute;
	top: 20px;
	right: 20px;
 z-index:1;
}

.close-button::before,
.close-button::after {
	background-color: rgba(255, 255, 255, .5);
 color: var(--white);
	content: "";
	height:1px;
	width:13px;
	position:absolute;
}

.close-button::before {
color: var(--white);
	transform: rotate(45deg) translateY(50%);
	top: calc(50% - 1px);
	left: 20px;
}

.close-button::after {
	transform: rotate(-45deg) translateY(50%);
	top: calc(50% - 1px);
	left:19px;
}

.close-button span {
	display: inline-block;
	padding-left:1.7em;
}

.modal-wrap input:checked + .modal-overlay {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.5s;
}

.modal-wrap input:checked + .modal-overlay .modal-content {
	transform: scale(1);
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 {
align-items:center;
align-content:center;
display:flex;
font-size:2.0rem;
font-weight:600;
line-height:1.8;
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 span.i_q {
align-items:center;
align-content:center;
border-radius:30px;
display:flex;
justify-content:center;
width:60px;
height:60px;
background-color:var(--green);
color:var(--white);
flex:0 0 60px;
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 span:nth-child(2) {
line-height:1.6;
padding-left:15px;
}

.modal-wrap input:checked + .modal-overlay .modal-content .icon {
text-align:center;
}

.modal-wrap input:checked + .modal-overlay .modal-content .scroll_area {
overflow-y:scroll;
max-height:50vh;
}

.modal-wrap input:checked + .modal-overlay .modal-content > p {
font-size:1.6rem;
line-height:1.8;
margin-top:15px;
}

.modal-wrap#nav_menu input:checked + .modal-overlay .modal-content {
padding:0;
}

#nav_menu_cont {
display:flex;
}

#nav_menu_cont #nav_menu_left {
display: flex;
flex-direction: column;
justify-content: start;
height: 100%;
width: 45%;
position: relative;
padding: 0 0 80px;
align-items: center;
}

#nav_menu_cont #nav_menu_left .pic {
border-radius:0 0 60px 0;
height:100%;
max-height:400px;
z-index:1;
width:100%;
}

#nav_menu_cont #nav_menu_left .pic img {
border-radius:0 0 60px 0;
height:100%;
max-height:400px;
object-fit:cover;
width:100%;
}

#nav_menu_cont #nav_menu_left dl.address {
display:flex;
flex-direction:column;
justify-content:center;
padding:30px 50px 30px 50px;
position:relative;
row-gap:25px;
z-index:2;
}

#nav_menu_cont #nav_menu_left dl.address dt {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
row-gap:10px;
}

#nav_menu_cont #nav_menu_left dl.address dt a {
display:flex;
}

#nav_menu_cont #nav_menu_left dl.address dt a img {
height:60px;
width:auto;
}

#nav_menu_cont #nav_menu_left dl.address dt span {
font-size:1.3rem;
}

#nav_menu_cont #nav_menu_left dl.address dd {
font-size:1.3rem;
line-height:1.6;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul {
display:flex;
flex-direction:column;
justify-content:center;
position:relative;
row-gap:20px;
z-index:2;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li {
display:flex;
justify-content:center;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li a {
background-color:var(--white);
border:2px solid var(--gray_dd);
border-radius:30px;
display:flex;
font-size:1.6rem;
font-weight:600;
justify-content:center;
min-width:300px;
padding:20px 50px;
position:relative;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-weight:600;
right:20px;
top:50%;
margin-top:-7px;
position:absolute;
font-size:1.1rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li a:before {

}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.entry a {
background-color: var(--orange);
border: 2px solid var(--orange);
color:var(--white);
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.entry a:after {
color:var(--white);
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.entry a:hover {
opacity:0.7;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.tel a {
border:2px solid var(--blue);
color:var(--blue);
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.tel a:before {
content:"\f095";
color:var(--blue);
font-family:var(--icon);
font-weight:600;
left:30px;
top:50%;
margin-top:-7px;
position:absolute;
font-size:1.6rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.tel a:after {
content:none;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.tel a:hover {
background-color: var(--white);
border:2px solid var(--blue);
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.contact a {
background-color: var(--blue);
border: 2px solid var(--blue);
color:var(--white);
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.contact a:hover {
opacity:0.7;
}

#nav_menu_cont #nav_menu_left .conversion_area > ul li.contact a:after {
color:var(--white);
}

#nav_menu_cont #nav_menu_left .tel {
display:flex;
flex-direction:column;
row-gap:10px;
padding:30px 30px 0;
max-width: 360px;
}

#nav_menu_cont #nav_menu_left .tel > dl {
}

#nav_menu_cont #nav_menu_left .tel > dl > dt {
align-items:center;
background-color:var(--blue01);
border-radius:20px;
color:var(--blue);
display:flex;
justify-content:center;
font-size:1.3rem;
font-weight:600;
line-height:1.6;
padding:5px 10px;
text-align:center;
}

#nav_menu_cont #nav_menu_left .tel > dl > dd a {
align-items:center;
display:flex;
justify-content:center;
}

#nav_menu_cont #nav_menu_left .tel > dl > dd a img {
width: 100%;
height: 100%;
aspect-ratio: 55 / 9;
}

#nav_menu_cont #nav_menu_left .tel > dl > dd a:hover img {
opacity:0.7;
}

#nav_menu_cont #nav_menu_left .tel .open_hour {

}

#nav_menu_cont #nav_menu_left .tel .open_hour ul {
display:flex;
flex-direction:column;
row-gap:10px;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li {

}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li dl {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li dl dt {
font-size: 1.3rem;
flex: 0 0 55px;
padding:3px;
white-space: nowrap;
width:55px;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li dl dd {
letter-spacing:-0.03em;
white-space: nowrap;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li dl dd span:first-child {
font-size: 1.6rem;
font-family: Arial;
font-weight:600;
letter-spacing:-0.01em;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li dl dd span:nth-child(2) {
font-size: 1.3rem;
letter-spacing:-0.03em;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li.weekdays dl dt {
background-color:var(--blue01);
color:var(--deepblue);
text-align:center;
}

#nav_menu_cont #nav_menu_left .tel .open_hour ul li.sat_sun_hol dl dt {
background-color:var(--light_red);
color:var(--red);
text-align:center;
}

#nav_menu_cont #nav_menu_left .tel .open_hour .extended {
background-color:var(--pale_orange);
border-radius:3px;
margin-top:15px;
padding:10px;
}

#nav_menu_cont #nav_menu_left .tel .open_hour .extended dl {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#nav_menu_cont #nav_menu_left .tel .open_hour .extended dl dt {
align-items:center;
column-gap:5px;
display:flex;
justify-content:start;
}

#nav_menu_cont #nav_menu_left .tel .open_hour .extended dl dt span {
background-color:var(--white);
border-radius:3px;
font-size: calc(1.2rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
padding:3px;
}

#nav_menu_cont #nav_menu_left .tel .open_hour .extended dl dd {
font-size: calc(1.2rem + ((1vw - 0.48rem) * 0.6944));
}

/*--- sns_menu ---*/

#nav_menu_cont #nav_menu_left .sns_menu {
display:flex;
flex-direction:column;
justify-content:center;
padding:50px 80px 20px 80px;
width:100%;
}

#nav_menu_cont #nav_menu_left .sns_menu ul {
column-gap:30px;
display:flex;
justify-content:center;
}

#nav_menu_cont #nav_menu_left .sns_menu ul li {}

#nav_menu_cont #nav_menu_left .sns_menu ul li img {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
height:20px;
width:auto;
}

#nav_menu_cont #nav_menu_left .sns_menu ul li img.lazyloaded {
opacity:1;
}

/*--- nav_menu_right ---*/

#nav_menu_cont #nav_menu_right {
column-gap:30px;
display:flex;
flex-wrap:wrap;
height:100%;
width:55%;
padding:50px 50px;
}

#nav_menu_cont #nav_menu_right h4 {
flex:0 0 100%;
margin-bottom:40px;
position:relative;
}

#nav_menu_cont #nav_menu_right h4 a {
font-size:1.5rem;
font-weight:600;
padding:10px 10px 10px 40px;
position:relative;
z-index:2;
}

#nav_menu_cont #nav_menu_right h4 a:before {
background-color:var(--blue);
border-radius:10px;
content:" ";
left:10px;
top:50%;
margin-top:-10px;
position:absolute;
height:19px;
width:19px;
}

#nav_menu_cont #nav_menu_right h4 a:after {
color:var(--white);
content:"\f054";
font-family:var(--icon);
font-weight:600;
left:17px;
top:50%;
margin-top:-7px;
position:absolute;
font-size:0.8rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_right h4 a:hover {
background-color:var(--light_yellow);
border-radius:10px;
color:var(--blue);
content:" ";
height:48px;
width:100%;
z-index:1;
}

#nav_menu_cont #nav_menu_right h4 a:hover:before {
background-color:var(--white);
}

#nav_menu_cont #nav_menu_right h4 a:hover:after {
color:var(--blue);
}

#nav_menu_cont #nav_menu_right h5 {
flex:0 1;
margin-bottom:20px;
width: 100%;
}

#nav_menu_cont #nav_menu_right h5 a {
display:block;
font-size:1.5rem;
font-weight:600;
overflow: hidden;
padding:10px 10px 10px 40px;
position:relative;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
white-space: nowrap;
z-index:2;
}

#nav_menu_cont #nav_menu_right h5 a:before {
background-color:var(--blue);
border-radius:10px;
content:" ";
left:10px;
top:50%;
margin-top:-10px;
position:absolute;
height:19px;
width:19px;
}

#nav_menu_cont #nav_menu_right h5 a:after {
color:var(--white);
content:"\f054";
font-family:var(--icon);
font-weight:600;
left:17px;
top:50%;
margin-top:-7px;
position:absolute;
font-size:0.8rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_right h5 a:hover {
background-color:var(--light_yellow);
border-radius:10px;
color:var(--blue);
}

#nav_menu_cont #nav_menu_right h5 a span span {
display:inline-block;
}

#nav_menu_cont #nav_menu_right .menu {
align-content:start;
align-items:start;
display:flex;
flex-direction:column;
flex-grow:0;
justify-content:start;
margin-bottom:40px;
min-width: calc(100% / 2 - 15px);
max-width: 100%;
flex: 0 1 45%;
}

#nav_menu_cont #nav_menu_right .menu ul {
align-items:start;
display:flex;
flex-direction:column;
justify-content:start;
row-gap:15px;
overflow: hidden;
width: 100%;
}

#nav_menu_cont #nav_menu_right .menu ul li {
display:flex;
width:100%;
}

#nav_menu_cont #nav_menu_right .menu ul li a {
display:block;
font-size:1.4rem;
overflow: hidden;
padding:5px 10px 5px 30px;
position:relative;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
white-space: nowrap;
width:100%;
}

#nav_menu_cont #nav_menu_right .menu ul li a:after {
content:"\f054";
font-family:var(--icon);
font-weight:600;
left:17px;
top:50%;
margin-top:-8px;
position:absolute;
font-size:0.8rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_right .menu ul li a:hover {
background-color:var(--light_yellow);
border-radius:15px;
color:var(--blue);
}

#nav_menu_cont #nav_menu_right .other_menu {
align-content:start;
align-items:start;
border-top:1px solid var(--gray_dd);
display:flex;
flex-wrap:wrap;
flex-grow:0;
justify-content:start;
padding:30px 0 0;
width:100%;
}

#nav_menu_cont #nav_menu_right .other_menu h6 {
margin-bottom:20px;
width:calc(100% / 2);
}

#nav_menu_cont #nav_menu_right .other_menu h6 a {
font-size:1.4rem;
padding:5px 10px 5px 30px;
position:relative;
display: block;
overflow: hidden;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
white-space: nowrap;
width: 100%;
}

#nav_menu_cont #nav_menu_right .other_menu h6 a:hover {
background-color:var(--light_yellow);
border-radius:10px;
color:var(--blue);
}

#nav_menu_cont #nav_menu_right .other_menu h6 a:after {
content:"\f054";
font-family:var(--icon);
font-weight:600;
left:17px;
top:50%;
margin-top:-8px;
position:absolute;
font-size:0.8rem;
z-index:3; 
}

#nav_menu_cont #nav_menu_right .other_link {
display:flex;
column-gap:30px;
flex-wrap:wrap;
justify-content:start;
padding:20px 0 0;
row-gap:20px;
width:100%;
}

#nav_menu_cont #nav_menu_right .other_link li {

}

#nav_menu_cont #nav_menu_right .other_link li a {
font-size:1.2rem;
padding:5px 10px 5px 30px;
position:relative;
}

#nav_menu_cont #nav_menu_right .other_link li a:hover {
background-color:var(--light_yellow);
border-radius:10px;
color:var(--blue);
}

#nav_menu_cont #nav_menu_right .other_link li a:after {
content:"\f054";
font-family:var(--icon);
font-weight:600;
left:17px;
top:50%;
margin-top:-8px;
position:absolute;
font-size:0.8rem;
z-index:3; 
}

/*--- copyright ---*/
.modal-content .copyright {
background-color:var(--blue01);
display:flex;
justify-content:center;
padding:15px;
order:3;
}

.modal-content .copyright span {
font-size:0.9rem;
}

/*---------------------------------------------
tab
---------------------------------------------*/
.js-tab-box {
display:flex;
flex-direction:column;
}
.js-tab-nav {
display:flex;
flex:0 0 100%;
}
.js-tab-nav ul {
border-bottom:1px solid var(--gray_dd);
border-radius:6px 6px 0 0;
display:flex;
flex:0 0 100%;
}
.js-tab-nav ul li {
align-items:center;
align-content:center;
background-color:var(--gray_70);
border-top:1px solid var(--gray_dd);
border-right:1px solid var(--gray_dd);
color:var(--white);
display:flex;
font-weight:600;
justify-content:center;
padding:25px;
position:relative;
width:calc(100% / 4);
}

.js-tab-nav ul li:before {
background-color:var(--gray_dd);
border-radius:12px;
content:" ";
left:50%;
bottom:-10px;
margin-left:-11px;
position:absolute;
height:23px;
width:23px;
z-index:3;
}

.js-tab-nav ul li:after {
content:"\f078";
color:var(--gray_9f);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
left:50%;
bottom:-5px;
margin-left:-5px;
opacity:0.7;
position:absolute;
z-index:3;
}

.js-tab-nav ul li:first-child {
border-left:1px solid var(--gray_dd);
border-radius:6px 0 0 0;
}

.js-tab-nav ul li:last-child {
border-radius:0 6px 0 0;
}

.js-tab-nav ul li.selected {
/*background-color:var(--deepblue);*/
background-color:var(--blue);
color:var(--white);
}

.js-tab-nav ul li.selected:before {
background-color:var(--yellow);
}

.js-tab-nav ul li.selected:after {
color:var(--blue);
}

.js-tab-nav ul li:hover {
background-color:var(--light_yellow);
color:var(--black);
cursor:pointer;
}

.js-tab-nav ul li:hover:before {
background-color:var(--blue);
}

.js-tab-nav ul li:hover:after {
color:var(--white);
}

.js-tab-nav ul li.selected:hover {
/*color:var(--deepblue);*/
background-color:var(--blue);
color:var(--white);
}

.js-tab-nav ul li.selected:hover:before {
background-color:var(--yellow);
}

.js-tab-nav ul li.selected:hover:after {
color:var(--blue);
}


.js-tab-nav ul li img {
height:23px;
width:auto;
}

.js-tab-nav ul li span {
font-size:1.6rem;
font-weight:600;
padding-left:10px;
}

.js-tab-content {
opacity:0;
display:none;
flex-direction:column;
}

.js-tab-content.selected {
opacity:1;
display:flex;
}

/*---------------------------------------------
alert
---------------------------------------------*/
.alert {
flex:1;
padding: 15px 50px;
margin:0;
border: 1px solid transparent;
border-radius: 4px;
min-width:200px;
position:relative;
}

.alert i {
font-size:1.6rem;
line-height:1.6;
position:absolute;
left:20px;
top:50%;
margin-top:-12px;
}

.alert span { font-size:1.6rem; line-height:1.8; text-align:left; }
.alert-success { background-color: #dff0d8; border-color: #d6e9c6; color: #468847; }
.alert-info { background-color: #d9edf7; border-color: #bce8f1; color: #3a87ad; }
.alert-warning { background-color: #fcf8e3; border-color: #fbeed5; color: #c09853; }
.alert-danger { background-color: #f2dede; border-color: #eed3d7; color: #b94a48; }
.alert-link { font-weight:700; }
.alert-link:hover { text-decoration:underline; }
.alert-success .alert-link { color: #356635; }
.alert-info .alert-link { color: #2d6987; }
.alert-warning .alert-link { color: #a47e3c; }
.alert-danger .alert-link { color: #953b39; }

/*---------------------------------------------
animation
---------------------------------------------*/
/* fadeUp */
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.fadeUpTrigger{
    opacity: 0;
}

/* fadeFromLeft */
.fadeFromLeft {
animation-timing-function:ease;
animation-name:fadeFromLeftAnime;
animation-delay:0.65s;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeFromLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }
  to {
    opacity: 1;
  transform: translateX(10px);
  }
}
.fadeFromLeftTrigger{
    opacity: 0;
}

/* fadeFromRight */
.fadeFromRight {
animation-timing-function:ease;
animation-name:fadeFromRightAnime;
animation-delay:0.65s;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeFromRightAnime{
  from {
    opacity: 0;
  transform: translateX(5vw);
  }
  to {
    opacity: 1;
  transform: translateX(0);
  }
}
.fadeFromRightTrigger{
    opacity: 0;
}

/* fadeIn */
.fadeIn {
animation-name:fadeInAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeInTrigger {
    opacity: 0;
}

/* bound */
.bound {
animation-name: bound-anim;
animation-duration: 1.5s;
animation-iteration-count: 1;
transform: translateY(0);

}
@keyframes bound-anim {
	0% { transform:scale(1) translateY(0); }
	30% { transform:scale(0.96,1.04) translateY(-20px); }
	60% { transform: scale(1) translateY(0); }
	90% { transform: scale(1.15,0.9) translateY(-20px); }
}

/*---------------------------------------------
nav
---------------------------------------------*/
#nav.active {
background-color:var(--white);
display:flex;
flex-direction:column;
justify-content:start;
padding-top:0;
top:0;
position:fixed;
height:calc(100%);
z-index:30;
overflow-y:scroll;
width:100%;
left:0;
opacity:1;
}

#nav #nav_cont {
display:flex;
flex-direction:column;
justify-content:start;
padding:0;
}

#nav #nav_cont #nav_header {
padding: 8.5vw 10vw 10vw;
}

#nav #nav_cont #nav_header h2 {
}

#nav #nav_cont #nav_header h2 a {
display:flex;
justify-content:center;
}

#nav #nav_cont #nav_header h2 a img {
height: auto;
min-width: 160px;
max-width: 220px;
width:35vw;
}

#nav #nav_cont #nav_menu {

}

#nav #nav_cont #nav_menu ul {
display:flex;
justify-content:center;
flex-wrap:wrap;
padding:0 5vw 10vw;
}

#nav #nav_cont #nav_menu ul {
column-gap:20px;
display:flex;
justify-content:space-between;
row-gap:20px;
}

#nav #nav_cont #nav_menu ul li {
display:flex;
justify-content:center;
width:calc(100% / 3 - 20px);
}

#nav #nav_cont #nav_menu ul li a {
display:flex;
justify-content: center;
width:100%;
}

#nav #nav_cont #nav_menu ul li a dl {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
width:100%;
}

#nav #nav_cont #nav_menu ul li a dl dt {
align-items: center;
align-content: center;
background-color: var(--white);
border-radius: 50%;
border:5px solid var(--gray_eb);
display: flex;
justify-content: center;
height: 23vw;
width: 23vw;
}

#nav #nav_cont #nav_menu ul li a dl dt img {
height: 7vw;
width: auto;
}

#nav #nav_cont #nav_menu ul li:nth-child(5) a dl dt img {
margin-right:-4px;
}

#nav #nav_cont #nav_menu ul li a dl dd {
font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
margin-top:20px;
text-align:center;
}

#nav #nav_cont .banner {
background-color:var(--pale_gray);
display: flex;
justify-content: center;
padding:3vw 5vw 5vw;
}

#nav #nav_cont .banner img {
position: relative;
width: 100%;
height: auto;
object-fit: cover;
max-width:400px;
}

#nav #nav_cont #nav_link {
}

#nav #nav_cont #nav_link ul {
display: flex;
flex-direction:column;
justify-content: space-between;
}

#nav #nav_cont #nav_link ul li {
border-bottom:1px solid var(--gray_eb);
}

#nav #nav_cont #nav_link ul li a {
display: flex;
padding:15px;
position:relative;
}

#nav #nav_cont #nav_link ul li a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
right:20px;
top:50%;
margin-top:-7px;
position:absolute;
z-index:3; 
}

#nav #nav_cont #nav_link ul li dl {
display: flex;
justify-content: start;
width:100%;
}

#nav #nav_cont #nav_link ul li dl dt {
overflow:hidden;
}

#nav #nav_cont #nav_link ul li dl dt img {
border-radius:6px;
height:100px;
object-fit:cover;
width:100px;
}

#nav #nav_cont #nav_link ul li dl dd {
align-items:center;
align-content:center;
display:flex;
font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944));
flex:1;
justify-content:start;
padding:20px;
}

/*---------------------------------------------
nav_footer
---------------------------------------------*/
#nav_footer {
background-color: var(--pale_gray);
padding-top:30px;
}

#nav_footer ul {
border-top: 1px solid var(--gray_eb);
display:flex;
flex-direction:column;
}

#nav_footer ul li {
border-bottom: 1px solid var(--gray_eb);
}

#nav_footer ul li a {
align-items:center;
align-content:center;
background-color: var(--white);
display:flex;
font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944));
justify-content:start;
padding:25px 20px;
position:relative;
}

#nav_footer ul li a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
right:20px;
top:50%;
margin-top:-7px;
position:absolute;
z-index:3; 
}

#nav_footer p {
display: flex;
font-size: calc(1.1rem + ((1vw - 0.48rem) * 0.6944));
justify-content: start;
line-height:1.6;
padding:25px 20px;
}

#nav_footer .copyright {
color:var(--gray_cc);
font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
display: flex;
justify-content: start;
padding:25px 20px;
}

/*---------------------------------------------
close_btn
---------------------------------------------*/
.menu_close {
display:flex;
justify-content:center;
padding:0;
position:fixed;
bottom:15px;
right:15px;
}

.menu_close a {
align-items:center;
align-content:center;
background-color:var(--dark_black);
border-radius:30px;
color:#fff;
display:flex;
font-weight:600;
justify-content:center;
padding:20px 35px 20px 50px; 
position:relative;
width:100%;
}

.menu_close a span {
font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944));
}

.menu_close a i {
color:var(--gray_cc);
font-size: calc(1.5rem + ((1vw - 0.48rem) * 0.6944));
margin-top:-7px;
position:absolute;
left:20px;
top:50%;
}

/*---------------------------------------------
school_banner_slider
---------------------------------------------*/
#school_banner_slider {
flex:0 0 100%;
padding:30px 30px 50px 320px;
width:100%;
z-index:1;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#school_banner_slider.lazyloaded {
opacity:1;
}

#school_banner_slider ul {
display: flex;
width: 100%;
}

#school_banner_slider ul li {
border-radius:10px;
display:flex;
justify-content:center;
min-width:240px;
width:calc(100% / 3 - 20px);
}

#school_banner_slider ul li a {
border-radius:10px;
display:block;
overflow: hidden;
text-align:center;
}

#school_banner_slider ul li a img {
border-radius:10px;
height:auto;
max-width:calc(100vw /3 - 150px);
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#school_banner_slider ul li a img.lazyloaded {
opacity:1;
}

#school_banner_slider ul li a:hover img {
transform:scale(1.15) rotate(2deg);
}

#school_banner_slider ul li.slick-active a img {
display:block;
margin:0 auto;
}

#school_banner_slider .slick-prev {
left:0;
}

#school_banner_slider .slick-next {
right:0;
}

.slick-dots li button {
background-color: var(--blue01);
}

.slick-dots li.slick-active button {
background-color: var(--yellow);
}

#school_banner_slider .slick-list {
padding:0 !important;
width: 100%;
}

#school_banner_slider .slick-list .slick-track {
display: flex;
justify-content: center;
/*width: 100% !important;*/
}

/*---------------------------------------------
conversion_area
---------------------------------------------*/
.conversion {
background-color:var(--yellow);
background-image:url(../img/common/i_conversion_mark.png);
background-position:90% -30px;
background-size:258px 360px;
background-repeat:no-repeat;
border-radius:20px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
overflow:hodden;
position:relative;
z-index:1;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

.conversion.lazyloaded {
opacity:1;
}

.conversion:after {
/*background-image:url(../img/common/i_figure_c.webp);*/
background-position:center center;
background-size:190px 342px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:30px;
bottom:0;
height:342px;
width:190px;
z-index:1;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

.conversion.lazyloaded:after {
opacity:1;
}

.conversion dl {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
padding-top:100px;
position:relative;
row-gap:30px;
width:100%;
z-index:2;
position:relative;
}

.conversion dl dt {
align-items:center;
display:flex;
font-size:2.9rem;
font-weight:600;
justify-content:center;
line-height:1.6;
/*padding-left:20vw;*/
aspect-ratio: 705 / 214;
height:120px;
position:absolute;
top:-35px;
}

.conversion dl dt img {
height:100%;
width:100%;
aspect-ratio: 705 / 214;
}

.conversion dl dt img.lazyloaded {
opacity:1;
}

.conversion dl dd {
width:100%;
}

.conversion dl dd ul {
column-gap:30px;
display:flex;
justify-content:center;
}

.conversion dl dd ul li {
column-gap:30px;
display:flex;
justify-content:center;
}

.conversion dl dd ul li a {
background-color:var(--white);
border-radius:30px;
display:flex;
flex:0 1 350px;
font-size:1.6rem;
font-weight:600;
justify-content:center;
padding:20px 30px;
position:relative;
text-align;center;
width:250px;
}

.conversion dl dd ul li.entry a {
background-color:var(--orange);
border:2px solid var(--orange);
color:var(--white);
}

.conversion dl dd ul li.contact a {
background-color:var(--blue);
border:2px solid var(--blue);
color:var(--white);
}

.conversion dl dd ul li a:after {
content:"\f054";
color:var(--white);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:15px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

.conversion dl dd ul li.entry a:hover {
background-color:var(--white);
border:2px solid var(--orange);
color:var(--orange);
}

.conversion dl dd ul li.entry a:hover:after {
color:var(--orange);
}

.conversion dl dd ul li.contact a:hover {
background-color:var(--white);
border:2px solid var(--blue);
color:var(--blue);
}

.conversion dl dd ul li.contact a:hover:after {
color:var(--blue);
}

/*--- conversion_area ---*/

#conversion_area {
background-image:url(../img/common/bg_footer.webp);
background-position:center 200px;
background-size:cover;
background-repeat:no-repeat;
padding:80px 30px 150px 320px;
position:relative;
width:100%;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#conversion_area.lazyloaded {
opacity:1;
}

#conversion_area #conversion_cont {
display:flex;
flex-direction:column;
row-gap:60px;
max-width: 1280px;
}

#conversion_area #conversion_cont .conversion {
display:flex;
justify-content:center;
padding: 40px 50px;
}

#conversion_area #conversion_cont .conversion figure {
width:auto;
width:20vw;
aspect-ratio: 3 / 4;
position:absolute;
left:20px;
bottom:0;
max-width:250px;
}

#conversion_area #conversion_cont .conversion figure img {
animation: change-img-anim2 15s infinite ease-in-out;
opacity: 0;
object-fit: cover;
aspect-ratio: 3 / 4;
width:100%;
height:100%;
position:absolute;
left:0;
bottom:0;
}

#conversion_area #conversion_cont .conversion figure img:first-child {
border-radius:0;
animation-delay: 0s;
object-position:40% center;
}

#conversion_area #conversion_cont .conversion figure img:nth-child(2) {
animation-delay: 5s;
}

#conversion_area #conversion_cont .conversion figure img:nth-child(3) {
animation-delay: 10s;
}

#conversion_area #conversion_cont #conversion_footer {
display:flex;
flex-wrap:wrap;
justify-content:center;
column-gap:30px;
row-gap:70px;
padding:0 50px 0 50px;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left {
display:flex;
justify-content:center;
flex:1 1 50%;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left .address {
display:flex;
flex-direction:column;
justify-content:center;
row-gap:20px;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left .address dt {
display:flex;
flex-direction:column;
row-gap:10px;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left .address dt img {
height:auto;
width:260px;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left .address dt span {
display:block;
font-size:1.5rem;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_left .address dd {
font-size:1.3rem;
line-height:1.6;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right {
display:flex;
flex-direction:column;
flex:1 1 auto;
min-width:360px;
max-width: 500px;
row-gap:20px;
width: calc(50% - 30px);
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl {
display:flex;
flex-direction:column;
position:relative;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dt {
display:flex;
flex:0 1 100%;
justify-content:center;
position:relative;
width:100%;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dt span {
background-color:var(--blue);
border-radius:20px;
color:var(--white);
font-size:1.6rem;
font-weight:600;
line-height:1;
padding:10px;
position:absolute;
margin-left:-150px;
left:50%;
text-align:center;
top:-20px;
width:300px;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dd {
display:flex;
flex:1;
justify-content:center;
width:100%;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dd a {
align-items:center;
background-color:var(--white);
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
border-radius:40px;
display:flex;
justify-content:center;
padding:20px 30px;
width:100%;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dd a:hover {
cursor:default;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dd a img {
width: 100%;
height: 100%;
aspect-ratio: 55 / 9;
max-width:260px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right dl dd a img.lazyloaded {
opacity:1;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul {
column-gap:20px;
display:flex;
justify-content:space-between;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul li {
width:calc(100% / 2 - 20px);
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul li a {
background-color:var(--white);
box-shadow: 0px 3px 0px 0px rgba(0, 0, 0, 0.2);
border-radius:40px;
display:flex;
font-size:1.4rem;
font-weight:600;
justify-content:center;
padding:20px 30px;
position:relative;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul li a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:20px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul li.contact a:hover {
background-color:var(--blue);
box-shadow:none;
color:var(--white);
}

#conversion_area #conversion_cont #conversion_footer #conversion_footer_right ul li.contact a:hover:after {
color:var(--white);
}

#conversion_area #conversion_cont .sns_link_area {
display:flex;
justify-content:center;
padding:0 50px 0 50px;
}

#conversion_area #conversion_cont  .sns_link_area ul {
column-gap:80px;
display:flex;
justify-content:center;
}

#conversion_area #conversion_cont  .sns_link_area ul li {
display:flex;
}

#conversion_area #conversion_cont .sns_link_area ul li a {
align-items:center;
background-color:var(--white);
border-radius:40px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
justify-content:center;
height:80px;
width:80px;
}

#conversion_area #conversion_cont .sns_link_area ul li a img {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
height:28px;
width:auto;
}

#conversion_area #conversion_cont .sns_link_area ul li a img.lazyloaded {
opacity:1;
}

#conversion_area #conversion_cont .sns_link_area ul li a:hover {
background-color:var(--yellow);
box-shadow:none;
}

/*--- footer_banner_area ---*/

#banner_area {
padding:60px 0 0;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
/*width: calc(100% - 290px);*/
width:100%;
z-index:1;
}

#banner_area.lazyloaded {
opacity:1;
}

#banner_area #banner_slider {
height:100px;
}

#banner_area #banner_slider ul {
column-gap:10px;
display:flex;
height:100px;
}

#banner_area #banner_slider ul li {
border-radius:10px;
display:flex;
justify-content:center;
min-width:240px;
width:calc(100% / 3 - 20px);
}

#banner_area #banner_slider ul li a {
border-radius:10px;
display:flex;
justify-content:center;
overflow: hidden;
}

#banner_area #banner_slider ul li a img {
height:auto;
max-width:240px;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
}

#banner_area #banner_slider ul li a img.lazyloaded {
opacity:1;
}

#banner_area #banner_slider ul li a:hover img {
transform:scale(1.15) rotate(0deg);
}

/*---------------------------------------------
bread_crumb_list
---------------------------------------------*/
.bread_crumb_list {
background-color:var(--white);
border-top:1px solid var(--gray_dd);
border-bottom:1px solid var(--gray_dd);
display:flex;
flex-wrap:wrap;
justify-content:center;
flex:0 0 100%;
margin:0;
padding:0 0 0 320px;
}
.bread_crumb_list .bread_crumb_list_cont { display:flex; flex-wrap:wrap; justify-content:start; flex:1; position:relative; }
.bread_crumb_list .bread_crumb_list_cont ol {
display:flex;
justify-content:start;
padding:0 0 0 30px;
}

.bread_crumb_list .bread_crumb_list_cont ol li {
align-items:center;
display:flex;
justify-content:start;
line-height:1.6;
}

.bread_crumb_list .bread_crumb_list_cont ol li i { color:var(--gray_99); font-size:1rem; padding-left:15px; }
.bread_crumb_list .bread_crumb_list_cont ol li > span { font-size:1.3rem; margin-left:15px; }

.bread_crumb_list .bread_crumb_list_cont ol li a {
align-items:center;
display:flex;
justify-content:start;
}

.bread_crumb_list .bread_crumb_list_cont ol li a span {
font-size:1.3rem;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
padding:20px;
}
.bread_crumb_list .bread_crumb_list_cont ol li a i { color:var(--gray_99); font-size:1.2rem; }
.bread_crumb_list .bread_crumb_list_cont ol li a:hover span,
.bread_crumb_list .bread_crumb_list_cont ol li a:hover i { color:var(--group); }

.bread_crumb_list .bread_crumb_list_cont ol li.home a span {}
.bread_crumb_list .bread_crumb_list_cont ol li.home a i { padding-left:0; }
.bread_crumb_list .bread_crumb_list_cont ol li.home a:hover { text-decoration:none; }

/*---------------------------------------------
footer
---------------------------------------------*/
#footer {
background-color:var(--white);
display:flex;
flex-direction:column;
justify-content:center;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#footer.lazyloaded {
opacity:1;
}

#footer #footer_cont {
align-items:center;
display:flex;
flex-direction:column;
padding:50px 30px 30px 320px;
}

#footer #footer_cont #footer_head {
align-items:center;
display:flex;
justify-content:start;
padding:0 30px 30px;
width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont {
align-items:center;
column-gap:30px;
display:flex;
justify-content:space-between;
width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont .address {
align-items:center;
display:flex;
flex-basis: 300px;
flex-shrink: 1;
max-width:460px;
}

#footer #footer_cont #footer_head #footer_head_cont .address dl {
align-items:center;
column-gap:20px;
display:flex;
flex-wrap:wrap;
row-gap:10px;
flex: 1 1 auto;
}

#footer #footer_cont #footer_head #footer_head_cont .address dl dt {
display:flex;
}

#footer #footer_cont #footer_head #footer_head_cont .address dl dt a {
display:flex;
}

#footer #footer_cont #footer_head #footer_head_cont .address dl dt a img {
height:auto;
max-width:260px;
width:260px;
}

#footer #footer_cont #footer_head #footer_head_cont .address dl dd {
flex:1;
font-size:1.3rem;
line-height:1.4;
}

#footer #footer_cont #footer_head #footer_head_cont .tel {
column-gap:20px;
display:flex;
flex-wrap:wrap;
row-gap:5px;
flex: 1 1 60%;
flex-basis: 60%;
/*justify-content:flex-end;*/
}

#footer #footer_cont #footer_head #footer_head_cont .tel > dl {
width:306px;
}

#footer #footer_cont #footer_head #footer_head_cont .tel > dl > dt {
background-color:var(--blue01);
border-radius:20px;
color:var(--blue);
font-size:1.3rem;
font-weight:600;
padding:6px 10px;
text-align:center;
}

#footer #footer_cont #footer_head #footer_head_cont .tel > dl > dd {
}

#footer #footer_cont #footer_head #footer_head_cont .tel > dl > dd img {
height:50px;
width:auto;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour {
display:flex;
row-gap:15px;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul {
column-gap:10px;
display:flex;
height:100%;

justify-content:start;
row-gap:10px;
}

@media screen and (min-width:1580px) {
#footer #footer_cont #footer_head #footer_head_cont .address {
flex-basis:40%;
flex: 0 1;
}
#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour {
flex-direction:unset;
}
#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul {
flex-direction:column;
}
#footer #footer_cont #footer_head #footer_head_cont .tel {}
}

@media screen and (min-width:1280px) and (max-width: 1580px)  {
#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour {
flex-direction:unset;
}
#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul {
flex-direction:unset;
}

#footer #footer_cont #footer_head #footer_head_cont .tel {}
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li {
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li dl {
align-items:center;
column-gap:10px;
display:flex;
justify-content:start;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li dl dt {
border-radius:3px;
font-size: 1.3rem;
flex: 0 0 55px;
padding:8px 3px;
white-space: nowrap;
width:55px;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li dl dd {
letter-spacing:-0.03em;
white-space: nowrap;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li dl dd span:first-child {
font-size: 1.6rem;
font-weight:600;
letter-spacing:-0.01em;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li dl dd span:nth-child(2) {
font-size: 1.3rem;
letter-spacing:-0.03em;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li.weekdays dl dt {
background-color:var(--blue01);
color:var(--deepblue);
text-align:center;
}

#footer #footer_cont #footer_head #footer_head_cont .tel .open_hour ul li.sat_sun_hol dl dt {
background-color:var(--light_red);
color:var(--red);
text-align:center;
}

#footer #footer_cont .hirakyo_channel {
display:flex;
border-top:1px solid var(--gray_dd);
border-bottom:1px solid var(--gray_dd);
justify-content:center;
padding:30px 30px;
width:100%;
}

#footer #footer_cont .hirakyo_channel dl {
align-items:center;
column-gap:10px;
display:flex;
flex-wrap:wrap;
row-gap:20px;
width:100%;
}

#footer #footer_cont .hirakyo_channel dl dt {
font-size: 1.6rem;
font-weight:600;
flex-basis:200px;
}

#footer #footer_cont .hirakyo_channel dl dt span {
color:var(--blue);
letter-spacing:-0.03em;
}

#footer #footer_cont .hirakyo_channel dl dd {
letter-spacing:-0.03em;
flex: 1 1 auto;
}

#footer #footer_cont .hirakyo_channel dl dd ul {
column-gap:20px;
display:flex;
flex-wrap:wrap;
row-gap:20px;
width:100%;
}

#footer #footer_cont .hirakyo_channel dl dd ul li {
max-width:calc(100% /  2);
}

#footer #footer_cont .hirakyo_channel dl dd ul li a {
background-color:var(--white);
border-radius:10px;
align-items:center;
column-gap:10px;
display:flex;
justify-content:center;
padding:20px 20px;
}

#footer #footer_cont .hirakyo_channel dl dd ul li a:hover {
background-color:var(--light_yellow);
}

#footer #footer_cont .hirakyo_channel dl dd ul li a img {
height:22px;
width:auto;
}

#footer #footer_cont .hirakyo_channel dl dd ul li a span {
font-size: 1.3rem;
font-weight:600;
line-height:1.6;
}

#footer #footer_cont .hirakyo_channel dl dd ul li a:hover span {
color:var(--blue);
}

#footer #footer_cont .conversion_link_area {
border-bottom:1px solid var(--gray_dd);
display:flex;
justify-content:center;
padding:0;
width:100%;
}

#footer #footer_cont .conversion_link_area ul {
column-gap:30px;
display:flex;
flex-wrap:wrap;
justify-content:space-around;
padding:0 30px 50px 30px;
row-gap:30px;
width:100%;
}

#footer #footer_cont .conversion_link_area ul li {
position:relative;
min-width:calc(100% / 3 - 30px);
max-width:calc(100% / 2 - 30px);
}

#footer #footer_cont .conversion_link_area ul li.introduction:before {
background-image:url(../img/common/i_illust_introduction.webp);
background-position:center center;
background-size:95px 107px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:-20px;
top:50%;
margin-top:-50px;
height:107px;
width:95px;
z-index:1;
}

#footer #footer_cont .conversion_link_area ul li a {
align-items:center;
border-radius:35px;
column-gap:10px;
color:var(--white);
display:flex;
font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
justify-content:center;
letter-spacing:-0.03em;
padding:25px 20px;
position:relative;
width:100%;
}

#footer #footer_cont .conversion_link_area ul li a:after {
content:"\f054";
color:var(--white);
font-family:var(--icon);
font-weight:600;
right:15px;
top:50%;
margin-top:-6px;
position:absolute;
font-size:1.1rem;
z-index:3;
}

#footer #footer_cont .conversion_link_area ul li a:hover {
opacity:0.7;
}

#footer #footer_cont .conversion_link_area ul li.entry a {
background-color:var(--orange);
}

#footer #footer_cont .conversion_link_area ul li.introduction a {
background-color:var(--yellow);
color:var(--blue);
padding:25px 50px;
}

#footer #footer_cont .conversion_link_area ul li.introduce a {
background-color:var(--blue);
}

#footer #footer_cont .conversion_link_area ul li a:after {
}

#footer #footer_cont .conversion_link_area ul li.introduction a:after {
color:var(--gray_33);
}

#footer #footer_cont #footer_bottom {
display:flex;
flex-direction:column;
width:100%;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont {
display:flex;
flex-direction:column;
row-gap:60px;
padding:0 30px;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list {
column-gap:20px;
display:flex;
flex-wrap:wrap;
justify-content:strat;
padding:50px 0 30px;
row-gap:40px;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl {
display:flex;
flex-direction:column;
row-gap:25px;
min-width: calc(100% / 4 - 15px);
flex: 1 1 23%;
max-width:30%;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dt {
display:flex;
font-size: 1.5rem;
font-weight:600;
justify-content:start;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dt a {
display:flex;
flex:0 1 auto;
letter-spacing:-0.03em;
padding:0 15px 0 0;
position:relative;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dt a:hover {
color:var(--blue);
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dt a:after {
content:"\f054";
color:var(--gray_dd);
font-family:var(--icon);
font-weight:600;
right:0;
top:50%;
margin-top:-6px;
position:absolute;
font-size:1.1rem;
z-index:3;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dt a:hover:after {
color:var(--blue);
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd {
align-items:start;
display:flex;
flex-grow:1;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul {
display:flex;
flex-direction:column;
row-gap:20px;
width:100%;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul li {
overflow: hidden;
width: 80%;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul li a {
font-size: 1.3rem;
display:block;
letter-spacing:-0.03em;
padding:0 0 0 15px;
position: relative;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
white-space: nowrap;
width: 100%;
overflow: hidden;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul li a:after {
content:"\f054";
color:var(--blue);
font-family:var(--icon);
left:0;
top:50%;
margin-top:-7px;
position:absolute;
font-size:1.1rem;
z-index:3;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul li a:hover {
color:var(--blue);
}

#footer #footer_cont #footer_bottom #footer_bottom_cont #footer_menu_list dl dd ul li a:hover:after {
color:var(--blue);
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link {
column-gap:20px;
display:flex;
justify-content:start;
padding-left:20px;
position:relative;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link:before {
background-color:var(--gray_dd);
content:"";
color:var(--blue);
height:13px;
left:0;
top:0;
position:absolute;
width:1px;
z-index:3;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link li {
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link li a {
font-size: 1.3rem;
letter-spacing:-0.03em;
padding:0 20px 0 0;
position:relative;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link li a:hover {
color:var(--blue);
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link li a:after {
background-color:var(--gray_dd);
content:"";
color:var(--blue);
height:13px;
right:0;
top:0;
position:absolute;
width:1px;
z-index:3;
}

#footer #footer_cont #footer_bottom #footer_bottom_cont .other_link li a:hover {
color:var(-blue);
}

#footer .copyright {
background-color:var(--blue02);
display:flex;
justify-content:center;
padding:20px;
}

#footer .copyright span {
color:var(--black);
font-size:0.9rem;
}



/*---------------------------------------------
animation
---------------------------------------------*/
@keyframes change-img-anim2 { 
0%{ opacity:0; }
5%{ opacity:1; }
27%{ opacity:1; }
30%{ opacity:0; }
100%{ opacity:0; } 
}

/*---------------------------------------------
openList
---------------------------------------------*/
.openList {
padding:0;
}

.openList .open_list_title {
position:relative;
max-height:auto;
transition:padding-top .5s ease-out, padding-bottom .5s ease-out;/*close_animation*/
padding:0;
}

.openList .open_list_title:hover {
cursor:pointer;
}

.openList .open_list_cont {
display:none;
max-height: 0;
overflow: hidden;
-webkit-transition:max-height 0.3s, opacity 3s;
transition: max-height 0.3s, opacity 3s;
opacity:0;
}

.openList.active .open_list_title {
transition:padding-top .3s ease-out,*open_animation*/
}

.openList.active .open_list_cont {
display:block;
max-height:100%;
opacity:1;
}

/*---------------------------------------------
banner
---------------------------------------------*/
.full_banner {
align-items:center;
display:flex;
justify-content:center;
padding:15px 15px 25px;
}

.full_banner a {
align-items:center;
display:flex;
justify-content:center;
}

.full_banner a img {
-webkit-transition:max-height 0.3s, opacity 3s;
transition: max-height 0.3s, opacity 3s;
opacity:0;
height:auto;
}

.full_banner a img.lazyloaded {
opacity:1;
}

.full_banner a:hover {
cursor:pointer;
}

.full_banner a:hover img {
opacity:0.7;
}

/*---------------------------------------------
.close_left_nav
---------------------------------------------*/
#container.close_left_nav #school_banner_slider {
padding:30px 30px 50px;
}

#container.close_left_nav #school_banner_slider .slick-list .slick-track {
width:100% !important;
}

#container.close_left_nav #conversion_area #conversion_cont #conversion_footer {
padding:0 50px;
}

#container.close_left_nav #conversion_area {
padding: 80px 30px 150px;
width:100% !important;
}

#container.close_left_nav #conversion_area #conversion_cont .sns_link_area {
padding:0 50px;
}

/*---------------------------------------------
holiday
---------------------------------------------*/

#holiday {
background-color:var(--middle_green);
border-radius:10px;
display:flex;
flex-direction:column;
flex-grow:0;
padding:10px 10px 20px;
row-gap:15px;
width:100%;
}

#holiday .btn {
justify-content: center;
display: flex;
}

#holiday .btn a {
border-color:var(--white);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
padding:15px 30px;
max-width:300px;
}

#holiday .btn a:after {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
margin-top: -5px;
right:10px;
}

#holiday #holiday_cont {
display:flex;
flex-direction:column;
row-gap:10px;
}

#holiday #holiday_cont a {
display:flex;
flex-direction:column;
row-gap:10px;
}

#holiday dl {
background-color:var(--white);
border-radius:3px;
padding:10px 10px 10px;
}

#holiday dl dt {
border-bottom:1px solid var(--deep_green);
display:flex;
justify-content:start;
min-width:100px;
padding:0 0 10px;
position:relative;
z-index:2;
}

#holiday dl dt > span {
align-items:flex-end;
background-color:var(--deep_green);
border-radius:3px;
column-gap:3px;
display:flex;
flex:1;
justify-content:center;
padding:5px;
min-width:80px;
/*width:calc(100% - 77px);*/
flex:0 1 auto;
}

#holiday dl dt > span > span {
color:var(--white);
font-weight:600;
font-size:1.3rem;
line-height:1;
position:relative;
z-index:2;
}

#holiday dl dt > span > span:first-child {
font-family: Arial;
font-size: 3.2rem;
}

#holiday dl dt > span > span:nth-child(2) {
line-height:1.6;
}

#holiday dl dt:after {
background-image:url(../img/common/i_figure_b.webp);
background-position:center center;
background-size:67px 81px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:0;
bottom:0;
height:81px;
width:67px;
z-index:1;
}

#holiday dl dd {
font-weight:600;
font-size:1.6rem;
padding:10px 0 0;
text-align:center;
}

#holiday dl dd span {
color:var(--red);
line-height:1.6;
}

#holiday ol {
column-gap:10px;
display:flex;
flex-wrap:wrap;
row-gap:10px;
}

#holiday ol li {
align-items:flex-end;
background-color:var(--white);
border-radius:3px;
column-gap:1px;
display:flex;
flex:1 1 auto;
flex-wrap:wrap;
justify-content:center;
row-gap:5px;
padding:10px;
}

#holiday ol li span {
font-family: Arial;
font-weight:600;
}

#holiday ol li span:nth-child(odd) {
font-weight:600;
font-size: 2.5rem;
}

#holiday ol li span:nth-child(even) {
font-size:1.2rem;
line-height:1.3;
}

#holiday ol li .new_year_holiday {
color:var(--red);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
text-align:center;
width:100%;
}
