@charset "UTF-8";
/* css pc ============================================================*/
html, body {
  font-size: 10px;
  height: 100%; }

a, a:hover {
  text-decoration: none;
  color: #000; }

a {
  transition: 0.5s; }
  a:hover {
    opacity: 0.5; }

img {
  height: auto;
  vertical-align: bottom; }

h1, h2, h3, h4, h5, h6 {
  padding: 0;
  margin: 0; }

ul, li {
  list-style-type: none; }

.contents {
  padding: 0 0 15rem 0;
  position: relative;
  /*.btn*/
  /*.sec01*/
  /*.sec02*/ }
  .contents .pc {
    display: block; }
  .contents .sp {
    display: none; }
  .contents .btn {
    display: block; }
    .contents .btn__allitem {
      margin: 10rem 0 0; }
      .contents .btn__allitem a {
        display: inline-block;
        width: 50rem;
        height: 10rem;
        border-radius: 1rem;
        margin: 0 auto;
        background: #009CBC;
        color: #FFF;
        display: flex;
        justify-content: center;
        align-items: center;
        font: 700 2.2rem/1 "Noto Sans JP", sans-serif;
        position: relative; }
        .contents .btn__allitem a::before {
          content: "";
          position: absolute;
          display: inline-block;
          top: 50%;
          right: 2rem;
          width: 2.5rem;
          height: 0.2rem;
          background-color: #FFF; }
        .contents .btn__allitem a::after {
          content: "";
          position: absolute;
          top: calc(50% - 1px);
          right: 2rem;
          width: 1.5rem;
          height: 0.2rem;
          background-color: #FFF;
          transform: rotate(45deg);
          transform-origin: calc(100% - 2px) 50%; }
    .contents .btn__check a {
      display: flex;
      justify-content: center;
      align-items: flex-start;
      width: 13.6rem;
      height: 13.6rem;
      margin: 0 auto;
      background: #009CBC;
      color: #FFF;
      border-radius: 100%;
      font: 700 2.2rem/1 "Roboto", sans-serif;
      position: relative;
      padding: 5rem 0 0; }
      .contents .btn__check a::before {
        content: "";
        position: absolute;
        display: inline-block;
        top: 70%;
        left: 52%;
        transform: translateX(-50%);
        width: 2.5rem;
        height: 0.2rem;
        background-color: #FFF; }
      .contents .btn__check a::after {
        content: "";
        position: absolute;
        top: calc(70% - 1px);
        left: calc(52% - 1px);
        width: 1.5rem;
        height: 0.2rem;
        background-color: #FFF;
        transform: rotate(45deg);
        transform-origin: calc(100% - 2px) 50%; }
  .contents .sec01 {
    width: 120rem;
    margin: 0 auto; }
    .contents .sec01 .visual {
      position: relative; }
      .contents .sec01 .visual__inner {
        position: absolute;
        bottom: 6rem;
        left: 7rem;
        color: #FFF; }
      .contents .sec01 .visual__title {
        font: 700 3.6rem/1 "Noto Sans JP", sans-serif; }
      .contents .sec01 .visual__txt {
        font: 400 1.8rem/2 "Noto Sans JP", sans-serif;
        margin: 3rem 0 0; }
  .contents .sec02 {
    width: 90rem;
    margin: 0 auto; }
    .contents .sec02 .card {
      height: 58.7rem;
      display: flex;
      margin: 18rem auto 0; }
      .contents .sec02 .card__column {
        flex: 1;
        position: relative;
        text-align: center; }
        .contents .sec02 .card__column:nth-child(2) {
          display: flex;
          justify-content: center;
          align-items: center; }
        .contents .sec02 .card__column__txt {
          position: absolute;
          top: -2rem;
          left: 5rem;
          width: 6rem;
          z-index: 5; }
        .contents .sec02 .card__column__name {
          font: 700 2.4rem/3.6rem "Noto Sans JP", sans-serif; }
        .contents .sec02 .card__column__color {
          display: flex;
          align-items: center;
          justify-content: center;
          margin: 1rem 0; }
          .contents .sec02 .card__column__color span {
            font: 700 2.1rem/1 "Roboto", sans-serif;
            margin: 0 0.25rem; }
            .contents .sec02 .card__column__color span:nth-child(n+2) {
              display: inline-block;
              width: 3rem;
              height: 3rem;
              border-radius: 1.5rem;
              border: 1px solid #000; }
            .contents .sec02 .card__column__color span.beige {
              background: #EEE9DC; }
            .contents .sec02 .card__column__color span.brown {
              background: #6E3D33; }
            .contents .sec02 .card__column__color span.khaki {
              background: #857161; }
            .contents .sec02 .card__column__color span.darkgray {
              background: #1A1A1A; }
        .contents .sec02 .card__column__price {
          font: 700 3rem/1 "Noto Sans JP", sans-serif;
          margin: 2rem; }
          .contents .sec02 .card__column__price span {
            font: 700 4rem/1 "Roboto", sans-serif; }
    .contents .sec02 .card:nth-child(2) {
      flex-flow: row-reverse; }
      .contents .sec02 .card:nth-child(2) .card__column__txt {
        position: absolute;
        top: -2rem;
        left: auto;
        right: 5rem; }
  .contents .sec-bottom {
    width: 100%;
    max-width: 900px;
    margin: 15rem auto 0;
    text-align: center; }
    .contents .sec-bottom .btn-3col ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
    .contents .sec-bottom .btn-3col li {
      flex: 0 0 calc(100% / 3 - 20px); }
    .contents .sec-bottom .btn-3col div {
      font: 700 16px / 1.4em "Noto Sans JP", sans-serif;
      border: 1px solid #241754;
      margin: 8px auto 40px;
      text-align: center;
      width: 290px;
      height: 60px;
      background: #fff;
      color: #241754;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: center; }
    .contents .sec-bottom .btn-3col div img {
      width: 60px;
      margin: 0 10px 0 -20px; }
    .contents .sec-bottom .btn-1col p {
      font: 600 16px / 1.4em "Noto Sans JP", sans-serif;
      padding: 14px 0px;
      margin: 0 auto 100px;
      text-align: center;
      width: 400px;
      background: #241754;
      color: #fff; }

/*.contents*/
/*css sp============================================================*/
@media screen and (max-width: 768px) {
  .contents {
    padding: 0 0 calc(100 * (100vw / 375)) 0;
    /*.btn*/
    /*.sec01*/
    /*.sec02*/ }
    .contents .pc {
      display: none; }
    .contents .sp {
      display: block; }
    .contents .btn {
      display: block; }
      .contents .btn__allitem {
        margin: 3rem 0 0; }
        .contents .btn__allitem a {
          display: inline-block;
          width: calc(100% - 30px);
          height: 8rem;
          border-radius: 1rem;
          margin: 0 auto;
          background: #009CBC;
          color: #FFF;
          display: flex;
          justify-content: center;
          align-items: center;
          font: 700 2.2rem/1 "Noto Sans JP", sans-serif;
          position: relative; }
          .contents .btn__allitem a::before {
            content: "";
            position: absolute;
            display: inline-block;
            top: 50%;
            right: 2rem;
            width: 2.5rem;
            height: 0.2rem;
            background-color: #FFF; }
          .contents .btn__allitem a::after {
            content: "";
            position: absolute;
            top: calc(50% - 1px);
            right: 2rem;
            width: 1.5rem;
            height: 0.2rem;
            background-color: #FFF;
            transform: rotate(45deg);
            transform-origin: calc(100% - 2px) 50%; }
      .contents .btn__check a {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        width: 10rem;
        height: 10rem;
        margin: 0 auto;
        background: #009CBC;
        color: #FFF;
        border-radius: 100%;
        font: 700 1.6rem/1 "Roboto", sans-serif;
        position: relative;
        padding: 3.6rem 0 0; }
        .contents .btn__check a::before {
          content: "";
          position: absolute;
          display: inline-block;
          top: 70%;
          left: 52%;
          transform: translateX(-50%);
          width: 2.5rem;
          height: 0.2rem;
          background-color: #FFF; }
        .contents .btn__check a::after {
          content: "";
          position: absolute;
          top: calc(70% - 1px);
          left: calc(52% - 1px);
          width: 1.5rem;
          height: 0.2rem;
          background-color: #FFF;
          transform: rotate(45deg);
          transform-origin: calc(100% - 2px) 50%; }
    .contents .sec01 {
      width: 100%;
      margin: 0 auto; }
      .contents .sec01 .visual__inner {
        position: absolute;
        bottom: 4.5rem;
        left: 1.5rem;
        color: #FFF; }
      .contents .sec01 .visual__title {
        font: 700 2rem/1 "Noto Sans JP", sans-serif; }
      .contents .sec01 .visual__txt {
        font: 400 1.4rem/1.8 "Noto Sans JP", sans-serif;
        margin: 1.8rem 0 0; }
    .contents .sec02 {
      width: calc(100% - 30px);
      margin: 0 auto; }
      .contents .sec02 .card {
        height: auto;
        display: block;
        flex-flow: column;
        margin: 8rem auto 0; }
        .contents .sec02 .card__column {
          flex: 1;
          position: relative;
          text-align: center; }
          .contents .sec02 .card__column__detail {
            margin: 2rem auto 0; }
          .contents .sec02 .card__column:nth-child(1) {
            display: block;
            height: calc(450 * (100vw / 375)); }
          .contents .sec02 .card__column:nth-child(2) {
            display: flex;
            justify-content: center;
            align-items: center; }
          .contents .sec02 .card__column__txt {
            position: absolute;
            top: -2rem;
            left: 2rem;
            width: 5rem;
            z-index: 5; }
          .contents .sec02 .card__column__name {
            font: 700 2rem/3rem "Noto Sans JP", sans-serif; }
          .contents .sec02 .card__column__color {
            display: flex;
            align-items: center;
            margin: 1rem 0; }
            .contents .sec02 .card__column__color span {
              font: 700 2rem/1 "Roboto", sans-serif;
              margin: 0 0.25rem; }
              .contents .sec02 .card__column__color span:nth-child(n+2) {
                display: inline-block;
                width: 2.6rem;
                height: 2.6rem;
                border-radius: 1.5rem;
                border: 1px solid #000; }
              .contents .sec02 .card__column__color span.beige {
                background: #EEE9DC; }
              .contents .sec02 .card__column__color span.brown {
                background: #6E3D33; }
              .contents .sec02 .card__column__color span.khaki {
                background: #68625F; }
          .contents .sec02 .card__column__price {
            font: 700 2rem/1 "Noto Sans JP", sans-serif;
            margin: 1rem; }
            .contents .sec02 .card__column__price span {
              font: 700 3rem/1 "Roboto", sans-serif; }
      .contents .sec02 .card:nth-child(2) {
        flex-flow: row-reverse; }
        .contents .sec02 .card:nth-child(2) .card__column__txt {
          position: absolute;
          top: -2rem;
          left: auto;
          right: 2rem; }
    .contents .sec-bottom {
      width: 70%;
      margin: 5rem auto 0;
      text-align: center; }
      .contents .sec-bottom .btn-3col ul {
        display: block; }
      .contents .sec-bottom .btn-3col li {
        flex: 0 0 calc(100% / 3 - calc(20 * (100vw / 375))); }
      .contents .sec-bottom .btn-3col div {
        font: 700 calc(14 * (100vw / 375))/1.4em "Noto Sans JP", sans-serif;
        border: 1px solid #241754;
        margin: calc(8 * (100vw / 375)) auto calc(10 * (100vw / 375));
        text-align: center;
        width: 100%;
        background: #fff;
        color: #241754; }
      .contents .sec-bottom .btn-3col div img {
        width: calc(50 * (100vw / 375));
        margin: 0 calc(10 * (100vw / 375)) 0 calc(-20 * (100vw / 375)); }
      .contents .sec-bottom .btn-1col p {
        font: 600 calc(14 * (100vw / 375))/1.4em "Noto Sans JP", sans-serif;
        padding: calc(14 * (100vw / 375)) 0;
        margin: 0 auto calc(100 * (100vw / 375));
        text-align: center;
        width: 100%;
        background: #241754;
        color: #fff; }

  /*.contents*/ }
/*アニメーション============================================================*/
.fadeIn {
  opacity: 0;
  transform: translate(0, 2.5rem);
  transition: all 1s ease-out; }

.fadeIn.is-show {
  opacity: 1;
  transform: translate(0, 0); }

.fadeView {
  opacity: 0;
  transition: 2s; }

.fadeView.is-show {
  opacity: 1; }

.switch img {
  width: 450px;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: ani__switch 10s infinite; }

.switch img:nth-child(1) {
  animation-delay: 0s; }

.switch img:nth-child(2) {
  animation-delay: 5s; }

@keyframes ani__switch {
  0% {
    opacity: 0; }
  5% {
    opacity: 1; }
  50% {
    opacity: 1; }
  55% {
    opacity: 0; }
  100% {
    opacity: 0; } }
