@charset "utf-8";
/* =====================
  kv
===================== */

.kv {
	position: relative;
	width: 100%;
	height: 440px;
	margin-top: 101px;
	text-align: center;
	color: #fff;
}

.kv:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.25);
}

.kv .inner {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: auto;
	height: 60px;
	text-shadow: 0 0 10px rgba(255,255,255,.8)
}

.kv-headline {
	font-family: 'nserif-l', serif;
	font-size: 40px;
	font-weight: 400;
	position: relative;
}
.kv-headline:before {
    content: '';
    background: url(../images/home/icon_main01.svg) no-repeat center top / 22% auto;
    width: 100%;
    height: 200%;
    position: absolute;
    top: -120%;
    left: 0;
    z-index: 0;
}
.kv-subtitle {
	margin-top: 10px;
	font-family: 'humnst', serif;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.2em;
}

/* =====================
  kv for sp
===================== */

@media all and (max-width:799px) {
	.kv {
		height: 200px;
		margin-top: 0;
	}
	.kv-inner {
		height: 50px;
	}
	.kv-headline {
		font-size: 30px;
	}
	.kv-headline:before {
    background: url(../images/home/icon_main01.svg) no-repeat center top / 60% auto;
}
	.kv-subtitle {
		font-size: 10px;
		letter-spacing: 0.35em;
	}
}
/* =====================
  btntop
===================== */

  #btntop {
    background: url("../images/common/btntop.svg") no-repeat scroll 0 0 transparent;
    -webkit-background-size: 100%;
         -o-background-size: 100%;
            background-size: 100%;
    bottom: 50px;
  right: 50px;
    cursor: pointer;
    height: 70px;
    position: fixed;
    text-indent: -9999px;
    width: 70px;
    z-index: 1000;
}
@media all and (max-width: 799px) {

#btntop {
    bottom: 20px;
    right: 20px;
    height: 60px;
    width: 60px;
  }
}
/* =====================
  news-box
===================== */

.news-box {
	width: 100%;
	margin: 100px 0;
}

.news-box .news-box-headline {
	margin-bottom: 80px;
}

.news-box .news-box-title {
	font-family: 'baskerville-r', serif;
	font-size: 40px;
	letter-spacing: 0.1em;
	text-align: center;
}

.news-box .news-box-subtitle {
	margin-top: 10px;
	font-family: 'nscjk-m', sans-serif;
	font-size: 12px;
	letter-spacing: 0.15em;
	text-align: center;
}

.news-box .news-list {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.news-box .news-item-link {
	display: block;
	width: 100%;
	height: 100%;
}

.news-box .news-item-img {
	position: relative;
	width: 25vw;
	height: 24.7vw;
}

.news-box .news-item-img:before {
	content: '';
	background: rgba(0, 0, 0, .15);
	width: 100%;
	height: 100%;
	display: block;
	margin: auto;
}

/*.news-box .news-item-img .hoverimg {
	background: rgba(40, 132, 101, .95) url(../images/school-life/index/bg_news_inner.svg) no-repeat center center;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: all .3s;
	-webkit-transition: all .3s;
	display: block;
}*/

.news-box .news-item-link:hover .hoverimg {
	opacity: 1;
}

.news-box .news-item-link:hover .news-item-data {
	opacity: 0.75;
}

.news-box .news-item-date {
	border: 1px solid #fff;
	position: absolute;
	top: 1.25vw;
	left: 1.25vw;
	width: 6.6vw;
	height: 6.6vw;
	text-align: center;
	padding-top: 1.25vw;
	color: #fff;
	z-index: 100;
}

.news-box .news-item-date .month {
	display: block;
	font-family: 'lato-b', serif;
	font-size: 12px;
	letter-spacing: 0.37em;
	margin-bottom: 0.5vw;
}

.news-box .news-item-date .day {
	font-family: 'humnst', serif;
	font-size: 32px;
}

.news-box .news-item-data {
	position: relative;
	height: 11vw;
	padding: 1.25vw 1.25vw 0;
}

.news-box .news-item:nth-child(odd) .news-item-data {
	background-color: #F2F2F2;
}

.news-box .news-item-data .category {
	font-family: 'nscjk-b', sans-serif;
	font-size: 0.9vw;
	line-height: 2vw;
	width: 7.5vw;
	margin-bottom: 1.25vw;
	background-color: #008DB8;
	color: #fff;
	text-align: center;
	border-radius: 3px;
}

.news-box .news-item-data .title {
	font-family: 'nscjk-m', sans-serif;
	font-size: 12px;
}

.news-box .news-item-data .date {
	position: absolute;
	left: 1.25vw;
	bottom: 1vw;
	font-family: 'robot-m', sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
	color: #7D7D7D;
}

.news-box .news-item-data .more {
	position: absolute;
	right: 0;
	bottom: 1vw;
	padding-right: 2.5vw;
	font-family: 'robot-m', sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
	color: #636363;
}

.news-box .news-item-data .more:before {
	content: "+";
	font-family: 'roboto-b', sans-serif;
	font-size: 20px;
	float: right;
	padding: 0 5px 0 0;
	position: absolute;
	right: 0;
	bottom: -0.3vw;
}

.news-box .news-item-data .more:after {
	content: '';
	width: 100%;
	height: 5px;
	background: #636363;
	display: block;
	position: absolute;
	bottom: -1vw;
	right: 0;
}

/* =====================
  news-box for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.news-box .news-box-title {
		font-size: 3.3vw;
	}

	.news-box .news-box-subtitle {
		font-size: 12px;
	}

	.news-box .news-item-date .month {
		font-size: 1vw;
	}

	.news-box .news-item-date .day {
		font-size: 2.9vw;
	}

	.news-box .news-item-data .category {
		font-size: 1vw;
		line-height: 2vw;
	}

	.news-box .news-item-data .title {
		font-size: 1.1vw;
	}

	.news-box .news-item-data .date {
		font-size: 1vw;
	}

	.news-box .news-item-data .more {
		font-size: 1vw;
	}

	.news-box .news-item-data .more:before {
		font-size: 1.6vw;
	}
}

/* =====================
  news-box for sp
===================== */

@media all and (max-width:799px) {
	.news-box {
		margin: 60px 0;
	}
	.news-box .news-box-headline {
		margin-bottom: 60px;
	}
	.news-box .news-box-title {
		font-family: 'baskerville-r', serif;
		font-size: 30px;
		letter-spacing: 0.1em;
		text-align: center;
	}
	.news-box .news-box-subtitle {
		margin-top: 10px;
		font-family: 'nscjk-m', sans-serif;
		font-size: 12px;
		letter-spacing: 0.15em;
		text-align: center;
	}
	.news-box .news-list {
		width: 100%;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.news-box .news-item {
		border-bottom: 4px solid #E0E0E0;
	}
	.news-box .news-item-link {
		width: 50vw;
		height: 100%;
	}
	.news-box .news-item-img {
		width: 50vw;
		height: 49vw;
	}
	.news-box .news-item-link:hover .news-item-data {
		opacity: 0.75;
	}
	.news-box .news-item-date {
		top: 2vw;
		left: 2vw;
		width: 20vw;
		height: 20vw;
		padding-top: 4.2vw;
	}
	.news-box .news-item-date .month {
		font-size: 2.9vw;
	}
	.news-box .news-item-date .day {
		font-family: 'humnst', serif;
		font-size: 8.5vw;
	}
	.news-box .news-item-data {
		height: 24vw;
		padding: 2.6vw 2.6vw 0;
	}
	.news-box .news-item:nth-child(odd) .news-item-data {
		background-color: #fff;
	}
	.news-box .news-item:nth-child(1) .news-item-data, .news-box .news-item:nth-child(4) .news-item-data {
		background-color: #F2F2F2;
	}
	.news-box .news-item-data .category {
		font-size: 2.6vw;
		line-height: 3.4vw;
		letter-spacing: 0em;
		width: 20vw;
		padding: 2px 0;
		margin-bottom: 2.6vw;
		border-radius: 3px;
	}
	.news-box .news-item-data .title {
		font-size: 3.2vw;
		line-height: 3.7vw;
	}
	.news-box .news-item-data .date {
		position: absolute;
		left: 2.6vw;
		bottom: 2vw;
		font-family: 'roboto-b', sans-serif;
		font-size: 2.6vw;
	}
	.news-box .news-item-data .more {
		right: 0;
		bottom: 2vw;
		padding-right: 6vw;
		font-family: 'roboto-b', sans-serif;
		font-size: 2.6vw;
	}
	.news-box .news-item-data .more:before {
		content: "+";
		font-family: 'roboto-b', sans-serif;
		font-size: 2.6vw;
		padding: 0 8px 0 0;
		right: 0;
		bottom: 0.4vw;
	}
	.news-box .news-item-data .more:after {
		display: none;
	}
}

/* =====================
	contents-box
===================== */

.contents-box {
	width: 100%;
	margin-bottom: 100px;
}

.contents-box.nomargin {
	margin: 0;
}

.contents-box .contents-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contents-box .contents-list.wrap {
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.contents-box .contents-list.contents-list-2col .contents-item {
	width: 50%;
}

.contents-box .contents-list.contents-list-3col .contents-item {
	width: 33.3%;
}

.contents-box .contents-list-4col .contents-item {
	width: 25%;
}

.contents-box .contents-link {
	display: block;
}

.contents-box .contents-link:hover {
	opacity: 0.7;
}

.contents-box .contents-img {
	width: 100%;
	height: 25vw;
}

.contents-box .contents-data {
	position: relative;
	height: 18vw;
}

.contents-box .contents-item:nth-child(odd) .contents-data {
	background-color: #F7F7F7;
}

.contents-box .contents-data .title {
	font-family: 'nserif-l', serif;
	font-size: 1.6vw;
	letter-spacing: 0.15em;
	padding: 2.5vw 2.5vw 0;
	margin-bottom: 1.6vw;
	line-height: 1.3;
}

.contents-box .contents-data .text {
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 2vw;
	padding: 0 2.5vw 0;
}

.contents-box .contents-data .more {
	position: absolute;
	bottom: 10px;
	right: 0;
	padding-right: 2.5vw;
	font-family: 'roboto-m', sans-serif;
	font-size: 1vw;
	color: #636363;
}

.contents-box .contents-data .more:before {
	content: "+";
	font-family: 'roboto-m', sans-serif;
	font-size: 1.6vw;
	float: right;
	padding: 0 5px 0 0;
	position: absolute;
	right: 3px;
	top: -0.4vw;
}

.contents-box .contents-data .more:after {
	content: '';
	width: 100%;
	height: 5px;
	background: #636363;
	display: block;
	position: absolute;
	bottom: -10px;
	right: 0;
}

/* =====================
	contents-box for sp
===================== */

@media all and (max-width:799px) {
	.contents-box {
		/*margin-bottom: 60px;*/
	}
	.contents-box .contents-list {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.contents-box .contents-list.nomargin {
		margin: 0;
	}
	.contents-box .contents-list.contents-list-2col .contents-item {
		width: 50%;
	}
	.contents-box .contents-list.contents-list-3col .contents-item {
		width: 50%;
	}
	.contents-box .contents-list.contents-list-4col .contents-item {
		width: 50%;
	}
	.contents-box .contents-item:nth-child(1), .contents-box .contents-item:nth-child(4), .contents-box .contents-item:nth-child(5) {
		border-bottom: 4px solid #C6C6C6;
	}
	.contents-box .contents-item:nth-child(2), .contents-box .contents-item:nth-child(3), .contents-box .contents-item:nth-child(6) {
		border-bottom: 4px solid #E0E0E0;
	}
	.contents-box .contents-item:nth-child(1) .contents-data, .contents-box .contents-item:nth-child(4) .contents-data, .contents-box .contents-item:nth-child(5) .contents-data {
		background-color: #F7F7F7;
		position: relative;
	}
	.contents-box .contents-item:nth-child(2) .contents-data, .contents-box .contents-item:nth-child(3) .contents-data, .contents-box .contents-item:nth-child(6) .contents-data {
		background-color: #fff;
	}
	.contents-box .contents-img {
		width: 100%;
		height: 42vw;
	}
	.contents-box .contents-data .title {
		font-size: 18px;
		letter-spacing: 0.15em;
		padding: 5vw 4vw 0;
		margin-bottom: 1.6vw;
	}
	.contents-box .contents-data .text {
		position: absolute;
		bottom: 6.6vw;
		font-size: 12px;
		line-height: 24px;
		/*height: 8.2vw;*/
		overflow: hidden;
		letter-spacing: 0.1em;
		padding: 0 4vw;
	}
	.contents-box .contents-data .more {
		right: 0;
		bottom: 2vw;
		padding-right: 6vw;
		font-family: 'roboto-b', sans-serif;
		font-size: 2.6vw;
	}
	.contents-box .contents-data .more:before {
		content: "+";
		font-family: 'rooto-b', sans-serif;
		font-size: 2.6vw;
		padding: 0 8px 0 0;
		right: 0;
		bottom: 0.4vw;
	}
	.contents-box .contents-data .more:after {
		display: none;
	}
}

@media all and (min-width:660px) and (max-width:799px) {
	.contents-box .contents-data {
		height: 30vw;
	}
}

@media all and (min-width:500px) and (max-width:659px) {
	.contents-box .contents-data {
		height: 40vw;
	}
}

@media all and (max-width:499px) {
	.contents-box .contents-data {
		height: 64vw;
	}
}




/* =====================
	vertical-table
===================== */

.vertical-table .table-headline {
	font-family: 'nserif-l', serif;
	font-size: 30px;
	letter-spacing: 0.1em;
	margin: 3.3vw 0;
	text-align: center;
}

.vertical-table .table-body {
	width: 1000px;
	display: block;
	margin: 0 auto 8.3vw;
	border-top: 5px solid #636363;
	border-bottom: 5px solid #636363;
}

.vertical-table .table-body .th.strong {
	font-size: 18px;
	font-family: 'nsans-r',serif;
}
.vertical-table .table-body .td.strong {
	font-size: 18px;
	font-family: 'nsans-r',serif;
}

.vertical-table .table-body .tr {
	display: table;
	width: 100%;
	height: 8.3vw;
	border-bottom: 1px solid rgba(135, 135, 135, 0.3);
}

.vertical-table .table-body .tr.gray {
	background-color: #F9F9F9;
}

.vertical-table.equal .table-body .tr {
	table-layout: fixed;
}

.vertical-table .table-body .tr:nth-child(odd) {
	background-color: #F9F9F9;
}

.vertical-table .table-body .th {
	font-family: "lato-m", 'nscjk-b', sans-serif;
	font-size: 16px;
	line-height: 40px;
	letter-spacing: 0.1em;
	width: 25%;
	text-align: center;
	border-right: 1px solid rgba(135, 135, 135, 0.3);
	display: table-cell;
	vertical-align: middle;
}

.vertical-table .table-body .th.empty {
	text-indent: -9999px;
}

.vertical-table.equal .table-body .th {
	width: auto;
}

.vertical-table .table-body .td {
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 24px;
	letter-spacing: 0.1em;
	width: 75%;
	display: table-cell;
	padding-left: 2.9vw;
	vertical-align: middle;
	padding: 3.3vw;
}

.vertical-table.equal .table-body .td {
	width: auto;
	text-align: center;
}

.vertical-table .table-body .td span.num {
	font-size: 30px;
	font-family: 'humnst', sans-serif;
}

.vertical-table .table-body .td.t-left {
	text-align: left;
}

.vertical-table .table-body .td a {
	text-decoration: underline;
}

.vertical-table .table-body .td ol {
	padding-left: 20px;
}

.vertical-table .table-body .td .square {
	list-style-type: square;
	padding-left: 20px;
}

.vertical-table .remarks {
	max-width: 1000px;
	margin: 40px auto;
	padding: 35px 20px 35px 30px;
	background-color: #f5f5f5;
}

.vertical-table .remarks-list {
	font-family: 'nsans-r', serif;
	font-size: 14px;
	line-height: 22px;
}

.vertical-table .remarks-item {
	position: relative;
	padding-left: 20px;
	margin-bottom: 20px;
}

.vertical-table .remarks-item:last-child {
	margin-bottom: 0;
}

.vertical-table .remarks-item:before {
  content: "※";
  color: #27ada3;
  font-family: 'nsans-r',serif;
	font-size: 14px;
  position: absolute;
  left: 0;
  top: 0;
}

/* =====================
	vertical-table for tablet
===================== */
@media all and (min-width:800px) and (max-width:1200px) {
	.vertical-table .table-body {
		max-width: 100%;
	}

	.vertical-table .table-headline {
		font-size: 2.5vw;
	}

	.vertical-table .table-body .th {
		font-size: 1.3vw;
		line-height: 2vw;
	}

	.vertical-table .table-body .td {
		font-size: 1.1vw;
		line-height: 2vw;
	}
}

@media all and (min-width:800px) {
	.vertical-table {
		margin: 60px 6.6vw;
	}
}


/* =====================
	vertical-table for sp
===================== */

@media all and (max-width:799px) {
	.vertical-table {
		margin: 0 5.3vw;
	}
	.vertical-table .table-headline {
		background-color: #636363;
		color: #fff;
		font-size: 3.7vw;
		padding: 5.3vw 0;
	}
	.vertical-table .table-body {
		width: 100%;
		border: 0;
	}
	.vertical-table .table-body .tr:nth-child(odd) {
		background-color: #FCFCFC;
	}
	.vertical-table .table-body .tr {
		display: block;
		height: auto;
		margin-top: 2.6vw;
		border-bottom: 0;
		padding-bottom: 20px;
		background-color: #FCFCFC;
	}
	.vertical-table .table-body .th {
		display: block;
		width: 100%;
		padding: 5.3vw 0;
		font-size: 3.7vw;
		border-top: 5px solid #636363;
		border-bottom: 1px solid rgba(135, 135, 135, 0.3);
		border-right: 0;
		background-color: #F9F9F9;
		line-height: 1;
	}
	.vertical-table .table-body .td {
		display: block;
		width: 100%;
		padding-left: 0;
		padding: 5.3vw 1.0vw;
		/*180629 padding: 5.3vw 6.6vw;*/
		text-align: center;
		background-color: #FCFCFC;
		font-size: 3vw;
		/*180629 font-size: 3.2vw; */
		line-height: 5.8vw;
	}
	.vertical-table .table-body .td span.num {
		font-size: 9.6vw;
	}
	.vertical-table .table-body .tr.sp-none {
		display: none;
	}
	.vertical-table .table-body .td span.head{
		display: block;
		margin-bottom: 10px;
		font-size: 16px;
	}
	.vertical-table .table-body .td span.head.pdf{
		position: relative;
		top: 20px;
	}
	.vertical-table .table-body .td span.num-right {
		text-align: left;
		float: right;
		padding-right: 50px;
		min-width: 120px;
	}
	.vertical-table .table-body .td span.head{
		display: inline-block;
		text-align: right;
		float: left;
		min-width: 120px;
	}
}

/* =====================
	horizontal-table
===================== */

.horizontal-table {}

	.horizontal-table .table-headline {
		font-family: 'nserif-l', serif;
		font-size: 30px;
		letter-spacing: 0.1em;
		margin-bottom: 3.3vw;
		text-align: center;
		padding-top: 80px;
	}

.horizontal-table .table-body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}

.horizontal-table .table-body .tc {
	min-width: 200px;
	width: 100%;
	border-right: 1px solid rgba(135, 135, 135, 0.3);
	border-top: 5px solid #636363;
	border-bottom: 5px solid #636363;
	flex-grow: 1;
}

.horizontal-table .table-body .tc:last-child {
	border-right: none;
}

.horizontal-table .table-body .th {
	font-family: 'nscjk-b', sans-serif;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 0.5em;
	padding: 2.9vw 0;
	border-bottom: 1px solid rgba(135, 135, 135, 0.3);
	background-color: #F9F9F9;
}

.horizontal-table .table-body .th.empty {
	color: #F9F9F9;
	text-indent: -9999px;
}

.horizontal-table .table-body .td {
	padding: 2.3vw 1.5vw;
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 24px;
	background-color: #fff;
	overflow: hidden;
}

 .horizontal-table .table-body .th-left {
	 min-height: 4.4vw;
	 font-size: 16px;
	 font-weight: bold;
	 font-family: 'nscjk-b', sans-serif;
 }

.horizontal-table .table-body .tc .td:nth-child(odd) {
	background-color: #F9F9F9;
}

.horizontal-table .table-body .td.t-left {
	text-align: left;
}

.horizontal-table .table-body .td .square {
	list-style-type: square;
	padding-left: 20px;
}

.horizontal-table .table-body .td .text {
	letter-spacing: 0;
	font-size: 14px;
}

.horizontal-table .table-body .td.pdf {
	text-align: center;
}

.horizontal-table .table-body .td .pdf-link {
	display: inline-block;
	text-align: center;
}

.horizontal-table .table-body .td .pdf-link:first-child {
	margin-right: 20px;
}

.horizontal-table .table-body .td .pdf-icon {
	display: block;
	width: 40px;
	height: 50px;
}

.horizontal-table .table-body .td span.num {
	font-size: 36px;
	font-family: 'humnst', sans-serif;
}

.horizontal-table .remarks {
	max-width: 1000px;
	margin: 40px auto;
	padding: 35px 20px 35px 30px;
	background-color: #f5f5f5;
}

.horizontal-table .remarks-list {
	font-family: 'nsans-r', serif;
	font-size: 14px;
	line-height: 22px;
}

.horizontal-table .remarks-item {
	position: relative;
	padding-left: 20px;
}

.horizontal-table .remarks-item:before {
  content: "※";
  color: #27ada3;
  font-family: 'nsans-r',serif;
	font-size: 14px;
  position: absolute;
  left: 0;
  top: 0;
}
/* =====================
	horizontal-table for tablet
===================== */
@media all and (min-width:800px) and (max-width:1200px) {
	.horizontal-table {
		margin: 0 6.6vw;
	}

	.horizontal-table .table-headline {
		font-size: 2.5vw;
	}

	.horizontal-table .table-body {
		max-width: 100%;
	}

	.horizontal-table .table-body .tc {
		min-width: 16vw;
	}

	.horizontal-table .table-body .th {
		font-size: 1.3vw;
	}

	.horizontal-table .table-body .td {
		font-size: 1.1vw;
		line-height: 2vw;
	}

	.horizontal-table .table-body .td .text {
		font-size: 1.1vw;
	}

	.horizontal-table .table-body .td .pdf-icon {
		width: 4.2vw;
		height: 5.5vw;
	}

	.horizontal-table .table-body .td span.num {
		font-size: 3vw;
	}
}

/* =====================
	horizontal-table for sp
===================== */

@media all and (max-width:799px) {
	.horizontal-table {
		margin: 0 5.3vw;
	}
	.horizontal-table .table-headline {
		background-color: #636363;
		color: #fff;
		font-size: 3.7vw;
		padding: 5.3vw 0;
	}
	.horizontal-table.table-headline {
		background-color: #636363;
		color: #fff;
		font-size: 3.7vw;
		padding: 5.3vw 0;
	}
	.horizontal-table .table-body {
		width: 100%;
		display: block;
		border: 0;
		margin: 0;
	}
	.horizontal-table .table-body .tc {
		width: 100%;
		max-width: 100%;
		height: auto;
		margin-top: 2.6vw;
		border-bottom: 0;
		border-right: 0;
		border-top: 0;
	}
	.horizontal-table .table-body .th {
		display: block;
		width: 100%;
		padding: 5.3vw 0;
		font-size: 3.7vw;
		border-top: 5px solid #636363;
		border-bottom: 1px solid rgba(135, 135, 135, 0.3);
		border-right: 0;
		background-color: #F9F9F9;
		line-height: 1;
	}
	.horizontal-table .table-body .td {
		display: block;
		width: 100%;
		padding-left: 0;
		padding: 5.3vw 6.6vw;
		text-align: center;
		background-color: #FCFCFC;
		font-size: 3.2vw;
		line-height: 5.8vw;
	}
	.horizontal-table .table-body .tc .td:nth-child(odd) {
		background-color: #FCFCFC;
	}
	.horizontal-table .table-body .td span.head{
		display: inline-block;
		text-align: right;
		float: left;
		min-width: 120px;
	}
	.horizontal-table .table-body .td .pdf-icon {
		width: 10vw;
		height: 13vw;
		height: auto;
	}
	.horizontal-table .table-body .td .pdf-link:first-child {
		margin-right: 10vw;
	}
	.horizontal-table .table-body .td span.num {
		display: inline-block;
		font-size: 9.6vw;
	}
	.horizontal-table .table-body .td span.num-right {
		text-align: left;
		float: right;
		padding-right: 50px;
		min-width: 120px;
	}
	.horizontal-table .remarks {
		padding: 4vw 10px 4vw 20px;
		;margin: 30px auto 25px;
	}
}

/* =====================
  lead
===================== */

.lead{
	padding: 0;
}
.lead .inner {
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0vw 80px;
}
.lead .title {
	border-top: 2px solid #25925f;
	border-bottom: 2px solid #25925f;
	margin: 0 auto;
	padding: 15px 0 18px;
	font: 32px/1.3em 'nserif-l', 'nscjk-m', serif;
	text-align: center;
	position: relative;
	color: #25925f;
	display: inherit;
	width: 100%;
}
.lead .title span {
	font: 20px/1em 'lato', serif;
	font-weight: bold;
	display: block;
	position: absolute;
	left: 50%;
	top: -14px;
	letter-spacing: 3px;
	background-color: #fff;
	padding: 0 5px;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
}
.lead .title span small {
	font: 14px/1em 'lato', serif !important;
	display: inline;
	padding: 0;
	margin: 0;
	background: transparent;
	text-transform: uppercase;
}
.lead.hasbg .title span, .lead.hasbg {
	background-color: #e9f4ef;
}
.lead .content {
	margin: 4vw auto 0;
}
.lead .text {
	font: 14px/1.6em 'nsans-r', sans-serif;
	color: #4c4c4c;
	text-align: center;
	padding-top: 2%;
}

/*.lead {
	text-align: center;
	padding: 110px 0 100px;
	background-color: #e9f4ef;
	color: #25925f;
}

.lead .inner {
	width: 1000px;
	margin: 0 auto;
}

.lead .title {
	font-family: 'nserif-l', 'nscjk-m', serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.15em;
	position: relative;
	margin: 50px auto 100px;
}

.lead .text {
	font-family: 'nsans-r', sans-serif;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.1em;
	margin-top: 40px;
}
.lead .title:before {
	content: "";
	position: absolute;
	top: -50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #25925f;
}
.lead .title:after {
	content: "";
	position: absolute;
	bottom: -50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #25925f;
}*/

/* =====================
  lead for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.lead .inner {
		padding: 80px 5vw 60px;
	}
}

/*@media all and (min-width:800px) and (max-width:1200px) {
	.lead .inner {
		padding: 0 8.3vw;
	}
	.lead .inner {
		width: 100%;
	}
	.lead .title {
		font-size: 2.9vw;
	}
	.lead .text {
		font-size: 1.3vw;
		line-height: 1.8vw;
		margin-top: 3.3vw;
	}
}*/

/* =====================
  lead for sp
===================== */
@media all and (max-width:800px) {
	.lead .inner {
		padding: 100px 2vw 80px;
		width: 100%;
		/*margin-bottom: 80px;*/
		text-align: center;
	}
	.lead .title {
		display: inline-block;
		font-size: 5.8vw;
		line-height: 50px;
		padding: 30px 0 33px;
	}
	.lead .title span {
		font-size: 20px;
		height: 20px;
		top: -18px;
	}
	.lead .title span small {
		font-size: 12px !important;
	}
	.lead .content {
		min-width: 720px;
		margin-top: 50px;
	}
	.lead .text {
		font-size: 14px;
		line-height: 2;
		text-align: center;
	}
}

/*@media all and (max-width:799px) {
	.lead {
		padding: 60px 20px 50px;
	}
	.lead .inner {
		padding: 0;
		width: 100%;
	}
	.lead .title {
		font-size: 25px;
		letter-spacing: 0.1em;
		line-height: 35px;
	margin-top: 30px;
	margin-bottom: 50px;
	}
	.lead .text {
		font-size: 12px;
		line-height: 22px;
		letter-spacing: 0.1em;
		margin-top: 25px;
	}

.lead .title:before {
	top: -30px;
}
.lead .title:after {
	bottom: -30px;
}
}*/

/* =====================
  headline01
===================== */


.headline01 {
	text-align: center;
	padding: 100px 60px 100px;
	position: relative;
	background-color: #f6f6f6;
	color: #333;
}
.headline01:first-of-type {
	padding: 120px 60px 120px;
	background-color: #e9f4ef;
	color: #25925f;
}

.headline01 .inner {
	width: 1000px;
	margin: 0 auto;
}

.headline01.border {
	/*border-top: 8px solid #F9F9F9;*/
	/*border-bottom: 8px solid #F9F9F9;*/
	padding: 90px 0;
}

.headline01.border:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
/*	border-top: 1px solid #E5E5E5;
	border-bottom: 1px solid #E5E5E5;*/
}

.headline01 .title {
	font-family: 'nserif-l', 'nscjk-m', serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.15em;


}
.headline01:first-of-type .title {
	margin-bottom: 50px;
	position: relative;
	margin: 50px auto;
}
.headline01:first-of-type .title:before {
	content: "";
	position: absolute;
	top: -50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #25925f;
}
.headline01:first-of-type .title:after {
	content: "";
	position: absolute;
	bottom: -50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #25925f;
}

.headline01 .text {
	font-family: 'roboto-b', sans-serif;
	margin-top: 10px;
	font-size: 12px;
	letter-spacing: 0.2em;
	display: none;
}

.headline01 .sentense {
	font-family: 'nsans-r', sans-serif;
	margin-top: 40px;
	font-size: 14px;
	line-height: 22px;
	letter-spacing: 0.2em;
}

/* =====================
  headline01 for table
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.headline01 {
		padding: 10vw 2vw 10vw;
	}
	.headline01 .inner {
		width: 100%;
	}
	.headline01.border {
		padding: 5vw 0;
	}

	.headline01 .title {
		font-size: 2.5vw;
	}

	.headline01 .text {
		margin-top: 10px;
		font-size: 1vw;
	}

	.headline01 .sentense {
		margin-top: 3.3vw;
		font-size: 1.1vw;
		line-height: 1.8vw;
	}
}

/* =====================
  headline01 for sp
===================== */

@media all and (max-width:799px) {
	.headline01 {
		text-align: center;
		padding: 50px 15px 45px;
		position: relative;
	}
	.headline01 .inner {
		width: 100%;
	}
	.headline01.border {
		border-top: 8px solid #F9F9F9;
		border-bottom: 8px solid #F9F9F9;
		padding: 35px 0;
	}
	.headline01 .title {
		font-size: 5.2vw;
		/*180629 font-size: 18px;*/
	}
	.headline01:first-of-type {
		padding: 50px 15px 45px;
}
	.headline01:first-of-type .title {
		margin-top: 30px;
		margin-bottom: 30px;
	}

	.headline01:first-of-type .title:before {
		top: -30px;
	}
	.headline01:first-of-type .title:after {
		bottom: -30px;
	}
	.headline01 .text {
		font-size: 10px;
	}
	.headline01 .sentense {
		margin-top: 20px;
		font-size: 12px;
		line-height: 14px;
	}
}

/* =====================
  headline02
===================== */

.headline02 {
	margin: 90px 0 80px;
	text-align: center;
}

.headline02 .inner {
	position: relative;
	width: 1000px;
	margin: 0 auto;
}

.headline02 .title {
	position: relative;
	z-index: 10;
	font-family: 'nserif-l', serif;
	font-size: 22px;
	line-height: 40px;
	letter-spacing: 0.2em;
	padding: 70px 0;
	border-top: 1px solid #cacaca;
	border-bottom: 1px solid #cacaca;
}

.headline02 .image-box {
	position: absolute;
	z-index: 5;
	bottom: 0;
	right: 0;
	width: 270px;
	height: 180px;
}

/* =====================
  headline02 for tablet
===================== */
@media all and (min-width:800px) and (max-width:1200px) {
	.headline02 {
		margin: 7.5vw 6.6vw;
	}

	.headline02 .inner {
		width: 100%;
	}

	.headline02 .title {
		font-size: 1.8vw;
		line-height: 3.3vw;
		padding: 5vw 0;
	}

	.headline02 .image-box {
		width: 22.5vw;
		height: 15vw;
	}
}

/* =====================
  headline02 for sp
===================== */

@media all and (max-width:799px) {
	.headline02 {
		margin: 45px 20px 25px;
		text-align: center;
	}
	.headline02 .inner {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
	.headline02 .title {
		font-size: 18px;
		line-height: 26px;
		letter-spacing: 0.2em;
		margin-bottom: 40px;
		padding: 35px 0;
	}
	.headline02-image .title {
		font-size: 16px;
	}
	.headline02 .image-box {
		display: none;
	}
}

/* =====================
  col-contents01
===================== */

.col-contents01 {
	margin: 80px 0 70px;
}

.col-contents01 .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

.col-contents01 .text {
	width: 565px;
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.1em;
}

.col-contents01 .remarks {
	padding-top: 30px;
	clear: both;
	color: #E83828;
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 30px;
}

.col-contents01 .image-box {
	width: 380px;
	height: 235px;
}


/* =====================
  col-contents01 for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.col-contents01 {
		margin: 6.6vw 0 5.8vw;
	}

	.col-contents01 .inner {
		width: 100%;
		padding: 0 8.3vw;
	}

	.col-contents01 .text {
		width: 47vw;
		font-size: 1.1vw;
		line-height: 2.5vw;
	}

	.col-contents01 .remarks {
		font-size: 1.1vw;
		line-height: 2.5vw;
	}

	.col-contents01 .image-box {
		width: 31vw;
		height: 19.5vw;
	}
}

/* =====================
  col-contents01 for sp
===================== */

@media all and (max-width:799px) {
	.col-contents01 {
		margin: 40px 0 35px;
		padding: 0 20px;
	}
	.col-contents01 .inner {
		width: 100%;
	}
	.col-contents01 .text {
		width: 100%;
		font-family: 'nsans-r', sans-serif;
		font-size: 12px;
		line-height: 20px;
		letter-spacing: 0.1em;
		margin: 25px 0 35px;
	}
	.col-contents01 .remarks {
		padding-top: 0;
		font-size: 12px;
		line-height: 20px;
	}
	.col-contents01 .image-box {
		width: 100%;
		height: 53vw;
	}
}

/* =====================
  sentense
===================== */

.sentense {
	margin: 80px 0 90px;
}

.sentense .inner {
	width: 1000px;
	margin: 0 auto;
}

.sentense .text {
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 30px;
	text-align: left;
}

.sentense .text.center {
	text-align: center;
}

.sentense .text.pdf {
	position: relative;
	margin-bottom: 20px;
}

.sentense .text.pdf img {
	position: relative;
	top: 16px;
	left: 16px;
	height: 50px;
}

/* =====================
  sentense for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.sentense {
		margin: 6.6vw 0 5.8vw;
	}

	.sentense .inner {
		width: 100%;
		padding: 0 8.3vw;
	}

	.sentense .text {
		font-size: 1.1vw;
		line-height: 2.5vw;
	}
}

/* =====================
  sentense for sp
===================== */

@media all and (max-width:799px) {
	.sentense {
		margin: 40px 20px 45px;
	}
	.sentense .inner {
		width: 100%;
	}
	.sentense .text {
		font-size: 12px;
		line-height: 20px;
	}
}

/* =====================
  image-contents
===================== */

.image-contents {
	width: 100%;
	margin: 90px 0;
}

.image-contents .image-box {
	width: 100%;
	height: 350px;
}

/* =====================
  image-contents for sp
===================== */

@media all and (max-width:799px) {
	.image-contents {
		margin: 45px 0;
	}
	.image-contents .image-box {
		width: 100%;
		height: 53vw;
	}
}

/* =====================
  col-contents02
===================== */

.col-contents02 {
	margin: 90px 0;
}

.col-contents02 .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

.col-contents02 .image-box {
	width: 465px;
	height: 500px;
}

.col-contents02 .text-box {
	width: 465px;
}


.col-contents02 .text-box　p {
    font-family: 'nsans-r', sans-serif;
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 0.1em;
}

.col-contents02 .title {
	position: relative;
	z-index: 10;
	font-family: 'lato', 'nscjk-m', serif;
	font-size: 25px;
	font-weight: 400;
	line-height: 40px;
	letter-spacing: 0.1em;
	padding: 50px 0;
	margin-bottom: 70px;
	text-align: center;
	border-top: 1px solid #cacaca;
	border-bottom: 1px solid #cacaca;
}

.col-contents02 .text {
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.1em;
}

.col-contents02 .text strong {
	font-family: 'nsans-b', sans-serif;
}

.col-contents02 .under-text {
	clear: both;
	font-family: 'nsans-r', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.1em;
}


/* =====================
  col-contents02 for tablet
===================== */
@media all and (min-width:800px) and (max-width:1200px) {
	.col-contents02 {
		margin: 7.5vw 0;
	}

	.col-contents02 .inner {
		width: 100%;
		padding: 0 8.3vw;
	}

	.col-contents02 .image-box {
		width: 38vw;
		height: 41.6vw;
	}

	.col-contents02 .text-box {
		width: 38vw;
	}

	.col-contents02 .title {
		font-size: 1.8vw;
		line-height: 3.3vw;
		padding: 5.8vw 0;
		margin-bottom: 5.8vw;
	}

	.col-contents02 .text {
		font-size: 1.3vw;
		line-height: 2.5vw;
	}

	.col-contents02 .under-text {
		font-size: 1.1vw;
		line-height: 2.5vw;
	}
}

/* =====================
  col-contents02 for sp
===================== */

@media all and (max-width:799px) {
	.col-contents02 {
		/*margin: 45px 15px;*/
		padding: 45px 15px;
	}
	.col-contents02 .inner {
		width: 100%;
	}
	.col-contents02 .image-box {
		width: 100%;
		height: 100vw;
	}
	.col-contents02 .text-box {
		width: 100%;
	}
	.col-contents02 .title {
		font-family: 'nserif-l', serif;
		font-size: 16px;
		line-height: 26px;
		letter-spacing: 0.2em;
		padding: 35px 0;
		margin-bottom: 40px;
	}
	.col-contents02 .text {
		font-size: 12px;
		line-height: 20px;
		letter-spacing: 0.1em;
		margin-bottom: 35px;
	}
	.col-contents02 .under-text {
		font-size: 12px;
		line-height: 20px;
		letter-spacing: 0.1em;
		margin-top: -45px;
		margin-bottom: 35px;
	}
}

/* =====================
  col-contents03
===================== */

.col-contents03 {
	background-color: #fff;
}

.col-contents03.gray {
	background-color: #F9F9F9;
}

.col-contents03 .inner {
	width: 1200px;
	margin: 0 auto;
	overflow: hidden;
}

.col-contents03 .text-box {
	width: 465px;
	margin: 120px 0 0;
	font-family: 'nscjk-m', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.1em;
}

.col-contents03 .text-box.left {
	margin-left: 70px;
}

.col-contents03 .text-box.right {
	margin-right: 70px;
}

.col-contents03 .title {
	position: relative;
	width: 100%;
	font-family: 'nserif-l', serif;
	font-size: 30px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

.col-contents03 .title:before {
	position: absolute;
	top: 14px;
	left: 130px;
	content: '';
	width: 60%;
	height: 1px;
	background-color: #cacaca;
}

.col-contents03 .subtitle {
	font-family: 'nserif-l', serif;
	font-size: 25px;
    line-height: 40px;
	margin-bottom: 70px;
    padding: 50px 0;
    letter-spacing: 0.1em;
    border-top: 1px solid #cacaca;
    border-bottom: 1px solid #cacaca;
    text-align: center;
}
.col-contents03 .text {
	margin-bottom: 20px;
}

.col-contents03 .list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #fff;
	margin-bottom: 20px;
}

.col-contents03 .list.gray {
	background: #F9F9F9;
}

.col-contents03 .item {
	padding: 15px 20px;
}

.col-contents03 .image-box {
	width: 600px;
	height: 768px;
}

/* =====================
  col-contents03 for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.col-contents03 .inner {
		width: 100%;
	}

	.col-contents03 .text-box {
		width: 38vw;;
		margin: 10vw 0 0;
		font-size: 1.3vw;
		line-height: 2.5vw;
	}

	.col-contents03 .text-box.left {
		margin-left: 5.8vw;
	}

	.col-contents03 .text-box.right {
		margin-right: 5.8vw;
	}

	.col-contents03 .title {
		font-size: 2.5vw;
		margin-bottom: 1.6vw;
	}

	.col-contents03 .title:before {
		top: 1.1vw;
		left: 10vw;
		width: 60%;
	}

	.col-contents03 .subtitle {
		font-size: 1.8vw;
		margin-bottom: 5.8vw;
	}

	.col-contents03 .text {
		margin-bottom: 1.6vw;
	}

	.col-contents03 .list {
		margin-bottom: 1.6vw;
	}

	.col-contents03 .item {
		padding: 1.25vw 1.6vw;
	}

	.col-contents03 .image-box {
		width: 50vw;
		height: 64vw;
	}
}

/* =====================
  col-contents03 for sp
===================== */

@media all and (max-width:799px) {
	.col-contents03 {
		width: 100%;
	}
	.col-contents03.gray {
		background-color: #F9F9F9;
	}
	.col-contents03 .inner {
		width: 100%;
	}
	.col-contents03 .text-box {
		width: 100%;
		padding: 0 20px;
		font-size: 12px;
		line-height: 20px;
		margin-top: 0;
	}
	.col-contents03 .text-box.left {
		margin-left: 0px;
	}
	.col-contents03 .text-box.right {
		margin-right: 0px;
	}
	.col-contents03 .title {
		font-size: 25px;
		margin: 45px 0 10px;
	}
	.col-contents03 .title:before {
		top: 12px;
		left: 110px;
	}
	.col-contents03 .subtitle {
		font-size: 14px;
		margin-bottom: 35px;
	}
	.col-contents03 .text {
		margin-bottom: 20px;
	}
	.col-contents03 .list {
		/* Safari */
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		background: #fff;
		margin-bottom: 20px;
		padding: 20px 20px 0px 20px;
	}
	.col-contents03 .list.gray {
		background: #F9F9F9;
	}
	.col-contents03 .item {
		padding: 0;
		padding-bottom: 15px;
	}
	.col-contents03 .image-box {
		width: 100%;
		height: 80vw;
	}
}

/* =====================
  col-contents04
===================== */

.col-contents04 {
	background-color: #fff;
	padding: 100px 0;
}

.col-contents04.gray {
	background-color: #F9F9F9;
}

.col-contents04 .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

.col-contents04 .text-box {
	width: 465px;
	font-family: 'lato', 'nscjk-m', sans-serif;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.1em;
}

.col-contents04 .title {
	position: relative;
	display: inline-block;
	font-family: 'nserif-l', serif;
	font-size: 30px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

.col-contents04 .title:before {
	position: absolute;
	top: 14px;
	right: -60%;
	content: '';
	width: 55%;
	height: 1px;
	background-color: #cacaca;
}

.col-contents04 .subtitle {
	font-family: 'nserif-l', serif;
	font-size: 22px;
	margin-bottom: 70px;
}

.col-contents04 .text {
	margin-bottom: 20px;
}

.col-contents04 .list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #fff;
	margin-bottom: 20px;
}

.col-contents04 .list.gray {
	background: #F9F9F9;
}

.col-contents04 .item {
	padding: 15px 20px;
}

/* =====================
  col-contents04 for tablet
===================== */
@media all and (min-width:800px) and (max-width:1200px) {
	.col-contents04 {
		padding: 8.3vw 0;
	}

	.col-contents04 .inner {
		width: 100%;
		padding: 0 8.3vw;
	}

	.col-contents04 .text-box {
		width: 38vw;
		font-size: 1.1vw;
		line-height: 2.5vw;
	}

	.col-contents04 .title {
		font-size: 2.5vw;
		margin-bottom: 1.6vw;
	}

	.col-contents04 .title:before {
		top: 1.1vw;
	}

	.col-contents04 .subtitle {
		font-size: 1.8vw;
		margin-bottom: 5.3vw;
	}

	.col-contents04 .text {
		margin-bottom: 1.6vw;
	}

	.col-contents04 .list {
		margin-bottom: 1.6vw;
	}

	.col-contents04 .item {
		padding: 1.25vw 1.6vw;
	}
}

/* =====================
  col-contents04 for sp
===================== */

@media all and (max-width:799px) {
	.col-contents04 {
		width: 100%;
		padding: 45px 20px;
	}
	.col-contents04 .inner {
		width: 100%;
	}
	.col-contents04 .text-box {
		width: 100%;
		padding: 0;
		font-size: 12px;
		line-height: 20px;
		margin-top: 0;
	}
	.col-contents04 .title {
		font-size: 25px;
		margin: 0 0 10px;
	}
	.col-contents04 .title:before {
		top: 12px;
	}
	.col-contents04 .subtitle {
		font-size: 14px;
		margin-bottom: 35px;
	}
	.col-contents04 .text {
		margin-bottom: 20px;
	}
	.col-contents04 .list {
		/* Safari */
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		background: #fff;
		margin-bottom: 20px;
		padding: 20px 20px 0px 20px;
	}
	.col-contents04 .list.gray {
		background: #F9F9F9;
	}
	.col-contents04 .item {
		padding: 0;
		padding-bottom: 15px;
	}
}

/* =====================
  headline03
===================== */

.headline03 {
	position: relative;
	width: 100%;
	height: 350px;
	margin: 100px 0 90px;
	text-align: center;
	color: #fff;
}

.headline03 .inner {}

.headline03 .headline {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: auto;
	height: 60px;
}

.headline03 .title {
	font-family: 'nserif-l', serif;
	font-size: 30px;
}

.headline03 .subtitle {
	margin-top: 10px;
	font-family: 'humnst', serif;
	font-size: 12px;
	letter-spacing: 0.5em;
}

/* =====================
  headline03 for sp
===================== */

@media all and (max-width:799px) {
	.headline03 {
		height: 200px;
		margin: 45px 0;
	}
	.headline03 .headline {
		height: 50px;
	}
	.headline03 .title {
		font-size: 30px;
	}
	.headline03 .subtitle {
		font-size: 10px;
		letter-spacing: 0.35em;
	}
}

/* =====================
  headline04
===================== */

.headline04 {
	margin: 90px 0 80px;
	text-align: center;
}

.headline04 .inner {
	position: relative;
	width: 1000px;
	margin: 0 auto;
}

.headline04 .title {
	position: relative;
	z-index: 10;
	font-family: 'nserif-l', serif;
	font-size: 22px;
	line-height: 40px;
	letter-spacing: 0.2em;
	padding: 70px 0;
}

.headline04 .image-box {
	position: absolute;
	z-index: 5;
	bottom: 0;
	right: 0;
	width: 270px;
	height: 180px;
}
/* =====================
  headline04 for sp
===================== */

@media all and (max-width:799px) {
	.headline04 {
		height: 200px;
		margin: 45px 0;
	}
	.headline04 .headline {
		height: 50px;
	}
	.headline04 .title {
		font-size: 30px;
	}
	.headline04 .subtitle {
		font-size: 10px;
		letter-spacing: 0.35em;
}
}

/* =====================
  headline05
===================== */
.headline05 {
	margin: 10px 0;
}

.headline05 .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
.headline05 .title{
	font: normal 22px/1 'NotoSansJP-Medium', sans-serif;
	letter-spacing: .04em;
	padding-left: 30px;
/* margin-bottom: 100px; */
	border-left: 10px solid #25925f;
}
/* =====================
  headline05 for tablet
===================== */
@media (max-width: 1200px) and (min-width: 800px){
.headline05 .inner {
	width: 100%;
	padding: 0 8.3vw;
	}
.headline05 .title{
	font-size: 1.6vw;
	}
}
/* =====================
  headline05 for sp
===================== */
@media (max-width: 799px){
.headline05 .inner {
	 width: 100%;
	 padding: 0 4.3vw;
	}
.headline05 .title{
	font-size: 16px;
	}
}


/* =====================
  col-contents05
===================== */

.col-contents05 {
	margin: 90px 0;
}

.col-contents05 .inner {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

.col-contents05 .image-box {
	width: 380px;
	height: 600px;
}

.col-contents05 .subtitle {
	position: relative;
	font-family: 'nserif-l', serif;
	font-size: 18px;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
	padding-top: 45px;
}

.col-contents05 .subtitle:before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 40px;
	height: 4px;
	background-color: #25925f;
}

.col-contents05 .title {
	position: relative;
	font-family: 'nserif-l', serif;
	font-size: 24px;
	line-height: 34px;
	letter-spacing: 0.15em;
	padding-bottom: 45px;
}

.col-contents05 .title:after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	width: 40px;
	height: 1px;
	background-color: #8E8E8E;
}

.col-contents05 .text {
	width: 548px;
	font-family: 'lato','nscjk-m', sans-serif;
	font-size: 14px;
	line-height: 30px;
	margin-top: 45px;
}

.col-contents05 .under-text {
	width: 100%;
	clear: both;
	font-family: 'nscjk-m', sans-serif;
	font-size: 14px;
	line-height: 30px;
}

/* =====================
  col-contents05 for tablet
===================== */

@media all and (min-width:800px) and (max-width:1200px) {
	.col-contents05 {
		margin: 7.5vw 0;
	}

	.col-contents05 .inner {
		width: 100%;
		padding: 0 8.3vw;
	}

	.col-contents05 .image-box {
		width: 31vw;
		height: 50vw;
	}

	.col-contents05 .subtitle {
		font-size: 1.5vw;
		padding-top: 3.75vw;
	}

	.col-contents05 .subtitle:before {
		width: 3.3vw;
	}

	.col-contents05 .title {
		font-size: 2vw;
		line-height: 2.8vw;
		padding-bottom: 3.75vw;
	}

	.col-contents05 .title:after {
		width: 3.3vw;
	}

	.col-contents05 .text {
		width: 45vw;
		font-size: 1.1vw;
		line-height: 2.5vw;
		margin-top: 3.75vw;
	}

	.col-contents05 .under-text {
		font-size: 1.1vw;
		line-height: 2.5vw;
	}
}

/* =====================
  col-contents05 for sp
===================== */

@media all and (max-width:799px) {
	.col-contents05 {
		margin: 45px 0;
		padding: 0 20px;
	}
	.col-contents05 .inner {
		width: 100%;
	}
	.col-contents05 .image-box {
		width: 100%;
		height: 40vw;
		margin-bottom: 35px;
	}
	.col-contents05 .subtitle {
		font-size: 14px;
		padding-top: 30px;
	}
	.col-contents05 .title {
		font-size: 18px;
		line-height: 24px;
		padding-bottom: 30px;
	}
	.col-contents05 .text {
		width: 100%;
		font-size: 12px;
		line-height: 20px;
		margin-top: 30px;
	}
	.col-contents05 .under-text {
		font-size: 12px;
		line-height: 20px;
	}
}

/* web-font */
/* sans-serif */
@font-face{font-weight:300;font-style:normal;font-family:'lato';src:url('../fonts/lato-t.woff') format('woff');}
@font-face{font-weight:normal;font-style:normal;font-family:'lato';src:url('../fonts/lato-l.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'lato';src:url('../fonts/lato-m.woff') format('woff');}

@font-face{font-weight:200;font-style:normal;font-family:'roboto';src:url('../fonts/roboto-t.woff') format('woff');}
@font-face{font-weight:300;font-style:normal;font-family:'roboto';src:url('../fonts/roboto-l.woff') format('woff');}
@font-face{font-weight:normal;font-style:normal;font-family:'roboto';src:url('../fonts/roboto-r.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'roboto';src:url('../fonts/roboto-m.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'humnst';src:url('../fonts/humnst.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'humnst';src:url('../fonts/humnst-b.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'optima';src:url('../fonts/optima-regular.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'optima';src:url('../fonts/optima-bold.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'nsans';src:url('../fonts/nsjp-light.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nsans';src:url('../fonts/nsjp-medium.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'nsans-b';src:url('../fonts/nsjp-regular.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nsans-b';src:url('../fonts/nsjp-bold.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'nsans-blk';src:url('../fonts/nsjp-black.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nsans-blk';src:url('../fonts/nsjp-black.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'nserif';src:url('../fonts/nmjp-light.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nserif';src:url('../fonts/nmjp-medium.woff') format('woff');}

@font-face{font-weight:300;font-style:normal;font-family:'nscjk';src:url('../fonts/nscjk-light.woff') format('woff');}
@font-face{font-weight:400;font-style:normal;font-family:'nscjk';src:url('../fonts/nscjk-demilight.otf') format('woff');}
@font-face{font-weight:normal;font-style:normal;font-family:'nscjk';src:url('../fonts/nscjk-regular.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nscjk';src:url('../fonts/nscjk-medium.woff') format('woff');}

@font-face{font-weight:bold;font-style:normal;font-family:'nscjk-b';src:url('../fonts/nscjk-bold.woff') format('woff');}


/* serif */
@font-face{font-weight:normal;font-style:normal;font-family:'crimson';src:url('../fonts/crimson.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'crimson';src:url('../fonts/crimson-bold.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'nserif-b';src:url('../fonts/nmjp-regular.woff') format('woff');}
@font-face{font-weight:bold;font-style:normal;font-family:'nserif-b';src:url('../fonts/nmjp-bold.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'akashi';src:url('../fonts/akashi.woff') format('woff');}

@font-face{font-weight:normal;font-style:normal;font-family:'sawarabi';src:url('../fonts/sawarabi-mincho-medium.woff') format('woff');}

/* reset */
*{margin:0;padding:0;box-sizing:border-box;}
* > *:last-child{margin-bottom: 0;}
address,em{font-style: normal;}
html{overflow-x:hidden;overflow-y:scroll;}
.html{line-height:normal;}

p + p{margin-top: 10px;}


/* body,form-parts reset */
body,input,select,textarea{font:16px/1 'lato','nsans',Meiryo,'Hiragino Kaku Gothic Pro',Osaka,sans-serif;}
body{color:#4c4c4c;background: #fff;}

.btn{font:bold 12px/22px 'humnst','nsans',sans-serif;display: inline-block;padding: 7% 0;}
.btn:hover{opacity:.75;}

.table{display: table;width: 100%;height: 100%;}
.cell{display: table-cell;vertical-align: middle;}


/* anchor */
body a{text-decoration:none;color:#000;outline:none;}
body a:hover,body a:focus{text-decoration:none;color:#000;outline:none;}

/* h1 - h6 */
h1,h2,h3,h4,h5,h6{margin:0;font-family:'nsans-b',Meiryo,'Hiragino Kaku Gothic Pro',Osaka,sans-serif;font-weight: bold;}
h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:inherit;color:inherit;font-family:'lato','nsans',Meiryo,'Hiragino Kaku Gothic Pro',Osaka,sans-serif;}


.container{width: 100%;padding:0 15px;}
section .container{padding: 100px 50px;}







/* header */
#header{width: 100%;z-index: 300;color: #4c4c4c;background: #fff;border-top: 7px solid #1a5845;position: fixed;top: 0;}

#header .emergency {
  width: 100%;
  background: #f40000;
  margin-top: -7px;
  border-bottom: 7px solid #368080;
  padding: 20px;
}
#header .emergency table th,
#header .emergency table td {
  vertical-align: top;
}
#header .emergency h3 {
  color: #fff;
  font-size: 18px;
  line-height: 24px;
  padding-left: 10px;
}
#header .emergency p {
  font-size: 14px;
  color: #fff;
  margin-top: 5px;
  line-height: 18px;
  padding-left: 10px;
}
@media all and (max-width:799px) {
  #header .emergency h3 {
    color: #fff;
    font-size: 15px;
    line-height: 20px;
    padding-left: 10px;
  }
  #header .emergency p {
    font-size: 12px;
    color: #fff;
    margin-top: 3px;
    line-height: 15px;
    padding-left: 10px;
  }

}

#header-box{display: table;width: 100%;table-layout: fixed;}
#header-left,#header-right{display: table-cell;vertical-align: middle;}

#header-left{width: 250px;padding:17.5px 20px;}
#logo a{width: 250px;display: block;}
#logo a img{width: 210px;height: auto; outline:none; border:none;}
#logo a img:focus,#logo a img:hover{outline: none;}
#header-center{padding: 20px 0;}

#header-right{
	/*width: 230px;*/
	width: 330px;
}

#main-nav ul{list-style: none;display: table;width: 100%;}
#main-nav li{display: table-cell;vertical-align: middle;}

.access-link{width: 70px;}
.aoyama-style{width: 70px;}
.toggle-search{width: 70px;}
.toggle-burger{width: 70px;}

.access-link label span:before,
.aoyama-style label span:before,
.toggle-search label:before,
.toggle-burger label:before
{content:'';background-position:center center;background-repeat:no-repeat;background-size:contain;display: block;height: 50px;margin: 0 auto 6px;display: block;}

.access-link label span{padding: 10px 17px;}
.aoyama-style label span{padding: 14px 17px;}
.toggle-search label,.toggle-burger label{padding: 13px 15px 15px;}
.access-link label span,.aoyama-style label span,.toggle-search label span,.toggle-burger label span{font:8px/1 'nsans',sans-serif;webkit-transform: scale(0.8);-webkit-transform-origin:50% 50%;text-align: center;display: block;}
.toggle-search label,.toggle-burger label{display: block;}
.aoyama-style label:hover,.toggle-search label:hover,.toggle-burger label:hover{cursor:pointer;}

.access-link label,.aoyama-style label{display: table;width: 100%;}
.access-link label span,.aoyama-style label span{display: table-cell;vertical-align: middle;color:#4c4c4c;}
.aoyama-style label:hover span{color:#368080;}

.aoyama-style label span:before{width: 50px;background-image: url(../images/common/logo_aoyamagakuin-bk.png);opacity:.75;background-size:42px;}
.access-link label span:before{width: 50px;background-image: url(../images/common/icon_access.svg);opacity:.75;background-size:34px;}

.aoyama-style label:hover span:before{background-image: url(../images/common/logo_aoyamagakuin.png);opacity:1;}
.access-link label:hover span:before{background-image: url(../images/common/icon_access_on.svg);opacity:1;}

.toggle-search label,
.toggle-burger label{background: #e9e9e9;position: relative;}
#toggle_search:checked ~ #header-box .toggle-search label,
#toggle_burger:checked ~ #header-box .toggle-burger label{background:rgba(26,88,69,1);}
.toggle-search label:before,.toggle-burger label:before{content:"";width: 30px;}

#toggle_search,#toggle_burger{display: none;}

.toggle-search label span:before,
.toggle-search label span:after{
content: '';
width: 30px;
height: 4px;
visibility: visible;
background: #fff;
display: block;
z-index: 301;
position: absolute;
right: 20px;
transform-origin: 0 0;
transition: all .5s ease;
opacity:0;
}

.toggle-search label span:before {top: 27px;}
.toggle-search label:after {top: 37px;}
.toggle-search label span:after {top: 47px;}

.toggle-search label:before{width: 30px;background-image: url(../images/common/icon_search.png);opacity: 1;transition: all .5s ease;}

#toggle_search:checked ~ #header-box .toggle-search label:before{background-image: none;}
#toggle_search:checked ~ #header-box .toggle-search label span:before {transform: rotate(45deg) translate(2px,-3px);opacity:1;}
#toggle_search:checked ~ #header-box .toggle-search label span:after {transform: rotate(-45deg) translate(1px,2px);opacity:1;}

#toggle_search:checked ~ #header-box .toggle-search label:after,
#toggle_search:checked ~ #header-box .toggle-search label span:after {opacity: 1;}

.toggle-burger label span:before,
.toggle-burger label:after,
.toggle-burger label span:after{
content: '';
width: 30px;
height: 4px;
visibility: visible;
background: #000;
display: block;
z-index: 301;
position: absolute;
right: 20px;
transform-origin: 0 0;
transition: all .5s ease;
}

.toggle-burger label span:before {top: 27px;}
.toggle-burger label:after {top: 37px;}
.toggle-burger label span:after {top: 47px;}

#toggle_search:checked ~ #header-box .toggle-search label span,
#toggle_burger:checked ~ #header-box .toggle-burger label span {color:#fff;}

#toggle_burger:checked ~ #header-box .toggle-burger label span:before {background: #fff;transform: rotate(45deg) translate(2px,-3px);}
#toggle_burger:checked ~ #header-box .toggle-burger label:after {background: transparent;}
#toggle_burger:checked ~ #header-box .toggle-burger label span:after {background: #fff;transform: rotate(-45deg) translate(1px,2px);}

/* category-nav */
#category-nav ul{display: table;}
#category-nav li{display: table-cell;vertical-align: middle;}
#category-nav li a,#category-nav li a:hover{display: block;text-align: center;padding: 10px;font:12px/1 'nsans-b',sans-serif;}
#category-nav li a{color:#4c4c4c;}
#category-nav li a:hover{color:#368080;}
#category-nav li a small{display: block;margin-top: 5px;font:bold 9px/1 'lato',sans-serif;-webkit-transform: scale(0.9);-webkit-transform-origin:50% 50%;letter-spacing: .125em;padding-right: 0.125em;}

/* category-nav-sub */
#category-nav-sub{background: rgba(14,149,144,1);padding:8px 10px;font:11px/15px 'nsans',sans-serif;}
#category-nav-sub ul{list-style: none;text-align: center;}
#category-nav-sub li{display: inline-block;padding:0 25px;}
#category-nav-sub li a,#category-nav-sub li a:hover{color:#fff;}




/* global */
#global{
max-height: 0;
width: 100%;
padding: 0px;
color: #fff;
overflow: hidden;
background: rgba(26,88,69,.95);
position: absolute;
top: 92px;
transition: all .5s ease;
}

#toggle_search:checked ~ #global {
max-height: 70px;
transition: all .5s ease;
}
#toggle_burger:checked ~ #global {
max-height: 90vh;
max-height: calc(100vh - 92px);
transition: all .5s ease
}
#toggle_search:checked ~ #global #nav-search,
#toggle_burger:checked ~ #global #nav-sitemap {
padding: 20px;
opacity: 1;
transition: opacity .3s ease, all .5s ease;
}
#toggle_search:checked ~ #global #nav-search {max-height: 70px;}
#toggle_burger:checked ~ #global #nav-sitemap {
max-height: 90vh;
max-height: calc(100vh - 92px);
}

#global #nav-search,
#global #nav-sitemap {
list-style: none;
max-height: 0;
padding: 0 20px;
opacity: 0;
transition: opacity .3s ease, all .5s ease;
}
#global #nav-search {position: relative;}
#global #nav-search input {color: #fff;}
#global #nav-search input:-webkit-input-placeholder {line-height: 1em;}
#global #nav-search input[type="text"]{
width: 100%;
font-size: 30px;
line-height: 1em;
background: none;
border: none;
}
#global #nav-search input[type="submit"] {
height: 100%;
margin: auto 0;
padding: 20px;
cursor: pointer;
background: none;
border: none;
position: absolute;
right: 0;
top: 0;
opacity: 0;
}
#global #nav-search input[type="text"]:hover ~ input[type="submit"],
#global #nav-search input[type="submit"]:hover {opacity: .75;}

#sitemap-box a:hover {opacity: .6;}
#sitemap-box{list-style: none;margin:0 -10px;}
#sitemap-box:after{content:"";display: table;clear: both;}
#sitemap-box li {
padding:0 10px;
width: 33.33333333%;
margin-bottom: 30px;
float: left;
}
#sitemap-box li a {
padding: 15px 10px;
line-height: 1.25em;
text-align: center;
border: 1px solid #fff;
display: block;
color:#fff;
font:bold 14px/1 'nsans-b',sans-serif;
}
#sitemap-box li a small {display: block;font:10px/1 'nsans-b',sans-serif;margin-bottom: 10px;}

#sitemap-global {list-style: none;padding: 0 0 30px;position: relative;display: -webkit-flex;display: -moz-flex;display: -ms-flex;display: -o-flex;display: flex;}
#sitemap-global:after{content:"";display: table;clear: both;}
#sitemap-global > li{width: 23%;width: 18%\9;margin: 0 1%;display: block;}
#sitemap-global li a{color:#fff;}
#sitemap-global li a small{font: 10px/2.75 'roboto', sans-serif;letter-spacing: 2px;display: block;border-bottom: 3px solid #fff;margin-bottom: 15px;}

#sitemap-global a {display: block;}
#sitemap-global > a {
margin-bottom: 20px;
line-height: 1.25em;
}
#sitemap-global > li > a {font:bold 14px/1 'nsans-b',sans-serif;}
#sitemap-global ul{margin-top: 15px;list-style: none;}
#sitemap-global > li > ul > li > a {
	font: 12px/2 'nsans',sans-serif;
}

@media all and (max-width: 799px){
	#sitemap-global {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 0 30px;}
    }


/* main */
#main-bg{margin-top: 99px;}
#main{text-align: center;height: 580px;position: relative;}
.inner #main{height: 335px;}
.inner #main #page-title {max-width: 500px;height: auto;position: absolute;top: 50%;left: 50%;right: 50%;bottom: 50%;margin: -36px -250px;}
.inner #main #page-title h2 {color: #fff;font: normal 40px/1 'sawarabi' ,serif;letter-spacing: 8px;}
.inner #page-title h2 span {display: block;font: normal 12px 'optima',sans-serif;margin-top: 15px;letter-spacing: 4px;}
/* article */
article{}




/* aoyama gakuin & vision */
.modal-wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
#gakuin-links, #aoyama-vision {
	width: 500px;
	max-width: 50%;
}
#aoyama-vision {
	background-color: #fff;
	text-align: center;
}
#gakuin-links a {
	display: block;
	height: auto;
}
#aoyama-vision h2 {
	height: 125px;
	background: #E7F7F5;
	font: normal 40px/1 'crimson', serif;
	color: #17b1a9;
	display: block;
	letter-spacing: .2em;
	text-align: center;
	padding: 25px 0 25px 0;
}
#aoyama-vision h3 {
	font: bold 24px/34px 'nserif', serif;
	letter-spacing: .1em;
	padding: 40px 0;
	color: #17B1A9;
}
#aoyama-vision h2 small {
	font: bold 18px/1 'nsans', sans-serif;
	display: block;
	letter-spacing: .2em;
	margin-top: 12px;
}
#aoyama-vision .point {
	background: #F7F7F7;
	padding: 12px 12px 13px;
}
#aoyama-vision .point ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin: 7.5px;
}
#aoyama-vision .point ul li {
	color: #17b1ac;
	font: bold 12px/1 'nsans', sans-serif;
	width: 25%;
	list-style: none;
	padding: 25px 0 0;
	position: relative;
}
#aoyama-vision .point ul li:nth-of-type(1):before, #aoyama-vision .point ul li:nth-of-type(2):before, #aoyama-vision .point ul li:nth-of-type(3):before, #aoyama-vision .point ul li:nth-of-type(4):before {
	font: bold 12px/15px 'roboto', sans-serif;
	display: block;
	position: absolute;
	color: #17b1ac;
	background: #b3e0dc;
	width: 100px;
	text-align: center;
	height: 15px;
	line-height: 15px;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}
#aoyama-vision .point ul li:nth-of-type(1):before {
	content: "01";
}
#aoyama-vision .point ul li:nth-of-type(2):before {
	content: "02";
}
#aoyama-vision .point ul li:nth-of-type(3):before {
	content: "03";
}
#aoyama-vision .point ul li:nth-of-type(4):before {
	content: "04";
}
#aoyama-vision h4 {
	color: #17B1A9;
	position: relative;
	font: bold 18px/1 'nsans', sans-serif;
	padding: 20px 0 20px 45px;
	text-align: left;
	z-index: 2;
}
#aoyama-vision h4:before {
	font: bold 18px/1 'roboto', sans-serif;
	display: block;
	position: absolute;
	color: #fff;
	background: #17B1A9;
	width: 30px;
	text-align: center;
	height: 30px;
	line-height: 30px;
	left: 10px;
	top: 15px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
#aoyama-vision h4:nth-of-type(1):before {
	content: "Q";
}
#aoyama-vision h4:nth-of-type(2):before {
	content: "A";
}
#aoyama-vision h4:nth-of-type(1):after, #aoyama-vision h4:nth-of-type(2):after {
	font: bold 40px/1 'roboto', sans-serif;
	display: block;
	position: absolute;
	color: #b3e0dc;
	width: 30px;
	text-align: left;
	height: 30px;
	line-height: 30px;
	-webkit-transform: rotate(10deg);
	;
	-moz-transform: rotate(10deg);
	;
	-ms-transform: rotate(10deg);
	;
	-o-transform: rotate(10deg);
	;
	transform: rotate(10deg);
	;
	z-index: 1;
}
#aoyama-vision h4:nth-of-type(1):after {
	content: "?";
	right: 15px;
	top: 15px;
}
#aoyama-vision h4:nth-of-type(2):after {
	content: "!";
	right: 0;
	top: 15px;
}
.pdf-download {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	padding: 18px 15px;
}
.pdf-download .cover {
	width: 152px;
	position: relative;
	opacity: 1;
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-ms-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease;
}
.pdf-download .cover:hover {
	opacity: .75;
}
.pdf-download .cover:before, .pdf-download .cover:after {
	content: "";
	display: block;
	position: absolute;
	width: 152px;
	height: 4px;
	left: 0;
}
.pdf-download .cover:before {
	top: 0;
	border-top: 4px solid #17b1ac;
}
.pdf-download .cover:after {
	bottom: 0;
	border-bottom: 4px solid #17b1ac;
}
.pdf-download .content {
	width: calc(95% - 152px);
	text-align: left;
	position: relative;
	margin-left: 5%;
}
.pdf-download .content h5 {
	background: #17B1AC;
	color: #FFF;
	font: 12px/1 'roboto', sans-serif;
	letter-spacing: 2px;
	margin-bottom: 20px;
	line-height: 25px;
	width: 100px;
	text-align: center;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}
.pdf-download .content li {
	color: #17B1AC;
	font: 400 16px/1 'nsans', sans-serif;
	list-style: none;
	position: relative;
	padding-left: 15px;
	margin: 0 0 20px 15px;
}
.pdf-download .content li:before {
	content: "";
	display: block;
	position: absolute;
	width: 10px;
	height: 3px;
	left: 0;
	top: 10px;
	border-top: 3px solid #17b1ac;
}
.pdf-download .content li em {
	font-weight: bold;
	font: bold 16px/1.5 'nsans', sans-serif;
}
.pdf-download .content li .ml10 {
	margin-left: 10px;
}
.link-btn a {
	width : 100%;
	background: #17B1AC;
	color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	font: 14px/1 'roboto', sans-serif;
	letter-spacing: 2px;
	padding: 15px 20px;
	position: absolute;
	bottom: 0;
}
.link-btn a:hover {
	color: #FFF;
	opacity: .75;
}
.link-btn a small {
	color: #d5efec;
	display: block;
	font: 400 10px/1 'nsans', sans-serif;
}
.link-btn a span:first-child {
	width: 70%;
	padding-right: 5%;
}
.link-btn a span:last-child {
	width: 30%;
	padding: 5px 0;
	text-align: right;
	display: block;
	border-left: 1px solid #fff;
}
.ssc, .ssc:hover {
	text-align: center;
	font: bold 36px/1 'nserif', serif;
	letter-spacing: .1em;
	padding: 35px 15px;
	color: #fff;
	letter-spacing: 2px;
}
.ssc:hover {
	opacity: .75;
}
.ssc small {
	display: block;
	font: 400 12px/1 'humnst', serif;
	margin-top: 10px;
	letter-spacing: 7px;
}
.vision00 {
	background: url(../images/common/vision00.jpg) center center /cover no-repeat;
}
.vision01 {
	background: url(../images/vision01.jpg) center center /cover no-repeat;
}
.vision02 {
	background: url(../images/vision02.jpg) center center /cover no-repeat;
}
.vision03 {
	background: url(../images/vision03.jpg) center center /cover no-repeat;
}
.vision04 {
	background: url(../images/vision04.jpg) center center /cover no-repeat;
}
.vision05 {
	background: url(../images/vision05.jpg) center center /cover no-repeat;
}
.vision06 {
	background: url(../images/vision06.jpg) center center /cover no-repeat;
}

@media all and (max-width:800px) {
.modal-wrap {
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}
#gakuin-links, #aoyama-vision {
	width: 100%;
	max-width: 100%;
}
#aoyama-vision h2 {
	height: auto;
	background: #E7F7F5;
	font: normal 24px/1 'crimson', serif;
	color: #17b1a9;
	display: block;
	letter-spacing: .2em;
	text-align: center;
	padding: 25px 0;
}
#aoyama-vision h2 small {
	font: bold 14px/1 'nsans', sans-serif;
	display: block;
	letter-spacing: .2em;
	margin-top: 5px;
}
#aoyama-vision h3 {
	font: bold 18px/24px 'nserif', serif;
}
#aoyama-vision h4 {
	font: bold 14px/1 'nsans', sans-serif;
	padding: 10px 0 10px 35px;
	text-align: left;
	z-index: 2;
}
#aoyama-vision h4:before {
	font: bold 12px/1 'roboto', sans-serif;
	content: "Q";
	width: 20px;
	height: 20px;
	line-height: 20px;
	left: 10px;
	top: 7px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
#aoyama-vision h4:nth-of-type(1):after, #aoyama-vision h4:nth-of-type(2):after {
	font: bold 25px/1 'roboto', sans-serif;
	width: 30px;
	height: 30px;
	line-height: 30px;
	-webkit-transform: rotate(10deg);
	;
	-moz-transform: rotate(10deg);
	;
	-ms-transform: rotate(10deg);
	;
	-o-transform: rotate(10deg);
	;
	transform: rotate(10deg);
	;
}
#aoyama-vision h4:nth-of-type(1):after {
	content: "";
}
#aoyama-vision h4:nth-of-type(2):after {
	content: "";
}
#aoyama-vision .point ul {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#aoyama-vision .point ul li {
	font: bold 12px/1 'nsans', sans-serif;
	width: 50%;
	margin: 10px 0;
}
.pdf-download .content h5 {
	font: 10px/1 'roboto', sans-serif;
	margin-bottom: 20px;
	line-height: 20px;
}
.pdf-download .content li {
	font: 400 12px/1 'nsans', sans-serif;
	padding-left: 7px;
	margin: 0 0 15px 0;
}
.pdf-download .content li:before {
	width: 7px;
	height: 2px;
	left: 0;
	top: 6px;
	border-top: 3px solid #17b1ac;
}
.pdf-download .content li em {
	font: bold 12px/1.5 'nsans', sans-serif;
}
.pdf-download .content li br {
	display: none;
}
.pdf-download .content li .ml10 {
	margin-left: 0;
}
.link-btn a {
	font: 12px/1 'roboto', sans-serif;
	letter-spacing: 0;
	padding: 10px 15px;
	position: absolute;
	bottom: 0;
}
.link-btn a span:first-child {
	padding-right: 5%;
}
.link-btn a span:last-child {
	padding: 5px 5%;
}
.ssc, .ssc:hover {
	text-align: center;
	font: bold 24px/1 'nserif', serif;
	letter-spacing: .1em;
	padding: 15px 15px;
	color: #fff;
	letter-spacing: 2px;
}
.ssc small {
	display: block;
	font: 400 10px/1 'humnst', serif;
	margin-top: 10px;
	letter-spacing: 5px;
}
}



/* common-shortcut */
#common-shortcut{background: #f6f6f6;}
#common-shortcut .row{margin:-30px -15px 0;}
#common-shortcut .row [class*="column-"]{padding:0 15px;margin-top: 30px;}

.cmn-ssc{display: block;}
.cmn-ssc:hover{opacity:.75;}

.cmn-ssc-img{padding-bottom: 67.3%;background-position: center center;background-repeat: no-repeat;background-size: cover;display: block;}

.cmn-ssc-title{background: #fff;color:#000;padding: 18.46% 0;height: 10.4vw;overflow: hidden;text-align: center;display: block;font:bold 1.3333333333vw/1 'nsans',sans-serif;letter-spacing:.15em;}
.cmn-ssc-title small{display: block;font:bold .7666666666vw/1 'roboto',sans-serif;margin-top: 1.92%;}


/* footer */
#fnav {padding: 60px 25px;background: #1a5845;color: #fff;}
#fnav ul{list-style: none;}
#fnav nav > ul {margin:-40px -25px 0;}
#fnav nav > ul > li {width: 16.6666666666%;padding:0 25px;margin-top: 40px;float: left;}
#fnav nav > ul:after{content:"";display: table;clear: both;}

#fnav a,#fnav a:hover,#fnav label{display: block;color: #fff;}
#fnav a:hover{opacity:.75;}
#fnav nav > ul > li > a,#fnav > ul > li > a:hover{font:bold 14px/1 'nsans',sans-serif;}
#fnav nav > ul > li > a small{display: block;border-bottom: 2px solid #fff;padding-bottom: 9px;margin-bottom: 14px;font-weight: normal;font-size: 10px;letter-spacing: .125em;}


#fnav nav > ul > li > ul{margin-top: 30px;}

#fnav nav > ul > li > ul > li + li {margin-top: 5px;}
#fnav nav > ul > li > ul > li a,
#fnav nav > ul > li > ul > li label{font: 12px/1.25 'nsans',sans-serif;}
#fnav nav > ul > li > ul > li a span{display: inline-block;}

#sns {background: #1a5845;padding: 50px 0;text-align: center;}
#sns li {display: inline-block;margin-right: 10px;
}
#sns li a:hover{opacity:.75;}
#sns li a,#sns li a:hover {width: 40px; height: 40px; font:24px/40px sans-serif; text-align: center; color:#c2c2c2; display: block;}


#footer {width: 100%;padding: 37px 0;background: url(../images/common/footer.jpg) left bottom /cover no-repeat;text-align: center;color:#fff;}
#footer h2 img{width: 230px;height: auto;}

#copyright{font-size: 10px;line-height: 1.25;letter-spacing: .125em;padding-right: .125em;display: inline-block;padding: 0 15px; color:#c2c2c2;}



.row:after{content:"";clear: both;display: table;}

[class*="column-"]{float: left;}



@media all and (min-width:1200px) {
	header + article {padding-top: 135px;}

	#club-news .container{padding: 100px;}

}
@media all and (max-width:1199px) {
	#header-center #category-nav{display: none;}
	#fnav nav > ul > li {width: 33.3333333333%;}

}
@media all and (min-width:800px and max-width:1199px) {
	header + article {padding-top: 99px;}

}
@media all and (max-width:929px) {
	#global{-webkit-overflow-scrolling: touch;overflow-y: auto;}
	#global #nav-search{border-bottom: 1px solid rgba(255,255,255,.5);}

	#inf-list li label.tab-label {font:bold 12px/1 'nsans',sans-serif;}


	#sitemap-box li {width: 100%;margin-bottom: 10px;
	}
	#sitemap-global > li{width: 100%;}
}
@media all and (min-width:800px) {
	#sp-logo{display: none;}

	.pc-none{display: none;}
	.sp-none{display: block;}
	img.sp-none{display: inline-block;}

	.column-1{width: 8.3333333333%;}
	.column-2{width: 16.6666666666%;}
	.column-3{width: 25%;}
	.column-4{width: 33.3333333333%;}
	.column-5{width: 41.6666666666%;}
	.column-6{width: 50%;}
	.column-7{width: 58.3333333333%;}
	.column-8{width: 66.6666666666%;}
	.column-9{width: 75%;}
	.column-10{width: 83.3333333333%;}
	.column-11{width: 91.6666666666%;}
	.column-12{width: 100%;}

}
@media all and (max-width:799px) {

	#main-bg {
		margin-top: 0;
	}
	.inner #main{height: 200px;}
	.inner #main #page-title {top: auto;bottom: 15px; left: 0; right: 0; margin: auto; max-width: 100%;}
	.inner #main #page-title h2 {color: #fff;font: normal 32px/1 'sawarabi' ,serif; letter-spacing: .1em;}
	.inner #page-title h2 span {letter-spacing:.2em;margin-top: 10px;}
	/* common-shortcut */
	#common-shortcut{background: #f6f6f6;}
	#common-shortcut .container{padding: 25px 25px;}

	#common-shortcut .row {margin: -20px -4px 0;}
	#common-shortcut .row [class*="column-"] {padding: 0 4px;margin-top: 20px;}

	.cmn-ssc{display: table;width: 100%;}
	.cmn-ssc:hover{opacity:.75;}

	.cmn-ssc-img,.cmn-ssc-title{display: table-cell;vertical-align: middle;}

	.cmn-ssc-img{width: 30%;padding-bottom: 30%;background-position: center center;background-repeat: no-repeat;background-size: cover;}

	.cmn-ssc-title{background: #fff;width: 70%;padding: 0 0 0 10.695vw;height: 10.4vw;overflow: hidden;text-align: left;font:bold 3.74vw/1 'nsans',sans-serif;letter-spacing:.15em;height: auto;}
	.cmn-ssc-title small{display: block;font:bold 2.4vw/1 'humnst',sans-serif;margin-top: 2.127vw;}




	/* common */

/*	#wrapper{padding-top: 100px;}*/

	#header-box{border-bottom: 1px solid #f0f0f0;}

	#header-right{width: 100%;}

	#header-left{display: none;}

	.aoyama-style,.aoyama-style label{width: auto;}

	.aoyama-style label span{padding: 14px 14px;}
	.access-link label span{padding: 14px 14px;}
	.aoyama-style label span:nth-of-type(1){width: 70px;}
	.access-link label span:nth-of-type(1){width: 70px;}
	.aoyama-style label span:nth-of-type(2){width: auto;}
	.access-link label span:nth-of-type(2){width: auto;}

	.aoyama-style label span:nth-of-type(1):before{width: 42px;background-image: url(../images/common/logo_aoyamagakuin-bk.png);}
	.access-link label span:nth-of-type(1):before{width: 36px;background-image: url(../images/common/icon_access.svg);}
	.aoyama-style label span:nth-of-type(2):before{width: 68px;background-image: url(../images/common/logo_aoyamavision-bk.png);}
	.access-linklabel span:nth-of-type(2):before{width: 68px;background-image: url(../images/common/icon_access_on.svg);}

	.toggle-search,.toggle-burger{width: 70px;}
	.toggle-search label:before, .toggle-burger label:before{width: 30px;}

	#global #nav-search input[type="text"] {
		font: 18px/1 'nsans',sans-serif;
		background: none;
		border: none;
	}

	#global #nav-search input[type="submit"] {
		height: 100%;
		margin: auto 0;
		padding: 20px;
		cursor: pointer;
		background: none;
		border: none;
		position: absolute;
		right: 0;
		top: 0;
		opacity: 0;
	}

	#toggle_search:checked ~ #global {
	max-height: 58.5px;
	}

	#toggle_burger:checked ~ #global {
	max-height: 90vh;
	max-height: calc(100vh - 92px);
	transition: all .5s ease
	}

	#sp-logo{display: block;border-bottom: 1px solid #f0f0f0;margin-top: 102px;}
	#sp-logo h1 a{padding: 29px 0;display: block;}
	#sp-logo h1 a img{width: 260px;display: block;margin: 0 auto;}



	#page-bg{margin-top: 0;}
	#page-bg h2{height: 250px;}
	#page-bg h2 img{width: 100%;max-width:100%;height: auto;top: auto;left: 0;right: 0;bottom: 0;margin:0;}

	.page-prospective h2{background: url(../images/kv-prospective-sp.jpg) center bottom /cover no-repeat;}


	#fnav nav > ul > li {width: 100%;}

	#fnav nav > ul > li > ul {display: none;}

	#category-nav-sub{display: none;}




	.pc-none{display: block;}
	img.pc-none{display: inline-block;}
	.sp-none{display: none;}

	#sns {padding: 20px 0 50px;}


	.column-sp-1{width: 8.3333333333%;}
	.column-sp-2{width: 16.6666666666%;}
	.column-sp-3{width: 25%;}
	.column-sp-4{width: 33.3333333333%;}
	.column-sp-5{width: 41.6666666666%;}
	.column-sp-6{width: 50%;}
	.column-sp-7{width: 58.3333333333%;}
	.column-sp-8{width: 66.6666666666%;}
	.column-sp-9{width: 75%;}
	.column-sp-10{width: 83.3333333333%;}
	.column-sp-11{width: 91.6666666666%;}
	.column-sp-12{width: 100%;}

}


/* added 180312*/


@media all and (max-width:799px) {
#main {
	margin-bottom: 86px;
}
#toppage #main {
	margin-bottom: 0;
}
#main:before {
	content: "";
	display: block;
	width: 100%;
	height: 250px;
}
.inner #main:before {
	height: 200px;
}
.inner #main #page-title {
	position: inherit !important;
	top: inherit !important;
	bottom: inherit !important;
	left: inherit !important;
	right: inherit !important;
	display: block !important;
	height: 86px;
}
.inner #page-title:before,  .inner #page-title:after {
	display: none !important;
}
.inner #page-title h2 {
	margin: 0 !important;
	padding: 15px 0 18px;
}
}
.main-lead .lead-inner {
	padding: 40px 25px;
}
.main-lead .lead-title {
	border-top: 2px solid #8bdbd9;
	border-bottom: 2px solid #8bdbd9;
	margin: 0 auto;
	padding: 15px 0 18px;
	font: 25px/1.3em 'nserif', serif;
	text-align: center;
	position: relative;
	color: #17b7b2;
	display: inherit;
}
.main-lead .lead-title span {
	font: 10px/1em 'lato', serif;
	font-weight: bold;
	display: block;
	position: absolute;
	left: 50%;
	top: -9px;
	letter-spacing: 3px;
	background-color: #fff;
	padding: 0 5px;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
}
.main-lead .lead-title span small {
	font: 6px/1em 'lato', serif !important;
	display: inline;
	padding: 0;
	margin: 0;
	background: transparent;
	text-transform: uppercase;
}
.main-lead.hasbg .lead-title span, .main-lead.hasbg {
	background-color: #e6f9fd;
}
.main-lead .content {
	margin: 4vw auto 0;
}
.main-lead .lead-text {
	font: 12px/1.6em 'nsans', serif;
	color: #000;
}

@media all and (min-width:800px) {
.main-lead .lead-inner {
	padding: 100px 0;
	/*margin-bottom: 80px;*/
	text-align: center;
}

@media all and (max-width:799px) {
.main-lead .lead-title {
	display: inherit;
}
