@charset "UTF-8";

/*--------------------------------------------------------------------------------
	reset
--------------------------------------------------------------------------------*/

html{-webkit-text-size-adjust:100%;box-sizing:border-box;-moz-tab-size:4;tab-size:4;word-break:normal}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{margin:0;padding:0}hr{color:inherit;height:0;overflow:visible}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}a{background-color:transparent}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}pre{font-size:1em}b,strong{font-weight:bolder}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}iframe{border-style:none}input{border-radius:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,input,select,textarea{background-color:transparent;border-style:none}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}[disabled]{cursor:default}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}



/*--------------------------------------------------------------------------------
	override & common
--------------------------------------------------------------------------------*/

/* override */

a{
	color: #010101;
	text-decoration:none;
}

html{
	font-size:62.5%;
}

body{
	font-family: 游ゴシック, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background:#ffffff;
	letter-spacing: 0.03em;
	line-height:1.75;
	font-weight: 500;
}

body *{
	box-sizing:border-box;
}

li{
	list-style:none;
}

img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}

.preload{
	transition:0 !important;
}



/* formparts */

input[type="text"],
input[type="email"],
input[type="date"]{
/*	border:solid 1px #666666;
	border-radius:6px;*/
	padding:10px;
	width:100%;
	font-size:16px;
	line-height:1.2;
	border:none;
	border-radius:0;
	background:#F0F0F0;
}

.c-form-select-wrapper {
	display: inline;
	position: relative;
}

.c-form-select-wrapper:before {
	position: absolute;
	top: 50%;
	right: 10px;
	 content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border-right: 2px solid #666;
	border-top: 2px solid #666;
	-moz-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: -10px 0 0;
	pointer-events: none;
}

.c-form-select-wrapper > select {
	font-size:16px;
	line-height:1.2;
	border:none;
	border-radius:0;
	padding:10px 50px 10px 10px;
	background:#F0F0F0;
	color: #000000;
}

textarea{
/*	border:solid 1px #666666;
	border-radius:6px;*/
	padding:10px;
	width:100%;
	height:300px;
	font-size:16px;
	line-height:1.5;
	border:none;
	border-radius:0;
	background:#F0F0F0;
}



/* spv / pcv */

.c-pc-v, .c-pc-inline{
	display:none;
}

@media only screen and (min-width: 950px){

	.c-pc-v{
		display:block;
	}
	
	.c-pc-inline{
		display:inline;
	}

}

.c-sp-v{

}

@media only screen and (min-width: 950px){

	.c-sp-v, .c-sp-inline{
		display:none;
	}

}

.c-sp-n{
	display:none;
}

@media only screen and (min-width: 950px){

	.c-sp-n{

	}

}



/* float */

.c-fl{
	float:left;
}

.c-fr{
	float:right;
}



/* clearfix */

.c-cfx:after{
	content:"";
	display:block;
	clear:both;
}

.c-cfx:before{
	content:"";
	display:block;
	clear:both;
}

.c-cfx{
	display: block;
}



/* container */

.c-container{

}

.c-container.c-container--column2 > .c-container-item:nth-of-type(n+2){
	margin-top:20px;
}

.c-container.c-container--column3 > .c-container-item:nth-of-type(n+2){
	margin-top:20px;
}

.c-container.c-container--column4 > .c-container-item:nth-of-type(n+2){
	margin-top:20px;
}

@media only screen and (min-width: 950px){

	.c-container{
		display:flex;
		margin-left:-20px;
		margin-right:-20px;
	}

	.c-container.c-container--column2{
		flex-wrap:wrap;
	}

	.c-container.c-container--column2 > .c-container-item{
		width:50%;
		padding:0 20px;
	}

	.c-container.c-container--column2 > .c-container-item:nth-of-type(2){
		margin-top:0;
	}

	.c-container.c-container--column2 > .c-container-item:nth-of-type(n+3){
		margin-top:40px;
	}

	.c-container.c-container--column3{
		flex-wrap:wrap;
	}

	.c-container.c-container--column3 > .c-container-item{
		width:33.3333%;
		padding:0 20px;
	}

	.c-container.c-container--column3 > .c-container-item:nth-of-type(n+2){
		margin-top:0;
	}

	.c-container.c-container--column3 > .c-container-item:nth-of-type(n+4){
		margin-top:40px;
	}

	.c-container.c-container--column3 > .c-container-item.c-container-item--double{
		width:66.6666%;
		padding:0 20px;
	}

	.c-container.c-container--column4{
		flex-wrap:wrap;
	}

	.c-container.c-container--column4 > .c-container-item{
		width:25%;
		padding:0 20px;
	}

	.c-container.c-container--column4 > .c-container-item:nth-of-type(n+2){
		margin-top:0;
	}

	.c-container.c-container--column4 > .c-container-item:nth-of-type(n+5){
		margin-top:40px;
	}

}



/* margin */

.c-pt-0{
	padding-top:0 !important;
}

.c-mb-0{
	margin-bottom:0 !Important;
}

.c-mt-0{
	margin-top:0 !important;
}

.c-mt-10{
	margin-top:10px !important;
}

.c-mt-xl{
	margin-top:100px !important;
}

.c-mt-ll{
	margin-top:80px !important;
}

.c-mt-l{
	margin-top:64px !important;
}

.c-mt-ml{
	margin-top:48px !important;
}

.c-mt-m{
	margin-top:32px !important;
}

.c-mt-ms{
	margin-top:24px !important;
}

.c-mt-s{
	margin-top:16px !important;
}

@media only screen and (min-width: 950px){

	.c-mt-xl{
		margin-top:120px !important;
	}

	.c-mt-ll{
		margin-top:100px !important;
	}

	.c-mt-l{
		margin-top:80px !important;
	}

	.c-mt-ml{
		margin-top:64px !important;
	}

	.c-mt-m{
		margin-top:48px !important;
	}

	.c-mt-ms{
		margin-top:32px !important;
	}

	.c-mt-s{
		margin-top:24px !important;
	}

}



/* align */

.c-align-c{
	text-align:center !important;
}

.c-align-c-pc{

}

@media only screen and (min-width: 950px){

	.c-align-c-pc{
		text-align:center !important;
	}

}

@media only screen and (max-width: 767px){

	.c-align-c-sp{
		text-align:center !important;
		margin-left:auto;
		margin-right:auto;
	}

}

.c-align-r{
	text-align:right !important;
}

.c-align-dc{
	margin-left:auto;
	margin-right:auto;
}

.c-align-dr{
	margin-left:auto;
}

.c-align-dl{
	margin-left:auto;
}


/* c-txt */

.c-txt {

}

.c-txt  + .c-txt {
	margin-top: 1em;
}

/* c-txt-m */

.c-txt-m {
	font-size: 1.4rem;
	line-height: 1.75;
}

@media only screen and (min-width: 950px){

	.c-txt-m {
		font-size: 1.6rem;
	}

}



/* c-txt-s */

.c-txt-s {
	font-size: 1.2rem;
	line-height: 1.75;
}

@media only screen and (min-width: 950px){

	.c-txt-s {
		font-size: 1.4rem;
	}

}


/* c-txt-bold */

.c-txt-bold {
	font-weight: bold;
}

@media only screen and (min-width: 950px){

}



/* c-txt-color */

.c-txt-green {
	color: #089548;
}

.c-txt-blue {
	color: #0070C0;
	display: inline;
	word-break: break-all;
}

.c-txt-red {
	color: #D10C0C;
	display: inline;
	word-break: break-all;
}


/* c-txt-marker */

.c-txt-marker {
	background: linear-gradient(transparent 60%, #FFFF00 0%);
	display: inline;
	font-weight: bold;
}

/* c-txt-marker */

.c-txt-underline {
	text-decoration: underline !important;
}



/* c-ttl-01 */

.c-ttl-01{
	margin: 0 0 24px 0;
}

.c-ttl-01-inner {

}

.c-ttl-01-en {
	display: block;
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-size: 1.2rem;
	line-height: 1.5;
	font-weight: 400;
	color: #089548;
}

.c-ttl-01-ja {
	display: block;
	text-align: center;
	margin: 1px 0 0 0;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 2.2rem;
	line-height: 1.5;
	font-weight: 700;
	color: #010101;
}

.c-ttl-01-stxt {
	display: block;
	text-align: center;
	font-size: 2.0rem;
	line-height: 1.5;
}

.c-ttl-01.c-ttl-01--type01 .c-ttl-01-en,
.c-ttl-01.c-ttl-01--type01 .c-ttl-01-ja,
.c-ttl-01.c-ttl-01--type01 .c-ttl-01-stxt {
	color: #ffffff;
}

@media only screen and (min-width: 950px){

	.c-ttl-01{
		margin: 0 0 40px 0;
	}

	.c-ttl-01-en {
		font-size: 1.8rem;
	}

	.c-ttl-01-ja {
		font-size: 4.0rem;
	}

	.c-ttl-01-ja-stxt {
		font-size: 2.0rem;
		line-height: 1.5;
	}

}



/*--------------------------------------------------------------------------------
	header
--------------------------------------------------------------------------------*/

.c-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	z-index: 100;
	font-feature-settings: "palt";
}

.c-header-inner {
	max-width: 1560px;
	height: 100%;
	margin: 0 auto;
	position: relative;
}

.c-header-logo {
	position: absolute;
	top: 15px;
	left: 15px;
	width: 160px;
	height: 28px;
}

.c-header-nav-item-link--01 {
	color: #0A9E96;
}

.c-header-nav-item-link--02 {
	color: #F39800;
}

.c-header-nav-item-link--03 {
	color: #DD1B23;
}

.c-header-nav-item-link--04 {
	color: #049ADF;
}

.c-header-nav-item-link--05 {
	color: #E4007F;
}

.c-header-nav-item-link--06 {
	color: #1F8E7B;
}

.c-header-nav-item-link--08 {
	color: #8FC31F;
}

.c-header-nav-item-link--09 {
	color: #920783;
}

.c-header-nav-item-link--10 {
	color: #010166;
}

@media only screen and (max-width: 1299.99px){

	.c-header.is-scroll {
		background: rgba(255,255,255,1);
	}

	.c-header-nav {
		position: absolute;
		top:0;
		right: 0;
		width: 250px;
		height: 100vh;
		background: #ffffff;
		transform: translate(300px,0);
		transition: all 0.3s;
	}

	.c-header.js-act .c-header-nav {
		transform: translate(0,0);
		transition: all 0.3s;
	}

	.c-header-nav > ul {
		padding: 80px 0 0 40px;
		font-size: 1.5rem;
		line-height: 22px;
		font-weight: bold;
	}

	.c-header-nav > ul > li + li {
		margin: 20px 0 0 0;
	}

	.c-header-nav-item-link--07 {
		color: #1D9BF0;
	}

	.c-header-nav-item-link-twitter {
		display: inline-block;
		padding: 0 0 0 24px;
		position: relative;
	}

	.c-header-nav-item-link-twitter:before {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-60%);
		width: 16px;
		height: 13px;
		content: "";
		background: url(../img/icn-x.svg) no-repeat center center / contain;
	}

}

@media only screen and (min-width: 1300px){

	.c-header {
		height: 70px;
	}

	.c-header.is-scroll {
		background: rgba(255,255,255,1);
	}

	.c-header-logo {
		position: absolute;
		top: 18px;
		left: 36px;
		width: 220px;
		height: 32px;
	}

	.c-header-nav {
		display: block;
		position: absolute;
		top: 26px;
		right: 64px;
		text-align: right;
	}

	.c-header-nav > ul {
		display: flex;
		font-size: 1.5rem;
		line-height: 22px;
		font-weight: bold;
	}

	.c-header-nav > ul > li {
		margin: 0 20px 0 0;
	}

	.c-header-nav > ul > li:last-child {
		margin: 0 0 0 0;
	}

	.c-header-nav-item-link--07 {
		font-size: 0;
		line-height: 0;
	}

	.c-header-nav-item-link-twitter {
		display: block;
		width: 20px;
		height: 22px;
		background: url(../img/icn-x.svg) no-repeat center center / contain;
	}

}


/* navbtn */

.c-header-navbtn{
	position:fixed;
	top:15px;
	right:20px;
	z-index:110;
}

.c-header-navbtn-link{
	overflow: hidden;
	display: block;
	position: relative;
	width: 27px;
	height: 27px;
	cursor: pointer;
}

.c-header-navbtn-link span,
.c-header-navbtn-link:before,
.c-header-navbtn-link:after{
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left:0;
	right: 0;
	width: 27px;
	height: 3px;
	margin: auto;
	background: #089548;
}

.c-header.is-scroll .c-header-navbtn-link span,
.c-header.is-scroll .c-header-navbtn-link:before,
.c-header.is-scroll .c-header-navbtn-link:after{
	background:#089548;
}

.c-header.is-scroll.js-act .c-header-navbtn-link span,
.c-header.is-scroll.js-act .c-header-navbtn-link:before,
.c-header.is-scroll.js-act .c-header-navbtn-link:after{
	background: #089548;
}

.c-header-navbtn-link span{
	overflow: hidden;
	transition: opacity 150ms 50ms;
}

.c-header-navbtn-link:before{
	transform: translate(0, -10px);
	content: "";
	transition: transform 400ms;
}

.c-header-navbtn-link:after{
	transform: translate(0, 10px);
	content: "";
	transition: transform 400ms;
}

.c-header.js-act .c-header-navbtn-link span{
	opacity: 0;
	transition: opacity 150ms;
}

.c-header.js-act .c-header-navbtn-link:before{
/*	background:#ffffff;*/
	transform: rotate(45deg);
}

.c-header.js-act .c-header-navbtn-link:after{
/*	background:#ffffff;*/
	transform: rotate(-45deg);
}

@media only screen and (min-width: 1300px){

	.c-header-navbtn{
		display:none;
	}

}



/*--------------------------------------------------------------------------------
	main
--------------------------------------------------------------------------------*/

.c-main {

}

@media only screen and (min-width: 950px){

	.c-main {

	}

}


/*--------------------------------------------------------------------------------
	footer
--------------------------------------------------------------------------------*/

.c-footer {
	background: #ffffff;
	padding: 0 25px;
}

.c-footer-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 0;
}

.c-footer-copyright {
	text-align: center;
	font-size: 1.2rem;
	line-height: 20px;
}

@media only screen and (min-width: 950px){

	.c-footer {
		padding: 0 130px;
	}

	.c-footer-inner {
		padding: 40px 0;
	}

	.c-footer-copyright {
		font-size: 1.6rem;
		line-height: 20px;
	}

}



/*--------------------------------------------------------------------------------
	top
--------------------------------------------------------------------------------*/

/* p-top-mainv */

.p-top-mainv {
	background: url(../img/bg-mainv.jpg) no-repeat center bottom / cover;
	padding: 0 0 50px 0;
	position: relative;
}

.p-top-mainv:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #6CC660;
	clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 0 100%);
	z-index:1;
}

.p-top-mainv-inner {
	max-width: 1000px;
	height: 700px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.p-top-mainv-ttl {
	position: absolute;
	top: 64px;
	left: 50%;
	width: 100%;
	transform: translate(-50%,0);
}

.p-top-mainv-ttl-sub {
	display: block;
	width: 233px;
	height: 32px;
	font-size: 0;
	line-height: 0;
	background: url(../img/txt-mainv-01.png) no-repeat center center / contain;
	margin: 0 auto 20px auto;
}

.p-top-mainv-ttl-main {
	display: block;
	width: 100%;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 44px;
	line-height: 47px;
	font-weight: bold;
	color: #089548;
	text-align: center;
}

.p-top-mainv-ttl-main > span {
	color: #010101;
}

.p-top-mainv-copy {
	position: absolute;
	top: 232px;
	left: 50%;
	display: flex;
	transform: translate(-50%,0);
}

.p-top-mainv-copy-item--01 {
	width: 110px;
	height: 43px;
	box-shadow: 0 3px 15px rgba(0,0,0,0.16);
	margin: 0 5px 0 0;
}

.p-top-mainv-copy-item--02 {
	width: 107px;
	height: 43px;
	box-shadow: 0 3px 15px rgba(0,0,0,0.16);
	margin: 0 5px 0 0;
}

.p-top-mainv-copy-item--03 {
	width: 117px;
	height: 43px;
	box-shadow: 0 3px 15px rgba(0,0,0,0.16);
}

.p-top-mainv-pic {
	position: absolute;
	bottom: 0;
	left: 12.8%;
	width:421px;
	height: 400px;
}

.p-top-mainv-icn {
	position: absolute;
	bottom: 54px;
	left: 25px;
	width: 135px;
	height: 135x;
}

.p-top-mainv-urala {
    position: absolute;
    right: 30px;
    bottom: 120px;
    width: 80%;
    text-align: right;
	z-index: +1;
}

.p-top-mainv-urala img {
    width: 35%;
	max-width: 100px;
}

@media only screen and (min-width: 500px) and (max-width: 949px){
	.p-top-mainv-pic {
		position: absolute;
		bottom: 0;
		text-align: center;
		width: 100%;
	}
	
	.p-top-mainv-pic img {
		width:421px;
	}
	
	.p-top-mainv-icn {
		left: calc(50% - 200px);
	}
		
}

@media only screen and (min-width: 950px){

	.p-top-mainv {
		background: url(../img/bg-mainv.jpg) no-repeat center bottom / cover;
		padding: 0 0 50px 0;
		position: relative;
	}

	.p-top-mainv:before {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 110px;
		content: "";
		background: #6CC660;
		clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 0 100%);
		z-index:1;
	}
	
	.p-top-mainv-inner {
		height: 640px;
	}

	.p-top-mainv-ttl {
		position: absolute;
		top: 111px;
		left: 39.1%;
		width: auto;
		transform: translate(0,0);
	}

	.p-top-mainv-ttl-sub {
		display: block;
		width: 385px;
		height: 52px;
		font-size: 0;
		line-height: 0;
		background: url(../img/txt-mainv-01.png) no-repeat center center / contain;
		margin: 0 0;
	}

	.p-top-mainv-ttl-main {
		display: block;
		width: auto;
		font-family: 'Zen Maru Gothic', sans-serif;
		font-size: 80px;
		line-height: 90px;
		font-weight: bold;
		color: #089548;
		text-align: left;
	}

	.p-top-mainv-copy {
		position: absolute;
		top: 375px;
		left: 39.1%;
		display: flex;
		transform: translate(0,0);
	}

	.p-top-mainv-copy-item--01 {
		width: 180px;
		height: 80px;
		margin: 0 7px 0 0;
	}

	.p-top-mainv-copy-item--02 {
		width: 175px;
		height: 80px;
		margin: 0 7px 0 0;
	}

	.p-top-mainv-copy-item--03 {
		width: 190px;
		height: 80px;
	}

	.p-top-mainv-pic {
		position: absolute;
		bottom: 0;
		left: 23px;
		width:559px;
		height: 532px;
	}

	.p-top-mainv-icn {
		position: absolute;
		bottom: 54px;
		left: 15px;
		width: 186px;
		height: 186px;
	}
	
	.p-top-mainv-urala {
		position: absolute;
		left: 39.1%;
		top: 475px;
		width: 554px;
		text-align: right;
	}
	
	.p-top-mainv-urala img {
		width: auto;
		max-width: 182px;
	}


}



/* p-top-info */

.p-top-info {
	background: #6CC660;
}

.p-top-info-inner {
	position: relative;
	margin: -90px 0 0 0;
	z-index:2;
}

.p-top-info-cts {
	width: calc(100% - 50px);
	max-width: 860px;
	margin: 0 auto;
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 10px 15px rgba(0,96,46,0.16);
}

.p-top-info-cts-ttl {
	width: 310px;	/* 465 */
	height: 44px;	/* 66 */
	margin: 0 auto;
	transform: translate(0,-11.3px);	/* 17 */
	background: url(../img/bg-mainv-subt-01.png) no-repeat center center / contain;
	text-align: center;
	font-size: 1.8rem;
	line-height: 44px;
	font-weight: bold;
	color: #ffffff;
}

.p-top-info-cts-inner {
	padding: 0 20px 20px 20px;
}

.p-top-info-cts-subt {
	font-size: 1.6rem;
	line-height: 1.3;
	font-weight: bold;
	color: #089548;
	padding: 0 0 10px 6px;
	border-bottom: solid 2px #089548;
	margin-top: 20px;
}

.p-top-info-cts-inner > ul {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 6px 0 6px;
}

.p-top-info-cts-inner > ul > li {
	width: 100%;
	margin: 10px 0 0 0;
	font-size: 1.6rem;
	line-height: 1.3;
	font-weight: bold;
}

.p-top-info-cts-inner > ul > li > a > dl {
	display: flex;
}

.p-top-info-cts-inner > ul > li > a > dl > dt {
	width: 24px;
}

.p-top-info-cts-inner > ul > li > a > dl > dt > span {
	display: inline-block;
	text-align: center;
	width: 18px;
	position: relative;
	font-size: 14px;
	line-height: 18px;
	font-weight: bold;
	color: #ffffff;
	z-index: 2;
}

.p-top-info-cts-inner > ul > li > a > dl > dt > span:before {
	position: absolute;
	display: inline-block;
	top: -2px;
	left: 0;
	width: 18px;
	height: 18px;
	content: "";
	background: #089548;
	border-radius: 50%;
	z-index: -1;
}

.p-top-info-cts-his {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 16px;
	font-weight: 600;
	color: #089548;
	background: #FFF816;
	padding: 2px 10px;
	transform: translate(4px,-2px);
}

.p-top-info-cts-inner > ul > li > a > dl > dd {
	flex: 1;
}

@media only screen and (min-width: 950px){

	.p-top-info-cts {
		max-width: 860px;
		margin: 0 auto;
		background: #ffffff;
		border-radius: 12px;
		box-shadow: 0 10px 15px rgba(0,96,46,0.16);
	}

	.p-top-info-cts-ttl {
		width: 465px;
		height: 66px;
		margin: 0 auto;
		transform: translate(0,-17px);
		background: url(../img/bg-mainv-subt-01.png) no-repeat center center / contain;
		text-align: center;
		font-size: 2.4rem;
		line-height: 66px;
		font-weight: bold;
		color: #ffffff;
	}

	.p-top-info-cts-inner {
		padding: 0 50px 30px 50px;
	}

	.p-top-info-cts-subt {
		font-size: 2.0rem;
	}

	.p-top-info-cts-inner > ul > li {
		width: 50%;
		font-size: 1.9rem;
	}

	.p-top-info-cts-inner > ul > li > a > dl > dt {
		width: 30px;
	}

	.p-top-info-cts-inner > ul > li > a > dl > dt > span {
		width: 22px;
		font-size: 16px;
		line-height: 22px;
	}

	.p-top-info-cts-inner > ul > li > a > dl > dt > span:before {
		width: 22px;
		height: 22px;
	}

}



/* p-top-about */

.p-top-about {
	background: #6CC660;
	padding: 0 25px;
}

.p-top-about-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 40px 0 30px 0;
}

.p-top-about-ttl {
	font-family: 'Zen Maru Gothic', sans-serif;
	margin: 0 0 24px 0;
}

.p-top-about-ttl-stxt {
	display: block;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 400;
	color: #ffffff;
	margin: 0 0 24px 0;
}

.p-top-about-ttl-ltxt {
	display: block;
	text-align: center;
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 700;
	color: #ffffff;
}

.p-top-about-ttl-ltxt-yellow {
	color: #FFF816;
}

.p-top-about-ttl-ltxt-yellow > span {
	display: inline-block;
	position: relative;
}

.p-top-about-ttl-ltxt-yellow > span:before {
	position: absolute;
	display: inline-block;
	top: 0;
	left: 50%;
	transform: translate(-50%,-5px);
	width: 6px;
	height: 6px;
	content:"";
	background: #FFF816;
	border-radius: 50%;
}

.p-top-about-cts {

}

.p-top-about-cts-01 {
	color: #ffffff;
}

.p-top-about-cts-02 {
	margin: 20px 0 0 0;
}

.p-top-about-cts02 {
	max-width: 820px;
	margin: 24px auto 0 auto;
}

@media only screen and (min-width: 950px){

	.p-top-about {
		padding: 0 130px;
	}

	.p-top-about-inner {
		padding: 60px 0 90px 0;
	}

	.p-top-about-ttl {
		margin: 0 0 40px 0;
	}

	.p-top-about-ttl-stxt {
		font-size: 1.8rem;
		margin: 0 0 30px 0;
	}

	.p-top-about-ttl-ltxt {
		font-size: 4.0rem;
	}

	.p-top-about-cts {
		display: flex;
	}

	.p-top-about-cts-01 {
		width: 50%;
		padding: 0 20px 0 0;
	}

	.p-top-about-cts-02 {
		margin: 0 0 0 0;
	}

	.p-top-about-cts-02 {
		width: 50%;
	}

	.p-top-about-cts02 {
		margin: 45px auto 0 auto;
	}

}

.p-top-about-cts-01-br {
	display: none;
}


@media only screen and (min-width: 1200px){
	.p-top-about-cts-01-br {
		display: block;
	}
}

/* p-top-about02 */

.p-top-about02 {
	padding: 0 25px 80px 25px;
}

.p-top-about02-inner {
	max-width: 1000px;
	margin: 0 auto;
}

.p-top-about02-ttl {
	margin: 0 auto 20px auto;
	width: 100%;
	max-width: 352px;
	height: 40px;
	border-radius: 20px;
	background: #5DBA52;
	text-align: center;
	font-size: 1.8rem;
	line-height: 40px;
	font-weight: bold;
	color: #ffffff;
	position: relative;
}

.p-top-about02-ttl:before {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-59%,0);
	width: 0;
	height: 0;
	content: "";
	border-style: solid;
	border-width: 12px 8px 0 8px;
	border-color: #5DBA52 transparent transparent transparent;
	z-index: 3;
}

.p-top-about02-feature {
	padding: 72px 0 0 0;
	position: relative;
}

.p-top-about02-feature:before {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	width: 0;
	height: 0;
	content: "";
	border-style: solid;
	border-width: 20px 70px 0 70px;
	border-color: #6CC660 transparent transparent transparent;
}

.p-top-about02-feature:after {
	position: absolute;
	top: 32px;
	left: 50%;
	transform: translate(-50%,0);
	width: 22px;
	height: 26px;
	content: "";
	background: url(../img/icn-arrow3.svg) no-repeat center center / contain;
}

.p-top-about02-feature-cts {
	display: flex;
	margin-top: 40px;
	flex-wrap: wrap;
}

.p-top-about02-feature-cts-item {
	width: 100%;
}

.p-top-about02-feature-cts-item + .p-top-about02-feature-cts-item {
	margin-top: 30px;
}

.p-top-about02-feature-cts-item-box {
	height: 100%;
	border: solid 4px #089548;
	background: #ffffff;
	box-shadow: 0 5px 15px rgba(0,96,46,0.16);
	border-radius: 15px;
	padding: 30px 0;
	position: relative;
}

.p-top-about02-feature-cts-item-box-num {
	position: absolute;
	top: -22px;;
	left: 50%;
	transform: translate(-59%,0);
}

.p-top-about02-feature-cts-item-box-num > span {
	display: inline-block;
	font-family: 'Roboto', sans-serif;
	font-size: 40px;
	line-height: 1;
	color: #F78D1E;
	background: #ffffff;
	padding: 0 15px;
}

.p-top-about02-feature-cts-item-box-ttl {
	font-size: 1.8rem;
	line-height: 1.26;
	font-weight: bold;
	text-align: center;
	width: 100%;
	height: 46px;
	display: flex;
	align-items: center;
}

.p-top-about02-feature-cts-item-box-ttl > div {
	width: 100%;
}

.p-top-about02-feature-cts-item-box-ttl > div > span {
	color: #089548;
}

.p-top-about02-feature-cts-item-box-pic {
	margin: 10px 0 20px 0;
	text-align: center;
}

.p-top-about02-feature-cts-item-box-pic img {
	height: 80px;
}

.p-top-about02-feature-cts-item-box-txt {
	font-size: 1.5rem;
	line-height: 1.5;
	width: 100%;
	height: 30px;
	text-align: center;
	display: flex;
	align-items: center;
}

.p-top-about02-feature-cts-item-box-txt > div {
	width: 100%;
}

.p-top-about02-target {
	margin: 40px 0 0 0;
}

.p-top-about02-target-cts {
	width: 100%;
	max-width: 770px;
	margin: 30px auto 0 auto;
	background: #FFF816;
	border-radius: 15px;
	padding: 20px 20px;
	text-align: center;
	font-size: 1.6rem;
	line-height: 21px;
	font-weight: bold;
	box-shadow: 0 5px 15px rgba(0,96,46,0.16);
}

@media only screen and (min-width: 500px) and (max-width: 722.99px){

	.p-top-about02-feature-cts {
		margin-left: -10px;
		margin-right: -10px;
		margin-top: 50px;
	}

	.p-top-about02-feature-cts-item {
		width: 50%;
		padding: 0 10px;
	}

	.p-top-about02-feature-cts-item + .p-top-about02-feature-cts-item {
		margin-top: 0;
	}

	.p-top-about02-feature-cts .p-top-about02-feature-cts-item:nth-of-type(n+3) {
		margin-top: 30px;
	}

}

@media only screen and (min-width: 723px) and (max-width: 949.99px){

	.p-top-about02-feature-cts {
		margin-left: -10px;
		margin-right: -10px;
		margin-top: 50px;
	}

	.p-top-about02-feature-cts-item {
		width: 33.3333%;
		padding: 0 10px;
	}

	.p-top-about02-feature-cts-item + .p-top-about02-feature-cts-item {
		margin-top: 0;
	}

}

@media only screen and (min-width: 950px){

	.p-top-about02 {
		padding: 0 130px 180px 130px;
	}

	.p-top-about02-ttl {
		margin: 0 auto 20px auto;
		width: 100%;
		max-width: 352px;
		height: 64px;
		border-radius: 32px;
		background: #5DBA52;
		text-align: center;
		font-size: 2.4rem;
		line-height: 64px;
		font-weight: bold;
		color: #ffffff;
		position: relative;
	}

	.p-top-about02-ttl:before {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translate(-59%,0);
		width: 0;
		height: 0;
		content: "";
		border-style: solid;
		border-width: 16px 10px 0 10px;
		border-color: #5DBA52 transparent transparent transparent;
		z-index: 3;
	}

	.p-top-about02-feature {
		padding: 144px 0 0 0;
		position: relative;
	}

	.p-top-about02-feature:before {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		width: 0;
		height: 0;
		content: "";
		border-style: solid;
		border-width: 40px 150px 0 150px;
		border-color: #6CC660 transparent transparent transparent;
	}

	.p-top-about02-feature:after {
		position: absolute;
		top: 64px;
		left: 50%;
		transform: translate(-50%,0);
		width: 44px;
		height: 52px;
		content: "";
		background: url(../img/icn-arrow3.svg) no-repeat center center / contain;
	}

	.p-top-about02-feature-cts {
		margin-left: -10px;
		margin-right: -10px;
		margin-top: 50px;
	}

	.p-top-about02-feature-cts-item {
		width: 33.3333%;
		padding: 0 10px;
	}

	.p-top-about02-feature-cts-item + .p-top-about02-feature-cts-item {
		margin-top: 0;
	}

	.p-top-about02-feature-cts-item-box-num {
		position: absolute;
		top: -32px;;
		left: 50%;
		transform: translate(-59%,0);
	}

	.p-top-about02-feature-cts-item-box-num > span {
		display: inline-block;
		font-family: 'Roboto', sans-serif;
		font-size: 60px;
		line-height: 1;
		color: #F78D1E;
		background: #ffffff;
		padding: 0 15px;
	}

	.p-top-about02-feature-cts-item-box-ttl {
		font-size: 2.6rem;
		line-height: 1.26;
		font-weight: bold;
		text-align: center;
		width: 100%;
		height: 70px;
		display: flex;
		align-items: center;
	}

	.p-top-about02-feature-cts-item-box-pic {
		margin: 20px 0 30px 0;
	}

	.p-top-about02-feature-cts-item-box-txt {
		font-size: 1.7rem;
		line-height: 1.5;
		width: 100%;
		height: 34px;
		text-align: center;
		display: flex;
		align-items: center;
	}

	.p-top-about02-target {
		margin: 50px 0 0 0;
	}

	.p-top-about02-target-cts {
		width: 100%;
		max-width: 770px;
		margin: 40px auto 0 auto;
		background: #FFF816;
		border-radius: 15px;
		padding: 20px 20px;
		text-align: center;
		font-size: 1.9rem;
		line-height: 26px;
		font-weight: bold;
	}

}

@media only screen and (min-width: 950px) and (max-width: 1176px) {

	.p-top-about02-feature-cts-item-box-ttl {
		font-size: 2.0rem;
	}

	.p-top-about02-feature-cts-item-box-txt {
		font-size: 1.4rem;
		line-height: 1.5;
	}

}



/* p-top-profile */

.p-top-profile {
	background: #F1F9EF;
	padding: 10px 25px 60px 25px;
	position: relative;
}

.p-top-profile:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #F1F9EF;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	z-index:-1;
}

.p-top-profile-inner {
	max-width: 1000px;
	margin: 0 auto;
}

.p-top-profile-cts {
	display: flex;
	flex-wrap: wrap;
}

.p-top-profile-cts-01 {
	order: 1;
	width: 100%;
}

.p-top-profile-cts-01-name {
	font-size: 1.8rem;
	line-height: 1;
	font-weight: bold;
	color: #089548;
	margin: 20px 0 12px 0;
	text-align: center;
}

.p-top-profile-cts-01-name > span {
	font-size: 1.4rem;
	padding: 0 0 0 1em;
}

.p-top-profile-cts-02 {
	order: 0;
	width: 100%;
	max-width: 240px;
	margin: 0 auto;
}

@media only screen and (min-width: 950px){

	.p-top-profile {
		padding: 0 130px 160px 130px;
	}

	.p-top-profile:before {
		position: absolute;
		top: -120px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		background: #F1F9EF;
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
		z-index:-1;
	}

	.p-top-profile-cts {
		transform: translate(40px,0);
	}

	.p-top-profile-cts-01 {
		order: 0;
		width: 50%;
	}

	.p-top-profile-cts-01-name {
		font-size: 3.6rem;
		margin: 0 0 12px 0;
		text-align: left;
	}

	.p-top-profile-cts-01-name > span {
		font-size: 2.4rem;
		padding: 0 0 0 1em;
	}

	.p-top-profile-cts-02 {
		order: 1;
		width: 50%;
		max-width: initial;
	}


}

/* p-top-program */

.p-top-program {
	background: #ffffff;
	padding: 10px 25px 0 25px;
	position: relative;
}

.p-top-program:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 50%;
	height: 40px;
	content: "";
	background: #089548;
	clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
}

.p-top-program:after {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #ffffff;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 101%);
}

.p-top-program-inner {
	max-width: 1000px;
	margin: 0 auto;
}

.p-top-program-lead {
	width: 100%;
	max-width: 710px;
	margin: 0 auto;
}

.p-top-program-lead .c-txt-marker {
	font-weight: bold;
}

.p-top-program-pic {
	width: 100%;
	max-width: 665px;
	padding: 0 0 70px 0;
	margin: 30px auto 0 auto;
	position: relative;
}

.p-top-program-pic #Map {
	display: none;
}

.p-top-program-pic:before {
	position: absolute;
	bottom: 23px;
	left: 50%;
	transform: translate(-50%,0);
	width: 58px;
	height: 30px;
	content: "";
	background: url(../img/icn-arrow2.svg) no-repeat center center / contain;
}

.p-top-program-a {
	position: relative;
	padding: 0 0 60px 0;
}

.p-top-program-a-inner {
	position: relative;
	z-index:2;
}

.p-top-program-a:before {
	position: absolute;
	top: 0;
	left: 50%;;
	width: 100vw;
	height: 100%;
	transform: translate(-50%,0);
	content: "";
	background: #F2F2F2;
}

.p-top-program-b {
	position: relative;
	background: #ffffff;
	padding: 0 0 80px 0;
}

.p-top-program-b-inner {
	position: relative;
	z-index:2;
}

.p-top-program-b:before {
	position: absolute;
	top: 0;
	left: 50%;;
	width: 100vw;
	height: 100%;
	transform: translate(-50%,0);
	content: "";
	background: #ffffff;
}

.p-top-program-ttl-01 {
	width: 325px;	/* 595 */
	height: 36px;	/* 66 */
	margin: 0 auto 0 auto;
	transform: translate(0,-8.7px);
	background: url(../img/bg-program-ttl-01.png) no-repeat center center / contain;
}

.p-top-program-ttl-01-inner {
	text-align: center;
	font-size: 1.4rem;;
	line-height: 36px;
	color: #ffffff;
	font-weight: 700;
}

.p-top-program-ibox {
	margin-top: 30px;
	background: #FAFAFA;
	box-shadow: 0 15px 50px rgba(0,96,47,0.15);
	position: relative;
}

.p-top-program-ibox.p-top-program-ibox--first {
	margin-top: 10px;
}

.p-top-program-ibox:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 35.3982%;
	height: 5px;
	content: "";
	background: #19A93B;
}

.p-top-program-ibox-inner {
	padding: 20px 20px;
}

.p-top-program-ttl-02 {
	display: flex;
	/*margin: 0 0 20px 0;*/
}

.p-top-program-ttl-02-01 {
	width: 24px;
}

.p-top-program-ttl-02-01 > span {
	display: inline-block;
	width: 24px;
	height: 24px;
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: bold;
	color: #ffffff;
	background: #089548;
	border-radius: 50%;
}

.p-top-program-ttl-02-02 {
	padding: 0 0 0 6px;
	font-size: 1.8rem;
	line-height: 24px;
	font-weight: bold;
	color: #089548;
}

.p-top-program-ibox-pic {
	box-shadow: 0 10px 15px rgba(0,0,0,0.08);
	margin: 0 0 20px 0;
}

.p-top-program-ibox-table > dl {
	width: 100%;
	border-top: solid 1px #DDDDDD;
}

.p-top-program-ibox-table > dl > dt {
	padding: 3px 10px;
	background: #f3f3f3;
	border-bottom: solid 1px #DDDDDD;
}

.p-top-program-ibox-table > dl > dd {
	padding: 10px;
}

.p-top-program-ibox-sch {
	display: table;
	font-size: 14px;
	line-height: 20px;
}

.p-top-program-ibox-sch + .p-top-program-ibox-sch {
	margin-top: 5px;
}

.p-top-program-ibox-sch-01 {
	display: table-cell;
	width: 100px;
}

.p-top-program-ibox-sch-02 {
	display: table-cell;
	width: 110px;
	text-align: right;
}

.p-top-program-ibox-sch-03 {
	display: table-cell;
	padding: 0 0 0 6px;
}

.p-top-program-ibox-sch-03 > a {
	display: block;
	width: 48px;
	height: 20px;
	background: #F7921E;
	border-radius: 12px;
	text-align: center;
	font-size: 11px;
	line-height: 20px;
	color: #ffffff;
	position: relative;
}
/*
.p-top-program-ibox-sch-03 > a:before {
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translate(0,-50%);
	width: 4px;
	height: 8px;
	content: "";
	background: url(../img/icn-arrow-white.svg) no-repeat center center / contain;
}
*/
.p-top-program-ibox-notes {
	padding: 0 5px 10px 5px;
}

.p-top-program-ibox-notes.p-top-program-ibox-notes--hissu {
	padding: 10px 0;
	font-feature-settings: "palt";
}

.p-top-program-ibox-01-02 .c-txt-m {
	font-size: 1.5rem;
}

.p-top-program-ibox-01-02 .c-txt-m dl:first-child {
	font-size: 1.6rem;
}

@media only screen and (min-width: 950px){

	.p-top-program {
		padding: 20px 130px 120px 130px;
	}

	.p-top-program:before {
		position: absolute;
		top: -120px;
		left: 0;
		width: 50%;
		height: 120px;
		content: "";
		background: #089548;
		clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
	}

	.p-top-program:after {
		position: absolute;
		top: -120px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		background: #ffffff;
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 101%);
	}

	.p-top-program-pic {
		width: 100%;
		max-width: 665px;
		padding: 0 0 140px 0;
		margin: 50px auto 0 auto;
		position: relative;
	}

	.p-top-program-pic #Map {
		display: block;
	}
	
	.p-top-program-pic:before {
		position: absolute;
		bottom: 46px;
		left: 50%;
		transform: translate(-50%,0);
		width: 115px;
		height: 58px;
		content: "";
		background: url(../img/icn-arrow2.svg) no-repeat center center / contain;
	}


	.p-top-program-a {
		position: relative;
		padding: 0 0 120px 0;
	}

	.p-top-program-ttl-01 {
		width: 595px;
		height: 66px;
		margin: 0 auto 0 auto;
		transform: translate(0,-16px);
		background: url(../img/bg-program-ttl-01.png) no-repeat center center / contain;
	}

	.p-top-program-ttl-01-inner {
		text-align: center;
		font-size: 2.5rem;;
		line-height: 66px;
		color: #ffffff;
		font-weight: 700;
	}

	.p-top-program-ibox {
		margin-top: 60px;
	}

	.p-top-program-ibox-pic {
		margin: 0 0 0 0;
	}

	.p-top-program-ibox-table > dl {
		display: table;
	}

	.p-top-program-ibox-table > dl:first-child {
		border-top: none;
	}
	
	.p-top-program-ibox-table > dl:last-child {
		border-bottom: 1px solid #DDDDDD;
	}

	.p-top-program-ibox-table > dl > dt {
		display: table-cell;
		vertical-align: top;
		padding: 15px 5px;
		background: none;
		border-bottom: none;
		width: 96px;
	}

	.p-top-program-ibox-table > dl > dd {
		display: table-cell;
		padding: 15px 5px;
	}

	.p-top-program-ibox.p-top-program-ibox--first {
		margin-top: 40px;
	}

	.p-top-program-ibox.p-top-program-ibox--right {
		margin-right: -130px;
	}

	.p-top-program-ibox.p-top-program-ibox--left {
		margin-left: -130px;
	}

	.p-top-program-ibox-inner {
		padding: 60px 60px;
	}

	.p-top-program-ttl-02 {
		display: flex;
		/*margin: 0 0 24px 0;*/
	}

	.p-top-program-ttl-02-01 {
		width: 56px;
	}

	.p-top-program-ttl-02-01 > span {
		display: inline-block;
		width: 56px;
		height: 56px;
		text-align: center;
		font-family: 'Roboto', sans-serif;
		font-size: 36px;
		line-height: 56px;
		font-weight: bold;
		color: #ffffff;
		background: #089548;
		border-radius: 50%;
	}

	.p-top-program-ttl-02-02 {
		padding: 0 0 0 20px;
		font-size: 3.6rem;
		line-height: 56px;
		font-weight: bold;
		color: #089548;
	}

	.p-top-program-ibox-01 {
		display: flex;
	}

	.p-top-program-ibox-01-01 {
/*		width: 52%;*/
		flex: 1;
	}

	.p-top-program-ibox-01-02 {
/*		width: 48%;*/
		width: 500px;
		padding: 0 0 0 40px;
	}
	
	.p-top-program-ibox-01-02 .c-txt-m {
		font-size: 1.8rem;
	}
	
	.p-top-program-ibox-01-02 .c-txt-m dl:first-child {
		font-size: 2.0rem;
	}
	
	.p-top-program-ibox-02 {
		margin: 16px 0 0 0;
	}

	.p-top-program-ibox-sch {
		font-size: 16px;
		line-height: 24px;
	}

	.p-top-program-ibox-sch + .p-top-program-ibox-sch {
		margin-top: 5px;
	}

	.p-top-program-ibox-sch-01 {
		display: table-cell;
		width: 115px;
	}

	.p-top-program-ibox-sch-02 {
		display: table-cell;
		width: 110px;
		letter-spacing: -0.05em;
	}

	.p-top-program-ibox-sch-03 {
		display: table-cell;
		padding: 0 0 0 10px;
	}

	.p-top-program-ibox-sch-03 > a {
		display: block;
		width: 98px;
		height: 24px;
		background: #F7921E;
		border-radius: 12px;
		text-align: center;
		font-size: 15px;
		line-height: 24px;
		color: #ffffff;
		position: relative;
	}

	.p-top-program-ibox-sch-03 > a:before {
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translate(0,-50%);
		width: 4px;
		height: 8px;
		content: "";
		background: url(../img/icn-arrow-white.svg) no-repeat center center / contain;
	}

	.p-top-program-ibox-notes {
		padding: 0 0 0 5px;
	}
	
	.p-top-program-ibox-notes.p-top-program-ibox-notes--hissu {
		height: 30px;
		margin:-30px 0 24px 0;
		text-align: right;
		padding: 0;
	}

}



/* p-top-message */

.p-top-message {
	padding: 10px 25px 0 25px;
	background: #F1F9EF;
	position: relative;
}

.p-top-message:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 50%;
	height: 40px;
	content: "";
	background: #089548;
	clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
}

.p-top-message:after {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #F1F9EF;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

.p-top-message-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px 0 40px 0;
}

.p-top-message-lead {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 700;
	text-align: center;
}

.p-top-message-cts {
	margin: 20px 0 0 0;
}

.p-top-message-cts-01 {

}

.p-top-message-cts-02 {

}

.p-top-message-cts-02-pic {
	margin: 20px 0 0 0;
}

.p-top-message-cts-02-pic img {
	border-radius: 10px;
}

@media only screen and (min-width: 950px){

	.p-top-message {
		padding: 20px 130px 0 130px;
	}

	.p-top-message:before {
		position: absolute;
		top: -120px;
		left: 0;
		width: 50%;
		height: 120px;
		content: "";
		background: #089548;
		clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
	}

	.p-top-message:after {
		position: absolute;
		top: -119px;
		bottom: -10px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		background: #F1F9EF;
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	}

	.p-top-message-inner {
		padding: 20px 0 180px 0;
	}

	.p-top-message-lead {
		font-size: 2.9rem;
	}

	.p-top-message-cts {
		display: flex;
		margin: 40px 0 0 0;
	}

	.p-top-message-cts-01 {
		width: 50%;
		padding: 0 56px 0 0;
	}

	.p-top-message-cts-02 {
		width: 50%;
	}

	.p-top-message-cts-02-pic {
		margin:0 -130px 0 0;
	}

	.p-top-message-cts-02-pic img {
		border-radius: 20px 0 0 20px;
	}

}



/* p-top-information */

.p-top-information {
	background: url(../img/bg-information.jpg) repeat-x center center / cover;
	padding: 0 25px;
	position: relative;
	/*z-index: -1;*/
}

.p-top-information:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content:"";
	background: rgba(1,21,90,0.73);
	z-index: 1;
}

.p-top-information-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
	z-index:2;
}

.p-top-information-cts {
	max-width: 900px;
	margin: 0 auto;
	border-radius: 10px;
	background: #ffffff;
	padding: 20px 20px;
}

.p-top-information-cts > dl {
	border-top: solid 1px #DDDDDD;
}

.p-top-information-cts > dl:last-child {
	border-bottom: solid 1px #DDDDDD;
}

.p-top-information-cts > dl > dt {
	padding: 3px 10px;
	border-bottom: solid 1px #DDDDDD;
	background: #f3f3f3;
}

.p-top-information-cts > dl > dd {
	padding: 10px 10px;
}

.p-top-information-cts > dl > dd ul > li {
	padding: 0 0 0 1em;
	position: relative;
}

.p-top-information-cts > dl > dd ul > li:before {
	position: absolute;
	top: 0.8em;
	left:0.4em;
	width: 3px;
	height: 3px;
	content: "";
	background: #010101;
	border-radius: 50%;
}

@media only screen and (min-width: 950px){

	.p-top-information {
		padding: 0 130px;
	}

	.p-top-information-inner {
		padding: 80px 0 100px 0;
	}

	.p-top-information-cts {
		border-radius: 15px;
		padding: 70px 70px;
	}

	.p-top-information-cts > dl {
		display: table;
		width: 100%;
	}

	.p-top-information-cts > dl > dt {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		width:calc(6em + 32px);
		padding: 16px 10px;
		background: none;
		border-bottom: none;
	}

	.p-top-information-cts > dl > dd {
		display: table-cell;
		text-align: left;
		vertical-align: top;
		padding: 16px 0;
	}

}



/* p-top-contact */

.p-top-contact {
	background: #6CC660;
	padding: 0 25px;
}

.p-top-contact-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 40px 0;
}

.p-top-contact-cts > dt {
	font-size: 1.6rem;
	line-height: 1.3;
	font-weight: 700;
	text-align: center;
	color: #ffffff;
}

.p-top-contact-cts > dd {
	margin: 14px 0 0 0;
	color: #ffffff;
}

.p-top-contact-cts > dd a {
	color: #ffffff;
}

.p-top-contact-logo img {
	max-width: 222px;
}

@media only screen and (min-width: 950px){

	.p-top-contact {
		padding: 0 130px;
	}

	.p-top-contact-inner {
		padding: 80px 0 100px 0;
	}

	.p-top-contact-cts > dt {
		font-size: 2.1rem;
	}

}



/*--------------------------------------------------------------------------------
	inview
--------------------------------------------------------------------------------*/

/* fadein */

.inview-fadein01{
	opacity:0;
	transition:all 0.5s ease-in;
}

.inview-fadein01.is-act{
	opacity:1;
}

.inview-fadein02 a{
	transition:all 0.8s ease-in;
    transform: translateY(100px);
}

.inview-fadein02.is-act a{
	transform: translateY(0);
    transition-delay: .5s;
}


/*開催日時*/
.p-top-program-ibox-date {
	font-feature-settings: "palt";
	width: 100%;
}

.p-top-program-ibox-date li {
	display: inline-block;
	padding-right: 0.3em;
	font-feature-settings: "palt";
}

.p-top-program-ibox-date li:after {
	content: "、";
}

.p-top-program-ibox-date li:last-child:after {
	content: none;
}

@media only screen and (min-width: 950px){

	.p-top-program-ibox-date {
		font-size: 15px;
		border-collapse: collapse;
	}
	
	.p-top-program-ibox-date th,
	.p-top-program-ibox-date td {
		box-sizing: border-box;
		text-align: left;
		padding: 8px;
		line-height: 1.35;
	}
	
	.p-top-program-ibox-date tr:nth-child(2n-1) {
		background: #f0f0f0;
	}
	
	.p-top-program-ibox-date th span {
		display: inline-block;
		min-width: 4.5em;
	}
	
	.p-top-program-ibox-date th {
		width: 13em;
		vertical-align: top;
		padding: 8px 0 8px 8px;
	}
}

@media only screen and (max-width: 949.9px){
	.p-top-program-ibox-date th,
	.p-top-program-ibox-date td {
		display: block;
		text-align: left;
	}
	
	.p-top-program-ibox-date td {
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: 1px solid #DDD;
	}
	
	.p-top-program-ibox-date tr {
		
	}
	
}


/* p-top-faq */

.p-top-faq {
	background: #6CC660;
	position: relative;
	padding-bottom: 80px;
}

.p-top-faq:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 50%;
	height: 40px;
	content: "";
	background: #089548;
	clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
}

.p-top-faq:after {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #6CC660;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

.p-top-faq .c-ttl-01-inner * {
	color: #FFF !important;
}

.p-top-faq-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 25px 40px 25px;
	position: relative;
	z-index:2;
}

.p-top-faq-cts {
	max-width: 800px;
	margin: 0 auto;
	border-radius: 10px;
	background: #ffffff;
	padding: 15px 20px 20px 20px;
}

.p-top-faq-dl {
	border-bottom: 1px dotted #ccc;
}

.p-top-faq-dl dt {
	padding: 15px 0 15px 30px;
	position: relative;
	font-weight: bold;
}

.p-top-faq-dl dt:before {
	content: "";
	background: url("../img/icn-q.svg") no-repeat center center;
	background-size: contain;
	display: inline-block;
	height: 1.5em;
	width: 1.5em;
	position: absolute;
	left: 0;
	top: 15px;
}

.acd-cts {
	display: none;
}
.acd-cts--open {
	display: block;
}

.p-top-faq-dl dd {
	padding: 5px 0 15px 30px;
	position: relative;
}

.p-top-faq-dl dd:before {
	content: "";
	background: url("../img/icn-a.svg") no-repeat center center;
	background-size: contain;
	display: inline-block;
	height: 1.5em;
	width: 1.5em;
	position: absolute;
	left: 0;
	top: 5px;
}

.p-top-faq-ttl {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.5rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 30px 0 5px 0;
}

.p-top-faq-ttl:first-child {
	margin: 0 0 5px 0;
}


@media only screen and (min-width: 950px){
	.p-top-faq {
		padding-bottom: 180px;
	}
	
	.p-top-faq:before {
		top: -120px;
		left: 0;
		width: 50%;
		height: 120px;
		content: "";
		clip-path: polygon(0 0, 100% 100%, 0 100%, 0 0);
	}

	.p-top-faq:after {
		top: -119px;
		bottom: -10px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	}
	
	.p-top-faq-cts {
		border-radius: 15px;
		padding: 40px 50px 50px 50px;
	}
	
	.p-top-faq-ttl {
		font-size: 2.3rem;
		margin: 50px 0 10px 0;
	}
	
	.p-top-faq-ttl:first-child {
		margin: 0 0 10px 0;
	}
}

/* p-top-apply */

.p-top-apply {
	position: relative;
}

.p-top-apply:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #FFFFFF;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

.p-top-apply-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 25px 40px 25px;
	position: relative;
	z-index:2;
}

.p-top-apply-cts {
	max-width: 800px;
	margin: 0 auto;
	border-radius: 10px;
	background: #ffffff;
	padding: 20px 20px;
	border: 2px solid #089548;
}

.p-top-apply-ttl {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.5rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 0 0 5px 0;
}

.p-top-apply-ttl-02 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.3rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 15px 0 5px 0;
}

.p-top-apply-cts + .p-top-apply-cts {
	margin-top: 10px;
}

.p-top-apply-box-btn {
	text-align: center;
	padding-top: 15px;
}

.c-top-apply-btn {
	display: inline-block;
	margin: 0 auto;
	background: #089548;
	color: #FFF;
	font-weight: bold;
	padding: 0.8em 0 ;
	width: 14em;
	text-align: center;
	border-radius: 50px;
}

@media only screen and (min-width: 950px){
	.p-top-apply-inner {
		padding: 20px 25px 100px 25px;
	}
	.p-top-apply:before {
		top: -119px;
		bottom: -10px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	}
	
	.p-top-apply-cts {
		border-radius: 15px;
		padding: 50px;
	}

	.p-top-apply-ttl {
		font-size: 2.3rem;
		margin: 0 0 10px 0;
	}
	
	.p-top-apply-ttl-02 {
		font-size: 2rem;
		margin: 30px 0 10px 0;
	}
	
	.p-top-apply-cts + .p-top-apply-cts {
		margin-top: 20px;
	}
	
	.p-top-apply-box {
		display: flex;
		justify-content: space-between;
	}
	
	.p-top-apply-box-txt {
		width: calc(100% - 16em);
	}
	
	.p-top-apply-box-btn {
		width: 13em;
		padding-top: 0;
	}
}


/* p-top-voice */

.p-top-voice {
	position: relative;
}

.p-top-voice:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #FFFFFF;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

.p-top-voice-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 25px 40px 25px;
	position: relative;
	z-index:2;
}



.p-top-voice-ttl img {
	height: 50px;
	width: auto;
}

.p-top-voice-ttl-02 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.5rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 0 0 5px 0;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.p-top-voice-inverview-btn {
	margin-top: 15px;
}

.p-top-voice-inverview-btn span {
	display: inline-block;
	margin: 0 auto;
	border: 1px solid #089548;
	color: #089548;
	font-weight: bold;
	padding: 0.8em 1.5em ;
	text-align: center;
	border-radius: 50px;
}

.p-top-voice-general dt {
	background: #f6f6f6;
	padding: 0.3em 30px 0.3em 0.5em;
	font-weight: bold;
	font-size: 115%;
	margin-top: 10px;
	position: relative;
	color: #089548;
	
}

.p-top-voice-general dt:after,
.p-top-voice-general dt.acd-02.js-act:after{
	content: "";
	display: inline-block;
	width:16px;
	height: 16px;
	position: absolute;
	top: calc(50% - 8px);
	right: 10px;
	background: url("../img/icn-plus.svg") no-repeat center center;
	background-size: contain;
}

.p-top-voice-general dt.js-act:after,
.p-top-voice-general dt.acd-02:after{
	background: url("../img/icn-minus.svg") no-repeat center center;
	background-size: contain;
}

.p-top-voice-general dd {
	padding: 10px 0 10px 2.2em;
}


.p-top-voice-general dd p {
	position: relative;
}

.p-top-voice-general dd p:before {
	content: "";
	display: inline-block;
	width: 1.3em;
	height: 1.5em;
	position: absolute;
	left: -1.7em;
	top: 0;
	background: url("../img/icn-chat.svg") no-repeat center center;
	background-size: contain;
}

.p-top-voice-general dd p + p {
	margin-top: 1.5em;
}

@media only screen and (min-width: 950px){
	
	.p-top-voice:before {
		top: -119px;
		bottom: -10px;
		left: 0;
		width: 100%;
		height: 120px;
		content: "";
		clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	}
	
	
	.p-top-voice-inner {
		max-width: 770px;
		padding: 20px 25px 180px 25px;
	}
	
	.p-top-voice-ttl img {
		height: auto;
	}
	
	.p-top-voice-ttl-02 {
		font-size: 2.2rem;
	}

}

/* .c-bigbtn */
.c-bigbtn-01 {
	text-align: center;
	margin: 25px 0 0 0;
	position: relative;
	filter: drop-shadow(0px 10px 15px rgba(0,0,0,0.15));
}

.c-bigbtn-01 img {
	width: 70%;
	max-width: 410px;
}

@media only screen and (min-width: 950px){
	.c-bigbtn-01 {
		margin: 40px 0 0 0;
	}
	
	.p-top-info-cts + .c-bigbtn-01 {
		margin: 30px 0 0 0;
	}
	
}

/*
.c-bigbtn {
	text-align: center;
	margin: 30px 0 0 0;
	position: relative;
	filter: drop-shadow(0px 10px 15px rgba(0,0,0,0.2));
}

.c-bigbtn a {
	display: inline-block;
	margin: 0 auto;
	background: #F7921E;
	color: #FFF !important;
	font-size: 120%;
	padding: 0.8em 3em;
	border-radius: 100px;
	text-align: center;
	font-weight: bold;
	position: relative;
	font-size: 1.8rem;
}

.c-bigbtn a:before {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translate(0,-50%);
	width: 12px;
	height: 16px;
	content: "";
	background: url(../img/icn-arrow-white.svg) no-repeat center center / contain;
}

@media only screen and (min-width: 950px){
	.c-bigbtn a {
		font-size: 2.5rem;
		padding: 0.8em 4em;
	}
	
	.c-bigbtn a:before {
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translate(0,-50%);
		width: 14px;
		height: 18px;
		content: "";
		background: url(../img/icn-arrow-white.svg) no-repeat center center / contain;
	}
}
*/

.c-sp-btn {
    display: none;
}

@media only screen and (max-width: 950px){
    
    .c-sp-btn {
        display: block;
        text-align: center;
        position: fixed;
        bottom: 10px;
        width: 100%;
        z-index: 99999;
    }
    
    .c-sp-btn a {
        font-weight: bold;
        color: #FFF;
        background: #F78D1E;
        border-radius: 50px;
        display: inline-block;
        width: 80%;
        max-width: 400px;
        padding: 15px 0;
    }
    
    .c-sp-btn a img {
        height: 17px;
        width: auto;
        vertical-align: middle;
        margin-left: 12px;
    }
    
    
}