@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');

/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. タグ固有
　02. 大枠
　03. 事例一覧
　04. モジュール

******************************************************************************* */
/* ==

　01. タグ固有

=============================================================================== */
section {
	--bg-color: #DEE4E9;
}
section .areaIn{
	max-width: 1240px;
	margin: 0 auto;
}
section p,
section ul {
	font-size: clamp(14px, 10.122px + 0.408vw, 16px);
}
section p.txt_lead {
	margin: 0 0 50px;
	font-size: clamp(18px, 12.184px + 0.612vw, 21px);
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
	text-align: center;
}
section p.txt01 {
	font-size: clamp(16px, 12.122px + 0.408vw, 18px);
	line-height: 1.6;
}
section p.txt_note {
	font-size: clamp(13px, 9.122px + 0.408vw, 15px);
}
section ul p,
section ul ul {
	font-size: 100%;
}


section .heading01{
	margin: 0 0 40px;
	font-size: clamp(22px, 10.367px + 1.224vw, 28px);
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
	text-align: center;
}
section .heading01::before,
section .heading01::after{
	content: "";
	display: inline-block;
	width: 35px;
	height: 35px;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
	vertical-align: -0.25em;
}
section .heading01::before{
	margin-right: 40px;
	transform: rotate(45deg);
}
section .heading01::after{
	margin-left: 40px;
	transform: rotate(225deg);
}

section .heading02 {
	margin: 0 0 40px;
	padding: 0 0 20px;
	border-bottom: 1px solid #000;
	font-size: clamp(22px, 10.367px + 1.224vw, 28px);
	line-height: 1.4;
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
}


section div.btn01 a{
	max-width: 320px;
	height: 50px;
	margin: 0 auto;
	background-color: #51565F;
	border-radius: 50px;
	font-size: 150%;
	line-height: 50px;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	position: relative;
	display: block;
	overflow: hidden;
}
section div.btn01 a::before,
section div.btn01 a::after{
	content: "";
	width: 8px;
	height: 8px;
	border-left: 2px solid #FFF;
	border-bottom: 2px solid #FFF;
	transform: rotate(225deg);
	display: inline-block;
	position: absolute;
	top: calc(50% - 4px);
}
section div.btn01 a::before{
	right: 22px;
	opacity: 1;
	transition: right .4s ease-in, opacity .4s ease-in;
}
section div.btn01 a::after{
	right: 32px;
	opacity: 0;
	transition: right .4s ease-out .1s, opacity .4s ease-out .1s;
}
section div.btn01 a:hover::before{
	right: 12px;
	opacity: 0;
	transition: right .4s ease-out .1s, opacity .4s ease-out .1s;
}
section div.btn01 a:hover::after{
	right: 22px;
	opacity: 1;
	transition: right .4s ease-in, opacity .4s ease-in;
}
section div.btn02 a{
	max-width: 165px;
	height: 35px;
	margin: 0;
	padding: 7px 20px 0;
	border: 1px solid #000;
	border-radius: 50px;
	font-size: clamp(16px, 12.122px + 0.408vw, 18px);
	line-height: 1.0;
	color: #000;
	font-weight: 500;
	text-decoration: none;
	box-sizing: border-box;
	position: relative;
	display: block;
	overflow: hidden;
}
section div.btn02 a::before,
section div.btn02 a::after{
	content: "";
	width: 8px;
	height: 8px;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
	transform: rotate(225deg);
	display: inline-block;
	position: absolute;
	top: calc(50% - 4px);
}
section div.btn02 a::before{
	right: 20px;
	opacity: 1;
	transition: right .4s ease-in, opacity .4s ease-in;
}
section div.btn02 a::after{
	right: 29px;
	opacity: 0;
	transition: right .4s ease-out .1s, opacity .4s ease-out .1s;
}
section div.btn02 a:hover::before{
	right: 11px;
	opacity: 0;
	transition: right .4s ease-out .1s, opacity .4s ease-out .1s;
}
section div.btn02 a:hover::after{
	right: 20px;
	opacity: 1;
	transition: right .4s ease-in, opacity .4s ease-in;
}


/* ==

　02. 大枠

=============================================================================== */
#main {
	width: auto;
	min-width: 950px;
}
/* ==

　04. モジュール

=============================================================================== */
.mv{
	padding: 0 20px;
	background: url(../../images/rn/bg_mv.jpg) center top no-repeat;
	background-size: cover;
}
.mv_in{
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-direction: row-reverse;
	gap: 0 clamp(20px, -53.673px + 7.755vw, 58px);
}
.mv_in > .swiper-pagination{
	width: 100%;
	position: absolute;
	left: 0;
	bottom: -30px;
	text-align: center;
}
.mv_in > .swiper-pagination .swiper-pagination-bullet{
	margin: 0 6px;
	background-color: #DEE4E9;
	opacity: 1.0;
}
.mv_in > .swiper-pagination .swiper-pagination-bullet-active{
	background-color: #51565F;
}

.mv_docs{
	width: 24%;
	padding: clamp(40px, 1.224px + 4.082vw, 60px) 0 clamp(30px, 10.612px + 2.041vw, 40px);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.mv_docs .mv_txt_date{
	margin-bottom: 20px;
	font-size: clamp(32px, 0.980px + 3.265vw, 48px);
	line-height: 1.0;
	font-family: "Zen Old Mincho", serif;
	font-weight: 500;
	letter-spacing: -0.03em;
	white-space: nowrap;
}
.mv_docs .mv_txt_note{
	margin-top: 10px;
	font-size: 108%;
}
.mv_imgs{
	width: calc(76% - clamp(20px, -53.673px + 7.755vw, 58px));
	position: relative;
	overflow: hidden;
}
.mv_imgs_loader{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--bg-color, #DEE4E9);
	z-index: 5;
	opacity: 1;
	visibility: visible;
	transition: opacity .4s ease-in-out, visibility .4s ease-in-out;
}
.mv_imgs_loader span{
	width: 44px;
	height: 44px;
	border: 4px solid rgba(81, 86, 95, .15);
	border-top-color: #51565F;
	border-radius: 50%;
	display: block;
	animation: mvImgsLoaderSpin .8s linear infinite;
}
.mv_imgs.is-loaded .mv_imgs_loader{
	opacity: 0;
	visibility: hidden;
}
@keyframes mvImgsLoaderSpin{
	to{
		transform: rotate(360deg);
	}
}
.mv_note{
	max-width: 1400px;
	margin: 10px auto 100px;
	text-align: right;
	box-sizing: border-box;
}
.mv_note p{
	font-size: 108%;
}
@media only screen and (max-width: 1400px) {
	.mv_note{
		padding: 0 20px;
	}
}


.leadBlock{
	padding: 0 20px clamp(120px, 42.449px + 8.163vw, 160px);
	position: relative;
}
.leadBlock p{
	font-size: clamp(28px, 20.245px + 0.816vw, 32px);
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	text-align: center;
}



#searchArea {
	padding: clamp(40px, 1.224px + 4.082vw, 60px) 20px clamp(120px, 42.449px + 8.163vw, 160px);
	background-color: #ECEEF0;
	position: relative;
}
#searchArea::before{
	content: "";
	width: 100%;
	height: 61px;
	background-color: #ECEEF0;
	position: absolute;
	top: -60px;
	left: 0;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
#searchArea .areaIn{
	max-width: 1240px;
	margin: 0 auto;
	display: flex;
}
#searchArea .areaIn .searchArea_docs{
	width: calc(100% - clamp(742px, 583.020px + 16.735vw, 824px));
	padding-top: 140px;
}
#searchArea .searchArea_txt{
	margin: 0;
	font-size: clamp(22px, 10.367px + 1.224vw, 28px);
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
}

@media only screen and (max-width: 1100px) {
	#searchArea .areaIn{
		display: block;
	}
	#searchArea .areaIn .searchArea_docs{
		width: auto;
		max-width: clamp(742px, 583.020px + 16.735vw, 824px);
		margin: 0 auto;
		padding-top: 0;
	}
	#searchArea .areaIn .searchArea_docs br.devPcTbl{
		display: none;
	}
}




#sec01{
	padding: clamp(40px, 1.224px + 4.082vw, 60px) 0 0;
	position: relative;
}
#sec01::before{
	content: "";
	width: 100%;
	height: 61px;
	background-color: #FFF;
	position: absolute;
	top: -60px;
	left: 0;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
#sec01 .bg{
	padding: 0 20px clamp(80px, 41.224px + 4.082vw, 100px);
	background: url(../../images/rn/bg01.jpg) center top no-repeat;
}
#sec01 ul.sec01_numbers{
	max-width: 1242px;
	margin: 0 auto;
	font-size: 100%;
	display: flex;
	gap: 0 clamp(25px, -25.408px + 5.306vw, 51px);
}
#sec01 ul.sec01_numbers li{
	width: calc((100% - clamp(25px, -25.408px + 5.306vw, 51px) * 2) / 3);
	padding: clamp(35px, 15.612px + 2.041vw, 45px) clamp(25px, -13.776px + 4.082vw, 45px) clamp(20px, 0.612px + 2.041vw, 30px);
	background-color: #FFF;
	border: 1px solid #8B8F97;
	border-radius: 10px;
	text-align: center;
	box-shadow: 2px 2px 7px 0px rgba(0, 0, 0, 0.25);
	box-sizing: border-box;
}
#sec01 .sec01_numbers figure{
	margin-bottom: 40px;
}
#sec01 .sec01_numbers dl{
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #000;
	font-size: 100%;
	font-family: "Zen Old Mincho", serif;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 0 10px;
}
#sec01 .sec01_numbers dt{
	padding: 0 0 2px;
	font-size: clamp(16px, 6.306px + 1.02vw, 21px);
	line-height: 1.0;
	font-weight: bold;
}
#sec01 .sec01_numbers dd{
	font-size: clamp(16px, 6.306px + 1.02vw, 21px);
	line-height: 1.0;
	font-weight: bold;
}
#sec01 .sec01_numbers dd span{
	margin-right: 5px;
	font-size: clamp(43px, 23.612px + 2.041vw, 53px);
	line-height: 1.0;
	font-weight: 700;
	display: inline-block;
}
#sec01 .sec01_numbers_note{
	margin-left: 1em;
	font-size: clamp(12px, 6.184px + 0.612vw, 15px);
	line-height: 1.6;
	font-weight: 400;
	text-indent: -1em;
	text-align: left;
}
#sec01 .sec01_numbers .sec01_numbers_item.item-02 dl{
	gap: 0 5px;
}
#sec01 .sec01_numbers .sec01_numbers_item.item-02 dd span{
	letter-spacing: -0.07em;
}

#sec01 .bg02{
	padding: clamp(70px, 31.224px + 4.082vw, 90px) 20px clamp(140px, 81.837px + 6.122vw, 170px);
	background-color: var(--bg-color);
}
#sec01 .bg02 .areaIn{
	display: flex;
	gap: 0 56px;
}
#sec01 .bg02 .areaIn > div{
	width: calc(52% - 56px);
}
#sec01 .bg02 .areaIn figure{
	width: 48%;
}

#sec01 .bg02 h3{
	margin: 0 0 40px;
	padding: 0 0 20px;
	border-bottom: 1px solid #000;
	font-size: clamp(24px, 16.245px + 0.816vw, 28px);
	line-height: 1.4;
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
}


#sec02{
	padding: clamp(40px, 1.224px + 4.082vw, 60px) 20px clamp(140px, 62.449px + 8.163vw, 180px);
	position: relative;
}
#sec02::before{
	content: "";
	width: 100%;
	height: 61px;
	background-color: #FFF;
	position: absolute;
	top: -60px;
	left: 0;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
#sec02 .sec02_lineup{
	margin-bottom: clamp(70px, 31.224px + 4.082vw, 90px);
	font-size: 100%;
	display: flex;
	gap: 0 clamp(30px, -8.776px + 4.082vw, 50px);
}
#sec02 .sec02_lineup_logo{
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid #000;
}
#sec02 div.sec02_lineup_item .sec02_lineup_logo{
	margin-bottom: 10px;
	padding-bottom: 10px;
}

#sec02 .sec02_lineup li{
	width: calc((100% - clamp(30px, -8.776px + 4.082vw, 50px) * 2) / 3);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 25px 0;
}
#sec02 .sec02_lineup li.sec02_lineup_item figure{
	margin-bottom: 30px;
	border-radius: 5px;
	overflow: hidden;
}

#sec02 div.sec02_lineup_item{
	max-height: clamp(270px, calc(-328.77px - 4.08vw), 290px);
	display: flex;
}
#sec02 div.sec02_lineup_item > figure{
	width: 47%;
	border-radius: 5px 0 0 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}
#sec02 .lineup-mokurie > figure img{
	width: clamp(500px, 177.000px + 34vw, 585px);
	max-width: none;
	height: auto;
}
#sec02 div.sec02_lineup_item > div{
	width: 53%;
	padding: 0 clamp(30px, -8.776px + 4.082vw, 50px);
	background-color: #F0EBE1;
	border-radius: 0 5px 5px 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#sec02 div.sec02_lineup_item .sec02_lineup_logo p{
	margin-top: 5px;
	font-size: clamp(16px, 12.122px + 0.408vw, 18px);
	font-family: "Zen Old Mincho", serif;
}
#sec02 div.sec02_lineup_item ~ .btn01{
	margin-top: clamp(70px, 31.224px + 4.082vw, 90px);
}




#sec03{
	margin-bottom: 0;
	padding: 80px 20px clamp(80px, 2.449px + 8.163vw, 120px);
	background-color: var(--bg-color);
	position: relative;
}
#sec03::before{
	content: "";
	width: 100%;
	height: 61px;
	background-color: var(--bg-color);
	position: absolute;
	top: -60px;
	left: 0;
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
#sec03 .sec03_block{
	margin-bottom: clamp(60px, 1.837px + 6.122vw, 90px);
	display: flex;
	gap: 0 clamp(40px, 8.980px + 3.265vw, 56px);
}
#sec03 .sec03_block figure{
	width: 47.5%;
}
#sec03 .sec03_block > div{
	width: calc(52.5% - clamp(40px, 8.980px + 3.265vw, 56px));
}

#sec03 .sec03_movie_txt{
	font-size: 150%;
	font-weight: 700;
	text-align: center;
}
#sec03 .sec03_movie_txt span{
	display: inline-block;
	position: relative;
}
#sec03 .sec03_movie_txt span::before,
#sec03 .sec03_movie_txt span::after{
	content: "";
	width: 2px;
	height: 50px;
	background-color: #000;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#sec03 .sec03_movie_txt span::before{
	left: -30px;
	rotate: -30deg;
}
#sec03 .sec03_movie_txt span::after{
	right: -30px;
	rotate: 30deg;
}


#sec04{
	padding: 0 20px clamp(80px, 2.449px + 8.163vw, 120px);
	background-color: var(--bg-color);
	position: relative;
}
#sec04 .areaIn{
	padding: clamp(60px, -17.551px + 8.163vw, 100px) 0 0;
	position: relative;
}
#sec04 .areaIn::before{
	content: "";
	width: 100%;
	height: 2px;
	border-bottom: none;
	background: repeating-linear-gradient(
	to right,
	#222 0,
	#222 2px,
	transparent 2px,
	transparent 6px
	);
	background-size: 100% 2px;
	background-repeat: no-repeat;
	background-position: bottom;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
#sec04 .sec04_block{
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	gap: 0 clamp(40px, 8.980px + 3.265vw, 56px);
}
#sec04 .sec04_block figure{
	width: 47.5%;
}
#sec04 .sec04_block > div{
	width: calc(52.5% - clamp(40px, 8.980px + 3.265vw, 56px));
}
#sec04 .sec04_txt{
	font-size: clamp(18px, 12.184px + 0.612vw, 21px);
	font-weight: 700;
}




/* 会場検索（リスト）
------------------------------------------------------------------------------- */
.areaSearch{
	padding: clamp(50px, 11.224px + 4.082vw, 70px) 20px;
	background-color: #364E77;
}
.areaSearch h3{
	margin-bottom: 40px;
	font-size: clamp(22px, 18.122px + 0.408vw, 24px);
	color: #FFF;
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
	text-align: center;
}
.areaSearch ul{
	max-width: 1040px;
	margin: 0 auto;
	font-size: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 21px clamp(24px, 8.490px + 1.633vw, 32px);
}
.areaSearch li{
	width: calc((100% - clamp(24px, 8.490px + 1.633vw, 32px) * 3) / 4);
	font-size: clamp(14px, 10.122px + 0.408vw, 16px);
	font-weight: 700;
}
.areaSearch li span{
	margin-right: 0.2em;
	font-size: clamp(16px, 6.306px + 1.02vw, 21px);
	display: inline-block;
}
.areaSearch li a{
	padding: 7px 10px 7px clamp(40px, 20.612px + 2.041vw, 50px);
	background-color: #CBCCCF;
	text-decoration: none;
	text-align: center;
	position: relative;
	display: block;
}
.areaSearch li a::before{
	content: "";
	width: clamp(28px, 20.245px + 0.816vw, 32px);
	height: 22px;
	margin-right: 12px;
	background: url(../../images/rn/ico_search01.svg) left center no-repeat;
	background-size: clamp(16px, 6.306px + 1.02vw, 21px) auto;
	border-right: 1px solid #000;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 16px;
	transform: translateY(-50%);
}
.areaSearch li a:hover{
	background-color: #FFF;
}




/* 日本地図
------------------------------------------------------------------------------- */
#overWrapArea {
	width: 100%;
	max-width: clamp(742px, 583.020px + 16.735vw, 824px);
	margin: 0 auto;
}
.d_hover #overWrapArea.select-open {
	pointer-events: none;
}
#overWrapArea .overWrapArea_map{
	position: relative;
}
#overWrapArea .overWrapArea_map img{
	width: clamp(600px, 470.102px + 13.673vw, 667px);
	height: auto;
}
#overWrapArea .overWrapArea_map .searchArea_txt_note{
	margin: 0;
	font-size: clamp(13px, 9.122px + 0.408vw, 15px);
	position: absolute;
	left: clamp(435px, 357.449px + 8.163vw, 475px);
	bottom: 0;
}
#overWrapArea #selectBtn {
	font-size: 100%;
}
#overWrapArea #selectBtn li {
	width: clamp(200px, 130.204px + 7.347vw, 236px);
	height: clamp(40px, 20.612px + 2.041vw, 50px);
	padding-left: clamp(40px, 20.612px + 2.041vw, 50px);
	background-color: #CBCCCF;
	font-size: clamp(14px, 10.122px + 0.408vw, 16px);
	line-height: clamp(40px, 20.612px + 2.041vw, 50px);
	font-weight: 700;
	text-align: center;
	box-sizing: border-box;
	position: absolute;
	cursor: pointer;
}
#overWrapArea #selectBtn li:hover {
	background-color: #384C70;
	color: #FFF;
}
#overWrapArea #selectBtn li em{
	margin-right: 0.2em;
	font-size: 130%;
	display: inline-block;
}
#overWrapArea #selectBtn li.area_nodata {
	cursor: default;
}
#overWrapArea #selectBtn li::before {
	content: "";
	width: clamp(40px, 20.612px + 2.041vw, 50px);
	height: 21px;
	background: url(../../images/rn/ico_search01.svg) center center no-repeat;
	border-right: 1px solid #000;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#overWrapArea #selectBtn li:hover::before {
	background-image: url(../..//images/rn/ico_search01_w.svg);
	border-right: 1px solid #FFF;
}
#overWrapArea.sArea1 #selectBtn li.sArea1,
#overWrapArea.sArea2 #selectBtn li.sArea2,
#overWrapArea.sArea3 #selectBtn li.sArea3,
#overWrapArea.sArea4 #selectBtn li.sArea4,
#overWrapArea.sArea5 #selectBtn li.sArea5,
#overWrapArea.sArea6 #selectBtn li.sArea6,
#overWrapArea.sArea7 #selectBtn li.sArea7,
#overWrapArea.sArea8 #selectBtn li.sArea8,
#overWrapArea.sArea9 #selectBtn li.sArea9 {
	background-color: #384C70;
	color: #FFF;
}
#overWrapArea.sArea1 #selectBtn li.sArea1::before,
#overWrapArea.sArea2 #selectBtn li.sArea2::before,
#overWrapArea.sArea3 #selectBtn li.sArea3::before,
#overWrapArea.sArea4 #selectBtn li.sArea4::before,
#overWrapArea.sArea5 #selectBtn li.sArea5::before,
#overWrapArea.sArea6 #selectBtn li.sArea6::before,
#overWrapArea.sArea7 #selectBtn li.sArea7::before,
#overWrapArea.sArea8 #selectBtn li.sArea8::before,
#overWrapArea.sArea9 #selectBtn li.sArea9::before {
	background-image: url(../..//images/rn/ico_search01_w.svg);
	border-right: 1px solid #FFF;
}
#overWrapArea #selectBtn .sArea1 {
	top: clamp(206px, 147.837px + 6.122vw, 236px);
	right: clamp(0px, 58.776px - 4.082vw, 20px);
}
#overWrapArea #selectBtn .sArea2 {
	top: clamp(274px, 215.837px + 6.122vw, 304px);
	right: clamp(0px, 58.776px - 4.082vw, 20px);
}
#overWrapArea #selectBtn .sArea3 {
	top: clamp(393px, 305.755px + 9.184vw, 438px);
	right: clamp(0px, 58.776px - 4.082vw, 20px);
}
#overWrapArea #selectBtn .sArea4 {
	top: clamp(148px, 109.224px + 4.082vw, 168px);
	left: 148px;
}
#overWrapArea #selectBtn .sArea5 {
	top: clamp(461px, 373.755px + 9.184vw, 506px);
	right: clamp(0px, 58.776px - 4.082vw, 20px);
}
#overWrapArea #selectBtn .sArea6 {
	top: clamp(216px, 177.224px + 4.082vw, 236px);
	left: 148px;
}
#overWrapArea #selectBtn .sArea7 {
	top: clamp(274px, 215.837px + 6.122vw, 304px);
	left: clamp(0px, 58.776px - 4.082vw, 20px);
}
#overWrapArea #selectBtn .sArea8 {
	bottom: 0;
	left: 197px;
}
#overWrapArea #selectBtn .sArea9 {
	top: clamp(342px, 283.837px + 6.122vw, 372px);
	left: clamp(0px, 58.776px - 4.082vw, 20px);
}
#searchArea .fnOverWrap {
	display: none;
	position: absolute;
	top: 150px;
	left: 50%;
	width: 950px;
	padding: 50px 50px 150px;
	border-radius: 5px;
	background-color: #FFF;
	box-sizing: border-box;
	transform: translateX(-50%);
	box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.35);
}
#searchArea .fnOverWrap .fnTrigger {
	display: none;
}
#searchArea .fnOverWrap .fnTarget > ul {
	font-size: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 30px 37px;
}
#searchArea .fnOverWrap .fnTarget li span.cnt{
	margin-left: 0.5em;
}
#searchArea .fnOverWrap .fnTarget > ul > li {
	width: calc((100% - 37px * 3) / 4);
	color: #000;
	font-size: 175%;
	font-weight: 700;
}
#searchArea .fnOverWrap .fnTarget li span,
#searchArea .fnOverWrap .fnTarget li .disable span {
	font-size: 15px;
	font-weight: normal;
}
#searchArea .fnOverWrap .fnTarget li ul {
	margin-top: 10px;
	padding-top: 15px;
	border-top: 1px solid #000;
}
#searchArea .fnOverWrap .fnTarget li li {
	margin-bottom: 9px;
	font-size: 125%;
	position: relative;
}
#searchArea .fnOverWrap .fnTarget li li a {
	display: block;
	width: auto;
	height: 40px;
	padding-left: 64px;
	line-height: 40px;
	border-radius: 45px;
	background-color: #CBCCCF;
	color: #000;
	font-size: 15px;
	text-decoration: none;
	box-sizing: border-box;
}
#searchArea .fnOverWrap .fnTarget li li a:hover {
	background-color: #384C70;
	color: #FFF;
}
#searchArea .fnOverWrap .fnTarget li li .disable {
	display: block;
	width: auto;
	height: 40px;
	padding-left: 64px;
	line-height: 40px;
	border-radius: 45px;
	background-color: #CBCCCF;
	color: #000;
	font-size: 15px;
	box-sizing: border-box;
	opacity: 0.5;
	cursor: unset;
}
#searchArea .fnOverWrap .fnTarget li li a::before,
#searchArea .fnOverWrap .fnTarget li li .disable::before {
	content: "";
	width: 50px;
	height: 20px;
	background: url(../../images/rn/map/ico_map.svg) left 20px center no-repeat;
	border-right: 1px solid #000;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#searchArea .fnOverWrap .fnTarget li li.op_list a::before,
#searchArea .fnOverWrap .fnTarget li li.op_list .disable::before {
	background-image: url(../../images/rn/map/ico_list.svg);
}
#searchArea .fnOverWrap .fnTarget li li a:hover::before {
	background-image: url(../../images/rn/map/ico_map_w.svg);
	border-right: 1px solid #FFF;
}
#searchArea .fnOverWrap .fnTarget li li.op_list a:hover::before {
	background-image: url(../../images/rn/map/ico_list_w.svg);
}

#searchArea .fnOverWrap .fnTarget > div{
	width: 100%;
	padding: 0 50px 50px;
	display: flex;
	box-sizing: border-box;
	justify-content: space-between;
	position: absolute;
	bottom: 0;
	left: 0;
}
#searchArea .fnOverWrap .fnTarget .toList {
	min-width: 200px;
	margin: 0;
}
#searchArea .fnOverWrap#selectsArea4 .fnTarget .toList {
	min-width: 240px;
}
#searchArea .fnOverWrap .fnTarget .toList a {
	height: 40px;
	padding-left: 64px;
	border-radius: 45px;
	background-color: #CBCCCF;
	font-size: 15px;
	line-height: 40px;
	color: #000;
	font-weight: 700;
	text-decoration: none;
	display: block;
	box-sizing: border-box;
	position: relative;
}
#searchArea .fnOverWrap .fnTarget .toList a:hover{
	background-color: #384C70;
	color: #FFF;
}
#searchArea .fnOverWrap .fnTarget .toList a::before {
	content: "";
	width: 50px;
	height: 20px;
	background: url(../../images/rn/map/ico_list.svg) left 20px center no-repeat;
	border-right: 1px solid #000;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#searchArea .fnOverWrap .fnTarget .toList a:hover::before {
	background-image: url(../../images/rn/map/ico_list_w.svg);
	border-right: 1px solid #FFF;
}
#searchArea .fnOverWrap .fnTarget div.fnClose {
	width: 37px;
	height: 37px;
	background: url(../../images/rn/map/ico_close.svg) left top no-repeat;
	cursor: pointer;
	position: absolute;
	right: 50px;
	bottom: 50px;
}
#overWrapArea > .searchArea_txt_note{
	display: none;
}
#searchArea > .areaIn > .searchArea_txt_note{
	display: none;
}

@media only screen and (max-width: 1100px) {
	#searchArea .fnOverWrap {
		width: 860px;
		padding: 30px 30px 130px;
	}
	#searchArea .fnOverWrap .fnTarget > div{
		padding: 0 30px 40px;
	}
	#searchArea .fnOverWrap .fnTarget div.fnClose {
		right: 30px;
		bottom: 40px;
	}
}


/* ==

　スクロールイン演出

=============================================================================== */
#sec01 > .bg h2.heading01,
#sec01 > .bg .sec01_numbers_item,
#sec01 > .bg02 h3,
#sec01 > .bg02 figure,
#sec01 > .bg02 p.txt01,
#sec01 > .bg02 p.txt_note,
#sec02 h2.heading01,
#sec02 p.txt_lead,
#sec02 .sec02_lineup_item,
#sec02 > .areaIn > div.btn01,
#sec03 h2.heading02,
#sec03 .sec03_block figure,
#sec03 .sec03_block p.txt01,
#sec03 .sec03_block p.txt_note,
#sec03 p.sec03_movie_txt,
#sec03 .btn01,
#sec04 h2.heading02,
#sec04 .sec04_block figure,
#sec04 p.sec04_txt,
#sec04 .sec04_block p.txt01{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s cubic-bezier(.165,.84,.44,1), transform 1s cubic-bezier(.165,.84,.44,1);
}
#sec01 > .bg.is-active h2.heading01,
#sec01 > .bg.is-active .sec01_numbers_item,
#sec01 > .bg02.is-active h3,
#sec01 > .bg02.is-active figure,
#sec01 > .bg02.is-active p.txt01,
#sec01 > .bg02.is-active p.txt_note,
#sec02.is-active h2.heading01,
#sec02.is-active p.txt_lead,
#sec02.is-active .sec02_lineup_item,
#sec02.is-active > .areaIn > div.btn01,
#sec03.is-active h2.heading02,
#sec03.is-active .sec03_block figure,
#sec03.is-active .sec03_block p.txt01,
#sec03.is-active .sec03_block p.txt_note,
#sec03.is-active p.sec03_movie_txt,
#sec03.is-active .btn01,
#sec04.is-active h2.heading02,
#sec04.is-active .sec04_block figure,
#sec04.is-active p.sec04_txt,
#sec04.is-active .sec04_block p.txt01{
	opacity: 1;
	transform: translate(0, 0);
}

/* #sec01 > .bg */
#sec01 > .bg .sec01_numbers_item:nth-child(1){ transition-delay: .15s; }
#sec01 > .bg .sec01_numbers_item:nth-child(2){ transition-delay: .3s; }
#sec01 > .bg .sec01_numbers_item:nth-child(3){ transition-delay: .45s; }

/* #sec01 > .bg02 */
#sec01 > .bg02 figure{ transition-delay: .15s; }
#sec01 > .bg02 p.txt01{ transition-delay: .3s; }
#sec01 > .bg02 p.txt_note{ transition-delay: .45s; }

/* #sec02 */
#sec02 p.txt_lead{ transition-delay: .2s; }
#sec02 li.sec02_lineup_item:nth-child(1){ transition-delay: .4s; }
#sec02 li.sec02_lineup_item:nth-child(2){ transition-delay: .6s; }
#sec02 li.sec02_lineup_item:nth-child(3){ transition-delay: .8s; }
#sec02 > .areaIn > div.sec02_lineup_item{ transition-delay: 1.2s; }
#sec02 > .areaIn > div.btn01{ transition-delay: 1.6s; }

/* #sec03 */
#sec03 .sec03_block figure{ transition-delay: .15s; }
#sec03 .sec03_block p.txt01{ transition-delay: .3s; }
#sec03 .sec03_block p.txt_note{ transition-delay: .45s; }
#sec03 p.sec03_movie_txt{ transition-delay: .6s; }
#sec03 .btn01{ transition-delay: .75s; }

/* #sec04 */
#sec04 .sec04_block figure{ transition-delay: .15s; }
#sec04 p.sec04_txt{ transition-delay: .3s; }
#sec04 .sec04_block p.txt01{ transition-delay: .45s; }

/* .mv */
.mv .mv_imgs,
.mv .mv_docs h1,
.mv .mv_docs > div{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s cubic-bezier(.165,.84,.44,1), transform 1s cubic-bezier(.165,.84,.44,1);
}
.mv.is-active .mv_imgs,
.mv.is-active .mv_docs h1,
.mv.is-active .mv_docs > div{
	opacity: 1;
	transform: translate(0, 0);
}
.mv .mv_docs h1{ transition-delay: .15s; }
.mv .mv_docs > div{ transition-delay: .3s; }

/* .leadBlock */
.leadBlock{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s cubic-bezier(.165,.84,.44,1), transform 1s cubic-bezier(.165,.84,.44,1);
}
.leadBlock.is-active{
	opacity: 1;
	transform: translate(0, 0);
}

/* #searchArea */
#searchArea .searchArea_docs,
#searchArea #overWrapArea{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s cubic-bezier(.165,.84,.44,1), transform 1s cubic-bezier(.165,.84,.44,1);
}
#searchArea.is-active .searchArea_docs,
#searchArea.is-active #overWrapArea{
	opacity: 1;
	transform: translate(0, 0);
}
#searchArea #overWrapArea{ transition-delay: .15s; }

/* .areaSearch（2か所とも） */
.areaSearch h3,
.areaSearch ul{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1s cubic-bezier(.165,.84,.44,1), transform 1s cubic-bezier(.165,.84,.44,1);
}
.areaSearch.is-active h3,
.areaSearch.is-active ul{
	opacity: 1;
	transform: translate(0, 0);
}
.areaSearch ul{ transition-delay: .15s; }
