@charset "UTF-8";
/*
	/assets/css/style_sp.css
*/


/* --------------------------------------------------
header
-------------------------------------------------- */

.mv-area,
.mv-area hgroup {
  width: 100%;
  height: calc(1200/750*100vw);
  position: relative;
}
.mv-area .mv {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.mv-area .ttl {
  display: block;
  position: absolute;
}
.mv-area .ttl-1 {
  width: 100%;
  height: 100%;
}
.mv-area .ttl-1 img {
  display: block;
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.mv-area .ttl-2 {
  width: calc(511/750*100vw);
  height: calc(79/750*100vw);
  top: calc(31/750*100vw);
  left: calc(119/750*100vw)
}
.mv-area .ttl-3 {
  width: calc(233/750*100vw);
  height: calc(221/750*100vw);
  top: calc(952/750*100vw);
  left: calc(16/750*100vw)
}
.mv-area .ttl-4 {
  width: calc(304/750*100vw);
  height: calc(342/750*100vw);
  top: calc(733/750*100vw);
  left: calc(226/750*100vw)
}
.main-bttn,
.main-bttn .btn-inner {
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.main-bttn {
  width: calc(249/750*100vw);
  height: calc(246/750*100vw);
  position: absolute;
  bottom: 0;
  right: 0;
  background-image: url(../img/btn-main_sp.png);
}
.main-bttn .btn-txt,
.main-bttn .btn-txt img {
  display: block;
  width: 100%;
  height: 100%;
}
.main-bttn.fixed-bttn {
  position: fixed;
  z-index: 10000;
  opacity: 0;
  bottom: calc(-250/750*100vw);
  transition: opacity .5s ease, bottom 1s cubic-bezier(0.19, 1, 0.22, 1), filter .3s ease
}
.main-bttn.fixed-bttn.fade-in {
  opacity: 1;
  bottom: 0;
}
.main-bttn.fixed-bttn.fade-out {
  opacity: 0;
  bottom: calc(-250/750*100vw)
}


.wavy-box-bottom {
  display: block;
  width: 100%;
  padding-bottom: calc(18/750*100vw);
  background: url(../img/bg-bottom_sp.png) repeat-x left bottom / auto calc(19/750*100vw)
}

.wavy-box {
  display: block;
  width: 100%;
  padding: calc(18/750*100vw) 0;
  background-image: url(../img/bg-top_sp.png), url(../img/bg-bottom_sp.png);
  background-repeat: repeat-x;
  background-position: left top, left bottom;
  background-size: auto calc(19/750*100vw)
}
.header-nav-area .main-nav {
  display: block;
  width: 100%;
  padding: calc(60/750*100vw) calc(50/750*100vw) calc(92/750*100vw);
  background-color: var(--color-1)
}
.header-nav-area .main-nav .anchor-links {
  display: block;
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
}
.anchor-links li {
  display: block;
  height: calc(100/750*100vw);
  position: relative;
}
.anchor-links li + li::before {
  content: '';
  display: block;
  width: 100%;
  height: calc(2/750*100vw);
  background-color: rgba(255, 255, 255, .3);
  position: absolute;
  left: 0;
  top: 0
}
.anchor-links li a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
}
.anchor-links a::before {
  content: '';
  display: block;
  width: calc(127/750*100vw);
  height: calc(78/750*100vw);
  margin: 0 calc(34/750*100vw) 0 calc(18/750*100vw);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
.anchor-links a::after {
  content: '';
  display: block;
  width: calc(32/750*100vw);
  height: calc(20/750*100vw);
  margin: 0 calc(45/750*100vw) 0 auto;
  background: url(../img/arrow-y.svg) no-repeat center top / cover
}
.anchor-links .nav-txt {
  display: inline-block;
  font-size: calc(30/750*100vw);
  font-weight: 700;
  font-feature-settings: "palt";
  color: var(--color-2)
}
.anchor-links a[href*="about"]::before {
  background-image: url(../img/icon-1.svg)
}
.anchor-links a[href*="flow"]::before {
  background-image: url(../img/icon-2.svg)
}
.anchor-links a[href*="present"]::before {
  background-image: url(../img/icon-3.svg)
}
.anchor-links a[href*="faq"]::before {
  background-image: url(../img/icon-4.svg)
}
.anchor-links a[href*="guideline"]::before {
  background-image: url(../img/icon-5.svg)
}
.anchor-links a[href*="prizewinner"]::before {
  background-image: url(../img/icon-6.svg)
}
.anchor-links a[href*="comments"]::before {
  background-image: url(../img/icon-7.svg)
}
.anchor-links a[href*="calendar"]::before {
  background-image: url(../img/icon-8.svg)
}
.anchor-links a[href*="recipe"]::before {
  background-image: url(../img/icon-9.svg)
}


.mv-area .close-message {
  display: block;
  width: 100%;
  padding: .8em;
  font-size: calc(30/750*100vw);
  font-weight: 700;
  line-height: 1.4333333333333333;
  font-feature-settings: "palt";
  letter-spacing: .06em;
  text-align: center;
  background-color: rgba(255, 235, 0, .9);
  border-top: solid calc(6/750*100vw) #000;
  border-bottom: solid calc(6/750*100vw) #000;
  position: absolute;
  bottom: 0;
  left: 0;
}





/* --------------------------------------------------
main-area
-------------------------------------------------- */

.main-area {
  position: relative;
}

.bttn-to-results-area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: calc(292 / 750 * 100vw);
  background-color: #ff8500;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: .5s ease
}
.bttn-to-results-area.fade-in {
  opacity: 1;
  visibility: visible
}
.bttn-to-results,
.bttn-to-results .btn-plate {
  border-radius: calc(20 / 750 * 100vw);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.bttn-to-results {
  position: relative;
  display: block;
  width: calc(658 / 750 * 100vw);
  height: calc(218 / 750 * 100vw);
  background-image: url(../img/bttn-results_sp.png);
  box-shadow: calc(8 / 750 * 100vw) calc(8 / 750 * 100vw) rgba(28, 28, 28, .3);
}
.bttn-to-results .btn-txt {
  position: absolute;
  width: 100%;
  height: 100%;
}
.bttn-to-results .btn-plate {
  display: none;
}
.bttn-to-results .btn-txt img {
  width: 100%;
  height: 100%;
  object-fit: contain
}



.sec {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.sec .before {
  content: '';
  display: block;
  width: calc(189/750*100vw);
  height: calc(116/750*100vw);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  margin: 0 auto
}
.sec-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: calc(55/750*100vw);
  margin-bottom: calc(80/750*100vw);
}
.sec-ttl::before,
.sec-ttl::after {
  content: '';
  display: block;
  width: calc(62/750*100vw);
  height: calc(20/750*100vw);
  background-image: url(../img/ornament-1_sp.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.wavy-box .sec-ttl::before,
.wavy-box .sec-ttl::after {
  background-image: url(../img/ornament-1b_sp.svg);
}
.sec-ttl::after {
  transform: rotate(180deg)
}

.sec .lead {
  font-size: calc(26/750*100vw);
  line-height: 2.230769230769231;
  font-weight: 500;
  letter-spacing: .05em;
  font-feature-settings: "palt"
}



/* ABOUT */

.sec-1 {
  padding: calc(148/750*100vw) calc(50/750*100vw) calc(160/750*100vw);
}
.sec-1 .before {
  background-image: url(../img/icon-1.svg)
}

.sec-1 .ttl-1 .ttl-inner {
  width: calc(350/750*100vw);
  margin: 0 calc(35/750*100vw);
  transform: translateY(calc(-14/750*100vw))
}

.sec-1 .lead {
  text-align: center;
  margin-bottom: calc(94/750*100vw)
}



.overview {
  flex-direction: column;
  align-items: center;
  margin-bottom: calc(50/750*100vw)
}

.overview .col-half {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: calc(36/750*100vw) calc(30/750*100vw) calc(57/750*100vw);
  border: calc(4/750*100vw) solid;
  border-radius: calc(30/750*100vw);
}
.overview .col-half + .col-half {
  margin-top: calc(40/750*100vw)
}
.overview .ttl-2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: calc(100/750*100vw);
  margin-bottom: calc(44/750*100vw);
  border-radius: calc(50/750*100vw);
  background-color: #fff
}
.overview .ttl-2 .ttl-inner {
  display: inline-block;
  font-size: calc(30/750*100vw);
  font-weight: 700;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: calc(6/750*100vw);
  text-underline-offset: 8px;
  margin: 0 calc(23/750*100vw) 2vw
}
.overview .des {
  font-size: calc(26/750*100vw);
  font-weight: 700;
  line-height: 1.8461538461538463;
  letter-spacing: .04em;
  text-align: center
}
.overview .col-1 {
  border-color: var(--color-4);
  background-color: #ffe4f2
}
.overview .col-2 {
  border-color: var(--color-5);
  background-color: #dbf9ff
}
.overview .col-1 .ttl-2 {
  color: var(--color-4)
}
.overview .col-2 .ttl-2 {
  color: var(--color-5)
}
.overview .ttl-2::before,
.overview .ttl-2::after {
  content: '';
  display: block;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.overview .col-1 .ttl-2::before {
  background-image: url(../img/cut-1.svg);
  width: calc(40/750*100vw);
}
.overview .col-1 .ttl-2::after {
  background-image: url(../img/cut-2.svg);
  width: calc(46/750*100vw);
}
.overview .col-2 .ttl-2::before {
  background-image: url(../img/cut-3.svg);
  width: calc(54/750*100vw);
}
.overview .col-2 .ttl-2::after {
  background-image: url(../img/cut-4.svg);
  width: calc(40/750*100vw);
}
.overview + .inter-note {
  font-size: calc(24/750*100vw);
  font-feature-settings: "palt";
  line-height: 1.75;
  margin-bottom: calc(150/750*100vw);
}


.komatsuna {
  display: block;
  position: relative;
  width: 100%;
  padding: calc(60/750*100vw) 0;
  border: calc(6/750*100vw) solid var(--color-1);
  border-radius: calc(40/750*100vw);
  overflow: visible
}
.komatsuna .inner {
  box-sizing: content-box;
  display: block;
  width: calc(100% + 1.2vw);
  padding-top: calc(48/750*100vw);
  position: relative;
  z-index: +1;
  margin-left: -1.2vw;
  background-color: var(--color-0);
  border: calc(6/750*100vw) solid var(--color-0);
  font-feature-settings: "palt"
}
.komatsuna .ttl-3 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(450/750*100vw);
  height: calc(92/750*100vw);
  background-color: var(--color-1);
  color: #fff;
  font-size: calc(36/750*100vw);
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em;
  position: absolute;
  top: calc(-92/2/750*100vw);
  left: 50%;
  transform: translateX(-50%)
}
.komatsuna .ttl-3::before,
.komatsuna .ttl-3::after {
  position: absolute;
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
}
.komatsuna .ttl-3::before {
  left: 0;
  border-color: transparent transparent transparent var(--color-0);
  border-width: calc(46/750*100vw) 0 calc(46/750*100vw) calc(29/750*100vw)
}
.komatsuna .ttl-3::after {
  right: 0;
  border-color: transparent var(--color-0) transparent transparent;
  border-width: calc(46/750*100vw) calc(29/750*100vw) calc(46/750*100vw) 0
}



.komatsuna .ttl-4 {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: calc(26/750*100vw)
}

.komatsuna .ttl-4 .ttl-inner {
  display: inline-flex;
  align-items: center;
  font-size: calc(34/750*100vw);
  font-weight: 700;
  line-height: 1.7647058823529411;
}
.komatsuna .ttl-4 .ttl-inner::before,
.komatsuna .ttl-4 .ttl-inner::after {
  content: '';
  display: block;
  width: calc(58/750*100vw);
  height: calc(78/750*100vw);
  margin-top: 2vw;
  background: url(../img/ornament-2_sp.svg)
}
.komatsuna .ttl-4 .ttl-inner::before {
  margin-right: calc(22/750*100vw)
}
.komatsuna .ttl-4 .ttl-inner::after {
  margin-left: calc(22/750*100vw);
  transform: rotateY(180deg)
}
.komatsuna .cols {
  flex-direction: column;
  align-items: center;
  margin-bottom: calc(40/750*100vw)
}
.komatsuna .cols .img_box {
  width: calc(468/750*100vw);
  height: calc(370/750*100vw);
  filter: drop-shadow(0.8vw 0.8vw 1.1vw rgba(0, 0, 0, .2))
}
.komatsuna .cols .feature {
  width: 100%;
}
.komatsuna .cols .feature dl {
  display: flex;
  align-items: center;
  height: calc(176/750*100vw)
}
.komatsuna .cols .feature dl + dl {
  border-top: calc(4/750*100vw) dotted
}
.komatsuna .cols .feature dt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: calc(102/750*100vw);
  height: calc(102/750*100vw);
  background-color: var(--color-2);
  border-radius: 50%;
  border: calc(4/750*100vw) solid #000;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.komatsuna .cols .feature .jp {
  font-size: calc(24/750*100vw);
  letter-spacing: .06em;
  padding-left: calc(4/750*100vw)
}
.komatsuna .cols .feature .num {
  font-size: calc(36/750*100vw);
  letter-spacing: .04em;
}
.komatsuna .cols .feature dd {
  margin-left: calc(20/750*100vw);
  font-size: calc(26/750*100vw);
  font-weight: 500;
  line-height: 1.8461538461538463;
  letter-spacing: .02em
}

.komatsuna .bttn-1,
.komatsuna .bttn-1 .btn-plate,
.komatsuna .bttn-1 .btn-inner {
  border-radius: calc(57/750*100vw);
}
.komatsuna .bttn-1,
.komatsuna .bttn-1 .btn-plate {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.komatsuna .bttn-1 {
  position: relative;
  display: block;
  width: calc(604/750*100vw);
  height: calc(114/750*100vw);
  margin: 0 auto;
  background-image: url(../img/btn-1_sp.png);
  box-shadow: calc(9/750*100vw) calc(9/750*100vw)  rgba(28, 28, 28, .3);
}

.komatsuna .bttn-1 .btn-plate,
.komatsuna .bttn-1 .btn-inner {
  position: absolute;
  width: 100%;
  height: 100%;
}

.komatsuna .bttn-1 .btn-inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.komatsuna .bttn-1 .btn-txt {
  display: block;
  width: calc(275/750*100vw);
  height: calc(39/750*100vw);
}
.komatsuna .bttn-1 .btn-txt img {
  width: 100%;
  height: 100%;
  object-fit: contain
}
.komatsuna .note {
  margin: calc(67/750*100vw) 2em calc(55/750*100vw);
  font-size: calc(24/750*100vw);
  font-weight: 400;
  line-height: 1.45;
  padding-left: 1em;
  text-indent: -1em;
}







.flow {
  display: block;
  width: 100%;
  padding: calc(140/750*100vw) 0;
  background-color: var(--color-1)
}

.sec-2 {
  padding: 0 calc(30/750*100vw)
}
.sec-2 .before {
  background-image: url(../img/icon-2.svg)
}
.sec-2 .ttl-1 {
  margin-bottom: calc(140/750*100vw)
}
.sec-2 .ttl-1 .ttl-inner {
  width: calc(456/750*100vw);
  margin: 0 calc(25/750*100vw);
  transform: translateY(calc(-14/750*100vw))
}


.inspection {
  display: block;
  width: 100%;
  padding: calc(170/750*100vw) calc(31/750*100vw) calc(40/750*100vw);
  background-color: var(--color-0);
  border-radius: calc(30/750*100vw);
  box-shadow: calc(10/750*100vw) calc(10/750*100vw) rgba(0, 0, 0, .3);
  position: relative;
}
.inspection-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(336/750*100vw);
  height: calc(94/750*100vw);
  border: calc(4/750*100vw) solid #000;
  background-color: var(--color-2);
  border-radius: calc(47/750*100vw);
  position: absolute;
  top: calc(-47/750*100vw);
  left: 50%;
  transform: translateX(-50%)
}
.inspection-ttl::before,
.inspection-ttl::after {
  content: '';
  display: block;
  width: calc(10/750*100vw);
  height: calc(10/750*100vw);
  background-color: var(--color-1)
}
.inspection-ttl .ttl-inner {
  font-size: calc(36/750*100vw);
  font-weight: 700;
  padding: 0 .5em;
  line-height: 1;
  transform: translateY(-.075em)
}

.steps {
  display: block;
  width: 100%;
  padding-top: calc(130/750*100vw);
  background-color: #ffff80;
  border-radius: calc(21/750*100vw);
  position: relative;
}
.steps + .steps {
  margin-top: calc(110/750*100vw);
}


.step-ttl {
  display: block;
  width: calc(164/750*100vw);
  height: calc(164/750*100vw);
  padding-top: calc(30/750*100vw);
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: absolute;
  top: calc(-82/750*100vw);
  left: calc(50% - 10.933333333333334vw);
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: calc(26/750*100vw);
  letter-spacing: .04em;
  color: #fff
}
.step-sub-ttl {
  text-align: center;
  font-size: calc(44/750*100vw);
  line-height: 1.3636363636363635;
  font-weight: 700;
  color: var(--color-3)
}
.inspection .lead {
  text-align: center;
}
.step-sub-ttl + .lead {
  margin: calc(56/750*100vw) auto 0
}
.step-1 .step-ttl {
  background-image: url(../img/step-1.svg)
}
.step-2 .step-ttl {
  background-image: url(../img/step-2.svg)
}
.step-3 .step-ttl {
  background-image: url(../img/step-3.svg)
}
.step-4 .step-ttl {
  background-image: url(../img/step-4.svg)
}

.step-1 {
  padding-bottom: calc(70/750*100vw)
}


/* Step 2 */
.term {
  width: calc(552/750*100vw);
  margin: calc(56/750*100vw) auto;
  text-align: center;
  background-color: #fff;
  border: calc(4/750*100vw) solid #231815;
  border-radius: calc(20/750*100vw);
  position: relative;
  padding: calc(154/750*100vw) 0 calc(50/750*100vw);
  overflow: hidden
}
.term-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: calc(104/750*100vw);
  border-bottom: calc(4/750*100vw) solid #231815;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--color-3);
  font-size: calc(32/750*100vw);
  font-weight: 700;
  color: #fff
}
.term-txt {
  font-size: calc(26/750*100vw);
  font-weight: 700;
  line-height: 1.8461538461538463;
  font-feature-settings: "palt"
}

.steps .note {
  margin-top: calc(64/750*100vw);
  text-align: center;
  font-size: calc(26/750*100vw);
  font-weight: 500;
  line-height: 1.9230769230769231
}
.steps .note strong {
  font-weight: 700;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: calc(4/750*100vw);
  text-underline-offset: calc(10/750*100vw);
  text-decoration-color: var(--color-1)
}

.step-2 {
  padding-bottom: calc(95/750*100vw)
}
.step-2 .attention {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: calc(592/750*100vw);
  height: calc(88/750*100vw);
  position: absolute;
  bottom: calc(-33/750*100vw);
  left: 50%;
  transform: translateX(-50%);
}
.step-2 .attention::after {
  content: '';
  display: block;
  width: calc(40/750*100vw);
  height: calc(38/750*100vw);
  background: url(../img/ornament-3_sp.svg) no-repeat center top / cover;
  position: absolute;
  right: calc(-22/750*100vw);
  top: calc(-10/750*100vw);
}
.step-2 .attention .frame {
  display: block;
  width: 100%;
  height: calc(72/750*100vw);
  border-radius: calc(36/750*100vw);
  border: calc(4/750*100vw) solid var(--color-3);
  background-color:#fff;
  position: relative;
}
.step-2 .attention .frame::before,
.step-2 .attention .frame::after {
  content: '';
  display: block;
  height: 0;
  width: 0;
  border: solid transparent;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.step-2 .attention .frame::after {
	border-bottom-color: #fff;
	border-width: calc(16/750*100vw) calc(10/750*100vw);
}
.step-2 .attention .frame::before {
	border-bottom-color: var(--color-3);
	border-width: calc(22/750*100vw) calc(16/750*100vw);
}
.step-2 .attention b {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: calc(26/750*100vw);
  font-weight: 700;
  color: var(--color-3);
  transform: translate(.25em, -.1em)
}

.points {
  margin-top: calc(124/750*100vw);
  margin-bottom: calc(50/750*100vw)
}
.points-ttl {
  font-size: calc(36/750*100vw);
  font-weight: 700;
  color: var(--color-1);
  text-align: center;
  text-decoration-line: underline;
  text-decoration-style: wavy;
  text-decoration-thickness: calc(4/750*100vw);
  text-underline-offset: calc(16/750*100vw);
  text-decoration-color: var(--color-1);
  margin-bottom: calc(28/750*100vw);
}

.point-list {
  width: calc(580/750*100vw);
  padding: 0;
  margin: 0 auto;
}
.point-list li {
  list-style: none;
  padding: calc(30/750*100vw) 0 calc(30/750*100vw) calc(54/750*100vw);
  margin: 0;
  font-size: calc(26/750*100vw);
  font-weight: 500;
  line-height: 1.6153846153846154;
  font-feature-settings: "palt";
  background: url(../img/check.svg) no-repeat left calc(30/750*100vw) / calc(36/750*100vw) auto
}
.point-list li + li {
  border-top: calc(4/750*100vw) dotted rgba(0, 0, 0, .2)
}
.attention-2 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(584/750*100vw);
  height: calc(162/750*100vw);
  margin: calc(40/750*100vw) auto 0;
  border-radius: calc(81/750*100vw);
  border: calc(4/750*100vw) solid var(--color-1);
  background-color: #fff;
}
.attention-2 p {
  font-size: calc(28/750*100vw);
  font-weight: 700;
  font-feature-settings: "palt";
  color: var(--color-1);
  line-height: 1.6428571428571428;
  text-align: center;
  transform: translateY(-.1em)
}

.inter-ttl {
  margin-top: calc(90/750*100vw);
  margin-bottom: calc(72/750*100vw);
  text-align: center;
  font-size: calc(32/750*100vw);
  font-weight: 700;
  color: #fff
}
.inter-ttl .ttl-inner {
  display: inline-flex;
  align-items: center;
}
.inter-ttl .ttl-inner::before,
.inter-ttl .ttl-inner::after {
  content: '';
  display: block;
  width: calc(22/750*100vw);
  height: calc(32/750*100vw);
  background: url(../img/ornament-4_sp.svg);
  margin-top: .1em
}
.inter-ttl .ttl-inner::before {
  margin-right: .75em
}
.inter-ttl .ttl-inner::after {
  margin-left: .75em;
  transform: rotateY(180deg)
}

.step-3,
.step-4 {
  padding-bottom: calc(70/750*100vw);
}



.sec-3 {
  padding: calc(158/750*100vw) 0;
}

.sec-3 .before {
  background-image: url(../img/icon-3.svg)
}

.sec-3 .ttl-1 .ttl-inner {
  width: calc(248/750*100vw);
  margin: 0 calc(25/750*100vw);
}
.sec-3 .lead {
  text-align: center;
  margin-bottom: calc(130/750*100vw)
}


.presents,
.presents .cols {
  flex-direction: column;
  align-items: center
}
.presents .note {
  font-size: calc(24/750*100vw);
  font-weight: 400;
  line-height: 1.5
}
.presents .col {
  display: block;
  width: calc(650/750*100vw);
  border: calc(4/750*100vw) solid #000;
  border-radius: calc(30/750*100vw);
  background-color: #ffff80;
  position: relative;
  padding-top: calc(100/750*100vw);
  padding-bottom: calc(40/750*100vw)
}

.present-2 {
  margin-top: calc(106/750*100vw)
}
.present-3 {
  margin-top: calc(126/750*100vw)
}

.present-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: calc(468/750*100vw);
  height: calc(112/750*100vw);
  font-size: calc(34/750*100vw);
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.2777777777777777;
  text-align: center;
  color: #fff;
  border-radius: calc(56/750*100vw);
  position: absolute;
  top: calc(-56/750*100vw);
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--color-1)
}
.present-ttl::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: solid transparent;
	border-top-color: var(--color-1);
	border-width: calc(28/750*100vw) calc(27/750*100vw);
  position: absolute;
  top: calc(100% - 1.6vw);
  left: 50%;
  transform: translateX(-50%);
}

.present-3 .present-ttl {
  width: calc(524/750*100vw);
  height: calc(156/750*100vw);
  border-radius: calc(78/750*100vw);
  top: calc(-78/750*100vw);
}

.present-list {
  font-size: calc(30/750*100vw);
  line-height: 1.6666666666666667;
  font-weight: 700;
  text-align: center;
}

ul.present-list,
.present-list li {
  list-style: none;
  padding: 0;
  margin: 0;
}
.present-list li {
  display: block;
  width: calc(510/750*100vw);
  position: relative;
  border-radius: calc(28/750*100vw);
  background-color: var(--color-0);
}

.present-1 .present-list li {
  height: calc(290/750*100vw);
  padding: calc(48/750*100vw) 0 0;
  background-repeat: no-repeat;
  background-position-x: 50%
}
.present-1 .present-list li + li::before {
  content: 'or';
  position: absolute;
  left: 50%;
  top: calc(-60/750*100vw);
  transform: translateX(-50%);
  font-size: calc(26/750*100vw);
  font-weight: 500;
}
.present-1 .present-list li:first-child {
  background-image: url(../img/cut-5.svg);
  background-size: calc(160/750*100vw) auto;
  background-position-y: 73%;
  margin-bottom: calc(75/750*100vw)
}
.present-1 .present-list li:last-child {
  height: calc(342/750*100vw);
  background-image: url(../img/cut-6.svg);
  background-size: calc(124/750*100vw) auto;
  background-position-y: 79%
}
.present-1 .note {
  width: 78%;
  margin: calc(50/750*100vw) auto 0;
}


.present-2 .present-list {
  height: calc(350/750*100vw);
  background: url(../img/cut-7.svg) no-repeat center 100% / calc(132/750*100vw) auto
}
.present-2 .note {
  margin: calc(50/750*100vw) auto 0 calc(70/750*100vw);
}

.present-3 .present-list {
  padding-top: calc(26/750*100vw)
}
.present-3 .present-list li {
  margin-bottom: calc(20/750*100vw);
  padding: calc(56/750*100vw) 0 0;
  background-repeat: no-repeat;
  background-position-x: 50%
}
.present-3 .present-list li.with-note {
  display: flex;
  flex-direction: column;
  justify-content: space-between
}
.present-3 .present-list li:nth-child(1) {
  height: calc(318/750*100vw);
  background-image: url(../img/cut-8.svg);
  background-position-y: 78%;
  background-size: calc(96/750*100vw) auto
}
.present-3 .present-list li:nth-child(2) {
  height: calc(344/750*100vw);
  background-image: url(../img/cut-9.svg);
  background-position-y: 80%;
  background-size: calc(106/750*100vw) auto
}
.present-3 .present-list li:nth-child(3) {
  height: calc(420/750*100vw);
  padding-bottom: calc(40/750*100vw);
  background-image: url(../img/cut-10.svg);
  background-position-y: 63%;
  background-size: calc(104/750*100vw) auto
}

.present-3 > .note {
  width: calc(510/750*100vw);
  margin: 0 auto;
}





.faq {
  display: block;
  width: 100%;
  padding: calc(140/750*100vw) calc(30/750*100vw);
  background-color: var(--color-1)
}
.sec-4 .before {
  background-image: url(../img/icon-4.svg)
}
.sec-4 .ttl-1 {
  margin-bottom: calc(100/750*100vw)
}
.sec-4 .ttl-1 .ttl-inner {
  width: calc(300/750*100vw);
  margin: 0 calc(35/750*100vw);
  transform: translateY(calc(-14/750*100vw))
}

.faq-box {
  display: block;
  width: 100%;
}
.faq-list,
.faq-list li {
  list-style: none;
  padding: 0;
  margin: 0
}
.faq-list li {
  display: block;
  width: 100%;
  background-color: var(--color-0);
  border-radius: calc(30/750*100vw);
  box-shadow: calc(10/750*100vw) calc(10/750*100vw) 0 rgba(0, 0, 0, .3)
}
.faq-list li + li {
  margin-top: calc(50/750*100vw)
}

.faq-list li dt {
  display: flex;
  align-items: center;
  padding:0 calc(44/750*100vw) 0 calc(32/750*100vw);
  border-radius: calc(30/750*100vw);
  background-color: var(--color-2);
  font-size: calc(28/750*100vw);
  font-weight: 700;
  line-height: 1.8571428571428572;
  cursor: pointer;
}
.faq-list li dt::before {
  content: 'Q.';
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: calc(50/750*100vw);
  margin-right: calc(25/750*100vw);
  color: var(--color-1);
  white-space: nowrap;
}
.faq-list li dt::after {
  content: '';
  display: block;
  flex: 0 0 calc(38/750*100vw);
  width: calc(38/750*100vw);
  height: calc(26/750*100vw);
  background: url(../img/arrow.svg) no-repeat center center / cover;
  margin-left: auto;
  transform: rotate(180deg);
  transition: transform .3s ease
}
.faq-list li dt.open::after {
  transform: rotate(0deg)
}
.faq-list li .q-inner {
  width: calc(468/750*100vw);
  padding: calc(40/750*100vw) 0;
}

.faq-list li .ans-inner {
  width: calc(550/750*100vw);
  margin: 0 auto;
  padding: calc(50/750*100vw) 0;
  font-size: calc(26/750*100vw);
  line-height: 1.9230769230769231;
  font-weight: 500;
  letter-spacing: .05em;
  text-align: justify;
  font-feature-settings: "palt"
}




.sec-5 {
  padding: calc(160/750*100vw) calc(30/750*100vw) calc(170/750*100vw);
}
.sec-5 .before {
  background-image: url(../img/icon-5.svg)
}

.sec-5 .ttl-1 .ttl-inner {
  width: calc(207/750*100vw);
  margin: 0 calc(30/750*100vw);
  transform: translateY(calc(-14/750*100vw))
}
.sec-5 .lead {
  text-align: center;
  margin-bottom: calc(96/750*100vw)
}

.guideline {
  font-feature-settings: "palt";
  letter-spacing: .04em;
}
.guideline-box {
  display: block;
  width: 100%;
  height: calc(926/750*100vw);
  padding: calc(60/750*100vw) 0 calc(44/750*100vw);
  margin-bottom: calc(63/750*100vw);
  overflow: hidden;
  background-color: #fff;
  border: calc(8/750*100vw) solid #000;
  border-radius: calc(30/750*100vw);
}
.guideline-box-inner {
  display: block;
  width: calc(600/750*100vw);
  padding-right: calc(54/750*100vw);
  margin: 0 auto;
  height: 100%;
  overflow: hidden;
  overflow-y: scroll
}
.guideline-ttl {
  font-size: calc(30/750*100vw);
  font-weight: 700;
  line-height: 1.7333333333333334;
  color: var(--color-1);
  text-align: center;
  margin-bottom: 1.25em;
}
.guideline hr {
  display: block;
  border: 0;
  background: none;
  border-bottom: calc(2/750*100vw) solid rgba(0, 0, 0, .2);
  margin-top: 2em
}
.guide-sub-ttl {
  font-size: calc(26/750*100vw);
  font-weight: 700;
  margin: 2em 0 1em
}
.guide-sub-ttl span::before {
  content: '【'
}
.guide-sub-ttl span::after {
  content: '】'
}
.guideline .txt {
  font-size: calc(24/750*100vw);
  line-height: 2;
  text-align: justify
}
.guideline a {
  color: var(--color-1);
  text-decoration: underline
}
.guideline ul,
.guideline ol {
  padding-left: 1.5em
}


.guideline dt {
  font-weight: 500
}
.guideline .sample dd {
  padding-left: 1em;
}
.guideline dd + dt {
  margin-top: .45em
}


.bttn-2,
.bttn-2 .btn-plate,
.bttn-2 .btn-inner {
  border-radius: calc(31/750*100vw);
}
.bttn-2 {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.bttn-2 {
  position: relative;
  display: block;
  width: calc(656/750*100vw);
  height: calc(226/750*100vw);
  margin: 0 auto calc(120/750*100vw);
  background-image: url(../img/btn-2_sp.png);
  box-shadow: calc(10/750*100vw) calc(10/750*100vw) rgba(28, 28, 28, .3);
}

.bttn-2 .btn-plate,
.bttn-2 .btn-inner {
  position: absolute;
  width: 100%;
  height: 100%;
}
.bttn-2 .btn-inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.bttn-2 .btn-txt {
  display: block;
  width: calc(347/750*100vw);
  height: calc(85/750*100vw);
  transform: translateY(calc(-14/750*100vw))
}
.bttn-2 .btn-txt img {
  width: 100%;
  height: 100%;
  object-fit: contain
}



.inquiries-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: calc(48/750*100vw);
  font-size: calc(30/750*100vw);
  font-weight: 800;
  text-align: center;
}
.inquiries-ttl .ttl-inner {
  padding: 0 calc(46/750*100vw);
}
.inquiries-ttl::before,
.inquiries-ttl::after {
  content: '';
  display: block;
  height: calc(4/750*100vw);
  width: calc(64/750*100vw);
  background-color: currentColor
}

.bttn-mail,
.bttn-mail .btn-plate,
.bttn-mail .btn-inner {
  border-radius: calc(57/750*100vw);
}
.bttn-mail {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.bttn-mail {
  position: relative;
  display: block;
  width: calc(604/750*100vw);
  height: calc(114/750*100vw);
  margin: 0 auto;
  background-image: url(../img/btn-mail_sp.png);
  box-shadow: calc(9/750*100vw) calc(9/750*100vw) rgba(28, 28, 28, .3);
}
.bttn-mail .btn-plate,
.bttn-mail .btn-inner {
  position: absolute;
  width: 100%;
  height: 100%;
}
.bttn-mail .btn-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(30/750*100vw);
  font-weight: 900;
  letter-spacing: .08em;
}


.pre-footer {
  position: relative;
  padding-top: calc(70/750*100vw);
  background-color: var(--color-1);
}
.footer {
  display: block;
  width: 100%;
  padding: 0 calc(67/750*100vw) calc(60/750*100vw);
  background-color: var(--color-1);
  text-align: center;
  color: #fff;
  font-feature-settings: "palt";
}


.back2top,
.back2top .btn-plate {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.back2top {
  display: block;
  width: calc(124/750*100vw);
  height: calc(124/750*100vw);
  border-radius: 50%;
  position: absolute;
  right: calc(26/750*100vw);
  z-index: 1000;
  top: auto;
  bottom: calc(26/750*100vw);
  background-image: url(../img/btn-back2top_sp.png);
  box-shadow: calc(6/750*100vw) calc(6/750*100vw) rgba(28, 28, 28, .3);
}
.back2top .btn-plate,
.back2top .btn-inner {
  position: absolute;
  width: 100%;
  height: 100%;
}
.back2top .btn-inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.back2top .btn-txt {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: calc(28/750*100vw);
  letter-spacing: .04em;
  color: #000;
  transform: translateY(calc(16/750*100vw))
}


.footer address {
  font-size: calc(30/750*100vw);
  font-style: normal;
  line-height: 1.8;
  padding-bottom: calc(42/750*100vw);
}
.footer address .name {
  font-weight: 700;
}
.footer address .mail {
  font-weight: 500;
}
.footer hr {
  width: 100%;
  background: none;
  border: none;
  border-bottom: calc(2/750*100vw) solid rgba(255, 255, 255, .5);
  margin: 0 auto calc(50/750*100vw)
}
.copyright .jp {
  font-size: calc(26/750*100vw);
  font-weight: 500;
}
.copyright .en {
  font-size: calc(20/750*100vw);
  font-weight: 400;
  line-height: 1.3846153846153846;
  margin-top: calc(68/750*100vw)
}



/* --------------------------------------------------
results page
-------------------------------------------------- */

/* sec, sec-titles */

.calendar {
  padding-top: calc(100 / 750 * 100vw);
  margin: calc(60 / 750 * 100vw) auto calc(40 / 750 * 100vw)
}

.about-2.sec-1 {
  padding: calc(100 / 750 * 100vw) 0 calc(178 / 750 * 100vw);
}

.winner-list-area {
  display: block;
  width: 100%;
  padding: calc(150 / 750 * 100vw) 0;
  background-color: var(--color-1);
  overflow: hidden;
}
.winner-list-area .sec .before {
    background-image: url(../img/icon-6.svg)
  }
  .winner-list-area .sec .ttl-1 {
    margin-bottom: calc(162 / 750 * 100vw)
  }
  .winner-list-area .sec .ttl-1 .ttl-inner {
    width: calc(208 / 750 * 100vw);
    margin: 0 calc(40 / 750 * 100vw);
    transform: translateY(calc(-14/750*100vw));
  }


.comments-list.sec-3 {
  padding: calc(150 / 750 * 100vw) 0 calc(125 / 750 * 100vw);
}
.comments-list.sec-3 .before {
  background-image: url(../img/icon-7.svg)
}

.comments-list.sec-3 .ttl-1 .ttl-inner {
  width: calc(308 / 750 * 100vw);
  margin: 0 calc(40 / 750 * 100vw);
  transform: translateY(calc(-14/750*100vw));
}

.recipe-book {
  padding-bottom: calc(180 / 750 * 100vw)
}

/* calendar */
/* recipe book */
.bttn-recipe,
.bttn-calendar,
:is(.bttn-recipe, .bttn-calendar) .btn-plate {
  border-radius: calc(30 / 750 * 100vw);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.bttn-recipe,
.bttn-calendar {
  position: relative;
  display: block;
  width: calc(656 / 750 * 100vw);
  margin: 0 auto;
  box-shadow: calc(9.6 / 750 * 100vw) calc(9.6 / 750 * 100vw) rgba(28, 28, 28, .3);
  transition: box-shadow .15s ease;
}
.bttn-calendar {
  height: calc(308 / 750 * 100vw);
  background-image: url(../img/bttn-calendar_sp.png);
}
.bttn-recipe {
  height: calc(296 / 750 * 100vw);
  background-image: url(../img/bttn-recipe_sp.png);
}
:is(.bttn-recipe, .bttn-calendar) .btn-txt {
  position: absolute;
  width: 100%;
  height: 100%;
}
:is(.bttn-recipe, .bttn-calendar) .btn-plate {
  display: none;
}
:is(.bttn-recipe, .bttn-calendar) .btn-txt img {
  width: 100%;
  height: 100%;
  object-fit: contain
}


/* about */

.results-page .about-plate {
  display: block;
  width: calc(650 / 750 * 100vw);
  margin: 0 auto;
  border: solid calc(4 / 750 * 100vw) #1c1c1c;
  border-radius: calc(30 / 750 * 100vw);
  overflow: hidden;
  background-color: #fff;
  box-shadow: calc(5 / 750 * 100vw) calc(5 / 750 * 100vw) rgba(28, 28, 28, .3);
  transition: box-shadow .15s ease;
}

.results-page .about-plate .question {
    display: block;
    width: 100%;
    height: calc(174 / 750 * 100vw);
    position: relative;
  }
  .results-page .about-plate .question::after {
      content: '';
      display: block;
      width: calc(43 / 750 * 100vw);
      height: calc(29 / 750 * 100vw);
      background: url(../img/arrow.svg) no-repeat center center / cover;
      margin-left: auto;
      transform: translateY(-50%) rotate(180deg);
      transition: transform .3s ease;
      position: absolute;
      top: 50%;
      right: calc(39 / 750 * 100vw);
    }
    .results-page .about-plate .question.open::after {
      transform: translateY(-50%) rotate(0deg);
    }
    .results-page .about-plate .question .btn-plate {
      display: block;
      width: 100%;
      height: 100%;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover;
      background-image: url(../img/acc-ttl-bg_sp.png);
    }
    .results-page .about-plate .question .btn-txt {
      display: block;
      width: calc(400 / 750 * 100vw);
      height: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
    }


.results-page .answer .lead {
  width: calc(550 / 750  * 100vw);
  margin: calc(60 / 750 * 100vw) auto calc(82 / 750 * 100vw);
  text-align: justify
}

.prize-list {
  width: calc(590 / 750 * 100vw);
  margin: 0 auto;
  padding: 0;
  text-align: center;
}
.prize-list li {
    display: inline-block;
    width: calc(264 / 750 * 100vw);
    height: calc(264 / 750 * 100vw);
    margin: 0 calc(10 / 750 * 100vw) calc(74 / 750 * 100vw);
    position: relative;
  }
  .prize-list li::after {
      content: '';
      display: block;
      width: calc(83 / 750 * 100vw);
      height: calc(104 / 750 * 100vw);
      background: url(../img/medal-2.svg) no-repeat center top / contain;
      position: absolute;;
      left: 50%;
      top: calc(-44 / 750 * 100vw);
      transform: translateX(-50%);
    }
    .prize-list li.grad-prix {
      margin: 0 calc(143 / 750 * 100vw) calc(74 / 750 * 100vw);
    }
    .prize-list li.grad-prix::after {
      background-image: url(../img/medal-1.svg)
    }


.judge {
  display: block;
  width: calc(570 / 750 * 100vw);
  margin: 0 auto calc(40 / 750 * 100vw);
  padding: calc(74 / 750 * 100vw) 0 calc(100 / 750 * 100vw);
  border-radius: calc(20 / 750 * 100vw);
  background-color: var(--color-6);
}
.judge .ttl {
    display: inline-flex;
    width: 100%;
    justify-content: center;
    column-gap: 3px;
    font-size: calc(34 / 750 * 100vw);
    font-weight: 700;
    color: #fff;
    margin-bottom: calc(18 / 750 * 100vw);
  }
  .judge .ttl span {
      display: inline-flex;
      justify-content: center;
      align-items: center;
      position: relative;
      width: calc(58 / 750 * 100vw);
      height: calc(58 / 750 * 100vw);
      background-color: var(--color-3);
      border-radius: calc(8 / 750 * 100vw);
    }

.judge-list {
  list-style: none;
  display: block;
  width: calc(470 / 750 * 100vw);
  padding: 0;
  margin: 0 auto;
}
.judge-list li {
    display: block;
    padding: calc(50 / 750 * 100vw) 0;
    text-align: center;
    border-bottom: solid calc(2 / 750 * 100vw) var(--color-3)
  }
  .judge-list .name {
    font-size: calc(34 / 750 * 100vw);
    font-weight: 700;
    color: var(--color-1);
    margin-bottom: calc(29 / 750 * 100vw);
  }
  .judge-list .title {
    font-size: calc(24 / 750 * 100vw);
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5714285714285714;
  }

.criterion {
  margin-top: calc(150 / 750 * 100vw);
}
.criterion .criterion-ttl {
    font-size: calc(50 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .02em;
    color: var(--color-1);
    text-align: center;
    text-decoration-line: underline;
    text-decoration-style: wavy;
    text-decoration-thickness: calc(4 / 750 * 100vw);
    text-underline-offset: calc(16 / 750 * 100vw);
    text-decoration-color: var(--color-1);
    margin-bottom: calc(80 / 750 * 100vw);
  }
  .criterion ol {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: calc(30 / 750 * 100vw);
    counter-reset: number;
  }
  .criterion ol li {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: calc(306 / 750 * 100vw);
      height: calc(306 / 750 * 100vw);
      padding-top: calc(40 / 750 * 100vw);
      background-color: var(--color-6);
      border-radius: 50%;
      font-size: calc(30 / 750 * 100vw);
      font-weight: 700;
      letter-spacing: .02em;
      line-height: 1.6;
      text-align: center;
    }
    .criterion ol li::before {
        counter-increment: number;
        content: counter(number, decimal-leading-zero);
        font-family: "Zen Kaku Gothic New", sans-serif;
        font-size: calc(46 / 750 * 100vw);
        letter-spacing: .04em;
        line-height: 1;
        color: var(--color-1);
        text-decoration-line: underline;
        text-underline-offset: calc(10 / 750 * 100vw);
        text-decoration-thickness: calc(4 / 750 * 100vw);
        margin-bottom: calc(50 / 750 * 100vw);
      }

.criterion li:nth-child(2) {
  animation-delay: .3s;
}


/* winner */


.winner-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.winner-list li {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
  }
  .winner-list li + li {
      margin-top: calc(164 / 750 * 100vw);
    }

    .winner-list li .inner {
      display: block;
      width: 100%;
      height: auto;
      padding: calc(110 / 750 * 100vw) calc(50 / 750 * 100vw) calc(50 / 750 * 100vw);
      border-radius: calc(30 / 750 * 100vw);
      background-color: var(--color-0);
      box-shadow: calc(10 / 750 * 100vw) calc(10 / 750 * 100vw) rgba(28, 28, 28, .3);
      animation-delay: .8s;
      overflow: hidden;
    }

    .winner-list li h3 {
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: calc(32 / 750 * 100vw);
      font-weight: 900;
      text-align: center;
      width: calc(524 / 750 * 100vw);
      height: calc(153 /750 * 100vw);
      padding-left: calc(48 / 750 * 100vw);
      padding-bottom: .5em;
      position: absolute;
      top: calc(-76 / 750 * 100vw);
      left: calc(50% - 34.93333333333333vw);
      background-image: url(../img/medal-2.svg), url(../img/prz-plate_sp.png);
      background-position: left center, right center;
      background-repeat: no-repeat, no-repeat;
      background-size: calc(122 / 750 * 100vw) auto, calc(459 / 750 * 100vw) auto;
      z-index: +1;
    }
    .winner-list li h3.two-line {
        padding-left: calc(90 / 750 * 100vw);
      }

      .winner-list li.grad-prix h3 {
      background-image: url(../img/medal-1.svg), url(../img/prz-plate_sp.png);
      padding-bottom: 0;
    }
    .winner-list li .dish {
      font-size: calc(40 / 750 * 100vw);
      font-weight: 700;
      line-height: 2;
      text-align: center;
      margin-bottom: calc(45 / 750 * 100vw);
      text-decoration-line: underline;
      text-decoration-style: solid;
      text-decoration-color: var(--color-6);
      text-decoration-thickness: calc(20 / 750 * 100vw);
      text-underline-offset: calc(-10 / 750 * 100vw);
    }
    .winner-list li .originator {
      font-size: calc(26 / 750 * 100vw);
      font-weight: 700;
      text-align: center;
      margin-bottom: calc(70 / 750 * 100vw);
    }
    .winner-list li .img-box {
      display: block;
      width: calc(590 / 750 * 100vw);
      height: calc(356 / 750 * 100vw);
      margin: 0 auto calc(78 / 750 * 100vw);
      border-radius: calc(20 / 750 * 100vw);
      overflow: hidden;
    }
    .winner-list li .img-box img {
        max-width: none;
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .winner-list li .description {
      margin-bottom: calc(93 / 750 * 100vw);
    }
    .winner-list li .description .txt {
        display: block;
        font-feature-settings: "palt";
        font-size: calc(26 / 750 * 100vw);
        font-weight: 500;
        letter-spacing: .06em;
        line-height: 2.6153846153846154;

        background-image: linear-gradient(var(--color-0) calc(100% - 0.4vw), transparent 0), linear-gradient(90deg, rgba(0, 0, 0, .2) calc(3 / 750 * 100vw), transparent 0);
        background-size: 100% 2.6153846153846154em, calc(6 / 750 * 100vw) 100%;
        background-repeat: repeat-y, repeat-x;
        padding-bottom: calc(20 / 750 * 100vw);
      }

      .winner-list li .more-details {
        display: block;
        width: 100%;
        height: calc(140 / 750 * 100vw);
        margin-top: calc(50 / 750 * 100vw);
        background-color: var(--color-3);
        border: solid calc(4 / 750 * 100vw) #000;
        border-radius: calc(20 / 750 * 100vw);
        overflow: hidden;
        background-image: url(../img/ico-plus.svg);
        background-repeat: no-repeat;
        background-position: right calc(34 / 750 * 100vw) center;
        background-size: calc(48 / 750 * 100vw) calc(48 / 750 * 100vw);
      }
      .winner-list li .more-details a {
          display: flex;
          align-items: center;
          width: 100%;
          height: 100%;
          padding-left: calc(114 / 750 * 100vw);
          font-size: calc(30 / 750 * 100vw);
          font-weight: 700;
          color: #fff;
        }
        .winner-list li .more-details a::before {
            content: '';
            display: block;
            width: calc(134 / 750 * 100vw);
            height: calc(83 / 750 * 100vw);
            background: url(../img/icon-5.svg) no-repeat right calc(-10 / 750 * 100vw) center / contain;
          }

          .winner-list li .reason {
      display: block;
      width: 100%;
      padding: calc(82 / 750 * 100vw) calc(50 / 750 * 100vw) calc(62 / 750 * 100vw);
      background-color: var(--color-6);
      border-radius: calc(20 / 750 * 100vw);
      position: relative;
    }
    .winner-list li .reason .ttl {
        display: inline-flex;
        width: 100%;
        justify-content: center;
        column-gap: calc(6 / 750 * 100vw);
        font-size: calc(34 / 750 * 100vw);
        font-weight: 700;
        color: #fff;
        position: absolute;
        top: calc(-24 / 750 * 100vw);
        left: 0;
      }
      .winner-list li .reason .ttl span {
          display: inline-flex;
          justify-content: center;
          align-items: center;
          position: relative;
          width: calc(58 / 750 * 100vw);
          height: calc(58 / 750 * 100vw);
          background-color: var(--color-1);
          border-radius: calc(8 / 750 * 100vw);
        }


        .winner-list li .reason dt {
        font-size: calc(32 / 750 * 100vw);
        font-weight: 700;
        line-height: 1.3;
        margin-bottom: calc(38 / 750 * 100vw);
        color: var(--color-1);
      }
      .winner-list li .reason dd {
        font-size: calc(26 / 750 * 100vw);
        font-weight: 500;
        letter-spacing: .05em;
        line-height: 1.9230769230769231;
        text-align: justify;
      }


.iphone .winner-list li .description .txt p {
  line-height: calc(2.6153846153846154em + 0.1vw)
}



/* comments */

.comment-list {
  list-style: none;
  display: block;
  width: 100%;
  padding: calc(120 / 750 *100vw) 0 0 0;
  margin: 0;
}
.comment-list li {
    width: 100%;
  }
  .comment-list li + li {
      margin-top: calc(138 / 750 * 100vw);
    }


    .comment-list dl {
    display: block;
    width: 100%;
    max-width: calc(680 / 750 * 100vw);
    margin: 0 auto;
    position: relative;
  }
  .comment-list dt {
      display: inline-flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      height: calc(168 / 750 * 100vw);
      width: calc(526 / 750 * 100vw);
      background-color: var(--color-1);
      border: solid 2.4px #000;
      border-radius: 100px;
      color: #fff;
      position: absolute;
      top: calc(-84 / 750 * 100vw);
    }
    .comment-list dt::after {
        content: '';
        display: block;
        width: calc(43 / 750 * 100vw);
        height: calc(43 / 750 * 100vw);
        background-repeat: no-repeat;
        background-position: center top;
        background-size: contain;
        position: absolute;
        top: calc(100% - 1.6vw);
      }

      .comment-list dt .name {
        display: inline-block;
        font-size: calc(34 / 750 * 100vw);
        font-weight: 700;
        line-height: 1;
        margin-bottom: calc(15 / 750 * 100vw)
      }
      .comment-list dt .title {
        display: block;
        font-size: calc(22 / 750 * 100vw);
        font-weight: 500;
        font-feature-settings: "palt";
        letter-spacing: .04em;
        line-height: 1.4545454545454546;
        text-align: center;
      }
    
      .comment-list dd {
      display: block;
      width: 100%;
      padding: calc(140 / 750 * 100vw) calc(65 / 750 * 100vw) calc(76 / 750 * 100vw) calc(65 / 750 * 100vw);
      background-color: var(--color-6);
      border: solid calc(4 / 750 * 100vw) #000;
      border-radius: calc(30 / 750 * 100vw);
      font-size: calc(26 / 750 * 100vw);
      letter-spacing: .04em;
      line-height: 1.9230769230769231;
      text-align: justify;
    }

.comment-list li:nth-child(odd) dl dt {
  left: calc(-20 / 750 * 100vw);
}
.comment-list li:nth-child(odd) dl dt::after {
    background-image: url(../img/bal-l_pc.svg);
    left: calc(130 / 750 * 100vw);
  }

.comment-list li:nth-child(even) dl dt {
  right: calc(-20 / 750 * 100vw);
}
.comment-list li:nth-child(even) dl dt::after {
    background-image: url(../img/bal-r_pc.svg);
    right: calc(130 / 750 * 100vw);
  }




/* MODAL */

.modal-set {
  display: none;
}

.mfp-content .recipe {
  display: block;
  width: calc(690 / 750 * 100vw);
  margin: calc(100 / 750 * 100vw) auto;
  padding: calc(140 / 750 * 100vw) calc(38 / 750 * 100vw) calc(128 / 750 * 100vw);
  background-color: var(--color-0);
  background-image: radial-gradient(#fef2bb 30%, transparent 0), radial-gradient(#fef2bb 30%, transparent 0);
  background-size: calc(16 / 750 * 100vw) calc(16 / 750 * 100vw);
  background-position: 0 0, calc(8 / 750 * 100vw) calc(8 / 750 * 100vw);
  border-radius: calc(30 / 750 * 100vw);
  box-shadow: calc(7 / 750 * 100vw) calc(7 / 750 * 100vw) rgba(28, 28, 28, .3);
}
.mfp-content .recipe .dish-ttl {
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    line-height: 2;
    margin-bottom: calc(60 / 750 * 100vw);
    text-align: center;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-color: var(--color-6);
    text-decoration-thickness: calc(20 / 750 * 100vw);
    text-underline-offset: calc(-10 / 750 * 100vw);
  }
  .mfp-content .recipe .bttn-back {
    margin-top: calc(100 / 750 * 100vw);
    text-align: center;
  }
  .mfp-content .recipe .bttn-back button {
      outline: none;
      border: none;
      width: calc(600 / 750 * 100vw);
      height: calc(120 / 750 * 100vw);
      background-color: var(--color-2);
      border-radius: calc(60 / 750 * 100vw);
      font-size: calc(28 / 750 * 100vw);
      font-weight: 700;
      color: #000;
      letter-spacing: .12em;
      cursor: pointer;
      position: relative;
    }
    .mfp-content .recipe .bttn-back button::after {
        content: '';
        display: block;
        width: calc(42 / 750 * 100vw);
        height: calc(26 / 750 * 100vw);
        background: url(../img/arrow.svg) no-repeat right center / contain;
        position: absolute;
        right: calc(56 / 750 * 100vw);
        top: 50%;
        transform-origin: center center;
        transform:  translateY(-50%) rotate(90deg)
      }


.mfp-content .inner-plate {
  display: block;
  width: 100%;
  padding-bottom: calc(15 / 750 * 100vw);
  border-radius: calc(20/ 750 * 100vw);
  border: solid calc(4 / 750 * 100vw) #000;
  background-color: #fff;
  overflow: hidden;
}
.mfp-content .inner-plate + .inner-plate {
    margin-top: calc(36 / 750 * 100vw);
  }

  .mfp-content .inner-plate .img-ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--color-1);
    height: calc(84 / 750 * 100vw);
  }
  .mfp-content .inner-plate .img-ttl img {
      max-width: none;
      height: calc(33 / 750 * 100vw);
      width: auto;
    }
  

    .mfp-content .inner-plate .ingredient {
    display: block;
    width: calc(530 / 750 * 100vw);
    margin: calc(20 / 750 * 100vw) auto 0;
    padding-bottom: calc(30 / 750 * 100vw);
    font-size: calc(24 / 750 * 100vw);
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 2.85;
    background-image: linear-gradient(#fff calc(100% - 0.4vw), transparent 0), linear-gradient(90deg, rgba(0, 0, 0, .2) calc(3 / 750 * 100vw), transparent 0);
    background-size: 100% 2.85em, calc(6 / 750 * 100vw) 100%;
    background-repeat: repeat-y, repeat-x;
  }

  .mfp-content .inner-plate .point {
    display: block;
    width: calc(530 / 750 * 100vw);
    margin: calc(30 / 750 * 100vw) auto calc(15 / 750 * 100vw);
    font-size: calc(26 / 750 * 100vw);
    font-weight: 500;
    line-height: 1.9230769230769231;
  }

  .mfp-content .inner-plate .process-ttl {
    width: calc(530 / 750 * 100vw);
    margin: 0 auto;
    padding: calc(29 / 750 * 100vw) 0 calc(29 / 750 * 100vw);
    font-size: calc(26 / 750 * 100vw);
    font-weight: 500;
    line-height: 1.9230769230769231;
    position: relative;
    counter-reset: list-item;
  }
  .mfp-content .inner-plate .process-ttl::after {
      content: '';
      display: block;
      width: 100%;
      height: calc(4 / 750 * 100vw);
      background-image: linear-gradient(90deg, rgba(0, 0, 0, .2) calc(3 / 750 * 100vw), transparent 0);
      background-size: calc(6 / 750 * 100vw) 100%;
      background-repeat: repeat-x;
      position: absolute;
      bottom: 0;
      left: 0;
    }
  

    .mfp-content .inner-plate .process {
    list-style-type: none;
    padding-inline-start: 0;
    width: calc(530 / 750 * 100vw);
    margin: calc(5 / 750 * 100vw) auto calc(10 / 750 * 100vw);
  }
  .mfp-content .inner-plate .process li {
      padding: calc(19 / 750 * 100vw) 0 calc(19 / 750 * 100vw) 2.75em;
      text-indent: -2.75em;
      font-size: calc(26 / 750 * 100vw);
      font-weight: 500;
      line-height: 1.9230769230769231;
      position: relative;
      counter-increment: list-item;
    }
    .mfp-content .inner-plate .process li::before {
        content: '【' counter(list-item) '】\00a0';
        color: var(--color-1);
      }
      .mfp-content .inner-plate .process li + li::after {
        content: '';
        display: block;
        width: 100%;
        height: calc(4 / 750 * 100vw);
        background-image: linear-gradient(90deg, rgba(0, 0, 0, .2) calc(3 / 750 * 100vw), transparent 0);
        background-size: calc(6 / 750 * 100vw) 100%;
        background-repeat: repeat-x;
        position: absolute;
        top: 0;
        left: 0;
      }
      .mfp-content .inner-plate .process li img {
        max-width: none;
        width: calc(280 / 750 * 100vw);
        height: auto;
        margin-top: 1em;
      }


/* overlay at start */
.mfp-fade.mfp-bg {
	opacity: 0;
	transition: opacity 0.5s ease-out;
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	transition: opacity 0.5s ease-out;
}

/* content animate in */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
}

button.mfp-close {
  width: calc(88 / 750 * 100vw);
  height: calc(88 / 750 * 100vw);
  right: calc(32 / 750 * 100vw);
  top: calc(132 / 750 * 100vw);
  border-radius: 50%;
  background: var(--color-2);
  font-size: calc(65 / 750 * 100vw);
  line-height: 1;
  color: #000 !important;
  opacity: 1;
}
button.mfp-close:active {
  top: calc(132 / 750 * 100vw);
}

