@charset "UTF-8";
/****************common********************************************/
#contents.shirayaki {
  background: #f8f3ed;
  padding-bottom: calc(100vw / (1200 /100));
  line-height: 1.6;
  font-size: calc(100vw / (1200 /18));
}
/****************layout********************************************/
/*****key****/
#contents.shirayaki .key {
  width: 100%;
  margin-bottom: 0 !important;
  position: relative;
  background: #f8f3ed;
}
#contents.shirayaki .key .btn_cv {
  width: calc(100vw / (1200 /300));
  margin: 0;
  font-size: calc(100vw / (1200 /18));
  position: absolute;
  right: calc(100vw / (1200 /250));
  bottom: calc(100vw / (1200 /20));
}
#contents.shirayaki .key .btn_cv a {
  height: calc(100vw / (1200 /60));
  line-height: calc(100vw / (1200 /60));
}
#contents.shirayaki .key .btn_cv a::before {
  top: calc(100vw / (1200 / 15));
  left: calc(100vw / (1200 / -15));
  width: calc(100vw / (1200 / 35));
  height: calc(100vw / (1200 / 35));
}
/**
/********* main common ********/
#contents.shirayaki .inner p {
  margin: 0 auto calc(100vw / (1200 / 30));
  text-align: left;
  line-height: 1.6;
  font-size: calc(100vw / (1200 /19));
}
#contents.shirayaki p.atn_img {
  margin-bottom: 0;
  padding-right: calc(100vw / (1200 /50));
  text-align: right;
  font-size: calc(100vw / (1200 /13));
}
/*********01********/
#contents.shirayaki .co_01 {
  margin-bottom: calc(100vw / (1200 /150));
  padding-bottom: calc(100vw / (1200 /120));
  background: #000;
  text-align: center;
  color: #fff;
  font-size: calc(100vw / (1200 /18));
  position: relative;
}
#contents.shirayaki .co_01 h2 {
  width: 100%;
  margin: 0 auto;
  padding-top: 0;
}
#contents.shirayaki .co_01:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  box-sizing: border-box;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
  border-top: 100px solid #000;
}
#contents.shirayaki .co_01 p {
  width: 100%;
  position: absolute;
  bottom: calc(100vw / (1200 /-40));
  z-index: 999;
}
/*********02-03********/
#contents.shirayaki .product {
  padding-bottom: calc(100vw / (1200 /50));
}
#contents.shirayaki .product .head {
  width: 100%;
  margin: 0 auto calc(100vw / (1200 /50));
  position: relative;
}
#contents.shirayaki .product .head h2 {
  width: calc(100vw / (1200 /700));
  margin: 0 auto;
}
#contents.shirayaki .product .head .img {
  width: calc(100vw / (1200 /900));
  margin: 0 auto;
}
#contents.shirayaki .product .head .gentei {
  width: calc(100vw / (1200 /140));
  height: calc(100vw / (1200 /140));
  position: absolute;
  top: calc(100vw / (1200 /280));
  left: calc(100vw / (1200 /215));
}
#contents.shirayaki .product .flex {
  width: calc(100vw / (1200 /900));
  margin: 0 auto calc(100vw / (1200 /50));
  justify-content: space-between;
}
#contents.shirayaki .product .flex .box {
  width: calc(100vw / (1200 /420));
}
#contents.shirayaki .product .flex .img {
  width: calc(100vw / (1200 /420));
}
#contents.shirayaki .product .box h3 {
  margin-bottom: calc(100vw / (1200 /15));
  line-height: 1.4;
  text-align: center;
  font-size: calc(100vw / (1200 /23));
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
/*********04********/
#contents.shirayaki .co_04 {
  padding-top: calc(100vw / (1200 /75));
  padding-bottom: calc(100vw / (1200 /30));
  position: relative;
  text-align: center;
  line-height: 1.3;
  font-size: calc(100vw / (1200 /16));
}
#contents.shirayaki .co_04::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: calc(100vw / (1200 /25));
  background: url("../img/shirayaki2026_kikan_bg_sp.webp") repeat-x;
  background-size: 30% auto;
  position: absolute;
  top: 0;
  left: 0;
}
#contents.shirayaki .co_04 h2 {
  font-size: calc(100vw / (1200 /30));
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
#contents.shirayaki .co_04 .img {
  width: calc(100vw / (1200 /400));
  margin: calc(100vw / (1200 /25)) auto;
}
#contents.shirayaki .co_04 ul {
  width: calc(100vw / (1200 /820));
  margin: calc(100vw / (1200 /25)) auto;
}
#contents.shirayaki .co_04 ul li {
  width: calc(100vw / (1200 /400));
  margin: 0 auto calc(100vw / (800 /50));
}
/*********05********/
#contents.shirayaki .co_05 {
  background: #fff;
  margin: 0 auto;
  padding: calc(100vw / (1200 /30)) 0;
  position: relative;
  text-align: center;
}
#contents.shirayaki .co_05 .inner {
  width: calc(100vw / (1200 /600));
  margin: 0 auto;
}
#contents.shirayaki .co_05 h2 {
  width: calc(100vw / (1200 /400));
  margin: 0 auto calc(100vw / (1200 /20));
}
#contents.shirayaki .co_05 p {
  margin: calc(100vw / (1200 /10)) auto;
  text-align: center;
  line-height: 1.3;
  font-size: calc(100vw / (1200 /12));
}
/*********kikan******/
#contents.sp_item .kikan {
  position: relative;
  margin-bottom: calc(100vw / (1200 / 50));
  padding: 0 0 calc(100vw / (1200 / 10));
  background: url("../img/shirayaki_kikan.jpg");
  background-size: 100% auto;
}
/*********menu_info********/
#contents.shirayaki .menu_info .box {
  position: relative;
}
#contents.shirayaki .menu_info .box_L, #contents.shirayaki .menu_info .flex {
  width: calc(100vw / (1200 / 940));
  margin: calc(100vw / (1200 / 10)) auto calc(100vw / (1200 / 50));
  padding: 0 0 calc(100vw / (1200 / 10));
  align-items: start;
}
#contents.shirayaki .menu_info h3 {
  position: relative;
  margin: 0;
  padding: calc(100vw / (1200 / 100)) 0 calc(100vw / (1200 / 50));
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.08em;
  font-size: calc(100vw / (1200 / 30));
  font-weight: bold;
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
#contents.shirayaki .menu_info h3::before {
  content: "";
  display: inline-block;
  width: calc(100vw / (1200 / 90));
  height: calc(100vw / (1200 / 90));
  background: url("../img/shirayaki2026_icon.png") no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: calc(100vw / (1200 / 428));
}
#contents.shirayaki .menu_info .box_S h3::before {
  left: calc(100vw / (1200 / 180));
}
#contents.shirayaki .menu_info .box .item_end {
  width: calc(100vw / (1200 / 440));
  margin: 0 auto;
  padding: 0;
  text-align: center;
  color: #104263;
  font-weight: bold;
  display: flex;
  align-items: center;
  position: absolute;
  top: calc(100vw / (1200 / 150));
  left: calc(100vw / (1200 / 250));
}
#contents.shirayaki .menu_info .box_S .item_end {
  top: calc(100vw / (1200 / 150));
  left: calc(100vw / (1200 / 5));
}
#contents.shirayaki .menu_info .box .item_end:before, #contents.shirayaki .menu_info .box .item_end:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}
#contents.shirayaki .menu_info .box .item_end:before {
  margin-right: 1rem;
}
#contents.shirayaki .menu_info .box .item_end:after {
  margin-left: 1rem;
}
#contents.shirayaki .menu_info .box .date {
  max-width: calc(100vw / (1200 / 540));
  margin-bottom: calc(100vw / (1200 / 25));
  text-align: center;
  border: 1px solid #104263;
  padding: 2px 10px;
  background: #fff;
  font-size: calc(100vw / (1200 / 20));
  font-weight: bold;
  color: #104263;
}
#contents.shirayaki .menu_info ul.img li {
  width: calc(100vw / (1200 / 450));
  margin-bottom: calc(100vw / (1200 / 2));
}
#contents.shirayaki .menu_info .inner p.fs {
  padding-top: calc(100vw / (1200 /10));
  font-size: calc(100vw / (1200 /15));
}
#contents.shirayaki .menu_info .btn_cv {
  margin: calc(100vw / (1200 / 30)) auto calc(100vw / (1200 / 70));
}
#contents.shirayaki .menu_info ul.kome {
  width: calc(100vw / (1200 / 660)) !important;
  margin: 0 auto;
  line-height: 1.4;
  color: #040001;
}
#contents.shirayaki .menu_info ul.kome li {
  position: relative;
  margin-left: calc(100vw / (1200 /30));
  margin-bottom: calc(100vw / (1200 /10));
  font-size: calc(100vw / (1200 /14));
}
#contents.shirayaki .menu_info ul.kome li::before {
  content: "※";
  position: absolute;
  left: calc(100vw / (1200 / -10));
}
#contents.shirayaki .menu_info .img.youki {
  width: calc(100vw / (1200 / 600)) !important;
  margin: 0 auto calc(100vw / (1200 / 50));
}
/**** btnarea ****/
#contents.shirayaki .btnarea .btn_order {
  margin: calc(100vw / (1200 / 50)) auto calc(100vw / (1200 / 70));
}
#contents.shirayaki .btnarea .bn_goto{
    width: calc(100vw / (1200 / 550)) !important;
  margin: 0 auto calc(100vw / (1200 / 150));

}