@charset "UTF-8";
@media screen and (max-width:768px) {
	body{overflow-x:hidden;font-size:4vw;}
	.imgr img{display:block;max-width:100%;height:auto;}
	.container{margin-right:auto;margin-left:auto;padding-left:4vw;padding-right:4vw;box-sizing:border-box;}
	.mar_au img{margin:0 auto;}
	.break_sp{display:block;}
	.none_sp{display:none;}
	.sp{display:block;}
	.font30{font-size:6.5vw;}
	.font24{font-size:4.5vw;}
	.w_sp80 img{max-width:80%}
	.w_sp50 img{max-width:50%}
	.mb30{margin-bottom:7%!important}
	#wrapper{max-width:768px;width:100%;}
	section .inner{padding:0 4vw;}
	img{width:100%;}
	p{margin:0 0 1vw 0;font-size:3.5vw;}
	.mb0_sp{margin-bottom:0!important;}
	.spmb30{margin-bottom:4vw!important;}
	.spmb22{margin-bottom:3vw;}
	.spmb5v{margin-bottom:5vw!important;}
	.spmb4v{margin-bottom:4vw;}

	/*-- header -----------------------------------
	------------------------------------------*/
	header {
		width: 100%;
		height: 80px;
		background-color: #fff;
		text-align: left;
	}

	header a {
		display: inline-block;
		height: 100%;
		width: 100%;
		padding: .5em;
		margin-left: 0;
	}

	header img {
		width: 75%;
	}

	/*-- mv -----------------------------------
	------------------------------------------*/
	.mv {
		background: #ecf1ef url(../img/sp_mv_bg.png) no-repeat center top;
		min-height: 104.8vw;
		background-size: contain;
	}

	.mv .inner{
		padding: 0;
		width: 100%;
	}

	.mv .img_mv {
		padding-top: 7.5vw;
		margin-bottom: 8.666666666666667vw;
		left: 0;
	}

	.mv .catch_copy {
		width: 92vw;
		margin: 0 auto 0;
		bottom: 0;
		min-height: unset;
		padding: 8vw 4vw 0 4vw;
		background: url(../img/sp_catch_copy_bg.png) no-repeat top right;
		background-size: cover;
		float: unset;
	}

	.mv .catch_copy .inner {
		padding: 0 0 10vw 0;
		margin: 0;
	}

	.mv .catch_copy h2 {
		margin-bottom: 4vw !important;
	}

	.mv .catch_copy .inner:before {
		width: 1.066666666666667vw;
		height: 4vw;
		bottom: 0;
	}

	.mv .catch_copy .inner:after {
		width: 1.066666666666667vw;
		height: 4vw;
		bottom: -4vw;
	}

	.mv .catch_copy .catch_copy_txt{
		font-size: 3.65vw;
		border: 0.65vw solid #fff;
		padding: 3vw 3vw;
		font-weight: 500;
	}

	.mv .catch_copy .catch_copy_txt02{
		font-size: 4.2vw;
		font-weight: 500;
		line-height: 1.5;
	}

	section.button_cta{
		padding-top: 14vw;
	}

	.button_cta .button_cta{
		padding: 0 4vw;
	}

	section.button_cta.cta_midle{
		padding-top: 0;
		padding-bottom: 12vw;
	}

	/*-- /mv ----------------------------------
	------------------------------------------*/

	/*-- sec01_new ----------------------------
	------------------------------------------*/
	.sec01_new{
		padding: 16vw 0 16vw 0;
	}
	.sec01_new h2{
		margin-bottom: 6vw !important;
	}
	.sec01_new .sec01_new_box{
		padding: 0 4vw;
	}
	.sec01_new_box dl{
		padding: 4vw;
	}
	.sec01_new_box dl:not(:last-child){
		margin-bottom: 5vw;
	}
	.sec01_new_box dl dt,
	.sec01_new_box dl dd{
		width: 100%;
	}
	.sec01_new_box dl dt{
		margin-bottom: 4vw;
	}
	.sec01_new_box dl dd p{
		font-size: 3.65vw;
		font-weight: 500;
		margin-bottom: 4vw;
	}

	/*-- /sec01_new ---------------------------
	------------------------------------------*/

	/*-- sec02_new ----------------------------
	------------------------------------------*/
	.sec02_new{
		padding: 14vw 0 12vw 0;
	}
	.sec02_new h2{
		margin-bottom: 7vw !important;
	}
	.sec02_new .sec02_new_box{
		width: 92vw;
		margin: 0 auto;
		padding: 8vw 4vw;
		background: url(../img/sp_sec02_new_box_bg.png) no-repeat center;
		background-size: cover;
	}
	.sec02_new_box dl dt h3{
		font-size: 4.2vw;
		height: 8vw;
		padding-left: 11vw;
	}
	.sec02_new_box dl dt h3 span{
		top: 0;
	}
	.sec02_new_box dl dt h3:before{
		width: 7vw;
		height: 7vw;
		top: 0.5vw;
		left: 0.5vw;
		background-size: contain;
	}
	.sec02_new_box dl dd p{
		font-size: 3.65vw;
		font-weight: 500;
	}
	.sec02_new_box dl dd{
		padding: 2vw 4vw 8vw 9vw;
	}
	
	/*-- /sec02_new ---------------------------
	------------------------------------------*/

	/*-- sec03_new ----------------------------
	------------------------------------------*/
	.sec03_new{
		margin-top: 12vw;
		padding: 14vw 0 14vw 0;
		background: url(../img/sp_sec02_new_bg.png) no-repeat center;
	}
	.sec03_new h2{
		margin-bottom: 7vw !important;
	}
	.sec03_new .sec03_new_box{
		padding: 0 4vw;
	}
	.sec03_new .sec03_new_box ul{
		flex-wrap: wrap;
	}
	.sec03_new .sec03_new_box ul li:not(:last-child){
		margin-bottom: 6vw;
	}

	/*-- /sec02_new ---------------------------
	------------------------------------------*/


	/*-- sec02 --------------------------------
	------------------------------------------*/
	.sec02 {
		padding: 14vw 0;
	}

	.sec02 h2 {
		margin-bottom: 5vw !important;
	}

	.sec02_wrap {
		background: url(../img/sp_sec02_bg.png) no-repeat center;
		padding: 0 4vw 6vw 4vw;
		margin-bottom: 6vw !important;
		background-size: cover;
	}

	.sec02_wrap .sec02_img {
		margin-bottom: 6vw !important;
	}

	.sec02 .btn_cta{
		padding-top: 8vw;
	}

	.font_m {
		font-size: 3vw;
	}

	.sec02_wrap .txt{
		font-size: 4vw;
	}

	/*-- /sec02 -------------------------------
	------------------------------------------*/

	/*-- sec06 --------------------------------
	------------------------------------------*/
	.sec06 {
		padding: 0 0 14vw 0;
		background: #fff url(../img/sp_sec06_bg.png) no-repeat center left;
		background-size: contain;
	}

	/*-- /sec06 -------------------------------
	------------------------------------------*/

	/*-- footer --------------------------------
	------------------------------------------*/
	.pp_box {
    text-align: center;
    margin: 0 auto;
    display: block;
	padding: 10px;
	padding-bottom: 3rem;
	}
	.pp {
    padding: 0;
    margin-bottom: 0;
	}
	.sec_footer {
		padding: 12vw 4vw 5vw 4vw;
	}

	.sec_footer .social_foo,
	.sec_footer .btn_cta.btn_contact,
	.sec_footer .flex_foo {
		margin-bottom: 8vw !important;
	}

	.sec_footer .btn_cta.btn_contact img {
		width: 60vw;
		height: auto;
	}

	.sec_footer .flex_foo li {
		line-height: 0;
	}

	.sec_footer .btn_cta,
	.sec_footer .flex_foo li:not(:last-child) {
		margin-bottom: 4vw !important;
	}

	.social_foo ul li {
		padding: 0 1.5vw;
	}

	.social_foo ul li img {
		max-width: 11vw;
	}

	.copyright p {
		font-size: 3vw;
		color: #53565a;
	}

	.policy {
		margin-bottom: 18vh;
	}

	.copyright {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #fff;
		position: relative;
		min-height: 60px;
	}

	.copyright img {
		width: 3em;
		position: absolute;
		right: 85%;
	}

	.fixed_bottom {
		padding: 4vw;
	}

	.pagetop {
		bottom: 24vw;
		right: 4vw;
	}

	.pagetop a {
		width: 10vw;
		height: 10vw;
	}

	/*-- /footer -------------------------------
	------------------------------------------*/
}

@media screen and (max-width: 470px) {
	header a {
		padding: 0em 1.3em;
	}

	.copyright p {
		font-size: 3vw;
		color: #53565a;
	}

	.policy {
		margin-bottom: 11.2vh;
	}

	.copyright {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #fff;
		position: relative;
	}

	.copyright img {
		width: 3em;
		position: absolute;
		right: 85%;
	}
}