/* ----------------------------
	LP Style Setting
	Create Date: 25.08.21
----------------------------*/
/**================================= Common Setting =================================**/
/******** Common ********/
/* Layout */
.blockContentsWrapper {
  color: #414344;
  font-family: "Noto Sans JP", serif;
}
.blockContentsWrapper .blockContentsInner.pt0 {
  padding-top: 0;
}
.footerTopTxtAtt {
  font-size: 0.875rem;
}
.footerTopTxtAtt:not(:first-of-type) {
  margin-top: 5px;
}
.footerTopTxtAtt:last-of-type {
  margin-bottom: 30px;
}

/* Button */
a.modBtn03 {
  height: 3.1em;
  padding: 0 1.6em;
  background-color: var(--blue);
  font-size: 1rem;
  font-weight: 500;
  line-height: 3.1em;
}

@media screen and (min-width: 897px) {
  .blockFooter.pt {
    padding-top: 100px;
  }
  .footerTopTxtAtt {
    font-size: 1.125rem;
  }
  .footerTopTxtAtt:last-of-type {
    margin-bottom: 50px;
  }
  .footerNavArea.borderTop {
    border-top: var(--black60) solid 1px;
  }
  .sect {
    padding: 100px 30px 120px;
  }

  /* Button */
  a.modBtn03 {
    font-size: 1.25rem;
  }

  /* anchor */
  .smtAccAnchor {
    margin-top: -94px;
    padding-top: 94px;
  }
}

/******** FV Block ******* */
.wifi7Fv {
  background: var(--blue);
}
.wifi7FvInner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  max-width: 1240px;
  min-height: 506px;
  margin: 0 auto;
  padding: 10vw 8vw;
}
.wifi7FvCont {
  color: #fff;
}
.wifi7FvCatch {
  margin: .5em 0 1em;
  font-size: 5.4vw;
  font-weight: 700;
}
.wifi7FvText {
  font-size: 5vw;
  font-weight: 500;
}
@media screen and (min-width: 897px) {
  .wifi7FvInner {
    flex-direction: row;
    justify-content: space-between;
    padding: 30px 50px 30px 20px;
  }
  .wifi7FvCatch {
    margin: 1.5em 0 2em;
    font-size: 2.5rem;
  }
  .wifi7FvText {
    font-size: 2rem;
  }
}

/******** CONTENTS Block ********/
/* INTRO
--------------- */
.wifi7IntroTitle {
  margin-bottom: 1.2em;
  color: var(--blue);
  font-size: 1.75rem;
  font-weight: 700;
  text-align: center;
}
.wifi7IntroTitle span {
  color: #73BF4B;
}
.wifi7IntroLead {
  font-size: 1rem;
  font-weight: 500;
}
.wifi7IntroLead p:not(:last-child) {
  margin-bottom: 1.5em;
}
.wifi7IntroBox {
  margin: 40px 0;
  padding: 30px 20px;
  border-radius: 20px;
  box-shadow: 0 0 10px rgba(0,0,0,.16);
}
.wifi7IntroHeading {
  margin-bottom: 1.5em;
  color: var(--blue);
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
}
.wifi7IntroHeading span {
  color: #73BF4B;
}
.wifi7IntroItem:not(:last-child) {
  margin-bottom: 30px;
}
.wifi7IntroItemTitle {
  display: flex;
  align-items: center;
  margin-bottom: .6em;
  color: #73BF4B;
  font-size: 1.125rem;
  font-weight: 600;
}
.wifi7IntroItemNum {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.72em;
  height: 1.72em;
  margin-right: .6em;
  padding-bottom: .1em;
  background: #73BF4B;
  border-radius: 50%;
  color: #fff;
  font-size: 1.375em;
  font-weight: 700;
  line-height: 1;
}
.wifi7IntroItem p {
  font-size: .9375rem;
  font-weight: 500;
}
.wifi7IntroClosing {
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

@media screen and (min-width: 897px) {
  .wifi7IntroTitle {
    font-size: 3.1875rem;
  }
  .wifi7IntroLead {
    font-size: 1.5rem;
  }
  .wifi7IntroBox {
    margin: 60px 0 80px;
    padding: 70px 80px;
  }
  .wifi7IntroHeading {
    font-size: 2.5rem;
  }
  .wifi7IntroItemTitle {
    font-size: 2rem;
  }
  .wifi7IntroItem p {
    font-size: 1.375rem;
  }
  .wifi7IntroClosing {
    font-size: 1.875rem;
  }
}

/* FEATURE
--------------- */
.wifi7Feat {
  position: relative;
  padding: 70px 20px;
  background: #73BF4B;
}
.wifi7Feat::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 212px;
  height: 32px;
  border-color: #fff transparent transparent;
  border-style: solid;
  border-width: 32px 106px 0;
  content: "";
  transform: translateX(-50%);
}
.wifi7FeatBox {
  padding: 40px 20px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 5px 10px rgba(0,0,0,.16);
}
.wifi7FeatTitle {
  color: var(--blue);
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
}
.wifi7FeatSubtitle {
  margin-bottom: 40px;
  color: var(--blue);
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center;
}
.wifi7FeatLead {
  color: var(--blue);
  font-size: .975rem;
  font-weight: 600;
}
.wifi7FeatItems {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  margin: 40px 0 0;
}
.wifi7FeatItem {
  text-align: center;
}
.wifi7FeatItemText {
  margin-bottom: 1em;
  color: var(--blue);
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}
.wifi7FeatItemText span {
  color: var(--red);
  text-decoration: underline;
}
.wifi7FeatItemImage {
  max-width: 50%;
  margin: 0 auto;
}
@media screen and (min-width: 897px) {
  .wifi7Feat {
    padding: 100px 30px 120px;
  }
  .wifi7Feat::before {
    width: 266px;
    height: 40px;
    border-width: 40px 133px 0;
  }
  .wifi7FeatBox {
    padding: 100px 80px;
  }
  .wifi7FeatTitle {
    font-size: 2.375rem;
  }
  .wifi7FeatSubtitle {
    margin-bottom: 60px;
    font-size: 1.875rem;
  }
  .wifi7FeatLead {
    font-size: 1.5rem;
  }
  .wifi7FeatItems {
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 10px;
    margin: 75px -40px 0;
  }
  .wifi7FeatItemText {
    margin-bottom: 1.5em;
    font-size: 1.625rem;
  }
  .wifi7FeatItemImage {
    max-width: 100%;
  }
}

/* PRODUCT
--------------- */
.wifi7Prod {
  position: relative;
  padding: 70px 20px;
  background: #ececec;
}
.wifi7Prod::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 212px;
  height: 32px;
  border-color: #73BF4B transparent transparent;
  border-style: solid;
  border-width: 32px 106px 0;
  content: "";
  transform: translateX(-50%);
}
.wifi7ProdTitle {
  margin-bottom: 1.5em;
  color: var(--dblue);
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
}
.wifi7ProdReco {
  padding: 30px 20px;
  background: #fff;
  box-shadow: 0 5px 10px rgba(0,0,0,.16);
}
.wifi7ProdRecoTitle {
  margin-bottom: 1.5em;
  color: var(--dblue);
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
}
.wifi7ProdRecoInner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 600px;
  margin: 0 auto;
}
.wifi7ProdRecoItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 10px;
  border: 6px solid #7FA7D7;
}
.wifi7ProdRecoItem--2 {
  border-color: #73BF4B;
}
.wifi7ProdRecoItemTitle {
  position: relative;
  padding-bottom: 1em;
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
}
.wifi7ProdRecoItem--1 .wifi7ProdRecoItemTitle {
  color: var(--blue);
}
.wifi7ProdRecoItem--2 .wifi7ProdRecoItemTitle {
  color: #73BF4B;
}
.wifi7ProdRecoItemTitle::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 98px;
  height: 3px;
  content: "";
  transform: translateX(-50%);
}
.wifi7ProdRecoItem--1 .wifi7ProdRecoItemTitle::after {
  background: var(--blue);
}
.wifi7ProdRecoItem--2 .wifi7ProdRecoItemTitle::after {
  background: #73BF4B;
}

.wifi7ProdRecoItemImage {
  margin: 30px 0 20px;
  text-align: center;
}
.wifi7ProdRecoItemImage figcaption {
  margin-top: .5em;
  font-size: 1.125rem;
  font-weight: 700;
}
.wifi7ProdRecoItem--1 .wifi7ProdRecoItemImage figcaption {
  color: var(--blue);
}
.wifi7ProdRecoItem--2 .wifi7ProdRecoItemImage figcaption {
  color: #73BF4B;
}
.wifi7ProdRecoItemList {
  font-size: .9375rem;
  font-weight: 700;
}
.wifi7ProdMeraki {
  margin-top: 25px;
  padding: 30px 20px;
  background: #fff;
  box-shadow: 0 5px 10px rgba(0,0,0,.16);
}
.wifi7ProdMerakiTitle {
  margin-bottom: .2em;
  color: var(--blue);
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
}
.wifi7ProdMerakiInner {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.wifi7ProdMerakiItem {
  text-align: center;
}
.wifi7ProdMerakiItemImage {
  margin-bottom: 30px;
}
@media screen and (min-width: 897px) {
  .wifi7Prod {
    padding: 100px 30px 120px;
  }
  .wifi7Prod::before {
    width: 266px;
    height: 40px;
    border-width: 40px 133px 0;
  }
  .wifi7ProdTitle {
    font-size: 2.5rem;
  }
  .wifi7ProdRecoInner {
    flex-direction: row;
    justify-content: space-between;
    max-width: 100%;
  }
  .wifi7ProdReco {
    padding: 55px 50px;
  }
  .wifi7ProdRecoTitle {
    font-size: 1.875rem;
  }
  .wifi7ProdRecoItem {
    width: 47%;
    border-width: 10px;
  }
  .wifi7ProdRecoItemTitle {
    font-size: 1.875rem;
  }
  .wifi7ProdRecoItemImage figcaption {
    font-size: 1.625rem;
  }
  .wifi7ProdRecoItemList {
    font-size: 1.125rem;
  }
  .wifi7ProdMeraki {
    margin-top: 35px;
    padding: 50px 40px 40px;
  }
  .wifi7ProdMerakiTitle {
    font-size: 2.375rem;
  }
  .wifi7ProdMerakiInner {
    flex-direction: row;
    justify-content: space-around;
  }
}

/* CAMPAIGN
--------------- */
.wifi7Camp {
  padding: 0 0 40px;
}
.wifi7Camp .sectInner {
  padding: 0 20px;
}
.wifi7CampTitle {
  padding: .93em;
  background: var(--red);
  color: #fff;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.wifi7CampBox {
  margin-top: 40px;
  padding: 30px 20px;
  border-radius: 20px;
  box-shadow: 0 0 20px #73BF4B inset, 0 0 0 1px rgba(227,36,27,.5);
}
.wifi7CampHeading {
  position: relative;
  margin-bottom: .6em;
  padding-bottom: .6em;
  color: #73BF4B;
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
}
.wifi7CampHeading::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 98px;
  height: 3px;
  background: var(--blue);
  content: "";
  transform: translateX(-50%);
}
.wifi7CampSubheading {
  color: var(--blue);
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center;
}
.wifi7CampItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin: 40px 0;
}
.wifi7CampItem--2 {
  flex-wrap: wrap;
}
.wifi7CampItemImage {
  text-align: center;
}
.wifi7CampItemImage--sm {
  max-width: 55%;
}
.wifi7CampItemDetail {
  color: var(--dblue);
  font-size: .875rem;
  font-weight: 700;
}
.wifi7CampItemDetail dd {
  padding-left: 1em;
}
.wifi7CampReco {
  max-width: 600px;
  margin: 0 auto;
}
.wifi7CampRecoTitle {
  margin-bottom: .8em;
  padding: .43em;
  background: #73BF4B;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.wifi7CampRecoItems {
  display: flex;
  flex-direction: column;
  padding: 0 10px;
}
.wifi7CampRecoItem {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 25px 0;
}
.wifi7CampRecoItem:not(:last-child) {
  border-bottom: 1px solid var(--dblue);
}
.wifi7CampRecoItemTitle {
  display: flex;
  align-items: center;
  width: 100%;
  margin-bottom: 1em;
  color: var(--blue);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}
.wifi7CampRecoItemNum {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.8em;
  height: 1.8em;
  margin-right: .5em;
  padding-bottom: .1em;
  background: var(--blue);
  border-radius: 50%;
  color: #fff;
  font-size: 1.5em;
  line-height: 1;
}
.wifi7CampRecoItemList,
.wifi7CampRecoItemText {
  color: var(--dblue);
  font-size: .875rem;
  font-weight: 500;
}
.wifi7CampRecoItemText--lg {
  font-size: 1.125em;
}
.wifi7CampRecoItemList li {
  margin-top: 1.2em;
}
.wifi7CampRecoItemImage {
  text-align: center;
}
.wifi7CampRecoItemImage figcaption {
  margin: .8em 0 1.5em;
  color: var(--dblue);
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
}
.wifi7CampRecoItemImage--sm {
  max-width: 60%;
}
.wifi7CampRecoBtn {
  margin-top: 30px;
  text-align: center;
}
.wifi7CampRecoBtn .modBtn03 {
  width: 420px;
  max-width: 90%;
  background: var(--orange);
}

@media screen and (min-width: 897px) {
  .wifi7Camp {
    padding: 0 0 120px;
  }
  .wifi7CampTitle {
    font-size: 2.875rem;
  }
  .wifi7Camp .sectInner {
    max-width: 1160px;
    padding: 0 30px;
  }
  .wifi7CampBox {
    margin-top: 60px;
    padding: 60px 50px 50px;
  }
  .wifi7CampHeading {
    font-size: 2.6875rem;
  }
  .wifi7CampSubheading {
    font-size: 1.8125rem;
  }
  .wifi7CampItem {
    flex-direction: row;
    margin: 60px 0;
    gap: 0;
  }
  .wifi7CampItem--2 {
    flex-wrap: wrap;
  }
  .wifi7CampItemImage {
    width: 48%;
  }
  .wifi7CampItemImage--sm {
    max-width: 100%;
  }
  .wifi7CampItem--2 .wifi7CampItemImage {
    width: 61%;
    text-align: left;
  }
  .wifi7CampItemDetail {
    width: 52%;
    font-size: 1.125rem;
  }
  .wifi7CampItem--2 .wifi7CampItemDetail {
    width: 50%;
    margin: -60px 0 0 auto;
  }

  .wifi7CampReco {
    max-width: 100%;
  }
  .wifi7CampRecoTitle {
    font-size: 2.125rem;
  }
  .wifi7CampRecoItems {
    flex-direction: row;
    padding: 0;
  }
  .wifi7CampRecoItem {
    padding: 15px 25px;
    border-right: 1px solid var(--dblue);
    border-bottom: none !important;
  }
  .wifi7CampRecoItem:first-child {
    padding-left: 0;
  }
  .wifi7CampRecoItem:last-child {
    padding-right: 0;
    border-right: none;
  }
  .wifi7CampRecoItemTitle {
    margin-bottom: 1.5em;
    font-size: 1.125rem;
  }
  .wifi7CampRecoItemList,
  .wifi7CampRecoItemText {
    font-size: 1rem;
  }
  .wifi7CampRecoItemList li {
    margin-top: 2em;
  }
  .wifi7CampRecoItemImage figcaption {
    font-size: 1rem;
  }
  .wifi7CampRecoItemImage--adj {
    margin-right: -25px;
  }
  .wifi7CampRecoItemImage--sm {
    max-width: 100%;
  }
  .wifi7CampRecoBtn .modBtn03 {
    height: 2.5em;
    font-size: 1.5rem;
    line-height: 2.5em;
  }
  .wifi7CampRecoBtn .modBtn03:hover {
    background: var(--yellow);
  }
}

/* EVENT
--------------- */
.wifi7Event {
  background: #edf2f9;
}
.wifi7EventTitle {
  margin-bottom: 1.5em;
  color: var(--dblue);
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
}
.wifi7EventBox {
  padding: 30px 20px;
  background: #fff;
  box-shadow: 0 5px 6px rgba(0,0,0,.16);
}
.wifi7EventLead {
  font-size: 1rem;
  font-weight: 700;
}
.wifi7EventBtnWrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  margin-top: 40px;
}
.wifi7EventBtn {
  width: 306px;
  max-width: 90%;
}
@media screen and (min-width: 897px) {
  .wifi7EventTitle {
    font-size: 2.5rem;
  }
  .wifi7EventBox {
    padding: 50px 80px 70px;
  }
  .wifi7EventLead {
    font-size: 1.5rem;
  }
  .wifi7EventBtnWrap {
    flex-direction: row;
    justify-content: space-around;
    margin-top: 80px;
  }

}
