@charset "utf-8";

/* CSS Document */
main{
	padding-bottom:0 !important;
}
/*-------------------------
- mv
-
-------------------------*/

/*----------------------------------------
	- base
-----------------------------------------*/
:root {
	--main_color: #BB2929;
}

/*=======================================
　共通
=======================================*/
.txt01 {
	line-height: 2;
	margin-bottom: 40px;
	text-align: justify;
}


.btn01 a {
	min-width: calc(311px - 6em - 4.5em);
}


.copy_red {
	position: absolute;
	top: 0;
	left: 0;
}
.copy_red span {
	font-size: calc(45/1600*100vw);
	font-weight: 700;
	color: var(--main_color);
	letter-spacing: 0.1em;
	border: 1px solid #707070;
	padding: 12px 0.3em 16px 0.4em;
	display: inline-block;
	background: #fff;
}
.copy_red span:not(:last-child) {
	margin-bottom: 10px;
}


.mita_subttl{
max-width: 1120px;
padding: 4%;
background: linear-gradient(#bb2929 0%, #800 100%);
border: 1px solid #707070;
display: grid;
place-content: center;
place-items: center;
}

.mita_subttl h3{
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	text-align: center;
}

.mita_subttl h3 .f45{
	font-size: 45px;
}


@media only screen and (min-width: 1600px){
.copy_red span {
	font-size: 45px;
}
}
@media only screen and (max-width: 767px){
.copy_red {
	position: relative;
	margin-bottom: 30px;
}
.copy_red span {
	/* font-size: 22.5px; */
	font-size: calc(36.3/750*100vw);
	padding: 6px 0.3em 8px 0.4em;
}
.copy_red span:not(:last-child) {
	margin-bottom: 10px;
}
}



.copy_big {
	font-size: calc(60/1600*100vw);
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
	line-height: 1.3333;
}
@media only screen and (min-width: 1600px){
.copy_big {
	font-size: 60px;
}
}
@media only screen and (max-width: 767px){
.copy_big {
	font-size: 20px;
	margin-bottom: 20px;
}
.mita_subttl{
padding: 2%;
}
.mita_subttl h3{
	font-size: 18px;
}
.mita_subttl h3 .f45{
	font-size: 22.5px;
}
}



.webp .bg_img {
    background: url("../images/bg01.webp") no-repeat center top;
    background-size: cover;
}
.no-webp .bg_img { 
    background: url(../images/bg01.jpg) no-repeat center top;
    background-size: cover;
}


/*=======================================
　mv_01
=======================================*/
.mv_01 {
    height: 57.69vw;
    position: relative;
}

.mv_01 h2{
	font-size: calc(44/1600*100vw);
	color: #fff;
	text-shadow: 5px 4px 4px #137366;
	position: absolute;
	top: 20%;
	left: 32%;
	text-align: center;
  display: inline-block;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mv_01 h2 span{
	font-size: calc(34/1600*100vw);
	background: #EF55BC;
	padding: 0.1% 1%;
	margin-right: 2%;
	border-radius: 10px;
	display: inline-block;
	text-shadow: initial;
}
.mv_01 h2 strong{
font-size: calc(179/1600*100vw);
	display: inline-block;
	line-height: 100%;
}

@media only screen and (max-width: 767px){
.mv_01 {
    height: auto;
}

.mv_01 h2{
	font-size: calc(42/750*100vw);
top: 16%;
left: 50%;
	width: 100%;

}
.mv_01 h2 span{
	font-size: calc(32/750*100vw);
	border-radius: 5px;

	text-shadow: initial;
}
.mv_01 h2 strong{
	font-size: calc(165/750*100vw);

}

}



/*=======================================
　sec_cm_box
=======================================*/
.sec_cm_box{
	margin-bottom: 100px;
}

.sec_cm_box .mita_subttl{
	margin-bottom: 66px;
}
.sec_cm_box .mita_subttl strong{
	font-size: 40px;
	color: #BB2929;
	background: #fff;
	padding: 1%;
	margin-right: 9px;
}
.sec_cm_box .mita_subttl .f50{
	font-size: 50px;
}

.sec_cm_box .cm_ttl_box{
display: flex;
justify-content: center;
}

.sec_cm_box .cm_ttl_box h4{
	font-size: 25px;
	color: #BB2929;
	font-weight: 500;
	display: inline-block;
	position: relative;
	padding: 0 10px;
	text-align: center;
}
.sec_cm_box .cm_ttl_box h4::before{
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 1px;
	height: 100%;
	background: #BB2929;
	border-radius: 3px;
	transform: rotate(-25deg);
}
.sec_cm_box .cm_ttl_box h4::after{
  position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 1px;
    height: 100%;
    background: #BB2929;
    border-radius: 3px;
    transform: rotate(25deg);
}
.sec_cm_box .cm_ttl{
	text-align: center;
	font-size: 46px;
	font-weight: bold;
	margin-bottom: 35px;
}

.sec_cm_box .maker_box{
	display: flex;
	align-items: center;
	gap: 68.3px;
	margin-bottom: 34px;
}
.sec_cm_box p{
line-height: 2;
}


.sec_cm_box .maker_box .img_area{
width: 100%;
}
@media only screen and (max-width: 767px){
	.sec_cm_box{
		margin-bottom: 50px;
	}
	.sec_cm_box .mita_subttl{
		margin-bottom: 47px;
	}
	.sec_cm_box .mita_subttl strong{
		font-size: 20px;
		padding: 0 1%;
		margin-right: 4px;
	}
	.sec_cm_box .mita_subttl .f50{
		font-size: 25px;
	}
	.sec_cm_box .cm_ttl_box h4{
		font-size: 15px;
	}
	.sec_cm_box .cm_ttl{

		font-size: 23px;
		margin-bottom: 17px;
	}
	.sec_cm_box .maker_box{
flex-direction: column;
		gap: initial;
	}
}





/*=======================================
　sec_movie
=======================================*/
.sec_movie {
	margin-bottom: 66px;
}
.sec_movie .inner .item{
	width: 100%;
}
.sec_movie .item iframe {
width: 100%;
	height: 33vw;
	max-height: 497.33px; 
}
@media only screen and (min-width: 1600px){
.sec_movie .inner .item p {
	font-size: 28px;
}
}
@media only screen and (max-width: 767px){
.sec_movie {
	margin-bottom: 33px;
}
.sec_movie .inner .item p {
	font-size: 15px;
	margin-bottom: 10px;
}
.sec_movie .item iframe {
	height: 51.4vw;
	max-height: inherit;
}
}
@media only screen and (max-width: 640px){
.sec_movie .inner {
	display: block;
}
.sec_movie .inner .item {
	width: 100%;
}
.sec_movie .inner .item:not(:last-child) {
	margin-bottom: 30px;
}
}

/*=======================================
　sec_plan_box
=======================================*/
.sec_plan_box{
	margin-bottom: 125px;
}
.sec_plan_box.bg_img {
	background: url("../images/bg01.webp") no-repeat center top;
	background-size: cover;
	padding: 137.4px 0;
}


.sec_plan_box .inner .mita_subttl {
margin-bottom: 57px;
}

.sec_plan_box .inner .catch {
	text-align: center;
	margin-bottom: 66px;
	}
	.sec_plan_box .sec_plan_box_container{
		max-width: 1440px;
		width: 90%;
		margin: 0 auto;
		margin-bottom: 73px;
	}

	.sec_plan_box .plan_voice_box{
		display: flex;
justify-content: space-between;
gap: 47.6px;
	}
	

.sec_plan_box .copy_area .copy_big {
	width: 69.84%;
}
.sec_plan_box .bg_box .notes.txt_R {
	font-size: calc(17/1600*100vw);
	position: absolute;
	bottom: 10.4px;
	right: 19px;
}
@media only screen and (min-width: 1600px){

.sec_plan_box .bg_box .notes.txt_R {
	font-size: 17px;
}
}
@media only screen and (max-width: 767px){
	.sec_plan_box.bg_img {
		padding: 68px 0;
	}
	.sec_plan_box{
		margin-bottom: 62px;
	}
	.sec_plan_box .inner .mita_subttl {
		margin-bottom: 47px;
		}
		.sec_plan_box .inner .catch {
			text-align: left;
			margin-bottom: 33px;
			}

.sec_plan_box .bg_box .notes.txt_R {
	font-size: 12px;
	position: relative;
	bottom: auto;
	right: auto;
}
.sec_plan_box .sec_plan_box_container{
	margin-bottom: 36.5px;
}
.sec_plan_box .plan_voice_box{
flex-direction: column;
gap: 30px;
}

}
@media only screen and (max-width: 400px){
.sec_plan_box .copy_area {
	align-items: center;
}
.sec_plan_box .copy_area .copy_big {
	margin-bottom: 0;
	font-size: 18px;
}
.sec_plan_box .copy_area .copy_big small {
	font-size: 14px;
}
}



/*============================
point_wrap
============================*/
#point_wrap .mita_subttl{
	margin-bottom: 140px;
}
#point_wrap .mita_subttl h3 .f60 {
	font-size: 60px;
}
#point_wrap .mita_subttl h3 strong {
	font-size: 74px;
}
#point_wrap .point_box_inner{
	max-width: 1400px;
	width: 90%;
	margin: 0 auto ;
}
#point_wrap .point_container{
	display: flex;
	flex-wrap: wrap;
align-items: flex-start;
	gap: 70px;
margin-bottom: 181px;
}
#point_wrap .point_container .point_box{
	position: relative;
	width: calc( ( 100% - 140px ) / 3 );
}


#point_wrap .point_container .point_box h4{
	font-size: 27px;
	font-weight: bold;
	margin-bottom: 31px;
}
#point_wrap .point_container .point_box .img_box{
	margin-bottom: 30px;
}

#point_wrap .point_container .point_box h4 span{
	font-size: 38px;
	color: #C11920;
}

#point_wrap .point_container .point_box .str_box .icon_pt{
	position: absolute;
	top: -5%;
	}


	#point_wrap .point_container .point_box .str_box ul {
		margin-bottom: 43px;
	} 


	#point_wrap .point_container .point_box .str_box ul li {
	line-height: 1.7778;
	padding-left: 20px;
	position: relative;
	font-weight: 500;
	padding-bottom: 10px;
}

#point_wrap .point_container .point_box .str_box ul li::before {
	content: '';
	position: absolute;
	top: 8px;
	left: 0;
	width: 14px;
	height: 14px;
	background-color: var(--main_color);
	border-radius: 50%;
}

#point_wrap .point_container .point_box .str_box .btn01{
	width: 311px;
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	height: auto;
}
#point_wrap .point_container .point_box .str_box .btn01 a{
	display: block;
	width: auto;
	padding: 17px 25px;
	font-size: 18px;
	min-width: auto;
	text-align: center;
}
#point_wrap .point_container .point_box .str_box .btn01 a::after {
	width: 28px;
	height: 28px;
	right: 13px;
}

@media screen and (max-width: 1300px) {
	#point_wrap .point_container .point_box .str_box .btn01{
		width: 21vw;
	}
	#point_wrap .point_container .point_box .str_box .btn01 a{
		padding: 13px 20px;
		font-size: 16px;
	}
}

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

	#point_wrap .point_container .point_box .str_box .btn01 a{

		font-size: calc((18 / 1000) * 100vw);
}}


@media only screen and (max-width: 767px){
	#point_wrap .mita_subttl{
		margin-bottom: 70px;
	}
	#point_wrap .mita_subttl h3 .f60 {
		font-size: 30px;
	}
	#point_wrap .mita_subttl h3 strong {
		font-size: 37px;
	}

	#point_wrap .point_container{
	flex-direction: column;
	margin-bottom: 90px;
	gap: 130px;
	}
	#point_wrap .point_container .point_box h4{
		font-size: 20px;

	}

	
	#point_wrap .point_container .point_box h4 span{
		font-size: 25px;

	}
	#point_wrap .point_container .point_box{
		width: 100%;
			}

			#point_wrap .point_container .point_box .str_box .btn01{
				bottom: -30px;
				width: 80%;
			}
			#point_wrap .point_container .point_box .str_box .btn01 a{
				padding: 15px 30px;
				font-size: 14px;
		}}





/*=======================================
　sec_point
=======================================*/
.sec_point {
	margin-bottom: 196px;
}
.sec_point .balloon {
	margin-bottom: 112px;
}
.sec_point .item {
	position: relative;
	align-items: flex-end;
	/* margin-bottom: 70px; */
	justify-content: space-between;
}
.sec_point .item_wrap:not(:last-child) {
	margin-bottom: 120px;
}
.sec_point .item .txt_area {
	/* padding-top: 500px; */
	position: relative;
}
.sec_point .item .txt_area .copy_red {
	margin-bottom: 85px;
	position: absolute;
	top: 0;
	left: 0;
}
.sec_point .item .txt_area .txt01 {
	/* width: 79.6%; */
	width: 84%;
	max-width: 480px;
	/* margin-bottom: 0; */
}
.sec_point .item_wrap:nth-child(1) .txt_area .txt01 {
	margin-bottom: 45px;
}
.sec_point .item_wrap:nth-child(2) .txt_area .txt01 {
	margin-bottom: 53px;
}
.sec_point .item .img_area {
	margin-top: 50px;
	width: 45.44%;
}
@media only screen and (max-width: 1000px){
.sec_point .item .txt_area .txt01 {
	margin-top: 20vw;
}
}
@media only screen and (max-width: 767px){
.sec_point {
	margin-bottom: 98px;
}
.sec_point .balloon {
	margin-bottom: 30px;
}
.sec_point .item {
	margin-bottom: 35px;
}
.sec_point .item_wrap:not(:last-child) {
	margin-bottom: 120px;
}
.sec_point .item .txt_area {margin-bottom: 30px;}
.sec_point .item .txt_area .copy_red {
	margin-bottom: 85px;
	position: absolute;
	top: 0;
	left: 0;
}
.sec_point .item .txt_area .txt01 {
	width: 100%;
	margin-top: 0;
}
.sec_point .item_wrap:nth-child(1) .txt_area .txt01 {
	margin-bottom: 25px;
}
.sec_point .item .img_area {
	margin-top: 0;
}
.sec_point .item .img_area {
	width: 100%;
}
}




/*=======================================
　sec_guarantee
=======================================*/
.sec_guarantee {
	margin-bottom: 132px;
}
.sec_guarantee .mita_subttl {
	margin-bottom: 100px;
}
.sec_guarantee .mita_subttl h3 {
font-size: 49px;
}
.sec_guarantee .mita_subttl .f65 {
	font-size: 65px;
	}
	.sec_guarantee .mita_subttl .f57 {
		font-size: 57px;
		}

.sec_guarantee .inner {
	position: relative;
}
.sec_guarantee .mita_subttl{
	margin-bottom:180px;
}
.sec_guarantee .inner .copy_red {  
	right: 5.62%;
  left: auto;
  text-align: right;
  top: -7em;
}
@media only screen and (max-width: 767px){
.sec_guarantee .inner .copy_red {  
  top: 0;
}
}
.sec_guarantee .inner .flex_area {
	justify-content: space-between;
	margin-bottom: 127px;
}
.sec_guarantee .inner .left {
	margin-top: 43.6px;
	width: 45.44%;
}
.sec_guarantee .inner .left .box_r {
	font-size: calc(25/1600*100vw);
	line-height: 1.28;
	color: var(--main_color);
	border: 2px solid var(--main_color);
	padding: 15px 2.5%;
}
.sec_guarantee .inner .left .img {
	margin-bottom: 43px;
}
.sec_guarantee .inner .right {
	width: 39.7%;
	margin: 104px 5.62% 0 0;
}
.sec_guarantee .inner .right .txt01 {
	margin-bottom: 0px;
	font-size: 18px;
}
.sec_guarantee .btn01 {
	margin: 0 auto;
}
@media only screen and (min-width: 1600px){
.sec_guarantee .inner .left .box_r {
	font-size: 25px;
}
}
@media only screen and (max-width: 767px){
.sec_guarantee {
	margin-bottom: 66px;
}
.sec_guarantee .mita_subttl {
	margin-bottom: 47px;
}
.sec_guarantee .mita_subttl h3 {
	font-size: 24.5px;
	}
	.sec_guarantee .mita_subttl .f65 {
		font-size: 32.5px;
		}
		.sec_guarantee .mita_subttl .f57 {
			font-size: 28.5px;
			}
.sec_guarantee .inner {
	position: relative;
}
.sec_guarantee .inner .copy_red {
	right: 0;
	left: auto;
}
.sec_guarantee .inner .flex_area {
	margin-bottom: 63.5px;
}
.sec_guarantee .inner .left {
	margin: 0 auto 50px;
	width: 100%;
}
.sec_guarantee .inner .left .box_r {
	font-size: 16px;
	padding: 7.5px 2.5%;
}
.sec_guarantee .inner .left .img {
	margin-bottom: 21.5px;

}
.sec_guarantee .inner .right {
	width: 100%;
	margin: 0;
}
.sec_guarantee .inner .right .txt01 {
	margin-bottom: 25px;
	font-size: 13px;
}
.sec_guarantee .inner .right .img {
	text-align: center;
}
.sec_guarantee .btn01 {
	margin: 0 auto;
}
}


/*=======================================
sec_menu
=======================================*/
.sec_menu .mita_subttl{
	margin-bottom:95px;
}
.sec_menu .mita_subttl h3{
font-size: 45px;}

.sec_menu .menu_container {
	display: flex;
	flex-flow: wrap;
gap: 82px;
}

.sec_menu .menu_container .menu_bigbox{
	position: relative;
	width: calc( ( 100% - 82px ) / 2 );
}


.sec_menu .menu_box{
	border: 1px solid #BB2929;
	border-radius: 10px;
	margin-bottom: 160px;
}
.sec_menu .menu_box .menu_minibox{
	position: relative;
}


.sec_menu .menu_box .sec_menu_ttl{
	color: #fff;
	font-size: calc(40/1600*100vw);
	text-align: center;
	font-weight: bold;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.sec_menu .menu_container .menu_box a img{
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.sec_menu .menu_box .txt_box{
	padding: 40px;
	line-height: 2;
}

.sec_menu .menu_container .btn01{
position: absolute;
top: 74%;
left: 50%;
transform: translateX(-50%);
}
@media only screen and (min-width: 1600px){
	.sec_menu .menu_box .sec_menu_ttl {
		font-size: 40px;
	}
}

@media screen and (max-width: 767px) {
	.sec_menu{
		margin-bottom: 60px;
	}
	.sec_menu .mita_subttl{
		margin-bottom:47px;
	}
	.sec_menu .mita_subttl h3{
		font-size: 22.5px;
	}
	.sec_menu .menu_container {
flex-direction: column;
gap: initial;
	}
	.sec_menu .menu_container .menu_bigbox{
		width: 100%;
	}
	.sec_menu .menu_box{
		margin-bottom: 80px;
	
	}
	.sec_menu .menu_container .btn01{
		top: 81%;
		}
		.sec_menu .menu_box .txt_box{
			padding: 20px 40px 40px;
			line-height: 2;
		}
		.sec_menu .menu_box .sec_menu_ttl {
			font-size: 20px;
		}
	}


/*=======================================
　sec_additional_parts
=======================================*/
.sec_additional_parts {
	margin-bottom: 175.9px;
}
.sec_additional_parts .mita_subttl{
	margin-bottom:95px;
}
.sec_additional_parts .mita_subttl h3{
font-size: 45px;
}

.sec_additional_parts .copy {
	font-size: 40px;
	line-height: 1.75;
	text-align: center;
	margin-bottom: 60.8px;
}
.sec_additional_parts .txt01 {
	margin-bottom: 95px;
}
.sec_additional_parts .img {
	margin-bottom: 7.2px;
}
.sec_additional_parts .notes {
	margin-bottom: 93.8px;
	font-size: 12px;
	letter-spacing: 0.1em;
	line-height: 1.583;
}
.sec_additional_parts .btn01 {
	margin: 0 auto;
}
@media only screen and (max-width: 767px){
.sec_additional_parts {
	margin-bottom: 90px;
}
.sec_additional_parts .mita_subttl{
	margin-bottom:47px;
}
.sec_additional_parts .mita_subttl h3{
	font-size: 22.5px;
	}
.sec_additional_parts .copy {
	font-size: 21.5px;
	margin-bottom: 30px;
}
.sec_additional_parts .txt01 {
	margin-bottom: 47.5px;
}
.sec_additional_parts .notes {
	margin-bottom: 45px;
	font-size: 11px;
}
}


/*============================
 sec_works
============================*/
.sec_works .mita_subttl{
	margin-bottom: 88px;
}
.sec_works .mita_subttl h3{
	font-size: 41px;
}

.sec_works{
	padding-bottom:120px;
}
.sec_works .btn01{
	margin:0 auto;
}

.sec_works .flex_area {
	gap: 3.21%;
	flex-flow: wrap;
}
.sec_works ul li {
	width: 31.16%;
	margin-bottom: 63px;
}
.sec_works ul li .img {
	margin-bottom: 20px;
	width: 100%;
	max-height: 241px;
	height: 69.25%;
	overflow: hidden;
	background: #7A7A7A;
	text-align: center;
}
.sec_works ul li .img a img {
	width: auto;
	height: 100%;
	object-fit: cover;
}
.sec_works ul li .icon {
	font-size: 14px;
	border: 2px solid #C9C9C9;
	border-radius: 9px;
	padding: 7px 2.4em;
	margin-bottom: 25px;
	display: inline-block;
	font-weight: 500;
}
.sec_works ul li .name {
	font-size: 20px;
	font-weight: 700;
	padding-right: 1em;
}
.sec_works ul li .date {
	font-size: 18px;
	font-family: 'Noto Sans', sans-serif;
	padding-top: 0;
}
.sec_works ul li a {
	position: relative;
	display: block;
}
.sec_works ul li > a::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 10px;
    -webkit-transform : translateY(-50%);
	transform : translateY(-50%);
    right: 0;
    width: 9px;
    height: 9px;
    border-top: 2px solid var(--main_color);
    border-right: 2px solid var(--main_color);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.sec_works ul li .img a {
	width: auto;
	height: 100%;
	object-fit: cover;
}

@media only screen and (max-width: 767px){
.sec_works{
	padding-bottom:60px;
}	
.sec_works .mita_subttl{
	margin-bottom: 47px;
}
.sec_works .mita_subttl h3{
	font-size: 20.5px;
}

.sec_works .flex_area {
	display: flex;
	gap: 5%;
}
.sec_works ul li {
	width: 47.5%;
	margin-bottom: 31.5px;
}
.sec_works ul li .img {
	margin-bottom: 10px;
	/* height: 71%; */
	height: 30vw;
	max-height: inherit;
}
.sec_works ul li .icon {
	font-size: 12px;
	border-radius: 4.5px;
	padding: 4px 1.5em;
	margin-bottom: 12.5px;
}
.sec_works ul li .name {
	font-size: 15px;
}
.sec_works ul li .date {
	font-size: 11px;
}
.sec_works ul li a {
	position: relative;
	display: block;
}
.sec_works ul li > a::after {
    width: 6px;
    height: 6px;
    right: 2px;
	}
}


/*============================
sec_voice
============================*/
.sec_voice .mita_subttl{
	margin-bottom: 70px;
}
.sec_voice .mita_subttl h3{
	font-size: 41px;
}


.sec_voice .voice_box{
	display: flex;
	gap: 37px;
	background:#F5F5F5 ;
	padding: 50px 60px;
	margin-bottom: 70px;
}

.sec_voice .voice_box:nth-of-type(3){
	margin-bottom: 180px;
}

.sec_voice .voice_box .right{
	width: 90.73vw;
}

.sec_voice .voice_box .message{
	color: #BB2929;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	border-bottom: 1px solid #BB2929;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.sec_voice .voice_box .message_txt{
	line-height: 2;
}
.sec_voice .voice_box .neme{
	font-size: 20px;
}




.sec_voice .voice_box2{
	border: 1px solid #BB2929;
	border-radius: 10px;
	padding: 40px 50px;
	margin-bottom: 104px;
}


.sec_voice .voice_box2 .voice_box_ttl{
	border-bottom: 1px solid #BB2929;
	padding-bottom: 10px;
	margin-bottom: 20px;
		display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}


.sec_voice .voice_box2 .voice_box_ttl h3{
	font-size: 32px;
	font-weight: bold;
}
.sec_voice .voice_box2 .voice_box_ttl h3 span{
	font-size: 45px;
display: inline-block;
color: #BB2929;
}

.sec_voice .voice_box2 p{
	font-size: 18px;
line-height: 1.777;
}

.sec_voice .voice_box2 .voice_box2_item{
	display: flex;
	gap: 24px;
	margin-top: 36px;
}

.sec_voice .voice_box2 .voice_box2_item .left{
	width: 82vw;
}

@media only screen and (max-width: 767px){
.sec_voice .mita_subttl{
	margin-bottom: 47px;
	}	
	.sec_voice .mita_subttl h3{
		font-size: 20.5px;
	}
	.sec_voice .voice_box:nth-of-type(3){
		margin-bottom: 90px;
	}
	.sec_voice .voice_box{
flex-direction: column;
		gap: 18px;
		padding: 20px;
		margin-bottom: 35px;
	}
	.sec_voice .voice_box .left{
		width: 70%;
		margin: 0 auto;
	}
	.sec_voice .voice_box .right{
		width: 100%;
	}
	.sec_voice .voice_box .message{
    font-size: 18px;
	}
	.sec_voice .voice_box .neme{
		font-size: 16px;
	}
	.sec_voice .voice_box2{
		padding: 20px;
		margin-bottom: 52px;
	}
	.sec_voice .voice_box2 p{
		font-size: 13px;
	}
	.sec_voice .voice_box2 .voice_box2_item{
		flex-direction: column;;
		margin-top: 18px;
	}
	.sec_voice .voice_box2 .voice_box_ttl{
align-items: end;
	}
	.sec_voice .voice_box2 .voice_box_ttl .img{
		width: 26%;
	}
	.sec_voice .voice_box2 .voice_box_ttl h3{
		font-size: 20px;
	}
	.sec_voice .voice_box2 .voice_box_ttl h3 span{
		font-size: 23px;

	}


}




/*=======================================
flow_sec
=======================================*/

.flow_sec .mita_subttl{
	margin-bottom: 86px;
}
.flow_sec .mita_subttl h3{
	font-size: 41px;
}

/* 2カラム */
.clms {
	display: flex;
	gap: 0 82px;
}
.clms .left,
.clms .right {
	width: 100%;
}
.clms .left.txt_area h3 {
	font-size: 45px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.5555;
	margin-bottom: 27px;
}
@media screen and (max-width: 1300px) {
	.clms {
		gap: 0 6.3vw;
	}
	.clms .left.txt_area h3 {
		font-size: calc((45 / 1300) * 100vw);
	}
}

@media screen and (max-width: 767px) {
	.flow_sec .mita_subttl h3{
		font-size:20.5px;
	}
	.clms {
		flex-direction: column-reverse;
		gap: 20px;
	}
	.clms .left.txt_area h3 {
		font-size: 18px;
		margin-bottom: 12px;
	}
	.flow_sec .mita_subttl{
		margin-bottom: 47px;
	}
}


/* センター矢印 */

.center_arrow_box {
	padding: 75px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.center_arrow_box.color_arrow{
	padding: 0 0 75px 0;
}
.center_arrow_box.pb_set01 {
	justify-content: flex-start;
	padding: 75px 0 20px 200px;
}
.center_arrow_box.pb_set02 {
	padding-bottom: 35px;
}
.center_arrow_box .img {
	width: 47px;
}
@media screen and (max-width: 1300px) {
	.center_arrow_box {
		padding: 3.615vw 0;
	}
	.center_arrow_box.pb_set01 {
		padding: 3.615vw 0 20px 15.3vw;
	}
	.center_arrow_box .img {
		width: 4.15vw;
	}
}

@media screen and (max-width: 767px) {
	.center_arrow_box,
	.center_arrow_box.pb_set01 {
		justify-content: center;
		padding: 26px 0;
	}
	.center_arrow_box.color_arrow{
		padding: 0 0 26px 0;
	}
	.center_arrow_box.pb_set02 {
		padding-bottom: 24px
	}
	.center_arrow_box .img {
		width: 30px;
	}
}



/*=======================================
	wide_group01
=======================================*/
.wide_group01 .pop_outline {
	padding-top: 85px;
	background: url(../../../images/about/flow/img_pop.png) no-repeat center;
	background-size: cover;
	width: 100%;
	height: 489px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	margin-bottom: 125px;
}
.wide_group01 .pop_outline::before {
	content: '';
	position: absolute;
	top: 10px;
	left: 11px;
	background: url(../../../images/about/flow/img_pop_bg.png) no-repeat center;
	background-size: cover;
	width: 100%;
	height: 489px;
	z-index: -1;
}
.wide_group01 .pop_outline h2 {
	font-size: 45px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.5555;
	margin-bottom: 48px;
}
.wide_group01 .pop_outline p {
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0.1em;
}
.wide_group01 .clms {
	margin-bottom: 70px;
}
.wide_group01 p {
	font-size: 18px;
line-height: 1.777;
}
@media screen and (max-width: 1300px) {
	.wide_group01 .pop_outline {
		padding-top: 6.53vw;
		height: 39.2vw;
		margin-bottom: 9.615vw;
	}
	.wide_group01 .pop_outline::before {
		height: 39.2vw;
	}
	.wide_group01 .pop_outline h2 {
		font-size: calc((45 / 1300) * 100vw);
		margin-bottom: 3.69vw;
	}
}

@media screen and (max-width: 767px) {
	.wide_group01 .pop_outline {
		padding: 40px 12px 0;
		background: url(../../../images/about/flow/img_pop_sp.png) no-repeat center;
		background-size: cover;
		width: 100%;
		height: 124.78vw;
		margin-bottom: 40px;
	}
	.wide_group01 .pop_outline.pop_outline::before {
		display: none;
	}
	.wide_group01 .pop_outline h2 {
		font-size: 22px;
		margin-bottom: 20px;
	}
	.wide_group01 .clms {
		margin-bottom: 30px;
	}
	.wide_group01 p {
	font-size: 13px;
	}
}

	






/*=======================================
	wide_group02
=======================================*/
.wide_group02 .flow_area {
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin-bottom: 95px;
}
.wide_group02 .flow_area .clms {
	flex-direction: row-reverse;
}
.wide_group02 .flow_area .clms .left.txt_area .arrow_img {
	margin-top: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.wide_group02 .flow_area .clms .left.txt_area .arrow_img .img {
	width: 54px;
}

.wide_group02 .variety_box {
	padding: 60px 55px;
	border: 2px solid var(--main_color);
	border-radius: 20px;
	position: relative;
	z-index: -1;
}
.wide_group02 .variety_box::before {
	content: '';
	position: absolute;
	top: 50%;
	left: -2px;
	transform: translateY(-50%);
	width: calc(100% + 4px);
	height: 180px;
	background-color: #fff;
	z-index: -1;
}
.wide_group02 .variety_box .set {
	z-index: 1;
	display: flex;
	gap: 55px;
}
.wide_group02 .variety_box .set .left {
	width: 49.1%;
}
.wide_group02 .variety_box .set .right {
	width: calc(100% - 55px - 49.1%);
}
.wide_group02 .variety_box .set .right .wide {
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.5666;
	margin-bottom: 30px;
}

.wide_group02 p{
	font-size: 18px;
	margin-bottom: 38px;
	line-height: 1.777;
}
.wide_group02 .color_txt{
	font-size: 18px;
	line-height: 1.777;
	margin: 0;
}
.wide_group02 .notes{
	font-size: 14px;
}

@media screen and (max-width: 1300px) {
	.wide_group02 .flow_area {
		margin-bottom: 7.3vw;
	}
	.wide_group02 .flow_area .clms .left.txt_area .arrow_img {
		margin-top: 3.846vw;
	}
	.wide_group02 .flow_area .clms .left.txt_area .arrow_img .img {
		width: 4.15vw;
	}
	.wide_group02 .variety_box {
		padding: 4.615vw 4.23vw;
	}
	.wide_group02 .variety_box .set {
		gap: 4.23vw;
	}
	.wide_group02 .variety_box .set .right {
		width: calc(100% - 4.23vw - 49.1%);
	}
	.wide_group02 .variety_box .set .right .wide {
		font-size: calc((30 / 1300) * 100vw);
	}
}

@media screen and (max-width: 767px) {
	.wide_group02 .flow_area {
		margin-bottom: 40px;
	}
	.wide_group02 .flow_area .clms {
		flex-direction: column-reverse;
	}
	.wide_group02 .flow_area .clms .left.txt_area .arrow_img {
		margin-top: 25px;
	}
	.wide_group02 .flow_area .clms .left.txt_area .arrow_img .img {
		width: 30px;
	}
	.wide_group02 .variety_box {
		padding: 25px 30px;
		z-index: 1;
	}
	.wide_group02 .variety_box::before {
		display: none;
	}
	.wide_group02 .variety_box .set {
		flex-direction: column;
		gap: 20px;
	}
	.wide_group02 .variety_box .set .left,
	.wide_group02 .variety_box .set .right {
		width: 100%;
	}
	.wide_group02 .variety_box .set .right .wide {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.wide_group02 p{
		font-size: 13px;
		margin-bottom: 19px;
	}
	.wide_group02 .color_txt{
		font-size: 13px;
	}
	.wide_group02 .notes{
		font-size: 11px;
	}
	
}


/*=======================================
	wide_group03
=======================================*/
.wide_group03 .clms {
	align-items: center;
	margin-bottom: 112px;
}
.wide_group03 .clms .right .img {
	position: relative;
	width: calc(100% - 25px);
	height: calc(100% - 28px);
}
.wide_group03 .clms .right .img::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #F6DDD8;
	top: 28px;
	left: 25px;
	z-index: -1;
}
.wide_group03 .link_list {
	display: flex;
	gap: 20px;
}
.wide_group03 .link_list li {
	width: 100%;
	height: 349px;
	position: relative;
	border-radius: 20px;
	border: 1px solid var(--main_color);
}
.wide_group03 .link_list ._01 {
	background: url(../images/link01.png) no-repeat center;
	background-size: cover;
}
.wide_group03 .link_list .btn01 {
	width: 198px;
	content: '';
	position: absolute;
	bottom: 32px;
	left: 50%;
	transform: translateX(-50%);
	height: auto;
}
.wide_group03 .link_list .btn01 a {
	display: block;
	width: auto;
	padding: 17px 25px;
	font-size: 11px;
	min-width: auto;
}
.wide_group03 .link_list .btn01 a::after {
	width: 28px;
	height: 28px;
	right: 13px;
}
.wide_group03 .link_list ._02 {
	background: url(../images/link02.png) no-repeat center;
	background-size: cover;
}
.wide_group03 .link_list ._03 {
	background: url(../images/link03.png) no-repeat center;
	background-size: cover;
}
.wide_group03 .link_list ._04 {
	background: url(../images/link04.png) no-repeat center;
	background-size: cover;
}
.wide_group03 p{
	font-size: 18px;
	line-height: 1.777;
}

@media screen and (max-width: 1300px) {
	.wide_group03 .clms {
		margin-bottom: 8.60vw;
	}
	.wide_group03 .link_list {
		gap: 1.53vw;
	}
	.wide_group03 .link_list li {
		height: 27.957vw;
	}
	.wide_group03 .link_list .btn01 {
		width: 18vw;
		bottom: 2.4vw;
	}
	.wide_group03 .link_list .btn01 a {
		padding: 13px 20px;
		font-size: 10px;
	}
}
@media screen and (max-width: 1000px) {
	.wide_group03 .link_list {
		flex-wrap: wrap;
	}
	.wide_group03 .link_list li {
		width: calc((100% - 1.53vw) / 2);
	}
	.wide_group03 .link_list li {
		height: 57.2vw;
	}
	.wide_group03 .link_list .btn01 {
		width: 30vw;
		bottom: 30px;
	}
	.wide_group03 .link_list .btn01 a {
		padding: 25px 32px;
		font-size: calc((18 / 1000) * 100vw);
	}
}

@media screen and (max-width: 767px) {
	.wide_group03 .clms {
		margin-bottom: 30px;
	}
	.wide_group03 .clms .right .img {
		width: calc(100% - 12px);
		height: calc(100% - 14px);
	}
	.wide_group03 .clms .right .img::before {
		top: 12px;
		left: 14px;
		z-index: -1;
	}
	.wide_group03 .link_list {
		flex-direction: column;
		align-items: center;
		width: 80%;
		margin: auto;
		gap: 20px 0;
	}
	.wide_group03 .link_list li {
		width: 100%;
		height: 90vw;
	}
	.wide_group03 .link_list .btn01 {
		bottom: 30px;
		width: 90%;
	}
	.wide_group03 .link_list .btn01 a {
		padding: 15px 30px;
		font-size: 14px;
	}
	.wide_group03 p{
		font-size: 13px;
	}
}

/*=======================================
	wide_group04
=======================================*/
.wide_group04 .clms {
	margin-bottom: 66px;
}
.wide_group04 .clms .left.txt_area {
	padding-top: 55px;
}

.wide_group04 .border_box {
	border: 3px solid var(--main_color);
}
.wide_group04 .border_box .set {
	display: flex;
	padding: 18px 57px 50px 57px;
}
.wide_group04 .border_box .set > .img {
	margin-right: 102px;
	width: 361px;
}
.wide_group04 .border_box .set .txt_area {
	width: calc(100% - 102px - 361px);
}
.wide_group04 .border_box .set .txt_area .wide {
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 22px;
	padding-top: 18px;
}
.wide_group04 .border_box .set .txt_area .clm {
	display: flex;
	gap: 50px;
}
.wide_group04 .border_box .set .txt_area .clm p {
	width: calc(100% - 50px - 170.02px);
	font-size: 18px;
	line-height: 1.777;
}
.wide_group04 .border_box .set .txt_area .clm .img {
	width: 170.02px;
}
.wide_group04 p{
	font-size: 18px;
	line-height: 1.777;
}


@media screen and (max-width: 1300px) {
	.wide_group04 .clms {
		margin-bottom: 5vw;
	}
	.wide_group04 .clms .left.txt_area {
		padding-top: 4.23vw;
	}
	.wide_group04 .border_box .set > .img {
		margin-right: 7.84vw;
		width: 22.56vw;
	}
	.wide_group04 .border_box .set .txt_area {
		width: calc(100% - 22.56vw - 7.84vw);
	}
	.wide_group04 .border_box .set .txt_area .wide {
		font-size: calc((30 / 1300) * 100vw);
	}
	.wide_group04 .border_box .set .txt_area .clm {
		display: flex;
		gap: 3.84vw;
	}
	.wide_group04 .border_box .set .txt_area .clm p {
		width: calc(100% - 3.84vw - 9.7vw);
	}
	.wide_group04 .border_box .set .txt_area .clm .img {
		width: 9.7vw;
	}
	.wide_group04 .border_box .set {
		padding: 18px 6.15vw 3.84vw 4.38vw;
	}
}

@media screen and (max-width: 767px) {
	.wide_group04 .clms {
		margin-bottom: 40px;
	}
	.wide_group04 .clms .left.txt_area {
		padding-top: 0;
	}
	.wide_group04 .border_box .set {
		padding: 15px 27px 25px;
		flex-direction: column;
		gap: 20px;
		align-items: center;
	}
	.wide_group04 .border_box .set > .img {
		margin-right: 0;
		width: 80%;
	}
	.wide_group04 .border_box .set .txt_area {
		width: 100%;
	}
	.wide_group04 .border_box .set .txt_area .wide {
		font-size: 16px;
		padding-top: 0;
		margin-bottom: 12px;
	}
	.wide_group04 .border_box .set .txt_area .clm {
		display: flex;
		gap: 10px;
	}
	.wide_group04 .border_box .set .txt_area .clm p {
		width: calc(100% - 10px - 84px);
		font-size: 13px;
	}
	.wide_group04 .border_box .set .txt_area .clm .img {
		width: 84px;
	}
	.wide_group04 p{
		font-size: 13px;
	}
}

/*=======================================
	wide_group05
=======================================*/

.wide_group05 .clms {
	flex-direction: row-reverse;
	margin-bottom: 194px;
}
.wide_group05 .clms .left.txt_area {
	padding-top: 55px;
}
.wide_group05 p{
	font-size: 18px;
	line-height: 1.777;
}
@media screen and (max-width: 1300px) {
	.wide_group05 .clms .left.txt_area {
		padding-top: 4.23vw;
	}
}
@media screen and (max-width: 767px) {
	.wide_group05 .clms {
		flex-direction: column-reverse;
		gap: 20px;
		margin-bottom: 97px;
	}
	.wide_group05 p{
		font-size: 13px;
	}
}





/*=======================================
　swiper
=======================================*/
.swiper {
	margin-bottom: 104.6px;
	padding-bottom: 36px;
}
.swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    background: #C11920;
    margin: 0 13.5px!important;
}
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,.swiper-pagination-fraction {
    bottom: 0;
}
@media only screen and (max-width: 767px){
.swiper {
	margin-bottom: 50px;
	padding-bottom: 25px;
}
.swiper-pagination-bullet {
    width: 7.5px;
    height: 7.5px;
    margin: 0 7px!important;
}
}

.sec_bnr .inner{
max-width: 1120px;
width: 100%;
}

/*スライドの幅を固定*/
.swiper-slide {
	width: 917.08px;
	height: 100%;
	text-align: center;
}
@media only screen and (max-width: 767px){
	.swiper-slide {
		width: 80%;
	}
}