@charset "UTF-8";
/* CSS Document */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; 
}

html, body {
  font-size: 62.5%;
  height: 100%;
  padding: 0;
  margin: 0;
  scroll-behavior: smooth;
}

body {
  text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: 2;
  color: #fff;
  letter-spacing: 0.15em;
  font-size: 1.6rem;
	font-family: 'Noto Serif JP', serif;
  font-weight: 400;
	background: #29143f;
}

h1, h2, h3, h4, p, dl, dt, dd, img, a, div {
  padding: 0;
  margin: 0; 
}

ul, ul > li {
  margin: 0;
  padding: 0;
  list-style-type: none; 
}

h2 {
	font-size: 3rem;
	font-weight: normal;
	margin-bottom: 1em;
	text-align: center
}

h3 {
	margin-bottom: 1em;
}

img {
  width: 100%;
  height: auto;
  vertical-align: top
}
a {
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear
}
table {
	border-collapse: collapse;
	color: #000;
	width: 100%;
	max-width: 854px;
	margin: 0 auto;
	border: solid #ddd 1px;
	border-width: 0 0 1px 1px;
}
th {
	background: #fff;
	padding: 20px 30px;
	border: solid #ddd 1px;
	border-width: 0 1px 1px 0;
	vertical-align: top;
}
td {
	padding: 20px 30px;
	background: #fff;
	border: solid #772c7f;
	border: solid #ddd 1px;
	border-width: 0 1px 1px 0;
	text-align: center
}
.table-1 {
	border: solid #ddd;
	border-width: 1px 1px 0 0;
	width: 100%;
}
.table-1 th,
.table-1 td{
	border: solid #ddd;
	padding: 5px 5px 6px 10px;
	text-align: left;
	font-size: 1.4rem;
}
.table-1 th {
	background: #eee;
	border-width: 0 0 1px 1px;
	width: 35%;
}
.table-1 td {
	border-width: 0 0 1px 1px;
}

section {
	margin-bottom: 60px;
}
@media (min-width: 751px){
	.sp {
		display: none!important;
	}
}
@media (max-width: 750px){
	.pc {
		display: none!important;
	}
	.table-1 th,
	.table-1 td {
		display: block;
		width: 100%;
	}
}


/*-----------------------------------------------------------------------------------

header

-----------------------------------------------------------------------------------*/
header {
	display: none;
	/*
	padding: 15px;
	background: #fff;
	*/
}
h1 {
	width: 200px;
	line-height: 1
}


/*-----------------------------------------------------------------------------------

footer

-----------------------------------------------------------------------------------*/
#footer {
	text-align: center;
	color: #fff;
	padding:60px 5%;
}
#footer .fnav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom:1.2em;
}
#footer .sub_nav {
	margin-bottom: 3em;
}
#footer li{
	border-right:solid 1px #fff;
	position: relative;
}
#footer li:last-child{
	border:none;
}
#footer a {
	color: #fff;
	display: block;
	line-height: 1;
	padding: 3px 20px;
}
#footer .sub_nav a {
	font-size: 1.3rem;
	line-height: 1;
}
#footer .fnav img {
	width: auto;
	height: 18px;
}
#footer .copyright {
	font-size: 1.4rem;
	letter-spacing: 0.03em;
}
#page-top {
	position: fixed;
	width: 60px;
	right: 20px;
	bottom: 10%;
	z-index: 10;
	opacity: 0;
}
#page-top a:hover {
	transform: translateY(-5px);
}
#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
  }
  to {
  	opacity: 0;
  }
}
@media (max-width: 750px){
	#footer .fnav{
		display: none;
	}
	#page-top {
		display: none;
	}
}


/*-----------------------------------------------------------------------------------

スマホナビ

-----------------------------------------------------------------------------------*/
#g-nav{
    position:fixed;
	z-index: -1;
	opacity: 0;
	top:0;
	width:100%;
    height: 100vh;
	background:#000;
	transition: all 0.3s;
}
#g-nav.panelactive{
	opacity: 1;
	z-index:999;
}
#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
/*ナビゲーション*/
#g-nav ul {
    display: none;
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
#g-nav.panelactive ul {
    display: block;
}
/*リストのレイアウト設定*/
#g-nav li{
	list-style: none;
    text-align: center; 
}
#g-nav li img{
	width: auto;
	height: 20px;
}
#g-nav li a{
	color: #fff;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}
/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:10px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
	background: #000;
	border-radius: 50%;
	border: solid 1px #fff;
}
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 2px;
    border-radius: 2px;
	background-color: #fff;
  	width: 45%;
  }
.openbtn span:nth-of-type(1) {
	top:16px;	
}
.openbtn span:nth-of-type(2) {
	top:24px;
}
.openbtn span:nth-of-type(3) {
	top:32px;
}
.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 17px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}
.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 17px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}


/*-----------------------------------------------------------------------------------

home

-----------------------------------------------------------------------------------*/
.main .inner {
	position: relative;
    max-width: 1000px;
    margin:0 auto 50px;
}
.main__image {
	position: relative;
	width:100%;
}
.main__mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index:3
}
.main__mask img {
	display: block;
	width: 100%;
	height:auto;
}
.main .mask__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	overflow: hidden;
	height: 100%;
	z-index:2
}		
.slider li {
	object-fit: cover;
	width: 80%;
	height: 60%
}
.mv_img {
	animation: mv_img 5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
 .main .mask__bg .bg__item::before {
	 content: "";
	 position: absolute;
	 width: 94%;
	 height: 100%;
}
.main .mask__bg .bg__item:nth-child(2) {
	padding-bottom: 100%;
}
.main .mask__bg .bg__item:nth-child(2)::before{
	animation: bg_a 5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	background: #fff;/*ff543a*/
	height: 59%;
	top: 0;
	left: 3%;
	transform-origin: left center;
}
.main .mask__bg .bg__item:nth-child(3) {
    padding-bottom: 100%;
}
.main .mask__bg .bg__item:nth-child(3)::before{
	animation: bg_b 5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	top:59%;
	right: 5%;
	background: #fff;/*ff543a*/
	transform-origin: right center;
}
.main .mask__bg .bg__item:nth-child(1)::after {
	animation: bg_2 5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	background: #29143f;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}		
@keyframes bg_a {
  0% {
	  opacity: 0;
	  transform: scaleX(0) translateX(0);
	}
  40% {
	  opacity: 1;
	  transform: scaleX(1) translateX(0);
	}
  75%{
	  opacity: 1;
	}
  100%{
	  opacity: 0;
	}
  5% {
	  opacity: 1;
	}
}
@keyframes bg_b {
  0% {
	  opacity: 0;
	  transform: scaleX(0) translateX(0);
	}
  38% {
	  opacity: 1;
	  transform: scaleX(0) translateX(0);
	}
  75% {
	  opacity: 1;
	  transform: scaleX(1) translateX(0);
	}
  100%{
	  opacity: 0;
	}
}
@keyframes bg_2 {
	0% {
	  opacity: 0;
	}
	3%{
		opacity: 1;
	}
	70% {
		opacity: 1;
	}
	100%{
		opacity: 0;
	}
}
@keyframes mv_img {
	0% {
	  opacity: 0;
	}
	10%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
img{
	width: 100%;
	height: auto
}		
#contents {
	max-width: 1000px;
	margin: 0 auto;
}
#lead {
	max-width: 900px;
	margin: 0 auto 80px;
	padding: 0 80px;
}				
#lead .note {
	width: 80%;
	margin: 30px auto;
}
#lead .information {
	font-size: 3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 160px;
	margin: 50px auto;
	background: url("../../images/atami-hihoukan/home/info_bg.png") no-repeat 50%/contain;
}
#concept {
	background: url("../../images/atami-hihoukan/home/concept_bg.jpg");
	padding-top: 120px;
	display: flex;
	justify-content: flex-end;
	margin-bottom: 100px;
}

#concept h2 {
	width: 80%;
	max-width: 520px;
	margin: 0 auto 30px;
}

#concept .concept_img_1 {
	position: absolute;
	top:-48px;
	left: -7px;
	height: 40px;
	width: auto;
}
#concept .concept_img_2 {
	position: absolute;
	top:-71px;
	right: 40px;
	height: 62px;
	width: auto;
}
#concept section {
	background: #29143f;
	width: calc(100% - 100px);
	padding: 40px 30px 30px 60px;
	position: relative;
	margin-bottom: 0;
}
#concept section::before{
	content: "";
	background: #e73324;
	height: 4px;
	width: calc(100% + 7px);
	position: absolute;
	top: -10px;
	left: -7px;
}
#concept section::after{
	content: "";
	background: #e73324;
	width: 1px;
	height: calc(100% + 10px);
	position: absolute;
	top: -10px;
	left: -7px;
}
#topics {
	background: url("../../images/atami-hihoukan/home/topics_bg.jpg") no-repeat 50% 0;
	padding-top: 120px;
	margin-bottom: 100px;
	display: flex;
	justify-content: flex-start;
}
#topics dl {
	display: flex;
	align-items: center;
	border-bottom: solid 1px #fff;
	padding-bottom: 8px;
	margin-bottom: 8px;
}
#topics dt {
	width: 80px;
	margin-right: 20px;
}
#topics dt span {
	border: solid 1px #fff;
	display: block;
	font-size: 1.2rem;
	text-align: center
}
#topics dd small {
	display: flex;
	font-size: 1.4rem;
}
#topics section {
	background: #29143f;
	width: calc(100% - 100px);
	padding: 40px 40px 40px 40px;
	position: relative;
	margin-bottom: 0;
}
#topics section::before{
	content: "";
	background: #335989;
	height: 4px;
	width: calc(100% + 7px);
	position: absolute;
	top: -10px;
	right: -7px;
}
#topics section::after{
	content: "";
	background: #335989;
	width: 1px;
	height: calc(100% + 10px);
	position: absolute;
	top: -10px;
	right: -7px;
}
#topics .topics_img_1 {
	position: absolute;
	top:-48px;
	right: 0;
	height: 40px;
	width: auto;
}
#topics .topics_img_2 {
	position: absolute;
	top:-71px;
	left: 40px;
	height: 62px;
	width: auto;
}
#topics .btn_archive {
	margin-top: 30px;
}
#topics a {
	color: #fff;
}
#banners ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto 80px;
}
#banners .banner {
	padding: 20px;
	overflow: hidden;
	width: calc(100%/4 - 10px);
	position: relative;
}
#banners a {
	display: block;
	text-align: center;
}
.banner::after{
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	-webkit-transition: all 0.3s linear;
	transition: all 0.3s linear
}
.banner:hover::after {
-moz-transform: scale(1.08);
-webkit-transform: scale(1.08);
-ms-transform: scale(1.08);
transform: scale(1.08);
}

.b_kannai::after {
	background: url("../../images/atami-hihoukan/home/banner_01_bg.jpg") no-repeat 50%/cover;
}

.b_goods::after {
	background: url("../../images/atami-hihoukan/home/banner_02_bg.jpg") no-repeat 50%/cover;
}
.b_coupon::after {
	background: url("../../images/atami-hihoukan/home/banner_03_bg.jpg") no-repeat 50%/cover;
}
.b_info::after {
	background: url("../../images/atami-hihoukan/home/banner_04_bg.jpg") no-repeat 50%/cover;
}

.top_banner {
	max-width: 640px;
	margin: 0 auto 80px;
	text-align: center;
}
.top_banner small {
	font-size: 1.6rem;
}
.top_banner.lpbanner{
	position: relative;
	transition: all 0.3s linear
}
.top_banner.lpbanner a {
	display: block;
}
.top_banner.lpbanner a:hover {
	transform: translateY(-5px)
}
#mermaid_banners {
	max-width: 600px;
	margin: 0 auto 50px;
}
#mermaid_banners ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 30px;
}
#mermaid_banners li {
	width: 45%;
}
#mermaid_banners a img{
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear
}
#mermaid_banners a:hover img{
	transform: scale(1.1);
}
@media (max-width: 750px){
	.main .inner {
		margin-bottom: 40px;
	}
	#lead {
		padding: 0 20px;
	}
	#lead .catch {
		text-align: center
	}
	#lead .catch img {
		width: 70%;
		height: auto;
	}
	#lead .note {
		width: 100%;
		margin: 30px auto;
	}
	#lead .information {
		font-size: 2rem;
		height: 100px;
		margin: 0 auto 50px;
		background: url("../../images/atami-hihoukan/home/info_bg.png") no-repeat 50%/contain;
	}
	#concept .concept_img_1 {
		top:-38px;
		left: -7px;
		height: 26px;
	}
	#concept .concept_img_2 {
		display: none
	}
	#concept section {
		width: calc(100% - 20px);
		padding: 20px 20px 20px 20px;
	}
	#concept h2 {
		font-size: 2rem;
		text-align: left;
	}
	#topics {
		margin-bottom: 50px;
	}
	#topics dl {
		flex-wrap: wrap;
		margin-bottom: 15px;
	}
	#topics dd {
		width: 100%;
	}
	#topics dd small {
		display: flex;
		font-size: 1.4rem;
	}
	#topics section {
		width: calc(100% - 20px);
		padding: 20px 20px 20px 20px;
	}
	#topics .topics_img_1 {
		top:-38px;
		right: 0;
		height: 26px;
	}
	#topics .topics_img_2 {
		display: none;
	}
	#banners {
		padding: 0 20px;
	}
	#banners ul {
		margin-bottom: 20px;
	}
	#banners .banner {
		padding: 2px;
		width: 48%;
		margin-bottom: 20px;
	}
	.top_banner {
		margin: 0 auto 40px;
	}
	#mermaid_banners {
		width: 90%
	}
	#mermaid_banners ul {
		width: 70%;
		margin: 40px auto 0;
	}
	#mermaid_banners li {
		width: 100%;
		margin-bottom: 40px;
	}
}


/*-----------------------------------------------------------------------------------

page

-----------------------------------------------------------------------------------*/
.page {
	background: url("../../images/atami-hihoukan/common/bg_01.jpg") 50% 0/cover;
}
.page .main {
	padding-top: 50px;
}
.page h2 {
	margin:0 auto 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 1000px;
	height: 100px;
	background: url("../../images/atami-hihoukan/common/h2_bg.png") no-repeat 50%/cover;
}
.page h3 {
	margin:0 auto 50px;
	text-align: center
}
.page h3 span{
	display: inline-block;
	position: relative;
}
.page h3 span::before{
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	width: 50px;
	height: 30px;
	background: url("../../images/atami-hihoukan/common/i_mermaid.png") no-repeat 0 0/contain;
	transform: scale(-1,1)
}
.page h3 span::after{
	content: "";
	position: absolute;
	top: 2px;
	right: 0;
	width: 50px;
	height: 30px;
	background: url("../../images/atami-hihoukan/common/i_mermaid.png") no-repeat 0 0/contain;
	
}
.page h3 img {
	width: auto;
	height:28px;
}
@media (min-width: 751px){
	.page h2 img {
		width: auto;
		height:32px;
	}
	.page h3 span{
		padding: 0 100px;
	}
}
@media (max-width: 750px){
	.page h2 {
		width: 90%;
		background: url("../../images/atami-hihoukan/common/h2_bg_sp_1.png") no-repeat 0 0/100% auto,
			url("../../images/atami-hihoukan/common/h2_bg_sp_2.png") no-repeat 0 100%/100% auto;
	}
	.page h2 img {
		height: 24px;
		width: auto
	}
	.page h3 span{
		padding: 0 40px;
	}
	.page h3 span::before,
	.page h3 span::after{
		width: 24px;
		top: 3px;
	}
	.page h3 img {
		height:22px;
	}
}


/*-----------------------------------------------------------------------------------

館内のご案内　

-----------------------------------------------------------------------------------*/
.guide .catch {
	margin-bottom: 50px;
}
.guide .catch img {
	max-width:600px;
}
.guide .lead .catch {
	text-align: center
}
.guide .map img {
	width: 80%;
	display: block;
	margin: 0 auto
}
.guide_icon img {
	width: auto;
	margin: 0 auto 60px;
	display: block;
}
.guide_icon_01 img {
	height: 100px;
}
.guide_icon_02 img,
.guide_icon_03 img{
	height: 140px;
}
.guide_icon_04 img{
	height: 130px;
}
#attraction {
	padding-top: 30px;
}
.attraction_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	column-gap: 50px;
	width: 100%;
	max-width: 950px;
	margin: 0 auto
}
.item {
	width: 280px;
	height: 233px;
	margin-bottom: 50px;
	position: relative;
}
.attraction_item {
	line-height: 1.4;
	letter-spacing: 0.03em;
	text-align: center;
	width: 280px;
	height: 233px;
	background: url("../../images/atami-hihoukan/guide/frame.png") no-repeat 50%/cover;
	color: #000;
	font-weight: bold;
	padding: 21px 10px 17px;
	margin-bottom: 50px;
	position: relative;
}
.attraction_item::after{
	content: "";
	width: 266px;
	height: 150px;
	background-size: contain;
	background-position: 50%;
	position:absolute;
	top:54px;
	left: 6px;
	mix-blend-mode:luminosity;
	opacity: 0.15;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
.attraction_item:hover::after {
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
.attraction_item h4 {
	font-size: 2rem;
	margin-bottom: 16px;
}
.attraction_item .des {
	margin-bottom: 10px;
}
.attraction_item .degree {
	display: inline-block;
	text-align: left;
	font-size: 1.5rem;
	line-height: 1.3;
}

.item_01::after {
	background-image: url("../../images/atami-hihoukan/guide/item_01.jpg");
}
.item_02::after {
	background-image: url("../../images/atami-hihoukan/guide/item_01.jpg");
}
.item_03::after {
	background-image: url("../../images/atami-hihoukan/guide/item_03.jpg");
}
.item_04::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_05::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_06::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_07::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_08::after {
	background-image: url("../../images/atami-hihoukan/guide/item_08.jpg");
}
.item_09::after {
	background-image: url("../../images/atami-hihoukan/guide/item_09.jpg");
}
.item_10::after {
	background-image: url("../../images/atami-hihoukan/guide/item_10.jpg");
}
.item_11::after {
	background-image: url("../../images/atami-hihoukan/guide/item_11.jpg");
}
.item_12::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_13::after {
	background-image: url("../../images/atami-hihoukan/guide/item_13.jpg");
}
.item_14::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_15::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_16::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_17::after {
	background-image: url("../../images/atami-hihoukan/guide/item_17.jpg");
}
.item_18::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_19::after {
	background-image: url("../../images/atami-hihoukan/guide/item_19.jpg");
}
.item_20::after {
	background-image: url("../../images/atami-hihoukan/guide/item_20.jpg");
}
.item_21::after {
	background-image: url("../../images/atami-hihoukan/guide/item_21.jpg");
}
.item_22::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_23::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_24::after {
	background-image: url("../../images/atami-hihoukan/guide/item_24.jpg");
}
.item_25::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_26::after {
	background-image: url("../../images/atami-hihoukan/guide/item_26.jpg");
}
.item_27::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_28::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_29::after {
	background-image: url("../../images/atami-hihoukan/guide/item_29.jpg");
}
.item_30::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_31::after {
	background-image: url("../../images/atami-hihoukan/guide/item_31.jpg");
}
.item_32::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_33::after {
	background-image: url("../../images/atami-hihoukan/guide/item_blank.jpg");
}
.item_34::after {
	background-image: url("../../images/atami-hihoukan/guide/item_34.jpg");
}
.item_35::after {
	background-image: url("../../images/atami-hihoukan/guide/item_35.jpg");
}

.item_info {
	width: 100%;
	line-height: 1.2;
	font-weight: bold;
	text-align: center;
	font-size: 2.2rem;
	margin: 10px auto 40px;
}
.item_info small {
	font-weight: normal;
	display: block;
	margin-top: 10px;
}
.item_info a {
	color: #fff;
}
.item_info a:hover {
	text-decoration: underline;
}
@media (max-width: 750px){
	.guide section {
		width: 90%;
		margin: 0 auto 60px;
	}
	.guide_icon {
		margin-bottom: 100px!important;
	}
	.guide_icon img {
		width: 60%;
		height: auto;
		margin: 0 auto 60px;
	}
	.guide_icon_04 img {
		width: 70%;
		height: auto;
	}
	.guide .map img {
		width: 100%;
	}
	.attraction_wrap .item {
		width: 280px;
		margin: 0 auto 40px;
	}
}


/*-----------------------------------------------------------------------------------

オリジナルグッズ　

-----------------------------------------------------------------------------------*/
.goods h2 {
	margin-bottom: 0;
}
.goods .h2_note {
	text-align: right;
	font-size: 1.5rem;
	margin-bottom: 3em;
}
.goods h3 {
	text-align: left;
}
.goods .goods_container{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 80px;
}
.goods .goods_summary {
	width: 50%;
}
.goods .fig {
	width: 45%;
}
.goods #contents {
	margin-bottom: 100px;
}
.goods_container h3 {
	font-size: 2.8rem;
	font-weight: normal;
}
.goods .note li {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.4rem;
}
.goods h3 img{
	width: auto;
	height: 30px;
}
.goods #attraction {
	margin-bottom: 100px;
}
@media (max-width: 750px){
	.h2_note {
		padding: 0 2em;
	}
	.goods .goods_container{
		width: 80%;
		padding-bottom: 40px;
		margin: 0 auto 60px;
		position: relative;
	}
	.goods .goods_container::after{
		content: "";
		width: 100px;
		height: 1px;
		background: #aaa;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	
	.goods .goods_summary,
	.goods .fig {
		width: 100%
	}
	.goods .goods_summary {
		order:2;
	}
	.goods .fig {
		order: 1;
		margin-bottom: 20px;
	}
	.goods h3 {
		margin-bottom: 0;
	}
	.goods h3 img{
		width: auto;
		height: 20px;
	}
	.goods section {
		width: 90%;
		margin: 0 auto 60px;
	}
	#game h2 img {
		width: 100%!important;
		height: auto!important
	}
}


/*-----------------------------------------------------------------------------------

お得な割引券　

-----------------------------------------------------------------------------------*/
.coupon .column {
	margin-bottom: 100px;
}
.coupon .column .fig{
	width: 80%;
	margin: 0 auto;
	background: #fff;
	padding: 30px 50px 50px;
}
.coupon .text_01 {
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 2em;
}
@media (max-width: 750px){
	.coupon section {
		width: 90%;
		margin: 0 auto 60px;
	}
	.coupon .column .fig{
		width: 90%;
		padding: 10px 10px 15px;
	}
}


/*-----------------------------------------------------------------------------------

営業案内／アクセス　

-----------------------------------------------------------------------------------*/
.info_access .nophoto {
	text-align: center;
	margin-bottom: 50px;
}
.info_access .nophoto p {
	background: url("../../images/atami-hihoukan/info_access/i_nophoto.png") no-repeat 0 50%/50px auto;
	padding-left: 70px;
	display: inline-block;
	line-height: 40px;
	font-size: 2rem;
	font-weight: bold;
	text-align: left;
}
.info_access .nophoto small {
	display: block;
	font-weight: normal;
}
#informations dl {
	padding-bottom: 40px;
	margin-bottom: 40px;
}
.info_access #informations dt {
	font-size: 2rem;
	font-weight: bold;
}
.info_access #informations dd {
	text-align: center
}
.info_access .charge dd {
	margin-bottom: 40px;
}
.info_access .charge dd .ttl{
	text-align: left;
	font-size: 1.8rem;
	margin-bottom: 0.8em;
}
.info_access .closed,
.info_access .business{
	border-bottom: solid 1px #fff;
}
.info_access .note .ttl {
	font-size: 2rem;
	margin-top: 2em;
}
.info_access iframe {
	width: 100%;
	height: 500px;
	border: none;
}
.info_access #access section {
	width: 90%;
	margin: 0 auto 50px;
}
.info_access #access h4 {
	font-size: 2.4rem;
	text-align: center;
}
.info_access #access h5 {
	font-size: 2rem;
	margin-bottom: 0.5em;
}
.info_access #access dl {
	width: 90%;
	margin: 0 auto;
}
.info_access #access dt{
	font-size: 1.8rem;
}
.info_access #access dd {
	padding-left: 1em;
	margin-bottom: 1em;
}
.info_access #access .train {
	margin-bottom: 100px;
}
.info_access #access .car .route p,
.info_access #access .car .route ul{
	width: 90%;
	margin: 0 auto
}
.info_access #access .route a {
	color: #fff;
	text-decoration: underline;
}
@media (max-width: 750px){
	.info_access section {
		width: 90%;
		margin: 0 auto 50px;
	}
	.info_access .nophoto p {
		line-height: 30px;
	}
	.info_access iframe {
		height: 300px;
	}
	.info_access th,
	.info_access td {
		padding: 10px;
	}
}


/*-----------------------------------------------------------------------------------

よくある質問　問い合わせ

-----------------------------------------------------------------------------------*/
.faq article {
	margin-bottom: 100px
}
#faq dl{
	width: 90%;
	margin:0 auto 50px;
}
#faq dt,
#faq dd {
	position: relative;
	padding-left: 3.5em;
}
#faq dt::before {
	position: absolute;
	top:0;
	left: 0;
	content: "【Q】";
}
#faq dd::before {
	position: absolute;
	top:0;
	left: 0;
	content: "【A】";
}
.faq #contact section {
	width: 90%;
	margin: 0 auto
}
.faq #contact table {
	width: 100%;
	max-width: 100%;
	margin: 2em auto;
}
.faq #contact th {
	width: 35%;
	background: #eee;
	border: solid 1px #ddd;	
}
.faq #contact td {
	width: 65%;
	border: solid 1px #ddd;
	border-width: 1px 1px 1px 0;
}
.faq #contact input,
.faq #contact textarea{
	width: 100%;
	border: none;
	border: solid 1px #ddd;
	font-size: 1.6rem;
	padding: 3px;
}
.faq #contact textarea {
	height: 100px;
}
.faq #contact .req {
	background: #f00;
	color: #fff;
	font-size: 1rem;
	padding: 4px 4px 4px 6px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	margin-left: 1.4em;
	transform: translateY(-1px);
}
.faq #contact .ip_agree p {
	text-align: left;
}
.faq #contact .ip_agree input {
	width: 20px;
	display: inline-block;
}
.faq .form_btn a{
	display: block;
	color: #fff;
	background: #777;
	text-align: center;
	max-width: 400px;
	margin: 0 auto;
	padding: 10px;
}
@media (max-width: 750px){
	.faq #contact table {
		width: 100%;
		max-width: 100%
	}
	.faq #contact th,
	.faq #contact td {
		display: block;
		width: 100%;
		max-width: 100%
	}
}


/*-----------------------------------------------------------------------------------

熱海砦と秘宝御殿

-----------------------------------------------------------------------------------*/
.page.palace {
	background: url("../../images/atami-hihoukan/palace/bg.jpg") 50% 0/cover;
}
.palace article {
	width: 90%;
	margin: 0 auto 200px;
}
.palace .ttl {
	text-align: center;
	margin-bottom: 3em;
}
.palace .ttl img {
	max-width: 600px;
}
.palace .thumbnails{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}
.palace .thumbnails li {
	width: 40%;
}
.palace .thumbnails a img{
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear
}
.palace .thumbnails a:hover img{
	transform: scale(1.03);
}
@media (max-width: 750px){
	.palace .thumbnails li {
		width: 100%;
	}
	.palace .thumbnails li:first-child{
		margin-bottom: 60px;
	}
}


/*-----------------------------------------------------------------------------------

秘宝館のテーマ

-----------------------------------------------------------------------------------*/
.music section {
	max-width: 900px;
	margin: 0 auto 60px;
}
.music .lyric {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: center;
}
.music .lyric p {
	display: inline-block;
	text-align: left;
	margin-bottom: 1.5em;
	font-size: 1.8rem;
}
.music .audio_prayer {
	margin-bottom: 60px;
	background: #4c365d;
	padding: 20px 20px 10px;
	display: block;
	width: 100%;
	max-width: 600px;
}
.music audio{
	width: 100%;
}
@media (max-width: 750px){
	.music section {
		width: 90%;
		margin: 0 auto 60px;
	}
}

/*-----------------------------------------------------------------------------------

小説

-----------------------------------------------------------------------------------*/
.page.novel {
	background: url("../../images/atami-hihoukan/palace/bg.jpg") 50% 0/cover;
}
.novel h2.page_ttl {
	margin-bottom: 80px;
}
.novel p{
	margin-bottom: 1em;
}
.novel .paragraph {
    margin: 40px;
}
.novel .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.novel .flex-img {
	margin:30px;
	width: 50%;
}


.privacy h4 {
	margin-top: 2em;
}
.joint_use dd{
	padding-left: 3em;
}
.public_date{
	text-align: right;
	font-size: 1.3rem;
}
@media (max-width: 750px){
	.novel section {
		width: 90%;
		margin: 0 auto 60px;
	}
	.novel .flex {
		flex-wrap: wrap;
	}
	.novel .flex-img {
		margin:10px 0 30px 0;
		width: 100%;
	}
}


/*-----------------------------------------------------------------------------------

プライバシー・クッキー

-----------------------------------------------------------------------------------*/
.privacy a {
	color: #fff;
}
@media (max-width: 750px){
	.privacy section,
	.cookie section {
		width: 90%;
		margin: 0 auto 60px;
	}
	.privacy h2 img,
	.cookie h2 img{
		width: 100%;
		height: auto;
	}
}


/*=================================
スライダーのためのcss
===================================*/
.slider {
   width:100%;
    margin:0 auto;
}
.slider img {
    width:100%;
    height:auto;
}

/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
	overflow: hidden;
    display: inline-block;
}

.slide-in_inner {
	display: inline-block;

}

/*左右のアニメーション*/
.leftAnime,
.rightAnime{
    opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight{
	animation-name:slideTextX100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes slideTextX100 {
  from {
	transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
    opacity: 0;
}


@keyframes slideTextX-100 {
  from {
	transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}



.topics_lists {
	margin-bottom: 100px;
}
.topics_lists dl {
	display: flex;
}
.topics_lists dl {
	display: flex;
	align-items: center;
	border-bottom: solid 1px #fff;
	padding-bottom: 8px;
	padding-left: 20px;
	margin-bottom: 8px;
}
.topics_lists dt {
	width: 80px;
	margin-right: 40px;
}
.topics_lists dt span {
	border: solid 1px #fff;
	display: block;
	font-size: 1.2rem;
	text-align: center
}
.topics_lists dd small {
	display: flex;
	font-size: 1.4rem;
}
.topics_lists a {
	color: #fff;
}

.topics_archive #contents,
.topics #contents {
	padding-top: 50px;
}
.topics {
	background: #29143f
}
.topics .entry {
	background: #fff;
	padding: 30px;
	color: #111;
	width: 90%;
	margin: 0 auto 50px;
}
.topics .entry img {
	margin-bottom: 20px
}
.topics .category {
	border: solid 1px #333;
	font-size: 12px;
	text-align: center;
	display: inline-block;
	margin-left: 20px;
	padding: 0 10px;
}
.topics h3 {
	text-align: left;
	margin: 10px 0 30px;
}
.topics .btn_archive {
	text-align: center;
	margin: 50px auto;
}
.topics .btn_archive a {
	color: #fff;
	border-bottom: solid 1px #fff;
}
#topics .slide-in,
#topics .slide-in_inner {
	width: 100%
}








/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

.novel-mystery .contents-head {
	max-width: 1000px;
	margin: 0 auto 60px;
}
.novel-mystery .contents-head h2 {
	margin-bottom: 10px;
}


/*-----------------------------------------------------------------------------------

秘宝館ワードプレス用

-----------------------------------------------------------------------------------*/
.mv-hihoukan-news {
	border: double 3px #fff;
	padding: 50px;
	text-align: center;
	margin: 100px auto;
	font-weight: bold;
	font-size: 2rem;
}