/* CSS Document */
@charset "utf-8";

body *{
	font-size: 18px;
	line-height: 1.5;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
	box-sizing: border-box;
	color: #001e43;
}

body{
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
body .eng{
	font-family: "Noto Serif", "Times New Roman", serif, sans-serif;
}

.sp{ display: none;}
.pc{}

h1,h2,h3{
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 1em;
}
h1{
	font-size: 3em;
}
h2{
	font-size: 2em;
}
h3{
	font-size: 1.5em;
}

.mb10{ margin-bottom: 10px; }
.mb20{ margin-bottom: 20px; }
.mb50{ margin-bottom: 50px; }

.conWrap{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* ボタン
***************************************/

.btnd01{
	position: relative;
	display: inline-block;
	padding: 20px 110px;
	background-color: #FFF;
	border-radius: 35px;
	box-sizing: border-box;
}
.btnd_o01{
	position: relative;
	display: inline-block;
	padding: 20px 110px;
	background-color: #FFF;
	border-radius: 35px;
	box-sizing: border-box;
	border: 2px solid #0b985e;
}
.btnd02{
	position: relative;
	display: inline-block;
	padding: 20px 110px;
	background-color: #FFF;
	border-radius: 10px;
	box-sizing: border-box;
}
.btn_arrw::after{ 
	content: "";
	width: 10px;
	height: 10px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	position: absolute;
	right: 25px;
	top: 50%;
	margin-top: -5px;
	transform: rotate(45deg);
	font-weight: bold;
}
.bg_green{
	background-color: #0b985e;
	color: #FFF;
}
.bg_orange{
	background-color: #ed770a;
	color: #FFF;
}


.contentBtnArea{
	padding: 40px 0;
	display: flex;
	justify-content: center;
}
.contentBtn{
	display: inline-block;
	padding: 20px 0;
	width: 410px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: bold;
	background-color: #0b985e;
	color: #FFF;
	text-align: center;
	text-decoration: none;
}
.contentBtn2{
	display: inline-block;
	padding: 1em 0;
	width: 410px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: bold;
	background-color: #FFF;
	text-align: center;
	text-decoration: none;
	position: relative;
}
	.contentBtn2::after{
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #555;
		border-right: 1px solid #555;
		transform: rotate(45deg);
		position: absolute;
		right: 20px;
		top: 50%;
		margin-top: -4px;
	}
.contentBtn3{
	display: inline-block;
	padding: 1em 4em 1em 3em;
	width: auto;
	border-radius: 50px;
	font-size: 14px;
	background-color: #F3F3F3;
	text-align: center;
	text-decoration: none;
	position: relative;
}
	.contentBtn3::after{
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #555;
		border-right: 1px solid #555;
		transform: rotate(45deg);
		position: absolute;
		right: 20px;
		top: 50%;
		margin-top: -4px;
	}

/* 投稿リスト
***************************************/
.postList1{}
.postList1 li{}
.postList1 li a{}

.postList2{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 31px;
	width: 1200px;
	margin-left: auto;
	margin-right: auto;

}
	.postList2 li{
		width: 379px;
	}
		.postList2 li a{
			display: block;
			text-decoration: none;
		}
			.postList2 li a > div{
				margin-top: -20px;
				padding: 0;
			}
			.postList2 li a img{
				display: block;
				width: 100%;
				height: 200px;
				object-fit: cover;
			}
			.postList2 li a span{
				background-color: #001e43;
				color: #FFF;
				display: inline-block;
				margin-top: -20px;
				margin-bottom: 20px;
				font-size: 12px;
				padding: 0.5em 0.8em;
				line-height: 1;
			}
			.postList2 li a time{
				font-size: 12px;
				display: block;
				margin-bottom: 10px;
			}
			.postList2 li a h3{
				font-size: 20px;
				font-weight: bold;
				display: block;
			}
			.postList2 li a p{
				font-size: 14px;
			}
			.postList2 li a dl{
				display: flex;
				flex-wrap: wrap;
			}
			.postList2 li a dl dt,
			.postList2 li a dl dd{
				font-size: 14px;
			}
			.postList2 li a dl dt{
				width: 35%;
			}
			.postList2 li a dl dd{
				width: 65%;
			}
			.postList2 li a dl dd::before{
				content: ":";
			}


/* CTA
***************************************/
.cta{
	padding: 50px 0;
	background-color: #f7ffef;
	background-image: url(../img/bg_cta1.png);
	background-repeat: repeat-x;
	background-position: 50% bottom;
	background-size: 1200px;
}
.ctaWrap{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
	.ctaWrap .ctaWrap_l{
		max-width: 600px;
		width: 55%;
	}
	.ctaWrap .ctaWrap_r{
		max-width: 420px;
		width: 40%;
	}

.ctaWrap_r_wrap{
	position: relative;
}



.cta h2{
	font-size: 24px;
	display: block;
}
.cta ul{
	display: flex;
	gap:10px;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 420px;
	margin: 0 auto;
}
.cta ul li {
	width: 48%;
	background-color: #fff;
	border: 1px solid #0b985e;
	text-align: center;
	padding: 14px 10px;
	font-size: 16px;
	line-height: 1.3;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cta img{
	display: block;
	width: 360px;
	height: auto;
	margin: 0 auto 40px;
}
.cta a {
    display: block;
    width: 100%;
    position: relative;
    background-color: #ed770a;
    text-decoration: none;
    color: #FFF;
    border-radius: 20px;
    box-shadow: 5px 5px 0px 0px rgba(50, 50, 50, 1);
}
	.cta .cta_t1 {
		display: block;
		width: 77px;
		height: 77px;
		background-color: #f9e830;
		border-radius: 40px;
		display: flex;
		position: absolute;
		top: -20px;
		left: -26px;
		align-items: center;
		justify-content: center;
		text-align: center;
		line-height: 1.2;
		font-weight: bold;
		color: #111;
		z-index: 2;
	}
.cta .cta_t2 {
    display: inline-block;
    position: absolute;
    top: -15px;
    left: 64px;
    background-color: #fff;
    padding: 5px 20px;
    font-size: 13px;
    border-radius: 15px;
    line-height: 1.3;
    font-weight: bold;
	border: 1px solid #ed770a;
	z-index: 2;
}
	span.cta_t2::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -14px;
		left: 50%;
		margin-left: -3px;
		border: 6px solid transparent;
		border-top: 11px solid #fff;
	}
	.cta b {
        display: block;
        width: 100%;
        padding: 0.6em;
        font-size: 30px;
        text-align: center;
		color: #FFF;
	}


/* CVエリア1
***************************************/
.f_cv1{
	background-color: #172639;
	text-align: center;
	color: #FFF;
}
.f_cv1_wrap{
	padding: 40px 0;
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 1;
}
	.f_cv1_wrap .img_f_cv1 {
		display: block;
		width: 290px;
		height: auto;
		position: absolute;
		right: -120px;
		bottom: 0;
		z-index: -1;
	}
	.f_cv1 h2,
	.f_cv1 h2 span,
	.f_cv1 h3,
	.f_cv1 p{
		color: #FFF;
	}
	.f_cv1 h2{
		display: block;
		line-height: 1.4;
		margin-bottom: 30px;
	}
		.f_cv1 h2 span.mini{
			display: block;
			margin-bottom: 20px;
		}
	.f_cv1 .f_cv1_text0{
		font-size: 15px;
		margin-bottom: 50px;
	}
	.f_cv1 > h3{
		font-size: 25px;
		margin-bottom: 30px;
	}
	.f_cv1 .f_cv1_text1{
		font-size: 20px;
		margin-bottom: 30px;
	}
	.f_cv1 ul{
		display: flex;
		justify-content: space-between;
		gap: 32px;
		width: 100%;
		margin: 0 auto 30px;
	}
	.f_cv1 ul li{
		width: 333px;
		background-color: #FFF;
		padding: 25px 15px;
	}
		.f_cv1 ul li p{
			color: #001e43;
		}
		.f_cv1 ul li span{
			display: inline-block;
			width: auto;
			margin-bottom: 1.5em;
			font-weight: bold;
			font-size: 20px;
			background-color: #ed770a;
			color: #FFF;
			padding: 0.1em 1em;
		}
		.f_cv1 ul li b{
			display: block;
			width: 100%;
			margin-bottom: 1em;
			font-weight: bold;
			font-size: 22px;
			line-height: 1.4;
			color: #ed770a;
			letter-spacing: 0;
		}
		.f_cv1 ul li p{
			font-size: 14px;
		}
.f_cv1_text1{
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 30px;
}
.f_cv1_btn{
	display: flex;
	justify-content: center;
	gap: 30px;
}
	.f_cv1_btn a{
		width: 400px;
		padding: 20px 20px;
	}

/* CVエリア2
***************************************/
.f_cv2{
	padding: 120px 0;
	background-color: #001e43;
	text-align: center;
	color: #FFF;
	background-image: url(../img/bg_cta2.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 1400px;
}
	.f_cv2 .sec_title01{
		margin-bottom: 40px;
	}
		.f_cv2 .sec_title01 span{
			font-size: 0.7em;
			color: #FFF;
		}
		.f_cv2 .sec_title01 img{
			display: inline-block;
			width: 283px;
			height: auto;
			margin-right: 0.2em;
			vertical-align: sub;
		}
	.f_cv2 .sec_text01{
		line-height: 1.7;
		margin-bottom: 100px;
	}
	.f_cv2 > h2,
	.f_cv2 > p,
	.f_cv2 > p *{
		color: #FFF;
	}
	.f_cv2_wrap{
		width: 1200px;
		margin: 0 auto 50px;
		padding: 40px;
		background-color: #f7ffef;
		text-align: center;
		color: #FFF;
	}
		.f_cv2_wrap h2{
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 0.3em;
		}
			.f_cv2_wrap h2 img{
				display: inline-block;
				width: 300px;
				height: auto;
				vertical-align: sub;
			}
	.f_cv2_text1{
		font-size: 20px;
		margin-bottom: 30px;
	}
	.f_cv2_text2{
		font-size: 26px;
		font-weight: bold;
		margin-bottom: 40px;
	}
	.f_cv2 ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 8px;
		width: 710px;
		margin: 0 auto 40px;
	}
		.f_cv2 ul li {
			width: 49%;
			background-color: #FFF;
			color: #333;
			display: flex;
			justify-content: center;
			align-items: center;
			line-height: 1.3;
			font-size: 22px;
			font-weight: bold;
			border: 1px solid #0b985e;
			padding: 0.5em 0;
		}
	.f_cv2 ol{
		display: flex;
		justify-content: space-between;
		gap: 32px;
		width: 1063px;
		margin: 0 auto;
	}
		.f_cv2 ol li{
			width: 333px;
			background-color: #FFF;
			color: #333;
			position: relative;
			padding: 80px 0 30px;
			display: flex;
			justify-content: center;
			align-items: center;
			flex-wrap: wrap;
			border: 1px solid #0b985e;
		}
		.f_cv2 ol li span{
			width: 333px;
			position: absolute;
			top: 30px;
			left: 50%;
			display: block;
			width: 80px;
			margin-left: -40px;
			background-color: #ed770a;
			color: #FFF;
			
		}
		.f_cv2 ol li b{
			display: block;
			width: 100%;
			line-height: 1.5;
			font-size: 22px;
			margin-bottom: 0.5em;
			color: #ed770a;
		}
		.f_cv2 ol li p{
			line-height: 1.5;
			font-size: 16px;
		}
/* CVエリア3
***************************************/
.f_cv3{
	padding: 40px 0;
	background-color: #f7ffef;
	text-align: center;
}
	.f_cv3_wrap{
		width: 1200px;
		margin: 0 auto;
		padding: 40px 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
		.f_cv3_wrap .f_cv3_wrap_l{
			width: 700px;
		}
			.f_cv3_wrap .f_cv3_wrap_l p{
				font-size: 25px;
				font-weight: bold;
				text-align: left;
				margin-bottom: 0.5em;
			}
			.f_cv3_wrap .f_cv3_wrap_l p img{
				display: inline-block;
				width: 280px;
				height: auto;
				vertical-align: sub;

			}
			.f_cv3_wrap .f_cv3_wrap_l h2{
				display: block;
				font-size: 36px;
				line-height: 1.3;
				font-weight: bold;
				text-align: left;
			}
		.f_cv3_wrap .f_cv3_wrap_r{
			width: 420px;
			margin-top: 20px;
		}
			.f_cv3_wrap .f_cv3_wrap_r .f_cv3_wrap_r_1{
				font-size: 36px;
				font-weight: bold;
				text-align: center;
				width: 100%;
			}
			.f_cv3_wrap .f_cv3_wrap_r .f_cv3_wrap_r_2{
				font-size: 24px;
				text-align: center;
				width: 100%;
				margin-bottom: 20px;
			}
			.f_cv3_wrap .f_cv3_wrap_r a{
				display: block;
				font-size: 22px;
				text-align: center;
				width: 100%;
				border: 2px solid #0b985e;
				font-weight: bold;
			}
				.f_cv3_wrap .f_cv3_wrap_r a::after{
					border-top: 2px solid #0b985e;
					border-right: 2px solid #0b985e;
				}

	.f_cv3_wrap .f_cv3_txt1{
		font-size: 22px;
		font-weight: bold;
		text-align: left;
	}
	.f_cv3_wrap h2{
		display: block;
		margin: 0;
		font-size: 32px;
		text-align: left;
	}
	.f_cv3_wrap .f_cv3_txt2{
		font-size: 32px;
		font-weight: bold;
	}
	.f_cv3_wrap .f_cv3_txt3{
		font-size: 16px;
	}
	.f_cv3_wrap a{

	}

/* MV
***************************************/
.top_mv{
	padding: 190px 0 270px;
	position: relative;
	width: 100%;
	overflow: hidden;
	background-image: url(../img/top/main.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
}
	.top_mv::after {
		display: block;
		content: "";
		width: 1070px;
		height: 136px;
		background-image: url(../img/top/mv_logo.png);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 5px;
		right: -140px;
		z-index: 1;
	}
	.top_mv h1 {
		display: block;
		font-size: 80px;
		line-height: 1;	
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 2rem;
		color: #FFF;
		text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.54);
	}
	.top_mv p {
		display: block;
		font-size: 30px;
		line-height: 1;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		color: #FFF;
		
		text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.54);
	}

/* TOP - section
***************************************/
.sec_padding_50{
	padding: 50px 0;
}
.sec_padding_100{
	padding: 100px 0;
}
.secWrap1000{
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.secWrap1200{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.sec_color_gray{
	background-color: #f7ffef;
}

.sec_title01{
	text-align: center;
	margin-bottom: 20px;
}
.sec_title02{
	text-align: left;
	margin-bottom: 20px;
}

.sec_text01{
	text-align: center;
	margin-bottom: 50px;
}
.sec_text02{
	text-align: left;
	margin-bottom: 50px;
}


/* TOP - about1
***************************************/
.sec_top_about1{}
	.sec_top_about1_wrap{
		padding: 100px 0;
		width: 1200px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
		.sec_top_about1_wrap img{
			display: block;
			width: 660px;
			height: 639px;
			object-fit: cover;
			margin-left: -140px;
		}
		.sec_top_about1_wrap .sec_top_about1_wrap_txt{
			width: 630px;
			padding: 40px 0px;
		}
			.sec_top_about1_wrap .sec_top_about1_wrap_txt h2{
				font-size: 36px;
			}
				.sec_top_about1_wrap .sec_top_about1_wrap_txt h2 span{
					font-size: 24px;
				}
			.sec_top_about1_wrap .sec_top_about1_wrap_txt p{
				line-height: 1.5;
			}

/* TOP - tabsec1
***************************************/
.sec_top_tabSec1{
	padding: 30px 0;
	background-color: #f6f6f6;
}
.sec_top_tabSec1 h2{
	margin-bottom: 10px;
}
.sec_top_tabSec1 p{
	margin-bottom: 32px;
}


.tabs {
	display: flex;
	padding: 0;
	margin: 0 0 32px;
	}
.tabs li { 
	text-align: center;
	cursor: pointer;
	transition: background 0.3s;
	border-radius: 20px;
	padding: 0.4em 1.2em;
	font-size: 12px;
	margin-right: 1em;
	background: #0b985e;
	color: #FFF;
}
.tabs li:hover {
	background: #f7ffef;
	border: 1px solid #0b985e;
	color: #001e43;
}
.tabs li.active {
	background: #f7ffef;
	border: 1px solid #0b985e;
	color: #001e43;
}
.tab-content {
	display: none;
}
.tab-content.active {
	display: block;
}
.tab-content ul{
	display: flex;
	justify-content: flex-start;
}
	.tab-content ul li {
		display: block;
		width: 24%;
		margin-right: 1.33%;
	}
		.tab-content ul li:last-child {
			margin-right: 0;
		}
		.tab-content ul li span,
		.tab-content ul li a{
			display: block;
			width: 100%;
			text-decoration: none;
			color: #333;
		}
			.tab-content ul li span img,
			.tab-content ul li a img{
				display: block;
				width: 100%;
				height: auto;
				margin-bottom: 16px;
			}
			.tab-content ul li time{
				display: block;
				width: 100%;
				text-decoration: none;
				font-size: 13px;
				margin-bottom: 16px;
			}
			.tab-content ul li h3{
				display: block;
				width: 100%;
				text-decoration: none;
				font-size: 16px;
			}


/* TOP - taidan
***************************************/
.sec_top_taidan{
	padding: 50px 0;
}
	.sec_top_taidan h2{
		font-size: 44px;
		margin-bottom: 0.5em;
	}
		.sec_top_taidan h2 span{
			font-size: 24px;
		}
	.sec_top_taidan * > p{
		margin-bottom: 4em;
	}


/* TOP - Search
***************************************/
.sec_top_search{
	padding: 120px 0;
	background-color: #001e43;
}
	.sec_top_search .conWrap{
		width: 1200px;
		margin: 0 auto;
	}
	.sec_top_search h2{
		font-size: 36px;
		display: block;
		text-align: center;
		color: #FFF;
		
	}

/*　検索ボックス
*******************************/
.searcBox{
	padding: 40px 60px;
	background-color: #f7ffef;
	margin-bottom: 40px;
}
	.searcBox h3{
		display: block;
		font-size: 24px;
		text-align: center;
	}
	.searcBox form{
		display: flex;
		justify-content: center;
		gap: 10px;
		width: 100%;
	}
	.batsu{
		display: block;
		position: relative;
		width: 24px;
	}
		.batsu::before,
		.batsu::after{
			content: "";
			display: block;
			position: absolute;
			border-top: 2px solid #001e43;
			width: 100%;
			position: absolute;
			top: 50%;
			left: 50%;
			margin-left: -12px;
		}
		.batsu::before{
			transform: rotate(-135deg);
		}
		.batsu::after{
			transform: rotate(135deg);
		}

		.searcBox form select,
		.searcBox form input[type="text"]{
			border: 2px solid #001e43;
			padding: 0.8em 1em;
			text-align: center;
			color: #001e43;
			width: 420px;
		}
		.searcBox form input[type="text"]::placeholder{
			color: #001e43;
		}
	.searcBox form button{
		background: none;
		border: none;
		width: 50px;
	}
	.searcBox form button img{
		display: block;
		width: 100%;
		height: auto;
			fill: #42AFE3;
	}
		.searcBox form button img:hover{
			fill: #42AFE3;
		}


.tagBox{
}
	.tagBox h3{
		display: block;
		font-size: 16px;
		text-align: center;
		font-weight: normal;
		color: #FFF;
	}
		.tagBox ul{
			padding: 0 50px;
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-start;
			gap: 8px 12px;;
		}
			.tagBox ul li{

			}
				.tagBox ul li a{
					text-decoration: none;
					display: block;
					padding: 10px;
					background-color: #f7ffef;
					font-size: 12px;
					line-height: 1;
					border-radius: 5px;
				}

/* Top - カルーセル
***************************************/
.list_cal1{
	
}
	.list_cal1 li{
		width: 100%;
		max-width: 750px;
		margin-left: auto;
		margin-right: auto;
	}
		.list_cal1 li a{
			display: block;
			text-decoration: none;
		}
			.list_cal1 li a time{
				display: block;
				font-size: 14px;
				font-weight: normal;
				margin-bottom: 0.7em;
			}
			.list_cal1 li a h3{
				display: block;
				font-size: 16px;
				font-weight: bold;
			}
			.list_cal1 li a img{
				display: block;
				width: 100%;
				height: 360px;
				border-radius: 8px;
				object-fit: cover;
				margin-bottom: 1em;
			}
.splide {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}
	.splide__list {
		width: 100%;
		margin: 0 auto;
	}
	/* .splide__slide {
		width: 100%;
		max-width: 800px;
	}
		.splide__slide a{
			display: block;
			width: 100%;
			color: #333;
			text-decoration: none;
		}
			.splide__slide a img{
				display: block;
				width: 100%;
				height:auto;
				border-radius: 8px;
			}
			.splide__slide a time{
				display: block;
				font-size: 14px;
				font-weight: normal;
			}
			.splide__slide a h3{
				display: block;
				font-size: 16px;
				font-weight: bold;
			} */


/* Top - コラム
***************************************/
.list_column{
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
	.list_column li{
			width: 100%;
			max-width: 750px;
	}
		.list_column li a{
			display: block;
			width: 100%;
			position: relative;
		}
			.list_column li a > img{
				display: block;
				width: 100%;
				height: 520px;
				object-fit: cover;
				border-radius: 20px;
			}
			.list_column li a > div{
				display: block;
				width: 100%;
				height: auto;
				position: absolute;
				top: 0;
				left: 0;
				padding: 200px 170px 0 40px;
			}
				.list_column li a span{
					display: inline-block;
					padding: 0.2em 1em;
					font-size: 0.6em;
					color: #FFF;
					background-color: #001e43;
					margin-bottom: 1em;
				}

					.list_column li a div > h3{
						font-size: 32px;
						font-weight: bold;
						margin-bottom: 0.5em;
						background-color: #001e43;
						color: #FFF;
						padding: 0.2em 0.5em;
					}

					.list_column li a div > .list_column_author{
						display: flex;
						justify-content: left;
						align-items: center;
						gap: 20px;
					}
					.list_column li a div .list_column_author_img{
						display: block;
						width: 111px;
						height: 111px;
						object-fit: cover;
						border-radius: 55.5px;
					}
					.list_column li a div .list_column_author_text{
						margin-left: 20px;
						font-size: 12px;
						color: #FFF;
						background-color: #001e43;
						padding: 10px 20px;
					}
						.list_column li a div .list_column_author_text b{
							font-size: 1.2em;
							margin-bottom: 0.15em;
							font-weight: bold;
							display: block;
							width: 100%;
							color: #FFF;
						}

#carousel-a .splide__arrow {
    background: #0b985e;
    opacity: 1;
	top: 180px;
}
#carousel-b .splide__arrow {
    background: #0b985e;
    opacity: 1;
	top: 300px;
}
#carousel-a .splide__arrow svg ,
#carousel-b .splide__arrow svg {
    fill: #fff;
    height: 1em;
    width: 1em;
}

#carousel-b{
	margin-bottom: 100px;
}

.splide__arrows.splide__arrows--ltr {
    width: 930px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}
#carousel-a .splide__arrow ,
#carousel-b .splide__arrow {
	width: 3em;
    height: 3em;
    background: #0b985e;
}

/* Top - QA
***************************************/
.list_qa{}
.list_qa li{
	padding: 24px;
	border-radius: 4px;
	margin-bottom: 30px;
	box-shadow: 0px 3px 0 3px rgba(11, 152, 94, 1);
	background-color: #f6f6f6;
}

.list_qa li summary {
        display: flex;
        padding-left: 4em;
        position: relative;
        align-items: center;
  }
.list_qa li summary::-webkit-details-marker {
	display: none;
}
	.list_qa li summary::before {
		content: "Q";
		display: flex;
		justify-content: center;
		align-items: center;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		border-radius: 20px;
		background-color: #0b985e;
		color: #FFF;
		line-height: 1;
		position: absolute;
		left: 0;
	}
	.list_qa li details p {
        display: flex;
        padding-left: 4em;
        position: relative;
        align-items: center;
	}
	.list_qa li details p::before {
		content: "A";
		display: flex;
		justify-content: center;
		align-items: center;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		border-radius: 20px;
		background-color: #FFF;
		border: 1px solid #0b985e;
		color: #0b985e;
		line-height: 1;
		position: absolute;
		left: 0;
	}

.summary_inner{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        width: 100%;
		font-weight: bold;
  }
  .icon {
	position: relative;
	display: block;
	height: 20px;
	border-right: 2px solid #0b985e;
	transition: transform 0.4s;
	opacity: 1;
  }
  .icon::after {
	content: "";
	position: absolute;
	top: 9px;
	left: -9px;
	display: block;
	width: 20px;
	border-bottom: 2px solid #0b985e;
	transition: transform 0.4s;
  }
  
  /* アコーディオンが開いた時のスタイル */
  details[open] .icon {
	transform: rotate(90deg);
  }
	details[open] .icon::after {
		opacity: 0;
	}
  .list_qa li p{
	margin-top: 2em;
  }

/* Top - 運営
***************************************/
.sec_list_operator{
	background-color: #f7ffef;
	background-image: url(../img/top/bg_operator.png);
	background-repeat: no-repeat;
	background-size: cover;
}
	.sec_list_operator h2{
		text-shadow:
			3px 3px 2px #fff,
			-3px 3px 2px #fff,
			-3px -3px 0 #fff,
			3px -3px 0 #fff;
	}
.list_operator{
	display: flex;
	flex-wrap: wrap;
	gap: 34px;
	width: 1205px;
	margin: 0 auto;
}
	.list_operator li{
		width: 379px;
		box-shadow: 
			0px 35px 10px 0 rgba(168, 168, 168, 0),
			0px 22px 9px 0 rgba(168, 168, 168, 0.01),
			0px 13px 8px 0 rgba(168, 168, 168, 0.05),
			0px 6px 6px 0 rgba(168, 168, 168, 0.09),
			0px 1px 3px 0 rgba(168, 168, 168, 0.1);
			background-color: #FFF;
	}
		.list_operator li img{
			display: block;
			width: 100%;
			height: auto;
		}
		.list_operator li div{
			padding: 20px 30px 40px;
			border: 1px solid #0b985e;
			border-top: none;
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
		}
			.list_operator li div .btnd02{
				display: inline-block;
				padding: 12px 40px;
				text-align: center;
				font-size: 14px;
			}
			.list_operator li div .btn_arrw::after{
				right: 20px;
			}
			.list_operator li dl{
				display: flex;
				flex-wrap: wrap;
				gap: 0.3em 4%;
				margin-bottom: 40px;
			}
				.list_operator li dl dt{
					width: 20%;
					text-align: right;
				}
					.list_operator li dl dt::after{
						content: ":";
					}
				.list_operator li dl dd{
					width: 76%;
				}
					.list_operator li dl dd b{
						font-size: 1.2em;
					}


/* TOP - 不動産に関するコラム一覧
***************************************/
.about_real_estate_wrap > h2{
	border-bottom: 1px solid #333;
	font-size: 24px;
	font-weight: bold;
	width: 1200px;
	margin: 0 auto 50px;
	display: block;
	padding-bottom: 10px;
}
	.about_real_estate_wrap > h2 span{
		font-size: 0.6em;
        font-weight: normal;
        margin-left: 10px;
        vertical-align: middle;
        margin-bottom: 0.5em;
        display: inline-block;
	}
.list_about_real_estate{
	display: flex;
	flex-wrap: wrap;
	width: 1200px;
	margin: 0 auto;
}
	.list_about_real_estate > div{
		width: 50%;
	}
		.list_about_real_estate > div h3{
			font-size: 18px;
			margin-bottom: 10px;
		}
		.list_about_real_estate > div ul{
			font-size: 18px;
			margin-bottom: 20px;
		}
		.list_about_real_estate > div ul li a{
			font-size: 14px;
			text-decoration: underline;
		}



.realEstateLife .sec_title01{
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
.realEstateLife .sec_title01 img{
	display: inline-block;
	width: 26px;
	height: 26px;
	background-image: url(../img/icon_speaker.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	margin-right: 0.7em;
}

/* ボタンエフェクト */
@keyframes shiny {
    0% { transform: scale(0) rotate(25deg); opacity: 0;}
    50% { transform: scale(1) rotate(25deg); opacity: 1;}
    100% { transform: scale(50) rotate(25deg);opacity: 0;}
}
.shiny-btn {
    position: relative;
    cursor: pointer;
    overflow: hidden;
}
.shiny-btn::after {
    content: '';
    position: absolute;
    top: -100px;
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}