/* media query */
body {
  font-size: 2rem;
}
body .spShow {
  display: none;
}
@media screen and (max-width: 960px) {
  body {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 668px) {
  body {
    font-size: 1.6rem;
  }
  body .pcShow {
    display: none;
  }
  body .spShow {
    display: block;
  }
}

.copyArea {
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 70px 0 50px;
}
@media screen and (max-width: 1260px) {
  .copyArea {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .copyArea {
    max-width: 100%;
    margin-left: 25px;
    margin-right: 25px;
  }
}
@media screen and (max-width: 960px) {
  .copyArea {
    padding: 50px 5vw;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (max-width: 668px) {
  .copyArea {
    padding: 30px 5vw;
  }
}
.copyArea > h3 {
  font-size: 110%;
  margin-bottom: 1em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 1.6;
}
.copyArea > p {
  line-height: 1.6;
  font-size: 160%;
}
.copyArea > p span {
  font-size: 70%;
}
@media screen and (max-width: 668px) {
  .copyArea > p {
    font-size: 140%;
  }
}
.copyArea .small {
  font-size: 90%;
  margin-top: 2em;
}
.copyArea .small a {
  text-decoration: underline;
  color: #055f8c;
}

.menuArea {
  padding: 0 30px 100px;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .menuArea {
    padding: 0 30px 50px;
  }
}
.menuArea > p {
  display: inline-block;
  margin: 0 10px;
}
.menuArea > p a {
  display: inline-block;
  text-align: center;
  letter-spacing: 1px;
  margin-bottom: 10px;
  color: #055f8c;
}
.menuArea > p a::after {
  content: "";
  display: block;
  height: 3px;
  margin-top: 3px;
  background-color: #f2f2f2;
  transition: 0.3s;
}
.menuArea > p a:hover::after {
  background-color: #055f8c;
}

.inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
@media all and (max-width: 1367px) {
  .inner {
    padding: 0 5vw;
  }
}

.flexWrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(17em, 1fr));
  gap: clamp(1.5em, 4vw, 3em);
}

.simpleList li {
  margin-bottom: 0.2em;
  text-indent: -1em;
  padding-left: 1em;
}
.simpleList li:last-child {
  margin-bottom: 0;
}

.mainView {
  background: url("../../tokyustayapp/images/main-bg.jpg") no-repeat;
  background-size: cover;
  background-position: center;
  padding: clamp(3em, 10vw, 5em) 0 0;
}
.mainView__text {
  max-width: 1200px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.conversionArea {
  background: #000;
  padding: clamp(2em, 8vw, 3em) 0;
}
.conversionArea .ttl {
  color: #FFF;
  font-size: 2.5rem;
  line-height: 130%;
  text-align: center;
  margin-bottom: 1em;
}
@media screen and (max-width: 960px) {
  .conversionArea .ttl {
    font-size: 2rem;
  }
}
.conversionArea .appLink {
  display: flex;
  align-items: center;
  gap: clamp(1em, 5vw, 2em);
  justify-content: space-between;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.pointWrap__item {
  padding: clamp(3em, 10vw, 4.5em) 0;
}
.pointWrap__item:nth-child(2n) {
  background: #F5F5F9;
}
.pointWrap__item:nth-child(2n) .thumb {
  order: -1;
}
.pointWrap__item:nth-child(2n) .textArea {
  margin-right: 0;
  margin-left: 2em;
}
.pointWrap__item .inner {
  display: flex;
  align-items: center;
}
.pointWrap__item .inner .thumb {
  max-width: 400px;
  width: 40%;
  text-align: center;
}
.pointWrap__item .inner .thumb img {
  max-width: 250px;
  width: 100%;
  height: auto;
}
.pointWrap__item .inner .thumb .spImage {
  display: none;
}
.pointWrap__item .inner .textArea {
  flex: 1;
  margin-right: 2em;
}
.pointWrap__item .inner .textArea .ttl {
  color: #055f8c;
  font-weight: bold;
  font-size: 3.5rem;
  line-height: 130%;
  margin-bottom: 0.4em;
  line-height: 1.5;
}
@media screen and (max-width: 960px) {
  .pointWrap__item .inner .textArea .ttl {
    font-size: 3rem;
  }
}
@media screen and (max-width: 668px) {
  .pointWrap__item .inner .textArea .ttl {
    font-size: 2.5rem;
  }
}
.pointWrap__item .inner .textArea .ttl span {
  display: inline-block;
  background: #055f8c;
  color: #FFF;
  padding: 0.5em;
  font-size: 70%;
  line-height: 1;
  margin-bottom: 0.3em;
}
@media screen and (max-width: 668px) {
  .pointWrap__item {
    padding-bottom: 0;
  }
  .pointWrap__item:nth-child(2n) .textArea {
    margin-left: 0;
  }
  .pointWrap__item .inner {
    display: block;
  }
  .pointWrap__item .inner .textArea {
    margin-bottom: clamp(1em, 5vw, 2em);
    margin-right: 0;
  }
  .pointWrap__item .inner .thumb {
    max-width: 100%;
    width: 100%;
  }
  .pointWrap__item .inner .thumb .pcImage {
    display: none;
  }
  .pointWrap__item .inner .thumb .spImage {
    display: block;
    margin: 0 auto;
    max-width: 230px;
  }
}

.clabWrap {
  padding: clamp(3em, 10vw, 4.5em) 0;
}
.clabWrap .inner {
  max-width: 1000px;
}
.clabWrap .inner > .ttl {
  font-size: 2.5rem;
  line-height: 130%;
  text-align: center;
  margin-bottom: 2em;
  line-height: 1.5;
  font-weight: bold;
}
@media screen and (max-width: 960px) {
  .clabWrap .inner > .ttl {
    font-size: 2rem;
  }
}
.clabWrap .inner .textArea .ttl {
  font-weight: bold;
  color: #055f8c;
  font-size: clamp(150%, 4vw, 180%);
  margin-bottom: 1em;
}
.clabWrap .inner .textArea .ttl span {
  font-size: 140%;
  display: block;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 668px) {
  .clabWrap .inner .textArea .ttl {
    text-align: center;
  }
}

.detailWrap {
  padding: clamp(3em, 10vw, 4.5em) 0 2em;
  background: #EDF9FF;
}
.detailWrap__item {
  margin-bottom: clamp(3em, 10vw, 4.5em);
}
.detailWrap__item:last-child {
  margin-bottom: 0;
}
.detailWrap__item .inner > .ttl {
  text-align: center;
  margin-bottom: 1em;
  font-weight: bold;
  color: #055f8c;
  font-size: clamp(135%, 4vw, 170%);
  line-height: 1.4;
}
.detailWrap__item .inner > .ttl .small {
  display: inline-block;
  font-size: 80%;
  font-weight: bold;
  line-height: 1.4;
}
.detailWrap .howGet {
  display: flex;
  gap: clamp(1em, 5vw, 2em);
}
.detailWrap .howGet__item {
  background: #FFF;
}
.detailWrap .howGet__item .ttl {
  background: #055f8c;
  color: #FFF;
  text-align: center;
  padding: 0.5em;
  font-weight: bold;
}
.detailWrap .howGet__item .main {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1em, 5vw, 2em) clamp(1em, 5vw, 3em);
  gap: clamp(1em, 5vw, 2em);
}
@media screen and (max-width: 668px) {
  .detailWrap .howGet {
    display: block;
  }
  .detailWrap .howGet__item {
    margin-bottom: 2em;
  }
  .detailWrap .howGet__item:last-child {
    margin-bottom: 0;
  }
  .detailWrap .howGet__item img {
    max-width: 200px;
    width: 80%;
  }
  .detailWrap .howGet__item .main {
    flex-direction: column;
  }
}

.howWrap {
  position: relative;
  padding: clamp(3em, 10vw, 4.5em) 0;
}
.howWrap::before {
  content: "";
  width: 100%;
  height: 40%;
  background: url("../images/how-bg.jpg") no-repeat;
  background-position: top center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
}
.howWrap:after {
  content: "";
  width: 100%;
  height: 45%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.7008928571) 55%, rgb(255, 255, 255) 83%, rgb(255, 255, 255) 100%);
}
@media screen and (max-width: 668px) {
  .howWrap::before {
    height: 25%;
  }
  .howWrap:after {
    height: 26%;
  }
}
.howWrap .inner {
  position: relative;
  z-index: 1;
}
.howWrap .inner > .ttl {
  margin-bottom: 2em;
}
.howWrap .inner .flexWrap__item {
  position: relative;
}
.howWrap .inner .flexWrap__item .point {
  position: absolute;
  right: -2em;
  top: -2em;
  width: clamp(40px, 10vw, 105px);
}
.howWrap .inner .flexWrap__item .point img {
  height: auto;
}
.howWrap .inner .flexWrap__item .small {
  font-size: 80%;
}
@media screen and (max-width: 668px) {
  .howWrap .inner .flexWrap__item .point {
    right: clamp(-1em, -6vw, -2em);
    top: clamp(-1em, -10vw, -2em);
    width: clamp(60px, 16vw, 105px);
  }
}
.howWrap .tokuten {
  margin-top: 3em;
}
.howWrap .tokuten > .ttl {
  width: 100%;
  display: block;
  margin-bottom: 1.5em;
  border: #055f8c 2px solid;
  padding: 0.3em;
  text-align: center;
  font-weight: bold;
  font-size: 2.5rem;
  line-height: 130%;
  color: #055f8c;
}
@media screen and (max-width: 960px) {
  .howWrap .tokuten > .ttl {
    font-size: 2rem;
  }
}
.howWrap .tokuten .flexWrap .ttl {
  color: #055f8c;
  font-size: clamp(110%, 4vw, 120%);
  margin-bottom: 0.5em;
  font-weight: bold;
}
.howWrap .tokuten .flexWrap .small {
  font-size: 80%;
  margin-top: 0.5em;
}

.loginWrap {
  background: #F5F5F9;
  padding: clamp(2em, 8vw, 3em) 0;
}
.loginWrap .inner {
  display: flex;
  justify-content: center;
  gap: clamp(1em, 5vw, 2em);
}
.loginWrap .inner .btnArea {
  max-width: 20em;
  width: 45%;
}
.loginWrap .inner .btnArea .btn {
  display: block;
  text-align: center;
  padding: 0.7em 0.5em;
  background: #055f8c;
  color: #FFF;
  font-weight: bold;
  font-weight: bold;
  border-radius: 0.8em;
}
.loginWrap .inner .btnArea .btn span {
  padding-left: 1.5em;
  position: relative;
}
.loginWrap .inner .btnArea .btn span:before {
  content: "";
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
  background: url("../images/icon-user.svg") no-repeat;
  background-position: center;
  background-size: contain;
}
.loginWrap .inner .btnArea .btn span:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0;
  background: #FFF;
  transition: 0.2s;
}
.loginWrap .inner .btnArea .btn:hover span:after {
  opacity: 1;
}
.loginWrap .inner .btnArea.-white .btn {
  color: #000;
  border: #000 2px solid;
  background: #FFF;
}
.loginWrap .inner .btnArea.-white .btn span {
  padding-left: 1.5em;
  position: relative;
}
.loginWrap .inner .btnArea.-white .btn span:before {
  background: url("../images/icon-login.svg") no-repeat;
  background-position: center;
  background-size: contain;
}
.loginWrap .inner .btnArea.-white .btn span:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0;
  background: #000;
  transition: 0.3s;
}
.loginWrap .inner .btnArea.-white .btn:hover span:after {
  opacity: 1;
}
@media screen and (max-width: 668px) {
  .loginWrap .inner {
    flex-direction: column;
    align-items: center;
  }
  .loginWrap .inner .btnArea {
    max-width: 20em;
    width: 100%;
  }
  .loginWrap .inner .btnArea:last-child {
    margin-bottom: 0;
  }
}/*# sourceMappingURL=index.css.map */