﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');

.video-wrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9の比率 */
	height: 0;
	overflow: hidden;
	max-width: 100%;
  }
  
  .video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
  }
  

/* reset */
/* -------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {width:100%; height:100%; overflow-y:scroll;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold;}
p, ul, ol, dl, address, blockquote, table, div {font-size:100%;}
p {margin:0 0 0 0;}
ol,ul {list-style:none;}
fieldset,img {border:0; vertical-align:top;}
table {border-collapse:collapse; border-spacing:0;}
caption,th {text-align:left;}
th {vertical-align:top; font-weight:normal; text-align:left;}
td {vertical-align:top;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}


/* common */
/* -------------------------------------------------------- */
html,body {font-variant-ligatures:none;}
html {font-size:62.5%;}
body {font-size:15px; font-size:1.5rem; font-family:'Noto Sans JP', sans-serif; font-weight:400; color:#454545; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background:none;}

h1, h2, h3, h4, h5, h6, h7 {font-weight:500; line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {font-weight:400; line-height:1.53;}
input, select, option, textarea, button {font-size:16px; font-size:1.6rem; font-family:'Noto Sans JP', sans-serif; font-weight:400; line-height:1.4; vertical-align:middle; color:inherit; outline:none;}
input[type='submit'],input[type='reset'],input[type='button'], button {color:inherit; cursor:pointer; -ms-appearance:none; -webkit-appearance:none; appearance:none;}
:placeholder-shown {color:#ccc;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc; opacity:1;}
::-moz-placeholder {color:#ccc; opacity:1;}
:-ms-input-placeholder {color:#ccc;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}

a {color:#454545; text-decoration:underline; position:relative;}
a:hover {color:#454545; text-decoration:none;}
a svg {display:block; position:absolute;}

/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a.tel {pointer-events:none; cursor:default;}
body.mobile a.tel {pointer-events:auto; cursor:pointer;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}

@media screen and (max-width:767px){
}


/* header */
/* -------------------------------------------------------- */
#header {position:relative; z-index:300;}
#header .clm {height:85px; margin:40px 0 0 0; display:flex; justify-content:space-between; align-items:center;}
#header .logo {width:34%; padding:0 20px 0 10px; box-sizing:border-box; display:flex; align-items:center;}
#header .logo .img {max-width:300px; display:block;}
#header .logo .tag {font-size:1.5rem; line-height:1.2; color:#5acb99; padding:8px 10px; border:solid 1px #5acb99; border-radius:5px; margin:0 0 0 6px; display:block;}
#header .nav {display:flex; justify-content:flex-end;}
#header .nav > li > a {height:85px; font-size:1.5rem; line-height:1; text-decoration:none; padding:0 15px; background-color:rgba(239,239,239,0); display:flex; justify-content:center; align-items:center; transition:background-color 0.3s ease;}
#header .nav > li > a:hover {background-color:rgba(239,239,239,1);}
#header .nav > li > a > span {padding:0 20px 0 0; display:inline-block; position:relative;}
#header .nav > li > a > span svg {width:14px; height:14px; fill:#888888; margin:-7px 0 0 0; top:50%; right:0;}
#header .nav > li.sub {position:relative;}
#header .nav > li.sub > a > span {padding:0 18px 0 0; display:inline-block; position:relative;}
#header .nav > li.sub > a > span svg {width:12px; height:12px; fill:#60b86a; margin:-6px 0 0 0; top:50%; right:0;transition:transform 0.3s ease;}
#header .nav > li.sub.on > a > span svg {transform:scale(1,-1);}
#header .nav > li.sub ul {min-width:100%; display:none; position:absolute; top:85px; left:0;}
#header .nav > li.sub.lst ul {left:auto; right:0;}
#header .nav > li.sub ul li {border-top:solid 1px #e1f5ec;}
#header .nav > li.sub ul li:first-of-type {border-top:none;}
#header .nav > li.sub ul a {font-size:1.5rem; text-align:left; white-space:nowrap; text-decoration:none; color:#fff; padding:10px 15px; background-color:rgba(90,203,153,0.9); display:block; transition:background-color 0.3s ease;}
#header .nav > li.sub ul a:hover {background-color:rgba(90,203,153,1);}
#header .nav > li.sub ul a {padding-right:30px;}
#header .nav > li.sub ul a svg {width:16px; height:16px; fill:#fff; margin:-8px 0 0 0; top:50%; right:10px;}

#gNav {flex:1;}
#gNav .nav-clm1 {width:100%; color:#fff; background-color:#111f29; box-sizing:border-box; position:absolute; top:-40px; left:0;}
#gNav .nav-clm1 > .sec {max-width:1390px; height:40px; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center;}
#gNav .nav1 {font-size:1.3rem; line-height:1; display:flex;}
#gNav .nav1 li {padding:0 0 0 2.0em;}
#gNav .nav1 a {text-decoration:none; color:#fff;}
#gNav .nav1 a:hover {text-decoration:underline;}
#gNav .nav2 {font-size:1.3rem; line-height:1; margin:0 0 0 2.0em; border-left:solid 1px #fff; display:flex;}
#gNav .nav2 li {padding:0 0 0 1.0em;}
#gNav .nav2 li:first-of-type {padding-left:2.0em;}
#gNav .nav2 a {white-space:nowrap; text-decoration:none; color:#fff; padding:0 0 0 20px; display:block; position:relative;}
#gNav .nav2 a:hover {text-decoration:underline;}
#gNav .nav2 a svg {width:14px; height:14px; margin:-7px 0 0 0; fill:#fff; display:block; position:absolute; top:50%; left:0;}
#gNav .lng {margin:0 0 0 2.0em; padding:0 0 0 2.0em; border-left:solid 1px #fff; display:flex; align-items:center;}
#gNav .lng dt {font-size:1.3rem; line-height:1; color:#fff; padding:0 0 0 20px; position:relative;}
#gNav .lng dt svg {width:16px; height:16px; margin:-8px 0 0 0; fill:#fff; display:block; position:absolute; top:50%; left:0;}
#gNav .lng dd {font-size:1.3rem; line-height:1; margin:0 0 0 0.8em;}
#gNav .lng dd a, 
#gNav .lng dd a[data-stt-disabled] {text-decoration:none; color:#fff; display:block;}
#gNav .lng dd a:hover {text-decoration:underline;}
#gNav .lng dd a[data-stt-active] {opacity:0.5;}
#gNav .lng.pc {display:flex;}
#gNav .lng.sp {display:none;}

#gNavBtn {width:35px; height:35px; background-color:#5acb99; position:fixed; top:5px; right:6px; z-index:310; cursor:pointer; display:none;}
#gNavBtn > span {width:25px; height:2px; margin:-1px 0 0 5px; background-color:rgba(255,255,255,1); display:block; position:absolute; top:50%; left:0; transition-property:background-color;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:2px; background-color:rgba(255,255,255,1); display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-9px; transition-property:top;}
#gNavBtn > span::after {bottom:-9px; transition-property:bottom;}
body.load #gNavBtn,
body.load #gNavBtn > span::before,
body.load #gNavBtn > span::after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span {background-color:rgba(255,255,255,0);}
#gNavCheck:checked + #header #gNavBtn > span::before {top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span::after {bottom:0; transform:rotate(-45deg); transition-property:transform;}

@media screen and (max-width:1440px){
	header .logo {padding:0 1.38vw 0 0.69vw;}
	#header .logo .tag {font-size:1.04vw; padding:0.55vw 0.69vw; margin:0 0 0 0.41vw;}
	#header .nav > li > a {padding:0 1.04vw;}
}
@media screen and (max-width:767px){
	#header::before {content:''; width:100%; height:45px; background-color:rgba(255,255,255,0.9); display:block; position:fixed; top:0; left:0; opacity:0; pointer-events:none; transition:opacity 0.3s ease;}
	#header .clm {height:45px; margin:0; padding:0 45px 0 0; background-color:#fff; box-sizing:border-box;}
	#header .logo {width:auto; padding:0 0 0 8px; position:relative;}
	#header .logo .img {max-width:175px;}
	#header .logo .tag {font-size:1.0rem; padding:4px; margin:0 0 0 5px;}
	#header .nav {padding:0; border-bottom:solid 5px rgba(90,203,153,0.9); display:block;}
	#header .nav > li {border-top:solid 1px #ddd;}
	#header .nav > li > a {height:auto; font-size:1.3rem; text-align:center; padding:15px 10px; background-color:rgba(255,255,255,0.9); display:block;}
	#header .nav > li > a:hover {background-color:rgba(255,255,255,1);}
	#header .nav > li > a > span {padding:0 16px 0 0;}
	#header .nav > li > a > span svg {width:12px; height:12px; margin:-6px 0 0 0;}
	#header .nav > li.sub > a > span {padding:0 16px 0 0; display:block; position:relative;}
	#header .nav > li.sub > a > span svg {fill:#454545;}
	#header .nav > li.sub ul {position:static;}
	#header .nav > li.sub ul li {border-top:none; border-bottom:solid 1px #fff;}
	#header .nav > li.sub ul a {font-size:1.2rem; text-align:center; padding:10px 10px; background-color:rgba(90,203,153,1);}
	#header .nav > li.sub ul a:hover {background-color:rgba(90,203,153,0.7);}
	#header .nav > li.sub ul a {padding-right:30px;}
	#header .nav > li.sub ul a svg {width:16px; height:16px; fill:#fff; margin:-8px 0 0 0; top:50%; right:10px;}

	#gNav .nav-clm1 {padding:46px 0 0 0; background-color:rgba(255,255,255,0.9); position:static;}
	#gNav .nav-clm1 > .sec {height:auto; padding:0; display:block;}
	#gNav .nav1 {font-size:1.2rem; line-height:1; display:flex; flex-wrap:wrap;}
	#gNav .nav1 li {width:50%; padding:0; border-bottom:solid 1px #b8bcbf; box-sizing:border-box;}
	#gNav .nav1 li:nth-of-type(even) {border-left:solid 1px #b8bcbf;}
	#gNav .nav1 a {width:100%; height:2.8em; text-decoration:none; color:#fff; background-color:#111f29; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
	#gNav .nav1 a:hover {text-decoration:none; opacity:0.7;}
	#gNav .nav2 {display:none;}
	#gNav .nav2 li {padding:0;}
	#gNav .lng {margin:0; padding:20px 0; border-left:none; justify-content:center; background-color:rgba(90,203,153,0.9);}
	#gNav .lng dd {margin:0 0 0 1.2em;}
	#gNav .lng.pc {display:none;}
	#gNav .lng.sp {display:flex;}

	#header #gNavBtn {display:block;}
	#gNav {width:100%; height:0; position:fixed; top:0; left:0; z-index:305; overflow:hidden; transition:all 0.6s ease;}
	#gNavCheck:checked + #header #gNav {height:100vh; overflow:auto;}
	#gNavCheck:checked + #header::before {opacity:1;}
}


/* footer */
/* -------------------------------------------------------- */
#footer {padding:60px 0 15px 0; background-color:#eff8ff;}
#footer .clm {display:flex; flex-wrap:wrap; justify-content:space-between;}
#footer .clm > div:nth-of-type(1) {width:45%;}
#footer .clm > div:nth-of-type(2) {width:54%;}
#footer .logo {text-align:left;}
#footer .logo dd {font-size:1.3rem; line-height:1.9; margin:5px 0 0 100px;}
#footer .logo dd a {padding-left:15px;}
#footer .logo dd a svg {width:14px; height:14px; fill:#454545; margin:-5px 0 0 0; top:50%; left:0;}
#footer .nav > div {display:flex; flex-wrap:wrap; align-items:center;}
#footer .nav > div:nth-of-type(1) {padding:5px 0 20px 0; border-bottom:solid 1px #888;}
#footer .nav > div:nth-of-type(2) {padding:25px 0 0 0;}
#footer .nav .call {font-size:1.8rem; font-weight:700; white-space:nowrap; padding:0 35px 0 0;}
#footer .nav .call a {font-size:2.4rem; text-decoration:none; padding:0;}
#footer .nav .call a:hover {text-decoration:underline;}
#footer .nav .contact {display:none;}
#footer .nav .contact a {width:235px; height:36px; font-size:1.5rem; font-weight:700; line-height:1; text-decoration:none; color:#fff; background-color:#5acb99; border-radius:4px; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
#footer .nav .contact a:hover {opacity:0.7;}
#footer .nav .contact a span {padding:0 0 0 30px; position:relative;}
#footer .nav .contact a span svg {width:22px; height:22px; fill:#fff; margin:-11px 0 0 0; top:50%; left:0;}
#footer .nav .policy a {font-size:1.3rem; padding:0 22px 0 0; display:inline-block;}
#footer .nav .policy a svg {width:14px; height:14px; fill:#454545; margin:-7px 0 0 0; top:50%; right:0;}
#footer .nav .sns {display:flex; flex-wrap:wrap; justify-content:center; flex:1;}
#footer .nav .sns > div {padding:0 8px;}
#footer .nav .sns > div a {width:36px; height:36px; background-repeat:no-repeat; background-position:center center; background-size:cover; display:block; transition:opacity 0.3s ease;}
#footer .nav .sns > div a:hover {opacity:0.7;}
#footer .nav .sns > div a.instagram {background-image:url(../img/common/sns_instagram.svg);}
#footer .nav .sns > div a.twitter {background-image:url(../img/common/sns_twitter.svg);}
#footer .copy {font-size:1.1rem; text-align:right; color:#8394a2; margin:45px 0 0 0;}

@media screen and (max-width:767px){
	#footer {padding:15px 0 50px 0; position:relative;}
	#footer .clm {display:block;}
	#footer .clm > div:nth-of-type(1) {width:auto;}
	#footer .clm > div:nth-of-type(2) {width:auto;}
	#footer .logo {text-align:center;}
	#footer .logo dt {width:190px; margin:0 auto;}
	#footer .logo dd {font-size:1.0rem; margin:10px 0 0 0;}
	#footer .logo dd a {padding-left:15px; display:inline-block;}
	#footer .logo dd a svg {width:14px; height:14px; fill:#454545; margin:-5px 0 0 0; top:50%; left:0;}
	#footer .nav > div {display:block;}
	#footer .nav > div:nth-of-type(1) {padding:0; border-bottom:none;}
	#footer .nav > div:nth-of-type(2) {padding:0; display:flex; flex-wrap:wrap;}
	#footer .nav .call {font-size:1.4rem; text-align:center; margin:15px 0 0 0; padding:0;}
	#footer .nav .call a {font-size:1.8rem; padding:0;}
	#footer .nav .contact {width:100%; position:absolute; bottom:0; left:0;}
	#footer .nav .contact a {width:100%; height:34px; font-size:1.3rem; border-radius:0;}
	#footer .nav .contact a span {padding:0 0 0 20px; position:relative;}
	#footer .nav .contact a span svg {width:14px; height:14px; margin:-7px 0 0 0;}
	#footer .nav .policy {width:100%; text-align:center; margin:10px 0 0 0; padding:10px 0 0 0; border-top:solid 1px #888; order:2;}
	#footer .nav .policy a {font-size:1.0rem; padding:0 16px 0 0; display:inline-block;}
	#footer .nav .policy a svg {width:12px; height:12px; margin:-6px 0 0 0;}
	#footer .nav .sns {width:100%; margin:10px 0 0 0; order:1;}
	#footer .nav .sns > div {padding:0 6px;}
	#footer .nav .sns > div a {width:26px; height:26px;}
	#footer .copy {font-size:1.0rem; text-align:left; margin:20px 0 0 0;}
}

/* contents */
/* -------------------------------------------------------- */
#contents {}
.sec {max-width:1140px; margin:0 auto; padding:0 15px; box-sizing:border-box;}

.ttl-01 {font-size:3.0rem; font-weight:700; text-align:center;}
.ttl-01 .en {font-size:2.2rem; letter-spacing:0; color:#5acb99; margin:5px 0 0 0; display:block;}
.ttl-01.type1 {font-size:4.0rem; letter-spacing:0.2em;}
.ttl-01.type1 .en {letter-spacing:0;}
.ttl-02 {font-size:2.5rem; font-weight:700; text-align:left; padding:0 0 0 12px; border-left:solid 5px #5acb99;}
.ttl-02 .sub {font-size:80%; font-weight:400;}

.btn-01 {width:50px; height:258px; font-size:1.7rem; font-weight:700; line-height:1.1; text-decoration:none; color:#fff; background-color:rgba(90,203,153,1); border-radius:8px 0 0 8px; display:flex; justify-content:center; align-items:center; transition:background-color 0.3s ease;}
.btn-01:hover {color:#fff; background-color:rgba(90,203,153,0.8);}
.btn-01 > span {padding:24px 0 0 0; display:inline-block; position:relative;}
.btn-01 > span svg {width:20px; height:20px; fill:#fff; margin:0 0 0 -10px; position:absolute; top:0; left:50%;}
.btn-02 {font-size:1.5rem; line-height:1.4; text-align:left; text-decoration:none; color:#454545; background-color:#fff; border:1px solid #111f29; border-radius:3px; box-sizing:border-box; display:block; position:relative; transition:opacity 0.3s ease;}
.btn-02:hover {color:#454545; opacity:0.7;}
.btn-02 > span {width:100%; min-height:66px; padding:0 60px 0 1.2em; box-sizing:border-box; display:flex; align-items:center; position:relative;}
.btn-02 svg {width:30px; height:30px; margin:-15px 0 0 0; fill:#111f29; display:block; position:absolute; top:50%; right:15px;}
.btn-02 img {display:block;}
.btn-02 .sub {font-size:80%;}

.page-ttl-sec {width:100%; height:250px; background-color:#e6eef3; display:flex; justify-content:center; align-items:center;}
.page-ttl-sec .ttl {font-size:3.0rem; text-align:center;}
.page-ttl-sec .ttl .en {font-size:1.8rem; margin:10px 0 0 0; display:block;}
.page-ttl-sec .btn {position:fixed; top:50%; right:0; transform:translate3d(0,-50%,0); z-index:200; display:none;}

.track-list-sec {padding:10px 0;}
.track-list-sec .sec {max-width:100%;}
.track-list-sec ul {text-align:left; display:flex; flex-wrap:wrap;}
.track-list-sec ul > li {font-size:1.4rem; color:#666; padding:0 1.0em 0 0; position:relative;}
.track-list-sec ul > li::before {content:'/'; display:block; position:absolute; top:0; right:0.25em;}
.track-list-sec ul > li:last-of-type {padding-right:0;}
.track-list-sec ul > li:last-of-type::before {display:none;}
.track-list-sec ul > li a {text-decoration:underline; color:#666; display:block;}
.track-list-sec ul > li a:hover {text-decoration:none;}

.dept-infroduction-sec {margin:40px 0 0 0; padding:60px 50px 60px 340px; background:#cedfec url(../img/common/dept_bg.jpg) no-repeat left center; background-size:auto 100%;}
.dept-infroduction-sec .clm {margin:-30px -8px 0 -8px; display:flex; flex-wrap:wrap; justify-content:center;}
.dept-infroduction-sec .clm > div {width:25%; padding:30px 8px 0 8px; box-sizing:border-box;}
.dept-infroduction-sec .clm a {border-radius:10px; display:block; position:relative; overflow:hidden; transition:opacity 0.3s ease;}
.dept-infroduction-sec .clm a:hover {opacity:0.7;}
.dept-infroduction-sec .clm .img {width:100%; display:block;}
.dept-infroduction-sec .clm .img img {width:100%;}
.dept-infroduction-sec .clm .txt {width:100%; font-size:1.8rem; font-weight:700; line-height:1; text-align:center; color:#fff; padding:8px 0 10px 0; position:absolute; bottom:0; left:0;}
.dept-infroduction-sec .clm .type1 .txt {background-color:#2c70eb;}
.dept-infroduction-sec .clm .type2 .txt {background-color:#56b461;}
.dept-infroduction-sec .clm .type3 .txt {background-color:#ed870f;}
.dept-infroduction-sec .clm .type4 .txt {background-color:#ed3b69;}
.dept-infroduction-sec .clm .type5 .txt {background-color:#b61291;}
.dept-infroduction-sec .clm .type6 .txt {background-color:#7016d5;}
.dept-infroduction-sec .clm .type7 .txt {background-color:#1623d5;}

.deptn-infroduction-sec {margin:40px 0 0 0; padding:60px 50px 60px 340px; background:#cedfec url(../img/common/dept_bgn.jpg) no-repeat left center; background-size:auto 100%;}
.deptn-infroduction-sec .clm {margin:-30px -8px 0 -8px; display:flex; flex-wrap:wrap; justify-content:center;}
.deptn-infroduction-sec .clm > div {width:25%; padding:30px 8px 0 8px; box-sizing:border-box;}
.deptn-infroduction-sec .clm a {border-radius:10px; display:block; position:relative; overflow:hidden; transition:opacity 0.3s ease;}
.deptn-infroduction-sec .clm a:hover {opacity:0.7;}
.deptn-infroduction-sec .clm .img {width:100%; display:block;}
.deptn-infroduction-sec .clm .img img {width:100%;}
.deptn-infroduction-sec .clm .txt {width:100%; font-size:1.8rem; font-weight:700; line-height:1; text-align:center; color:#fff; padding:8px 0 10px 0; position:absolute; bottom:0; left:0;}
.deptn-infroduction-sec .clm .type1n .txt {background-color:#ecd9ae;}
.deptn-infroduction-sec .clm .type2n .txt {background-color:#ffd8b6;}
.deptn-infroduction-sec .clm .type3n .txt {background-color:#97dcff;}
.deptn-infroduction-sec .clm .type4n .txt {background-color:#b7ffc3;}
.deptn-infroduction-sec .clm .type5n .txt {background-color:#ffc5f1;}
.deptn-infroduction-sec .clm .type5 .txt {background-color:#b61291;}
.deptn-infroduction-sec .clm .type6 .txt {background-color:#7016d5;}
.deptn-infroduction-sec .clm .type7 .txt {background-color:#1623d5;}

.bnr-link-sec {margin:70px 0 0 0;}
.bnr-link-sec .sec > div {margin:32px auto 0 auto;}
.bnr-link-sec .sec > div:first-of-type {margin-top:0;}
.bnr-link-sec a {text-decoration:none; border-radius:10px; box-sizing:border-box; display:block; position:relative; overflow:hidden; transition:opacity 0.3s ease;}
.bnr-link-sec a:hover {opacity:0.7;}
.bnr-link-sec dl.ttl {max-width:480px; width:47%; text-align:center; position:relative; z-index:5;}
.bnr-link-sec dl.ttl dt {font-size:3.7rem; font-weight:700; line-height:1.1; color:#fff; padding:0.1em 0 0.2em 0; border-radius:4px;}
.bnr-link-sec dl.ttl dt + dd {font-size:2.2rem; font-weight:700; line-height:1.1; color:#666; padding:0.5em 0 0.7em 0; position:relative;}
.bnr-link-sec dl.ttl dt + dd::before {content:''; width:100%; height:5px; border-radius:5px; display:block; position:absolute; bottom:-5px; left:0;}
.bnr-link-sec dl.ttl dd {font-size:1.7rem; font-weight:700; line-height:1.5; color:#454545; padding:0.8em 0 0 0;}

.bnr-link-sec .voice a {padding:25px 0 30px 42%; background:url(../img/common/voice_bg.png); background-size:14px auto;}
.bnr-link-sec .voice a::before {content:''; width:41%; height:100%; background:url(../img/common/voice_img.jpg) no-repeat center center; background-size:cover; display:block; position:absolute; top:0; left:0;}
.bnr-link-sec .voice dl {text-align:center; position:relative; z-index:5;}
.bnr-link-sec .voice dd {font-size:1.7rem; font-weight:700; color:#565d4c; margin:20px 0 0 0;}
.bnr-link-sec .achv a {text-align:left; padding:40px 42% 80px 50px; background-color:#ebd0da;}
.bnr-link-sec .achv a::before {content:''; width:45%; height:100%; background:url(../img/common/achv_img.jpg) no-repeat right center; background-size:100% auto; display:block; position:absolute; top:0; right:0;}
.bnr-link-sec .achv dl {text-align:left; position:relative; z-index:5;}
.bnr-link-sec .achv dt .tag {font-size:2.4rem; font-weight:300; line-height:1; color:#fff; padding:10px 15px; background-color:#e23a4d; border-radius:4px; display:inline-block;}
.bnr-link-sec .achv dt .ttl {font-size:4.0rem; font-weight:700; margin:12px 0 0 0; display:block;}
.bnr-link-sec .achv dt .ttl strong {color:#e23a4d;}
.bnr-link-sec .achv dd {font-size:1.5rem; font-weight:700; color:#501e1e; margin:10px 0 0 0;}
.bnr-link-sec .ie a {text-align:left; padding:40px 53% 30px 42px; background-color:#c0e2ff;}
.bnr-link-sec .ie a::before {content:''; width:49.5%; height:100%; background:url(../img/common/ie_img.png) no-repeat right center; background-size:100% auto; display:block; position:absolute; top:0; right:0;}
.bnr-link-sec .ie dl {text-align:center; position:relative; z-index:5;}
.bnr-link-sec .ie dt {padding:0 0 5px 0; position:relative;}
.bnr-link-sec .ie dt::before {content:''; width:100%; height:5px; background-color:#3087a7; border-radius:4px; display:block; position:absolute; bottom:0; left:0;}
.bnr-link-sec .ie dt .tag {font-size:3.7rem; font-weight:700; line-height:1; letter-spacing:0.3em; color:#fff; padding:0.2em 0 0.3em 0; background-color:#3087a7; border-radius:4px; display:block;}
.bnr-link-sec .ie dt .ttl {font-size:2.2rem; font-weight:700; color:#666; padding:0.3em 0; display:block;}
.bnr-link-sec .ie dd {font-size:1.7rem; font-weight:700; line-height:1.5; color:#454545; margin:1.0em 0 0 0;}
.bnr-link-sec .expenses a {width:100%; min-height:270px; padding:0 50px; background:#cce8dc; display:flex; align-items:center;}
.bnr-link-sec .expenses a::before {content:''; max-width:470px; width:42%; height:100%; background:url(../img/common/expenses_bnr_bg.png) center center no-repeat; background-size:100% auto; display:block; position:absolute; top:0; right:0; z-index:1;}
.bnr-link-sec .expenses dl.ttl dt {background-color:#20ae87;}
.bnr-link-sec .expenses dl.ttl dd.en::before {background-color:#20ae87;}
.bnr-link-sec .club a {width:100%; min-height:270px; padding:0 50px; background:#f6ffac; display:flex; align-items:center;}
.bnr-link-sec .club a::before {content:''; max-width:510px; width:46%; height:100%; background:url(../img/common/club_bnr_bg.png) center center no-repeat; background-size:100% auto; display:block; position:absolute; top:0; right:2.7%; z-index:1;}
.bnr-link-sec .club dl.ttl dt {letter-spacing:0.2em; background-color:#e78818;}
.bnr-link-sec .club dl.ttl dd.en::before {background-color:#e78818;}
.bnr-link-sec .events a {width:100%; min-height:270px; padding:0 50px; background:#c2e6ff; display:flex; align-items:center;}
.bnr-link-sec .events a::before {content:''; max-width:527px; width:47.4%; height:100%; background:url(../img/common/events_bnr_bg.png) center center no-repeat; background-size:100% auto; display:block; position:absolute; top:0; right:2%; z-index:1;}
.bnr-link-sec .events dl.ttl dt {letter-spacing:0.2em; background-color:#0096ff;}
.bnr-link-sec .events dl.ttl dd.en::before {background-color:#0096ff;}
.bnr-link-sec .schedule a {width:100%; min-height:270px; padding:0 50px; background:#c3e0d8 url(../img/common/schedule_bnr_bg.png) center right no-repeat; background-size:44% auto; display:flex; align-items:center;}
.bnr-link-sec .schedule dl {width:58%; text-align:left;}
.bnr-link-sec .schedule dt .tag {font-size:2.4rem; line-height:1.1; color:#fff; padding:0.2em 0.5em 0.3em 0.5em; background-color:#05bc8a; border-radius:4px; display:inline-block;}
.bnr-link-sec .schedule dt .txt {font-size:4.0rem; font-weight:700; line-height:1.1; color:#454545; margin:0.3em 0 0 0; display:block;}
.bnr-link-sec .schedule dd {font-size:1.7rem; font-weight:700; line-height:1.3; color:#501e1e; margin:1.0em 0 0 0;}
.bnr-link-sec .dormitory a {width:100%; min-height:270px; padding:0 50px; background:#f5e751; display:flex; align-items:center; position:relative;}
.bnr-link-sec .dormitory a::before {content:''; max-width:430px; width:39%; height:100%; background:url(../img/common/dormitory_bnr_bg.jpg) center center no-repeat; background-size:cover; display:block; position:absolute; top:0; right:0; z-index:1;}
.bnr-link-sec .dormitory dl.ttl dt {letter-spacing:0.2em; background-color:#009d6e;}
.bnr-link-sec .dormitory dl.ttl dd.en::before {background-color:#009d6e;}
.bnr-link-sec + .bnr-link-sec {margin:32px 0 0 0;}

.scroll-img-sec {width:100%; height:200px; margin:30px 0 0 0; position:relative; overflow:hidden;}
.scroll-img-sec > div {width:5326px; height:100%; background:url(../img/common/scroll_img.jpg); background-size:auto 100%; position:absolute; top:0; left:0; animation:scrollImg 50.0s linear 0s infinite normal none;}
@keyframes scrollImg {
	0% {transform:translate3d(-50%,0,0);}
	100% {transform:translate3d(0,0,0);}
}

.voice-box {margin:30px 0 0 0; padding:26px; background-color:#fff; border:3px solid #9ac5e4; border-radius:15px; display:flex;}
.voice-box .img {width:254px;}
.voice-box .img img {border-radius:15px;}
.voice-box .ctx {padding:0 0 0 30px; flex:1;}
.voice-box dl {text-align:left;}
.voice-box dt {font-size:2.6rem; font-weight:700; line-height:1.4; color:#3c3c55;}
.voice-box dt + dt {font-size:1.8rem; margin:0.5em 0 0 0; padding:0 0 0.5em 0;}
.voice-box dt + dt span {font-size:122%;}
.voice-box dd {font-size:1.5rem; line-height:1.8; margin:0.5em 0 0 0;}

@media screen and (max-width:1440px){
	.dept-infroduction-sec {padding:4.1vw 3.4vw 4.1vw 23.6vw;}
	.dept-infroduction-sec .clm .txt {font-size:1.2vw;}
	.deptn-infroduction-sec {padding:4.1vw 3.4vw 4.1vw 23.6vw;}
	.deptn-infroduction-sec .clm .txt {font-size:1.2vw;}
}
@media screen and (max-width:1140px){
}
@media screen and (max-width:767px){
	.sec {padding:0 4.0vw;}
	
	.ttl-01 {font-size:4.6vw;}
	.ttl-01.type1 {font-size:6.25vw;}
	.ttl-01 .en {font-size:3.43vw; margin:0.78vw 0 0 0;}
	.ttl-02 {font-size:1.6rem; padding:0 0 0 6px; border-left-width:3px;}
	.ttl-02 .sub {display:block;}

	.btn-01 {display:none;}
	.btn-02 {font-size:1.4rem;}
	.btn-02 > span {min-height:50px;}
	.btn-02 svg {width:24px; height:24px; margin:-12px 0 0 0; right:10px;}
	.btn-02 img {width:100%; height:30.0vw; object-fit:cover; object-position:center top; display:block;}

	.page-ttl-sec {height:120px;}
	.page-ttl-sec .ttl {font-size:6.2vw;}
	.page-ttl-sec .ttl .en {font-size:3.4vw; margin:5px 0 0 0;}

	.track-list-sec {padding:5px 0;}
	.track-list-sec ul > li {font-size:1.2rem;}

	.dept-infroduction-sec {margin:20px 0 0 0; padding:20px 4.0vw; background-position:center center; background-size:auto 100%;}
	.dept-infroduction-sec .clm {margin:-10px -5px 0 -5px; justify-content:space-between;}
	.dept-infroduction-sec .clm > div {width:50%; padding:10px 5px 0 5px;}
	.dept-infroduction-sec .clm a {border-radius:5px;}
	.dept-infroduction-sec .clm .txt {font-size:3.21vw; padding:5px 0 7px 0;}
	.deptn-infroduction-sec {margin:20px 0 0 0; padding:20px 4.0vw; background-position:center center; background-size:auto 100%;}
	.deptn-infroduction-sec .clm {margin:-10px -5px 0 -5px; justify-content:space-between;}
	.deptn-infroduction-sec .clm > div {width:50%; padding:10px 5px 0 5px;}
	.deptn-infroduction-sec .clm a {border-radius:5px;}
	.deptn-infroduction-sec .clm .txt {font-size:3.21vw; padding:5px 0 7px 0;}

	.bnr-link-sec {margin:15px 0 0 0;}
	.bnr-link-sec .sec > div {margin:20px 0 0 0;}
	.bnr-link-sec .sec > div:first-of-type {margin-top:0;}
	.bnr-link-sec a {border-radius:5px;}
	.bnr-link-sec dl.ttl {max-width:100%; width:auto; text-align:center;}
	.bnr-link-sec dl.ttl dt {font-size:7.0vw;}
	.bnr-link-sec dl.ttl dt + dd {font-size:3.6vw;}
	.bnr-link-sec dl.ttl dt + dd::before {height:3px; bottom:-3px;}
	.bnr-link-sec dl.ttl dd {font-size:3.0vw;}
	.bnr-link-sec dl.ttl dd.txt {text-align:left;}
	.bnr-link-sec .voice a {padding:15px 0 15px 32.5vw; background-size:7px auto;}
	.bnr-link-sec .voice a::before {width:32.5vw;}
	.bnr-link-sec .voice dt {width:49.3vw; margin:0 auto;}
	.bnr-link-sec .voice dd {font-size:3.12vw; margin:6px 0 0 0;}
	.bnr-link-sec .achv a {padding:10px;}
	.bnr-link-sec .achv a::before {width:40.7vw; background-position:right -3.0vw;}
	.bnr-link-sec .achv dt .tag {font-size:3.9vw; padding:7px 10px;}
	.bnr-link-sec .achv dt .ttl {font-size:7.0vw; line-height:1.2; margin:6px 0 0 0;}
	.bnr-link-sec .achv dt .ttl strong {display:block;}
	.bnr-link-sec .achv dd {font-size:3.1vw; margin:5px 0 0 0;}
	.bnr-link-sec .ie a {padding:15px;}
	.bnr-link-sec .ie a::before {background-position:right bottom;}
	.bnr-link-sec .ie dt {padding:0 0 3px 0;}
	.bnr-link-sec .ie dt::before {height:3px;}
	.bnr-link-sec .ie dt .tag {font-size:7.0vw;}
	.bnr-link-sec .ie dt .ttl {font-size:4.0vw; padding:0.2em 0;}
	.bnr-link-sec .ie dd {font-size:3.0vw; text-align:left;}
	.bnr-link-sec .expenses a {width:auto; min-height:0; padding:15px 15px 12.0vw 15px; display:block;}
	.bnr-link-sec .expenses a::before {max-width:100%; width:100%; height:100%; background-position:right bottom; background-size:50% auto; top:auto; bottom:-10%; right:-10%;}
	.bnr-link-sec .club a {width:auto; min-height:0; padding:15px 15px 8.0vw 15px; display:block;}
	.bnr-link-sec .club a::before {max-width:100%; width:100%; height:100%; background-position:right bottom; background-size:40% auto; top:auto; bottom:0; right:2%;}
	.bnr-link-sec .events a {width:auto; min-height:0; padding:15px 15px 8.0vw 15px; display:block;}
	.bnr-link-sec .events a::before {max-width:100%; width:100%; height:100%; background-position:right bottom; background-size:50% auto; top:auto; bottom:-10%; right:-2%;}
	.bnr-link-sec .schedule a {width:auto; min-height:0; padding:15px; background-position:115% 5%; display:block;}
	.bnr-link-sec .schedule dl {width:auto;}
	.bnr-link-sec .schedule dt .tag {font-size:3.6vw;}
	.bnr-link-sec .schedule dt .txt {font-size:7.0vw; margin:0.5em 0 0 0;}
	.bnr-link-sec .schedule dd {font-size:3.0vw;}
	.bnr-link-sec .dormitory a {width:auto; min-height:0; padding:15px 15px 22.0vw 15px; display:block;}
	.bnr-link-sec .dormitory a::before {max-width:100%; width:100%; height:20.0vw; top:auto; bottom:0; right:0;}
	.bnr-link-sec .dormitory dl {width:auto;}
	.bnr-link-sec + .bnr-link-sec {margin:15px 0 0 0;}

	.scroll-img-sec {height:65px; margin:30px 0 0 0;}
	.scroll-img-sec > div {width:1730px;}

	.voice-box {margin:20px 0 0 0; padding:15px; border:2px solid #9ac5e4; border-radius:10px; display:block;}
	.voice-box .img {width:254px; margin:0 auto;}
	.voice-box .img img {border-radius:10px;}
	.voice-box .ctx {margin:10px 0 0 0; padding:0;}
	.voice-box dt {font-size:1.6rem;}
	.voice-box dt + dt {font-size:1.4rem;}
	.voice-box dd {font-size:1.4rem;}
}