@charset "utf-8";
/* CSS Document */
.pc-only {
	display: none !important;
}
.pc-only2 {
	display: none !important;
}
.inner {
	width: 100%;
	padding: 1rem;
}
img {
	max-width: 100%;
	display: block;
}
html {
	font-size: 62.5%;
}
body {
	font-size: 1.6rem;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "MS Pゴシック", sans-serif;
	color: #333;
	line-height: 1.7;
	font-weight: 500;
}
a {
	display: block;
}
.title {
	padding: 0 0 2rem;
	margin: 0 auto;
}
header a:hover {
	opacity: 0.8;
}
/*---------------------------------------------------header-------------------------------------------------------------*/
header {
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #fff;
}
header ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
}
header .header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header .logo {
	width: 10rem;
	margin: 0 1rem 0 0.5rem;
}
header ul li a {
	padding: 0.5rem 0;
	font-size: 1.2rem;
	color: #fff;
	text-align: center;
}
header ul li {
	flex: 1;
}
header ul li:first-child a {
	background-color: #F29400;
}
header ul li:nth-child(2) a {
	background-color: #0067C3;
}
header ul li:nth-child(3) a {
	background-color: #E61755;
}
header ul li:nth-child(4) a {
	background-color: #43A56A;
}
header ul li img {
	width: 2.1rem;
	padding-bottom: 0.5rem;
	margin: 0 auto;
}
header ul li:nth-child(4) .narrow {
	letter-spacing: -0.2rem;
}
/*---------------------------------------------------mainvisual-------------------------------------------------------------*/
.mainvisual {
	background-image: url("img/mv-img.jpg");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 53rem;
	margin-top: 5rem;
	overflow: hidden;
}
.mainvisual .inner {
	position: relative;
	height: 53rem;
}
.mainvisual .copy-01 {
	position: absolute;
	top: 3rem;
	left: 1.5rem;
	width: 55%;
}
.mainvisual .copy-02 {
	position: absolute;
	top: 5.5rem;
	right: 1.5rem;
	width: 55%;
	animation-delay: 1s;
}
.mainvisual .copy-03 {
	position: absolute;
	top: 12rem;
	left: 7%;
	width: 90%;
	animation-delay: 2s;
}
.mainvisual .copy-04 {
	position: absolute;
	bottom: 3rem;
	right: 2rem;
	width: 50%;
}
/*---------------------------------------------------reason-------------------------------------------------------------*/
.reason {
	background-image: url("img/dot-base.png");
	
}
.reason .inner {
	padding: 2rem 1rem 0;
}
.reason .title {
	padding: 0 0 3rem;
}
.reason .sub-title {
	position: relative;
	padding: 0 0 2rem;
}
.reason h2 {
	font-size: 2.3rem;
	color: #43A56A;
	position: relative;
	margin: 0 0 0 8rem;
	border-bottom: 0.1rem solid;
	line-height: 1.5;
}
.reason .first .sub-title:before {
	content: '';
	background: url("img/reason-num-01.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 7rem;
	height: 8rem;
	top: 0;
	left: 0;
}
.reason .second .sub-title:before {
	content: '';
	background: url("img/reason-num-02.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 7.3rem;
	height: 8.05rem;
	top: 0;
	left: 0;
}
.reason .third .sub-title:before {
	content: '';
	background: url("img/reason-num-03.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 7.3rem;
	height: 8.05rem;
	top: 0;
	left: 0;
}
.reason h2 strong {
	color: #FF6A39;
	font-size: 2.6rem;
}
.reason .wrap img {
	width: 90%;
	margin: 0 0 0 auto;
}
.reason .wrap p {
	background: rgb(105,183,136);
	background: linear-gradient(90deg, rgba(105,183,136,1) 0%, rgba(67,165,106,1) 54%);
	color: #fff;
	padding: 9rem 1rem 2rem;
	margin: -7rem 0 0;
	text-align: justify;
}
.reason .wrap p span {
	color: #FFFF49;
}
.reason .second .sub-title span {
	margin-left: -1.3rem;
}
.reason .sub-title .narrow {
	letter-spacing: -0.1rem;
}
.reason .common {
	padding: 0 0 4rem;
}
.reason .more-title {
	width: 80%;
	margin: 0 auto 1rem;
}
.reason .more-img {
	width: 90%;
	margin: 0 0 0 auto;
	z-index: 100;
}
.reason .more {
	background: rgb(105,183,136);
	background: linear-gradient(90deg, rgba(105,183,136,1) 0%, rgba(67,165,106,1) 54%);
	padding: 8rem 1rem 1rem;
	margin: -7rem 0 0;
}
.reason .more-wrap {
	position: relative;
}
.reason .reason-call {
	position: absolute;
	bottom: -2rem;
	left: 1rem;
	width: 10rem;
}
.reason .more h3 {
	color: #FFFF49;
	font-size: 2.2rem;
	text-align: center;
	padding: 1rem 0 2rem;
}
.reason .more h3 span {
	margin-left: -1.5rem;
}
.reason .more p {
	text-align: justify;
	color: #fff;
}
.reason .more ul li {
	background-color: #fff;
	text-align: center;
	margin-top: 1rem;
	border-radius: 0.5rem;
	padding: 1rem 0;
}
.reason .more ul li h4 {
	font-size: 2.3rem;
	color: #FF6A39;
}
.reason .more ul li h5 {
	color: #43A56A;
}
.reason .more p.exa {
	text-align: right;
}

/*--------------------------------------------------cta--------------------------------------------------------------*/
.cta {
	background-color: #FFFFAA;
}
.cta .inner {
	padding: 3rem 1rem 2rem;
}
.cta .note-copy, .cta .exp-copy {
	width: 90%;
	margin: 0 auto 1rem;
}
.cta ul li {
	padding: 4rem 0 0;
}

.note {
	position: relative;
	background-color: #0067C3;
	border-radius: 33px;
	color: #fff;
	line-height: 66px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 4px 0 #00476D;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
	text-align: center;
	font-size: 2.5rem;
}
.note:hover {
	top: -4px;
	box-shadow: 0 7px 0 #00476D;
}
.note:active {
	top: 4px;
	box-shadow: none; 
}
.note small {
	font-size: 1.8rem;
}
.note p {
	position: relative;
	padding-left: 2rem;
}
.note p:before {
	content: '';
	background: url("img/cta-note-icon.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 5.25rem;
	height: 3.05rem;
	top: 50%;
	transform: translateY(-50%);
	left: 2rem;
}
.note p:after {
	content: '';
	background: url("img/arrow-w.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 0.95rem;
	height: 1.5rem;
	top: 50%;
	transform: translateY(-50%);
	right: 2rem;
}
.exp {
	position: relative;
	background-color: #E61755;
	border-radius: 33px;
	color: #fff;
	line-height: 66px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 4px 0 #AF1031;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
	text-align: center;
	font-size: 2.5rem;
}
.exp:hover {
	top: -4px;
	box-shadow: 0 7px 0 #AF1031;
}
.exp:active {
	top: 4px;
	box-shadow: none; 
}
.exp small {
	font-size: 1.8rem;
}
.exp p {
	position: relative;
	padding-left: 2rem;
}
.exp p:before {
	content: '';
	background: url("img/cta-exp-icon.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 5.25rem;
	height: 3.05rem;
	top: 50%;
	transform: translateY(-50%);
	left: 2rem;
}
.exp p:after {
	content: '';
	background: url("img/arrow-w.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 0.95rem;
	height: 1.5rem;
	top: 50%;
	transform: translateY(-50%);
	right: 2rem;
}
.tel-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 2rem auto 0;
	width: 100%;
	padding: 0 0 0 1.5rem;
}
.tel-copy:before {
	content: '';
	background: url("img/cta-tel-icon.png") no-repeat;
	background-size: contain;
	position: absolute;
	width: 2.3rem;
	height: 3rem;
	top: 50%;
	transform: translateY(-50%);
	left: -2rem;
}
.tel-num {
	font-size: 2.6rem;
	text-decoration: underline;
	color: #FF6A39;
	font-weight: 600;
	padding: 0 0 0 0.5rem;
}
.tel-copy {
	font-size: 1.4rem;
	line-height: 1;
	position: relative;
}
.tel-copy small {
	font-size: 0.9rem;
}
/*---------------------------------------------------pass-------------------------------------------------------------*/
.pass h3 {
	font-size: 3rem;
	text-align: center;
	padding: 2rem 0 1rem;
	color: #fff;
}
.pass h3 small {
	font-size: 1.6rem;
}
.pass .pass-copy {
	width: 90%;
	margin: 2rem auto;
}
.pass .passed-result {
	background-color: #43A56A;
	padding: 1rem;
}
.pass .school {
	background-color: #fff;
	padding: 1rem;
	margin: 1rem 0 0;
}
.pass .title {
	padding: 2rem 0 1rem;
}
.pass p.date {
	text-align: right;
	color: #fff;
	font-size: 1.2rem;
}
.passed-result .table-line {
	display: flex;
	justify-content: space-between;
	font-size: 1.5rem;
	width: 100%;
}
.tab-1 {
	flex: 1;
	margin-right: 0.5rem;
}
.tab-2 {
	flex: 1;
	margin-left: 0.5rem;
}
.passed-result table {
	width: 100%;
	margin: 0 auto;
}
.pass .school h6 {
	text-align: center;
	background-color: #43A56A;
	color: #fff;
	padding: 1rem;
	font-size: 1.8rem;
	margin-bottom: 1rem;
}
.pass .school .narrow{
	letter-spacing: -0.1rem;
	font-size: 1.4rem
}
.pass .school .number {
	text-align: right;
	letter-spacing: -0.05rem;
}
.pass .school td {
	border-bottom: 0.1rem solid #3e3a39;
	padding-top: 1rem;
}
.pass .school .other {
	text-align: right;
	margin: 1rem 0 0;
}
/*---------------------------------------------------book-------------------------------------------------------------*/
.book .inner {
	padding: 2rem 1rem;
}
.book .book-copy {
	width: 22.5rem;
	margin: 0 auto;
	padding: 0 0 1rem 0;
}
.book .title {
	padding: 0 1rem 1rem;
}
#book dt {
	display: flex;
	background-color: #E3F1E9;
	padding: 1.5rem 1.5rem 3.5rem 0.5rem;
	position: relative;
	cursor: pointer;
	margin: 2rem 0rem 1rem;
	border: 0.1rem solid #43A56A;
}
#book dd {
	display: none;
	padding: 1rem;
	text-align: justify;
}
#book dt:after {
	position: absolute;
	bottom: 2%;
	left: 50%;
	transform: translateX(-50%);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	white-space: pre;
	content: "read more \f078";
	color: #43A56A;
	font-size: 1.3rem;
}
#book dt.triangle:after {
	content: "\f077";
	font-size: 1.3rem;
}
.book-img {
	flex: 1;
	margin: -2.5rem 1rem 0 0;
}
.book-person {
	flex: 3;
}
.book-person p {
	font-size: 1.3rem;
	margin-bottom: 0.5rem;
	line-height: 1.5
}
.book-person h6 {
	color: #FF6A39;
	line-height: 1.5;
	font-size: 1.8rem;
	padding: 0 0 1rem;
}
/*---------------------------------------------------flow-------------------------------------------------------------*/
.flow {
	background-color: #E3F1E9;
	padding: 2rem 0 0;
}
.flow ul li .wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: 0.2rem solid #43A56A;
	padding: 2rem 1.5rem;
	position: relative;
	background-color: #fff;
}
.flow ul li .wrap:not(.no-arrow):after {
	content: '';
	position: absolute;
	background: url("img/flow-arrow.png") no-repeat;
	background-size: contain;
	width: 3.8rem;
	height: 1.0rem;
	bottom: -1.8rem;
	left: 50%;
	transform: translateX(-50%);
}
.flow ul li:not(:last-child) {
	margin-bottom: 2rem;
}
.flow ul li .wrap .flow-icon {
	width: 8.2rem;
	margin-right: 1.5rem;
}
.flow ul li .wrap h6 {
	color: #FF6A39;
	font-size: 2.25rem;
}
.flow ul li .wrap p {
	text-align: justify;
	line-height: 1.5;
	font-size: 1.5rem;
}
/*--------------------------------------------------room-------------------------------------------------------------*/
.room .inner {
	padding: 3rem 1rem 2rem;
}

#search h7 {
	display: block;
	background-color: #D9EDE1;
	padding: 2rem;
	position: relative;
	cursor: pointer;
	margin: 1rem 0 0;
	font-size: 1.6rem;
	color: #43A56A;
	text-align: left;
	border-radius: 1rem;
}
#search .room2 {
	display: none;
	padding: 0.1rem 1rem;
}

#search h7:after {
	position: absolute;
	top: 50%;
	right: 1%;
	transform: translateY(-50%);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	white-space: pre;
	content: "\f078";
	color: #43A56A;
	font-size: 1.6rem;
}
#search h7.triangle:after {
	content: "\f077";
}
.room .ac2 {
	text-align: center;
	width: 350px;
	font-weight: bold;
	margin: 0 25px;
	display: inline-block;
	vertical-align: top;
}
.room .ac2 li {
	background: #ECF6F0;
	width: 100%;
	padding: 1.5rem;
	border-radius: 1rem;
	margin: 1rem 0 0;
	font-size: 1.6rem;
	font-weight: normal;
}
.room .ac2 a {
	display: block;
	color: #3e3a39;
}
.room .ac2 {
	width: 100%;
	margin: 0;
}


/*-----------------------------------------------------footer-----------------------------------------------------------*/
footer img {
	margin: 0 auto;
	width: 15rem;
	padding: 2rem 0 2rem 0;
}
footer p {
	font-size: 1.4rem;
	text-align: center;
	background-color: #43A56A;
	color: #fff;
}
/*-----------------------------------------------------pop up-----------------------------------------------------------*/
.mfp-close {
	z-index: 10;
	position: relative;
	font-size: 4rem;
	width: auto;
	height: auto;
	padding: 0;
	cursor: pointer;
 }
.popup-wrap h2 {
	background-color: #43A56A;
	color: #fff;
	text-align: center;
	padding: 1rem;
	font-size: 2rem;
	letter-spacing: 0.2rem;
}
.popup-wrap img {
	margin: 0 auto;
	padding: 2rem 0 0;
	width: 20rem;
}
.popup-wrap .address {
	padding: 1rem 0 0;
}
.popup-wrap-inner {
	width: 100%;
	padding: 1rem;
}
.popup-wrap p.tel-num-pop {
	font-size: 2.4rem;
}
.cta.pop {
	background-color: #fff;
}
.cta.pop ul li:first-child {
	padding: 2rem 0 0;
}
.cta.pop ul li:nth-child(2) {
	padding: 3rem 0 0;
}
/*-----------------------------------------------------information----------------------------------------------------------*/
.information {
	padding: 2rem;
}
.information .inner {
	border: 0.1rem solid #FF0000;
	padding: 1.5rem;
}
.information p.main-p {
	text-align: center;
	padding: 0 0 1rem;
}
.information a {
	display: inline;
	text-decoration: underline;
}

/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------タブレット／ブレイクポイント-------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
	@media screen and (min-width:768px) {
		.sp-only {
			display: none !important;
		}
		.pc-only {
			display: block !important;
		}
		a[href^="tel:"] {
			pointer-events: none;
		}
		
/*---------------------------------------------------header-------------------------------------------------------------*/		
		header {
			position: static;
		}
		header ul li a {
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 1.5rem 0;
			font-size: 1.4rem;
		}
		header .logo {
			width: 15rem;
		}
		header ul li a img {
			width: 3.2rem;
			margin: 0;
			margin-right: 1rem;
			padding-bottom: 0;
		}
		header ul li a span.pc-only {
			display: inline-block !important;
		}
		header ul li:nth-child(5) a {
			background-color: #43A56A;
		}
	/*---------------------------------------------------mainvisual-------------------------------------------------------------*/	
		.mainvisual {
			margin: 0;
			background-image: url("img/mv-img-pc.jpg");
			height: 55rem;
		}
		.mainvisual .inner {
			height: 55rem;
		}
		.mainvisual .copy-01 {
			width: auto;
			top: 3.4rem;
			right: 24rem;
			left: auto;
		}
		.mainvisual .copy-02 {
			width: auto;
			top: 6.8rem;
			right: 2.3rem;
		}
		.mainvisual .copy-03 {
			width: auto;
			top: 16.5rem;
			right: 0;
			left: auto;
		}
		.mainvisual .copy-04 {
			width: 40%;
			bottom: 3.5rem;
			right: 1.3rem;
		}
		
/*-------------------------------------------------reason---------------------------------------------------------------*/		
		.reason .inner {
			padding: 6rem 1rem 0;
		}
		.reason .title {
			padding: 0 0 6rem;
		}
		.reason .common {
			padding: 0 0 10rem;
		}
		.reason h2 {
			font-size: 3.5rem;
		}
		.reason h2 strong {
			font-size: 4rem;
		}
		.reason .sub-title .narrow {
			letter-spacing: -0.5rem;
		}
		.reason .common .wrap {
			position: relative;
			padding: 3rem 0 0;
		}
		.reason .common .wrap .reason-img {
			width: 40rem;
			position: absolute;
			top: 0rem;
			right: 0;
		}
		.reason .wrap p {
			padding: 3rem 41rem 3rem 3rem;
			margin: 0;
		}
		.reason .second .wrap p {
			padding: 2rem 41rem 2rem 3rem;
			margin: 0;
		}
		.more-wrap {
			position: relative;
		}
		.more .more-img {
			position: absolute;
			top: 0;
			right: 0;
			width: 36rem;
		}
		.reason .more {
			padding: 3rem 36rem 1rem 3rem;
			margin: 0;
			position: relative;
		}
		.reason .more ul {
			display: flex;
			justify-content: space-between;
		}
		.reason .more ul li {
			width: calc((100% - 1.5rem) / 3);
			line-height: 1.5;
		}
		.reason .more ul li h4 {
			font-size: 1.8rem;
		}
		.reason .more ul li h4.narrow {
			letter-spacing: -0.1rem;
		}
		.reason .more ul li h5 {
			font-size: 1.4rem;
		}
		.reason .reason-call {
			top: -3rem;
			left: 0;
		}
		.reason .more h3 {
			font-size: 2.5rem;
		}
		.reason .more-title {
			width: auto;
			margin: 0 auto 2rem;
			
		}
/*-------------------------------------------------cta---------------------------------------------------------------*/	
		.cta .inner {
			padding: 4rem 1rem 2rem;
		}
		.cta ul {
			display: flex;
			justify-content: space-between;
			align-items: center;
		}
		.cta ul li {
			width: calc((100% - 2rem) / 2);
		}
		.cta ul li a {
			letter-spacing: 0.1rem;
		}
		.tel-num {
			font-size: 3.3rem;
			padding: 0 0 0 1rem;
		}
		.tel-copy {
			font-size: 1.8rem;
		}
		.tel-copy small {
			font-size: 1.2rem;
		}
		.cta ul li {
			padding: 2rem 0;
		}
		
/*-------------------------------------------------pass--------------------------------------------------------------*/	
		.pass .school-wrap {
			display: flex;
			justify-content: space-between;
		}
		.pass .school {
			width: calc((100% - 2rem) / 3);
		}
		.passed-result .table-line {
			display: block;
			font-size: 1.7rem;
		}
		.pass .pass-copy {
			width: auto;
			margin: 4rem auto 2rem;
			padding: 0 1rem;
		}
		.tab-1 {
			margin-right: 0;
		}
		.tab-2 {
			margin-left: 0;
		}
		
		/*------------------------------------------------book---------------------------------------------------------------*/			
		.ac {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			align-items: flex-start;
		}
		.ac dl {
			width: calc((100% - 2rem) / 2);
		}
		.book .book-copy {
			width: auto;
		}
		.book-person.line h6 {
			padding: 0;
			line-height: 1.24;
		}
		.book .inner {
			padding: 4rem 1rem 3rem;
		}
		.book .title {
			padding: 1rem 0 3rem;
		}
/*-----------------------------------------------flow---------------------------------------------------------------*/	
		.flow ul {
			max-width: 74rem;
			margin: 0 auto;
		}
		.flow .flow-right {
			width: 80%;
		}
		.flow .title {
			padding: 0 0 5rem;
		}
		.flow .inner {
			padding: 4rem 0 7rem;
		} 
/*-----------------------------------------------room---------------------------------------------------------------*/		
		.room .inner {
			padding: 5rem 1rem 5rem;
		}
/*---------------------------------------------------fix-------------------------------------------------------------*/			
		.fix {
			position: fixed;
			top: 10rem;
			right: 0;
			z-index: 100;
		}
		.fix a:hover {
			opacity: 0.8;
		}
/*---------------------------------------------------PageTopBtn-------------------------------------------------------------*/				
		#PageTopBtn {
			width: 140rem;
			margin: 0 auto;
		}
		.back-to-top {
			position: fixed;
			bottom: 3rem;
			left: auto;
			margin: 0 0 0 140rem;
			cursor: pointer;
		}
		a.back-to-top:hover {
			opacity: 0.8;
		}		
/*-----------------------------------------------------information----------------------------------------------------------*/
		.information {
			padding: 4rem 6rem;
		}
		.information p {
			text-align: center;
		}
		
		
		
	}
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------PC／ブレイクポイント-------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
		@media screen and (min-width:1000px) {
			.pc-only2 {
				display: block !important;
			}
			.tb-only {
				display: none !important;
			}
			header ul {
				width: 70%;
			}
			header ul li a p {
				position: relative;
			}
			header ul li a p:after {
				content: '';
				background: url("img/arrow-w.png") no-repeat;
				background-size: contain;
				position: absolute;
				width: 0.95rem;
				height: 1.5rem;
				top: 50%;
				transform: translateY(-50%);
				right: -2rem; 
			} 
			header ul li a {
				font-size: 1.8rem;
			}
			header ul li a img {
				margin-left: -2rem;
			}
			header .logo {
				width: 18rem;
			}
			header {
				max-width: 120rem;
				margin: 0 auto;
			}
		/*---------------------------------------------------mainvisual-------------------------------------------------------------*/	
			.mainvisual {
				margin: 0;
				background-image: url("img/mv-img-pc.jpg");
				height: 68rem;
			}
			.mainvisual .inner {
				height: 68rem;
				max-width: 110rem;
				margin: 0 auto;
			}
			.mainvisual .copy-01 {
				top: 4.5rem;
				right: 25rem;	
			}
			.mainvisual .copy-02 {
				top: 9rem;
				right: 2.3rem;
			}
			.mainvisual .copy-03 {
				top: 20rem;
				right: 0;	
			}
			.mainvisual .copy-04 {
				width: auto;
				bottom: 6.5rem;
				right: 6.3rem;
			}	
		/*---------------------------------------------------reason-------------------------------------------------------------*/		
			.reason .inner {
				max-width: 100rem;
				margin: 0 auto;
			}
			.reason .common .wrap .reason-img {
				width: 46.7rem;
				position: absolute;
				top: 0rem;
				right: 0;
			}
			.reason .wrap p {
				padding: 5.5rem 50rem 5.5rem 5rem;
				margin: 0;
				font-size: 1.8rem;
				line-height: 1.8;
			}
			.reason .second .wrap p {
				padding: 4.5rem 50rem 4.5rem 5rem;
			}
			.reason h2 {
				font-size: 4rem;
				margin: 0 0 0 9rem;
			}
			.reason h2 strong {
				font-size: 4.5rem;
			}
			.reason .sub-title .narrow {
				letter-spacing: 0;
			}
			.reason .sub-title {
				padding: 0 0 3rem;
			}
			.reason .more-title {
				margin: 5rem auto 3rem;
			}
			.more .more-img {
				width: 47.7rem;
				position: absolute;
				top: 0;
				right: 0;
			}
			.reason .more h3 {
				font-size: 4rem;
			}
			.reason .more p {
				font-size: 1.8rem;
			}
			.reason .more {
				padding: 3rem 50rem 0.7rem 12rem;
				width: 130rem;
				
			}
			.reason .more ul li {
				width: 21rem;
				height: 21rem;
				border-radius: 21rem;
				padding: 5rem 1rem;
				margin-top: 2rem;
			}
			.reason .more ul li:first-child {
				padding: 3rem 1rem;
			}
			.reason .more ul li h4 {
				font-size: 2.4rem;
			}
			.reason .more ul li:first-child h4 {
				font-size: 2rem;
				line-height: 1.2;
				padding: .7rem 0 0;
			}
			.reason .more ul li h4.row {
				margin-top: 1.5rem;
			}
			.reason .more ul li h5 {
				font-size: 1.8rem;
			}
			.reason .more .reason-call {
				width: auto;
				top: -3rem;
				left: 8rem;
			}
			.reason .more-main {
				width: 130rem;
				margin: 0 auto;
				padding: 0 0 8rem;
			}
	/*---------------------------------------------------cta-------------------------------------------------------------*/	
			.cta .inner {
				max-width: 100rem;
				margin: 0 auto;
				padding: 6rem 0;
			}
			.cta ul li {
				width: calc((100% - 4rem) / 2);
				padding: 3rem 0 0;
			}
			.cta ul li a {
				font-size: 3.3rem;
				line-height: 7.4rem;
				border-radius: 5rem;
			}
			.cta ul li a small {
				font-size: 2.2rem;
			}
			.note p:before {
				width: 7rem;
				height: 4rem;
				left: 5rem;
			}
			.exp p:before {
				width: 7rem;
				height: 4rem;
				left: 5rem;
			}
			.cta .tel-wrap {
				padding: 2rem 0 0;
			}
			.tel-num {
				font-size: 4rem
			}
			.tel-copy {
				font-size: 2rem;
			}
			.tel-copy small {
				font-size: 1.4rem;
			}
			.tel-copy:before {
				left: -3rem;
			}
	/*---------------------------------------------------pass-------------------------------------------------------------*/
			.pass .pass-copy {
				margin: 8rem auto 3rem;
			}
			.pass {
				max-width: 100rem;
				margin: 0 auto;
			}
			.pass h3 {
				font-size: 5rem;
				padding: 4rem 0 4rem;
				letter-spacing: .1rem;
			}
			.pass h3 small {
				font-size: 2rem;
			}
			.pass .title {
				padding: 3rem 0 4rem;
			}
			.pass p.date {
				font-size: 1.4rem;
			}
			.pass .passed-result {
				padding: 2rem 4rem 4rem;
			}
			.pass .school {
				width: calc((100% - 4rem) / 3);
				padding: 2rem;
			}
			.pass .school h6 {
				font-size: 2.4rem;
			}
			.passed-result .table-line {
				font-size: 2.2rem;
			}
			.pass .school .narrow{
				font-size: 2.2rem;
			}
		/*---------------------------------------------------book-------------------------------------------------------------*/
			.book .inner {
				max-width: 100rem;
				margin: 0 auto;
				padding: 8rem 0 5rem;
			}
			.book-person h6, .book-person.line h6 {
				padding: 0 0 2rem;
				line-height: 1.7;
			}
			.book-person p {
				font-size: 1.5rem;
			}
			#book dt:after {
				font-size: 1.6rem;
			}
			.book-person h6 {
				font-size: 2rem;
			}
			.book-person h6.narrow {
				letter-spacing: -0.1rem;
			}
			
		/*---------------------------------------------------flow-------------------------------------------------------------*/	
			
			.flow ul {
				display: flex;
				justify-content: space-between;
				max-width: 100rem;
			}
			.flow ul li {
				width: calc((100% - 10rem) / 5);
				display: flex;
			}
			.flow ul li .wrap {
				display: block;
				text-align: center;
			}
			.flow ul li .wrap .flow-icon {
				margin: 0 auto;
			}
			.flow ul li .wrap h6 {
				font-size: 2rem;
				padding: 2rem 0 1rem;
			}
			.flow .flow-right {
				width: auto;
			}
			.flow ul li .wrap:not(.no-arrow):after {
				content: '';
				position: absolute;
				background: url("img/flow-arrow-pc.png") no-repeat;
				background-size: contain;
				width: 1rem;
				height: 4.5rem;
				top: 50%;
				right: -2rem;
				transform: translateY(-50%);
				left: auto;
			}
			.flow ul li:not(:last-child) {
				margin-bottom: 0;
			}

		/*---------------------------------------------------room-------------------------------------------------------------*/		
			
			.sagasu {
				max-width: 960px;
				position: relative;
				margin: 0 auto;
			}
			.map {
				height: 840px;
				background-image: url(img/mapline2.png);
				background-size: cover;
				background-position: center;
				max-width: 960px;
				position: relative;
				margin: 5rem auto 0;
			}
			.inline-link {
				box-shadow: 0 2px 0 #333;
				position: relative;
				transition: .1s;
				cursor: pointer;
			}
			
			.mfp-content {
				width: 85rem;
			}
			.popup-wrap .school {
				display: flex;
				justify-content: center;
				align-items: flex-start;
			}
			.mfp-close {
				font-size: 4rem;
				padding: 2rem 0 0;
			 }
			.popup-wrap h2 {
				padding: 2rem;
				font-size: 2.4rem;
				letter-spacing: 0.3rem;
			}
			.popup-wrap img {
				margin: 0 5rem 0 0;
				padding: 0;
			}
			.popup-wrap .address {
				padding: 0;
			}
			.popup-wrap-inner {
				width: 100%;
				padding: 4rem 3rem 2rem;
			}
			.popup-wrap .address p {
				font-size: 1.8rem;
			}
			.popup-wrap .address p.tel-num-pop {
				font-size: 2.6rem;
			}
			
			.cta.pop ul li:first-child {
				padding: 0;
			}
			.cta.pop ul li:nth-child(2) {
				padding: 0;
			}
			.cta.pop ul {
				padding: 4rem 0 0;
			}
			.cta.pop .exp p:before {
				width: 6rem;
				height: 3rem;
				left: 2rem;
			}
			.cta.pop .note p:before {
				width: 6rem;
				height: 3rem;
				left: 2rem;
			}
			.cta.pop ul li a {
				font-size: 2.4rem;
				line-height: 2.5;
			}
			.cta.pop .tel-num {
				font-size: 3rem;
			}
			.cta.pop .tel-copy small {
				font-size: 1.4rem;
			}
			
			
			.yachiyocyuo {
				position: absolute;
				left: 480px;
				top: 90px;
			}
			.yachiyocyuo:hover {
				top: 92px;
				box-shadow: 0 0px 0 #333;
			}
			.gyotoku {
				position: absolute;
				left: 133px;
				top: 200px;
			}
			.gyotoku:hover {
				top: 202px;
				box-shadow: 0 0px 0 #333;
			}
			.hunabashi {
				position: absolute;
				left: 272px;
				top: 131px;
			}
			.hunabashi:hover {
				top: 133px;
				box-shadow: 0 0px 0 #333;
			}
			.nishihunabashi {
				position: absolute;
				left: 110px;
				top: 131px;
			}
			.nishihunabashi:hover {
				top: 133px;
				box-shadow: 0 0px 0 #333;
			}
			.tsudanuma {
				position: absolute;
				left: 308px;
				top: 182px;
			}
			.tsudanuma:hover {
				top: 184px;
				box-shadow: 0 0px 0 #333;
			}
			.makuharihongo {
				position: absolute;
				left: 350px;
				top: 234px;
			}
			.makuharihongo:hover {
				top: 236px;
				box-shadow: 0 0px 0 #333;
			}
			.shinkenmigawa {
				position: absolute;
				left: 405px;
				top: 288px;
			}
			.shinkenmigawa:hover {
				top: 290px;
				box-shadow: 0 0px 0 #333;
			}
			.inage {
				position: absolute;
				left: 468px;
				top: 341px;
			}
			.inage:hover {
				top: 343px;
				box-shadow: 0 0px 0 #333;
			}
			.nishichiba {
				position: absolute;
				left: 510px;
				top: 395px;
			}
			.nishichiba:hover {
				top: 397px;
				box-shadow: 0 0px 0 #333;
			}
			.chiba {
				position: absolute;
				left: 575px;
				top: 454px;
			}
			.chiba:hover {
				top: 456px;
				box-shadow: 0 0px 0 #333;
			}
			.yachimata {
				position: absolute;
				left: 860px;
				top: 357px;
			}
			.yachimata:hover {
				top: 359px;
				box-shadow: 0 0px 0 #333;
			}
			.narita {
				position: absolute;
				left: 830px;
				top: 224px;
			}
			.narita:hover {
				top: 226px;
				box-shadow: 0 0px 0 #333;
			}
			.sakura {
				position: absolute;
				left: 775px;
				top: 284px;
			}
			.sakura:hover {
				top: 286px;
				box-shadow: 0 0px 0 #333;
			}
			.yotsukaido {
				position: absolute;
				left: 710px;
				top: 339px;
			}
			.yotsukaido:hover {
				top: 341px;
				box-shadow: 0 0px 0 #333;
			}
			.tsuga {
				position: absolute;
				left: 656px;
				top: 395px;
			}
			.tsuga:hover {
				top: 397px;
				box-shadow: 0 0px 0 #333;
			}
			.shinurayasu {
				position: absolute;
				left: 116px;
				top: 341px;
			}
			.shinurayasu:hover {
				top: 343px;
				box-shadow: 0 0px 0 #333;
			}
			.makuharibaytown {
				position: absolute;
				left: 320px;
				top: 384px;
			}
			.makuharibaytown:hover {
				top: 386px;
				box-shadow: 0 0px 0 #333;
			}
			.inagekaigan {
				position: absolute;
				left: 400px;
				top: 447px;
			}
			.inagekaigan:hover {
				top: 449px;
				box-shadow: 0 0px 0 #333;
			}
			.chibaminato {
				position: absolute;
				left: 460px;
				top: 507px;
			}
			.chibaminato:hover {
				top: 509px;
				box-shadow: 0 0px 0 #333;
			}
			.soga {
				position: absolute;
				left: 570px;
				top: 577px;
			}
			.soga:hover {
				top: 579px;
				box-shadow: 0 0px 0 #333;
			}
			.mobara {
				position: absolute;
				left: 810px;
				top: 787px;
			}
			.mobara:hover {
				top: 789px;
				box-shadow: 0 0px 0 #333;
			}
			.tougane {
				position: absolute;
				left: 860px;
				top: 627px;
			}
			.tougane:hover {
				top: 629px;
				box-shadow: 0 0px 0 #333;
			}
			.toke {
				position: absolute;
				left: 756px;
				top: 687px;
			}
			.toke:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.honda {
				position: absolute;
				left: 650px;
				top: 687px;
			}
			.honda:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.kamatori {
				position: absolute;
				left: 610px;
				top: 632px;
			}
			.kamatori:hover {
				top: 634px;
				box-shadow: 0 0px 0 #333;
			}
			.kimitsu {
				position: absolute;
				left: 0px;
				top: 687px;
			}
			.kimitsu:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.kisarazu {
				position: absolute;
				left: 120px;
				top: 687px;
			}
			.kisarazu:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.anesaki {
				position: absolute;
				left: 260px;
				top: 687px;
			}
			.anesaki:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.goi {
				position: absolute;
				left: 370px;
				top: 687px;
			}
			.goi:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.yawata {
				position: absolute;
				left: 480px;
				top: 687px;
			}
			.yawata:hover {
				top: 689px;
				box-shadow: 0 0px 0 #333;
			}
			.ootakanomori {
				position: absolute;
				left: 250px;
				top: 0px;
			}
			.ootakanomori:hover {
				top: 2px;
				box-shadow: 0 0px 0 #333;
			}
			.mappen {
				position: absolute;
				left: 0px;
				top: 520px;
				z-index: 100;
			}
			footer img {
				padding: 4rem 0;
				width: 20rem;
			}
/*-----------------------------------------------------information----------------------------------------------------------*/
			.information {
				padding: 6rem;
			}
			.information .inner {
				width: 100rem;
				margin: 0 auto;
				padding: 3rem;
			}
			.information p.main-p {
				font-size: 2.3rem;
				padding: 0 0 2rem;
			}
			.information p:not(.main-p) {
				line-height: 2;
				font-size: 1.8rem;
			}
		}

			@media screen and (max-width:320px) {
				.tel-num {
					font-size: 2.3rem;
				}
				.reason .more h3 {
					font-size: 2rem;
				}

			}

/*-----------------------誉田校--グレーアウト---2023.2.6--------------------------------------------------*/
.room .ac2 li.grayout {
	background: #e6e6e6;
}
.room .ac2 li.grayout a {
	color: #8d8c8c;
}
@media screen and (min-width:1000px) {
	
	.inline-link.honda {
		cursor: default;
	}
	.honda:hover {
		top: 687px;
		box-shadow: 0 2px 0 #333;
	}		
}
/*-------------------------------------------------------------------------------------------------------*/
