
@media screen and (min-width: 769px) {

	body{
		font-size: 1.4rem;
		color: #333;
	}
	#wrap{
		margin: auto;
		width: 640px;
	}


	/* kv
	--------------------------------------------------------------- */
	
	#kv{
		text-align: center;
	}
	#kv figure{
		margin: auto;
		max-width: 980px;
	}
	#kv figure img{
		width: 100%;
		height: auto;
	}
	#kv h2{
		display: none;
	}
	.description{ margin: 2rem auto; text-align: center; }
	.description p{ margin-bottom: 1rem; }
	.description p:last-of-type{ margin-bottom: 0; }

	/* btn
	--------------------------------------------------------------- */

	.btn-entry{
		position: relative;
		margin: 25px auto 0;
		width: 529px;
		height: 64px;
		overflow: hidden;
	}
	.btn-entry a{
		position: relative;
		display: block;
		width: 100%;
		height: 64px;
		border-radius: 32px;
		background: #fff;
		transition: opacity ease 300ms;
	}

	.btn-entry a i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 60px;
		text-align: center;
		line-height: 60px;
		font-size: 2rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #ba241f;
	}
	.btn-entry a i:before{
		position: absolute;
		content: "";
		margin:auto;
		top: 0;
		right: 20px;
		bottom: 0;
		display: block;
		width: 10px;
		height: 15px;
		background: url(../img/arrow_entry.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 40;
	}
	.btn-entry a i:after{
		position: absolute;
		content: "";
		top: 0;
		left: 1px;
		display: block;
		width: calc(100% - 2px);
		height: 54px;
		background: #e12f2a;
		border-radius: 32px;
	}
	.btn-entry a i em{
		position: relative;
		z-index: 20;
	}
	.btn-entry a:hover{
		opacity: 0.8;
	}


	.btn-entry span{
		position: relative;
		display: block;
		width: 100%;
		height: 64px;
		border-radius: 32px;
		background: #fff;
	}
	.btn-entry span i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 60px;
		text-align: center;
		line-height: 60px;
		font-size: 2rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #c8c8c8;
	}
	.btn-entry span i em{
		position: relative;
		z-index: 20;
	}

	/* btn追記 20210309 */
	.btn-sms-stop {
		position: relative;
		margin: 25px auto 0;
		width: 529px;
		height: 64px;
		overflow: hidden;
	}
	.btn-sms-stop a{
		position: relative;
		display: block;
		width: 100%;
		height: 64px;
		border-radius: 32px;
		background: #fff;
		transition: opacity ease 300ms;
	}
	.btn-sms-stop a i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 60px;
		text-align: center;
		line-height: 60px;
		font-size: 2rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #002355;
	}
	.btn-sms-stop a i:before{
		position: absolute;
		content: "";
		margin:auto;
		top: 0;
		right: 20px;
		bottom: 0;
		display: block;
		width: 10px;
		height: 15px;
		background: url(../img/arrow_entry.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 40;
	}
	.btn-sms-stop a i:after{
		position: absolute;
		content: "";
		top: 0;
		left: 1px;
		display: block;
		width: calc(100% - 2px);
		height: 54px;
		background: #003f99;
		border-radius: 32px;
	}
	.btn-sms-stop a i em{
		position: relative;
		z-index: 20;
	}
	.btn-sms-stop a:hover{
		opacity: 0.8;
	}

	/* schedule
	--------------------------------------------------------------- */

	#schedule .sec-col{
		padding: 0 25px;
	}
	#schedule .sec-col figure{
		padding: 0 25px;
	}
	#schedule .sec-col figure img{
		width: 100%;
		height: auto;
	}

}





@media screen and (max-width: 768px) {

	body{
		font-size: 1.2rem;
		color: #333;
	}

	#wrap{
		margin: auto;
		max-width: 750px;
	}

	/* kv
	--------------------------------------------------------------- */
	
	#kv{
	  text-align: center;
	}
	#kv figure{
		margin: auto;
		max-width: 980px;
	}
	#kv figure img{
		width: 100%;
		height: auto;
	}
	#kv h2{
		display: none;
	}
	.description{ margin: 2rem 1rem; text-align: center; }
	.description p:last-of-type{ margin-bottom: 0; }



	/* btn
	--------------------------------------------------------------- */

	.btn-entry{
		position: relative;
		margin: 25px 30px 0;
		height: 52px;
		overflow: hidden;
	}
	.btn-entry a{
		position: relative;
		display: block;
		width: 100%;
		height: 52px;
		border-radius: 10px;
		background: #fff;
	}
	.btn-entry a i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 48px;
		text-align: center;
		line-height: 48px;
		font-size: 1.5rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #ba241f;
	}
	.btn-entry a i:before{
		position: absolute;
		content: "";
		margin:auto;
		top: 0;
		right: 13px;
		bottom: 0;
		display: block;
		width: 8px;
		height: 12px;
		background: url(../img/arrow_entry.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 40;
	}
	.btn-entry a i:after{
		position: absolute;
		content: "";
		top: 0;
		left: 1px;
		display: block;
		width: calc(100% - 2px);
		height: 42px;
		background: #e12f2a;
		border-radius: 32px;
	}
	.btn-entry a i em{
		position: relative;
		z-index: 20;
	}
	.btn-entry span{
		position: relative;
		display: block;
		width: 100%;
		height: 52px;
		border-radius: 32px;
		background: #fff;
	}
	.btn-entry span i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 48px;
		text-align: center;
		line-height: 48px;
		font-size: 1.5rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #c8c8c8;
	}
	.btn-entry span i em{
		position: relative;
		z-index: 20;
	}

	.btn-sms-stop {
		position: relative;
		margin: 25px 30px 0;
		height: 52px;
		overflow: hidden;
	}
	.btn-sms-stop a{
		position: relative;
		display: block;
		width: 100%;
		height: 52px;
		border-radius: 32px;
		background: #fff;
	}
	.btn-sms-stop a i{
		position: relative;
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		display: block;
		height: 48px;
		text-align: center;
		line-height: 48px;
		font-size: 1.5rem;
		font-weight: bold;
		color: #fff;
		border-radius: 32px;
		overflow: hidden;
		background: #002355;
	}
	.btn-sms-stop a i:before{
		position: absolute;
		content: "";
		margin:auto;
		top: 0;
		right: 13px;
		bottom: 0;
		display: block;
		width: 8px;
		height: 12px;
		background: url(../img/arrow_entry.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 40;
	}
	.btn-sms-stop a i:after{
		position: absolute;
		content: "";
		top: 0;
		left: 1px;
		display: block;
		width: calc(100% - 2px);
		height: 42px;
		background: #003f99;
		border-radius: 32px;
	}
	.btn-sms-stop a i em{
		position: relative;
		z-index: 20;
	}

	/* schedule
	--------------------------------------------------------------- */


	#schedule .sec-col figure{
		padding: 0 25px;
	}
	#schedule .sec-col figure img{
		width: 100%;
		height: auto;
	}



}







