@charset "UTF-8";
* {
  font-family: "Noto Sans JP", sans-serif
}
body {
  color: #000;
  line-height: 1;
  letter-spacing: 0
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0
}
a {
  color: inherit
}
a img {
  opacity: 1;
  -webkit-transition: opacity .4s;
  transition: opacity .4s
}
a.opacity {
  opacity: 1;
  -webkit-transition: opacity .4s;
  transition: opacity .4s
}
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0
}
.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto
}
.center {
  text-align: center
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.f-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
.f-jc-sb {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.f-jc-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.f-jc-fe {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}
.f-ai-c {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.f-ai-fs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start
}
.f-ai-fe {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}
.f-ac-c {
  -ms-flex-line-pack: center;
  align-content: center
}
.l-inner {
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 30px
}
img {
  max-width: none;
  max-width: initial;
  width: 100%;
  height: auto;
  display: block
}
/*.c-search-btn {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}*/
.c-search-btn {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
/*.c-search-btn::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  background-color: #e63c00;
  border-radius: 38px;
  -webkit-transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, transform .3s;
  transition: width .3s, height .3s, transform .3s, -webkit-transform .3s
}*/
.c-search-btn::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  background-color: #e63c00;
  border-radius: 38px;
  -webkit-transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, transform .3s;
  transition: width .3s, height .3s, transform .3s, -webkit-transform .3s
}
/*.c-search-btn a {
  width: 345px;
  height: 75px;
  background-color: #ff7800;
  border-radius: 38px;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center;
  padding-bottom: 3px;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s
}*/
.c-search-btn a {
  width: 345px;
  height: 75px;
  background-color: #ff7800;
  border-radius: 38px;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center;
  padding-bottom: 3px;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s
}
/*.c-search-btn a::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #ff6400;
  -webkit-transition: height .3s;
  transition: height .3s
}*/
.c-search-btn a::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #ff6400;
  -webkit-transition: height .3s;
  transition: height .3s
}
/*.c-search-btn a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 99.8%;
  height: 98.5%;
  border-radius: 38px;
  background-color: transparent;
  -webkit-box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 1px 1.5px 0 #ff7800;
  box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 1px 1.5px 0 #ff7800
}*/
.c-search-btn a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 99.8%;
  height: 98.5%;
  border-radius: 38px;
  background-color: transparent;
  -webkit-box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 1px 1.5px 0 #ff7800;
  box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 1px 1.5px 0 #ff7800
}
/*.c-search-btn a span {
  font-size: 24px;
  line-height: 1;
  font-weight: 800;
  color: #fff;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, .4);
  padding-left: 42px;
  position: relative
}*/
.c-search-btn a span {
  font-size: 24px;
  line-height: 1;
  font-weight: 800;
  color: #fff;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, .4);
  padding-left: 42px;
  position: relative
}
/*.c-search-btn a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 33px;
  height: 33px;
  background-image: url(../../img/common/icon_search.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  -webkit-filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .4));
  filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .4));
  -webkit-transform: translateY(-50%) translateZ(0);
  transform: translateY(-50%) translateZ(0)
}*/
.c-search-btn a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 33px;
  height: 33px;
  background-image: url(../../img/common/icon_search.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  -webkit-filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .4));
  filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .4));
  -webkit-transform: translateY(-50%) translateZ(0);
  transform: translateY(-50%) translateZ(0)
}
/*.c-search-btn a span strong {
  position: relative
}*/
.c-search-btn a span strong {
  position: relative
}
/*.c-search-btn a span strong::after {
  content: "";
  position: absolute;
  top: -3px;
  right: 0;
  width: 100%;
  height: .3em;
  background-image: radial-gradient(circle at center, #fff 18%, transparent 18%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em .3em;
  -webkit-filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .4));
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .4));
  pointer-events: none
}*/
.c-search-btn a span strong::after {
  content: "";
  position: absolute;
  top: -3px;
  right: 0;
  width: 100%;
  height: .3em;
  background-image: radial-gradient(circle at center, #fff 18%, transparent 18%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em .3em;
  -webkit-filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .4));
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .4));
  pointer-events: none
}
.c-search-btn--sm a {
  width: 275px;
  height: 50px;
  background-color: #ff6400
}
.c-search-btn--sm a::before {
  display: none
}
.c-search-btn--sm a span {
  font-size: 21px;
  padding-left: 33px
}
.c-search-btn--sm a span::before {
  width: 28px;
  height: 28px
}
.c-search-btn--cta-lg::before {
  border-radius: 48px
}
.c-search-btn--cta-lg a {
  width: 395px;
  height: 95px;
  border-radius: 48px
}
.c-search-btn--cta-lg a span {
  font-size: 29px
}
.c-search-btn--cta-lg a::after {
  border-radius: 48px
}
.c-catalog-btn {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
.c-catalog-btn::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  background-color: #0f2962;
  border-radius: 38px;
  -webkit-transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, transform .3s;
  transition: width .3s, height .3s, transform .3s, -webkit-transform .3s
}
.c-catalog-btn a {
  width: 275px;
  height: 50px;
  background-color: #1d4294;
  border-radius: 38px;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center;
  padding-bottom: 3px;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s
}
.c-catalog-btn a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 99.8%;
  height: 98.5%;
  border-radius: 38px;
  background-color: transparent;
  -webkit-box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 2px 2px 0 #3260c5;
  box-shadow: inset -3px -3px 5px rgba(0, 0, 0, .2), inset 2px 2px 5px rgba(0, 0, 0, .2), 2px 2px 0 #3260c5
}
.c-catalog-btn a span {
  font-size: 19px;
  line-height: 1;
  font-weight: 800;
  color: #fff;
  padding-left: 48px;
  position: relative
}
.c-catalog-btn a span::before {
  position: absolute;
  content: "無料";
  top: 60%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 35px;
  height: 35px;
  background-color: #ffe696;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 500;
  color: #1d4294;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center
}
.c-btn {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
.c-btn::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  background-color: #e63c00;
  border-radius: 25px;
  -webkit-transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, -webkit-transform .3s;
  transition: width .3s, height .3s, transform .3s;
  transition: width .3s, height .3s, transform .3s, -webkit-transform .3s
}
.c-btn a {
  width: 275px;
  height: 52px;
  border-radius: 25px;
  background-color: #ff6400;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center;
  padding-bottom: 3px;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  border-bottom: .5px solid #ff7800;
  border-right: .5px solid #ff7800;
  padding-bottom: 4px;
  padding-right: 19px
}
.c-btn a::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 99.8%;
  height: 98.5%;
  border-radius: 48px;
  background-color: transparent;
  -webkit-box-shadow: inset -2px -5px 6px rgba(0, 0, 0, .2), inset 0 3px 5px rgba(0, 0, 0, .15);
  box-shadow: inset -2px -5px 6px rgba(0, 0, 0, .2), inset 0 3px 5px rgba(0, 0, 0, .15)
}
.c-btn a span {
  font-size: 24px;
  line-height: 1;
  font-weight: 800;
  color: #fff;
  text-shadow: 1px 2px 4px rgba(0, 0, 0, .2);
  padding-left: 34px;
  position: relative
}
.c-btn a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 25px;
  height: 25px;
  background-image: url(../../img/common/icon_search.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  -webkit-filter: drop-shadow(1px 2px 4px rgba(0, 0, 0, .2));
  filter: drop-shadow(1px 2px 4px rgba(0, 0, 0, .2));
  -webkit-transform: translateY(-50%) translateZ(0);
  transform: translateY(-50%) translateZ(0)
}
.c-btn--sm a {
  width: 256px;
  height: 46px
}
.c-btn--sm a span {
  font-size: 22px
}
[dir=ltr] .c-border-btn {
  padding-left: 30px;
  padding-right: 40px
}
.c-border-btn:dir(ltr) {
  padding-left: 30px;
  padding-right: 40px
}
[dir=rtl] .c-border-btn {
  padding-right: 30px;
  padding-left: 40px
}
.c-border-btn:dir(rtl) {
  padding-right: 30px;
  padding-left: 40px
}
.c-border-btn {
  border: 2px solid #1d4294;
  display: -ms-grid;
  display: grid;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  place-content: center;
  min-width: 230px;
  padding-inline: 30px 40px;
  padding-top: 9px;
  padding-bottom: 11px;
  padding-block: 9px 11px;
  font-size: 16px;
  font-weight: 700;
  color: #1d4294;
  border-radius: 20px;
  position: relative;
  -webkit-transition: background-color .3s, color .3s;
  transition: background-color .3s, color .3s
}
.c-border-btn::before {
  position: absolute;
  content: "";
  top: 49%;
  right: 12px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #1d4294;
  -webkit-transition: background-color .3s;
  transition: background-color .3s
}
.c-border-btn::after {
  position: absolute;
  content: "";
  top: 48%;
  right: 17px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 10px;
  height: 9px;
  -webkit-mask-image: url(../../img/common/arrow_right.svg);
  mask-image: url(../../img/common/arrow_right.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  background-color: #fff;
  -webkit-transition: background-color .3s;
  transition: background-color .3s
}
.c-border-btn--white {
  border-color: #fff;
  color: #fff
}
.c-border-btn--white::before {
  background-color: #fff
}
.c-border-btn--white::after {
  background-color: #1d4294
}
.c-border-btn--lg {
  padding-right: 55px !important
}
.c-border-btn--lg {
  padding-top: 20px;
  padding-bottom: 21px;
  padding-block: 20px 21px;
  border-radius: 30px;
  min-width: 290px
}
.c-border-btn--lg::before {
  right: 24px
}
.c-border-btn--lg::after {
  right: 29px;
  top: 49%
}
.c-border-btn--sm {
  min-width: 0;
  min-width: initial;
  width: 178px
}
.c-section-title {
  font-size: 41px;
  font-weight: 900;
  line-height: 1.3658536585;
  letter-spacing: 0
}
.c-section-title span {
  color: #1d4294
}
.c-section-title--center {
  text-align: center
}
.c-section-title--intro span {
  margin-left: -.5em;
  margin-right: -.5em;
  margin-inline: -.5em
}
.c-section-title-2line {
  font-size: 24px;
  font-weight: 700
}
.c-section-title-2line span {
  margin-top: 14px;
  display: block;
  font-size: 51px;
  font-weight: 900;
  color: #1d4294;
  line-height: 1.2608695652
}
.c-section-title-2line--sm {
  font-size: 21px
}
.c-section-title-2line--sm span {
  font-size: 46px
}
.c-section-title-2line--white {
  color: #fff
}
.c-section-title-2line--white span {
  color: #fff
}
.c-gift-btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px
}
.c-gift-text {
  text-align: center;
  font-size: 19px;
  line-height: 1;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.c-gift-text p:nth-child(2) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  position: relative
}
.c-gift-text strong {
  font-size: 31px;
  line-height: 1;
  color: #1d4294;
  letter-spacing: -.02em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-transform: translateY(3px);
  transform: translateY(3px)
}
.c-gift-text strong span {
  display: block;
  font-size: 20px;
  line-height: 1;
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px)
}
.footer {
  font-family: "Noto Sans JP", sans-serif
}
.footer__contents {
  background-color: #ebece7;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-block: 40px
}
.footer__name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 18px;
  color: #1d4294;
  font-weight: 700
}
.footer__wrap {
  margin-top: 10px
}
.footer__wrap dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1.7142857143;
  font-weight: 600
}
.footer__logo-wrap {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-block: 20px
}
.footer__logo {
  display: inline-block;
  width: 500px;
  margin-bottom: 20px
}
.footer__copy {
  background-color: #1d4294;
  text-align: center;
  padding-top: 28px;
  padding-bottom: 28px;
  padding-block: 28px
}
.footer__copy small {
  font-size: 11px;
  line-height: 1;
  color: #fff
}
@media (any-hover:hover) {
  a:hover img {
    opacity: .8
  }
  a.opacity:hover {
    opacity: .8
  }
  .c-search-btn a:active,
  .c-search-btn a:hover {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px)
  }
  .c-search-btn a:active::before,
  .c-search-btn a:hover::before {
    width: 100%;
    height: 100%
  }
  .c-search-btn[\:has\(a\:active\)]::before,
  .c-search-btn[\:has\(a\:hover\)]::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-search-btn:has(a:active)::before,
  .c-search-btn:has(a:hover)::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-catalog-btn a:active,
  .c-catalog-btn a:hover {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px)
  }
  .c-catalog-btn a:active::before,
  .c-catalog-btn a:hover::before {
    width: 100%;
    height: 100%
  }
  .c-catalog-btn[\:has\(a\:active\)]::before,
  .c-catalog-btn[\:has\(a\:hover\)]::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-catalog-btn:has(a:active)::before,
  .c-catalog-btn:has(a:hover)::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-btn[\:has\(a\:active\)]::before,
  .c-btn[\:has\(a\:hover\)]::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-btn:has(a:active)::before,
  .c-btn:has(a:hover)::before {
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
    width: 100%;
    height: 100%
  }
  .c-btn a:active,
  .c-btn a:hover {
    -webkit-transform: translate(5px, 4px);
    transform: translate(5px, 4px)
  }
  .c-btn a:active::before,
  .c-btn a:hover::before {
    height: 100%
  }
  .c-border-btn:hover {
    background-color: #1d4294;
    color: #fff
  }
  .c-border-btn:hover::before {
    background-color: #fff
  }
  .c-border-btn:hover::after {
    background-color: #1d4294
  }
  .c-border-btn--white:hover {
    background-color: #fff;
    color: #1d4294
  }
  .c-border-btn--white:hover::before {
    background-color: #1d4294
  }
  .c-border-btn--white:hover::after {
    background-color: #fff
  }
}
@media (max-width:767px) {
  .l-inner {
    padding: 0 10px
  }
  .c-search-btn a {
    width: 321px;
    height: 61px;
    padding-right: 5px
  }
  .c-search-btn a span {
    font-size: 24px;
    padding-left: 45px
  }
  .c-search-btn--sm a {
    width: 275px;
    height: 50px
  }
  .c-search-btn--sm a span {
    font-size: 21px;
    padding-left: 33px
  }
  .c-search-btn--sm a span::before {
    width: 28px;
    height: 28px
  }
  .c-search-btn--cta-lg a {
    width: 321px;
    height: 61px
  }
  .c-btn a {
    width: 256px;
    height: 52px
  }
  [dir=ltr] .c-border-btn {
    padding-left: 30px;
    padding-right: 50px
  }
  .c-border-btn:dir(ltr) {
    padding-left: 30px;
    padding-right: 50px
  }
  [dir=rtl] .c-border-btn {
    padding-right: 30px;
    padding-left: 50px
  }
  .c-border-btn:dir(rtl) {
    padding-right: 30px;
    padding-left: 50px
  }
  .c-border-btn {
    font-size: 14px;
    padding-inline: 30px 50px;
    min-width: 210px
  }
  .c-border-btn--sm {
    padding-right: 40px !important
  }
  .c-border-btn--sm {
    min-width: 0;
    min-width: initial;
    width: 196px;
    font-size: 18px
  }
  .c-border-btn--sm::before {
    right: 17px
  }
  .c-border-btn--sm::after {
    right: 22px
  }
  .c-section-title {
    font-size: 31px
  }
  .c-section-title--intro {
    font-size: 31px;
    line-height: 1.2903225806
  }
  .c-section-title-2line {
    font-size: 16px
  }
  .c-section-title-2line span {
    font-size: 43px;
    margin-top: 6px
  }
  .c-section-title-2line--sm {
    font-size: 16px
  }
  .c-section-title-2line--sm span {
    font-size: 43px
  }
  .c-section-title-2line--white {
    text-align: center
  }
  .c-section-title-2line--white span {
    text-align: center
  }
  .c-gift-text {
    margin-top: 19px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .footer__contents {
    padding-top: 38px;
    padding-bottom: 38px;
    padding-block: 38px
  }
  .footer__wrap dl {
    font-size: 13px
  }
  .footer__logo-wrap {
    padding-top: 14px;
    padding-bottom: 14px;
    padding-block: 14px
  }
  .footer__logo {
    width: 300px;
    margin-bottom: 10px
  }
  .footer__logo-wrap p {
    font-size: 10px
  }
  .footer__copy {
    padding-top: 18px;
    padding-bottom: 18px;
    padding-block: 18px
  }
  .footer__copy small {
    font-size: 10px
  }
}
@media only screen and (min-width:768px) {
  .u-sp {
    display: none !important
  }
}
@media only screen and (max-width:767px) {
  .u-pc {
    display: none !important
  }
}
@media (min-width:768px) and (max-width:1280px) {
  .c-search-btn--cta-lg a {
    width: 340px;
    height: 80px
  }
  .c-search-btn--cta-lg a span {
    font-size: 24px
  }
}
@media (min-width:1081px) and (max-width:1260px) {
  .c-section-title--intro {
    font-size: 36px
  }
}