* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;}
	body,html {
		padding:0;
		margin:0;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
	}

ul,li {
	list-style: none;
	padding: 0;
	margin: 0;
}
ul.type-1 {
	margin-bottom: 1em;
}
ul.type-1 li {
	margin-bottom: 0!important;
	list-style-type: disc;
	list-style-position: inside;
}
.layout-center {
	text-align: center
}
.layout-left {
	text-align: left
}
.layout-left .button {
	margin: 0 auto 20px 0;
}


.layout-grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 50px;
}
.layout-grid > div {
	width: 48%;
	margin-bottom: 4%;
}

.mb-20 {
	margin-bottom: 20px
}
.mb-30 {
	margin-bottom: 30px
}

.font-normal {
	text-decoration: none;
	font-weight: normal;
}
.font-middle {
	font-size: 22px;
	display: block;
	margin-bottom: 10px;
}
	.page-home p {
		margin: 0
	}
	.page-home img {
		width: 100%;
		height: auto;
	}
	.page-home ul {
		padding: 0
	}
	.page-home li {
		list-style: none;
	}

.note-1 {
	background-color:#f78da83d;
	font-weight: bold;
	padding: 20px;
	text-align: center
}

.c-map {
	max-width: 550px;
	margin-bottom: 20px;
}

.header-atami {
    width: 100%;
    background: hsla(0, 0%, 100%, .96);
    position: sticky;
    top: -70px;
    z-index: 999;
    box-shadow:0 5px 10px 0 rgba(0, 0, 0, .05)
}
.header-atami .header-primary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    position:relative
}
.header-atami .header-primary::after {
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid #eee;
    position: absolute;
    left: 0;
    bottom:0
}
.header-atami .header-primary .header-menu .menu-list {
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.2;
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin:0 20px
}

.header-atami .header-secondary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding:0
}

.header-atami .header-secondary .header-logo .logo {
    width: auto;
    height: 70px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: auto 70px;
    display: block;
    text-indent: -9999px;
    overflow:hidden
}

.header-atami .header-secondary .header-logo .logo:hover {
    opacity:.8
}
.header-atami .header-secondary .header-logo .logo-atamikorakuen {
    min-width: 250px;
    background-image:url(https://www.atamikorakuen.co.jp/rakuten/images/common/facility-logo-atamikorakuen.png)
}
.header-atami .header-secondary .header-menu {
    flex:1
}

.header-atami .header-secondary .header-menu:empty {
    display:none
}

.header-atami .header-secondary .header-menu .menu-list {
    font-weight: 500;
    font-size: 1.7rem;
    line-height: 1.3;
    display: flex;
    gap: 16px;
    margin:0
}

.header-atami .header-secondary .header-menu .menu-list > li a {
    text-decoration:underline;
	color: #00396b;
}

.header-atami .header-secondary .header-buttons ul.header-buttons-list {
    display: flex;
    gap:1px
}

.header-atami .header-secondary .header-buttons ul.header-buttons-list > li {
    flex:1
}
.header-atami .header-secondary .header-buttons ul.header-buttons-list > li > a {
    min-width:70px;
    height:70px;
    padding:0;
    color:#fff;
    background:#00396b;
    display:flex
}
.header-atami .header-secondary .header-buttons ul.header-buttons-list > li > a .screen-text {
    font-size:8.5px
}	
	.concept-hotel {
    background: url(https://www.atamikorakuen.co.jp/rakuten/images/home/hotel-concept-bg.jpg) no-repeat center top;
    background-size:100% auto;
}
	.concept-contents {
		text-align: center;
		padding: 80px 5%;
	}
	.concept-contents p {
		line-height: 1.8;
		font-weight: 400;
		font-size: 16px;
	}
	.concept-contents h1 {
		font-size: 36px;
		margin-bottom: 20px;
		font-weight: normal
	}
	#panels {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 90%;
		max-width: 1140px;
		margin: 0 auto 100px;
	}
	#panels .panels-item {
		width: 48.5%;
		position: relative;
		margin-bottom: 3%
	}
	#panels .panel-info {
		position: absolute;
		bottom: 0;
		right: 0;
		background: #fff;
		padding: 12px 0 16px 24px;
		width: 180px;
	}
	#panels .panel-info p {
		font-size: 14px;
	}
	#panels .panels-item h3 {
		font-size: 18px;
		margin-bottom: 3px;
	}
	.panels-item .fig {
  width: 100%;
		overflow: hidden;
  aspect-ratio: 11 / 6; }

.panels-item .fig img {
  object-fit: cover;
	width: 100%!important;
	height: auto;
  aspect-ratio: 11 / 6; }
	.footer-atami .footer-info {
    width: 90%;
    max-width: 720px;
    text-align: center;
    margin:0 auto 40px
}

.footer-atami .footer-info-logo {
    text-align:center
}

.footer-atami .footer-info-logo .logo-atamibayresort {
    width: 280px;
    height: 70px;
    background: url(https://www.atamikorakuen.co.jp/rakuten/images/common/facility-logo-atamibayresort.png) no-repeat center;
    background-size: 100% auto;
    overflow: hidden;
    text-indent: -9999px;
    display:inline-block
}
	
.slideshow {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}

.slideshow li {
  position: absolute;
  inset: 0;
  opacity: 0;
  animation: fade 25s infinite;
}
.slideshow img,
.slideshow2 img,
.slideshow3 img,
.slideshow4 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.slideshow li:nth-child(1) { animation-delay: 0s; }
.slideshow li:nth-child(2) { animation-delay: 5s; }
.slideshow li:nth-child(3) { animation-delay: 10s; }
.slideshow li:nth-child(4) { animation-delay: 15s; }
.slideshow li:nth-child(5) { animation-delay: 20s; }

@keyframes fade {
  0%   { opacity: 0; }
  5%   { opacity: 1; }
  20%  { opacity: 1; }
  25%  { opacity: 0; }
  100% { opacity: 0; }
}

.slideshow4 {
  position: relative;
  width: 100%;
  aspect-ratio: 6 / 4;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
.slideshow4 li {
  position: absolute;
  inset: 0;
  opacity: 0;
  animation: fade4 20s infinite;
}
.slideshow4 li:nth-child(1) { animation-delay: 0s; }
.slideshow4 li:nth-child(2) { animation-delay: 5s; }
.slideshow4 li:nth-child(3) { animation-delay: 10s; }
.slideshow4 li:nth-child(4) { animation-delay: 15s; }

@keyframes fade4 {
  0%   { opacity: 0; }
  5%   { opacity: 1; }
  20%  { opacity: 1; }
  25%  { opacity: 0; }
  100% { opacity: 0; }
}


.slideshow3 {
  position: relative;
  width: 100%;
  aspect-ratio: 6 / 4;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
.slideshow3 li {
  position: absolute;
  inset: 0;
  opacity: 0;
	animation: fade3 15s infinite;
}
.slideshow3 li:nth-child(1) { animation-delay: 0s; }
.slideshow3 li:nth-child(2) { animation-delay: 5s; }
.slideshow3 li:nth-child(3) { animation-delay: 10s; }

@keyframes fade3 {
  0%   { opacity: 0; }
  10%  { opacity: 1; }
  30%  { opacity: 1; }
  40%  { opacity: 0; }
  100% { opacity: 0; }
}

.slideshow2 {
  position: relative;
  width: 100%;
  aspect-ratio: 6 / 4;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
.slideshow2 li {
  position: absolute;
  inset: 0;
  opacity: 0;
	animation: fade2 10s infinite;
}
.slideshow2 li:nth-child(1) { animation-delay: 0s; }
.slideshow2 li:nth-child(2) { animation-delay: 5s; }

@keyframes fade2 {
  0%   { opacity: 0; }
  17%  { opacity: 1; }
  46%  { opacity: 1; }
  55%  { opacity: 0; }
  100% { opacity: 0; }
}



.block-spacer {
	display: block;
	height: 30px;
}
.block-spacer-2 {
	display: block;
	height: 80px;
}

.block-separator {
	border-bottom: solid 1px;
	margin: 40px 0
}
.table-layout {
	border: solid 1px #ccc;
	border-width: 1px 0 0 1px;
	margin-top: 40px;
}
.table-layout th {
	text-align: center;
	font-weight: normal;
	background: #f5f5f5;
	border: solid 1px #ccc;
	border-width: 0 1px 1px 0;
	white-space: nowrap;
	padding: 7px 16px;
}
.table-layout td {
	border: solid 1px #ccc;
	border-width: 0 1px 1px 0;
	padding: 7px 8px;
	text-align: left
}
.page .buttons {
	display: flex;
	justify-content: center;
}
.page .button a {
	display: block;
	color: #fff;
	background: #00396b;
	border-radius: 50px;
	padding: 14px 26px;
	font-size: 18px;
	text-decoration: none;
}
.page .heading-atami {
	font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    padding: 0 0 30px;
    background: url(../images/common/heading-bg.png) no-repeat center bottom;
    background-size: 300px auto;
    margin-bottom:30px
}
.page .heading-middle {
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    margin-bottom:20px
}
.page .heading-middle-2 {
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    margin-bottom:20px;
	font-weight: normal;
}
.page .heading-atami-middle {
	font-size: 32px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    padding: 0 0 30px;
    background: url(../images/common/heading-bg.png) no-repeat center bottom;
    background-size: 300px auto;
    margin-bottom:30px
}

.page .col-2,
.page .col-3 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.page .col-item {
	text-align: center;
}
.page .col-item .fig {
	margin-bottom: 20px;
}
.page .col-2 .col-item {
	width: 48.3%
}
.page .col-3 .col-item {
	width: 31%
}

.box-gray {
	background: #f1f1f1;
	padding: 30px 20px 10px;
	text-align: center;
	margin-top: 80px;
}
.box-gray h3,
.box-gray h4{
	font-weight: normal;
}

.cap-absolute .col-item {
	position: relative;
}
.cap-absolute .col-item .caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin-bottom:0px;
	padding: 10px;
	text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3);
	background: rgba(1,1,1,0.1);
	color: #fff;
	font-size: 13px;
}

.page-standard .col-2{
	align-items: flex-start
}
.page-standard .col-2 .table-layout {
	margin-bottom: 30px;
}

.page-spa .col-2 {
	align-items: flex-start
}

#excellencyspa {
    padding: 25px;
    background: url("../images/common/bg-excellency.png") repeat 0 0;
    margin:0 auto 20px
}


.page-restaurant .col-2 {
	align-items: flex-start
}
.page-restaurant .col-item {
	text-align: left
}
.page-restaurant .col-item li {
	margin-bottom: 1em;
}
.page-restaurant .box-gray {
	text-align: left
}

.page-facilities .col-3 {
	align-items: flex-start;
}
.page-facilities .col-2 {
	align-items: flex-start
}
.page-facilities .col-item {
	text-align: left;
}

.page-tower #standard {
	padding-top: 100px;
}
.page-tower table {
	margin-bottom: 20px;
}

.list-pictogram li {
	background: no-repeat 0 0/60px auto;
	min-height: 60px;
    padding: 0 0 0 80px;
	display: flex;
    align-items: center;
    margin:0 0 10px
}
li.pic-nosmoking, ol.is-style-list-pictogram > li.pic-nosmoking {
    background-image:url(../images/facilities/fuua-pictogram-nosmoking.png)
}

li.pic-wheelchair, ol.is-style-list-pictogram > li.pic-wheelchair {
    background-image:url(../images/facilities/facilities-pictogram-wheelchair.png)
}

li.pic-wifi, ol.is-style-list-pictogram > li.pic-wifi {
    background-image:url(../images/facilities/facilities-pictogram-wifi.png)
}

.box-yellow {
	padding: 20px;
	background: #fef7b6;
	margin-bottom: 20px;
}
.box-yellow h3 {
	font-weight: normal;
}



div.is-style-details-faqs {
    border-top: 1px solid #d5d5d5;
    margin:0 0 50px 0
}

.is-style-details-faqs > summary {
    font-size: 20px;
    line-height: 1.4;
    padding: 20px;
    background: #f5f5f5;
    background-size:24px auto
}
/*
details.is-style-details-faqs > summary::marker {
    content:none
}

div.is-style-details-faqs[open] > summary {
    background-color: rgba(0, 0, 0, 0);
    background-image: url(https://www.atamikorakuen.co.jp/wp/wp-content/themes/oh-wpml/assets/images/faq-close.png);
    margin:0 0 20px
}
div.is-style-details-faqs > summary {
    min-height: 32px;
    font-weight: 500;
    pointer-events: none;
    padding: 3px 0 3px 40px;
    background: url(../images/faq-q.png) no-repeat 0 0;
    background-size: 32px auto;
    margin:0 0 10px
}

details.is-style-details-faqs > summary::marker {
    content:none
}

details.is-style-details-faqs[open] {
    margin:0 0 40px
}*/

.page-faq .page-nav {
	display: flex;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto 50px;
}
.page-faq .page-nav li {
	width: 20%;
}
.page-faq .page-nav a {
	display: block;
	text-decoration: none;
	text-align: center;
	color: #000;
	padding: 20px;
	border: solid 1px #d5d5d5;
	transition: all 0.2s linear;
}
.page-faq .page-nav a:hover {
	background: #f5f5f5
}

.fac-items {
	display: flex;
	flex-wrap: wrap;
	column-gap: 30px;
}
.fac-item {
	width: calc(100% / 3 - 60px)
}
.fac-item img {
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}
.fac-item h3 {
	font-size: 18px;
}
.fac-item h3 a {
	color: #000;
	text-decoration: underline;
}