:root {
  --ratio: 1.5;
  --s-3: calc(var(--s-2) / var(--ratio));
  --s-2: calc(var(--s-1) / var(--ratio));
  --s-1: calc(var(--s0) / var(--ratio));
  --s0: 1rem;
  --s1: calc(var(--s0) * var(--ratio));
  --s2: calc(var(--s1) * var(--ratio));
  --s3: calc(var(--s2) * var(--ratio));
  --s4: calc(var(--s3) * var(--ratio));
  --s5: calc(var(--s4) * var(--ratio));
  --s6: calc(var(--s5) * var(--ratio));
  --s7: calc(var(--s6) * var(--ratio));
  --s8: calc(var(--s7) * var(--ratio));
  --s9: calc(var(--s8) * var(--ratio));
  --s10: calc(var(--s9) * var(--ratio));
}
.hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  width: 1px;
  height: 1px;
}

.font-bold {
  font-weight: bold;
}

.font-large {
  font-size: 1.1em;
}

.text-indent {
  text-indent: -1em;
  padding-left: 1em;
}

/*===========================================
base
===========================================*/
.mod_itemList_2_1 .mod_flex > * {
  flex-basis: calc((100% - 60px) / 2);
  margin-right: 6%;
}
/*===========================================
slick-dots
===========================================*/
.slick-dots li button,
.slick-dots li {
  width: 10px;
  height: 10px;
  margin: 0 7px;
}

.slick-dots li button:before {
  width: 10px;
  height: 10px;
  background: #c89fb1;
  border-radius: 50%;
  font-size: 0;
  opacity: 1;
}

.slick-dots li.slick-active button:before {
  background: #e50065;
}

/*===========================================
mv
===========================================*/
.main-visual {
  background: url("/sakurahime/image/mv_bg_pc.jpg") no-repeat;
  background-size: cover;
}

.main-visual + * {
  margin-top: 35px;
}

.main-visual .wrapper {
  padding: 35px 0 30px;
}
/*===========================================
mv-carousel
===========================================*/
.mv-carousel .slide-item {
  margin: 0 20px;
  width: 62.5vw;
}

.mv-carousel .slick-dots {
  bottom: -35px;
}

.mv-carousel .slide-arrow {
  position: absolute;
  top: 47%;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  cursor: pointer;
  z-index: 9;
}

.mv-carousel .slide-arrow:hover {
  opacity: 0.75;
}

.mv-carousel .prev-arrow {
  left: 16.7vw;
}

.mv-carousel .next-arrow {
  right: 16.7vw;
}
/*===========================================
present
===========================================*/
#present {
  margin-top: 0;
  padding: 90px 0 100px;
}

#present .title {
  max-width: 509px;
  margin: 0 auto 20px;
}

#present .subttl {
  font-size: 2rem;
  font-weight: bold;
  color: #e1416a;
}

#present .mod_itemList_2_1 {
  margin-top: 80px;
}

#present .mod_itemList_2_1 .txt {
  margin-top: 18px;
}

#present .mod_itemList_2_1 img {
  border-radius: 10px;
}
/*===========================================
recipe
===========================================*/
#recipe {
  padding: 100px 0;
  background: url("/sakurahime/image/recipe_bg.png") no-repeat;
  background-size: cover;
}

#recipe .title {
  max-width: 474px;
  margin: 0 auto 37px;
}
/*===========================================
chef
===========================================*/
/*===========================================
chef
===========================================*/
#chef {
  padding: 100px 0;
  background: url("/sakurahime/image/recipe_bg.png") no-repeat;
  background-size: cover;
}

#chef .title {
  max-width: 474px;
  margin: 0 auto 37px;
}
#chef.modal-block {
  margin-top: 60px;
}

#chef .modal {
  position: relative;
  max-width: 700px;
  margin: 0 auto 20px;
}

#chef .modal::before {
  content: url("/shared/image/icon_play.svg");
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 9;
}

#chef .modal img {
  opacity: 1;
}

#chef .modal img:hover {
  opacity: 0.7;
}
/*===========================================
chef-slider
===========================================*/
#chef-slider {
  width: 100%;
  margin: 60px auto 0;
}

#chef-slider .chef-slide-item img {
  overflow: hidden;
  border-radius: 23px;
  box-shadow: 2px 2px 4px gray;
  box-shadow: 0px 3px 4px #a09292;
}

#chef-slider .mod_s_taC {
  margin-top: 15px;
}

#chef-slider img {
  border-radius: 8px;
}

/* col2 */
/* #chef-slider {

  width: 100%;
  margin: 0 auto;
} */
#chef-slider .chef-slide-item {
  /* width: 29.37vw; */
  margin: 0 30px;
}
/*===========================================
picture
===========================================*/
#picture {
  padding: 100px 0 30px;
  background: url("/sakurahime/image/movie_bg_pc.jpg") no-repeat left bottom;
  background-size: 100%;
  transform: translateY(-80px);
}

#picture .title {
  width: 557px;
  margin: 0 auto 57px;
}

#picture.modal-block {
  margin-top: 60px;
}

#picture .modal {
  position: relative;
  max-width: 700px;
  margin: 0 auto 20px;
}

#picture .modal::before {
  content: url("/shared/image/icon_play.svg");
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 9;
}

#picture .modal img {
  opacity: 1;
}

#picture .modal img:hover {
  opacity: 0.7;
}
/*===========================================
picture-slider
===========================================*/
#picture-slider {
  margin-top: 30px;
}

#picture-slider .slide-item {
  margin: 0 6px;
}

#picture-slider .mod_s_taC {
  margin-top: 15px;
}

#picture-slider img {
  border-radius: 8px;
}

/*===========================================
feature
===========================================*/
#feature {
  padding: 80px 0 30px;
  background: url("/sakurahime/image/top/feature_bg_pc.png") 50% 433px/1920px 1096px no-repeat, linear-gradient(to bottom, rgba(255, 192, 195, 0) calc(433px + 300px), #ffc0c3 calc(433px + 300px));
}

#feature .title {
  max-width: 405px;
  margin: 0 auto 40px;
}

#feature .main-content {
  display: flex;
  margin-top: 50px;
}

#feature .main-content .col {
  width: 60%;
}

#feature .main-content .col:first-child {
  width: 37%;
  margin-right: 3%;
}

#feature .main-content .bg-white {
  margin-top: 55px;
  padding: 40px 22px;
  background: #fff;
  border-radius: 10px;
  color: #e1416a;
}

#feature .main-content .img {
  max-width: 371px;
  margin-left: auto;
}

#feature .main-content .list li {
  position: relative;
  font-size: 2.3rem;
  font-weight: bold;
  padding-left: 30px;
}

#feature .main-content .list li::before {
  content: url("/sakurahime/image/icon_star.png");
  position: absolute;
  left: 0;
  top: 0;
  margin-right: 10px;
}

#feature .main-content .note {
  text-indent: 30px;
}
/*===========================================
profile
===========================================*/
#profile {
  padding: 70px 0 0;
}

#profile .title {
  max-width: 482px;
  margin: 60px 0 30px;
}

#profile .main-content {
  display: flex;
}

#profile .main-content .text-block {
  padding-left: 50px;
  width: 57%;
}

#profile .main-content .img-block {
  width: 43%;
  z-index: 9;
}

#profile .main-content .img-block .img {
  max-width: 420px;
}
/*===========================================
bg-block
===========================================*/
.bg-block {
  padding: 100px 0;
  background: url("/sakurahime/20th/image/common/bg_yellow.jpg") repeat;
  background-size: cover;
  transform: translateY(-80px);
}
/*===========================================
table-block
===========================================*/
.table-block .mod_table_01 {
  margin-bottom: 100px;
}

.table-block table {
  overflow: hidden;
  border-radius: 1em;
  border-collapse: separate;
  border-spacing: 0;
  border: 2px solid #e1416a;
}

.table-block table tr:first-child th:first-child {
  border-top-left-radius: 10px;
}

.table-block table tr:first-child td:last-child {
  border-top-right-radius: 10px;
}

.table-block table tr:last-child th:first-child {
  border-bottom-left-radius: 10px;
}

.table-block table tr:last-child td:last-child {
  border-bottom-right-radius: 10px;
}

.table-block table th,
.table-block table td {
  padding: 0.8rem 1rem;
  vertical-align: middle;
  border: none;
  font-weight: bold;
}

.table-block table th {
  background: #e1416a;
  font-size: 2.5rem;
  color: #fff;
}

.table-block table td {
  font-size: 2.2rem;
  color: #e1416a;
}

.table-block table .border-pink {
  border-bottom: 2px solid #e1416a;
}

.table-block table .border-white {
  border-bottom: 2px solid #fff;
}
/*===========================================
history
===========================================*/
.history {
  position: relative;
  padding: 80px 0;
  background: #fff;
}

.history::before,
.history::after {
  content: "";
  position: absolute;
  width: 100%;
  left: 2px;
  height: 14px;
  background: url("/sakurahime/image/common/bg_color_lines.png");
}

.history::before {
  top: -7px;
}

.history::after {
  bottom: -7px;
}

.history .wrapper {
  max-width: 840px;
  margin: 0 auto;
}

.history .title {
  width: 241px;
  margin: 0 auto 40px;
}

.history .img {
  margin: 50px auto 60px;
}

.history .list {
  display: flex;
}

.history .list-container {
  margin-left: 150px;
}

.history .list .date {
  position: relative;
  width: 146px;
  padding-right: 3%;
  background: url("/sakurahime/image/bg_line.png") no-repeat top right;
  text-align: right;
  font-size: 2rem;
  font-weight: bold;
  color: #e1416a;
}

.history .list:first-child .date {
  background-position: top 10px right;
}

.history .list:not(:last-child) .description {
  padding-bottom: 10px;
}

.history .list .description {
  /* width: 50%; */
  padding-left: 3%;
  margin-top: 2px;
}

.history .list .star-icon::after {
  content: url("/sakurahime/image/icon_star.png");
  position: absolute;
  top: 0;
  right: -8px;
}

.history .mod_s_taR {
  padding-right: 20px;
}
/*===========================================
movie
===========================================*/
#movie {
  padding: 100px 0 30px;
  background: url("/sakurahime/image/movie_bg_pc.jpg") no-repeat left bottom;
  background-size: 100%;
  transform: translateY(-80px);
}

#movie .title {
  width: 431px;
  margin: 0 auto 30px;
}

#movie .modal-block {
  margin-top: 60px;
}

#movie .modal {
  position: relative;
  max-width: 700px;
  margin: 0 auto 20px;
}

#movie .modal::before {
  content: url("/shared/image/icon_play.svg");
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 9;
}

#movie .modal img {
  opacity: 1;
}

#movie .modal img:hover {
  opacity: 0.7;
}
.sec {
  z-index: 1;
}
* + .sec {
  margin-top: 50px;
}
.sec .title + p {
  margin-top: 30px;
}
#chef-slider .slick-list {
  padding-bottom: 10px !important;
}

.package .title img {
  width: calc(471px * 0.5);
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
.package .img-block {
  position: relative;
  z-index: 9;
  width: 155px;
  margin-right: auto;
  margin-left: auto;
}
.package__list {
  font-size: 16px;
  width: 230px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
.package__list.package__list {
  margin-top: 30px;
}
.package__list > * + * {
  margin-top: 15px;
}
.package__list-item {
  gap: 5px 0;
}
.package__list-item-inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  width: 230px;
  height: 230px;
  padding: 0 1.25em;
  color: #fff;
  border-radius: 50%;
  background-color: #e1416a;
}
.package__list-item-inner > * + * {
  margin-top: 5px;
}
.package__list-item-label {
  font-weight: bold;
  color: #fff285;
}
.package__list-item-title {
  font-size: 18px;
  font-weight: bold;
}
.package__list-item-img {
  width: 49px;
}
.feature__subsec > * + * {
  margin-top: 15px;
}
.feature__subsec-inner {
  margin-top: 15px;
}
.feature__subsec-inner > * + * {
  margin-top: 15px;
}
.feature__subsec-block > * + * {
  margin-top: 15px;
}
.feature__subsec p {
  color: #000;
}
.feature__subsec-ttl {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.feature__subsec-img img {
  height: auto;
}
.feature__bnr {
  width: 89.3311vw;
}
.feature__bnr + * {
  margin-top: var(--s1);
}
.feature__bnr img {
  height: auto;
}
.feature__fig {
  margin-top: var(--s3);
}
.subsec__wrapper > * + * {
  margin-top: 45px;
}
.subsec > * + * {
  margin-top: 15px;
}
.subsec__ttl {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  color: #e1416a;
}
.subsec img {
  height: auto;
}
.subsec__figure > * + * {
  margin-top: 10px;
}
.subsec__figure img {
  width: 230px;
  margin-right: auto;
  margin-left: auto;
}
.subsec__figure-wrapper {
  margin-top: 30px;
  text-align: center;
}
.subsec__figure-wrapper > * + * {
  margin-top: 15px;
}
.subsec__figure-wrapper--flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 15px 0;
}
.subsec__figure-wrapper--flex img {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}
.subsec__figure-wrapper--flex .no-box-shadow img {
  box-shadow: none;
}
.subsec__figure-wrapper--flex > * + * {
  margin-top: 0;
}
.subsec__figure--half {
  flex: 0 0 138px;
}
.subsec__figure--half img {
  width: 100%;
}
.map img {
  height: auto;
}
.map .wrap-inner > * + * {
  margin-top: 30px;
}
.map .title {
  width: 260px;
  margin-right: auto;
  margin-left: auto;
}
.map__fukidashi {
  position: relative;
}
.map__fukidashi-chara {
  width: 110px;
  position: relative;
  z-index: 1;
  padding-top: 60px;
}
.map__fukidashi-fukidashi {
  font-size: 16px;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  width: 248px;
  height: 128px;
  text-align: center;
  color: #e1416a;
  border: 2px solid;
  border-radius: 20px;
  position: absolute;
  top: 0;
  right: 0;
}
.map__fukidashi-fukidashi p {
  font-weight: bold;
}
.map__fukidashi-fukidashi-icon {
  background: url(/sakurahime/image/top/fukidashi.svg) 0 0/cover no-repeat;
  width: 24px;
  height: 19px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  margin-bottom: -18px;
  left: -120px;
}
.map .subsec__figure-wrapper {
  width: 290px;
  margin-right: auto;
  margin-left: auto;
}
.map .main-content {
  background: url(/sakurahime/image/movie_bg_sp.jpg) no-repeat left bottom;
  background-size: 100%;
  margin-right: -20px;
  margin-left: -20px;
  padding-right: 20px;
  padding-left: 20px;
  font-size: 14px;
  padding-bottom: 1em;
}
.map .main-content .bg-white {
  padding: 2em 1em;
  background-color: #fff;
  border: 1px solid #e1416a;
}
.map .main-content .bg-white > * + * {
  margin-top: 15px;
}
.map .main-content .mod_s_taC {
  margin-top: 1em;
}
.link {
  color: #fff;
  background-color: #e1416a;
  display: block;
  text-align: center;
  font-size: 16px;
  padding: 1em 0;
  border-radius: 10px;
  width: 290px;
  margin-right: auto;
  margin-left: auto;
}
.link:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
}
#movie .title {
  width: 216px;
}
@media print, screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
  * + .sec {
    margin-top: 80px;
  }
  .package .title + p {
    text-align: center;
  }
  .package .img-block {
    max-width: 233px;
    margin: -110px 0 0 auto;
    width: min(233px, calc(233% * 0.1));
    top: -30px;
  }
  .package__list {
    width: 100%;
    display: flex;
    gap: 0 21px;
  }
  .package__list > * + * {
    margin-top: 0;
  }
  .package__list-item {
    width: min(266px, calc(266% / 840 * 100));
    padding-top: min(266px, calc(266% / 840 * 100));
    position: relative;
    gap: 0 min(21px, calc(21% / 840 * 100));
  }
  .package__list-item-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    justify-content: flex-start;
    padding-top: 8%;
  }
  .package__list-item-inner > * + * {
    margin-top: 15px;
  }
  .package__list-item-img {
    width: 59px;
    margin-top: 10px;
  }
  #feature {
    padding-bottom: 85px;
  }

  #feature .main-content {
    flex-wrap: wrap;
  }
  #feature .main-content .col:nth-child(3) {
    width: 100%;
  }
  #feature .main-content .col:nth-child(4) {
    width: 100%;
  }

  .feature__subsec-inner {
    max-width: 840px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-direction: row-reverse;
    margin-top: 30px;
  }
  .feature__subsec-inner > * + * {
    margin-top: 0;
  }
  .feature__subsec-block {
    flex: 1 0 0;
    font-size: 16px;
    margin-right: 2em;
  }
  .feature__subsec-block > * + * {
    margin-top: 10px;
  }
  .feature__subsec-ttl {
    font-size: 28px;
  }
  .feature__subsec-img {
    flex: 0 0 min(calc(409% / 840 * 100), 409px);
  }
  .feature__subsec-img img {
    margin: 0;
  }
  .feature__bnr {
    width: 469px;
    margin-right: auto;
    margin-left: auto;
  }
  .feature__bnr + * {
    margin-top: var(--s1);
  }
  .feature__fig {
    margin-top: var(--s4);
  }
  .subsec__ttl {
    font-size: 28px;
    text-align: left;
  }
  .subsec__figure > * + * {
    margin-top: 10px;
  }
  .subsec__figure img {
    width: 221px;
  }
  .subsec__figure-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 40px;
    max-width: 475px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 45px;
  }
  .subsec__figure-wrapper--coord {
    max-width: 800px;
  }
  .subsec__figure-wrapper > * + * {
    margin-top: 0;
  }
  .subsec__figure-wrapper--flex {
    gap: 40px 30px;
  }
  .subsec__figure--half {
    flex: 0 0 221px;
  }
  .subsec__figure--half img {
    width: 100%;
  }
  .map .wrap-inner > * + * {
    margin-top: 30px;
  }
  .map__fukidashi-chara {
    width: min(198px, calc(198% / 10));
    padding-top: 60px;
  }
  .map__fukidashi-fukidashi {
    width: min(586px, calc(586% / 10));
    height: 125px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    margin-top: 0;
  }
  .map__fukidashi-fukidashi-icon {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    margin-bottom: -18px;
    margin-left: 30px;
  }
  .map .subsec__figure-wrapper {
    width: initial;
    margin-top: -130px;
  }
  .map .main-content {
    background: url(/sakurahime/image/movie_bg_pc.jpg) no-repeat left 36px;
    padding: 0 20px 70px;
    margin: 60px -20px 0;
  }
  .map .main-content .bg-white {
    padding: 35px min(80px, calc(80% / 10));
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
    border-width: 2px;
  }
  .map .main-content .mod_s_taC {
    margin-top: 1em;
  }
  .link {
    width: 413px;
  }
  .link.link {
    margin-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .mod_itemList_2_1 .mod_flex > * {
    flex-basis: 100%;
    margin-right: 0px;
  }
  .main-visual {
    background: url("/sakurahime/image/mv_bg_sp.jpg") no-repeat;
    background-size: cover;
  }

  .main-visual + * {
    margin-top: 80px;
  }

  .main-visual .wrapper {
    padding: 30px 0;
  }
  .mv-carousel .slide-arrow {
    width: 30px;
    height: 30px;
  }

  .mv-carousel .prev-arrow {
    left: 7px;
  }

  .mv-carousel .next-arrow {
    right: 7px;
  }

  .mv-carousel .slide-item {
    margin: 0 20px;
  }

  .mv-carousel .slick-dots {
    bottom: -70px;
  }

  .slick-dotted.slick-slider {
    margin-bottom: 0;
  }
  #present {
    padding: 80px 0 50px;
  }

  #present .title {
    max-width: 325px;
    margin: 0 auto 17px;
  }

  #present .subttl {
    font-size: 1.5rem;
  }

  #present .mod_itemList_2_1 {
    margin-top: 30px;
  }

  #present .mod_itemList_2_1 .txt {
    margin-top: 15px;
  }

  #present .mod_itemList_2_1 .alpha:first-child {
    margin-bottom: 15px;
  }

  #present .mod_itemList_2_1 img {
    border-radius: 5px;
  }
  #recipe {
    padding: 50px 0 70px;
  }

  #recipe .title {
    max-width: 292px;
    margin: 0 auto 30px;
  }
  #chef {
    padding: 50px 0 70px;
  }

  #chef .title {
    max-width: 292px;
    margin: 0 auto 30px;
  }
  #chef .modal-block {
    margin-top: 30px;
  }

  #chef .modal {
    position: relative;
    max-width: 700px;
    margin: 0 auto 15px;
  }
  #chef-slider .chef-slide-item.chef-slide-item {
    margin: 0 6px;
  }

  #chef-slider .chef-slide-item img {
    border-radius: 8px;
  }

  #chef-slider {
    margin-top: 30px;
  }
  #picture {
    padding: 65px 0 50px;
    background: url("/sakurahime/image/movie_bg_sp.jpg") no-repeat left bottom;
    background-size: 100%;
  }

  #picture .title {
    max-width: 360px;
    margin: 0 auto 30px;
  }

  #picture .modal-block {
    margin-top: 30px;
  }

  #picture .modal {
    position: relative;
    max-width: 700px;
    margin: 0 auto 15px;
  }
  #feature {
    padding: 50px 0 40px;
    background: url("/sakurahime/image/top/feature_bg_sp.png") 0 117.3304vw/contain no-repeat, linear-gradient(to bottom, rgba(255, 192, 195, 0) calc(880vw * 0.1333 + 50vw), #ffc0c3 calc(880vw * 0.1333 + 50vw));
  }

  #feature .title {
    max-width: 264px;
    margin: 0 auto 30px;
  }

  #feature .main-content {
    margin-top: 30px;
    display: block;
  }

  #feature .main-content .col {
    width: 100%;
  }

  #feature .main-content .col:first-child {
    width: 100%;
    margin-right: 0;
    /* min-height: 206px; */
  }

  #feature .main-content .bg-white {
    margin-top: 25px;
    padding: 30px;
  }

  #feature .main-content .img {
    max-width: 290px;
    margin: 0 auto;
  }

  #feature .main-content .list li {
    font-size: 1.6rem;
    padding-left: 30px;
    margin-bottom: 10px;
  }

  #feature .main-content .list li::before {
    left: 0;
    top: 2px;
    transform: translateY(0);
    position: absolute;
  }

  #feature .main-content .note {
    font-size: 1.2rem;
  }
  #profile {
    padding: 50px 0 0;
  }

  #profile .title {
    max-width: 300px;
    margin: 0 auto 30px;
  }

  #profile .main-content {
    flex-direction: column;
  }

  #profile .main-content .text-block {
    padding-left: 0;
    width: 100%;
  }

  #profile .main-content .img-block {
    width: 100%;
    min-height: 263px;
  }

  #profile .main-content .img-block .img {
    max-width: 270px;
    margin: 20px auto 0;
  }
  .bg-block {
    padding: 90px 0 50px;
    transform: translateY(-55px);
  }
  .table-block .mod_table_01 {
    margin-bottom: 40px;
  }

  .table-block table {
    border-radius: 1em;
  }

  .table-block table th,
.table-block table td {
    padding: 1rem;
    font-size: 1.2rem;
  }
  .history {
    padding: 40px 0;
  }

  .history .wrapper {
    padding: 0 22px;
  }

  .history .list-container {
    margin-left: 0;
  }

  .history .title {
    max-width: 158px;
    margin: 0 auto 30px;
  }

  .history .img {
    margin: 25px auto 30px;
  }

  .history .list .date {
    width: 45%;
    padding-right: 15px;
    font-size: 1.3rem;
  }

  .history .list .description {
    width: 100%;
    padding-left: 12px;
    font-size: 1.1rem;
  }

  .history .mod_s_taR {
    font-size: 1.1rem;
  }
  #movie {
    padding: 65px 0 20px;
    background: url("/sakurahime/image/movie_bg_sp.jpg") no-repeat left bottom;
    background-size: 100%;
  }

  #movie .title {
    max-width: 276px;
    margin: 0 auto 30px;
  }

  #movie .modal-block {
    margin-top: 30px;
  }

  #movie .modal {
    position: relative;
    max-width: 700px;
    margin: 0 auto 15px;
  }
  #chef .mod_s_taC {
    text-align: left !important;
    max-width: 91.9977vw;
    margin-inline: auto;
  }
}
@media screen and (max-width: 1200px) {
  #chef-slider .chef-slide-item {
    margin: 0 15px;
  }
}
@media screen and (min-width: 1921px) {
  #feature {
    background-size: contain;
  }
}
@media screen and (min-width: 768px) and (max-width: 810px) {
  .history .list {
    justify-content: center;
  }

  .history .list-container {
    margin-left: 0;
  }

  .history .list .date {
    width: 146px;
  }

  .history .list .description {
    width: 50%;
  }
}
@media print, screen and (min-width: 1001px) {
  .map .main-content {
    margin-left: calc((100vw - 1000px) * -0.5);
    margin-right: calc((100vw - 1000px) * -0.5);
  }
}