@charset "utf-8";
@font-face {
  font-family: kirigirisu;
  src: url("../font/TA-kirigirisu.otf");
}
/* CSS Document */
/* all device ------------------------------------------------------------------------------------------ */
/* common 
----------------------------------------------------- */
.pt0 {
	padding-top: 0 !important;
}
.bg-y {
	background: #FFF8E8;
}
.kome10 {
	text-indent: -1em;
	padding-left: 1em;
}
.dtlbtn {
	text-align: center;
}
.dtlbtn a {
	color: #fff;
	font-weight: bold;
	display: inline-block;
	margin-top: 2em;
	padding: .8em 1.8em;
}
.dtlbtn-p a {
	background: #FF83A4;
	margin-top: 3em;
	padding-right: .5em;
}
.dtlbtn-g a {
	background: #8FC21F;
	border-radius: 100vh;
}
.dtlbtn-g a img {
	width: 1em;
	vertical-align: baseline;
	display: inline-block;
}

article * {
	line-height: 1.5;
}
article p {
	font-family: "Noto Sans JP", sans-serif;
}
section h3.fukidashi {
	text-align: center;
	margin-bottom: .5em;
}
section h3.fukidashi span {
	background: url("../images/fukidashi-blue.svg") no-repeat center center / cover;
	font-family: "kirigirisu";
	color: #fff;
}
section h3.fukidashi.fukidashi-blue span {	background-image: url("../images/fukidashi-blue.svg");}
section h3.fukidashi.fukidashi-yellow1 span {	background-image: url("../images/fukidashi-yellow.svg");}
section h3.fukidashi.fukidashi-yellow2 span {	background-image: url("../images/fukidashi-yellow2.svg");	color: #85BADD;}
section h3.fukidashi.fukidashi-long span {	background-image: url("../images/fukidashi-blue-long.svg");}
/* side-apply
----------------------------------------------------- */
p.side-apply {
	position: fixed;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	z-index: 9999;
}
.side-apply a {
	background: #FF83A4;
	font-weight: bold;
	color: #fff;
	writing-mode: vertical-rl;
	padding: .8em .5em;
	border-radius: 24px 0 0 24px;
}
/* intro
----------------------------------------------------- */
#intro {
	color: #FF83A4;
}
#intro h3 {
	text-align: center;
	font-weight: bold;
	margin-bottom: .6em;
}
#intro p {
	line-height: 2 !important;
}
/* period
----------------------------------------------------- */
#period .period-cont {
	background: url("../images/period-frame.svg")no-repeat center center / 100%;
}
#period .period-cont p {
	text-align: center;
}
#period .period-cont .period-txt p {
	font-weight: bold;
	color: #FF83A4;
}
.marker {
  background-image: -webkit-linear-gradient(left,transparent 50%,#FFFFAB 50%);
  background-image: -moz-linear-gradient(left,transparent 50%,#FFFFAB 50%);
  background-image: -ms-linear-gradient(left,transparent 50%,#FFFFAB 50%);
  background-image: -o-linear-gradient(left,transparent 50%,#FFFFAB 50%);
  background-image: linear-gradient(left,transparent 50%,#FFFFAB 50%);
  background-repeat: repeat-x;
  background-size: 200% .3em;
  background-position: -100% 1em;
  transition: all 3.5s ease;
}
#period .period-cont .inbox {
	display:flex;
	flex-wrap: wrap;
	justify-content:center;
	align-items:center;
	align-content: center;
	padding: 2em 0;
}
#period .period-cont .inbox p {
	width: 100%;
}
/* enrollment
----------------------------------------------------- */
.enroll-box .txt-box {
	background: #fff;
	padding: 2em;
}
.enroll-box .txt-box p {
		text-align: center;
}
.enroll-box:first-of-type .txt-box {
	color: #71B5FF;
	border: 1px solid #71B5FF;
	margin-bottom: 5em;
}
.enroll-box:nth-of-type(2) .txt-box {
	color: #FC9920;
	border: 1px solid #FC9920;
	margin-bottom: 2em;
}
.enroll-box .txt-box span {
	color: #777;
	font-size: .825em;
}
/* apply
----------------------------------------------------- */
section#apply {
	padding-top: 0;
}
section#apply h3 {
	background: #FF83A4;
	font-family: "kirigirisu";
	color: #fff;
	text-align: center;
	padding: .3em 1em;
	position: relative;
}
section#apply h3:after {
	content: "";
	width: 0;
	height: 0;
	border-left: 35px solid transparent;
	border-right: 35px solid transparent;
	border-top: 35px solid #FF83A4;
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	bottom: -35px;
	margin: auto;
}
#apply p.txt-box {
	margin: 2.8em 0 1em;
}
#apply p.txt-box {
	color: #333;
	text-align: center;
}
#apply p.txt-box a {
	color: #FF83A4;
	font-weight: bold;
}
/* benefits
----------------------------------------------------- */
#benefits .benefits-txt {
	color: #333;
	text-align: center;
	margin: 1.6em 0;
}
#benefits .benefits-txt span {
	color: #FF83A4;
	font-weight: bold;
}
#benefits .flexbox {
	display: flex;
	justify-content: space-between;
}
#benefits .flexbox figure figcaption {
	color: #603813;
	text-align: center;
	margin-top: 1em;
}
/* contact
----------------------------------------------------- */
.contact-box p {
	text-align: center;
}
.contact-box p:first-child {
	margin-bottom: 1em;
}
/* ---------------------------------------------------------------------------------------------------- */
@media (min-width:1301px) {
	/* intro
	----------------------------------------------------- */
	#intro h3 {
		letter-spacing: .15em;
	}
	/* period
	----------------------------------------------------- */
	#period .period-cont {
		min-height: 726px;
	}
	#period .period-cont {
		min-height: 726px;
	}
	#period .period-cont .inbox {
		min-height: 726px;
	}
	#period .period-cont .period-img img {
		width: 1100px;
	}
}
/* End min-width:1301px */
/* ---------------------------------------------------------------------------------------------------- */
@media (min-width:751px) { /* min-width:751px 
	/* common 
	----------------------------------------------------- */
	.dtlbtn-p {
		font-size: 34px;
	}
	.dtlbtn-g {
		font-size: 30px;
	}
	section {
		padding: 100px 0;
	}
	section h3.fukidashi {
		font-size: 74px;
	}
	section h3.fukidashi span {	width: 430px; height: 126px; display: inline-block;}
	section h3.fukidashi.fukidashi-long span { width: 628px;}
	/* mv  
	----------------------------------------------------- */
	#mv {
			width: 100%; height:500px; max-width: 100%; position: relative;
			background: url("../images/mv.jpg") top center no-repeat; background-size: cover;
	}
	#mv h2 { width: 1100px; height:500px; background: url(../images/ttl.png) center right no-repeat; }
	/* ttl
	----------------------------------------------------- */
	.ttl {
		padding: 50px 0;
	}
	.ttl h2 {
		text-align: center;
	}
	/* side-apply
	----------------------------------------------------- */
	.side-apply a {
		font-size: 30px;
	}
	/* intro
	----------------------------------------------------- */
	section#intro {
		padding: 70px 0 0;
	}
	#intro h3 {
		font-size: 34px;
	}
	#intro .lead {
		font-size: 22px;
	}
	#slick-slide {
		margin-top: 70px;
	}
	.slick-slide {
		height: auto !important;
	}
	/* period
	----------------------------------------------------- */
	#period .period-cont .period-txt p {
		font-size: 46px;
	}
	#period .period-cont .period-txt p:nth-child(2) {
		font-size: 60px;
	}
	#period .period-cont .sun img {
		max-width: 170px;
	}
	#period .period-cont .sun,
	#period .period-cont .period-img{
		margin-bottom: 30px;
	}
	/* enrollment
	----------------------------------------------------- */
	.enroll-box .txt-box p {
		font-size: 34px;
	}
	.annotation p {
		font-size: 24px;
	}
	/* apply
	----------------------------------------------------- */
	section#apply h3 {
		font-size: 74px;
	}
	#apply p.txt-box {
		font-size: 34px;
	}
	/* benefits
	----------------------------------------------------- */
	#benefits .benefits-txt {
		font-size: 34px;
	}
	#benefits p.txt-box span {
	}
	#benefits .flexbox p {
		width: 61%;
	}
	#benefits .flexbox figure {
		width: 37%;
	}
	#benefits .flexbox figure figcaption {
		font-size: 20px;
	}
/* contact
----------------------------------------------------- */
	section#contact {
		padding-bottom: 200px;
	}
	.contact-box p {
		font-size: 30px;
	}
}
/* End min-width:751px */

/* ---------------------------------------------------------------------------------------------------- */

@media (min-width:1001px) {
	.if_tab {
		display: none !important;
	}
}
/* End min-width:1001px */

/* ---------------------------------------------------------------------------------------------------- */

@media (min-width:751px) and (max-width:1000px) {
	.if_tab {
		display: inline-block!important;
	}
}
/* End min-width:751px and max-width:1000px */

/* ---------------------------------------------------------------------------------------------------- */

@media (min-width:751px) and (max-width:1300px) {
	#period .period-cont .inbox {
		min-height: 50vw;
	}
}
/* End min-width:751px and max-width:1300px */

/* ---------------------------------------------------------------------------------------------------- */

@media (max-width:1370px) {
	/* benefits
	----------------------------------------------------- */
	#benefits .flexbox {
		width: 90%;
	}
}
/* End max-width:1370px */

/* ---------------------------------------------------------------------------------------------------- */

@media (max-width:1300px) {
	/* common 
	----------------------------------------------------- */
	/* period
	----------------------------------------------------- */
	#period .period-cont .period-img img {
		width: 90%;
	}
}
/* End max-width:1300px */

@media (min-width:751px) and (max-width:1300px) {
	/* common 
	----------------------------------------------------- */
	/* mv */
	#mv {
		background: url("../images/mv-tab.jpg") top left no-repeat;
		background-size: cover;
	}
	#mv h2 {
		width: 100%;
		background: url(../images/ttl.png) right 11vw bottom 70px no-repeat;
	}
}
/* End min-width:751px and max-width:1200px */

/* ---------------------------------------------------------------------------------------------------- */

@media (max-width:750px) {
	/* common 
	----------------------------------------------------- */
	.if_tab {
		display: none !important;
	}
	.for_sp.if_tab {
		display: inline-block !important;
	}
	section {
		padding: 12vw 0;
	}
	section h3.fukidashi {
		margin-bottom: 5vw;
	}
	section h3.fukidashi span {
		width: 61vw;
		font-size: 10vw;
		padding-bottom: 3vw;
    display: inline-block;
	}
	section h3.fukidashi.fukidashi-long span {
		width: 90vw;
	}
	/* mv
	----------------------------------------------------- */
	#mv {
		height: 60vw !important;
		background: url("../images/mv-sp.jpg") top -10vw center no-repeat;
		background-size: cover;
	}
	#mv h2 {
		height: 45vw !important;
		background: url(../images/ttl.png) center center no-repeat;
		background-size: auto 26vw;
		top: inherit;
		bottom: 0;
	}
	/* ttl
	----------------------------------------------------- */
	.ttl {
		padding: 8vw 0 4vw;
	}
	.ttl h2 {
		text-align: center;
	}
	.ttl h2 img {
		width: 90%;
	}

	/* side-apply
	----------------------------------------------------- */
		@supports (-webkit-touch-callout: none) {
		  p.side-apply{
		    transform: translate(-120%, -50%);
		  }
		}

	.side-apply a {
		bottom: 50%;
	}
	/* intro
	----------------------------------------------------- */
	section#intro {
		padding: 10vw 0 0;
	}
	#intro h3 {
		font-size: 5.5vw;
	}
	#intro .lead {
		text-align: center;
		margin-top: 3vw;
	}
	#slick-slide {
		margin-top: 8vw;
	}
	/* period
	----------------------------------------------------- */
	#period .period-cont .period-txt p {
		font-size: 6vw;
	}
	#period .period-cont .period-txt p:nth-child(2) {
		font-size: 7vw;
	}
	#period .period-cont .sun img {
		width: 23vw;
	}
	#period .period-cont .sun{
		margin-bottom: 2vw;
	}
	#period .period-cont .period-img{
		margin: 2vw 0 3vw;
	}
	/* enroll
	----------------------------------------------------- */
	.enroll-box .txt-box {
    padding: 1em;
	}
	.enroll-box:first-of-type .txt-box {
    margin-bottom: 2em;
	}
	.kome10 {
		font-size: 3.5vw;
	}
	.kome10:first-of-type {
		margin-bottom: 2vw;
	}
	/* apply
	----------------------------------------------------- */
	section#apply h3 {
		font-size: 10vw;
	}
	/* benefits
	----------------------------------------------------- */
	#benefits .flexbox {
		flex-wrap: wrap;
		justify-content: center;
		margin: auto;
	}
	#benefits .flexbox p {
		width: 100%;
	}
	#benefits .flexbox figure {
		width: 90%;
		margin-top: 3vw;
	}
	/* contact
	----------------------------------------------------- */
	section#contact {
		padding-bottom: 18vw;
	}
	
}
/* End max-width:750px */

/* ---------------------------------------------------------------------------------------------------- */