@charset "utf-8";
/*--------------------------------------------------------------------------
  settings
---------------------------------------------------------------------------*/
:root {
  --dark: #333;
  --light: #fff;
  --beige: #F8F6F0;
  --green: #AFDCDD;
  --yellow: #FDE939;
	--hover: #239D9F;
  --cat01: #38BB8D; /* 理学療法学科 */
	--cat02: #4E88C7; /* 柔道整復学科 */
	--cat03: #F79433; /* 鍼灸学科 */
	--cat04: #00B6BD; /* 口腔保健学科 */
	--cat05: #25AAE1; /* 理学療法学専攻 */
	--cat06: #8BC751; /* 作業療法学専攻 */
	--cat07: #F3859B; /* 看護学科 */
	--cat08: #22A1D6; /* 観光学科 */
}
/*--------------------------------------------------------------------------
  html
---------------------------------------------------------------------------*/
html {
	overflow-y: scroll;
	scroll-behavior: smooth;
	font-size: 62.5%;
}
/*--------------------------------------------------------------------------
  body
---------------------------------------------------------------------------*/
body {
	position: relative;
	color: #333;
	background: #FFF;
	font-family: "YakuHanJP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-size: min(1.04vw, 1.6rem);
	line-height: 1.8;
	letter-spacing: .1em;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
.body-overlay {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5000;
	display: block;
	inset: 0;
	content: "";
	background: var(--light);
}
.is-menuOpen {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* fonts */
.serif {
	font-family: "Gilda Display", "Zen Old Mincho", "YuMincho", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.en {
	font-family: "Gilda Display", serif;
}
.serif-smooth {
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.sans-serif {
    font-family: "YakuHanJP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
}
/*--------------------------------------------------------------------------
  base link
---------------------------------------------------------------------------*/
a {
	outline: none;
}
a:link,
a:visited {
	text-decoration: none;
	color: #333;
}
.ophover {
	transition: opacity ease .3s;
}
.ophover:hover {
	opacity: .7;
}
.comingsoon {
	opacity: .3;
	pointer-events: none;
}
.phone-link {
	pointer-events: none;
}
/*--------------------------------------------------------------------------
  img
---------------------------------------------------------------------------*/
img {
	max-width: 100%;
	height: auto;
	/*-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: crisp-edges;*/
}
.b-radius {
	border-radius: 10px;
}
.b-radius-u {
	border-radius: 10px 10px 0 0;
}
.b-radius-r {
	border-radius: 0 10px 10px 0;
}
.b-radius-l {
	border-radius: 10px 0 0 10px;
}
.zoom-img {
	display: block;
	border-radius: 10px;
	overflow: hidden;
}
.zoom-img img {
	transition: .5s;
}
a:hover .zoom-img img,
a.zoom-img:hover img {
	transform: scale(1.05, 1.05);
}
/*--------------------------------------------------------------------------
  Animation
---------------------------------------------------------------------------*/
.fade,
.fade01,
.fade02,
.fade03,
.fade04,
.blur {
	transition-duration: 1.5s;
}
.z-in,
.z-out {
	transition-duration: .5s;
}
.fade {
	opacity: 0;
	transform: translate(0, 0);
}
.fade01 {
	opacity: 0;
	transform: translate(0, 50px);
}
.fade02 {
	opacity: 0;
	transform: translate(0, -50px);
}
.fade03 {
	opacity: 0;
	transform: translate(-50px, 0);
}
.fade04 {
	opacity: 0;
	transform: translate(50px, 0);
}
.blur {
	-webkit-filter: blur(14px);
	filter: blur(14px);
}
.z-in {
	transform: scale(1.05, 1.05);
}
.z-out {
	transform: scale(0.95, 0.95);
}
.delay01 {
	transition-delay: 0.3s;
}
.delay02 {
	transition-delay: 0.6s;
}
.delay03 {
	transition-delay: 0.9s;
}
.delay04 {
	transition-delay: 1.2s;
}
.delay05 {
	transition-delay: 1.5s;
}
.mv {
	opacity: 1;
	-webkit-filter: blur(0);
	filter: blur(0);
	transform: translate(0, 0) scale(1, 1);
}
/* badge rotation */
@keyframes rotation {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}
.typewriter._first > *:nth-child(1){ transition-delay: 3.05s !important;}
.typewriter._first > *:nth-child(2){ transition-delay: 3.1s !important;}
.typewriter._first > *:nth-child(3){ transition-delay: 3.15s !important;}
.typewriter._first > *:nth-child(4){ transition-delay: 3.2s !important;}
.typewriter._first > *:nth-child(5){ transition-delay: 3.25s !important;}
.typewriter._first > *:nth-child(6){ transition-delay: 3.3s !important;}
.typewriter._first > *:nth-child(7){ transition-delay: 3.35s !important;}
.typewriter._first > *:nth-child(8){ transition-delay: 3.4s !important;}
.typewriter._first > *:nth-child(9){ transition-delay: 3.45s !important;}
.typewriter._first > *:nth-child(10){ transition-delay: 3.5s !important;}
.typewriter._first > *:nth-child(11){ transition-delay: 3.55s !important;}
.typewriter._first > *:nth-child(12){ transition-delay: 3.6s !important;}
.typewriter._first > *:nth-child(13){ transition-delay: 3.65s !important;}
.typewriter._first > *:nth-child(14){ transition-delay: 3.7s !important;}
.typewriter._first > *:nth-child(15){ transition-delay: 3.75s !important;}
.typewriter._first > *:nth-child(16){ transition-delay: 3.8s !important;}
.typewriter._first > *:nth-child(17){ transition-delay: 3.85s !important;}
.typewriter._first > *:nth-child(18){ transition-delay: 3.9s !important;}
.typewriter._first > *:nth-child(19){ transition-delay: 3.95s !important;}
.typewriter._first > *:nth-child(20){ transition-delay: 4s !important;}
.typewriter._first > *:nth-child(21){ transition-delay: 4.05s !important;}
.typewriter._first > *:nth-child(22){ transition-delay: 4.1s !important;}
.typewriter._first > *:nth-child(23){ transition-delay: 4.15s !important;}
.typewriter._first > *:nth-child(24){ transition-delay: 4.2s !important;}
.typewriter._first > *:nth-child(25){ transition-delay: 4.25s !important;}
.typewriter._first > *:nth-child(26){ transition-delay: 4s !important;}
.typewriter._first > *:nth-child(27){ transition-delay: 4.05s !important;}
.typewriter._first > *:nth-child(28){ transition-delay: 4.2s !important;}
.typewriter._first > *:nth-child(29){ transition-delay: 4.25s !important;}
.typewriter._first > *:nth-child(30){ transition-delay: 4.3s !important;}
.typewriter._first > *:nth-child(31){ transition-delay: 4.35s !important;}
.typewriter._first > *:nth-child(32){ transition-delay: 4.4s !important;}
.typewriter._first > *:nth-child(33){ transition-delay: 4.45s !important;}
.typewriter._first > *:nth-child(34){ transition-delay: 4.5s !important;}
.typewriter._first > *:nth-child(35){ transition-delay: 4.55s !important;}



/*--------------------------------------------------------------------------
  PC
---------------------------------------------------------------------------*/
.sp {
	display: none;
}
/* box-sizing ---*/
header,
footer,
nav,
main,
section,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd,
th,
td,
a,
span,
small,
strong,
em,
input,
select,
textarea,
button {
	box-sizing: border-box;
}
/*--------------------------------------------------------------------------
  Container
---------------------------------------------------------------------------*/
#Page {
	overflow: hidden;
}
.inner {
	max-width: 1340px;
	margin-inline: auto;
	padding: 0 20px;
}
.layout-box {
	display: flex;
	justify-content: space-between;
}
/*--------------------------------------------------------------------------
  header
---------------------------------------------------------------------------*/
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10000;
	width: 100%;
	opacity: 0;
	transition: 2s 1s ease-in;
}
header.start {
	opacity: 1;
}
.header-inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 10000;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding: 0 20px 10px;
	background: var(--light);
	transition: .3s;
}
#Header h1 img {
	width: 236px;
}
header.scroll .header-inner {
	padding: 0 20px 5px;
}
header.scroll .btn-trigger {
	top: 5px;
}
header.scroll #PcNav .utl-nav {
	margin-bottom: 5px;
}
.btn-trigger {
	position: fixed;
	right: 20px;
	top: 15px;
	z-index: 15000;
	width: 70px;
	height: 70px;
	cursor: pointer;
	transition: .3s;
}
.btn-trigger::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	inset: 0;
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.btn-trigger:hover::before {
	transform: scale(1.2, 1.2);
}
.btn-trigger.on::before {
	background: var(--light);
}
.btn-trigger span {
	position: absolute;
	left: 23px;
	display: block;
	width: 24px;
	height: 1px;
	background: var(--dark);
	transition: .3s;
}
.btn-trigger.on span {
	background: var(--green);
}
.btn-trigger span:nth-child(1) {
	top: 30px;
}
.btn-trigger span:nth-child(2) {
	top: 37px;
}
.btn-trigger.on span:nth-child(1) {
	top: 35px;
	transform: rotate(-45deg);
}
.btn-trigger.on span:nth-child(2) {
	top: 35px;
	transform: rotate(45deg);
}
/* ---------------------------------------------------------------------------
	#Gnav
	グローバルナビゲーション
--------------------------------------------------------------------------- */
.gnav-overlay {
	position: fixed;
	right: 0;
	top: 0;
	z-index: 11000;
	width: 400vw;
	height: 400vw;
	border-radius: 100vmax;
	background: var(--beige);
	transform: scale(0, 0) translate(50%, -50%);
	transform-origin: right top;
	transition-duration: 1.2s;
	transition-timing-function: ease-out;
}
.gnav-overlay.open {
	transform: scale(1, 1) translate(50%, -50%);
}
#Gnav {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 12000;
	display: none;
	width: 100%;
	height: 100vh;
	height: 100svh;
	overflow: auto;
}
.gnav-logo {
	position: absolute;
	top: 31px;
	left: 20px;
	width: 236px;
}
.gnav-wrapper {
	display: flex;
}
#Gnav .opencampus {
	width: 33.33vw;
	padding: 120px 0 5vh;
	background: var(--green);
}
#Gnav .opencampus h2 {
	position: relative;
	width: 28.32vw;
	margin: 0 auto 50px;
}
#Gnav .opencampus h2>img {
	width: 100%;
}
#Gnav .opencampus h2 .ico {
	position: absolute;
}
#Gnav .opencampus h2 .people01 {
	left: -0.2vw;
	top: -1.1vw;
	width: 6.5vw;
}
#Gnav .opencampus h2 .people02 {
	right: 2.8vw;
	top: -1.82vw;
	width: 2.8vw;
}
#Gnav .opencampus h2 .people03 {
	right: 14vw;
	bottom: -1.63vw;
	width: 5.4vw;
}
#Gnav .opencampus-bnr-list {
	width: 25.07vw;
	margin-inline: auto;
}
#Gnav .opencampus-bnr-list .btn-card {
	overflow: hidden;
}
#Gnav .opencampus-bnr-list li:nth-child(n+2) {
	margin-top: 15px;
}
#Gnav .opencampus-bnr-list .btn-card {
	background: var(--light);
}
#Gnav .opencampus-bnr-list .pic {
	flex-shrink: 0;
	width: 43%;
}
#Gnav .opencampus-bnr-list a:hover .pic img {
	transform: scale(1.05, 1.05);
}
#Gnav .opencampus-bnr-list .txt-area {
	margin: 0.65vw 1.3vw;
}
#Gnav .opencampus-bnr-list h3 {
	font-size: min(0.91vw, 1.4rem);
}
#Gnav .opencampus-bnr-list .txt-area .symbol::before {
	width: 0.78vw;
	height: 0.78vw;
}
#Gnav .opencampus-bnr-list .txt-area .symbol {
	right: 0.75vw;
	bottom: 0.8vw;
	width: 2.73vw;
	height: 2.73vw;
}
#Gnav .sns-list {
	display: flex;
	justify-content: center;
}
#Gnav .sns-list {
	margin-top: 80px;
}
#Gnav .sns-list li {
	margin: 0 0.65vw;
}
#Gnav .nav-area {
	width: 66.67vw;
	padding: 140px 0 5.86vw;
}
.gnav {
	display: flex;
	justify-content: space-between;
	width: 55.34vw;
	margin-inline: auto;
	margin-bottom: min(3.26vw, 50px);
}
.gnav a {
	position: relative;
}
.gnav a::after {
	position: absolute;
	left: 0;
	bottom: 0px;
	display: block;
	content: "";
	width: 100%;
	height: 1px;
	background: var(--dark);
	transform: scale(0, 1);
	transform-origin: left center;
	transition: .3s;
}
.gnav a:hover::after {
	transform: scale(1, 1);
}
.gnav>li>p {
	font-size: min(1.43vw, 2.2rem);
	line-height: 1.4;
	font-family: "Zen Old Mincho", "YuMincho", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.gnav>li>p+p,
.gnav .nav-middle+p {
	margin-top: min(2.93vw, 45px);
}
.gnav .nav-middle {
	margin-top: 0.98vw;
}
.gnav .nav-middle>p {
	font-size: min(1.04vw, 1.6rem);
}
.gnav .nav-middle .nav-middle-link>li:nth-child(n+2) {
	margin-top: min(1.63vw, 25px);
}
.gnav .nav-middle .nav-middle-link p {
	font-size: min(1.04vw, 1.6rem);
}
.gnav .nav-middle .nav-middle-link p+p {
	margin-top: min(0.65vw, 10px);
}
.gnav .nav-middle .nav-middle-link ul {
	padding-left: .5em;
	font-size: min(0.91vw, 1.4rem);
	line-height: 1.5;
}
.gnav .nav-middle .nav-middle-link ul li {
	margin-top: 0.33vw;
}
.gnav .nav-middle .nav-middle-link ul li a {
	display: flex;
	align-items: center;
	width: fit-content;
}
.gnav .nav-middle .nav-middle-link ul li a::before {
	content: "・";
}
.gnav .nav-middle .nav-middle-link ul li a::after {
	transform: translateX(.5em) scale(0, 1);
}
.gnav .nav-middle .nav-middle-link ul li a:hover::after {
	transform: translateX(.5em) scale(.95, 1);
}
.cv-bnr-list {
	display: flex;
	justify-content: space-between;
	max-width: 1300px;
	margin-inline: auto;
}
.cv-bnr-list li {
	width: 32.3%;
}
.cv-bnr-list li a {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 10px;
	color: var(--light);
}
.cv-bnr-list li a>img,
.cv-bnr-list li a>picture img {
	width: 100%;
}
.cv-bnr-list li a::before {
	position: absolute;
	left: 0;
	top: 0;
	inset: 0;
	display: block;
	content: "";
	background: rgb(0 0 0 / 50%);
	transition: .3s;
}
.cv-bnr-list li a:hover::before {
	backdrop-filter: blur(5px);
}
.cv-bnr-list p {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
	font-size: min(1.17vw, 1.8rem);
	line-height: 1;
}
.cv-bnr-list p span {
	display: block;
}
.cv-bnr-list p .ico {
	margin-bottom: 0.66vw;
}
.cv-bnr-list .ico01 {
	width: 1.82vw;
}
.cv-bnr-list .ico02 {
	width: 2.34vw;
}
.cv-bnr-list .ico03 {
	width: 2.54vw;
}
.cv-bnr-list p span:nth-child(2)::after {
	display: inline-block;
	width: min(0.98vw, 15px);
	height: min(0.98vw, 15px);
	margin-left: min(0.33vw, 5px);
	content: "";
	background: url(../../img/common/ico_blank_w.svg) no-repeat;
	background-size: 100% auto;
}
#Gnav .cv-bnr-list {
	width: 59.24vw;
}
.target-link-list {
	display: flex;
	justify-content: space-between;
	max-width: 1025px;
	margin-inline: auto;
}
.target-link-list li {
	width: 30%;
}
.target-link-list img {
	vertical-align: middle;
	margin-right: min(0.98vw, 15px);
}
.target-link-list .ico01,
.target-link-list .ico02 {
	transform: translateY(-5%);
	width: min(1.43vw, 22px);
}
.target-link-list .ico03 {
	transform: translateY(-15%);
	width: min(1.11vw, 17px);
}
#Gnav .target-link-list {
	max-width: 48vw;
	margin-top: min(3.26vw, 50px);
}
#Gnav .target-link-list li {
	width: 30%;
}
#Gnav .target-link-list img {
	vertical-align: middle;
	margin-right: min(0.52vw, 8px);
}
/* PcNav */
#PcNav {
	padding-right: 100px;
}
#PcNav .utl-nav {
	display: flex;
	justify-content: flex-end;
	align-items: end;
	margin-bottom: 10px;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: .05em;
}
#PcNav .utl-nav li:nth-child(n+2) {
	margin-left: 5px;
}
#PcNav .utl-nav a {
	position: relative;
	overflow: hidden;
	display: inline-block;
	padding: 10px 15px;
	border-radius: 100vmax;
	border: 1px solid var(--dark);
	background: var(--dark);
	color: var(--light);
	line-height: 1;
	font-size: 1.4rem;
	letter-spacing: .05em;
	transition: .8s;
}
#PcNav .utl-nav a.access {
	background: var(--yellow);
	border-color: var(--yellow);
	color: var(--dark);
}
#PcNav .utl-nav a::before {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	background: var(--light);
	transform: translate(-50%, -50%) scale(0, 0);
	border-radius: 50%;
	opacity: 0;
	transition: .6s;
	transition-timing-function: ease-out;
}
#PcNav .utl-nav a:hover,
#PcNav .utl-nav li.active a {
	color: var(--dark);
	background: var(--light);
}
#PcNav .utl-nav a:hover::before,
#PcNav .utl-nav li.active a::before {
	transform: translate(-50%, -50%) scale(30, 30);
	opacity: 1;
}
#PcNav .utl-nav a span {
	position: relative;
}
#PcNav .utl-nav a.tab {
    border-radius: 0 0 10px 10px;
    text-align: center;
    height: 60px;
    display: flex;
    align-items: flex-end;
}
#PcNav .utl-nav li:has(a.tab.tab_oc) {
	position: relative;
}
#PcNav .utl-nav a.tab.tab_oc {
	background: var(--yellow);
	border-color: var(--yellow);
	color: var(--dark);
	margin-left: 10px;
    padding: 10px 2.5vw;
	line-height: 1.4;
}
#PcNav .utl-nav a.tab.tab_data {
	background: var(--green);
	border-color: var(--green);
	color: var(--dark);
	margin-left: 10px;
    padding: 10px 15px 10px 1.5vw;
}
#PcNav .utl-nav .stars01,
#PcNav .utl-nav .stars02{
	position: absolute;
	width: 19px;
	height: 18px;
	z-index: 1;
}
#PcNav .utl-nav .stars01{
    left: 2px;
    bottom: 3px;
    transform: rotate(50deg);
}
#PcNav .utl-nav .stars02{
	right: -6px;
    bottom: 25px;
    transform: rotate(210deg);
}
#PcNav .utl-nav .stars01 span,
#PcNav .utl-nav .stars02 span{
	position: absolute;
	display: block;
	width: 7px;
	/* animation: rotation 4s linear infinite running;  */
}
#PcNav .utl-nav .star01-01,
#PcNav .utl-nav .star02-01{
	left: 6px;
	top: -5px;
}
#PcNav .utl-nav .star01-02,
#PcNav .utl-nav .star02-02{
	left: 0;
	bottom: 0;
	animation-delay: 1s;
}
#PcNav .utl-nav .star01-03,
#PcNav .utl-nav .star02-03{
	right: 0;
	bottom: 0;
	animation-delay: 2s; 
}
#PcNav .utl-nav a.tab.tab_data .symbol {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: min(4.43vw, 35px);
    height: min(4.43vw, 35px);
	margin-left: 20px;
}
#PcNav .utl-nav a.tab.tab_data .symbol::before {
	position: relative;
    z-index: 5;
    display: block;
    content: "";
    width: 12px;
    height: 12px;
    background: url(../../img/common/ico_blank.svg) no-repeat;
    background-size: 100% auto;
    transition: .3s;
}
#PcNav .utl-nav a.tab.tab_data .symbol::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: var(--light);
	border-radius: 100vmax;
	transition: .3s;
}
#PcNav .utl-nav a.tab.tab_data:hover .symbol::before {
	/* animation: arwmove .5s ease 0s 1 normal none running; */
}
#PcNav .utl-nav a.tab.tab_data:hover .symbol::after {
	transform: scale(1.2, 1.2);
	background: var(--green);
}
#PcNav .utl-nav a.tab.tab_data span:not(.symbol) {
	margin-bottom: 5px;
}
/* pc-gnav */
.pc-gnav-overlay {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9000;
	display: none;
	inset: 0;
	background: rgb(51, 51, 51, .5);
	backdrop-filter: blur(20px);
}
.pc-gnav {
	display: flex;
	font-size: 1.6rem;
	white-space: nowrap;
}
.pc-gnav li {
	position: relative;
}
.pc-gnav>li:nth-child(n+2) {
	margin-left: 2.28vw;
}
.pc-gnav a {
	transition: .3s;
}
.pc-gnav a:hover {
	color: var(--hover);
}
.pc-gnav>li>p {
	font-family: "Zen Old Mincho", "YuMincho", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.pc-gnav>li>p a {
	position: relative;
}
.pc-gnav>li>p a::after {
	position: absolute;
	left: 50%;
	bottom: -5px;
	display: block;
	width: 30px;
	height: 1px;
	margin-left: -15px;
	content: "";
	background: var(--dark);
	transform: scale(0, 1);
	transition: .3s;
}
.pc-gnav>li>p a:hover::after {
	background: var(--hover);
}
.p-outline .pc-gnav>li.nav01>p a::after,
.p-course .pc-gnav>li.nav02>p a::after,
.p-facility .pc-gnav>li.nav03>p a::after,
.p-campuslife .pc-gnav>li.nav04>p a::after,
.p-admission .pc-gnav>li.nav05>p a::after,
.p-career .pc-gnav>li.nav06>p a::after,
.p-therapy .pc-gnav>li.nav07>p a::after,
.p-library .pc-gnav>li.nav07>p a::after {
	transform: scale(1, 1);
}
.pc-gnav .nav-middle {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	display: none;
	padding: 30px 3.91vw 3.91vw;
	overflow: hidden;
}
.pc-gnav .nav-middle::before {
	position: absolute;
	left: 50%;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: var(--light);
	border-radius: 0 0 10px 10px;
	transform: translate(-50%, -100%);
	transition: .3s;
	transition-delay: .1s;
}
.pc-gnav .has-middle .nav-middle.open::before {
	transform: translate(-50%, 0);
}
.pc-gnav .nav-middle p {
	font-size: min(0.91vw, 1.4rem);
}
.pc-gnav .nav-middle p,
.pc-gnav .nav-middle .nav-middle-link {
	position: relative;
	opacity: 0;
	transition: .3s;
	transition-delay: .3s;
}
.pc-gnav .nav-middle.open p,
.pc-gnav .nav-middle.open .nav-middle-link {
	opacity: 1;
}
.pc-gnav .nav-middle p+p {
	margin-top: 10px;
}
.pc-gnav .nav-middle .nav-middle-link {
	display: flex;
}
.pc-gnav .nav-middle .nav-middle-link>li:nth-child(n+2) {
	margin-left: 2.93vw;
}
.pc-gnav .nav-middle .nav-middle-link ul {
	margin-top: 10px;
	padding-left: .5em;
	font-size: min(0.78vw, 1.2rem);
	line-height: 1.4;
}
.pc-gnav .nav-middle .nav-middle-link ul li a {
	display: flex;
}
.pc-gnav .nav-middle .nav-middle-link ul li a::before {
	content: "・";
}
.pc-gnav .nav-middle .nav-middle-link ul li:nth-child(n+2) {
	margin-top: 7px;
}
#TargetNav {
	display: none;
}
/*--------------------------------------------------------------------------
  kv
---------------------------------------------------------------------------*/
.kv-top.kv-pic {
	transition-delay: 2s;
}
.kv-top.kv-pic img {
	max-width: none;
	width: 100%;
	height: 600px;
	object-fit: cover;
}
/*--------------------------------------------------------------------------
  Content
---------------------------------------------------------------------------*/
.content {
	margin-top: 106px;
}
/* ページタイトル
-----------------------------------------------------------------*/
.page-ttl {
	position: relative;
	z-index: 6000;
	max-width: 1920px;
	margin-inline: auto;
	padding: 65px 0 45px;
	line-height: 1;
	overflow: hidden;
	transition-delay: 1.5s;
}
.page-ttl h1 {
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 50;
	transform: translateY(-50%);
	width: 100%;
}
.page-ttl h1 span {
	display: block;
	max-width: 1340px;
	margin-inline: auto;
	padding-inline: 20px;
}
.page-ttl h1 .en {
	text-transform: uppercase;
}
.page-ttl._type01 h1 .en {
	font-size: min(4.88vw, 7.5rem);
}
.page-ttl._type01 h1 .ja {
	margin-top: min(0.65vw, 10px);
	font-size: min(1.17vw, 1.8rem);
}
.page-ttl._type02 h1 .en {
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .15em;
}
.page-ttl._type02 h1 .ja {
	margin-top: min(1.63vw, 25px);
	font-size: min(3.91vw, 6rem);
	letter-spacing: .15em;
	font-family: "Zen Old Mincho", "YuMincho", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.page-ttl .ttl-bg {
	font-size: min(14.19vw, 21.8rem);
	color: #E7E7E7;
	font-family: "Gilda Display", serif;
	text-transform: uppercase;
	white-space: nowrap;
	opacity: .2;
}
/* breadcrumb */
.breadcrumb {
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	max-width: 1920px;
	margin: 0 auto 100px;
	padding: 0 20px;
	font-size: 1.2rem;
	line-height: 1.4;
}
.breadcrumb li {
	position: relative;
}
.breadcrumb li:nth-child(n+2) {
	margin-left: 12px;
	padding-left: 17px;
}
.breadcrumb li:nth-child(n+2)::before {
	position: absolute;
	left: 0;
	top: 0;
	display: inline-block;
	content: ">";
	color: #A3A3A3;
}
.breadcrumb a {
	color: #A3A3A3;
}
/* 見出し・本文
-----------------------------------------------------------------*/
.typewriter * {
	display: inline-block;
	opacity: 0;
	transform: translateY(1vw) rotateY(100deg);
	transition-duration: .3s;
}
.typewriter.mv span {
	transform: translateY(0) rotateY(0);
	opacity: 1;
}
span.typewriter {
	display: block;
}
span.typewriter.sp{
  display: none;  
}
/* ttl-large,ttl-middle */
.ttl-large .en,
.ttl-middle .en {
	line-height: 1;
	text-transform: uppercase;
}
.ttl-large .en {
	font-size: min(4.23vw, 6.5rem);
}
.ttl-middle .en {
	font-size: min(3.26vw, 5rem);
}
.ttl-large .ja,
.ttl-middle .ja {
	display: block;
	margin-top: 15px;
	line-height: 1;
}
.ttl-large .ja.mv,
.ttl-middle .ja.mv {
	opacity: 1;
	-webkit-filter: blur(0);
	filter: blur(0);
}
/* ttl-dot */
.ttl-dot {
	display: flex;
	font-size: min(1.76vw, 2.7rem);
	line-height: 1.4;
}
.ttl-dot::before {
	display: inline-block;
	margin-right: 0.78vw;
	content: "●";
	color: var(--cat01);
	font-size: 1rem;
	line-height: 2.21vw;
}
/* ttl-lead, txt-lead */
.ttl-lead {
	font-size: min(3.39vw, 5.2rem);
	line-height: 1.5;
	text-align: center;
	letter-spacing: .15em;
}
.txt-lead {
	font-size: min(1.5vw, 2.3rem);
	text-align: center;
	line-height: 2;
}
.txt-lead span {
	border-bottom: 1px solid var(--dark);
	padding-bottom: 4px;
}
.ttl-lead+.txt-lead {
	margin-top: min(1.95vw, 30px);
}
/* ttl-line, body-txt */
.ttl-line {
	font-size: min(2.08vw, 3.2rem);
	line-height: 2;
	text-align: center;
}
.ttl-line span {
	border-bottom: 1px solid var(--dark);
}
.body-txt {
	font-size: min(1.3vw, 2rem);
	line-height: 2;
	text-align: center;
}
.ttl-line+.body-txt {
	margin-top: 50px;
}
/* txt-box01 */
.txt-box01>.ttl {
	font-size: min(1.76vw, 2.7rem);
	line-height: 1.6;
}
.txt-box01>.txt {
	margin-top: min(1.3vw, 20px);
}
/* txt-box02 */
.txt-box02>.ttl {
	font-size: min(1.5vw, 2.3rem);
	line-height: 1.6;
}
.txt-box02>.txt {
	margin-top: min(0.98vw, 15px);
	font-size: min(0.78vw, 1.2rem);
}
/* リンク・ボタン（アニメーション）
-----------------------------------------------------------------*/
@keyframes arwmove {
	0% {
		transform: translateX(0);
		opacity: 1;
	}
	59% {
		transform: translateX(80%);
		opacity: 0;
	}
	61% {
		transform: translateX(-80%);
		opacity: 0;
	}
	100% {
		transform: translateX(0);
		opacity: 1;
	}
}
@keyframes arwmove-down {
	0% {
		transform: translateY(0);
		opacity: 1;
	}
	59% {
		transform: translateY(100%);
		opacity: 0;
	}
	61% {
		transform: translateY(-100%);
		opacity: 0;
	}
	100% {
		transform: translateY(0);
		opacity: 1;
	}
}
@keyframes swipemove {
	0% {
		margin-left: 0;
		opacity: 1;
	}
	59% {
		margin-left: -10px;
		opacity: 0;
	}
	61% {
		margin-left: 10px;
		opacity: 0;
	}
	100% {
		margin-left: 0;
		opacity: 1;
	}
}
/* リンク・ボタン -----------------------------*/
/* btn-base */
.btn-base a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 55px;
	padding: 0 20px 0 25px;
	color: var(--light);
}
.btn-base a span {
	position: relative;
}
.btn-base a::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.btn-base a::after {
	position: relative;
	z-index: 5;
	display: block;
	content: "";
	width: min(0.39vw, 6px);
	height: min(0.78vw, 12px);
	background: url(../../img/common/arw_btn_w.svg) no-repeat;
	background-size: 100% auto;
	letter-spacing: .05em;
	transition: .3s;
}
.btn-base a:hover::before {
	transform: scale(1.1, 1.1);
}
.btn-base a:hover::after {
	animation: arwmove .5s ease 0s 1 normal none running;
}
/* 反転 */
.btn-base._w a {
	color: var(--dark);
}
.btn-base._w a::before {
	background: var(--light);
}
.btn-base._w a::after {
	background-image: url(../../img/common/arw_btn.svg);
}
/* 外部リンク */
.btn-base._blank a::after {
	width: min(1.04vw, 12px);
	height: min(1.04vw, 12px);
	background-image: url(../../img/common/ico_blank_w.svg);
}
.btn-base._blank._w a::after {
	background-image: url(../../img/common/ico_blank.svg);
}
.btn-base._blank a:hover::after {
	animation: none;
}
/* btn-view-more */
.btn-view-more {
	width: fit-content;
}
.btn-view-more a {
	position: relative;
	display: flex;
	align-items: center;
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .045em;
}
.btn-view-more .symbol {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(4.43vw, 68px);
	height: min(4.43vw, 68px);
	margin-left: min(1.3vw, 20px);
}
.btn-view-more .symbol::before {
	position: relative;
	z-index: 5;
	display: block;
	content: "";
	width: min(0.39vw, 6px);
	height: min(0.78vw, 12px);
	background: url(../../img/common/arw_btn.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.btn-view-more .symbol::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.btn-view-more a:hover .symbol::before {
	animation: arwmove .5s ease 0s 1 normal none running;
}
.btn-view-more a:hover .symbol::after {
	transform: scale(1.2, 1.2);
}
/* 中サイズ */
.btn-view-more._m a {
	font-size: min(0.78vw, 1.2rem);
}
.btn-view-more._m .symbol {
	width: min(3.65vw, 56px);
	height: min(3.65vw, 56px);
	margin-left: min(0.98vw, 15px);
}
.btn-view-more._m a::before {
	width: min(0.33vw, 5px);
	height: min(0.52vw, 8px);
}
/* 小サイズ */
.btn-view-more._s a {
	font-size: min(0.78vw, 1.2rem);
}
.btn-view-more._s .symbol {
	width: min(2.73vw, 42px);
	height: min(2.73vw, 42px);
	margin-left: min(0.98vw, 15px);
}
.btn-view-more._s a::before {
	width: min(0.26vw, 4px);
	height: min(0.52vw, 8px);
}
/* 外部リンク */
.btn-view-more._blank .symbol::before {
	width: min(1.04vw, 16px);
	height: min(1.04vw, 16px);
	background-image: url(../../img/common/ico_blank.svg);
}
.btn-view-more._blank a:hover .symbol::before {
	animation: none;
}
.btn-view-more._blank._m .symbol::before {
	width: min(0.91vw, 14px);
	height: min(0.91vw, 14px);
}
.btn-view-more._blank._s .symbol::before {
	width: min(0.78vw, 12px);
	height: min(0.78vw, 12px);
}
/* リンク・ボタン（反転） -----------------------------*/
.btn-view-more._w .symbol::after {
	background: var(--light);
}
/* btn-read-more */
.btn-read-more {
	width: fit-content;
}
.btn-read-more>span {
	position: relative;
	display: flex;
	align-items: center;
	font-size: 1.2rem;
	letter-spacing: .045em;
	cursor: pointer;
}
.btn-read-more .symbol-toggle {
	margin-left: 10px;
}
.symbol-toggle {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid var(--dark);
	border-radius: 100vmax;
	cursor: pointer;
}
.symbol-toggle::before,
.symbol-toggle::after {
	position: absolute;
	display: block;
	content: "";
	background: var(--dark);
	transition: .3s;
}
.symbol-toggle::before {
	left: 50%;
	top: 14px;
	width: 1px;
	height: 12px;
}
.symbol-toggle::after {
	left: 14px;
	top: 50%;
	width: 12px;
	height: 1px;
}
/* 目立たせたいリンク -----------------------------*/
.btn-highlight a {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 20px;
	border-bottom: 1px solid #ccc;
	letter-spacing: .045em;
}
.btn-highlight .symbol {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	position: relative;
	width: min(4.43vw, 68px);
	height: min(4.43vw, 68px);
	margin-left: min(1.3vw, 20px);
}
.btn-highlight .symbol::before {
	position: relative;
	z-index: 5;
	display: block;
	content: "";
	width: min(0.39vw, 6px);
	height: min(0.78vw, 12px);
	background: url(../../img/common/arw_btn.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.btn-highlight .symbol::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.btn-highlight a:hover .symbol::before {
	animation: arwmove .5s ease 0s 1 normal none running;
}
.btn-highlight a:hover .symbol::after {
	transform: scale(1.2, 1.2);
}
/* 中サイズ */
.btn-highlight._m a {
	padding-bottom: 15px;
	font-size: min(0.91vw, 1.4rem);
}
.btn-highlight._m .symbol {
	width: min(3.65vw, 56px);
	height: min(3.65vw, 56px);
	margin-left: min(0.98vw, 15px);
}
.btn-highlight._m .symbol::before {
	width: min(0.33vw, 5px);
	height: min(0.52vw, 8px);
}
/* 小サイズ */
.btn-highlight._s a {
	padding-bottom: 15px;
	font-size: min(0.91vw, 1.4rem);
}
.btn-highlight._s .symbol {
	width: min(2.73vw, 42px);
	height: min(2.73vw, 42px);
	margin-left: min(0.33vw, 5px);
}
.btn-highlight._s a .symbol::before {
	width: min(0.26vw, 4px);
	height: min(0.52vw, 8px);
}
/* 反転 */
.btn-highlight._w .symbol::after {
	background: var(--light);
}
.btn-highlight._w a {
	border-bottom-color: #D7EDEE;
}
/* 外部リンク */
.btn-highlight._blank a .symbol::before {
	width: min(0.78vw, 12px);
	height: min(0.78vw, 12px);
	background-image: url(../../img/common/ico_blank.svg);
}
.btn-highlight._blank a:hover .symbol::before {
	animation: none;
}
/* btn-toggle-all */
.btn-toggle-all {
	display: flex;
	align-items: center;
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .045em;
	justify-content: center;
}
.btn-toggle-all a {
	position: relative;
	display: flex;
	align-items: center;
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .045em;
}
.btn-toggle-all .symbol {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(3.78vw, 68px);
	height: min(3.78vw, 68px);
	margin-left: min(1.3vw, 20px);
	border: 1px solid var(--dark);
	border-radius: 100vmax;
	cursor: pointer;
}
.btn-toggle-all .symbol::before,
.btn-toggle-all .symbol::after {
	position: absolute;
	display: block;
	content: "";
	background: var(--dark);
	transition: .3s;
}
.btn-toggle-all .symbol::before {
	width: 1px;
	height: 12px;
}
.btn-toggle-all .symbol::after {
	width: 12px;
	height: 1px;
}

/* ページ内アンカーリンク -----------------------------*/
.page-nav {
	display: flex;
	flex-wrap: wrap;
}
.page-nav a {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	/* padding-bottom: 10px; */
	border-bottom: 1px solid #ccc;
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .01em;
	min-height: 6.5rem;
}
.page-nav .symbol {
	position: relative;
}
.page-nav .symbol::before {
	position: absolute;
	right: 12px;
	top: 13px;
	z-index: 5;
	display: block;
	content: "";
	width: 7px;
	height: 4px;
	background: url(../../img/common/arw_btn_down.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.page-nav .symbol::after {
	flex-shrink: 0;
	display: block;
	content: "";
	width: 30px;
	height: 30px;
	margin-left: 10px;
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.page-nav a:hover .symbol::before {
	animation: arwmove-down .5s ease 0s 1 normal none running;
}
.page-nav a:hover .symbol::after {
	transform: scale(1.2, 1.2);
}
/* 反転 */
.page-nav._w a {
	border-bottom-color: #D7EDEE;
}
.page-nav._w a .symbol::after {
	background: var(--light);
}
/* ソート切り替え
-----------------------------------------------------------------*/
.sort-nav {
	display: flex;
	flex-wrap: wrap;
	line-height: 0;
	margin-bottom: -15px;
}
.sort-nav li {
	margin: 0 15px 15px 0;
}
.sort-nav li a {
	position: relative;
	overflow: hidden;
	display: inline-block;
	padding: 10px 50px;
	border-radius: 100vmax;
	border: 1px solid var(--dark);
	line-height: 1;
	font-size: min(0.91vw, 1.4rem);
	letter-spacing: .01em;
	transition: .6s;
}
.sort-nav li a::before {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	background: var(--dark);
	transform: translate(-50%, -50%) scale(0, 0);
	border-radius: 50%;
	opacity: 0;
	transition: .4s;
	transition-timing-function: ease-out;
}
.sort-nav li a:hover,
.sort-nav li.active a {
	color: var(--light);
	background: var(--dark);
}
.sort-nav li a:hover::before,
.sort-nav li.active a::before {
	transform: translate(-50%, -50%) scale(30, 30);
	opacity: 1;
}
.sort-nav li a span {
	position: relative;
}
/* カード型ボタン
-----------------------------------------------------------------*/
.btn-card {
	overflow: hidden;
	border-radius: 10px;
	background: var(--beige);
}
.btn-card .pic {
	overflow: hidden;
}
.btn-card .pic img {
	width: 100%;
	transition: .5s;
}
.btn-card a:hover .pic img {
	transform: scale(1.05, 1.05);
}
.btn-card h3 {
	font-size: min(1.3vw, 2rem);
	line-height: 1.4;
}
.btn-card .txt {
	margin-top: 15px;
	letter-spacing: .05em;
}
.btn-card .txt-area .symbol {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(4.43vw, 68px);
	height: min(4.43vw, 68px);
}
.btn-card .txt-area .symbol::before {
	position: relative;
	z-index: 5;
	display: block;
	content: "";
	width: min(0.39vw, 6px);
	height: min(0.78vw, 12px);
	background: url(../../img/common/arw_btn.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.btn-card .txt-area .symbol::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: var(--green);
	border-radius: 100vmax;
	transition: .3s;
}
.btn-card a:hover .txt-area .symbol::before {
	animation: arwmove .5s ease 0s 1 normal none running;
}
.btn-card a:hover .txt-area .symbol::after {
	transform: scale(1.2, 1.2);
}
/* 縦型 */
.btn-card._v a {
	display: block;
	height: 100%;
}
.btn-card._v .txt-area {
	position: relative;
	margin: 25px;
}
.btn-card._v .txt-area .symbol {
	margin-left: auto;
}
/* 横型 */
.btn-card._h a {
	position: relative;
	display: flex;
	align-items: center;
}
.btn-card._h .pic {
	width: 54%;
}
.btn-card._h .txt-area {
	margin: 15px 30px;
}
.btn-card._h .txt-area .symbol {
	position: absolute;
	right: min(1.2vw, 18px);
	bottom: min(1.2vw, 18px);
}
/* 外部リンク */
.btn-card._blank .txt-area .symbol::before {
	width: min(1.04vw, 16px);
	height: min(1.04vw, 16px);
	background-image: url(../../img/common/ico_blank.svg);
}
.btn-card._blank a:hover .txt-area .symbol::before {
	animation: none;
}
/* カード(リンクなし)
-----------------------------------------------------------------*/
.card {
	overflow: hidden;
	border-radius: 10px;
	background: var(--beige);
}
.card h3 {
	font-size: min(1.76vw, 2.7rem);
	line-height: 1.5;
}
.card .txt {
	margin-top: 25px;
}
/* 縦型 */
.card._v .txt-area {
	margin: 40px min(2.6vw, 40px) 45px;
}
/* 横型 */
.card._h {
	display: flex;
	align-items: center;
}
.card._h .thumb {
	width: 50%;
}
.card._h .txt-area {
	margin: 10px min(2.6vw, 40px);
}
/* dot-list
-----------------------------------------------------------------*/
.dot-list li {
	display: flex;
	align-items: flex-start;
	line-height: 1.4;
}
.dot-list li::before {
	display: inline-block;
	margin-right: 5px;
	content: "●";
	font-size: 1rem;
	line-height: 2;
}
/* ページネーション
-----------------------------------------------------------------*/
.pagination ul {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	font-size: 1.4rem;
}
.pagination ul li {
	margin: 0 5px;
}
.pagination ul li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
}
.pagination ul li a span {
	position: relative;
}
.pagination ul li a::before {
	position: absolute;
	display: block;
	content: "";
	inset: 0;
	border-radius: 100vmax;
	background: var(--beige);
	transition: .3s;
}
.pagination ul li a:hover::before {
	background: var(--green);
	transform: scale(1.2, 1.2);
}
.pagination ul li.current a::before {
	background: var(--green);
}
.pagination ul li.prev a,
.pagination ul li.next a {
	width: 58px;
	height: 58px;
	font-size: 0;
}
.pagination ul li.prev {
	margin-right: 15px;
}
.pagination ul li.next {
	margin-left: 15px;
}
.pagination ul li.prev a::before,
.pagination ul li.next a::before {
	background: var(--light);
	border: 1px solid var(--dark);
}
.pagination ul li.prev a::after,
.pagination ul li.next a::after {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 6px;
	height: 10px;
	content: "";
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.pagination ul li.prev a::after {
	background-image: url(../../img/common/arw_prev.svg);
}
.pagination ul li.next a::after {
	background-image: url(../../img/common/arw_next.svg);
}
/* カルーセル（画面から見切れる）
-----------------------------------------------------------------*/
.slider-area {
	position: relative;
	display: flex;
	margin-left: calc((100vw - 1340px)/2);
}
.slider-area::after {
	position: absolute;
	left: 5.08vw;
	bottom: 1.11vw;
	display: block;
	width: 1px;
	height: 1.3vw;
	content: "";
	background: var(--dark);
}
.slider-area .ttl-box {
	position: relative;
	width: 20.83vw;
}
.slider-area .slick-prev,
.slider-area .slick-next {
	top: auto;
	bottom: 0;
	display: block;
	width: 3.78vw;
	height: 3.78vw;
	padding: 0;
	transform: none;
}
.slider-area .slick-prev {
	left: 0;
	z-index: 100;
	background: url(../../img/common/arw_prev.svg) no-repeat center center;
	background-size: 0.39vw auto;
}
.slider-area .slick-next {
	left: 6.38vw;
	background: url(../../img/common/arw_next.svg) no-repeat center center;
	background-size: 0.39vw auto;
}
.slider-area .slick-prev::before,
.slider-area .slick-next::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	inset: 0;
	content: "";
	border-radius: 100vmax;
	border: 1px solid var(--dark);
	transition: .3s;
}
.slider-area .slick-prev:hover::before,
.slider-area .slick-next:hover::before {
	transform: scale(1.2, 1.2);
}
.slider-area .slider-box {
	width: 71.49vw;
}
.slider-area .slider-box ul {
	width: 120%;
}
.slider-area .slider-box .slider-item {
	padding-right: 20px;
}
.slider-area .slider-box .slider-item h3 {
	margin-top: 10px;
	line-height: 1.4;
}
@media screen and (max-width: 1340px) {
	.slider-area {
		margin-left: 20px;
	}
}
/* 注釈
-----------------------------------------------------------------*/
.note {
	font-size: min(0.78vw, 1.2rem);
	line-height: 1.6;
}
/* clearfix
-----------------------------------------------------------------*/
.cf:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
}
/*--------------------------------------------------------------------------
  Footer
---------------------------------------------------------------------------*/
/* nav-course-middle
-----------------------------------------------------------------*/
.nav-course-middle {
	padding-bottom: 160px;
	background: var(--beige);
}
.nav-course-middle>ul {
	display: flex;
	max-width: 1920px;
	margin-inline: auto;
}
.nav-course-middle>ul>li {
	width: 25%;
}
.nav-course-middle._campuslife>ul>li{
  width: calc(100% / 3)
}
.nav-course-middle._therapy>ul>li{
  width: 50%;
}
.nav-course-middle .thumb {
	position: relative;
	line-height: 0;
	margin-bottom: 50px;
}
.nav-course-middle .thumb::before {
	position: absolute;
	left: 0;
	top: 0;
	inset: 0;
	display: block;
	content: "";
	background: rgb(0 0 0 / 40%);
}
.nav-course-middle h3 {
	margin-bottom: 30px;
	padding-inline: min(2.6vw, 40px);
	font-size: min(1.76vw, 2.7rem);
}
.nav-course-middle h3 a{
	transition: 0.3s;
}
.nav-course-middle h3 a:hover{
opacity: 0.6;
}
.nav-course-middle .btn-highlight+h3 {
	margin-top: 50px;
}
.nav-course-middle .btn-highlight {
	padding-inline: min(2.6vw, 40px);
}
.nav-course-middle._career .btn-highlight {
	padding-inline: min(2.6vw, 20px);
}
.nav-course-middle .btn-highlight+.btn-highlight {
	margin-top: 20px;
}
.nav-course-middle .btn-highlight a {
	padding-bottom: 20px;
	font-size: min(1.04vw, 1.6rem);
	border-bottom-color: #C6C6C6;
}
.nav-course-middle .btn-highlight .txt._gap{
  padding: .8em 0;  
}
.nav-course-middle .btn-highlight .txt.dot {
	position: relative;
	display: flex;
	align-items: center;
}
.nav-course-middle .btn-highlight .txt.dot::before {
	display: inline-block;
	margin-right: 5px;
	content: "●";
	font-size: 1rem;
	line-height: 1.6vw;
}
.nav-course-middle .btn-highlight .txt.dot small {
	display: block;
	font-size: min(0.78vw, 1.2rem);
	line-height: 1.2;
}
.nav-course-middle .btn-highlight .txt.dot.cat01::before {
	color: var(--cat01);
}
.nav-course-middle .btn-highlight .txt.dot.cat02::before {
	color: var(--cat02);
}
.nav-course-middle .btn-highlight .txt.dot.cat03::before {
	color: var(--cat03);
}
.nav-course-middle .btn-highlight .txt.dot.cat04::before {
	color: var(--cat04);
}
.nav-course-middle .btn-highlight .txt.dot.cat05::before {
	color: var(--cat05);
}
.nav-course-middle .btn-highlight .txt.dot.cat06::before {
	color: var(--cat06);
}
.nav-course-middle .btn-highlight .txt.dot.cat07::before {
	color: var(--cat07);
}
.nav-course-middle .btn-highlight .txt.dot.cat08::before {
	color: var(--cat08);
}
.nav-course-middle .btn-highlight .txt .small{
	display: block;
	font-size: 1.2rem;
}
.nav-course-middle._facility li:nth-child(1) a .txt{
	padding: 0.7em 0;
}
/* TUMHをもっと知ろう
-----------------------------------------------------------------*/
.more-tumh {
	padding: 150px 0 90px;
	background: var(--green);
}
.more-tumh h2 {
	margin-bottom: 60px;
	font-size: min(2.6vw, 4rem);
	line-height: 1;
	text-align: center;
}
.more-tumh h2>* {
	position: relative;
	display: inline-block;
}
.more-tumh h2>*:nth-child(1),
.more-tumh h2>*:nth-child(2),
.more-tumh h2>*:nth-child(3),
.more-tumh h2>*:nth-child(4) {
	font-size: min(4.56vw, 7rem);
	font-weight: normal;
}
.more-tumh h2>*:nth-child(6)::before,
.more-tumh h2>*:nth-child(7)::before,
.more-tumh h2>*:nth-child(8)::before {
	position: absolute;
	left: 50%;
	top: -15px;
	transform: translate(-50%, -100%);
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 100vmax;
	content: "";
	background: var(--dark);
}
.more-tumh-bnr-list {
	display: flex;
	justify-content: space-between;
}
.more-tumh-bnr-list li {
	width: 31.8%
}
/* TOPICS
-----------------------------------------------------------------*/
.topics {
	position: relative;
	padding: 90px 0 150px;
	background: var(--beige);
}
/* target-link
-----------------------------------------------------------------*/
.target-link {
	padding: 90px 0 160px;
}
/* ft-nav
-----------------------------------------------------------------*/
.btn-pagetop {
	/*position: absolute;
	right: 0;
	top: -30px;*/
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 8000;
	line-height: 0;
	overflow: hidden;
}
.btn-pagetop.fixed {
	position: fixed;
	right: 35px;
	top: auto;
	bottom: 30px;
}
.btn-pagetop .ico {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.btn-pagetop .circle {
	display: inline-block;
	animation: rotation 18s linear infinite running;
}
.btn-pagetop-sp {
	/* display: none; */
	display: block;
}
.bnr-oc{
  position: fixed;
  right: 30px;
	bottom: 40px;
	z-index: 8000;
	line-height: 0;
  display: none;  
}
.bnr-oc a{
  position: relative;
  display: block;  
}
.bnr-oc .ttl-oc{
  position: absolute;
  left: 0;
  top: 0;
  width: 148px;  
}
.bnr-oc .bg span{
  display: inline-block;
  animation: rotation 18s linear infinite running;
}
.bnr-oc .girl-oc{
 position: absolute;
 right: 0;
 bottom: 0;
 transform: translate(17%,17%); 
}
.bnr-oc-sp{
  display: none;
}
.ft-nav {
	position: relative;
	padding: 130px 0 100px;
	background: var(--green);
}
.ft-gnav {
	display: flex;
	justify-content: space-between;
	margin-bottom: 100px;
}
.ft-gnav a {
	position: relative;
}
.ft-gnav a::after {
	position: absolute;
	left: 0;
	bottom: 0px;
	display: block;
	content: "";
	width: 100%;
	height: 1px;
	background: var(--dark);
	transform: scale(0, 1);
	transform-origin: left center;
	transition: .3s;
}
.ft-gnav a:hover::after {
	transform: scale(1, 1);
}
.ft-gnav>li>p {
	font-size: min(1.56vw, 2.4rem);
	line-height: 1.4;
	font-family: "Zen Old Mincho", "YuMincho", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
	text-shadow: 0 0 #333;
}
.ft-gnav>li>p+p,
.ft-gnav .nav-middle+p {
	margin-top: 50px;
}
.ft-gnav .nav-middle {
	margin-top: 30px;
}
/* .ft-gnav .nav-middle>p {} */
.ft-gnav .nav-middle>p+p {
	margin-top: 10px;
}
.ft-gnav .nav-middle .nav-middle-link>li:nth-child(n+2) {
	margin-top: 40px;
}
/* .ft-gnav .nav-middle .nav-middle-link p {} */
.ft-gnav .nav-middle .nav-middle-link ul {
	padding-left: .5em;
	font-size: min(0.91vw, 1.4rem);
	line-height: 1.5;
}
.ft-gnav .nav-middle .nav-middle-link ul li {
	margin-top: 10px;
}
.ft-gnav .nav-middle .nav-middle-link ul li a {
	display: flex;
	align-items: center;
	width: fit-content;
	overflow: hidden;
}
.ft-gnav .nav-middle .nav-middle-link ul li a::before {
	content: "・";
}
.ft-gnav .nav-middle .nav-middle-link ul li a::after {
	transform: translateX(1em) scale(0, 1);
}
.ft-gnav .nav-middle .nav-middle-link ul li a:hover::after {
	transform: translateX(1em) scale(1, 1);
}
/* Footer
-----------------------------------------------------------------*/
#Footer {
	padding: 100px 0 55px;
	background: var(--beige);
	text-align: center;
}
.footer-hd {
	margin-bottom: 50px;
	line-height: 1;
}
.footer-hd .ft-logo {
	margin-bottom: 20px;
}
.footer-hd h2 {
	margin-bottom: 30px;
}
.footer-hd h2 small {
	font-size: 1.4rem;
}
.footer-hd h2 span {
	display: block;
	margin-top: 22px;
	font-size: 3.6rem;
}
.footer-hd .phone {
	margin-bottom: 45px;
}
.footer-hd .phone a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3.6rem;
}
.footer-hd .phone a img {
	margin-right: 15px;
}
.footer-hd .ft-sns-list {
	display: flex;
	justify-content: center;
}
.footer-hd .ft-sns-list li {
	margin-inline: 10px;
}
.ft-department-list {
	display: flex;
	justify-content: space-between;
	text-align: left;
	max-width: 1300px;
	margin-inline: auto;
}
.ft-department-list .wakayama {
	margin: 0 40px;
}
.ft-department-list .takarazuka dd,
.ft-department-list .tourism dd {
	display: flex;
	justify-content: space-between;
}
.ft-department-list dt {
	display: flex;
	align-items: center;
	margin-bottom: 30px;
	font-size: min(1.56vw, 2.4rem);
	line-height: 1.2;
}
.ft-department-list dt a {
	margin-left: 10px;
}
.ft-department-list dd {
	font-size: min(0.85vw, 1.3rem);
	line-height: 1.6;
}
.ft-department-list dd>div:nth-child(n+2) {
	margin-left: 20px;
}
.ft-department-list h3 {
	margin-bottom: 20px;
	font-size: min(1.04vw, 1.6rem);
	line-height: 1.2;
}
.ft-department-list .address {
	margin-bottom: 15px;
}
.ft-department-list .course-list {
	margin-top: 20px;
	line-height: 1;
	font-size: min(0.78vw, 1.2rem);
}
.ft-department-list .course-list li:nth-child(n+2) {
	margin-top: 8px;
}
.ft-department-list .course-list li>span {
	display: inline-block;
	padding: 5px 10px;
	border-radius: 100vmax;
	border: 1px solid var(--dark);
}
.ft-department-list .course-list span small {
	font-size: min(0.65vw, 1rem);
}
.ft-btn-list {
	display: flex;
	justify-content: center;
	margin: 65px 0;
}
.ft-btn-list li {
	margin-inline: 0 10px;
	max-width: 270px;
	width: calc(50% - 20px);
}
.ft-btn-list a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 70px;
	line-height: 1;
	font-size: 1.4rem;
	border-radius: 10px;
	background: var(--light);
}
.ft-btn-list a span {
	position: relative;
	padding-right: 24px;
}
.ft-btn-list a span::after {
	position: absolute;
	right: 0;
	top: 50%;
	display: block;
	content: "";
	width: 4px;
	height: 8px;
	margin-top: -4px;
	background: url(../../img/common/arw_btn.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.ft-btn-list a:hover span::after {
	animation: arwmove .5s ease 0s 1 normal none running;
}
#Footer .layout-box {
	max-width: 1300px;
	margin-inline: auto;
}
.ft-txt-link {
	display: flex;
}
.ft-txt-link li {
	line-height: 1;
	font-size: min(0.91vw, 1.4rem);
}
.ft-txt-link li:nth-child(n+2) {
	margin-left: min(1.95vw, 30px);
	padding-left: min(1.95vw, 30px);
	border-left: 1px solid var(--dark);
}
#Footer .copyright {
	font-size: min(0.65vw, 1rem);
}
.tab-opencampus,
#FtNav {
	display: none;
}
/*--------------------------------------------------------------------------
  laptop & tablet
---------------------------------------------------------------------------*/
@media screen and (min-width: 769px) and (max-width: 1400px) {
	/* header .header-inner {} */
	header h1 a img {
		width: clamp(140px, 3.2vw, 236px);
	}
	.pc-gnav {
		font-size: clamp(1.28rem, 1.38vw, 1.6rem);
	}
	#PcNav .utl-nav a {
		font-size: clamp(1.2rem, 1.16vw, 1.4rem);
	}
	#PcNav {
		padding-right: clamp(80px, 8vw, 100px);
	}
}
/*--------------------------------------------------------------------------
  mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
	body {
		font-size: 1.4rem;
	}
	#Page {
		min-width: 320px;
	}
	img {
		width: 100%;
		height: auto;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	img.sp,
	br.sp {
		display: inline;
	}
	.phone-link {
		pointer-events: auto;
	}
	a:hover .zoom-img img,
	a.zoom-img:hover img {
		transform: scale(1, 1);
	}
	/*--------------------------------------------------------------------------
  Container
---------------------------------------------------------------------------*/
	.inner {
		max-width: none;
	}
	/*--------------------------------------------------------------------------
  header
---------------------------------------------------------------------------*/
	.header-inner {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 25px 15px 0;
	}
	#Header h1 img {
		width: 168px;
	}
	.btn-trigger {
		position: fixed;
		right: 6px;
		top: auto;
		bottom: 6px;
		/* transform: translateY(calc(58px + 110%)); */
		transform: translateY(0);
		width: 52px;
		height: 52px;
		transition: 0s;
	}
	.btn-trigger:hover::before {
		transform: scale(1, 1);
	}
	#FtNav.on+.btn-trigger {
		transform: translateY(0);
	}
	#FtNav.on+.btn-trigger.on {
		transform: translateY(0);
	}
	.btn-trigger.on {
		position: fixed;
		right: 20px;
		top: 25px;
		bottom: auto;
		transform: translateY(0);
	}
	.btn-trigger span {
		left: 14px;
		display: block;
	}
	.btn-trigger span:nth-child(1) {
		top: 22px;
	}
	.btn-trigger span:nth-child(2) {
		top: 29px;
	}
	.btn-trigger.on span:nth-child(1) {
		top: 25px;
	}
	.btn-trigger.on span:nth-child(2) {
		top: 25px;
	}
/* ---------------------------------------------------------------------------
	#Gnav
	グローバルナビゲーション
--------------------------------------------------------------------------- */
	.gnav-overlay {
		top: auto;
		bottom: 0;
		transform: scale(0, 0) translate(50%, 50%);
		transform-origin: right bottom;
		width: 300svh;
		height: 300svh;
		transition-duration: .8s;
	}
	.gnav-overlay.open {
		transform: scale(1, 1) translate(50%, 50%);
	}
	#Gnav {
		overflow: auto;
	}
	.gnav-logo {
		top: 25px;
		left: 5vw;
		width: 52.5vw;
	}
	.gnav-wrapper {
		display: block;
	}
	#Gnav .opencampus {
		display: block;
		width: 100%;
		height: auto;
		padding: 60px 0;
	}
	#Gnav .opencampus h2 {
		width: 76.88vw;
		margin: 0 auto 25px;
	}
	#Gnav .opencampus h2>img {
		position: relative;
		z-index: 10;
	}
	#Gnav .opencampus h2 .people01 {
		left: -5.94vw;
		top: auto;
		bottom: 1.56vw;
		width: 24.06vw;
	}
	#Gnav .opencampus h2 .people02 {
		right: -5.63vw;
		top: auto;
		bottom: -3.13vw;
		width: 12.19vw;
	}
	#Gnav .opencampus h2 .people03 {
		display: none;
	}
	#Gnav .opencampus-bnr-list {
		width: 87.5vw;
	}
	#Gnav .opencampus-bnr-list a {
		align-items: stretch;
	}
	#Gnav .opencampus-bnr-list .pic {
		width: 39.3%;
	}
	#Gnav .opencampus-bnr-list .pic img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	#Gnav .opencampus-bnr-list a:hover .pic img {
		transform: scale(1, 1);
	}
	#Gnav .opencampus-bnr-list .txt-area {
		margin: 8.75vw 3.13vw;
	}
	#Gnav .opencampus-bnr-list h3 {
		font-size: 1.4rem;
	}
	#Gnav .opencampus-bnr-list .txt-area .symbol::before {
		width: 12px;
		height: 12px;
	}
	#Gnav .opencampus-bnr-list .txt-area .symbol {
		right: 15px;
		bottom: 15px;
		width: 40px;
		height: 40px;
	}
	#Gnav .sns-list {
		margin-top: 30px;
	}
	#Gnav .sns-list li {
		margin: 0 2.34vw;
	}
	#Gnav .sns-list img {
		max-width: none;
		width: 10.63vw;
	}
	#Gnav .nav-area {
		width: 100%;
		height: auto;
		overflow: visible;
		padding: 26vw 6.25vw 60px;
	}
	.gnav a::after,
	.gnav .nav-middle .nav-middle-link ul li a::after {
		display: none;
	}
	.gnav {
		display: block;
		width: 100%;
		margin-bottom: 35px;
	}
	.gnav>li>p {
		font-size: min(5.63vw, 1.8rem);
		line-height: 1;
	}
	.gnav>li>p>a {
		display: block;
		padding: 15px 0;
	}
	.gnav>li>p a span {
		position: relative;
		display: inline-block;
		padding-right: 22px;
	}
	.gnav>li>p a span::before,
	.gnav>li>p a span::after {
		position: absolute;
		right: 0;
		top: 50%;
		display: block;
		content: "";
		width: 12px;
		height: 1px;
		background: var(--dark);
		transition: .3s;
	}
	.gnav>li>p a span::after {
		transform: rotate(-90deg);
	}
	.gnav>li>p a.open span::after {
		transform: rotate(0);
	}
	.gnav>li>p+p,
	.gnav .nav-middle+p {
		margin-top: 0;
	}
	.gnav .nav-middle {
		display: none;
		margin: 0 0 5px;
	}
	.gnav .nav-middle>p {
		font-size: min(4.69vw, 1.5rem);
	}
	.gnav .nav-middle>p>a {
		display: block;
		padding: 2px 0;
	}
	.gnav .nav-middle .nav-middle-link>li:nth-child(n+2) {
		margin-top: 10px;
	}
	.gnav .nav-middle .nav-middle-link p {
		font-size: min(4.38vw, 1.4rem);
	}
	.gnav .nav-middle .nav-middle-link p.sp {
		margin-bottom: 10px;
	}
	.gnav .nav-middle .nav-middle-link p span {
		position: relative;
		display: inline-block;
		padding-right: 20px;
	}
	.gnav .nav-middle .nav-middle-link p span::before,
	.gnav .nav-middle .nav-middle-link p span::after {
		position: absolute;
		right: 0;
		top: 50%;
		display: block;
		content: "";
		width: 10px;
		height: 1px;
		background: var(--dark);
	}
	.gnav .nav-middle .nav-middle-link p span::after {
		transform: rotate(-90deg);
	}
	.gnav .nav-middle .nav-middle-link p.open span::after {
		transform: rotate(0deg);
	}
	.gnav .nav-middle .nav-middle-link p+p {
		margin-top: 0;
	}
	.gnav .nav-middle .nav-middle-link ul {
		display: none;
		font-size: min(3.75vw, 1.2rem);
	}
	.gnav .nav-middle .nav-middle-link ul li {
		margin-top: 0;
	}
	.gnav .nav-middle .nav-middle-link ul li a {
		padding: 4px 0;
	}
	.gnav-btn-area {
		display: flex;
		flex-direction: column-reverse;
	}
	.cv-bnr-list {
		display: block;
		width: 87.5vw;
	}
	.cv-bnr-list li {
		width: 100%;
	}
	.cv-bnr-list li a {
		position: relative;
		z-index: 0;
	}
	.cv-bnr-list li:nth-child(n+2) {
		margin-top: 15px;
	}
	.cv-bnr-list li a::before {
		position: absolute;
		left: 0;
		top: 0;
		z-index: 10;
		inset: 0;
		display: block;
		content: "";
		background: rgb(0 0 0 / 50%);
		transition: none;
	}
	.cv-bnr-list li a:hover::before {
		backdrop-filter: none;
	}
	.cv-bnr-list p {
		z-index: 15;
		font-size: min(4.38vw, 1.4rem);
	}
	.cv-bnr-list p .ico {
		margin-bottom: 3.13vw;
	}
	.cv-bnr-list .ico01 {
		width: 8.75vw;
	}
	.cv-bnr-list .ico02 {
		width: 11.25vw;
	}
	.cv-bnr-list .ico03 {
		width: 12.19vw;
	}
	.cv-bnr-list p span:nth-child(2)::after {
		width: 3.75vw;
		height: 3.75vw;
		margin-left: 3.13vw;
	}
	#Gnav .cv-bnr-list {
		width: 87.5vw;
	}
	#Gnav .cv-bnr-list p {
		font-size: min(4.38vw, 1.4rem);
	}
	.target-link-list {
		display: block;
		max-width: 87.5vw;
	}
	.target-link-list li {
		width: 100%;
	}
	.target-link-list li:nth-child(n+2) {
		margin-top: 20px;
	}
	.target-link-list img {
		margin-right: min(2.19vw, 7px);
	}
	.target-link-list .ico01,
	.target-link-list .ico02 {
		transform: translateY(-5%);
		width: min(6.88vw, 22px);
		margin-right: min(2.19vw, 7px);
	}
	.target-link-list .ico03 {
		transform: translateY(-15%);
		margin: 0 min(2.81vw, 9px) 0 min(0.63vw, 2px);
		width: min(5.63vw, 18px);
		text-align: center;
	}
	.target-link-list li a {
		font-size: min(3.75vw, 1.2rem);
	}
	.target-link-list li .symbol {
		width: min(12.5vw, 40px);
		height: min(12.5vw, 40px);
		margin-left: min(1.56vw, 5px);
	}
	.target-link-list li .symbol::before {
		width: min(1.25vw, 4px);
		height: min(2.5vw, 8px);
	}
	#Gnav .target-link-list {
		max-width: none;
		margin: 0 0 50px;
	}
	#Gnav .target-link-list li {
		width: 100%;
	}
	#Gnav .target-link-list img {
		vertical-align: middle;
		margin-right: min(2.19vw, 7px);
	}
	#Gnav .target-link-list .ico03 {
		margin: 0 min(2.81vw, 9px) 0 min(0.63vw, 2px);
	}
	/* PcNav */
	#PcNav,
	.pc-gnav-overlay {
		display: none;
	}
	/*--------------------------------------------------------------------------
  Content
---------------------------------------------------------------------------*/
	.kv-top.kv-pic img {
		height: auto;
	}
	/*--------------------------------------------------------------------------
  Content
---------------------------------------------------------------------------*/
	.content {
		margin-top: 68px;
	}
	/* ページタイトル
-----------------------------------------------------------------*/
	.page-ttl {
		padding: 60px 0;
	}
	.page-ttl h1 {
		position: static;
		transform: none;
	}
	.page-ttl._type01 h1 .en {
		font-size: 3.5rem;
	}
	.page-ttl._type01 h1 .ja {
		margin-top: 15px;
		font-size: 1.3rem;
	}
	.page-ttl._type02 h1 .en {
		font-size: 1.1rem;
	}
	.page-ttl._type02 h1 .ja {
		margin-top: 15px;
		font-size: 3.2rem;
	}
	.page-ttl .ttl-bg {
		display: none;
		font-size: 9rem;
		opacity: .3;
	}
	/* breadcrumb */
	.breadcrumb {
		display: none;
	}
	/* 見出し・本文
-----------------------------------------------------------------*/
  span.typewriter.sp{
    display: block;  
  }
  span.typewriter.pc{
    display: none;  
  }
	/* ttl-large,ttl-middle */
	.ttl-large .en {
		font-size: 3.8rem;
	}
	.ttl-middle .en {
		font-size: 3.8rem;
	}
	.ttl-large .ja,
	.ttl-middle .ja {
		margin-top: 10px;
		font-size: 1.3rem;
	}
	/* ttl-dot */
	.ttl-dot {
		display: flex;
		font-size: min(1.76vw, 2.7rem);
		line-height: 1.4;
	}
	.ttl-dot::before {
		display: inline-block;
		margin-right: 0.78vw;
		content: "●";
		color: var(--cat01);
		font-size: 1rem;
		line-height: 2.21vw;
	}
	/* ttl-lead, txt-lead */
	.ttl-lead {
		font-size: 3rem;
		letter-spacing: 0.1em;
	}
	.txt-lead {
		font-size: 1.8rem;
	}
	.ttl-lead+.txt-lead {
		margin-top: 20px;
	}
	/* ttl-line, body-txt */
	.ttl-line {
		font-size: min(2.08vw, 3.2rem);
		line-height: 2;
		text-align: center;
	}
	.ttl-line span {
		border-bottom: 1px solid var(--dark);
	}
	.body-txt {
		font-size: min(1.3vw, 2rem);
		line-height: 2;
		text-align: center;
	}
	.ttl-line+.body-txt {
		margin-top: 50px;
	}
	/* txt-box01 */
	.txt-box01>.ttl {
		font-size: 2rem;
	}
	.txt-box01>.txt {
		margin-top: 20px;
	}
	/* txt-box02 */
	.txt-box02>.ttl {
		font-size: min(1.5vw, 2.3rem);
		line-height: 1.6;
	}
	.txt-box02>.txt {
		margin-top: 0.98vw;
		font-size: min(0.78vw, 1.2rem);
	}
	/* リンク・ボタン -----------------------------*/
	/* btn-base */
	.btn-base a {
		height: 50px;
		padding: 0 20px 0 25px;
	}
	.btn-base a::after {
		width: 4px;
		height: 8px;
	}
	.btn-base a:hover::before {
		transform: scale(1, 1);
	}
	.btn-base a:hover::after {
		animation: none;
	}
	/* 外部リンク */
	.btn-base._blank a::after {
		width: 12px;
		height: 12px;
	}
	/* btn-view-more */
	.btn-view-more {
		width: fit-content;
	}
	.btn-view-more a {
		font-size: 1.2rem;
	}
	.btn-view-more .symbol {
		width: 56px;
		height: 56px;
		margin-left: 15px;
	}
	.btn-view-more .symbol::before {
		width: 5px;
		height: 9px;
	}
	.btn-view-more a:hover .symbol::before {
		animation: none;
	}
	.btn-view-more a:hover .symbol::after {
		transform: scale(1, 1);
	}
	/* 中サイズ */
	.btn-view-more._m a {
		font-size: 1.2rem;
	}
	.btn-view-more._m .symbol {
		width: 56px;
		height: 56px;
		margin-left: 15px;
	}
	.btn-view-more._m a::before {
		width: 5px;
		height: 9px;
	}
	/* 小サイズ */
	.btn-view-more._s a {
		font-size: 1.2rem;
	}
	.btn-view-more._s .symbol {
		width: 40px;
		height: 40px;
		margin-left: 15px;
	}
	.btn-view-more._s a::before {
		width: 5px;
		height: 9px;
	}
	/* 外部リンク */
	.btn-view-more._blank .symbol::before {
		width: 12px;
		height: 12px;
	}
	.btn-view-more._blank._m .symbol::before {
		width: 12px;
		height: 12px;
	}
	.btn-view-more._blank._s .symbol::before {
		width: 12px;
		height: 12px;
	}
	/* リンク・ボタン（反転） -----------------------------*/
	.btn-view-more._w .symbol::after {
		background: var(--light);
	}
	/* 目立たせたいリンク -----------------------------*/
	.btn-highlight .symbol {
		width: 40px;
		height: 40px;
		margin-left: 15px;
	}
	.btn-highlight .symbol::before {
		width: 4px;
		height: 8px;
	}
	.btn-highlight a:hover .symbol::after {
		transform: scale(1.1, 1.1);
	}
	/* 中サイズ */
	.btn-highlight._m a {
		padding-bottom: 20px;
		font-size: 1.2rem;
	}
	.btn-highlight._m .symbol {
		width: 40px;
		height: 40px;
		margin-left: 15px;
	}
	.btn-highlight._m .symbol::before {
		width: 4px;
		height: 8px;
	}
	/* 小サイズ */
	.btn-highlight._s a {
		padding-bottom: 20px;
		font-size: 1.2rem;
	}
	.btn-highlight._s .symbol {
		width: 40px;
		height: 40px;
		margin-left: 15px;
	}
	.btn-highlight._s a .symbol::before {
		width: 4px;
		height: 8px;
	}
	/* 外部リンク */
	.btn-highlight._blank a .symbol::before {
		width: 12px;
		height: 12px;
	}
	/* btn-toggle-all */
	.btn-toggle-all {
		width: fit-content;
	}
	.btn-toggle-all a {
		font-size: 1.2rem;
	}
	.btn-toggle-all .symbol {
		width: 56px;
		height: 56px;
		margin-left: 15px;
	}
	.btn-toggle-all .symbol::before {
		width: 5px;
		height: 9px;
	}
	.btn-toggle-all a:hover .symbol::before {
		animation: none;
	}
	.btn-toggle-all a:hover .symbol::after {
		transform: scale(1, 1);
	}

	/* ページ内アンカーリンク -----------------------------*/
	.page-nav a {
		padding-bottom: 10px;
		border-bottom: 1px solid #ccc;
		font-size: 1.2rem;
	}
	.page-nav a .symbol::before {
		right: 12px;
		top: 13px;
		width: 7px;
		height: 4px;
	}
	.page-nav a .symbol::after {
		width: 30px;
		height: 30px;
		margin-left: 10px;
	}
	.page-nav a:hover .symbol::before {
		animation: none;
	}
	.page-nav a:hover .symbol::after {
		transform: scale(1, 1);
	}
	/* ソート切り替え
-----------------------------------------------------------------*/
	.sort-nav {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: -10px;
	}
	.sort-nav li {
		margin: 0 10px 10px 0;
	}
	.sort-nav li a {
		padding: 10px 15px;
		font-size: 1rem;
	}
	.sort-nav li a::before {
		display: none;
	}
	.sort-nav li a:hover {
		color: var(--dark);
		background: var(--light);
	}
	.sort-nav li.active a {
		color: var(--light);
		background: var(--dark);
	}
	/* カード型ボタン
-----------------------------------------------------------------*/
	.btn-card a:hover .pic img {
		transform: scale(1, 1);
	}
	.btn-card h3 {
		font-size: 1.4rem;
	}
	.btn-card .txt {
		margin-top: 15px;
	}
	.btn-card .txt-area .symbol {
		width: 56px;
		height: 56px;
	}
	.btn-card .txt-area .symbol::before {
		width: 4px;
		height: 8px;
	}
	.btn-card a:hover .txt-area .symbol::before {
		animation: none;
	}
	.btn-card a:hover .txt-area .symbol::after {
		transform: scale(1, 1);
	}
	/* 縦型 */
	.btn-card._v .txt-area {
		margin: 25px;
	}
	.btn-card._v h3 {
		font-size: 2.4rem;
	}
	.btn-card._v .txt {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.btn-card._v .txt-area .symbol {
		width: 56px;
		height: 56px;
	}
	.btn-card._v .txt-area .symbol::before {
		width: 5px;
		height: 9px;
	}
	/* 横型 */
	.btn-card._h .pic {
		width: 54%;
	}
	.btn-card._h .txt-area {
		margin: 8.75vw 3.13vw;
	}
	.btn-card._h .txt-area .symbol {
		right: 15px;
		bottom: 15px;
		width: 40px;
		height: 40px;
	}
	/* 外部リンク */
	.btn-card._blank .txt-area .symbol::before {
		width: 12px;
		height: 12px;
	}
	/* カード(リンクなし)
-----------------------------------------------------------------*/
	.card h3 {
		font-size: 2rem;
	}
	.card .txt {
		margin-top: 15px;
	}
	/* 縦型 */
	.card._v .txt-area {
		margin: 25px 20px 35px;
	}
	/* 横型 */
	.card._h .thumb {
		width: 50%;
	}
	.card._h .txt-area {
		margin: 10px 20px;
	}
	/* ページネーション
-----------------------------------------------------------------*/
	.pagination ul {
		font-size: 1.2rem;
	}
	.pagination ul li {
		margin: 0 2px;
	}
	.pagination ul li a {
		width: 40px;
		height: 40px;
	}
	.pagination ul li a:hover::before {
		background: var(--beige);
		transform: scale(1, 1);
	}
	.pagination ul li.prev a,
	.pagination ul li.next a {
		width: 48px;
		height: 48px;
	}
	.pagination ul li.prev {
		margin-right: 6px;
	}
	.pagination ul li.next {
		margin-left: 6px;
	}
	.pagination ul li.prev a::after,
	.pagination ul li.next a::after {
		width: 5px;
		height: 9px;
	}
	/* カルーセル（画面から見切れる）
-----------------------------------------------------------------*/
	.slider-area {
		position: relative;
		display: block;
	}
	.slider-area::after {
		left: 55px;
		bottom: -32px;
		transform: translateY(100%);
		height: 15px;
	}
	.slider-area .ttl-box {
		width: auto;
		margin-bottom: 40px;
	}
	.slider-area .slick-prev,
	.slider-area .slick-next {
		top: auto;
		bottom: -20px;
		transform: translateY(100%);
		width: 40px;
		height: 40px;
	}
	.slider-area .slick-prev {
		background-size: 4px auto;
	}
	.slider-area .slick-next {
		left: 70px;
		background-size: 4px auto;
	}
	.slider-area .slick-prev:hover::before,
	.slider-area .slick-next:hover::before {
		transform: scale(1, 1);
	}
	.slider-area .slider-box {
		width: 100%;
	}
	.slider-area .slider-box ul {
		width: 140%;
	}
	.slider-area .slider-box .slider-item {
		padding-right: 15px;
	}
	.slider-area .slider-box .slider-item h3 {
		margin-top: 5px;
		font-size: 1.3rem;
		line-height: 1.4;
	}
	/* 注釈
-----------------------------------------------------------------*/
	.note {
		font-size: 1.2rem;
		line-height: 1.6;
	}
	/*--------------------------------------------------------------------------
  Footer
---------------------------------------------------------------------------*/
	/* nav-course-middle
-----------------------------------------------------------------*/
	.nav-course-middle {
		padding-bottom: 110px;
	}
	.nav-course-middle>ul {
		display: block;
	}
	.nav-course-middle>ul>li,
  .nav-course-middle._campuslife>ul>li,
  .nav-course-middle._therapy>ul>li{
		width: 100%;
	}
	.nav-course-middle>ul>li:nth-child(n+2) {
		margin-top: 70px;
	}
	.nav-course-middle h3 {
		margin-bottom: 20px;
		padding-inline: 6.25vw;
		font-size: 2.2rem;
	}
	.nav-course-middle .thumb {
		margin-bottom: 30px;
	}
	.nav-course-middle .btn-highlight {
		padding-inline: 6.25vw;
	}
	.nav-course-middle .btn-highlight a {
		padding-bottom: 20px;
		font-size: 1.4rem;
	}
	.nav-course-middle .btn-highlight .txt.dot small {
		font-size: 1.1rem;
	}
	/* TUMHをもっと知ろう
-----------------------------------------------------------------*/
	.more-tumh {
		padding: 110px 0 70px;
	}
	.more-tumh h2 {
		width: 255px;
		margin: 0 auto 40px;
		font-size: 2.4rem;
		line-height: 1.4;
	}
	.more-tumh h2>*:nth-child(1),
	.more-tumh h2>*:nth-child(2),
	.more-tumh h2>*:nth-child(3),
	.more-tumh h2>*:nth-child(4) {
		font-size: 6.5rem;
	}
	.more-tumh h2>*:nth-child(6)::before,
	.more-tumh h2>*:nth-child(7)::before,
	.more-tumh h2>*:nth-child(8)::before {
		top: 0px;
		width: 4px;
		height: 4px;
	}
	.more-tumh-bnr-list {
		display: block;
	}
	.more-tumh-bnr-list li {
		width: auto;
	}
	.more-tumh-bnr-list li:nth-child(n+2) {
		margin-top: 15px;
	}
	.more-tumh-bnr-list a {
		position: relative;
		z-index: 0;
	}
	/* TOPICS
-----------------------------------------------------------------*/
	.topics {
		padding: 90px 0 150px;
	}
	/* target-link
-----------------------------------------------------------------*/
	.target-link {
		padding: 110px 0 140px;
	}
	/* ft-nav
-----------------------------------------------------------------*/
	.btn-pagetop {
		display: none;
	}
	.btn-pagetop-sp {
		position: fixed;
		right: 10px;
		bottom: 75px;
		z-index: 7000;
	}
	.btn-pagetop-sp a {
		display: flex;
		align-items: center;
	}
	.btn-pagetop-sp .ttl {
		margin-right: 10px;
		font-size: 1rem;
		line-height: 1;
		text-transform: uppercase;
	}
	.btn-pagetop-sp .symbol {
		width: 23px;
		height: 23px;
		border-radius: 100vmax;
		background: url(../../img/common/arw_btn_up_w.svg) no-repeat center center var(--dark);
		background-size: 8px auto;
	}
  .bnr-oc{
    display: none;  
  }
  .bnr-oc-sp{
	display: block;
    position: fixed;
    right: 0;
    bottom: 110px;
    z-index: 8000;
    line-height: 0;
  }
  .bnr-oc-sp a{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 140px;
    background: #FDE939;
    border-radius: 10px 0 0 10px; 
  }
  .bnr-oc-sp .ttl{
    font-size: 1.2rem;
    writing-mode: vertical-rl;  
  }
  .bnr-oc-sp .stars01,
  .bnr-oc-sp .stars02{
    position: absolute;
    width: 19px;
    height: 18px; 
  }
  .bnr-oc-sp .stars01{
    left: -8px;
    top: -4px; 
  }
  .bnr-oc-sp .stars02{
    right: -8px;
    bottom: 5px; 
  }
  .bnr-oc-sp .stars01 span,
  .bnr-oc-sp .stars02 span{
    position: absolute;
    display: block;
    width: 7px;
    animation: rotation 4s linear infinite running; 
  }
  .bnr-oc-sp .star01-01,
  .bnr-oc-sp .star02-01{
    left: 3px;
    top: 0;
  }
  .bnr-oc-sp .star01-02,
  .bnr-oc-sp .star02-02{
    left: 0;
    bottom: 0;
    animation-delay: 1s;
  }
  .bnr-oc-sp .star01-03,
  .bnr-oc-sp .star02-03{
    right: 0;
    bottom: 0;
    animation-delay: 2s; 
  }
	.ft-nav {
		position: relative;
		padding: 70px 0;
	}
	.ft-gnav {
		display: block;
		width: 100%;
		margin-bottom: 70px;
	}
	.ft-gnav a::after {
		display: none;
	}
	.ft-gnav>li>p {
		font-size: 1.8rem;
		line-height: 1;
	}
	.ft-gnav>li>p>a {
		display: block;
		padding: 15px 0;
	}
	.ft-gnav>li>p>a span {
		position: relative;
		display: inline-block;
		padding-right: 22px;
	}
	.ft-gnav>li>p>a span::before,
	.ft-gnav>li>p>a span::after {
		position: absolute;
		right: 0;
		top: 50%;
		display: block;
		content: "";
		width: 12px;
		height: 1px;
		background: var(--dark);
		transition: .3s;
	}
	.ft-gnav>li>p>a span::after {
		transform: rotate(-90deg);
	}
	.ft-gnav>li>p>a.open span::after {
		transform: rotate(0);
	}
	.ft-gnav>li>p+p,
	.ft-gnav .nav-middle+p {
		margin-top: 0;
	}
	.ft-gnav .nav-middle {
		display: none;
		margin: 0 0 5px;
	}
	.ft-gnav .nav-middle>p {
		font-size: 1.4rem;
	}
	.ft-gnav .nav-middle>p>a {
		display: block;
		padding: 2px 0;
	}
	.ft-gnav .nav-middle>p+p {
		margin-top: 0;
	}
	.ft-gnav .nav-middle>p+.nav-middle-link {
		margin-top: 10px;
	}
	.ft-gnav .nav-middle .nav-middle-link>li:nth-child(n+2) {
		margin-top: 10px;
	}
	.ft-gnav .nav-middle .nav-middle-link p.sp {
		margin-bottom: 10px;
	}
	.ft-gnav .nav-middle .nav-middle-link p {
		font-size: 1.4rem;
	}
	.ft-gnav .nav-middle .nav-middle-link p span {
		position: relative;
		display: inline-block;
		padding-right: 20px;
	}
	.ft-gnav .nav-middle .nav-middle-link p span::before,
	.ft-gnav .nav-middle .nav-middle-link p span::after {
		position: absolute;
		right: 0;
		top: 50%;
		display: block;
		content: "";
		width: 10px;
		height: 1px;
		background: var(--dark);
		transition: .3s;
	}
	.ft-gnav .nav-middle .nav-middle-link p span::after {
		transform: rotate(-90deg);
	}
	.ft-gnav .nav-middle .nav-middle-link p.open span::after {
		transform: rotate(0);
	}
	.ft-gnav .nav-middle .nav-middle-link ul {
		display: none;
		font-size: 1.3rem;
	}
	.ft-gnav .nav-middle .nav-middle-link ul li {
		margin-top: 0;
	}
	.ft-gnav .nav-middle .nav-middle-link ul li a {
		padding: 4px 0;
	}
	/* Footer
-----------------------------------------------------------------*/
	#Footer {
		padding: 70px 0 120px;
	}
	.footer-hd {
		margin-bottom: 50px;
		line-height: 1;
	}
	.footer-hd .ft-logo {
		width: 57px;
		margin: 0 auto 15px;
	}
	.footer-hd h2 {
		margin-bottom: 25px;
	}
	.footer-hd h2 span {
		margin-top: 20px;
		font-size: 3.2rem;
	}
	.footer-hd .phone a {
		font-size: 3.2rem;
	}
	.footer-hd .phone a img {
		width: 28px;
		margin-right: 10px;
	}
	.footer-hd .ft-sns-list li {
		margin-inline: 7px;
	}
	.footer-hd .ft-sns-list img {
		width: 33px;
	}
	.ft-department-list {
		display: block;
	}
	.ft-department-list .wakayama {
		margin: 40px 0;
	}
	.ft-department-list .takarazuka dd,
	.ft-department-list .tourism dd {
		display: flex;
		justify-content: space-between;
	}
	.ft-department-list dt {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
	.ft-department-list .ft-sns-link img {
		width: 28px;
	}
	.ft-department-list dd {
		font-size: 1.2rem;
	}
	.ft-department-list dd>div {
		width: calc(50% - 10px);
	}
	.ft-department-list dd>div:nth-child(n+2) {
		margin-left: 0;
	}
	.ft-department-list h3 {
		margin-bottom: 15px;
		font-size: 1.3rem;
	}
	.ft-department-list .address {
		margin-bottom: 10px;
	}
	.ft-department-list .course-list {
		margin-top: 15px;
		font-size: 1rem;
	}
	.ft-department-list .course-list li:nth-child(n+2) {
		margin-top: 8px;
	}
	.ft-department-list .course-list span span {
		display: block;
		margin-top: 3px;
	}
	.ft-department-list .course-list span small {
		font-size: 1rem;
		padding-right: 1em;
	}
	.ft-btn-list {
		justify-content: space-between;
		max-width: 360px;
		margin: 40px auto;
	}
	.ft-btn-list li {
		margin-inline: 0 0;
		max-width: none;
		width: calc(50% - 5px);
	}
	.ft-btn-list a {
		padding: 0 15px;
		justify-content: flex-start;
		align-items: center;
		line-height: 1.3;
		font-size: 1.3rem;
		text-align: left;
	}
	.ft-btn-list a span {
		display: inline-block;
		width: 100%;
	}
	.ft-btn-list a:hover span::after {
		animation: none;
	}
	#Footer .layout-box {
		display: block;
	}
	.ft-txt-link {
		justify-content: center;
	}
	.ft-txt-link li {
		line-height: 1;
		font-size: 1rem;
	}
	.ft-txt-link li:nth-child(n+2) {
		margin-left: 5px;
		padding-left: 5px;
	}
	#Footer .copyright {
		margin-top: 20px;
		font-size: 1rem;
		line-height: 1.5;
	}
	.tab-opencampus {
		position: fixed;
		right: 0;
		top: 45%;
		z-index: 9999;
		display: none;
		width: 36px;
		transform: translate(120%, -50%);
		transition: .3s;
	}
	.tab-opencampus.on {
		transform: translate(0, -50%);
	}
	.tab-opencampus a {
		position: relative;
		display: block;
		padding: 12px;
		background: var(--yellow);
		border-radius: 10px 0 0 10px;
		line-height: 1;
		writing-mode: vertical-rl;
		font-size: 1.2rem;
	}
	.tab-opencampus a::before,
	.tab-opencampus a::after {
		position: absolute;
		display: block;
		width: 15px;
		height: 14px;
		content: "";
		background: url(../../img/common/ico_kirakira.svg) no-repeat;
		background-size: 100% auto;
	}
	.tab-opencampus a::before {
		top: 0;
		left: 0;
		transform: translateX(-50%);
	}
	.tab-opencampus a::after {
		bottom: 5px;
		right: 0;
		transform: translateX(50%);
	}
	#FtNav {
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 10000;
		display: block;
		width: 100%;
		padding: 6px 6px 6px 0;
		border-radius: 30px 30px 0 0;
		background: var(--light);
		/* transform: translateY(110%); */
		transform: translateY(0);
		transition: .3s;
	}
	#FtNav.on {
		transform: translateY(0);
	}
	#FtNav ul {
		display: flex;
		align-items: center;
		width: 100%;
	}
	#FtNav ul li {
		width: calc((100% - 52px)/4);
		text-align: center;
		line-height: 1;
	}
	#FtNav ul .ico01 {
		width: 26px;
	}
	#FtNav ul .ico02 {
		width: 24px;
	}
	#FtNav ul .ico03 {
		width: 18px;
	}
	#FtNav ul .ico04 {
		width: 18px;
	}
	#FtNav ul .ttl {
		display: block;
		margin-top: 5px;
		font-size: min(3.13vw, 1rem);
	}
	#FtNav ul li:last-child {
		width: 52px;
		height: 52px;
	}
	.target-close {
		position: fixed;
		right: 20px;
		top: 25px;
		width: 52px;
		height: 52px;
		z-index: 16000;
		transition: 0s;
		background: var(--light);
		border-radius: 100vmax;
		display: none;
	}
	.target-close span {
		position: absolute;
		left: 14px;
		display: block;
		width: 24px;
		height: 1px;
		background: var(--green);
		transition: .3s;
	}
	.target-close span:nth-child(1) {
		top: 25px;
		transform: rotate(-45deg);
	}
	.target-close span:nth-child(2) {
		top: 25px;
		transform: rotate(45deg);
	}
	#TargetNav {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 13000;
		display: none;
		width: 100%;
	}
	#TargetNav .target-nav-wrapper {
		display: flex;
		align-items: center;
		width: 100%;
		height: 100vh;
		height: 100svh;
	}
	#TargetNav .target-nav-wrapper>div {
		width: 100%;
	}
	#TargetNav h2 {
		padding-inline: 20px;
		margin-bottom: 40px;
	}
}