@charset "UTF-8";
/* Reset CSS
 * --------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td {
    padding: 0;
    margin: 0;
}
a{
	text-decoration:none;
}
table {
    border-spacing: 0;
}
fieldset,img {
    border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
    font-weight: normal;
    font-style: normal;
}
strong{
	font-weight: bold;
}
ol,ul {
    list-style: none;
    margin:0;
    padding:0;
}
caption,th {
    text-align: left;

}
h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
    font-size: 100%;
    margin:0;
    padding:0;
    color:#444;
}
q:before,q:after {
    content:'';
}
abbr,acronym { border: 0;
}


/* Custom CSS
 * --------------------------------------- */

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html,body{
	height: 100%;
	font-family: 'Noto Sans Japanese', sans-serif;
}


.bg-cover{
	position: relative;

	/* 画像を常に天地左右の中央に配置 */
	background-position: center center;

	/* 画像をタイル状に繰り返し表示しない */
	background-repeat: no-repeat;

	/* コンテンツの高さが画像の高さより大きい時、動かないように固定 */
	/*background-attachment: fixed;*/

	/* 表示するコンテナの大きさに基づいて、背景画像を調整 */
	background-size: cover;

	/* 背景画像が読み込まれる前に表示される背景のカラー */
	background-color: #000;
}
.center-fix{
	position: absolute;
	height: 50%;
	left: 0;
	right: 0;
	top: 50%;
	bottom: 0;
	margin: auto;
	text-align: center;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
#main{
	height: 100%;
	background-image: url(../images/main.jpg);
}
#main h1{
	max-width: 740px;
	/*height: 100%;*/
	-webkit-transform: translateY(-60%);
	-ms-transform: translateY(-60%);
	transform: translateY(-60%);
}
#main h1 img{
	max-width: 100%;
}

.landscape #main h1 img{
   /* スマホ横向きの場合 */
   max-height: 100%;
}
.iphone .landscape #main h1,
.android .landscape #main h1{
   /* スマホ横向きの場合 */
	height: 50%;
	left: 0;
	right: 0;
	top: 50%;
	bottom: 0;
	-webkit-transform: translateY(-70%);
	-ms-transform: translateY(-70%);
	transform: translateY(-70%);
}
#main #scroll{
	/*border: solid 3px #000;*/
	width: 53px;
	height: 54px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 5%;
	margin: auto;
	/*height: 10%;*/
	text-align: center;
}
.iphone .landscape #main #scroll,
.android .landscape #main #scroll{
   /* スマホ横向きの場合 */
	max-width: 6%;
	left: 0;
	right: 0;
	bottom: 24%;
	margin: auto;
	height: 2%;
}
.landscape #main #scroll img{
   /* スマホ横向きの場合 */
	width: 100%;
	margin: auto;
	height: auto;
}
#story01 {
	height: 100%;
	background-image: url(../images/main_4.jpg);
}
#story01 h1{
	width: 75%;
}
#story01 h1 img{
	max-width: 100%;
	max-height: 120%;
}
#story01 #apr_caption{
	position: absolute;
	bottom: 1%;
	right: 2%;
}
.story-common{
	height: 85%;	
}
.story-common h1{
	width: 75%;
	-webkit-transform: translateY(-55%);
	-ms-transform: translateY(-55%);
	transform: translateY(-55%);
}
.story-common h1 img{
	max-width: 100%;
	max-height: 120%;
}
#story02 {
	background-image: url(../images/main_5.jpg);
}
#story03 {
	background-image: url(../images/main_6.jpg);
}
#story04 {
	background-image: url(../images/main_7.jpg);
}
#story05 {
	background-image: url(../images/main_8.jpg);
}
#story06 {
	background-image: url(../images/main_9.jpg);
}
#story07 {
	background-image: url(../images/main_10.jpg);
}
#story08 {
	background-image: url(../images/main_11.jpg);
}
#story09 {
	background-image: url(../images/main_12.jpg);
}
#story10 {
	background-image: url(../images/main_1.jpg);
}
#story11 {
	background-image: url(../images/main_2.jpg);
}
#story12 {
	background-image: url(../images/main_3.jpg);
}





/***********************/
.storng{ font-size: 1.1em; }
.radius{
	border-radius: 7px;
}

.pc-inner01{
	max-width: 1040px;
	width: 100%;
	margin: auto;
}
.pc-inner02{
	max-width: 980px;
	width: 100%;
	margin: auto;
}
.pc-inner03{
	max-width: 782px;
	width: 100%;
	margin: auto;
}
.pc-inner04{
	max-width: 994px;
	width: 100%;
	margin: auto;
}
.block{
	margin-bottom: 15%;
}
.block-last{
	margin-bottom: 0;
}
.col2 .col{
	width: 50%;
}
.col2 .col-l{
	float: left;
	width: 46%;
}
.col2 .col-r{
	float: right;
}
.col3 .col{
	width: 30.5%;
	float: left;
}
.col3 .col-l{
	float: left;
	margin-left: 4%;
}
.col3 .col-l:first-child{
	float: left;
	margin-left: 0;
}
.col3 .col-r{
	float: right;
}
.box_apply .col3{
	width: 81%;
	margin: auto;
}
.col4 .col{
	width: 23.5%;
	float: left;
}

#event .col3 .col{
	background-color: #fff;
	margin-left: 2%;
	width: 32%;
}
#event .col3 .col:first-child{
	margin-left: 0;
}

.col-r img{
	vertical-align: text-top;
}
#challenge .col-r img{
	padding-top: 3px;
}
#support .col-r img{
	padding-top: 8px;
}
.clearfix{
	overflow: hidden;
}
#article img{
	max-width: 100%;
}
#copy02{
	margin: 142px auto;
	text-align: center;
}
#challenge{
	background-color: #f8f9f9;
	padding-top: 80px;
	padding-bottom: 140px;
	margin-bottom: 70px;
}
#support{
	padding-top: 80px;
	padding-bottom: 140px;
}


#event{
	background-color: #f0fbfc;
	padding-top: 80px;
	padding-bottom: 140px;
	text-align: center;
}

.hStyle03{
	width: 64%;
	color: #23afbc;
	margin-bottom: 110px;
}
#support .hStyle03{
	max-width: 100%;
	color: #23afbc;
	margin-bottom: 100px;
}
.hStyle04{
	line-height: 48px;
	margin-bottom: 36px;
}
.hStyle05{
	font-size: 24px;
	line-height: 48px;
	margin-bottom: 1%;
}
.hStyle06{
	font-size: 18px;
	line-height: 26px;
	margin-bottom: 5%;
}
.hStyle07{
	line-height: 26px;
	margin-bottom: 3%;
}
#can{
	text-align: center;
	padding-bottom: 10%;
}
#can .hStyle05{
	font-size: 24px;
	line-height: 48px;
	margin-bottom: 1.5%;
}

#can .box_apply {
    margin: 0 auto;
    border: 5px solid #007a45;
    text-align: center;
    padding-bottom: 3%;
}
#can .header {
    padding: 2.5% 0 1.5% 0;
}
#can .header img{
	max-width: 38%;
}
#can .lead{
	padding: 2.7% 0 2% 0;
}
#can .lead strong{
	font-size: 1.3em;
}



.thum{
	vertical-align: bottom;
    width: 100%;
}
.btn{
	background-color: #fd8d01;
	border-radius: 20px;
	color: #fff;
	font-size: 12px;
	font-weight: 100;
}
#can .btn{
	width: 35%;
	display: block;
	margin: auto;
	padding: 1.1% 0;
	background-image: url(../images/btn01.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 2.069%;
	margin-bottom: 1.278%;
}
#can .btn:hover{
	background-image: url(../images/btn01_on.png);
	background-color: #e96700;
}

/* What
---------------------------------------------------------- */
#what{
	padding-top: 50px;
	padding-bottom: 40px; 
	margin-bottom: 80px;
}
.what_logo{
	text-align: center;
	max-width: 100%;
	text-align: center;
	margin:auto;
	margin-bottom: 50px;
}
#what .lead-img{
	margin-bottom: 20px;
}
.waht_figure{
	max-width: 100%;
	text-align: center;
	margin: auto;
}
#what .btn{
	width: 35%;
	display: block;
	margin: auto;
	padding: 1.1% 0;
	background-image: url(../images/btn01.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 3.5%;
	margin-bottom: 1.278%;
	text-align: center;
}
#what .btn:hover{
	background-image: url(../images/btn01_on.png);
	background-color: #e96700;
}


/* Kind
---------------------------------------------------------- */

#kind{
	background-color: #fcf9f0;
	padding-top: 70px;
	padding-bottom: 140px;
	text-align: center;
}
#kind .btn{
	width: 80%;
	display: block;
	margin: auto;
	padding: 4% 0;
	background-image: url(../images/btn02.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 3.069%;
	margin-bottom: 1.278%;
	position: absolute;
	bottom: 5%;
	left: 0;
	right: 0;
}
#kind .btn:hover{
	background-image: url(../images/btn02_on.png);
	background-color: #e96700;
}
#kind .col4 .col{
	background-color: #fff;
	padding: 2% 0;
	margin-left: 2%;
	height: 340px;
	position: relative;
	text-align: center;
}
#kind .col4 .col:first-child{
	margin-left: 0;
}

#kind .col4 .col:first-child h3{
	height: 54px;
	line-height: 54px;
}

/* Event
---------------------------------------------------------- */


#event .btn{
	width: 87%;
	display: block;
	margin: auto;
	padding: 3% 0;
	background-image: url(../images/btn03.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 3.069%;
	margin-bottom: 1.278%;
}
#event .btn:hover{
	background-image: url(../images/btn03_on.png);
	background-color: #e96700;
}
#kind .thum-wrap{
	position: relative;
	text-align: center;
}
#kind .thum-wrap:before{
	content: none;
	display: block;
	padding-top: 60%;
}
#kind .thum-wrap img{
	position: absolute;
	top: 0;
	left: 50%;
	right: 0;
	bottom: 0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
.txtStyle01{ 
	font-size: 16px; 
	line-height: 2;
	text-align: justify;
	margin-bottom: 4.2%;
}
#support .txtStyle01{ 
	font-size: 16px; 
	line-height: 2;
	text-align: justify;
	margin: auto;
	margin-bottom: 4.2%;
	max-width: 694px;
}
.txtStyle02{ 
	position: relative;
	font-size: 11px; 
	line-height: 1.6;
	text-align: center;
	background-color: #fff;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}
#can .txtStyle02{ 
	padding: 15px 0;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    height: 60px;
}
#can .txtStyle02 .middle{ 
	position: absolute;
	top: 
}

.txtStyle03{ 
	font-size: 14px;
	line-height: 1.78571;
	text-align: justify;
	padding: 0 9%;
	margin-bottom: 8%;
	letter-spacing: -0.1em;
}
#kind .col:first-child .txtStyle03{ 
	margin-bottom: 17%;
}
.txtStyle02:before{ 
	content: "";
	display: block;
	padding-top: 37%;
}
#can .txtStyle02:before{ 
	content: none;
	display: block;
	padding-top: 37%;
}
#can .col img{ 
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
/*.middle{
	position: absolute;
    top: 50%;
    left: 0;
    right: 0;
     -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}*/
.txtStyle02.line-two{
    padding: 9.381% 0;
}
#can .fsize-reset{ font-size: 11px; }

.kg-comma{ letter-spacing: -0.3em; }
.letter-space01{
	letter-spacing: -0.03em; 
}
.letter-space02{
	letter-spacing: -0.1em; 
}
.caution{
	font-size: 14px;
	color: #000;
}
.middle p{
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.center{
	text-align: center;
}

/**********************************/
.rwd-h{
	position: relative;
}
.rwd-h:before{
	content: "";
	display: block;
	padding-top: 100%;
	overflow: hidden;
}
.rwd-h-inner-top{
	position: absolute;
	top: 5%;
/*	-webkit-transform: translateY(50%);
	-ms-transform: translateY(50%);
	transform: translateY(50%);*/
	left: 0;
	right: 0;

}
.top-adjust-event{
	top: 9%;
}
.rwd-h-inner-bottom{
	position: absolute;
	bottom: 5%;
/*	-webkit-transform: translateY(50%);
	-ms-transform: translateY(50%);
	transform: translateY(50%);*/
	left: 0;
	right: 0;

}




/* フッター（pc）
---------------------------------------------------------- */


footer #footer-pc {
	padding: 38px 0 0 0;
	background: #007a45;
	position: relative;
	width: 100%;
}
footer #footer-pc p#pagetop {
	width: 68px;
	height: 68px;
	background: url(../images/pagetop_on.png) no-repeat 0 0;
	position: absolute;
	top: -34px;
	right: 80px;
}

footer #footer-pc p.lead {
	margin: 0 0 26px 0;
	text-align: center;
}

footer #footer-pc .box_apply {
	max-width: 954px;
	margin: 0 auto 20px auto;
	background: #005a33;
	border: 3px solid #005a33;
	border-radius: 10px;
	text-align: center;
}
footer #footer-pc .box_apply h3 {
	background: #e5f1ec;
	padding: 14px 0 11px 0;
	border-top-left-radius: 7px;
	border-top-right-radius: 7px;
}
footer #footer-pc .box_apply .cont {
	padding: 23px 0 22px 0;
}
footer #footer-pc .box_apply .cont p.lead {
	margin: 0 0 18px 0;
}

footer #footer-pc .box_apply .cont p.anno {
	color: #fff;
	font-size: 12px;
	text-align: center;
}
footer #footer-pc p.ttl_contact {
	text-align: center;
	color: #fff;
	font-weight: bold;
	margin: 0 0 12px 0;
}
footer #footer-pc .box_contact {
	max-width: 726px;
	margin: 0 auto 30px auto;
}
footer #footer-pc .box_contact .tel {
	max-width: 430px;
	float: left;
	color: #fff;
	padding: 7px 0 0 0;
}
footer #footer-pc .box_contact .tel img {
	float: left;
	margin: 0 10px 0 0;
}
footer #footer-pc .box_contact .tel span {
	position: relative;
	top: 9px;
	font-size: 14px;
}
footer #footer-pc .btn01 {
	font-size: 17px;
	border-radius: 50px;
}
footer #footer-pc .btn01{
	width: 52.411%;
	display: block;
	margin: auto;
	padding: 2.3% 0;
	background-image: url(../images/btn_footer01.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 0;
	margin-bottom: 2%;
}
footer #footer-pc .btn01:hover{
	background-image: url(../images/btn_footer01_on.png);
	background-color: #e96700;
}
footer #footer-pc .btn02 {
	font-size: 14px;
	border-radius: 20px;
}
footer #footer-pc .btn02{
	width: 97.3%;
	display: block;
	margin: auto;
	padding: 3.89% 0;
	background-image: url(../images/btn_footer02.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: 0;
	margin-bottom: 2%;
	text-align: center;
}
footer #footer-pc .btn02:hover{
	background-image: url(../images/btn_footer02_on.png);
	background-color: #e96700;
}
footer #footer-pc .btn-right a{
    float: right;

}


footer #footer-pc .address {
	padding: 25px 0 16px 0;
	border-top: 1px solid #fff;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
	color: #fff;
}
footer #footer-pc .address img.logo {
	position: absolute;
	top: 30px;
	right: 0;
}
footer #footer-pc .address p.name {
	font-weight: bold;
	margin: 0 0 7px 0;
}
footer #footer-pc .address p a {
	color: #fff;
}

footer #footer-pc .footvisual img {
	width: 100%;
}
footer #footer-pc .footvisual p.small {
	background: url(../images/footer_visual.png) no-repeat center center;
	background-size: cover;
	min-height: 424px;
}
footer #footer-pc .footvisual p.small img {
	display: none;
}

footer #footer-pc .copyright {
	background: #024528;
	padding: 29px 0 19px 0;
}
footer #footer-pc .copyright .inr {
	max-width: 960px;
	margin: 0 auto;
	color: #fff;
}
footer #footer-pc .copyright p.txt {
	float: left;
}
footer #footer-pc .copyright p.link {
	float: right;
	font-size: 10px;
	text-align: right;
	padding-top: 3px;
}
footer #footer-pc .copyright p.link a {
	color: #fff;
}
#footer-sp{
	display: none;
}

.tagarea {
	position: absolute;
	left: -3000px;
}

/**********************************/


@media screen and (max-width: 1124px) {
	/* レスポンシブ開始 */
	.tablet-inner{
		padding: 0 5%;		
	}
	.pc-inner01,.pc-inner02,.pc-inner03 {
	    max-width: 1040px;
	    width: 92%;
	    margin: auto;
	}
	
}


@media screen and (min-width: 768px) and (max-width: 979px) {
	/* 768px - 979px用（タブレット用）の記述 */
	
	.tablet-inner{
		padding: 0 5%;
	}
	footer #footer-pc .copyright {
	    background: #024528;
	    padding: 29px 0 19px 0;
	    text-align: center;
	}
	footer #footer-pc .copyright p.txt {
    	float: none;
    	width: auto;
    	margin-left: 2%;
	}
	footer #footer-pc .copyright p.link {
	    float: none;
	    font-size: 10px;
	    text-align: center;
	    padding-top: 3px;
	}
}


@media screen and (max-width: 768px) {
	/* 750px以下用（スマートフォン用）の記述 */
	.pc-inner01,.pc-inner02,.pc-inner03 {
	    max-width: 1040px;
	    width: auto;
	    margin: auto;
	}

	#main{
		height: 100%;
		background-image: url(../images/sp_main.jpg);
	}
	#main h1{
		max-width: 94%;
		height: 45%;
		-webkit-transform: translateY(-52%);
		-ms-transform: translateY(-52%);
		transform: translateY(-52%);
	}
	#main h1 img{
		max-width: 100%;
	}

	#story01 {
		height: 100%;
		background-image: url(../images/main_4.jpg);
	}
	#story01 h1{
		width: 75%;
	}
	#story01 h1 img{
		max-width: 100%;
		max-height: 100%;
	}
	#story01 h1{
		width: 75%;
	}
	#story01 h1 img{
		max-width: 100%;
		max-height: 100%;
	}
	#story01 #apr_caption{
		position: absolute;
		bottom: 0.2%;
		right: 2%;
	}
	.story-common{
		height: 85%;	
	}
	.story-common h1{
		width: 75%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.story-common h1 img{
		max-width: 100%;
		max-height: 100%;
	}
	#story02 {
		background-image: url(../images/main_5.jpg);
	}
	#story03 {
		background-image: url(../images/main_6.jpg);
	}
	#story04 {
		background-image: url(../images/main_7.jpg);
	}
	#story05 {
		background-image: url(../images/main_8.jpg);
	}
	#story06 {
		background-image: url(../images/sp_main_9.jpg);
	}
	#story07 {
		background-image: url(../images/main_10.jpg);
	}
	#story08 {
		background-image: url(../images/main_11.jpg);
	}
	#story09 {
		background-image: url(../images/main_12.jpg);
	}
	#story10 {
		background-image: url(../images/main_1.jpg);
	}
	#story11 {
		background-image: url(../images/main_2.jpg);
	}
	#story12 {
		background-image: url(../images/main_3.jpg);
	}

	/***********************/
	.pc-inner01{
		width: auto;
		margin: auto;
	}
	.sp-inner{
		padding: 0 5%;
	}
	.block{
		margin-bottom: 15%;
	}
	.col2 .col{
		width: auto;
	}
	.col2 .col-l{
		float: none;
		width: auto;
	}
	.col2 .col-r{
		float: none;
	}
	.clearfix{
		overflow: hidden;
	}

	#article img{
		max-width: 100%;
	}
	#article #kind img{
		max-width: 100%;
		width: 50%;
	}
	#copy02{
		margin: 20% auto;
	}
	#challenge{
		background-color: #f8f9f9;
		padding-top: 10%;
		padding-bottom: 2%;
		margin-bottom: 0;
	}

	/* Support
	---------------------------------------------------------- */

	#support{
		padding-top: 10%;
		padding-bottom: 20%;
	}
	#support .hStyle03{
		width: 50%;
	}
	.hStyle04{
		font-size: 3.86vw; /* 26px */
		text-align: justify;
		margin-bottom: 4.2%;
		font-weight: bold;
		line-height: 1.8;
	}



	/* Can
	---------------------------------------------------------- */

	.hStyle05{
		text-align: center;
		margin-bottom: 3vw;
		font-weight: bold;
		line-height: 1.8;
	}
	#can{
		text-align: center;
		padding-bottom: 7%;
	}
	#can .box_apply {
	    margin: 0 auto;
	    border: none;
	    border-radius: initial;
	    text-align: center;
	    padding-bottom: 0;
	}
	#can .header {
	    padding: 3% 0 1.5% 0;
	    border-top-left-radius: initial;
	    border-top-right-radius: initial;
	}
	#can .header img{
		max-width: 68%;
	}
	#can .lead{
		padding: 5vw 0 4.2vw 0;
		font-weight: bold;
		letter-spacing: 0.1em;
	}
	#can .lead strong{
		font-size: 1.4em;
		letter-spacing: -0.02em;
		padding-right: 0.03em;
	}

	#can .box_apply .col3{
		width: 100%;
		margin: auto;
	}
	.col3 .col{
		float: none;
		width: 100%;
		margin:auto;
		margin-bottom: 6%;
	}
	.col3 .col-l:first-child {
	    float: none;
	    margin-left: 0;
	}
	#can .hStyle05 {
	    font-size: 4.2vw;
	    line-height: 48px;
	    margin-bottom: 1.5%;
	}
	#can .txtStyle02 {
	    position: relative;
	    line-height: 1.6;
	    text-align: center;
	    padding: 3% 0;
	    letter-spacing: 0.03em;
	    height: auto;
	}
	#can .txtStyle02:before {
	    content: none;
	    display: block;
	    padding-top: 22%;
	}
	.thum{
		vertical-align: bottom;
	    width: 100%;
	}
	.btn{
		background-color: #fd8d01;
		border-radius: 30px;
		color: #fff;
		font-size: 3.5vw;
		font-weight: bold;
	}
	#can .btn,
	#what .btn{
		width: 100%;
		display: block;
		margin: auto;
		padding: 2% 0;
		background-image: url(../images/btn01.png);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		margin-top: 5%;
		margin-bottom: 5%;
	}
	#can .btn:hover,
	#what .btn:hover{
		background-image: url(../images/btn01_on.png);
		background-color: #e96700;
	}
	#can .caution{
		text-align: left;
	}


	/* What
	---------------------------------------------------------- */
	#what{
		padding-top: 7%;
		padding-bottom: 10%;
		margin-bottom: 10%;
	}
	.what_logo{
		text-align: center;
		max-width: 80%;
		text-align: center;
		margin:auto;
		margin-bottom: 6%;
	}
	#what .lead-img{
		margin-bottom: 4%;
	}
	#what .fsize06{
		font-size: 3.5vw;
		text-align: left!important;
	}
	.waht_figure{
		max-width: 90%;
		text-align: center;
		margin: auto;
	}

	/* Kind
	---------------------------------------------------------- */

	#kind{
		padding-top: 7%;
		padding-bottom: 7%;
		text-align: center;
	}
	#kind .col4 .col {
	    width: auto;
	    float: none;
	    padding: 5% 0;
	    margin: 0 0 5% 0;
	}
	#kind .hStyle04{
		text-align: center;
		margin-bottom: 4.2%;
		font-weight: bold;
		line-height: 1.8;
	}
	#kind .thum-wrap:before {
	    content: "";
	    display: none;
	    padding-top: 35%;
	}
	#kind .thum-wrap{
		position: initial;
		left: initial;
	    right: 0;
	    bottom: 0;
	    -webkit-transform: initial;
	    -ms-transform: initial;
	    transform: initial;
	}
	#kind .thum-wrap img {
		position: initial;
		left: initial;
	    right: 0;
	    bottom: 0;
	    -webkit-transform: initial;
	    -ms-transform: initial;
	    transform: initial;
	}
	#kind .btn, #event .btn{
		width: 85%;
		display: block;
		margin: auto;
		padding: 2% 0;
		background-image: url(../images/btn01.png);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		margin-top: 2%;
		margin-bottom: 2%;
	}
	.hStyle06 {
	    font-size: 4.2vw;
	    line-height: 1.7;
	    margin-bottom: 2%;
	}
	.txtStyle03 {
	    font-size: 3.5vw;
	    line-height: 1.78571;
	    text-align: justify;
	    padding: 0 9%;
	    margin-bottom: 0;
	    letter-spacing: 0;
	}
	#kind .txtStyle03 {
	    line-height: 1.78571;
	    text-align: justify;
	    padding: 0 9%;
	    margin-bottom: 2%;
	    letter-spacing: 0;
	}
	#kind .col:first-child .txtStyle03 {
    	margin-bottom: 2%;
	}
	#event{
		background-color: #f0fbfc;
		padding-top: 10%;
		padding-bottom: 10%;
		text-align: center;
	}

	#event .hStyle04 {
	    text-align: center;
	    margin-bottom: 7%;
	    font-weight: bold;
	    line-height: 1.8;
	}
	#event .hStyle07 {
	    margin-bottom: 2.1vw;
	    line-height: 1.7;
	}
	#event .col3 .col {
	    background-color: #fff;
	    margin-left: 0;
	    width: auto;
	}
	#event .txtStyle03 {
	    line-height: 1.78571;
	    text-align: center;
	    padding: 0;
	    margin-bottom: 3vw;
	    letter-spacing: 0;
	}
	#event .thum-wrap {
	    margin-bottom: 2.5vw;
	    letter-spacing: 0;
	    width: 50vw;
	    text-align:center;
	    display: block;
	    margin: 0 auto 2.5vw;
	}
	.square {
	    position: relative;
	    height: auto;
	    padding: 5vw 0 5vw;

	}


	.rwd-h:before {
	    content: none;
	    display: block;
	    padding-top: 90%;
	    overflow: hidden;
	}
	.rwd-h-inner-top {
	    top: initial;
	    left: 0;
	    right: 0;
	    position: initial;
	}
	.rwd-h-inner-bottom {
	    position: initial;
	    bottom: initial;
	    left: 0;
	    right: 0;
	}

	.hStyle03{
		width: 56%;
		color: #23afbc;
		margin-bottom: 15%;
	}
	.txtStyle01{ 
		font-size: 3.125vw; /* 20px */
		line-height: 2;
		text-align: justify;
		margin-bottom: 4.2%;
	}
	.kg-comma{ letter-spacing: -0.3em; }




	/* フッター（sp）
	---------------------------------------------------------- */

	#footer-pc{
		display: none;
	}
	#footer-sp{
		display: block;
	}
	footer {
	  background-color: #005a33;
	  text-align: center;
	  width: 100%;
	  font-size: 10px;
	}

	.footer-menu-main {
	  margin-bottom: 20px;
	  padding: 20px 25px 0;
	}
	.footer-menu-main li {
	  height: 40px;
	  margin-bottom: 10px;
	}
	.footer-menu-main li a {
	  background-color: #024528;
	  border-radius: 20px;
	  color: #fff;
	  display: block;
	  font-weight: bold;
	  height: 100%;
	  line-height: 40px;
	  position: relative;
	  text-decoration: none;
	  width: 100%;
	  font-size: 14px;
	}
	.footer-menu-main li a:before {
	  content: '';
	  background-color: #fff;
	  border-radius: 50%;
	  display: block;
	  height: 20px;
	  line-height: 20px;
	  position: absolute;
	  top: 10px;
	  left: 10px;
	  width: 20px;
	}
	.footer-menu-main li a:after {
	  content: '';
	  border: 5px solid transparent;
	  border-left: 8px solid #024528;
	  display: block;
	  height: 0;
	  position: absolute;
	  top: 15px;
	  left: 17px;
	  width: 0;
	}
	.footer-menu-support a {
	  background-color: #fd9000;
	}
	.footer-menu-support a:after {
	  color: #fd9000;
	}

	.footer-menu-sub {
	  margin-bottom: 30px;
	  padding: 0 25px;
	}
	.footer-menu-sub li {
	  display: inline-block;
	  margin-right: 1.0em;
	}
	.footer-menu-sub li:nth-child(3) {
	  margin-right: 0;
	}
	.footer-menu-sub li a {
	  color: #fff;
	  font-size: 13px;
	  line-height: 1.8;
	}

	footer dl {
	  color: #fff;
	  margin-bottom: 23px;
	  padding: 0 25px;
	}
	footer dt {
	  font-size: 13px;
	  font-weight: bold;
	  line-height: 1.3;
	  margin-bottom: 0.5em;
	}
	footer dd {
	  font-size: 12px;
	  margin-bottom: 0.5em;
	}
	footer dd a {
	  color: #fff;
	  text-decoration: underline;
	}

	#footer-sp .copyright {
	  background-color: #024528;
	  color: #fff;
	  font-size: 8px;
	  line-height: 1.8;
	  padding: 18px 15px;
	}
	.copyright span {
	  font-size: 8px;
	}
	.copyright span a {
	  color: #fff;
	  text-decoration: underline;
	}

}

.fsize01{ font-size: 32px; }
.fsize02{ font-size: 26px; }
.fsize03{ font-size: 26px; }
.fsize04{ font-size: 20px; }
.fsize05{ font-size: 18px; }
.fsize06{ font-size: 16px; }
.fsize07{ font-size: 14px; }
.fsize08{ font-size: 12px; }

.color01{ color: #23afbc; }
.color02{ color: #fd8d01; }
.color03{ color: #007a45; }
.color04{ color: #23afbc; }

.bgcolor01{ background-color: #f8f9f9; }
.bgcolor02{ background-color: #017a45; }
.bgcolor03{ background-color: #e5f1ec; }
.bgcolor04{ background-color: #fcf9f0; }
.bgcolor05{ background-color: #f0fbfc; }
.bgcolor-f{ background-color: #fff; }
.bgcolor-0{ background-color: #000; }

.lead-img{
	max-width: 100%;
	text-align: center;
	margin: 0 auto 30px;
}
#can .caution{
	margin-top: 20px;
}


.nowrap{ white-space: nowrap; }
.border-box{ box-sizing: border-box; }
.content-box{ box-sizing: content-box; }

.condensed01{ /* 長体 */
  -moz-transform:    scale( 1, 3 );  /* Firefox */
  -webkit-transform: scale( 1, 3 );  /* Chrome,Safari */
  -o-transform:      scale( 1, 3 );  /* Opera */
  -ms-transform:     scale( 1, 3 );  /* IE */
  transform:         scale( 1, 3 );  /* CSS3 */
}
.pc-middle{
	position: absolute;
	height: 50%;
	left: 0;
	right: 0;
	top: 50%;
	bottom: 0;
	margin: auto;
	text-align: center;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media screen and (min-width: 768px) and (max-width: 979px) {
/* 768px - 979px用（タブレット用）の記述 */

#kind .hStyle06 {
    font-size: 1.6vw;
    line-height: 1.8;
    margin-bottom: 5%;
}
#kind .txtStyle03 {
    font-size: 1.4vw;
    padding: 0 8%;
    margin-bottom: 6%;
}
#kind .col:first-child .txtStyle03 {
    margin-bottom: 15%;
}
#kind .col4 .col {
    padding: 2% 0;
    margin-left: 2%;
    height: 33vw;
    position: relative;
    text-align: center;
}
#kind img {
    max-width: 100%;
    width: 80%;
}
#kind .col4 .col:first-child h3 {
    height: 5.6vw;
    line-height: 5.6vw;
}
.fsize03 {
    font-size: 2.4vw;
    line-height: 2;
}
#event .fsize05 {
    font-size: 1.6vw;
}
#event .fsize07 {
    font-size: 1.4vw;
}
#event .hStyle07 {
    line-height: 1.6;
    margin-bottom: 3%;
}

#event .first .thum-wrap img {
    max-width: 100%;
    width: 50%;
}
#event .second .thum-wrap img {
    max-width: 100%;
    width: 35%;
}
#event .third .thum-wrap img {
    max-width: 100%;
    width: 60%;
}
#event .rwd-h:before {
    content: none;
    display: block;
    padding-top: 100%;
    overflow: hidden;
}
#event .col3 .col {
    background-color: #fff;
    margin-left: 2%;
    width: 32%;
    height: 31vw;
}
#event .rwd-h-inner-top {
    position: relative;
    top: initial;
    left: 0;
    right: 0;
    padding-top: 5%;
}
#event .rwd-h-inner-bottom {
    position: absolute;
    bottom: 5%;
    left: 0;
    right: 0;
}
#event .txtStyle03 {
    font-size: 1.4vw;
    line-height: 1.78571;
    text-align: center;
    padding: 0 9%;
    margin-bottom: 4%;
    letter-spacing: -0.1em;
}
.pc-middle{
	position: initial;
}
footer #footer-pc .box_apply {
    max-width: 954px;
    margin: 0 auto 20px auto;
    background: #005a33;
    border: 3px solid #005a33;
    border-radius: 10px;
    text-align: center;
}
footer #footer-pc .address {
    padding: 25px 0 16px 0;
    border-top: 1px solid #fff;
    max-width: 960px;
    width: 93%;
    margin: 0 auto;
    position: relative;
    color: #fff;
}

}

#can .use{
	font-size: 14px;
	margin-top: 25px;
}

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

.fsize01{ font-size: 32px; }
.fsize02{ font-size: 3.86vw; }
.fsize03{ font-size: 3.8vw; }
.fsize04{ font-size: 3.5vw; }
.fsize05{ font-size: 4.2vw; }
.fsize06{ font-size: 16px; }
.fsize07{ font-size: 3.5vw; }
.fsize08{ font-size: 3.2vw; }


.color01{ color: #23afbc; }
.color02{ color: #fd8d01; }
.color03{ color: #007a45; }
.color04{ color: #23afbc; }

.nowrap{ white-space: nowrap; }
.lead-img{
	max-width: 70%;
	text-align: center;
	margin: 0 auto 5vw;
}
.pc-middle{
	position: initial;
}
#kind .col4 .col {
    background-color: #fff;
    padding: 5% 0;
    margin-left: 2%;
    height: 74vw;
    position: relative;
    text-align: center;
}
#support .txtStyle01 {
    font-size: 3.125vw;
    line-height: 2;
    text-align: justify;
    margin: auto;
    margin-bottom: 4.2%;
    max-width: 694px;
}
#support .hStyle03 {
    max-width: 100%;
    color: #23afbc;
    margin-bottom: 13%;
}
#kind .col4 .col:first-child {
    margin-left: 0;
    padding-top: 0;
    height: 75vw;
}
#kind .col4 .col:first-child .btn{
    margin-top: 4%;
}
.caution{
	font-size: 12px;
	color: #000;
}
#can .use{
	font-size: 3vw;
	margin-top: 1vw;
	text-align: left;
}
#can .caution{
	font-size: 3vw;
	color: #000;
}
#what .what-start{
	text-align: center;
	margin-top: 4%;
	line-height: 1.9;
	margin-bottom: 2%;
	width: 100%!important;
}
}


#what .what-start{
	text-align: center;
	margin-top: 4%;
	line-height: 2;
	margin-bottom: 2%;
	width: 570px;
	margin: 4% auto 2%;
}


.bold{
	font-weight: bold;
}
