@charset "utf-8";
/* PC/スマホ共通表示 */

.-----PC_MOBILE_COMMON_CSS_START----- {}

* {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
	font-style: normal;
	box-sizing:border-box;
}
body {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	font-size: 15px;
	line-height: 170%;
	color: #000;
	background-color: #fff9d5;
}

figure {
	display:block;
	line-height:0;
}

img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	max-width:100%;
	height:auto;
}
table {
	border-collapse: collapse;
}
a:link,
a:visited {
	text-decoration: none;
	color: #0066CC;
}
a:hover,
a:active {
	text-decoration: underline;
	color: #FF6600;
}
.clear {
	clear: both;	
}

.mobile_nowrap {
	display: inline;
}
.pc_nowrap {
	display: none;
}
.mobile_only {
	display:none;
}
.pc_only {
	display: block;
}
.kakko_pre {
	display:inline-block;
	text-indent:-0.5em;
}

.fadeIn {
	transition: 1s;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	top: -1px;
	left: 0px;
	white-space: nowrap;
}
.fadeIn.on {
	opacity:1.0;
	top: 0;
}


.fadeInTop {
	transition: 1s;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	bottom: 30px;
	left: 0px;
}
.fadeInTop.on {
	opacity:1.0;
	bottom: 0;
}

.fadeInBottom {
	transition: 1s;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	top: 30px;
	left: 0px;
}
.fadeInBottom.on {
	opacity:1.0;
	top: 0;
}

.fadeInRight {
	transition: 1s;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	top: 0px;
	left: 50px;
}
.fadeInRight.on {
	opacity:1.0;
	left: 0;
}

.fadeInLeft {
	transition: 1s;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	top: 0px;
	right: 50px;
}
.fadeInLeft.on {
	opacity:1.0;
	right: 0;
}
.iw {
	margin-left: 0px !important;
}


.header {
	width: 500px;
	position:absolute;
	left:0px;
	top:0px;
	z-index:700;
}
.header .logo {
	line-height: 0;
	transition: 0.7s;
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 55px;
}
.header .logo img {
	width:250px;
	height:auto;
}
#intro {
	box-sizing:border-box;
	position: fixed;
	width: 100%;
	min-width: 1100px;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index:501;
	background-color: #fff9d5;
	padding-top:155px;
}
#intro h1 {
	width: 100%;
	font-size: 34px;
	line-height: 140%;
	color: #666666;
	text-align: center;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight:bold;
}
#intro .body {
	padding-top:50px;
	width:100%;
	display:flex;
	align-content:center;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
}
#intro .egg {
	margin-left:332px;
	width:824px;
	position:relative;
	cursor:pointer;
	text-align:center;
	line-height:0px;
}
#intro .egg .enter {
	position: absolute;
	top: 85px;
	right: 0px;
	transition:0.4s;
}
#intro .egg:hover .enter {
	opacity:0.6;
}
#intro .list {
	box-sizing: border-box;
	margin-left: 25px;
	width: 307px;
	background-color: #FFFFFF;
	border-radius:8px;
	padding:35px;
}
#intro .list ul li {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: 20px;
	line-height: 130%;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 1em;
	color:#666;
}
#intro .list ul li:last-child {
	margin-bottom: 0;
}
#intro .list ul li a {
	color:#666;
	text-decoration:none;
}
#intro .list ul li a:hover {
	color:#F90;
}

#opening {
	position: fixed;
	width: 100%;
	min-width: 1100px;
	height: 100dvh;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index:500;
	background-color: #fff9d5;
}
.video {
	position: absolute;
	top: 0px;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
	background-color: #fff9d5;
	text-align:center;
}
.video video{
	position: absolute;
	top: 96px;
	left: calc((100% - 1500px) / 2);

}
#wrapper {
	box-sizing:border-box;
	position: relative;
	z-index:0;
	background-color: #fff9d5;
	padding-top:95px;
	width:100%;
	min-height:100dvh;
}
#main {
	width: 100%;
	min-width: 1100px;
	max-width: 1500px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 70px;
	margin-bottom:70px;
}
#main #map {
	background-image: url(../img/map.png);
	background-repeat: no-repeat;
	background-position: center top;
	height: 988px;
	width: 100%;
}
#main #map .marker {
	height: 988px;
	width: 1100px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
#main #map .marker li {
	position:absolute;
	width:32px;
	height:47px;
}
#main #map .marker li a {
	position: relative;
	display:block;
	text-decoration:none;
	height:47px;
}
#main #map .marker li img {
	position:absolute;
	top:0px;
	left:0px;
	transition:0.3s;
	opacity:1;
}
#main #map .marker li:hover img {
	opacity:0;
	transform:scale(1.3,1.3);
}
#main #map .marker li.marker01 {
	left:71px;
	top:295px;
}
#main #map .marker li.marker02 {
	left:144px;
	top:210px;
}
#main #map .marker li.marker03 {
	left:219px;
	top:308px;
}
#main #map .marker li.marker04 {
	left:312px;
	top:443px;
}
#main #map .marker li.marker05 {
	left:533px;
	top:195px;
}
#main #map .marker li.marker06 {
	left:600px;
	top:65px;
}
#main #map .marker li.marker07 {
	left:630px;
	top:272px;
}
#main #map .marker li.marker08 {
	left:754px;
	top:125px;
}
#main #map .marker li.marker09 {
	left:796px;
	top:332px;
}
#main #map .marker li.marker10 {
	left:899px;
	top:126px;
}
#main #map .marker li.marker11 {
	left:1062px;
	top:97px;
}
#main #map .marker li a .comment {
	box-sizing:border-box;
	white-space:nowrap;
	display: block;
	background-color: #3EB370;
	padding-top: 10px;
	padding-bottom:10px;
	border-radius: 6px;
	opacity: 0;
	transition: 0.4s;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	line-height: 120%;
	color:#FFF;
	position: absolute;
	left:0px;
	bottom:0px;
	transform-origin:center center;
	transform:scale(0.4,0.4);
}
#main #map .marker li a .comment.blue {
	background-color: #1D84B6;
}
#main #map .marker li a .comment.orange {
	background-color: #CD7D1D;
}
#main #map .marker li a .comment.green {
	background-color: #3EB370;
}
#main #map .marker li:hover .comment {
	opacity:1;
	transform:scale(1,1);
}

#main #map .marker li.marker01 a .comment {
	width:164px;
	left:calc(16px - 82px);
}
#main #map .marker li.marker02 a .comment {
	width:150px;
	left:calc(16px - 75px);
}
#main #map .marker li.marker03 a .comment {
	width:134px;
	left:calc(16px - 67px);
}
#main #map .marker li.marker04 a .comment {
	width:204px;
	left:calc(16px - 102px);
}
#main #map .marker li.marker05 a .comment {
	width:136px;
	left:calc(16px - 68px);
}
#main #map .marker li.marker06 a .comment {
	width:144px;
	left:calc(16px - 72px);
}
#main #map .marker li.marker07 a .comment {
	width:144px;
	left:calc(16px - 72px);
}
#main #map .marker li.marker08 a .comment {
	width:112px;
	left:calc(16px - 56px);
}
#main #map .marker li.marker09 a .comment {

}
#main #map .marker li.marker10 a .comment {
	width:130px;
	margin-left:calc(16px - 65px);
}
#main #map .marker li.marker11 a .comment {
	width:158px;
	margin-left:calc(16px - 79px);
}


#main .return_top {
	position: absolute;
	transition: 0.4s;
	display: block;
	text-align: center;
	line-height: 42px;
	width: 323px;
	padding-top:2px;
	background-color: #FF9900;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	border-radius: 5px;
	cursor: pointer;
	top: 50px;
	right: 50px;
	color: #F9F9F9;
}
#main .return_top:hover {
	opacity:0.6;
}

#content_bg {
	display:none;
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 999999998;
	background-color:rgba(0,0,0,0.5);
}
#content_bg .close_screen {
	height: 100dvh;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 1;
}
#content_window {
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 999999999;
	display:flex;
	align-content:center;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
}

#content_window .window {
	width: calc(100% - 40px);
	max-width: 1080px;
	background-color: #FFF;
	padding: 35px;
	margin-right: auto;
	margin-left: auto;
	border-radius: 30px;
	position: relative;
	transition: 0.4s;
	position: relative;
	z-index: 2;
	color: #735858;
}
#content_window .window .content .ttl_01 {
	box-sizing: border-box;
	width: calc(100% - 70px);
	background-repeat: no-repeat;
	background-position: left center;
	margin-right: 50px;
	margin-left: 20px;
	margin-bottom:13px;
	padding-left: 160px;
	line-height: 110%;
	font-weight: normal;
	height: 115px;
	display:flex;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	display:flex;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#content_window .window .content .ttl_01 strong {
	box-sizing: border-box;
	min-height:80px;
	display: inline-block;
	align-content: center;
	align-items:center;
	font-family: 'Zen Kurenaido', sans-serif;
	font-weight: bold;
	font-style: normal;
	font-size: 33px;
	color: #FFF;
	text-shadow: -0.1px 0 #FFF, 0.1px 0 #FFF, 0 0.1px #FFF, 0 -0.1px #FFF;
	line-height: 120%;
	padding-top: 10px;
	padding-right: 30px;
	padding-bottom: 10px;
	padding-left: 30px;
	margin-bottom:10px;
}
#content_window .window .content.type1 .ttl_01 {
	background-image: url(../img/signpost1.png);
}
#content_window .window .content.type2 .ttl_01 {
	background-image: url(../img/signpost2.png);
}
#content_window .window .content.type3 .ttl_01 {
	background-image: url(../img/signpost3.png);
}
#content_window .window .content.type1 .ttl_01 strong {
	background-color: #E6A34F;
}
#content_window .window .content.type2 .ttl_01 strong {
	background-color: #239DDA;
}
#content_window .window .content.type3 .ttl_01 strong{
	background-color: #3EB370;
}
#content_window .window .content .soon {
	font-size:45px;
	font-weight:normal;
	text-align:center;
	line-height:380px;
}
#content_window .window .content .wrapper {
	box-sizing:border-box;
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding-left:28px;
	padding-bottom:15px;
	max-height:470px;
	position:relative;
	overflow-y:auto;
	padding-right:20px;
}
#content_window .window .content .body {
	box-sizing:border-box;
	order:2;
	width:570px;
	font-size:18px;
	line-height:200%;
}
#content_window .window .content .body .ttl_02 {
	border-left-width: 8px;
	border-left-style: solid;
	padding-left: 15px;
	font-size: 24px;
	line-height: 130%;
	font-weight: normal;
	margin-bottom: 15px;
}
#content_window .window .content.type1 .ttl_02 {
	border-left-color: #E6A34F;
}
#content_window .window .content.type2 .ttl_02 {
	border-left-color: #239DDA;
}
#content_window .window .content.type3 .ttl_02{
	border-left-color: #3EB370;
}
#content_window .window .content .body p {
	margin-bottom: 1em;
}
#content_window .window .content .body > ul {
	margin-top: 3em;
	font-size:16px;
	line-height:180%;
	color:#666666;
	
}
#content_window .window .content .body > ul li {
	margin-bottom: 1.5em;
	
}
#content_window .window .content .body .orange {
	color:#FF6600;
}
#content_window .window .content .body > .ex {
	background-color: #FDF5EA;
	color: #725858;
	padding-top: 25px;
	padding-right: 22px;
	padding-bottom: 25px;
	padding-left: 22px;
}
#content_window .window .content .body > .ex p:last-child {
	margin-bottom: 0;
}
#content_window .window .content .body table {
	box-sizing:border-box;
	width:100%;
	
	line-height:150%;
	margin-top:1em;
}
#content_window .window .content .body table th,
#content_window .window .content .body table td {
	box-sizing:border-box;
	border: 1px solid #CCC;
	padding:5px;
}
#content_window .window .content .body table th {
	background-color:#FCF1DE;
}
#content_window .window .content .body table td {
	padding-left:1em;
	padding-right:1em;
}
#content_window .window .content .add {
	order:1;
	width:340px;
}
#content_window .window .content .add figure {
	box-sizing: border-box;
	width:100%;
	display:block;
	line-height:0px;
	text-align:center;
	min-height:250px;
}

#content_window .window .content .add figure img {
	max-width:100%;
	height:auto;
}
#content_window .window #content01 .add figure img:nth-of-type(3) {
	margin-top:15px;
}
#content_window .window #content03 .add figure img {
	width:322px;
	height:auto;
	margin-bottom:10px;
}
#content_window .window #content03 .add figure figcaption {
	display:inline-block;
	box-sizing:border-box;
	width: 322px;
	font-size: 15px;
	line-height: 150%;
	color: #735858;
	padding-left: 1em;
	text-indent: -1em;
	text-align:left;
}
#content_window .window #content04 .add figure img {
	width:100%;
	height:auto;
	margin-bottom:9px;
}
#content_window .window #content04 .add figure img:last-child {
	margin-bottom:0px;
}
#content_window .window #content07 .add figure {

}
#content_window .window #content08 .add figure img {
	width:100%;
	height:auto;
}
#content_window .window .content .add .text {
	box-sizing: border-box;
	width: 100%;
	display: block;
	background-color: #FCF1DE;
	border-radius:7px;
	padding: 22px;
	font-size:14px;
	line-height:160%;
}
#content_window .window .content .add .text h5 {
	font-size:100%;
}
#content_window .close_btn {
	background-image: url(../img/close.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	height: 38px;
	width: 38px;
	position: absolute;
	top: 35px;
	right: 35px;
	cursor: pointer;
	background-color: #8B8B8B;
	border-radius:7px;
	transition:0.4s;
}
#content_window .close_btn:hover {
	opacity:0.7;
}

#kpi .sub_title_02 {
	box-sizing: border-box;
	font-size: 30px;
	line-height: 120%;
	font-weight: normal;
	color: #333333;
	width: 100%;
	margin-bottom:10px;
}
#kpi iframe {
	box-sizing: border-box;
	width:100%;
	height:525px;
}

.-----PC_MOBILE_COMMON_CSS_END----- {}

/* スマートフォン用CSS */
@media screen and (max-width: 750px) {
	
.-----MOBILE_ONLY_CSS_START----- {}


body {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	font-size: 26px;
	line-height: 170%;
	width: 750px;
}


img {
	max-width:100%;
	height:auto;
}
br.pc_nowrap {
	display: inline;
}
br.mobile_nowrap {
	display: none;
}

.mobile_only {
	display:block;
}
.pc_only {
	display: none;
}
.sp_tsume {
	text-indent:-0.5em;
	display:inline-block;
}

.header {
	position: absolute !important;
	width: 450px;
}
.header .logo {
	padding-top: 40px;
	padding-left: 40px;
}
.header .logo img {
	width:370px;
	height:auto;
}

#intro {
	position: absolute !important;
	min-height: 100dvh;
	height:auto;
	width: 750px;
	min-width: 750px;
	padding-top:150px;
	overflow: auto;
}
#intro h1 {
}
#intro .body {
	padding-top:30px;
	width:100%;
}
#intro .egg {
	margin-left:0px;
	width:750px;
}
#intro .egg .enter {
	top: 40px;
	right: 55px;
	transition:none;
}
#intro .list {
	margin-top:40px;
	margin-left: 0px;
	width: 525px;
	border-radius:10px;
	text-align:center;
}
#intro .list ul {
	display:inline-block;
	text-align: left;
}
#intro .list ul li {
	font-size: 24px;
	line-height: 120%;
	margin-bottom:0.8em;
}



#opening {
	min-width: 100%;
}
.video video{
	top: 120px;

}
#wrapper {
	width:750px;
	overflow: scroll;
	padding-top:105px;
	min-height: 100dvh;
	height:auto;
}
#main {
	width: 750px;
	min-width:750px;
	max-width:750px;
	height: 1070px;
	overflow-x: scroll;
	overflow-y: hidden;
	position: relative;
	margin-top:10px;
}
#main #map {
	width:1600px;
	transform-origin:left top;
	transform:scale(1.1,1.1);
	background-position: center top;
	
}
#main #map .marker li .comment {
	display:none !important;
}
#main #map .marker li:hover .comment {
	opacity:0 !important;
}
#main .return_top {
	position: fixed !important;
	transition: none;
	line-height: 110%;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	text-align:left;
	width: 266px;
	height:70px;
	padding-top:0px;
	font-size: 26px;
	border-radius:10px;
	top: 35px;
	right: 30px;
}

#content_bg {
	display:none;
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 999999998;
	background-color:rgba(0,0,0,0.5);
}
#content_bg .close_screen {
	height: 100dvh;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 1;
}
#content_window {
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 999999999;
	display:flex;
	align-content:center;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
}

#content_window .window {
	box-sizing:border-box;
	width: 750px;
	max-width: 750px;
	max-height: 100dvh;
	height: 100dvh;
	border-radius: 0px;
	padding-top: 155px;
	padding-right: 50px;
	padding-bottom: 50px;
	padding-left: 55px;
	position:relative;
	overflow-y: scroll;
}
#content_window .window .content .ttl_01 {
	width: 100%;
	margin-right: 0px;
	margin-left:0px;
	margin-bottom:30px;
	padding-left: 160px;
	line-height: 110%;
	font-weight: normal;
	height: 115px;
}
#content_window .window .content .ttl_01 strong {
	min-height:80px;
	font-size: 35px;
	padding-top: 10px;
	padding-right: 25px;
	padding-bottom: 15px;
	padding-left: 25px;
	margin-bottom:15px;
}
#content_window .window .content .soon {
	font-size:70px;
	height: calc(100dvh - 410px);
	width:100%;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
}
#content_window .window .content .wrapper {
	width:100%;
	padding:0px;
	max-height: inherit;
	position:relative;
	padding-right:0px;
}
#content_window .window .content .body {
	box-sizing:border-box;
	order:1;
	width:100%;
	font-size:26px;
	line-height:200%;
	margin-bottom:20px;
}
#content_window .window .content .body .ttl_02 {
	border-left-width: 11px;
	padding-left: 20px;
	font-size: 34px;
	font-weight: bold;
	margin-bottom: 20px;
}
#content_window .window .content .body > ul {
	font-size:24px;
	line-height:180%;
	
}
#content_window .window .content .body > .ex {
	padding: 30px;
	padding-bottom:35px;
}
#content_window .window .content .body table {
	font-size:24px;
}
#content_window .window .content .body table th,
#content_window .window .content .body table td {
	padding-top:10px;
	padding-bottom:10px;
}

#content_window .window .content .add {
	order:2;
	width:100%;
}
#content_window .window .content .add figure {
	box-sizing: border-box;
	width:100%;
	display:block;
	line-height:0px;
	text-align:center;
	height: auto;
	padding-top:30px;
	padding-bottom:30px;
}

#content_window .window #content01 .add figure img:nth-of-type(1) {
	width:480px;
	height:auto;
}
#content_window .window #content01 .add figure img:nth-of-type(2) {
	width:240px;
	height:auto;
}
#content_window .window #content01 .add figure img:nth-of-type(3) {
	width:480px;
	height:auto;
}
#content_window .window #content03 .add figure img {
	width:480px;
	height:auto;
	margin-bottom:20px;
}
#content_window .window #content03 .add figure figcaption {
	width: 480px;
	font-size: 22px;
	line-height: 150%;
}
#content_window .window #content04 .add figure img {
	width:480px;
	height:auto;
	margin-bottom:20px;
}
#content_window .window #content07 .add figure img {
	width:180px;
	height:auto;
}
#content_window .window #content08 .add figure img {
	width:480px;
	height:auto;
}
#content_window .window .content .add .text {
	border-radius:10px;
	padding: 30px;
	font-size:25px;
	line-height:160%;
}
#content_window .close_btn {
	height: 71px;
	width: 71px;
	top: 39px;
	right: 39px;
	border-radius:10px;
	transition:none;
}

#kpi .sub_title_02 {
	font-size: 48px;
	line-height: 120%;
	margin-bottom:10px;
	margin-top:-100px;
}
#kpi iframe {
	box-sizing: border-box;
	width:100%;
	height:calc(100dvh - 230px);
}


.-----MOBILE_ONLY_CSS_END----- {}

	
}
