@charset "UTF-8";
/*
 * 幅定義
 *
 */
/*
 * 色定義
 *
 */
.contents-box h2 {
  font-size: 36px;
  font-weight: bold;
  position: relative;
  margin-bottom: 10px;
}
.contents-box h2::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 60px;
  height: 4px;
  background-color: #e50012;
}
.contents-box img {
  max-width: 100%;
}

.box1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 50px;
}
.box1 > div {
  font-weight: bold;
}
.box1 > div:first-child {
  width: 40%;
  margin-right: 20px;
}
.box1 > div:last-child {
  width: 60%;
}
.box1 .business-hours {
  margin-top: 5px;
  font-weight: bold;
}
.box1 .notice {
  margin-top: 30px;
  color: #FF0000;
}
.box1 .box1-sp {
  display: none;
}

.box2 {
  background-color: #fff2f3;
}
.box2 > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  padding: 20px 30px;
  margin-bottom: 50px;
}
.box2 > div::before {
  content: "";
  position: absolute;
  background-color: #ff6773;
  width: 100%;
  height: 100%;
  left: 0;
  -webkit-clip-path: polygon(0 0, 45% 0%, 35% 100%, 0 100%);
  clip-path: polygon(0 0, 45% 0%, 35% 100%, 0 100%);
  z-index: 1;
}
.box2 > div > div {
  z-index: 2;
}
.box2 > div .msg {
  color: #FFF;
  font-size: 19px;
  font-weight: bold;
}
.box2 > div select {
  /* styling */
  background-color: #FFF;
  border: thin solid #e4e4e4;
  display: inline-block;
  font: inherit;
  line-height: 3em;
  padding: 0.5em 2em 0.5em 1em;
  width: 300px;
  font-size: 19px;
  font-weight: bold;
  /* reset */
  margin: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #000 50%), linear-gradient(135deg, #000 50%, transparent 50%);
  background-position: calc(100% - 20px) calc(1.5em + 5px), calc(100% - 15px) calc(1.5em + 5px), 100% 0;
  background-size: 5px 5px, 5px 5px, 2.5em 2.5em;
  background-repeat: no-repeat;
}
.box2 > div img {
  width: 300px;
}

.box3 {
  margin-top: 30px;
  margin-bottom: 50px;
}
.box3 .step {
  display: flex;
  padding: 10px;
  background-color: #f1f1f1;
}
.box3 .step:not(:first-child) {
  margin-top: 20px;
}
.box3 .step > div:first-child {
  width: 20%;
}
.box3 .step > div:last-child {
  width: 80%;
}
.box3 .step .step-header {
  background-color: #ff6773;
  color: #FFF;
  padding: 10px 20px;
  width: 50%;
  font-size: 21px;
  font-weight: bold;
}
.box3 .step .step-description {
  padding: 10px 20px;
  font-size: 16px;
  font-weight: bold;
}
.box3 .step .step-sp {
  display: none;
  text-align: center;
  margin-top: 10px;
}

/**
 * スマホレスポンシブ対応
 */
@media screen and (max-width: 750px) {
  .contents-box h2 {
    font-size: 26px;
  }

  .box2 > div {
    flex-direction: column;
    text-align: center;
  }
  .box2 > div::before {
    top: 0;
    -webkit-clip-path: polygon(0 0, 100% 0%, 100% 40%, 0 80%);
    clip-path: polygon(0 0, 100% 0%, 100% 40%, 0 80%);
    z-index: 1;
  }
  .box2 > div br {
    display: none;
  }
  .box2 > div > div:not(:first-child) {
    margin-top: 20px;
  }
  .box2 > div .msg {
    font-size: 20px;
  }
  .box2 > div select {
    line-height: 2em;
    font-size: 24px;
    width: 100%;
    background-position: calc(100% - 20px) calc(1.5em - 5px), calc(100% - 15px) calc(1.5em - 5px), 100% 0;
  }
  .box2 > div img {
    width: 100%;
  }

  .box3 .step .step-header {
    width: auto;
    font-size: 20px;
  }
  .box3 .step .step-description {
    font-size: 14px;
  }
  .box3 .step > div:first-child {
    width: 30%;
  }
  .box3 .step > div:last-child {
    width: 70%;
  }
}
@media screen and (max-width: 550px) {
  .box1 > div:first-child {
    width: 100%;
  }
  .box1 > div:last-child {
    display: none;
  }
  .box1 .box1-sp {
    margin-top: 10px;
    margin-bottom: 10px;
    display: block;
  }
}
@media screen and (max-width: 450px) {
  .box3 .step > div:first-child {
    display: none;
  }
  .box3 .step > div:last-child {
    width: 100%;
  }
  .box3 .step .step-pc {
    display: none;
  }
  .box3 .step .step-sp {
    display: block;
  }
}

/*# sourceMappingURL=online.css.map */
