@charset "UTF-8";

:root {
	--c-navy: #003893;
	--c-dyellow: #fcee21;
	--c-orange: #e95532;
	--c-blue: #37a0da;
	--c-green: #8dc21f;
	
	--ff-roboto: "Roboto", sans-serif;
	--ff-shimin: "Shippori Mincho", serif;
}

@font-face { font-family: 'din2014'; src: url('fonts/din2014.woff') format('woff'); font-weight: normal; font-style: normal; font-display: block; }
.ff-din2014 { font-family: 'din2014'; }

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; -webkit-box-sizing: border-box; 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; }
a { text-decoration: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
.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; }

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

/* font
-------------------------------*/
.bold { font-weight: bold; }

/* margin
-------------------------------*/

/* padding
-------------------------------*/

/* base */
html { font-size: 62.5%; }
body { font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif; font-size: 1.4rem; -webkit-font-feature-settings: "palt"; font-feature-settings: "palt"; color: #333333; }
a { color: inherit; }
img { max-width: 100%; height: auto; }
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%; background: #f5f8fa; }
.l-body.is-fixed { position: fixed; }
.l-wrapper { position: relative; width: calc(100% - 40px); margin-left: auto; margin-right: auto; }
.l-main { padding-bottom: 20px; }
@media screen and (min-width: 681px) {
	.l-body { min-width: 1400px; }
	.l-wrapper { width: 1340px; }
	.l-main { padding-bottom: 30px; }
}
@media screen and (min-width: 1100px) {
	.d-lg-none { display: none !important; }
	.l-body { }
	
}

/*---------------
		Module
---------------*/

/* Common Things */
.header { padding-top: 17px; padding-bottom: 22px; }
.header__logo {  }
.header__logo img { width: 207px; }

.cmn-ttl { position: relative; display: flex; flex-direction: column; align-items: center; font-weight: 700; line-height: 1; color: var(--c-navy); }
.cmn-ttl__sub { font-size: 1.8rem; }
.cmn-ttl__main { margin-top: 20px; font-size: 3.6rem; }
.cmn-ttl::before { position: absolute; top: 39%; left: 50%; transform: translate(-50%, -50%); display: block; width: 100%; height: 1px; background: var(--c-navy); content: ""; }

@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	.cmn-ttl__main { margin-top: 41px; }
	.cmn-ttl::before { top: 43%; max-width: 340px; }
}



/* fv */
.fv { background: var(--c-navy); border-radius: 20px; overflow: hidden; }
.fv__lower { padding: 20px 20px 20px; }
.fv__point-ttl { font-size: 1.8rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.fv__point-wrap { margin-top: 21px; }
.fv__point { position: relative; display: block; background: var(--c-dyellow); border-radius: 10px; box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.2); padding: 10px 0 24px; text-align: center; }
.fv__point__label { display: inline-flex; justify-content: center; align-items: center; width: 120px; height: 24px; background: var(--c-orange); border-radius: 12px; font-size: 1.4rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.fv__point__txt { margin-top: 10px; font-size: 2.0rem; font-weight: 700; line-height: 1.55; text-align: center; color: var(--c-orange); }
.fv__point::before { position: absolute; right: 15px; bottom: 15px; display: inline-block; border-bottom: 1px solid var(--c-orange); padding: 0 2px 3px; font: 700 1.0rem var(--ff-roboto); line-height: 1; text-align: center; color: var(--c-orange); content: "MORE"; }
@media screen and (max-width: 680px) {
	.fv__lower { border-top: 1px solid rgba(255,255,255,0.5); }
	.fv__point:not(:first-of-type) { margin-top: 20px; }
}
@media screen and (min-width: 681px) {
	.fv {  }
	.fv__lower { padding: 16px 0 60px; }
	.fv__point-ttl { font-size: 2.4rem; }
	.fv__point-wrap { display: flex; justify-content: space-between; align-items: stretch; width: 1000px; margin: 19px auto 0; }
	.fv__point { width: 320px; padding: 33px 0 40px; }
	.fv__point__txt { margin-top: 8px; font-size: 2.6rem; line-height: 1.4615; }
}


/* Lineup Upper */
.sec--lineup { padding: 50px 0 50px; }

.lineup-date-wrap { margin-top: 32px; margin-bottom: 40px; text-align: center; }
.lineup-date {  }
.lineup-date:not(:first-of-type) { margin-top: 15px; }
.lineup-date__label { margin-bottom: 9px; font-size: 1.8rem; font-weight: 700; line-height: 1; color: var(--c-navy); }
.lineup-date__label::before { content: "［"; margin-right: 4px; }
.lineup-date__label::after { content: "］"; margin-left: 4px; }
.lineup-date__txt { font-size: 2.0rem; font-weight: 500; line-height: 1.0; }
.lineup-date__txt__notice { font-size: 1.4rem; font-weight: 400; }
@media screen and (max-width: 680px) {
	.lineup-date__txt__notice { display: block; margin-top: 8px; }
}
@media screen and (min-width: 681px) {
	.sec--lineup { padding: 100px 0 150px; }
	.lineup-date-wrap { margin-top: 52px; margin-bottom: 87px; }
	.lineup-date { display: flex; justify-content: center; }
	.lineup-date__label { margin-bottom: 0; }
	.lineup-date__txt { font-size: 1.8rem; }
	.lineup-date__txt__notice { margin-left: 5px; font-size: 1.8rem; }
}


/* Lineup Lower */
.lineup-catch { font-size: 1.8rem; font-weight: 700; line-height: 1.778; text-align: center; color: var(--c-navy); }
.lineup-catch__txt {  }
.lineup-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; margin-top: 12px; }
.lineup { display: grid; grid-template-columns: 1fr; grid-template-rows: 60px 1fr; grid-column-gap: 0px; grid-row-gap: 0px; width: calc(50% - 5px); background: #fff; border-radius: 10px; margin-top: 10px; overflow: hidden; }
.lineup__label { align-content: center; background: var(--c-orange); font-size: 1.8rem; font-weight: 700; line-height: 1; letter-spacing: 0.05em; text-indent: 0.05em; text-align: center; color: #fff; }
.lineup__label span { display: block; margin-top: 6px; font-size: 1.2rem; }
.lineup__list { display: grid; grid-template-columns: 1fr; grid-template-rows: auto; grid-column-gap: 0px; grid-row-gap: 0px; padding: 0 10px; }
.lineup__list__item { align-self: center; padding: 13px 0 14px; font-size: 1.6rem; font-weight: 700; line-height: 1.4375; text-align: center; }
.lineup__list__item:not(:first-of-type) { border-top: 2px dotted var(--c-orange); }
@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	.lineup-catch { position: relative; font-size: 3.6rem; line-height: 1.61; }
	.lineup-catch__txt { position: relative; z-index: 10; }
	.lineup-catch::before { position: absolute; top: 55px; left: 50%; transform: translateX(-50%); display: block; font: 700 15.0rem var(--ff-roboto); line-height: 1; text-align: center; color: #e7eef3; content: "LINEUP"; z-index: 0; }
	.lineup-wrap { position: relative; width: 1000px; margin-top: 27px; margin-left: auto; margin-right: auto; z-index: 20; }
	.lineup { grid-template-rows: 70px 1fr; width: 320px; margin-top: 20px; }
	.lineup__label { font-size: 2.0rem; }
	.lineup__label span { margin-top: 8px; font-size: 1.4rem; }
	.lineup__list { padding: 0 20px; }
	.lineup__list__item { padding: 18px 0 19px; }
}


/* Point */
.point-wrap {  }
.point { background: var(--c-navy); border-radius: 20px; padding: 19px 20px 20px; }
.point:not(:first-of-type) { margin-top: 20px; }
.point__ttl { display: flex; align-items: center; }
.point__ttl__label { font: 700 2.1rem var(--ff-roboto); line-height: 1; color: #fff; }
.point__ttl__txt { font-size: 2.6rem; font-weight: 700; line-height: 1.73; color: var(--c-dyellow); }

.point__qna { position: relative; margin-top: 38px; }

.point__qna__q,
.point__qna__a { position: relative; }

.point__qna__q { display: flex; align-items: center; padding: 19px 0 21px 80px; color: #fff; }
.point__qna__q__txt { font-size: 1.8rem; font-weight: 700; line-height: 1.67; letter-spacing: 0.05em; }
.point__qna__a { position: relative; background: var(--c-dyellow); color: var(--c-navy); }
.point__qna__a__txt { font-size: 1.6rem; font-weight: 500; line-height: 1.75; text-align: justify; }
.point__qna__icon { position: absolute; top: 50%; transform: translateY(-50%); font: 700 3.6rem var(--ff-roboto); line-height: 1; }
.point__qna__q .point__qna__icon { left: 0; }
.point__qna__a .point__qna__icon {  }

.point__qna__deco { position: absolute; right: 0; bottom: 0; width: 100px; aspect-ratio: 1/1; }
.point__qna__deco img { vertical-align: bottom; }
@media screen and (max-width: 680px) {
	.point__ttl { flex-direction: column; text-align: center; }
	.point__ttl__txt { margin-top: 25px; }
	.point__qna::before { position: absolute; top: 0; left: 50%; transform: translateX(-50%); display: block; width: calc(100% + 40px); height: 1px; background: rgba(255,255,255,0.5); content: ""; }
	.point__qna__a { margin-left: -20px; margin-right: -20px; padding: 24px 100px 25px 20px; }
	.point__qna__icon { display: flex; justify-content: center; align-items: center; width: 60px; height: 60px; border-style: solid; border-width: 1px; border-radius: 50%; }
	.point__qna__q { min-height: 100px; }
	.point__qna__q .point__qna__icon { border-color: #fff; }
	.point__qna__a .point__qna__icon { top: 30px; transform: none; right: 20px; border-color: var(--c-navy); }
	
	.point__qna__a--pbMoreSp { padding-bottom: 55px; }
}
@media screen and (min-width: 681px) {
	.point-wrap { counter-reset: point-counter; }
	.point { position: relative; padding: 98px 170px 100px; counter-increment: point-counter; }
	.point:not(:first-of-type) { margin-top: 30px; }
	.point::before { position: absolute; top: 46px; right: 13px; transform: rotate(90deg); content: "POINT.0" counter(point-counter); font: 700 1.0rem var(--ff-roboto); line-height: 1; color: #fff; opacity: .5; }
	.point__ttl__label { font-size: 3.4rem; }
	.point__ttl__label span { display: block; text-align: center; }
	.point__ttl__label span:nth-of-type(2) { display: none; }
	.point__ttl__label span:last-of-type { margin-top: -3px; font-size: 9.0rem; }
	.point__ttl__txt { margin-top: -12px; margin-left: 48px; font-size: 4.6rem; line-height: 1.347; }
	.point__qna { margin-top: 58px; }
	.point__qna__q,
	.point__qna__a { padding: 20px 25px 21px 110px; }
	.point__qna__q__txt,
	.point__qna__a__txt { position: relative; }
	.point__qna__q__txt::before,
	.point__qna__a__txt::before { position: absolute; left: 0; top: 50%; transform: translateY(-50%); display: block; width: 1px; height: calc(100% - 14px); content: ""; }
	.point__qna__q__txt { padding-left: 30px; font-size: 2.4rem; line-height: 1.75; }
	.point__qna__q__txt::before { background: #fff; }
	.point__qna__a { border-radius: 20px; }
	.point__qna__a__txt { padding-left: 30px; }
	.point__qna__a__txt::before { background: var(--c-navy); }
	.point__qna__icon { left: 0; width: 110px; font-size: 5.0rem; text-align: center; }
	.point__qna__q .point__qna__icon { left: 0; }
	.point__qna__a .point__qna__icon {  }
	.point__qna__deco { width: 200px; }
}


/* Point Detail */
.point__detail-wrap { padding-top: 30px; }
.point__detail { position: relative; border: 1px solid #fff; border-radius: 10px; padding: 20px 10px 10px; }
.point__detail__label { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); text-align: center; }
.point__detail__label span { display: inline-block; background: var(--c-navy); padding: 0 10px; font-size: 1.8rem; font-weight: 700; line-height: 1; letter-spacing: 0.06em; text-indent: 0.06em; text-align: center; color: #fff; }
.point__detail__label span::before { content: "［"; margin-right: 4px; }
.point__detail__label span::after { content: "］"; margin-left: 4px; }
.point__detail__inner { border-radius: 5px; padding: 10px 10px 10px; }
.point__detail__ttl { display: flex; justify-content: center; align-items: center; margin-bottom: 10px; font-size: 2.1rem; font-weight: 700; line-height: 1; letter-spacing: 0.06em; text-indent: 0.06em; text-align: center; color: #fff; white-space: nowrap; }
.point__detail__ttl__sub { font-size: 1.4rem; }
.point__detail__cont { position: relative; background: #fff; border-radius: 5px; padding: 15px 0 17px; font-size: 1.4rem; font-weight: 500; line-height: 1.5714; text-align: center; }
.point__detail__cont ._emp { color: var(--c-orange); }
.point__detail__cont ._num { font-size: 180%; }

.point__detail__cont-wrap .point__detail__cont:not(:first-of-type)::before { position: absolute;  display: block; width: 30px; height: 30px; background-image: url("../img/icon_plus.svg"); background-repeat: no-repeat; background-position: center; background-size: 12px auto; border-radius: 50%; content: ""; }

.point__detail--bun {  }
.point__detail--bun .point__detail__inner { background: var(--c-green); }
.point__detail--li .point__detail__inner { background: var(--c-blue); }
.point__detail--bun .point__detail__cont-wrap .point__detail__cont:not(:first-of-type)::before { background-color: var(--c-green); }
.point__detail--li .point__detail__cont-wrap .point__detail__cont:not(:first-of-type)::before { background-color: var(--c-blue); }
.point__detail__inner-wrap .point__detail__inner:not(:first-of-type) { margin-top: 10px; }

.point__ico { padding-top: 20px; }
.point__ico__ttl { display: flex; align-items: stretch; margin-bottom: 20px; }
.point__ico__ttl__label { display: flex; justify-content: center; align-items: center; width: 30px; height: 30px; background: var(--c-dyellow); margin-right: 14px; font-size: 1.6rem; font-weight: 700; line-height: 1; text-align: center; color: var(--c-navy); }
.point__ico__ttl__txt { flex: 1; display: flex; align-items: center; font-size: 2.1rem; font-weight: 700; line-height: 1; color: #fff; }

.point-topix { width: calc(100% - 40px); background: var(--c-navy); margin: 30px auto 0; padding: 20px 20px 28px; }
.point-topix__label { display: flex; justify-content: center; align-items: center; background: var(--c-blue); font-size: 2.1rem; font-weight: 700; line-height: 1; color: #fff; }
.point-topix__label__jp {  }
.point-topix__label__en { padding-top: 3px; font-family: var(--ff-roboto); }
.point-topix__inner { color: #fff; }
.point-topix__txt { font-size: 1.8rem; font-weight: 700; line-height: 1.78; }
.point-topix__notice { margin-top: 6px; font-size: 1.4rem; font-weight: 500; line-height: 1.642; }
@media screen and (max-width: 680px) {
	.point__detail:not(:first-of-type) { margin-top: 20px; }
	.point__detail__cont-wrap .point__detail__cont { display: flex; justify-content: center; align-items: center; height: 50px; padding-top: 0; padding-bottom: 0; }
	.point__detail__cont ._emp { margin: 0 5px; }
	.point__detail__cont-wrap .point__detail__cont:not(:first-of-type) { align-items: baseline; margin-top: 10px; padding-top: 3px; }
	.point__detail__cont-wrap .point__detail__cont:not(:first-of-type)::before { top: -20px; left: 50%; transform: translateX(-50%); }
	.point-topix__inner { margin-top: 12px; }
	.point-topix__label { height: 40px; }
}
@media screen and (min-width: 681px) {
	.point__detail-wrap { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr; grid-column-gap: 20px; grid-row-gap: 0px; padding-top: 30px; }
	.point__detail { border-radius: 20px; padding: 30px 20px 20px; }
	.point__detail__label { top: -12px; left: 50%; transform: translateX(-50%); text-align: center; }
	.point__detail__label span { padding: 0 10px; font-size: 2.1rem; }
	.point__detail__label span::before { margin-right: 5px; }
	.point__detail__label span::after { margin-left: 5px; }
	.point__detail__inner { border-radius: 10px; padding-top: 18px; }
	.point__detail__ttl { margin-bottom: 21px; }
	.point__detail__cont { padding: 22px 20px 24px; font-size: 1.6rem; line-height: 1.625; }
	.point__detail__cont-wrap { display: grid; grid-column-gap: 10px; grid-row-gap: 0px; }
	.point__detail--bun .point__detail__cont-wrap { grid-template-columns: 1fr 240px; grid-template-rows: 60px; }
	.point__detail--li .point__detail__cont-wrap { grid-template-columns: 1fr 230px; grid-template-rows: 95px; }
	.point__detail__cont-wrap .point__detail__cont { align-content: center; padding: 0; }
	.point__detail__cont-wrap .point__detail__cont:not(:first-of-type)::before { top: 50%; transform: translateY(-50%); left: -20px; }
	.point__ico { padding-top: 30px; }
	.point-topix { width: 1000px; }
	
	.point-topix { display: flex; justify-content: space-between; align-items: center; margin: 100px auto 0; padding: 30px 30px 30px; }
	.point-topix__label { flex-direction: column; width: 120px; height: 120px; margin-right: 40px; font-size: 2.0rem; }
	.point-topix__label__jp {  }
	.point-topix__label__en { margin-top: 7px; padding-top: 0; font-size: 2.4rem; }
	.point-topix__inner { flex: 1; }
	.point-topix__txt { font-size: 2.4rem; line-height: 1.67; }
	.point-topix__notice { margin-top: 3px; font-size: 1.6rem; }
}


/*	Scroll Hint	*/
.scrhint { position: relative; }
.scrhint::before { content: ""; width: 100%; height: 100%; display: block; background: url(../img/icon_scroll.png) no-repeat center/67px 108px, rgba(233, 233, 233, 0.8); position: absolute; top: 0; left: 0; opacity: 0; pointer-events: none; }
.scrhint.is-announce::before { animation: scrollAnnounce 2s forwards; }
.scrhint__image img { max-width: none; width: 830px; padding-right: 0; }
@media screen and (max-width: 680px) {
	.scrhint__image { overflow-x: auto; padding: 0 0 5px; }
}
@media screen and (min-width: 681px) {
	.scrhint.is-announce::before { display: none; }
	.scrhint__image img { width: 1000px; }
}

/* March */
.sec--march { padding-top: 50px; }
.march-wrap { background: var(--c-navy); border-radius: 20px; margin-top: 32px; padding: 20px 20px 20px; }
.march-ttl { margin-bottom: 22px; font-size: 1.8rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.march { background: var(--c-dyellow); border-radius: 10px; padding: 10px 0 24px; box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.2); text-align: center; }
.march:not(:first-of-type) { margin-top: 20px; }
.march__label { display: inline-flex; justify-content: center; align-items: center; width: 120px; height: 24px; background: var(--c-orange); border-radius: 12px; font-size: 1.4rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.march__txt { font-size: 1.8rem; font-weight: 700; line-height: 1.67; text-align: center; color: var(--c-orange); }
@media screen and (max-width: 680px) {
	.march:nth-of-type(3) .march__txt { min-height: 90px; align-content: center; }
	.march__txt { margin-top: 10px; }
}
@media screen and (min-width: 681px) {
	.sec--march { padding-top: 100px; }
	.march-wrap { padding: 18px 170px 60px; }
	.march-ttl { margin-bottom: 22px; font-size: 2.4rem; }
	.march { display: flex; justify-content: space-between; align-items: stretch; padding: 20px 20px 20px; }
	.march__label { width: 110px; height: 110px; border-radius: 10px; margin-right: 80px; }
	.march__txt { flex: 1;  display: flex; align-items: center; font-size: 2.6rem; line-height: 1.538; text-align: left; }
}


/* fixed-button */
.fixed-button { display: flex; width: 94.7%; height: 70px; position: fixed; bottom: 0; left: 50%; transform: translate(-50%, 100%); z-index: 1000; transition: 0.4s; }
.fixed-button__btn { font-size: 1.6rem; font-weight: 700; color: var(--c-navy); text-align: center; width: 100%; }
.fixed-button__btn a { text-decoration: none; display: block; position: relative; padding: 25px 0 21px; width: 100%; height: 100%; transition: 0.4s; background: #FFD200; }
.fixed-button__btn a::before { content: ""; width: calc(100% - 10px); height: calc(100% - 10px); display: block; border: 1px solid var(--c-navy); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.fixed-button__btn a::after { content: ""; display: inline-block; margin-left: 12px; vertical-align: middle; margin-bottom: 3px; transition: 0.4s; width: 20px; height: 20px; background: url(../img/icon_request.svg) no-repeat center/contain; }
.fixed-button.is-visible { transform: translate(-50%, 0); bottom: 10px; }
@media screen and (min-width: 681px) {
	.fixed-button__btn a { }
	.fixed-button__btn a:hover { color: #fff; background: var(--c-navy); }
	.fixed-button__btn a:hover::before { border-color: #fff; }
	.fixed-button__btn a:hover::after { background: url(../img/icon_request_white.svg) no-repeat center/contain; }
}
@media screen and (min-width: 1100px) {
	.fixed-button { display: block; width: 70px; height: 170px; top: 50%; bottom: auto; left: auto; right: 0; transform: translate(100%, -50%); }
	.fixed-button__btn { font-size: 2.1rem; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
	.fixed-button__btn a { display: flex; align-items: center; justify-content: center; height: auto; padding: 25px 0 27px 6px; border-radius: 10px 0 0 10px; }
	.fixed-button__btn a::before { width: calc(100% - 5px); border-right: none; left: auto; right: 0; transform: translate(0, -50%); border-radius: 10px 0 0 10px; transition: 0.4s; }
	.fixed-button__btn a::after { margin-left: 0; margin-top: 10px; }
	.fixed-button.is-visible { transform: translate(0, -50%); }
}





/* another */
.sec--another { background: #fff; padding-top: 50px; padding-bottom: 50px; }
.another {  }
.another__heading { text-align: center; font-size: 1.8rem; line-height: 1.5; font-weight: bold; }
.another__button-wrapper { margin-top: 26px; }
.another__button { text-decoration: none; text-align: center; color: var(--c-navy); border-radius: 35px; border: 1px solid var(--c-navy); line-height: 1.357; position: relative; padding: 0 20px 2px; height: 70px; display: flex; align-items: center; justify-content: center; flex-direction: column; font-weight: 700; }
.another__button span { font-size: 1.3rem; font-weight: 400; }
.another__button::after { position: absolute; content: ''; right: 38px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; background: url(../img/icon_link_blue.svg) no-repeat center/contain; }
.another__button:not(:last-child) { margin-bottom: 20px; }
.another__button:hover { background: var(--c-navy); color: #fff; }
.another__button:hover::after { background: url(../img/icon_link_white.svg); }
.another__button.is-disable { opacity: 0.6; pointer-events: none; }
.another__button.is-disable::after { content: none; }
@media screen and (min-width: 681px) {
	.sec--another { padding-top: 170px; padding-bottom: 100px; }
	.another {  }
	.another__heading { font-size: 2.1rem; line-height: 1.285; letter-spacing: .05em; }
	.another__button-wrapper { margin-top: 19px; display: flex; justify-content: center; }
	.another__button { width: 280px; max-width: 100%; margin-top: 10px; transition: all 0.4s; }
	.another__button::after { right: 30px; transition: all 0.4s; }
	.another__button:not(:last-child) { margin-bottom: 0; margin-right: 35px; }
}




/* sns */
.sns { width: 283px; margin: 87px auto 0; max-width: 100%; }
.sns__text { display: inline-block; color: var(--c-navy); font-size: 1.4rem; font-weight: 700; line-height: 1.5; text-align: center; position: absolute; top: -17px; left: 50%; width: 77px; transform: translate(-50%, -100%); }
.sns__text::before,
.sns__text::after { position: absolute; content: ""; top: 50%; height: 35px; width: 1px; background: var(--c-navy); }
.sns__text::before { left: -9px; transform: translateY(-50%) rotate(-16deg); }
.sns__text::after { right: -6px; transform: translateY(-50%) rotate(16deg); }
.sns__list { display: flex; flex-wrap: wrap; justify-content: center; }
.sns__list__item { position: relative; margin-top: 18px; margin-left: 20px; margin-right: 20px; }
.sns__list__item a { display: block; width: 41px; }
.sns__list__item a img { width: 100%; }
@media screen and (min-width: 681px) {
	.sns { width: 100%; margin-top: 107px; }
	.sns__list__item { margin: 0 10px; }
	.sns__list__item a { width: 50px; transition: 0.4s; }
	.sns__list__item a:hover { opacity: .6; }
}




/* faculty */
.faculty-list { font-size: 1.2rem; line-height: 1.9; }
.faculty-list__item { position: relative; display: flex; }

.faculty-list__label { position: absolute; top: 4px; left: 0; height: 12px; display: none; }
/*
.faculty-list__label:after { content: ""; display: block; border-top: 8px solid #fff000; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: none; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); }
.faculty-list__label img { height: 100%; width: auto; max-width: 100px; display: block; }
.faculty-list__label + .faculty-list__main,
.faculty-list__label + .faculty-list__main + .faculty-list__children { padding-top: 20px; }
*/



.faculty-list__main { position: relative; padding-right: 15px; font-weight: bold; width: 9.3em; -ms-flex-negative: 0; flex-shrink: 0; border-right: 1px solid #e1e1e1; text-align: center; }
.faculty-list__main span { font-size: 70%; vertical-align: top; }
.faculty-list__main::before,
.faculty-list__main::after { position: absolute; top: 0; }
.faculty-list__main::before { content: "［"; left: 0; }
.faculty-list__main::after { content: "］"; right: 15px; }


.faculty-list__children { display: flex; flex-wrap: wrap; padding: 0 0 0 1.0em; }
.faculty-list__child { margin-right: 1.2em; }
.faculty-list__child:before { content: ""; display: inline-block; border-left: 7px solid #1f3b8a; border-top: 4px solid transparent; border-bottom: 4px solid transparent; }
.faculty-list-note { font-size: 1.2rem; line-height: 1.58; margin-top: 22px; }
.footer-faculty { padding: 25px 0; background: #f2f2f2; }
@media screen and (max-width: 680px) {
	.faculty-list__child:nth-child(2) { margin-right: 0; }
	.faculty-list__children--spinline { display: block; }
	.faculty-list__children--spinline .faculty-list__child { display: inline; }
}
@media screen and (min-width: 681px) {
	.faculty-list-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
	.faculty-list { line-height: 2; width: 50%; }
	.faculty-list--right { max-width: 500px; padding-left: 30px; margin-left: 20px; }
	.faculty-list__label { left: auto; right: 103%; top: 12px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
	.faculty-list__label:after { border-top: 2px solid transparent; border-left: 4px solid #fff000; border-bottom: 2px solid transparent; top: 50%; left: 100%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
	.faculty-list__label + .faculty-list__main,
	.faculty-list__label + .faculty-list__main + .faculty-list__children { padding-top: 0; }
	.faculty-list__main,
	.faculty-list__main--lg { width: 8.5em; }
	.faculty-list__children { padding-left: 1.5em; }
	.faculty-list-note { max-width: 953px; margin: 20px auto 0; }
	.footer-faculty { padding: 75px 30px 75px 70px; }
}
@media screen and (min-width: 1100px) {
	.faculty-list { width: auto; }
	.faculty-list--right { max-width: 510px; padding-left: 60px; margin-left: 30px; }
	.faculty-list__main--lg { width: 10.4em; }
}


/* footer & copyright */
.footer-faculty { padding: 25px 0; background: #f2f2f2; }
.footer-univ { text-align: center; padding: 40px 0 30px; }
.footer-logo { width: 207px; margin: 0 auto 25px; }
.footer-info { font-size: 1.2rem; line-height: 1.6; padding-top: 10px; }
.copyright { background-color: var(--c-navy); text-align: center; padding: 17px 0 100px; font-size: 1rem; color: #FFF; letter-spacing: .1em; line-height: 2.2; }
@media screen and (min-width: 681px) {
	
}
@media screen and (min-width: 1100px) {
	.faculty-list { width: auto; }
	.faculty-list--right { max-width: 510px; padding-left: 60px; margin-left: 30px; }
	.faculty-list__main--lg { width: 10.4em; }
	.footer-faculty { padding: 75px 60px; }
	.footer-univ { display: flex; text-align: left; flex-direction: row-reverse; align-items: flex-end; justify-content: space-between; padding: 54px 49px 49px 50px; }
	.footer-logo { margin: -5px 0 0 0; }
	.footer-info { font-size: 1.2rem; padding: 0; }
	.copyright { font-size: 1.1rem; padding: 17px 0 20px; line-height: 2; }
}


@media screen and (min-width: 681px) and (max-width: 1099px) {
	.d-md-none { display: none !important; }
}

@media screen and (max-width: 680px) {
	.d-sm-none { display: none !important; }
	.l-sp-wrapper { position: relative; width: 84%; margin-left: auto; margin-right: auto; }
}



@-webkit-keyframes scrollAnnounce {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 1; }
	100% { opacity: 0; }
}
@keyframes scrollAnnounce {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 1; }
	100% { opacity: 0; }
}

.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: 680px) {
	.sp-only { display: block !important; }
	.sp-only-2 { display: inline-block !important; }
	.pc-only { display: none !important; }
	.pc-only-2 { display: none !important; }
}