@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;
	}

	.spmb30 {
		margin-bottom: 4vw !important;
	}

	.spmb22 {
		margin-bottom: 3vw;
	}

	.spmb5v {
		margin-bottom: 5vw !important;
	}

	.spmb4v {
		margin-bottom: 4vw;
	}
	.spmb0 {
		margin-bottom: 0!important;
	}

	/*-- 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(../images/sp_mv_bg.png) no-repeat center top;
		min-height: 169.8666666666667vw;
		background-size: contain;
	}

	.index2 .mv {
		background: #ecf1ef url(../images/sp_mv_bg.png) no-repeat center top;
		min-height: 169.8666666666667vw;
		background-size: contain;
	}

	.mv .img_mv {
		padding-top: 10.4vw;
		margin-bottom: 8.666666666666667vw;
	}

	.mv .catch_copy {
		width: 92vw;
		margin: 0 auto;
		bottom: 0;
		min-height: unset;
		padding: 8vw 4vw;
		background: url(../images/sp_catch_copy_bg.png) no-repeat top right;
		background-size: cover;
		float: unset;
	}

	.mv .catch_copy .inner {
		padding: 0 0;
	}

	.mv .catch_copy h2 {
		margin-bottom: 4vw !important;
	}

	.mv .catch_copy .inner:before {
		width: 1.066666666666667vw;
		height: 4vw;
		bottom: -8vw;
	}

	.mv .catch_copy .inner:after {
		width: 1.066666666666667vw;
		height: 4vw;
		bottom: -12vw;
	}

	/*-- /mv ----------------------------------
	------------------------------------------*/

	/*-- sec00 --------------------------------
	------------------------------------------*/
	.index2 .sec00 {
		padding: 13vw 0;
	}

	.index2 .sec00 .white_box {
		padding: 15px;
		background: url(../images/pc_sec01_bg.png) no-repeat center left/cover;
	}

	.index2 .sec00 .check {
		font-size: 5vw;
		margin-bottom: 4vw;
		height: auto;
		padding: 4px 5px 6px 10vw;
		line-height: 1.4;
	}

	.index2 .sec00 .check:before {
		background-size: contain;
		width: 7vw;
		height: 7vw;
		top: 0.7vw;
		left: 0.7vw;
	}
	
.sec00 .inner ul {
	display: -webkit-block;
	display: block;
	width: 100%;
	gap: 0px;
  }
  .sec00 .inner ul  li{
	flex:1
  }
  
  .sec00 .inner ul li h3{
	background-color: #237751;
	padding: 10px 0;
	margin-bottom: 10px;
  }
  .sec00 .inner ul li h3 .font_white{
	color: #fff;
	font-size:120%;
  }

	/*-- /sec00 -------------------------------
	------------------------------------------*/

	/*-- sec00 --------------------------------
	------------------------------------------*/
	.index2 .sec001 {
		padding: 13vw 0;
		background: url(../images/pc_sec001_bg.png) no-repeat center center/cover;
		color: #fff;
	}

	/*-- /sec00 -------------------------------
	------------------------------------------*/

	/*-- /sec00 -------------------------------
	------------------------------------------*/
	.sec002 {
	padding: 13vw 0;
  }
  
  /*-- sec002 --------------------------------
  ------------------------------------------*/



	/*-- sec01 --------------------------------
	------------------------------------------*/
	.sec01 {
		padding: 13vw 0;
	}

	.sec01 h2 {
		margin-bottom: 4vw !important;
	}

	.sec01 p {
		text-align: left;
	}

	.index2 .sec01 {
		padding: 13vw 0;
	}

	/*-- /sec01 -------------------------------
	------------------------------------------*/

	/*-- sec02 --------------------------------
	------------------------------------------*/
	.sec02 {
		padding: 13vw 0;
	}

	.sec02 h2 {
		margin-bottom: 5vw !important;
	}

	.sec02_wrap {
		background: url(../images/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;
	}

	.font_m {
		font-size: 3vw;
	}

	.index2 .sec02 {
		padding: 13vw 0 0;
	}

	/*-- /sec02 -------------------------------
	------------------------------------------*/

	/*-- sec03 --------------------------------
	------------------------------------------*/
	.sec03 {
		padding: 13vw 0;
	}

	.sec03 h2 {
		margin-bottom: 6vw !important;
	}

	.sec03 .d-flex {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-top: 4vw;
	}

	.sec03 .d-flex .item-flex {
		width: 100%;
		border-radius: 2vw;
	}

	.sec03 .d-flex .item-flex:not(:last-child) {
		margin-bottom: 4vw;
	}

	.sec03 .d-flex .item-flex .txt {
		padding: 5vw;
	}

	.sec03 .d-flex .item-flex .txt h3 {
		margin-bottom: 4vw !important;
	}

	/*-- /sec03 -------------------------------
	------------------------------------------*/

	/*-- sec04 --------------------------------
	------------------------------------------*/
	.sec04 {
		padding: 13vw 0;
	}

	.sec04 h2 {
		margin-bottom: 6vw !important;
	}

	.sec03_wrap {
		padding: 10vw 4vw 6vw 4vw;
	}

	.sec03_wrap h3 {
		font-size: 6vw;
		margin-bottom: 6vw !important;
	}

	.sec03_wrap p.center {
		text-align: left;
		margin-bottom: 4vw;
	}

	/*-- /sec04 -------------------------------
	------------------------------------------*/

	/*-- sec05 --------------------------------
	------------------------------------------*/
	.sec05 {
		padding: 0 0 0 0;
	}

	.sec05 .wrap_sec05_right .thumb {
		background: url(../images/sp_sec05_img01.png) no-repeat;
		background-size: contain;
		width: 100%;
		height: 60.8vw;
		right: -4vw;
		order: 1;
		margin-bottom: 8vw;
		margin-left: 0;
	}

	.sec05 .wrap_sec05_left .thumb {
		background: url(../images/sp_sec05_img02.png) no-repeat;
		background-size: contain;
		width: 100%;
		height: 60.8vw;
		right: -4vw;
		order: 1;
		margin-bottom: 8vw;
	}

	.sec05 .wrap_sec05_left,
	.sec05 .wrap_sec05_right {
		width: 100%;
		padding: 0;
		order: 2;
	}

	.sec05 .wrap_sec05_left .txt,
	.sec05 .wrap_sec05_right .txt {
		width: 100%;
		order: 2;
		padding-right: 0;
		padding: 0 8vw;
	}

	.sec05 .wrap_sec05_left .txt h2,
	.sec05 .wrap_sec05_right .txt h2 {
		margin-bottom: 7vw !important;
	}

	.sec05 .btn_cta {
		padding: 0 4vw;
	}

	.sec05 .check {
		font-size: 5vw;
		height: 8.5vw;
		padding: 0px 0 2px 10vw;
		/* margin-right: -8vw; */
		margin-bottom: 4vw;
	}

	.sec05 .check:before {
		background-size: contain;
		width: 7vw;
		height: 7vw;
		top: 0.7vw;
		left: 0.7vw;
	}

	.sec05 .wrap_sec05_right {
		margin-bottom: 10vw;
	}

	.sec05 .wrap_sec05_left.mb60 {
		margin-bottom: 8vw !important;
	}

	/*-- /sec05 -------------------------------
	------------------------------------------*/

	/*-- sec06 --------------------------------
	------------------------------------------*/
	.sec06 {
		padding: 12vw 0 14vw 0;
		background: url(../images/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: 19vh;
	}

	.copyright {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #fff;
		position: relative;
		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: 9vh;
	}

	.copyright {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #fff;
		position: relative;
	}

	.copyright img {
		width: 3em;
		position: absolute;
		right: 85%;
	}
}