@charset "utf-8";

/* page-title
--------------------------------------------*/
.page-title {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.page-title::before {
	content: '';
	display: block;
}
.page-title-hn {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	text-align: center;
	margin: 0 auto;
}
.page-title-hn span {
	display: block;
	margin-bottom: .5em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.page-title::before {
		padding-top: 53.333333333%;
	}
	.page-title-hn {
		width: 94%;
		font-size: 2.2rem;
	}
	.page-title-hn span {
		font-size: 1.8rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.page-title::before {
		padding-top: 25%;
	}
	.page-title-hn {
		width: 96%;
		font-size: 5rem;
	}
	.page-title-hn span {
		font-size: 3.6rem;
	}
}

/* TB */
@media screen and (min-width:769px) and (max-width:1200px) {
	.page-title-hn {
		font-size: 3rem;
	}
	.page-title-hn span {
		font-size: 2rem;
	}
}


/* パンくずリスト
--------------------------------------------*/
.breadcrumb {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(255,255,255,.6);
}
.breadcrumb ul {
	display: flex;
	width: 100%;
}
.breadcrumb ul li {
	position: relative;
}
.breadcrumb ul li a,
.breadcrumb ul li span {
	position: relative;
	display: block;
	padding: .5em 1em .5em 1.4em;
}
.breadcrumb ul li span {
	padding-left: 1.8em;
}
.breadcrumb ul li:first-child a {
	color: #fff;
	background-color: #181777;
	z-index: 2;
}
.breadcrumb ul li:first-child a::after {
	position: absolute;
	content: '';
	display: block;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.3em 0 1.3em 1em;
	border-color: transparent  transparent transparent #181777;
	z-index: 2;
}
.breadcrumb ul li:nth-of-type(2) a {
	padding-left: 1.8em;
}
.breadcrumb ul li:not(:first-child) a {
	color: #181777;
	background-color: #eee;
}
.breadcrumb ul li:not(:first-child) a::before,
.breadcrumb ul li:not(:first-child) a::after {
	position: absolute;
	content: '';
	display: block;
	left: 0;
	width: 2px;
	height: 50%;
	border-right: 1px solid #d8d8d8;
	z-index: 1;
}
.breadcrumb ul li:not(:first-child) a::before {
	top: 0;
	transform: skew(40deg);
}
.breadcrumb ul li:not(:first-child) a::after {
	top: 50%;
	transform: skew(-40deg);
}
.breadcrumb ul li:nth-child(n+2):nth-last-child(n+2)::after {
	position: absolute;
	content: '';
	display: block;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.3em 0 1.3em 1em;
	border-color: transparent  transparent transparent #eee;
	z-index: 1;
}

/* SP */
@media only screen and (max-width: 768px) {
	.breadcrumb ul {
		flex-flow: row nowrap;
		white-space: nowrap;
		overflow-x: scroll;
	}
	.breadcrumb ul li {
		font-size: 1.2rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.breadcrumb ul li a:hover {
		text-decoration: underline;
	}
	.breadcrumb ul {
		flex-flow: row wrap;
		max-width: 1280px;
		margin: 0 auto;
	}
	.breadcrumb ul li {
		font-size: 1.4rem;
	}
}


/* 包括／区分／ブロック関連
--------------------------------------------*/
/* SP */
@media only screen and (max-width: 768px) {
	.container {
		padding: 8% 0;
	}
	.section-block:not(:last-child) {
		margin-bottom: 2.5em;
	}
	.section-block-inner {
		padding: 0 3%;
	}
	.row > .col-3:not(:first-child) {
		margin-top: 1.5em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.container {
		width: 96%;
		max-width: 1280px;
		margin: 0 auto;
		padding: 5% 0;
	}
	.section-block:not(:last-child) {
		margin-bottom: 5em;
	}
	.row {
		display: flex;
		flex-flow: row wrap;
	}
	.row > .col-3 { width: 31.25%;}
	.row > .col-3:not(:nth-child(3n+1)) { margin-left: 3.125%;}
	.row > .col-3:nth-child(n+4)  {	margin-top: 2em;}
}


/* 余白・width関連
--------------------------------------------*/
.mt-05em { margin-top: .5em !important;}
.mb-05em { margin-bottom: .5em !important;}

/* SP */
@media only screen and (max-width: 768px) {
	.mb-sentence  { margin-bottom: 3em; !important}
	.mb-paragraph { margin-bottom: 1.6em !important;}
	.mb-content   { margin-bottom: 1.3em !important;}
	.mb-line      { margin-bottom: 1em !important;}
	.mt-line      { margin-top: 1em !important;}
}

/* PC */
@media print,screen and (min-width:769px) {
	.mb-sentence  { margin-bottom: 5em !important;}
	.mb-paragraph { margin-bottom: 3em !important;}
	.mb-content   { margin-bottom: 1.5em !important;}
	.mb-line      { margin-bottom: 1em !important;}
	.mt-line      { margin-top: 1em !important;}
	
	.w-10-per { width: 10%;}
	.w-20-per { width: 20%;}
	.w-30-per { width: 30%;}
	.w-40-per { width: 40%;}
	.w-50-per { width: 48.5%;}
}


/* タイトル関連
--------------------------------------------*/
.ttl-lead {
	font-weight: bold;
	text-align: center;
}
.ttl-hn-02 {
	font-weight: bold;
	color: #fff;
	background-color: #181777;
	
}
.ttl-hn-02 .s {
	vertical-align: middle;
}
.ttl-hn-02 a {
	color: #fff !important;
}
.ttl-hn-03 {
	border-bottom: 3px solid #181777;
}
.ttl-hn-03 .hn {
	position: relative;
	display: inline-block;
	font-weight: bold;
}
.ttl-hn-03 .hn::after {
	position: absolute;
	left: 0;
	top: 100%;
	content: '';
	display: block;
	width: 5em;
	height: 3px;
	background-color: #fff100;
}
.ttl-hn-04 {
	font-weight: bold;
}
.ttl-hn-05 {
	font-weight: bold;
	color: #181777;
}
.ttl-hn-06 {
	font-weight: bold;
	
}

/* SP */
@media only screen and (max-width: 768px) {
	.ttl-lead {
		font-size: 1.8rem;
		margin-bottom: 1.2em;
	}
	.ttl-hn-02 {
		font-size: 1.6rem;
		padding: .4em .7em .35em;
		margin-bottom: 1em;
	}
	.ttl-hn-02 .s {
		font-size: 75%;
	}
	.ttl-hn-03 {
		margin-bottom: 1em;
	}
	.ttl-hn-03 .hn {
		font-size: 1.6rem;
		padding-bottom: 3px;
	}
	.ttl-hn-03 .s {
		font-size: 1.4rem;
	}
	.ttl-hn-04 {
		font-size: 1.5rem;
		margin-bottom: .5em;
	}
	.ttl-hn-04 .s {
		font-size: 1.2rem;
	}
	.ttl-hn-05 {
		font-size: 1.4rem;
		margin-bottom: .5em;
	}
	.ttl-hn-06 {
		font-size: 1.4rem;
		margin-bottom: .5em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.ttl-lead {
		font-size: 3.4rem;
		margin-bottom: 1.5em;
	}
	.ttl-hn-02 {
		font-size: 2.2rem;
		padding: .4em 1em .3em;
		margin-bottom: 1.5em;
	}
	.ttl-hn-02 .s {
		font-size: 75%;
	}
	.ttl-hn-03 {
		margin-bottom: 1.5em;
	}
	.ttl-hn-03 .hn {
		font-size: 2.2rem;
		padding-bottom: 7px;
	}
	.ttl-hn-03 .s {
		font-size: 1.8rem;
	}
	.ttl-hn-04 {
		font-size: 1.8rem;
		margin-bottom: 1em;
	}
	.ttl-hn-04 .s {
		font-size: 1.5rem;
	}
	.ttl-hn-05 {
		font-size: 1.6rem;
		margin-bottom: 1em;
	}
	.ttl-hn-06 {
		font-size: 1.6rem;
		margin-bottom: 1em;
	}
}

/* TB */
@media screen and (min-width:769px) and (max-width:1200px) {
	.ttl-lead {
		font-size: 2.6rem;
	}
}


/* テキスト関連
--------------------------------------------*/
.txt-group {}
.txt-group p:not(:last-of-type) {}

/* 注意書き */
.txt-caution {
	font-weight: bold;
}

/* 受付時間： */
.reception-time {
	display: block;
	text-indent: -5em;
	padding-left: 5em;
}

/* ラインマーカー */
.line-marker {
	display: inline-block;
	background: linear-gradient(transparent 50%, #fff100 0%);
	line-height: 1;
}

/* 事務取扱時間 */
.office-handling {
}
.office-handling .title {
	display: inline-block;
	border: 1px solid #000;
	padding: .3em .5em;
	margin-right: .3em;
	vertical-align: middle;
}
.office-handling .time {
	display: inline-block;
	vertical-align: middle;
}
.office-handling .txt {
	margin-top: .5em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.txt-group {
		font-size: 1.4rem;
	}
	.txt-caution {
		font-size: 1.4rem;
	}
	.office-handling .time {
		font-size: 1.6rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.txt-group {
		font-size: 1.6rem;
	}
	.txt-caution {
		font-size: 1.8rem;
	}
	.office-handling .time {
		font-size: 1.8rem;
	}
}


/* 画像関連
--------------------------------------------*/
.lead-img {
	text-align: center;
}
.img-group {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}
.img-group figure {
	display: table;
}
.img-group figure p {
}
.img-group figure p img {
	width: 100%;
}
.img-group figure figcaption {
	display: table-caption;
	caption-side: bottom;
	width: auto;
	text-align: center;
}
.img-group.col-2 {
	justify-content: center;
}
.img-group.col-2 figure {
	max-width: 49%;
}
.img-group.col-2 figure:nth-child(odd) {
	margin-right: 1%;
}
.img-group.col-2 figure:nth-child(even) {
	margin-left: 1%;
}
.img-group.col-2 figure:nth-child(n+3) {
	margin-top: 2%;
}
@supports (-ms-ime-align: auto) {
	.img-group.col-2 figure:nth-child(odd) {
		margin-right: .7%;
	}
	.img-group.col-2 figure:nth-child(even) {
		margin-left: .7%;
	}
}
.img-group.col-3 {
	justify-content: flex-start;
}
.img-group.col-4 {
	justify-content: space-between;
}

/* SP */
@media only screen and (max-width: 768px) {
	.lead-img img{
		width: 100%;
	}
	.img-group figure figcaption {
		font-size: 1.2rem;
		line-height: 1.4;
		padding-top: .5em;
	}
	.img-group.col-3 figure {
		width: 100%;
	}
	.img-group.col-3 figure:nth-child(n+2) {
		margin-top: 4%;
	}
	.img-group.col-4 figure {
		width: 49%;
	}
	.img-group.col-4 figure:nth-child(n+3) {
		margin-top: 2%;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.img-group figure figcaption {
		font-size: 1.4rem;
		line-height: 1.4;
		padding-top: .5em;
	}
	.img-group figure p a {
		transition: all .5s;
	}
	.img-group figure p a:hover {
		opacity: .8;
	}
	.img-group.col-3 {
		justify-content: flex-start;
	}
	.img-group.col-3 figure {
		width: 32%;
	}
	.img-group.col-3 figure:not(:nth-child(3n+1)) {
		margin-left: 2%;
	}
	.img-group.col-3 figure:nth-child(n+4) {
		margin-top: 2.5%;
	}
	.img-group.col-4 figure {
		width: 24%;
	}
}


/* リスト関連
--------------------------------------------*/
/* 行間スペースあり */
.line-spacing > li {
	margin-top: .7em;
}
.line-spacing > li:first-child {
	margin-top: 0;	
}

/* チェックリスト */
.check-list {
	text-indent: -1.2em;
	padding-left: 1.2em;
}
.check-list > li::before {
	content: '\f14a';
	font-family: 'Font Awesome 5 Free';
	font-size: 16px;		
	font-weight: 900;
	color: #181777;
	padding-right: 5px;
}

/* サークルリスト */
.circle-list {
	text-indent: -.95em;
	padding-left: 20px;
}
.circle-list > li::before {
	position: relative;
	top: -2px;
	content: '●';
	font-size: 9px;
	color: #181777;
	padding-right: 5px;
}

/* ラインリスト */
.line-list {
	text-indent: -.9em;
	padding-left: 18px;
}
.line-list > li::before {
	content: '\f068';
	font-family: 'Font Awesome 5 Free';
	font-size: 8px;		
	font-weight: 900;
	color: #181777;
	padding-right: 5px;
}

/* ナンバリング */
.num-list > li {
	position: relative;
	padding-left: 1em;
	counter-increment: num-list;
}
.num-list > li::before {
	display: block;
	content: counter(num-list)".";
	position: absolute;
	top: 0;
	left: 0;
	color: #181777; 
}

/* ナンバリング-2 */
.num-list-2 > li {
	position: relative;
	padding-left: 1.5em;
	counter-increment: num-list;
}
.num-list-2 > li::before {
	display: block;
	content: "("counter(num-list)")";
	position: absolute;
	top: 0;
	left: 0; 
}

/* ナンバリング-3 */
.num-list-3 > li {
	position: relative;
	text-indent: -1.3em;
	padding-left: 1.3em;
}

/* マークなし */
.nomark-list {}
.nomark-list > li::before {}

/* ドットリスト */
.dot-list {
	text-indent: -1.0em;
	padding-left: 1.0em;
}
.dot-list > li::before {
	content: '・';
	color: #181777;
}

/* SP */
@media only screen and (max-width: 768px) {}

/* PC */
@media print,screen and (min-width:769px) {}


/* リンク関連
--------------------------------------------*/
.container a {
	color: #181777;
	text-decoration: underline;
}
.ic-blank::after {
	content :'\f35d';
	font-family: 'Font Awesome 5 Free';
	font-size: 14px;
	font-weight: 900;
	padding-left: 5px;
}
.ic-pdf::before {
	content: '';
	display: inline-block;
	width: 17px;
	height: 19px;
	background-image: url(/common/img/ic_pdf.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin-right: 5px;
	vertical-align: middle;
}
.ic-word::before {
	content: '';
	display: inline-block;
	width: 17px;
	height: 19px;
	background-image: url(/common/img/ic_word.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin-right: 5px;
	vertical-align: middle;
}
.ic-excel::before {
	content: '';
	display: inline-block;
	width: 17px;
	height: 19px;
	background-image: url(/common/img/ic_excel.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin-right: 5px;
	vertical-align: middle;
}

/* テキスト内 */
.txt-group .txt .ic-blank,
.txt-group .txt .ic-pdf,
.txt-group .txt .ic-excel,
.txt-group .txt .ic-word {
	margin: 0 5px;
}

/* SP */
@media only screen and (max-width: 768px) {}

/* PC */
@media print,screen and (min-width:769px) {
	.container a:hover {
		color: #ff9600;
	}
}


/* 注釈関連
--------------------------------------------*/
.mk-note {}
.mk-note > .note {
	text-indent: -1.3em;
	padding-left: 1.3em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.mk-note > .note.s {
		font-size: 1.2rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.mk-note > .note.s {
		font-size: 1.4rem;
	}
}


/* 下層ページ INDEX-1関連
--------------------------------------------*/
.lower-index-1 {}
.lower-index-1 .index-item a {
	display: block;
	text-decoration: none;
}
.lower-index-1 .index-item-photo {
	position: relative;
	width: 92%;
	z-index: 1;
}
.lower-index-1 .index-item-photo img {
	width: 100%;
}
.lower-index-1 .index-item-dl {
	position: relative;
	width: 92%;
	background-color: rgba(0,0,0,.5);
	margin: -8% 0 0 8%;
	padding: 1.2em;
	z-index: 2;
}
.lower-index-1 .index-item-title {
	font-weight: bold;
	color: #fff;
	line-height: 1.4;
	margin-bottom: .5em;
}
.lower-index-1 .index-item-txt {
	color: #fff;
}
.lower-index-1 .index-item-btn {
	color: #fff100;
	text-align: right;
	margin-top: .8em;
}
.lower-index-1 .index-item-btn::after {
	position: relative;
	top: -2px;
	content: '\f054';
	font-family: 'Font Awesome 5 Free';
	font-size: 11px;		
	font-weight: 900;
	color: #fff100;
	padding-left: 10px;
}

/* SP */
@media only screen and (max-width: 768px) {
	.lower-index-1 .index-item:not(:first-child) {
		margin-top: 2em;
	}
	.lower-index-1 .index-item-title {
		font-size: 1.8rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.lower-index-1 {
		display: flex;
		flex-flow: row wrap;
	}
	.lower-index-1 .index-item {
		width: 31.25%;
	}
	.lower-index-1 .index-item:not(:nth-child(3n+1)) {
		margin-left: 3.125%;
	}
	.lower-index-1 .index-item:nth-child(n+4)  {
		margin-top: 4.5%;
	}
	.lower-index-1 .index-item a {
		transition: all .5s;
	}
	.lower-index-1 .index-item a:hover {
		opacity: .8;
	}
	.lower-index-1 .index-item-photo {
		overflow: hidden;
	}
	.lower-index-1 .index-item-photo img {
		transition: all .5s;
	}
	.lower-index-1 a:hover .index-item-photo img {
		transform: scale(1.2);
	}
	.lower-index-1 .index-item-title {
		font-size: 2.2rem;
	}
}


/* 下層ページ INDEX-2関連
--------------------------------------------*/
.lower-index-2 {}
.lower-index-2 .index-item a {
	display: flex;
	flex-flow: row nowrap;
	text-decoration: none;
}
.lower-index-2 .index-item-content {
	display: flex;
	flex-flow: column wrap;
	justify-content: center;
	align-items: center;
	width: 60%;
	color: #fff;
	background-color: #181777;
	padding: 1.2em;
}
.lower-index-2 .index-item-photo {
	width: 40%;
}
.lower-index-2 .index-item-photo img {
	font-family: 'object-fit: cover;';
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.lower-index-2 .index-item-title {
	max-width: 100%;
	font-weight: bold;
	line-height: 1.2;
}
.lower-index-2 .index-item-title .s {
	display: block;
	font-size: 1.4rem;
	padding-bottom: .7em;
}
.lower-index-2 .index-item-txt {
	max-width: 100%;
	font-size: 1.4rem;
	margin-top: 1em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.lower-index-2 .index-item:not(:first-child) {
		margin-top: 3%;
	}
	.lower-index-2 .index-item-title {
		font-size: 1.6rem;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.lower-index-2 {
		display: flex;
		flex-flow: row wrap;
	}
	.lower-index-2 .index-item {
		width: 31.25%;
	}
	.lower-index-2 .index-item:not(:nth-child(3n+1)) {
		margin-left: 3.125%;
	}
	.lower-index-2 .index-item:nth-child(n+4)  {
		margin-top: 3%;
	}
	.lower-index-2 .index-item a {
		transition: all .5s;
	}
	.lower-index-2 .index-item a:hover {
		opacity: .8;
	}
	.lower-index-2 .index-item-photo {
		overflow: hidden;
	}
	.lower-index-2 .index-item-photo img {
		transition: all .5s;
	}
	.lower-index-2 a:hover .index-item-photo img {
		transform: scale(1.2);
	}
	.lower-index-2 .index-item-title {
		font-size: 1.8rem;
	}
}


/* 下層ページ INDEX-3関連
--------------------------------------------*/
.lower-index-3 li {
	margin-top: .7em;
	line-height: 1.4;
}
.lower-index-3 li a {
	color: #000;
	text-decoration: none;
}
.lower-index-3 > li {
	text-indent: -1.2em;
	padding-left: 1.2em;
}
.lower-index-3 > li::before {
	content: '\f0a9';
	font-family: 'Font Awesome 5 Free';
	font-size: 16px;		
	font-weight: 900;
	color: #181777;
	padding-right: 5px;
}
.lower-index-3 > li > ul {
	text-indent: -.95em;
	padding-left: 20px;
}
.lower-index-3 > li > ul > li::before {
	content: '\f054';
	font-family: 'Font Awesome 5 Free';
	font-size: 14px;		
	font-weight: 900;
	color: #181777;
	padding-right: 5px;
}

/* SP */
@media only screen and (max-width: 768px) {
	.lower-index-3 > li:first-child {
		margin-top: 0;	
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.lower-index-3 {
		display: flex;
		flex-flow: row wrap;
	}
	.lower-index-3 > li {
		width: 31.25%;
	}
	.lower-index-3 > li:not(:nth-child(3n+1)) {
		margin-left: 3.125%;
	}
	.lower-index-3 > li:not(:nth-child(n+4))  {
		margin-top: 0;
	}
}


/* ページ下部 INDEX(ページ遷移ナビ)関連
--------------------------------------------*/
.ft-index-nav {}
.ft-index-nav .index-item a {
	position: relative;
	display: block;
	text-decoration: none;
}
.ft-index-nav .index-item-photo {}
.ft-index-nav .index-item-photo img {
	width: 100%;
}
.ft-index-nav .index-item-title {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: bold;
	color: #fff;
	background: linear-gradient(to left, rgba(0,0,0,0) 1%, rgba(0,0,0,.1) 100%);
	padding: 1em;
	z-index: 2;
}

/* SP */
@media only screen and (max-width: 768px) {
	.ft-index-nav {
		margin-bottom: 2em;
	}
	.ft-index-nav .index-item-title {
		font-size: 1.8rem;
	}
	.ft-index-nav .index-item:not(:first-child) {
		margin-top: 1px;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.ft-index-nav {
		display: flex;
		flex-flow: row wrap;
		margin-bottom: 4em;
	}
	.ft-index-nav .index-item {
		width: 50%;
	}
	.ft-index-nav .index-item-title {
		font-size: 2.6rem;
	}
	.ft-index-nav a {
		overflow: hidden;
		transition: all .5s;
	}
	.ft-index-nav a:hover {
		opacity: .8;
	}
	.ft-index-nav .index-item-photo img {
		transition: all .5s;
	}
	.ft-index-nav a:hover .index-item-photo img {
		transform: scale(1.2);
	}
}

/* TB */
@media screen and (min-width:769px) and (max-width:1200px) {
	.ft-index-nav .index-item-title {
		font-size: 2rem;
	}
}


/* ボタン関連
--------------------------------------------*/
.btn-group {
	display: flex;
	justify-content: center;
	align-items: center;
}
.btn-group:not(:last-child) {
	margin-bottom: 1em;
} 
.btn-group .btn {
	position: relative;
	display: block;
	color: #fff !important;
	text-align: center;
	text-decoration: none !important;
	background-color: #181777;
	cursor: pointer;
}
.btn-group .btn::after {
	position: absolute;
	right: 1em;
	content :'\f054';
	font-family: 'Font Awesome 5 Free';
	font-size: 14px;
	font-weight: 900;
	color: #fff;
	padding-left: 5px;
}
.btn-back {
	text-align: center;
}
.btn-back .btn {
	display: inline-block;
	font-weight: bold;
	color: #000;
	text-align: center;
	text-decoration: none;
}

/* SP */
@media only screen and (max-width: 768px) {
	.btn-group {
		flex-flow: row wrap;
	}
	.btn-group .btn-l { width: 100%;}
	.btn-group .btn-m { width: 48.5%;}
	.btn-group .btn-m:nth-child(odd)  { margin-right: 1.5%;}
	.btn-group .btn-m:nth-child(even) { margin-left: 1.5%;}
	.btn-group .btn-s { width: 100%; max-width: 300px;}
	.btn-group .btn-l .btn { padding: 1.5em 1em;}
	.btn-group .btn-m .btn { padding: 1em;}
	.btn-group .btn-s .btn { padding: 1em;}
	.btn-back {
	}
	.btn-back .btn {
		width: 100%;
		max-width: 300px;
		font-size: 1.6rem;
		border: 3px solid #000;
		padding: .5em 1em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.btn-group {
		flex-flow: column nowrap;
	}
	.btn-group .btn {
		transition: all .5s;
	}
	.btn-group .btn:hover {
		opacity: .8;
	}
	.btn-group li:not(:last-child) {
		margin-bottom: 1em;
	}
	.btn-group .btn-l { width: 50%;}
	.btn-group .btn-m { width: 50%;}
	.btn-group .btn-s { width: 30%; min-width: 330px;}
	.btn-group .btn-l .btn { padding: 2em 1em;}
	.btn-group .btn-m .btn { padding: 1em;}
	.btn-group .btn-s .btn { padding: 1em;}
	.btn-back {
	}
	.btn-back .btn:hover {
		color: #fff;
		background-color: #000;
	}
	.btn-back .btn {
		min-width: 330px;
		font-size: 2.4rem;
		border: 4px solid #000;
		padding: .5em 1em;
		transition: all .5s;
	}
}


/* リンク無効
--------------------------------------------*/
.link-none {
	filter: grayscale(100%) !important;
	opacity: .3 !important;
	pointer-events: none !important;
}


/* カテゴリーラベル
--------------------------------------------*/
.category-label {
	margin: -.55em 0 0 0;
}
.category-label > li {
	display: inline-block;
	line-height: 1.2;
	background-color: #eee;
	padding: .5em .5em .4em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.category-label {
		font-size: 1.2rem;
		margin-bottom: 1.5em;
	}
	.category-label > li {
		margin: .55em .2em 0 0;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.category-label {
		font-size: 1.4rem;
		margin-bottom: 2.5em;
	}
	.category-label > li {
		margin: .55em .3em 0 0;
	}
}


/* オープンキャンパス
--------------------------------------------*/
.opc-tokuten {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
}
.opc-tokuten dt {
	position: relative;
	font-weight: bold;
	color: #fff;
	line-height: 1;
	padding: .7em 1em;
	background-color: #181777;
	z-index: 2;
}
.opc-tokuten dd {
	text-align: center;
	border: 3px solid #181777;
}
.opc-list {
	padding-bottom: 5%;
}
.opc-item {
	overflow: hidden;
}
.opc-item a {
	display: block;
	color: #fff;
	text-decoration: none;
}
.opc-item a:hover {
	color: #fff;
}
.opc-item-photo {
	position: relative;
}
.opc-item-photo .title {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.3);
	padding: 1em;
	font-weight: bold;
	text-align: center;
	z-index: 2;
}
.opc-item-photo .photo img {
	width: 100%;
}
.opc-item-content {
	text-align: center;
	background-color: #181777;
}
.opc-item-content .date {
	font-weight: bold;
	line-height: 1;
}
.opc-item-content .btn {
	color: #fff100;
}
.opc-item-content .btn::after {
	position: relative;
	top: -2px;
	content: '\f054';
	font-family: 'Font Awesome 5 Free';
	font-size: 11px;		
	font-weight: 900;
	color: #fff100;
	padding-left: 10px;
}
.opc-calendar iframe {
	display: block;
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
.opc-flow {
	position: relative;
	padding: 1.5em 0 .5em;
}
.opc-flow-arrow {
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: 0;
	width: 30px;
	height: 100%;
	background-color: #fff100;
	z-index: 1;
}
.opc-flow-arrow::before {
	position: absolute;
	content: '';
	left: 0;
	top: -10px;
	height: 0;
	width: 0;
	border-left: 15px solid #fff100;
	border-right: 15px solid #fff100;
	border-top: 10px solid transparent;
}
.opc-flow-arrow::after {
	position: absolute;
	content: '';
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 15px;
	border-color: #fff100 transparent transparent transparent;
}
.opc-flow-item {
	position: relative;
	z-index: 2;
}
.opc-flow-item dt {
	font-weight: bold;
	color: #181777;
	padding-bottom: .5em;
}
.opc-flow-item::before {
	position: absolute;
	top: 5px;
	left: 8px;
	content: '';
	display: block;
	width: 14px;
	height: 14px;
	background-color: #181777;
	border-radius: 10px;
}
.opc-flow-item::after {
	position: absolute;
	top: 12px;
	left: 8px;
	content: '';
	display: block;
	height: 1px;
	background-color: #181777;
}
.opc-schedule {
	display: flex;
	flex-flow: row wrap;
}
.opc-schedule dt {
	width: 9em;
}
.opc-schedule dd {
	width: calc(100% - 9em);
}

/* SP */
@media only screen and (max-width: 768px) {
	.opc-tokuten dt {
		font-size: 1.5rem;
	}
	.opc-tokuten dd {
		width: 100%;
		padding: 2em 1em 1em;
		margin-top: -1.3em;
	}
	.opc-list {
		margin-left: -.7em;
	}
	.opc-item {
		margin-left: .7em;
	}
	.opc-item-photo .title {
		font-size: 1.6rem;
		line-height: 1.2;
	}
	.opc-item-content {
		padding: 1em .5em;
	}
	.opc-item-content .date {
		margin-bottom: .5em;
	}
	.opc-item-content .date span {
		font-size: 2.0rem;
	}
	.opc-item-content .time {
	}
	.opc-item-content .txt {
		font-size: 1.2rem;
	}
	.opc-item-content .btn {
		margin-top: .7em;
	}
	.opc-calendar {
		margin-top: 3.5em;
	}
	.opc-flow-item {
		padding-left: 50px;
	}
	.opc-flow-item:not(:first-of-type) {
		margin-top: 1.5em;
	}
	.opc-flow-item dt {
		font-size: 1.6rem;
	}
	.opc-flow-item::after {
		width: 35px;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.opc-tokuten dt {
		font-size: 2rem;
	}
	.opc-tokuten dd {
		padding: 2.5em 5em 1.5em;
		margin-top: -1.5em;
	}
	.opc-list {
		margin-left: -1em;
	}
	.opc-item {
		margin-left: 1em;
	}
	.opc-item a {
		transition: all .5s;
	}
	.opc-item a:hover {
		opacity: .8;
	}
	.opc-item .opc-item-photo .photo {
		overflow: hidden;
	}
	.opc-item .opc-item-photo .photo img {
		transition: all .5s;
	}
	.opc-item a:hover .opc-item-photo .photo img {
		transform: scale(1.2);
	}
	.opc-item-photo .title {
		font-size: 2.4rem;
		line-height: 1.2;
	}
	.opc-item-content {
		padding: 1em;
	}
	.opc-item-content .date {
		margin-bottom: .5em;
	}
	.opc-item-content .date span {
		font-size: 4rem;
	}
	.opc-item-content .time {
	}
	.opc-item-content .txt {
	}
	.opc-item-content .btn {
		margin-top: .7em;
	}
	.opc-calendar {
		margin-top: 3em;
	}
	.opc-flow-item {
		padding-left: 65px;
	}
	.opc-flow-item:not(:first-of-type) {
		margin-top: 2em;
	}
	.opc-flow-item dt {
		font-size: 1.8rem;
	}
	.opc-flow-item::after {
		width: 50px;
	}
}

/* TB */
@media screen and (min-width:769px) and (max-width:1200px) {
	.opc-item-photo .title {
		font-size: 2rem;
	}
	.opc-item-content .txt {
		font-size: 1.4rem;
	}
}


/* 画像テキスト組み合わせ関連
--------------------------------------------*/
.txt-img-float {
	overflow: hidden;
}
.txt-img-float .col-float-r {
	float: right;
	display: inline-block;
}

/* SP */
@media only screen and (max-width: 768px) {
	.txt-img-row > .col-2:nth-child(n+2)  {
		margin-top: 1.5em;
	}
	.txt-img-float .col-float-r {
		max-width: 30%;
		margin: 0 0 1.5% 3%;
	}
	.txt-img-float .col-float-r .img-group figure:not(:first-child) {
		margin-top: 1em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.txt-img-row {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	.txt-img-row.re-row {
		flex-flow: row-reverse nowrap;
	}
	.txt-img-row > .col-2 {
		width: 48.5%;
	}
	.txt-img-row > .col-2:nth-child(even) {
		margin-left: 3%;
	}
	.txt-img-row.re-row > .col-2:nth-child(odd)  {
		margin-left: 3%;
	}
	.txt-img-row.re-row > .col-2:nth-child(even) {
		margin-left: 0;
	}
	.txt-img-row > .col-2:nth-child(n+3)  {
		margin-top: 2em;
	}
	.txt-img-float .col-float-r {
		margin: 0 0 1.5% 3%;
	}
	.txt-img-float .col-float-r .img-group {
		flex-flow: row nowrap;
	}
	.txt-img-float .col-float-r .img-group figure:not(:first-child) {
		margin-left: 1.5em;
	}
}

/* TB */
@media screen and (min-width:769px) and (max-width:1200px) {
	.txt-img-float .col-float-r .img-group {
		flex-flow: column wrap;	
	}
	.txt-img-float .col-float-r .img-group figure:not(:first-child) {
		margin-left: 0;
		margin-top: 1.5em;
	}
}

/* Q&A
--------------------------------------------*/
.qa-list {
	max-width: 630px;
	margin: 0 auto;
}
.qa-item {	
}
.qa-item > dt {
	position: relative;
	font-weight: bold;
	color: #1c2585;
	background-color: #e7e9f8;
	border-radius: 5px;
	padding: 1em 3em 1em 3.7em;
	cursor: pointer;
}
.qa-item > dt::before {
	position: absolute;
	left: 1em;
	content: 'Q';
	display: inline-block;
	color: #fff;
	width: 2em;
	height: 2em;
	line-height: 2em;
	text-align: center;
	background-color: #1c2585;
	border-radius: 2em;
	text-indent: 0;
	margin-right: .7em;
	
}
.qa-item > dt::after {
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	content: '\f067';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #181878;
}
.qa-item > dt.open::after {
	content: '\f068';
}
.qa-item > dd {
	display: none;
}

/* SP */
@media only screen and (max-width: 768px) {
	.qa-item:not(:last-child) {
		margin-bottom: .7em;
	}
	.qa-item > dd {
		margin: .7em 0 1.2em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.qa-item:not(:last-child) {
		margin-bottom: 1em;
	}
	.qa-item > dt {
		transition: all .5s;
	}
	.qa-item > dt::after {
		font-size: 18px;
	}
	.qa-item > dt:hover {
		opacity: .8;
	}
	.qa-item > dd {
		margin: 1em 0 1.2em;
	}
}


/* お問合せ
--------------------------------------------*/
.inquiry-item {
	border: 1px solid #c4c4c4;
}
.inquiry-item > dt {
	font-weight: bold;
}
.inquiry-item-title-b {
	color: #181777;
	background-color: #e7e9f8;
	margin-bottom: 1em;
}
.inquiry-item-title-c {
	padding: 1em 1em 0;
	margin-bottom: .5em;
}
.inquiry-item > dd {
	padding:  0 1em 1em;
}

/* SP */
@media only screen and (max-width: 768px) {
	.inquiry-item-title-b {
		padding: .7em 1em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.inquiry-item-title-b {
		padding: 1em;
	}
}


/* テーブル関連
--------------------------------------------*/
.normal-table {
	overflow: hidden;
}
.normal-table table {
	width: 100%;
	border-collapse: collapse;
}
.normal-table th,
.normal-table td {
	border: 1px solid #ccc;
}
.normal-table th {
	line-height: 1.2;
	background-color: #e7e9f8;
}
.normal-table td .num-list-2 li {
	margin-top: 0;
}

/* SP */
@media only screen and (max-width: 768px) {
	.normal-table th,
	.normal-table td {
		font-size: 1.3rem;
		padding: .7em 1em;
	}
	.normal-table.th-td-change th,
	.normal-table.th-td-change td {
		display: block;
	}
	.normal-table.th-td-change th {
		text-align: left;
	}
	.normal-table.th-td-change tr:not(:first-of-type) th,
	.normal-table.th-td-change td {
		margin-top: -1px;
	}
	.normal-table.scroll {
		overflow-x: scroll;
		white-space: nowrap;
	}
	.normal-table th {
		text-align: center;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.normal-table th,
	.normal-table td {
		font-size: 1.4rem;
		padding: 1em;
	}
	.normal-table th {
		text-align: center;
	}
}


/* CMS関連
--------------------------------------------*/
.news-article .photo {
	text-align: center;
}
.news-item {
	display: flex;
}
.news-item > .news-ic span {
	display: block;
	color: #fff;
	text-align: center;
	line-height: 1;
	background-color: #181777;
}
.news-item > .news-date {
	line-height: 1;
}

/* news-year */
.news-year {
	display: inline-block;
	border: 1px solid #c4c4c4;
}
.news-year dt {
	position: relative;
	font-weight: bold;
	cursor: pointer;
}
.news-year-dt::after {
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	content: '\f0d7';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #181878;
}
.news-year dt.open::after {
	content: '\f0d8';
}
.news-year dd {
	display: none;
}
.news-year dd > ul > li:not(:last-child) {
	margin-bottom: .5em;
}

/* wp-pagenavi */
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	color: #181777;
	line-height: 1;
	border: 1px solid #181777;
	text-decoration: none;
	vertical-align: middle;
}
.wp-pagenavi .current {
	color: #fff;
	background-color: #181777;
}
.wp-pagenavi .prev,
.wp-pagenavi .next {
	letter-spacing: -3px;
	color: #000;
	border: none;
}


/* SP */
@media only screen and (max-width: 768px) {
	.news-article {
		margin-bottom: 3em;
	}
	.news-article p:not(:last-child) {
		margin-bottom: 1.6em;
	}
	.news-item {
		flex-flow: row wrap;
		margin-bottom: 1.5em;
	}
	.news-item > .news-ic {
		width: 6em;
	}
	.news-item > .news-ic span {
		font-size: 1.2rem;
		padding: .5em .5em .4em;
	}
	.news-item > .news-date {
		padding: .35em 0 0 .7em;
	}
	.news-item > .news-txt {
		width: 100%;
		margin-top: .5em;
	}
	
	/* news-year */
	.news-year {
		margin-bottom: 2em;
	}
	.news-year dt {
		padding: .7em 3em .7em 1em;
	}
	.news-year dd {
		padding: 0 1em .7em;
	}
	
	/* wp-pagenavi */
	.wp-pagenavi {
		margin-top: 2.5em;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 2px;
		padding: 7px 10px;
	}
	.wp-pagenavi .prev {
		margin-right: 10px;
	}
	.wp-pagenavi .next {
		margin-left: 5px;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.news-article {
		margin-bottom: 5em;
	}
	.news-article p:not(:last-child) {
		margin-bottom: 3em;
	}
	.news-item {
		flex-flow: row nowrap;
		margin-bottom: 1em;
	}
	.news-item > .news-ic {
		width: 8em;
	}
	.news-item > .news-ic span {
		font-size: 1.4rem;
		padding: .5em .5em .4em;
	}
	.news-item > .news-date {
		width: 8em;
		padding: .35em 1em 0;
		text-align: center;
	}
	
	/* news-year */
	.news-year {
		margin-bottom: 3em;
	}
	.news-year dt {
		padding: 1em 3em 1em 1em;
		transition: all .5s;
	}
	.news-year dt:hover {
		opacity: .8;
	}
	.news-year-dt::after {
		font-size: 20px;
	}
	.news-year dd {
		padding: 0 1em 1em;
	}
	
	/* wp-pagenavi */
	.wp-pagenavi {
		margin-top: 5em;
	}
	.wp-pagenavi a.page:hover {
		color: #fff;
		background-color: #181777;
	}
	.wp-pagenavi a {
		transition: all .5s;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 3px;
		padding: 10px 15px;
	}
	.wp-pagenavi .prev {
		margin-right: 20px;
	}
	.wp-pagenavi .next {
		margin-left: 15px;
	}
}


/* fancybox
--------------------------------------------*/
.compensate-for-scrollbar {
	margin-right: 0 !important;
}


/* youtube
--------------------------------------------*/
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}


/* 動画紹介
--------------------------------------------*/
.movie-tab {
	display: flex;
	flex-flow: row wrap;
}
.movie-tab li {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1;
	cursor: pointer;
}
.movie-tab li::after {
	position: absolute;
	content: '\f0dd';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #000;
}
.movie-tab li.active {
	color: #fff;
	background-color: #000;
}
.movie-tab li.active::after {
	color: #fff;
}
.movie-list {
	display: none;
}
.movie-list.active {
	display: block;
}
.movie-thumb {
	display: flex;
	flex-flow: row wrap;
}
.movie-thumb figure {
	display: table;
}
.movie-thumb figure p a {
	display: block;
}
.movie-thumb figure p img {
	width: 100%;
}
.movie-thumb figure figcaption {
	display: table-caption;
	caption-side: bottom;
	width: auto;
	text-align: center;
}

/* SP */
@media only screen and (max-width: 768px) {
	.movie-tab {
		justify-content: space-between;
		width: 94%;
		margin: 0 auto 2em;
	}
	.movie-tab li {
		width: 49%;
		min-height: 54px;
		font-size: 1.4rem;
		padding: .8em .1em .8em;
		border: 2px solid #000;
	}
	.movie-tab li::after {
		top: 25%;
		right: .5em;
		font-size: 14px;
	}
	.movie-tab li:nth-of-type(n+3) {
		margin-top: 2%;
	}
	.movie-thumb figure {
		width: 49%;
	}
	.movie-thumb figure:nth-child(odd) {
		margin-right: 1%;
	}
	.movie-thumb figure:nth-child(even) {
		margin-left: 1%;
	}
	.movie-thumb figure:nth-child(n+3) {
		margin-top: 4%;
	}
	.movie-thumb figure figcaption {
		font-size: 1.2rem;
		line-height: 1.4;
		padding-top: .5em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.movie-tab {
		margin-bottom: 4em;
	}
	.movie-tab li {
		width: 32%;
		min-height: 78px;
		font-size: 1.8rem;
		padding: 1em .5em;
		border: 3px solid #000;
	}
	.movie-tab li::after {
		top: 25%;
		right: 1em;
		font-size: 20px;
	}
	.movie-tab li:not(:nth-of-type(3n+1)) {
		margin-left: 2%;
	}
	.movie-tab li:nth-of-type(n+4) {
		margin-top: 2%;
	}
	.movie-thumb figure {
		width: 32%;
	}
	.movie-thumb figure:not(:nth-child(3n+1)) {
		margin-left: 2%;
	}
	.movie-thumb figure:nth-child(n+4) {
		margin-top: 2.5%;
	}
	.movie-thumb figure figcaption {
		font-size: 1.4rem;
		line-height: 1.4;
		padding-top: .5em;
	}
	.movie-thumb a {
		overflow: hidden;
		transition: all .5s;
	}
	.movie-thumb a:hover {
		opacity: .8;
	}
	.movie-thumb figure p img {
		transition: all .5s;
	}
	.movie-thumb figure p a:hover img {
		transform: scale(1.2);
	}
}

/* 教員紹介
--------------------------------------------*/
.teacher-tab {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	border-bottom: 3px solid #ccc;
}
.teacher-tab li {
	position: relative;
	cursor: pointer;
}
.teacher-tab li.active {
	font-weight: bold;
	color: #181878;
}
.teacher-tab li.active::after {
	position: absolute;
	top: 100%;
	left: 0;
	content: '';
	display: block;
	width: 100%;
	height: 3px;
	background-color: #181878;
}
.teacher-list {}
.teacher-item {
	display: none;
}
.teacher-item.active {
	display: block;
}
.teacher-item-photo {
	position: relative;
	width: 92%;
	z-index: 1;
}
.teacher-item-photo img {
	width: 100%;
}
.teacher-item-dl {
	position: relative;
	width: 92%;
	background-color: rgba(0,0,0,.5);
	margin: -8% 0 0 8%;
	padding: 1.2em;
	z-index: 2;
}
.teacher-item-name {
	font-weight: bold;
	color: #fff100;
	border-bottom: 1px solid #fff;
}
.teacher-item-name .course {
	display: block;
	color: #fff;
}
.teacher-item-rep {
	color: #fff;
}
.teacher-item-rep .lecture {
	display: block;
	font-weight: bold;
}

/* SP */
@media only screen and (max-width: 768px) {
	.teacher-tab {
		margin: 2em 0 2em;
	}
	.teacher-tab li {
		padding: 0 0 .5em;
	}
	.teacher-item:not(:first-child) {
		margin-top: 2em;
	}
	.teacher-item-name {
		font-size: 1.6rem;
		padding-bottom: .5em;
	}
	.teacher-item-name .course {
		font-size: 1.3rem;
	}
	.teacher-item-rep {
		font-size: 1.3rem;
		margin-top: .7em;
	}
	.teacher-item-rep .lecture {
		font-size: 1.4rem;
		margin-bottom: .3em;
	}
	.teacher-item-txt {
		padding: 0 3%;
		margin-top: 1.5em;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.teacher-tab {
		margin: 0 0 4em;
	}
	.teacher-tab li {
		font-size: 2rem;
		padding: 0 1em .5em;
	}
	.teacher-item {
		overflow: hidden;
	}
	.teacher-item:not(:first-child) {
		margin-top: 4em;
	}
	.teacher-item-info {
		float: left;
		width: 31.25%;
		margin: 0 3.125% 2% 0;
	}
	.teacher-item-name {
		font-size: 2.4rem;
		padding-bottom: .5em;
	}
	.teacher-item-name .course {
		font-size: 1.4rem;
	}
	.teacher-item-rep {
		font-size: 1.4rem;
		margin-top: 1em;
	}
	.teacher-item-rep .lecture {
		font-size: 1.5rem;
		margin-bottom: .2em;
	}
}

/* course
--------------------------------------------*/
.course-point-item {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	background-color: #eee;
}
.course-point-item::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 0;
	border-color: #fff100 transparent transparent transparent;
}
.course-point-item dt {
	font-weight: bold;
	color: #181677;
	text-align: center;
	line-height: 1;
	padding-right: .7em;
}
.course-point-item dt .s {
	display: block;
}
.course-point-item dd {
	font-weight: bold;
}

.course-item-photo {
	position: relative;
	width: 92%;
	z-index: 1;
}
.course-item-photo img {
	width: 100%;
}
.course-item-title {
	position: relative;
	width: 92%;
	background-color: rgba(0,0,0,.5);
	margin: -8% 0 0 8%;
	padding: 1.2em 0 1.2em 1.2em;
	z-index: 2;
}
.course-item-title .hn {
	display: block;
	font-weight: bold;
	color: #fff;
	padding-bottom: .5em;
	border-bottom: 3px solid #fff100;
}

.submenu-list {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}
.submenu-item a {
	position: relative;
	display: block;
	overflow: hidden;
}
.submenu-item a img {
	width: 100%;
}
.submenu-txt {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	background-color: rgba(0,0,0,.5);
	font-weight: bold;
	line-height: 1.2;
	color: #fff;
	text-align: center;
}

/* SP */
@media only screen and (max-width: 768px) {
	.course-point-list > .course-point-item:not(:first-child) {
		margin-top: .8em;
	}
	.course-point-item {
		padding: 1em;
	}
	.course-point-item dt {
		font-size: 2.4rem;
	}
	.course-point-item dt .s {
		font-size: 1.2rem;
		padding-bottom: 10px;
	}
	.course-point-item dd {
		font-size: 1.6rem;
	}
	.course-point-item dd .s {
		font-size: 1.2rem;
	}
	.course-item-txt {
		padding: 0 3%;
		margin-top: 1.5em;
	}
	.course-item-title .hn {
		font-size: 1.6rem;
	}
	.submenu-item {
		width: 48.5%;
	}
	.submenu-item:nth-child(2n) { 
		margin-left: 3%;
	}
	.submenu-txt {
		font-size: 1.5rem;
		padding: 8px;
	}
}

/* PC */
@media print,screen and (min-width:769px) {
	.course-point-list {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	.course-point-list > .course-point-item {
		width: 32.5%;
	}
	.course-point-list.row-2 > .course-point-item {
		width: 49.375%;
	}
	.course-point-item {
		padding: 1.7em;
	}
	.course-point-item dt {
		font-size: 3.6rem;
	}
	.course-point-item dt .s {
		font-size: 1.4rem;
		padding-bottom: 10px;
	}
	.course-point-item dd {
		font-size: 2rem;
	}
	.course-point-item dd .s {
		font-size: 1.6rem;
	}
	.course-point-item dd .txt {
		font-size: 1.6rem;
		font-weight: normal;
		padding-top: .5em;
	}
	.course-item {
		overflow: hidden;
	}
	.course-item-info {
		float: left;
		width: 48%;
		margin: 0 3.125% 2% 0;
	}
	.course-item-title .hn {
		font-size: 2rem;
		padding-right: 1em;
	}
	.submenu-item {
		width: 39%;
	}
	.submenu-item:nth-child(2n) { 
		margin-left: 3.5%;
	}
	.submenu-item a img {
		transition: all 0.3s;
	}
	.submenu-item a:hover img {
		transform: scale(1.2);
	}
	.submenu-txt {
		font-size: 2.2rem;
		padding: 15px 10px;
	}
}