@charset "UTF-8";/* @use 'variables' as *;*/
/*----------------------------------------
	base
------------------------------------------*/
html.html_reset {margin: 0 !important;padding: 0 !important;}

body {position: relative;height: 100%; background-color: var(--c_bg_color); color: var(--c_font_color); font-family: var(--font_base_setting); font-size: var(--base_font_size); font-optical-sizing: auto; font-weight: 500; line-height: var(--base_line_height); word-break: break-all;}

main {position: relative;}

a {color: var(--c_link_color);}

img {max-width: 100%;height: auto;}

@media only screen and (max-width: 835px) {
	body {min-height: 100%;}
	body.scroll_on {overflow-y: scroll;overflow-x: hidden;pointer-events: auto;}
}
/*----------------------------------------
	module
------------------------------------------*/
.pc_only {display: block;}

.sp_only {display: none !important;}

@media only screen and (max-width: 835px) {
	.pc_only {display: none !important;}
  .sp_only {display: block !important;}
}
.anchor-clear {margin-top: -130px;padding-top: 130px;}

@media screen and (max-width: 768px) {
	.anchor-clear {margin-top: -80px;padding-top: 80px;}
}
.mod_mb_0p5distance {margin-bottom: calc(var(--base_distance) * 0.5) !important;}
.mod_mb_1p0distance {margin-bottom: calc(var(--base_distance) * 1) !important;}
.mod_mb_1p5distance {margin-bottom: calc(var(--base_distance) * 1.5) !important;}
.mod_mb_2p0distance {margin-bottom: calc(var(--base_distance) * 2) !important;}
.mod_mb_0p5gap {margin-bottom: calc(var(--base_gap) * 0.5) !important;}
.mod_mb_1p0gap {margin-bottom: calc(var(--base_gap) * 1) !important;}
.mod_mb_1p5gap {margin-bottom: calc(var(--base_gap) * 1.5) !important;}
.mod_mb_2p0gap {margin-bottom: calc(var(--base_gap) * 2) !important;}
.mod_text_bold {font-weight: bold;}
.mod_text_center {text-align: center;}
.mod_text_left {text-align: left;}
.mod_text_right {text-align: right;}
.mod_text_base {font-size: var(--base_font_size);line-height: var(--base_line_height);}
.mod_text_small {font-size: 0.6em;line-height: 1em;}
.mod_mb_0p5em {margin-bottom: 0.5em !important;}
.mod_mb_1p0em {margin-bottom: 1em !important;}
.mod_mb_1p5em {margin-bottom: 1.5em !important;}
.mod_mb_2p0em {margin-bottom: 2em !important;}
.mod_text_underline {text-decoration: underline;}
.mod_flex_box_01, .mod_flex_box_02, .mod_flex_box_03, .mod_flex_box_04 {display: flex;flex-wrap: wrap;gap: var(--base_gap);}
.mod_flex_box_01.jst_center, .mod_flex_box_02.jst_center, .mod_flex_box_03.jst_center, .mod_flex_box_04.jst_center {justify-content: center;}
.mod_flex_box_01.ali_center, .mod_flex_box_02.ali_center, .mod_flex_box_03.ali_center, .mod_flex_box_04.ali_center {align-items: center;}

.mod_flex_box_01 > div, .mod_flex_box_01 > li {width: 100%;}
.mod_flex_box_02 > div, .mod_flex_box_02 > li {width: calc((100% - var(--base_gap) * 1) / 2);}
.mod_flex_box_03 > div, .mod_flex_box_03 > li {width: calc((100% - var(--base_gap) * 2) / 3);}
.mod_flex_box_04 > div, .mod_flex_box_04 > li {width: calc((100% - var(--base_gap) * 3) / 4);}

@media only screen and (max-width: 835px) {
	.mod_flex_box_01 > div, .mod_flex_box_01 > li, .mod_flex_box_02 > div, .mod_flex_box_02 > li {width: 100%;}
	.mod_flex_box_03 > div, .mod_flex_box_03 > li, .mod_flex_box_04 > div, .mod_flex_box_04 > li {width: 100%;}
}

.mod_text_slide_anim_box {display: flex;height: 100px;}
.mod_text_slide_anim_box img {display: block;width: auto;max-width: initial;height: 100%;-webkit-animation: hor_move_l 40s linear infinite;animation: hor_move_l 40s linear infinite;}
.mod_text_slide_anim_box.reverse {-webkit-animation: hor_move_r 40s linear infinite;animation: hor_move_r 40s linear infinite;}

.mod_youtube_iframe_size {position: relative;display: block;width: 100%;height: auto;aspect-ratio: 16/9;}
.mod_disactive {pointer-events: none;}
.mod_scroll_bar_delete {-ms-overflow-style: none;scrollbar-width: none;}
.mod_scroll_bar_delete::-webkit-scrollbar {display: none;}

/* wrap settings
-------------------------------*/
.wrap_100px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 100px;}
.wrap_200px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 200px;}
.wrap_300px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 300px;}
.wrap_400px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 400px;}
.wrap_500px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 500px;}
.wrap_600px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 600px;}
.wrap_700px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 700px;}
.wrap_800px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 800px;}
.wrap_900px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 900px;}
.wrap_1000px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1000px;}
.wrap_1100px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1100px;}
.wrap_1200px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1200px;}
.wrap_1300px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1300px;}
.wrap_1400px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1400px;}
.wrap_1500px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1500px;}
.wrap_1600px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1600px;}
.wrap_1700px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1700px;}
.wrap_1800px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1800px;}
.wrap_1900px {position: relative;margin: 0 auto;width: var(--base_wrap_width);max-width: 1900px;}

.wrap_100px.w_100, .wrap_200px.w_100, .wrap_300px.w_100, .wrap_400px.w_100, .wrap_500px.w_100, .wrap_600px.w_100, .wrap_700px.w_100, .wrap_800px.w_100, .wrap_900px.w_100, .wrap_1000px.w_100, .wrap_1100px.w_100, .wrap_1200px.w_100, .wrap_1300px.w_100, .wrap_1400px.w_100, .wrap_1500px.w_100, .wrap_1600px.w_100, .wrap_1700px.w_100, .wrap_1800px.w_100, .wrap_1900px.w_100 {width: 100%;}

/*----------------------------------------
	loading / opening animation
------------------------------------------*/
#loading {position: fixed;top: 0;left: 0;display: block;width: 100%;height: 100vh;height: 100svh;background-color: var(--c_bg_color);z-index: var(--z_loading);}
#loading.is_loaded {display: none;}
#loading.load_open {-webkit-animation: fade_out 1.4s forwards;animation: fade_out 1.4s forwards;pointer-events: none;}
#loading .logo {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: min(300px, 50%);}
#loading .logo img {width: 100%;}

/*----------------------------------------
	common class
------------------------------------------*/
/* common parts
-------------------------------*/
.cmn_section {position: relative;display: block;width: 100%;height: auto;margin: 0 auto;padding: calc(var(--base_distance) * 1) 0;}

.cmn_in_page_main {position: relative;display: block;width: 100%;height: auto;margin: 0 auto;padding: calc(var(--base_distance) * 1.5) 0 calc(var(--base_distance) * 1);}

.cmn_link_btn_a {position: relative;display: inline-block;margin: 0 auto;padding: 0.5em 1.5em;height: auto;width: auto;min-width: min(340px, 100%);background-color: var(--c_theme_color);line-height: 1.4em;color: var(--c_white_l);font-size: 16px;border: 1px solid var(--c_theme_color);text-decoration: initial !important;transition: 0.2s;text-align: center;}
.cmn_link_btn_a img {position: relative;height: 1.4em;width: auto;}
.cmn_link_btn_a span {position: relative;}
.cmn_link_btn_a:hover {color: var(--c_theme_color);background: transparent;}
.cmn_link_btn_a.w_100 {width: 100%;}
.cmn_link_btn_a.disactive {pointer-events: none;filter: grayscale(1);opacity: 0.5;}

.cmn_coming_soon_img {position: relative;background: var(--c_gray);aspect-ratio: 16/9;display: flex;justify-content: center;align-items: center;}
.cmn_coming_soon_img::before {content: "COMING SOON";position: absolute;color: var(--c_white_l);font-size: 2em;}

@media only screen and (max-width: 835px) {
	.cmn_link_btn_a{ display: block;}
}


/* accordion
-------------------------------*/
.cmn_accordion_box .cmn_accordion_trigger {cursor: pointer;}
.cmn_accordion_box .cmn_accordion_content {overflow: hidden;height: 0;transition: 0.4s ease;}
.cmn_accordion_box .cmn_accordion_content.accordion_open {height: auto;}

/* write box
-------------------------------*/
.cmn_write_box_outer {position: relative;display: block;padding: calc(var(--base_gap) * 2);margin-bottom: calc(var(--base_gap) * 2);}

@media only screen and (max-width: 835px) {
	.cmn_write_box_outer {padding: calc(var(--base_gap) * 2.5) calc(var(--base_gap) * 1.5);}
}
:root {--cmn_write_box_theme_color: var(--c_theme_color);}

.cmn_write_box {position: relative;text-align: left;font-size: clamp(13px, 2vw, 16px);line-height: 1.5em;width: 100%;}
.cmn_write_box .title_box {position: relative;display: block;padding-bottom: calc(clamp(17px, 2vw, 24px) * 0.8);margin-bottom: 2em;border-bottom: 4px double var(--cmn_write_box_theme_color);}
.cmn_write_box .date {font-size: clamp(12px, 2vw, 14px);line-height: 1.4em;font-weight: bold;margin-bottom: 0.7em;letter-spacing: 0.1em;}
.cmn_write_box .box_title {position: relative;display: block;width: 100%;font-size: clamp(19px, 2vw, 24px);line-height: 1.4em;font-weight: bold;}
.cmn_write_box .border_box {position: relative;display: block;width: 100%;height: auto;background-color: var(--c_black_d);border: 1px solid var(--cmn_write_box_theme_color);padding: min(var(--base_gap) * 2, 5vw) min(var(--base_gap) * 2, 4vw);margin-bottom: 1.5em;}
.cmn_write_box iframe {width: 100%;}
.cmn_write_box figure {margin-bottom: 1.5em;}
.cmn_write_box img {display: block;max-width: 100%;height: auto;margin: 0 auto;margin-bottom: 1.5em;}
.cmn_write_box img.app_badge {width: 170px !important;padding-top: 5px;}
.cmn_write_box p {line-height: 1.7em;}
.cmn_write_box a {overflow-wrap: break-word;text-decoration: underline;font-weight: bold;}
.cmn_write_box ul {margin-bottom: 1em;}
.cmn_write_box ul li {position: relative;display: block;margin-bottom: 0.5em;padding-left: 1.2em;}
.cmn_write_box ul li::before {position: absolute;display: block;content: "";top: 0;left: 0;width: 1em;height: 1em;transform: translateY(0.3em) scale(0.4);background-color: var(--cmn_list_color);border-radius: 9999px;}
.cmn_write_box ul li:last-of-type {margin-bottom: 0;}
.cmn_write_box blockquote {padding: 24px;background: rgba(0, 0, 0, 0.04);margin: 20px 0;}
.cmn_write_box blockquote p:last-of-type {margin-bottom: 0;}
.cmn_write_box hr {border-top: 1px solid var(--cmn_write_box_theme_color);border-right: none;border-bottom: none;border-left: none;margin-bottom: 3em;margin-top: 3em;}
.cmn_write_box strong {font-weight: 900;color: var(--cmn_write_box_theme_color);}
.cmn_write_box.single h2, .cmn_write_box.in_page h3 {position: relative;display: block;padding-bottom: 0.4em;padding-left: 1.1em;font-size: clamp(17px, 2vw, 19px);font-weight: bold;margin-bottom: 0.7em;margin-top: 3em;line-height: 1.4em;border-bottom: 1px solid var(--cmn_write_box_theme_color);border-style: dashed;border-top: none;border-left: none;border-right: none;color: var(--c_font_color);}
.cmn_write_box.single h2::before, .cmn_write_box.in_page h3::before {position: absolute;display: block;content: "";left: 0;top: 0.4em;width: 0.6em;height: 0.6em;background-color: var(--cmn_write_box_theme_color);transform: rotateZ(45deg);}
.cmn_write_box.single h3, .cmn_write_box.in_page h4 {position: relative;display: inline-block;font-size: clamp(15px, 2vw, 17px);font-weight: bold;margin-bottom: 0.7em;margin-top: 1em;line-height: 1.4em;padding: 0.1em 0.7em 0.2em;border: 1px solid var(--cmn_write_box_theme_color);color: var(--cmn_write_box_theme_color);}
.cmn_write_box.single h4, .cmn_write_box.in_page h5 {position: relative;display: block;margin-top: 1.2em;margin-bottom: 0.2em;font-size: 1.05em;line-height: 1.4em;font-weight: bold;color: var(--cmn_write_box_theme_color);padding-left: 0.7em;}
.cmn_write_box.single h4::before, .cmn_write_box.in_page h5::before {position: absolute;display: block;content: "";top: 0.75em;left: 0;width: 0.3em;height: 0.6em;background-color: var(--cmn_write_box_theme_color);transform: translateY(-50%);-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);clip-path: polygon(0 0, 0% 100%, 100% 50%);}

/*-- list style --*/
:root {--cmn_list_color: var(--c_theme_color);}

ul.cmn_list_circle li, ul.cmn_list_kome li, ul.cmn_list_asterisk li {position: relative;display: block;margin-bottom: 0.5em;padding-left: 1.2em;}
ul.cmn_list_circle li:last-of-type, ul.cmn_list_kome li:last-of-type, ul.cmn_list_asterisk li:last-of-type {margin-bottom: 0;}
ul.cmn_list_circle li::before {position: absolute;display: block;content: "";top: 0;left: 0;width: 1em;height: 1em;transform: translateY(0.3em) scale(0.4);background-color: var(--cmn_list_color);border-radius: 9999px;}
ul.cmn_list_kome li {padding-left: 1.2em;font-size: 0.95em;line-height: 1.4em;}
ul.cmn_list_kome li::before {position: absolute;display: block;content: "";content: "※";top: 0;left: 0;width: 1em;height: 1em;transform: translateY(0em);color: var(--cmn_list_color);background: initial;}
ul.cmn_list_asterisk li {padding-left: 0.8em;font-size: 0.95em;line-height: 1.4em;}
ul.cmn_list_asterisk li::before {position: absolute;display: block;content: "";content: "*";top: 0;left: 0;width: 1em;height: 1em;transform: translateY(0em);color: var(--cmn_list_color);background: initial;}
ul.cmn_list_underline li {line-height: 1.4em;border-bottom: 1px solid var(--cmn_list_color);padding-top: 0.8em;padding-bottom: 0.8em;margin-bottom: 0;}
ul.cmn_list_underline li::before {position: absolute;display: block;content: "";top: 0;left: 0;width: 1em;height: 1em;transform: translateY(1.1em) scale(0.4);background-color: var(--cmn_list_color);border-radius: 9999px;}

/*-- list style --*/
/*----------------------------------------
	header
------------------------------------------*/
header .header_logo {position: fixed;top: 0;left: 0;width: min(120px, 24vw);height: auto;z-index: var(--z_header_logo);transform: translate(15%, 30%);transition: 0.2s;}
header .header_logo img {display: block;width: 100%;height: auto;}
header .header_logo:hover {opacity: 0.7;}

/*----------------------------------------
	navigation
------------------------------------------*/
:root {--global_nav_pos: clamp(6px , 2vw , 10px);}

@media only screen and (min-width: 835px) {
	#global_nav {position: fixed;top: 10px;right: 10px;padding: calc(var(--global_nav_pos) * 1);z-index: var(--z_nav);background: transparent;width: 100%;}
	#global_nav .nav_links {display: flex;justify-content: flex-end;align-items: flex-start;font-size: min(16px, 1.3vw);gap: 1.5em;}
	#global_nav .nav_links li .nav_link {position: relative;display: block;line-height: 1.2em;letter-spacing: 0.05em;white-space: nowrap;font-weight: 600;color: #000;padding: 0.3em 0.4em 0.3em;text-align: left;transition: 0.2s;}
	#global_nav .nav_links li .nav_link:hover, #global_nav .nav_links li .nav_link.active {color: var(--c_link_color);}
	#global_nav .nav_links li .nav_link.disactive {opacity: 0.5;pointer-events: none;}
	#global_nav .nav_links li.sns_links {display: flex;justify-content: flex-end;align-items: flex-start;font-size: 16px;gap: 0.5em;}
	#global_nav .nav_links li .nav_link_icon {position: relative;display: block;width: 2em;height: 2em;}
	#global_nav .nav_links li .nav_link_icon img {display: block;width: 100%;height: auto;transition: 0.2s;}
	#global_nav .nav_links li .nav_link_icon:hover img {transform: translateY(-2px);}
}

@media only screen and (max-width: 835px) {
	#global_nav {position: fixed;top: 0;left: 0;width: 100%;height: 100lvh;z-index: var(--z_nav);background-color: var(--c_white_l);overflow-y: scroll;overflow-x: hidden;padding-top: 100px;opacity: 0;visibility: hidden;pointer-events: none;transition: 0.2s;}
	#global_nav .nav_links {position: relative;width: 85%;height: auto;margin: 0 auto;text-align: left;font-size: 18px;line-height: 1.2em;letter-spacing: 0.05em;}
	#global_nav .nav_links li {opacity: 0;transform: translateX(-50px);transition: 0.2s;}
	#global_nav .nav_links li:not(:last-of-type) {margin-bottom: 1em;}
	#global_nav .nav_links li .nav_link, #global_nav .nav_links li .sub_nav_link {position: relative;display: block;font-weight: 700;color: var(--c_link_color);white-space: nowrap;}
	#global_nav .nav_links li .nav_link {padding: 0.5em 0;padding-left: 1.2em;}
	#global_nav .nav_links li .nav_link::before {position: absolute;display: block;content: "";left: 0;top: 1.4em;transform: translateY(-50%);width: 0.6em;height: 1em;background: no-repeat center url();background-size: contain;}
	#global_nav .nav_links li .nav_link.disactive {opacity: 0.5;}
	#global_nav .nav_links li:nth-of-type(1) {transition-delay: calc(1* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(2) {transition-delay: calc(2* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(3) {transition-delay: calc(3* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(4) {transition-delay: calc(4* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(5) {transition-delay: calc(5* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(6) {transition-delay: calc(6* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(7) {transition-delay: calc(7* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(8) {transition-delay: calc(8* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(9) {transition-delay: calc(9* 0.05s + 0s);}
	#global_nav .nav_links li:nth-of-type(10) {transition-delay: calc(10* 0.05s + 0s);}
	#global_nav .nav_links li.sns_links {display: flex;justify-content: flex-start;align-items: flex-start;font-size: 20px;gap: 0.5em;padding: 0.8em 0;padding-left: 1.2em;}
	#global_nav .nav_links li .nav_link_icon {position: relative;display: inline-block;width: 2em;height: 2em;overflow: hidden;}
	#global_nav .nav_links li .nav_link_icon img {display: block;width: 100%;height: auto;transition: 0.2s;}
	#global_nav .nav_links li .nav_link_icon:hover img {opacity: 0.7;}
	#global_nav.active {opacity: 1;visibility: visible;pointer-events: initial;}
	#global_nav.active .nav_links li {opacity: 1;transform: translateX(0px);}
}
/* nav trigger
-------------------------------*/
:root {--nav_trigger_size: clamp(60px , 10vw , 90px);}

.nav_trigger_outer {display: none;position: fixed;top: 0px;right: 0px;width: var(--nav_trigger_size);height: var(--nav_trigger_size);cursor: pointer;border-radius: 9999px;z-index: var(--z_nav_trigger);}
.nav_trigger_outer .nav_trigger_bar {position: absolute;width: 50%;height: 24%;top: 50%;left: 50%;transform: translate(-50%, -50%);display: block;transition: 0.6s;}
.nav_trigger_outer .nav_trigger_bar span {position: absolute;left: 50%;transform: translate(-50%, -50%) rotateZ(0deg);width: 100%;height: clamp(2px, 0.5vw, 3px);display: block;transition: 0.2s;background-color: var(--c_theme_color);border-radius: 9999px;}
.nav_trigger_outer .nav_trigger_bar span:nth-last-of-type(1) {top: 0%;width: 100%;}
.nav_trigger_outer .nav_trigger_bar span:nth-last-of-type(2) {top: 50%;width: 100%;}
.nav_trigger_outer .nav_trigger_bar span:nth-last-of-type(3) {top: 100%;width: 100%;}
.nav_trigger_outer.type_text .nav_trigger_bar {height: 30%;}
.nav_trigger_outer.type_text .nav_trigger_bar span:nth-last-of-type(1) {top: 0%;}
.nav_trigger_outer.type_text .nav_trigger_bar span:nth-last-of-type(2) {top: 40%;}
.nav_trigger_outer.type_text .nav_trigger_bar span:nth-last-of-type(3) {top: 100%;height: 40%;background: no-repeat center url(../images/template_parts/hbg_menu_text.svg);background-size: contain;}
.nav_trigger_outer.active .nav_trigger_bar span:nth-last-of-type(1) {transform: translate(-50%, -50%) rotateZ(-135deg);top: 50%;}
.nav_trigger_outer.active .nav_trigger_bar span:nth-last-of-type(2) {transform: translate(-50%, -50%) rotateZ(135deg);top: 50%;}
.nav_trigger_outer.active .nav_trigger_bar span:nth-last-of-type(3) {opacity: 0;}

@media only screen and (max-width: 835px) {
	.nav_trigger_outer {display: block;}
}
/*----------------------------------------
	footer
------------------------------------------*/

.foot_img{ width: 10%; margin: 0 auto 0 10%;}
footer {padding: 60px 0;text-align: center;position: relative;border-top: 1px solid var(--c_theme_color); background-color: #eee;}
footer .f_text {font-size: clamp(14px, 2vw, 18px);line-height: 1.3em;}

@media only screen and (max-width: 835px){
.foot_img{width: 20%;}
}

/*----------------------------------------
	bg
------------------------------------------*/
/*----------------------------------------
	modal
------------------------------------------*/
.cmn_modal_layer {--modal_btn_size: clamp(50px , 5vw , 70px);position: fixed;top: 0px;left: 0;right: 0;bottom: 0;width: 100%;height: 100%;z-index: var(--z_modal);opacity: 0;visibility: hidden;pointer-events: none;}
.cmn_modal_layer .modal_bg {position: fixed;top: 0px;left: 0;right: 0;bottom: 0;width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.6);opacity: 0;transition: 0.6s;}
.cmn_modal_layer .modal_inner {position: absolute;width: auto;height: auto;top: 50%;left: 50%;transform: translateX(-50%) translateY(-50%);text-align: left;opacity: 0;transition: 0.6s;}
.cmn_modal_layer .modal_inner img {width: auto;height: auto;max-width: min(1400px, 94vw);max-height: 75vh;cursor: initial;}
.cmn_modal_layer .modal_inner img.img_mono_modal_content {width: auto !important;height: auto !important;cursor: initial !important;}
.cmn_modal_layer .modal_inner .modal_youtube_video_box {width: min(1200px, 94vw);padding-top: min(90vh, 56.25%);}
.cmn_modal_layer .modal_inner .modal_youtube_video_box iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.cmn_modal_layer .modal_inner .modal_youtube_video_box img {position: absolute;top: 0;left: 0;width: 100%;height: 100%;-o-object-fit: contain;object-fit: contain;}
.cmn_modal_layer .modal_inner .modal_textbox {width: min(1000px, 94vw);height: 75vh;background-color: var(--c_white_l);color: var(--c_black_d);padding: clamp(12px, 4vw, 50px);text-align: left;overflow: hidden;font-size: clamp(13px, 2vw, 16px);}
.cmn_modal_layer .modal_inner .modal_textbox.scrollable {overflow-x: hidden;overflow-y: scroll;overscroll-behavior: contain;}
.cmn_modal_layer .modal_close_btn {position: absolute;top: 4px;right: 4px;width: var(--modal_btn_size);height: var(--modal_btn_size);background: no-repeat center url("../images/template_parts/btn_close_02.svg");background-size: contain;cursor: pointer;}
.cmn_modal_layer.visible {opacity: 1;visibility: visible;pointer-events: auto;}
.cmn_modal_layer.visible .modal_bg {opacity: 1;}
.cmn_modal_layer.visible .modal_inner {opacity: 1;}

.cmn_slide_modal_layer .modal_inner.slide_modal_content_box .slide_modal_content {position: absolute;width: auto;height: auto;top: 50%;left: 50%;transform: translateX(-50%) translateY(-50%);opacity: 0;visibility: hidden;transition: 0.2s;pointer-events: none;}
.cmn_slide_modal_layer .modal_inner.slide_modal_content_box .slide_modal_content.slide_visible {opacity: 1;visibility: visible;pointer-events: initial;}
.cmn_slide_modal_layer .modal_prev_btn, .cmn_slide_modal_layer .modal_next_btn {position: absolute;top: 50%;transform: translateY(-50%);height: min(270px, 25vh);width: min(80px, 10vw);background-color: var(--c_black);cursor: pointer;transition: 0.2s;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
.cmn_slide_modal_layer .modal_prev_btn::before, .cmn_slide_modal_layer .modal_next_btn::before {position: absolute;display: block;content: "";top: 50%;left: 50%;transform: translate(-50%, -50%);width: 40%;height: 100%;background: no-repeat center url(../images/template_parts/icon_arrow_slidemodal_02.svg);background-size: contain;}
.cmn_slide_modal_layer .modal_prev_btn.disactive, .cmn_slide_modal_layer .modal_next_btn.disactive {opacity: 0.2;pointer-events: none;}
.cmn_slide_modal_layer .modal_prev_btn:focus, .cmn_slide_modal_layer .modal_next_btn:focus {outline: none;}
.cmn_slide_modal_layer .modal_prev_btn {left: 0;border-top-right-radius: 10px;border-bottom-right-radius: 10px;}
.cmn_slide_modal_layer .modal_prev_btn::before {transform: translate(-50%, -50%) scale(-1, 1);}
.cmn_slide_modal_layer .modal_prev_btn:hover {transform: translateY(-50%) translateX(-4px);}
.cmn_slide_modal_layer .modal_next_btn {right: 0;border-top-left-radius: 10px;border-bottom-left-radius: 10px;}
.cmn_slide_modal_layer .modal_next_btn:hover {transform: translateY(-50%) translateX(4px);}

@media only screen and (max-width: 835px) {
	.slide_modal .modal_prev_btn, .slide_modal .modal_next_btn {width: 12%;height: 20vh;background-size: 30% auto;}
	.slide_modal .modal_prev_btn {left: 0;}
	.slide_modal .modal_next_btn {right: 0;}
}
.cmn_img_mono_modal_trigger {cursor: pointer;}

/*----------------------------------------
	schedule_grid
------------------------------------------*/
.cmn_schedule_grid {--main_bg_color:rgba(0,0,0,0);--day_time_color:#252525;--grid_h_color:#191919;--saturday_color:#00B5EE;--sunday_color:#E5007F;--closed_day_color:#191919;--font_color:#191919;--border_color:#191919;--font-size:clamp(12px , 4.0vw , 18px);--grid_h_width: calc(var(--font-size) * 5);--grid_h_height: calc(var(--font-size) * 4);--grid_box_width: calc( (var(--schedule_grid_width) - var(--grid_h_width)) / var(--sc_day_num));--grid_box_height: calc(var(--font-size) * 3);}

.cmn_schedule_grid {position: relative;display: grid;width: var(--schedule_grid_width);margin: 0 auto;grid-template-columns: var(--grid_h_width) repeat(var(--sc_day_num), calc((var(--schedule_grid_width) - var(--grid_h_width)) / var(--sc_day_num)));grid-template-rows: var(--grid_h_height) repeat(var(--sc_time_num), var(--grid_box_height));background-color: var(--main_bg_color);overflow: hidden;grid-auto-flow: column;font-size: var(--font-size);}
.cmn_schedule_grid p {position: relative;display: block;margin-bottom: 0;display: flex;justify-content: center;align-items: center;flex-direction: column;font-weight: bold;color: var(--font_color);line-height: 1.2em;}
.cmn_schedule_grid p.grid_h {color: var(--grid_h_color);border-bottom: 1px solid var(--border_color);border-right: 1px solid var(--border_color);}
.cmn_schedule_grid p.day {color: var(--day_time_color);border-bottom: 1px solid var(--border_color);}
.cmn_schedule_grid p.day span {font-size: 0.7em;}
.cmn_schedule_grid p.day::before {position: absolute;display: block;content: "";height: calc(var(--grid_box_height) * var(--sc_time_num) - 0.5em);width: 0px;top: initial;right: initial;left: 50%;bottom: 0;transform: translateX(0%) translateY(calc(100% + 0.5em));border-top: initial;border-right: 1px dashed var(--border_color);}
.cmn_schedule_grid p.time {color: var(--day_time_color);border-right: 1px solid var(--border_color);}
.cmn_schedule_grid p.time::before {position: absolute;display: block;content: "";height: 0px;width: calc(var(--grid_box_width) * var(--sc_day_num) - 0.5em);top: 50%;right: 0;transform: translateX(calc(100% + 0.5em)) translateY(-50%);border-top: 1px dashed var(--border_color);opacity: 0.7;}
.cmn_schedule_grid p.sat {color: var(--saturday_color);}
.cmn_schedule_grid p.sun {color: var(--sunday_color);}
.cmn_schedule_grid p.closed::after {position: absolute;display: block;content: "";left: 50%;bottom: calc(var(--grid_box_height) * var(--sc_time_num) * 0.5 * -1);color: var(--closed_day_color);width: 1.6em;height: calc(var(--grid_box_height) * var(--sc_time_num) * 0.6);min-height: 4.7em;transform: translate(-50%, 50%);opacity: 1;z-index: 1;content: "休 演 日";writing-mode: vertical-rl;display: grid;place-items: center;background-color: var(--c_bg_color);border: 1px solid var(--border_color);border-radius: 9999px;font-size: 0.9em;}

@media only screen and (max-width: 835px) {
	.cmn_schedule_grid {--grid_h_width: calc(var(--font-size) * 5);--grid_h_height: calc(var(--font-size) * 4);--grid_box_width: calc( (var(--schedule_grid_width) - var(--grid_h_width)) / var(--sc_time_num));--grid_box_height: calc(var(--font-size) * 3);}
	.cmn_schedule_grid {grid-auto-flow: row;grid-template-columns: var(--grid_h_width) repeat(var(--sc_time_num), calc((var(--schedule_grid_width) - var(--grid_h_width)) / var(--sc_time_num)));grid-template-rows: var(--grid_h_height) repeat(var(--sc_day_num), var(--grid_box_height));}
	.cmn_schedule_grid p.day {border-bottom: none;border-right: 1px solid var(--border_color);}
	.cmn_schedule_grid p.day::before {position: absolute;display: block;content: "";height: 0px;width: calc(var(--grid_box_width) * var(--sc_time_num) - 0.5em);left: initial;bottom: initial;top: 50%;right: 0;transform: translateX(calc(100% + 0.5em)) translateY(-50%);border-top: 1px dashed var(--border_color);opacity: 0.7;}
	.cmn_schedule_grid p.time {border-bottom: 1px solid var(--border_color);border-right: none;}
	.cmn_schedule_grid p.time::before {position: absolute;display: block;content: "";height: calc(var(--grid_box_height) * var(--sc_day_num) - 0.5em);width: 0px;top: initial;right: initial;left: 50%;bottom: 0;transform: translateX(0%) translateY(calc(100% + 0.5em));border-top: initial;border-right: 1px dashed var(--border_color);}
	.cmn_schedule_grid p.closed::after {right: -1px;bottom: 0;width: calc(var(--grid_box_width) * var(--sc_time_num));height: 100%;transform: translateX(100%);writing-mode: initial;}
}

/*----------------------------------------
	404
------------------------------------------*/
#error_404 {padding: calc(var(--base_distance) * 2) 0;text-align: center;}
#error_404 p {color: var(--c_theme_color);}
#error_404 .title {font-size: 30px;line-height: 1em;margin-bottom: 1em;}
#error_404 .text {margin-bottom: 3em;}
#error_404 .link_flex {display: flex;justify-content: center;flex-wrap: wrap;gap: 10px;margin: 0 auto;}
#error_404 .error_toplink {position: relative;display: block;width: min(230px, 70%);height: 60px;display: grid;place-items: center;background-color: var(--c_link_color);color: var(--c_white);font-weight: bold;font-size: min(18px, 4vw);white-space: nowrap;letter-spacing: 0.05em;margin: 0 auto;transition: 0.2s;border-radius: 5px;}
#error_404 .error_toplink:hover {transform: translateY(-2px);}

.news_wrap .news {--news_gap:20px;}
.news_wrap .news .news_link {display: flex;border-bottom: 1px solid #aaa;color: var(--c_font_color);position: relative;gap: var(--news_gap);padding: 1.75em 0;}
.news_wrap .news .news_link .date {width: 14%;}
.news_wrap .news .news_link .news_title {width: calc(86% - var(--news_gap));}
.news_wrap .news .single {border: 1px solid #ccc;padding: 5%;background: rgba(255, 255, 255, 0.9);}
.news_wrap .news .single .title_block {border-bottom: 1px solid var(--c_theme_color);padding-bottom: 20px;margin-bottom: 20px;}
.news_wrap .news .single .title_block .date {color: var(--c_theme_color);font-weight: 600;}
.news_wrap .news .single .title_block .news_title {font-size: clamp(18px, 3vw, 24px);line-height: 1.4em;}
.news_wrap .news:first-of-type .news_link {padding-top: 0;}
.news_wrap.single_wrap .news:not(:last-of-type) {margin-bottom: 50px;}
.news_wrap.single_wrap .cmn_btn_outer {text-align: center;}

@media screen and (max-width: 768px) {
	.news_wrap .news {--news_gap:5px;}
	.news_wrap .news .news_link {flex-direction: column;padding: 1em 0;}
 	.news_wrap .news .news_link .date {width: 100%;}
  	.news_wrap .news .news_link .news_title {width: 100%;font-size: 16px;line-height: 1.5em;}
  	.news_wrap .news .single {padding: 20px 16px;}
}
/*----------------------------------------
	Pagination
------------------------------------------*/
.pagination {position: relative;overflow: hidden;display: flex;margin: 30px auto;justify-content: center;}
.pagination .page-numbers {border: 1px solid #ccc;margin-right: 8px;text-decoration: none;height: 40px;line-height: 40px;font-size: 14px;width: 40px;padding: 0 8px !important;text-align: center;}
.pagination .page-numbers.current {color: #fff;background: #525252;border: none;}
.pagination .page-numbers.dots {padding: 0 12px !important;}
.pagination .page-numbers:last-child {margin-right: 0;}
.pagination .page-numbers.next {width: 75px;line-height: 37px;}
.pagination .page-numbers.prev {width: 75px;line-height: 37px;}
.pagination a {color: #000;}

.fix_bg {position: fixed;width: 100%;height: 100%;top: 0;left: 0; z-index: -1;}
.fix_bg img {position: absolute;width: 100%;height: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);-o-object-fit: cover;object-fit: cover; opacity: 0.3; }


@media screen and (max-width: 768px) {
	.fix_bg img {opacity: 0.2; }
}

/*# sourceMappingURL=common.css.map */

/************* ANIMATIONS ***************/

.anime{ position:relative; /*overflow:hidden;*/ opacity:0;}
.play.blkin.spring:before{ background-color: #e65087; }
.play.blkin.summer:before{ background-color: #fabe00; }
.play.blkin.autumn:before{ background-color: #f0824b; }
.play.blkin.winter:before{ background-color: #1eafe6; }
@keyframes imageAnimation { 
  0% { opacity: 0; animation-timing-function: ease-in; }
  10% { opacity: 1; animation-timing-function: ease-out; }
  25% { opacity: 1; }
  37% { opacity: 0; }
  100% { opacity: 0; }
}

/* SLIDE BOX ANIMATION */
@keyframes play {
  from {transform: translateX(-100%);opacity: 0;}
  to {transform: translateX(0);opacity: 1;}
}
@keyframes maskOut {
  from {transform: translateX(0); }  
  to {transform: translateX(101%); }
}

.play.blkin { animation-name: play; animation-duration: .4s; animation-fill-mode: forwards; animation-timing-function: cubic-bezier(.8,0,.5,1); position: relative;}
.play.blkin:before { animation-name: maskOut; animation-duration: .4s; animation-delay: .4s; animation-fill-mode: forwards; animation-timing-function: cubic-bezier(.8,0,.5,1); content: ''; position: absolute; top: 0; left: 0; z-index: 1000; width: 100%; height: 100%; background: #333;}

.play.fade_up {animation-fill-mode:both; animation-duration:1.5s; animation-name: fadeInUp;visibility: visible !important;}

@-webkit-keyframes fadeInUp { 
    0% { opacity: 0; -webkit-transform: translateY(50px); } 
    100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(50px); -ms-transform: translateY(50px); transform: translateY(50px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

.play.fade_in { animation-fill-mode:both; animation-duration:1.5s; animation-name: fadeIn; visibility: visible !important;}
@-webkit-keyframes fadeIn {
 0% { opacity: 0;}
 100% { opacity: 1;}
}
@keyframes fadeIn {
 0% { opacity: 0;}
 100% { opacity: 1;}
}
