@charset "utf-8";
/* CSS Document */

/*===================================
	共通パーツ
=====================================*/

.top_midashi{
	position: relative;
}

.top_midashi p.en_midashi{
	font-size: 7.2rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #e81c24;
	text-align: center;
	padding-bottom: 25px;
	position: relative;
}

.top_midashi p.en_midashi::before{
	content: '';
	display: inline-block;
	background: #08305a;
	width: 141px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.top_midashi h2.jp_midashi{
	/*display: flex;
	justify-content: center;
	align-items: center;*/
	font-size: 3.5rem;
	line-height: 1.35;
	color: #000;
	text-align: center;
	padding-top: 28px;
}

.top_midashi h2.jp_midashi span.m_small{
	font-size: 2.4rem;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.top_midashi h2.jp_midashi span.m_small span{
	letter-spacing: -0.05em;
}

h3.h3_midashi{
	font-size: 3.0rem;
	line-height: 1;
	color: #e81c24;
	text-align: center;
	padding-bottom: 21px;
	position: relative;
}

h3.h3_midashi::before{
	content: '';
	display: inline-block;
	background: #e81c24;
	width: 1.95rem;
	height: 3px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

/*===================================
	.main_wrap
=====================================*/

.main_wrap{
	width: 100%;
	position: relative;
}

.main-slider {
  position:relative;
	z-index: 1;
	/*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
	height: 60.81vw;/*900*/
	max-height: 900px;
}
/*　背景画像設定　*/
/*
.main-slider .slider-item01 {
	background: url("images/top/main_slide01.webp");
}

.main-slider .slider-item02 {
	background: url("images/top/main_slide02.webp");
}

.main-slider .slider-item03 {
	background: url("images/top/main_slide03.webp");
}
*/
.main-slider .slider-item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
	height: 60.81vw;/*900*/
	max-height: 900px;
    background-repeat: no-repeat !important;/*背景画像をリピートしない*/
    background-position: center !important;/*背景画像の位置を中央に*/
    background-size: cover !important;/*背景画像が.main-slider-item全体を覆い表示*/
}

.main-slider .slider-item a{
	display: block;
	width: 100%;
	height: 100%;
}

/*ドットナビゲーションの設定*/

.main-slider .slick-dots {
	display: flex;
	flex-flow: column;
	gap: 1.08vw 0;/*16*/
	position: absolute;
	top: 50%;
	right: -0.61vw;/*9*/
	transform: translateY(-50%);
}

.main-slider .slick-dots li {
	width: 1.62vw;/*24*/
	height: 3.92vw;/*58*/
	border: 0.20vw solid #fff;/*3*/
	background: #fff;
	box-sizing: border-box;
	cursor: pointer;
}

.main-slider .slick-dots button {
	display: none;
}

.main-slider .slick-dots .slick-active{
	background: #e81c24;
}

.main_wrap .main_txt_area{
	position: absolute;
	/*bottom: 13.51vw;*//*200*/
	top: calc(50% + 42px);
	left: 5.6756%;/*84*/
	transform: translateY(-50%);
	z-index: 2;
}

.main_wrap .main_txt_area p.main_catch{
	width: fit-content;
	font-size: min(5.27vw, 7.8rem);
	line-height: 1.4102;
	color: #fff;
	text-shadow: 0 0 0.68vw rgba(2, 64, 86, 0.75);
}

.main_wrap .main_txt_area p.main_txt{
	/*margin-top: 4.39vw;*//*65*/
	margin-top: 3.38vw;/*50*/
	width: fit-content;
	font-size: min(1.08vw, 1.6rem);
	line-height: 2.3125;
	letter-spacing: 0.05em;
	color: #fff;
	text-shadow: 0 0 0.68vw rgba(2, 64, 86, 0.75);
}

/*===================================
	.block01
=====================================*/

.block01{
	padding: 50px 0 65px;
}

.block01 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block01 .block_inner .news_area{
	width: 100%;
	margin-top: 35px;
}

.block01 .block_inner .news_area ul.news_list{
	list-style: none;
}

.block01 .block_inner .news_area ul.news_list li.ac_container{
	width: 100%;
}

.block01 .block_inner .news_area ul.news_list li.ac_container + li.ac_container{
	margin-top: 29px;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box{
	cursor: pointer;
	width: 100%;
	display: flex;
	border-bottom: 3px solid #08305a;
	padding-bottom: 13px;
	box-sizing: border-box;
	position: relative;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .thumb{
	width: 14.3%;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .thumb img{
	width: 100%;
	height: auto;
	max-height: 104px;
	object-fit: contain;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .news_detail{
	width: calc(100% - 14.3%);
	padding: 0 16.0% 0 2.2%;/*160 22*/
	box-sizing: border-box;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .news_detail p.date_txt{
	font-size: 1.6rem;
	line-height: 1;
	color: #666666;
	padding-top: 4px;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .news_detail p.news_tit{
	font-size: 1.8rem;
	line-height: 1.2777;
	color: #000000;
	padding-top: 28px;
}


.block01 .block_inner .news_area ul.news_list li.ac_container .box .minus{
	display: none;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .minus,
.block01 .block_inner .news_area ul.news_list li.ac_container .box .plus{
	width: 22px;
	line-height: 0;
	position: absolute;
	bottom: 28px;
	right: 3.4%;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .box .minus img,
.block01 .block_inner .news_area ul.news_list li.ac_container .box .plus img{
	width: 100%;
	height: auto;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail{
	display: none;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner{
	padding: 16px 0 18px;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p.news_txt01,
.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p{
	font-size: 1.6rem;
	line-height: 1.625;
	color: #000000;
	text-align: justify;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p.has-text-align-center{
	text-align: center;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p.has-text-align-right{
	text-align: right;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p.news_txt01 a,
.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner p a{
	color: #1A0DAB;
	text-decoration: underline;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner ul{
	list-style: none;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner ul li{
	padding-left: 1.25em;
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 1.625;
	color: #000000;
	text-align: justify;
	position: relative;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner ul li a{
	color: #1A0DAB;
	text-decoration: underline;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner ul li::before{
	content: '■';
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.625;
	color: #000000;
	position: absolute;
	top: 0;
	left: 0;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner .wp-block-flexible-table-block-table tr td:first-child{
	width: 25%;
}

.block01 .block_inner .news_area ul.news_list li.ac_container .detail .detail_inner .wp-block-flexible-table-block-table tr td{
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

/*===================================
	.block02
=====================================*/

.block02{
	padding: 65px 0 0;
}

.block02 .block_inner{
	width: 100%;
	max-width: 1350px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block02 .block_inner .b02_txtarea{
	width: 76.9230%;/*1000*/
	margin: 45px auto 0;
}

.block02 .block_inner .b02_txtarea p{
	font-size: 1.6rem;
	line-height: 2.3125;
	color: #333333;
	text-align: justify;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.block02 .block_inner .b02_txtarea p + p{
	margin-top: 1em;
}

.block02 .block_inner .b02_txtarea p.syomei{
	margin-top: 1.5em;
	line-height: 1.35;
	text-align: right;
}

.block02 .block_inner .b02_txtarea p.syomei span{
	font-size: 1.7rem;
}

/**/

.block02 .block_inner ul.about_list{
	width: 93.8461%;/*1220*/
	margin: 50px auto 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
}

.block02 .block_inner ul.about_list li{
	width: 32.5409%;/*397*/
	background: #0081BF;
	background: linear-gradient(90deg, rgba(0, 129, 191, 1) 0%, rgba(255, 69, 63, 1) 100%);
	padding: 3px;
	box-sizing: border-box;
}

.block02 .block_inner ul.about_list li .list_inner{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fff;
	padding: 7px;
	box-sizing: border-box;
}

.block02 .block_inner ul.about_list li .list_inner .img{
	width: 100%;
}

.block02 .block_inner ul.about_list li .list_inner .img img{
	width: 100%;
	height: auto;
}

.block02 .block_inner ul.about_list li .list_inner .txt_area{
	width: 100%;
	height: 100%;
	padding: 8px 0;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
}

.block02 .block_inner ul.about_list li .list_inner .txt_area p{
	font-size: 2.3rem;
	line-height: 1.4347;
	text-align: center;
	color: #052e57;
}

.block02 .block_inner ul.about_list li .list_inner .txt_area p span{
	color: #e81c24;
}

/**/

.block02 .block_inner .center_wrap{
	padding: 143px 0 90px;
	position: relative;
}

.block02 .block_inner .center_wrap::before{
	content: '';
	display: inline-block;
	background: url("images/top/bg01.webp")no-repeat;
	background-size: cover;
	background-position: center bottom;
	width: 100vw;
	height: calc(100% - 310px);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -2;
}

.block02 .block_inner .center_wrap::after{
	content: '';
	display: inline-block;
	background: url("images/top/bg_img01.webp")no-repeat;
	background-size: cover;
	width: 100vw;
	height: 426px;
	position: absolute;
	top: -75px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block02 .block_inner .center_wrap .center_area{
	width: 100%;
	background: rgba(255,255,255,0.9);
	border-radius: 50px;
	padding: 41px 0 85px;
	position: relative;
	z-index: 1;
}

.block02 .block_inner .center_wrap .center_area + .center_area{
	margin-top: 59px;
	padding: 49px 0 90px;
}

.block02 .block_inner .center_wrap .center_area .center_inner{
	width: 84.6153%;/*1100*/
	margin: 0 auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01{
	width: 93.0909%;/*1024*/
	margin: 24px auto 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li{
	width: 27.34375%;/*280*/
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li .thumb{
	width: 100%;
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li + li .thumb::before{
	content: '';
	display: inline-block;
	background: url("images/top/step_ico01.webp")no-repeat;
	background-size: contain;
	width: 39px;
	height: 45px;
	position: absolute;
	top: 50%;
	left: -63px;
	transform: translateY(-50%);
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li .c_detail{
	margin-top: 8px;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li .c_detail p.txt_lv1{
	font-size: 2.3rem;
	line-height: 1;
	text-align: center;
	color: #052e57;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flow_list01 li .c_detail p.txt_lv2{
	margin-top: 5px;
	font-size: 1.6rem;
	line-height: 1.3125;
	text-align: justify;
	color: #000;
}

.block02 .block_inner .center_wrap .center_area .center_inner .caution_area{
	margin-top: 15px;
	width: 100%;
	background: #e4f0f4;
	border-radius: 20px;
	padding: 18px 0 21px;
}

.block02 .block_inner .center_wrap .center_area .center_inner .caution_area ul.c_list{
	list-style: none;
	width: 90.9090%;/*1000*/
	margin: 0 auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner .caution_area ul.c_list li{
	font-size: 1.3rem;
	line-height: 2.0769;
	letter-spacing: 0.025em;
	color: #000;
	text-align: justify;
	font-feature-settings: 'palt';
}

.block02 .block_inner .center_wrap .center_area .center_inner .feature_area{
	width: 85.8181%;/*944*/
	/*height: 112px;*/
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 57px auto 0;
	/*background: rgba(255,255,255,0.8);
	border-radius: 20px;*/
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner .feature_area::before{
	content: '';
	display: inline-block;
	background: url("images/top/step_ico02.webp")no-repeat;
	background-size: contain;
	width: 92px;
	height: 34px;
	position: absolute;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
}

.block02 .block_inner .center_wrap .center_area .center_inner .feature_area::after{
	content: '';
	display: inline-block;
	background: url("images/top/center_img04.webp")no-repeat;
	background-size: contain;
	width: 581px;
	height: 581px;
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block02 .block_inner .center_wrap .center_area .center_inner .feature_area p{
	width: 100%;
	font-size: 3.5rem;
	line-height: 1.2571;
	color: #052e57;
	text-align: center;
	padding: 11px 0;
	background: rgba(255,255,255,0.8);
	border-radius: 20px;
}

.block02 .block_inner .center_wrap .center_area .center_inner .feature_area p span{
	color: #e81c24;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area{
	display: flex;
	align-items: center;
	width: 90.9090%;/*1000*/
	height: 118px;
	margin: 280px auto 0;
	border: 3px solid #f4cc25;
	background: #fff;
	border-radius: 20px;
	box-sizing: border-box;
	position: relative;
}

/*
.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area::before{
	content: '';
	display: inline-block;
	background: url("images/top/center_img04.webp")no-repeat;
	background-size: contain;
	width: 581px;
	height: 581px;
	position: absolute;
	bottom: -35px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
*/


.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .ehimeu_logo{
	width: 23.1%;
	padding: 0 2.7% 0 3.6%;
	box-sizing: border-box;
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .ehimeu_logo::after{
	content: '';
	display: inline-block;
	background: #c7c7c7;
	width: 3px;
	height: calc(118px * 0.711864);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: 1;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .ehimeu_logo img{
	width: 100%;
	height: auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .txt_area{
	width: calc(100% - 23.1%);
	padding-left: 2.4%;
	box-sizing: border-box;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .txt_area p.txt_lv1{
	font-size: 2.4rem;
	line-height: 1.75;
}

.block02 .block_inner .center_wrap .center_area .center_inner .ehimeu_area .txt_area p.txt_lv2{
	font-size: 1.5rem;
	line-height: 2.0771;
}

/**/

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area{
	margin-top: 35px;
	display: flex;
	justify-content: space-between;
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .eu-gate{
	width: 50%;/*550*/
	padding-left: 4.5454%;/*50*/
	box-sizing: border-box;
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .eu-gate .eu-gate_logo{
	width: 48.8%;/*244*/
	margin: 0 auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .eu-gate .eu-gate_logo img{
	width: 100%;
	height: auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .eu-gate p.e_txt01{
	margin-top: 35px;
	font-size: 1.6rem;
	line-height: 2.0625;
	color: #000000;
	text-align: justify;
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .gaiyo_img{
	width: 47.7272%;/*525*/
}

.block02 .block_inner .center_wrap .center_area .center_inner .gaiyo_flex_area .gaiyo_img img{
	width: 100%;
	height: auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area{
	margin-top: 39px;
	border: 3px solid #08305a;
	border-radius: 20px;
	box-sizing: border-box;
	overflow: hidden;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .label01{
	width: 100%;
	height: 69px;
	background: #08305a;
	display: flex;
	justify-content: center;
	align-items: center;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .label01 p{
	font-size: 3.0rem;
	line-height: 1;
	color: #fff;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail{
	padding: 20px 3.6363%;/*40*/
	box-sizing: border-box;
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list{
	list-style: none;
}

/*
.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list::before{
	content: '';
	display: inline-block;
	background: url("images/top/apcg2024.svg")no-repeat;
	background-size: cover;
	width: 17.5%;
	aspect-ratio: 713 / 235;
	position: absolute;
	top: 0;
	right: 0;
}
*/
.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list li{
	padding-left: 1.25em;
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 1.9375;
	color: #000000;
	text-align: justify;
	position: relative;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list li:nth-child(1),
.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list li:nth-child(2){
	padding-right: 19.0%;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail ul.jisseki_list li::before{
	content: '■';
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.9375;
	color: #000000;
	position: absolute;
	top: 0;
	left: 0;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail .apcg_img{
	width: 17.50%;
	position: absolute;
	top: 20px;
	right: 3.6363%;
}

.block02 .block_inner .center_wrap .center_area .center_inner .jisseki_area .jisseki_detail .apcg_img img{
	width: 100%;
	height: auto;
}


.block02 .block_inner .center_wrap .center_area .center_inner ul.flex_qr_area{
	width: 31.8181%;/*350*/
	margin: 50px auto 0;
	display: flex;
	justify-content: space-between;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flex_qr_area li{
	width: 48.5%;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flex_qr_area li img{
	width: 100%;
	height: auto;
}

.block02 .block_inner .center_wrap .center_area .center_inner ul.flex_qr_area li p{
	font-size: 1.4rem;
	margin-top: 10px;
	text-align: center;
}



/*===================================
	.block03
=====================================*/

.block03{
	padding: 75px 0 0;
}

.block03 .block_inner{
	width: 100%;
	max-width: 1150px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block03 .block_inner .act_wrap01{
	width: 100%;
	margin-top: 50px;
	padding: 75px 0 62px;
	position: relative;
}

.block03 .block_inner .act_wrap01::before{
	content: '';
	display: inline-block;
	background: url("images/top/b03_bg01.webp")no-repeat;
	background-size: cover;
	width: 100vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block03 .block_inner .act_wrap01 h3.h3_midashi{
	color: #fff;
}

.block03 .block_inner .act_wrap01 h3.h3_midashi::before{
	background: #fff;
}

.block03 .block_inner .act_wrap01 ul.act_list{
	width: 95.0909%;/*1046*/
	margin: 40px auto 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.block03 .block_inner .act_wrap01 ul.act_list li{
	width: 46.8451%;/*490*/
	min-height: 142px;
	background: #fff;
	border-radius: 20px;
	position: relative;
}

.block03 .block_inner .act_wrap01 ul.act_list li:nth-child(n + 3){
	margin-top: 46px;
}

.block03 .block_inner .act_wrap01 ul.act_list li:last-child{
	margin: 46px auto 0;
}

.block03 .block_inner .act_wrap01 ul.act_list li .num{
	width: 81px;
	position: absolute;
	top: -11px;
	left: -10px;
	z-index: 1;
}

.block03 .block_inner .act_wrap01 ul.act_list li .num p{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 81px;
	background: #e81c24;
	border-top-left-radius: 20px;
	font-size: 4.0rem;
	line-height: 0;
	color: #fff;
}

.block03 .block_inner .act_wrap01 ul.act_list li p.act_txt{
	padding: 35px 10.2040% 40px 19.1836%;/*40 94*/
	box-sizing: border-box;
	font-size: 2.1rem;
	line-height: 1.4285;
	letter-spacing: 0.05em;
	color: #000;
	text-align: justify;
}

.block03 .block_inner .act_wrap01 ul.act_list li p.act_txt span{
	color: #e81c24;
}

.block03 .block_inner .act_wrap01 ul.act_list li .kids_bnr{
	width: 77.7551%;/*381*/
	margin: 13px auto 0;
}

.block03 .block_inner .act_wrap01 ul.act_list li .kids_bnr img{
	width: 100%;
	height: auto;
}

.block03 .block_inner .act_wrap01 ul.act_list li .flex_link_area{
	width: 80.0%;/*392*/
	margin: 17px auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.block03 .block_inner .act_wrap01 ul.act_list li .flex_link_area a{
	display: flex;
	align-items: center;
}

.block03 .block_inner .act_wrap01 ul.act_list li .flex_link_area a::after{
	content: '';
	display: inline-block;
	background: url("images/top/link_ico.webp")no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-left: 6px;
}

.block03 .block_inner .act_wrap01 ul.act_list li .flex_link_area a span{
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #000000;
	text-decoration: underline;
}

.block03 .block_inner .act_wrap01 .act_txtarea{
	width: 90.9090%;/*1000*/
	margin: 46px auto 0;
}

.block03 .block_inner .act_wrap01 .act_txtarea p{
	font-size: 1.6rem;
	line-height: 2.3125;
	color: #fff;
	text-align: justify;
}

/**/

.block03 .block_inner .act_wrap02{
	width: 100%;
	padding: 88px 0 184px;
	position: relative;
}

.block03 .block_inner .act_wrap02::before{
	content: '';
	display: inline-block;
	background: url("images/top/b03_bg02.webp")no-repeat;
	background-size: cover;
	width: 100vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block03 .block_inner .act_wrap02 .intro_area{
	margin-top: 52px;
	display: flex;
	justify-content: space-between;
}

.block03 .block_inner .act_wrap02 .intro_area.rev{
	margin-top: 89px;
	flex-direction: row-reverse;
}

.block03 .block_inner .act_wrap02 .intro_area.rev + .intro_area{
	margin-top: 98px;
}

.block03 .block_inner .act_wrap02 .intro_area .photo_area{
	width: 50%;
}

.block03 .block_inner .act_wrap02 .intro_area .photo_area a:hover{
	filter: brightness(1.10);
	opacity: 1;
}

.block03 .block_inner .act_wrap02 .intro_area .photo_area img{
	width: 100%;
	height: auto;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area{
	width: 45.6363%;/*502*/
	margin-top: 34px;
	position: relative;
}

/* 初期状態（アニメーションなし） */
.block03 .block_inner .act_wrap02 .intro_area:not(.rev) .detail_area::before {
  content: '';
  display: inline-block;
  background: #052e57;
  width: calc(50vw + 93px);
  height: 349px;
	min-height: 100%;
  position: absolute;
  top: 21px;
  left: -133px;
  z-index: -1;

  transform-origin: right;
  transform: scaleX(0);
  opacity: 0;
  transition: transform 1s ease-out, opacity 1s ease-out;
}

.block03 .block_inner .act_wrap02 .intro_area:not(.rev) .detail_area.animate::before {
  transform: scaleX(1);
  opacity: 1;
}

/* .rev 用の初期状態 */
.block03 .block_inner .act_wrap02 .intro_area.rev .detail_area {
  margin-top: 28px;
  position: relative;
}

.block03 .block_inner .act_wrap02 .intro_area.rev .detail_area::before {
  content: '';
  display: inline-block;
  background: #052e57;
  width: calc(50vw + 100px);
  height: 349px;
	min-height: 100%;
  position: absolute;
  top: 26px;
  right: -148px;
  z-index: -1;

  transform-origin: left;
  transform: scaleX(0);
  opacity: 0;
  transition: transform 1s ease-out, opacity 1s ease-out;
}

.block03 .block_inner .act_wrap02 .intro_area.rev .detail_area.animate::before {
  transform: scaleX(1);
  opacity: 1;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area .num{
	width: 81px;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area .num p{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 81px;
	background: #e81c24;
	border-top-left-radius: 20px;
	font-size: 4.0rem;
	line-height: 0;
	color: #fff;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area .tit_area{
	margin-top: 20px;
	padding-bottom: 22px;
	border-bottom: 1px solid #e81c24;
	box-sizing: border-box;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area .tit_area p.txt_lv1{
	font-size: 2.3rem;
	line-height: 1.4347;
	text-align: justify;
	color: #fff;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area .tit_area p.txt_lv1 span{
	display: block;
	width: 100%;
	font-size: 1.5rem;
	line-height: 1.75;
	padding-bottom: 10px;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area p.txt_lv2{
	margin-top: 23px;
	font-size: 1.8rem;
	line-height: 1.75;
	color: #fff;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area p.txt_lv2 a{
	display: flex;
	align-items: center;
	text-decoration: underline;
	color: #fff;
}

.block03 .block_inner .act_wrap02 .intro_area .detail_area p.txt_lv2 a::after{
	content: '';
	display: inline-block;
	background: url("images/top/link_ico_wh.webp")no-repeat;
	background-size: contain;
	width: 25px;
	height: 25px;
	margin-left: 10px;
}

/*===================================
	.block04
=====================================*/

.block04{
	padding: 82px 0 75px;
}

.block04 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block04 .block_inner .member_wrap{
	margin-top: 75px;
}

.block04 .block_inner .member_wrap + .member_wrap{
	margin-top: 90px;
}

.block04 .block_inner .member_wrap ul.member_list{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.block04 .block_inner .member_wrap ul.member_list.member02{
	justify-content: center;
	gap: 0 6.5%;
}

.block04 .block_inner .member_wrap h3.h3_midashi +  ul.member_list{
	margin-top: 35px;
}

.block04 .block_inner .member_wrap ul.member_list:not(.member02)::after{
	content: '';
	display: inline-block;
	width: 28.5%;
	height: 100%;
}

.block04 .block_inner .member_wrap ul.member_list li{
	width: 28.5%;
}

.block04 .block_inner .member_wrap ul.member_list li.hidden-post{
	display: none;
}

.block04 .block_inner .member_wrap ul.member_list li:nth-child(n + 4){
	margin-top: 55px;
}

.block04 .block_inner .member_wrap ul.member_list li .photo_area{
	width: 100%;
	height: 266px;
	border: 4px solid #e81c24;
	border-radius: 10px;
	box-sizing: border-box;
	overflow: hidden;
}

.block04 .block_inner .member_wrap ul.member_list li .photo_area img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.block04 .block_inner .member_wrap ul.member_list li .photo_area + .prof_area{
	margin-top: 12px;
}

.block04 .block_inner .member_wrap ul.member_list li .prof_area p.name{
	font-size: 2.3rem;
	line-height: 1.4347;
	text-align: center;
	color: #000000;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.block04 .block_inner .member_wrap ul.member_list li .prof_area p.post{
	margin-top: 6px;
	font-size: 1.6rem;
	line-height: 1.625;
	text-align: center;
	color: #000000;
	word-break: normal;
	overflow-wrap: break-word; /* 長すぎる英語などはここで強制改行可能 */
	white-space: normal;
}

.block04 .block_inner .member_wrap ul.member_list li .prof_area .prof_list{
	margin-top: 10px;
}

/*
.block04 .block_inner .member_wrap ul.member_list li .prof_area .prof_list p{
	padding-left: 1em;
	box-sizing: border-box;
	font-size: 1.3rem;
	line-height: 2.0;
	color: #000000;
	text-align: justify;
	position: relative;
}
*/

.block04 .block_inner .member_wrap ul.member_list li .prof_area .prof_list p {
        padding-left: 1.25em;
        box-sizing: border-box;
        font-size: 1.35rem;
        line-height: 1.75;
        letter-spacing: 0.05em;
        color: #000000;
        text-align: justify;
        position: relative;
    }

.block04 .block_inner .member_wrap ul.member_list li .prof_area .prof_list p::before{
	content: '■';
	display: inline-block;
        font-size: 1.35rem;
        line-height: 1.75;
	color: #e81c24;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.block04 .block_inner .member_wrap .more_btn{
	width: 34.80%;
	margin: 40px auto 0;
}

.block04 .block_inner .member_wrap .more_btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 80px;
	border-radius: 10px;
	background: url("images/top/acc_open_wh.webp")no-repeat #08305a right 7.7586% center;/*27*/
	background-size: 37px auto;
	font-size: 2.3rem;
	line-height: 1;
	color: #fff;
}

/*===================================
	.block05
=====================================*/

.block05{
	padding: 75px 0 125px;
	background: url("images/top/b05_bg.webp")no-repeat;
	background-size: cover;
	background-position: center bottom;
}

.block05 .block_inner{
	width: 100%;
}

.block05 .block_inner ul.slick01{
	width: 100%;
	max-width: 100vw;
	margin: 47px auto 0;
	padding: 0;
	list-style: none;
	position: relative;
}

.block05 .block_inner ul.slick01 .slick-slide {
  padding: 0 1.35vw; /* スライド間の余白（左右10pxずつで合計20px） */
  box-sizing: border-box;
}

.block05 .block_inner ul.slick01 .slick-list {
  margin: 0 -1.35vw; /* paddingと同じ値で帳尻を合わせて両端をピッタリに */
}

.block05 .block_inner ul.slick01 li.s-slide iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  display: block;
}

.block05 .block_inner ul.slick01 li.s-slide p.cap_txt{
	margin-top: 10px;
	font-size: 2.0rem;
	line-height: 1.7475;
	color: #000;
	text-align: center;
}

.block05 .block_inner ul.slick01 .prev-arrow{
	width: 42px;
	height: auto;
	position: absolute;
	top: calc(50% - 23px);
	left: 0;
	transform: translateY(-50%);
	z-index: 1;
	cursor: pointer;
}

.block05 .block_inner ul.slick01 .next-arrow{
	width: 42px;
	height: auto;
	position: absolute;
	top: calc(50% - 23px);
	right: 0;
	transform: translateY(-50%);
	z-index: 1;
	cursor: pointer;
}

.block05 .block_inner ul.slick01 .slick-dots {
	display: flex;
	justify-content: center;
	gap: 0 0.54vw;/*8*/
	position: absolute;
	bottom: -60px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.block05 .block_inner ul.slick01 .slick-dots li {
	width: 1.76vw;/*26*/
	height: 0.34vw;/*5*/
	border: 1px solid #e81c24;
	background: #fff;
	box-sizing: border-box;
	cursor: pointer;
}

.block05 .block_inner ul.slick01 .slick-dots button {
	display: none;
}

.block05 .block_inner ul.slick01 .slick-dots .slick-active{
	background: #e81c24;
}

.block05 .block_inner ul.slick01 p.no-movie{
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	text-align: center;
	padding: 5.0em 0;
}

/*===================================
	.block06
=====================================*/

.block06{
	padding: 78px 0 134px;
}

.block06 .block_inner{
	width: 100%;
}

.block06 .block_inner ul.slick02{
	width: 100%;
	max-width: 100vw;
	margin: 50px auto 0;
	padding: 0;
	list-style: none;
	position: relative;
}

.block06 .block_inner ul.slick02 li.s-slide{
	width: 307px;
	background: url("images/top/fukidashi01.webp")no-repeat;
	aspect-ratio: 307 / 332;
	overflow: hidden;
	margin: 0 14px;
}

.block06 .block_inner ul.slick02 li.s-slide.fukidashi02{
	background: url("images/top/fukidashi02.webp")no-repeat;
}

.block06 .block_inner ul.slick02 li.s-slide.fukidashi03{
	background: url("images/top/fukidashi03.webp")no-repeat;
}

.block06 .block_inner ul.slick02 li.s-slide.fukidashi04{
	background: url("images/top/fukidashi04.webp")no-repeat;
}

.block06 .block_inner ul.slick02 li.s-slide p.vo_txt{
	padding: 20px 7.8175% 88px;/*24*/
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 2.0625;
	text-align: justify;
	color: #000000;
}

.block06 .block_inner ul.slick02 .prev-arrow{
	width: 42px;
	height: auto;
	position: absolute;
	top: 102px;
	left: 96px;
	z-index: 1;
	cursor: pointer;
}

.block06 .block_inner ul.slick02 .next-arrow{
	width: 42px;
	height: auto;
	position: absolute;
	top: 102px;
	right: 96px;
	z-index: 1;
	cursor: pointer;
}

.block06 .block_inner ul.slick02 .slick-dots {
	display: flex;
	justify-content: center;
	gap: 0 0.54vw;/*8*/
	position: absolute;
	bottom: -50px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.block06 .block_inner ul.slick02 .slick-dots li {
	width: 1.76vw;/*26*/
	height: 0.34vw;/*5*/
	border: 1px solid #e81c24;
	background: #fff;
	box-sizing: border-box;
	cursor: pointer;
}

.block06 .block_inner ul.slick02 .slick-dots button {
	display: none;
}

.block06 .block_inner ul.slick02 .slick-dots .slick-active{
	background: #e81c24;
}

.block06 .block_inner ul.slick02  p.no-post{
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	text-align: center;
	padding: 5.0em 0;
}


/*===================================
	.block07
=====================================*/

.block07{
	padding: 90px 0 124px;
	background: url("images/top/b07_bg.webp")no-repeat;
	background-size: cover;
}

.block07 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block07 .block_inner p.c_txt01{
	margin-top: 36px;
	font-size: 1.6rem;
	line-height: 2.0625;
	text-align: center;
	color: #000000;
}

.block07 .block_inner p.c_txt01 a{
	text-decoration: underline;
}

.block07 .block_inner .c_table{
	margin-top: 42px;
	width: 100%;
}

.block07 .block_inner .c_table table{
	width: 100%;
	border-top: 1px solid #aeaeae;
	border-left: 1px solid #aeaeae;
	box-sizing: border-box;
}

.block07 .block_inner .c_table table tr td{
	height: 60px;
	border-bottom: 1px solid #aeaeae;
	border-right: 1px solid #aeaeae;
	background: #fff;
	padding: 10px 2.0%;
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 1.875;
	letter-spacing: 0.05em;
	color: #333333;
}

.block07 .block_inner .c_table table tr td.color{
	width: 21.6%;
	background: #052e57;
	color: #fff;
}

/*===================================
	.block07-half
=====================================*/

.block07-half{
	padding: 52px 0 78px;
}

.block07-half .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.block07-half .block_inner .bnr_wrap{
	width: 100%;
}

.block07-half .block_inner .bnr_wrap + .bnr_wrap{
	margin-top: 70px;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 25px;
	position: relative;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list::after{
	content: '';
	display: inline-block;
	width: 23.6%;
	height: 100%;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list::before{
	content: '';
	display: inline-block;
	width: 23.6%;
	height: 0;
	order: 1;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list li{
	width: 23.6%;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list li:nth-child(n + 5){
	margin-top: 20px;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list li img{
	width: 100%;
	height: auto;
}

.block07-half .block_inner .bnr_wrap ul.bnr_list p.no-bnr{
	width: 100%;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	text-align: center;
	padding: 2.5em 0;
}
