@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Nothing+You+Could+Do&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap);
@font-face {
  font-family: "PTF_NORDIC_Rnd";
  src: url("../font/PTF_NORDIC_Rnd.woff2") format("woff2");
}


.content-inner.mb0 {
	margin-bottom: 0
}

a.p-club-bnr {
	display: block;
	position: relative;
	background: grey;
	width: 100%;
	height: 20vw;
	min-width: 200px
}

a.p-club-bnr .p-club-text {
	position: absolute;
	top: 0;
	left: 0;
	width: 45%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: rgba(255, 255, 255, .8);
	padding: 0 2em
}

a.p-club-bnr .p-club-text h4.title {
	font-size: calc(2rem + .5vw);
	line-height: 1.3em;
	font-weight: 600;
	margin-bottom: 1rem
}

a.p-club-bnr .p-club-text p.text {
	font-size: 1.5rem;
	line-height: 1.9em
}

a.p-club-bnr::before {
	content: "";
	position: absolute;
	background: url(../images/campuslife/campuslife-club-bnr-logo.png) no-repeat center center;
	background-size: contain;
	width: 12vw;
	height: 4vw;
	bottom: 1em;
	right: 1em
}

ul.c-pagelinks {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

ul.c-pagelinks li {
	width: 11.5vw;
	height: 11.5vw;
	background: #f0acad;
	border-radius: 50%
}

ul.c-pagelinks li a {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%
}

ul.c-pagelinks li a .c-linkbox {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	transition: all .3s
}

ul.c-pagelinks li a .c-linkbox .icon {
	width: 4vw;
	height: 4vw;
	min-width: 30px;
	min-width: 30px;
	margin-bottom: 10px
}

ul.c-pagelinks li a .c-linkbox .icon img {
	width: 100%
}

ul.c-pagelinks li a .c-linkbox p.title {
	margin-top: 5px;
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	color: #fff
}

ul.c-pagelinks li a .c-linkbox::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 10px;
	border-right: solid 1.5px #fff;
	border-bottom: solid 1.5px #fff;
	bottom: -.5em;
	left: 50%;
	transform: translateX(-50%) rotate(45deg)
}

ul.c-pagelinks li a:hover {
	opacity: 1
}

ul.c-pagelinks li a:hover .c-linkbox {
	transform: translateY(10%)
}

.club-link {
	padding-top: 6vw;
	margin-top: -6vw
}

ul.club-lists li.club-box {
	display: flex;
	margin-bottom: 10px
}

ul.club-lists li.club-box .c-photo {
	width: 45%;
	height: auto;
	min-height: 300px
}

ul.club-lists li.club-box .c-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%
}

ul.club-lists li.club-box .c-text-wrap {
	width: 55%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: #f0acad;
	color: #fff;
	padding: 2em
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title {
	position: relative;
	font-size: calc(2rem + .3vw);
	font-weight: 500;
	letter-spacing: .15em;
	line-height: 1.5em;
	padding-left: 4rem;
	margin-bottom: 1vw
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title::before {
	content: "";
	position: absolute;
	background: #f0acad;
	width: 3rem;
	height: 3rem;
	top: 50%;
	left: 0;
	transform: translateY(-50%)
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat01::before {
	background: url(../images/campuslife/campuslife-club-icon01.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat02::before {
	background: url(../images/campuslife/campuslife-club-icon02.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat03::before {
	background: url(../images/campuslife/campuslife-club-icon03.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat04::before {
	background: url(../images/campuslife/campuslife-club-icon04.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat05::before {
	background: url(../images/campuslife/campuslife-club-icon05.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap h4.c-box-title.cat06::before {
	background: url(../images/campuslife/campuslife-club-icon06.png) no-repeat center center;
	background-size: contain
}

ul.club-lists li.club-box .c-text-wrap p.text {
	font-size: 1.5rem;
	line-height: 1.9em;
	margin-bottom: 2vw
}

ul.club-lists li.club-box .c-text-wrap dl.c-content {
	display: flex;
	justify-content: space-between;
	margin-bottom: 1rem
}

ul.club-lists li.club-box .c-text-wrap dl.c-content dt {
	width: 30%
}

ul.club-lists li.club-box .c-text-wrap dl.c-content dt p.c-title {
	background: #fff;
	color: #f0acad;
	text-align: center;
	font-size: calc(1rem + .2vw);
	font-weight: 600;
	line-height: 1.5em
}

ul.club-lists li.club-box .c-text-wrap dl.c-content dd {
	width: 67%;
	font-size: calc(1rem + .2vw);
	line-height: 1.9em
}

ul.club-lists li.club-box:nth-of-type(2n) {
	flex-direction: row-reverse
}

.lifestyle-link {
	padding-top: 8vw;
	margin-top: -8vw
}

.l-top-content {
	display: flex;
	justify-content: space-between;
	align-items: center
}

.l-top-content .l-photo {
	position: relative;
	width: 57%;
	height: 20vw;
	min-height: 200px;
	background: url(../images/campuslife/campuslife-lifestyle-top-img01.jpg) no-repeat center center;
	background-size: cover
}

.l-top-content .l-photo::before {
	content: "";
	position: absolute;
	background: url(../images/campuslife/campuslife-lifestyle-en01.png) no-repeat center center;
	background-size: contain;
	width: 20vw;
	height: 8vw;
	left: 6vw;
	bottom: 5px
}

.l-top-content .l-textbox {
	width: 40%;
	padding-right: 10vw
}

.l-top-content .l-textbox h3.title {
	font-size: calc(2rem + .3vw);
	font-weight: 600;
	letter-spacing: .15em;
	line-height: 1.3em;
	color: #f0acad;
	margin-bottom: 2rem
}

.l-top-content .l-textbox p.text {
	font-size: 1.5rem;
	line-height: 1.9em
}

ul.l-link-tab {
	display: flex;
	margin-bottom: 2vw
}

ul.l-link-tab li {
	width: 50%
}

ul.l-link-tab li a {
	position: relative;
	background: #f0acad;
	height: 15vw;
	min-height: 200px;
	display: flex;
	justify-content: center;
	align-items: center
}

ul.l-link-tab li a::before {
	content: "";
	position: absolute;
	background: rgba(240, 172, 173, .6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	mix-blend-mode: multiply
}

ul.l-link-tab li a p.l-linktitle {
	position: relative;
	font-size: calc(2rem + .3vw);
	font-weight: 600;
	line-height: 1.3em;
	letter-spacing: .15em;
	color: #fff;
	transition: all .3s;
	z-index: 1
}

ul.l-link-tab li a p.l-linktitle::before {
	content: "";
	position: absolute;
	background: url(../images/campuslife/campuslife-lifestyle-en03.png) no-repeat center center;
	background-size: contain;
	width: 12vw;
	height: 4vw;
	top: -3.5vw;
	left: 50%;
	transform: translateX(-50%)
}

ul.l-link-tab li a p.l-linktitle::after {
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	border-right: solid 1.5px #fff;
	border-bottom: solid 1.5px #fff;
	bottom: -1.5em;
	left: 50%;
	transform: translateX(-50%) rotate(45deg)
}

ul.l-link-tab li a:hover {
	opacity: 1
}

ul.l-link-tab li a:hover p.l-linktitle {
	transform: translateY(20%)
}

ul.l-link-tab li:nth-of-type(1) a {
	background: url(../images/campuslife/campuslife-lifestyle-img01_2025.webp) no-repeat center center;
	background-size: cover
}

ul.l-link-tab li:nth-of-type(1) a p.l-linktitle::before {
	background: url(../images/campuslife/campuslife-lifestyle-en02.png) no-repeat center center;
	background-size: contain;
	width: 10vw;
	height: 3vw;
	top: -3vw
}

ul.l-link-tab li:nth-of-type(2) a {
	background: url(../images/campuslife/campuslife-lifestyle-img02_2025.webp) no-repeat center center;
	background-size: cover
}

.l-content .l-main-photo {
	position: relative;
	background: #f0acad;
	width: 100%;
	height: 40vw;
	min-height: 300px
}

.l-content .l-main-photo .l-main-prof {
	position: absolute;
	background: #fff;
	width: 34%;
	height: auto;
	right: 0;
	bottom: 0;
	padding: 2em 0 2em 2em
}

.l-content .l-main-photo .l-main-prof h4.p-name {
	font-size: calc(1.3rem + .3vw);
	font-weight: 600;
	line-height: 1.3em;
	letter-spacing: .2em;
	margin-bottom: 1rem
}

.l-content .l-main-photo .l-main-prof h4.p-name span {
	font-size: calc(2.2rem + .5vw);
	font-weight: 600
}

.l-content .l-main-photo .l-main-prof p.p-text {
	font-size: 1.5rem;
	line-height: 1.9em
}

.l-content .l-main-photo::before {
	content: "";
	position: absolute;
	background: #000;
	width: 24vw;
	height: 10vw;
	left: 1em;
	top: 1em
}

.l-content .l-main-photo.ph01 {
	background: url(../images/campuslife/campuslife-lifestyle-img01_2025.webp) no-repeat center center;
	background-size: cover
}

.l-content .l-main-photo.ph01::before {
	background: url(../images/campuslife/campuslife-lifestyle-en02.png) no-repeat center center;
	background-size: contain
}

.l-content .l-main-photo.ph02 {
	background: url(../images/campuslife/campuslife-lifestyle-img02_2025.webp) no-repeat center center;
	background-size: cover
}

.l-content .l-main-photo.ph02::before {
	background: url(../images/campuslife/campuslife-lifestyle-en03.png) no-repeat center center;
	background-size: contain;
	width: 40vw;
	height: 10vw
}

.l-content .l-main-text {
	padding: 2em 0;
	display: flex;
	justify-content: space-between
}

.l-content .l-main-text .l-l-box {
	width: 63%
}

.l-content .l-main-text .l-l-box .l-pickup-content {
	display: flex;
	justify-content: space-between
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo {
	position: relative;
	width: 45%;
	height: 15vw;
	min-height: 200px
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo::before {
	content: "";
	position: absolute;
	background: #f0acad;
	width: 130%;
	height: 170%;
	bottom: 0;
	right: 0
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo.ph01::before {
	background: url(../images/campuslife/campuslife-lifestyle-img03_2025.jpg) no-repeat center center;
	background-size: contain
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo.ph02::before {
	background: url(../images/campuslife/campuslife-lifestyle-img04_2025.jpg) no-repeat center center;
	background-size: contain
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-text {
	width: 50%
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-text p.p-title {
	font-size: calc(1.3rem + .3vw);
	font-weight: 600;
	margin-bottom: 1rem
}

.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-text p.p-text {
	font-size: 1.5rem;
	line-height: 1.9em
}

.l-content .l-main-text .l-l-box dl.l-qa-content {
	margin-bottom: 2vw
}

.l-content .l-main-text .l-l-box dl.l-qa-content dt {
	position: relative;
	font-size: calc(1.8rem + .3vw);
	font-weight: 500;
	line-height: 1.8em;
	letter-spacing: .15em;
	color: #f0acad;
	padding-left: 5vw;
	margin-bottom: 4rem
}

.l-content .l-main-text .l-l-box dl.l-qa-content dt::before {
	content: "Q.";
	position: absolute;
	font-size: 4vw;
	font-weight: 600;
	font-family: "Zen Kaku Gothic New", sans-serif;
	left: 0;
	top: -5px
}

.l-content .l-main-text .l-l-box dl.l-qa-content dd {
	position: relative;
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	line-height: 1.8em;
	padding-left: 5vw
}

.l-content .l-main-text .l-l-box dl.l-qa-content dd::before {
	content: "A.";
	position: absolute;
	font-size: 4vw;
	font-weight: 600;
	font-family: "Zen Kaku Gothic New", sans-serif;
	left: 0;
	top: -5px
}

.l-content .l-main-text .l-r-box {
	width: 34%;
	padding-left: 2em;
	transform: translateY(-2em)
}

.l-content .l-main-text .l-r-box p.data-title {
	font-size: calc(1.6rem + .5vw);
	font-weight: 600;
	letter-spacing: .15em;
	line-height: 1.3em;
	margin-bottom: 2rem
}

.l-content .l-main-text .l-r-box .data-img {
	width: 100%
}

.l-content .l-main-text .l-r-box .data-img img {
	width: 100%
}

.oneday-content .oneday-title {
	display: flex;
	justify-content: start;
	align-items: center;
	margin-bottom: 2vw
}

.oneday-content .oneday-title .en-word {
	width: 13vw;
	margin-right: 1em
}

.oneday-content .oneday-title .en-word img {
	width: 100%
}

.oneday-content .oneday-title h3.jp-title {
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	letter-spacing: .15em
}

.oneday-content .oneday-schedule {
	display: flex;
	justify-content: space-between
}

.oneday-content .oneday-schedule .schedule-block {
	width: 49%
}

.oneday-content .oneday-schedule .schedule-block p.schedule-title {
	border: solid 1.5px #f0acad;
	border-radius: 3vh;
	padding: .5rem 0;
	text-align: center;
	font-size: calc(1.6rem + .3vw);
	font-weight: 500;
	letter-spacing: .15em;
	line-height: 1.3em;
	color: #f0acad;
	margin-bottom: 2vw
}

.oneday-content .oneday-schedule .schedule-block p.schedule-title.holi {
	background: #f0acad;
	color: #fff
}

.oneday-content .oneday-schedule .schedule-block .schedule-img {
	width: 100%
}

.oneday-content .oneday-schedule .schedule-block .schedule-img img {
	width: 100%
}

.schedulebox {
	width: 100%;
	margin-bottom: 40px
}

.schedulebox p.event {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	font-size: 1.6rem;
	font-weight: 600;
	color: #f0acad
}

.schedulebox p.event span {
	display: inline-block;
	margin-right: 10px;
	background: #f0acad;
	color: #fff;
	font-size: 1.7rem;
	font-weight: 600;
	border-radius: 10px;
	padding: 0 15px
}

.schedulebox p.read {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	font-size: 1.5rem;
	position: relative;
	padding-left: 27px
}

.schedulebox p.read::after {
	content: "";
	position: absolute;
	left: 10px;
	bottom: 0;
	width: 2px;
	height: calc(100% + 15px);
	border-left: 3px dotted #f0acad
}

ul.news-contentlist {
	width: 100%;
	display: flex;
	margin-bottom: 7vw
}

ul.news-contentlist li {
	width: calc(91% / 4);
	margin-right: 3%
}

ul.news-contentlist li:nth-of-type(4) {
	margin-right: 0
}

ul.news-contentlist li a {
	display: block;
	width: 100%
}

ul.news-contentlist li a .img {
	width: 100%;
	height: 10vw;
	margin-bottom: 20px
}

ul.news-contentlist li a .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%
}

ul.news-contentlist li a .info {
	width: 100%
}

ul.news-contentlist li a .info p.daycat {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px
}

ul.news-contentlist li a .info p.daycat span.day {
	font-size: 1.4rem;
	font-family: "Noto Serif JP", serif;
	line-height: 1
}

ul.news-contentlist li a .info p.daycat span.cat {
	display: block;
	width: fit-content;
	line-height: 1;
	background: #000;
	color: #fff;
	font-size: 1.3rem;
	border-radius: 3px;
	padding: 3px 10px
}

ul.news-contentlist li a .info p.read {
	display: block;
	width: 100%;
	font-size: 1.6rem
}

.cafe-band {
	background: #f0acad;
	padding: 3vw 0
}

.cafe-band h3.cafe-title {
	margin-bottom: 1rem
}

.cafe-band h3.cafe-title span {
	display: block;
	text-align: center;
	color: #fff;
	font-weight: 500;
	font-family: "Noto Serif JP", serif
}

.cafe-band h3.cafe-title span.en {
	font-size: calc(2.8rem + .8vw);
	line-height: 1.5em
}

.cafe-band h3.cafe-title span.jp {
	font-size: calc(1.6rem + .5vw)
}

.cafe-band p.time {
	text-align: center
}

.cafe-band p.time span {
	background: #fff;
	color: #f0acad;
	font-size: calc(1.2rem + .2vw);
	font-weight: 500;
	text-align: center;
	padding: 3px 2em;
	border-radius: 3vh
}

.wide-img {
	width: 100%;
	margin-bottom: 3vw
}

.wide-img img {
	width: 100%
}

.paragraph.inner {
	padding: 0 10vw
}

.popular-inner {
	background: #fcf7f7;
	padding: 3vw 10vw 0;
	margin-bottom: 6vw
}

.popular-inner h4.popular-title {
	position: relative;
	font-size: calc(2rem + .3vw);
	font-weight: 600;
	line-height: 1.3em;
	letter-spacing: .15em;
	color: #e36d6f;
	padding: 1.5rem 0;
	border-top: solid 1px #e36d6f;
	border-bottom: solid 1px #e36d6f;
	text-align: center;
	margin-bottom: 2vw
}

.popular-inner h4.popular-title span.en {
	position: absolute;
	background: #fcf7f7;
	font-size: calc(1rem + .2vw);
	font-weight: 500;
	color: #e36d6f;
	padding: 3px 15px;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%)
}

.popular-inner ul.p-num-lists {
	width: fit-content;
	margin: 0 auto 3vw
}

.popular-inner ul.p-num-lists li {
	position: relative;
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	padding-left: 20px
}

.popular-inner ul.p-num-lists li::before {
	content: "";
	position: absolute;
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	color: #e36d6f;
	top: 50%;
	left: 0;
	transform: translateY(-50%)
}

.popular-inner ul.p-num-lists li:nth-of-type(1)::before {
	content: "❶"
}

.popular-inner ul.p-num-lists li:nth-of-type(2)::before {
	content: "❷"
}

.popular-inner ul.p-num-lists li:nth-of-type(3)::before {
	content: "❸"
}

.popular-inner .menu-flex {
	display: flex;
	justify-content: space-between
}

.popular-inner .menu-flex .menu-textbox {
	width: 33%;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.popular-inner .menu-flex .menu-textbox .text {
	position: relative;
	font-size: 1.5rem;
	line-height: 1.9em;
	font-weight: 500;
	text-align: center;
	background: #e36d6f;
	color: #fff;
	padding: 2em;
	border-radius: 1rem;
	margin-top: 4vw;
	margin-bottom: 2vw
}

.popular-inner .menu-flex .menu-textbox .text::before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #e36d6f transparent transparent transparent;
	bottom: 0;
	left: 3em;
	transform: translateY(100%)
}

.popular-inner .menu-flex .menu-textbox .student-photo {
	width: 100%
}

.popular-inner .menu-flex .menu-textbox .student-photo img {
	width: 100%
}

.popular-inner .menu-flex ul.p-menu-lists {
	width: 62%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 3vw
}

.popular-inner .menu-flex ul.p-menu-lists li {
	position: relative;
	width: 49%;
	margin-bottom: 1vw
}

.popular-inner .menu-flex ul.p-menu-lists li .menu-photo {
	width: 100%
}

.popular-inner .menu-flex ul.p-menu-lists li .menu-photo img {
	width: 100%
}

.popular-inner .menu-flex ul.p-menu-lists li p.menu-title {
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
	padding: 1rem 0
}

.popular-inner .menu-flex ul.p-menu-lists li p.menu-title .jp {
	position: relative;
	display: block;
	color: #fff;
	font-size: calc(1.2rem + .2vw);
	font-weight: 500;
	text-align: center;
	z-index: 1
}

.popular-inner .menu-flex ul.p-menu-lists li p.menu-title .bg {
	display: block;
	position: absolute;
	background: #f0acad;
	width: 100%;
	height: 100%;
	left: 0;
	bottom: 0;
	mix-blend-mode: multiply
}

.popular-inner .menu-flex ul.p-menu-lists li:first-child {
	width: 100%
}

.menu-inner {
	width: calc(100% - 20vw);
	margin: 0 auto
}

.menu-inner dl.more-menu dt {
	font-size: 1.8rem;
	letter-spacing: .2em;
	padding: .7em 1em;
	margin-bottom: 2vh;
	position: relative;
	border-bottom: solid 1.5px #f0acad;
	border-top: solid 1.5px #f0acad;
	font-weight: 600;
	color: #f0acad;
	text-align: center;
	cursor: pointer
}

.menu-inner dl.more-menu dt .accordion-btn {
	position: absolute;
	background: #f0acad;
	width: 2vw;
	height: 2vw;
	border-radius: 50%;
	top: 50%;
	right: 1vw;
	transform: translateY(-50%)
}

.menu-inner dl.more-menu dt .accordion-btn span {
	position: relative;
	display: block;
	width: 100%;
	height: 100%
}

.menu-inner dl.more-menu dt .accordion-btn span::after,
.menu-inner dl.more-menu dt .accordion-btn span::before {
	content: "";
	position: absolute;
	background: #fff;
	height: 1px;
	width: 1vw;
	top: 50%;
	left: 26%;
	transform: translateY(-50%);
	transition: all .4s
}

.menu-inner dl.more-menu dt .accordion-btn span::before {
	transform: rotate(90deg) translateY(-50%)
}

.menu-inner dl.more-menu dt.active .accordion-btn span::before {
	transform: rotate(0) translateY(-50%)
}

.menu-inner dl.more-menu dd {
	display: none
}

.menu-inner dl.more-menu dd h4.m-section-title {
	display: flex;
	justify-content: center;
	margin-bottom: 3vw;
	font-size: calc(1.4rem + .3vw);
	font-weight: 600;
	color: #f0acad
}

.menu-inner dl.more-menu dd h4.m-section-title span {
	position: relative;
	font-size: calc(1.4rem + .3vw);
	font-weight: 600;
	letter-spacing: .15em;
	color: #f0acad;
	padding: 1rem 2em;
	border-bottom: solid 2px #f0acad
}

.menu-inner dl.more-menu dd h4.m-section-title span::before {
	content: "";
	position: absolute;
	background: url(../images/campuslife/campuslife-cafeteria-border.svg) no-repeat center center;
	background-size: contain;
	width: 15px;
	height: 10px;
	bottom: 0;
	left: 50%;
	transform: translateY(100%) translateX(-50%)
}

.menu-inner dl.more-menu dd ul.menu-lists {
	display: flex;
	flex-wrap: wrap
}

.menu-inner dl.more-menu dd ul.menu-lists li {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2vw
}

.menu-inner dl.more-menu dd ul.menu-lists li img {
	width: 100%;
	margin-bottom: 5px
}

.menu-inner dl.more-menu dd ul.menu-lists li p.menu-text {
	font-size: calc(1.3rem + .2vw);
	font-weight: 500
}

.menu-inner dl.more-menu dd ul.menu-lists li:nth-of-type(3n) {
	margin-right: 0
}

.color-inner {
	background: #fcf7f7;
	padding: 3em 0
}

.cafe-flex {
	display: flex;
	justify-content: space-between;
	align-items: center
}

.cafe-flex .cafe-photo {
	width: 50%
}

.cafe-flex .cafe-photo img {
	width: 100%
}

.cafe-flex .cafe-text {
	width: 45%;
	padding-right: 10vw
}

.cafe-flex.reverse {
	flex-direction: row-reverse
}

.cafe-flex.reverse .cafe-text {
	padding-right: 0;
	padding-left: 10vw
}

.insta-bnr {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 15vw;
	min-height: 150px;
	border-radius: 1rem;
	overflow: hidden
}

.insta-bnr p.text {
	position: relative;
	font-size: calc(2.4rem + .8vw);
	font-weight: 600;
	padding: 2px 5px 5px 5px;
	color: #fff;
	z-index: 1;
	display: inline-block;
	transition: all .2s
}

.insta-bnr p.text::before {
	content: "";
	position: absolute;
	background: #fff;
	width: 100%;
	height: 0;
	left: 0;
	bottom: 0;
	transition: all .4s;
	z-index: -1
}

.insta-bnr::before {
	content: "";
	position: absolute;
	background: url(../images/campuslife/campuslife-cafeteria-wide-img01.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: all .5s
}

.insta-bnr::after {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, .3);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: all .4s
}

.insta-bnr:hover {
	opacity: 1
}

.insta-bnr:hover p.text {
	color: #f0acad
}

.insta-bnr:hover p.text::before {
	height: 100%
}

.insta-bnr:hover::before {
	transform: scale(1.1)
}

.insta-bnr:hover::after {
	background: unset
}

.townguide-map {
	width: 100%;
	position: relative;
	margin-bottom: 5vw
}

.townguide-map img {
	width: 100%;
	display: block
}

.townguide-map .townguide-map-icon {
	position: absolute;
	left: 4vw;
	bottom: -4vw;
	width: 12vw;
	height: 12vw
}

ul.townguide-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

ul.townguide-list li {
	width: 31%
}

ul.townguide-list li .img {
	width: 100%;
	position: relative
}

ul.townguide-list li .img .icon {
	position: absolute;
	left: calc(50% - 2vw);
	bottom: -2vw;
	width: 4vw;
	height: 4vw;
/*	font-family: "Nothing You Could Do", cursive;*/
	font-family: "PTF_NORDIC_Rnd", sans-serif;
	font-size: 2.2vw;
	line-height: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff100;
	color: #000;
	border: 4px solid #000;
	font-weight: 600;
	border-radius: 2vw;
	font-weight: 700;
}
ul.townguide-list li .img .icon span {
	line-height: 1;
	margin-bottom: -5px;
}

ul.townguide-list li .img img {
	width: 100%;
	display: block
}

ul.townguide-list li dl {
	padding: 2vw 0
}

ul.townguide-list li dl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 3em;
	font-size: 1.8rem;
	line-height: 1.2em;
	font-weight: 500;
	padding: .3em 0
}

ul.townguide-list li dl dd {
	font-size: 1.4rem;
	line-height: 1.7em
}

.bus-icon {
/*	width: 10vw;*/
/*	margin: 4vw auto 2vw*/
	position: absolute;
	left: -70px;
	top: -70px;
	width: 140px;
	height: 140px;
}

.bus-icon img {
	width: 100%;
	display: block
}

.bus-topics {
	border: 3px solid #f0acad;
	padding: 3.5vw 2.5vw 2.5vw;
	position: relative;
}

.bus-topics dl dt {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: .5em;
	color: #f0acad
}

.bus-topics dl dd {
	font-size: 1.4rem
}

.bus-topics ul.bus-point {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 1vw 0 3vw
}

.bus-topics ul.bus-point li {
	width: 24%;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.4em;
	background: #f0acad;
	border-radius: .3vw;
	color: #fff;
	text-align: center;
	padding: .3em 0
}

.bus-topics ul.bus-point li span {
	font-size: 3.2rem;
	font-weight: 500;
	display: inline-block;
	line-height: 1.3em
}

.bus-topics p.pickup-text {
	text-align: center;
	font-size: 2rem;
	font-weight: 600;
	color: #f0acad;
	color: #fff;
	background: #f0acad;
	border-radius: .3vw;
	margin: 1vw 0 0
}

.bus-topics p.pickup-text span {
	font-size: 4rem;
	font-weight: 500;
	padding: 0 .1em
}

.number-content-wrap {
	background: #e3e3df;
	padding: 5vw 4vw;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.number-content-wrap .number-content {
	width: 48%;
	padding: 2vw 3vw;
	background: #fff;
	border-radius: 2vw;
	margin-bottom: 3vw;
	position: relative
}

.number-content-wrap .number-content h5.number-content-title {
	width: fit-content;
	height: 3.6vw;
	font-size: 2rem;
	font-weight: 500;
	background: #f0acad;
	border-radius: 1.8vw;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 2em;
	margin: 0 auto 2vw
}

.number-content-wrap .number-content .number-content-img {
	width: 100%;
	margin: 0 auto 1vw
}

.number-content-wrap .number-content .number-content-img img {
	width: 100%;
	display: block
}

.number-content-wrap .number-content a {
	position: absolute;
	right: 2vw;
	bottom: 1vw;
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
	color: #f0acad
}

.number-content-wrap .number-content a::after {
	content: "";
	width: 1.5em;
	height: 1.5em;
	background: url(../images/campuslife/number-link-icon.webp) no-repeat center center;
	background-size: contain;
	display: inline-block;
	margin-left: .5em;
	transform: translateY(.3em)
}

.number-content-wrap .number-content .number-content-map {
	display: flex;
	justify-content: space-between
}

.number-content-wrap .number-content .number-content-map .number-content-img {
	width: 17%;
	padding-top: 2vw
}

.number-content-wrap .number-content .number-content-map .number-content-img+.number-content-img {
	width: 78%;
	padding: 0
}

.number-content-wrap .number-content .number-content-access {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

.number-content-wrap .number-content .number-content-access .number-content-img {
	width: 100%
}

.number-content-wrap .number-content .number-content-access .number-content-img+.number-content-img {
	width: 48%;
	padding: 0
}

.number-content-wrap .number-content.full {
	width: 100%
}

.number-content-wrap .number-content.mid {
	width: 62%
}

.number-content-wrap .number-content.small {
	width: 34%
}

.number-content-wrap .number-content.num01 .number-content-img {
	width: 70%
}

.number-content-wrap .number-content.num01 .number-content-img+.number-content-img {
	width: 100%
}

.number-content-wrap .number-content-set {
	width: 48%
}

.number-content-wrap .number-content-set .number-content {
	width: 100%
}

.sports.top .content-wrap {
	background: #d80c18
}

.campuslife.sports.top .page-head .mainvisual {
	/*background: unset;*/
	background: url(../images/campuslife/sports/sports-mv-photo-bg.webp) no-repeat center;
	background-size: cover;
	/*height: 36vw*/
	height: 50vw
}

.campuslife.sports.top .page-head .mainvisual .page-title {
	background: transparent;
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo {
	position: absolute;
	/*width: 50%;*/
	width: 100%;
	/*height: 32vw;*/
	height: 39vw;
	/*background: #000;*/
	overflow: hidden
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo span {
	position: relative;
	display: block;
	background: #000;
	width: 100%;
	height: 100%
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo span::before {
	background: #d80c18;
	bottom: 0;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo01 {
	left: 0;
	/*top: 4vw*/
	top: 11vw
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo01 span {
	/*background: url(../images/campuslife/sports/sports-mv-photo01.webp) no-repeat center center;*/
	background: transparent url(../images/campuslife/sports/sports-mv-photo.webp) no-repeat center top;
	/*background-size: contain*/
	background-size: auto 115%;
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo01 span::before {
	animation: img-animation .6s cubic-bezier(.4, 0, .2, 1) 2.4s forwards
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo02 {
	right: 0;
	bottom: -14vw
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo02 span {
	background: url(../images/campuslife/sports/sports-mv-photo02.webp) no-repeat center center;
	background-size: cover
}

.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo02 span::before {
	animation: img-animation .6s cubic-bezier(.4, 0, .2, 1) 2.6s forwards
}

.campuslife.sports.top .page-head .mainvisual p.mv-sports-copy {
	position: absolute;
	/*top: 8vw;*/
	top: 5.5vw;
	/*right: 5vw*/
	right: 10vw
}

.campuslife.sports.top .page-head .mainvisual p.mv-sports-copy span {
	position: relative;
	/*font-size: 5.5vw;*/
	font-size: 4.5vw;
	line-height: 100%;
	letter-spacing: .2em;
	color: #fff;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	opacity: 0;
	animation: fade_anim .2s ease 3.3s both;
	overflow: hidden
}

.campuslife.sports.top .page-head .mainvisual p.mv-sports-copy span::before {
	content: "";
	position: absolute;
	background: #fff;
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	animation: mvcopy_anim .5s cubic-bezier(.4, 0, .2, 1) 3.6s both
}

.sports.under .page-head .mainvisual {
	position: relative;
	background: unset;
	height: 30vw;
	margin: 0 0 2vh
}

.sports.under .page-head .mainvisual::before {
	content: "";
	position: absolute;
	background: #000;
	width: 55%;
	height: 100%;
	left: 0;
	top: 0
}

.sports.under .page-head .mainvisual .sports-mv-wrap {
	position: absolute;
	top: 0;
	right: 0;
	width: 45%;
	height: 100%;
	background: #d80c18;
	display: flex;
	flex-direction: column;
	justify-content: end;
	align-items: center
}

.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title {
	display: flex;
	flex-direction: column;
	color: #fff;
	text-align: center;
	margin-bottom: 6vw
}

.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title .main {
	font-size: calc(2rem + 1vw);
	font-weight: 500;
	letter-spacing: .2em;
	line-height: 1.8em;
	padding: 0 2em 1vw;
	border-bottom: solid 1px #fff;
	margin-bottom: 2vw
}

.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title .sub {
	font-size: calc(1.4rem + .3vw);
	font-weight: 400
}

.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager {
	display: flex;
	align-items: center;
	margin-bottom: 2vw
}

.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dt {
	font-size: calc(1.2rem + .3vw);
	font-weight: 500;
	color: #fff;
	margin-right: 1vw
}

.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dd {
	color: #fff;
	font-size: calc(1.2rem + .2vw);
	line-height: 1.8em;
	padding-left: 1vw;
	border-left: solid 1px #fff
}

.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dd span {
	font-size: calc(1.3rem + .3vw);
	font-weight: 500
}

.sports.ad .page-head .mainvisual,
.sports.support .page-head .mainvisual,
.sports.facility .page-head .mainvisual {
	height: auto;
	background: unset;
	margin: 0 0 2vh
}

.sports.ad .page-head .mainvisual h2.page-band-title,
.sports.support .page-head .mainvisual h2.page-band-title,
.sports.facility .page-head .mainvisual h2.page-band-title {
	padding: 3vw 0;
	background: #d80c18;
	color: #fff;
	font-size: calc(3rem + 1vw);
	font-weight: 500;
	letter-spacing: .2em;
	line-height: 1.1em;
	text-align: center
}

.sports.ad .page-head .mainvisual h2.page-band-title span,
.sports.support .page-head .mainvisual h2.page-band-title span,
.sports.facility .page-head .mainvisual h2.page-band-title span {
	font-size: .7em
}

.sports.albirex .page-head .mainvisual {
	background: unset;
	height: 30vw;
	margin: 0;
	display: flex
}

.sports.albirex .page-head .mainvisual .mv-albirex-photo {
	position: relative;
	background: #000;
	width: 50%;
	height: 100%
}

.sports.albirex .page-head .mainvisual .mv-albirex-photo p.cr-text {
	position: absolute;
	bottom: 10px;
	right: 1vw;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: normal
}

.sports.albirex .page-head .mainvisual .mv-albirex-photo.photo01 {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-albirex01.webp) no-repeat center center;
	background-size: cover
}

.sports.albirex .page-head .mainvisual .mv-albirex-photo.photo01 p.cr-text {
	color: #fff
}

.sports.albirex .page-head .mainvisual .mv-albirex-photo.photo02 {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-albirex02.webp) no-repeat center center;
	background-size: cover
}

.sports.swimming .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club01_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.trackandfield .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club02_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.soccer .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club03_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.wsoccer .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club04_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.basketball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club05_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.wbasketball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club06_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.volleyball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club07_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.wvolleyball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club08_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.dance .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club09_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.baseball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club10_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.tabletennis .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club11_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.tennis .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club12_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.wbaseball .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club13_2025.webp) no-repeat center center;
	background-size: cover
}

.sports.snowboard .page-head .mainvisual::before {
	background: url(../images/mainvisual/mainvisual-campuslife-sports-club14_2025.webp) no-repeat center center;
	background-size: cover
}

.page-head h2.page-band-title {
	padding: 3vw 0;
	margin: 0 0 2vh;
	background: #ed6c00;
	color: #fff;
	font-size: calc(3rem + 1vw);
	font-weight: 500;
	letter-spacing: .2em;
	line-height: 1.1em;
	text-align: center
}

.page-head h2.page-band-title span {
	font-size: .7em
}

.campuslife.sports.top .page-head ul.breadcrumb li a {
	color: #fff
}

.campuslife.sports.top .page-head ul.breadcrumb li::before {
	border-right: solid 1.5px #fff;
	border-bottom: solid 1.5px #fff
}

.campuslife.sports.top .page-head ul.breadcrumb li:last-of-type a {
	color: #fae2e2
}

.sports .page-head {
	margin-top: 11vw
}

.sports.ad .page-head,
.sports.support .page-head {
	margin-top: 11vw;
	margin-bottom: 4vw
}

.sports.top .page-head {
	margin-top: 11vw;
	/*margin-bottom: 10vw*/
	margin-bottom: 5vw
}

@keyframes img-animation {
	100% {
		transform: translateY(-100%);
		opacity: 1
	}
}

@keyframes fade_anim {
	0% {
		opacity: 0;
		filter: blur(3px)
	}

	100% {
		opacity: 1;
		filter: blur(0)
	}
}

@keyframes mvcopy_anim {
	0% {
		width: 100%
	}

	100% {
		width: 0
	}
}

.sports-index-animation {
	position: fixed;
	top: 0;
	left: 0;
	background: #fff;
	width: 100%;
	height: 100vh;
	z-index: 30;
	display: flex;
	justify-content: center;
	align-items: center;
	pointer-events: none;
	animation: opa_anime 1s ease both 2s
}

.sports-index-animation .sports-logo {
	background: url(../images/campuslife/sports/sports-logo.svg) no-repeat;
	background-size: contain;
	width: 30vw;
	height: 10vw;
	opacity: 0;
	animation: blur_anime .5s ease both .5s
}

@keyframes opa_anime {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@keyframes blur_anime {
	0% {
		opacity: 0;
		filter: blur(5px)
	}

	100% {
		opacity: 1;
		filter: blur(0)
	}
}

@keyframes fadein_anime {
	0% {
		opacity: 0;
		transform: translateY(100px)
	}

	100% {
		opacity: 1;
		transform: translateY(0)
	}
}

h3.sports-title {
	position: relative;
	color: #d80c18;
	margin-bottom: 3vw
}

h3.sports-title span {
	display: inline-block;
	font-size: calc(2.4rem + .7vw);
	font-weight: 500;
	line-height: 1.2em;
	letter-spacing: .15em;
	background: #fff;
	padding: 5px
}

h3.sports-title::before {
	content: "";
	position: absolute;
	background: #d80c18;
	width: 0;
	height: 1px;
	bottom: 10px;
	left: 0;
	z-index: -1;
	transition: all .6s ease
}

.top h3.sports-title {
	color: #fff
}

.top h3.sports-title span {
	background: #d80c18
}

.top h3.sports-title::before {
	background: #fff
}

h3.sports-title.is-show::before {
	width: 100%
}

h3.band-title {
	background: #d80c18;
	padding: 2vw 10vw;
	margin-bottom: 0;
	font-weight: 500;
	font-size: calc(1.6rem + .8vw);
	letter-spacing: .15em
}

.albirex h3.band-title {
	background: #ed6c00;
	margin-bottom: 4vw
}

h4.bold-title {
	color: #d80c18
}

.albirex h4.bold-title {
	color: #ed6c00
}

h3.border-title {
	position: relative;
	font-size: calc(1.6rem + .5vw);
	font-weight: 500;
	letter-spacing: .15em;
	color: #d80c18;
	padding: .5em 1em;
	margin-bottom: 2vw;
	margin-top: 2.5vw;
	border: solid 1.5px #d80c18
}

h3.border-title span.pop-text {
	position: absolute;
	color: #000;
	font-size: calc(1.2rem + .3vw);
	font-weight: 500;
	letter-spacing: .1em;
	top: -2.5vw;
	left: 1vw
}

.albirex h3.border-title {
	color: #ed6c00;
	border: solid 1.5px #ed6c00;
	margin-bottom: 4vw
}

.albirex h3.border-title span.mark {
	position: absolute;
	top: 50%;
	right: 1vw;
	transform: translateY(-50%);
	width: 6vw;
	height: 90%
}

.albirex h3.border-title span.mark.mk01 {
	background: url(../images/campuslife/sports/sports-albirex-mark01.webp) no-repeat;
	background-size: contain
}

.albirex h3.border-title span.mark.mk02 {
	background: url(../images/campuslife/sports/sports-albirex-mark02.webp) no-repeat;
	background-size: contain
}

.en-wide-word {
	width: 100%;
	margin-bottom: 4vw;
	opacity: 0
}

.en-wide-word img {
	width: 100%
}

.en-wide-word.is-show {
	animation: fadein_anime .6s ease-out both
}

.index-copy {
	color: #fff;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 2.2em;
	opacity: 0
}

.index-copy.is-show {
	animation: fadein_anime .6s ease-out both
}

ul.sports-index-list {
	display: flex;
	flex-wrap: wrap
}

ul.sports-index-list li {
	width: 32.5%;
	margin-bottom: 4vw;
	margin-right: 1.25%;
	opacity: 0
}

ul.sports-index-list li a {
	display: block;
	position: relative
}

ul.sports-index-list li a p.link-title {
	color: #fff;
	padding: 0 0 .3em 1em;
	font-size: calc(1.4rem + .3vw);
	letter-spacing: .15em;
	font-weight: 500
}

ul.sports-index-list li a p.link-title span {
	font-size: calc(1.2rem + .2vw);
	padding-left: 5px
}

ul.sports-index-list li a .sports-photo {
	position: relative;
	width: 100%;
	height: 15vw;
	min-height: 150px;
	overflow: hidden
}

ul.sports-index-list li a .sports-photo::before {
	content: "";
	position: absolute;
	background: #000;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	transition: all .4s ease
}

ul.sports-index-list li a .sports-photo.new::after {
	content: "";
	position: absolute;
	background: url(../images/campuslife/sports/sports-new.webp) no-repeat;
	background-size: contain;
	width: 3vw;
	height: 3vw;
	min-width: 35px;
	min-height: 35px;
	top: 0;
	left: 0
}

ul.sports-index-list li a .sports-link-btn {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 85%;
	transform: translateY(50%) translateX(-50%);
	height: 60px;
	display: flex;
	align-items: center;
	background: #fff;
	border: solid 1px #fff;
	border-radius: 100px;
	min-width: 200px;
	transition: all .3s
}

ul.sports-index-list li a .sports-link-btn span {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	padding: 10px 60px 10px 20px;
	font-weight: 600;
	color: #d80c18;
	transition: all .3s
}

ul.sports-index-list li a .sports-link-btn span::before {
	content: "";
	position: absolute;
	right: 35px;
	top: 50%;
	transform: translate(50%, -50%);
	width: 40px;
	height: 40px;
	background: #d80c18;
	border-radius: 50%;
	transition: all .3s
}

ul.sports-index-list li a .sports-link-btn span::after {
	content: "";
	position: absolute;
	right: 37px;
	top: 50%;
	transform: translate(50%, -50%) skew(54deg);
	width: 18px;
	height: 4px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transition: all .3s
}

ul.sports-index-list li a:hover {
	opacity: 1
}

ul.sports-index-list li a:hover .sports-photo::before {
	transform: scale(1.05)
}

ul.sports-index-list li a:hover .sports-link-btn {
	background: #d80c18
}

ul.sports-index-list li a:hover .sports-link-btn span {
	color: #fff
}

ul.sports-index-list li a:hover .sports-link-btn span::before {
	background: #fff
}

ul.sports-index-list li a:hover .sports-link-btn span::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

ul.sports-index-list li:nth-of-type(3n) {
	margin-right: 0
}

ul.sports-index-list li:nth-of-type(1) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img01_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(2) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img02_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(3) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img03_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(4) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img04_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(5) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img05_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(6) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img06_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(7) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img07_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(8) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img08_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(9) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img09_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(10) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img10_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(11) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img11_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(12) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img12_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(13) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img13_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(14) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img14_2025.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li:nth-of-type(15) a .sports-photo::before {
	background: url(../images/campuslife/sports/sports-link-img15.webp) no-repeat center center;
	background-size: cover
}

ul.sports-index-list li.is-show {
	animation: fadein_anime .6s ease-out both
}

a.sports-bnr-inner {
	position: relative;
	margin-bottom: 4vw;
	opacity: 0;
	display: block;
	width: 100%
}

a.sports-bnr-inner p.sports-bnr-title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: calc(2rem + .5vw);
	font-weight: 500;
	z-index: 2
}

a.sports-bnr-inner ul.sports-bnr-photo li img {
	width: 100%
}

a.sports-bnr-inner .bnr-link-btn {
	position: absolute;
	bottom: -15%;
	right: 50%;
	width: fit-content;
	transform: translateX(50%);
	height: 60px;
	display: flex;
	align-items: center;
	background: #fff;
	border: solid 1px #fff;
	border-radius: 100px;
	min-width: 300px;
	transition: all .3s;
	z-index: 2
}

a.sports-bnr-inner .bnr-link-btn span {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	padding: 10px 60px 10px 20px;
	font-weight: 600;
	color: #d80c18;
	transition: all .3s
}

a.sports-bnr-inner .bnr-link-btn span::before {
	content: "";
	position: absolute;
	right: 35px;
	top: 50%;
	transform: translate(50%, -50%);
	width: 40px;
	height: 40px;
	background: #d80c18;
	border-radius: 50%;
	transition: all .3s
}

a.sports-bnr-inner .bnr-link-btn span::after {
	content: "";
	position: absolute;
	right: 37px;
	top: 50%;
	transform: translate(50%, -50%) skew(54deg);
	width: 18px;
	height: 4px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transition: all .3s
}

a.sports-bnr-inner::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(216, 12, 24, .3);
	mix-blend-mode: multiply;
	top: 0;
	left: 0;
	z-index: 1
}

a.sports-bnr-inner:hover {
	opacity: 1
}

a.sports-bnr-inner:hover .bnr-link-btn {
	background: #d80c18
}

a.sports-bnr-inner:hover .bnr-link-btn span {
	color: #fff
}

a.sports-bnr-inner:hover .bnr-link-btn span::before {
	background: #fff
}

a.sports-bnr-inner:hover .bnr-link-btn span::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

a.sports-bnr-inner.is-show {
	animation: fadein_anime .6s ease-out both
}

ul.insta-link {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

ul.insta-link li {
	width: 23%;
	margin-bottom: 2vw
}

ul.insta-link li a {
	display: block;
	position: relative
}

ul.insta-link li a:hover {
	opacity: 1
}

ul.insta-link li a img {
	width: 100%
}

ul.insta-link li a .body {
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(216, 12, 24, .7);
	color: #fff;
	width: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: none;
	padding: 10px
}

ul.insta-link li a .body p {
	font-size: 1.4rem;
	line-height: 1.7;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5
}

.sport.top ul.insta-link {
	opacity: 0
}

ul.insta-link.is-show {
	animation: fadein_anime .6s ease-out both
}

.sports-instagram-individual {
	display: flex;
	flex-wrap: wrap;
}
.sports-instagram-individual > div {
	width: calc( ( 100% / 7 ) - 5px );
	margin-left: 5px;
	margin-bottom: 5px;
}
.sports-instagram-individual > div:nth-child(7n+1) {
	margin-left: 0;
}
.sports-instagram-individual > div #sb_instagram #sbi_images {
	padding: 0;
}
.sports-instagram-individual .title {
	background: #fff;
	font-size: 14px;
	text-align: center;
	padding: 6px 2px;
	color: #d80c18;
	font-weight: 500;
}
@media screen and (max-width: 768px) {
	.sports-instagram-individual > div {
		width: calc( ( 100% / 3 ) - 5px );
	}
	.sports-instagram-individual > div:nth-child(7n+1) {
		margin-left: 5px;
	}
	.sports-instagram-individual > div:nth-child(3n+1) {
		margin-left: 0;
	}
	.sports-instagram-individual > div .title {
		height: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		line-height: 1.4;
		font-size: 12px;
		padding-top: 3px;
		padding-bottom: 3px;
	}
}

ul.round-link-list {
	display: flex;
	flex-wrap: wrap
}

ul.round-link-list li {
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 1vw
}

ul.round-link-list li a.round-link {
	width: 100%;
	margin-bottom: 0;
	background: #fff;
	color: #d80c18;
	text-align: left
}

ul.round-link-list li a.round-link::before {
	background: #d80c18
}

ul.round-link-list li a.round-link::after {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff
}

ul.round-link-list li a.round-link:hover {
	color: #fff;
	background: #d80c18
}

ul.round-link-list li a.round-link:hover::before {
	background: #fff
}

ul.round-link-list li a.round-link:hover::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

ul.round-link-list li a.round-link.no-link {
	pointer-events: none;
	opacity: .5
}

ul.round-link-list li:nth-of-type(3n) {
	margin-right: 0
}

ul.round-link-list.twin li {
	width: 48%;
	margin-right: 4%
}

ul.round-link-list.twin li a.round-link {
	color: #fff;
	background: #d80c18
}

ul.round-link-list.twin li a.round-link::before {
	background: #fff
}

ul.round-link-list.twin li a.round-link::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

ul.round-link-list.twin li a.round-link:hover {
	color: #d80c18;
	background: #fff
}

ul.round-link-list.twin li a.round-link:hover::before {
	background: #d80c18
}

ul.round-link-list.twin li a.round-link:hover::after {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff
}

ul.round-link-list.twin li:nth-of-type(2n) {
	margin-right: 0
}

ul.round-link-list.twin li:nth-of-type(3n) {
	margin-right: 4%
}

.sport.top ul.round-link-list {
	opacity: 0
}

ul.round-link-list.is-show {
	animation: fadein_anime .6s ease-out both
}

ul.sports-news-list {
	margin-bottom: 2vw
}

ul.sports-news-list li {
	margin-bottom: 1vw;
	opacity: 0
}

ul.sports-news-list li a {
	display: flex;
	align-items: center
}

ul.sports-news-list li a p {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.5em
}

ul.sports-news-list li a p.date {
	font-family: "Noto Serif JP", serif;
	margin-right: 2vw
}

ul.sports-news-list.is-show li:nth-of-type(1) {
	animation: fadein_anime .6s ease-out both
}

ul.sports-news-list.is-show li:nth-of-type(2) {
	animation: fadein_anime .6s ease-out .1s both
}

ul.sports-news-list.is-show li:nth-of-type(3) {
	animation: fadein_anime .6s ease-out .2s both
}

ul.sports-news-list.is-show li:nth-of-type(4) {
	animation: fadein_anime .6s ease-out .3s both
}

.linkbox {
	justify-content: center;
}

.linkbox a.round-link {
	width: 30%;
	background: #fff;
	color: #d80c18
}

.linkbox a.round-link::before {
	background: #d80c18
}

.linkbox a.round-link::after {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff
}

.linkbox a.round-link:hover {
	color: #fff;
	background: #d80c18
}

.linkbox a.round-link:hover::before {
	background: #fff
}

.linkbox a.round-link:hover::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

.sports.ad .linkbox a.round-link {
	width: 30%;
	background: #d80c18;
	color: #fff
}

.sports.ad .linkbox a.round-link::before {
	background: #fff
}

.sports.ad .linkbox a.round-link::after {
	border-right: 1px solid #d80c18;
	border-bottom: 1px solid #d80c18
}

.sports.ad .linkbox a.round-link:hover {
	color: #d80c18;
	background: #fff
}

.sports.ad .linkbox a.round-link:hover::before {
	background: #d80c18
}

.sports.ad .linkbox a.round-link:hover::after {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff
}

.content-inner.gray {
	background: #e0e1e1;
	width: 100%;
	padding: 3vw 10vw;
	margin: unset
}

.sports.top .content-inner.gray {
	padding: 4vw 10vw 6vw
}

.content-inner.red {
	background: #d80c18;
	width: 100%;
	padding: 4vw 10vw;
	margin: unset
}

.content-inner.red55 {
	background: rgba(216, 12, 24, .55);
	width: 100%;
	padding: 4vw 10vw
}

.sports.support .content-inner {
	margin: 0 auto 12vh
}

ul.blank-link {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	opacity: 0
}

ul.blank-link li {
	width: 48%;
	margin-bottom: 2vw
}

ul.blank-link li a {
	display: block
}

ul.blank-link li a img {
	width: 100%
}

ul.blank-link.is-show {
	animation: fadein_anime .6s ease-out both
}

.sports-underbox {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2vw
}

.sports-underbox .flex-photo {
	width: 40%
}

.sports-underbox .flex-photo img {
	width: 100%
}

.sports-underbox .flex-photo .cr-text {
	font-weight: 500;
	font-size: 1.2rem;
	margin-top: 5px
}

.sports-underbox .flex-text {
	width: 55%
}

.sports-underbox .flex-text p.paragraph {
	margin-bottom: 0
}

.sports-underbox .flex-text p.prof {
	margin-top: 1vw;
	text-align: right;
	font-size: 1.5rem;
	line-height: 1.9em;
	font-weight: 500
}

.sports-underbox.ph30 .flex-photo {
	width: 30%
}

.sports-underbox.ph30 .flex-text {
	width: 65%
}

.sports-underbox.ph20 .flex-photo {
	width: 20%
}

.sports-underbox.ph20 .flex-text {
	width: 75%
}

.sports-underbox.gray {
	padding: 2vw;
	background: #e0e1e1;
	margin-bottom: 1vw
}

.sports-underbox.re {
	flex-direction: row-reverse
}

.sports-underbox2 {
	margin-top: 3vw;
	position: relative;
	border: 4px solid #187FC4;
	border-radius: 15px;
	padding: 40px 30px 30px;
}
.sports-underbox2 .balloon {
	position: absolute;
	left: 30px;
	top: -30px;
	background: #fff;
	left: 30px;
	color: #187FC4;
	border: 3px solid #187FC4;
	border-radius: 15px;
	padding: 10px 30px;
	font-size: 1.8rem;
	font-weight: 700;
}
.sports-underbox2 h4 {
	font-size: 2.5rem;
	margin-bottom: 25px;
	font-weight: 700;
	text-decoration-line: underline;
	text-decoration-color: #FDD000;
	text-decoration-style: solid;
	text-decoration-thickness: 4px;
	text-underline-offset: 0;
	text-decoration-skip-ink: none;
	color: #187FC4;
}
.sports-underbox2 .img img {
	max-width: 100%;
	height: auto;
}

.sports-underbox3 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border-bottom: 1px solid #999;
	padding-top: 20px;
	padding-bottom: 60px;
	margin-bottom: 40px;
}
.sports-underbox3.last {
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
.sports-underbox3 .box-left {
	width: 45%;
}
.sports-underbox3 .people {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.sports-underbox3 .people-img {
	width: 25%;
	border-radius: 10px;
	border: 2px solid #d80c18;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sports-underbox3 .people-img img {
	border-radius: 10px;
}
.sports-underbox3 .people-txt {
	width: 72%;
}
.sports-underbox3 .people-txt h5 {
	color: #d80c18;
	font-size: 2.0rem;
	line-height: 1.5;
	font-weight: 700;
	margin-bottom: 15px;
}
.sports-underbox3 .people-txt .club {
	font-size: 1.6rem;
}
.sports-underbox3 .people-txt .name {
	font-size: 2.0rem;
	font-weight: 700;
}
.sports-underbox3 .people-txt .name small {
	font-size: 1.6rem;
}
.sports-underbox3 .people-txt .name .year {
	font-size: 1.2rem;
}
.sports-underbox3 .people-comment {
	width: 100%;
	margin-top: 20px;
	order: 3;
}
.sports-underbox3 .box-right {
	width: 55%;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.sports-underbox3 .box-right .tag {
	display: block;
	position: absolute;
	background: #d80c18;
	color: #fff;
	font-size: 1.6rem;
	padding: 5px 10px;
	line-height: 1.5;
	left: 0;
	top: 0;
	z-index: 1;
}
.sports-underbox3 .box-right > div {
	width: 49%;
	margin-left: 2%;
}
.sports-underbox3 .box-right > div:nth-child(2n+1) {
	margin-left: 0;
}
.sports-underbox3 img {
	max-width: 100%;
	width: 100%;
	height: auto;
}
.sports-underbox3-wrap {
	display: flex;
	flex-wrap: wrap;
}
.sports-underbox3.type2 {
	width: 46%;
	margin-left: 4%;
	display: block;
}
.sports-underbox3.type2:nth-child(2n+1) {
	margin-left: 0;
}
.sports-underbox3.type2 .box-right {
	width: 100%;
	margin-bottom: 30px;
}

.memory-inner {
	background: #fff;
	padding: 2em
}

ul.dot-list li {
	position: relative;
	padding-left: 1em;
	margin-bottom: 1vw;
	font-size: 1.5rem;
	line-height: 1.8em
}

ul.dot-list li::before {
	content: "";
	position: absolute;
	background: #000;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	left: 0;
	top: 1.2rem
}

.memory-item dt {
	position: relative;
	background: #d80c18;
	color: #fff;
	font-size: calc(1.3rem + .3vw);
	font-weight: 600;
	letter-spacing: .1em;
	padding: 15px 15px 15px calc(15px + 4vw);
	margin-bottom: 1vw;
	cursor: pointer
}

.memory-item dt::after,
.memory-item dt::before {
	content: "";
	position: absolute;
	background: #fff;
	width: 1.5vw;
	height: 2px;
	top: 50%;
	left: 1vw;
	transform: translateY(-50%);
	transition: all .3s
}

.memory-item dt::after {
	transform: translateY(-50%) rotate(90deg)
}

.memory-item dt.open::after {
	transform: translateY(-50%)
}

.memory-item dd {
	padding: 2vw
}

ul.sports-facility-list {
	display: flex;
	flex-wrap: wrap
}

ul.sports-facility-list li {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2vw
}

ul.sports-facility-list li h4.bold-title {
	margin-bottom: 10px
}

ul.sports-facility-list li .facility-photo {
	margin-bottom: 10px
}

ul.sports-facility-list li .facility-photo img {
	width: 100%
}

ul.sports-facility-list li.dubble {
	width: 66%
}

ul.sports-facility-list li.dubble .dub-flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}

ul.sports-facility-list li.dubble .dub-flex .facility-photo {
	width: 48.5%;
	margin-bottom: 1.5vw
}

ul.sports-facility-list li.mr0 {
	margin-right: 0
}

ul.sports-facility-list li:nth-of-type(3n) {
	margin-right: 0
}

ul.flex-graduate {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2vw
}

ul.flex-graduate li {
	width: calc((100% - 60px)/ 4)
}

ul.flex-graduate li .graduate-photo {
	width: 100%;
	margin-bottom: 5px
}

ul.flex-graduate li .graduate-photo img {
	width: 100%
}

ul.flex-graduate li .prof {
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.9em;
	text-align: center
}

h3.main-serif-title {
	font-family: "Noto Serif JP", serif;
	font-size: calc(3rem + 1vw);
	font-weight: 500;
	color: #d80c18;
	letter-spacing: .15em;
	line-height: 1.3em;
	margin-bottom: 2vw
}

.albirex h3.main-serif-title {
	color: #ed6c00
}

.ad h3.main-serif-title {
	position: relative;
	font-size: calc(2.4rem + 1vw)
}

.ad h3.main-serif-title span.logo {
	position: absolute;
	background: url(../images/campuslife/sports/sports-ad-logo.svg) no-repeat;
	background-size: contain;
	width: 5vw;
	height: 5vw;
	right: 0;
	top: 50%;
	transform: translateY(-50%)
}

p.sub-copy {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 2.2em
}

h4.center-title {
	font-family: "Noto Sans JP", serif;
	color: #fff
}

.support-flow-box {
	position: relative;
	border: solid 2px #fff
}

.support-flow-box p.support-title {
	display: block;
	width: 100%;
	font-size: calc(2rem + .5vw);
	font-weight: 500;
	line-height: 100%;
	padding: 10px 0;
	text-align: center;
	color: #fff;
	border-bottom: 2px solid #fff
}

.support-flow-box:last-child {
	margin-top: 3vw
}

.support-flow-box:last-child::before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.75vw 8vw 0 8vw;
	border-color: #fff transparent transparent transparent;
	top: -2.5vw;
	left: 50%;
	transform: translateX(-50%)
}

ul.support-list {
	background: rgba(255, 255, 255, .2);
	padding: 1.5vw;
	display: flex;
	flex-wrap: wrap
}

ul.support-list li {
	width: 24%;
	margin-bottom: 1.5vw;
	margin-right: calc(4% / 3)
}

ul.support-list li p.title {
	color: #fff;
	text-align: center;
	font-size: calc(1.3rem + .3vw);
	font-weight: 500;
	line-height: 1em;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 4vh;
	margin-bottom: 5px
}

ul.support-list li p.title span {
	font-size: .6em
}

ul.support-list li .support-photo {
	margin-bottom: 5px
}

ul.support-list li .support-photo img {
	width: 100%
}

ul.support-list li p.job {
	color: #fff;
	text-align: center;
	font-size: calc(1.2rem + .2vw);
	font-weight: 500;
	line-height: 1.8em
}

ul.support-list li:nth-of-type(4n) {
	margin-right: 0
}

ul.change-list {
	background: rgba(255, 255, 255, .2);
	display: flex
}

ul.change-list li {
	width: calc(100% / 3);
	padding: 15px 0;
	text-align: center;
	color: #fff;
	font-size: calc(1.4rem + .3vw);
	font-weight: 500;
	letter-spacing: .15em;
	border-right: solid 1px #fff
}

ul.change-list li:last-child {
	border-right: unset
}

p.paragraph span {
	color: #d80c18;
	font-weight: 500;
	border-bottom: 2px solid #fff100
}

.albirex-flex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 4vw
}

.albirex-flex .albirex-photo {
	width: 25%
}

.albirex-flex .albirex-photo img {
	width: 100%
}

.albirex-flex .albirex-photo p.cr-text {
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: normal;
	margin-top: 10px
}

.albirex-flex .albirex-text {
	width: 70%
}

.albirex-flex .albirex-text h4.bold-title {
	margin-bottom: 5px
}

.albirex-flex .albirex-text p.prof {
	text-align: right;
	font-size: calc(1.2rem + .2vw);
	font-weight: 500;
	margin-bottom: 5px
}

.albirex-flex .albirex-text p.prof span {
	font-size: calc(1.4rem + .3vw);
	font-weight: 500
}

.bg-inner {
	background: #e0e1e1;
	padding: 1em
}

.bg-inner>:last-child {
	margin-bottom: 0
}

.sports.ad .bg-inner {
	padding: 1em 1.5em;
	margin-bottom: 1vw
}

.sports.ad .bg-inner h4.bold-title {
	letter-spacing: .1em
}

.sports.ad .bg-inner .paragraph span {
	border-bottom: unset;
	margin-bottom: 5px;
	color: #000
}

p.bold-text {
	font-size: calc(1.2rem + .2vw);
	font-weight: 500;
	margin-bottom: 5px
}

ul.example-list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 4vw
}

ul.example-list li {
	width: 32%
}

ul.example-list li p.paragraph {
	margin-bottom: 0
}

ul.example-list li .example-photo {
	width: 100%;
	margin-bottom: 10px
}

ul.example-list li .example-photo img {
	width: 100%
}

.message-container>.content-inner {
	border-top: 10px solid #fff
}

.message-container>.content-inner.player-voice {
	background: rgba(227, 226, 152, .6);
	width: 100%;
	padding: 3vw 10vw;
	margin: unset
}

.message-container>.content-inner:last-of-type {
	border-bottom: 10px solid #fff
}

.message-content {
	width: 100%;
	display: flex;
	justify-content: space-between
}

.message-content .photo-block {
	width: 12vw
}

.message-content .photo-block .title {
	width: 100%;
	padding: .3vw 1vw;
	border: 1px solid #d80c18;
	color: #d80c18;
	font-size: calc(1.2rem + .2vw);
	line-height: 1.2;
	font-weight: 500
}

.player-voice .message-content .photo-block .title {
	border: 1px solid #000;
	color: #000
}

.message-content .photo-block img {
	display: block;
	margin-top: 10px;
	width: 100%
}

.message-content .photo-block .name {
	margin-top: 10px;
	color: #d80c18;
	line-height: 1.4;
	font-weight: 500
}

.message-content .photo-block .name span {
	display: block;
	font-size: calc(1.1rem + .2vw);
	font-weight: 500
}

.message-content .career-block {
	width: 58vw;
	background: #fff;
	padding: 2vw 2.5vw
}

.message-content .career-block .title {
	color: #d80c18;
	line-height: 1.2;
	font-weight: 600
}

.message-content .career-block .career-text {
	margin-top: 10px;
	font-size: calc(1.1rem + .2vw)
}

.message-content .voice-block {
	width: 58vw
}

.message-content .voice-block .catch {
	line-height: 1.7;
	font-weight: 600
}

.message-content .voice-block .voice-text {
	margin-top: 10px;
	font-size: calc(1.1rem + .2vw)
}

.message-content .voice-block .name {
	margin-top: 1.5vw;
	line-height: 1.4;
	font-weight: 500
}

.message-content .voice-block .name span {
	display: inline-block;
	font-size: calc(1.1rem + .2vw);
	font-weight: 500;
	margin-right: 1em
}

@media screen and (max-width:1024px) and (orientation:portrait) {
	ul.c-pagelinks {
		justify-content: space-evenly;
		gap: 10px
	}

	ul.c-pagelinks li {
		width: 26.5vw;
		height: 26.5vw;
		max-width: 250px;
		max-height: 250px;
		margin-bottom: .5vmax;
		margin-bottom: .5lh
	}

	ul.c-pagelinks li a .c-linkbox .icon {
		width: 8vw;
		height: 8vw;
		margin-bottom: 1px
	}

	ul.c-pagelinks li a .c-linkbox p.title {
		font-size: calc(1.1rem + .5vw)
	}

	ul.club-lists li.club-box {
		margin-bottom: 15px;
		flex-direction: column
	}

	ul.club-lists li.club-box .c-photo {
		width: 100%
	}

	ul.club-lists li.club-box .c-text-wrap {
		width: 100%
	}

	ul.club-lists li.club-box .c-text-wrap h4.c-box-title {
		margin-bottom: 3vw
	}

	ul.club-lists li.club-box .c-text-wrap p.text {
		font-size: calc(1rem + .8vw);
		margin-bottom: 3vw
	}

	ul.club-lists li.club-box .c-text-wrap dl.c-content {
		align-items: baseline
	}

	ul.club-lists li.club-box .c-text-wrap dl.c-content dt p.c-title {
		padding: 2px;
		overflow-wrap: break-word
	}

	ul.club-lists li.club-box .c-text-wrap dl.c-content dd {
		font-size: calc(1rem + .4vw);
		overflow-wrap: break-word
	}

	ul.club-lists li.club-box:nth-of-type(2n) {
		flex-direction: column
	}

	.l-top-content {
		flex-direction: column
	}

	.l-top-content .l-photo {
		width: 100%;
		margin-bottom: .5vmax;
		margin-bottom: .5lh
	}

	.l-top-content .l-photo::before {
		width: 25vw;
		height: 12vw
	}

	.l-top-content .l-textbox {
		width: calc(100% - 10vw);
		padding-right: unset;
		margin-inline: auto
	}

	ul.l-link-tab li a p.l-linktitle {
		font-size: calc(1.2rem + .3vw)
	}

	ul.l-link-tab li a p.l-linktitle::before {
		width: 23vw;
		height: 6vw;
		top: -6vw
	}

	ul.l-link-tab li:nth-of-type(1) a p.l-linktitle::before {
		width: 16vw;
		height: 6vw;
		top: -7vw
	}

	.l-content .l-main-photo .l-main-prof {
		width: 72.5%;
		bottom: -2em;
		padding: 1em 0 .5em 1.5em
	}

	.l-content .l-main-photo .l-main-prof h4.p-name {
		font-size: calc(1.2rem + .3vw)
	}

	.l-content .l-main-photo .l-main-prof h4.p-name span {
		font-size: calc(1.8rem + .5vw)
	}

	.l-content .l-main-photo .l-main-prof p.p-text {
		font-size: 1.4rem
	}

	.l-content .l-main-text {
		padding-block: 4vh 4em;
		flex-direction: column
	}

	.l-content .l-main-text .l-l-box {
		width: 100%
	}

	.l-content .l-main-text .l-l-box .l-pickup-content {
		margin-bottom: 1vmax;
		margin-bottom: 1lh;
		flex-direction: column
	}

	.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo {
		width: 80%;
		height: auto;
		margin-bottom: .25vmax;
		margin-bottom: .25lh
	}

	.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo::before {
		width: 100%;
		height: 100%;
		right: unset;
		left: 0
	}

	.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-text {
		width: 100%
	}

	.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-text p.p-title {
		font-size: calc(1.3rem + .5vw)
	}

	.l-content .l-main-text .l-l-box dl.l-qa-content {
		margin-bottom: 3vw
	}

	.l-content .l-main-text .l-l-box dl.l-qa-content dt {
		padding-left: 6vw;
		margin-bottom: 2vw
	}

	.l-content .l-main-text .l-l-box dl.l-qa-content dt::before {
		font-size: 5vw;
		top: unset
	}

	.l-content .l-main-text .l-l-box dl.l-qa-content dd {
		padding-left: 6vw
	}

	.l-content .l-main-text .l-l-box dl.l-qa-content dd::before {
		font-size: 5vw;
		top: unset
	}

	.l-content .l-main-text .l-r-box {
		width: 100%;
		padding-left: unset;
		transform: unset
	}

	.oneday-content .oneday-title .en-word {
		width: 20vw
	}

	.oneday-content .oneday-title h3.jp-title {
		font-size: calc(1.3rem + 1vw)
	}

	ul.news-contentlist {
		flex-wrap: wrap
	}

	ul.news-contentlist li {
		width: calc(97% / 2);
		margin-bottom: 40px
	}

	ul.news-contentlist li:nth-of-type(2) {
		margin-right: 0
	}

	ul.news-contentlist li a .img {
		height: 12vh
	}

	.cafe-band {
		padding: 4vw 0
	}

	.cafe-band p.time {
		margin-inline: 5vw
	}

	.cafe-band p.time span {
		border-radius: 20vh;
		display: block
	}

	.paragraph.inner {
		padding-inline: 5vw
	}

	.popular-inner {
		padding-inline: 5vw;
		padding-top: 5vw
	}

	.popular-inner ul.p-num-lists {
		width: 100%
	}

	.popular-inner ul.p-num-lists li {
		font-size: calc(1.3rem + .7vw)
	}

	.popular-inner .menu-flex {
		flex-direction: column-reverse
	}

	.popular-inner .menu-flex .menu-textbox {
		width: 60%;
		margin-inline: auto
	}

	.popular-inner .menu-flex .menu-textbox .text {
		padding: 1em
	}

	.popular-inner .menu-flex ul.p-menu-lists {
		width: 100%
	}

	.menu-inner dl.more-menu dt .accordion-btn {
		width: 6vw;
		height: 6vw
	}

	.menu-inner dl.more-menu dt .accordion-btn span::after,
	.menu-inner dl.more-menu dt .accordion-btn span::before {
		width: 3vw
	}

	.menu-inner dl.more-menu dd ul.menu-lists li {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 3vw
	}

	.menu-inner dl.more-menu dd ul.menu-lists li:nth-of-type(3n) {
		margin-right: 4%
	}

	.menu-inner dl.more-menu dd ul.menu-lists li:nth-of-type(2n) {
		margin-right: 0
	}

	.color-inner {
		padding-inline: 5vw
	}

	.cafe-flex {
		flex-direction: column
	}

	.cafe-flex>*+* {
		margin-top: .25vmax;
		margin-top: .25lh
	}

	.cafe-flex .cafe-photo {
		width: 100%
	}

	.cafe-flex .cafe-text {
		width: 100%;
		padding-right: unset
	}

	.cafe-flex.reverse {
		flex-direction: column
	}

	.cafe-flex.reverse .cafe-text {
		padding-inline: unset
	}

	.townguide-map {
		transform: translateY(-4vh)
	}

	.townguide-map .townguide-map-icon {
		left: 2vw;
		top: -3vw;
		bottom: inherit;
		width: 24vw;
		height: 24vw
	}

	ul.townguide-list li {
		width: 100%
	}

	ul.townguide-list li .img {
		width: 100%;
		height: 40vw;
		overflow: hidden
	}

	ul.townguide-list li .img .icon {
		top: 3vw;
		left: 3vw;
		bottom: inherit;
		width: 10vw;
		height: 10vw;
		font-size: 5vw;
		border-radius: 5vw;
		border-width: 2px;
	}

	ul.townguide-list li .img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block
	}

	ul.townguide-list li dl {
		padding: 1vh 0 5vh
	}

	ul.townguide-list li dl dt {
		height: 3em;
		font-size: 1.6rem
	}

	ul.townguide-list li dl dd {
		line-height: 1.6em
	}

	.bus-icon {
/*		width: 20vw;*/
/*		margin: 3vh auto 2vh*/
		left: -25px;
		top: -35px;
		width: 70px;
		height: 70px;
	}

	.bus-topics {
		padding: 8vw 4vw 4vw;
	}

	.bus-topics dl dt {
		font-size: 1.6rem
	}

	.bus-topics dl dd {
		font-size: 1.4rem
	}

	.bus-topics ul.bus-point {
		padding: 1vh 0 3vh
	}

	.bus-topics ul.bus-point li {
		width: 49%;
		font-size: 1.3rem;
		margin-bottom: 1vh;
		letter-spacing: 0;
		padding: 2vh 0;
		border-radius: 2vw
	}

	.bus-topics ul.bus-point li span {
		font-size: 2.5rem
	}

	.bus-topics p.pickup-text {
		text-align: center;
		font-size: 1.6rem;
		border-radius: 2vw;
		margin: 4vh 0 0
	}

	.bus-topics p.pickup-text span {
		font-size: 3.2rem
	}

	.number-content-wrap {
		background: #e3e3df;
		padding: 5vh 4vw;
		flex-direction: column
	}

	.number-content-wrap .number-content {
		width: 100%;
		padding: 3vh 4vw 4vh;
		border-radius: 5vw;
		margin-bottom: 2vh
	}

	.number-content-wrap .number-content h5.number-content-title {
		width: fit-content;
		height: 8vw;
		font-size: 1.7rem;
		border-radius: 4vw;
		margin: 0 auto 2vh
	}

	.number-content-wrap .number-content .number-content-img {
		margin: 0 auto 1vh
	}

	.number-content-wrap .number-content a {
		position: absolute;
		right: 4vw;
		bottom: 2vw;
		font-size: 1.3rem;
		letter-spacing: 0
	}

	.number-content-wrap .number-content a::after {
		content: "";
		width: 1.2em;
		height: 1.2em;
		margin-left: .3em;
		transform: translateY(.2em)
	}

	.number-content-wrap .number-content .number-content-map {
		flex-direction: column
	}

	.number-content-wrap .number-content .number-content-map .number-content-img {
		width: 35%;
		padding-top: 0;
		margin: 0 auto 2vh
	}

	.number-content-wrap .number-content .number-content-map .number-content-img+.number-content-img {
		width: 100%;
		padding: 0
	}

	.number-content-wrap .number-content .number-content-access {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap
	}

	.number-content-wrap .number-content .number-content-access .number-content-img {
		width: 100%
	}

	.number-content-wrap .number-content .number-content-access .number-content-img+.number-content-img {
		width: 70%;
		margin: 2vh auto 0;
		padding: 0
	}

	.number-content-wrap .number-content.full {
		width: 100%
	}

	.number-content-wrap .number-content.mid {
		width: 100%
	}

	.number-content-wrap .number-content.small {
		width: 100%;
		padding: 3vh 8vw
	}

	.number-content-wrap .number-content.num01 .number-content-img {
		width: 70%
	}

	.number-content-wrap .number-content.num01 .number-content-img+.number-content-img {
		width: 100%
	}

	.number-content-wrap .number-content-set {
		width: 100%
	}

	.number-content-wrap .number-content-set .number-content {
		width: 100%
	}

	.campuslife.sports.top .page-head .mainvisual {
		height: 75vw;
	}

	.campuslife.sports.top .page-head .mainvisual .mv-sports-photo {
		/*height: 33vw*/
		height: 55vw
	}

	.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo01 {
		/*top: calc(1.8rem + .5vw + 5vw)*/
		top: 20vw;
	}

	.campuslife.sports.top .page-head .mainvisual .mv-sports-photo.photo02 {
		bottom: -16vw
	}

	.campuslife.sports.top .page-head .mainvisual p.mv-sports-copy {
		top: calc(1.8rem + .5vw + 5px + 2.5px + 5vw);
		right: 1vw
	}

	.campuslife.sports.top .page-head .mainvisual p.mv-sports-copy span {
		font-size: 6.5vw
	}

	.sports.under .page-head .mainvisual {
		height: 35vw
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap {
		width: 45%;
		justify-content: center
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title {
		margin-bottom: 1vw
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title .main {
		font-size: calc(1rem + 1vw);
		margin-bottom: .5vw;
		padding-bottom: .5vw;
		padding-inline: 1ch
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap h2.sports-page-title .sub {
		font-size: calc(1rem + .3vw)
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dt {
		font-size: calc(1rem + .3vw);
		margin-right: 1.5vw
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dd {
		font-size: calc(1rem + .2vw);
		padding-left: 1.5vw
	}

	.sports.under .page-head .mainvisual .sports-mv-wrap .sports-manager dd span {
		font-size: calc(1.1rem + .3vw)
	}

	.sports.ad .page-head .mainvisual h2.page-band-title,
	.sports.support .page-head .mainvisual h2.page-band-title,
	.sports.facility .page-head .mainvisual h2.page-band-title {
		padding-inline: 1ch;
		font-size: calc(2rem + 1vw)
	}

	.sports.albirex .page-head .mainvisual .mv-albirex-photo p.cr-text {
		bottom: 0;
		font-size: 1rem
	}

	.page-head h2.page-band-title {
		padding-inline: 1ch;
		font-size: calc(2rem + 1vw)
	}

	.campuslife.sports.top .page-head ul.breadcrumb {
		position: absolute;
		bottom: 0;
		left: 0;
		margin-bottom: unset;
		margin-inline: 6vw
	}

	.sports .page-head {
		margin-top: calc(70px + $mb-sports-heght - 1px)
	}

	.sports.ad .page-head,
	.sports.support .page-head {
		margin-top: calc(70px + $mb-sports-heght - 1px)
	}

	.sports.top .page-head {
		margin-top: calc(70px + $mb-sports-heght - 1px);
		position: relative;
		/*padding-bottom: 25vw*/
		padding-bottom: 12vw;
	}

	h3.border-title {
		padding-inline: .5em;
		margin-bottom: 4vw
	}

	h3.border-title span.pop-text {
		top: calc(-5.5vw - .5em)
	}

	.albirex h3.border-title {
		padding-right: calc(30px)
	}

	.albirex h3.border-title span.mark {
		right: 2vw;
		min-width: 30px;
		height: 1.2em
	}

	.en-wide-word {
		margin-bottom: 6vw;
		padding-inline: 6vw
	}

	ul.sports-index-list {
		column-gap: 4%
	}

	ul.sports-index-list li {
		width: 100%;
		margin-bottom: calc(4vw + 20px + 1.5rem);
		margin-right: unset;
		flex-grow: 1;
		flex-basis: 40ch
	}

	ul.sports-index-list li a .sports-photo {
		height: 20vw;
		min-height: 200px
	}

	ul.sports-index-list li a .sports-link-btn {
		min-width: 50px
	}

	ul.insta-link li {
		width: 48%
	}

	ul.round-link-list {
		column-gap: 4%
	}

	ul.round-link-list li {
		width: 100%;
		margin-right: unset;
		margin-bottom: 2vw;
		flex-grow: 1;
		flex-basis: 40ch
	}

	ul.round-link-list.twin li {
		width: 100%;
		margin-right: unset
	}

	ul.round-link-list.twin li:nth-of-type(3n) {
		margin-right: unset
	}

	ul.sports-news-list li a {
		align-items: flex-start;
		flex-direction: column
	}

	ul.sports-news-list li a p.date {
		margin-right: unset
	}

	.sports.support .content-inner {
		margin-bottom: 8vh
	}

	.sports-underbox {
		margin-bottom: 4vw;
		flex-direction: column
	}

	.sports-underbox>*+* {
		margin-top: 2vw
	}

	.sports-underbox .flex-photo {
		width: 100%
	}

	.sports-underbox .flex-photo .cr-text {
		margin-top: 0
	}

	.sports-underbox .flex-text {
		width: 100%
	}

	.sports-underbox.ph30 .flex-photo {
		width: 100%
	}

	.sports-underbox.ph30 .flex-text {
		width: 100%
	}

	.sports-underbox.ph20 .flex-photo {
		margin-inline: auto;
		width: 40%
	}

	.sports-underbox.ph20 .flex-text {
		width: 100%
	}

	.sports-underbox.gray {
		padding: 4vw;
		margin-bottom: 2vw
	}

	.sports-underbox.re {
		flex-direction: column
	}

	.sports-underbox2 {
		border-width: 2px;
		border-radius: 20px;
		margin-top: 10vw;
		padding: 25px 20px 20px;
	}
	.sports-underbox2 .balloon {
    border-width: 2px;
		border-radius: 10px;
    padding: 4px 20px;
    left: 20px;
    top: -20px;
    font-size: 1.5rem;
	}
	.sports-underbox2 h4 {
		font-size: 1.8rem;
	}

	.sports-underbox3 {
		display: block;
		padding-top: 10px;
		padding-bottom: 30px;
		margin-bottom: 20px;
	}
	.sports-underbox3 .box-left {
		width: auto;
		margin-bottom: 15px;
	}
	.sports-underbox3 .people {
		align-items: flex-start;
	}
	.sports-underbox3 .people-img {
		width: 23%;
	}
	.sports-underbox3 .people-txt h5 {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	.sports-underbox3 .people-txt .club {
		font-size: 1.2rem;
		line-height: 1;
	}
	.sports-underbox3 .people-txt .name {
		font-size: 1.6rem;
	}
	.sports-underbox3 .people-txt .name small {
		font-size: 1.2rem;
	}
	.sports-underbox3 .people-txt .name .year {
		font-size: 1.1rem;
	}
	.sports-underbox3 .people-comment {
		margin-top: 10px;
	}
	.sports-underbox3 .box-right {
		width: auto;
		margin-top: 15px;
	}
	.sports-underbox3 .box-right .tag {
		font-size: 1.3rem;
		padding: 3px 10px;
	}
	.sports-underbox3-wrap {
		display: block;
	}
	.sports-underbox3.type2 {
		width: auto;
		margin-left: 0;
	}
	.sports-underbox3.type2:last-child {
		border-bottom: 0;
	}
	.sports-underbox3.type2 .box-right {
		margin-top: 0;
		margin-bottom: 20px;
	}

	.memory-inner {
		padding: 5vw
	}

	.memory-item dt::after,
	.memory-item dt::before {
		min-width: 15px;
		left: 2vw
	}

	ul.sports-facility-list li {
		width: 100%;
		margin-right: 0
	}

	ul.sports-facility-list li.dubble {
		width: 100%
	}

	ul.flex-graduate {
		flex-wrap: wrap;
		gap: 2ch
	}

	ul.flex-graduate li {
		width: calc((100% - 2ch)/ 2)
	}

	h3.main-serif-title {
		font-size: calc(2.4rem + 1vw);
		margin-bottom: 4vw
	}

	.ad h3.main-serif-title {
		font-size: calc(1.4rem + 1vw);
		padding-right: 50px
	}

	.ad h3.main-serif-title span.logo {
		min-height: 50px;
		min-width: 50px
	}

	.support-flow-box:last-child {
		margin-top: 10vw
	}

	.support-flow-box:last-child::before {
		border-width: 2.5vw 8vw 0 8vw;
		top: -6.5vw
	}

	ul.support-list {
		padding: 2.5vw
	}

	ul.support-list li {
		width: 48%;
		margin-bottom: 4.5vw;
		margin-right: calc(4% / 2)
	}

	ul.support-list li p.title {
		font-size: calc(1.1rem + .6vw);
		margin-bottom: 10px
	}

	ul.support-list li p.title span {
		font-size: .5em
	}

	ul.support-list li p.job {
		line-height: 1.6em
	}

	ul.change-list {
		flex-wrap: wrap
	}

	ul.change-list li {
		width: calc(100% / 1);
		border-right: unset;
		border-bottom: solid 1px
	}

	ul.change-list li:last-child {
		border-bottom: unset
	}

	.albirex-flex {
		margin-bottom: 8vw;
		flex-wrap: wrap
	}

	.albirex-flex>*+* {
		margin-top: 2vw
	}

	.albirex-flex .albirex-photo {
		margin-inline: auto;
		width: 50%
	}

	.albirex-flex .albirex-photo p.cr-text {
		font-size: 1rem;
		margin-top: 0
	}

	.albirex-flex .albirex-text {
		width: 100%
	}

	.sports.ad .bg-inner {
		margin-bottom: 2vw
	}

	ul.example-list {
		flex-wrap: wrap;
		row-gap: 4vw
	}

	ul.example-list li {
		width: 48%
	}

	.message-container>.content-inner.player-voice {
		padding-block: 4vw
	}

	.message-content {
		flex-wrap: wrap
	}

	.message-content>*+* {
		margin-top: 2vw
	}

	.message-content .photo-block {
		display: flex;
		flex-wrap: wrap;
		width: 100%
	}

	.message-content .photo-block .title {
		font-size: calc(1.2rem + .6vw);
		margin-bottom: 4vw
	}

	.message-content .photo-block img {
		margin-top: unset;
		width: 40%
	}

	.message-content .photo-block .name {
		margin-top: unset;
		font-size: calc(1.3rem + .5vw);
		width: 55%;
		margin-left: 5%
	}

	.message-content .photo-block .name span {
		font-size: calc(1rem + .5vw)
	}

	.message-content .career-block {
		width: 100%
	}

	.message-content .voice-block {
		width: 100%
	}

	.message-content .voice-block .name {
		margin-top: 2.5vw
	}
}

@media screen and (min-width:768px) and (max-width:1024px) and (orientation:portrait) {
	.l-content .l-main-photo .l-main-prof {
		width: 40%
	}

	.l-content .l-main-text .l-l-box .l-pickup-content .l-pickup-photo::before {
		width: 45%
	}
}



/* =======================================
強化指定クラブ 充実のスポーツ施設
========================================*/
.sports.facility .facility-box {
	display: flex;
	flex-wrap: wrap;
}
.sports.facility .facility-box > .sports-underbox {
	width: 48%;
	margin-left: 4%;
	margin-bottom: 60px;
	display: block;
}
.sports.facility .facility-box > .sports-underbox.is-2024new {
	position: relative;
	overflow: hidden;
}
.sports.facility .facility-box > .sports-underbox.is-2024new:before {
	display: block;
	content: "2024年4月新設";
	position: absolute;
	color: #fff;
	top: 70px;
	right: -70px;
	font-size: 18px;
	background: red;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 5px 90px;
	line-height: 1.5;
	font-weight: bold;
	z-index: 1;
}
.sports.facility .facility-box > .sports-underbox:nth-child(2n+1) {
	margin-left: 0;
}
.sports.facility .facility-box img {
	max-width: 100%;
	height: auto;
}
.sports.facility .facility-box .img1 {
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	.sports.facility .facility-box {
		display: block;
	}
	.sports.facility .facility-box > .sports-underbox {
		width: auto;
		margin-left: 0;
		margin-bottom: 20px;
	}
	.sports.facility .facility-box > .sports-underbox:last-child {
		margin-bottom: 0;
	}
	.sports.facility .facility-box > .sports-underbox.is-2024new:before {
		top: 35px;
		right: -53px;
		font-size: 12px;
		padding: 3px 50px;
	}
	.sports.facility .facility-box .img1 {
		margin-bottom: 20px;
	}
}


@media screen and (max-width: 1024px) and (orientation: portrait) {
    ul.sports-menu-list>li:nth-of-type(n+4) {
        width: 33%;
    }
}


@media screen and (min-width: 768px) {
	.sp-only {display: none !important;}
}
@media screen and (max-width: 767px) {
	.pc-only {display: none !important;}
}