@charset "UTF-8";
#branding { background: -moz-linear-gradient(135deg, #ffffff 25%, #e9e9e9 25%, #e9e9e9 50%, #ffffff 50%, #ffffff 75%, #e9e9e9 75%, #e9e9e9); background: -webkit-linear-gradient(135deg, #ffffff 25%, #e9e9e9 25%, #e9e9e9 50%, #ffffff 50%, #ffffff 75%, #e9e9e9 75%, #e9e9e9); background: linear-gradient(-45deg, #ffffff 25%, #e9e9e9 25%, #e9e9e9 50%, #ffffff 50%, #ffffff 75%, #e9e9e9 75%, #e9e9e9); background-size: 0.4rem 0.4rem; }

#branding a::before, #branding a::after { display: none; }

#branding .swiper-pagination-bullet-active { background-color: #e3007f; }

@media screen and (min-width: 768px) { #branding .swiper-wrapper { height: auto; max-height: 54rem; }
  #branding .swiper-slide { text-align: center; font-size: 1.8rem; }
  #branding .container { margin-left: auto; margin-right: auto; max-width: 109rem; }
  #branding .swiper-container { overflow: visible; z-index: 1; }
  #branding .swiper-slide { display: flex; justify-content: center; align-items: center; opacity: 0.5; transition-duration: 0.3s; }
  #branding .swiper-slide > a::after { display: none; }
  #branding .swiper-slide-active { opacity: 1; }
  #branding .swiper-pagination { bottom: -3rem; } }

@media screen and (max-width: 767px) { #branding .swiper-wrapper { padding: 1rem 0 2rem; }
  #branding .swiper-slide { display: flex; justify-content: center; align-items: center; }
  #branding .swiper-slide a { margin: 0; }
  #branding .swiper-slide img { width: 100%; object-fit: cover; }
  #branding .swiper-pagination { bottom: 0rem; } }

main .movie { padding-top: 56.25%; position: relative; }

@media screen and (min-width: 768px) { main .movie { width: 100%; } }

@media screen and (max-width: 767px) { main .movie { width: calc(100% - 3.2rem); margin: auto; margin: 1.6rem auto 0; } }

main .movie > * { position: absolute; left: 0; right: 0; top: 0; bottom: 0; }

main .movie iframe { display: block; width: 100%; height: 100%; }

#lead { padding: 0; margin-top: -8rem; }

/*コロナお祈りの文言*/
.prayer { text-align: center; padding: 2% 3% 1%; max-width: 1200px; margin: 0 auto; font-size: 1.75rem; color: #000; }

.prayer h3 { border: 3px solid #daf4bd; background-color: #fff; margin: 0 auto; padding: 1% 0; }

@media screen and (max-width: 599px) { .prayer { padding: 4%; font-size: 1.5rem; }
  .prayer h3 { font-size: 13px; text-align: left; padding: 1% 2%; } }

@media screen and (min-width: 600px) and (max-width: 768px) { .prayer h3 { font-size: 13px; text-align: left; padding: 1% 2%; } }

@media screen and (max-width: 768px) { .u-sp { display: none; } }

/*----- concept -----*/
#concept { padding: 0; }

#concept h2.title { position: relative; color: #fff; }

#concept h2.title > small::before { background-color: #fff; }

#concept h3.title { color: #808080; padding: 0.5em 0; border-bottom: 0.1rem solid #e6e6e6; }

@media screen and (min-width: 768px) { #concept h3.title { font-size: 2rem; }
  #concept h3.title > small { margin-left: 1em; font-size: 0.65rem; } }

@media screen and (max-width: 767px) { #concept h3.title { width: 100%; }
  #concept h3.title > small { display: block; font-size: 0.65rem; } }

#concept section { position: relative; margin: 0; padding: 6.4rem 0; background-image: url(../images/top/index_photo02.jpg); background-position: center; background-size: cover; }

#concept section::before { content: ""; display: block; position: absolute; left: 0; right: 0; bottom: 0; top: 0; background: rgba(0, 0, 0, 0.5); }

#concept [class*="flex"] { width: 100%; max-width: 1200px; z-index: 2; }

@media screen and (min-width: 768px) { #concept [class*="flex"] { margin: 3.2rem auto; } }

@media screen and (min-width: 768px) { #concept [class*="flex"] + [class*="flex"] { margin-top: -1.6rem; } }

@media screen and (max-width: 767px) { #concept [class*="flex"] + [class*="flex"] { margin-top: -1.6rem; } }

#concept [class*="flex"] > * { text-align: center; display: flex; flex-direction: column; justify-content: space-between; align-items: center; }

@media screen and (min-width: 768px) { #concept [class*="flex"] > * { background-color: rgba(255, 255, 255, 0.8); border-radius: 1rem; min-height: 24rem; } }

@media screen and (max-width: 767px) { #concept [class*="flex"] > * { background-color: #fff; margin: 1.6rem; }
  #concept [class*="flex"] > * + * { margin-top: 0; } }

#concept [class*="flex"] h3 + * { flex-grow: 2; font-weight: 700; }

@media screen and (min-width: 768px) { #concept [class*="flex"] h3 + * { display: flex; flex-direction: column; justify-content: center; align-items: center; font-size: 2.3rem; } }

@media screen and (max-width: 767px) { #concept [class*="flex"] h3 + * { display: block; text-align: center; padding-bottom: 1.6rem; } }

#concept [class*="flex"] h3 + * > small { display: block; font-size: 0.6em; }

/*----- features -----*/
#features > h2 { margin-top: 6.4rem; }

#features section { position: relative; }

@media screen and (min-width: 768px) { #features section { padding: 6.4rem; background-image: url(../images/top/index_photo03.png); background-position: center; background-size: cover; } }

@media screen and (max-width: 767px) { #features section { padding: 1.6rem 0; }
  #features section::before { content: ""; background-image: url(../images/top/index_photo03_sp.jpg); background-position: center; background-size: cover; display: block; width: 100%; padding-top: 66.7%; } }

#features .feature-box { z-index: 2; counter-reset: cnt; margin: 1.6rem; }

@media screen and (min-width: 768px) { #features .feature-box { width: 100%; padding-left: 25%; } }

#features .feature-box li { counter-increment: cnt; display: flex; align-items: stretch; font-size: 1.6rem; font-weight: 700; }

#features .feature-box li small { font-weight: 400; }

@media screen and (min-width: 768px) { #features .feature-box li { min-width: 60%; }
  #features .feature-box li + li { margin-top: 1em; } }

@media screen and (max-width: 767px) { #features .feature-box li + li { margin-top: 0.5em; }
  #features .feature-box li span { padding: 0.8rem 0; } }

#features .feature-box li > *, #features .feature-box li::before { display: flex; flex-direction: column; justify-content: center; }

#features .feature-box li::before { content: counter(cnt); align-items: center; margin-right: 1em; width: 2em; padding: 0.5rem; font-weight: bold; color: #fff; }

#features .feature-box li > * { width: calc(100% - 2em); }

#features .feature-box li:nth-of-type(1) { background-color: #f5b7b6; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(1) { margin-left: 2em; } }

#features .feature-box li:nth-of-type(1)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(2) { background-color: #f5dfb6; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(2) { margin-left: 4em; } }

#features .feature-box li:nth-of-type(2)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(3) { background-color: #f1f5b6; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(3) { margin-left: 6em; } }

#features .feature-box li:nth-of-type(3)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(4) { background-color: #def5b6; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(4) { margin-left: 8em; } }

#features .feature-box li:nth-of-type(4)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(5) { background-color: #c6efc3; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(5) { margin-left: 10em; } }

#features .feature-box li:nth-of-type(5)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(6) { background-color: #c7edff; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(6) { margin-left: 12em; } }

#features .feature-box li:nth-of-type(6)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(7) { background-color: #afcdf5; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(7) { margin-left: 14em; } }

#features .feature-box li:nth-of-type(7)::before { background-color: rgba(0, 0, 0, 0.25); }

#features .feature-box li:nth-of-type(8) { background-color: #dfd8fa; }

@media screen and (min-width: 768px) { #features .feature-box li:nth-of-type(8) { margin-left: 16em; } }

#features .feature-box li:nth-of-type(8)::before { background-color: rgba(0, 0, 0, 0.25); }

.snow { position: relative; margin-top: 80px; }

@media screen and (max-width: 767px) { .snow { margin-top: 200px; } }

.snow .snowfall-flakes { z-index: -1 !important; }

.snow .snowfall-flakes:nth-child(10n-9) { background-color: rgba(0, 152, 68, 0.3); }

.snow .snowfall-flakes:nth-child(10n-8) { background-color: rgba(255, 255, 0, 0.3); }

.snow .snowfall-flakes:nth-child(10n-7) { background-color: rgba(29, 32, 135, 0.3); }

.snow .snowfall-flakes:nth-child(10n-6) { background-color: rgba(0, 159, 232, 0.3); }

.snow .snowfall-flakes:nth-child(10n-5) { background-color: rgba(229, 0, 18, 0.3); }

.snow .snowfall-flakes:nth-child(10n-4) { background-color: rgba(200, 201, 202, 0.3); }

.snow .snowfall-flakes:nth-child(10n-3) { background-color: rgba(0, 128, 203, 0.3); }

.snow .snowfall-flakes:nth-child(10n-2) { background-color: rgba(236, 108, 0, 0.3); }

.snow .snowfall-flakes:nth-child(10n-1) { background-color: rgba(141, 195, 62, 0.3); }

.snow .snowfall-flakes:nth-child(10n) { background-color: rgba(145, 72, 151, 0.3); }

@media screen and (max-width: 590px) { .snow { margin-top: 170px; } }

@media screen and (max-width: 500px) { .snow { margin-top: 150px; } }

@media screen and (max-width: 450px) { .snow { margin-top: 120px; } }

@media screen and (max-width: 320px) { .snow { margin-top: 100px; } }

.eiken { background: #faefee; padding-bottom: 8rem; }

.eiken section { margin: 3rem auto; }

@media screen and (max-width: 767px) { .eiken section { margin: 0; } }

.eiken .eiken_sp { display: none; width: 80%; margin: 0 auto; }

.eiken .eiken_sp img { width: 100%; }

@media screen and (max-width: 767px) { .eiken .eiken_sp { display: block; } }

.eiken .eiken_pc { margin: 0 auto; }

.eiken .eiken_pc img { width: 100%; }

@media screen and (max-width: 767px) { .eiken .eiken_pc { display: none; } }

/* 緊急（コロナ） */
.sp_corona { display: none; }

.pc_corona { text-align: center; display: block; margin-bottom: 20px; }

.pc_corona_l { max-width: 1200px; margin: 0 auto; display: block; margin: 0 auto; }

.pc_corona_l img { margin: 0 auto; display: block; }

.pc_corona_l img:hover { transition-duration: 0.3s; opacity: .6; }

@media screen and (max-width: 800px) { .pc_corona { display: none; }
  .sp_corona { display: block; margin-bottom: 10px; padding-top: 20px; }
  .sp_corona img { margin-bottom: 10px; width: 100%; }
  .pc_corona_l { display: none; } }

/* start 追加イベントバナー */
.pickupevent_br .new { position: relative; }

.pickupevent_br .new::before { content: ""; top: 0; right: 0; border-bottom: 4em solid transparent; border-right: 4em solid #E91E63; /* ラベルの色はここで変更 */ position: absolute; z-index: 97; }

.pickupevent_br .new:after { display: block; content: 'New'; position: absolute; transform: rotate(45deg); color: #fff; top: 5px; right: 0; padding: 5px 0px; z-index: 98; animation: newAnime .9s infinite alternate; }

@keyframes newAnime { 0% { color: #E91E63; }
  100% { color: #fff; } }

.pickupevent_br-wrapp { margin-left: -10px; }

.pickupevent_br { display: flex; justify-content: flex-start; flex-wrap: wrap; max-width: 1200px; padding: 0 3%; margin: 0 auto 1%; }

.pickupevent_br-list { display: block; margin-left: 10px; position: relative; }

.pickupevent_br img { width: 100%; }

@media screen and (max-width: 807px) { .pickupevent_br-wrapp { margin-left: 0; }
  .pickupevent_br { padding: 15px 3% 0; }
  .pickupevent_br-list { display: block; margin-left: 3px; }
  .pickupevent_br .new::before { border-bottom: 25px solid transparent; border-right: 25px solid #E91E63; }
  .pickupevent_br .new:after { font-size: 1px; padding: 0; top: 1px; right: -5px; } }

/* end   追加イベントバナー */
