@charset "UTF-8";

:root {
	--ff-nose: YakuHanMP, "Noto Serif JP", YuMincho, serif;
	--ff-nosan: YakuHanJP, "Noto Sans JP", sans-serif;
	--c-brown: #a7625b;
	--c-lbrown: #973c2b;
	--c-navy: #6b729d;
	--c-lnavy: #686f98;
	--c-purple: #4f3277;
	--c-beige: #f5f1ed;
}

@font-face {
  font-family: 'otemon';
  src:
    url('fonts/otemon.ttf?20260220a') format('truetype'),
    url('fonts/otemon.woff?20260220a') format('woff'),
    url('fonts/otemon.svg?20260220a#otemon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

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; vertical-align: baseline; box-sizing: border-box; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main { display: block; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
button{ background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; color: #000; }
.text-align-center { text-align: center; }
.text-align-right { text-align: right; }
.display-block { display: block; }
.hidden { display: none !important; visibility: hidden; }
.clearfix:before,
.clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clear { clear: both; }

@media screen and (max-width: 410px) {
	.ktkn-ctrl { letter-spacing: -0.1em; }
}
._lslesser--lv1 { letter-spacing: -0.1em; }
._lslesser--lv2 { letter-spacing: -0.2em; }
._lslesser--lv3 { letter-spacing: -0.3em; }
._lslesser--lv4 { letter-spacing: -0.4em; }
/* show only  SP/PC
-------------------------------*/
/* font
-------------------------------*/
.bold { font-weight: bold; }
/* margin
-------------------------------*/
/* padding
-------------------------------*/
/* base */
html, body, .l-body { height: 100%; }
html { font-size: 62.5%; }
body { font-family: var(--ff-nose); font-size: 1.4rem; -webkit-font-feature-settings: "palt"; font-feature-settings: "palt"; color: #000; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; vertical-align: top; }
input,
textarea,
select,
button { font-family: inherit; -webkit-appearance: none; -moz-appearance: none; appearance: none; outline: none; }
select:-ms-expand { display: none; }
button { cursor: pointer; font-size: inherit; }
/* for development */
pre { padding: 15px; background: #eee; font-size: 1.2rem; line-height: 1.2; }
/* Layout */
.l-body { width: 100%; }
.l-body.is-fixed { position: fixed; width: 100%; overflow: hidden; }
.whole-wrap { position: relative; overflow: hidden; }
.l-wrapper { position: relative; width: calc(100% - 60px); margin-left: auto; margin-right: auto; }
.l-sp-wrapper { position: relative; margin-left: auto; margin-right: auto; width: calc(100% - 40px); }
.l-content { position: relative; }
/*.l-section { margin-bottom: 48px; }*/
@media screen and (min-width: 681px) {
	body { min-width: 1400px; }
	.l-wrapper { width: 1000px; }
	.l-sp-wrapper { width: 100%; }
	.l-content { padding-bottom: 80px; }
/*	.l-section { margin-bottom: 100px; }*/
}

/*	Header	*/
.header { position: fixed; top: 0; left: 0; display: flex; justify-content: space-between; align-items: center; width: 100%; height: 60px; background: #fff; padding: 0 20px; z-index: 500; }
.header-logo { flex: 1; display: flex; align-items: center;
justify-content: center;	/*	TEMP	*/

}
.header-logo__img { width: 63px; margin-right: 25px; }
.header-logo__txt { flex: 1; font: 600 1.2rem var(--ff-nose); line-height: 1.58334; letter-spacing: 0.01em; }
@media screen and (min-width: 681px) {
	.header { height: 80px; }
	.header-logo__img { width: 124px; margin-right: 50px; }
	.header-logo__txt { font-size: 2.0rem; }
}



@media screen and (min-width: 681px) {
	.header-logo { justify-content: center; }
}


.header__navtrg { position: fixed; top: 14px; right: 15px; display: flex; justify-content: center; align-items: center; width: 30px; height: 30px; z-index: 500; }
.header__navtrg span { position: absolute; left: 0; display: inline-block; transition: all .4s; width: 30px; height: 2px; background: #000; }
.header__navtrg span:nth-of-type(1) {  }
.header__navtrg span:nth-of-type(2) {  }

.header.active .header__navtrg span:nth-of-type(1),
.header.active .header__navtrg span:nth-of-type(2) { top: 50%; left: 50%; }
.header.active .header__navtrg span:nth-of-type(1) { transform: translate(-50%, -50%) rotate(-45deg); }
.header.active .header__navtrg span:nth-of-type(2) { transform: translate(-50%, -50%) rotate(45deg); }
.header.active .header__navtrg span { animation: none; }


/*	Nav	*/
.nav__tab-wrap { display: flex; }
.nav__tab { font-family: var(--ff-nose); font-size: 2.0rem; font-weight: 400; line-height: 1; letter-spacing: 0.2em; }
.nav__tab--lit._active { color: var(--c-lbrown); }
.nav__tab--int._active { color: var(--c-lnavy); }
.nav__menu-wrap {  }
.nav__menu {  }
.nav__menu a { font: 600 1.4rem var(--ff-nose); line-height: 1; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: #fff; }
.nav__menu__icon { margin-right: 10px; font-family: 'otemon'; font-size: 2.5rem; font-weight: 500; line-height: 1; }
.sns-wrap { display: flex; justify-content: center; align-items: center; }
.sns {  }
.sns:not(:first-of-type) { margin-left: 15px; }
.sns a { font: 500 3.6rem 'otemon'; line-height: 1; }
@media screen and (max-width: 680px) {
	
	.nav { position: fixed; top: 0; left: 0; display: none; width: 100%; height: 100svh; background-color: rgba(255,255,255,0.7); z-index: 400; }
	.nav__inner { position: relative; width: calc(100vw - 100px); background: #fff; margin: 0 0 0 auto; padding: 108px 40px 56px; border-radius: 0 0 0 77px; }
	.nav__tab-wrap { flex-direction: column; }
	.nav__tab:not(:first-of-type) { margin-top: 15px; }
	.nav__tab { display: flex; align-items: center; }
	.nav__tab__deco { display: flex; justify-content: center; align-items: center; width: 25px; height: 25px; border-width: 1px; border-style: solid; border-radius: 50%; }
	.nav__tab__deco::before { transform: translateX(1px); font: 500 2.5rem 'otemon'; line-height: 1; content: "a"; }
	.nav__tab__txt { position: relative; margin-left: 38px; }
	.nav__tab__txt::before { position: absolute; left: 0; bottom: -5px; display: block; width: calc(100% - 5px); height: 1px; }
	
	.nav__tab._active .nav__tab__txt::before { content: ""; }
	.nav__tab._active .nav__tab__deco::before { color: #fff; }
	
	.nav__tab--lit._active .nav__tab__txt::before,
	.nav__tab--lit._active .nav__tab__deco { background: var(--c-lbrown); }
	
	
	.nav__tab--int._active .nav__tab__txt::before,
	.nav__tab--int._active .nav__tab__deco { background: var(--c-lnavy); }
	
	
	.nav__menu-wrap { margin-top: 36px; }
	.nav__menu:not(:first-of-type) { margin-top: 14px; }
	.nav__menu a { display: flex; justify-content: center; align-items: center; height: 32px; background: #e6e6e6; border-radius: 16px; }
	.nav__menu:first-of-type a { background: #000; }
	.nav__menu:not(:first-of-type) a { color: #000; }
	.nav .sns-wrap { margin-top: 34px; }
	
}
@media screen and (min-width: 681px) {
	.header__navtrg,
	.nav__tab__deco,
	.nav .sns-wrap,
	.nav__menu:nth-of-type(1),
	.nav__menu:nth-of-type(3) { display: none; }
	.nav__inner { display: flex; justify-content: flex-end; align-items: center; }
	.nav__menu-wrap { margin-left: 82px; }
	.nav__menu {  }
	.nav__menu a { display: flex; justify-content: center; align-items: center; min-width: 160px; height: 40px; background: #004b98; border-radius: 20px; font-size: 1.5rem; letter-spacing: 0.2em; }
	
	.nav__tab-wrap { position: relative; min-width: 212px; }
	.nav__tab-wrap::before { order: 2; width: 1px; background: #b3b3b3; margin: 0 35px 0 33px; content: ""; }
	.nav__tab--lit { order: 1; }
	.nav__tab--int { order: 3; }
	.nav__tab { position: relative; font-size: 1.7rem; font-weight: 600; }
	.nav__tab._active::before { position: absolute; left: 50%; transform: translateX(-50%); top: calc(100% + 26px); display: block; width: 100%; height: 6px; content: ""; }
	.nav__tab--lit._active { color: var(--c-lbrown); }
	.nav__tab--lit::before { background-color: var(--c-lbrown); }
	.nav__tab--int._active { color: var(--c-lnavy); }
	.nav__tab--int::before { background-color: var(--c-purple); }
	.nav__menu-wrap {  }
	.nav__menu {  }
	.nav__menu a { font: 600 1.4rem var(--ff-nose); line-height: 1; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: #fff; }
	.nav__menu__icon { margin-right: 10px; font-family: 'otemon'; font-size: 2.5rem; font-weight: 500; line-height: 1; }
}



.header__navtrg span:nth-of-type(1) {
  top: 10px;
  animation: hamburgerLink_anime 2s cubic-bezier(0.23, 1, 0.32, 1) 1s infinite both;
}
.header__navtrg span:nth-of-type(2) {
  top: 20px;
  animation: hamburgerLink_anime 2s cubic-bezier(0.23, 1, 0.32, 1) 1.5s infinite both;
}






.button { background: #000; color: #FFF; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; font-size: 1.5rem; font-weight: bold; width: 100%; height: 60px; text-decoration: none; position: relative; }
.button:after { content: ""; width: 18px; height: 16px; background: url(../img/icon_download_white.svg) no-repeat center/contain; display: block; position: absolute; top: 50%; right: 20px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: 0.4s; -o-transition: 0.4s; transition: 0.4s; }
.button--center { margin-left: auto; margin-right: auto; }


/*--------------------
		Footer
--------------------*/
.footer { padding: 0 0 80px; }
.footer__upper {  }
.footer__logo { display: block; }
.footer__logo img { width: 190px; }

.footer__addr-wrap { position: relative; left: 50%; transform: translateX(-50%); display: inline-block; margin-top: 24px; }
.footer__addr { display: flex; justify-content: flex-start; font-size: 1.2rem; font-weight: 500; line-height: 1.3; }
.footer__addr:not(:first-of-type) { margin-top: -5px; }
.footer__addr { display: flex; justify-content: flex-start; }
.footer__addr dt { position: relative; width: 134px; text-align: justify; text-justify: inter-ideograph; margin-right: 5px; }
.footer__addr dt::after { display: inline-block; width: 100%; content: ""; }
.footer__sns-wrap { display: flex; align-items: center; }
.footer__sns:not(:first-of-type) { margin-left: 10px; }
.footer__sns img { width: 25px; }

.fixedbtn-wrap { position: fixed; bottom: 0; left: 0; transform: translateY(100%); transition: .4s; display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr; grid-column-gap: 10px; grid-row-gap: 0px; width: 100%; background: rgba(255,255,255,0.8); padding: 15px; }
.fixedbtn-wrap.is-visible { transform: translateY(0%); }
.fixedbtn-wrap.is-clear { transform: translateY(100%); }
.fixedbtn { display: flex; justify-content: center; align-items: center; height: 42px; border: 1px solid #000; border-radius: 21px; font-size: 1.6rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: #000; }
.fixedbtn--lit {  }
.fixedbtn--int {  }
.fixedbtn._active { color: #fff; }
.fixedbtn--lit._active { background: #9e655e; border-color: #9e655e; }
.fixedbtn--int._active { background: var(--c-lnavy); border-color: var(--c-lnavy); }
@media screen and (max-width: 680px) {
	.footer__upper { margin-bottom: 12px; }
	.footer__logo { text-align: center; }
	.footer__sns-wrap { justify-content: center; }
}
@media screen and (min-width: 681px) {
	.footer { padding: 0 0 78px; }
	.footer .l-wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; width: 690px; }
	.footer__logo { width: 100%; margin-bottom: 22px; text-align: center; }
	.footer__logo img { width: 340px; }
	.footer__lower { margin-bottom: 19px; }
	.footer__addr-wrap { margin-top: 36px; }
	.footer__addr { font-size: 1.5rem; }
	.footer__addr:not(:first-of-type) { margin-top: -3px; }
	.footer__addr dt { width: 168px; }
	.footer__sns:not(:first-of-type) { margin-left: 20px; }
	.footer__sns a { transition: .4s; }
	.footer__sns a:hover { filter: brightness(150%); }
	.footer__sns img { width: 44px; }
	.fixedbtn-wrap { display: none; }
}




/*--------------------
		FV
--------------------*/

.fv-wrap { position: relative; margin-top: 60px; }
.fv { display: flex; justify-content: center; align-items: center; text-align: center; }

.fv--lit { background: var(--c-brown); }
.fv--int { background: var(--c-navy); }


/*  for short Android  */
@media screen and (max-width: 416px) and (max-height: 620px) {
	
}
@media screen and (max-width: 680px) {
	.fv-wrap { height: 554px; }
	.fv-wrap::before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; width: 76vw; aspect-ratio: 285/37; background: url("../img/ttl_fv.svg") no-repeat center/contain; content: ""; }
	.fv { height: 50%; }
	.fv img { width: 76.54vw; }
	.fv picture { position: relative; }
	.fv picture::before { position: absolute; width: auto; height: 100%; aspect-ratio: 28/207; background-repeat: no-repeat; background-position: 50% 0; background-size: contain; content: ""; z-index: 10; }
	.fv--lit picture::before { top: 0; left: 0; transform: translateX(-50%); background-image: url("../img/label_fv_lit.svg"); }
	.fv--int picture::before { bottom: 0; right: 0; transform: translateX(50%); background-image: url("../img/label_fv_int.svg"); }
}

/*  for long Smartphone  */
@media screen and (max-width: 680px) and (min-height: 720px) {
/*	.fv img { width: 80vw; }*/
}
@media screen and (min-width: 681px) {
	.fv-wrap { display: flex; justify-content: space-between; min-height: 698px; margin-top: 80px; }
	.fv { width: 50%; height: 100%; padding-top: 60px; padding-bottom: 60px; }
	.fv img { min-width: 648px; }
}
@media screen and (min-width: 1401px) {
	.fv:nth-of-type(1) { justify-content: flex-end; padding-right: 25px; }
	.fv:nth-of-type(2) { justify-content: flex-start; padding-left: 25px; }
}
@media screen and (min-width: 1701px) {
	
}
/*  for FHD  */
@media screen and (min-width: 1920px) and (max-height: 950px) {
	.fv img { width: calc(100% - 100px); }
}


/* Tab
-------------------------------*/
.swap-content { padding-top: 95px; background-image: url("../img/bg_dots_sp.svg"); background-repeat: repeat-y; background-position: 50% 0; background-size: 100% auto; }
.swap-content._lit { background-color: var(--c-beige); }
.swap-content._int { background-color: #f1f0f5; }
.tab-list { position: relative; display: flex; justify-content: center; align-items: flex-end; }
.tab-list::before { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: block; width: calc(100% + 50px); height: 2px; background: #000; content: ""; }
.tab-list__item { display: flex; justify-content: center; align-items: center; width: calc(50% - 10px); height: 50px; background: #fff; border-style: solid; border-color: #000; padding: 2px; }
.tab-list__item button { display: flex; justify-content: center; align-items: center; width: 100%;
 height: 100%; background: #fff; border-radius: 2px; font: 600 2.0rem var(--ff-nose); line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; text-align: center; color: #000; }
.tab-list__item::before { position: absolute; bottom: 2px; display: block; width: 2px; height: 4px; background: #fff; content: ""; }
.tab-content { display: none; overflow: hidden; }
.tab-list__item.is-current { position: relative; border-width: 2px 2px 0 2px; border-radius: 4px 4px 0 0; }
.tab-list__item.is-current::before { position: absolute; left: 50%; transform: translateX(-50%); bottom: 0; display: block; width: 100%; height: 2px; background: #fff; content: ""; }
.tab-list__item.is-current button { color: #fff; }
.tab-list__item--lit.is-current button { background: var(--c-lbrown); }
.tab-list__item--int.is-current button { background: #52357e; }

@media screen and (max-width: 680px) {
	.tab-list { width: calc(100% - 50px); margin-left: auto; margin-right: auto; }
	.tab-list__item.is-current { width: calc(50% + 10px); height: 60px; }
	.tab-list__item.is-current button::after { position: absolute; left: 50%; transform: translateX(-50%); bottom: 10px; display: block; width: 0; height: 0; border-style: solid; border-width: 6px 6px 0px 6px; border-color: rgba(255,255,255,0.3) transparent transparent transparent; content: ""; }
	.tab-list__item--lit { border-width: 2px 0 0 2px; border-radius: 4px 0 0 0; }
	.tab-list__item--int { border-width: 2px 2px 0 0; border-radius: 0 4px 0 0; }
	.tab-list__item--lit::before { left: 0; }
	.tab-list__item--int::before { right: 0; }
	.tab-list__item.is-current button { padding-bottom: 10px; }
}
@media screen and (min-width: 681px) {
	.swap-content { padding-top: 160px; background-image: url("../img/bg_dots_pc.svg"); background-position: 50% 750px; }
	.tab-list { justify-content: space-between; width: 1100px; margin-left: auto; margin-right: auto; padding: 0 70px; }
	.tab-list::before { width: 100%; z-index: 10; }
	.tab-list__item { position: relative; width: calc(50% - 40px); height: 66px; border-width: 2px 2px 0 2px; border-radius: 
	12px 12px 0 0; padding: 10px; }
	.tab-list__item button { border-radius: 6px 6px 0 0; font-size: 2.5rem; letter-spacing: 0.3em; text-indent: 0.3em; }
	.tab-list__item::before { left: 50%; transform: translateX(-50%); width: 100%; height: 8px; background-color: transparent; border-left: 2px solid #fff; border-right: 2px solid #fff; }
	.tab-list__item.is-current { position: relative; border-radius: 12px 12px 0 0; padding: 10px 10px 0; z-index: 50; }
	.tab-list__item.is-current::before { border: none; }
	.tab-list__item.is-current button { padding-bottom: 5px; }
}


/* Intro
-------------------------------*/
.sec--intro { position: relative; background: #fff; padding: 60px 0 51px; }
.sec--intro::before { position: absolute; display: block; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; }
.intro { text-align: center; }
.intro__ttl { font-size: 2.3rem; font-weight: 600; line-height: 1; letter-spacing: 0.13em; text-indent: 0.13em; }
.intro__catch { margin-top: 12px; font-size: 1.5rem; font-weight: 600; line-height: 1.6; letter-spacing: 0.017em; text-indent: 0.017em; }
.intro-txt { margin-top: 22px; font-size: 1.6rem; font-weight: 400; line-height: 2.125; letter-spacing: 0.025em; text-align: justify; }

#lit .sec--intro::before { top: 0; width: 51px; height: 272px; background-image: url("../img/deco_intro_lit_sp.svg"); }
#lit .intro { color: var(--c-lbrown); }
#int .sec--intro::before { top: 26px; width: 124px; height: 598px; background-image: url("../img/deco_intro_int_sp.svg"); }
#int .intro { color: var(--c-purple); }
@media screen and (max-width: 680px) {
	#lit .sec--intro::before { left: -2px; }
	#int .sec--intro::before { right: 5px; }
	#int .intro { margin-left: -20px; margin-right: -20px; }
}
@media screen and (min-width: 681px) {
	.sec--intro { padding: 147px 0 160px; }
	.sec--intro .l-wrapper { width: calc(100% - 40px); }
	.intro__ttl { font-size: 5.0rem; letter-spacing: 0.22em; text-indent: 0.22em; }
	.intro__catch { margin-top: 19px; font-size: 2.0rem; letter-spacing: 0.2em; text-indent: 0.2em; }
	.intro-txt { margin-top: 50px; margin-left: -30px; margin-right: -30px; font-size: 1.8rem; line-height: 2.6112; text-indent: 0.025em; text-align: center; }
	.sec--intro::before { left: 50%; transform: translateX(-50%); }
	#lit .sec--intro::before { top: 108px; transform: translateX(-51%); width: 628px; height: 118px; background-image: url("../img/deco_intro_lit_pc.svg"); }
	#int .sec--intro::before { top: 105px; transform: translateX(-51%); width: 1375px; height: 263px; background-image: url("../img/deco_intro_int_pc.svg"); }
}


/* Field of study
-------------------------------*/

/*	deco	*/
.sec--fos { position: relative; padding-top: 80px; }
.fos-deco { position: absolute; top: -35px; left: 50%; transform: translateX(-50%); display: block; width: 10px; height: 70px; }
.fos-deco::before,
.fos-deco::after { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; content: ""; }
.fos-deco::before { width: 1px; height: 100%; background: #b3b3b3; }
.fos-deco::after { width: 10px; height: 10px; border-radius: 50%; }
#lit .fos-deco::after { background: var(--c-lbrown); }
#int .fos-deco::after { background: var(--c-purple); }
@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	.sec--fos { padding-top: 137px; }
	.fos-deco { top: -65px; width: 12px; height: 130px; }
	.fos-deco::after { width: 12px; height: 12px; }
}

/*	fos intro	*/
.cmn-intro {}
.cmn-intro__ttl { position: relative; display: flex; flex-direction: column; align-items: center; padding-bottom: 34px; text-align: center; }
.cmn-intro__ttl::before { margin-bottom: 9px; font-size: 1.0rem; font-weight: 500; line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; }
.cmn-intro__ttl { font-size: 2.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; }
.cmn-intro__ttl::after { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: block; width: 26px; height: 2px; content: ""; }
.cmn-intro__catch { margin-top: 14px; font-size: 1.8rem; font-weight: 400; line-height: 1.61; letter-spacing: 0.025em; text-indent: 0.025em; text-align: center; }
.cmn-intro__txt { margin-top: 18px; font-size: 1.6rem; font-weight: 400; line-height: 1.75; letter-spacing: 0.025em; text-align: justify; }
#lit .cmn-intro__ttl::before { color: var(--c-lbrown); }
#lit .cmn-intro__ttl::after { background: var(--c-lbrown); }
#int .cmn-intro__ttl::before { color: var(--c-purple); }
#int .cmn-intro__ttl::after { background: var(--c-purple); }

.sec--fos .cmn-intro__ttl::before { content: "FIELD OF STUDY"; }
.sec--license .cmn-intro__ttl::before { content: "LICENSE"; }
.sec--stab .cmn-intro__ttl { line-height: 1.227; }
.sec--stab .cmn-intro__ttl::before { content: "STUDY ABROAD"; }

.cmn-intro--with_catch .cmn-intro__txt { margin-top: 6px; }

@media screen and (max-width: 680px) {
	.cmn-intro__txt { padding: 0 30px; }
}
@media screen and (min-width: 681px) {
	.cmn-intro__ttl { padding-bottom: 36px; font-size: 4.1rem; }
	.cmn-intro__ttl::before { margin-bottom: 19px; font-size: 1.4rem; }
	.cmn-intro__catch { margin-top: 35px; font-size: 2.4rem; line-height: 1.3; }
	.cmn-intro__txt { margin-top: 32px; font-size: 1.4rem; line-height: 2.142; text-indent: 0.025em; text-align: center; }
	.cmn-intro--with_catch .cmn-intro__txt { margin-top: 22px; }
}


/*	Major & Course	*/
.maco-wrap { margin-top: 39px; }
.maco { padding: 24px 20px 20px; color: #fff; }
.maco__ttl { margin-bottom: 33px; font-weight: 700; line-height: 1; text-align: center; }
.maco__ttl__sub { display: block; margin-top: 8px; font-size: 1.2rem; font-weight: 400; line-height: 1; }
.maco__img {  }
.maco__txt { font-size: 1.4rem; font-weight: 400; line-height: 1.642; letter-spacing: 0.03em; text-align: justify; }

#lit .maco { background: #9e655e; }
#lit .maco__ttl { font-size: 2.2rem; letter-spacing: 0.1em; text-indent: 0.1em; }
#int .maco { background: var(--c-lnavy); }
#int .maco__ttl { font-size: 2.1rem; letter-spacing: 0.03em; text-indent: 0.03em; }
#int .maco__txt ._emp { display: inline-block; background: #fff; padding: 0 2px 0 1px; color: var(--c-lnavy); }
@media screen and (max-width: 680px) {
	.maco:not(:first-of-type) { margin-top: 20px; }
	#lit .maco { display: flex; flex-wrap: wrap; justify-content: space-between; }
	#lit .maco__ttl { width: 100%; }
	#lit .maco__img { width: 142px; }
	#lit .maco:nth-of-type(odd) .maco__img { margin-left: -50px; margin-right: 20px; }
	#lit .maco:nth-of-type(even) .maco__txt { order: 2; }
	#lit .maco:nth-of-type(even) .maco__img { order: 3; margin-right: -50px; margin-left: 20px; }
	#lit .maco__txt { flex: 1; margin-top: -5px; }
	
	#int .maco:nth-of-type(odd) .maco__img { margin-left: -50px; }
	#int .maco:nth-of-type(even) .maco__img { margin-right: -50px; }
	#int .maco__ttl { margin-left: -10px; margin-right: -10px; }
	#int .maco__txt { margin-top: 14px; }
}
@media screen and (min-width: 681px) {
	
	.maco-wrap { display: grid; grid-template-rows: 1fr; grid-row-gap: 0px; width: 900px; margin: 102px auto 0; }
	
	#lit .maco-wrap { grid-template-columns: repeat(3, 1fr); grid-column-gap: 30px; }
	#int .maco-wrap { grid-template-columns: repeat(2, 1fr); grid-column-gap: 40px; }
	
	.maco { display: flex; flex-direction: column; padding: 0 30px 30px; }
	.maco__img { order: 1; margin: 0 -30px 24px; }
	.maco__ttl { position: relative; order: 2; margin: 0 -20px 52px; font-weight: 700; line-height: 1.223; }
	.maco__ttl::before { position: absolute; bottom: -28px; left: 50%; transform: translateX(-50%); width: 28px; height: 2px; background: #fff; border-radius: 1px; content: ""; }
	.maco__ttl__sub { margin-top: 11px; font-size: 1.5rem; font-weight: 600; letter-spacing: 0; }
	.maco__txt { order: 3; font-size: 1.8rem; line-height: 1.556; }
	
	
	#lit .maco__ttl { min-height: 66px; font-size: 2.7rem; }
	#int .maco__ttl { font-size: 2.7rem; letter-spacing: 0.1em; text-indent: 0.1em; }
}



/*	Point	*/
.point-wrap { margin-top: 100px; }
.point-wrap ._ktkn { letter-spacing: 0; text-indent: 0; }
.point { position: relative; background: #fff; padding: 64px 30px 50px; }
.point__label { position: absolute; top: -20px; }
.point__label img { width: auto; height: 51px; }
.point__ttl { position: relative; margin-bottom: 47px; font-size: 1.8rem; font-weight: 600; line-height: 1.778; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; }
.point__ttl::before { position: absolute; bottom: -23px; left: 50%; transform: translateX(-50%); display: block; width: 26px; height: 2px; border-radius: 1px; content: ""; }
.point__txt { font-size: 1.4rem; font-weight: 400; line-height: 1.857; letter-spacing: 0.03em; }
.point__img-wrap { margin-top: 27px; }
.point__img img { width: 100%; }

.point:not(:first-of-type) { margin-top: 60px; }
.point:nth-of-type(odd) .point__label { left: -30px; }
.point:nth-of-type(even) .point__label { right: -30px; }

#lit .point__ttl::before { background: var(--c-lbrown); }
#lit .point--1 .point__img { margin-top: 27px; text-align: center; }
#lit .point--1 .point__img img { width: 255px; }

#int .point__ttl::before { background: var(--c-purple); }
.point__method-wrap { margin-top: 45px; }
.point__method-ttl { display: flex; justify-content: center; align-items: center; height: 30px; background: var(--c-beige); border-radius: 15px; padding-bottom: 2px; font-size: 1.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; text-align: center; color: var(--c-lbrown); }
.point__method { margin-top: 16px; }
.point__method__ttl { font-size: 1.8rem; font-weight: 600; line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; text-align: center; }
.point__method__cont {  }
.point__method__img-wrap { display: grid; grid-template-columns: 41.96% 55.29%; grid-template-rows: 1fr; grid-column-gap: 8px; grid-row-gap: 0px; }
.point__method__img { overflow: hidden; }
.point__method__img img { width: 100%; height: 100%; object-fit: cover; }
.point__method__txt { margin-top: 14px; font-size: 1.4rem; font-weight: 400; line-height: 1.7857; text-align: justify; }
@media screen and (max-width: 680px) {
	.point__txt { text-align: justify; }
	.point__img-wrap .point__img:not(:first-of-type) { margin-top: 20px; }
	#lit .point__ttl { color: var(--c-lbrown); }
	#int .point__ttl { color: var(--c-purple); }
	#int .point--3 .point__ttl { margin-left: -20px; margin-right: -20px; }
	
	.point__method__ttl { border-bottom: 1px solid var(--c-lbrown); margin-bottom: 20px; padding-bottom: 17px; }
}
@media screen and (min-width: 681px) {
	
	.point-wrap { margin-top: 215px; margin-left: -50px; margin-right: -50px; }
	.point { padding: 86px 70px 70px; }
	.point__label { top: -95px; }
	.point__label img { height: 128px; }
	.point__ttl { margin-bottom: 103px; font-size: 4.0rem; line-height: 1.5; }
	.point__ttl::before { bottom: -53px; width: 86px; }
	.point__txt { font-size: 1.8rem; line-height: 1.8334; text-align: center; }
	.point__img-wrap { display: flex; justify-content: center; align-items: center; margin-top: 48px; }
	.point__img:not(:first-of-type) { margin-left: 30px; }
	.point:not(:first-of-type) { margin-top: 236px; }
	.point:nth-of-type(odd) .point__label { left: -87px; }
	.point:nth-of-type(even) .point__label { right: -60px; }
	#lit .point--1 .point__img { margin-top: 60px; }
	#lit .point--1 .point__img img { width: 482px; }
	#lit .point--2 .point__img { width: 391px; }
	#lit .point--2 .point__txt { margin-left: -50px; margin-right: -50px; }
	#int .point--2 .point__txt { margin-left: -50px; margin-right: -50px; }
	
	.point__method-wrap { margin-top: 73px; }
	.point__method-ttl { height: 70px; border-radius: 35px; font-size: 2.5rem; }
	.point__method { display: flex; justify-content: space-between; align-items: stretch; margin-top: 58px; }
	.point__method__ttl { display: flex; justify-content: center; align-items: center; width: 182px; margin-right: 20px; font-size: 3.0rem; }
	.point__method__cont { flex: 1; border-left: 1px solid #000; padding-left: 60px; padding-right: 60px; }
	.point__method__img-wrap { grid-template-columns: 43.84% 52.8%; grid-column-gap: 20px; }
	.point__method__txt { margin-top: 23px; font-size: 1.6rem; line-height: 1.8125; }
	
}


/*	Consideration	*/
.consid-wrap { margin-top: 25px; }
.consid {  }
.consid__button { display: flex; }
.consid__button::before { font: 500 3.3rem 'otemon'; line-height: 1; color: #9e655e; }

.consid__button__txt { font-size: 1.5rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: var(--c-beige); }
.consid__button__stat {  }

.consid__cont p { font-size: 1.5rem; font-weight: 400; line-height: 1.8667; }

.consid--1 .consid__button::before { content: "l"; }
.consid--2 .consid__button::before { content: "h"; }
.consid--3 .consid__button::before { content: "c"; }
@media screen and (max-width: 680px) {
	.consid { background: var(--c-beige); border-radius: 25px; }
	.consid:not(:first-of-type) { margin-top: 10px; }
	.consid__cont { display: none; }
	.consid__button { justify-content: space-between; align-items: center; height: 50px; background: #9e655e; border-radius: 25px; padding: 0 20px 0 5px; }
	.consid__button::before { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; background: #fff; border-radius: 50%; }
	.consid__button__txt { flex: 1; }
	.consid__button__stat { position: relative; width: 15px; height: 15px; }
	.consid__button__stat::before,
	.consid__button__stat::after { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; background: #fff; content: ""; transition: .4s; }
	.consid__button__stat::before { width: 100%; height: 1px; }
	.consid__button__stat::after { width: 1px; height: 100%; }
	.consid__button.is-opened .consid__button__stat::after { height: 0; }
	.consid--3 .consid__button::before { padding-bottom: 4px; font-size: 2.7rem; }
	.consid__cont { padding: 18px 25px 18px; }
}
@media screen and (min-width: 681px) {
	.consid-wrap { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: 1fr; grid-column-gap: 1px; grid-row-gap: 0px; background: #9e655e; margin-top: 105px; }
	.consid { position: relative; padding: 0 49px 46px; }
	.consid::before { position: absolute; top: -40px; left: 50%; transform: translateX(-50%); display: block; width: 173px; height: 173px; border-radius: 50%; background: #9e655e; content: ""; z-index: 0; }
	.consid__button { position: relative; flex-direction: column; align-items: center; margin-top: -8px; z-index: 10; }
	.consid__button::before { font-size: 6.6rem; color: rgba(245,241,237,0.5); }
	.consid__button__txt { margin-top: 40px; font-size: 3.0rem; }
	.consid__button__stat { display: none; }
	.consid__cont { margin-top: 34px; }
	.consid__cont p { text-align: justify; color: var(--c-beige); }
	.consid--2::after { position: absolute; bottom: 50px; left: 50%; transform: translateX(-50%); display: block; width: 100%; height: calc(100% - 150px); border-left: 1px solid var(--c-beige); border-right: 1px solid var(--c-beige); content: ""; }
	.consid--3 .consid__button::before { transform: scale(1.4); }
}


/* Info(License / Study Abroad)
-------------------------------*/
.sec--info { margin-top: 90px; margin-bottom: 60px; }
.sec--info .l-wrapper { background: #fff; padding: 78px 0 0; }
.info-wrap { margin-top: 44px; padding-left: 30px; padding-right: 30px; }
.info-wrap--nomt { margin-top: 0; }
.info-label { display: flex; justify-content: center; align-items: center; height: 48px; border-radius: 24px; margin-bottom: 32px; font-size: 1.7rem; font-weight: 600; line-height: 1; letter-spacing: 0.2em; text-indent: 0.2em; text-align: center; color: #fff; }
.info { position: relative; border-top: 1px solid; padding-top: 20px; padding-bottom: 45px; }
.info::before { position: absolute; top: -3px; left: 0; display: block; width: 50px; height: 6px; border-radius: 3px; content: ""; }
.info__img {  }
.info__cont {  }
.info__label { display: flex; justify-content: center; align-items: center; height: 30px; border-radius: 15px; font-size: 1.4rem; font-weight: 600; line-height: 1; letter-spacing: 0.08em; text-indent: 0.08em; text-align: center; }


#lit .info { border-color: #9e655e; }
#lit .info::before { background: #9e655e; }
#lit .info__label { background: var(--c-beige); color: var(--c-lbrown); }
#int .info__label { background: #f1f0f5; color: var(--c-purple); }

#int .info { border-color: var(--c-lnavy); }
#int .info-label,
#int .info::before { background: var(--c-lnavy); }

.info--spc { border: 1px solid var(--c-purple); margin-bottom: 44px; padding: 0 20px 20px; }
.info--spc::before { display: none; }
.info--spc__label { display: flex; flex-direction: column; justify-content: center; align-items: center; background: var(--c-purple); margin-left: -20px; margin-right: -20px; margin-bottom: 20px; padding: 10px 0; font-size: 1.6rem; font-weight: 700; line-height: 1.1875; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: #fff; }
@media screen and (max-width: 680px) {
	.info__cont { margin-top: 20px; }
}
@media screen and (min-width: 681px) {
	.sec--info { margin-top: 290px; margin-bottom: 160px; }
	.sec--info .l-wrapper { width: 1100px; padding-bottom: 73px; }
	.info-wrap { margin-top: 104px; padding-left: 70px; padding-right: 70px; }
	.info { display: flex; justify-content: space-between; padding: 34px 80px 53px; }
	.info::before { top: -5px; width: 110px; height: 10px; border-radius: 5px; }
	.info-label { height: 50px; border-radius: 25px; margin-bottom: 98px; font-size: 2.4rem; }
	.info-wrap--nomt .info-label { margin-bottom: 75px; }
	.info__img { width: 233px; margin-right: 40px; }
	.info__cont { flex: 1; }
	.info__label { height: 40px; border-radius: 20px; font-size: 2.2rem; letter-spacing: 0; text-indent: 0em; }
	
	.info--spc { margin-bottom: 98px; }
	.info--spc .info__img { transform: translateY(-2px); width: 290px; }
	.info--spc__label { position: absolute; top: 0; left: 20px; align-items: flex-start; width: 346px; height: 110px; border-radius: 0 55px 55px 0; padding-left: 48px; font-size: 2.0rem; text-align: left; }
	.info--spc__label ._emp { font-size: 120%; }
	.info--spc__label ._ktkn { letter-spacing: -0.1em; }
	
	#int .info { padding-bottom: 32px; }
	#int .info--spc { align-items: flex-end; padding: 41px 40px 36px; }
}


/*	License	*/
.info__license-wrap { margin-top: 15px; }
.info__license { text-indent: -0.37em; padding-left: 0.8em; font-size: 1.8rem; font-weight: 600; line-height: 1.3; }
.info__license:not(:first-of-type) { margin-top: 9px; }
.info__license::before { transform: translateY(-4px); display: inline-block; margin-right: 4px; content: "\025b6"; font-size: 50%; color: var(--c-lbrown); }
.info__license sub { font-size: 80%; }
.info__license-txt { margin-top: 12px; font-size: 1.4rem; font-weight: 400; line-height: 1.714; text-align: justify; }
.info__license-notice { margin-top: 3px; font-size: 1.2rem; font-weight: 400; line-height: 1.667; letter-spacing: -0.025em; }
.info__license-wrap+.info__label { margin-top: 18px; }
@media screen and (max-width: 375px) {
	.info__license-notice { font-size: 1.1rem; }
}
@media screen and (max-width: 680px) {
	.info__license-notice { white-space: nowrap; }
}
@media screen and (min-width: 681px) {
	.info__license-wrap { margin-top: 6px; }
	.info__license { font-size: 2.4rem; line-height: 1.625; }
	.info__license:not(:first-of-type) { margin-top: -1px; }
	.info__license::before { transform: translateY(-4px); margin-right: 10px; }
	.info__license-txt { margin-top: 9px; font-size: 1.4rem; font-weight: 400; line-height: 1.714; text-align: justify; }
	.info__license-notice { margin-top: 9px; font-size: 1.4rem; line-height: 1.714; letter-spacing: 0; }
	.info__license-wrap+.info__label { margin-top: 4px; }
	
	#license .info__label ._lslesser--lv2 { letter-spacing: 0; }
}


/*	Study Abroad	*/
.info__stab-ttl { margin-top: 14px; font-size: 1.8rem; font-weight: 600; line-height: 1.339; }
.info__stab-list-wrap { margin-top: 12px; }
.info__stab-list { padding-left: 5.9em; text-indent: -5.9em; font-size: 1.4rem; font-weight: 400; line-height: 1.714; color: var(--c-purple); }
.info__stab-list::before { content: "\025cf"; margin-right: 5px; }
.info__stab-txt { font-size: 1.4rem; font-weight: 400; line-height: 2; text-align: justify; }
.info__stab-label { border-bottom: 1px solid #000; padding-bottom: 20px; font-size: 1.9rem; font-weight: 600; line-height: 1; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; color: var(--c-purple); }
.info--spc .info__stab-txt { line-height: 1.714; }
@media screen and (max-width: 680px) {
	.info__stab-ttl { margin-right: -20px; }
}
@media screen and (min-width: 681px) {
	
.info__stab-ttl { margin-top: 14px; font-size: 2.4rem; line-height: 1.625; }
	.info--spc .info__stab-ttl { margin-top: 23px; }
.info__stab-list-wrap { display: flex; flex-wrap: wrap; margin-top: 7px; }
.info__stab-list {  }
.info__stab-list:not(:last-of-type) { margin-right: 15px; }
.info__stab-list ._blank { display: none; }
.info__stab-list::before { content: "\025cf"; margin-right: 5px; }
	
	.info__stab-label { padding-bottom: 38px; font-size: 3.0rem; letter-spacing: 0.05em; text-indent: 0.05em; text-align: left; }
	.info--spc .info__stab-list-wrap { margin-top: 25px; }
}


/* Detail
-------------------------------*/
.sec--detail { padding: 22px 0; }
.detail-btn { position: relative; display: flex; justify-content: center; align-items: center; width: 255px; height: 50px; border: 1px solid #fff; margin: 0 auto; font-size: 1.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; text-indent: 0.1em; text-align: center; color: #fff; }
.detail-btn::before { position: absolute; right: -15px; top: 50%; transform: translateY(-50%); display: block; width: 30px; height: 1px; background: #fff; content: ""; }

.sec--others { background: #fff; padding-top: 40px; padding-bottom: 30px; }
.others-btn { display: flex; justify-content: space-between; align-items: center; width: calc(100% - 60px); height: 50px; box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.12); margin-left: auto; margin-right: auto; padding: 0 20px; font-size: 1.8rem; font-weight: 600; line-height: 1; letter-spacing: 0.2em; color: #fff; }
.others-btn::after { width: 15px; height: 15px; background: url("../img/icon_arrow_others.svg") no-repeat center/contain; content: ""; }
.others-btn__txt::after { content: "もCHECK！"; font-size: 80%; }

#lit .sec--detail { background: var(--c-lbrown); }
#lit .others-btn { background: var(--c-purple); }
#int .sec--detail { background: var(--c-purple); }
#int .others-btn { background: var(--c-lbrown); }
@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	.sec--detail { padding: 50px 0; }
	.detail-btn { width: 564px; height: 100px; font-size: 2.5rem; }
	.detail-btn::before { right: -30px; width: 60px; }
	
	.sec--others { padding-top: 100px; padding-bottom: 35px; }
	.others-btn { position: relative; justify-content: center; width: 389px; height: 88px; padding: 0 35px; font-size: 2.6rem; letter-spacing: 0.15em; }
	.others-btn::after { position: absolute; top: 50%; transform: translateY(-50%); right: 33px; display: block; width: 25px; height: 25px; }
	
}





/* Student's Voice
-------------------------------*/
.sec--stvo { margin-top: 60px; }
.stvo-outer-wrap { border-radius: 35px 0 0 35px; padding: 41px 45px 45px; }
.stvo-ttl { position: relative; margin-bottom: 38px; padding-left: 30px; font-size: 2.6rem; font-weight: 600; line-height: 1.269; letter-spacing: 0.1em; color: #fff; }
.stvo-ttl sub { margin-left: 13px; font-size: 1.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.05em; }
.stvo-ttl::before { position: absolute; left: 0; top: 50%; transform: translateY(-48%); display: block; width: 10px; height: calc(100% - 10px); border-radius: 5px 0 0 5px; content: ""; mix-blend-mode: multiply; }
.stvo-wrap {  }
.stvo { color: var(--c-beige); }
.stvo__img { border-radius: 30px; overflow: hidden; }
.stvo__major { margin-top: 8px; padding: 20px 0; font-size: 1.8rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; }
.stvo__major ._ktkn { letter-spacing: -0.1em; }
.stvo__txt { font-size: 1.2rem; font-weight: 400; line-height: 1.667; }
#lit .stvo-outer-wrap,
#lit .stvo-ttl::before { background: #9e655e; }
#int .stvo-outer-wrap,
#int .stvo-ttl::before { background: var(--c-lnavy); }
@media screen and (max-width: 680px) {
	.stvo-outer-wrap { margin-right: -30px; }
	.stvo-wrap { margin-right: -45px; }
	.stvo-ttl { margin-right: -20px; }
	.stvo { width: calc(100vw - 120px); }
	.stvo > a { display: block; padding-bottom: 10px; }
	.stvo:not(:last-of-type) { margin-right: 20px; }
	.stvo__major { text-indent: 0.1em; text-align: center; }
	.stvo__txt { position: relative; border: 1px solid var(--c-beige); padding: 10px 0 14px; text-align: center; box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.1); }
	.stvo__txt::before { position: absolute; top: 50%; transform: translateY(-50%); right: 10px; display: block; width: 18px; height: 18px; background: url("../img/icon_arrow_others.svg") no-repeat center/contain; content: ""; }
}
@media screen and (min-width: 681px) {
	.sec--stvo { position: relative; margin-top: 160px; }
	.sec--stvo::before { position: absolute; top: 0; right: 0; display: block; width: calc((100% - 1100px)/2 + 1px); height: 100%; content: ""; }
	.sec--stvo .l-wrapper { width: 1100px; }
	
.stvo-outer-wrap { padding: 51px 50px 53px; }
	.stvo-ttl { margin-bottom: 56px; padding-left: 50px; font-size: 4.5rem; line-height: 1; }
	.stvo-ttl sub { margin-left: 30px; font-size: 2.0rem; }
	.stvo-ttl::before { transform: translateY(-41%); width: 11px; height: 100%; }
	
	.stvo-wrap { display: grid; grid-template-rows: 1fr; grid-row-gap: 0px; }
	.stvo {  }
	
	.stvo__img { border-radius: 20px; }
	.stvo__major { position: relative; border-bottom: 1px solid var(--c-beige); margin-top: 0; margin-bottom: 12px; padding: 21px 0 20px; font-size: 2.5rem; }
.stvo__major::after { position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: block; width: 19px; height: 19px; background: url("../img/icon_arrow_others.svg") no-repeat center/contain; content: ""; }
	.stvo__txt { font-size: 1.6rem; line-height: 1.4375; }
	
	#lit .stvo-wrap { grid-template-columns: repeat(3, 1fr); grid-column-gap: 30px; }
	#lit .sec--stvo::before { background: #9e655e; }
	#int .stvo-wrap { grid-template-columns: repeat(2, 1fr); grid-column-gap: 40px; }
	#int .sec--stvo::before { background: var(--c-lnavy); }
	


}


/* Slick Custom
-------------------------------*/
.stvo-wrap .slick-dots { width: calc(100% - 45px); bottom: -29px; }
.stvo-wrap .slick-dots li { margin: 0 3px; }
.slick-dots li { width: 16px; height: 16px; }
.slick-dots li button { position: relative; width: 8px; height: 8px; border-radius: 50%;  margin: 4px; padding: 0; mix-blend-mode: multiply; }
.slick-dots li button::before { display: none; }
.stvo-wrap li.slick-active button { background-color: var(--c-beige) !important; mix-blend-mode: normal; }
#lit .slick-dots li button { background-color: #9e655e; }
#int .slick-dots li button { background-color: var(--c-lnavy); }


#int .slick-prev { background: var(--c-purple); }


.mfp-close:active { top: 6px; }
button.mfp-close { top: 6px; right: 6px; width: 37px; height: 37px; }


.slick-prev, .slick-next { transform: translate(0, -180%); width: 50px; height: 50px; border: 2px solid #fff; border-radius: 50%; transition: .4s; z-index: 10; }
.slick-prev { left: -30px; }
.slick-next { right: 10px; }
.slick-prev::before, .slick-next::before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; width: 50px; aspect-ratio: 1/1; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; opacity: 1; }
.slick-prev::before { background-image: url("../img/icon_arrow_prev.svg"); }
.slick-next::before { background-image: url("../img/icon_arrow_next.svg"); }


.slick-prev.slick-disabled,
.slick-next.slick-disabled { opacity: 0; pointer-events: none; }

#lit .slick-prev,
#lit .slick-next { background: var(--c-lbrown); }
#int .slick-prev,
#int .slick-next { background: var(--c-purple); }
@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	
}



/*----------------------------
	Popup
----------------------------*/
.popup-content { position: relative; width: calc(100% - 60px); max-width: 1160px; margin: 0 auto; }
.slider-wrapper {  }
button.mfp-close { top: -18px; right: 0; width: 64px; height: 12px; background: url("../img/icon_close_popup.svg") no-repeat center/contain; opacity: 1; }
.mfp-close:active { top: -18px; }
/* 非表示button設定 */
.mfp-hide { display: none; }

.l-body._lit .mfp-bg { background: #c3958a; opacity: 0.9; }
.l-body._int .mfp-bg { background: #9f8fb4; opacity: 0.9; }

.popup-content .my-slider { box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.1); }
.stvo-modal {  }
.stvo-modal__inner { position: relative; max-height: calc(100vh - 250px); overflow: auto; background: #fff; border-radius: 10px; padding: 70px 30px 30px; }
.stvo-modal__inner::before { position: absolute; top: -5px; display: block; width: 100%; aspect-ratio: 316/98; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; z-index: 0; pointer-events: none; }
.stvo-modal__photo { position: relative; z-index: 10; }
.stvo-modal__photo img {  }
.stvo-modal__photo__txt { position: relative; display: block; z-index: 10; padding: 12px 12px 11px; color: #f1f0f5; }
.stvo-modal__photo__txt__major { font-size: 1.6rem; font-weight: 600; line-height: 1; letter-spacing: 0.05em; }
.stvo-modal__photo__txt__major ._ktkn { letter-spacing: -0.1em; }
.stvo-modal__photo__txt__others { margin-top: 6px; font-size: 1.2rem; font-weight: 400; line-height: 1.5; }
.stvo-modal__ttl { margin-top: 23px; font-size: 1.9rem; font-weight: 600; line-height: 1.579; }
.stvo-modal__txt { font-size: 1.4rem; font-weight: 400; line-height: 2; text-align: justify; }

.stvo-modal__link { position: relative; display: block; border-style: solid; border-width: 2px; margin-top: 50px; padding: 10px 10px 10px; }
.stvo-modal__link__label { position: relative; display: flex; justify-content: center; align-items: center; height: 24px; border-radius: 12px; font-size: 1.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.05em; text-indent: 0.05em; text-align: center; color: #fff; }
.stvo-modal__link__label::before { position: absolute; display: block; width: 0; height: 0; border-style: solid; border-width: 5px 3px 0px 3px; content: ""; }
.stvo-modal__link__txt {  }
.stvo-modal__link__txt__sub { font-size: 1.0rem; font-weight: 600; letter-spacing: 0.1em; }
.stvo-modal__link__txt__main { margin-top: 8px; font-size: 1.9rem; font-weight: 600; }
.stvo-modal__link__deco { position: absolute; display: block; width: 12px; height: 12px; content: ""; }
#popup-lit .stvo-modal__photo__txt { background: var(--c-lbrown); }
#popup-lit .stvo-modal__ttl { color: var(--c-lbrown); }
#popup-lit .stvo-modal__inner::before { background-image: url("../img/deco_popup_lit.svg"); }
#popup-lit .stvo-modal__link { border-color: var(--c-lbrown); }
#popup-lit .stvo-modal__link__label { background: var(--c-lbrown); }
#popup-lit .stvo-modal__link__label::before { border-color: var(--c-lbrown) transparent transparent transparent; }
#popup-lit .stvo-modal__link__txt { color: var(--c-lbrown); }

#popup-int .stvo-modal__photo__txt { background: var(--c-purple); }
#popup-int .stvo-modal__ttl { color: var(--c-purple); }
#popup-int .stvo-modal__inner::before { background-image: url("../img/deco_popup_int.svg"); }
#popup-int .stvo-modal__link { border-color: var(--c-purple); }
#popup-int .stvo-modal__link__label { background: var(--c-purple); }
#popup-int .stvo-modal__link__label::before { border-color: var(--c-purple) transparent transparent transparent; }
#popup-int .stvo-modal__link__txt { color: var(--c-purple); }
@media screen and (min-width: 681px) {
	button.mfp-close { top: -31px; right: 15px; width: 112px; height: 20px; }
	.mfp-close:active { top: -31px; }
	.stvo-modal {  }
	.stvo-modal__inner { display: grid; grid-template-columns: 383px 1fr; grid-template-rows: repeat(3, auto); grid-column-gap: 40px; grid-row-gap: 0px; max-height: calc(100vh - 250px); border-radius: 20px; padding: 80px 90px 90px; }
	.stvo-modal__ttl { position: relative; grid-area: 1 / 1 / 2 / 3; margin-top: 0; margin-bottom: 103px; font-size: 3.3rem; line-height: 1.5; letter-spacing: 0.1em; }
	.stvo-modal__ttl::before { position: absolute; left: 0; bottom: -48px; display: block; width: 45px; height: 2px; border-radius: 1px; content: ""; }
	.stvo-modal__photo { grid-area: 2 / 1 / 3 / 2; }
	.stvo-modal__photo img {  }
	.stvo-modal__photo__txt { padding: 15px 12px 15px; text-align: center; }
	.stvo-modal__photo__txt__major { font-size: 2.5rem; }
	.stvo-modal__photo__txt__others { margin-top: 9px; font-size: 1.6rem; line-height: 1.4375; }
	.stvo-modal__txt { grid-area: 2 / 2 / 3 / 3; margin-top: -11px; font-size: 1.8rem; line-height: 2.1; letter-spacing: 0.03em; }
	.stvo-modal__inner::before { top: -9px; right: 0; width: 476px; aspect-ratio: 316/98; }
	
	.stvo-modal__link { grid-area: 3 / 1 / 4 / 3; display: flex; justify-content: space-between; align-items: center; width: 556px; margin: 90px auto 0; padding: 16px 16px 16px; }
	.stvo-modal__link__label { width: 152px; height: 76px; border-radius: 38px; margin-right: 35px; padding-bottom: 6px; font-size: 1.6rem; line-height: 1.3125; }
	.stvo-modal__link__label::before { top: 50%; transform: translateY(-50%); left: calc(100% - 2px); border-width: 6.5px 0px 6.5px 11px; }
	.stvo-modal__link__txt { flex: 1; }
	.stvo-modal__link__txt__sub { font-size: 1.6rem; }
	.stvo-modal__link__txt__main { margin-top: 14px; font-size: 2.9rem; }
	.stvo-modal__link__deco { top: 50%; transform: translateY(-50%); right: -30px; width: 60px; height: 2px; }
	
	#popup-lit .stvo-modal__ttl::before { background: var(--c-lbrown); }
	#popup-lit .stvo-modal__link__label::before { border-color: transparent transparent transparent var(--c-lbrown); }
	#popup-lit .stvo-modal__link__deco { background: var(--c-lbrown); }
	#popup-int .stvo-modal__ttl::before { background: var(--c-purple); }
	#popup-int .stvo-modal__link__label::before { border-color: transparent transparent transparent var(--c-purple); }
	#popup-int .stvo-modal__link__deco { background: var(--c-purple); }
	
.popup-content .slick-prev,
.popup-content .slick-next { transform: translate(0, -50%); width: 72px; height: 72px; border-width: 5px; }
.popup-content .slick-prev { left: -36px; }
.popup-content .slick-next { right: -36px; }
.popup-content .slick-prev::before,
.popup-content .slick-next::before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; width: 72px; aspect-ratio: 1/1; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; opacity: 1; }
	
	.popup-content .slick-prev::before { background-image: url("../img/icon_arrow_prev_thick.svg"); }
	.popup-content .slick-next::before { background-image: url("../img/icon_arrow_next_thick.svg"); }
	
	
	#popup-lit .slick-prev,
	#popup-lit .slick-next { background: var(--c-lbrown); }
	#popup-int .slick-prev,
	#popup-int .slick-next { background: var(--c-purple); }
	
}
@media screen and (max-width: 680px) {
	.mfp-container { padding: 0; }
	.popup-content .slick-prev,
	.popup-content .slick-next { display: none !important; }
	.stvo-modal__inner::before { left: 50%; transform: translateX(-50%); }
	.stvo-modal__photo img { margin-left: -30px; width: calc(100% - 34px); }
	.stvo-modal__photo__txt { margin-top: -16px; margin-right: -30px; }
	.stvo-modal__txt { margin-top: 17px; }
	
	.stvo-modal__link__label { margin-bottom: 11px; }
	.stvo-modal__link__label::before { top: calc(100% - 1px); left: 50%; transform: translateX(-50%); }
	.stvo-modal__link__txt { position: relative; left: 50%; transform: translateX(-50%); display: inline-flex; flex-direction: column; }
	.stvo-modal__link__deco { border-style: solid; border-width: 0 2px 2px 0; right: 10px; bottom: 10px; overflow: hidden; }
	.stvo-modal__link__deco::before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(45deg); display: block; width: 150%; height: 2px; content: ""; }
	#popup-lit .stvo-modal__photo__txt { margin-left: 80px; }
	#popup-lit .stvo-modal__link__deco { border-color: var(--c-lbrown); }
	#popup-lit .stvo-modal__link__deco::before { background: var(--c-lbrown); }
	#popup-int .stvo-modal__photo__txt { margin-left: 40px; }
	#popup-int .stvo-modal__link__deco { border-color: var(--c-purple); }
	#popup-int .stvo-modal__link__deco::before { background: var(--c-purple); }
}
@media screen and (max-width: 390px) {
	
}

@media screen and (min-width: 740px) and (max-width: 820px) {
	
}




/* show only  SP/PC
-------------------------------*/

.sp-only { display: none !important; }
.sp-only-2 { display: none !important; }
.pc-only { display: block !important; }
.pc-only-2 { display: inline-block !important; }


@media screen and (max-width: 681px) {
	.sp-only { display: block !important; }
	.sp-only-2 { display: inline-block !important; }
	.pc-only { display: none !important; }
	.pc-only-2 { display: none !important; }
}




@keyframes hamburgerLink_anime {
  0% {
    transform: scale(0.5, 1);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(0.5, 1);
    transform-origin: 0 100%;
  }
}