/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;700;900&display=swap');


.fadein {
  opacity: 0;
  transform: translate(0, 30px);
  transition: all 1500ms;
}
.fadein2 {
  opacity: 0;
  transform: translate(0, 0);
  transition: all 1500ms;
}
.fadein3 {
  opacity: 0;
  transform: translate(0, 15px);
  transition: all 3000ms;
}
.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.season_xmas2025 #contents-main h3{
  border: none;
  background: transparent;
}
/*----------------------------------------
christmas 2025
----------------------------------------*/
#contents-main.all {
  margin: 0 0 50px;
  position: relative;
}
body.view #contents .inner {
  background: url(xmas_bg.jpg);
  background-size: 100%, cover;
  padding: 0;
  position: relative;
  z-index: 0;
  background-position: center top;
}
.season_xmas2025 #contents-main .contents-header h2{
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  padding: 0;
  margin-bottom: 40px;
}
.season_xmas2025 #contents-main .contents-header nav ul{
  display: flex;
  gap: 15px;
  justify-content: center;
}
.season_xmas2025 #contents-main .contents-header nav ul li{
  position: relative;
  width: 270px;
  text-align: center;
  line-height: 1.3;
  border-radius: 50px;
}
.season_xmas2025 #contents-main .contents-header nav ul li a{
  background-color: #c83840;
  color: #fff;
  border-radius: 50px;
  display: block;
  padding: 13px 0;
  font-weight: bold;
  font-size: 20px;
}
.season_xmas2025 #contents-main .contents-header nav ul li::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0px 6px 8px;
  border-color: transparent transparent transparent #fff;
  top: 50%;
  right: 20px;
  margin-top: -6px;
  transform: rotate(90deg);
}


.season_xmas2025 .contents-inner {
  padding: 0;
  margin: 0px auto;
  text-align: center;
}
.season_xmas2025 #contents-main .caption{
  margin: 40px 0 0;
}
.season_xmas2025 #contents-main .caption p{
  color: #864c23;
  font-size: 16px;
  font-family:'メイリオ', 'Meiryo','MS ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  line-height: 35px;
  padding: 20px 0 0;
  font-weight: bold;
}
.season_xmas2025 #contents-main .caption h3{
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 26px;
  font-weight: bold;
  padding: 5px 0px 30px;
  color: #864c23;
  line-height: 30px;
}

.season_xmas2025 #contents-main .christmas{
  margin: 80px 0;
}
.season_xmas2025 #contents-main .christmas h3{
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 36px;
  font-weight: bold;
  color: #fff;
  background: #c83840;
  line-height: normal;
  padding: 7px 0;
}
.season_xmas2025 #contents-main .christmas h3 p{
    display: inline-block;
    position: relative;
}
.season_xmas2025 #contents-main .christmas h3 p::before,
.season_xmas2025 #contents-main .christmas h3 p::after{
  position: absolute;
  content: "";
  background: url(fig_ornament01.png) no-repeat;
  background-size: contain;
  width: 40px;
  height: 58px;
  top: -7px;
  left: -50px;
}
.season_xmas2025 #contents-main .christmas h3 p::after{
  right: -50px;
  left: auto;
}
.season_xmas2025 #contents-main .christmas section {
    padding: 0 100px;
}
.season_xmas2025 #contents-main .christmas dl{
  display: flex;
  margin: 55px 0;
  gap: 40px;
  flex-wrap: wrap;
}
.season_xmas2025 #contents-main .christmas dl dt{
  width: calc(100% / 2 - 20px);
}
.season_xmas2025 #contents-main .christmas dl dt img{
  border-radius: 20px;
}
.season_xmas2025 #contents-main .christmas dl dd{
  width: calc(100% / 2 - 20px);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
}
.season_xmas2025 #contents-main .christmas dl dd p.funsui{
  font-family: "Zen Maru Gothic", sans-serif;
  color: #c83840;
  font-weight: bold;
  font-size: 30px;
  line-height: 37px;
}
.season_xmas2025 #contents-main .christmas dl dd  p.funsui span{
  color: #864c23;
  font-family:'メイリオ', 'Meiryo','MS ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  display: block;
  font-size: 16px;
}
.season_xmas2025 #contents-main .christmas dl dd p.dec{
  background: #fff;
  font-family:'メイリオ', 'Meiryo','MS ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  color: #864c23;
  padding: 30px;
  font-size: 16px;
  line-height: 30px;
  text-align: left;
  border-radius: 30px;
}
.season_xmas2025 #contents-main .christmas ul:nth-of-type(1){
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
}
.season_xmas2025 #contents-main .christmas ul:nth-of-type(1) li{
  width: calc(100% / 2 - 20px);
}
.season_xmas2025 #contents-main .christmas ul:nth-of-type(2),
.season_xmas2025 #contents-main .christmas ul:nth-of-type(3) {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: center;
}
.season_xmas2025 #contents-main .christmas ul:nth-of-type(2) li{
  width: calc(100% / 3 - 17px);
}
.season_xmas2025 #contents-main .christmas ul:not(:nth-of-type(1)) li p.img{
  background: rgba(225, 224, 213, 0.8);
  width: 100%;
  padding: 0;
  border-radius: 20px;
  overflow: hidden;
}
.season_xmas2025 #contents-main .christmas ul:not(:nth-of-type(1)) li p.img img{
  border-radius: 0;
}

.season_xmas2025 #contents-main .christmas ul li p{
  padding: 35px;
  font-family:'メイリオ', 'Meiryo','MS ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  color: #864c23;
  font-size: 20px;
  font-weight: bold;
}
.season_xmas2025 #contents-main .christmas ul li p span{
  font-size: 16px;
  display: block;
}
.season_xmas2025 #contents-main .christmas ul li img{
  border-radius: 20px;
}


/* イベントリスト */
.season_xmas2025 #contents-main .eventlist ul {
  padding: 80px;
}
.season_xmas2025 #contents-main .eventlist h3{
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 36px;
  font-weight: bold;
  color: #fff;
  background: #c83840;
  line-height: normal;
  padding: 7px 0;
}
.season_xmas2025 #contents-main .eventlist h3 p{
    display: inline-block;
    position: relative;
}
.season_xmas2025 #contents-main .eventlist h3 p::before,
.season_xmas2025 #contents-main .eventlist h3 p::after{
  position: absolute;
  content: "";
  background: url(fig_ornament02.png) no-repeat;
  background-size: contain;
  width: 24px;
  height: 58px;
  top: -7px;
  left: -50px;
}
.season_xmas2025 #contents-main .eventlist h3 p::after{
  right: -50px;
  left: auto;
}
.eventlist .ev_item{
  margin-bottom: 95px;
}
.eventlist .ev_item.overday{
  display: none;
}
.eventlist .ev_item .detail{
  display: flex;
  gap: 45px;
  flex-wrap: wrap;
  position: relative;
  background: #bfe2e2;
  border-radius: 20px;
  padding: 20px;
}
.eventlist .ev_item .detail > span{
  position: absolute;
  bottom: 20px;
  right: 20px;
  border-top: 50px solid transparent;
}
/* 偶数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(even) .detail > span{
  border-right: 50px solid #2c685b;
}
/* 奇数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(odd) .detail > span{
    border-right: 50px solid #c83840;
}

.season_xmas2025 #contents-main .eventlist .btn_cover {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-indent: -9999em;
  background: #fff;
  opacity: 0;
  z-index: 3;
  border-radius: 20px;
}
.season_xmas2025 #contents-main .eventlist .btn_cover:hover {
  opacity: 0.3;
}

.eventlist .ev_item .detail h4{
  font-size: 30px;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #c83840;
  font-weight: bold;
  line-height: 37px;
}
.eventlist .ev_item .detail h4 a{
  color: #c83840;
}
/* 偶数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(even) .detail h4 a{
  color: #2c685b;
}
/* 奇数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(odd) .detail h4 a{
  color: #c83840;
}
.eventlist .ev_item .detail .image{
  width: 340px;
  background: #e1e0d5;
  padding: 0;
  border-radius: 20px;
  position: relative;
}
.eventlist .ev_item .detail .image span{
  display: block;
  position: absolute;
  top: -40px;
  left: -40px;
  border-radius: 20px;
  color: #fff;
  z-index: 10;
}
.season_xmas2025 #contents-main .eventlist .ev_item .detail .image span{
  content: "";
  position: absolute;
  top: -40px;
  left: -40px;
  border-radius: 20px;
  color: #fff;
  z-index: 9;
  background: #c83840;
  display: flex;
  justify-content:center;
  flex-direction:column;
  gap: 12px;
  padding: 25px 10px;
  min-width: 90px;
  border: 2px solid #fff;
}
.season_xmas2025 #contents-main .eventlist .ev_item .detail .image span::before{
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 800;
  position: relative;
  font-size: 40px;
}
.season_xmas2025 #contents-main .eventlist .ev_item .detail .image span::after{
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 800;
  font-size: 24px;
}
.season_xmas2025 #contents-main .eventlist ul li#evid2987 .detail .image span::before{
  content: "11/1";
}
.season_xmas2025 #contents-main .eventlist ul li#evid2987 .detail .image span::after{
  content: "SAT";
}
.season_xmas2025 #contents-main .eventlist ul li#evid2992 .detail .image span::before{
  content: "11/1~";
}
.season_xmas2025 #contents-main .eventlist ul li#evid2992 .detail .image span::after{
  content: "SAT";
}
.season_xmas2025 #contents-main .eventlist ul li#evid2990 .detail .image span::before{
  content: "11/23";
}
.season_xmas2025 #contents-main .eventlist ul li#evid2990 .detail .image span::after{
  content: "SUN";
}

.season_xmas2025 #contents-main .eventlist ul li .detail .image img{
  height: 300px;
  object-fit: contain;
}
.season_xmas2025 #contents-main .eventlist ul li:nth-child(even) .detail .image span{
  background-color: #2c685b;
}
.season_xmas2025 #contents-main .eventlist ul li:nth-child(odd) .detail .image span{
  background-color: #c83840;
}

.eventlist .ev_item .detail .image img{
  max-height: 300px;
}
.eventlist .ev_item .detail .dec_txt{
  width: calc(100% - 385px);
}

.eventlist .ev_item .detail .dec_txt h4{
  text-align: left;
}
.eventlist .ev_item .detail .ev_detail{
  margin-bottom: 20px;
  text-align: justify;
}
.eventlist .ev_item .detail .event_text .subtitle h5{
  text-align: left;
  padding: 30px 0 0;
}
.eventlist .ev_item .detail .ev_date dl{
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  padding: 30px 20px 0 0;
}
.eventlist .ev_item .detail .ev_date dl dt{
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 5px 0;
  width: 80px;
}
.eventlist .ev_item .detail .ev_date dl dd{
  width: calc(100% - 100px);
  text-align: start;
  font-size: 16px;
  line-height: 150%;
  font-weight: bold;
}
/* 偶数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(even) .detail .ev_date dl dt{
  background: #2c685b;
}
/* 奇数 */
.season_xmas2025 #contents-main .eventlist ul li:nth-child(odd) .detail .ev_date dl dt{
  background: #c83840;
}

/* スマホ */
.season_xmas2025.sp .inner {
  padding: 0 12px 0;
}
.season_xmas2025.sp #contents .inner::before,
.season_xmas2025.sp #contents .inner::after {
  height: 7px;
}
.season_xmas2025.sp #contents-main .contents-header h2 {
  width: 100%;
  padding: 0;
}
.season_xmas2025.sp .contents-inner {
  padding: 0;
}
.season_xmas2025.sp #contents-main .contents-header nav ul{
  margin: 0 30px;
}
.season_xmas2025.sp #contents-main .contents-header nav ul li a{
  font-size: 3.5vw;
    padding-right: 10px;
}
.season_xmas2025.sp #contents-main .contents-header nav ul li::after {
  right: 10px;
}
.season_xmas2025.sp #contents-main .christmas dl dd p.dec {
  padding: 20px;
}
.season_xmas2025.sp  #contents-main .caption h3 {
  font-size: 5vw;
}
.season_xmas2025.sp #contents-main .caption {
  padding: 20px;
}
.season_xmas2025.sp #contents-main .caption p {
    text-align: left;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(2) {
  margin: 30px 0 0;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(2) li p{
  font-size: 16px;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(2) li p span{
  font-size: 12px;
}
.season_xmas2025.sp #contents-main .christmas h3::before {
  left: -10px;
  background-size: contain;
}
.season_xmas2025.sp #contents-main .christmas h3::before,
.season_xmas2025.sp #contents-main .christmas h3::after {
  width: 10vw;
  height: 10vw;
  top: 8px;
}
.season_xmas2025.sp #contents-main .christmas h3::after {
  right: -7px;
  background-size: contain;
}
.season_xmas2025.sp #contents-main .christmas h3 {
  font-size: 7vw;
  line-height: 30px;
}
.season_xmas2025.sp #contents-main .christmas dl dt {
  width: 100%;
}
.season_xmas2025.sp #contents-main .christmas dl dd {
  width: 100%;
}
.season_xmas2025.sp #contents-main .christmas {
  margin: 45px 0;
  padding: 0;
}
.season_xmas2025.sp #contents-main .christmas section {
  margin: 45px 0;
  padding: 0 20px;
}
.season_xmas2025.sp #contents-main .christmas dl {
  margin: 45px 0;
  gap: 20px;
}
.season_xmas2025.sp #contents-main .christmas ul:not(:nth-of-type(1)) li img {
  max-height: 150px;
  object-fit: cover;
  height: 200px;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(1) li {
  width: 100%;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(1) {
  gap: 30px;
}
.season_xmas2025.sp #contents-main .christmas ul li p {
  padding: 18px 0 0px;
}
.season_xmas2025.sp #contents-main .christmas ul:nth-of-type(2) li {
  width: calc(100% / 2 - 17px);
}
.season_xmas2025.sp #contents-main .christmas dl dd p.funsui {
  margin: 0 0 20px;
}

.season_xmas2025.sp #contents-main .eventlist ul {
  padding: 40px 20px 20px;
}
.season_xmas2025.sp #contents-main .eventlist h3 p::before,
.season_xmas2025.sp #contents-main .eventlist h3 p::after {
  width: 30px;
  height: 50px;
}
.season_xmas2025.sp #contents-main .eventlist h3::after {
  right: -61px;
  background-size: contain;
  top: -11px;
}
.season_xmas2025.sp #contents-main .eventlist h3::before {
  background: url(fig_pre03.png) no-repeat;
  left: -51px;
  background-size: contain;
  top: -11px;
  width: 40px;
  height: 40px;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item {
  
margin-bottom: 40px;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .image {
  width: 100%;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .image span {
  min-width: 8px;
  padding: 15px 10px;
  gap: 7px;
  top: -30px;
  left: -30px;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .image span::before {
  font-size: 35px
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .image span::after {
  font-size: 20px
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .dec_txt {
  width: 100%;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail {
  gap: 20px;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .ev_date dl {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  padding: 20px 20px 0 0;
}


.season_xmas2025.sp #contents-main .eventlist h3 {
  font-size: 7vw;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail h4 {
  font-size: 27px;
  line-height: 1.8rem;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail .event_text .subtitle h5 {
  padding: 20px 0 0;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detai .ev_date dl dd {
  line-height: 1.4rem;
}
.season_xmas2025.sp #contents-main .eventlist .ev_item .detail > span {
  border-top:40px solid transparent;
}
.season_xmas2025.sp #contents-main .eventlist ul li:nth-child(even) .detail > span {
  border-right: 40px solid #2c685b;
}
.season_xmas2025.sp #contents-main .eventlist ul li:nth-child(odd) .detail > span {
  border-right: 40px solid #c83840;
}