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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@font-face {
	font-style: normal;
	font-family: 'humnst';
	src: url('../fonts/humnst.woff') format('woff');
}
@font-face {
	font-style: normal;
	font-family: 'humnst-b';
	src: url('../fonts/humnst-b.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;
}

.sp-br::before {
	display: none;
}

.pc-br::before {
	display: inline;
	content: "\A";
	white-space: pre;
}

.inline {
	display: inline;
}

body, input, select, textarea {
	font: 16px/1 'lato-m', 'nscjk-m', Meiryo, 'Hiragino Kaku Gothic Pro', Osaka, sans-serif;
}

body {
	color: #4c4c4c;
	background: #fff;
}

img {
	border: 0;
}

ul {
	list-style: none;
}

.btn {
	font: bold 12px/22px 'humnst', 'nscjk-m', 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;
}

body a {
	text-decoration: none;
	color: #000;
	outline: none;
}

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

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-m', 'nscjk-m', Meiryo, 'Hiragino Kaku Gothic Pro', Osaka, sans-serif;
}

.modal .checkbox{
  display: none;
}

/* Gray background */
.modal .modal-overlay{
  opacity: 0;
  transition: all 0.3s ease;
  width: 50%;
  position: absolute;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -100;
  transform: scale(1);
  display: none;
  background: rgba(26, 88, 69, 0.9);
}

/* Box */
.modal .modal-wrap{
  width: 100%;
  max-width: 1000px;
  margin: 100px auto;
  /*transition: all 0.5s ease;*/
}

.modal .modal-wrap.small{
  width: 30%;
}
.modal .modal-wrap.full{
  width: 100%;
  height: 100%;
}

.modal .modal-wrap.a-center {
  align-self: center;
}
.modal .modal-wrap.from-left {
  transform: translateX(-100%);
}
.modal .modal-wrap.from-right {
  transform: translateX(100%);
}
.modal .modal-wrap.from-top {
  transform: translateY(-100%);
}
.modal .modal-wrap.from-bottom {
  transform: translateY(100%);
}


/* Close button */
/*
.modal .modal-overlay .close{
  position: absolute;
  right: 25px;
  top: 25px;
  font-size: 40px;
  width: 40px;
  height: 40px;
  text-align: center;
  color: #fff;
}


.modal .modal-overlay .close small{display: block;text-align: center;font:10px/1 'lato-m',sans-serif;width: 40px;}*/

.modal .modal-overlay .close:hover{
  cursor: pointer;
  color: rgba(255,255,255,.75);
}


 .modal .o-close {
   width: 100%;
   height: 100%;
   position: fixed;
   left: 0;
   top: 0;
   z-index: -100;
 }

.modal input:checked ~ .o-close {
  z-index: 9998;
}
.modal input:checked ~ .modal-overlay{
  transform: scale(1);
  opacity:1;
  z-index: 9997;
  overflow: auto;
  display: block;
  animation-duration: 0.5s;
  animation-name: fade-in;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: fade-in;
}
.modal input:checked ~ .modal-overlay .modal-wrap {
  transform: translateY(0);
  z-index: 9999;
}

/* Responsive Design */
/* Tablet size */
@media all and (max-width:799px) {
  .modal input:checked ~ .modal-overlay{-webkit-overflow-scrolling: touch;}
}

#gakuin-links {
	margin: 0 auto;
	width: 50%;
	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-r', serif;
	letter-spacing: .1em;
	padding: 40px 0;
	color: #17B1A9;
}

#aoyama-vision h2 small {
	font: bold 18px/1 'nsans-r', 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-r', 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-r', 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-r', sans-serif;
	padding: 20px 0 20px 45px;
	text-align: left;
	z-index: 2;
}

#aoyama-vision h4:before {
	font: bold 18px/1 'roboto-r', 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-r', 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-r', 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-r', 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-r', 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-r', 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-r', 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-r', 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/common/vision01.jpg) center center /cover no-repeat;
}

.vision02 {
	background: url(../images/common/vision02.jpg) center center /cover no-repeat;
}

.vision03 {
	background: url(../images/common/vision03.jpg) center center /cover no-repeat;
}

.vision04 {
	background: url(../images/common/vision04.jpg) center center /cover no-repeat;
}

.vision05 {
	background: url(../images/common/vision05.jpg) center center /cover no-repeat;
}

.vision06 {
	background: url(../images/common/vision06.jpg) center center /cover no-repeat;
}

/* =====================
modal for sp
===================== */

@media all and (max-width:799px) {
	#modal-overlay .modal-wrap {
		margin: 0;
		-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-r', sans-serif;
		display: block;
		letter-spacing: .2em;
		margin-top: 5px;
	}
	#aoyama-vision h3 {
		font: bold 18px/24px 'nserif-r', serif;
	}
	#aoyama-vision h4 {
		font: bold 14px/1 'nsans-r', sans-serif;
		padding: 10px 0 10px 35px;
		text-align: left;
		z-index: 2;
	}
	#aoyama-vision h4:before {
		font: bold 12px/1 'roboto-r', 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-r', 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-r', sans-serif;
		width: 50%;
		margin: 10px 0;
	}
	.pdf-download .content h5 {
		font: 10px/1 'roboto-r', sans-serif;
		margin-bottom: 20px;
		line-height: 20px;
	}
	.pdf-download .content li {
		font: 400 12px/1 'nsans-r', 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-r', sans-serif;
	}
	.pdf-download .content li br {
		display: none;
	}
	.pdf-download .content li .ml10 {
		margin-left: 0;
	}
	.link-btn a {
		font: 12px/1 'roboto-r', 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-r', 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;
	}
}

/* =====================
header
===================== */

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

#header-box {
	display: table;
	width: 100%;
	table-layout: fixed;
}

#header-box .aoyama-style {
	position: relative;
}
#header-box .access-link {
	position: relative;
}

#header-box .aoyama-style label:before, #header-box .aoyama-style label:after {
	content: '';
	width: 30px;
	height: 4px;
	visibility: visible;
	background: #fff;
	display: block;
	z-index: 301;
	position: absolute;
	right: 50%;
	margin: 0 -15px 0 0;
	transform-origin: 0 0;
	transition: all .5s ease;
	opacity: 0;
}
#header-box .access-link label:before, #header-box .access-link label:after {
	content: '';
	width: 30px;
	height: 4px;
	visibility: visible;
	background: #fff;
	display: block;
	z-index: 301;
	position: absolute;
	right: 50%;
	margin: 0 -15px 0 0;
	transform-origin: 0 0;
	transition: all .5s ease;
	opacity: 0;
}

#header-box .aoyama-style label:before {
	top: 27px;
}

#header-box .access-link label:before {
	top: 27px;
}

#header-box .aoyama-style label:after {
	top: 47px;
}
#header-box .access-link label:after {
	top: 47px;
}

#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;
}

#logo a img:focus, #logo a img:hover {
	outline: none;
}

#header-center {
	padding: 20px 0;
}

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

#main-nav ul {
	list-style: none;
	display: table;
	width: 100%;
}

#main-nav li {
	display: table-cell;
	vertical-align: middle;
}

.aoyama-style {
	/*width: 210px;*/
	width: 80px;
}
.access-link{
	width: 80px;
}

.toggle-search {
	width: 70px;
}

.toggle-burger {
	width: 70px;
}

.access-link 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;
}

.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;
}

.aoyama-style label span {
	padding: 14px 20px;
}

.access-link label span {
	/*padding: 14px 20px;*/
	padding: 10px 20px;
}

.toggle-search label, .toggle-burger label {
	padding: 13px 15px 15px;
}

.aoyama-style label span, .toggle-search label span, .toggle-burger label span {
	font: 8px/1 'nscjk-m', sans-serif;
	webkit-transform: scale(0.8);
	-webkit-transform-origin: 50% 50%;
	text-align: center;
	display: block;
}
.access-link label span {
	font: 8px/1 'nscjk-m', 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;
}


.aoyama-style label{
	display: table;
	width: 100%;
}
.access-link label{
	display: table;
	width: 100%;
}

.aoyama-style label span {
	display: table-cell;
	vertical-align: middle;
	color: #4c4c4c;
}
.access-link label span {
	display: table-cell;
	vertical-align: middle;
	color: #4c4c4c;
}

.aoyama-style label:hover span {
	color: #368080;
}
.access-link label:hover span {
	color: #368080;
}

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

.aoyama-style label span:nth-of-type(2):before {
	width: 80px;
	background-image: url(../images/common/logo_aoyamavision-bk.png);
	opacity: .75;
}
.access-link label span:nth-of-type(2):before {
	width: 80px;
	background-image: url(../images/common/icon_access.svg);
	opacity: .75;
}

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

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

.toggle-search label, .toggle-burger label {
	background: #e9e9e9;
	position: relative;
}


#toggle_modal:checked~#header-box .aoyama-style label, #toggle_search:checked~#header-box .toggle-search label, #toggle_burger:checked~#header-box .toggle-burger label {
	background: rgba(26, 88, 69, 1);
}
/*.access-link label{
	background: rgba(26, 88, 69, 1);
}*/

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

#toggle_aoyamastyle, #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_modal:checked~#header-box .aoyama-style label span, #toggle_search:checked~#header-box .toggle-search label span, #toggle_burger:checked~#header-box .toggle-burger label span {
	color: #fff;
}
/*.access-link 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 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-r', 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-m', sans-serif;
	-webkit-transform: scale(0.9);
	-webkit-transform-origin: 50% 50%;
	letter-spacing: .125em;
	padding-right: 0.125em;
}

#category-nav-sub {
	background: #1a5845;
	padding: 8px 10px;
	font: 11px/15px 'nsans-r', sans-serif;
}
#category-nav-sub ul {
	list-style: none;
	text-align: center;
}
#category-nav-sub li {
	display: inline-block;
	padding: 0 20px;
	position: relative;
}
#category-nav-sub li a {
	color: #fff;
}

#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;
  z-index: 10;
}

#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;
}

#sitemap-global:after {
	content: "";
	display: table;
	clear: both;
}

#sitemap-global>li {
	width: 19%;
	float: left;
	margin-right: 1%;
}

#sitemap-global>li:last-child {
	margin-right: 0;
}

#sitemap-global li a {
	color: #fff;
}

#sitemap-global li a small {
	font: 10px/2.75 'nsans-b', sans-serif;
	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;
	margin-bottom: 25px;
}

#sitemap-global ul {
	margin-top: 15px;
	list-style: none;
}

#sitemap-global>li>ul>li>a {
	font: 12px/2 'nscjk-m', sans-serif;
}

/* =====================
header for sp
===================== */

@media all and (max-width:799px) {
	#header-box {
		border-bottom: 1px solid #f0f0f0;
	}
	#header-right {
		width: 100%;
	}
	#header-left {
		display: none;
	}
	.aoyama-style, .aoyama-style label {
		width: auto;
	}
	.acess-link, .acess-link label {
		width: auto;
	}
	.aoyama-style label span {
		padding: 14px 14px;
	}
	.acess-link label span {
		padding: 14px 14px;
	}
	.aoyama-style label span:nth-of-type(1) {
		width: 70px;
	}
	.acess-link label span:nth-of-type(1) {
		width: 70px;
	}
	.aoyama-style label span:nth-of-type(2) {
		width: auto;
	}
	.acess-link label span:nth-of-type(2) {
		width: auto;
	}
	.aoyama-style label span:nth-of-type(1):before {
		width: 42px;
		/*width: 36px;*/
		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-link label span:nth-of-type(2):before {
		width: 68px;
		background-image: url(../images/common/icon_access.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 'nscjk-m', 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;
	}
	#category-nav-sub {
		display: none;
	}
}

@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 'nscjk-m', sans-serif;
	}
	#sitemap-box li {
		width: 100%;
		margin-bottom: 10px;
	}
	#sitemap-global>li {
		width: 100%;
	}
}

@media all and (max-width:1199px) {
	#header-center #category-nav {
		display: none;
	}
}

/* =====================
common-shortcut
===================== */

#common-shortcut {
	background: #f6f6f6;
	padding: 0 20px;
}

#common-shortcut .container {
	padding: 20px 0;
}

#common-shortcut .row {
	margin: -10px -5px 0;
}

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

/*#common-shortcut {
	background: #f6f6f6;
	padding: 0;
}

#common-shortcut .container {
	padding: 0;
}

#common-shortcut .row {
	margin: 0;
}

#common-shortcut .row [class*="column-"] {
	padding: 0;
	margin-top:0;
}
*/
.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: 13% 0;
	height: 7.1vw;
	overflow: hidden;
	text-align: center;
	display: block;
	font-family: 'nscjk-b', sans-serif;
	font-weight: 700;
	font-size: 1.3vw;
	letter-spacing: .15em;
}

.cmn-ssc-title small {
	display: block;
	font-family: 'humnst', sans-serif;
	font-weight: 700;
	font-size: .7666666666vw;
	margin-top: 1.92%;
}

@media all and (min-width:1200px) {
	.cmn-ssc-title {
		font-size: 16px;
	}

	.cmn-ssc-title small {
		font-size: 10px;
	}
}

/* =====================
common-shortcut for sp
===================== */

@media all and (max-width:799px) {
	#common-shortcut {
		padding: 0;
		background: #f6f6f6;
	}
	#common-shortcut .container {
		padding: 15px;
	}
	#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 'nscjk-m', 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;
	}
}

/* =====================
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: normal 14px/1 'nscjk-m', sans-serif;
}

#fnav nav>ul>li>a small {
	display: block;
	border-bottom: 2px solid #fff;
	padding-bottom: 9px;
	margin-bottom: 14px;
	font: normal 10px 'roboto-r', sans-serif;
	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 'nscjk-m', 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;
}

/* =====================
footer for sp
===================== */

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

/* =====================
common
===================== */
.btn-default {
  background-color: #25925f;
  color: #fff;
  text-align: center;
  display: inline-block;
  font: 12px/1em 'nsans-b',serif;
  padding: 15px 10px 17px;
}
.arrow1-left {
  background-image: url(../images/introduction/consistency/ico-arrow1.png);
  background-repeat: no-repeat;
  background-position: 20px center;
}

.t-left {
	text-align: left;
}
.t-center {
	text-align: center;
}
.t-right {
	text-align: right;
}
@media all and (min-width:800px) {
	.btn-default {
    padding: 19px 10px 21px;
    font: 15px/1em 'nsans-b',serif;
  }
  .btn-default:hover {
    color: #fff;
    opacity:.75;
  }
  .arrow1-left {
    background-position: 30px center;
  }
	#sp-logo {
		display: none;
	}
	.left {
		float: left;
	}
	.right {
		float: right;
	}
	.pc-none {
		display: none;
	}
	.sp-none {
		display: block;
	}
	.column-1 {
		width: 8.3333333333%;
	}
	.column-2 {
		width: 16.6666666666%;
	}
	.column-3 {
		width: 25%;
	}
	.column-4 {
		width: 25%;
	}
	.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) {
	#fnav nav>ul>li {
		width: 100%;
	}
	#fnav nav>ul>li>ul {
		display: none;
	}
	.pc-none {
		display: 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%;
	}
}
/* =====================
	message-table
===================== */

#message table{
	line-height: 150%;
}
