<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@400;500&amp;display=swap");
/* =======================================

	ContentsElements

======================================= */
main {
	margin: 0 auto 100px;
}
/* section */
main &gt; section {
	margin: 80px 0;
}
.base_area {
	margin-bottom: 60px;
}
.text_area {
	margin-bottom: 40px;
}
.text_area.hr {
	padding-bottom: 40px;
	border-bottom: 1px solid #ccc;
}
.text_area .ttl {
	margin: 0 auto 1rem;
	padding: 0;
	font-weight: bold;
	font-size: 2rem;
}
.text_area p {
    font-size: 1.3rem;
    line-height: 2.5rem;
}
.text_area p + p,
.text_area p + ol,
.text_area p + ul,
.text_area p + table {
	margin-top: 2.4rem;
}
.text_area .img_set {
	display: block;
	margin: 2.4rem auto;
}
.text_area .img_set img {
	max-width: 100%;
}
.text_area p a {
	color: #30a2f0;
	text-decoration: underline;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
@media only screen and (min-width: 767px) {
	.text_area p a:hover {
		opacity: .5;
	}
}
@media only screen and (max-width: 767px) {
	main {
		margin: 0 auto 50px;
	}
	.text_area.intro {
		margin-top: 80px;
	}
}
/*-----------------------------------------
	page ttl
-----------------------------------------*/
.pg_ttl {
	position: relative;
	z-index: 0;
	margin: 0 auto;
}
.breadcrumbs + .pg_ttl {
	z-index: 0;
	margin-top: -60px;
	padding-top: 175px;
	min-height: 560px;
}
.breadcrumbs + .pg_ttl.short {
	z-index: 0;
	margin-top: -60px;
	padding-top: 30px;
	min-height: 150px;
}
.pg_ttl.short {
	min-height: 150px;
}
.pg_ttl .ttl_deco {
	position: absolute;
	top: 30px;
	left: 0;
	z-index: 4;
	display: block;
	color: #fff;
	letter-spacing: .3rem;
	font-weight: 300;
	font-size: 5rem;
	font-family: "Lato", sans-serif;
	line-height: 1.2;
}
.pg_ttl .ttl_deco_ai {
	position: absolute;
	top: 30px;
	left: 0;
	z-index: 4;
	display: block;
	color: #868886;
	letter-spacing: .3rem;
	font-weight: 300;
	font-size: 5rem;
	font-family: "Lato", sans-serif;
	line-height: 1.2;
}
.pg_ttl.short .ttl_deco {
	top: -10px;
	color: rgba(0,0,0,.15);
	font-size: 4rem;
	opacity: .4;
}
.pg_pet .pg_ttl.short .ttl_deco {
	color: #fff;
}
.pg_ttl .main_img {
	position: absolute;
	top: 60px;
	right: 0;
	z-index: 3;
	display: block;
	max-width: 100%;
}
.pg_ttl .main_img img {
	display: block;
	max-width: 100%;
}
.pg_ttl .inner {
	position: relative;
	z-index: 5;
	display: flex;
	align-items: flex-start;
	flex-flow: column nowrap;
	justify-content: flex-start;
	margin: 0 auto;
	padding: 0 4%;
	max-width: calc(1366px + 8%);
	width: 100%;
}
.pg_ttl .inner h1 {
	position: relative;
	display: inline-block;
	margin: 0 0 48px;
	padding: 16px 24px;
	background: #fff;
	text-align: center;
	letter-spacing: .5rem;
	font-weight: bold;
	font-size: 4rem;
}
.pg_ttl.short .inner {
	align-items: center;
	flex-flow: row wrap;
	height: 150px;
}
.breadcrumbs + .pg_ttl.short .inner {
	height: auto;
}
.pg_ttl.short .inner h1 {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
	background: transparent;
	color: #222;
	text-align: left;
	font-weight: bold;
	font-size: 3.6rem;
}

.pg_ttl.short .inner h1 span {
	position: relative;
	display: block;
	font-size: 1.6rem;
}
.pg_ttl.short .inner h1 span::after {
	position: relative;
	display: inline-block;
	margin: auto;
	margin: 6px 0 6px 8px;
	width: 13px;
	height: 1px;
	background: #fff;
	content: "";
}
.pg_ttl.short .inner h1 span.inline {
	position: relative;
	display: inline-block;
	margin-left: 1rem;
	font-size: 1.6rem;
}
.pg_ttl.short .inner h1 span.inline::after {
	display: none;
}
.pg_ttl.short .inner h1 span.inline::before {
	position: relative;
	display: inline-block;
	margin: auto;
	margin: 6px 8px 6px 0;
	width: 13px;
	height: 1px;
	background: #fff;
	content: "";
}
.pg_ttl .inner h1::before {
	position: absolute;
	bottom: -24px;
	left: 24px;
	width: 60px;
	height: 0;
	border-bottom: 2px dashed #909090;
	content: "";
}
.pg_ttl.short .inner h1::before {
	display: none;
}
.pg_ttl .inner .copy {
	display: inline-block;
	padding: 24px;
	max-width: 50%;
	background: rgba(255,255,255,1);
	color: #222;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 2;
}
.pg_ttl .inner .btn_area {
	display: flex;
	margin-top: 24px;
	padding: 0 24px;
}
/* background */
.pg_ttl::before {
	position: absolute;
	top: 0;
	z-index: 2;
	display: block;
	width: 100%;
	height: 200px;
	background-image: linear-gradient(
	-45deg
	, rgba(255,255,255,.2) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,.2)50%,rgba(255,255,255,.2) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0) );
	background-size: 4px 4px;
	content: "";
}
.pg_ttl::after {
	position: absolute;
	top: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 200px;
	background-color: #dad5c9;
	content: "";
}
.pg_ttl.short::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: block;
	width: 96%;
	height: 100%;　/*元々150px*/
	background-image: linear-gradient(
	-45deg
	, rgba(230,230,230,1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(230,230,230,1)50%,rgba(230,230,230,1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0) );
	background-size: 4px 4px;
	content: "";
}
.pg_ttl.short::after {
	left: 0;
	width: 96%;
	height: 100%;　/*元々150px*/
	background-color: #f2f1ed;
}
.pg_ttl.department::after {
	background-color: #dad5c9;
}

@media only screen and (max-width: 767px) {
	.breadcrumbs + .pg_ttl {
		overflow: hidden;
		margin: -60px auto 0;
		padding-top: 330px;
		min-height: auto;
		width: 100%;
	}
	.pg_ttl.short {
		margin: -60px auto 0;
	}
	.pg_ttl::before,
	.pg_ttl::after {
		height: 300px;
	}
	.pg_ttl .inner .copy {
		padding-top: 16px;
		padding-bottom: 8px;
		padding-left: 0;
		max-width: 100%;
	}
	.pg_ttl .ttl_deco {
		top: 30px;
		font-size: 4rem;
		opacity: .7;
	}
	.pg_ttl .main_img img {
		min-height: 260px;

		object-fit: cover;
	}
	.pg_ttl .main_img {
		top: 60px;
		width: 94%;
	}
	.pg_ttl .inner {
		padding: 0 5.5%;
	}
	.pg_ttl .inner h1 {
		margin: 0;
		padding-left: 0;
		text-align: left;
		font-size: 2.8rem;
	}
	.pg_ttl .inner .btn_area {
		padding: 0;
	}
	.pg_ttl .inner h1::before {
		display: none;
	}
	.pg_ttl.short .inner h1 {
		line-height: 3.6rem;
font-size: 3rem;
	}
}
/*-----------------------------------------
	btn_area
-----------------------------------------*/
.btn_area {
	margin: 40px 0 0;
}
.btn_area.btn_list {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}
.btn_area.btn_list div {
	margin: 0 4px 10px 0;
	width: calc(100% / 3 - 4px);
}
.btn_area.btn_col_list {
	display: flex;
	flex-flow: column wrap;
	margin: 80px 0 0;
}
.btn_area.btn_col_list div {
	margin: 0 4px 10px 0;
}
.btn_area_single {
	display: flex;
	justify-content: center;
}
.btn_area_single.right {
	justify-content: flex-end;
}
.btn_area_single.left {
	justify-content: flex-start;
}
.btn_area_multi {
	display: block;
	text-align: center;
}
.btn_area_multi.btn a {
	margin: 0 10px 10px;
	display: inline-block;
}

@media only screen and (max-width: 767px) {
	.btn_area.btn_list,
	.btn_area.btn_col_list {
		margin: 40px 0 0;
	}
	.btn_area.btn_list div {
		width: calc(100% - 4px);
	}
}

.link_box_area {
	position: relative;
	margin: 60px auto 0;
	padding: 0 10px 10px 0;
	background-image: linear-gradient(-45deg,	rgba(100,100,100,.1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(100,100,100,.1)50%,rgba(100,100,100,.1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));
	background-size: 6px 6px;
}
.link_box_area a {
	display: flex;
	align-items: center;
	flex-flow: row wrap;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
	background: #fff;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.link_box_area a figure {
	width: 50%;
}
.link_box_area a figure img {
	width: 100%;
}
.link_box_area a .detail {
	padding: 40px;
	width: 50%;
	text-align: left;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.link_box_area .ttl {
	display: inline;
	margin: 0 auto;
	font-weight: bold;
	font-size: 3rem;
}
.link_box_area p {
	margin: 32px auto;
	font-weight: bold;
	font-size: 1.9rem;
}
.pg_pet .link_box_area a figure {
	position: relative;
	min-height: 290px;
	background: url(/department/files/img_pet_nav_bana_01.jpg) no-repeat top center;
	background-size: cover;
}
.pg_pet .link_box_area a figure img {
	visibility: hidden;
}
.link_box_area a::before {
	position: absolute;
	top: -30px;
	right: -10px;
	z-index: 2;
	display: block;
	margin: auto;
	width: 400px;
	height: 90px;
	content: "";
}
.pg_pet .link_box_area a::before {
	background: url(/department/files/ttl_pet_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_animal .link_box_area a::before {
	background: url(/department/files/ttl_animal_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_sports .link_box_area a::before {
	background: url(/department/files/ttl_sports_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_businessadministration .link_box_area a::before {
	background: url(/department/files/ttl_businessadministration_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_bizdesign .link_box_area a::before {
	background: url(/department/files/ttl_bizdesign_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_ai .link_box_area a::before {
	background: url(/department/files/ttl_ai_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_it .link_box_area a::before {
	background: url(/department/files/ttl_it_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_office .link_box_area a::before {
	background: url(/department/files/ttl_office_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_fashion .link_box_area a::before {
	background: url(/department/files/ttl_fashion_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.pg_flower .link_box_area a::before {
	background: url(/department/files/ttl_flower_nav_emrec.png) no-repeat top center;
	background-size: 400px auto;
}
.link_box_area.distant a::before {
	position: absolute;
	top: -30px;
	right: -10px;
	z-index: 2;
	display: block;
	margin: auto;
	width: 300px;
	height: 90px;
	background: url(/distant/files/ttl_opencampus.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.link_box_area.distant a figure {
	position: relative;
	min-height: 290px;
	background: url(/distant/files/img_op_bana_01.jpg) no-repeat top center;
	background-size: cover;
}
.link_box_area.distant a figure img {
	visibility: hidden;
}
.link_box_area.distant a figure::before {
	position: absolute;
	bottom: -40px;
	left: -7%;
	z-index: 2;
	display: block;
	margin: auto;
	width: 30%;
	height: 260px;
	background: url(/distant/files/deco_op_01.png) no-repeat bottom center;
	background-size: contain;
	content: "";
}
.link_box_area.distant a figure::after {
	position: absolute;
	right: -7%;
	bottom: -30px;
	z-index: 2;
	display: block;
	margin: auto;
	width: 30%;
	height: 195px;
	background: url(/distant/files/deco_op_02.png) no-repeat bottom center;
	background-size: contain;
	content: "";
}

/* Hover */
@media only screen and (min-width: 767px) {
	.link_box_area a:hover .detail {
		opacity: .7;
	}
}
@media only screen and (max-width: 768px) {
	.link_box_area a figure,
	.link_box_area a .detail {
		width: 100%;
	}
	.link_box_area a .detail {
		padding: 40px 24px;
	}
	.link_box_area a  .ttl {
		font-size: 1.8rem;
	}
	.pg_pet .link_box_area a::before {
		width: 320px;
		background: url(/department/files/ttl_pet_nav_emrec.png) no-repeat top center;
		background-size: 320px auto;
	}
	.pg_animal .link_box_area a::before {
		background: url(/department/files/ttl_animal_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_sports .link_box_area a::before {
		background: url(/department/files/ttl_sports_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_businessadministration .link_box_area a::before {
		background: url(/department/files/ttl_businessadministration_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_bizdesign .link_box_area a::before {
		background: url(/department/files/ttl_bizdesign_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_ai .link_box_area a::before {
		background: url(/department/files/ttl_ai_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_it .link_box_area a::before {
		background: url(/department/files/ttl_it_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_office .link_box_area a::before {
		background: url(/department/files/ttl_office_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_fashion .link_box_area a::before {
		background: url(/department/files/ttl_fashion_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
	.pg_flower .link_box_area a::before {
		background: url(/department/files/ttl_flower_nav_emrec.png) no-repeat top center;
		width: 320px;
		background-size: 320px auto;
	}
}

/*-----------------------------------------
	ol ul parts
-----------------------------------------*/
ol.circle {
	margin: auto;
	padding-left: 2.5rem;
	list-style: none;
	counter-reset: cirinit;
}
ol.circle &gt; li {
	position: relative;
	margin-bottom: 24px;
	padding-left: 2rem;
	width: 100%;
	font-size: 1.6rem;
	line-height: 2.8rem;
}
ol.circle.clm_2 &gt; li {width: 48.4%;}
ol.circle.clm_3 &gt; li {width: 31.2%;}
ol.circle.clm_4 &gt; li {width: 22.6%;}
ol.circle &gt; li::before {
	position: absolute;
	top: 5px;
	left: -10px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #222;
	color: #fff;
	content: counter(cirinit);
	counter-increment: cirinit;
	text-align: center;
	text-indent: -1px;
	letter-spacing: 0;
	font-weight: bold;
	font-size: 12px;
	line-height: 20px;
	display: block;
}

ol.circle.admission {
	counter-reset: admission;
	font-weight: bold;
}
ol.circle.admission &gt; li::before {
	content: counter(admission);
	counter-increment: admission;
}
ol.circle.benefits {
	counter-reset: benefits;
	font-weight: bold;
}
ol.circle.benefits &gt; li::before {
	content: counter(benefits);
	counter-increment: benefits;
}
ol.circle.documents {
	counter-reset: documents;
	font-weight: bold;
}
ol.circle.documents &gt; li::before {
	content: counter(documents);
	counter-increment: documents;
}
ol.brackets {
	margin: auto;
	padding-left: 2.5rem;
	list-style: none;
	counter-reset: brainit;
}
ol.brackets &gt; li {
	position: relative;
	margin-bottom: 24px;
	padding-left: 2rem;
	width: 100%;
	/*font-size: 1.5rem;*/
font-size: 1.3rem;
	line-height: 2.8rem;
}
ol.brackets &gt; li::before {
	position: absolute;
	top: .5rem;
	left: -1rem;
	width: 2.5rem;
	height: 2rem;
	color: #222;
	content: "("counter(brainit)")";
	counter-increment: brainit;
	text-align: center;
	line-height: 2rem;
}

ol.brackets.qualification {
	counter-reset: qualification;
}
ol.brackets.qualification &gt; li::before {
	content: "("counter(qualification)")";
	counter-increment: qualification;
}
ol.ranking {
	margin: auto;
	padding-left: 1.5rem;
	list-style: none;
	counter-reset: raninit;
}
ol.ranking &gt; li {
	position: relative;
	margin-bottom: 1rem;
	padding-left: 3rem;
	width: 100%;
	font-size: 1.5rem;
	line-height: 2.8rem;
}
ol.ranking &gt; li::before {
	position: absolute;
	top: .5rem;
	left: -1rem;
	width: 3rem;
	height: 2rem;
	color: #222;
	content: counter(raninit)"位";
	counter-increment: raninit;
	text-align: center;
	line-height: 2rem;
	font-weight: bold;
}
ol.ranking.popular {
	counter-reset: popular;
}
ol.ranking.popular &gt; li::before {
	content: counter(popular)"位";
	counter-increment: popular;
}
ol.ranking.popular &gt; li:last-child {
	margin-bottom: 0;
}

ol &gt; li.data_number::before {
	content: attr(data-number) !important;
}

ul.circle &gt; li {
	position: relative;
	margin-bottom: 1rem;
	padding-left: 2.5rem;
	width: 100%;
	font-size: 1.4rem;
	line-height: 2.8rem;
}
ul.circle.clm_2 &gt; li {width: 48.4%;}
ul.circle.clm_3 &gt; li {width: 31.2%;}
ul.circle.clm_4 &gt; li {width: 22.6%;}
ul.circle &gt; li::before {
	position: absolute;
	top: 13px;
	left: 8px;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background: #222;
	content: "";
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
ul.circle &gt; li::before {
	top: 12px;
}
ul.circle &gt; li:last-child {
	margin-bottom: 0;
}

ul.asterisk &gt; li {
	position: relative;
	margin-bottom: 1rem;
	padding-left: 2.5rem;
	width: 100%;
	font-size: 1.3rem;
	line-height: 2.8rem;
}
ul.asterisk &gt; li::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 1rem;
	height: 1rem;
	color: #222;
	content: "※";
	text-align: center;
}

ul.asterisk &gt; li:last-child {
	margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
	ol.circle,
	ol.brackets,
	ol.ranking {
		padding-left: 1rem;
	}
	ol.circle.clm_2 &gt; li,
	ol.circle.clm_3 &gt; li,
	ol.circle.clm_4 &gt; li,
	ul.circle.clm_2 &gt; li,
	ul.circle.clm_3 &gt; li,
	ul.circle.clm_4 &gt; li {
		width: 100%;
	}
}

div.sub_box {
	margin: 2.4rem auto;
	padding: 32px 24px;
	width: 100%;
	background: #f2f1ed;
}
div.sub_box.inve {
	background: #fff;
}
div.sub_box.mb_add {
	margin-bottom: 2.4rem;
}
ol li div.sub_box,
ul li div.sub_box {
	margin: 2.4rem auto 0 0;
	width: 94%;
}
div.sub_box &gt; ol,
div.sub_box &gt; ul {
	margin: auto;
	padding-left: 2.5rem;
}
div.sub_box &gt; ol &gt; li,
div.sub_box &gt; ul &gt; li {
	position: relative;
	margin-bottom: 14px;
	width: 100%;
	/*font-size: 1.6rem;*/
font-size: 1.4rem;
	line-height: 2.8rem;
}
div.sub_box &gt; ol &gt; li:last-child,
div.sub_box &gt; ul &gt; li:last-child {
	margin-bottom: 0;
}
div.sub_box &gt; ol &gt; li &gt; p,
div.sub_box &gt; ul &gt; li &gt; p {
	margin-top: 1rem;
	font-weight: normal;
}

/*-----------------------------------------
	dl
-----------------------------------------*/
dl.basic {
	margin-bottom: 60px;
}
dl.basic dt {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 1.8rem;
}
dl.basic dd {
	font-size: 1.5rem;
	line-height: 3rem;
}

@media only screen and (max-width: 767px) {
	dl.basic {
		margin-bottom: 40px;
	}
}

/*-----------------------------------------
	breadcrumbs
-----------------------------------------*/
.breadcrumbs {
	position: relative;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin: 0;
	width: 100%;
}
.breadcrumbs::before {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	display: block;
	width: 40%;
	height: 100%;
	background: #fff;
	content: "";
}
.breadcrumbs ul {
	z-index: 2;
	margin: 0;
	padding: 20px 24px;
	background: #fff;
}
.breadcrumbs li {
	position: relative;
	display: inline-block;
	color: #a8a8a8;
	font-size: 1.2rem;
}
.breadcrumbs li:not(:last-child) {
	padding-right: 10px;
}
.breadcrumbs li:not(:last-child)::after {
	display: inline-block;
	padding: 0 0 0 10px;
	color: #a8a8a8;
	content: "/";
}
.breadcrumbs li a {
	color: #222;
}

@media only screen and (max-width: 767px) {
	/*modified by k-saito : 20220311*/
    /*display:none → view*/
    .breadcrumbs {
        display: none;
	}
	}

/*-----------------------------------------
	department course intro
-----------------------------------------*/
/* intoro */
.intro {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 40px;
}
.intro .text_area {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 0 40px 0 0;
	max-width: 600px;
	width: 50%;
}
.intro .img_area {
	position: relative;
	z-index: 1;
	margin: 0;
	max-width: 603px;
	width: 50%;
	text-align: center;
}
.intro .img_area img {
	position: relative;
	z-index: 2;
	max-width: initial;
	width: 100%;
}
.intro h2.sec_head::before {
	position: relative;
	top: 0;
	left: -30px;
	z-index: 0;
	display: block;
	width: 176px;
	height: 122px;
	content: "";
}
.pg_pet .intro h2.sec_head::before {
	background: url(/department/files/ttl_pet_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_animal .intro h2.sec_head::before {
	background: url(/department/files/ttl_animal_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_sports .intro h2.sec_head::before {
	background: url(/department/files/ttl_sports_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_businessadministration .intro h2.sec_head::before {
	background: url(/department/files/ttl_businessadministration_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_bizdesign .intro h2.sec_head::before {
	background: url(/department/files/ttl_bizdesign_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_ai .intro h2.sec_head::before {
	background: url(/department/files/ttl_ai_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_it .intro h2.sec_head::before {
	background: url(/department/files/ttl_it_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_office .intro h2.sec_head::before {
	background: url(/department/files/ttl_office_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_fashion .intro h2.sec_head::before {
	background: url(/department/files/ttl_fashion_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.pg_flower .intro h2.sec_head::before {
	background: url(/department/files/ttl_flower_future.png) no-repeat center center;
	background-size: 176px 122px;
}
.intro figure::after {
	position: absolute;
	top: 0;
	left: -220px;
	z-index: 2;
	margin: auto;
	width: 320px;
	height: 300px;
	content: "";
}
.pg_pet .intro figure::after {
	background: url(/department/files/bg_pattern_pet_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_animal .intro figure::after {
	background: url(/department/files/bg_pattern_animal_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_sports .intro figure::after {
	background: url(/department/files/bg_pattern_sports_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_businessadministration .intro figure::after {
	background: url(/department/files/bg_pattern_businessadministration_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_bizdesign .intro figure::after {
	background: url(/department/files/bg_pattern_bizdesign_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_ai .intro figure::after {
	background: url(/department/files/bg_pattern_ai_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_it .intro figure::after {
	background: url(/department/files/bg_pattern_it_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_office .intro figure::after {
	background: url(/department/files/bg_pattern_office_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_fashion .intro figure::after {
	background: url(/department/files/bg_pattern_fashion_b.png) no-repeat top center;
	background-size: 320px auto;
}
.pg_flower .intro figure::after {
	background: url(/department/files/bg_pattern_flower_b.png) no-repeat top center;
	background-size: 320px auto;
}

@media only screen and (max-width: 767px) {
	.intro {
		flex-flow: column nowrap;
	}
	.intro .text_area {
		margin: 0 auto 24px;
		padding: 0;
		max-width: 100%;
		width: 100%;
	}
	.intro .img_area {
		max-width: 100%;
		width: 100%;
	}
	.intro h2.sec_head.mini {
		margin: -60px auto 0;
		font-size: 3rem;
	}
	.intro h2.sec_head.mini::after {
		margin: 16px 0 24px;
	}
	.intro h2.sec_head::before {
		position: relative;
		top: 0;
		left: -10px;
		z-index: 0;
		display: block;
		width: 88px;
		height: 73px;
		content: "";
	}
	.pg_pet .intro h2.sec_head::before {
		background: url(/department/files/ttl_pet_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_animal .intro h2.sec_head::before {
		background: url(/department/files/ttl_animal_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_sports .intro h2.sec_head::before {
		background: url(/department/files/ttl_sports_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_businessadministration .intro h2.sec_head::before {
		background: url(/department/files/ttl_businessadministration_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_bizdesign .intro h2.sec_head::before {
		background: url(/department/files/ttl_bizdesign_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_ai .intro h2.sec_head::before {
		background: url(/department/files/ttl_ai_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_it .intro h2.sec_head::before {
		background: url(/department/files/ttl_it_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_office .intro h2.sec_head::before {
		background: url(/department/files/ttl_office_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_fashion .intro h2.sec_head::before {
		background: url(/department/files/ttl_fashion_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_flower .intro h2.sec_head::before {
		background: url(/department/files/ttl_flower_future.png) no-repeat center center;
		background-size: 88px 73px;
	}
	.pg_pet .intro figure::after {
		top: -100px;
		right: -40px;
		left: auto;
		z-index: 1;
	}
}

/*-----------------------------------------
	contents_page_list
-----------------------------------------*/
.contents_page_list {
	margin: 0 0 -32px;
}
.contents_page_list &gt; li {
	margin-bottom: 32px;
}
.contents_page_list li dl {
	height: 100%;
	border-right: 1px #ccc solid;
	border-bottom: 1px #ccc solid;
	border-left: 1px #ccc solid;
}
.contents_page_list li dl dt {
	margin: 0 -1px;
	width: calc(100% + 2px);
}
.contents_page_list li dl dt figure {
	position: relative;
	overflow: hidden;
	text-align: center;
}
.contents_page_list li dl figure img {
	width: 100%;
	transition: all .5s ease;
}
.contents_page_list li dl dt figcaption {
	position: absolute;
	bottom: 0;
	padding: 24px;
	background-color: #222;
	color: #fff;
	text-align: left;
	font-size: 1.8rem;
}
.contents_page_list li dl dd {
	padding: 24px 10px;
	border-top: 1px #ccc solid;
}
.contents_page_list li dl dd ul li {
	margin-bottom: 12px;
}
.contents_page_list li dl dd &gt; ul &gt; li {
	font-weight: bold;
	font-size: 1.5rem;
}
.list_h2 {
	font-weight: bold;
	font-size: 1.5rem;
margin-bottom: 12px;
}
.contents_page_list li dl dd &gt; ul &gt; li &gt; ul {
	margin-top: 12px;
}
.contents_page_list li dl dd &gt; ul &gt; li &gt; ul &gt; li {
	font-weight: normal;
	font-size: 1.5rem;
}
.contents_page_list li dl dd ul li a {
	position: relative;
	display: inline-block;
	overflow: hidden;
	padding-left: 20px;
}

.contents_page_list li dl dd &gt; ul &gt; li &gt; a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 2px;
	display: block;
	margin: auto;
	width: 8px;
	height: 1px;
	background: #909090;
	content: "";
}

.contents_page_list li dl dd &gt; ul &gt; li &gt; a.blank::after {
	display: inline;
	padding-left: 10px;
	color: #30A2F0;
	content: "\e90c";
	font-size: 16px;
	font-family: "tsb_add";
}

.contents_page_list li dl dd &gt; ul &gt; li &gt; ul &gt; li &gt; a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: block;
	margin: auto;
	height: 1.5rem;
	color: #909090;
	content: "\e90b";
	text-align: center;
	font-size: 1.5rem;
	font-family: "tsb";
	line-height: 1;
}
.contents_page_list li dl dd &gt; ul:last-of-type li:last-of-type {
	margin-bottom: 0;
}
.contents_page_list li dl dt figcaption span {
	display: block;
	padding-top: 5px;
	font-size: 1.1rem;
}
/* HoverStyle */
@media only screen and (min-width: 767px) {
	.contents_page_list li dl dd &gt; ul &gt; li a {
		display: block;/*元々inline*/
		background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;
		-webkit-transition: all .3s ease-out;
		        transition: background-size 200ms;
		        transition: all .3s ease-out;
	}
.list_h2 {
		display: inline;
		background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;
		-webkit-transition: all .3s ease-out;
		        transition: background-size 200ms;
		        transition: all .3s ease-out;
	}
	.contents_page_list li dl dd &gt; ul &gt; li a:hover {
		background-size: 100% 1px;
		opacity: .7;
	}
	.contents_page_list li dl dd &gt; ul &gt; li &gt; a.blank::after:hover {
		background: none;
	}
	.contents_page_list li dl dt a:hover figure img {
		box-shadow: rgba(0, 0, 0, .1) 0 4px 12px;
		opacity: .8;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

/*-----------------------------------------
	list_box
-----------------------------------------*/
.list_box {
	margin: 40px auto 0;
	padding: 0;
	width: 100%;
}
.list_box::before,
.list_box::after {
	display: block;
	width: 100%;
	height: 10px;
	background-image: linear-gradient(-45deg, rgba(100,100,100,.1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(100,100,100,.1)50%,rgba(100,100,100,.1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));
	background-size: 6px 6px;
	content: "";
}
.list_box::before {
	margin: 0 0 32px;
}
.list_box::after {
	margin: 32px 0 0;
}
.list_box dl {
	display: flex;
	flex-flow: row nowrap;
}
.list_box dl dt {
	position: relative;
	display: flex;
	align-items: center;
	flex-flow: row nowrap;
	padding: 0 32px 0 24px;
	width: 305px;
	font-weight: bold;
	font-size: 1.8rem;
}
.list_box dl dt::before {
	position: relative;
	display: block;
	margin-right: 10px;
	content: "";
}
.list_box.job dl dt::before {
	width: 55px;
	height: 70px;
	background: url(/department/files/icon_flag.png) no-repeat center center;
	background-size: 55px 70px;
}
.list_box.licence dl dt::before {
	width: 55px;
	height: 70px;
	background: url(/department/files/icon_checklist.png) no-repeat center center;
	background-size: 55px 65px;
}
.list_box dl dt span {
	font-size: 2.2rem;
}
.list_box dl dt h2 {
	font-size: 1.8rem;
}
.list_box dl dd {
	display: block;
	padding-left: 32px;
	width: calc(100% - 305px);
	border-left: 2px solid #f2f1ed;
}
.list_box dl dd ul li {
	position: relative;
	padding: 3px 0 3px 17px;
}
.list_box dl dd ul li::before {
	position: absolute;
	top: 10px;
	left: 0;
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #30A2F0;
	content: "";
}
.list_box dl dd ul li.none:last-child::before {
	display: none;
}
@media only screen and (max-width: 767px) {
	.list_box::before {
		margin: 0 0 16px;
	}
	.list_box::after {
		margin: 16px 0 0;
	}
	.list_box dl {
		display: block;
	}
	.list_box dl dt {
		flex-flow: row wrap;
		margin-bottom: 20px;
		width: 100%;
	}
	.list_box dl dd {
		display: block;
		padding: 16px 2% 0 4%;
		width: 100%;
		border-top: 2px solid #f2f1ed;
		border-left: none;
	}
}

/*-----------------------------------------
	appropriate_list
-----------------------------------------*/
.appropriate_box {
	position: relative;
	margin: 80px auto;
	padding: 34px 16px 24px;
	width: 100%;
	border: 1px solid #d3d0cd;
}
.appropriate_box::after {
	position: absolute;
	right: 32px;
	bottom: 12px;
	z-index: 1;
	display: block;
	width: 80px;
	height: 31px;
	background: url(/department/files/deco_etc.png) no-repeat center center;
	background-size: 80px 31px;
	content: "";
}
.appropriate_box .ttl {
	position: absolute;
	top: -30px;
	left: 24px;
	display: inline-block;
	padding: 8px 16px;
	background: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 2.2rem;
}
.appropriate_list {
	display: flex;
	flex-flow: row wrap;
	list-style: none;
	margin-bottom: -30px;
}
.appropriate_list li {
	position: relative;
	display: flex;
	align-items: center;
	margin: 0 10px 30px;
	padding: 32px 8px;
	width: calc(25% - 20px);
	background: #f5f5f5;
	text-align: center;
	font-size: 1.6rem;
}
.appropriate_list.col_3 li {
	width: calc(33% - 20px);
}
.appropriate_list.col_2 li {
	width: calc(50% - 20px);
}
.appropriate_list.col_1 li {
	width: calc(100% - 20px);
}
.appropriate_list li &gt; div {
	width: 100%;
	text-align: center;
}
.appropriate_list li .num {
	position: absolute;
	top: -24px;
	left: 16px;
	color: #30A2F0;
	font-weight: 500;
	font-size: 3rem;
	font-family: "Oswald", sans-serif;
}
.appropriate_list li &gt; div br {
	display: inline-block;
	font-size: 0 !important;
}

@media only screen and (max-width: 1080px) {
	.appropriate_list li &gt; div br {
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	.appropriate_box {
		padding: 40px 16px 0;
	}
	.appropriate_list {
		margin-bottom: 0;
	}
	.appropriate_list li,
	.appropriate_list.col_3 li {
		margin: 0 10px 30px;
		width: calc(50% - 20px);
		font-size: 1.4rem;
	}
}

@media only screen and (max-width: 480px) {
	.appropriate_list li  div {
		text-align: left;
	}
}

/*-----------------------------------------
	section_deco
-----------------------------------------*/
.bg_pattern &gt; *,
.bg_stripe &gt; * {
	position: inherit;
	z-index: 2;
}
.bg_pattern {
	position: relative;
	padding-top: 80px;
	padding-bottom: 80px;
}
.bg_pattern::before {
	position: absolute;
	top: 0;
	right: 0;
	left: -50vw;
	z-index: 1;
	display: block;
	width: 100vw;
	height: 100%;
	background: #f2f1ed;
	content: "";
}
.bg_pattern::after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: block;
	width: 70%;
	height: 100%;
	background: #f2f1ed;
	content: "";
}
.bg_pattern.full::before {
	right: -50vw;
	left: -50vw;
	width: 150vw;
}
.bg_pattern.full::after {
	display: none;
}
.bg_pattern.short::before,
.bg_pattern.short::after {
	height: 400px;
}
.bg_pattern.middle::before,
.bg_pattern.middle::after {
	height: 600px;
}
.bg_pattern.bottom::before,
.bg_pattern.bottom::after {
	top: auto;
	bottom: 0;
	height: 85%;
}
.bg_pattern.short,
.bg_pattern.middle {
	padding-bottom: 1px;
}
.bg_stripe {
	position: relative;
}
.bg_stripe::before {
	position: absolute;
	top: 60px;
	right: -20%;
	z-index: 1;
	display: block;
	width: 500px;
	height: 200px;
	background-image: linear-gradient(
	90deg
	, rgba(240,240,240,1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(240,240,240,1)50%,rgba(240,240,240,1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0) );
	background-size: 32px 32px;
	content: "";
}
.pg_pet .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_pet_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_animal .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_animal_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_sports .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_sports_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_businessadministration .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_businessadministration_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_bizdesign .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_bizdesign_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_ai .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_ai_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_it .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_it_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_office .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_office_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_fashion .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_fashion_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
.pg_flower .bg_stripe::before {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 300px;
	height: 250px;
	background: url(/department/files/bg_pattern_flower_c.png) no-repeat top center;
	background-size: 300px auto;
	content: "";
}
@media only screen and (max-width: 767px) {
	.bg_pattern {
		padding-top: 40px;
		padding-bottom: 1px;
	}
}
/* sec_head deco */
.sec_deco {
	position: relative;
}
.sec_deco &gt; .sec_head {
	position: relative;
	z-index: 2;
}
.sec_deco &gt; * {
	position: relative;
	z-index: 2;
}

.sec_deco::after {
	position: absolute;
	top: -80px;
	left: 30%;
	z-index: 1;
	margin: auto;
	width: 244px;
	height: 300px;
	content: "";
}
.sec_deco.pattern_d::after {
	position: absolute;
	top: -80px;
	right: -10%;
	left: auto;
	z-index: 1;
	margin: auto;
	width: 375px;
	height: 300px;
	content: "";
}
.pg_pet .sec_deco::after {
	background: url(/department/files/bg_pattern_pet_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_pet .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_pet_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_animal .sec_deco::after {
	background: url(/department/files/bg_pattern_animal_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_animal .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_animal_d.png) no-repeat top center;
	background-size: 375px 300px;
}
/*.pg_sports .sec_deco::after {
	background: url(/department/files/bg_pattern_sports_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_sports .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_sports_d.png) no-repeat top center;
	background-size: 375px 300px;
}*/
.pg_businessadministration .sec_deco::after {
	background: url(/department/files/bg_pattern_businessadministration_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_businessadministration .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_businessadministration_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_bizdesign .sec_deco::after {
	background: url(/department/files/bg_pattern_bizdesign_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_bizdesign .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_bizdesign_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_ai .sec_deco::after {
	background: url(/department/files/bg_pattern_ai_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_ai .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_ai_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_it .sec_deco::after {
	background: url(/department/files/bg_pattern_it_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_it .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_it_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_office .sec_deco::after {
	background: url(/department/files/bg_pattern_office_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_office .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_office_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_fashion .sec_deco::after {
	background: url(/department/files/bg_pattern_fashion_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_fashion .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_fashion_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_flower .sec_deco::after {
	background: url(/department/files/bg_pattern_flower_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_flower .sec_deco.pattern_d::after {
	background: url(/department/files/bg_pattern_flower_d.png) no-repeat top center;
	background-size: 375px 300px;
}
.pg_opencampus .sec_deco::after,
.activity.sec_deco::after {
	position: absolute;
	top: -80px;
	right: 0;
	z-index: 1;
	margin: auto;
	width: 275px;
	height: 220px;
	background: url(/files/common/bg_pattern_search.png) no-repeat top center;
	background-size: 275px auto;
	content: "";
}
/* ------------------------------
	text_img_set
------------------------------ */
.text_img_set {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 40px;
}
.text_img_set:last-child {
	margin-bottom: 0;
}
.text_img_set.al_center {
	align-content: center;
	align-items: center;
}

/* text_area */
.text_img_set .text_area {
	margin: 0;
	padding-right: 40px;
	width: auto;
}
.text_img_set &gt; figure + .text_area {
	padding-right: 0;
	padding-left: 40px;
}
.text_img_set .text_area h3 {
	margin: 0 auto 20px;
	padding: 0;
	font-weight: bold;
	font-size: 2.2rem;
}
.text_img_set .text_area ol {
	margin: 0 auto 24px;
	padding-left: 2rem;
	font-size: 1.6rem;
	line-height: 3rem;
}
/* img_area */
.text_img_set .img_area {
	position: relative;
	z-index: 1;
	display: block;
	margin: 0;
	max-width: 50%;
	min-width: 50%;
	width: auto;
}
.text_img_set .text_area + .img_area {
	text-align: right;
}
.text_img_set.wide .img_area {
	max-width: 800px;
	width: 80%;
}
.text_img_set.middle .img_area {
	max-width: 400px;
	min-width: 40%;
	width: 40%;
}
.text_img_set.short .img_area {
	min-width: auto;
}
.text_img_set.short .img_area.com_mes {
	width: 200px;
}
.text_img_set.short .img_area.com_mes img {
	border: 1px solid #ccc;
}
.text_img_set.short .text_area {
	width: calc(100% - 200px);
}
.text_img_set.wide .text_area {
	width: calc(100% - 800px);
}
.text_img_set.middle .text_area {
	width: calc(100% - 400px);
}
.text_img_set .img_area img {
	position: relative;
	z-index: 2;
	width: auto;
}
.text_img_set .img_area img {
	max-width: 100%;
}

/* type_num */
.type_num.text_img_set .text_area {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 60px 60px 0 0;
	max-width: calc(100% - 603px);
}
.type_num.text_img_set .img_area {
	max-width: 603px;
}
.type_num.text_img_set .img_area::before {
	position: absolute;
	top: -40px;
	right: -40px;
	z-index: 1;
	display: block;
	width: 70%;
	height: 70%;
	background: #30A2F0;
	content: "";
}
.type_num.text_img_set:nth-child(odd) .text_area {
	order: 2;
}
.type_num.text_img_set:nth-child(odd) .text_area {
	position: relative;
	padding: 40px 0 0 50px;
}
.type_num.text_img_set:nth-child(odd) .img_area {
	order: 1;
	text-align: left;
}
.type_num.text_img_set:nth-child(odd) .img_area::before {
	display: none;
}
.type_num .num {
	position: relative;
	padding: 0 0 0 60px;
	color: #e6e4db;
	font-weight: 500;
	font-size: 7rem;
	font-family: "Oswald", sans-serif;
}
.type_num .num::before {
	position: absolute;
	bottom: 10px;
	left: 0;
	margin: auto;
	width: 100px;
	height: 60px;
	background: url(/files/common/ttl_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_pet .type_num .num::before {
	background: url(/department/files/ttl_pet_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_animal .type_num .num::before {
	background: url(/department/files/ttl_animal_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_sports .type_num .num::before {
	background: url(/department/files/ttl_sports_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_businessadministration .type_num .num::before {
	background: url(/department/files/ttl_businessadministration_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_bizdesign .type_num .num::before {
	background: url(/department/files/ttl_bizdesign_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_ai .type_num .num::before {
	background: url(/department/files/ttl_ai_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_it .type_num .num::before {
	background: url(/department/files/ttl_it_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_office .type_num .num::before {
	background: url(/department/files/ttl_office_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_fashion .type_num .num::before {
	background: url(/department/files/ttl_fashion_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_flower .type_num .num::before {
	background: url(/department/files/ttl_flower_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
.pg_tsbworld .type_num .num::before {
	background: url(/tsb-world/files/ttl_point.png) no-repeat top center;
	background-size: 100px auto;
	content: "";
}
@media only screen and (min-width: 1280px) {
	.type_num.text_img_set .text_area,
	.type_num.text_img_set:nth-child(odd) .text_area {
		width: auto;
	}
}

@media only screen and (max-width: 1280px) {
	.text_img_set.wide .text_area {
		min-width: 400px;
	}
}
@media only screen and (max-width: 1080px) {
	.type_num.text_img_set .text_area,
	.type_num.text_img_set:nth-child(odd) .text_area {
		margin-top: -30px;
		padding-top: 0;
		padding-bottom: 30px;
		max-width: 50%;
	}
}
@media only screen and (max-width: 768px) {
	.text_img_set {
		flex-flow: column nowrap;
	}
	.text_img_set.short .text_area,
	.text_img_set.wide .text_area,
	.text_img_set.middle .text_area,
	.text_img_set .text_area {
		padding: 0;
		max-width: 100%;
		width: 100%;
	}
	.text_img_set.short &gt; figure + .text_area,
	.text_img_set.wide &gt; figure + .text_area,
	.text_img_set.middle &gt; figure + .text_area,
	.text_img_set &gt; figure + .text_area {
		padding: 24px 0 0;
		max-width: 100%;
		width: 100%;
	}
	.text_img_set .text_area ol {
		padding-left: 2.5rem;
	}
	.text_img_set .img_area {
		margin: 20px auto 0;
		padding: 0;
		max-width: 100%;
		width: 100%;
	}
	.text_img_set.wide .img_area,
	.text_img_set.middle .img_area,
	.text_img_set.wide .text_area,
	.text_img_set.middle .text_area {
		max-width: 100%;
		width: 100%;
	}
	.text_img_set .img_area img {
		max-width: 100%;
	}
	.type_num.text_img_set .img_area::before {
		display: none;
	}
	.type_num.text_img_set .text_area,
	.type_num.text_img_set:nth-child(odd) .text_area {
		margin-top: 0;
		padding: 0;
		max-width: 100%;
	}
	.type_num.text_img_set:nth-child(odd) .text_area {
		order: 1;
		padding: 0;
	}
	.type_num.text_img_set:nth-child(odd) .img_area {
		order: 2;
		padding: 0;
	}
}
/*-----------------------------------------
	more_link_list
-----------------------------------------*/
.more_link_list {
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto;
}
.more_link_list a {
	display: block;
	width: 100%;
	height: 100%;
}
.more_link_list a figure img {
	width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
	.more_link_list li {
		margin-bottom: 24px;
	}
}
/*-----------------------------------------
	thumb_cont_list
-----------------------------------------*/
.thumb_cont_list {
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto;
	border-top: 1px solid #ccc;
}
.thumb_cont_list &gt; li {
	padding-bottom: 16px;
}
.thumb_cont_list.column_2 {
	justify-content: space-between;
	margin: 0 auto -60px;
	border: none;
}
.thumb_cont_list.column_2 &gt; li {
	margin-bottom: 44px;
	width: 48% ;
	border: none;
}
.thumb_cont_list.column_3.non_3 {
	border-top: none;
}
.thumb_cont_list.column_3.non_3 li {
	border-top: 1px solid #ccc;
}
.thumb_cont_list.column_3 &gt; li {
	width: calc(100% / 3);
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #fff;
}
.thumb_cont_list.column_3 &gt; li:last-of-type {
	width: calc(100% / 3 + 1px);
	border-right: 1px solid #ccc;
}
.thumb_cont_list.column_3 &gt; li:nth-of-type(3n) {
	width: calc(100% / 3);
	border-right: 1px solid #ccc;
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
.thumb_cont_list.column_3 &gt; li {
	width: 33.33%;
}
.thumb_cont_list.column_4 &gt; li {
	width: 25%;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #fff;
}
.thumb_cont_list.column_4 &gt; li:last-of-type {
	width: calc(25% + 1px);
	border-right: 1px solid #ccc;
}
.thumb_cont_list.column_4 &gt; li:nth-of-type(4n) {
	width: 25%;
	border-right: 1px solid #ccc;
}

.thumb_cont_list &gt; li a {
	display: block;
	color: #222;
}
.thumb_cont_list &gt; li &gt; figure img {
	padding: 16px 16px 8px;
	width: 100%;
	height: 100%;
}
.thumb_cont_list.column_2 &gt; li &gt; figure img {
	padding: 0;
}
.thumb_cont_list &gt; li img {
	display: block;
	width: 100%;
}
.thumb_cont_list &gt; li .ttl {
	position: relative;
	margin: 16px 32px 8px;
	font-weight: bold;
	font-size: 1.8rem;
}
.thumb_cont_list &gt; li .ttl_sec {
	position: relative;
	margin: 16px 32px 8px;
	color: #30a9ee;
	font-weight: bold;
	font-size: 1.4rem;
}
.thumb_cont_list &gt; li p {
	margin: 16px 32px 8px;
	font-size: 1.4rem;
}
.thumb_cont_list.column_2 &gt; li .ttl {
	margin: 24px 0 8px;
}
.thumb_cont_list.column_2 &gt; li p {
	margin: 16px 0 8px;
}

@media only screen and (max-width: 767px) {
	.thumb_cont_list.column_2 &gt; li {
		width: 100%;
		border: none;
		font-size: 1.2rem;
	}
	.thumb_cont_list.column_3 &gt; li,
	.thumb_cont_list.column_4 &gt; li,
	.thumb_cont_list.column_3 &gt; li:last-of-type,
	.thumb_cont_list.column_4 &gt; li:last-of-type,
	.thumb_cont_list.column_3 &gt; li:nth-of-type(3n),
	.thumb_cont_list.column_4 &gt; li:nth-of-type(4n) {
		width: 100%;
		border-right: 1px solid #ccc;
		font-size: 1.2rem;
	}
	.thumb_cont_list &gt; li .ttl {
		margin: 16px 16px 8px;
		font-size: 1.8rem;
	}
	.thumb_cont_list &gt; li .ttl_sec {
		margin: 16px 16px 8px;
	}
	.thumb_cont_list &gt; li p {
		margin: 8px 16px;
		line-height: 1.6;
	}
}
/*-----------------------------------------
	btn_list
-----------------------------------------*/
.btn_list {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.btn_list.third {
	justify-content: left;
}
/* ext_btn */
.btn_list .ext_btn {
	margin-bottom: 16px;
	width: calc(50% - 8px);
}
.btn_list.third .ext_btn {
	margin-right: 1.1%;
	width: 32.6%;
}
.btn_list.third .ext_btn:nth-of-type(3n) {
	margin-right: 0;
}
.btn_list .ext_btn a {
	display: flex;
	flex-flow: row wrap;
	padding: 16px;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
	background: url(/about/files/group_icon_open.png) no-repeat top 23px right 19px #fff;
	background-size: 18px;
	color: #222;
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.btn_list.third .ext_btn a {
	background: #fff;
}
.btn_list .ext_btn_img {
	margin-right: 16px;
}
.btn_list .ext_btn_img img {
	width: 178px;
}
.btn_list .ext_btn_img_m {
	margin: 0 auto 16px;
	text-align: center;
}
.btn_list .ext_btn_img_m img {
	width: 100%;
}
.btn_list .ext_btn .ttl {
	padding: 0 30px 0 0;
	width: 100%;
	background: url(/about/files/group_icon_open.png) no-repeat center right 0;
	background-size: 18px;
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.btn_list .ext_btn .ttl span {
	padding-bottom: 5px;
	background: linear-gradient(transparent 65%, #e0f5fc 65%);
	letter-spacing: .9px;
	font-weight: 700;
	font-size: 1.8rem;
}
.btn_list .ext_btn dl {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	    flex: 1;
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.btn_list .ext_btn dt {
	margin-bottom: 24px;
}
.btn_list .ext_btn dt .name {
	margin-right: 24px;
}
.btn_list .ext_btn dt .name span {
	padding-bottom: 5px;
	background: linear-gradient(transparent 65%, #e0f5fc 65%);
	letter-spacing: .9px;
	font-weight: 700;
	font-size: 1.8rem;
}
.btn_list .ext_btn dt small {
	display: block;
	padding-top: 10px;
	color: #222;
	letter-spacing: 0;
	font-size: 1.3rem;
}
.btn_list .ext_btn dd {
	letter-spacing: .9px;
	font-size: 1.5rem;
	line-height: 1.6;
}
/* Hover */
@media only screen and (min-width: 767px) {
	.btn_list .ext_btn a:hover dl {
		opacity: .5;
	}
	.btn_list .ext_btn a:hover .ttl {
		opacity: .5;
	}
}
@media only screen and (max-width: 767px) {
	.btn_list .ext_btn,
	.btn_list.third .ext_btn {
		margin: 0 auto 16px;
		width: 100%;
	}
	.btn_list .ext_btn a {
		display: block;
	}
	.btn_list .ext_btn_img {
		margin: 0 0 16px;
		padding: 0 35px;
		text-align: center;
	}
	.btn_list .ext_btn_img_m {
		margin: 0 0 16px;
		padding: 0 35px;
		text-align: center;
	}
	.btn_list .ext_btn_img_m img {
		display: inline-block;
		margin: 0 0 8px;
	}
	.btn_list .ext_btn dt {
		margin-bottom: 12px;
		font-size: 1.6rem;
	}
	.btn_list .ext_btn dt .name {
		margin-right: 0;
	}
	.btn_list .ext_btn dt small {
		padding-top: 5px;
		font-size: 1.2rem;
	}
	.btn_list .ext_btn dd {
		font-size: 1.4rem;
	}
}

/*-----------------------------------------
	point_cont_list
-----------------------------------------*/
.point_cont_list {
	display: flex;
	flex-flow: row wrap;
	margin: 100px auto 40px;
	list-style: none;
	text-align: center;
}
.point_cont_list &gt; li {
	padding: 0 50px 24px;
	width: calc(100% / 3);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #fff;
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
.point_cont_list &gt; li {
	width: 33.33%;
}
.point_cont_list &gt; li:last-of-type,
.point_cont_list &gt; li:nth-of-type(3n) {
	border-right: 1px solid #ccc;
}
.point_cont_list &gt; li span.num {
	position: relative;
	display: block;
	margin: -60px auto 15px;
	width: 120px;
	height: 90px;
	color: #d6eefc;
	text-align: right;
	font-weight: 500;
	font-size: 6.4rem;
	font-family: "Oswald", sans-serif;
}
.point_cont_list &gt; li span.num::before {
	position: absolute;
	bottom: 0;
	display: block;
	width: 91px;
	height: 67px;
	background: url(/files/common/ttl_point.svg) no-repeat center center;
	background-size: 91px 67px;
	content: "";
}
.point_cont_list &gt; li .ttl {
	position: relative;
	display: inline;
	background: linear-gradient(transparent 65%, #e0f5fc 65%);
	font-weight: bold;
	font-weight: bold;
	font-size: 1.6rem;
}
.point_cont_list &gt; li p {
	margin: 24px auto 0;
	text-align: left;
	line-height: 2.8rem;
}
@media only screen and (max-width: 767px) {
	.point_cont_list &gt; li,
	.point_cont_list &gt; li:nth-last-of-type(-n+3) {
		border-right: 1px solid #ccc;
	}
	.point_cont_list &gt; li {
		margin: 0 auto 60px;
		padding: 0 8% 45px;
		width: 100%;
	}
	.point_cont_list &gt; li:last-of-type {
		margin: 0 auto;
	}
}

/*-----------------------------------------
	timeline
-----------------------------------------*/
.timeline li dl {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	margin: 0 auto;
}
.timeline li dl dt {
	position: relative;
	padding: 5px 60px 0 0;
	width: 120px;
	color: #529ed3;
	text-align: right;
	font-weight: bold;
	font-size: 1.7rem;
}
.timeline li dl dt::after {
	position: absolute;
	top: 6px;
	right: 20px;
	display: block;
	width: 22px;
	height: 22px;
	border: 4px solid #529ed3;
	border-radius: 20px;
	background: #fff;
	content: "";
}
.timeline li dl::before {
	position: absolute;
	top: 8px;
	left: 88px;
	display: block;
	width: 2px;
	height: 100%;
	background: #529ed3;
	content: "";
}
.timeline li.toll dl::before {
	min-height: 275px;
}
.timeline li.toll {
	min-height: 275px;
}
.timeline li:last-child dl::before {
	display: none;
}
.timeline li dl dd {
	margin: 0 0 40px;
	padding-right: 450px;
	width: calc(100% - 120px);
}
.timeline li dl dd .ttl {
	position: relative;
	z-index: 3;
	margin: 0 0 20px;
	font-size: 2rem;
}
.timeline li dl dd .point {
	position: relative;
	z-index: 3;
	margin: 0 0 20px;
	font-size: 2rem;
	color: #529ed3;
	font-weight: bold;
}
.timeline li dl dd p {
	position: relative;
	z-index: 3;
	max-width: 480px;
	font-size: 1.4rem;
}
.timeline li:last-child dl dd {
	margin: 0;
}
.timeline li dl dd .image {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	max-width: 420px;
}
.timeline li dl dd .deco {
	position: absolute;
	top: 0;
	right: 450px;
	z-index: 2;
	max-width: 250px;
}
.timeline li dl dd .deco_inset {
	position: relative;
	z-index: 2;
	display: block;
	text-align: right;
}
.timeline li dl .image img,
.timeline li dl dd .deco img,
.timeline li dl dd .deco_inset img {
	width: 100%;
}
.timeline li dl dd .deco_inset img {
	max-width: 250px;
}
/* project version */
.timeline.project li dl dt {
	width: 160px;
}
.timeline.project li dl::before {
	left: 128px;
}
.timeline.project li dl dd {
	padding-right: 0;
	width: calc(100% - 160px);
}

/* season version */
.timeline.season li dl dt {
	width: 140px;
}
.timeline.season li dl::before {
	left: 108px;
}
.timeline.season li dl dd {
	padding-right: 0;
	width: calc(100% - 140px);
}
.timeline.season li dl dd p {
	max-width: none;
	font-size: 1.5rem;
	line-height: 2.8rem;
}
.timeline.season li dl dd .image {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	max-width: calc(100% - 400px);
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.timeline.season li dl dd .image img {
	width: 100%;
	height: auto;
	max-width: 50%;
	display: block;
	margin: 0 10px;
}
.timeline.season li dl dd .image img + img {
	margin-top: 10%;
}

@media only screen and (max-width: 767px) {
	.timeline li dl dd {
		padding-right: 0;
	}
	.timeline li dl dd .image {
		position: relative;
		top: auto;
		right: auto;
		margin: 20px auto 0;
		width: 100%;
	}
	.timeline li dl dd .deco {
		position: relative;
		top: auto;
		right: auto;
		padding: 10px 0 0;
		width: 200px;
		text-align: left;
	}
	.timeline li dl dd .deco_inset {
		left: -80px;
		padding: 10px 0 0;
		width: 200px;
		text-align: left;
	}
	.timeline.season li dl dd .image {
		position: relative;
		top: auto;
		right: auto;
		margin: 20px auto 0;
		width: 100%;
		max-width: 100%;
		display: block;
	}
	.timeline.season li dl dd .image img {
		width: 100%;
		max-width: 100%;
		margin: 0 0 10px;
	}
	.timeline li dl dt,
	.timeline.season li dl dt,
	.timeline.project li dl dt {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		padding: 5px 0 0 30px;
	}
	.timeline li dl dd,
	.timeline.season li dl dd,
	.timeline.project li dl dd {
		width: 100%;
		padding: 50px 0 0 30px;
	}
	.timeline li dl::before,
	.timeline.season li dl::before,
	.timeline.project li dl::before {
		left: 10px;
	}
	.timeline li dl dt::after,
	.timeline.season li dl dt::after {
		right: auto;
		left: 0;
	}
}
/*-----------------------------------------
	Timetable
-----------------------------------------*/
.cont_box.boder {
	padding: 30px 0;
	border: 1px #d3d0cd solid;
}
table.timetable {
	border-spacing: 4px;
	border-collapse: separate;
	table-layout: fixed;
	margin: 0 auto;
}
.timetable thead th,
.timetable thead td,
.timetable tbody th,
.timetable tbody td {
	border: none;
	text-align: center;
}
.timetable thead th {
	width: 100px;
	background: transparent;
}
.timetable thead td {
	padding: 10px;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
}
.timetable tbody th {
	padding: 3px;
	width: 100px;
	height: 80px;
	background: #222;
	color: #fff;
	font-weight: bold;
	font-style: italic;
	font-size: 2.3rem;
	font-family: "Lato", sans-serif;
}
.timetable thead td:nth-child(2) {
	background: #e5c935;
}
.timetable thead td:nth-child(3) {
	background: #e9a330;
}
.timetable thead td:nth-child(4) {
	background: #d64828;
}
.timetable thead td:nth-child(5) {
	background: #e18a8e;
}
.timetable thead td:nth-child(6) {
	background: #529ed3;
}
.timetable tbody td {
	padding: 16px 5px;
	background: #f0f9ff;
	color: #222;
}
.timetable tbody td.empty {
	background: #eee;
}

@media only screen and (max-width: 767px) {
	.cont_box.boder {
		padding: 30px 0 10px;
	}
}

/*-----------------------------------------
	course_section  special_section
-----------------------------------------*/
.course_section &gt; *,
.special_section &gt; * {
	position: relative;
	z-index: 1;
}
.course_section,
.special_section {
	position: relative;
	padding-top: 80px;
}
.course_section::before,
.special_section::before {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	display: block;
	width: 100vw;
	min-width: 1080px;
	height: 328px;
	/*background: url(/opencampus/files/bg_special.jpg) no-repeat top center;*/
	background-size: auto 328px;
	content: "";
}
.pg_pet .course_section::before {
	background: url(/department/files/bg_pet_course.jpg) no-repeat top center;
}
.pg_animal .course_section::before {
	background: url(/department/files/bg_animal_course.jpg) no-repeat top center;
}
.pg_sports .course_section::before {
	background: url(/department/files/bg_sports_course.jpg) no-repeat top center;
}
.pg_businessadministration .course_section::before {
	background: url(/department/files/bg_businessadministration_course.jpg) no-repeat top center;
}
.pg_bizdesign .course_section::before {
	background: url(/department/files/bg_bizdesign_course.jpg) no-repeat top center;
}
.pg_ai .course_section::before {
	background: url(/department/files/bg_ai_course.jpg) no-repeat top center;
}
.pg_it .course_section::before {
	background: url(/department/files/bg_it_course.jpg) no-repeat top center;
}
.pg_office .course_section::before {
	background: url(/department/files/bg_office_course.jpg) no-repeat top center;
}
.pg_fashion .course_section::before {
	background: url(/department/files/bg_fashion_course.jpg) no-repeat top center;
}
.pg_flower .course_section::before {
	/*background: url(/department/files/bg_flower_course.jpg) no-repeat top center;*/
}
.course_section &gt; .head_wrap.ttl::before,
.special_section &gt; .head_wrap.ttl::before {
	position: absolute;
	top: -120px;
	left: -30px;
	z-index: 1;
	display: block;
	width: 665px;
	height: 120px;
	content: "";
}
.pg_pet .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_petbusi.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_animal .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_animal.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_sports .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_sports.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_businessadministration .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_businessadministration.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_bizdesign .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_bizdesign.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_ai .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_ai.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_it .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_it.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_office .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_office.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_fashion .course_section &gt; .head_wrap.ttl::before {
	background: url(/department/files/ttl_fashion.png) no-repeat top left;
	background-size: auto 120px;
}
.pg_flower .course_section &gt; .head_wrap.ttl::before {
	/*background: url(/department/files/ttl_flower.png) no-repeat top left;*/
	background-size: auto 120px;
}
.special_section &gt; .head_wrap.ttl::before {
	left: -40px;
	width: 210px;
	height: 122px;
	background: url(/opencampus/files/ttl_special.png) no-repeat top center;
	background-size: 210px 122px;
}

@media only screen and (max-width: 767px) {
	.course_section::before,
	.special_section::before {
		min-width: auto;
		margin: 0 -4%;
	}
	.course_section &gt; .head_wrap.ttl::before {
		top: -90px;
		left: -4%;
	}
	.pg_pet .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_petbusi.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_animal .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_animal.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_sports .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_sports.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_businessadministration .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_businessadministration.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_bizdesign .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_bizdesign.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_ai .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_ai.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_it .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_it.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_office .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_office.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_fashion .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_fashion.png) no-repeat top left;
		background-size: auto 100px;
	}
	.pg_flower .course_section &gt; .head_wrap.ttl::before {
		background: url(/department/files/ttl_flower.png) no-repeat top left;
		background-size: auto 100px;
	}
	.special_section &gt; .head_wrap.ttl::before {
		top: -80px;
		left: -10px;
		background: url(/opencampus/files/ttl_special.png) no-repeat top left;
		background-size: 150px 85px;
	}
}

/*-----------------------------------------
	open campus
-----------------------------------------*/

/* accordion_box */
#filter_btn.cont_box {
	padding: 60px 0;
	border: 1px solid #d3d0cd;
	border-radius: 5px;
}
#filter_btn.cont_box .btn_area {
	margin: 60px auto 0;
	max-width: 300px;
}
.accordion_box {
	margin: 0;
}
.accordion_box dl {
	position: relative;
	padding: 0 0 16px;
}
.accordion_box dl:last-child {
	padding: 0;
}
.accordion_box dl dt::before {
	position: absolute;
	top: 0;
	right: 24px;
	bottom: 0;
	z-index: 1;
	display: block;
	margin: auto;
	width: 30px;
	height: 30px;
	color: #1397e8;
	content: "\e92a";
	font-size: 3rem;
	font-family: "tsb";
	line-height: 1;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.accordion_box dl.open dt::before {
	content: "\e924";
}
.accordion_box dt {
	position: relative;
	padding: 24px 40px 24px 60px;
	border: 1px solid #d3d0cd;
	background: #fff;
	color: #222;
	font-size: 1.8rem;
	line-height: 3rem;
	cursor: pointer;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.accordion_box dl.open dt {
	background: linear-gradient(to right, #30a2f0, #33e5e5);
	color: #fff;
}
.accordion_box dl.open dt::after,
.accordion_box dl.open dt::before {
	color: #fff;
}
.accordion_box dt::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 24px;
	z-index: 1;
	display: block;
	margin: auto;
	width: 30px;
	height: 30px;
	content: "\e93d";
	font-size: 3rem;
	font-family: "tsb";
	line-height: 1;
}
.accordion_box.type_qa dt::after {
	color: #1397e8;
	content: "Q";
}
.accordion_box.type_qa dt {
	padding-right: 60px;
}
.accordion_box.type_normal dt::after {
	color: #1397e8;
	content: "";
}
.accordion_box.type_normal dt {
	padding: 24px 40px 24px 24px;
}
.accordion_box.type_sort dt::after {
	color: #1397e8;
	content: "\e93d";
	font-family: "tsb";
}
.accordion_box dd {
	display: none;
	background: #fff;
}
.accordion_box dd .inner {
	padding: 40px 24px 0;
}
.accordion_box dd .inner &gt; * {
	margin-bottom: 20px;
}
.accordion_box dd .inner .tag_area li {
	display: inline-block;
	margin-right: 3rem;
}

.accordion_box.type_qa dl.open dd,
.accordion_box.type_normal dl.open dd {
	border-right: 1px solid #d3d0cd;
	border-bottom: 1px solid #d3d0cd;
	border-left: 1px solid #d3d0cd;
	font-size: 1.5rem;
}
.accordion_box.type_qa dl dd .inner {
	padding: 32px 32px 32px 60px;
}
.accordion_box.type_normal dl dd .inner {
	padding: 32px 24px 12px;
}
.accordion_box.type_qa dl dd .inner &gt; *:last-child {
	margin-bottom: 0;
}
.accordion_box.type_qa dl dd .inner ul &gt; li {
	position: relative;
	margin-bottom: 1rem;
	font-size: 1.5rem;
	line-height: 2.6rem;
}
.accordion_box.type_qa dl dd .inner ul &gt; li:last-child {
	margin-bottom: 0;
}


/* Hover */
@media only screen and (min-width: 767px) {
	.accordion_box dt:hover {
		background: #fafafa;
		color: rgba(34,34,34,.5);
		opacity: 1;
	}
	.accordion_box dl.open dt:hover {
		background: linear-gradient(to right, #30a2f0, #33e5e5);
		color: rgba(255,255,255,.5);
		opacity: 1;
	}
}
@media only screen and (max-width: 768px) {
	#filter_btn.cont_box {
		padding: 30px 0;
	}
	#filter_btn.cont_box .btn_area {
		margin: 30px auto 0;
		max-width: 300px;
	}
	.accordion_box {
		margin: 0 0 20px;
	}
	.accordion_box dl {
		padding: 0 4% 8px;
	}
	.accordion_box dl:last-child {
		padding: 0 4%;
	}
	.accordion_box dl dt::before {
		right: 16px;
		width: 18px;
		height: 18px;
		font-size: 1.8rem;
	}
	.accordion_box dt {
		position: relative;
		padding: 16px 40px 16px 50px;
		font-size: 1.6rem;
		line-height: 2.6rem;
		cursor: pointer;
	}
	.accordion_box dt::after {
		left: 16px;
		width: 18px;
		height: 18px;
		font-size: 1.8rem;
	}
	.accordion_box dd .inner {
		padding: 20px 4% 0;
	}
	.accordion_box.type_qa dl dd .inner {
		padding: 20px 4%;
	}
	.accordion_box.type_normal dl dd .inner {
		padding: 20px 4% 0;
	}
}

#employment {
	margin-top: -80px;
	padding-top: 160px;
}

/* filter_btn */
#filter_btn li {
	margin-bottom: 32px;
}
#filter_btn li label {
	letter-spacing: 0;
	font-size: 1.5rem;
	cursor: pointer;
}
#filter_btn li input {
	display: none;
}
#filter_btn li span {
	position: relative;
	display: block;
	padding: 0 0 0 32px;
	font-weight: bold;
}
#filter_btn li span::before {
	position: absolute;
	top: 3px;
	left: 0;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #e5e5e5;
	border-radius: 2px;
	content: "";
	transition: all .3s ease-out;
}
#filter_btn li input:checked + span::before {
	border: 1px solid #30a2f0;
	background: #30a2f0;
}
#filter_btn li input:checked + span {
	color: #30a2f0;
}
#filter_btn li input:checked + span::after {
	position: absolute;
	top: 6px;
	left: 6px;
	display: block;
	width: 6px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	transform: rotate(40deg);
}
#filter_btn #format .child {
	margin: 20px 0 0 0;
	padding: 20px 0 0 0;
	border-top: 1px solid #30a2f0;
}
#filter_btn #format .child label {
	font-size: 1.5rem;
}
#filter_btn #format .parent {
	width: 100%;
}
#filter_btn #format .parent &gt; label {
	font-size: 1.8rem;
}

/* parent */
#filter_btn li.parent &gt; label &gt; span {
	padding: 0 0 0 30px;
}
#filter_btn li.parent &gt; label &gt; span:before {
	top: 2px;
	width: 24px;
	height: 24px;
	content: "";
}
#filter_btn li.parent &gt; label &gt; input:checked + span:after {
	top: 6px;
	left: 8px;
	width: 8px;
	height: 12px;
	content: "";
}

/* calendar */
.breadcrumbs + .pg_ttl.calendar {
    min-height: 10px;
}
.pg_ttl.calendar + main &gt; .cont_outer &gt; section:first-child {
	margin-top: 0px;
}
#calendar dd {
	display: block;
}
#calendar dd section {
	margin-top: 15px;
}
#calendar dd h3.third_head {
	margin-bottom: 25px;
}
#calendar dd .inner {
	margin-bottom: 10px;
	display: flex;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	padding: 40px 0 0;
}
#calendar .calendar_box {
	width: 49%;
	margin-right: 2%;
	margin-bottom: 0;
}
#calendar .calendar_box:last-child {
	margin-right: 0;
}
#calendar table {
	margin-bottom: 20px;
	border: #a8b7cc 1px solid;
}
#calendar .calendar_box .caption {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}
#calendar .calendar_box .caption .year {
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	font-family: "Lato", sans-serif;
}
#calendar .calendar_box .caption .year span {
	font-weight: 700;
	font-size: 1.6rem;
	margin-left: 2px;
}
#calendar .calendar_box .caption .month {
	margin: 0 0 0 10px;
	font-weight: 700;
	font-size: 2.8rem;
	font-family: "Lato", sans-serif;
}
#calendar .calendar_box .caption .month span {
	font-weight: 700;
	font-size: 1.6rem;
	margin-left: 2px;
}
#calendar .calendar_box .caption .event_type &gt; span {
	margin: 0 0 0 10px;
	font-size: 1.2rem;
}
#calendar .calendar_box .caption .event_type .session .icon {
	color: #10c974;
}
#calendar .calendar_box .caption .event_type .experience .icon {
	color: #ff38a4;
}
#calendar .calendar_box .caption .event_type .meeting .icon {
	color: #f7850c;
}
#calendar table th,
#calendar table td {
	width: calc(100% / 7)!important;
	text-align: center;
	border: #acb6c4 1px solid;
}

/* IE */
*::-ms-backdrop,
#calendar table th {
	width: 14.28% !important;
}
*::-ms-backdrop,
#calendar table td {
	width: 14.28% !important;
}

#calendar table th {
	padding: 5px;
	font-size: 1.4rem;
	background: #222;
	border: #fff 1px solid;
}
#calendar table td {
	padding: 3rem 0 10px;
	height: 65px;
	background: #f2f3f6;
	position: relative;
	transition: all .5s;
	background-clip: padding-box;
}
#calendar table td span {
	top: 10px;
	left: 10px;
	position: absolute;
}
#calendar table th:first-child,
#calendar table td:nth-child(1)  {
	color: #ff628c;
}
#calendar table th:last-child,
#calendar table td:nth-child(7n) {
	color: #4ec8ff;
}
#calendar table td.today {
	background: #9bdeff;
	background-clip: padding-box;
}
#calendar table td.opday {
	background: #fff;
	cursor: pointer;
	background-clip: padding-box;
}
#calendar table td.opday.dayselect::before {
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	border: #ee3d82 3px solid;
	position: absolute;
}
/* IE */
*::-ms-backdrop,
#calendar table td.opday.dayselect::before {
	height: 64px;
}

#calendar table td div {
	display: flex;
	justify-content: center;
}
#calendar table td small {
	font-size: 1.2rem;
}
#calendar table td .ss_str {color: #10c974;order: 1;}
#calendar table td .ex_str {color: #ff38a4;order: 2;}
#calendar table td .mt_str {color: #fe8300;order: 3;}

/* hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) #calendar table td.opday:hover {
		opacity: 0.6;
	}
}

/* calendar alwayslist*/
#filter_btn .always_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 27px;
}
#filter_btn .always_list li {
	width: calc((100% - 48px) / 4);
	margin: 0 16px 16px 0;
	overflow: hidden;
	background: #fff;
	border-radius: 5px;
	-webkit-box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
	box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
	transition: all .3s linear;
}
#filter_btn .always_list li:nth-child(4n) {
	margin: 0 0 16px;
}
#filter_btn .always_list a {
	height: 100%;
	display: block;
	color: #000;
}
#filter_btn .always_list figure {
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#filter_btn .always_list figure img {
	max-width: initial;
	width: 100%;
}
#filter_btn .always_list .ttl {
	padding: 14px 10px;
	font-size: 1.4rem;
	font-weight: 700;
}
#filter_btn .always_list .ttl span {
	padding: 0;
}
#filter_btn .always_list .ttl span:before {
	content: none;
}

@media only screen and (max-width: 768px) {
	.pg_ttl.calendar::before, .pg_ttl.calendar::after {
		height: 150px;
	}
	.breadcrumbs + .pg_ttl.calendar {
		padding-top: 150px;
	}
	#calendar dd section {
		margin-top: 40px;
	}
	#calendar dd h3.third_head {
		font-size: 1.6rem;
		background: #f7f7f7;
		padding: 8px 17px;
		margin-bottom: 16px;
	}
	#calendar dd .inner {
		display: block;
		padding: 16px 0 0;
	}
	#calendar .calendar_box {
		width: 100%;
		margin-right: 0;
	}
	#calendar .calendar_box .caption {
		display: block;
		margin: 0 0 8px;
		padding-top: 8px;
	}
	#calendar .calendar_box .caption .month {
		margin: 0 0 0 5px;
	}
	#calendar .calendar_box .caption .event_type {
		text-align: right;
	}
	#calendar .calendar_box .caption .event_type &gt; span {
		margin: 0 0 0 5px;
	}
	#calendar table th,
	#calendar table td {
		display: table-cell;
	}
	#calendar table td small {
		font-size: 1rem;
	}

	/* calendar alwayslist*/
	#filter_btn .always_list {
		margin: 0 0 20px;
		display: block;
		border-radius: 5px;
	}
	#filter_btn .always_list li {
		border-radius: 0;
		-webkit-box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
		box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
	}
	#filter_btn .always_list li,
	#filter_btn .always_list li:nth-child(4n) {
		width: 100%;
		margin: 0;
		border: none;
		border-bottom: 1px solid #e5e5e5;
	}
	#filter_btn .always_list li:first-of-type {
		border-radius: 5px 5px 0 0;
	}
	#filter_btn .always_list li:last-of-type {
		border-radius: 0 0 5px 5px;
		border-bottom: none;
	}
	#filter_btn .always_list a {
		padding: 16px 10px;
		display: flex;
		align-items: center;
		color: #000;
	}
	#filter_btn .always_list figure {
		display: block;
		width: 88px;
		overflow: hidden;
		border-radius: 5px;
	}
	#filter_btn .always_list .ttl {
		width: calc(100% - 88px);
		padding: 0 0 0 16px;
	}
}

/* hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) #filter_btn .always_list li:hover {
		-webkit-box-shadow: 0 1px 3px rgb(0 0 0 / 8%);
		box-shadow: 0 1px 3px rgb(0 0 0 / 8%);
	}
}

/* icon_info */
.icon_info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 40px 0;
	padding: 16px 24px;
	background: #f8f8f8;
}
.icon_info dt {
	position: relative;
	letter-spacing: 0;
	font-weight: 700;
	font-size: 1.5rem;
}

.icon_info ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.icon_info li {
	position: relative;
	margin: 0 0 0 32px;
	padding: 0 0 0 28px;
	letter-spacing: 0;
	font-weight: 700;
	font-size: 1.3rem;
}
.icon_info li:before {
	position: absolute;
	top: 46%;
	left: 0;
	font-weight: 400;
	font-size: 2rem;
	font-family: "tsb_add";
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.icon_info li.icon_beginner:before {
	color: #2fa575;
	content: "\e901";
}
.icon_info li.icon_special:before {
	color: #e5c935;
	content: "\e908";
}
.icon_info li.icon_new:before {
	color: #e9a330;
	content: "\e903";
}
.icon_info li.icon_popular:before {
	color: #d64828;
	content: "\e906";
}
.icon_info li.icon_reserve:before {
	color: #529ed3;
	content: "\e907";
}

@media only screen and (max-width: 1150px) {
	.icon_info {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		    flex-direction: column;
	}
	.icon_info dt {
		margin: 0 0 16px;
	}
}

@media only screen and (max-width: 767px) {
	.icon_info {
		margin: 24px 0;
		padding: 4%;
	}
	.icon_info ul {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.icon_info li {
		margin: 0 5px 10px;
		padding: 0 0 0 40px;
	}
	.icon_info li:before {
		left: 15px;
		font-size: 1.6rem;
	}
}

/* interviewlist */
#interviewlist &gt; ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 102%;
	margin-top: 60px;
	margin-bottom: 32px;
	margin-left: -1%;
}
#interviewlist &gt; ul &gt; li {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	-ms-flex-direction: column;
	    flex-direction: column;
	margin-right: 1%;
	margin-left: 1%;
	margin-bottom: 40px;
	width: 31.3%;
	border: 1px solid #d3d0cd;
	background: #fff;
	opacity: 0;
}
#interviewlist &gt; ul &gt; li:before {
	position: absolute;
	right: 16px;
	bottom: 24px;
	display: block;
	width: 30px;
	height: 12px;
	color: #222;
	content: "\e93c";
	font-size: 1rem;
	font-family: "tsb";
}
#interviewlist &gt; ul &gt; li.show {
	opacity: 1;
}
#interviewlist &gt; ul &gt; li &gt; a {
	display: block;
	height: 100%;
	color: #222;
}
#interviewlist figure {
	position: relative;
	overflow: hidden;
}
#interviewlist figure img {
	display: block;
	max-width: initial;
	width: 100%;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
#interviewlist figcaption {
	position: relative;
	display: block;
	overflow: hidden;
	margin: -40px auto 24px 0;
	padding: 0;
	height: 40px;
	color: #fff;
	text-align: left;
}
#interviewlist figcaption span {
	display: inline-block;
	padding: 9px;
	font-weight: 700;
	font-size: 1.5rem;
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
#interviewlist figcaption span {
	padding: 9px 9px 5px;
}

#interviewlist dl {
	padding: 0 16px;
}
#interviewlist dt {
	margin: 0 auto 24px;
	font-weight: 700;
	font-size: 2rem;
}
#interviewlist dd span.name {
	display: block;
	margin: 0 auto 24px;
	font-weight: 700;
	font-size: 1.4rem;
}
#interviewlist .tag_cloud {
	margin: 0 auto 24px;
	text-align: left;
}
#interviewlist .tag_cloud span {
	display: inline-block;
	margin: 0 16px 0 0;
	color: #909090;
	font-size: 1.2rem;
}
#interviewlist #nohit {
	padding: 40px;
	background: #e9e9e9;
	color: #999;
	text-align: center;
}
#interviewlist #nohit span {
	display: block;
	font-size: 3rem;
	font-family: "Lato", sans-serif;
}

/* hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) #interviewlist li:hover {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}
}

@media only screen and (max-width: 1200px) {
	#interviewlist figcaption span {
		font-size: 1.3rem;
	}
}

@media only screen and (max-width: 767px) {
	#interviewlist &gt; ul {
		display: block;
		margin: 24px auto -24px;
		width: 100%;
	}
	#interviewlist &gt; ul &gt; li {
		margin-right: 0;
		margin-bottom: 24px;
		margin-left: 0;
		width: 100%;
	}

	#interviewlist figcaption span {
		font-size: 1.5rem;
	}
}

/* eventlist */
#boxlist &gt; ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 0 auto;
	width: 100%;
}
#boxlist &gt; ul &gt; li {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	-ms-flex-direction: column;
	    flex-direction: column;
	margin: 0 1% 32px 1%;
	width: 31.2%;
	border: 1px solid #d3d0cd;
	border-radius: 5px;
	background: #fff;
	opacity: 0;
	/* -webkit-transition: all .3s linear;
	        transition: all .3s linear; */
}
#boxlist &gt; ul &gt; li:nth-of-type(3n) {
	margin-right: 0;
}
#boxlist &gt; ul &gt; li::before {
	position: absolute;
	right: 16px;
	bottom: 24px;
	display: none;
	width: 30px;
	height: 12px;
	color: #222;
	content: "\e93c";
	font-size: 1rem;
	font-family: "tsb";
}
#boxlist &gt; ul &gt; li.show {
	opacity: 1;
}
#boxlist &gt; ul &gt; li &gt; a {
	display: block;
	height: 100%;
	color: #222;
}
#boxlist figure {
	position: relative;
	overflow: hidden;
}
#boxlist figure img {
	display: block;
	max-width: initial;
	width: 100%;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
#boxlist .inner {
	padding: 0 16px;
	text-align: left;
}
#boxlist .date {
	position: relative;
	display: inline-block;
	margin: 0px auto 0 -16px;
	padding: 15px 16px;
	background: #fff;
	text-align: left;
	font-weight: 900;
	font-size: 2.4rem;
	font-family: "Lato", sans-serif;
	line-height: 1;
}
#boxlist .date .year {
	margin: 0 10px 0 0;
	font-size: 1.2rem;
}
#boxlist .date .day {
	margin: 0 0 0 10px;
	font-size: 1.2rem;
}
#boxlist .date .day.sat {
	color: #30A2F0;
}
#boxlist .date .day.sun {
	color: #d24934;
}
#boxlist .date .always {
	font-weight: 500;
	font-size: 2.2rem;
}
#boxlist h3 {
	margin: 0 0 32px;
	padding: 0;
	text-align: left;
	font-weight: bold;
	font-size: 2rem;
}
#boxlist h3:before {
	content: none;
}
#boxlist p {
	margin: 0 0 32px;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.7;
}
#boxlist .type li {
	display: inline-block;
	margin: 0 16px 0 0;
	color: #999;
	font-size: 1.2rem;
}
#boxlist #nohit {
	padding: 40px;
	background: #e9e9e9;
	color: #999;
	text-align: center;
}
#boxlist #nohit span {
	display: block;
	font-size: 3rem;
	font-family: "Lato", sans-serif;
}

/* hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) #boxlist li.hov {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}
	#boxlist a:hover figure img {
		opacity: .8;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@media only screen and (max-width: 767px) {
	#boxlist &gt; ul {
		display: block;
		margin-left: 0;
		width: 100%;
	}
	#boxlist &gt; ul &gt; li {
		margin-right: 0;
		margin-bottom: 24px;
		margin-left: 0;
		width: 100%;
	}
	#boxlist .date .year {
		font-size: 2rem;
	}
	#boxlist .date .day {
		font-size: 1.6rem;
	}
	#boxlist h3 {
		margin: 8px 0 24px;
		font-size: 1.9rem;
	}
}
/* tooltip */
#boxlist .tooltips {
	margin: 30px 0 16px;
}
#boxlist .tooltips li {
	display: inline-block;
	margin: 0 5px;
	text-decoration: none;
}
#boxlist .tooltips abbr {
	text-decoration: none;
}
#boxlist .tooltips .icon_beginner abbr,
#tooltip.icon_beginner {
	color: #2fa575;
}
#boxlist .tooltips .icon_special abbr,
#tooltip.icon_special {
	color: #e5c935;
}
#boxlist .tooltips .icon_new abbr,
#tooltip.icon_new {
	color: #e9a330;
}
#boxlist .tooltips .icon_popular abbr,
#tooltip.icon_popular {
	color: #d64828;
}
#boxlist .tooltips .icon_reserve abbr,
#tooltip.icon_reserve {
	color: #529ed3;
}

#boxlist .tooltips abbr:before {
	font-size: 2.4rem;
	font-family: "tsb_add";
}
#boxlist .tooltips .icon_beginner abbr:before {
	content: "\e901";
}
#boxlist .tooltips .icon_special abbr:before {
	content: "\e908";
}
#boxlist .tooltips .icon_new abbr:before {
	content: "\e903";
}
#boxlist .tooltips .icon_popular abbr:before {
	content: "\e906";
}
#boxlist .tooltips .icon_reserve abbr:before {
	content: "\e907";
}
#tooltip {
	position: absolute;
	z-index: 1;
	padding: 7px 10px;
	border-radius: 5px;
	background: #fff;
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	        box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: 1.2rem;
}
#tooltip::after {
	position: absolute;
	bottom: -5px;
	left: 50%;
	margin-left: -5px;
	width: 0;
	height: 0;
	border-top: 5px solid #fff;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
	content: "";
}
#tooltip.top::after {
	top: -20px;
	bottom: auto;
	border-top-color: transparent;
	border-bottom: 5px solid #fff;
}
#tooltip.left::after {
	left: 10px;
	margin: 0;
}
#tooltip.right::after {
	right: 10px;
	left: auto;
	margin: 0;
}

.special_section .cont_box {
	display: flex;
	flex-flow: row wrap;
	padding: 40px 40px 0;
}
.special_section .cont_box &gt; .ttl {
	margin: 0 auto 40px;
	padding: 25px;
	width: 100%;
	background-image: linear-gradient(-45deg, rgba(100,100,100,.1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(100,100,100,.1)50%,rgba(100,100,100,.1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));
	background-size: 6px 6px;
	font-weight: bold;
	font-size: 2rem;
}
.special_section .cont_box .info_area {
	padding: 0 24px 0 0;
	width: 50%;
}
.special_section .cont_box .info_area p {
	margin: 0 auto 40px;
	font-size: 1.5rem;
	line-height: 3rem;
}
.special_section .cont_box .info_area dl {
	margin: 0 auto 24px;
	border-bottom: 1px solid #d3d0cd;
	font-size: 1.5rem;
}
.special_section .cont_box .info_area dl dt {
	margin: 0 auto 16px;
	color: #529ed3;
	font-weight: bold;
}
.special_section .cont_box .info_area dl dd {
	margin: 0 auto 16px;
}
.special_section .cont_box .table_area {
	padding: 0;
	width: 50%;
}

@media only screen and (max-width: 767px) {
	.special_section .cont_box .info_area,
	.special_section .cont_box .table_area {
		padding: 0;
		width: 100%;
	}
	.special_section .cont_box {
		padding: 32px 16px 0;
	}
}

/*-----------------------------------------
	thumb_course_link_list
-----------------------------------------*/
.thumb_course_link_list {
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto;
}
.thumb_course_link_list &gt; li {
	width: calc(100% / 3);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
.thumb_course_link_list &gt; li {
	width: 33.33%;
}
.thumb_course_link_list &gt; li:last-of-type,
.thumb_course_link_list &gt; li:nth-of-type(3n) {
	border-right: 1px solid #ccc;
}
.thumb_course_link_list.col_4 &gt; li:nth-of-type(3n) {
	border-right: none;
}
.thumb_course_link_list &gt; li a {
	display: block;
	color: #222;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.thumb_course_link_list &gt; li figure {
	position: relative;
	overflow: hidden;
}
.thumb_course_link_list &gt; li img {
	display: block;
	width: 100%;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.thumb_course_link_list &gt; li a &gt; div,
.thumb_course_link_list &gt; li a &gt; h3,
.thumb_course_link_list &gt; li ul {
	margin: 20px;
}
.thumb_course_link_list &gt; li .ttl {
	position: relative;
	padding-right: 1.6em;
	font-size: 1.6rem;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.thumb_course_link_list &gt; li .ttl:before {
	position: absolute;
	right: 0;
	bottom: .7rem;
	display: block;
	content: "\e93c";
	font-size: 1rem;
	font-family: "tsb";
}

/* Hover */
@media only screen and (min-width: 767px) {
	.thumb_course_link_list &gt; li a:hover {
		color: rgba(34, 34, 34, .7);
	}
	.thumb_course_link_list &gt; li a:hover img {
		opacity: 1;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@media only screen and (max-width: 768px) {
	.thumb_course_link_list &gt; li,
	.thumb_course_link_list &gt; li:nth-last-of-type(-n+3),
	.thumb_course_link_list.col_4 &gt; li,
	.thumb_course_link_list.col_4 &gt; li:nth-of-type(3n) {
		margin-bottom: 20px;
		width: 100%;
		border: 1px solid #ccc;
	}

	.thumb_course_link_list &gt; li a {
		font-size: 1.2rem;
	}
	.thumb_course_link_list &gt; li a &gt; div,
	.thumb_course_link_list &gt; li a &gt; p {
		margin: 1em;
	}
	.thumb_course_link_list &gt; li:last-of-type {
		margin-bottom: 0;
	}
}

/*-----------------------------------------
	action_link_list
-----------------------------------------*/
.action_link_list {
	display: flex;
	flex-flow: row wrap;
	margin: 40px auto 0;
}
.action_link_list &gt; li {
	position: relative;
	width: calc(100% / 4);
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.action_link_list.column_2 &gt; li {
	width: calc(100% / 2);
}
.action_link_list.column_3 &gt; li {
	width: calc(100% / 3);
}
/* IE */
_:-ms-lang(x)::-ms-backdrop,
.action_link_list.column_2 &gt; li {
	width: 50%;
}
_:-ms-lang(x)::-ms-backdrop,
.action_link_list.column_3 &gt; li {
	width: 33.33%;
}
.action_link_list &gt; li:last-child {
	border-right: 1px solid #ccc;
}
.action_link_list &gt; li::before {
	position: absolute;
	top: -2px;
	right: 0;
	bottom: -2px;
	left: 0;
	z-index: 1;
	display: block;
	margin: auto;
	width: 180px;
	height: calc(100% + 4px);
	background: #fff;
	content: "";
}
.action_link_list &gt; li::after {
	position: absolute;
	top: 0;
	right: -2px;
	bottom: 0;
	left: -2px;
	z-index: 1;
	display: block;
	margin: auto;
	width: calc(100% + 4px);
	height: 100px;
	background: #fff;
	content: "";
}
.action_link_list &gt; li a {
	position: relative;
	z-index: 3;
	display: block;
	padding: 32px 4%;
	height: 100%;
	background: #fff;
	text-align: center;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.action_link_list &gt; li figure {
	overflow: hidden;
	margin: 0 auto;
	padding: 0 5px;
	width: 150px;
	height: 85px;
}
.action_link_list &gt; li figure.large {
	padding: 0 10px;
	width: 250px;
}
.action_link_list &gt; li figure img {
	width: 100%;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.action_link_list &gt; li .ttl {
	position: relative;
	margin: 24px auto 0;
	font-weight: bold;
	font-size: 1.7rem;
}
.action_link_list &gt; li p {
	margin: 16px auto 0;
	font-size: 1.3rem;
}
/* Hover */
@media only screen and (min-width: 767px) {
	.action_link_list &gt; li a:hover {
		background: #f2f1ed;
	}
	.action_link_list &gt; li a:hover figure img {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@media only screen and (max-width: 768px) {
	.action_link_list &gt; li {
		width: 50%;
		border-bottom: none;
	}
	.action_link_list &gt; li:nth-last-of-type(-n+2) {
		border-bottom: 1px solid #ccc;
	}
	.action_link_list &gt; li:nth-of-type(2n),
	.action_link_list.column_2 &gt; li,
	.action_link_list.column_3 &gt; li {
		border-right: 1px solid #ccc;
	}
	.action_link_list.column_2 &gt; li,
	.action_link_list.column_2 &gt; li:nth-last-of-type(-n+2),
	.action_link_list.column_3 &gt; li,
	.action_link_list.column_3 &gt; li:nth-last-of-type(-n+2) {
		width: 100%;
		border-bottom: none;
	}
	.action_link_list.column_2 &gt; li:last-of-type,
	.action_link_list.column_3 &gt; li:last-of-type {
		border-bottom: 1px solid #ccc;
	}
	.action_link_list &gt; li:nth-last-of-type(-n+2) {
		border-bottom: 1px solid #ccc;
	}
	.action_link_list &gt; li:nth-of-type(2n) {
		border-right: 1px solid #ccc;
	}
	.action_link_list &gt; li figure {
		margin: 0 auto;
	}
	.action_link_list.column_3 &gt; li figure {
		margin: 0 auto;
		width: 150px;
	}
	.action_link_list.column_3 &gt; li figure.large {
		width: 250px;
	}
	.action_link_list &gt; li::before {
		width: 90px;
	}
	.action_link_list &gt; li .ttl {
		font-size: 1.4rem;
	}
	.action_link_list &gt; li p {
		font-size: 1.2rem;
	}
}
.info_box_area {
	margin: 40px auto 0;
	padding: 0 20px 20px 0;
	background-image: linear-gradient(-45deg,	rgba(100,100,100,.1) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(100,100,100,.1)50%,rgba(100,100,100,.1) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));
	background-size: 6px 6px;
}
.info_box_area a {
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
	background: #fff;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.info_box_area a figure {
	width: 420px;
}
.info_box_area a figure img {
	width: 100%;
}
.info_box_area a .detail {
	padding: 40px 24px 24px 0;
	width: calc(100% - 420px);
	text-align: left;
}
.info_box_area .ttl {
	display: inline;
	margin: 24px auto 0;
	padding: 0 8px;
	background: linear-gradient(transparent 50%, rgba(233,163,48,.65) 50%);
	font-weight: bold;
	font-size: 2.2rem;
}
.info_box_area p {
	margin: 24px auto;
	font-size: 1.4rem;
}
/* Hover */
@media only screen and (min-width: 767px) {
	.info_box_area a:hover .detail {
		opacity: .7;
	}
}
@media only screen and (max-width: 768px) {
	.info_box_area a figure,
	.info_box_area a .detail {
		width: 100%;
	}
	.info_box_area a .detail {
		padding: 40px 24px;
	}
	.info_box_area a  .ttl {
		font-size: 1.8rem;
	}
}

/*-----------------------------------------
	sns section
-----------------------------------------*/
.sns_section {
	position: relative;
	margin-top: 160px;
}
.sns_section::before {
	position: absolute;
	z-index: 1;
	margin: 0 -100%;
	width: 200vw;
	height: 520px;
	background: #f2f1ed;
	content: "";
}
.sns_section::after {
	position: absolute;
	top: -20px;
	right: -80px;
	z-index: 2;
	margin: auto;
	width: 244px;
	height: 300px;
	content: "";
}
.pg_pet .sns_section::after {
	background: url(/department/files/bg_pattern_pet_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_animal .sns_section::after {
	background: url(/department/files/bg_pattern_animal_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_sports .sns_section::after {
	background: url(/department/files/bg_pattern_sports_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_businessadministration .sns_section::after {
	background: url(/department/files/bg_pattern_businessadministration_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_bizdesign .sns_section::after {
	background: url(/department/files/bg_pattern_bizdesign_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_ai .sns_section::after {
	background: url(/department/files/bg_pattern_ai_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_it .sns_section::after {
	background: url(/department/files/bg_pattern_it_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_office .sns_section::after {
	background: url(/department/files/bg_pattern_office_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_fashion .sns_section::after {
	background: url(/department/files/bg_pattern_fashion_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.pg_flower .sns_section::after {
	background: url(/department/files/bg_pattern_flower_a.png) no-repeat top center;
	background-size: 244px 293px;
}
.sns_ttl {
	position: relative;
	z-index: 3;
}
.sns_ttl h2 {
	position: relative;
	z-index: 3;
	color: #fff;
}
.sns_ttl h2.sec_head span::before {
	background: #fff;
}
.sns_ttl::before,
.sns_ttl::after {
	position: absolute;
	top: -80px;
	left: -80px;
	display: block;
	width: 550px;
	height: 300px;
	content: "";
}

.sns_ttl::after {
	z-index: 2;
	background-image: linear-gradient(34deg, rgba(0,0,0,.04) 50%,rgba(0,0,0,0) 50%,rgba(0,0,0,0));
}
.sns_field {
	position: relative;
	z-index: 4;
	background: transparent;
}
.sns_field section {
	margin-top: 0;
	background: #fff;
}

@media only screen and (max-width: 767px) {
	.sns_field section {
		margin-bottom: 40px;
	}
	.sns_ttl h2.sec_head span.en {
		color: #fff;
	}
	.sns_field section:last-of-type {
		margin-bottom: 0;
	}
}

/*-----------------------------------------
	cont nav
-----------------------------------------*/
.cont_nav_ttl {
	position: relative;
	margin-bottom: 40px;
	padding: 0 0 0 40px;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 1.3;
}
.cont_nav_ttl::before {
	position: absolute;
	top: 16px;
	left: 0;
	display: block;
	width: 30px;
	height: 1px;
	background: #222;
	content: "";
}
.cont_nav_ttl span {
	display: block;
	margin-bottom: 10px;
	font-size: 2.6rem;
	font-family: "Lato", sans-serif;
}

/* content_list */
.content_list,
.content_list_noparent {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 0;
	width: 100%;
}
.content_list &gt; li {
	position: relative;
	border: 1px solid #d3d0cd;
	background: #fff;
}
.content_list_noparent &gt; li {
	position: relative;
	width: 100%;
	border: 1px solid #d3d0cd;
	background: #fff;
}
.content_list &gt; li &gt; a {
	display: block;
	padding: 32px 40px 32px 24px;
	height: 85px;
	color: #222;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 1.4;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
/* parent */
.content_list .parent {
	margin: 0 0 8px 0;
	width: 100%;
}
.content_list .parent:last-child {
	margin: 0;
}
.content_list .parent &gt; a:before {
	content: none;
}
/* switch_btn */
.content_list li .switch_btn {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 85px;
	cursor: pointer;
}
.content_list .parent .switch_btn::before {
	position: absolute;
	top: 0;
	right: 24px;
	bottom: 0;
	margin: auto;
	height: 3rem;
	color: #529ed3;
	content: "\e92a";
	font-size: 3rem;
	font-family: "tsb";
	line-height: 1;
}
.content_list .parent.toggle .switch_btn::before {
	color: #d3d0cd;
	content: "\e924";
}
.content_list li.active .switch_btn::before {
	color: #fff;
	content: "\e924";
}
.content_list li.active.toggle .switch_btn::before {
	color: #529ed3;
	content: "\e92a";
}
.content_list &gt; li &gt; ul,
.content_list &gt; li &gt; .accordion_wrapper {
	position: relative;
	display: none;
	overflow: hidden;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 24px 40px;
	padding: 16px 0;
}
.content_list &gt; li &gt; .accordion_wrapper &gt; ul {
	position: relative;
	display: flex;
	overflow: hidden;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 100%;
	padding: 0 0 70px;
}
.content_list.morenav &gt; li &gt; ul,
.content_list.morenav &gt; li &gt; .accordion_wrapper {
	padding: 16px 0;
}
.content_list_noparent &gt; li &gt; ul {
	position: relative;
	display: flex;
	overflow: hidden;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 24px 40px;
	padding: 16px 0 0;
}
.content_list &gt; li &gt; ul li,
.content_list_noparent &gt; li &gt; ul li,
.content_list &gt; li &gt; .accordion_wrapper &gt; ul li {
	padding-bottom: 16px;
	width: calc(100% / 4);
}
/* .content_list &gt; li &gt; ul &gt; li:last-of-type, */
.content_list &gt; li &gt; .accordion_wrapper &gt; ul &gt; li:last-of-type {
	position: absolute;
	bottom: 0;
	left: 0;
}
.content_list_noparent &gt; li &gt; ul &gt; li:last-of-type {
	position: relative;
	bottom: auto;
	left: auto;
}
.content_list &gt; li &gt; ul a,
.content_list &gt; li &gt; .accordion_wrapper ul a,
.content_list_noparent &gt; li &gt; ul a {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 18px 10px 18px 24px;
	width: 96%;
	height: 100%;
	color: #222;
	font-weight: bold;
	line-height: 1.4;
	-webkit-text-size-adjust: none;
}
.content_list &gt; li &gt; ul a::after,
.content_list &gt; li &gt; .accordion_wrapper ul a::after,
.content_list_noparent &gt; li &gt; ul a::after {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 1px;
	background: #222;
	content: "";
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.content_list &gt; li &gt; ul a::before,
.content_list &gt; li &gt; .accordion_wrapper ul a::before,
.content_list_noparent &gt; li &gt; ul a::before {
	position: absolute;
	top: 19px;
	left: 3px;
	display: block;
	width: 14px;
	height: 14px;
	color: #529ed3;
	content: "\e900";
	text-align: center;
	font-size: 1.4rem;
	font-family: "tsb_add";
}

/* active */
.content_list li.active &gt; a {
	background: linear-gradient(to right, #30a2f0, #33e5e5);
	color: #fff;
}
.content_list li &gt; a.active,
.content_list &gt; li &gt; .accordion_wrapper ul a.active {
	color: #529ed3;
}
.content_list li.toggle &gt; a {
	background: #fff;
	color: #222;
}
.content_list li:not(.active).toggle &gt; a {
	border-bottom: 1px solid #d3d0cd;
	background: #f8f8f8;
	color: #529ed3;
}
.content_list li.active &gt; ul,
.content_list &gt; li.active &gt; .accordion_wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
/* Hover */
@media only screen and (min-width: 767px) {
	.content_list &gt; li &gt; ul a:hover::after,
	.content_list_noparent &gt; li &gt; ul a:hover::after,
	.content_list &gt; li &gt; .accordion_wrapper ul a:hover::after {
		animation: 300ms underLine forwards;
	}
}

@media only screen and (max-width: 767px) {
	.content_list &gt; li &gt; ul,
	.content_list_noparent &gt; li &gt; ul,
	.content_list &gt; li &gt; .accordion_wrapper {
		margin: 8px 24px;
		padding: 8px 0;
	}
	.content_list &gt; li &gt; .accordion_wrapper &gt; ul {
		padding: 0;
	}
	.content_list &gt; li &gt; ul li,
	.content_list_noparent &gt; li &gt; ul li,
	.content_list &gt; li &gt; .accordion_wrapper &gt; ul li {
		padding-bottom: 0;
		width: 100%;
	}
	.content_list &gt; li &gt; ul a,
	.content_list_noparent &gt; li &gt; ul a,
	.content_list &gt; li &gt; .accordion_wrapper &gt; ul li a {
		width: 100%;
	}
	.content_list &gt; li a {
		padding: 24px 40px 24px 24px;
		height: 70px;
	}
	.content_list li .switch_btn {
		height: 70px;
	}
	.content_list &gt; li &gt; ul &gt; li:last-of-type,
	.content_list &gt; li &gt; .accordion_wrapper &gt; ul &gt; li:last-of-type {
		position: relative;
		bottom: auto;
		left: auto;
	}
}
/*-----------------------------------------
	NEWS
-----------------------------------------*/
/* tab_list */
ul.tab_list {
	margin: 85px auto 45px;
}
ul.tab_list li {
	width: calc(100% / 5);
	text-align: center;
}
/* news_area */
.no_article {
	padding: 40px;
	color: #999;
	text-align: center;
	background: #e9e9e9;
}
.no_article.type_important {
	margin: 85px auto 45px;
}
.no_article span {
	display: block;
	font-size: 3rem;
	font-family: "Lato", sans-serif;
}
.news_area {
	margin: 0 auto 45px;
	width: 100%;
	border-top: 1px solid #ccc;
}
.news_area li {
	border-bottom: 1px solid #ccc;
}
.news_area li a {
	display: block;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 24px 32px;
	width: 100%;
	height: 100%;
	color: #222;
}
.news_area li figure {
	margin: 0 2% 0 0;
	width: 20%;
}
.news_area li figure img {
	width: 100%;
	height: auto;
}
.news_area li .txt_info {
	width: 78%;
}
.news_area li .txt_info .news_info {
	display: flex;
	align-items: center;
	margin: 0 0 16px;
	font-size: 1.3rem;
}
.news_area li .txt_info .news_info .date {
	display: inline-block;
	margin: 0 50px 8px 0;
	min-width: 100px;
	color: #888;
}
.news_area li .ttl {
	margin: 0 0 16px;
	font-weight: bold;
	font-size: 1.7rem;
}
.news_area li .trim {
	overflow: hidden;
	margin: 0 0 24px;
	color: #888;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.5rem;
}

.tag_list span {
	display: inline-block;
	margin: 0 16px 0 0;
	color: #888;
	font-size: 1.2rem;
}
.label_wrap {
	display: inline-block;
}
.label_wrap span {
	display: inline-block;
	margin: 0 20px 8px 0;
	padding: 4px;
	background: #f5f5f5;
}
/* no_thumb */
.news_area.no_thumb li .txt_info {
	width: 100%;
}

/*-- news_detail --*/
.news_detail .news_ttl {
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto 40px;
}
.news_detail .news_ttl .label_wrap {
	margin: 0 auto 16px;
	width: 100%;
}
.news_detail .news_ttl .sec_head {
	margin: 0 auto;
	width: 100%;
}
.news_detail .news_ttl .sec_head.mini::after {
	margin: 16px 0;
}
.news_detail .news_ttl .date {
	display: block;
	width: 100px;
}
.news_detail .news_ttl .tag_list {
	margin: 0;
	width: calc(100% - 100px);
	text-align: right;
}
.news_detail .news_ttl .tag_list span:last-of-type {
	margin: 0;
}

/* Hover */
@media only screen and (min-width: 767px) {
	.news_area li a:hover {
		opacity: .7;
	}
}
@media only screen and (max-width: 767px) {
	ul.tab_list li {
		width: auto;
	}
	.news_area {
		margin: 0 auto 40px;
	}
	.news_area li a {
		padding: 20px 0;
	}
	.news_area li figure {
		margin: 0 4% 0 0;
		width: 25%;
	}
	.news_area li .txt_info {
		width: 71%;
	}
	.news_area li .txt_info .news_info {
		flex-flow: row wrap;
		margin: 0 0 8px;
	}
	.news_area li .txt_info .news_info .date {
		display: block;
		margin: 0 0 8px;
		width: 100%;
	}
	.news_area li .tag_list {
		font-size: 1rem;
	}
	.news_area li .ttl {
		margin: 0 0 4px;
		font-size: 1.3rem;
	}
	.news_area li .trim {
		margin: 0 0 4px;
		font-size: 1.2rem;
	}
	.news_area li .tag_list span {
		font-size: 1rem;
	}
	.news_detail .news_ttl .sec_head {
		font-size: 2.4rem;
	}
}
/*-- page_nation --*/
.page_nation ul {
	position: relative;
	padding: 0;
	width: 100%;
	text-align: center;
}
.page_nation ul li {
	display: inline-block;
	margin: 0 2px;
}
.page_nation ul li a {
	display: inline-block;
	overflow: hidden;
	width: 40px;
	height: 40px;
	border-bottom: 1px solid #222;
	color: #222;
	text-align: center;
	font-size: 1.6rem;
	line-height: 36px;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.page_nation ul li a.link_before,
.page_nation ul li a.link_next,
.page_nation ul li.pn_prev a,
.page_nation ul li.pn_next a {
	position: absolute;
	top: 0;
	width: 6em;
	border: none;
	background: none;
}
.page_nation ul li a.link_before:before,
.page_nation ul li a.link_next:before,
.page_nation ul li.pn_prev a:before,
.page_nation ul li.pn_next a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 3px;
	content: "";
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.page_nation ul li a.link_before span,
.page_nation ul li a.link_next span,
.page_nation ul li.pn_prev a span,
.page_nation ul li.pn_next a span {
	color: #1397e8;
}
.page_nation ul li a.link_before {
	left: 0;
}
.page_nation ul li a.link_next {
	right: 0;
}
.page_nation ul li.pn_prev a {
	left: 6.5em;
}
.page_nation ul li.pn_next a {
	right: 6.5em;
}

.page_nation ul li.active a {
	border-bottom: 2px solid #1397e8;
	color: #1397e8;
}
.page_nation ul li.visited a {
	border-bottom: none;
	opacity: .4;
}
/* hover */
@media only screen and (min-width: 767px) {
	body:not(.tab_view) .page_nation ul li a:hover {
		border-bottom: 2px solid #1397e8;
		color: #1397e8;
		opacity: 1 !important;
	}
	body:not(.tab_view) .page_nation ul li a.link_before:hover,
	body:not(.tab_view) .page_nation ul li a.link_next:hover,
	body:not(.tab_view) .page_nation ul li.pn_prev a:hover,
	body:not(.tab_view) .page_nation ul li.pn_next a:hover {
		border-bottom: none;
		color: #1397e8;
		opacity: 1 !important;
	}
}
@media only screen and (max-width: 767px) {
	.page_nation ul {
		padding: 0 0 13vw;
	}
	.page_nation ul li a {
		width: 11vw;
		height: 11vw;
		font-size: 2.8vw;
		line-height: 11vw;
	}
	.page_nation ul li.pn_prev a,
	.page_nation ul li.pn_next a {
		top: auto;
		bottom: 0;
		width: 46%;
	}
	.page_nation ul li.pn_prev a span,
	.page_nation ul li.pn_next a span {
		font-size: 1.6rem;
	}
	.page_nation ul li a.link_before,
	.page_nation ul li a.link_next {
		display: none;
	}
	.page_nation ul li a.link_before {
		left: 0;
	}
	.page_nation ul li a.link_next {
		right: 0;
	}
	.page_nation ul li.pn_prev a {
		left: 0;
	}
	.page_nation ul li.pn_next a {
		right: 0;
	}
}

/*-----------------------------------------
	important notice
-----------------------------------------*/
.pg_important .news_area {
	margin: 85px auto 45px;
}
.pg_important .news_area li .txt_info {
	width: 100%;
}

/*-----------------------------------------
	ACCESS
-----------------------------------------*/
.access_map {
	overflow: hidden;
	margin: 0 0 30px;
	padding: 0;
	width: 100%;
	height: 400px;
}
.map_information {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.map_information dl {
	width: 48%;
}
.map_information dl dt {
	position: relative;
	margin: 0 auto 30px;
	font-weight: bold;
	font-size: 1.6rem;
}
.map_information dl dt span {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 15px 0 0;
	height: 2.6rem;
	background: #fff;
	line-height: 2.6rem;
}
.map_information dl dt span::before {
	position: relative;
	display: inline-block;
	margin-right: .5rem;
	vertical-align: top;
	font-size: 2.6rem;
	font-family: "tsb_add";
	line-height: 2.6rem;
}

.map_information dl dt span.airport::before {
	content: "\e909";
}
.map_information dl dt span.place::before {
	content: "\e90a";
}
.map_information dl dt span.train::before {
	content: "\e90b";
}
.map_information dl dt::after {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 0;
	display: block;
	margin: auto;
	width: 100%;
	height: 1px;
	background: #ccc;
	content: "";
}
.map_information dl dd {
	margin: 0 auto 45px;
}
.map_information dl dd:last-child {
	margin: 0 auto;
}
.map_information dl dd.place {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.map_information dl dd.place ul {
	margin: 45px auto 0;
	padding-left: 2rem;
	width: 100%;
	list-style: disc;
}
.map_information dl dd.place ul li {
	margin: 0 auto 8px;
}
.map.cont_box {
	margin: 0 auto 60px;
	padding: 60px 0 25px;
}
.map.cont_box figure {
	margin: 0 auto 60px;
	max-width: 960px;
	width: 90%;
}
.map.cont_box figure img {
	width: 100%;
}
.map.cont_box ol {
	display: flex;
	flex-flow: row wrap;
	margin: auto;
	max-width: 1080px;
	width: 90%;
	list-style: none;
	counter-reset: mapitem;
}
.map.cont_box ol li {
	position: relative;
	margin-bottom: 35px;
	padding-left: 17px;
	width: calc(100% /5);
	font-weight: bold;
	line-height: 20px;
}
.map.cont_box ol li::before {
	position: absolute;
	top: 0;
	left: -10px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #7d9eb1;
	color: #fff;
	content: counter(mapitem);
	counter-increment: mapitem;
	text-align: center;
	font-weight: bold;
	line-height: 20px;
	display: block;
	text-indent: 0;
}
@media only screen and (max-width: 767px) {
	.access_map {
		margin: 0 auto 30px;
		width: 96%;
		height: 300px;
	}
	.map_information dl {
		width: 100%;
	}
	.map_information dl dd.place {
		margin: 0 auto 45px;
	}
	.map.cont_box ol li {
		width: calc(100% /3);
	}
}
@media only screen and (max-width: 480px) {
	.map.cont_box {
		margin: 0 auto 30px;
		padding: 30px 0 0;
	}
	.map.cont_box ol li {
		width: calc(100% /2);
	}
}

/*-----------------------------------------
	DISTANT
-----------------------------------------*/
.hometown_list {
	display: flex;
	flex-flow: row wrap;
}
.hometown_list dl {
	margin-right: 16px;
	margin-bottom: 16px;
	width: calc(50% - 26px);
	text-align: center;
}
.hometown_list dl dt {
	padding: 12px;
	color: #fff;
	font-weight: bold;
}
.hometown_list dl dd {
	padding: 8px;
	border: 1px solid #ccc;
	border-top: none;
	font-weight: bold;
	font-size: 2.1rem;
}
.hometown_list dl dd span {
	font-size: 1.5rem;
}
.hometown_list dl.hokkaidou dt {
	background: #529ed3;
}
.hometown_list dl.touhoku dt {
	background: #e9a330;
}
.hometown_list dl.kitakanto dt {
	background: #d3302b;
}
.hometown_list dl.kanto dt {
	background: #f5451e;
}
.hometown_list dl.hokuriku dt {
	background: #FD848E;
}
.hometown_list dl.tokai dt {
	background: #e5c935;
}
.hometown_list dl.kinki dt {
	background: #2fa575;
}
.hometown_list dl.tyugoku dt {
	background: #7eb765;
}
.hometown_list dl.sikoku dt {
	background: #604792;
}
.hometown_list dl.kyusyu dt {
	background: #74d0d0;
}
.hometown_list dl.okinawa dt {
	background: #df5695;
}
.areamap {
	width: 100%;
	height: 500px;
}
@media only screen and (max-width: 767px) {
	.hometown_list dl {
		width: 47%;
	}
	.hometown_list dl:nth-of-type(2n) {
		margin-right: 0;
	}
	.areamap {
		width: 100%;
		height: 350px;
	}
}

/*-----------------------------------------
	ABOUT
-----------------------------------------*/
.signature {
	display: inline-block;
	margin: 40px auto 0;
	font-weight: bold;
	line-height: 2.4rem;
}
.history_box {
	margin: 0 auto 40px;
}
.history_box dl {
	display: flex;
	margin: 0;
	font-weight: bold;
	font-size: 1.5rem;
}
.history_box dl dt {
	padding: 0 24px 30px 0;
	width: 90px;
	border-right: 1px solid #ccc;
}
.history_box dl:last-of-type dt {
	padding: 0 24px 0 0;
}
.history_box dl dd {
	padding: 0 0 30px 24px;
	width: calc(100% - 90px);
}
.history_box dl:last-of-type dd {
	padding: 0 0 0 24px;
}
/* slider_box */
.slider_box_main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.slider_box_main .slick-list {
	position: relative;
	margin-right: 80px;
	width: calc(100% - 404px);
}
.slider_box_main .slick-dots li:hover {
	opacity: .7 !important;
	cursor: pointer;
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.slider_box_main li img {
	max-width: 800px;
	width: 100%;
}
.slider_box_main figcaption {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	padding: 8px 16px;
	background-color: #222;
	color: #fff;
	letter-spacing: 1.26px;
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
}
.slider_box .slick-dots {
	position: static;
	margin-left: -16px;
	width: 324px;
	text-align: left;
	font-size: 0;
}
.slider_box .slick-dots li {
	position: relative;
	display: inline-block;
	margin: 0 0 16px 16px;
	width: 92px;
	height: auto;
}
.slider_box .slick-dots .slick-active {
	position: relative;
}
.slider_box .slick-dots .slick-active:hover {
	opacity: 1;
	cursor: auto;
}
.slider_box .slick-dots .slick-active::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	background-color: #fff;
	content: "";
	opacity: .5;
}
.slider_box .slick-dots li::before {
	display: block;
	padding-top: 100%;
	content: "";
}
.slider_box .slick-dots li img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;

	-o-object-fit: cover;
	   object-fit: cover;
}

/* schedule */
.slideshow_wrp {
	margin: 0 0 80px;
	padding: 0 50px;
}
.slideshow {
	visibility: hidden;
	opacity: 0;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.slideshow li img {
	width: 100%;
	display: block;
}
.slideshow dl {
	margin: 30px 0 10px;
}
.slideshow .slick-dots {
	position: static;
}
.slideshow .slick-dots li {
	width: 10px;
	text-align: center;
}
.slideshow .slick-dots li button::before {
	width: 7px;
	height: 7px;
	border-radius: 5px;
	background: #222;
	content: "";
}
.slideshow .slick-prev,
.slideshow .slick-next {
	z-index: 1;
	padding: 0 0 3px;
	width: 30px;
	height: 30px;
	background: #4b4b4b;
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.slideshow .slick-prev::before,
.slideshow .slick-next::before {
	display: block;
	content: "\e93c";
	font-size: 12px;
	font-family: "tsb";
	-webkit-transform: scale(.6);
	        transform: scale(.6);
}
.slideshow .slick-prev::before {
	-webkit-transform: scale(.6) scale(-1, 1);
	        transform: scale(.6) scale(-1, 1);
}
.slideshow .slick-prev {
	left: -45px;
}
.slideshow .slick-next {
	right: -45px;
}
/* hover */
@media only screen and (min-width: 767px) {
	.slideshow .slick-prev:hover,
	.slideshow .slick-next:hover  {
		opacity: 0.7;
		background: #8d8d8d;
	}
}
@media only screen and (max-width: 767px) {
	.signature {
		margin: 20px auto 40px;
	}
	.slider_box_main {
		display: block;
	}
	.slider_box_main .slick-list {
		margin-right: 0;
		margin-bottom: 10px;
		width: 100%;
	}
	.slider_box_main li:hover {
		opacity: 1!important;
	}
	.slider_box_main figcaption {
		padding: 8px;
	}
	.slider_box .slick-dots {
		margin: 0 -5px;
		width: calc(100% + 10px);
	}
	.slider_box .slick-dots li {
		display: inline-block;
		margin: 0 5px 10px;
		max-width: 92px;
		width: calc((100% - 50px) / 5);
	}
	.slideshow_wrp {
		margin: 0 0 80px;
		padding: 0;
	}
}

/*-----------------------------------------
	FAQ
-----------------------------------------*/
.contact_wrap {
	margin: 90px auto 130px;
	padding: 60px 3% 0;
	border: 1px solid #d3d0cd;
	text-align: center;
}
.contact_wrap p {
	display: inline;
	background: linear-gradient(transparent 65%, #e0f5fc 65%);
	font-weight: bold;
	font-size: 2.2rem;
}
.contact_wrap ul {
	margin: 60px auto -60px;
}
.contact_wrap li a {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 35px 20px 35px 85px;
	max-width: 550px;
	text-align: left;
	white-space: nowrap;
	font-weight: normal;
	font-size: 1.2rem;
	transition: all .4s ease;
}
.contact_wrap li a span {
	display: block;
	padding-bottom: 0;
	font-weight: bold;
	font-size: 2rem;
	transition: all .4s ease;
}
.contact_wrap li a::after {
	position: absolute;
	top: 50%;
	right: 16px;
	display: block;
	content: "\e93c";
	font-size: 1rem;
	font-family: "tsb";
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.contact_wrap li a.cta_line {
	border: 1px solid #00b900;
	background: #00b900;
	color: #fff;
}
.contact_wrap li a.cta_cf {
	border: 1px solid #30a9ee;
	background: #fff;
}
.contact_wrap li a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 16px;
	display: block;
	margin: auto;
	width: 60px;
	height: 60px;
	content: "";
}
.contact_wrap li a.cta_cf::before {
	background: url(/files/common/icon_mail.png) no-repeat center center;
	background-size: 55px 55px;
}
.contact_wrap li a.cta_line::before {
	background: url(/files/common/line_b_icon.png) no-repeat center center;
	background-size: 65px 65px;
}
/* Hover */
@media only screen and (min-width: 767px) {
	.contact_wrap li a::before,
	.contact_wrap li a::after {
		-webkit-transition: opacity .4s ease;
		        transition: opacity .4s ease;
	}
	.contact_wrap li a:hover span {
		letter-spacing: .3rem;
		opacity: .7;
	}
	.contact_wrap li a:hover::before,
	.contact_wrap li a:hover::after {
		opacity: .7;
	}
	.contact_wrap li a.cta_line:hover {
		background: #55ca55;
		color: rgba(255,255,255,.7);
		opacity: 1;
	}
	.contact_wrap li a.cta_cf:hover {
		background: #fafafa;
		color: rgba(34,34,34,.7);
		opacity: 1;
	}
}
@media only screen and (max-width: 767px) {
	.contact_wrap {
		margin: 60px auto 90px;
		padding: 30px 3% 0;
	}
	.contact_wrap p {
		font-size: 1.8rem;
	}
	.contact_wrap ul {
		margin: 30px auto -60px;
	}
	.contact_wrap li a {
		padding: 20px 20px 20px 55px;
	}
	.contact_wrap li:first-child {
		margin: 0 auto 15px;
	}
	.contact_wrap li a::before {
		left: 10px;
		width: 40px;
		height: 40px;
	}
	.contact_wrap li a.cta_cf::before {
		background: url(/files/common/icon_mail.png) no-repeat center center;
		background-size: 40px 40px;
	}
	.contact_wrap li a.cta_line::before {
		background: url(/files/common/line_b_icon.png) no-repeat center center;
		background-size: 55px 55px;
	}
	.contact_wrap li a span {
		font-size: 1.8rem;
	}
}

/*-----------------------------------------
	Guideline
-----------------------------------------*/
.flow_cont_list {
	margin: 0 auto -24px;
}
.flow_cont_list &gt; dl {
	position: relative;
	display: table;
	margin: 0 auto 24px;
	width: 100%;
}
.flow_cont_list  dl a {
	color: #30a9ee;
	text-decoration: underline;
}
.flow_cont_list &gt; dl::before {
	position: absolute;
	top: -24px;
	right: 0;
	left: 0;
	display: block;
	margin: auto;
	width: 60px;
	height: 24px;
	background: #f2f1ed;
	content: "";
}
.flow_cont_list &gt; dl:first-of-type::before,
.flow_cont_list &gt; dl.nonarrow::before {
	display: none;
}
.flow_cont_list &gt; dl &gt; dt {
	display: table-cell;
	padding: 24px 2%;
	width: 340px;
	border: 1px solid #efa94d;
	background: #efa94d;
	color: #fff;
	vertical-align: middle;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
}
.flow_cont_list &gt; dl &gt; dd {
	display: table-cell;
	padding: 24px;
	width: calc(100% - 340px);
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	vertical-align: middle;
	font-size: 1.6rem;
}
.flow_cont_list  div.select {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
.flow_cont_list  div.select &gt; dl {
	position: relative;
	width: 49%;
}
.flow_cont_list  div.select dl::before {
	position: absolute;
	top: -24px;
	right: 0;
	left: 0;
	display: block;
	margin: auto;
	width: 60px;
	height: 24px;
	background: #f2f1ed;
	content: "";
}
.flow_cont_list  div.select &gt; dl &gt; dd::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	display: block;
	margin: auto;
	width: 60px;
	height: 100%;
	background: #f2f1ed;
	content: "";
}
.flow_cont_list  div.select &gt; dl &gt; dt {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	flex-flow: column wrap;
	justify-content: center;
	margin: 0 auto 24px;
	min-height: 100px;
	width: 100%;
	background: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
}
.flow_cont_list  div.select &gt; dl.take &gt; dt a.question {
	display: inline-block;
	margin-top: .5rem;
	color: #30a9ee;
	text-decoration: underline;
	font-weight: normal;
	font-size: 1.4rem;
	line-height: 2rem;
}
a.question::before {
	display: inline-block;
	margin-right: .5rem;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: #30a9ee;
	color: #fff;
	content: "?";
	text-align: center;
	text-indent: 0;
	letter-spacing: 0;
	line-height: 2rem;
}

.flow_cont_list  div.select &gt; dl.nottake &gt; dt {
	border: 4px solid #f53c66;
	color: #f53c66;
}
.flow_cont_list  div.select &gt; dl.take &gt; dt {
	border: 4px solid #30a9ee;
	color: #30a9ee;
}

.flow_cont_list  div.select &gt; dl &gt; dd &gt; dl {
	position: relative;
	display: flex;
	flex-flow: column wrap;
	margin: 0 auto 24px;
	width: 100%;
}
.flow_cont_list  div.select &gt; dl &gt; dd &gt; dl &gt; dt {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 80px;
	width: 100%;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
}
.flow_cont_list  div.select &gt; dl.nottake &gt; dd &gt; dl &gt; dt {
	border: 1px solid #f53c66;
	background: #f53c66;
}
.flow_cont_list  div.select &gt; dl.take &gt; dd &gt; dl &gt; dt {
	border: 1px solid #30a9ee;
	background: #30a9ee;
}
.flow_cont_list  div.select &gt; dl &gt; dd &gt; dl &gt; dd {
	padding: 24px;
	width: 100%;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #fff;
	font-size: 1.6rem;
}
/* type_international */
.flow_cont_list.type_international .select &gt; dl::before {
	content: none;
}
.flow_cont_list.type_international div.select &gt; dl &gt; dd &gt; dl &gt; dt {
	display: block;
	padding: 26px 5%;
}
.flow_cont_list.type_international .event_ttl {
	margin: 0 0 64px;
	padding: 24px 2%;
	font-size: 1.8rem;
	background: #efa94d;
	color: #fff;
	font-weight: bold;
	text-align: center;
}
.flow_cont_list.type_international .inline_block {
	display: inline-block;
}

@media only screen and (max-width: 767px) {
	.flow_cont_list &gt; dl {
		display: block;
		width: 100%;
	}
	.flow_cont_list &gt; dl &gt; dt {
		display: block;
		padding: 24px 2%;
		width: 100%;
		font-size: 1.6rem;
	}
	.flow_cont_list &gt; dl &gt; dd {
		display: block;
		padding: 16px 4%;
		width: 100%;
		border-top: none;
		border-left: 1px solid #ccc;
		font-size: 1.4rem;
	}
	.flow_cont_list  div.select &gt; dl &gt; dt {
		padding: 24px 5%;
		min-height: 125px;
		font-size: 1.6rem;
	}
	.flow_cont_list  div.select &gt; dl &gt; dd &gt; dl &gt; dt {
		padding: 24px 5%;
		font-size: 1.6rem;
	}
	.flow_cont_list  div.select &gt; dl &gt; dd &gt; dl &gt; dd {
		padding: 16px 4%;
		font-size: 1.4rem;
	}
	/* type_international */
	.flow_cont_list.type_international .event_ttl {
		font-size: 1.6rem;
	}
}

/*-----------------------------------------
	ACTIVITIES STUDENT INTERVIEW
-----------------------------------------*/
.student_mv {
	position: relative;
	margin: 0 auto 60px;
	width: 100%;
	text-align: right;
}
.student_mv::before {
	position: absolute;
	top: 100%;
	right: -40px;
	z-index: 3;
	display: block;
	height: 100%;
	color: #222;
	content: "STUDENT INTERVIEW";
	text-align: left;
	white-space: nowrap;
	font-weight: 200;
	font-size: 5rem;
	font-family: "Lato","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	transform: translateY(-105%);

	writing-mode: vertical-rl;
}
.student_mv img {
	position: relative;
	z-index: 1;
	width: calc(100% - 5%);
}
.student_mv figcaption {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: 60px 40px 0 0;
	background: #fff;
	text-align: left;
	font-weight: bold;
	font-size: 3rem;
}
.student_info {
	padding: 0 0 40px;
	width: 100%;
	border-bottom: 1px solid #ccc;
}
.student_info .label_cloud {
	margin: 0 auto 32px;
}
.student_info .label_cloud span {
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 7px 10px;
	background: #222;
	color: #fff;
	font-weight: bold;
	font-size: 1.4rem;;
}
.student_info .affiliation {
	margin: 0 auto 8px;
	font-weight: bold;
	font-size: 1.6rem;
}
.student_info .data {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.student_info .data .name {
	margin-top: 8px;
	font-weight: bold;
	font-size: 2rem;
	line-height: 2rem;
}
.student_info .data .name &gt; span {
	padding-left: 8px;
	font-size: 1.4rem;
}
.student_info .data .name .biography {
	padding-left: 16px;
	font-weight: normal;
	font-size: 1.3rem;
}
.student_info .tag_cloud {
	margin-top: 8px;
	text-align: right;
}
.student_info .tag_cloud span {
	display: inline-block;
	margin: 0 0 0 16px;
	color: #909090;
	font-size: 1.2rem;
}
.student_h3{
display: block;
    font-size: 2.0rem;
    color: #333333;
    padding: 10px 22px;
    margin: 0 0 45px;
    background: #F7F5F6;
    border-left: 5px solid #00A0E9;
    border-bottom: none;
}
/*2カラムの時*/
.student_2column{
display: flex;
}
.student_2column_parts{
width: 50%;
padding: 0 20px 20px;
}
@media only screen and (max-width: 768px) {
.student_2column{
display: block;
}
.student_2column_parts{
width: 100%;
padding: 0 0 20px;
}
}
/*ボタンのデザイン*/
.student_btn-wrap {
    padding: 30px 10px;
    text-align: center;
}
.student_department-btn {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 1rem 4rem;
}
a.student_department-btn.btn-radius {
  border-radius: 100vh;
}
/*学科ごとの色*/
a.department-pet-btn{
     color: #fff;
    background-color: #f7ac21;
}
a.department-animal-btn{
    color: #fff;
    background-color: #81c0e9;
}
a.department-sports-btn{
    color: #fff;
    background-color: #2b80c5;
}
a.department-business-btn{
    color: #fff;
    background-color: #e85736;
}
a.department-bizdesign-btn{
    color: #fff;
    background-color: #9cacb1;
}
a.department-ai-btn{
    color: #868886;
    background-color: #fff23e;
}
a.department-it-btn{
    color: #fff;
    background-color: #00afa7;
}
a.department-office-btn{
    color: #fff;
    background-color: #a1d4ac;
}
a.department-fashion-btn{
    color: #fff;
    background-color: #55469a;
}
a.department-flower-btn{
    color: #fff;
    background-color: #f4a6a5;
}


@media only screen and (max-width: 767px) {
	.student_mv {
		margin: 0 auto 24px;
		min-height: 320px;
	}
	.student_mv::before {
		right: -20px;
		height: 100%;
		font-size: 3rem;
		transform: translateY(-105%);
	}
	.student_mv figcaption {
		position: relative;
		margin: -60px 0 0;
		padding: 32px 16px 0 0;
		width: 95%;
		font-size: 2rem;
	}
	.student_info {
		padding: 0 0 20px;
	}
	.student_info .label_cloud {
		margin: 0 auto 16px;
	}
	.student_info .data .name .biography {
		display: block;
		padding: 8px 0 0;
		width: 100%;
	}
	.student_info .tag_cloud {
		display: block;
		padding: 8px 0 0;
		width: 100%;
	}
}
/*-----------------------------------------
	＃TSB WORLD
-----------------------------------------*/
.intro_like {
	position: relative;
	margin: 100px 0 0;
	width: 100vw;
	height: 500px;
	background: url(/tsb-world/files/bg_likeandwork.jpg) no-repeat top 115px left;
}
.intro_like .cont_outer::before {
	position: absolute;
	top: 20px;
	left: 4%;
	z-index: 2;
	display: block;
	margin: auto;
	max-width: 640px;
	width: 46%;
	height: 125px;
	background: url(/tsb-world/files/ttl_likeandwork.png) no-repeat center left;
	background-size: 100% auto;
	content: "";
}
.intro_like .cont_outer figure {
	position: absolute;
	top: 0;
	right: 4%;
	max-width: 420px;
	width: 46%;
}
.intro_like .cont_outer figure img {
	width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
	.intro_like {
		margin: 60px 0;
		height: 450px;
		background: url(/tsb-world/files/bg_likeandwork.jpg) no-repeat top 60px center;
		background-size: auto 250px;
	}
	.intro_like .cont_outer::before {
		top: 0;
		width: 90%;
	}
	.intro_like .cont_outer figure {
		right: 4%;
		padding: 300px 0 0;
		width: 80%;
	}
}
.zoom_num_list dl dt {
	position: relative;
	overflow: hidden;
	padding: 25px 1%;
	min-width: 220px;
	min-height: 165px;
	background: #f8f8f8;
	text-align: center;
}
.zoom_num_list dl dt div {
	position: relative;
	z-index: 2;
}
.zoom_num_list dl dt div.ttl {
	font-weight: bold;
	font-size: 2rem;
}
.zoom_num_list dl dt div.num {
	padding: 30px 0 0;
	color: #30aaee;
	font-weight: 900;
	font-style: italic;
	font-size: 4.8rem;
	line-height: 1.4rem;
}
.zoom_num_list dl dt div.num span {
	padding-left: 5px;
	font-weight: normal;
	font-style: normal;
	font-size: 1.8rem;
}
.zoom_num_list dl dt div.num span span {
	padding: 5px 0 0 0;
	font-size: 1.2rem;
}
.zoom_num_list dl dt figure {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -30px;
	z-index: 1;
	margin: auto;
	width: 130px;
	height: 132px;
	opacity: .3;
}
.zoom_num_list dl dt figure img {
	width: 100%;
}
.zoom_num_list dl dd {
	padding: 24px 0;
}
.zoom_num_list dl dd p {
	margin-bottom: 1rem;
	font-size: 1.4rem;
	line-height: 2.6rem;
}
.zoom_num_list dl dd span {
	font-size: 1.2rem;
	line-height: 1.8rem;
}
/* slider */
.zoom_slider_set {
	position: relative;
	visibility: hidden;
	width: 100%;
}
/* slider dot */
.zoom_slider_set .slider_zoom .slick-dots {
	position: absolute;
	top: -30px;
	right: 0;
	bottom: auto;
	left: 0;
	display: block;
	overflow: hidden;
	margin: 0 auto;
	padding: 0 1%;
	max-width: calc(1366px + 8%);
	width: 100%;
	height: 90px;
	list-style: none;
	text-align: right;
}
.zoom_slider_set .slider_zoom .slick-dots li {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
	width: 85px;
	height: 80px;
	cursor: pointer;
	-webkit-transition: all .2s ease-out;
	     -o-transition: all .2s ease-out;
	        transition: all .2s ease-out;
}
.zoom_slider_set .slider_zoom .slick-dots figure {
	position: relative;
	padding: 0 0 1.8rem;
	text-align: center;
}
.zoom_slider_set .slider_zoom .slick-dots figure img {
	margin: 0 auto 5px;
	width: 60px;
	border-radius: 50%;
	-webkit-transition: all .2s ease-out;
	     -o-transition: all .2s ease-out;
	        transition: all .2s ease-out;
}
.zoom_slider_set .slider_zoom_thum .thum.slick-current img,
.zoom_slider_set .slider_zoom .slick-dots li.slick-active  img {
	border: 4px solid #222;
}
.zoom_slider_set .slider_zoom .slick-dots figcaption {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	margin: auto;
	color: #fff;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.6rem;
}
/* sliderbody */
.zoom_slider_set .slider_zoom .inner {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	padding: 0;
	max-width: calc(1366px + 8%);
	width: 100%;
}
.zoom_slider_set .slider_zoom .inner figure {
	position: relative;
	width: 530px;
	height: 570px;
}
.zoom_slider_set .slider_zoom .inner figure img {
	position: absolute;
	bottom: 0;
	width: 100%;
}
.zoom_slider_set .slider_zoom .inner figcaption {
	position: absolute;
	bottom: 10px;
	left: 8%;
	padding: 16px;
	background: #fff;
	font-weight: bold;
	font-size: 1.4rem;
}
.zoom_slider_set .slider_zoom .inner figcaption span {
	display: block;
	margin: 8px 0 0;
	font-size: 1.8rem;
}
.zoom_slider_set .slider_zoom .inner .article {
	margin: 100px 1% 0;
	padding: 32px 24px 0;
	width: 60%;
	border-radius: 10px 10px 0 0;
	background: #fff;
}
.zoom_slider_set .slider_zoom .inner .article {
	position: relative;
	top: -20px;
	opacity: 0;
}
.zoom_slider_set .slider_zoom .inner .article.fade {
	top: 0;
	opacity: 1;
	-webkit-transition: all .5s ease-out;
	     -o-transition: all .5s ease-out;
	        transition: all .5s ease-out;
}
.zoom_slider_set .slider_zoom .inner .article dl dt {
	margin: 0 auto 24px;
}
.zoom_slider_set .slider_zoom .inner .article dl dt span {
	background: linear-gradient(transparent 65%, #fbff9f 65%);
	font-weight: bold;
	font-size: 1.8rem;
}
.zoom_slider_set .slider_zoom .inner .article dl dd {
	margin: 0 auto 32px;
	font-size: 1.4rem;
	line-height: 2.6rem;
}
.zoom_slider_set .slider_zoom .inner::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 570px;
	content: "";
}
.zoom_slider_set .slider_zoom .comming::before {
	background: #aaa;
}
.zoom_slider_set .nav_box {
	position: absolute;
	top: 610px;
	right: 0;
	left: 0;
	z-index: 3;
	margin: auto;
	padding: 0 4%;
	max-width: calc(1366px + 8%);
	width: 100%;
	height: 30px;
	text-align: left;
	pointer-events: none;
}
.zoom_slider_set .nav_box .prev::before,
.zoom_slider_set .nav_box .next::before {
	display: block;
	color: #fff;
	content: "\e93c";
	font-size: 12px;
	font-family: "tsb";
	-webkit-transform: scale(.6);
	        transform: scale(.6);
}
.zoom_slider_set .nav_box .prev::before {
	-webkit-transform: scale(.6) scale(-1, 1);
	        transform: scale(.6) scale(-1, 1);
}
.zoom_slider_set .nav_box .prev,
.zoom_slider_set .nav_box .next {
	z-index: 1;
	display: inline-block;
	margin-right: 10px;
	padding: 0 0 3px;
	width: 30px;
	height: 30px;
	outline: none;
	border: none;
	background: #4b4b4b;
	color: transparent;
	font-size: 0;
	line-height: 0;
	cursor: pointer;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.zoom_slider_set .slider_zoom_thum {
	display: none !important;
	visibility: hidden;
}
/* hover */
@media only screen and (min-width: 767px) {
	.zoom_slider_set .slider_zoom .slick-dots li:hover figure img {
		-webkit-transform: translateY(5px);
		-ms-transform: translateY(5px);
		transform: translateY(5px);
	}

	.zoom_slider_set .nav_box .prev:hover,
	.zoom_slider_set .nav_box .next:hover {
		opacity: 0.7;
		background: #8d8d8d;
	}
}
@media only screen and (max-width: 767px) {
	.zoom_slider_set {
		margin: 60px auto 0;
	}
	.zoom_slider_set .slider_zoom .inner {
		position: relative;
		display: block;
		padding: 0;
		width: 90%;
	}
	.zoom_slider_set .slider_zoom .inner figure {
		margin: auto;
		padding: 50px 0 0;
		max-width: 480px;
		width: 98%;
		height: auto;
	}
	.zoom_slider_set .slider_zoom .inner figure img {
		position: relative;
		right: 0;
		left: 0;
		margin: auto;
	}
	.zoom_slider_set .slider_zoom .inner figcaption {
		bottom: 10px;
		left: 0;
	}
	.zoom_slider_set .slider_zoom .inner .article {
		margin: 0 auto -20px;
		width: 100%;
	}
	.zoom_slider_set .nav_box {
		top: 250px;
		margin: auto;
		padding: 0;
	}
	.zoom_slider_set .nav_box .prev,
	.zoom_slider_set .nav_box .next {
		position: absolute;
		top: 0;
		margin: 0;
	}
	.zoom_slider_set .nav_box .prev {
		left: 0;
	}
	.zoom_slider_set .nav_box .next {
		right: 0;
	}
	.zoom_slider_set .slider_zoom .slick-dots {
		display: none !important;
	}
	.zoom_slider_set .slider_zoom_thum {
		display: block !important;
		visibility: visible;
	}
	.zoom_slider_set .slider_zoom_thum {
		position: absolute;
		top: -30px;
		right: 0;
		left: 0;
		overflow: hidden;
		margin: auto;
		min-width: 500px;
		max-width: 550px;
		width: 100%;
		height: 90px;
	}
	.zoom_slider_set .slider_zoom_thum .thum {
		position: relative;
		padding: 0 0 1.8rem;
		cursor: pointer;
	}
	.zoom_slider_set .slider_zoom_thum .thum figcaption {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		margin: auto;
		color: #fff;
		text-align: center;
		font-size: 1.2rem;
		line-height: 1.6rem;
	}
	.zoom_slider_set .slider_zoom_thum .thum img {
		margin: 0 auto 5px;
		width: 60px;
		border-radius: 50%;
		-webkit-transition: all .2s ease-out;
		     -o-transition: all .2s ease-out;
		        transition: all .2s ease-out;
	}
}
.inversion {
	padding: 80px 0;
}
.inversion::before {
	position: absolute;
	top: 0;
	right: -50vw;
	left: -50vw;
	z-index: 1;
	display: block;
	width: 200vw;
	height: 100%;
	background: #fff;
	content: "";
}
.inversion.zoom_point.point04::before {
	height: calc(100% + 80px);
}
.inversion &gt; * {
	position: relative;
	z-index: 2;
}
.zoom.head_wrap {
	position: relative;
	z-index: 4;
}
.zoom_point {
	position: relative;
	z-index: 3;
}
.zoom_point &gt; .text_area {
	position: relative;
	z-index: 2;
}
.zoom_point &gt; figure {
	position: absolute;
	right: 0;
	z-index: 1;
}
.text_area .copy {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 3rem;
}
.zoom_point.point01 {
	padding: 0;
}
.zoom_point.point04 {
	padding: 80px 0 0;
}
.zoom_point.point01 &gt; figure {
	top: -250px;
}
.zoom_point.point02 &gt; figure {
	top: -90px;
}
.zoom_point.point03 &gt; figure {
	top: -230px;
}
.zoom_point.point04 &gt; figure {
	top: -100px;
}
@media only screen and (max-width: 767px) {
	.zoom_point &gt; figure {
		position: relative;
		width: 80%;
	}
	.zoom_point &gt; figure img {
		width: 100%;
	}
	.zoom_point.point01 &gt; figure {
		top: 0;
		margin: -50px 0 -100px auto;
	}
	.zoom_point.point02 &gt; figure {
		top: 0;
		margin: -100px 0 -100px auto;
	}
	.zoom_point.point03 &gt; figure {
		top: 0;
		margin: -130px 0 -100px auto;
	}
	.zoom_point.point04 &gt; figure {
		top: 0;
		margin: -100px 0 -100px auto;
	}
}
.campus_life_list {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.campus_life_list &gt; li {
	width: 48%;
}
.campus_life_list &gt; li:nth-child(even) {
	padding: 80px 0 0;
}
.campus_life_list &gt; li &gt; figure {
	position: relative;
}
.campus_life_list &gt; li &gt; figure img {
	display: block;
	padding: 0;
	max-width: 100%;
}
.campus_life_list &gt; li figure figcaption {
	position: absolute;
	bottom: 0;
	padding: 0 25px 0 16px;
	height: 50px;
	background: #222;
	color: #fff;
	text-align: center;
	font-size: 2rem;
	line-height: 50px;
}
.campus_life_list &gt; li figure figcaption span {
	padding-left: .5rem;
	font-size: 1.5rem;
}
.campus_life_list &gt; li figure figcaption::after {
	position: absolute;
	top: 0;
	right: -25px;
	z-index: 1;
	width: 0;
	height: 0;
	border-width: 25px 25px 25px 25px;
	border-style: solid;
	border-color: #222 transparent #222 transparent;
	content: "";
}
.campus_life_list &gt; li p {
	margin: 1rem 0 0;
	padding: 0 0 0 16px;
	font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
	.campus_life_list &gt; li {
		margin: 0 auto 60px;
		width: 100%;
	}
	.campus_life_list &gt; li:nth-child(even) {
		padding: 0;
	}
	.campus_life_list &gt; li:last-child {
		margin: 0 auto;
	}
	.campus_life_list &gt; li p {
		margin: 1rem 0 0;
		padding: 0 16px;
	}
	.campus_life_list &gt; li figure figcaption {
		height: 40px;
		font-size: 1.7rem;
		line-height: 40px;
	}
	.campus_life_list &gt; li figure figcaption span {
		font-size: 1.4rem;
	}
	.campus_life_list &gt; li figure figcaption::after {
		right: -20px;
		border-width: 20px 20px 20px 20px;
	}
}
.bg_pattern.youtube {
	position: relative;
	margin: 0;
	padding-top: 80px;
	padding-bottom: 0;
}
.bg_pattern.youtube::before,
.bg_pattern.youtube::after {
	top: auto;
	bottom: 0;
	height: 150px;
}
.bg_pattern.youtube + .bg_pattern {
	margin: 0;
}
.youtube .video_wrap {
	display: flex;
	flex-flow: row-reverse nowrap;
	justify-content: space-between;
	margin: -125px auto 0;
}
.youtube .video_wrap .video_area {
	padding-left: 16px;
	width: 60%;
}
.youtube .video_wrap .video_area .video_inner {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
.youtube .video_wrap .video_area .video_inner iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
.youtube .video_wrap .btn_area {
	padding: 130px 0 0;
	width: 40%;
}
.youtube .video_wrap .btn_area figure {
	padding: 0 16px 0 0;
	text-align: right;
}
@media only screen and (max-width: 767px) {
	.youtube .video_wrap {
		display: flex;
		flex-flow: column wrap;
		justify-content: space-between;
		margin: 0 auto 0;
	}
	.youtube .video_wrap .video_area {
		margin: 0 auto 60px;
		padding: 0;
		width: 100%;
	}
	.youtube .video_wrap .btn_area {
		margin: auto;
		padding: 0;
		width: 100%;
	}
	.youtube .video_wrap .btn_area figure img {
		max-width: 400px;
		width: 100%;
	}
}

/* ------------------------------
	international
------------------------------ */
.pg_international .pg_ttl .inner .copy {
	line-height: 2.8;
}
.pg_international .thumb_cont_list &gt; li p {
    line-height: 2.2;
}
.pg_international .text_area p {
	line-height: 3.4rem;
}
.pg_international .content_list &gt; li &gt; ul li {
	width: 50%;
}
.pg_international .content_list &gt; li &gt; ul a,
.pg_international .content_list_noparent &gt; li &gt; ul a {
	align-items: flex-end;
}
.pg_international .content_list &gt; li &gt; ul a::before,
.pg_international .content_list_noparent &gt; li &gt; ul a::before {
	top: auto;
	bottom: 22px;
}

@media only screen and (max-width: 767px) {
	.pg_international .content_list &gt; li &gt; ul li {
		width: 100%;
	}
}

/* ------------------------------
	360viewer
------------------------------ */
.viewer360 .screenWrap {
	margin: 0 auto;
	width: 100%;
	height: 550px;
	position: relative;
	z-index: 1;
}
.viewer360 #screen {
	width: 100%;
	height: 550px;
	position: relative;
}
.viewer360 .screenWrap .prev::before,
.viewer360 .screenWrap .next::before {
	display: block;
	color: #fff;
	content: "\e93c";
	font-size: 12px;
	font-family: "tsb";
	line-height: 30px;
	-webkit-transform: scale(.6);
	        transform: scale(.6);
}
.viewer360 .screenWrap .prev::before {
	-webkit-transform: scale(.6) scale(-1, 1);
	        transform: scale(.6) scale(-1, 1);
}
.viewer360 .screenWrap .prev {
	left: -30px;
}
.viewer360 .screenWrap .next {
	right: -30px;
}
.viewer360 .screenWrap .next,
.viewer360 .screenWrap .prev {
	display: block;
	padding: 0 0 3px;
	width: 30px;
	height: 30px;
	background: #4b4b4b;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 2;
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.viewer360 nav {
	margin: 32px auto;
}
.viewer360 nav ul {
	margin: 0 -12px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}
.viewer360 nav ul li {
	display: block;
	margin: 0 12px 12px;
	position: relative;
	width: calc((100% - 360px) / 10);
}
.viewer360 nav ul li::after {
	content:"";
	display: block;
	padding-top: 100%;
}
.viewer360 nav ul li a {
	width: 100%;
	height: 100%;
	border-radius: 50%;
}
.viewer360 nav a {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.viewer360 nav a.active {
	opacity: 1;
	border:	4px solid #30A2F0;
}
.viewer360 nav a.active::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #fff;
	opacity: 0.6;
	display: block;
	border-radius: 50%;
}
.viewer360 nav a.view1 {background-image: url(/virtual/files/view1.jpg);}
.viewer360 nav a.view2 {background-image: url(/virtual/files/view2.jpg);}
.viewer360 nav a.view3 {background-image: url(/virtual/files/view3.jpg);}
.viewer360 nav a.view4 {background-image: url(/virtual/files/view4.jpg);}
.viewer360 nav a.view5 {background-image: url(/virtual/files/view5.jpg);}
.viewer360 nav a.view6 {background-image: url(/virtual/files/view6.jpg);}
.viewer360 nav a.view7 {background-image: url(/virtual/files/view7.jpg);}
.viewer360 nav a.view8 {background-image: url(/virtual/files/view8.jpg);}
.viewer360 nav a.view9 {background-image: url(/virtual/files/view9.jpg);}
.viewer360 nav a.view10 {background-image: url(/virtual/files/view10.jpg);}

.viewer360 .viewCaption p.name {
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 2;
}
.viewer360 .viewCaption p.description {
	font-size: 1.4rem;
	line-height: 2;
}
.viewer360 .pnlm-controls-container {
	top: auto;
	right: 32px;
	bottom: 40px;
	left: auto;
}
/* hover */
@media only screen and (min-width: 767px) {
	.viewer360 .screenWrap .prev:hover,
	.viewer360 .screenWrap .next:hover {
		opacity: 0.7;
		background: #8d8d8d;
	}
	.viewer360 nav a:hover {
		opacity: 0.7;
	}
}
@media only screen and (max-width: 767px) {
	.viewer360 #screen {
		width: 100%;
		height: 240px;
	}
	.viewer360 .screenWrap {
		width: 100%;
		height: 240px;
		position: relative;
	}
	.viewer360 .screenWrap .prev {
		left: -8px;
	}
	.viewer360 .screenWrap .next {
		right: -8px;
	}
	.viewer360 nav {
		margin: 0 auto;
	}
	.viewer360 nav ul {
		margin: 0 -3px;
	}
	.viewer360 nav ul li {
		display: block;
		margin: 0 3px 16px;
		width: calc((100% - 36px) / 5);
		max-width: 60px;
	}
	.viewer360 .viewCaption {
		margin: 20px auto 30px;
	}
	.viewer360 .pnlm-controls-container {
		right: 7px;
		bottom: 9px;
	}
}

/*-----------------------------------------
	coming soon
-----------------------------------------*/
.coming_soon {
	margin: 120px auto;
	text-align: center;
	font-weight: 700;
	font-size: 5rem;
	font-family: "Lato", sans-serif;
}

@media only screen and (max-width: 767px) {
	.coming_soon {
		margin: 80px auto;
		font-size: 4rem;
	}
}

/*-----------------------------------------
	MT A-Form style
-----------------------------------------*/
/* aform input */
.aform-header {
	display: none;
}
.contact_form_body {
	position: relative;
	padding: 80px 0;
	width: 100%;
	border: 1px #d3d0cd solid;
	background: #fff;
}
.contact_form_body .aform dl {
	display: flex;
	align-content: center;
	align-items: center;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 0 auto 40px;
	padding: 0 0 40px;
	max-width: 800px;
	width: 90%;
	border-bottom: 1px solid #f2f1ed;
	line-height: 1.5;
}
.contact_form_body dt {
	width: 300px;
	text-align: left;
}
.contact_form_body .aform dd {
	margin: 0;
	width: 500px;
}
.contact_form_body label {
	display: block;
	letter-spacing: 1.26px;
	font-weight: bold;
	font-size: 1.4rem;
}
.contact_form_body dt .aform-label {
	position: relative;
	padding: 0 0 0 55px;
	font-weight: bold;
}
.contact_form_body .aform-required {
	position: absolute;
	top: -2px;
	left: 0;
	display: inline;
	margin: 0;
	margin-right: 10px;
	padding: 4px 8px;
	border-radius: 0;
	background-color: #e85b5b;
	color: #fff;
	vertical-align: middle;
	letter-spacing: 1.17px;
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1.5;
}
.contact_form_body .aform .aform-text,
.contact_form_body .aform .aform-tel,
.contact_form_body .aform .aform-email,
.contact_form_body .aform .aform-textarea,
.contact_form_body .aform .aform-select,
.contact_form_body .aform .aform-zipcode,
.contact_form_body .aform .aform-prefecture {
	display: block;
	padding: 8px 22px;
	width: 100%;
	border: 1px solid #e0e0e0;
	border-radius: 5px;
	background-color: #f7f7f7;
	letter-spacing: 1.35px;
	font-size: 1.5rem;
	line-height: 2;

	-webkit-appearance: none;
}
.contact_form_body .aform .aform-text:focus,
.contact_form_body .aform .aform-tel:focus,
.contact_form_body .aform .aform-email:focus,
.contact_form_body .aform .aform-textarea:focus,
.contact_form_body .aform .aform-select:focus,
.contact_form_body .aform .aform-zipcode:focus,
.contact_form_body .aform .aform-prefecture:focus {
	border: 1px solid #555;
}
.contact_form_body .aform-radio-ul li {
	display: inline-block;
	padding-right: 3rem;
}
.contact_form_body input.aform-checkbox,
.contact_form_body input.aform-radio {
	display: none;
}
.contact_form_body input.aform-checkbox + label,
.contact_form_body input.aform-radio + label {
	position: relative;
	display: block;
	padding: 0 0 0 30px;
	font-weight: bold;
}
.contact_form_body input.aform-checkbox + label::before {
	position: absolute;
	top: 3px;
	left: 0;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #e5e5e5;
	border-radius: 2px;
	content: "";
	transition: all .3s ease-out;
}
.contact_form_body input.aform-checkbox + label::after {
	position: absolute;
	top: 6px;
	left: 6px;
	display: block;
	width: 6px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	transform: rotate(40deg);
}
.contact_form_body input.aform-radio + label::before {
	position: absolute;
	top: 3px;
	left: 0;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #e5e5e5;
	border-radius: 50%;
	content: "";
	transition: all .3s ease-out;
}
.contact_form_body input.aform-radio + label::after {
	position: absolute;
	top: 7px;
	left: 4px;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #fff;
	content: "";
	transition: all .3s ease-out;
}
.contact_form_body input.aform-checkbox:checked + label:before,
.contact_form_body input.aform-radio:checked + label:before {
	border: 1px solid #30a2f0;
	background: #30a2f0;
}
.contact_form_body input.aform-checkbox:checked + label,
.contact_form_body input.aform-radio:checked + label {
	color: #30a2f0;
}
.dl_form-agree {
	text-align: center;
	letter-spacing: .8px;
	font-size: 1.6rem;
	line-height: 1;
}
.dl_form-agree dt {
	display: none;
}
.contact_form_body .aform dl.dl_form-agree {
	margin: 0 auto;
	padding: 0;
	border: none;
}
.contact_form_body dl.dl_form-agree dd {
	padding: 20px 0 0;
	width: 100%;
}
.contact_form_body dl.dl_form-agree .form-agree {
	margin: 0 0 40px;
	color: #222;
	font-weight: 400;
}
.contact_form_body dl.dl_form-agree .form-agree.aform-input-example {
	margin: 0 0 60px;
}
.contact_form_body dl.dl_form-agree .form-agree a {
	color: #30A2F0;
	text-decoration: underline;
	font-weight: 700;
}
.contact_form_body dl.dl_form-agree li {
	display: inline-block;
	margin: 0;
}
.contact_form_body dl.dl_form-agree li input {
	display: none;
}
.contact_form_body dl.dl_form-agree label {
	position: relative;
	margin: 0;
	padding: 0 0 0 32px;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
	cursor: pointer;
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.contact_form_body dl.dl_form-agree label:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #ccc;
	border-radius: 2px;
	content: "";
	-webkit-transition: all .3s ease-out;
	     -o-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.contact_form_body dl.dl_form-agree  input:checked + label:before {
	border: 1px solid #30A2F0;
	background: #30A2F0;
}
.contact_form_body dl.dl_form-agree  input:checked + label:after {
	position: absolute;
	top: 2px;
	left: 6px;
	display: block;
	width: 6px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	-webkit-transform: rotate(40deg);
	    -ms-transform: rotate(40deg);
	        transform: rotate(40deg);
}
.contact_form_body .aform-button-area {
	margin: 0;
	padding: 0;
	background: #fff;
	text-align: center;
}
.contact_form_body #aform_btn_confirm_4,
.contact_form_body #aform_btn_confirm_5,
.contact_form_cfm .contact_form_body #aform_btn_submit {
	position: relative;
	display: inline-block;
	margin: 0 10px 10px;
	padding: 24px;
	min-width: 340px;
	width: auto;
	outline: none;
	background: linear-gradient(-45deg, #33e5e5,#30a2f0);
	color: #fff;
	text-align: center;
	letter-spacing: 0;
	font-weight: 700;
	font-size: 1.7rem;
	font-family: "Lato", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	line-height: 1.7;
	cursor: pointer;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
}
.contact_form_body #aform_btn_confirm_4:disabled,
.contact_form_body #aform_btn_confirm_5:disabled {
	opacity: .3;
	cursor: default;
}
.contact_form_body #aform_btn_confirm_4:not(:disabled),
.contact_form_body #aform_btn_confirm_5:not(:disabled) {
	opacity: 1;
	cursor: pointer;
}
.contact_form_body .contact_form_note {
	margin: 60px auto 0;
	padding: 32px 24px;
	max-width: 800px;
	width: 90%;
	background: #f7f7f7;
	line-height: 2.2;
}
.contact_form_body .contact_form_note span {
	display: block;
	margin: 0 auto 1rem;
	text-align: left;
	font-weight: bold;
	font-size: 1.8rem;
}
.aform-input-example {
	margin-bottom: .3em;
	color: #595959;
	font-weight: normal;
	font-size: 90%;
}
.aform .aform-content .aform-demo {
	margin: 2em auto 0;
	padding: 5px 10px;
	width: 60%;
	border: 1px solid #ee7ba0;
	background: #fdecf1;
	text-align: center;
}
.aform-content .aform-demo a {
	margin: 0 5px;
	color: #903;
	font-weight: bold;
}

/* aform error */
.contact_form_body .aform-text.error,
.contact_form_body .aform-tel.error,
.contact_form_body .aform-email.error,
.contact_form_body .aform-textarea.error,
.contact_form_body .aform-select.error,
.contact_form_body .aform-zipcode.error,
.contact_form_body .aform-prefecture.error {
	background-color: #fffce6;
}
.contact_form .validation-advice {
	display: block;
	margin-top: 16px;
	color: #e85b5b;
	font-size: 1.4rem;
}
.contact_form_body .error_message + .error_message {
	margin-top: 10px;
}
.contact_form_body dl.dl_form-agree label.error:before,
.contact_form_body dl.dl_form-agree label.error:after {
	content: none;
}

/* aform confirm */
.contact_form_cfm .contact_form_body dt .aform-label {
	padding: 0;
}
.contact_form_cfm .contact_form_body .aform-required {
	display: none;
}
.contact_form_cfm .contact_form_body .aform-label {
	display: block;
	margin-bottom: 16px;
	letter-spacing: 1.26px;
	font-size: 1.4rem;
}
.contact_form_cfm .contact_form_body .aform-confirm.form-agree,
.contact_form_cfm .contact_form_body #aform_confirm_msg {
	display: none;
}
.contact_form_cfm .contact_form_body .aform-button-area {
	display: flex;
	align-items: center;
	flex-direction: column;
}
.contact_form_cfm .contact_form_body #aform_btn_back {
	order: 2;
	margin: 28px 0 12px;
	padding: 24px;
	min-width: 340px;
	background: #eaeaea;
	letter-spacing: 0;
	font-weight: 700;
	font-weight: 700;
	font-size: 1.4rem;
	font-size: 1.7rem;
	font-family: "Lato", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	line-height: 1.7;
	cursor: pointer;
	-webkit-transition: all .3s ease-out;
	        transition: all .3s ease-out;
	-webkit-appearance: none;
}
.contact_form_cfm .contact_form_body #aform_btn_submit {
	order: 1;
	margin: 20px 0 0;
}

/* aform system error */
.contact_form .contact_form_body .aform-error-list {
	flex-direction: column;
}
.contact_form .contact_form_body .aform-error-list dt {
	margin: 0 0 30px;
	padding: 0;
	color: #dd0101;
}
.contact_form .contact_form_body .aform-error-list dd::marker {
	content: '';
}
.contact_form .contact_form_body .aform-error-list + div {
	text-align: center;
}

/* PC Hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .aform-button-area #aform_btn_confirm_4:hover,
	body:not(.tab_view) .aform-button-area #aform_btn_confirm_5:hover,
	body:not(.tab_view) .aform-button-area #aform_btn_submit:hover {
		background: linear-gradient(-45deg, #33e5e5,#30a2f0);
		color: #fff;
		opacity: .7;
	}
	body:not(.tab_view) .contact_form_body #aform_btn_confirm_4:disabled:hover,
	body:not(.tab_view) .contact_form_body #aform_btn_confirm_5:disabled:hover {
		background: linear-gradient(-45deg, #33e5e5,#30a2f0);
		color: #fff;
		opacity: .3;
	}
	body:not(.tab_view) .contact_form_cfm .contact_form_body #aform_btn_back:hover {
		opacity: .5;
	}
}

@media only screen and (max-width: 768px) {
	.contact_form_body {
		padding: 40px 0;
	}
	.contact_form_body .aform dl {
		flex-flow: row wrap;
		margin: 0 auto 20px;
		padding: 0 0 20px;
	}
	.contact_form_body dt {
		padding: 0 0 8px;
		width: 100%;
	}
	.contact_form_body .aform dd {
		width: 100%;
	}
	.contact_form_body label,
	.contact_form_cfm .contact_form_body .aform-label {
		margin-bottom: 8px;
	}
	.contact_form_body .aform-text {
		padding: 8px 15px;
		font-size: 1.6rem;
	}
	.contact_form_body dl.dl_form-agree label {
		font-size: 1.4rem;
	}
	.contact_form_body dl.dl_form-agree .form-agree {
		margin: 0 0 20px;
	}
	.contact_form_body dl.dl_form-agree .form-agree.aform-input-example {
		margin: 0 0 30px;
	}
	.contact_form_body #aform_btn_confirm_4,
	.contact_form_cfm .contact_form_body #aform_btn_submit,
	.contact_form_cfm .contact_form_body #aform_btn_back {
		min-width: 280px;
	}
}
/*-----------------------------------------
	20210806 center 追加
-----------------------------------------*/
#special .info_area a:hover {
	opacity: 0.3;
}

/*-----------------------------------------
	course
-----------------------------------------*/
.course_field {
	position: relative;
}
.course_field ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between ;
}
.course_field ul li {
	position: relative;
	overflow: hidden;
	flex-basis: auto;
	margin-bottom: 16px;
width: 19%;
}
.course_field ul li img {
	width: 100%;
	transition: all .5s ease;
}
.course_field ul li figure {
	position: relative;
}
.course_field ul li figcaption {
	position: absolute;
	bottom: 16px;
	padding: 8px;
	background-color: #222;
	color: #fff;
	font-size: 1.6rem;
}
li figcaption span {
	display: block;
	padding-top: 2px;
	font-size: 1rem;
}
.btn.title_right {
	position: absolute;
	top: 40px;
	right: 0;
	width: 186px;
}
.btn.title_right:after {
	top: 15px;
}
@media (max-width:760px) {
   .course_field {
       flex-wrap: wrap;
   }

   .course_field ul li {
       width: 50%;
   }
}</pre></body></html>