@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
/* ------------------------------
    mixin
------------------------------ */
/* ------------------------------
    reset
------------------------------ */
html {
  font-size: 62.5%;
  overflow-y: scroll;
}
@media screen and (max-width: 750px) {
  html {
    font-size: 1.3333333333vw;
  }
}

*, *::before, *::after {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, h5, h6, p, address, time,
ul, ol, li, dl, dt, dd,
table, th, td, img, figure, figcaption,
form, input, button, textarea, select {
  margin: 0;
  padding: 0;
  border: none;
  line-height: 100%;
  list-style-type: none;
  font-style: normal;
  font-weight: normal;
  font-family: "Noto Sans JP", sans-serif;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
  -webkit-text-size-adjust: 100%;
}

input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  resize: none;
  outline: none;
  background: none;
}

select::-ms-expand {
  display: none;
}

button:hover {
  cursor: pointer;
}

a {
  color: #000;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  a {
    transition: opacity 0.3s ease;
  }
  a:hover {
    opacity: 0.6;
    cursor: pointer;
  }
}

img, object, picture, svg {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

/* ------------------------------
    base
------------------------------ */
body {
  color: #000;
  font-size: 1rem;
  text-align: left;
}

section {
  position: relative;
}

main {
  display: block;
}

.container {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

.wrap {
  width: 90%;
  padding: 0;
  margin: 0 auto;
  position: relative;
}

p, th, td, dt, dd, li, input, button, textarea {
  font-size: 1.6rem;
  line-height: 1.8;
}

.tal {
  text-align: left;
}

.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

.bold, strong {
  font-weight: bold;
}

.fixed {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.preload *, .preload *::before, .preload *::after {
  transition: none !important;
}

.kaku {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.maru {
  font-family: "Zen Maru Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .fade {
    transition: opacity 0.3s ease;
  }
  .fade:hover {
    opacity: 0.6;
    cursor: pointer;
  }
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  body {
    min-width: inherit;
  }
  input, textarea, select, .select {
    font-size: max(1.6rem, 16px) !important;
  }
}
/* ------------------------------
    header
------------------------------ */
#header {
  background-color: transparent;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0;
  z-index: 999;
}
#header .wrap {
  padding: 0;
  display: block;
  position: relative;
  min-width: inherit;
}
#header .logo_wrap {
  display: flex;
  align-items: center;
  position: relative;
  background: #fff;
  z-index: 999;
  padding: 0;
}
#header .logo_wrap .logo {
  padding-left: 3vw;
}
#header .logo_wrap .logo img {
  width: 30%;
  height: auto;
}
#header .menu-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: fixed;
  gap: 0;
  top: 0;
  right: 0;
  width: 9rem;
  height: 9rem;
  z-index: 999;
}
@media screen and (min-width: 768px) {
  #header .menu-trigger:hover {
    cursor: pointer;
  }
}
@media screen and (max-width: 767px) {
  #header .menu-trigger {
    width: 60px;
    height: 60px;
  }
}
#header .menu-trigger .ico {
  width: 60%;
  height: 50%;
  position: relative;
}
#header .menu-trigger .ico span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.5rem;
  background-color: #00a1e1;
}
#header .menu-trigger .ico span:nth-of-type(1) {
  top: 15%;
}
#header .menu-trigger .ico span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}
#header .menu-trigger .ico span:nth-of-type(3) {
  bottom: 15%;
}
#header .menu-trigger .open {
  width: 100%;
  text-align: center;
  line-height: 1;
}
#header .menu-trigger .open img {
  width: 60%;
}
#header #header_nav {
  width: 100%;
  max-width: 60rem;
  opacity: 0;
  padding: 0;
  position: fixed;
  right: 0;
  top: 0;
  overflow-y: auto;
  max-height: 100%;
  transform: translateY(-100%);
  transition: transform 0.3s, opacity 1s;
  z-index: 998;
}
@media screen and (max-width: 767px) {
  #header #header_nav {
    max-width: inherit;
  }
}
#header #header_nav .inner {
  background: #fff;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  position: relative;
  margin: 0;
  padding: 9rem 4rem 4rem;
}
@media screen and (max-width: 767px) {
  #header #header_nav .inner {
    padding-top: 70px;
    padding-left: 10rem;
  }
}
#header #header_nav .inner .nav {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
#header #header_nav .inner .nav .item a {
  display: block;
}
#header #header_nav .inner .nav .item img {
  width: auto;
  height: 4rem;
}
#header #header_nav .inner .nav .item._02 img, #header #header_nav .inner .nav .item._03 img, #header #header_nav .inner .nav .item._05 img, #header #header_nav .inner .nav .item._07 img {
  height: 3.5rem;
}
#header #header_nav .inner .nav .item._04 img {
  height: 3.8rem;
}
#header #header_nav .inner .store {
  width: 70%;
  max-width: 30rem;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  #header #header_nav .inner .store {
    max-width: inherit;
  }
}
#header #header_nav .inner .store .ttl {
  color: #00a1e1;
  border-bottom: 1px solid #00a1e1;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  padding: 0.2em 0;
  position: relative;
}
#header #header_nav .inner .store .ttl::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  translate: -50% 0;
  width: 0.8em;
  height: 0.8em;
  background: #00a1e1;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media screen and (max-width: 767px) {
  #header #header_nav .inner .store .ttl {
    font-size: 2.2rem;
  }
}
#header #header_nav .inner .store .list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 2rem;
}
#header #header_nav .inner .store .list .item a {
  display: block;
  background: #00a1e1;
  color: #fff;
  font-size: 2.2rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  padding: 0.3em 1em;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  #header #header_nav .inner .store .list .item a {
    font-size: 2.6rem;
  }
}
#header .overlay {
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  z-index: 997;
}
#header .overlay.active {
  opacity: 1;
  pointer-events: auto;
}
#header.navOpen .menu-trigger .ico span {
  background: #999;
}
#header.navOpen .menu-trigger .ico span:nth-of-type(1) {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}
#header.navOpen .menu-trigger .ico span:nth-of-type(2) {
  opacity: 0;
}
#header.navOpen .menu-trigger .ico span:nth-of-type(3) {
  bottom: 50%;
  transform: translateY(50%) rotate(45deg);
}
#header.navOpen .menu-trigger .open {
  opacity: 0;
}
#header.navOpen #header_nav {
  opacity: 1;
  transform: translateY(0);
  transition: transform 0.3s, opacity 0s;
}
#header .pagetop {
  position: fixed;
  right: 0;
  top: 9rem;
  margin: 0 2rem;
}
@media screen and (max-width: 767px) {
  #header .pagetop {
    top: 60px;
    margin: 0 10px;
  }
}
#header .pagetop a {
  display: block;
  width: 5rem;
  height: 5rem;
  border-radius: 100%;
  background: #00a1e1;
  overflow: hidden;
  text-indent: -1000px;
}
@media screen and (max-width: 767px) {
  #header .pagetop a {
    width: 40px;
    height: 40px;
  }
}
#header .pagetop a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -30%;
  rotate: 45deg;
  width: 40%;
  height: 40%;
  border-top: 0.4rem solid #fff;
  border-left: 0.4rem solid #fff;
}

@media screen and (max-width: 767px) {
  #header,
  #header .wrap {
    width: 100%;
    height: 60px;
  }
}
/* ---------------------------------------
  footer
-----------------------------------------*/
footer {
  background: #FFFFFF;
  padding: 3rem 0;
  position: relative;
}

footer p,
footer li {
  font-weight: bold;
  font-size: 1.7rem;
  line-height: 1.53;
}

footer .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

footer .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

footer .list_item {
  margin-right: 1.5rem;
}

footer .list_item_link:hover {
  text-decoration: underline;
}

footer .copyright {
  font-size: 1.5rem;
  display: block;
  margin-top: 0.5rem;
}

footer .toplink {
  margin-top: 0.5rem;
}

footer .toplink_link:hover {
  text-decoration: underline;
}

footer .logo {
  padding-top: 1rem;
  width: 21rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  cursor: pointer;
}

footer .logo:hover {
  opacity: 0.7;
}

footer .logo_wrap {
  display: flex;
  align-items: center;
  margin-right: -2rem;
}

#footer .inner {
  width: 80%;
  margin: 0 auto;
}
#footer .inner .time {
  font-size: 1.5rem;
  font-weight: 600;
  margin: 1em 0;
}
#footer .inner .kome {
  font-size: 1.5rem;
  font-weight: 400;
  margin: 1em 0;
}
#footer .inner .logo_wrap {
  justify-content: space-between;
  margin: 0;
  gap: 3rem;
}
#footer .inner .logo_wrap .logo {
  width: auto;
}
#footer .inner .logo_wrap .logo img {
  height: 4rem;
  width: auto;
}
#footer .inner .logo_wrap .sns {
  display: flex;
  align-items: center;
  background: #00a1e1;
}
#footer .inner .logo_wrap .sns .ttl {
  color: #fff;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  padding: 0 2em;
}
#footer .inner .logo_wrap .sns .list {
  background: #fff;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  margin: 1px;
}
#footer .inner .logo_wrap .sns .list .item {
  font-size: 1rem;
}
#footer .inner .logo_wrap .sns .list a {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
#footer .inner .logo_wrap .sns .list img {
  width: 3.5rem;
}

/* ------------------------------
    page
------------------------------ */
.mt1 {
  margin-top: 1rem !important;
}

.mt2 {
  margin-top: 2rem !important;
}

.mt3 {
  margin-top: 3rem !important;
}

.mt4 {
  margin-top: 4rem !important;
}

.mt5 {
  margin-top: 5rem !important;
}

.mt6 {
  margin-top: 6rem !important;
}

.mt7 {
  margin-top: 7rem !important;
}

.mt8 {
  margin-top: 8rem !important;
}

.mt9 {
  margin-top: 9rem !important;
}

.mt10 {
  margin-top: 10rem !important;
}

.mt11 {
  margin-top: 11rem !important;
}

.mt12 {
  margin-top: 12rem !important;
}

.mt13 {
  margin-top: 13rem !important;
}

.mt14 {
  margin-top: 14rem !important;
}

.mt15 {
  margin-top: 15rem !important;
}

.mt16 {
  margin-top: 16rem !important;
}

.mt17 {
  margin-top: 17rem !important;
}

.mt18 {
  margin-top: 18rem !important;
}

.mt19 {
  margin-top: 19rem !important;
}

.mt20 {
  margin-top: 20rem !important;
}

.fz10 {
  font-size: 1rem !important;
}

.fz11 {
  font-size: 1.1rem !important;
}

.fz12 {
  font-size: 1.2rem !important;
}

.fz13 {
  font-size: 1.3rem !important;
}

.fz14 {
  font-size: 1.4rem !important;
}

.fz15 {
  font-size: 1.5rem !important;
}

.fz16 {
  font-size: 1.6rem !important;
}

.fz17 {
  font-size: 1.7rem !important;
}

.fz18 {
  font-size: 1.8rem !important;
}

.fz19 {
  font-size: 1.9rem !important;
}

.fz20 {
  font-size: 2rem !important;
}

.fz21 {
  font-size: 2.1rem !important;
}

.fz22 {
  font-size: 2.2rem !important;
}

.fz23 {
  font-size: 2.3rem !important;
}

.fz24 {
  font-size: 2.4rem !important;
}

.fz25 {
  font-size: 2.5rem !important;
}

.fz26 {
  font-size: 2.6rem !important;
}

.fz27 {
  font-size: 2.7rem !important;
}

.fz28 {
  font-size: 2.8rem !important;
}

.fz29 {
  font-size: 2.9rem !important;
}

.fz30 {
  font-size: 3rem !important;
}

.fz31 {
  font-size: 3.1rem !important;
}

.fz32 {
  font-size: 3.2rem !important;
}

.fz33 {
  font-size: 3.3rem !important;
}

.fz34 {
  font-size: 3.4rem !important;
}

.fz35 {
  font-size: 3.5rem !important;
}

.fz36 {
  font-size: 3.6rem !important;
}

.fz37 {
  font-size: 3.7rem !important;
}

.fz38 {
  font-size: 3.8rem !important;
}

.fz39 {
  font-size: 3.9rem !important;
}

.fz40 {
  font-size: 4rem !important;
}

#page_index {
  background: url("../img/common/bg_red@2x.png") repeat center top/75rem auto;
}
#page_index .img._02 {
  position: relative;
  z-index: 20;
  margin-top: 4vw;
  pointer-events: none;
}
#page_index .main {
  background: #00a1e1;
  margin-top: -10rem;
  position: relative;
  z-index: 10;
}
#page_index .main::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 100%;
  margin-bottom: -1px;
  width: 100%;
  height: 8vw;
  background: #00a1e1;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
#page_index .main::after {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  margin-top: -1px;
  width: 100%;
  height: 8vw;
  background: #00a1e1;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}
#page_index .main .logo img {
  margin-top: -3rem;
}
#page_index .main .box {
  background: #fff;
  text-align: center;
  transform: skewY(-5deg);
  border-radius: 1rem;
  margin-top: 1rem;
  padding: 2rem;
}
#page_index .main .box .ttl {
  color: #cc0c0d;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 600;
  letter-spacing: -0.05em;
  white-space: nowrap;
  margin-bottom: 0.5em;
  border-bottom: 5px solid #f9f32b;
}
#page_index .main .box .ttl .big {
  font-size: 150%;
  font-weight: 800;
}
#page_index .main .box .txt {
  color: #00a1e1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 600;
}
#page_index .main .sttl {
  background: url("../img/index/index_ttl02.svg") no-repeat center/100% auto;
  padding: 4.5rem 0 5rem;
  color: #fff;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 0.12em;
  font-weight: 700;
  text-align: center;
}
#page_index .main .sttl span {
  display: inline-block;
  transform: skewY(-4.5deg);
}
#page_index .main .btn_wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  padding-bottom: 2rem;
}
#page_index .main .btn_wrap .btn {
  transform: skewY(-5deg);
}
#page_index .main .btn_wrap .btn a {
  display: block;
  background: #fff;
  color: #00a1e1;
  font-size: 3.8rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 0.3em 0;
  text-align: center;
  border-radius: 1rem;
}

.page_second #sec_ttl {
  background: #00a1e1;
  padding: 2rem 0 3rem;
}
.page_second #sec_ttl .point {
  margin-top: 2rem;
}
.page_second #sec_campaign {
  background: url("../img/funabashi/index/campaign_footer@2x.png") no-repeat center bottom/75rem auto, url("../img/common/bg_red@2x.png") repeat center top/75rem auto;
  padding: 4rem 0 23rem;
  overflow: hidden;
}
.page_second #sec_campaign .ttl._01 {
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 5rem;
  line-height: 1.4;
  font-weight: 600;
  text-align: center;
}
.page_second #sec_campaign .ttl._01 span {
  display: inline-block;
  padding: 0.25em 1em;
  position: relative;
}
.page_second #sec_campaign .ttl._01 span::before, .page_second #sec_campaign .ttl._01 span::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  translate: 0 -50%;
  width: 1em;
  height: 1.5em;
  background: url("../img/funabashi/index/campaign_ttl01.svg") no-repeat center/contain;
}
.page_second #sec_campaign .ttl._01 span::after {
  left: auto;
  right: 0;
  scale: -1 1;
}
.page_second #sec_campaign .nav .btn {
  text-align: center;
  margin-bottom: 4rem;
}
.page_second #sec_campaign .nav .btn a {
  display: inline-block;
  position: relative;
}
.page_second #sec_campaign .nav .btn a span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 9em;
  height: 1.5em;
  background: #fff;
  color: #cc0c0d;
  border: 0.1rem solid #cc0c0d;
  border-radius: 3rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 5rem;
  line-height: 1.2;
  font-weight: 600;
  position: relative;
}
.page_second #sec_campaign .nav .btn a::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 0.8rem;
  width: 100%;
  height: 100%;
  background: #cc0c0d;
  border-radius: 3rem;
  mix-blend-mode: multiply;
}
.page_second #sec_campaign .box {
  background: #fff;
  border-radius: 2rem;
  padding: 2rem;
  margin-top: 2rem;
  text-align: center;
  position: relative;
}
.page_second #sec_campaign .box small {
  font-size: 80%;
}
.page_second #sec_campaign .box b {
  font-size: 120%;
}
.page_second #sec_campaign .box .red {
  color: #cc0c0d;
}
.page_second #sec_campaign .box .ttl._02 {
  color: #cc0c0d;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 3.2rem;
  line-height: 1.2;
  letter-spacing: -0.05em;
  font-weight: 600;
  white-space: nowrap;
  margin-bottom: 0.3em;
}
.page_second #sec_campaign .box .ttl._02 span {
  display: inline-block;
  position: relative;
}
.page_second #sec_campaign .box .ttl._02 span::before, .page_second #sec_campaign .box .ttl._02 span::after {
  position: absolute;
  left: 0;
  top: 50%;
  translate: 0 -50%;
  width: 1em;
  height: 1.2em;
  background: url("../img/funabashi/index/campaign_ttl02.svg") no-repeat center/contain;
}
.page_second #sec_campaign .box .ttl._02 span::after {
  left: auto;
  right: 0;
  scale: -1 1;
}
.page_second #sec_campaign .box .ttl._03 {
  background: #cc0c0d;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 3.5rem;
  line-height: 1.1;
  font-weight: 600;
  white-space: nowrap;
  border-radius: 2rem;
  padding: 0.2em 0 0.3em;
  margin-bottom: 1.5rem;
}
.page_second #sec_campaign .box .ttl._03 b {
  display: inline-block;
  font-size: 175%;
  line-height: 1;
}
.page_second #sec_campaign .box .ttl._04 {
  background: #fff;
  border: 1px solid #000;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 3.5rem;
  line-height: 1.1;
  font-weight: 600;
  white-space: nowrap;
  border-radius: 2rem;
  padding: 0.2em 0;
  margin: 1em 2rem 0.5em;
}
.page_second #sec_campaign .box .ttl._05 {
  color: #c459aa;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.5rem;
  line-height: 1.1;
  font-weight: 600;
  white-space: nowrap;
  text-align: center;
  padding-top: 0.6em;
  margin-top: 0.6em;
  border-top: 2px dotted #000;
}
.page_second #sec_campaign .box .btn {
  text-align: center;
  margin: 2rem 0;
}
.page_second #sec_campaign .box .btn a {
  display: inline-block;
  position: relative;
}
.page_second #sec_campaign .box .btn a span {
  display: inline-block;
  background: #fff;
  color: #cc0c0d;
  border: 2px solid #cc0c0d;
  border-radius: 2rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 3.5rem;
  line-height: 1.2;
  font-weight: 600;
  padding: 0.3em 1em;
  position: relative;
}
.page_second #sec_campaign .box .btn a::before {
  content: "";
  position: absolute;
  left: 0.8rem;
  top: 0.4rem;
  width: 100%;
  height: 100%;
  background: #cc0c0d;
  border-radius: 2rem;
}
.page_second #sec_campaign .box .btn._black a span {
  border-color: #000;
  color: #000;
}
.page_second #sec_campaign .box .btn._black a::before {
  background: #000;
}
.page_second #sec_campaign .box .btn._none-active a {
  pointer-events: none;
}
.page_second #sec_campaign .box .btn._none-active a span {
  border-color: #999;
  color: #999;
}
.page_second #sec_campaign .box .btn._none-active a::before {
  background: #999;
}
.page_second #sec_campaign .box .txt {
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.4;
  margin: 0.4em -2rem;
}
.page_second #sec_campaign .box .txt._l {
  font-size: 3.3rem;
  line-height: 1.1;
  font-weight: 600;
}
.page_second #sec_campaign .box .txt._m {
  font-size: 3.3rem;
  line-height: 1.3;
  font-weight: 500;
}
.page_second #sec_campaign .box .txt._m._light {
  font-size: 3.1rem;
  font-weight: 400;
}
.page_second #sec_campaign .box .txt._s {
  font-size: 1.6rem;
  line-height: 1.4;
}
.page_second #sec_campaign .box .img {
  position: absolute;
}
.page_second #sec_campaign .box._nibai .ttl._02 {
  color: #008045;
}
.page_second #sec_campaign .box._nibai .ttl._03 {
  background: #008045;
}
.page_second #sec_campaign .box._nibai .img._01 {
  left: 3rem;
  top: 14rem;
  width: 8.2rem;
}
.page_second #sec_campaign .box._yama .ttl._02 {
  color: #0097e0;
}
.page_second #sec_campaign .box._yama .ttl._03 {
  background: #0097e0;
}
.page_second #sec_campaign .box._yama .img._01 {
  left: -1rem;
  top: 20rem;
  width: 9rem;
}
.page_second #sec_campaign .box._yama .img._02 {
  right: -3rem;
  top: 20rem;
  width: 11rem;
}
.page_second #sec_campaign .box._line .ttl._02 {
  color: #61ab3b;
}
.page_second #sec_campaign .box._line .ttl._03 {
  background: #61ab3b;
}
.page_second #sec_campaign .box._line .img._01 {
  right: -1rem;
  top: 18rem;
  width: 13.3rem;
}
.page_second #sec_campaign .box._plus .ttl._02 {
  color: #c459aa;
}
.page_second #sec_campaign .box._plus .ttl._03 {
  background: #c459aa;
}
.page_second #sec_campaign .box._plus .img._01 {
  left: -1rem;
  top: 20rem;
  width: 13rem;
}
.page_second #sec_campaign .box._plus .img._02 {
  right: 1rem;
  top: 20rem;
  width: 8.9rem;
}
.page_second #sec_campaign .box._cosme .ttl._02 {
  color: #bb145a;
}
.page_second #sec_campaign .box._cosme .ttl._03 {
  background: #bb145a;
}
.page_second #sec_campaign .box._cosme .img._01 {
  left: 2rem;
  top: 22rem;
  width: 15.4rem;
}
.page_second #sec_campaign .box._cosme .img._02 {
  right: 2rem;
  top: 16rem;
  width: 12.6rem;
}
.page_second #sec_campaign .box._popo .ttl._02 {
  color: #ea5504;
}
.page_second #sec_campaign .box._popo .ttl._03 {
  background: #ea5504;
}
.page_second #sec_campaign .box._popo .img._01 {
  left: -1rem;
  top: 22rem;
  width: 13.4rem;
}
.page_second #sec_campaign .box._popo .img._02 {
  right: 1rem;
  top: 25rem;
  width: 11.7rem;
}
.page_second #sec_campaign .box._work .ttl._02 {
  color: #c4940c;
}
.page_second #sec_campaign .box._work .ttl._03 {
  background: #c4940c;
}
.page_second #sec_campaign .box._work .img {
  position: static;
}
.page_second #sec_campaign .box._iryou .ttl._02 {
  color: #e63082;
}
.page_second #sec_campaign .box._iryou .ttl._03 {
  background: #e63082;
}
.page_second #sec_campaign .box._iryou .img._01 {
  left: 3rem;
  top: 16rem;
  width: 7.7rem;
}
.page_second #sec_campaign .box._iryou .img._02 {
  right: 2rem;
  top: 16rem;
  width: 15rem;
}
.page_second #sec_campaign .box._asagao .ttl._02 {
  color: #802780;
}
.page_second #sec_campaign .box._asagao .ttl._03 {
  background: #802780;
}
.page_second #sec_campaign .box._asagao .img._01 {
  right: 3rem;
  top: 16rem;
  width: 12rem;
}
.page_second #sec_campaign .box._food .ttl._02 {
  color: #954d2a;
}
.page_second #sec_campaign .box._food .ttl._03 {
  background: #954d2a;
}
.page_second #sec_campaign .box._food .img._01 {
  left: 2rem;
  top: 16rem;
  width: 11.8rem;
}
.page_second #sec_campaign .box._food .img._02 {
  right: 2rem;
  top: 15rem;
  width: 15.6rem;
}
.page_second #sec_campaign .box._takusute .ttl._02 {
  color: #353681;
}
.page_second #sec_campaign .box._takusute .ttl._03 {
  background: #353681;
}
.page_second #sec_campaign .box._takusute .img._01 {
  left: 4rem;
  top: 18rem;
  width: 5.6rem;
}
.page_second #sec_campaign .box._takusute .img._02 {
  right: 4rem;
  top: 17rem;
  width: 8.5rem;
}
.page_second #sec_campaign .box._takusute .txt img {
  width: 90%;
}
.page_second #sale_btn {
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  width: 16rem;
  z-index: 800;
  transition: opacity 0.3s ease;
}
.page_second #sale_btn.is-hide {
  opacity: 0;
  pointer-events: none;
}

.campaign-popup {
  display: grid;
  align-items: center;
  justify-content: center;
  width: 70rem;
  max-height: 80vh;
  margin: 0 auto;
  position: relative;
}
.campaign-popup .mfp-close {
  color: #fff;
  top: auto;
  bottom: 100%;
}
.campaign-popup .inner {
  background: #fff;
  max-height: 80vh;
  overflow-y: auto;
  border-radius: 2rem;
  padding: 3rem;
  position: relative;
}
.campaign-popup .inner .txt {
  font-size: 1.3rem;
}
@media screen and (max-width: 767px) {
  .campaign-popup .inner .txt {
    font-size: 2.2rem;
  }
}

.page_second #sec_goods,
.page_third #sec_goods {
  background: url("../img/common/bg_yellow@2x.png") repeat center top/75rem auto;
  padding: 4rem 0;
}
.page_second #sec_goods .box,
.page_third #sec_goods .box {
  background: #fffeee;
  padding: 3rem 6rem 2rem;
  border-radius: 2rem;
  margin-top: 3rem;
  text-align: center;
}
.page_second #sec_goods .box .ttl,
.page_third #sec_goods .box .ttl {
  margin-bottom: 2rem;
}
.page_second #sec_goods .box .ttl img,
.page_third #sec_goods .box .ttl img {
  width: 100%;
}
.page_second #sec_goods .box .txt img,
.page_third #sec_goods .box .txt img {
  width: 90%;
}
.page_second #sec_goods .box .img,
.page_third #sec_goods .box .img {
  overflow: hidden;
  margin: 0 -6rem;
}
.page_second #sec_goods .box .img img,
.page_third #sec_goods .box .img img {
  margin: -10rem 0 -8rem;
}
.page_second #sec_goods .box .btn,
.page_third #sec_goods .box .btn {
  margin-top: 2rem;
}
.page_second #sec_goods .box .btn img,
.page_third #sec_goods .box .btn img {
  width: 20.4rem;
}
.page_second #sec_goods .box._01,
.page_third #sec_goods .box._01 {
  background: #cc0c0d;
}
.page_second #sec_goods .box._01 .txt,
.page_third #sec_goods .box._01 .txt {
  color: #fff;
  font-size: 2.5rem;
  line-height: 1.4;
  font-weight: 700;
}
.page_second #sec_goods .box#original,
.page_third #sec_goods .box#original {
  background: #fffeee;
}
.page_second #sec_goods .nav,
.page_third #sec_goods .nav {
  margin-top: 3rem;
}
.page_second #sec_goods .nav .ttl,
.page_third #sec_goods .nav .ttl {
  text-align: center;
}
.page_second #sec_goods .nav .ttl span,
.page_third #sec_goods .nav .ttl span {
  display: inline-block;
  color: #00a1e1;
  border-bottom: 1px solid #00a1e1;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  padding: 0.2em 0.5em;
  position: relative;
}
.page_second #sec_goods .nav .ttl span::before,
.page_third #sec_goods .nav .ttl span::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  translate: -50% 0;
  width: 0.5em;
  height: 0.5em;
  background: #00a1e1;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media screen and (max-width: 767px) {
  .page_second #sec_goods .nav .ttl span,
  .page_third #sec_goods .nav .ttl span {
    font-size: 2.2rem;
  }
}
.page_second #sec_goods .nav .list,
.page_third #sec_goods .nav .list {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
}
.page_second #sec_goods .nav .list .item,
.page_third #sec_goods .nav .list .item {
  flex: 1;
}
.page_second #sec_goods .nav .list .item a,
.page_third #sec_goods .nav .list .item a {
  display: block;
  background: #00a1e1;
  color: #fff;
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  padding: 0.3em 0;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .page_second #sec_goods .nav .list .item a,
  .page_third #sec_goods .nav .list .item a {
    font-size: 2.6rem;
  }
}

.page_third #sec_ttl {
  background: #00a1e1;
}
.page_third #sec_ttl .wrap {
  padding: 2rem 0 3rem;
}
.page_third #sec_ttl .point {
  margin-top: 2rem;
}
.page_third #sec_ttl .bg {
  background: url("../img/common/bg_red@2x.png") repeat center top/75rem auto;
}
.page_third #sec_ttl .bg img {
  margin-top: -2rem;
}
.page_third #sec_goods {
  padding-top: 2rem;
}
.page_third #sec_goods .box {
  padding: 4rem 6rem 0;
}
.page_third #sec_goods .box .img {
  overflow: hidden;
  margin: 0 -6rem;
}
.page_third #sec_goods .box .img img {
  margin: -11rem 0 0;
}

/* ------------------------------
    responsive
------------------------------ */
@media screen and (min-width: 960px) {
  .pc-none {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 959px) {
  .tb-none {
    display: none !important;
  }
  .pc {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .sp-none {
    display: none !important;
  }
}
/* ------------------------------
    clearfix
------------------------------ */
/* ------------------------------
    clearfix
------------------------------ */
.cf {
  zoom: 1;
}
.cf::after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  overflow: hidden; /* 隙間対応 */
  font-size: 0.1em; /* 隙間対応 */
  line-height: 0; /* 隙間対応 */
}
