@charset "utf-8";

@media screen and (max-width: 1199px) {
	.u-contents.-slash:after {
		width: 21.685%;
		margin-left: -10px;
		left: 0;
	}
	
	.u-title_grande:before {
		font-size: 5.004vw;
	}
	
	.u-kv:after {
		width: 40.85%;
		margin-left: -5.838%;
	}
	
	.p-index.p-local .u-kv_pagetitle {
		width: 100%;
	}
	
	.g-header_logo {
		width: 16.68%;
	}
	
	.g-header_links_items a {
		font-size: 13rem;
	}
	
	.g-navi {
		width: calc(100% - 180px - 156px - 15px);
		margin-right: 180px;
	}
	
	.g-navi_menu_item a {
		font-size: 14rem;
		letter-spacing: 0;
	}
	
	.g-navi_menu_item {
		margin-left: 2vw;
	}
	
	.l-recruit_banner .section_title img {
		width: max(200px,92.175%);
	}
	
}

@media screen and (max-width: 999px) {
	:root {
		--header_h: 64px;
	}
	
	.u-show_tablet {
		display: block !important;
	}
	
	.u-hide_tablet {
		display: none !important;
	}
	
	.u-content:not(:first-of-type) {
		margin-top: 90px;
	}
	
	.u-kv {
		margin-top: var(--header_h);
		padding-top: 20.85%;
	}
	
	.u-kv_pagetitle {
		margin-top: 0;
		padding-inline: 5.325%;
	}
	
	.u-kv_pagetitle em {
		font-size: 4vw;
	}
	
	.p-index.p-local .u-kv {
		padding-top: 33.633%;
	}
	
	.p-index.p-local .u-kv_pagetitle {
		translate: -50% -50%;
	}
	
	.p-index.p-local .u-kv_pagetitle:before {
		font-size: 6vw;
	}
	
	.p-main_visual .u-title_page:after {
		width: 100%;
	}
	
	.active_scroll .g-header {
		height: var(--header_h);
	}
	
	.g-header {
		width: 100%;
		margin: 0;
		border-radius: 0;
	}
	
	.g-header_logo {
		width: 156px;
		margin-left: 14px;
	}
	
	.g-navi {
		display: none;
	}
	
	.g-navi_pulldown {
		display: none;
	}
	
	.g-navi_pulldown_close {
		display: none;
	}
	
	.g-navi_base {
		display: none;
	}
	
	.active_mobile_menu {
		overflow: hidden;
	}
	
	.g-mobile_menu_button {
		width: 64px;
		height: 100%;
		position: absolute;
		top: 0;
		right: 0;
	}
	
	.active_mobile_menu .g-mobile_menu_button {
		background: var(--red);
	}
	
	.g-mobile_menu_button:before,
	.g-mobile_menu_button:after {
		content: '';
		font-size: 11rem;
		font-weight: 500;
		text-align: center;
		text-decoration: none;
		margin: 0 0 10px;
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;

	}
	
	.g-mobile_menu_button:before {
		content: 'メニュー';
		transition: .2s .4s var(--easing);
	}
	
	.active_mobile_menu .g-mobile_menu_button:before {
		color: var(--white);
		opacity: 0;
		transition: .2s 0s var(--easing);
	}
	
	.g-mobile_menu_button:after {
		content: '閉じる';
		opacity: 0;
		transition: .2s 0s var(--easing);
	}
	
	.active_mobile_menu .g-mobile_menu_button:after {
		color: var(--white);
		opacity: 1;
		transition: .2s .4s var(--easing);
	}
	
	.g-mobile_menu_button_lines {
		width: 100%;
		height: 20px;
		margin: 14px 0 0;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		transition: .2s var(--easing);
	}
	
	.g-mobile_menu_button_line {
		width: 31px;
		height: 2px;
		border-radius: 100vmax;
		background-color: var(--red);
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		transform-origin: center;
		transition: .2s var(--easing);
	}
	
	.active_mobile_menu .g-mobile_menu_button_line {
		width: 29px;
		background-color: var(--white);
	}
	
	.g-mobile_menu_button_line.-top {
		margin-top: -7px;
		transition:
			width .2s var(--easing),
			margin .2s .4s var(--easing),
			transform .2s var(--easing)
		;
	}
	
	.active_mobile_menu .g-mobile_menu_button_line.-top {
		margin-top: 0;
		transform: translate(-50%,-50%) rotate(25deg);
		transition:
			width .2s .4s var(--easing),
			margin .2s var(--easing),
			transform .2s .4s var(--easing)
		;
	}
	
	.g-mobile_menu_button_line.-bottom {
		margin-top: 7px;
		transition:
			width .2s var(--easing),
			margin .2s .4s var(--easing),
			transform .2s var(--easing)
		;
	}
	
	.active_mobile_menu .g-mobile_menu_button_line.-bottom {
		margin-top: 0;
		transform: translate(-50%,-50%) rotate(25deg);
		transition:
			width .2s .4s var(--easing),
			margin .2s var(--easing),
			transform .2s .4s var(--easing)
		;
	}
	
	.active_mobile_menu .g-mobile_menu_button_line.-center {
		opacity: 0;
	}
	
	.active_mobile_menu .g-mobile_menu_button_line.-bottom {
		margin-top: 0;
		transform: translate(-50%,-50%) rotate(-25deg);
	}
	
	.g-navi_button_line.-top {
		top: 0;
		transform: translate(-50%,0);
	}
	
	.g-navi_button_line.-bottom {
		top: 100%;
		transform: translate(-50%,-100%);
	}
	
	.active_mobile_menu .g-navi_button_line {
		width: 85%;
	}
	
	.active_mobile_menu .g-navi_button_line.-top {
		top: 50%;
		transform: translate(-50%,-50%) rotate(135deg);
	}
	
	.active_mobile_menu .g-navi_button_line.-center {
		opacity: 0;
	}
	
	.active_mobile_menu .g-navi_button_line.-bottom {
		top: 50%;
		transform: translate(-50%,-50%) rotate(-135deg);
	}
	
	.g-header_mobile_menu {
		width: 100%;
		height: calc(100dvh - var(--header_h));
		margin-top: var(--header_h);
		background-color: rgba(0,0,0,.75);
		backdrop-filter: blur(20px);
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		translate: 100% 0;
		opacity: 0;
		transition:
			opacity .2s var(--easing),
			translate 0s .4s var(--easing)
		;
	}
	
	.active_mobile_menu .g-header_mobile_menu {
		translate: 0 0;
		opacity: 1;
		transition:
			opacity 0s var(--easing),
			translate .6s var(--easing)
		;
	}
	
	.g-mobile_menu_inner {
		height: calc(100dvh - var(--header_h));
		padding-bottom: 60px;
		transition: .4s var(--easing);
		overflow-y: scroll;
		overflow-x: hidden;
	}
	
	.active_navi_mobile_sub .g-mobile_menu_inner {
		translate: -100% 0;
		visibility: hidden;
		transition: .6s var(--easing);
	}
	
	.g-mobile_menu figure {
		display: none;
	}
	
	.g-mobile_menu a {
		color: var(--white);
		letter-spacing: .05em;
		text-decoration: none;
		display: block;
	}
	
	.g-mobile_menu a:hover {
		text-decoration: none !important;
	}
	
	.g-mobile_menu .u-icon_arrow:before {
		display: none;
	}
	
	.g-mobile_menu_items .u-icon.-arrow.-small:after {
		margin: 2px 18px 0 18px;
		background-color: transparent;
		background-image: url("/_assets/images/common/arrow_02_white.svg");
		position: absolute;
		top: 50%;
		right: 0;
		translate: 0 -50%;
	}
	
	.g-mobile_menu_items a[target='_blank']:after {
		width: .8em;
		height: .8em;
		margin-inline: 17px;
		background-image: url("/_assets/images/common/icon_blank_01_white.svg");
		position: absolute;
		top: 50%;
		right: 0;
		translate: 0 -50%;
	}
	
	.g-mobile_menu .g-mobile_menu_item > .title {
		border-bottom: 1px solid var(--gray_dark);
		position: relative;
	}
	
	.g-mobile_menu .g-mobile_menu_item > .title a {
		font-size: 18rem;
		font-weight: 500;
		line-height: 1.6;
		text-indent: 0;
		min-height: 70px;
		margin-right: 0;
		padding: 1.5em 0 1.5em 22px;
	}
	
	.g-mobile_menu .g-mobile_menu_item > .title a.-linknone {
		pointer-events: none;
	}
	
	.g-mobile_menu .category:last-child {
		border-bottom: 1px solid var(--gray_dark);
	}
	
	.g-mobile_menu .category:after {
	}
	
	.g-mobile_menu .category > * > ul > li {
		border-top: 1px solid var(--gray_dark);
		position: relative;
	}
	
	.g-mobile_menu .category > * > ul > li a.u-icon.-arrow.-small {
		font-weight: 500;
		line-height: 1.6;
		text-indent: 0;
		margin-right: 0;
		padding: 1em 1em 1em 22px;
	}
	
	.g-mobile_menu .category > * > ul > li a.u-on_imagezoom.u-icon.-arrow.-small:after {
		display: block;
	}
	
	.g-mobile_menu .category > * > ul > li a.u-icon.-arrow.-small.no_link {
		pointer-events: none;
	}
	
	.g-mobile_menu .category > * > ul > li a.u-icon.-arrow.-small.no_link:after {
		display: none;
	}
	
	.g-mobile_menu .category > * > ul > li a:after {
		margin: 2px 18px 0 18px;
		background-color: transparent;
		background-image: url("/_assets/images/common/arrow_02_white.svg");
		position: absolute;
		top: 50%;
		right: 0;
		translate: 0 -50%;
	}
	
	.g-mobile_menu .category > * > ul > li > ul {
		margin-top: -.5em;
		padding: 0 0 1em 0;
		z-index: 10;
	}
	
	.g-mobile_menu .category > * > ul > li > ul > li > a {
		font-size: 14rem;
		font-weight: 400 !important;
		padding-block: .5em !important;
		display: block;
	}
	
	.g-mobile_menu .category > * > ul > li > ul > li > .u-icon.-arrow.-small:after {
		content: '';
		width: 12px;
		height: 12px;
		position: absolute;
		right: 0;
	}
	
	.g-mobile_menu .category .off_gnavi {
		display: none;
	}
	
	.active_mobile_menu .u-cover {
		opacity: 1;
		visibility: visible;
		transition: .6s var(--easing);
	}
	
	/*header_sub*/
	.g-header > .g-header_sub {
		display: none;
	}
	
	.g-header_sub {
		margin-right: inherit;
		padding-inline: 22px;
		flex-direction: column;
		position: relative;
		top: auto;
		right: auto;
		translate: none;
	}
	
	.g-header_sub .g-float_navi {
		margin: 28px 0 0;
		position: relative;
		inset: auto;
	}
	
	.g-header_sub .g-float_navi_items {
		width: calc(100% + (8px * 2));
		margin-inline: -8px;
	}
	
	.g-header_sub .g-float_navi_item {
		padding-inline: 8px;
	}
	
	.g-header_sub .g-float_navi_item a {
		display: flex;
	}
	
	.g-header_sub .g-float_navi_item a:not(.inquiry a) {
		color: var(--black_text);
	}
	
	.g-header_links_items {
		width: 100%;
		padding: 14px 0 0;
		flex-direction: column;
	}
	
	.g-header_links_item {
		margin-top: 14px;
		margin-left: inherit;
	}
	
	.g-header_links_items a {
		font-size: 16rem;
		font-weight: 400;
		text-align: center;
		height: auto;
		padding: 1.15em 0;
		border-radius: 0;
		border-color: var(--gray_light);
		background: transparent;
	}
	
	.g-header_links_items a:before {
		vertical-align: middle;
		width: 1.4em;
		height: 1.4em;
		margin: 0 .25em 0 0;
	}
	
	/*sub*/
	.g-navi_mobile_sub {
		width: 100vw;
		height: calc(100dvh - var(--header_h));
		margin: 0 0 -120px;
		padding: 0 20px 60px;
		position: absolute;
		inset: 0;
		z-index: 50;
		overflow-y: scroll;
		overflow-x: hidden;
		transition: .4s var(--easing);
		transform: translate(100%,0);
	}
	
	.active_navi_mobile_sub .g-navi_mobile_sub {
		transition: .6s var(--easing);
		transform: translate(0,0);
	}
	
	.g-navi_mobile_sub .-button_return {
		color: var(--white);
		font-size: 16rem;
		padding: 15px 10px;
		display: inline-block;
		position: relative;
		z-index: 20;
	}
	
	.g-navi_mobile_sub .-button_return:before {
		content: '';
		line-height: 1;
		width: 1em;
		margin: 0 .35em 0 0;
		aspect-ratio: 1;
		display: inline-block;
		background: url("/_assets/images/common/arrow_01_white.svg") no-repeat center / contain;
		scale: -1 1;
		translate: 0 .1em;
	}
	
	.g-navi_mobile_sub .-inner {
		height: calc(100dvh - var(--header_h));
		padding-bottom: 60px;
		overflow-y: scroll;
		overflow-x: hidden;
		position: absolute;
		inset: 0;
		z-index: 10;
		transition: .6s var(--easing);
		opacity: 0;
		visibility: hidden;
	}
	
	.g-navi_mobile_sub .-inner.active {
		opacity: 1;
		visibility: visible;
	}
	
	.g-navi_mobile_sub .title {
		margin-top: -20px;
	}
	
	.g-navi_mobile_sub .title a {
		color: var(--white);
		font-size: 20rem;
		padding: 1.5em 1em 1.25em 22px;
	}
	
	.g-navi_mobile_sub .title a:after {
		width: 12px;
		height: 12px;
		margin: .175em 18px 0 0;
		border: 0;
		background-color: transparent;
		background-image: url("/_assets/images/common/arrow_02_white.svg");
		background-size: 100% auto;
		position: absolute;
		right: 0;
	}
	
	.g-navi_mobile_sub .title a > * {
		padding-bottom: 0;
	}
	
	
	
	
	
	
	.g-navi_mobile_sub .g-navi_mobile_button {
		margin-top: 30px;
	}
	
	.g-navi_mobile_sub.active {
		transform: translate(0,0);
	}
	
	/*PC header 非表示*/
	.not_header_show {
		display: block !important;
	}
	
	.not_header_hide {
		display: none !important;
	}
	
	/*footer*/
	.g-footer {
		padding-bottom: 48px;
	}
	
	.g-footer .menu .items {
		flex-wrap: wrap;
	}
	
	.g-footer .menu .item {
		padding: 8px;
	}
	
	.u-index_items.-compact ul li {
		width: calc(100% / 3 - (10px * 2));
	}
	
	.active_scroll .u-modal {
		margin-top: 70px;
	}
	
	.l-news_categorys {
		margin-top: .5em;
	}
	
	.l-news_categorys li {
		font-size: 13rem;
		padding: .5em 1em .7em;
	}
	
	.u-intoScroll.-tablet {
		position: relative;
	}
	
	.u-intoScroll.-tablet .u-intoScroll_desc {
		font-size: 12rem;
		margin: 0 0 15px;
		display: block;
	}
	
	.u-intoScroll.-tablet .u-intoScroll_desc i {
		color: var(--red);
	}
	
	.u-intoScroll.-tablet .u-intoScroll_inner {
		overflow-x: scroll;
		overflow-y: visible;
		position: relative;
	}
	
	.u-intoScroll.-tablet .u-intoScroll_inner::-webkit-scrollbar {
		width: 6px;
		height: 6px;
	}

	.u-intoScroll.-tablet .u-intoScroll_inner::-webkit-scrollbar-track {
		background: var(--gray_line);
		border-radius: 100vmax;
	}

	.u-intoScroll.-tablet .u-intoScroll_inner::-webkit-scrollbar-thumb {
		background-color: var(--gray);
		border-radius: 100vmax;
	}
	
	.u-intoScroll.-tablet .u-intoScroll_inner .u-table {
		width: 100%;
		min-width: 999px !important;
	}
	
	.u-intoScroll.-tablet .u-intoScroll_inner-900 > * { min-width: 900px !important; }
	.u-intoScroll.-tablet .u-intoScroll_inner-800 > * { min-width: 800px !important; }
	.u-intoScroll.-tablet .u-intoScroll_inner-700 > * { min-width: 700px !important; }
	
	.u-intoScroll.-tablet .u-intoScroll_inner:after {
		content: '';
		width: 110px;
		height: 110px;
		display: block;
		background: url("/_assets/images/common/icon_table_scroll_01.svg") no-repeat center / contain;
		position: absolute;
		top: calc(50% + 15px);
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
		animation: anim-mobile-scroll 6s infinite linear;
		transition: opacity 3s;
		opacity: 1;
	}
	
	@keyframes anim-mobile-scroll {
		0% {
			transform: translateX(-50%) translateY(-50%);
		}
		25% {
			transform: translateX(calc(-50% + 20px)) translateY(-50%);
			animation-timing-function: ease-out;
		}
		50% {
			transform: translateX(calc(-50% + 0)) translateY(-50%);
			animation-timing-function: ease-in;
		}
		75% {
			transform: translateX(calc(-50% - 20px)) translateY(-50%);
			animation-timing-function: ease-out;
		}
		100% {
			transform: translateX(-50%) translateY(-50%);
		}
	}
	
	.is-flick-animation-off:after {
		opacity: 0;
		visibility: hidden;
		animation: none;
	}
	
	.u-intoScroll.-tablet .u-intoScroll--none {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.u-intoScroll.-tablet .u-intoScroll--none .u-table {
		width: 100% !important;
	}
	
	.u-intoScroll.-tablet .u-intoScroll--none .u-intoScroll__inner {
		overflow: visible;
	}
	
	.u-intoScroll.-tablet .u-intoScroll--none:before {
		display: none;
	}
	
	/*float navi*/
	.g-float_navi {
		width: 100%;
		position: fixed;
		top: auto;
		bottom: 0;
		right: 0;
		translate: 0 0;
		transition: none;
		opacity: .95;
	}
	
	.active_scroll .g-float_navi {
		translate: 0 0;
	}
	
	.g-float_navi_items {
		width: 100%;
		display: flex;
	}
	
	.g-float_navi_item {
		width: calc(100% / 2);
		margin: 0 0 -1px;
		padding: 0;
	}
	
	.g-float_navi_item a {
		width: 100%;
		height: 48px;
		padding: 0 0 .1em;
		writing-mode: inherit;
		border-radius: 0;
	}
	
	.g-float_navi_item.inquiry a:before {
		width: 1.15em;
		height: 1.15em;
		margin: 0 .3em 0 0;
		translate: 0 .075em;
	}
	
	.u-width_100_tablet { width: 100%; }
	.u-width_95_tablet { width: 95%; }
	.u-width_90_tablet { width: 90%; }
	.u-width_85_tablet { width: 85%; }
	.u-width_80_tablet { width: 80%; }
	.u-width_75_tablet { width: 75%; }
	.u-width_70_tablet { width: 70%; }
	.u-width_65_tablet { width: 65%; }
	.u-width_60_tablet { width: 60%; }
	.u-width_55_tablet { width: 55%; }
	.u-width_50_tablet { width: 50%; }
	.u-width_45_tablet { width: 45%; }
	.u-width_40_tablet { width: 40%; }
	.u-width_35_tablet { width: 35%; }
	.u-width_40_tablet { width: 40%; }
	.u-width_30_tablet { width: 30%; }
	.u-width_25_tablet { width: 25%; }
	.u-width_20_tablet { width: 20%; }
	.u-width_15_tablet { width: 15%; }
	.u-width_10_tablet { width: 10%; }

	.u-mgt_125_tablet { margin-top: 125px !important; }
	.u-mgt_120_tablet { margin-top: 120px !important; }
	.u-mgt_115_tablet { margin-top: 110px !important; }
	.u-mgt_110_tablet { margin-top: 110px !important; }
	.u-mgt_105_tablet { margin-top: 100px !important; }
	.u-mgt_100_tablet { margin-top: 100px !important; }
	.u-mgt_95_tablet { margin-top: 95px !important; }
	.u-mgt_90_tablet { margin-top: 90px !important; }
	.u-mgt_85_tablet { margin-top: 85px !important; }
	.u-mgt_80_tablet { margin-top: 80px !important; }
	.u-mgt_75_tablet { margin-top: 75px !important; }
	.u-mgt_70_tablet { margin-top: 70px !important; }
	.u-mgt_65_tablet { margin-top: 65px !important; }
	.u-mgt_60_tablet { margin-top: 60px !important; }
	.u-mgt_55_tablet { margin-top: 55px !important; }
	.u-mgt_50_tablet { margin-top: 50px !important; }
	.u-mgt_45_tablet { margin-top: 45px !important; }
	.u-mgt_40_tablet { margin-top: 40px !important; }
	.u-mgt_35_tablet { margin-top: 35px !important; }
	.u-mgt_30_tablet { margin-top: 30px !important; }
	.u-mgt_25_tablet { margin-top: 25px !important; }
	.u-mgt_20_tablet { margin-top: 20px !important; }
	.u-mgt_15_tablet { margin-top: 15px !important; }
	.u-mgt_10_tablet { margin-top: 10px !important; }
	.u-mgt_5_tablet { margin-top: 5px !important; }
	.u-mgt_0_tablet { margin-top: 0 !important; }
	.u-mgt_-10_tablet { margin-top: -10px !important; }
	.u-mgt_-20_tablet { margin-top: -20px !important; }
	.u-mgt_-30_tablet { margin-top: -30px !important; }
	.u-mgt_-40_tablet { margin-top: -40px !important; }
	.u-mgt_-50_tablet { margin-top: -50px !important; }
	.u-mgt_-60_tablet { margin-top: -60px !important; }
	.u-mgt_-70_tablet { margin-top: -70px !important; }
	
}

@media screen and (max-width: 767px) {
	:root {
		/*size*/
		--header_h: 60px;
	}
	
	.u-show_mobile {
		display: block !important;
	}
	
	.u-show_mobile--small {
		display: none !important;
	}
	
	.u-hide_mobile {
		display: none !important;
	}
	
	.u-contents:not(:first-child) {
		margin-top: 40px;
	}
	
	.u-contents.-slash:after {
		width: 164px;
		margin-top: -26px;
		margin-left: 14px;
	}
	
	.u-inner {
		padding-inline: 15px;
	}
	
	.u-kv {
		padding-top: min(26.665%, 160px);
	}
	
	.u-kv:after {
		margin-left: -2%;
	}
	
	.u-kv_pagetitle {
		margin-top: 0;
		padding-inline: 4.25%;
	}
	
	.u-kv_pagetitle em {
		font-size: 30rem;
	}
	
	.u-title_grande:before {
		font-size: 60rem;
	}
	
	.u-title_hi > * {
		font-size: 24rem;
	}
	
/*
	.u-title_hi + * {
		margin-top: 20px !important;
	}
*/
	
	.u-title_mid {
		margin-top: 30px;
	}
	
	.u-title_mid + * {
		margin-top: 16px;
	}
	
	.u-title_mid > * {
		font-size: 21rem;
	}
	
/*
	.u-title_mid + * {
		margin-top: 20px !important;
	}
*/
	
	.u-title_low {
		margin-top: 30px;
	}
	
/*
	.u-title_low + * {
		margin-top: 20px !important;
	}
*/
	
	.u-title_small {
		margin-top: 30px;
	}
	
	.u-title_small + * {
		margin-top: 16px;
	}
	
	.u-lead {
		font-size: 18rem;
		margin-top: 30px;
	}
	
	.u-text {
		line-height: 1.8;
		margin-top: 16px;
	}
	
	.u-button > *,
	.u-button > *:link,
	.u-button > *:visited {
		/*min-width: calc(100% / 3 * 2);*/
		min-width: 256px;
	}
	
	.u-button.-button > * {
		width: 100%;
		max-width: none;
		min-width: 0;
		padding: .65em 2.5em .85em 2em;
	}
	
	.u-button.-button > * * {
		font-size: 16rem;
	}
	
	.u-box {
		margin-top: 40px;
		padding: 30px;
	}
	
	.u-box + * {
		margin-top: 40px;
	}
	
	.u-list {
		margin-top: 16px;
	}
	
	.u-flex > * {
		margin: 8px;
	}
	
	.u-flex.-row {
		margin-inline: -8px;
	}
	
	.u-flex.-row2 > * {
	}
	
	.u-flex.-row2_mobile > * { width: calc(100% / 2 - (8px * 2)); }
	
	.u-flex.-row3.-row2_mobile > *:nth-child(-n + 3),
	.u-flex.-row4.-row2_mobile > *:nth-child(-n + 4) {
		margin-top: 8px;
	}
	
	.u-flex.-row2_mobile > *:nth-child(-n + 2) {
		margin-top: 0 !important;
	}
	
	
	.u-flex.-mobile_flex_none {
		flex-direction: column;
	}
	
	.u-flex.-mobile_flex_none > * {
		width: 100% !important;
		margin-top: 0;
		margin-bottom: 16px;
		margin-inline: 0;
	}
	
	.u-flex.-mobile_flex_none > *:nth-child(n + 2) {
		/*margin-top: 10px;*/
	}
	
	.u-flex.-mobile_flex_none > *:last-child {
		margin-bottom: 0;
	}
	
	.u-flex.-row.-mobile_flex_none {
		margin-inline: 0;
	}
	
	.u-flex.-mobile_flex_none.-module {
		margin-top: 10px;
	}
	
	.u-flex.-mobile_flex_none.-module > *:nth-child(n + 2) {
		margin-top: 10px;
	}
	
	.u-flex.-row .u-text:first-child {
		margin-top: 0;
	}
	
	.u-table_caption {
		font-size: 14rem;
	}
	
	.u-table_corner .u-align_center th {
		padding-right: .25em;
		padding-left: .25em;
	}
	
	.u-table_corner .u-align_center td {
		padding-right: .25em;
		padding-left: .25em;
	}
	
	/*スマホ時 1列積み*/
	.u-table_corner.-mobile_stack tr {
		display: flex;
		flex-direction: column;
	}
	
	.u-table_corner.-mobile_stack th {
		text-align: left;
		width: 100%;
		padding: 10px 20px;
		border-right: 0;
	}
	
	.u-table_corner.-mobile_stack td {
		padding: 10px 20px 20px;
	}
	
	.u-intoScroll {
		position: relative;
	}
	
	.u-intoScroll_desc {
		font-size: 12rem;
		margin: 0 0 15px;
		display: block;
	}
	
	.u-intoScroll_desc i {
		color: var(--red);
	}
	
	.u-intoScroll_desc + .u-table_caption {
		margin-top: -15px !important;
	}
	
	.u-intoScroll_inner {
		overflow-x: scroll;
		overflow-y: visible;
		position: relative;
	}
	
	.u-intoScroll_inner::-webkit-scrollbar {
		width: 6px;
		height: 6px;
	}

	.u-intoScroll_inner::-webkit-scrollbar-track {
		background: var(--gray_line);
		border-radius: 100vmax;
	}

	.u-intoScroll_inner::-webkit-scrollbar-thumb {
		background-color: var(--gray);
		border-radius: 100vmax;
	}
	
	.u-intoScroll_inner .u-table {
		width: 100%;
		min-width: 767px !important;
	}
	
	.u-intoScroll_inner-600 > * { min-width: 600px !important; }
	.u-intoScroll_inner-500 > * { min-width: 500px !important; }
	.u-intoScroll_inner-400 > * { min-width: 400px !important; }
	
	.u-intoScroll_inner:after {
		content: '';
		width: 110px;
		height: 110px;
		display: block;
		background: url("/_assets/images/common/icon_table_scroll_01.svg") no-repeat center / contain;
		position: absolute;
		top: calc(50% + 15px);
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
		animation: anim-mobile-scroll 6s infinite linear;
		transition: opacity 3s;
		opacity: 1;
	}
	
	@keyframes anim-mobile-scroll {
		0% {
			transform: translateX(-50%) translateY(-50%);
		}
		25% {
			transform: translateX(calc(-50% + 20px)) translateY(-50%);
			animation-timing-function: ease-out;
		}
		50% {
			transform: translateX(calc(-50% + 0)) translateY(-50%);
			animation-timing-function: ease-in;
		}
		75% {
			transform: translateX(calc(-50% - 20px)) translateY(-50%);
			animation-timing-function: ease-out;
		}
		100% {
			transform: translateX(-50%) translateY(-50%);
		}
	}
	
	.is-flick-animation-off:after {
		opacity: 0;
		visibility: hidden;
		animation: none;
	}
	
	.u-intoScroll--none {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.u-intoScroll--none .u-table {
		width: 100% !important;
	}
	
	.u-intoScroll--none .u-intoScroll__inner {
		overflow: visible;
	}
	
	.u-intoScroll--none:before {
		display: none;
	}
	
	.u-news_list .item {
		padding: 1em 0;
		display: block;
	}
	
	.u-news_list .time {
		width: auto;
		display: inline-block;
	}
	
	.u-news_list .category {
		vertical-align: .075em;
		margin-left: 5px;
		display: inline-block;
	}
	
	.u-news_list .text {
		width: 100%;
		margin: .65em 0 0;
		padding-left: 0;
		display: block;
	}
	
	.u-news_list .text a {
		font-size: 15rem;
		margin: 0;
		padding: 0 45px 0 0;
	}
	
	.u-news_list .u-tab_panel_group .text {
		width: 100%;
		margin-top: 10px;
		padding-left: 0;
	}
	
	#irp-schedule-1 .item {
		display: block !important;
	}
	
	#irp-schedule-1 .link-list .text {
		width: 100%;
		margin: .65em 0 0;
		padding-left: 0;
		display: block;
	}
	
	.u-acc .button {
		padding-inline: 15px 65px;
	}
	
	.u-acc .button > .icon {
		margin-right: 15px;
	}
	
	.u-acc .button + .details .inner {
		padding: 15px;
	}
	
	
	.u-anchor_menu {
		padding: 20px 10px;
	}
	
	.u-anchor_menu .items {
		justify-content: flex-start;
	}
	
	.u-anchor_menu .item {
		padding: 10px 10px;
	}
	
	.g-wrapper {
		padding-bottom: 60px;
	}
	
	.g-breadcrumb {
		margin-top: 6px;
	}
	
	.g-container {
		padding-top: 40px;
	}
	
	.l-recruit_banner {
		flex-direction: column;
	}
	
	.l-recruit_banner .section_title .title:before {
		font-size: 16rem;
	}
	
	.l-recruit_banner .section_title img {
		width: 75%;
		margin-top: 1.5%;
	}
	
	.l-recruit_banner .section_title {
		width: 100%;
		padding-right: 5.866%;
		padding-left: 5.866%;
	}
	
	.l-recruit_banner .section_title .u-text {
		margin-top: 2.5%;
		padding-right: 1em;
	}
	
	.l-recruit_banner .image {
		width: 75%;
	}
	
	.l-recruit_banner .image {
		width: 137.5%;
		margin: 0 0 -17.5% -40%;
	}
	
/*	modal*/
	.u-modal_campus {
		width: calc(100% - (20px * 2));
		max-height: calc(100vh - (20px * 2 + var(--header_h)));
		margin-inline: 20px;
	}
	
	.active_scroll .u-modal_campus {
		max-height: calc(100dvh - (20px * 2 + var(--header_h)));
	}
	
	.u-modal .close_icon {
		margin-top: 15px;
		right: 13px;
	}
	
	
	.u-width_100_mobile { width: 100%; }
	.u-width_95_mobile { width: 95%; }
	.u-width_90_mobile { width: 90%; }
	.u-width_85_mobile { width: 85%; }
	.u-width_80_mobile { width: 80%; }
	.u-width_75_mobile { width: 75%; }
	.u-width_70_mobile { width: 70%; }
	.u-width_65_mobile { width: 65%; }
	.u-width_60_mobile { width: 60%; }
	.u-width_55_mobile { width: 55%; }
	.u-width_50_mobile { width: 50%; }
	.u-width_45_mobile { width: 45%; }
	.u-width_40_mobile { width: 40%; }
	.u-width_35_mobile { width: 35%; }
	.u-width_40_mobile { width: 40%; }
	.u-width_30_mobile { width: 30%; }
	.u-width_25_mobile { width: 25%; }
	.u-width_20_mobile { width: 20%; }
	.u-width_15_mobile { width: 15%; }
	.u-width_10_mobile { width: 10%; }
	
	.u-max_width_none_mobile { max-width: none; }
	
	.u-max_width_900_mobile { max-width: 900px; }
	.u-max_width_800_mobile { max-width: 800px; }
	.u-max_width_700_mobile { max-width: 700px; }
	.u-max_width_600_mobile { max-width: 600px; }
	.u-max_width_500_mobile { max-width: 500px; }
	.u-max_width_400_mobile { max-width: 400px; }
	.u-max_width_350_mobile { max-width: 350px; }
	.u-max_width_300_mobile { max-width: 300px; }
	.u-max_width_200_mobile { max-width: 200px; }
	.u-max_width_150_mobile { max-width: 150px; }
	.u-max_width_100_mobile { max-width: 100px; }
	
	.u-mgt_125_mobile { margin-top: 125px !important; }
	.u-mgt_120_mobile { margin-top: 120px !important; }
	.u-mgt_115_mobile { margin-top: 110px !important; }
	.u-mgt_110_mobile { margin-top: 110px !important; }
	.u-mgt_105_mobile { margin-top: 100px !important; }
	.u-mgt_100_mobile { margin-top: 100px !important; }
	.u-mgt_95_mobile { margin-top: 95px !important; }
	.u-mgt_90_mobile { margin-top: 90px !important; }
	.u-mgt_85_mobile { margin-top: 85px !important; }
	.u-mgt_80_mobile { margin-top: 80px !important; }
	.u-mgt_75_mobile { margin-top: 75px !important; }
	.u-mgt_70_mobile { margin-top: 70px !important; }
	.u-mgt_65_mobile { margin-top: 65px !important; }
	.u-mgt_60_mobile { margin-top: 60px !important; }
	.u-mgt_55_mobile { margin-top: 55px !important; }
	.u-mgt_50_mobile { margin-top: 50px !important; }
	.u-mgt_45_mobile { margin-top: 45px !important; }
	.u-mgt_40_mobile { margin-top: 40px !important; }
	.u-mgt_35_mobile { margin-top: 35px !important; }
	.u-mgt_30_mobile { margin-top: 30px !important; }
	.u-mgt_25_mobile { margin-top: 25px !important; }
	.u-mgt_20_mobile { margin-top: 20px !important; }
	.u-mgt_15_mobile { margin-top: 15px !important; }
	.u-mgt_10_mobile { margin-top: 10px !important; }
	.u-mgt_5_mobile { margin-top: 5px !important; }
	.u-mgt_0_mobile { margin-top: 0 !important; }
	.u-mgt_-10_mobile { margin-top: -10px !important; }
	.u-mgt_-20_mobile { margin-top: -20px !important; }
	.u-mgt_-30_mobile { margin-top: -30px !important; }
	.u-mgt_-40_mobile { margin-top: -40px !important; }
	.u-mgt_-50_mobile { margin-top: -50px !important; }
	.u-mgt_-60_mobile { margin-top: -60px !important; }
	.u-mgt_-70_mobile { margin-top: -70px !important; }

	.u-font_8_mobile { font-size: 8rem !important; }
	.u-font_9_mobile { font-size: 9rem !important; }
	.u-font_10_mobile { font-size: 10rem !important; }
	.u-font_11_mobile { font-size: 11rem !important; }
	.u-font_12_mobile { font-size: 12rem !important; }
	.u-font_13_mobile { font-size: 13rem !important; }
	.u-font_14_mobile { font-size: 14rem !important; }
	.u-font_15_mobile { font-size: 15rem !important; }
	.u-font_16_mobile { font-size: 16rem !important; }
	.u-font_17_mobile { font-size: 17rem !important; }
	.u-font_18_mobile { font-size: 18rem !important; }
	.u-font_19_mobile { font-size: 19rem !important; }
	.u-font_20_mobile { font-size: 20rem !important; }
	.u-font_21_mobile { font-size: 21rem !important; }
	.u-font_22_mobile { font-size: 22rem !important; }
	.u-font_23_mobile { font-size: 23rem !important; }
	.u-font_24_mobile { font-size: 24rem !important; }
	.u-font_25_mobile { font-size: 25rem !important; }
	.u-font_26_mobile { font-size: 26rem !important; }
	.u-font_27_mobile { font-size: 27rem !important; }
	.u-font_28_mobile { font-size: 28rem !important; }
	.u-font_29_mobile { font-size: 29rem !important; }
	.u-font_30_mobile { font-size: 30rem !important; }
}

@media screen and (max-width: 499px) {
	.u-show_mobile_small {
		display: block !important;
	}
	
	.u-hide_mobile_small {
		display: none !important;
	}
	
	.g-footer .menu .items {
		max-width: 300px;
		margin-inline: auto;
	}
	
	.p-index.p-local .u-kv {
		padding-top: 160px;
	}
	
	.p-index.p-local .u-kv_pagetitle {
		margin-top: -.75%;
		padding-inline: 4.25%;
	}
	
	.p-index.p-local .u-kv_pagetitle:before {
		font-size: 8vw;
	}
	
	.u-title_grande:before {
		font-size: 11.2vw;
	}
	
	.l-recruit_banner .section_title {
		padding-bottom: 0;
	}
	
	.l-recruit_banner .section_title img {
		width: 90%;
	}
	
	.l-recruit_banner .section_title .u-button {
		margin-top: 6%;
	}
	
}
