@charset "UTF-8";

/* =====================================================
 * reset.css
 * - Edit html5doctor.com's CSS
 * - http://html5doctor.com/html-5-reset-stylesheet/
 * Last Updated:2017-03-01
====================================================== */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
select,
textarea {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  vertical-align: bottom;
  background: transparent;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
  display: block;
}

/*html{font-size:62.5%;}*/

body {
  font-family: sans-serif;
  line-height: 1;
}

ul,
ol {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  background: transparent;
  outline: none;
}

img {
  vertical-align: bottom;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

input,
select,
textarea {
  font-family: inherit;
}

input[type=submit] {
  cursor: pointer;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*!  02_base
================================================ */

:root {
  --text-family: var.$font-base;
  --text-color: var.$clr_black;
  --fs10: calc(10/16*1rem);
  --fs11: 0.6875rem;
  --fs12: 0.75rem;
  --fs13: 0.8125rem;
  --fs14: 0.875rem;
  --fs15: 0.9375rem;
  --fs16: 1rem;
  --fs17: 1.0625rem;
  --fs18: 1.125rem;
  --fs19: 1.1875rem;
  --fs20: 1.25rem;
  --fs21: 1.3125rem;
  --fs22: 1.375rem;
  --fs23: 1.4375rem;
  --fs24: 1.5rem;
}

html {
  font-size: var(--fs16);
  /*scroll-behavior: smooth;
  scroll-padding-top: 88px;*/
}

body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8125rem + 0.25vw, 1rem);
  color: #000;
  font-weight: 400;
  line-height: 1.5;
  font-feature-settings: "pwid", "pkna";
  font-feature-settings: "palt";
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

a {
  text-decoration: none;
  color: #000;
}

a[href^="tel:"] {
  pointer-events: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.c-box__bg-blue {
  padding: 10px 16px 18px;
  background-color: #0068b7;
}

.c-list__reference-num {
  counter-reset: referencenum;
}

.c-list__reference-num > li {
  position: relative;
  padding-left: 2.5em;
  text-indent: -2em;
}

.c-list__reference-num > li::before {
  content: "※" counter(referencenum);
  counter-increment: referencenum;
  margin-right: 0.5em;
}

.c-list__reference > li {
  padding-left: 1em;
  text-indent: -1em;
}

.c-list__reference > li::before {
  content: "※";
}

/*.l-contents {
  position: relative;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  @include mixin.mq(sm) {
    padding-bottom: calc(60 / 400 * 100svw);
  }
}*/

.l-header {
  width: min(100%, 1350px);
  margin: 0 auto;
  padding: 50px 0 0;
  box-sizing: border-box;
  background: url(../images/hero_img.webp) no-repeat 50% 0/100% auto;
}

.l-header .l-header__content {
  width: min(88.8888888889%, 1200px);
  margin: 0 auto;
}

.l-header .l-header__lead {
  font-size: clamp(1.75rem, 0.0192307692rem + 7.3846153846vw, 6.25rem);
  font-weight: 700;
  line-height: 1.3606;
  letter-spacing: 0.065em;
  color: #fff;
  text-shadow: 0 0 8.06px #16296d;
}

.l-header .l-header__headline {
  width: 82.5833333333%;
  margin: 74px auto 0;
}

.p-effects {
  width: min(100%, 1350px);
  margin: 60px auto 0;
}

.p-effects .p-effects__wrap {
  display: flex;
  justify-content: center;
  gap: 25px;
}

.p-effects .p-effects__images {
  width: 34.3703703704%;
  margin: 0 auto;
  opacity: 0.5;
}

.p-effects .p-effects__effectiveness {
  width: min(57.7777777778%, 780px);
}

.p-effects .c-effects__effectiveness {
  display: flex;
  justify-content: center;
  gap: min(2.3076923077%, 18px);
}

.p-effects .c-effects__effectiveness .c-effects__item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((100% - 36px) / 3);
  aspect-ratio: 496/484;
  border-radius: 50%;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  font-weight: 700;
  font-size: clamp(1.25rem, 0.6009615385rem + 2.7692307692vw, 2.9375rem);
  line-height: 1.3159574468;
  letter-spacing: 0.05em;
  color: #fff;
  text-align: center;
  -webkit-text-stroke-width: clamp(0.1875rem, 0.1153846154rem + 0.3076923077vw, 0.375rem);
  text-stroke-width: clamp(0.1875rem, 0.1153846154rem + 0.3076923077vw, 0.375rem);
  paint-order: stroke;
}

.p-effects .c-effects__effectiveness .c-effects__item:nth-of-type(1) {
  -webkit-text-stroke-color: #006837;
  text-stroke-color: #006837;
  background-image: url(../images/effects_item_bg01.webp);
}

.p-effects .c-effects__effectiveness .c-effects__item:nth-of-type(2) {
  -webkit-text-stroke-color: #c1272d;
  text-stroke-color: #c1272d;
  background-image: url(../images/effects_item_bg02.webp);
}

.p-effects .c-effects__effectiveness .c-effects__item:nth-of-type(3) {
  -webkit-text-stroke-color: #2e3192;
  text-stroke-color: #2e3192;
  background-image: url(../images/effects_item_bg03.webp);
  line-height: 1.3159574468;
}

.p-effects .c-effects__effectiveness .c-effects__item:nth-of-type(3) .u-text__note {
  top: 5.0666666667em;
}

.p-effects .c-effects__effectiveness .c-effects__item .u-text__note {
  position: absolute;
  top: 3.8em;
  right: 38px;
  font-size: clamp(0.625rem, 0.5048076923rem + 0.5128205128vw, 0.9375rem);
}

.p-effects .c-box__bg-blue {
  width: min(98.2051282051%, 766px);
  margin: 40px 0 0 0;
  box-sizing: border-box;
}

.p-effects .c-list__reference-num > li {
  font-size: clamp(0.75rem, 0.5336538462rem + 0.9230769231vw, 1.3125rem);
  line-height: 1.62;
  letter-spacing: 0.0105em;
  color: #fff;
}

.p-effects .p-effects__ffc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 65px;
  width: min(89.6296296296%, 1210px);
  margin: 64px auto 0;
}

.p-effects .p-effects__ffc-subhgroup {
  width: fit-content;
  max-width: 230px;
}

.p-effects .c-effects__ffc-subheadline {
  margin-bottom: 0.3214285714em;
  padding: 0 0.2857142857em 0;
  border: 1px solid #000;
  font-weight: 700;
  font-size: clamp(1.5rem, 1.4038461538rem + 0.4102564103vw, 1.75rem);
  line-height: 1.6196428571;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-effects .c-effects__ffc-number {
  font-weight: 700;
  font-size: clamp(0.875rem, 0.5384615385rem + 1.4358974359vw, 1.75rem);
  line-height: 1.6196428571;
  letter-spacing: 0.1em;
  text-align: center;
}

.p-effects .p-effects__component {
  width: calc(100% - 64px - 230px);
}

.p-effects .p-effects__ffc-lead {
  font-weight: 700;
  font-size: clamp(0.875rem, 0.6105769231rem + 1.1282051282vw, 1.5625rem);
  line-height: 1.814;
  letter-spacing: 0.05em;
}

.p-effects .p-effects__ffc-text {
  font-size: clamp(0.875rem, 0.8269230769rem + 0.2051282051vw, 1rem);
  line-height: 1.594375;
  letter-spacing: 0.05em;
}

.p-cta01 .p-cta01__wrap,
.p-cta03 .p-cta01__wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: min(93.8518518519%, 1267px);
  margin: 0 auto 0;
}

.p-cta01 .p-cta01__images,
.p-cta03 .p-cta01__images {
  width: min(35.1223362273%, 445px);
}

.p-cta01 .p-cta01__products,
.p-cta03 .p-cta01__products {
  width: min(60.9707971586%, 772.5px);
  margin-top: 10px;
}

.p-cta01 .p-cta01__logo,
.p-cta03 .p-cta01__logo {
  width: min(60.9707971586%, 772.5px);
  margin-bottom: min(4.25em, 68px);
}

.p-cta01 .p-cta01__item01,
.p-cta03 .p-cta01__item01 {
  position: relative;
}

.p-cta01 .p-cta01__item01 .c-icon__off,
.p-cta03 .p-cta01__item01 .c-icon__off {
  position: absolute;
  top: 130px;
  left: 0;
  width: min(30.0323624595%, 232px);
}

.p-cta01 .p-cta01__item02,
.p-cta03 .p-cta01__item02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: min(96.4401294498%, 745px);
}

.p-cta01 .p-cta01__item02 .p-cta01__delivery,
.p-cta03 .p-cta01__item02 .p-cta01__delivery {
  width: min(31.1409395973%, 232px);
}

.p-cta01 .p-cta01__item02 .p-cta01__btn,
.p-cta03 .p-cta01__item02 .p-cta01__btn {
  width: min(63.1543624161%, 470.5px);
}

.p-cta01 .u-subscription .p-cta01__item,
.p-cta03 .u-subscription .p-cta01__item {
  width: min(94.7572815534%, 732px);
}

.p-cta01 .u-subscription .p-cta01__item02,
.p-cta03 .u-subscription .p-cta01__item02 {
  margin-top: 10px;
}

.p-cta01 .u-regular,
.p-cta03 .u-regular {
  margin-top: 63px;
}

.p-cta01 .u-regular .p-cta01__item,
.p-cta03 .u-regular .p-cta01__item {
  width: min(95.0809061489%, 734.5px);
}

.p-cta01 .u-regular .p-cta01__item02,
.p-cta03 .u-regular .p-cta01__item02 {
  margin-top: -10px;
}

.p-cta01 {
  position: relative;
  margin: 118px auto 0;
  padding: 0 0 128px;
}

.p-cta01::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1350/60;
  background-image: linear-gradient(90deg, rgb(204, 224, 244), rgb(30, 156, 215) 57%, rgb(0, 117, 190) 86%, rgb(0, 91, 151) 99%);
}

.p-cta01 .c-list__reference {
  width: fit-content;
  margin: -48px auto 0;
}

.p-cta01 .c-list__reference > li {
  font-size: clamp(1.0625rem, 0.9903846154rem + 0.3076923077vw, 1.25rem);
  line-height: 1.417;
  letter-spacing: 0.05em;
}

.p-cta03 {
  position: relative;
  margin: min(5.125em, 82px) auto 0;
}

.p-cta03 .p-cta01__logo {
  margin: 0 auto min(2.3125em, 37px);
}

.p-cta03 .u-regular {
  margin-bottom: min(1.875em, 30px);
}

.p-cta01__facts {
  width: min(93.8518518519%, 1267px);
  margin: 0 auto 0;
  padding-bottom: min(1.5em, 24px);
  background-color: #f2f2f2;
}

.p-cta01__facts-label {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: min(94.6515397083%, 1168px);
  margin: 0 auto;
}

.p-cta01__facts-label > dt {
  width: min(7.05em, 141px);
  margin: min(1.3125em, 21px) 0 0;
  padding: min(0.1875em, 3px) 0 min(0.25em, 4px);
  background-color: #004294;
  font-size: clamp(1.0625rem, 0.9903846154rem + 0.3076923077vw, 1.25rem);
  font-weight: 700;
  line-height: 1.417;
  letter-spacing: 0.05em;
  color: #fff;
  text-align: center;
}

.p-cta01__facts-label > dd {
  position: relative;
  width: calc(100% - 7.05em - 1.3043478261em);
  padding: min(1.3125em, 21px) 0 min(1.3125em, 21px);
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  font-weight: 700;
  line-height: 1.6021913043;
  letter-spacing: 0.02em;
  color: #004294;
}

.p-cta01__facts-label > dd:not(:last-of-type)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -8.3543478261em;
  width: calc(100% + 7.05em + 1.3043478261em);
  height: 1px;
  background-color: #004294;
}

.p-cta01__facts-label > dd .p-cta01__facts-wrap {
  display: flex;
  gap: 0 min(1.7391304348em, 40px);
}

.p-cta01__facts-notes {
  width: min(94.6515397083%, 1168px);
  margin: 0 auto;
  font-size: clamp(0.8125rem, 0.75rem + 0.25vw, 0.9375rem);
  line-height: 1.7007866667;
  letter-spacing: 0.05em;
  color: #004294;
}

.p-cta01__facts-notes .p-cta01__subheadline {
  display: flex;
  align-items: center;
  gap: min(1.3684210526em, 26px);
  margin-bottom: min(0.2631578947em, 5px);
  font-size: clamp(1rem, 0.90625rem + 0.375vw, 1.1875rem);
  font-weight: 700;
  line-height: 1.6021913043;
  letter-spacing: 0.05em;
}

.p-cta01__facts-notes .p-cta01__subheadline::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: #004294;
}

.p-situation {
  padding: min(7.3125em, 117px) 0 min(6.9375em, 111px);
}

.p-situation .p-situation__content {
  width: min(86.7037037037%, 1170.5px);
  margin: 0 auto;
}

.p-situation .p-situation_headline {
  width: min(86.159760786%, 1008.5px);
  margin: 0 auto min(1.75em, 28px);
}

.p-situation .p-situation_text {
  width: min(90%, 1110px);
  margin: min(1.7037037037em, 46px) auto 0;
  font-size: clamp(1.4375rem, 1.3413461538rem + 0.4102564103vw, 1.6875rem);
  font-weight: 600;
  line-height: 1.8896296296;
  letter-spacing: 0.05em;
  color: #231815;
}

.p-suggest .p-suggest__headline {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-bottom: 0;
  background: url(../images/suggest_bg.webp) no-repeat 50% 0/100% auto;
  font-size: clamp(0.9375rem, -0.0240384615rem + 4.1025641026vw, 3.4375rem);
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #fff;
  text-align: center;
  aspect-ratio: 2700/366;
}

.p-suggest .p-suggest__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min(0.875em, 14px) min(1.76%, 22px);
  width: min(92.5925925926%, 1250px);
  margin: min(4.375em, 70px) auto 0;
}

.p-suggest .p-suggest__list > li {
  width: min(40.08%, 501px);
}

.p-suggest .p-suggest__list > li:nth-of-type(-n+3) {
  width: min(32.16%, 402px);
}

.p-suggest .p-suggest__facts {
  width: min(79.6296296296%, 1075px);
  margin: min(3.875em, 62px) auto 0;
}

.p-suggest .p-suggest__supplement {
  position: relative;
  width: min(92.3703703704%, 1247px);
  margin: 0 auto 0;
  background-color: #fff7b9;
  border-radius: 27px;
}

.p-suggest .p-suggest__supplement .p-suggest__supplement-term {
  position: absolute;
  top: -46px;
  left: 0;
  right: 0;
  width: min(72.0128307939%, 898px);
  margin: 0 auto 0;
}

.p-suggest .p-suggest__supplement .p-suggest__supplement-description {
  width: min(89.8155573376%, 1120px);
  margin: 0 auto;
  padding: min(2.4285714286em, 85px) 0 min(1.1428571429em, 40px);
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.875rem, 1.71875rem + 0.625vw, 2.1875rem);
  font-weight: 700;
  line-height: 1.6197142857;
  color: #231815;
}

.p-suggest .p-suggest__supplement .p-suggest__supplement-img {
  width: min(46.9196428571%, 525.5px);
  margin: 0 auto min(2.3125em, 37px);
}

.reasons {
  margin: min(5.375em, 86px) 0 0;
}

.reasons .reasons-introduction {
  background: url(../images/reasons_introduction_bg.webp) repeat 100% 0/cover;
}

.reasons .reasons-introduction__inner {
  display: flex;
  gap: 0 min(7.4257425743%, 90px);
  width: min(89.7777777778%, 1247px);
  margin: 0 auto 0;
}

.reasons .reasons-introduction__img {
  width: min(28.2590759076%, 342.5px);
}

.reasons .reasons-introduction__text {
  padding: min(1.4285714286em, 40px) 0 min(1.7857142857em, 50px);
  font-size: clamp(1.5rem, 1.375rem + 0.5vw, 1.75rem);
  line-height: 1.7210714286;
  letter-spacing: 0.05em;
  color: #000;
}

.reasons .reasons-introduction__hgroup {
  margin-top: 36px;
  letter-spacing: 0.05em;
  font-style: italic;
}

.reasons .reasons-introduction__hgroup .reasons-introduction__headeline-text {
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.5rem, 0.6875rem + 3.25vw, 3.125rem);
  letter-spacing: -0.05em;
}

.reasons .reasons-introduction__hgroup .reasons-introduction__headeline {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.5rem, -1.03125rem + 10.125vw, 6.5625rem);
  font-weight: 400;
  font-style: italic;
  line-height: 1;
}

.reasons .reasons-introduction__hgroup .reasons-introduction__headeline .num {
  display: inline-block;
  margin-top: -0.0379746835em;
  font-size: clamp(1.5rem, -2.6875rem + 16.75vw, 9.875rem);
  vertical-align: baseline;
  font-style: italic;
}

.reasons .reasons-bg__gradation01 {
  padding: min(0.8214285714em, 23px) 0 min(1.6428571429em, 46px);
  background-image: linear-gradient(0deg, rgb(255, 255, 255), rgb(143, 141, 93) 25%);
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.5rem, 1.375rem + 0.5vw, 1.75rem);
  line-height: 1.6196428571;
  color: #fff;
  letter-spacing: -0.066em;
}

.reasons .reasons-bg__gradation01 .reasons-bg__inner {
  width: min(81.4814814815%, 1100px);
  margin: 0 auto 0;
}

.reasons .reasons-points {
  width: min(90.962962963%, 1228px);
  margin: min(0.9375em, 15px) auto 0;
}

.reasons .reasons-points__point {
  position: relative;
  display: flex;
  justify-content: space-between;
  padding: min(2.375em, 38px) 0 min(3.375em, 54px);
}

.reasons .reasons-points__point:not(:last-of-type) {
  border-bottom: 1px solid #8f8d5d;
}

.reasons .reasons-points__point:nth-of-type(1) .reasons-points__num {
  width: min(16.6530944625%, 204.5px);
}

.reasons .reasons-points__point:nth-of-type(1) .reasons-points__img {
  width: min(22.8827361564%, 281px);
}

.reasons .reasons-points__point:nth-of-type(2) .reasons-points__num {
  width: min(18.7296416938%, 230px);
}

.reasons .reasons-points__point:nth-of-type(2) .reasons-points__img {
  width: min(22.6791530945%, 278.5px);
}

.reasons .reasons-points__point:nth-of-type(3) .reasons-points__num {
  width: min(18.8110749186%, 231px);
}

.reasons .reasons-points__point:nth-of-type(3) .reasons-points__img {
  width: min(22.842019544%, 280.5px);
}

.reasons .reasons-points__point:nth-of-type(4) .reasons-points__num {
  width: min(18.8925081433%, 232px);
}

.reasons .reasons-points__point:nth-of-type(4) .reasons-points__img {
  width: min(11.6856677524%, 143.5px);
}

.reasons .reasons-points__num {
  margin-top: min(2.0625em, 33px);
}

.reasons .reasons-points__text {
  width: min(78.1758957655%, 960px);
  padding-left: min(1.7857142857em, 50px);
  box-sizing: border-box;
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
  line-height: 1.7210714286;
}

.reasons .reasons-points__text .reasons-points__lead {
  margin-left: -1em;
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.875rem, 1.34375rem + 2.125vw, 2.9375rem);
  font-style: italic;
  color: #8F8D5D;
  letter-spacing: -0.05em;
}

.reasons .reasons-points__img {
  float: right;
  margin: 1em 0.5em 1em 2em;
}

.reasons .reasons-points__definition {
  margin-top: 22px;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}

.reasons .reasons-points__definition > dt {
  width: fit-content;
  margin-bottom: 0.44em;
  padding: 0 0.48em 0.16em;
  background-color: #8f8d5d;
  font-size: clamp(1.3125rem, 1.1875rem + 0.5vw, 1.5625rem);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}

.reasons .reasons-points__definition > dd {
  font-size: clamp(1.1875rem, 1.09375rem + 0.375vw, 1.375rem);
  line-height: 1.5463636364;
}

.reasons .reasons-points__definition > dd:not(:last-of-type) {
  margin-bottom: 1.1363636364em;
}

.reasons .notice {
  margin-top: 1.55em;
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  letter-spacing: 0.05em;
}

.reasons .notice::before {
  content: "※";
}

.reasons-images {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: min(86.6666666667%, 1170px);
  margin: -8px auto 0;
}

.reasons-bg__gradation02 {
  margin: min(3.625em, 58px) auto 0;
  padding: min(2.5em, 40px) 0 min(1.875em, 30px);
  background-image: linear-gradient(0deg, rgb(143, 141, 93) 85%, rgb(255, 255, 255));
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.625rem, 1.5rem + 0.5vw, 1.875rem);
  font-weight: 700;
  line-height: 1.6196428571;
  color: #fff;
  letter-spacing: -0.066em;
}

.reasons-bg__gradation02 .reasons-bg__inner {
  width: min(81.4814814815%, 1100px);
  margin: 0 auto 0;
}

.p-cta02 {
  position: relative;
  margin: min(7.375em, 118px) auto 0;
  padding: 0 0 min(8em, 128px);
}

.p-cta02 .p-cta02__wrap {
  display: flex;
  justify-content: space-between;
  gap: min(5.3670086819%, 68px);
  width: min(93.8518518519%, 1267px);
  margin: 0 auto 0;
}

.p-cta02 .p-cta02__purchase {
  display: flex;
  flex-direction: column;
}

.p-cta02 .p-cta02__item01 {
  position: relative;
}

.p-cta02 .p-cta02__item01 .c-icon__off {
  position: absolute;
  top: min(8.125em, 130px);
  left: 0;
  width: min(30.0323624595%, 232px);
}

.p-cta02 .p-cta02__item02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: min(96.4401294498%, 745px);
}

.p-cta02 .p-cta02__item02 .p-cta01__delivery {
  width: min(31.1409395973%, 232px);
}

.p-cta02 .p-cta02__item02 .p-cta01__btn {
  width: min(63.1543624161%, 470.5px);
}

.p-cta02 .u-subscription .p-cta02__item {
  margin-bottom: min(0.625em, 10px);
  width: min(94.7572815534%, 732px);
}

.p-cta02 .u-subscription .p-cta02__item02 {
  margin-top: auto;
}

.p-cta02 .u-regular .p-cta02__item {
  width: min(95.0809061489%, 734.5px);
  margin-bottom: min(0.625em, 10px);
}

.p-cta02 .u-regular .p-cta02__item02 {
  margin-top: auto;
}

.p-cta02 .c-list__reference {
  width: fit-content;
  margin: min(-2.4em, -48px) auto 0;
}

.p-cta02 .c-list__reference > li {
  font-size: clamp(0.625rem, 0.3846153846rem + 1.0256410256vw, 1.25rem);
  line-height: 1.417;
  letter-spacing: 0.05em;
}

.p-retailer {
  width: min(88.8888888889%, 1200px);
  margin: min(5.9375em, 95px) auto 0;
}

.p-retailer .p-retailer__wrap {
  display: flex;
  justify-content: space-between;
}

.p-retailer .p-retailer__images {
  width: min(33.9166666667%, 407px);
}

.p-retailer .p-retailer__detail {
  position: relative;
  width: min(61.6666666667%, 740px);
  margin-top: min(1.0869565217em, 25px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  line-height: 1.7254347826;
  letter-spacing: 0.05em;
}

.p-retailer .p-retailer__opinion {
  position: absolute;
  top: -80px;
  left: -175px;
  width: min(42.6351351351%, 315.5px);
}

.p-retailer .p-retailer__lead {
  margin-bottom: min(1.6em, 56px);
  font-size: clamp(1.875rem, 1.71875rem + 0.625vw, 2.1875rem);
  font-weight: 700;
  line-height: 1.4578171429;
}

.p-retailer .p-retailer__em {
  position: relative;
  display: inline-block;
  padding: 0 min(0.2857142857em, 10px);
}

.p-retailer .p-retailer__em::after {
  content: "";
  position: absolute;
  bottom: min(-0.2em, -7px);
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 698/21;
  background: url(../images/retailer_line.svg) no-repeat 50% 0/100% auto;
}

.p-retailer p:not(.p-retailer__lead) {
  margin-bottom: min(0.5217391304em, 12px);
}

.p-store {
  margin: min(1.75em, 28px) 0 0;
}

.p-store .store-btn__store {
  display: block;
  width: min(50.1481481481%, 677px);
  margin: 0 auto;
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.p-store .hidden {
  display: none;
}

.p-store__store {
  padding: 7.75em 0 5em;
  background: url(../images/store_bg.webp) no-repeat 50% 0/100% auto;
}

.p-store__store .p-store__content {
  width: min(87.1851851852%, 1177px);
  margin: 0 auto;
}

.p-store__store .p-store__headline {
  width: min(64.3585386576%, 757.5px);
  margin: 0 auto 2.75em;
}

.p-store__store .p-store__text {
  font-size: clamp(1.375rem, 1.28125rem + 0.375vw, 1.5625rem);
  font-weight: 700;
  line-height: 2.040944;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-store__store .p-store__prefectures {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: min(1.875em, 30px) min(2.75em, 44px);
  margin: min(3.5625em, 57px) auto 0;
}

.p-store__store .p-store__prefectures > dt {
  width: min(6.5em, 130px);
  padding: min(0.2em, 4px) 0;
  background-color: rgba(0, 0, 0, 0.1);
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-store__store .p-store__prefectures > dd {
  width: calc(100% - 6.5em - 2.75em);
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  font-weight: 700;
  letter-spacing: 0.05em;
}

.p-store__store .p-store__prefectures .p-store__prefectures-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2em;
}

.p-store__store .c-table__prefectures {
  margin: min(3.125em, 81px) 0 0;
  letter-spacing: 0.05em;
}

.p-store__store .c-table__prefectures th {
  width: min(6.5em, 130px);
  border-bottom: 1px solid #231815;
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
}

.p-store__store .c-table__prefectures th .c-box__prefectures {
  display: block;
  padding: min(0.2em, 4px);
  background-color: #d4ecee;
}

.p-store__store .c-table__prefectures td {
  padding: min(1.5em, 30px) 0 min(1.1em, 22px);
  border-bottom: 1px solid #231815;
  vertical-align: middle;
}

.p-store__store .c-table__prefectures td:nth-of-type(1) {
  padding: min(1.3043478261em, 30px) min(1.8695652174em, 43px) min(0.9565217391em, 22px);
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  font-weight: 700;
  line-height: 2.2184173913;
}

.p-store__store .c-table__prefectures td:nth-of-type(2) {
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  font-weight: 700;
  line-height: 1.559055;
}

.p-store__store .c-table__prefectures td .c-icon_tel {
  position: relative;
  padding-left: clamp(1.1875rem, 1.09375rem + 0.375vw, 1.375rem);
}

.p-store__store .c-table__prefectures td .c-icon_tel::before {
  content: "";
  position: absolute;
  top: 0.4em;
  left: 0;
  display: inline-block;
  width: clamp(1rem, 0.90625rem + 0.375vw, 1.1875rem);
  height: auto;
  aspect-ratio: 38/31;
  background: url(../images/icon_telephone.svg) no-repeat 50% 0/100% auto;
}

.p-wholeheartedly {
  margin: min(0.5625em, 9px) auto 0;
  padding-bottom: min(2.875em, 46px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 8.5%, #fcf4d8 8.5%, #fcf4d8 100%);
}

.p-wholeheartedly .p-wholeheartedly__content {
  position: relative;
  width: min(81.6296296296%, 1102px);
  margin: 0 auto;
}

.p-wholeheartedly .p-wholeheartedly__headline {
  margin-bottom: min(1.1111111111em, 50px);
  padding-top: min(3.5555555556em, 160px);
  font-family: "Shippori Mincho", serif;
  font-size: clamp(2.375rem, 2.15625rem + 0.875vw, 2.8125rem);
  line-height: 1.1338577778;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-wholeheartedly .p-wholeheartedly__prof {
  width: min(31.3067150635%, 345px);
  float: right;
}

.p-wholeheartedly .p-wholeheartedly__prof .p-wholeheartedly__name {
  font-size: clamp(0.875rem, 0.78125rem + 0.375vw, 1.0625rem);
  line-height: 1.5006941176;
  text-align: center;
}

.p-wholeheartedly .p-wholeheartedly__text {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  line-height: 1.7254347826;
  letter-spacing: 0.05em;
}

.p-wholeheartedly .p-wholeheartedly__text p {
  margin-bottom: min(1.7391304348em, 40px);
}

.p-wholeheartedly .p-wholeheartedly__subheadline {
  margin-bottom: min(1.25em, 30px);
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgb(252, 244, 216) 50%, rgba(255, 255, 255, 0));
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.3125rem, 1.21875rem + 0.375vw, 1.5rem);
  line-height: 1.7007866667;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-wholeheartedly .p-wholeheartedly__subheadline .u-text__flarger {
  font-size: clamp(1.625rem, 1.5rem + 0.5vw, 1.875rem);
}

.p-wholeheartedly .p-wholeheartedly__awards {
  display: grid;
  gap: 14px 7px;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
}

.p-wholeheartedly .p-wholeheartedly__award {
  font-size: clamp(0.9375rem, 0.84375rem + 0.375vw, 1.125rem);
  line-height: 1.4960611111;
  text-align: center;
}

.p-wholeheartedly .p-wholeheartedly__award .p-wholeheartedly__cup {
  width: min(25.1851851852%, 68px);
  margin: 0 auto min(0.1666666667em, 3px);
}

.p-about {
  padding: min(2.75em, 44px) 0 min(0.375em, 6px);
  background-color: rgba(0, 117, 190, 0.1);
}

.p-about .p-about__content {
  width: min(81.6296296296%, 1102px);
  margin: 0 auto;
}

.p-about .p-about__headline {
  margin-bottom: min(1.25em, 35px);
  font-family: "Shippori Mincho", serif;
  font-size: clamp(1.5rem, 1.375rem + 0.5vw, 1.75rem);
  font-weight: 700;
  line-height: 1.4578171429;
  text-align: center;
}

.p-about .p-about__headline .u-text__flarger {
  font-size: clamp(1.875rem, 1.71875rem + 0.625vw, 2.1875rem);
}

.p-about .p-about__img {
  width: min(26.3611615245%, 290.5px);
  margin: min(-1.1875em, -19px) 0 0 1em;
  float: right;
}

.p-about .p-about__text {
  margin-top: min(2.7em, 54px);
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  line-height: 1.80252;
}

.p-about .p-about__text p {
  margin-bottom: min(1.85em, 37px);
}

.p-voc {
  margin: min(4.5em, 72px) auto 0;
}

.p-voc .p-voc__content {
  width: min(73.3703703704%, 990.5px);
  margin: 0 auto;
}

.p-voc .p-voc__headline {
  width: min(35.6385663806%, 353px);
  margin: 0 auto min(1.625em, 26px);
}

.p-voc .p-voc__note {
  margin-top: min(1.25em, 25px);
  font-size: clamp(1.0625rem, 0.96875rem + 0.375vw, 1.25rem);
  line-height: 1.84252;
  text-align: center;
  color: #231815;
}

.p-faq .p-faq__header {
  position: relative;
  width: min(78.5185185185%, 1060px);
  margin: 0 auto;
  padding-top: min(1.6875em, 27px);
  aspect-ratio: 1045/282;
}

.p-faq .p-faq__headline {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(31.6037735849%, 335px);
  margin: 0 auto 0;
}

.p-faq .p-faq__group {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

.p-faq .p-faq__group .p-faq__img {
  width: min(16.0377358491%, 170px);
}

.p-faq .p-faq__group .p-faq__text {
  padding: 0 0 min(1.7419354839em, 54px);
  width: 83.9622641509%;
  font-size: clamp(1.6875rem, 1.5625rem + 0.5vw, 1.9375rem);
  font-weight: 600;
  line-height: 1.6459290323;
  text-align: center;
  color: #00abe2;
  letter-spacing: 0.05em;
}

.p-faq .p-faq__list {
  width: min(78.5185185185%, 1060px);
  margin: min(-1.1875em, -19px) auto 0;
}

.p-faq .p-faq__box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0 min(3.125em, 50px);
  padding: min(2.125em, 34px) 0;
}

.p-faq .p-faq__box:not(:last-of-type) {
  border-bottom: 6px dotted #00abe2;
}

.p-faq .p-faq__box::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(2.641509434%, 28px);
  height: auto;
  aspect-ratio: 56/216;
  background: url(../images/faq_arrow.webp) repeat 50% 0/100% auto;
}

.p-faq .p-faq__q {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0 min(13.4615384615em, 30px);
  width: 50%;
  padding: 0 min(0.7692307692em, 20px) 0 min(1.1538461538em, 30px);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.375rem, 1.25rem + 0.5vw, 1.625rem);
  font-weight: 700;
  line-height: 1.1887225806;
  box-sizing: border-box;
}

.p-faq .p-faq__q .p-faq__qnum {
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(4.875rem, 4.5rem + 1.5vw, 5.625rem);
  height: auto;
  aspect-ratio: 1/1;
  background-color: #00abe2;
  border-radius: 50%;
  font-size: clamp(2.5rem, 2.3125rem + 0.75vw, 2.875rem);
  font-weight: 700;
  line-height: 1;
  color: #fff;
}

.p-faq .p-faq__q p {
  width: calc(100% - 3.4615384615em);
}

.p-faq .p-faq__a {
  width: 50%;
  padding: 0 min(0.8695652174em, 20px) 0 min(1.3043478261em, 30px);
  box-sizing: border-box;
  font-size: clamp(1.25rem, 1.15625rem + 0.375vw, 1.4375rem);
  font-weight: 500;
  line-height: 1.4789478261;
}

.p-delivery .p-delivery__content {
  width: min(88.8888888889%, 1200px);
  margin: 0 auto;
}

.p-delivery .p-delivery__wrap {
  display: flex;
  justify-content: space-between;
}

.p-delivery .p-delivery__clm {
  width: min(46.6666666667%, 560px);
}

.p-delivery .p-delivery__sec {
  margin-bottom: 1.3333333333em;
  font-size: clamp(0.9375rem, 0.84375rem + 0.375vw, 1.125rem);
  line-height: 1.5748;
}

.p-delivery .p-delivery__sec .p-delivery__headline {
  width: fit-content;
  margin-bottom: 0.9em;
  padding: 0 0.5em;
  background-color: #00abe2;
  font-size: clamp(1.0625rem, 0.9903846154rem + 0.3076923077vw, 1.25rem);
  line-height: 2.51052;
  letter-spacing: 0.05em;
  color: #fff;
}

.p-delivery .p-delivery__sec .u-text__flarger {
  font-size: clamp(1.375rem, 1.28125rem + 0.375vw, 1.5625rem);
  font-weight: 700;
  line-height: 2.267716;
  color: #c1272d;
  letter-spacing: 0.05em;
}

.p-delivery .p-delivery_haedline-wrap {
  display: flex;
  gap: 0 1.4444444444em;
}

.p-delivery .p-delivery__row {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.4444444444em;
}

.p-delivery .p-delivery__img {
  margin: 1em 0;
}

.p-footer {
  margin-top: 3.125em;
}

.p-footer .p-footer__nnav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.p-footer .p-footer__nnav > li {
  padding: 0 0.5em;
  font-size: clamp(0.9375rem, 0.84375rem + 0.375vw, 1.125rem);
}

.p-footer .p-footer__nnav > li::after {
  content: "｜";
  display: inline-block;
}

.p-footer .p-footer__nnav > li:nth-of-type(1)::before {
  content: "｜";
  display: inline-block;
}

.p-footer .p-footer__copy {
  padding: 2.5em 0;
  font-size: clamp(0.9375rem, 0.84375rem + 0.375vw, 1.125rem);
  text-align: center;
}

@media only screen and (max-width: 1200px) {
  html {
    scroll-padding-top: 0;
  }

  body {
    background: none;
  }

  .p-faq .p-faq__headline {
    position: static;
    transform: translateX(0);
    margin: 0 auto 0;
  }
}

@media print, screen and (max-width: 780px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }

  .p-effects .p-effects__ffc {
    flex-direction: column;
    gap: min(2em, 32px);
  }

  .p-effects .p-effects__component {
    width: 100%;
  }

  .p-cta01 .p-cta01__logo,
  .p-cta03 .p-cta01__logo {
    margin-bottom: min(2.125em, 34px);
  }

  .p-cta01 .c-list__reference {
    width: min(93.8518518519%, 1267px);
  }

  .p-cta01__facts-label > dd {
    width: 100%;
  }

  .p-cta01__facts-label > dd:not(:last-of-type)::after {
    left: 0;
    width: 100%;
  }

  .p-about .p-about__content {
    width: min(88.8888888889%, 1102px);
  }

  .p-about .p-about__img {
    width: min(32.2777777778%, 290.5px);
  }

  .p-voc .p-voc__content {
    width: min(88.8888888889%, 990.5px);
  }

  .p-faq .p-faq__list {
    width: 88.8888888889%;
  }

  .p-delivery .p-delivery__wrap {
    flex-direction: column;
  }

  .p-delivery .p-delivery__clm {
    width: 100%;
  }
}

@media print, screen and (max-width: 640px) {
  html {
    scroll-padding-top: 0;
  }

  .c-box__bg-blue {
    padding: 2.1333333333svw 2.1333333333svw 2.4svw;
  }

  .l-header {
    padding: 6.6666666667svw 0 0;
  }

  .l-header .l-header__headline {
    margin: 9.8666666667svw auto 0;
  }

  .p-effects .p-effects__wrap {
    flex-direction: column;
  }

  .p-effects .p-effects__effectiveness {
    width: 100%;
  }

  .p-effects .c-effects__effectiveness .c-effects__item .u-text__note {
    top: 2.3em;
    right: 1.5em;
  }

  .p-effects .c-box__bg-blue {
    width: 93.3333333333%;
    margin: 5.3333333333svw auto 0;
  }

  .p-effects .p-effects__ffc {
    gap: 5.3333333333svw;
  }

  .p-cta01__facts-label > dd .p-cta01__facts-wrap {
    flex-direction: column;
  }

  .reasons .reasons-points__point {
    flex-direction: column;
  }

  .reasons .reasons-points__text {
    width: 100%;
  }

  .reasons .reasons-points__text .reasons-points__lead {
    width: 100%;
  }

  .p-cta02 .p-cta02__wrap {
    flex-direction: column;
  }

  .p-cta02 .u-regular {
    margin-top: min(3.9375em, 63px);
  }

  .p-store__store .p-store__prefectures > dd {
    width: 100%;
  }

  .p-store__store .c-table__prefectures th {
    display: block;
    padding: min(1.5em, 30px) 0 min(1.1em, 22px);
    border-bottom: none;
  }

  .p-store__store .c-table__prefectures th:empty {
    padding: min(1.5em, 30px) 0 0;
  }

  .p-store__store .c-table__prefectures td {
    display: block;
  }

  .p-store__store .c-table__prefectures td:nth-of-type(1) {
    padding: 0;
    border-bottom: none;
  }

  .p-faq .p-faq__group {
    align-items: center;
  }

  .p-faq .p-faq__box {
    flex-direction: column;
  }

  .p-faq .p-faq__box::after {
    display: none;
  }

  .p-faq .p-faq__q {
    width: 100%;
    padding-bottom: min(3.125em, 50px);
  }

  .p-faq .p-faq__q::after {
    content: "";
    position: absolute;
    bottom: min(-0.625em, -10px);
    left: 0;
    right: 0;
    transform: rotate(90deg);
    width: min(5.2830188679%, 28px);
    height: auto;
    margin: 0 auto;
    aspect-ratio: 56/216;
    background: url(../images/faq_arrow.webp) repeat 50% 0/100% auto;
  }

  .p-faq .p-faq__a {
    width: 100%;
  }
}

@media (hover: hover) {
  a {
    transition: all 0.25s ease 0s;
  }

  a:hover {
    color: #01a0e8;
  }
}/*# sourceMappingURL=sourcemaps/style.css.map */
