@charset "UTF-8";
/*----------
	base
----------*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
/* Reset */
*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	background: transparent;
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	font-style: inherit;
	-webkit-tap-highlight-color: transparent;
}

article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ul,
ol {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}

em,
strong {
	font-weight: bold;
}

button {
	cursor: pointer;
}

html {
	width: 100%;
	font-size: 62.5%;
	background-color: #fff;
}
html.locked {
	position: fixed;
	overflow: hidden;
}

body {
	font-size: 1.4rem;
	line-height: 1.6;
	font-family: "Noto Sans JP", "ヒラギノ角ゴシック", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", Hiragino Sans, "メイリオ", Meiryo, sans-serif;
	position: relative;
	letter-spacing: 0em;
	color: #333;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

a, button {
	text-decoration: none;
	color: #024796;
	word-wrap: break-word;
}
@media (min-width: 768px) {
	a, button {
		transition: color 0.2s;
	}
	a:hover, button:hover {
		color: #2C87E9;
	}
}

img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

/*----------
	icons
----------*/
@font-face {
	font-family: "iconfont";
	src: url(/common/fonts/iconfont.ttf?nzur0u) format("truetype"), url(/common/fonts/iconfont.woff?nzur0u) format("woff"), url(/common/fonts/iconfont.svg?nzur0u#iconfont) format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
.icon, .icon-movie, .icon-note, .icon-counseling, .icon-minus, .icon-plus, .icon-lang, .icon-mail, .icon-calendar, .icon-document, .icon-caution, .icon-stopwatch, .icon-mappin, .icon-tel, .icon-close, .icon-search, .icon-blank, .icon-word, .icon-pdf, .icon-excel, .icon-home, .icon-chev-bottom, .icon-chev-last, .icon-chev-first, .icon-chev-down, .icon-chev-up, .icon-chev-r, .icon-chev-l, .icon-movie2 {
	display: inline-block;
	font-family: "iconfont" !important;
	speak: never;
	font-style: normal !important;
	font-size: inherit;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none;
	line-height: inherit;
	color: #024796;
}
.icon-chev-l:before {
	content: "\e900";
}
.icon-chev-r:before {
	content: "\e901";
}
.icon-chev-up:before {
	content: "\e902";
}
.icon-chev-down:before {
	content: "\e903";
}
.icon-chev-first:before {
	content: "\e904";
}
.icon-chev-last:before {
	content: "\e905";
}
.icon-chev-bottom:before {
	content: "\e906";
}
.icon-home:before {
	content: "\e907";
}
.icon-excel:before {
	content: "\e908";
}
.icon-pdf:before {
	content: "\e909";
}
.icon-word:before {
	content: "\e90a";
}
.icon-blank:before {
	content: "\e90b";
}
.icon-search:before {
	content: "\e90c";
}
.icon-close:before {
	content: "\e90d";
}
.icon-tel:before {
	content: "\e90e";
}
.icon-mappin:before {
	content: "\e90f";
}
.icon-stopwatch:before {
	content: "\e910";
}
.icon-caution:before {
	content: "\e911";
}
.icon-document:before {
	content: "\e912";
}
.icon-calendar:before {
	content: "\e913";
}
.icon-mail:before {
	content: "\e914";
}
.icon-lang:before {
	content: "\e915";
}
.icon-plus:before {
	content: "\e916";
}
.icon-minus:before {
	content: "\e917";
}
.icon-counseling:before {
	content: "\e918";
}
.icon-note:before {
	content: "\e919";
}
.icon-movie:before {
	content: "\e91a";
}
.icon-movie2:before {
	content: "\e920";
}

.icon-excel {
	color: #22A265;
}

.icon-pdf {
	color: #E40000;
}

.icon-word {
	color: #4A90E2;
}

.icon-caution {
	color: #E60000;
}

/*----------
	svg icons
----------*/
.icon-svg, .icon-svg-check {
	display: inline-block;
	width: 1em;
	height: 1em;
	speak: never;
	font-size: inherit;
	line-height: inherit;
}
.icon-svg-check {
	background-image: url("/common/images/icon-check.svg");
}

/*----------
	separator
----------*/
.c-separator {
	display: block;
	margin: 48px auto;
	border-top: 1px solid #ddd;
}
.c-separator--dashed {
	border-top-style: dashed;
}

/*----------
	text common
----------*/
.c-text {
	font-size: 1.4rem;
	line-height: 1.6;
}

/*----------
	text small
----------*/
.c-text-article {
	font-size: 1.6rem;
	line-height: 1.8;
}
.c-text-article--dialog__name {
	display: block;
	font-weight: bold;
}
@media (min-width: 768px) {
	.c-text-article--dialog {
		padding-left: 7em;
	}
	.c-text-article--dialog__name {
		display: inline-block;
		text-indent: -7em;
		text-align: right;
	}
}

/*----------
	text variable
----------*/
.c-text-variable {
	font-size: 1.4rem;
	line-height: 1.6;
}
@media (min-width: 768px) {
	.c-text-variable {
		font-size: 1.6rem;
	}
}

/*----------
	lead
----------*/
.c-lead {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.6;
}
.c-lead--small {
	font-size: 1.8rem;
}
@media (min-width: 768px) {
	.c-lead {
		font-size: 2.2rem;
		line-height: 1.5;
	}
	.c-lead--small {
		font-size: 1.8rem;
	}
}

/*----------
	2025.9 追記
----------*/

.c-orderlist__contents {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.5;
}
.c-orderlist__contents li {
	color: #024796;
}


/*----------
	remark
----------*/
.c-remark {
	padding-left: 1.25em;
	text-indent: -1.25em;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #666;
}
.c-remark::before {
	content: "※ ";
}
.c-remark--caution {
	font-size: 1.4rem;
	color: #E60000;
}

/*----------
	icontext
----------*/
.c-icontext {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.c-icontext [class^=icon-] {
	text-indent: 0;
	margin-right: 0.5em;
	-webkit-transform: translateY(0.1em);
	transform: translateY(0.1em);
}
.c-icontext a {
	color: #333;
}
@media (min-width: 768px) {
	.c-icontext a:hover {
		color: #2C87E9;
	}
}

.c-icontext--blue {
	color: #024796;
}

/*----------
	heading-prim
----------*/
.c-heading-prim {
	font-weight: 500;
	font-size: 2.8rem;
	line-height: 1.4;
}
@media (min-width: 768px) {
	.c-heading-prim {
		font-size: 3.6rem;
		line-height: 1.5;
	}
}

/*----------
	heading-eye-catching
----------*/
.c-heading-eye-catching {
	margin-bottom: 20px;
}
.c-heading-eye-catching_img-wrapper {
	width: 100%;
	margin: 0 auto;
}
.c-heading-eye-catching_img {

}
@media (min-width: 769px) {
	.c-heading-eye-catching {
		margin-bottom: 40px;
	}
	.c-heading-eye-catching_img-wrapper {
		width: 70%;
	}
	.c-heading-eye-catching_img {

	}
}

/*----------
	heading-seco
----------*/
.c-heading-seco {
	padding-left: 24px;
	position: relative;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.6;
}
.c-heading-seco::before {
	content: "";
	display: block;
	width: 8px;
	height: 16px;
	background-image: linear-gradient(#024796 50%, #137DC7 50%);
	position: absolute;
	top: 0.75em;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media (min-width: 768px) {
	.c-heading-seco {
		font-size: 2.6rem;
	}
}

/*----------
	heading-tert
----------*/
.c-heading-tert {
	padding-bottom: 8px;
	border-bottom: 2px solid #ddd;
	position: relative;
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.6;
}
.c-heading-tert::after {
	content: "";
	display: block;
	width: 64px;
	height: 2px;
	background-color: #024796;
	position: absolute;
	bottom: -2px;
	left: 0;
}
@media (min-width: 768px) {
	.c-heading-tert {
		font-size: 2.2rem;
	}
}

/*----------
	heading-quat
----------*/
.c-heading-quat {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.6;
}

/*----------
	heading-quin
----------*/
.c-heading-quin {
	padding-left: 16px;
	position: relative;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.6;
}
.c-heading-quin::before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background-color: #137DC7;
	position: absolute;
	top: 0.8em;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*----------
	list
----------*/
.c-list > li + li {
	margin-top: 8px;
}
.c-list--dot > li {
	padding-left: 1em;
	text-indent: -1em;
}
.c-list--dot > li::before {
	content: "";
	display: inline-block;
	width: 3px;
	height: 3px;
	margin-top: -1.5px;
	margin-right: calc(1em - 3px);
	border-radius: 50%;
	vertical-align: middle;
	background-color: #333;
}
.c-list--mt16 > li + li {
	margin-top: 16px;
}

/*----------
	order list
----------*/
.c-orderlist {
	counter-reset: orderlist;
}
.c-orderlist > li {
	padding-left: 2em;
	position: relative;
}
.c-orderlist > li + li {
	margin-top: 8px;
}
.c-orderlist > li::before {
	counter-increment: orderlist;
	content: counter(orderlist) ".";
	display: block;
	min-width: 2em;
	padding-right: 0.5em;
	position: absolute;
	left: 0;
	text-align: right;
}

.c-orderlist.ls-2 li {
	list-style-type:none;
    list-style-position:inside;
    counter-increment: cnt;
}
.c-orderlist.ls-2 li::before {
	display: marker;
    content: "(" counter(cnt) ") ";
}


/*----------
	sitemap
----------*/
.c-sitemap-title {
	border-bottom: 1px solid #024796;
	margin-bottom: 16px;
}
.c-sitemap-title > a {
	display: block;
	padding: 0 0 10px 24px;
	position: relative;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.4;
	color: #333;
}
.c-sitemap-title > a > [class^=icon-] {
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: absolute;
	top: 0.5em;
	left: 0;
	background-color: #024796;
	text-align: center;
	font-size: 1.2rem;
	line-height: 16px;
	color: #fff;
}
@media (min-width: 768px) {
	.c-sitemap-title a:hover {
		color: #2C87E9;
	}
}

.c-sitemap-list > li + li {
	margin-top: 8px;
}
.c-sitemap-list__prim {
	font-weight: 500;
}
.c-sitemap-list__seco {
	padding-left: 1.4em;
	font-size: 1.2rem;
}
.c-sitemap-list__seco > a {
	color: #333;
}
@media (max-width: 767px) {
	.c-sitemap-list__nontitle-item {
		margin-top: -24px;
	}
}
@media (min-width: 768px) {
	.c-sitemap-list > li + li {
		margin-top: 24px;
	}
	.c-sitemap-list > li + li.c-sitemap-list__seco {
		margin-top: 12px;
	}
	.c-sitemap-list__seco > a:hover {
		color: #2C87E9;
	}
}

/*----------
	em box
----------*/
.c-embox {
	padding: 28px 32px;
	border-left: 3px solid #024796;
	background-color: #f3f3f3;
}
.c-embox__title {
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.6;
}
.c-embox__content {
	margin-top: 8px;
}

/*----------
	border box
----------*/
.c-borderbox {
	padding: 20px 24px;
	border: 4px solid #ddd;
}
.c-borderbox--thin {
	border-width: 1px;
}

/*----------
	caution box
----------*/
.c-cautionbox {
	padding: 20px 24px;
	border: 1px solid #E60000;
}
.c-cautionbox__title {
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.4;
	color: #E60000;
}
.c-cautionbox__title > [class^=icon-] {
	margin-right: 8px;
}
.c-cautionbox__content {
	margin-top: 8px;
}

/*----------
	conversion
----------*/
.c-conversion {
	padding: 28px 32px;
	position: relative;
	overflow: hidden;
	background-color: #F2F8FF;
}
.c-conversion::before {
	content: "";
	display: block;
	width: 200px;
	height: 200px;
	position: absolute;
	top: -100px;
	right: -100px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: rgba(2, 71, 150, 0.1);
}
.c-conversion__title {
	padding-bottom: 12px;
	border-bottom: 1px solid #024796;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.4;
}
.c-conversion__content {
	margin-top: 16px;
}

/*----------
	important info
----------*/
.c-important-info {
	width: 100%;
	background-color: #FFF5F5;
	position: relative;
	height: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.2s, visibility 0.2s;
}
.c-important-info__inner {
	max-width: 1064px;
	margin: 0 auto;
	padding: 16px 5.3333333333%;
}
.c-important-info__title {
	margin-right: 16px;
	font-weight: bold;
	color: #E60000;
}
.c-important-info__content {
	margin-top: 8px;
}
.c-important-info__close {
	display: block;
	width: 32px;
	height: 32px;
	position: absolute;
	top: 8px;
	right: 0;
	color: #000;
}
.c-important-info dl {
	font-size: 1.2rem;
	line-height: 1.6;
	color: #666;
}
.c-important-info dl > dd {
	margin-top: 2px;
}
.c-important-info dl > dd a {
	color: #666;
}
.c-important-info dl + dl {
	margin-top: 8px;
}
.c-important-info.active {
	height: auto;
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}
@media (min-width: 768px) {
	.c-important-info__inner {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		padding-left: 32px;
		padding-right: 32px;
	}
	.c-important-info__content {
		margin-top: 2px;
	}
	.c-important-info__close {
		right: 8px;
	}
	.c-important-info dl > dt {
		display: inline-block;
		margin-right: 16px;
	}
	.c-important-info dl > dd {
		display: inline-block;
		margin-top: 0;
	}
}

/*----------
	step
----------*/
.c-step > li {
	padding-left: 8px;
	position: relative;
}
.c-step > li::before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 2px;
	background-color: #024796;
}
.c-step > li > dl {
	padding: 0 0 32px 28px;
	border-left: 2px solid #024796;
}
.c-step > li > dl > dt {
	font-weight: bold;
	font-size: 1.6rem;
	color: #024796;
}
.c-step > li > dl > dd {
	margin-top: 8px;
}
.c-step--schedule > li::before {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e910";
	padding: 8px 0;
	width: 24px;
	height: 40px;
	border-radius: 0;
	left: -2px;
	background-color: #fff;
	font-size: 24px;
}
.c-step--schedule > li > dl {
	padding-top: 6px;
	padding-bottom: 16px;
	border-left-color: #ddd;
}

/*----------
	button
----------*/
.c-button__inner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 64px;
	border: 1px solid #024796;
	position: relative;
	overflow: hidden;
	background-color: #fff;
	color: #024796;
	cursor: pointer;
}
.c-button__inner::before {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e901";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: 24px;
	font-size: 1.6rem;
	line-height: 16px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.c-button__inner > span {
	display: block;
	padding: 8px 32px 8px 56px;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.4;
	color: inherit;
}
.c-button__icon {
	width: 18px;
	height: 18px;
	margin: auto;
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 1.8rem;
	line-height: 1;
	color: inherit;
}
@media (min-width: 768px) {
	.c-button__inner {
		transition: background-color 0.2s, color 0.2s;
	}
	.c-button__inner:hover {
		background-color: #024796;
		color: #fff;
	}
}

/* color */
.c-button--border .c-button__inner {
	border-color: #fff;
	background-color: transparent;
	color: #fff;
}
@media (min-width: 768px) {
	.c-button--border .c-button__inner:hover {
		background-color: rgba(255, 255, 255, 0.2);
	}
}

.c-button--enter .c-button__inner {
	border: none;
	background-color: #024796;
	color: #fff;
	transition: opacity 0.2s;
}
.c-button--enter .c-button__inner > span {
	padding: 8px 24px;
}
.c-button--enter .c-button__inner::before {
	content: none;
}
@media (min-width: 768px) {
	.c-button--enter .c-button__inner:hover {
		opacity: 0.8;
	}
}

/* size */
.c-button--small .c-button__inner {
	min-height: 40px;
}

/*----------
	button
----------*/
.c-button-cnv__inner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 56px;
	position: relative;
	overflow: hidden;
	background-color: #024796;
	color: #fff;
	cursor: pointer;
}
.c-button-cnv__inner > span {
	display: block;
	padding: 8px 16px;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4;
}
.c-button-cnv__inner > span > [class^=icon-] {
	margin-right: 8px;
	font-size: 2.4rem;
	vertical-align: middle;
	line-height: 24px;
}
.c-button-cnv--seco .c-button-cnv__inner {
	background-color: #F6E746;
	color: #024796;
}
.c-button-cnv--small .c-button-cnv__inner {
	min-height: 40px;
}
@media (min-width: 768px) {
	.c-button-cnv__inner {
		transition: background-color 0.2s;
	}
	.c-button-cnv__inner:hover {
		background-color: #2475CD;
		color: #fff;
	}
	.c-button-cnv--seco .c-button-cnv__inner:hover {
		background-color: #FFF590;
		color: #024796;
	}
}

/*----------
	button qualification
----------*/
.c-button-qual__inner {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 76px;
	padding: 16px;
	border: 1px solid #ddd;
	position: relative;
	overflow: hidden;
	background-color: #fff;
	color: #333;
	cursor: pointer;
}
.c-button-qual__inner::before {
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	top: -15px;
	right: -15px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: #024796;
}
.c-button-qual__inner > dl {
	line-height: 1.4;
}
.c-button-qual__inner > dl > dt {
	font-weight: bold;
	font-size: 1.2rem;
}
.c-button-qual__inner > dl > dd {
	margin-top: 8px;
	font-size: 1rem;
}
.c-button-qual--uscpa .c-button-qual__inner::before {
	background-color: #137DC7;
}
.c-button-qual--mba .c-button-qual__inner::before {
	background-color: #37455E;
}
.c-button-qual--cia .c-button-qual__inner::before {
	background-color: #ED963E;
}
.c-button-qual--cfe .c-button-qual__inner::before {
	background-color: #9BAA34;
}
.c-button-qual--cisa .c-button-qual__inner::before {
	background-color: #34B597;
}
.c-button-qual--ifrs .c-button-qual__inner::before {
	background-color: #E8675A;
}
.c-button-qual--icp .c-button-qual__inner::before {
	background-color: #5D423D;
}
@media (min-width: 768px) {
	.c-button-qual__inner {
		transition: background-color 0.2s, border-color 0.2s, color 0.2s;
	}
	.c-button-qual__inner:hover {
		border-color: #024796;
		background-color: #F2F8FF;
		color: #024796;
		z-index: 1;
	}
}

/*----------
	button container
----------*/
.c-button-container__item {
	max-width: 335px;
}
@media (max-width: 767px) {
	.c-button-container__item {
		margin: 0 auto 16px;
	}
	.c-button-container__item:last-child {
		margin-bottom: 0;
	}
}
@media (min-width: 768px) {
	.c-button-container {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: stretch;
	}
	.c-button-container__item {
		max-width: 312px;
		flex: 1 1 312px;
	}
	.c-button-container--2up {
		justify-content: center;
	}
	.c-button-container--2up .c-button-container__item {
		flex: 1 1 312px;
	}
	.c-button-container--2up .c-button-container__item + .c-button-container__item {
		margin-left: 32px;
	}
	.c-button-container--3up, .c-button-container--4up {
		display: grid;
		gap: 32px;
	}
	.c-button-container--3up .c-button-container__item, .c-button-container--4up .c-button-container__item {
		max-width: none;
	}
	.c-button-container--3up {
		grid-template-columns: repeat(3, 1fr);
	}
	.c-button-container--4up {
		grid-template-columns: repeat(4, 1fr);
	}
	.c-button-container--center {
		justify-content: center;
	}
	.c-button-container--left {
		justify-content: flex-start;
	}
	.c-button-container--right {
		justify-content: flex-end;
	}
}

/*----------
	tab button
----------*/
.c-button-tab {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.c-button-tab__item {
	flex: 1 1 100%;
	margin-right: -1px;
}
.c-button-tab__item > a,
.c-button-tab__item > button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 16px 8px;
	border: 1px solid #ddd;
	border-bottom: 2px solid #024796;
	background-color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 1.3rem;
	line-height: 1.4;
	color: #666;
	outline: none;
	cursor: pointer;
	transition: background-color 0.2s;
}
.c-button-tab__item > a.active,
.c-button-tab__item > button.active {
	background-color: #024796;
	cursor: default;
	font-weight: bold;
	pointer-events: none;
	color: #fff;
}
@media (min-width: 768px) {
	.c-button-tab__item > a,
.c-button-tab__item > button {
		font-size: 1.8rem;
	}
	.c-button-tab__item > a:hover,
.c-button-tab__item > button:hover {
		color: #2C87E9;
	}
}

.c-button-tab__infosession__item {
	flex: 1 1 100%;
	margin-right: -1px;
}
.c-button-tab__infosession__item > a,
.c-button-tab__infosession__item > button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 16px 8px;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	background-color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 1.3rem;
	line-height: 1.4;
	color: #666;
	outline: none;
	cursor: pointer;
	transition: background-color 0.2s;
}
.c-button-tab__infosession__item > a.active,
.c-button-tab__infosession__item > button.active {
	background-color: #137DC7;
	cursor: default;
	font-weight: bold;
	pointer-events: none;
	color: #fff;
}
@media (min-width: 768px) {
	.c-button-tab__infosession__item > a,
.c-button-tab__infosession__item > button {
		font-size: 1.8rem;
	}
	.c-button-tab__infosession__item > a:hover,
.c-button-tab__infosession__item > button:hover {
		color: #2C87E9;
	}
}

.js-tab [data-tab-content] {
	visibility: hidden;
	height: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.2s, visibility 0.2s;
}
.js-tab [data-tab-content].active {
	visibility: visible;
	height: auto;
	pointer-events: all;
	opacity: 1;
}

/*----------
	panel button
----------*/
.c-button-panel__item {
	margin-right: -1px;
	margin-top: -1px;
}
.c-button-panel__item > a,
.c-button-panel__item > button {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	min-height: 80px;
	border: 1px solid #ddd;
	position: relative;
	overflow: hidden;
	background-color: #fff;
	color: #333;
	cursor: pointer;
}
.c-button-panel__item > a::before,
.c-button-panel__item > button::before {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e901";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: 24px;
	font-size: 1.6rem;
	line-height: 16px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #024796;
}
.c-button-panel__item > a > span,
.c-button-panel__item > button > span {
	display: block;
	padding: 8px 24px 8px 56px;
	font-size: 1.4rem;
	line-height: 1.4;
	color: inherit;
}
.c-button-panel--anchor {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
}
.c-button-panel--anchor .c-button-panel__item {
	flex: 0 0 50%;
}
.c-button-panel--anchor .c-button-panel__item > a,
.c-button-panel--anchor .c-button-panel__item > button {
	min-height: 50px;
}
.c-button-panel--anchor .c-button-panel__item > a::before,
.c-button-panel--anchor .c-button-panel__item > button::before {
	content: "\e903";
}
.c-button-panel--anchor .c-button-panel__item > a > span,
.c-button-panel--anchor .c-button-panel__item > button > span {
	font-weight: bold;
}
@media (max-width: 767px) {
	.c-button-panel--anchor .c-button-panel__item > a::before,
.c-button-panel--anchor .c-button-panel__item > button::before {
		left: 8px;
	}
	.c-button-panel--anchor .c-button-panel__item > a > span,
.c-button-panel--anchor .c-button-panel__item > button > span {
		padding: 8px 16px 8px 32px;
	}
}
@media (min-width: 768px) {
	.c-button-panel {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
	}
	.c-button-panel__item {
		flex: 0 0 33.3333%;
	}
	.c-button-panel__item > a,
.c-button-panel__item > button {
		transition: background-color 0.2s;
	}
	.c-button-panel__item > a:hover,
.c-button-panel__item > button:hover {
		color: #024796;
		background-color: #F2F8FF;
	}
	.c-button-panel__item > a > span,
.c-button-panel__item > button > span {
		padding-left: 56px;
	}
	.c-button-panel--anchor .c-button-panel__item {
		flex-basis: 33.3333%;
	}
}

/*----------
	js modal
----------*/

.c-js-modal {
	display: none;
	position: fixed;
	z-index: 51;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	overflow: auto;
	background-color: rgba(0,0,0,0.5);
	}
	
	.c-modal-content{
	background-color: white;
	width: 1000px;
	max-width: 1000px;
	padding: 50px 30px;
	position: absolute;
	top: 50%;
	left: 50%;
	height: auto;
	transform: translate(-50%, -50%);
	}

	.c-modal__title{
	font-weight: bold;
    font-size: 18px;
	color: #024796;
	}

	.c-modal__date{
	display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    font-size: 1.6rem;
    line-height: 1;
	padding-top: 20px;
	}

	.c-modal__date__day{
	font-weight: 500;
	font-size: 2.3rem;
	}

	.c-modal__date__week{
	font-weight: 500;
    font-size: 1.4rem;
	}

	.c-modal__date__icon{
	margin-left: 6px;
	}

	.c-modal__text__inner{
	padding-top: 30px;
	display: flex;
	flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: space-between;
	}

	.c-modal__image{
		width: 35%;
	}

	.c-modal__text__block{
		width: 60%;
	}

	.c-modal__Instructor{
	padding-top: 30px;
	font-weight: bold;
	}

	.c-modal__name{
	padding-top: 10px;
	}

	.c-modal__subject{
	padding: 10px 0 30px 0;
	}

	.c-modal__apply .c-button__inner{
		width: 50%;
		margin: 0 auto;
		min-height: 40px;
		background-color: #137DC7;
		margin-top: 20px;
	}

	.c-modal__close{
		background-color: #004896;
		position: absolute;
		top: 0;
		right: 0;
		width: 50;
		width: 50px;
		height: 50px;
		color: #fff;
		font-size: 2.3rem;
	}

	@media (max-width: 1000px) {
		.c-modal-content{
			width: 90%;
			}
	}

@media (max-width: 768px) {
	.c-modal-content {
		padding: 30px 30px;
		height: 90%;
	}
	.c-modal-body {
		height: 100%;
		overflow-y: auto;
	}
		.c-modal__title{
			padding-right: 10%;
		}
		.c-modal__apply .c-button__inner{
			width: 90%;
			margin-top: 5px;
		}
		.c-modal__text__inner{
			padding-top: 30px;
			flex-direction: column;
			}
		
			.c-modal__image{
				width: 100%;
			}
		
			.c-modal__text__block{
				padding-top: 10px;
				width: 100%;
			}
	}
	


/*----------
	tag
----------*/
.c-tag {
	display: inline-block;
	height: 24px;
	vertical-align: middle;
	border: 1px solid #ddd;
	background-color: #fff;
}
.c-tag > a, .c-tag > span {
	display: block;
	max-width: 100%;
	min-width: 44px;
	padding: 0 8px;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 22px;
	color: #999;
}
.c-tag--prim > a, .c-tag--prim > span {
	color: #024796;
}
@media (min-width: 768px) {
	.c-tag > a {
		transition: background-color 0.2s, color 0.2s;
	}
	.c-tag > a:hover {
		background-color: #024796;
		color: #fff;
	}
}

/*----------
	news tag
----------*/
.c-tag-news {
	display: inline-block;
	height: 22px;
	vertical-align: middle;
	background-color: #f3f6fa;
}
.c-tag-news > span {
	display: block;
	max-width: 100%;
	min-width: 96px;
	padding: 0 5px;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 1.2rem;
	line-height: 22px;
	color: #024796;
}

/*----------
	article tag
----------*/
.c-tag-article {
	display: inline-block;
	height: 20px;
	border: 1px solid #024796;
	border-radius: 4px;
	vertical-align: middle;
	background-color: #fff;
}
.c-tag-article > span {
	display: block;
	max-width: 100%;
	min-width: 72px;
	padding: 0 10px;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 1.2rem;
	line-height: 18px;
	color: #024796;
}
@media (min-width: 768px) {
	.c-tag-article {
		height: 24px;
	}
	.c-tag-article > span {
		line-height: 22px;
	}
}

/*----------
	badge tag
----------*/
.c-badge {
	display: inline-block;
	height: 20px;
	vertical-align: middle;
	background-color: #33b5e9;
}
.c-badge > span {
	display: block;
	max-width: 100%;
	min-width: 50px;
	padding: 0 10px;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 20px;
	color: #fff;
}
@media (min-width: 768px) {
	.c-badge {
		height: 24px;
	}
	.c-badge > span {
		line-height: 24px;
	}
}

/*----------
	tag container
----------*/
.c-tag-container {
	margin-top: -8px;
}
.c-tag-container > [class*=c-tag] {
	margin-right: 6px;
	margin-top: 8px;
}

/*----------
	figure
----------*/
.c-figure {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
}
.c-figure__item {
	max-width: 656px;
	flex-grow: 0;
	flex-shrink: 1;
	text-align: center;
}
.c-figure__item--full {
	max-width: none;
}
.c-figure__item > img {
	max-width: 100%;
	width: auto;
}
.c-figure__caption {
	margin-top: 8px;
	text-align: left;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #333;
}
.c-figure--left {
	justify-content: flex-start;
}
.c-figure--right {
	justify-content: flex-end;
}
@media (max-width: 767px) {
	.c-figure__item + .c-figure__item {
		margin-top: 16px;
	}
}
@media (min-width: 768px) {
	.c-figure {
		flex-wrap: nowrap;
	}
	.c-figure__item--2col {
		max-width: 484px;
	}
	.c-figure__item--3col {
		max-width: 226px;
	}
	.c-figure__item + .c-figure__item {
		margin-left: 32px;
	}
}

/*----------
	fixed ratio image
----------*/
.c-image {
	height: 0;
	padding-bottom: 66.6666666667%;
	position: relative;
	overflow: hidden;
}
.c-image > img,
.c-image > .c-image__element {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.c-image > picture > img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}
.c-image--16t9 {
	padding-bottom: 56.25%;
}
.c-image--sq {
	padding-bottom: 100%;
}

/*----------
	fixed ratio image
----------*/
.c-movie {
	height: 0;
	padding-bottom: 56.25%;
	position: relative;
	overflow: hidden;
}
.c-movie > .c-movie__element {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*----------
	deflist
----------*/
.c-deflist__item > dl {
	font-size: 1.4rem;
	line-height: 1.6;
}
.c-deflist__item > dl > dt {
	padding: 16px;
	border: 1px solid #ddd;
	background-color: #f3f3f3;
	font-weight: bold;
}
.c-deflist__item > dl > dd {
	margin: -1px 0;
	padding: 16px;
	border: 1px solid #ddd;
}
@media (min-width: 768px) {
	.c-deflist__item > dl {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}
	.c-deflist__item > dl > dt {
		flex: 0 0 226px;
	}
	.c-deflist__item > dl > dd {
		flex-grow: 1;
		margin: 0 0 0 -1px;
	}
	.c-deflist__item + .c-deflist__item {
		margin-top: -1px;
	}
}

/*----------
	table
----------*/
.c-table table {
	width: 100%;
	text-align: left;
	border: none;
	font-size: 1.4rem;
	line-height: 1.6;
}
.c-table th,
.c-table td {
	padding: 16px;
	border: 1px solid #ddd;
	vertical-align: middle;
}
.c-table th {
	background-color: #f3f3f3;
	font-weight: bold;
}
.c-table thead th {
	background-color: #ddd;
	border-color: #fff;
}
.c-table--min-s::before, .c-table--min-l::before, .c-table--min-full::before {
	content: "";
	display: none;
	width: 240px;
	height: 32px;
	margin-bottom: 16px;
	position: -webkit-sticky;
	position: sticky;
	left: 24px;
	background: url(/common/images/table-swipe.svg) no-repeat center;
	background-size: contain;
}
.c-table--min-s {
	overflow-x: auto;
}
.c-table--min-s table {
	min-width: 450px;
}
@media (max-width: 503px) {
	.c-table--min-s::before {
		display: block;
	}
}
.c-table--min-l {
	overflow-x: auto;
}
.c-table--min-l table {
	min-width: 650px;
}
@media (max-width: 727px) {
	.c-table--min-l::before {
		display: block;
	}
}
.c-table--min-full {
	overflow-x: auto;
}
.c-table--min-full table {
	min-width: 1000px;
}
@media (max-width: 1063px) {
	.c-table--min-full::before {
		display: block;
	}
}

/*----------
	card
----------*/
.c-card__inner {
	height: 100%;
	display: block;
}
.c-card__image {
	margin-bottom: 16px;
}
.c-card__content {
	padding: 0 16px 16px;
}
.c-card__title {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.4;
}
.c-card__text {
	margin-top: 16px;
}
.c-card__tag {
	margin-top: 16px;
}
.c-card__button {
	max-width: 312px;
	margin: 16px auto 0;
}
.c-card--shadow .c-card__inner {
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}
.c-card a.c-card__inner {
	color: #333;
}
.c-card a.c-card__inner .c-card__text {
	color: #333;
}
@media (min-width: 768px) {
	.c-card--shadow a.c-card__inner {
		transition: box-shadow 0.2s;
	}
	.c-card--shadow a.c-card__inner:hover {
		box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.2);
	}
	.c-card a.c-card__inner:hover {
		color: #2C87E9;
	}
}

/*----------
	card dl
----------*/
.c-card-dl {
	display: block;
	padding: 20px 24px;
	border: 1px solid #ddd;
	color: #333;
}
.c-card-dl > dl > dt {
	font-weight: bold;
	font-size: 1.6rem;
}
.c-card-dl > dl > dd {
	margin-top: 16px;
}
@media (min-width: 768px) {
	.c-card-dl > dl > dt {
		transition: color 0.2s;
	}
	.c-card-dl:hover {
		color: #333;
	}
	.c-card-dl:hover > dl > dt {
		color: #2C87E9;
	}
}

/*----------
	imageset
----------*/
.c-imageset__image {
	position: relative;
	overflow: hidden;
}
.c-imageset__image__reason::before {
	content: "";
	display: block;
	width: 120px;
	height: 120px;
	position: absolute;
	top: -60px;
	left: -60px;
	z-index: 1;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: rgba(2, 71, 150, 0.8);
}
.c-imageset__image__reason > span {
	position: absolute;
	display: block;
	width: 50px;
	height: 50px;
	top: 0;
	left: 0;
	z-index: 2;
	text-align: center;
	font-family: "Times New Roman", serif;
	font-size: 4rem;
	line-height: 50px;
	color: #fff;
}
.c-imageset__content > *:first-child {
	margin-top: 0 !important;
}
.c-imageset__content > *:last-child {
	margin-bottom: 0 !important;
}
.c-imageset__title {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.4;
}
.c-imageset__text {
	margin-top: 16px;
}
.c-imageset__button {
	max-width: 312px;
	margin: 16px auto 0;
}
@media (max-width: 767px) {
	.c-imageset__image {
		margin-bottom: 16px;
	}
}
@media (min-width: 768px) {
	.c-imageset__inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.c-imageset__image {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: calc(50% - 16px);
		margin-right: 32px;
	}
	.c-imageset__image__reason::before {
		width: 150px;
		height: 150px;
		top: -75px;
		left: -75px;
	}
	.c-imageset__image__reason > span {
		width: 60px;
		height: 60px;
		font-size: 6rem;
		line-height: 60px;
	}
	.c-imageset__content {
		flex: 1 0 calc(50% - 16px);
	}
	.c-imageset__button {
		margin-top: 32px;
		margin-left: 0;
	}
	.c-imageset--1t2 .c-imageset__image {
		flex-basis: calc(33.3333% - 16px);
	}
	.c-imageset--1t3 .c-imageset__image {
		flex-basis: calc(25% - 16px);
	}
	.c-imageset--reverse .c-imageset__inner {
		flex-direction: row-reverse;
	}
	.c-imageset--reverse .c-imageset__image {
		margin-right: 0;
		margin-left: 32px;
	}
}

/*----------
	iconset
----------*/
.c-iconset__inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.c-iconset__image {
	width: 100px;
	flex: 0 0 100px;
	margin-right: 20px;
	overflow: hidden;
}
.c-iconset__content {
	width: calc(100% - 120px);
	flex-grow: 1;
	flex-shrink: 0;
	flex-basis: calc(100% - 120px);
}
.c-iconset__title {
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.4;
	color: #333;
}
.c-iconset__text {
	margin-top: 8px;
	color: #333;
}
@media (min-width: 768px) {
	.c-iconset a.c-iconset__inner .c-iconset__title {
		transition: color 0.2s;
	}
	.c-iconset a.c-iconset__inner:hover .c-iconset__title {
		color: #2C87E9;
	}
	.c-iconset__image {
		width: 144px;
		flex: 0 0 144px;
	}
	.c-iconset__content {
		width: calc(100% - 176px);
		flex-basis: calc(100% - 176px);
	}
	.c-iconset__title {
		font-size: 1.8rem;
	}
	.c-iconset__text {
		margin-top: 16px;
	}
}

/*----------
	iconset column
----------*/
@media (max-width: 767px) {
	.c-iconset-column__item {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.c-iconset-column__item + .c-iconset-column__item {
		margin-top: 40px;
	}
	.c-iconset-column__image {
		width: 120px;
		flex: 0 0 120px;
		margin-right: 16px;
	}
	.c-iconset-column__content {
		font-size: 1.6rem;
	}
}
@media (min-width: 768px) {
	.c-iconset-column {
		display: flex;
		justify-content: space-around;
		align-items: flex-start;
	}
	.c-iconset-column__item {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: calc(33.333% - 32px);
	}
	.c-iconset-column__image {
		max-width: 200px;
		margin: 0 auto;
	}
	.c-iconset-column__content {
		margin-top: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/*----------
	avatar
----------*/
.c-avatar {
	padding: 24px 0;
	border-top: 1px dashed #ddd;
	border-bottom: 1px dashed #ddd;
	font-size: 1.2rem;
	line-height: 1.4;
}
.c-avatar__image {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	overflow: hidden;
}
.c-avatar__info {
	padding-top: 8px;
}
.c-avatar__title > em {
	display: block;
	font-weight: bold;
	font-size: 1.6rem;
}
.c-avatar__post {
	margin-top: 8px;
	font-size: 1.2rem;
	color: #666;
}
@media (max-width: 767px) {
	.c-avatar__item {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.c-avatar__item + .c-avatar__item {
		margin-top: 24px;
	}
	.c-avatar__image {
		flex: 0 0 80px;
		margin-right: 24px;
	}
	.c-avatar__info {
		flex: 1 1 auto;
	}
}
@media (min-width: 768px) {
	.c-avatar {
		display: flex;
		justify-content: space-around;
		align-items: flex-start;
		padding: 32px 0;
		text-align: center;
	}
	.c-avatar__image {
		width: 120px;
		height: 120px;
		margin: 0 auto;
	}
}

/*----------
	column article link
----------*/
.c-article-column__inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	color: #333;
}
.c-article-column__image {
	width: 150px;
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: 150px;
	margin-right: 16px;
	position: relative;
}
.c-article-column__badge {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.c-article-column__content {
	flex-grow: 1;
	flex-shrink: 1;
}
.c-article-column__date {
	margin-top: 8px;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1;
	color: #333;
}
.c-article-column__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	height: 3.2em;
	margin-top: 8px;
	overflow: hidden;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1.6;
}
@media (min-width: 768px) {
	.c-article-column__image {
		width: 226px;
		flex-basis: 226px;
		margin-right: 24px;
	}
	.c-article-column__tag {
		margin-right: 10px;
	}
	.c-article-column__date {
		display: inline-block;
	}
	.c-article-column__title {
		-webkit-line-clamp: 3;
		height: 4.8em;
		margin-top: 12px;
		font-size: 2rem;
	}
	.c-article-column--narrow .c-article-column__image {
		width: 150px;
		flex-basis: 150px;
		margin-right: 16px;
	}
	.c-article-column--narrow .c-article-column__title {
		margin-top: 8px;
		font-size: 1.4rem;
	}
	.c-article-column--pccard .c-article-column__inner {
		display: block;
	}
	.c-article-column--pccard .c-article-column__image {
		width: auto;
		margin-right: 0;
	}
	.c-article-column--pccard .c-article-column__content {
		margin-top: 16px;
	}
	.c-article-column--pccard .c-article-column__title {
		-webkit-line-clamp: 2;
		height: 3.2em;
		font-weight: normal;
		font-size: 1.4rem;
	}
}

/*----------
	voice article link
----------*/
.c-article-voice__inner {
	display: grid;
	grid-template-columns: 100px auto;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
	row-gap: 10px;
	color: #333;
}
.c-article-voice__badge {
	margin-bottom: 8px;
}
.c-article-voice__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	max-height: 4.2em;
	overflow: hidden;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4;
}
.c-article-voice__text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	max-height: 2.8em;
	margin-top: 8px;
	overflow: hidden;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #333;
}
.c-article-voice__info {
	margin-top: 8px;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #333;
}
.c-article-voice__tag {
	grid-column: 1/3;
}
@media (min-width: 768px) {
	.c-article-voice__inner {
		grid-template-columns: 144px auto;
		-webkit-column-gap: 24px;
		-moz-column-gap: 24px;
		column-gap: 24px;
		row-gap: 10px;
	}
	.c-article-voice__image {
		grid-row: 1/span 2;
	}
	.c-article-voice__title {
		max-height: 4.8em;
		font-size: 1.6rem;
		line-height: 1.6;
	}
	.c-article-voice__tag {
		grid-column: 2/3;
	}
}

.c-article-voice--pickup .c-article-voice__inner {
	display: block;
	position: relative;
}
.c-article-voice--pickup .c-article-voice__badge {
	position: absolute;
	top: 0;
	left: 0;
}
.c-article-voice--pickup .c-article-voice__title {
	margin-top: 16px;
	font-size: 1.6rem;
	line-height: 1.6;
}
.c-article-voice--pickup .c-article-voice__info {
	margin-top: 12px;
}
.c-article-voice--pickup .c-article-voice__tag {
	margin-top: 16px;
}
@media (min-width: 768px) {
	.c-article-voice--pickup .c-article-voice__content {
		padding-left: 16px;
		padding-right: 16px;
	}
	.c-article-voice--pickup .c-article-voice__tag {
		padding-left: 16px;
		padding-right: 16px;
	}
}

/*----------
	float image
----------*/
.c-float-image__image {
	display: block;
	margin-bottom: 16px;
}
@media (min-width: 768px) {
	.c-float-image:after {
		content: "";
		display: table;
		clear: both;
	}
	.c-float-image__image {
		width: auto;
		max-width: calc(50% - 24px);
		float: left;
		margin-bottom: 24px;
		margin-right: 24px;
	}
	.c-float-image--right .c-float-image__image {
		float: right;
		margin-left: 24px;
		margin-right: 0;
	}
}

/*----------
	case study
----------*/
.c-casestudy__inner {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	color: #333;
	flex-wrap: wrap;
}
.c-casestudy__image {
	flex: 0 0 100px;
	margin-right: 20px;
}
.c-casestudy__content {
	flex: 1 1 auto;
	width: calc(100% - 120px);
}
.c-casestudy__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	max-height: 4.2em;
	overflow: hidden;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4;
}
.c-casestudy__info {
	margin-top: 8px;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #333;
}
.c-casestudy__comment {
	margin-top: 16px;
	padding: 20px 24px;
	border: 1px solid #ddd;
	border-radius: 4px;
	position: relative;
	width: 100%;
	color: #333;
}
.c-casestudy__comment::after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	position: absolute;
	top: -7px;
	left: 35px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: #fff;
}
@media (min-width: 768px) {
	.c-casestudy__inner:hover .c-casestudy__comment {
		color: #333;
	}
	.c-casestudy__image {
		flex-basis: 144px;
		margin-right: 24px;
	}
	.c-casestudy__content {
		flex: 1 1 auto;
		width: calc(100% - 168px);
	}
	.c-casestudy__title {
		font-size: 1.6rem;
	}
}

/*----------
	form basic
----------*/
.u-form-errmsg {
	margin-top: 8px;
	font-size: 1.1rem;
	color: #E60000;
}

select:focus {
	outline: none;
	border-color: #024796;
	background-color: #fff;
}

.error select {
	border-color: #E60000 !important;
	background-color: #FFF2F2 !important;
}

/*----------
	form select
----------*/
.c-form-select {
	position: relative;
	font-weight: normal;
	font-size: 1.4rem;
	line-height: 1.4;
}
.c-form-select__select {
	position: relative;
}
.c-form-select__select::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e903";
	display: block;
	width: 14px;
	height: 12px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	font-size: 14px;
	color: #666;
	pointer-events: none;
}
.c-form-select select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 100%;
	height: 40px;
	padding: 0 32px 0 12px;
	border: 1px solid #ddd;
	background-color: #fff;
	font-size: 1.4rem;
}
@media (min-width: 768px) {
	.c-form-select select {
		padding-left: 16px;
		font-size: 1.6rem;
	}
}

/*----------
	news
----------*/
.c-news > a {
	display: inline-block;
}
.c-news__detail {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.c-news__date {
	flex-shrink: 0;
	margin-right: 16px;
	font-size: 1.4rem;
	line-height: 1.6;
	vertical-align: middle;
}
.c-news__headline {
	flex: 0 0 100%;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #333;
}
@media (max-width: 767px) {
	.c-news__date {
		margin-bottom: 8px;
	}
	.c-news__tag {
		margin-bottom: 8px;
	}
}
@media (min-width: 768px) {
	.c-news > a .c-news__headline {
		transition: color 0.2s;
	}
	.c-news > a:hover .c-news__headline {
		color: #024796;
	}
	.c-news__tag {
		margin-right: 16px;
	}
	.c-news__headline {
		flex: 0 0 auto;
	}
}

/*----------
	news list
----------*/
.c-news-list {
	padding-bottom: 24px;
	border-bottom: 1px dashed #ddd;
}
.c-news-list__item {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px dashed #ddd;
}

/*----------
	infomation session
----------*/
.c-infosession__cattag {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 8px;
}
.c-infosession__cattag > li {
	min-width: 80px;
	height: 20px;
	border: 1px solid #e60000;
	background-color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 1rem;
	line-height: 18px;
	color: #e60000;
}
.c-infosession__cattag > li.soon {
	background-color: #e60000;
	color: #fff;
}
.c-infosession__date {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	font-size: 1.6rem;
	line-height: 1;
}
.c-infosession__date__day {
	font-weight: 500;
	font-size: 2.8rem;
}
.c-infosession__date__week {
	font-weight: 500;
	font-size: 1.4rem;
}
.c-infosession__date__icon {
	margin-left: 6px;
}
.c-infosession__date__icon > span {
	display: block;
	width: 16px;
	height: 16px;
	background: url("/common/images/icon-am.svg") no-repeat center;
	background-size: contain;
}
.c-infosession__date__icon > span.am {
	background-image: url("/common/images/icon-am.svg");
}
.c-infosession__date__icon > span.pm {
	background-image: url("/common/images/icon-pm.svg");
}
.c-infosession__date.sat .c-infosession__date__day,
.c-infosession__date.sat .c-infosession__date__week {
	color: #137DC7;
}
.c-infosession__date.sun .c-infosession__date__day,
.c-infosession__date.sun .c-infosession__date__week {
	color: #E60000;
}
.c-infosession__title {
	font-weight: bold;
	margin: 12px 0 0;
	font-size: 18px;
}
.c-infosession__location {
	margin-top: 12px;
	line-height: 1;
}
.c-infosession__location > p {
	display: inline-block;
	margin-right: 16px;
}
.c-infosession__location > ul {
	display: inline-block;
	vertical-align: middle;
}
.c-infosession__text {
	margin-top: 6px;
	font-size: 1.4rem;
}
.c-infosession__apply {
	margin-top: 16px;
}
@media (min-width: 768px) {
	.c-infosession__title {
		margin-right: 200px;
	}
	.c-infosession {
		position: relative;
	}
	.c-infosession__apply {
		margin-top: 0;
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
	}
}


.c-infosession-content--1col .c-infosession-list {
	flex-basis: 100%;
}
@media (max-width: 767px) {
	.c-infosession-content {
		/*&.js-tab {
			.c-infosession-list {
				visibility: hidden;
				height: 0;
				pointer-events: none;
				opacity: 0;
				transition: opacity f.$hov-dur, visibility f.$hov-dur;

				&.active {
					visibility: visible;
					height: auto;
					pointer-events: all;
					opacity: 1;
				}
			}
		}*/
	}
}
@media (min-width: 768px) {
	.c-infosession-content__lists {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}
	.c-infosession-content__tab {
		display: none;
	}
	.c-infosession-content.js-tab .c-infosession-list {
		visibility: visible;
		height: auto;
		pointer-events: all;
		opacity: 1;
	}
	.c-infosession-content--1col .c-infosession-list {
		padding: 16px 40px 0;
	}
}

.c-infosession-list {
	background-color: #fff;
	padding: 0 10px;
}
.c-infosession-list__title {
	height: 0;
	visibility: hidden;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #024796;
}
.c-infosession-list__cond {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 24px;
}
.c-infosession-list__cond > li {
	margin: 0 5px;
}
.c-infosession-list__cond > li > button {
	border-bottom: 2px solid #fff;
	position: relative;
	outline: none;
}
.c-infosession-list__cond > li > button > span {
	display: block;
	padding: 0 10px 10px 10px;
	position: relative;
	background-color: #fff;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	color: #666;
}
.c-infosession-list__cond > li > button::before {
	content: "";
	display: none;
	width: 10px;
	height: 10px;
	position: absolute;
	bottom: -4px;
	left: 50%;
	-webkit-transform: translateX(-4px) rotate(45deg);
	transform: translateX(-4px) rotate(45deg);
	background-color: #024796;
}
.c-infosession-list__cond > li > button.active {
	border-bottom-color: #024796;
	color: #024796;
}
.c-infosession-list__cond > li > button.active::before {
	display: block;
}
.c-infosession-list__list {
	margin-top: 24px;
	border-bottom: 1px solid #ddd;
}
.c-infosession-list__list > li {
	padding: 20px;
	border-top: 1px solid #ddd;
}
.c-infosession-list__list > li.soon {
	background-color: #FFF8F8;
}
.c-infosession-list__footer {
	padding: 16px 0 24px 0;
}
.c-infosession-list__footer > p {
	padding: 8px 16px;
	background-color: #F9F6DE;
	font-size: 1.2rem;
}
.c-infosession-list.js-filterlist .c-infosession-list__list > li {
	padding-top: 0;
	padding-bottom: 0;
	visibility: hidden;
	height: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.2s, visibility 0.2s;
}
.c-infosession-list.js-filterlist .c-infosession-list__list > li.active {
	padding-top: 20px;
	padding-bottom: 20px;
	visibility: visible;
	height: auto;
	pointer-events: all;
	opacity: 1;
}
@media (min-width: 768px) {
	.c-infosession-list {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: calc(50% - 12px);
		padding-top: 24px;
		border-top: 2px solid #024796;
	}
	.c-infosession-list__title {
		height: auto;
		visibility: visible;
	}
	.c-infosession-list__footer {
		padding: 24px 0 32px 0;
	}
	.c-infosession-list__footer > p {
		text-align: center;
		font-size: 1.4rem;
	}
	.c-infosession-list + .c-infosession-list {
		margin-left: 24px;
	}
}

/*----------
    infosession select
----------*/

.c-infosession-select{
	display: flex;
	flex-direction: column;
    margin: 0 auto;
	padding: 20px 20px 10px 20px;
}
.c-infosession-form {
    position: relative;
    font-weight: normal;
    font-size: 1.4rem;
    line-height: 1.4;
}
.c-infosession-form__select {
    position: relative;
	padding-top: 10px;
}
.c-infosession-form__select::after {
    font-family: "iconfont" !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    content: "";
    display: block;
    width: 14px;
    height: 12px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    font-size: 14px;
    color: #666;
    pointer-events: none;
}
.c-infosession-list .c-infosession-select > p {
	padding-top: 10px;
}
.c-infosession-form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    height: 50px;
    padding: 0 160px 0 12px;
    border: 1px solid #ddd;
    background-color: #fff;
    font-size: 1.4rem;
	color: #666;
}

.c-infosession-detail__text{
	text-align: center;
	margin: 10px 0 0 0;
	text-decoration: underline;
}

.c-infosession-detail__text a, button{
	font-size: 1.4rem;
	color: #333;
}

@media (min-width: 768px) {
	.c-infosession-select{
		flex-direction: unset;
		justify-content: space-evenly;
		align-items: center;
		width: 820px;
		padding: 30px 0;
	}
	.c-infosession-list .c-infosession-select > p {
		padding-top: 0px;
	}
    .c-infosession-form select {
        padding-left: 16px;
        font-size: 1.4rem;
    }
	.c-infosession-form__select {
		padding-top: 0px;
	}
	.c-infosession-detail__text{
		margin: 0px;
	}
	.c-infosession-detail__text a, button{
		font-size: 1.2rem;
	}
}


/*----------
	grid
----------*/
@media (max-width: 767px) {
	.c-grid__item + .c-grid__item {
		margin-top: 32px;
	}
	.c-grid--s2p4up {
		display: grid;
		gap: 16px;
		grid-template-columns: repeat(2, 1fr);
	}
	.c-grid--s2p4up .c-grid__item + .c-grid__item {
		margin-top: 0;
	}
}
@media (min-width: 768px) {
	.c-grid {
		display: grid;
		gap: 32px;
	}
	.c-grid--2up {
		grid-template-columns: repeat(2, 1fr);
	}
	.c-grid--3up {
		grid-template-columns: repeat(3, 1fr);
	}
	.c-grid--4up, .c-grid--s2p4up {
		grid-template-columns: repeat(4, 1fr);
	}
}

/*----------
	single frame
----------*/
.c-single-frame {
	max-width: 656px;
	margin: 0 auto;
}
.c-single-frame--2col {
	max-width: 484px;
}
.c-single-frame--3col {
	max-width: 226px;
}
.c-single-frame--4col {
	max-width: 140px;
}

/*----------
	page feed
----------*/
.c-pagefeed {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 320px;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.2rem;
	line-height: 1.2;
}
.c-pagefeed__first > a > span, .c-pagefeed__last > a > span {
	display: inline-block;
	text-indent: -9999px;
}
@media (min-width: 768px) {
	.c-pagefeed {
		max-width: 420px;
		font-size: 1.5rem;
	}
}

/*----------
	crossfade carousel
----------*/
.c-crossfade-carousel__inner {
	position: relative;
}
.c-crossfade-carousel__slides {
	width: 100%;
	height: 0;
	padding-bottom: 74.6666666667%;
	position: relative;
	overflow: hidden;
}
.c-crossfade-carousel__slide {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.6s, visibility 0.6s;
}
.c-crossfade-carousel__slide a {
	display: block;
}
.c-crossfade-carousel__slide picture {
	display: block;
	width: 100%;
}
.c-crossfade-carousel__slide.active {
	opacity: 1;
	visibility: visible;
}
.c-crossfade-carousel__nav > li {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-34px);
	transform: translateY(-34px);
}
.c-crossfade-carousel__nav__prev {
	left: 0;
}
.c-crossfade-carousel__nav__next {
	right: 0;
}
.c-crossfade-carousel__indicator {
	position: absolute;
	left: 50%;
	bottom: 16px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
@media (min-width: 768px) {
	.c-crossfade-carousel__slides {
		padding-bottom: 51.5267175573%;
	}
	.c-crossfade-carousel__slide > p {
		left: 130px;
		font-size: 4.8rem;
		line-height: 1.4;
	}
	.c-crossfade-carousel__indicator {
		left: 100px;
		bottom: 25px;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

/*----------
	carousel parts
----------*/
.c-carousel-nav > li > button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 48px;
	background-color: #222;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s;
}
.c-carousel-nav > li > button > [class^=icon-] {
	color: #fff;
}
.c-carousel-nav > li > button.active {
	opacity: 1;
	pointer-events: all;
}
@media (min-width: 768px) {
	.c-carousel-nav > li > button {
		width: 32px;
		height: 64px;
	}
}

.c-carousel-indicator {
	display: flex;
	justify-content: center;
	align-items: center;
}
.c-carousel-indicator > li {
	margin: 0 4px;
}
.c-carousel-indicator > li > button {
	display: block;
	width: 40px;
	height: 4px;
	background-color: #f3f3f3;
	transition: background-color 0.2s;
}
.c-carousel-indicator > li.active > button {
	background-color: #024796;
}

/*----------
	column-list
----------*/
.c-column-list > li {
	padding-bottom: 16px;
	border-bottom: 1px solid #ddd;
}
.c-column-list > li + li {
	margin-top: 16px;
}
@media (min-width: 768px) {
	.c-column-list > li {
		padding-bottom: 0;
		border-bottom: none;
	}
	.c-column-list > li + li {
		margin-top: 32px;
	}
	.c-column-list--aside > li + li {
		margin-top: 16px;
	}
	.c-column-list--pccard {
		display: grid;
		gap: 32px;
		grid-template-columns: repeat(3, 1fr);
	}
	.c-column-list--pccard > li + li {
		margin-top: 0;
	}
}

/*
.c-column-list {
	margin-top: 32px;

	> li {
		padding-bottom: 16px;
		border-bottom: 1px solid f.$c-border;
		+ li {
			margin-top: 16px;
		}
	}

	@include f.mq-pc {
		display: grid;
		gap: 32px;
		grid-template-columns: repeat(3, 1fr);
		margin-top: 40px;
		> li {
			padding-bottom: 0;
			border-bottom: none;
			+ li {
				margin-top: 0;
			}
		}
	}
}*/
/*----------
	pickup
----------*/
.c-pickup > ul {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, 1fr);
}
.c-pickup > ul > li > a {
	display: block;
	color: #333;
}
.c-pickup > ul > li > a > p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	height: 3.2em;
	margin-top: 8px;
	overflow: hidden;
	font-size: 1.2rem;
	line-height: 1.6;
}
@media (min-width: 768px) {
	.c-pickup > ul {
		gap: 32px;
		grid-template-columns: repeat(3, 1fr);
	}
	.c-pickup > ul > li > a:hover {
		color: #2C87E9;
	}
}

/*----------
	background rect
----------*/
.c-bg-rect {
	position: relative;
	padding-top: 40px;
}
.c-bg-rect::before {
	content: "";
	display: block;
	width: 200%;
	height: 350px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	-webkit-transform: translateX(-55px);
	transform: translateX(-55px);
	background: #F2F8FF;
}
@media (min-width: 768px) {
	.c-bg-rect {
		padding-top: 70px;
	}
	.c-bg-rect::before {
		-webkit-transform: translateX(-262px);
		transform: translateX(-262px);
	}
}

/*----------
	Q & A
----------*/
.c-qa {
	border-bottom: 1px solid #ddd;
	position: relative;
	overflow: hidden;
	line-height: 1.6;
}
.c-qa::before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	position: absolute;
	top: -30px;
	left: -30px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: #F2F8FF;
}
.c-qa__q, .c-qa__a {
	position: relative;
}
.c-qa__q::before, .c-qa__a::before {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 50px;
}
.c-qa__q {
	padding: 14px 40px 16px 50px;
	font-weight: bold;
	font-size: 1.6rem;
	cursor: pointer;
}
.c-qa__q::before {
	content: "Q";
	color: #024796;
}
.c-qa__q::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e916";
	display: block;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 50%;
	right: 8px;
	font-size: 2.4rem;
	-webkit-transform: translateY(-50%) rotate(270deg);
	transform: translateY(-50%) rotate(270deg);
	color: #024796;
	transition: -webkit-transform 0.2s;
	transition: transform 0.2s;
	transition: transform 0.2s, -webkit-transform 0.2s;
}
.c-qa__a {
	height: 0;
	padding-left: 50px;
	border-top: 0 dashed #ddd;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	font-size: 1.4rem;
	transition: opacity 0.2s, visibility 0.2s;
}
.c-qa__a::before {
	content: "A";
	color: #024796;
}
.c-qa.active .c-qa__q::after {
	content: "\e917";
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}
.c-qa.active .c-qa__a {
	height: auto;
	padding-top: 14px;
	padding-bottom: 16px;
	border-top-width: 1px;
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

/*----------
	toggle
----------*/
.c-toggle {
	border-bottom: 1px solid #ddd;
	position: relative;
	overflow: hidden;
	line-height: 1.6;
}
.c-toggle__head, .c-toggle__content {
	position: relative;
}
.c-toggle__head {
	padding: 14px 40px 16px 0;
	font-weight: bold;
	font-size: 1.6rem;
	cursor: pointer;
}
.c-toggle__head::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e916";
	display: block;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 50%;
	right: 8px;
	font-size: 2.4rem;
	-webkit-transform: translateY(-50%) rotate(270deg);
	transform: translateY(-50%) rotate(270deg);
	color: #024796;
	transition: -webkit-transform 0.2s;
	transition: transform 0.2s;
	transition: transform 0.2s, -webkit-transform 0.2s;
}
.c-toggle__content {
	height: 0;
	border-top: 0 dashed #ddd;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	font-size: 1.4rem;
	transition: opacity 0.2s, visibility 0.2s;
}
.c-toggle.active .c-toggle__head::after {
	content: "\e917";
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}
.c-toggle.active .c-toggle__content {
	height: auto;
	padding-top: 14px;
	padding-bottom: 16px;
	border-top-width: 1px;
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

/*----------
	step rect
----------*/
.c-step-rect > li {
	padding: 16px 0 0 20px;
	position: relative;
	overflow: hidden;
}
.c-step-rect > li::before {
	content: "";
	display: block;
	width: 80px;
	height: 80px;
	position: absolute;
	top: -40px;
	left: -40px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: #F2F8FF;
}
.c-step-rect > li > dl {
	padding-top: 20px;
}
.c-step-rect > li > dl > dt {
	min-height: 50px;
	padding-left: 40px;
	font-weight: bold;
	font-size: 1.6rem;
}
.c-step-rect > li > dl > dd {
	margin-top: 8px;
}
.c-step-rect > li + li {
	margin-top: 24px;
}
.c-step-rect__step {
	position: absolute;
	font-size: 4rem;
	line-height: 1;
	color: #024796;
}
.c-step-rect__step > span {
	display: block;
	font-weight: bold;
	font-size: 1.4rem;
}
@media (min-width: 768px) {
	.c-step-rect {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.c-step-rect > li > dl > dt {
		font-size: 1.8rem;
	}
	.c-step-rect > li + li {
		margin-top: 0;
		margin-left: 32px;
	}
}

/*----------
	contentfooter cvn
----------*/
.c-contentfooter-cvn__title {
	margin-bottom: 24px;
	text-align: center;
	font-weight: 500;
	font-size: 2.2rem;
	color: #024796;
}
.c-contentfooter-cvn__item {
	display: none;
	max-width: 335px;
	margin: 0 auto;
}
.c-contentfooter-cvn__item.active {
	display: block;
}
.c-contentfooter-cvn__item.active + .c-contentfooter-cvn__item {
	border-top: 1px solid #ddd;
	margin-top: 32px;
	padding-top: 32px;
}
@media (min-width: 768px) {
	.c-contentfooter-cvn {
		margin-bottom: 32px;
	}
	.c-contentfooter-cvn__content {
		display: flex;
		justify-content: center;
		align-items: flex-start;
	}
	.c-contentfooter-cvn__item {
		width: 50%;
		max-width: none;
		flex: 0 0 50%;
		margin: 0;
		padding: 0 110px 16px;
	}
	.c-contentfooter-cvn__item.active + .c-contentfooter-cvn__item {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
		border-left: 1px solid #ddd;
	}
}

/*----------
	404
----------*/
.c-404__title {
	font-size: 80px;
	color: #DDDDDD;
	text-align: center;
	font-weight: bold;
}
@media (min-width: 768px) {
	.c-404__title {
		font-size: 120px;
	}
}

/*----------
	modal
----------*/
.modal {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 100vw;
	z-index: -1;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.2s;
}
.modal__layer {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(83, 89, 97, 0.8);
	cursor: pointer;
}
.modal__close {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	background-color: #024796;
}
.modal__close::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e90d";
	display: block;
	width: 32px;
	height: 32px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 32px;
	color: #fff;
}
.modal__inner {
	width: 100%;
	height: 100%;
	padding: 60px 5.3333333333% 120px;
	position: absolute;
	top: 50%;
	left: 50%;
	overflow-y: auto;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-color: #fff;
}
.modal.active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	left: 0;
	z-index: 150;
}
@media (min-width: 768px) {
	.modal {
		min-width: 1064px;
	}
	.modal__close {
		top: 5%;
		right: 50%;
		-webkit-transform: translateX(532px);
		transform: translateX(532px);
	}
	.modal__inner {
		width: 1064px;
		height: 90%;
		padding-left: 32px;
		padding-right: 32px;
		padding-bottom: 32px;
	}
}

/*----------
	form header 共通部分
----------*/

.l-formheader .l-mainheader__inner{
	height: 85px;
	width: 100%;
	background-color: #fff;
}

@media (max-width: 767px) {
	.l-formheader {
		height: 60px;
		background-color: #fff;
		transition: height 0.2s;
	}
	.l-formheader .l-mainheader__inner{
		height: 60px;
	}
}

/*----------
	form footer 共通部分
----------*/

.l-formfooter{
	border-top: 1px solid #ddd;
}

.l-formfooter .l-copyright__inner > p{
	float: none;
	font-size: 1.2rem;
}

@media (max-width: 767px) {
	.l-formfooter .l-copyright__inner > p{
		font-size: 1.4rem;
	}
}

/*----------
	main header 共通部分
----------*/
.l-mainheader {
	width: 100%;
	background-color: #fff;
}
@media (max-width: 767px) {
	.l-mainheader {
		height: 128px;
		background-color: #fff;
		transition: height 0.2s;
	}
	.l-mainheader__gdpr {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 75px;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 50;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		background-color: #f3f3f3;
		transition: opacity 0.2s, visibility 0.2s;
	}
	.l-mainheader__gdpr > p {
		padding: 8px 40px 8px 16px;
		font-size: 1.2rem;
	}
	.l-mainheader__gdpr__close {
		display: block;
		width: 32px;
		height: 32px;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		color: #000;
	}
	.l-mainheader__inner {
		width: 100%;
		height: 64px;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 50;
		background-color: #fff;
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__logo {
		position: absolute;
		top: 0;
		left: 12px;
		-webkit-transform: scale(1) translateY(18px);
		transform: scale(1) translateY(18px);
		-webkit-transform-origin: left top;
		transform-origin: left top;
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__logo > a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.l-mainheader__logo > a > img {
		width: 80px;
		margin-right: 10px;
	}
	.l-mainheader__logo > a > em {
		font-weight: bold;
		font-size: 1.6rem;
		line-height: 1;
		color: #333;
	}
	.l-mainheader__logo > a > span {
		visibility: hidden;
		width: 0;
		height: 0;
	}
	.l-mainheader__cnv {
		display: none;
	}
	.l-mainheader__tel {
		display: none;
	}
	.l-mainheader__navtoggle {
		width: 50px;
		height: 40px;
		position: absolute;
		top: 0;
		right: 8px;
		-webkit-transform: translateY(13px);
		transform: translateY(13px);
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__navtoggle > span, .l-mainheader__navtoggle:after, .l-mainheader__navtoggle:before {
		display: block;
		width: 30px;
		height: 2px;
		margin: auto;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-color: #024796;
	}
	.l-mainheader__navtoggle > span {
		opacity: 1;
		transition: opacity 0.2s;
	}
	.l-mainheader__navtoggle:before {
		content: "";
		-webkit-transform: translate(0, -10px);
		transform: translate(0, -10px);
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__navtoggle:after {
		content: "";
		-webkit-transform: translate(0, 10px);
		transform: translate(0, 10px);
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__searchtoggle {
		display: block;
		width: 26px;
		height: 26px;
		position: absolute;
		top: 0;
		right: 72px;
		-webkit-transform: translateY(20px);
		transform: translateY(20px);
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainheader__searchtoggle > [class^=icon-] {
		font-size: 26px;
		line-height: 26px;
		color: #333;
	}
	.l-mainheader.gdpr-active {
		height: 203px;
	}
	.l-mainheader.gdpr-active .l-mainheader__gdpr {
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}
	.l-mainheader.gdpr-active .l-mainheader__inner {
		-webkit-transform: translateY(75px);
		transform: translateY(75px);
	}
	.l-mainheader.sp-nav-active .l-mainheader__gdpr {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
	.l-mainheader.sp-nav-active .l-mainheader__inner {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.l-mainheader.sp-nav-active .l-mainheader__navtoggle > span {
		opacity: 0;
	}
	.l-mainheader.sp-nav-active .l-mainheader__navtoggle:before {
		-webkit-transform: translate(0, 0) rotate(-45deg);
		transform: translate(0, 0) rotate(-45deg);
	}
	.l-mainheader.sp-nav-active .l-mainheader__navtoggle:after {
		-webkit-transform: translate(0, 0) rotate(45deg);
		transform: translate(0, 0) rotate(45deg);
	}
	.l-mainheader.sp-header-compact {
		height: 40px;
	}
	.l-mainheader.sp-header-compact .l-mainheader__gdpr {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
	.l-mainheader.sp-header-compact .l-mainheader__inner {
		height: 40px;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		border-bottom: 1px solid #ddd;
	}
	.l-mainheader.sp-header-compact .l-mainheader__logo {
		-webkit-transform: scale(0.8) translateY(14px);
		transform: scale(0.8) translateY(14px);
	}
	.l-mainheader.sp-header-compact .l-mainheader__logo > a > img {
		width: 60px;
	}
	.l-mainheader.sp-header-compact .l-mainheader__navtoggle {
		-webkit-transform: translateY(0px);
		transform: translateY(0px);
	}
	.l-mainheader.sp-header-compact .l-mainheader__searchtoggle {
		-webkit-transform: translateY(7px);
		transform: translateY(7px);
	}
}
@media (min-width: 768px) {
	.l-mainheader {
		min-width: 1064px;
	}
	.l-mainheader__gdpr {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 0;
		position: relative;
		z-index: 50;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		background-color: #f3f3f3;
		transition: height 0.2s, opacity 0.2s, visibility 0.2s;
	}
	.l-mainheader__gdpr > p {
		width: 1000px;
		padding: 8px 32px;
		font-size: 1.2rem;
	}
	.l-mainheader__gdpr__close {
		display: block;
		width: 32px;
		height: 32px;
		position: absolute;
		top: 50%;
		right: 8px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		color: #000;
	}
	.l-mainheader__inner {
		width: 100%;
		height: 152px;
		position: relative;
		z-index: 50;
		background-color: #fff;
	}
	.l-mainheader__logo {
		position: absolute;
		top: 20px;
		left: 30px;
	}
	.l-mainheader__logo > a {
		display: flex;
		justify-content: flex-start;
		align-items: flex-end;
	}
	.l-mainheader__logo > a > img {
		width: 120px;
		margin-right: 20px;
	}
	.l-mainheader__logo > a > em {
		margin-right: 20px;
		font-weight: bold;
		font-size: 2.4rem;
		line-height: 1.4;
		color: #333;
	}
	.l-mainheader__logo > a > span {
		font-weight: bold;
		font-size: 1.2rem;
		line-height: 1.6;
		color: #333;
	}
	.l-mainheader__cnv {
		display: flex;
		justify-content: flex-end;
		align-items: flex-start;
		position: absolute;
		top: 0;
		right: 0;
	}
	.l-mainheader__cnv > li > a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 96px;
		height: 88px;
		padding-top: 42px;
		position: relative;
		background-color: #F6E746;
		text-align: center;
		transition: background-color 0.2s;
	}
	.l-mainheader__cnv > li > a:hover {
		background-color: #FFF590;
	}
	.l-mainheader__cnv > li > a > [class^=icon-] {
		width: 24px;
		height: 24px;
		margin: auto;
		position: absolute;
		top: 18px;
		left: 0;
		right: 0;
		font-size: 24px;
		line-height: 24px;
	}
	.l-mainheader__cnv > li > a > span {
		font-weight: 500;
		font-size: 1.4rem;
		line-height: 1.2;
		color: #333;
	}
	.l-mainheader__cnv > li:last-child > a {
		background-color: #024796;
		color: #fff;
	}
	.l-mainheader__cnv > li:last-child > a:hover {
		background-color: #2475CD;
	}
	.l-mainheader__cnv > li:last-child > a > [class^=icon-] {
		color: #fff;
	}
	.l-mainheader__cnv > li:last-child > a > span {
		color: #fff;
	}
	.l-mainheader__cnv > li + li {
		border-left: 1px solid #fff;
	}
	.l-mainheader__tel {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		position: absolute;
		top: 16px;
		right: 310px;
	}
	.l-mainheader__tel__num {
		margin-right: 12px;
		font-weight: bold;
		font-size: 1.6rem;
		line-height: 1;
	}
	.l-mainheader__tel__num > [class^=icon-] {
		vertical-align: middle;
		margin-right: 4px;
		color: #333;
	}
	.l-mainheader__tel > p {
		font-size: 1rem;
		color: #666;
	}
	.l-mainheader__navtoggle {
		display: none;
	}
	.l-mainheader__searchtoggle {
		display: block;
		width: 16px;
		height: 16px;
		position: absolute;
		top: 48px;
		right: 306px;
	}
	.l-mainheader__searchtoggle > [class^=icon-] {
		font-size: 16px;
		line-height: 16px;
		color: #333;
		transition: color 0.2s;
	}
	.l-mainheader__searchtoggle:hover > [class^=icon-] {
		color: #2C87E9;
	}
	.l-mainheader.gdpr-active .l-mainheader__gdpr {
		height: 46px;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}
}

/*----------
	main nav 共通部分
----------*/
@media (max-width: 767px) {
	.l-mainnav__global {
		width: 100%;
		height: 64px;
		position: absolute;
		bottom: -64px;
		left: 0;
		z-index: 1;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
		background-color: #222;
		transition: opacity 0.2s, visibility 0.2s;
	}
	.l-mainnav__global > ul {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.l-mainnav__global > ul > li {
		flex: 0 0 20%;
		/*&.l-mainnav__global__student {
			display: none;
		}*/
	}
	.l-mainnav__global > ul > li > a {
		display: block;
		width: 100%;
		height: 60px;
		padding: 8px 4px 0 4px;
	}
	.l-mainnav__global > ul > li > a > img {
		display: block;
		width: 28px;
		margin: 0 auto;
	}
	.l-mainnav__global > ul > li > a > p {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 2em;
		margin-top: 4px;
		text-align: center;
		font-weight: 500;
		font-size: 10px;
		line-height: 1;
		color: #fff;
	}
	.l-mainnav__global__pc {
		display: none;
	}
	.l-mainnav__sub {
		display: none;
	}
	.l-mainnav__fullnav {
		width: 100vw;
		height: calc(100vh - 64px);
		position: absolute;
		top: 64px;
		left: 0;
		z-index: 10;
		overflow-y: auto;
		scroll-behavior: smooth;
		background-color: #f3f3f3;
		visibility: hidden;
		opacity: 0;
		transition: opacity 0.2s, visibility 0.2s;
	}
	.l-mainnav__fullnav__inner {
		padding-bottom: 80px;
	}
	.l-mainnav__fullnav__tel > a {
		display: block;
		max-width: 335px;
		margin: 24px auto 0;
		padding: 16px 0;
		background-color: #024796;
		text-align: center;
		font-weight: 500;
		font-size: 1.6rem;
		line-height: 1;
		color: #fff;
	}
	.l-mainnav__fullnav__tel > a > [class^=icon-] {
		vertical-align: middle;
		margin-right: 4px;
		font-size: 2.4rem;
		color: #fff;
	}
	.l-mainnav__fullnav__tel > a > p {
		margin-top: 4px;
		font-size: 1rem;
	}
}
@media (min-width: 768px) {
	.l-mainnav {
		min-width: 1068px;
	}
	.l-mainnav__global {
		width: 100%;
		height: 64px;
		position: absolute;
		top: 88px;
		right: 0;
		z-index: 2;
		background-color: #222;
	}
	.l-mainnav__global > ul {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 1064px;
		margin: 0 auto;
	}
	.l-mainnav__global > ul > li {
		flex: 1 1 auto;
		/*&.l-mainnav__global__student {
			flex: 0 0 130px;
			position: relative;
			> a {
				padding: 0 16px;
				> img {
					display: block;
					width: 24px;
					height: 24px;
					margin-right: 8px;
				}
				> p {
					padding: 0;
					font-size: 1.2rem;
				}
			}
			&::before {
				content: "";
				display: block;
				width: 1px;
				height: 32px;
				background-color: #7a7a7a;
				position: absolute;
				top: 50%;
				left: 0;
				transform: translateY(-50%);
			}
		}*/
	}
	.l-mainnav__global > ul > li > a {
		width: 100%;
		height: 64px;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		transition: background-color 0.2s;
	}
	.l-mainnav__global > ul > li > a > img {
		display: none;
	}
	.l-mainnav__global > ul > li > a > p {
		padding: 0 16px;
		font-weight: 500;
		font-size: 1.4rem;
	}
	.l-mainnav__global > ul > li > a.current, .l-mainnav__global > ul > li > a:hover {
		background-color: #024796;
	}
	.l-mainnav__sub {
		position: absolute;
		top: 50px;
		right: 330px;
	}
	.l-mainnav__sub > ul {
		display: flex;
		justify-content: flex-end;
		align-items: flex-start;
	}
	.l-mainnav__sub > ul > li > a {
		display: block;
		padding: 0 10px;
		font-size: 1.2rem;
		line-height: 1;
		color: #333;
		transition: color 0.2s;
	}
	.l-mainnav__sub > ul > li > a:hover {
		color: #2C87E9;
	}
	.l-mainnav__fullnav {
		width: 100%;
		position: absolute;
		top: 152px;
		left: 0;
		z-index: 10;
	}
	.l-mainnav__fullnav__tel {
		display: none;
	}
}
.l-mainnav__compact-logo {
	display: none;
	position: absolute;
	top: 17px;
	left: 30px;
	z-index: 3;
}
.l-mainnav__compact-logo > a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.l-mainnav__compact-logo > a > img {
	width: 80px;
	margin-right: 10px;
}
.l-mainnav__compact-logo > a > em {
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1;
	color: #333;
}
.l-mainnav__compact-logo > a > span {
	visibility: hidden;
	width: 0;
	height: 0;
}

/* SP fullnav 表示 */
.l-mainheader.sp-nav-active .l-mainnav__fullnav {
	visibility: visible;
	opacity: 1;
}

/* SPヘッダーコンパクト */
@media (max-width: 767px) {
	.l-mainheader.sp-header-compact .l-mainnav__global {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
}

/* PCメインナビ追従コンパクト */
@media (min-width: 768px) {
	.l-mainheader.pc-header-compact .l-mainnav {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		-webkit-transform: translateY(-64px);
		transform: translateY(-64px);
		opacity: 0;
		transition: -webkit-transform 0.4s ease-in-out;
		transition: transform 0.4s ease-in-out;
		transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
	}
	.l-mainheader.pc-header-compact .l-mainnav__compact-logo {
		display: block;
	}
	.l-mainheader.pc-header-compact .l-mainnav__global {
		top: 0;
		background-color: #fff;
		border-bottom: 1px solid #ddd;
	}
	.l-mainheader.pc-header-compact .l-mainnav__global > ul {
		width: 850px;
		-webkit-transform: translateX(80px);
		transform: translateX(80px);
	}
	.l-mainheader.pc-header-compact .l-mainnav__global > ul > li > a {
		color: #333;
		transition: color 0.2s;
	}
	.l-mainheader.pc-header-compact .l-mainnav__global > ul > li > a > p {
		padding: 0 10px;
		font-size: 1.2rem;
	}
	.l-mainheader.pc-header-compact .l-mainnav__global > ul > li > a.current, .l-mainheader.pc-header-compact .l-mainnav__global > ul > li > a:hover {
		background-color: #fff;
		color: #2C87E9;
	}
	.l-mainheader.pc-header-compact .l-mainnav__sub {
		height: 0;
		visibility: hidden;
		pointer-events: none;
	}
	.l-mainheader.pc-header-compact .l-mainnav__fullnav {
		top: 64px;
	}
	.l-mainheader.pc-header-compact .l-mainnav__fullnav .l-fullnav > li {
		box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	}
}

@media (min-width: 768px) {
	.l-mainheader.pc-header-compact.pc-header-compact--active .l-mainnav {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/*----------
	full nav
----------*/
/* SPヘッダー用 */
@media (max-width: 767px) {
	.l-fullnav__cattop {
		border-top: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
		margin-top: -1px;
	}
	.l-fullnav__cattop > a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		min-height: 64px;
		padding-left: 20px;
		padding-right: 60px;
		position: relative;
		background-color: #f3f3f3;
		font-weight: 500;
		font-size: 1.6rem;
		line-height: 1.4;
		color: #333;
	}
	.l-fullnav__cattop > a > img {
		display: none;
	}
	.l-fullnav__cattop > a[target=_blank]::after {
		font-family: "iconfont" !important;
		speak: none;
		font-style: normal;
		font-weight: normal;
		line-height: 1;
		content: "\e90b";
		display: block;
		width: 18px;
		height: 18px;
		position: absolute;
		top: 50%;
		right: 20px;
		color: #024796;
		line-height: 18px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.l-fullnav__cattop--hassub > a::after, .l-fullnav__cattop--hassub > a::before {
		content: "";
		display: block;
		width: 18px;
		height: 2px;
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		background-color: #024796;
	}
	.l-fullnav__cattop--hassub > a::after {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-fullnav__subcat {
		height: 0;
		position: relative;
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.2s;
	}
	.l-fullnav__subcat > ul > li {
		border-top: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
		margin-top: -1px;
	}
	.l-fullnav__subcat > ul > li a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		min-height: 48px;
		padding-left: 36px;
		padding-right: 20px;
		position: relative;
		background-color: #eee;
		font-size: 1.4rem;
		line-height: 1.4;
		color: #333;
	}
	.l-fullnav__footersitemap-pc {
		display: none;
	}
	.l-fullnav .sp-active .l-fullnav__cattop--hassub > a::after {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	.l-fullnav .sp-active .l-fullnav__subcat {
		height: auto;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}
}

/* PCヘッダー用 */
@media (min-width: 768px) {
	.l-mainnav__fullnav .l-fullnav {
		min-width: 1064px;
	}
	.l-mainnav__fullnav .l-fullnav > li {
		width: 100%;
		position: absolute;
		background-color: #f3f3f3;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.2s, visibility 0.2s;
	}
	.l-mainnav__fullnav .l-fullnav > li.pc-active {
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}
	.l-mainnav__fullnav .l-fullnav__cat {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 1064px;
		margin: 0 auto;
		padding: 40px 0;
	}
	.l-mainnav__fullnav .l-fullnav__cattop {
		flex: 0 0 312px;
	}
	.l-mainnav__fullnav .l-fullnav__cattop > a {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 24px;
		padding-bottom: 16px;
		border-bottom: 1px solid #ddd;
		color: #333;
	}
	.l-mainnav__fullnav .l-fullnav__cattop > a > img {
		width: 140px;
		flex: 0 0 140px;
	}
	.l-mainnav__fullnav .l-fullnav__cattop > a > span {
		flex: 0 0 156px;
		font-weight: bold;
		font-size: 1.6rem;
		line-height: 1.4;
	}
	.l-mainnav__fullnav .l-fullnav__cattop > a[href]:hover {
		color: #2C87E9;
	}
	.l-mainnav__fullnav .l-fullnav__subcat {
		flex: 0 0 656px;
	}
	.l-mainnav__fullnav .l-fullnav__subcat > ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.l-mainnav__fullnav .l-fullnav__subcat > ul > li {
		flex: 0 0 312px;
		border-bottom: 1px solid #ddd;
	}
	.l-mainnav__fullnav .l-fullnav__subcat > ul > li > a {
		display: block;
		padding-bottom: 16px;
		font-size: 1.2rem;
		line-height: 1.6;
		color: #333;
	}
	.l-mainnav__fullnav .l-fullnav__subcat > ul > li > a:hover {
		color: #2C87E9;
	}
	.l-mainnav__fullnav .l-fullnav__subcat > ul > li:nth-child(n+3) {
		margin-top: 22px;
	}
	.l-mainnav__fullnav .l-fullnav__footersitemap-pc {
		display: none;
	}
}

/*----------
	header search
----------*/
.l-mainheader__search {
	width: 100%;
	height: 96px;
	position: absolute;
	bottom: -96px;
	left: 0;
	z-index: 2;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	background-color: #f3f3f3;
	transition: opacity 0.2s, visibility 0.2s;
}
.l-mainheader__search__inner {
	padding: 25px;
	padding-bottom: 0;
}
.l-mainheader__search .mt-site-search {
	position: relative;
}
.l-mainheader__search .mt-site-search::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e90c";
	display: block;
	height: 20px;
	width: 20px;
	position: absolute;
	top: 15px;
	right: 10px;
	z-index: 1;
	font-size: 2rem;
}
.l-mainheader__search .mt-site-search-form__query {
	display: inline-block;
	width: 100%;
	padding: 13px 40px 13px 10px;
	margin-right: 16px;
	background-color: #fff;
	font-size: 1.6rem;
	line-height: 1;
}
.l-mainheader__search .mt-site-search-form__button {
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 10px;
	right: 0;
	z-index: 2;
	text-indent: -9999px;
	background-color: transparent;
}
.l-mainheader__search.active {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}
@media (min-width: 768px) {
	.l-mainheader__search {
		bottom: -32px;
		z-index: 11;
	}
	.l-mainheader__search .mt-site-search {
		max-width: 1000px;
		margin: 0 auto;
	}
}

/*----------
	sub footer 共通部分
----------*/
.l-subfooter {
	background-image: linear-gradient(90deg, #004896 0%, #0864C7 100%);
	background-color: #333;
	color: #fff;
}
@media (min-width: 768px) {
	.l-subfooter {
		min-width: 1064px;
	}
}

.l-subfooter__link {
	width: 100%;
	max-width: 1064px;
	margin: 0 auto;
	padding: 30px 5.3333333333% 40px;
}
.l-subfooter__link__title {
	line-height: 1.4;
}
.l-subfooter__link__title > em {
	display: block;
	margin-bottom: 8px;
	font-weight: bold;
	font-size: 2.4rem;
}
.l-subfooter__link__title > span {
	font-size: 1.6rem;
}
.l-subfooter__link__list {
	margin-top: 24px;
}
.l-subfooter__link__list > ul > li {
	margin-top: -1px;
}
.l-subfooter__link__btn .c-button__inner {
	border-color: #fff;
	background-color: transparent;
	color: #fff;
}
.l-subfooter__link__tel > a {
	display: block;
	margin: 24px auto 0;
	padding: 16px 0;
	border: 1px solid #fff;
	background-color: transparent;
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	color: #fff;
}
.l-subfooter__link__tel > a > [class^=icon-] {
	vertical-align: middle;
	margin-right: 4px;
	font-size: 2.4rem;
	color: #fff;
}
.l-subfooter__link__tel > a > p {
	margin-top: 4px;
	font-size: 1rem;
}
.l-subfooter__link__tel-pc {
	display: none;
}
@media (min-width: 768px) {
	.l-subfooter__link {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding: 48px 32px;
	}
	.l-subfooter__link__title {
		flex: 1 0 auto;
	}
	.l-subfooter__link__title > em {
		margin-bottom: 16px;
		font-size: 3rem;
	}
	.l-subfooter__link__title > span {
		font-size: 1.6rem;
	}
	.l-subfooter__link__list {
		width: 628px;
		flex: 0 0 628px;
		margin-top: 0;
	}
	.l-subfooter__link__list > ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.l-subfooter__link__list > ul > li {
		width: 280px;
		flex: 0 0 280px;
	}
	.l-subfooter__link__list > ul > li:nth-child(n+3) {
		margin-top: 20px;
	}
	.l-subfooter__link__tel {
		display: none;
	}
	.l-subfooter__link__tel-pc {
		display: block;
		padding-top: 8px;
		color: #fff;
	}
	.l-subfooter__link__tel-pc__num {
		font-weight: bold;
		margin-right: 0;
		font-size: 2.4rem;
		line-height: 1;
		letter-spacing: 0.07em;
	}
	.l-subfooter__link__tel-pc__num > [class^=icon-] {
		vertical-align: middle;
		margin-right: 4px;
		font-size: 3rem;
		color: #fff;
	}
	.l-subfooter__link__tel-pc > p {
		margin-top: 3px;
		padding-left: 36px;
		font-size: 1.2rem;
	}
}

.l-subfooter__fullnav {
	background-color: #333;
}
.l-subfooter__fullnav .l-fullnav__cattop > a {
	background-color: #333;
	color: #fff;
}
.l-subfooter__fullnav .l-fullnav__cattop > a[target=_blank]::after {
	color: #fff;
}
.l-subfooter__fullnav .l-fullnav__cattop--hassub > a::before, .l-subfooter__fullnav .l-fullnav__cattop--hassub > a::after {
	background-color: #fff;
}
.l-subfooter__fullnav .l-fullnav__subcat > ul > li > a {
	background-color: #333;
	color: #fff;
}
@media (min-width: 768px) {
	.l-subfooter__fullnav__inner {
		width: 1064px;
		margin: 0 auto;
		padding: 64px 0;
	}
	.l-subfooter__fullnav .l-fullnav {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.l-subfooter__fullnav .l-fullnav > li {
		width: 25%;
		flex: 0 0 25%;
		padding: 0 32px;
	}
	.l-subfooter__fullnav .l-fullnav > li:nth-child(n+5) {
		margin-top: 60px;
	}
	.l-subfooter__fullnav .l-fullnav > li a {
		transition: opacity 0.2s;
	}
	.l-subfooter__fullnav .l-fullnav > li a:hover {
		opacity: 0.6;
	}
	.l-subfooter__fullnav .l-fullnav__cattop > a {
		font-weight: bold;
		font-size: 1.6rem;
	}
	.l-subfooter__fullnav .l-fullnav__cattop > a > img {
		display: none;
	}
	.l-subfooter__fullnav .l-fullnav__subcat {
		margin-top: 12px;
	}
	.l-subfooter__fullnav .l-fullnav__subcat > ul > li > a {
		font-size: 1.2rem;
	}
	.l-subfooter__fullnav .l-fullnav__subcat > ul > li + li {
		margin-top: 4px;
	}
	.l-subfooter__fullnav .l-fullnav__footersitemap-pc {
		margin-top: 20px;
	}
	.l-subfooter__fullnav .l-fullnav__footersitemap-pc > a {
		font-weight: bold;
		font-size: 1.6rem;
		color: #fff;
	}
	.l-subfooter__fullnav .l-fullnav__footersitemap-sp {
		display: none;
	}
}

/*----------
	main footer
----------*/
.l-mainfooter {
	background-color: #f3f3f3;
}
.l-mainfooter__inner {
	width: 100%;
	max-width: 1064px;
	margin: 0 auto;
	padding: 50px 5.3333333333% 38px;
}
.l-mainfooter__title {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.l-mainfooter__title > img {
	width: 140px;
	flex: 0 0 140px;
	margin-right: 18px;
}
.l-mainfooter__title > span {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6;
}



/* lgbt+ */
	.l-mainfooter__title__op {
    display: flex;
    align-items: center;
    justify-content: center;
}



.l-mainfooter__sns {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 225px;
	margin: 22px auto 0;
}
.l-mainfooter__sns > dt {
	flex: 0 1 auto;
	font-size: 1.6rem;
	line-height: 1;
}
.l-mainfooter__sns > dd {
	width: 138px;
	flex: 0 0 138px;
}
.l-mainfooter__sns ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.l-mainfooter__sns ul > li {
	width: 30px;
}
.l-mainfooter__quallist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 18px;
}
.l-mainfooter__quallist > li {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: calc(50% + 1px);
	width: 50%;
	margin: -1px 0 0 -1px;
}
.l-mainfooter__schoollist > li {
	margin-top: 20px;
	padding-top: 20px;
}
.l-mainfooter__schoollist > li + li {
	border-top: 1px solid #ddd;
}
.l-mainfooter__schoollist dl {
	font-size: 1.2rem;
	line-height: 1.6;
}
.l-mainfooter__schoollist dl > dt {
	font-weight: bold;
}
.l-mainfooter__schoollist dl > dd {
	margin-top: 4px;
}
@media (min-width: 768px) {
	.l-mainfooter {
		min-width: 1064px;
	}
	.l-mainfooter__inner {
		padding: 60px 32px 48px;
		position: relative;
	}
	.l-mainfooter__title > img {
		width: 100px;
		flex-basis: 100px;
	}
	.l-mainfooter__title > span {
		font-size: 1.6rem;
	}



	.l-mainfooter__sns {
		margin: 0;
		position: absolute;
		top: 62px;
		right: 32px;
	}
	.l-mainfooter__quallist {
		margin-top: 40px;
		justify-content: flex-start;
	}
	.l-mainfooter__quallist > li {
		width: 25%;
		flex-basis: 25%;
	}
	.l-mainfooter__schoollist {
		display: flex;
		/*justify-content: space-between;*/
		justify-content: unset;
		align-items: flex-start;
		margin-top: 28px;
	}
	.l-mainfooter__schoollist > li {
		width: 33.3333333333%;
		flex: 0 0 33.3333333333%;
		margin-top: 0;
		padding: 12px 30px 4px;
		border-left: 1px solid #ddd;
	}
	.l-mainfooter__schoollist > li + li {
		border-top: none;
	}
	.l-mainfooter__schoollist > li:last-child {
		border-right: 1px solid #ddd;
	}

/* lgbt+ */
	.l-mainfooter__title__op {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}



}

.l-copyright__inner {
	width: 100%;
	max-width: 1064px;
	margin: 0 auto;
	padding: 24px 5.3333333333%;
}
.l-copyright__inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.l-copyright__inner ul > li {
	margin-bottom: 8px;
}
.l-copyright__inner ul > li > a {
	display: block;
	padding: 0 8px;
	font-size: 1.2rem;
	line-height: 1;
	color: #666;
}
.l-copyright__inner ul > li + li {
	border-left: 1px solid #666;
}
.l-copyright__inner > p {
	margin-top: 16px;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1;
}
@media (min-width: 768px) {
	.l-copyright {
		min-width: 1064px;
	}
	.l-copyright__inner:after {
		content: "";
		display: table;
		clear: both;
	}
	.l-copyright__inner > ul {
		float: left;
	}
	.l-copyright__inner > ul > li {
		margin-bottom: 0;
	}
	.l-copyright__inner > p {
		margin-top: 0;
		float: right;
	}
}

.l-fixed-cvn {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 25;
}
.l-fixed-cvn > ul {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.l-fixed-cvn > ul > li {
	width: 33.3333333333%;
	height: 40px;
	flex: 1 0 33.3333333333%;
}
.l-fixed-cvn > ul > li > a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #F6E746;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.6rem;
	color: #024796;
}
.l-fixed-cvn > ul > li > a > [class^=icon-] {
	font-size: 1.6rem;
	margin-right: 5px;
}
.l-fixed-cvn > ul > li + li {
	border-left: 1px solid #fff;
}
.l-fixed-cvn > ul > li:last-child > a {
	background-color: #024796;
	background-image: linear-gradient(90deg, #004896 0%, #0864C7 100%);
	color: #fff;
}
.l-fixed-cvn > ul > li:last-child > a > [class^=icon-] {
	color: #fff;
}
@media (min-width: 768px) {
	.l-fixed-cvn {
		width: 46px;
		/* width: 64px; */
		bottom: auto;
		top: 500px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.l-fixed-cvn > ul {
		display: block;
	}
	.l-fixed-cvn > ul > li {
		width: 100%;
		height: 184px;
	}
	.l-fixed-cvn > ul > li > a {
		display: block;
		padding-top: 34px;
		font-size: 1.6rem;
		transition: background-color 0.2s;
	}
	.l-fixed-cvn > ul > li > a > span {
		display: block;
		width: 18px;
		margin: 4px auto 0;
	}
	.l-fixed-cvn > ul > li > a > [class^=icon-] {
		display: block;
		width: 24px;
		height: 24px;
		margin: 0 auto;
		font-size: 2.4rem;
	}
	.l-fixed-cvn > ul > li > a:hover {
		background-color: #FFF590;
	}
	.l-fixed-cvn > ul > li + li {
		border-left: 0;
		border-top: 1px solid #fff;
	}
}

/* ブラウザの高さが小さい時 */
@media (min-width: 768px) {
	.minw .l-fixed-cvn {
		z-index: 50;
	}
	.minw .l-fixed-cvn {
		width: 46px;
		top: auto;
		bottom: 0;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.minw .l-fixed-cvn > ul > li {
		height: 160px;
	}
	.minw .l-fixed-cvn > ul > li:nth-child(2) > a {
		padding-top: 30px;
	}
	.minw .l-fixed-cvn > ul > li:nth-child(3) > a {
		padding-top: 20px;
	}
}


/* back head */
.l-backhead {
	position: fixed;
	bottom: 50px;
	right: 0;
	z-index: 25;
}
.l-backhead > a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	background-color: #999;
}
.l-backhead > a::after {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e902";
	width: 24px;
	height: 24px;
	font-size: 24px;
	color: #fff;
}
@media (min-width: 768px) {
	.l-backhead {
		bottom: 0;
	}
	.l-backhead > a {
		opacity: 1;
		transition: opacity 0.2s;
	}
	.l-backhead > a:hover {
		opacity: 0.8;
	}
}

/*----------
	main content
----------*/
.l-content {
	width: 100%;
	position: relative;
	overflow-x: hidden;
	padding-bottom: 64px;
}
@media (min-width: 768px) {
	.l-content {
		min-width: 1064px;
		padding-bottom: 120px;
	}
}

.l-section {
	width: 100%;
	max-width: 1064px;
	margin: 0 auto;
	padding-left: 5.3333333333%;
	padding-right: 5.3333333333%;
}
.l-section--2up .l-section__aside {
	margin-top: 32px;
}
.l-section--2up .l-section__aside > *:first-child {
	margin-top: 0 !important;
}
.l-section--2up .l-section__aside > *:last-child {
	margin-bottom: 0 !important;
}
@media (min-width: 768px) {
	.l-section {
		padding-left: 32px;
		padding-right: 32px;
	}
	.l-section--2up {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.l-section--2up .l-section__main {
		width: 65.6%;
		flex: 0 0 65.6%;
	}
	.l-section--2up .l-section__aside {
		margin-top: 0;
		width: 29.4%;
		flex: 0 0 29.4%;
	}
}

.l-title-lv3 {
	width: 100%;
	height: 0;
	padding-bottom: 45.3333333333%;
	position: relative;
	overflow: hidden;
}
.l-title-lv3 > picture {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.l-title-lv3 > picture::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.3);
}
.l-title-lv3__title {
	width: 100%;
	max-width: 1064px;
	padding-left: 5.3333333333%;
	padding-right: 5.3333333333%;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	color: #fff;
}
@media (min-width: 768px) {
	.l-title-lv3 {
		padding-bottom: 300px;
	}
	.l-title-lv3 > picture > img {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		-o-object-fit: cover;
		object-fit: cover;
		-o-object-position: center;
		object-position: center;
	}
	.l-title-lv3__title {
		padding-left: 32px;
		padding-right: 32px;
	}
}

.l-title-lv4 {
	padding: 20px 0;
	background-color: #F2F8FF;
}
.l-title-lv4__inner {
	width: 100%;
	max-width: 1064px;
	margin: 0 auto;
	padding-left: 5.3333333333%;
	padding-right: 5.3333333333%;
}
@media (min-width: 768px) {
	.l-title-lv4 {
		padding: 50px 0;
	}
	.l-title-lv4__inner {
		padding-left: 32px;
		padding-right: 32px;
	}
}

/* breadcrumb */
.l-breadcrumb {
	width: 100%;
	max-width: 1000px;
	margin: auto;
	padding: 0 5.3333333333% 10px;
	position: relative;
	overflow-x: auto;
}
.l-breadcrumb__list {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	white-space: nowrap;
}
.l-breadcrumb__list > li > a,
.l-breadcrumb__list > li > span {
	display: block;
	font-size: 1.2rem;
	line-height: 1;
	color: #024796;
}
.l-breadcrumb__list > li > span {
	color: #333;
}
.l-breadcrumb__list > li + li > a:before,
.l-breadcrumb__list > li + li > span:before {
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e901";
	margin: 0 8px;
	color: #024796;
}
.l-breadcrumb__list > li:first-child > a {
	display: block;
	width: 16px;
	height: 16px;
	position: relative;
	text-indent: -9999px;
}
.l-breadcrumb__list > li:first-child > a::before {
	text-indent: 0;
	font-family: "iconfont" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: "\e907";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	left: 0;
	font-size: 1.6rem;
	line-height: 16px;
}
@media (min-width: 768px) {
	.l-breadcrumb {
		padding: 0 0 20px;
	}
}

/* others */
.s-banner-courselist {
	display: block;
	border: 1px solid #ddd;
}

/* 定形レイアウト　スタンダード */
.l-layout-regular {
	margin-top: 24px;
}
.l-layout-regular > *:first-child {
	margin-top: 0 !important;
}
.l-layout-regular > *:last-child {
	margin-bottom: 0 !important;
}
.l-layout-regular .l-section .l-layout-regular__headlead {
	margin-bottom: 40px;
}
.l-layout-regular .l-section .l-layout-regular__headlead + .c-heading-seco {
	margin-top: 0;
}
.l-layout-regular .l-section > [class^=c-] {
	margin-top: 24px;
}
.l-layout-regular .l-section > .c-heading-seco {
	margin-top: 48px;
	margin-bottom: 24px;
}
.l-layout-regular .l-section > .c-heading-tert {
	margin-top: 40px;
	margin-bottom: 24px;
}
.l-layout-regular .l-section > .c-heading-quat {
	margin-top: 32px;
}
.l-layout-regular .l-section > .c-heading-quin {
	margin-top: 24px;
}
@media (min-width: 768px) {
	.l-layout-regular {
		margin-top: 40px;
	}
	.l-layout-regular .l-section .l-layout-regular__headlead {
		margin-bottom: 80px;
	}
	.l-layout-regular .l-section > .c-heading-seco {
		margin-top: 120px;
		margin-bottom: 32px;
	}
	.l-layout-regular .l-section > .c-heading-tert {
		margin-top: 64px;
		margin-bottom: 32px;
	}
	.l-layout-regular .l-section > .c-heading-quat {
		margin-top: 40px;
	}
	.l-layout-regular .l-section > .c-heading-quin {
		margin-top: 24px;
	}
	.l-layout-regular > section:first-of-type > .c-heading-seco {
		margin-top: 80px;
	}
}

/* 説明会・体験講義スケジュール */
.l-infosession-schedule .c-infosession__text{
	line-height: 2.7rem;
	margin-top: 15px;
}

.l-infosession-schedule .c-tag{
	background-color: #fff0;
}

.l-infosession-schedule .c-infosession__location > p{
	height: 24px;
    vertical-align: sub;
}

.l-infosession-schedule .c-tag-container {
	display: inline;
}

.l-infosession-schedule .c-infosession-list{
	border-top: 2px solid #137DC7;
}

.l-infosession-schedule .s-subhome-infosession__inner{
	padding-bottom: 56px;
}

.l-infosession-schedule br.sp {
	display: block;
}

.l-infosession-schedule .c-button-container__item .c-button__inner{
	border: 1px solid #137DC7;
    color: #137DC7;
}

@media (min-width: 768px) {
	.l-infosession-schedule .c-tag-container {
		display: inline-block;
	}
	.l-infosession-schedule .c-button--enter .c-button__inner {
		width: 160px;
		background-color: #137DC7;
	}
	.l-infosession-schedule br.sp {
		display: none;
	}
}

/* 定形レイアウト　記事 */
.l-layout-article {
	font-size: 1.6rem;
	line-height: 1.8;
}
.l-layout-article > [class^=c-],
.l-layout-article > p {
	margin-top: 24px;
}
.l-layout-article > .c-heading-prim {
	margin-top: 0;
}
.l-layout-article > .c-heading-seco {
	margin-top: 48px;
}
.l-layout-article > .c-heading-tert {
	margin-top: 32px;
}
.l-layout-article > .c-heading-quat {
	margin-top: 24px;
}
.l-layout-article > .c-heading-quin {
	margin-top: 24px;
}
@media (min-width: 768px) {
	.l-layout-article > .c-heading-seco {
		margin-top: 120px;
	}
	.l-layout-article > .c-heading-tert {
		margin-top: 40px;
	}
	.l-layout-article > .c-heading-quat {
		margin-top: 32px;
	}
	.l-layout-article > .c-heading-quin {
		margin-top: 24px;
	}
}

/* --------------------
	Foundation
---------------------*/
/*--------------------
	Components
---------------------*/
/*--------------------
	Common layout
---------------------*/
/*--------------------
	Utility
---------------------*/
/*----------
	margin
----------*/
/* 規定マージン regular */
.u-mt-reg8 {
	margin-top: 8px !important;
}

.u-mt-reg16 {
	margin-top: 16px !important;
}

.u-mt-reg24 {
	margin-top: 24px !important;
}

.u-mt-reg32 {
	margin-top: 32px !important;
}

.u-mt-reg40 {
	margin-top: 40px !important;
}

.u-mt-reg48 {
	margin-top: 48px !important;
}

.u-mt-reg56 {
	margin-top: 56px !important;
}

.u-mt-reg64 {
	margin-top: 64px !important;
}

.u-mt-reg72 {
	margin-top: 72px !important;
}

.u-mt-reg80 {
	margin-top: 80px !important;
}

@media (min-width: 768px) {
	.u-mt-reg8 {
		margin-top: 16px !important;
	}

	.u-mt-reg16 {
		margin-top: 24px !important;
	}

	.u-mt-reg24 {
		margin-top: 32px !important;
	}

	.u-mt-reg32 {
		margin-top: 40px !important;
	}

	.u-mt-reg40 {
		margin-top: 56px !important;
	}

	.u-mt-reg48 {
		margin-top: 64px !important;
	}

	.u-mt-reg56 {
		margin-top: 72px !important;
	}

	.u-mt-reg64 {
		margin-top: 80px !important;
	}

	.u-mt-reg72 {
		margin-top: 96px !important;
	}

	.u-mt-reg80 {
		margin-top: 120px !important;
	}
}
/* SP-PC 倍マージン double */
.u-mt-dbl8 {
	margin-top: 8px !important;
}

.u-mt-dbl16 {
	margin-top: 16px !important;
}

.u-mt-dbl24 {
	margin-top: 24px !important;
}

.u-mt-dbl32 {
	margin-top: 32px !important;
}

.u-mt-dbl40 {
	margin-top: 40px !important;
}

.u-mt-dbl48 {
	margin-top: 48px !important;
}

.u-mt-dbl56 {
	margin-top: 56px !important;
}

.u-mt-dbl64 {
	margin-top: 64px !important;
}

.u-mt-dbl72 {
	margin-top: 72px !important;
}

.u-mt-dbl80 {
	margin-top: 80px !important;
}

@media (min-width: 768px) {
	.u-mt-dbl8 {
		margin-top: 16px !important;
	}

	.u-mt-dbl16 {
		margin-top: 32px !important;
	}

	.u-mt-dbl24 {
		margin-top: 48px !important;
	}

	.u-mt-dbl32 {
		margin-top: 64px !important;
	}

	.u-mt-dbl40 {
		margin-top: 80px !important;
	}

	.u-mt-dbl48 {
		margin-top: 96px !important;
	}

	.u-mt-dbl56 {
		margin-top: 112px !important;
	}

	.u-mt-dbl64 {
		margin-top: 128px !important;
	}

	.u-mt-dbl72 {
		margin-top: 144px !important;
	}

	.u-mt-dbl80 {
		margin-top: 160px !important;
	}
}
/* 固定マージン */
.u-mt-none {
	margin-top: 0 !important;
}

.u-mt-5 {
	margin-top: 5px !important;
}

/* 10px倍数 */
.u-mt-10 {
	margin-top: 10px !important;
}

.u-mt-20 {
	margin-top: 20px !important;
}

.u-mt-30 {
	margin-top: 30px !important;
}

.u-mt-40 {
	margin-top: 40px !important;
}

.u-mt-50 {
	margin-top: 50px !important;
}

.u-mt-60 {
	margin-top: 60px !important;
}

.u-mt-70 {
	margin-top: 70px !important;
}

.u-mt-80 {
	margin-top: 80px !important;
}

.u-mt-90 {
	margin-top: 90px !important;
}

.u-mt-100 {
	margin-top: 100px !important;
}

/* 8px倍数 */
.u-mt-8 {
	margin-top: 8px !important;
}

.u-mt-16 {
	margin-top: 16px !important;
}

.u-mt-24 {
	margin-top: 24px !important;
}

.u-mt-32 {
	margin-top: 32px !important;
}

.u-mt-40 {
	margin-top: 40px !important;
}

.u-mt-48 {
	margin-top: 48px !important;
}

.u-mt-56 {
	margin-top: 56px !important;
}

.u-mt-64 {
	margin-top: 64px !important;
}

.u-mt-72 {
	margin-top: 72px !important;
}

.u-mt-80 {
	margin-top: 80px !important;
}

/*----------
	text
----------*/
@media (max-width: 767px) {
	.u-pcbr {
		display: none;
	}
}

@media (min-width: 768px) {
	.u-spbr {
		display: none;
	}
}

.u-txt-fz10 {
	font-size: 1rem !important;
}

.u-txt-fz12 {
	font-size: 1.2rem !important;
}

.u-txt-fz13 {
	font-size: 1.3rem !important;
}

.u-txt-fz14 {
	font-size: 1.4rem !important;
}

.u-txt-fz16 {
	font-size: 1.6rem !important;
}

.u-txt-fz18 {
	font-size: 1.8rem !important;
}

.u-txt-center {
	text-align: center !important;
}

@media (min-width: 768px) {
	.u-txt-pccenter {
		text-align: center !important;
	}
}

.u-txt-right {
	text-align: right !important;
}

.u-txt-left {
	text-align: left !important;
}

.u-txt-bold {
	font-weight: bold !important;
}

.u-txt-strike {
	text-decoration: line-through !important;
}

.u-txt-marker {
	font-weight: bold;
	background-image: linear-gradient(transparent 80%, #FFF7A6 80%);
}

.u-txt-prim {
	color: #024796 !important;
}

.u-txt-seco {
	color: #F6E746 !important;
}

.u-txt-uscpa {
	color: #137DC7 !important;
}

.u-txt-mba {
	color: #37455E !important;
}

.u-txt-cia {
	color: #ED963E !important;
}

.u-txt-cfe {
	color: #9BAA34 !important;
}

.u-txt-cisa {
	color: #34B597 !important;
}

.u-txt-ifrs {
	color: #E8675A !important;
}

.u-txt-default {
	color: #333 !important;
}

.u-txt-white {
	color: #fff !important;
}

.u-txt-caution {
	color: #E60000 !important;
}

/* 文中リンク */
.c-text a,
.c-text-article a,
.u-txt-link {
	text-decoration: underline;
	color: #024796;
}
@media (min-width: 768px) {
	.c-text a,
.c-text-article a,
.u-txt-link {
		transition: color 0.2s;
	}
	.c-text a:hover,
.c-text-article a:hover,
.u-txt-link:hover {
		color: #2C87E9;
	}
}

/*--------------------
	polyfills for IE11
---------------------*/
/* object-fit polyfill */
_:-ms-lang(x)::-ms-backdrop,
.c-image .c-image__img > img,
.l-title-lv3 > picture > img {
	font-family: "object-fit: cover; object-position: center;";
}

/* form Appearance */
_:-ms-lang(x)::-ms-backdrop,
select::-ms-expand {
	display: none;
}

/* button */
_:-ms-lang(x)::-ms-backdrop,
.c-button__inner {
	height: 64px;
}

_:-ms-lang(x)::-ms-backdrop,
.c-button-panel__item > a,
_:-ms-lang(x)::-ms-backdrop,
.c-button-panel__item > button {
	height: 80px;
}

/* CSS grid, button container */
_:-ms-lang(x)::-ms-backdrop,
.c-grid,
.c-button-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	margin-left: -32px;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid__item .c-button-container__item {
	flex: 0 1 auto;
	margin-left: 32px;
	margin-bottom: 32px;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--2up .c-grid__item {
	max-width: calc(50% - 32px);
	flex-basis: calc(50% - 32px);
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--2up .c-grid__item:nth-child(2n+1):nth-last-child(-n+2) {
	margin-bottom: 0;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--2up .c-grid__item:nth-child(2n+1):nth-last-child(-n+2) ~ .c-grid__item {
	margin-bottom: 0;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--3up .c-grid__item,
.c-button-container--3up .c-button-container__item {
	max-width: calc(33.3333% - 32px);
	flex-basis: calc(33.3333% - 32px);
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--3up .c-grid__item:nth-child(3n+1):nth-last-child(-n+3),
.c-button-container--3up .c-button-container__item:nth-child(3n+1):nth-last-child(-n+3) {
	margin-bottom: 0;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--3up .c-grid__item:nth-child(3n+1):nth-last-child(-n+3) ~ .c-grid__item,
.c-button-container--3up .c-button-container__item:nth-child(3n+1):nth-last-child(-n+3) ~ .c-grid__item {
	margin-bottom: 0;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--4up .c-grid__item,
.c-button-container--4up .c-button-container__item {
	max-width: calc(25% - 32px);
	flex-basis: calc(25% - 32px);
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--4up .c-grid__item:nth-child(4n+1):nth-last-child(-n+4),
.c-button-container--4up .c-button-container__item:nth-child(4n+1):nth-last-child(-n+4) {
	margin-bottom: 0;
}

_:-ms-lang(x)::-ms-backdrop,
.c-grid--4up .c-grid__item:nth-child(4n+1):nth-last-child(-n+4) ~ .c-grid__item,
.c-button-container--4up .c-button-container__item:nth-child(4n+1):nth-last-child(-n+4) ~ .c-grid__item {
	margin-bottom: 0;
}

/* voice article link */
_:-ms-lang(x)::-ms-backdrop, .c-article-voice__inner {
	display: block;
}
_:-ms-lang(x)::-ms-backdrop:after, .c-article-voice__inner:after {
	content: "";
	display: table;
	clear: both;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice__image {
	float: left;
	width: 144px;
	margin-right: 24px;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice__content {
	margin-left: 168px;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice__tag {
	margin-left: 168px;
	margin-top: 16px;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice--pickup .c-article-voice__image {
	float: none;
	width: 100%;
	margin-right: 0;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice--pickup .c-article-voice__content {
	margin-left: 0;
}

_:-ms-lang(x)::-ms-backdrop, .c-article-voice--pickup .c-article-voice__tag {
	margin-left: 0;
}



.l-layout-regular.related_articles {
	margin: 20px auto;
	border: 1px solid #045CBB;
	padding: 20px 20px 50px 20px;
	position: relative;
	display: flex;
}

.l-layout-regular.related_articles.thmb {
	width: 100px;
	margin: 0 20px 0 0;
}

.l-layout-regular.related_articles .text {
	width: calc(100% - 120px);
}

.l-layout-regular.related_articles .text .title {
	font-size: 16px;
	color: #333;
	margin: 5px auto 10px auto;
}

.l-layout-regular.related_articles .text .btn05 {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: calc(100% - 40px);
}


/*単位診断画像レスポンシブ*/
.tani-pc { display: block !important; }
.tani-sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .tani-pc { display: none !important; }
    .tani-sp { display: block !important; }
}

/* 2024/12/10 gnav間隔調整用*/
.global-degital { margin-top:-37px; }


/* --------------------------------------------------------------------
/* 選ばれる3つの理由
-------------------------------------------------------------------- */
.s-subhome-comparison-block {
    margin: 60px 0;
}
.s-subhome-comparison-block .ttlWrap {
    background-color: #edf1f4;
    margin-bottom: 30px;
}
.s-subhome-comparison-block h2.ttl {
    font-size: 30px;
    font-weight: bold;
    padding: 20px 0;
}
.s-subhome-comparison-block .txtTop {
    font-size: 16px;
    margin-bottom: 30px;
}
.s-subhome-comparison-block .t_comparisonWrap {}
.s-subhome-comparison-block .t_comparison {
    width: 100%;
    border-bottom: 1px solid #dbd8d8;
    border-right: 1px solid #dbd8d8;
    margin-bottom: 20px;
}
.s-subhome-comparison-block .t_comparison thead {}
.s-subhome-comparison-block .t_comparison thead th {
    color: #fff;
    padding: 15px;
    font-size: 16px;
    vertical-align: middle;
}
.s-subhome-comparison-block .t_comparison thead th.m_01 {
    background-color: #004896;
}
.s-subhome-comparison-block .t_comparison thead th.m_02 {
    background-color: #666666;
}
.s-subhome-comparison-block .t_comparison tbody tr {}
.s-subhome-comparison-block .t_comparison tbody th,
.s-subhome-comparison-block .t_comparison tbody td {
    padding: 15px;
    text-align: center;
    border-top: 1px solid #dbd8d8;
    border-left: 1px solid #dbd8d8;
    vertical-align: middle;
}
.s-subhome-comparison-block .t_comparison tbody th {
    width: 230px;
    background-color: #f5f5f5;
    font-weight: bold;
    font-size: 16px;
}
.s-subhome-comparison-block .t_comparison tbody td {
    width: 440px;
}
.s-subhome-comparison-block .t_comparison tbody td .__icon {
    font-size: 45px;
    line-height: 1;
    font-weight: bold;
    color: #004896;
}
.s-subhome-comparison-block .t_comparison tbody td.m_02 .__icon {
    color: #c6c6c6;
}
.s-subhome-comparison-block .t_comparison tbody td .txt {
    font-weight: bold;
}
.s-subhome-comparison-block .t_comparison tbody td .sub {
    display: block;
    font-size: 13px;
    font-weight: normal;
}
.s-subhome-comparison-block .t_comparison tbody td.m_01 {
    background-color: #e8f3ff;
}
.s-subhome-comparison-block .t_comparison tbody td.m_02 {}
.s-subhome-comparison-block .caution {
    font-size: 12px;
    margin-bottom: 50px;
}

