.fv .fv-container h2, .fv .fv-container h1 {
  text-shadow: 0px 3px 3px rgba(94, 94, 94, 0.8);
}

@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 400;
  src: url("../NotoSerifCJKjp/fyh7r-namt1.woff") format("woff");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 600;
  src: url("../NotoSerifCJKjp/i5azm-9p594.woff") format("woff");
}
body {
  font-family: "Noto Serif Japanese", serif;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
}

a {
  text-decoration: none;
  color: #fff;
}

p, h2 {
  margin: 0%;
}

p {
  line-height: 180%;
}

.break {
  display: block;
  height: 15px;
  content: "";
}

h2, h3 {
  font-weight: normal;
}

.ashirai {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .ashirai {
    width: 108px;
    margin-top: 12px;
  }
}
@media screen and (max-width: 575px) {
  .ashirai {
    margin-top: 10px;
  }
}

@media screen and (min-width: 1441px) {
  section {
    width: 1440px;
    margin-left: auto;
    margin-right: auto;
  }
  section.fv {
    width: auto;
  }
  section.slider {
    width: auto;
  }
  section.faq {
    width: 1440px;
  }
  section.reasonable-price {
    margin-right: auto;
    margin-left: auto;
  }
}

header {
  display: flex;
  justify-content: space-between;
  height: 100px;
  padding-left: 7%;
}
@media screen and (max-width: 991px) {
  header {
    height: 80px;
  }
}
@media screen and (max-width: 767px) {
  header {
    display: none;
  }
}
header .header-left .header-logo {
  height: 100%;
  width: auto;
}
header .header-left .header-logo img {
  height: 100%;
  width: auto;
}
header .header-right {
  width: 55%;
}
@media screen and (max-width: 1199px) {
  header .header-right {
    width: 70%;
  }
}
header .header-right .header-tel {
  background-color: #D8CA7D;
  width: 53%;
  font-size: 35px;
}
@media screen and (max-width: 991px) {
  header .header-right .header-tel {
    font-size: 24px;
  }
}
header .header-right .header-tel:hover {
  color: #fff;
  opacity: 0.8;
}
header .header-right .header-tel .header-tel-box {
  align-items: center;
}
header .header-right .header-tel .header-tel-box img {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}
header .header-right .header-tel .header-tel-box .header-tel-box-text p {
  margin-bottom: 0 !important;
}
header .header-right .header-tel .header-tel-box .header-tel-box-text .open-hours {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 991px) {
  header .header-right .header-tel .header-tel-box .header-tel-box-text .open-hours {
    font-size: 15px;
  }
}
header .header-right .header-contact {
  background-color: #C8505E;
  width: 47%;
  font-size: 24px;
}
@media screen and (max-width: 991px) {
  header .header-right .header-contact {
    font-size: 16px;
  }
}
header .header-right .header-contact:hover {
  color: #fff;
  opacity: 0.8;
}
header .header-right .header-contact .header-contact-box {
  align-items: center;
}
header .header-right .header-contact .header-contact-box img {
  width: 40px;
  height: auto;
  margin-right: 20px;
}

main {
  background-color: #F9F9F9;
}

.fv {
  position: relative;
}
.fv img {
  width: 100%;
}
.fv .fv-container {
  position: absolute;
  top: 30%;
  right: 5%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
}
@media screen and (max-width: 1199px) {
  .fv .fv-container {
    top: 22%;
  }
}
@media screen and (max-width: 767px) {
  .fv .fv-container {
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
  }
}
.fv .fv-container h1 {
  font-size: 76px;
  letter-spacing: 38px;
}
@media screen and (max-width: 1199px) {
  .fv .fv-container h1 {
    font-size: 54px;
    letter-spacing: 27px;
  }
}
@media screen and (max-width: 991px) {
  .fv .fv-container h1 {
    font-size: 40px;
    letter-spacing: 20px;
  }
}
@media screen and (max-width: 767px) {
  .fv .fv-container h1 {
    font-size: 36px;
    letter-spacing: 18px;
  }
}
@media screen and (max-width: 575px) {
  .fv .fv-container h1 {
    font-size: 30px;
    letter-spacing: 15px;
  }
}
.fv .fv-container h2 {
  font-size: 30px;
}
@media screen and (max-width: 1199px) {
  .fv .fv-container h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 991px) {
  .fv .fv-container h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .fv .fv-container h2 {
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .fv .fv-container h2 {
    font-size: 16px;
  }
}
.fv .fv-container a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #C8505E;
  width: 400px;
  height: 85px;
}
@media screen and (max-width: 1199px) {
  .fv .fv-container a {
    width: 400px;
    height: 80px;
  }
}
@media screen and (max-width: 991px) {
  .fv .fv-container a {
    width: 300px;
    height: 75px;
  }
}
@media screen and (max-width: 767px) {
  .fv .fv-container a {
    position: absolute;
    top: 320px;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 210px;
    height: 50px;
  }
}
.fv .fv-container a:hover {
  color: #fff;
  opacity: 0.9;
}
.fv .fv-container a img {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  .fv .fv-container a img {
    width: 20px;
    height: 20px;
    margin-right: 10px;
  }
}
.fv .fv-container a p {
  font-size: 30px;
}
@media screen and (max-width: 1199px) {
  .fv .fv-container a p {
    font-size: 24px;
  }
}
@media screen and (max-width: 991px) {
  .fv .fv-container a p {
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .fv .fv-container a p {
    font-size: 15px;
  }
}

.voice {
  color: #444;
}
.voice .voice-container {
  position: relative;
  padding: 0 40px;
}
@media screen and (max-width: 575px) {
  .voice .voice-container {
    padding: 0 20px;
  }
}
.voice .voice-container img {
  width: 100%;
  height: auto;
}
.voice .voice-container div {
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .voice .voice-container div {
    padding: 0 70px;
  }
}
@media screen and (max-width: 575px) {
  .voice .voice-container div {
    padding: 0;
    top: 5%;
  }
}
.voice .voice-container div h2 {
  font-size: 32px;
}
@media screen and (max-width: 1199px) {
  .voice .voice-container div h2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 991px) {
  .voice .voice-container div h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  .voice .voice-container div h2 {
    font-size: 20px;
  }
}
.voice .voice-container div p {
  margin-top: 70px;
  font-size: 28px;
  line-height: 2;
}
@media screen and (max-width: 1199px) {
  .voice .voice-container div p {
    font-size: 20px;
    margin-top: 45px;
  }
}
@media screen and (max-width: 991px) {
  .voice .voice-container div p {
    font-size: 18px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 575px) {
  .voice .voice-container div p {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  .voice .voice-container div p .left-space {
    margin-left: 10px;
  }
}
.voice .voice-container div img {
  width: 275px;
}
@media screen and (max-width: 767px) {
  .voice .voice-container div img {
    width: 108px;
  }
}

.thought .thought-container {
  position: relative;
  padding: 0 100px;
}
@media screen and (min-width: 1441px) {
  .thought .thought-container {
    padding: 0%;
  }
}
@media screen and (max-width: 1199px) {
  .thought .thought-container {
    padding: 0 50px;
  }
}
@media screen and (max-width: 767px) {
  .thought .thought-container {
    padding: 0;
  }
}
.thought .thought-container img {
  width: 100%;
}
.thought .thought-container .thought-description {
  position: absolute;
  bottom: 25%;
  left: 13%;
  transform: translateY(50%);
  font-size: 24px;
  background: rgba(255, 255, 255, 0.7);
  padding: 30px;
}
@media screen and (min-width: 1441px) {
  .thought .thought-container .thought-description {
    left: 5%;
  }
}
@media screen and (max-width: 1199px) {
  .thought .thought-container .thought-description {
    font-size: 18px;
    left: 8%;
  }
}
@media screen and (max-width: 991px) {
  .thought .thought-container .thought-description {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .thought .thought-container .thought-description {
    bottom: 13%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
  }
}
@media screen and (max-width: 575px) {
  .thought .thought-container .thought-description {
    bottom: 8%;
    width: 90%;
    font-size: 14px;
    padding: 20px;
  }
}
.thought .thought-container .thought-description p {
  text-align: left;
  line-height: 2;
}

@media screen and (min-width: 1441px) {
  .strength {
    width: 100%;
  }
}
.strength .strength-container {
  padding-left: 37px;
  padding-right: 37px;
}
.strength .strength-container h1 {
  font-size: 32px;
  color: #C8505E;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .strength .strength-container h1 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .strength .strength-container h1 {
    font-size: 16px;
  }
}
.strength .strength-container .starting-point {
  position: relative;
}
.strength .strength-container .starting-point img {
  width: 100%;
}
.strength .strength-container .starting-point .strength-number {
  position: absolute;
  width: 112px;
  height: auto;
  left: 0%;
  bottom: -30px;
}
@media screen and (max-width: 991px) {
  .strength .strength-container .starting-point .strength-number {
    width: 80px;
    bottom: -28px;
  }
}
@media screen and (max-width: 575px) {
  .strength .strength-container .starting-point .strength-number {
    width: 52px;
    bottom: -26px;
  }
}
.strength .strength-container .strength-desc {
  background-color: #fff;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media screen and (min-width: 1441px) {
  .strength .strength-container .strength-desc {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
.strength .strength-container .strength-desc p {
  font-size: 20px;
  width: 92%;
  margin: 0 auto;
}
.strength .strength-container .strength-desc p.desc-1 {
  width: 82%;
}
.strength .strength-container .strength-desc p.desc-4 {
  width: 88%;
}
.strength .strength-container .strength-desc p.desc-5 {
  width: 88%;
}
.strength .strength-container .strength-desc p.desc-6 {
  width: 80%;
}
@media screen and (max-width: 767px) {
  .strength .strength-container .strength-desc p {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .strength .strength-container .strength-desc p {
    width: 87%;
    font-size: 14px;
  }
  .strength .strength-container .strength-desc p.desc-1 {
    width: 84%;
  }
  .strength .strength-container .strength-desc p.desc-2 {
    width: 92%;
  }
  .strength .strength-container .strength-desc p.desc-3 {
    width: 91%;
  }
  .strength .strength-container .strength-desc p.desc-6 {
    width: 80%;
  }
}
@media screen and (min-width: 1441px) {
  .strength .strength-container .strength-desc p {
    font-size: 24px;
    width: 82%;
  }
  .strength .strength-container .strength-desc p.desc-1 {
    width: 72%;
  }
  .strength .strength-container .strength-desc p.desc-4 {
    width: 78%;
  }
  .strength .strength-container .strength-desc p.desc-5 {
    width: 80%;
  }
  .strength .strength-container .strength-desc p.desc-6 {
    width: 72%;
  }
}

.suggestion {
  text-align: center;
  margin-top: 92px;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .suggestion {
    margin-top: 12px;
    margin-bottom: 40px;
  }
}
.suggestion .suggestion-container {
  padding-left: 100px;
  padding-right: 100px;
}
@media screen and (min-width: 1441px) {
  .suggestion .suggestion-container {
    padding-left: 0%;
    padding-right: 0%;
  }
}
@media screen and (max-width: 991px) {
  .suggestion .suggestion-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.suggestion .suggestion-container h1 {
  font-size: 32px;
  font-weight: normal;
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container h1 {
    font-size: 34px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container h1 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .suggestion .suggestion-container h1 {
    font-size: 16px;
  }
}
.suggestion .suggestion-container .suggestion-header {
  text-align: left;
  font-size: 24px;
  display: inline-block;
}
@media screen and (min-width: 1441px) {
  .suggestion .suggestion-container .suggestion-header {
    display: block;
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container .suggestion-header {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container .suggestion-header {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .suggestion .suggestion-container .suggestion-header {
    font-size: 14px;
  }
}
.suggestion .suggestion-container .suggestion-1 .suggestion-1-img {
  width: 50%;
  height: auto;
  margin-right: 30px;
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-1-img {
    margin-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-1-img {
    width: 100%;
    margin: 0%;
    margin-bottom: 10px;
  }
}
.suggestion .suggestion-container .suggestion-1 .suggestion-description div {
  align-items: center;
}
.suggestion .suggestion-container .suggestion-1 .suggestion-description div img {
  width: 20px;
  height: auto;
  margin-right: 30px;
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description div img {
    width: 15px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description div img {
    width: 10px;
  }
}
.suggestion .suggestion-container .suggestion-1 .suggestion-description div h2 {
  font-size: 40px;
  color: #C8505E;
  font-weight: normal;
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description div h2 {
    font-size: 36px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description div h2 {
    font-size: 20px;
  }
}
.suggestion .suggestion-container .suggestion-1 .suggestion-description p {
  text-align: left;
  margin-left: 50px;
  font-size: 24px;
}
@media screen and (max-width: 1199px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description p {
    font-size: 20px;
    margin-left: 35px;
  }
}
@media screen and (max-width: 991px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description p {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description p {
    margin-left: 30px;
    font-size: 15px;
  }
}
@media screen and (max-width: 575px) {
  .suggestion .suggestion-container .suggestion-1 .suggestion-description p {
    font-size: 14px;
  }
}

.shrine-wedding {
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .shrine-wedding {
    background-color: #EBE3DF;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.shrine-wedding h2 {
  font-size: 24px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .shrine-wedding h2 {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .shrine-wedding h2 {
    font-size: 14px;
  }
}
.shrine-wedding .plan-wrapper {
  position: relative;
}
.shrine-wedding .plan-wrapper .bg-grey {
  position: absolute;
  background-color: #EBE3DF;
  height: 380px;
  width: 100%;
  z-index: 1;
  bottom: 50%;
  transform: translateY(50%);
}
@media screen and (max-width: 991px) {
  .shrine-wedding .plan-wrapper .bg-grey {
    height: 300px;
  }
}
@media screen and (max-width: 767px) {
  .shrine-wedding .plan-wrapper .bg-grey {
    display: none;
  }
}
.shrine-wedding .plan-wrapper .plan-container {
  width: 90%;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .shrine-wedding .plan-wrapper .plan-container {
    width: 1200px;
  }
}
.shrine-wedding .plan-wrapper .plan-container .plan-contents {
  z-index: 3;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .shrine-wedding .plan-wrapper .plan-container .plan-contents {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.shrine-wedding .plan-wrapper .plan-container .plan-contents .img-container {
  width: 32%;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .shrine-wedding .plan-wrapper .plan-container .plan-contents .img-container {
    width: 50%;
  }
}
.shrine-wedding .plan-wrapper .plan-container .plan-contents .img-container img {
  width: 100%;
  z-index: 3;
}
.shrine-wedding h3 {
  font-size: 24px;
  font-weight: normal;
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .shrine-wedding h3 {
    font-size: 16px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
  }
}
@media screen and (max-width: 575px) {
  .shrine-wedding h3 {
    font-size: 14px;
  }
}

.additional-plans {
  padding-left: 100px;
  padding-right: 100px;
}
@media screen and (min-width: 1441px) {
  .additional-plans {
    padding-left: 0%;
    padding-right: 0%;
  }
}
@media screen and (max-width: 991px) {
  .additional-plans {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media screen and (max-width: 767px) {
  .additional-plans {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans {
    padding-left: 18px;
    padding-right: 18px;
  }
}
.additional-plans h2 {
  font-size: 32px;
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .additional-plans h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans h2 {
    text-align: left;
    font-size: 16px;
  }
}
.additional-plans .ap-contents {
  justify-content: space-between;
}
.additional-plans .ap-contents div {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contents div {
    width: 100%;
  }
}
.additional-plans .ap-contents div img {
  width: 100%;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contents div img {
    margin-bottom: 10px;
  }
}
.additional-plans .ap-contents div .suggestion-description {
  width: 100%;
}
.additional-plans .ap-contents div .suggestion-description div {
  width: 100%;
  align-items: center;
}
.additional-plans .ap-contents div .suggestion-description div img {
  width: 20px;
  height: auto;
  margin-right: 30px;
  margin-bottom: 0%;
}
@media screen and (max-width: 1199px) {
  .additional-plans .ap-contents div .suggestion-description div img {
    width: 15px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contents div .suggestion-description div img {
    width: 10px;
  }
}
.additional-plans .ap-contents div .suggestion-description div h2 {
  font-size: 40px;
  color: #C8505E;
  margin: 0%;
  font-weight: normal;
}
@media screen and (max-width: 1379px) {
  .additional-plans .ap-contents div .suggestion-description div h2 {
    font-size: 40px;
  }
}
@media screen and (max-width: 1199px) {
  .additional-plans .ap-contents div .suggestion-description div h2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 991px) {
  .additional-plans .ap-contents div .suggestion-description div h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contents div .suggestion-description div h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans .ap-contents div .suggestion-description div h2 {
    font-size: 16px;
  }
}
.additional-plans .ap-contents div .suggestion-description p {
  text-align: left;
  margin-left: 50px;
  font-size: 24px;
}
@media screen and (max-width: 1199px) {
  .additional-plans .ap-contents div .suggestion-description p {
    margin-left: 35px;
    font-size: 20px;
  }
}
@media screen and (max-width: 991px) {
  .additional-plans .ap-contents div .suggestion-description p {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contents div .suggestion-description p {
    margin-left: 30px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans .ap-contents div .suggestion-description p {
    font-size: 14px;
  }
}
.additional-plans .ap-contact {
  margin: 44px auto;
  font-size: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #C8505E;
  width: 400px;
  height: 85px;
}
.additional-plans .ap-contact:hover {
  opacity: 0.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .additional-plans .ap-contact {
    margin: 45px auto;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans .ap-contact {
    width: 280px;
    height: 60px;
    margin: 0 auto;
  }
}
.additional-plans .ap-contact img {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}
@media screen and (max-width: 575px) {
  .additional-plans .ap-contact img {
    width: 30px;
    height: 30px;
    margin-right: 10px;
  }
}
.additional-plans .ap-contact p {
  font-size: 30px;
}
@media screen and (max-width: 991px) {
  .additional-plans .ap-contact p {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  .additional-plans .ap-contact p {
    font-size: 20px;
  }
}

.reason {
  padding-left: 30px;
  padding-right: 30px;
}
@media screen and (max-width: 767px) {
  .reason {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 575px) {
  .reason {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.reason h2 {
  font-size: 32px;
}
@media screen and (max-width: 1199px) {
  .reason h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .reason h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .reason h2 {
    font-size: 16px;
  }
}
.reason h3 {
  font-size: 24px;
  font-weight: normal;
  line-height: 180%;
}
@media screen and (max-width: 1199px) {
  .reason h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .reason h3 {
    font-size: 16px;
    text-align: left;
  }
}
@media screen and (max-width: 575px) {
  .reason h3 {
    font-size: 14px;
  }
}
.reason .row .col-md-4 .pc-reason {
  display: block;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .reason .row .col-md-4 .pc-reason {
    display: none;
  }
}
.reason .row .col-md-4 .sp-reason {
  display: none;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .reason .row .col-md-4 .sp-reason {
    display: block;
    margin-bottom: 40px;
  }
}

.customer h2 {
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  .customer h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .customer h2 {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .customer .ashirai {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 575px) {
  .customer .ashirai {
    margin-bottom: 10px;
  }
}
.customer .customer-container {
  display: flex;
  flex-direction: row-reverse;
  padding-left: 100px;
  padding-right: 100px;
}
@media screen and (min-width: 1441px) {
  .customer .customer-container {
    padding-left: 0%;
    padding-right: 0%;
  }
}
@media screen and (max-width: 1199px) {
  .customer .customer-container {
    padding-left: 75px;
    padding-right: 75px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container {
    padding-left: 0%;
    padding-right: 0%;
  }
}
.customer .customer-container .customer-contents {
  position: relative;
  width: 80%;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .customer .customer-container .customer-contents {
    width: 100%;
    padding: 80px 20px 40px 20px;
    margin-top: 20px;
  }
}
.customer .customer-container .customer-contents img {
  position: absolute;
  left: 0%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 480px;
  height: 480px;
}
@media screen and (max-width: 1199px) {
  .customer .customer-container .customer-contents img {
    width: 400px;
    height: 400px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container .customer-contents img {
    width: 300px;
    height: 300px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container .customer-contents img {
    width: 200px;
    height: 200px;
    top: 0%;
    left: 50%;
    margin: 0 auto;
  }
}
.customer .customer-container .customer-contents .customer-desc {
  padding-left: 272px;
  padding-right: 20px;
  text-align: left;
}
@media screen and (min-width: 1441px) {
  .customer .customer-container .customer-contents .customer-desc {
    padding-left: 300px;
  }
}
@media screen and (max-width: 1199px) {
  .customer .customer-container .customer-contents .customer-desc {
    padding-left: 220px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container .customer-contents .customer-desc {
    padding-left: 160px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container .customer-contents .customer-desc {
    padding-left: 0%;
    padding-right: 0%;
  }
}
.customer .customer-container .customer-contents .customer-desc h3 {
  font-size: 32px;
}
@media screen and (max-width: 991px) {
  .customer .customer-container .customer-contents .customer-desc h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container .customer-contents .customer-desc h3 {
    font-size: 20px;
    text-align: center;
  }
}
@media screen and (max-width: 575px) {
  .customer .customer-container .customer-contents .customer-desc h3 {
    font-size: 16px;
  }
}
.customer .customer-container .customer-contents .customer-desc p {
  font-size: 24px;
}
@media screen and (max-width: 1199px) {
  .customer .customer-container .customer-contents .customer-desc p {
    font-size: 20px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container .customer-contents .customer-desc p {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .customer .customer-container .customer-contents .customer-desc p {
    font-size: 14px;
  }
}
.customer .customer-container-2 {
  flex-direction: row;
}
.customer .customer-container-2 .customer-contents-2 {
  position: relative;
  width: 80%;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .customer .customer-container-2 .customer-contents-2 {
    width: 100%;
    padding: 80px 20px 40px 20px;
    margin-top: 20px;
  }
}
.customer .customer-container-2 .customer-contents-2 img {
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 480px;
  height: 480px;
}
@media screen and (max-width: 1199px) {
  .customer .customer-container-2 .customer-contents-2 img {
    width: 400px;
    height: 400px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container-2 .customer-contents-2 img {
    width: 300px;
    height: 300px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container-2 .customer-contents-2 img {
    width: 200px;
    height: 200px;
    top: 0%;
    left: 50%;
    margin: 0 auto;
  }
}
.customer .customer-container-2 .customer-contents-2 .customer-desc {
  padding-right: 272px;
  padding-left: 20px;
  text-align: left;
}
@media screen and (min-width: 1441px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc {
    padding-left: 100px;
  }
}
@media screen and (max-width: 1199px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc {
    padding-right: 220px;
  }
}
@media screen and (max-width: 991px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc {
    padding-right: 160px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc {
    padding-left: 0%;
    padding-right: 0%;
  }
}
.customer .customer-container-2 .customer-contents-2 .customer-desc h3 {
  font-size: 32px;
}
@media screen and (max-width: 991px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .customer .customer-container-2 .customer-contents-2 .customer-desc h3 {
    font-size: 16px;
  }
}

.slider img {
  width: 100%;
  height: auto;
}

.instagram {
  padding-left: 100px;
  padding-right: 100px;
}
@media screen and (max-width: 767px) {
  .instagram {
    padding: 0;
  }
}
.instagram .instagram-container h2 {
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  .instagram .instagram-container h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .instagram .instagram-container h2 {
    font-size: 16px;
  }
}
.instagram .instagram-container p {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .instagram .instagram-container p {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .instagram .instagram-container p {
    font-size: 14px;
  }
}
.instagram .instagram-container .row {
  margin-left: 0%;
  margin-right: 0%;
}
.instagram .instagram-container .row.row-2 {
  margin-top: 4px;
}
@media screen and (max-width: 767px) {
  .instagram .instagram-container .row .col-4.col-left {
    padding-left: 0%;
    padding-right: 2px;
  }
  .instagram .instagram-container .row .col-4.col-center {
    padding-left: 2px;
    padding-right: 2px;
  }
  .instagram .instagram-container .row .col-4.col-right {
    padding-left: 2px;
    padding-right: 0%;
  }
}

.flow .flow-container {
  width: 86%;
  background-color: #fff;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .flow .flow-container {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-container {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.flow .flow-container h2 {
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  .flow .flow-container h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .flow .flow-container h2 {
    font-size: 16px;
  }
}
.flow .flow-container .flow-step {
  width: 100%;
  justify-content: space-between;
  text-align: left;
  border-bottom: 1px solid #BCBCBC;
}
@media screen and (max-width: 991px) {
  .flow .flow-container .flow-step {
    margin: 0 auto;
    width: 95%;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-step {
    width: 100%;
  }
}
.flow .flow-container .flow-step .step-header {
  width: 35%;
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-step .step-header {
    width: 100%;
  }
}
.flow .flow-container .flow-step .step-header p {
  font-size: 60px;
  font-family: "Parisienne", cursive;
  color: #C8505E;
  padding: 0%;
}
@media screen and (max-width: 991px) {
  .flow .flow-container .flow-step .step-header p {
    font-size: 45px;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-step .step-header p {
    font-size: 30px;
  }
}
.flow .flow-container .flow-step .step-header h3 {
  text-align: center;
  font-size: 32px;
}
@media screen and (max-width: 1199px) {
  .flow .flow-container .flow-step .step-header h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 991px) {
  .flow .flow-container .flow-step .step-header h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-step .step-header h3 {
    margin-left: auto;
    text-align: center;
    margin-bottom: 20px;
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .flow .flow-container .flow-step .step-header h3 {
    font-size: 16px;
  }
}
.flow .flow-container .flow-step p {
  width: 63%;
  font-size: 24px;
  padding-top: 108px;
}
@media screen and (min-width: 1441px) {
  .flow .flow-container .flow-step p {
    width: 55%;
  }
}
@media screen and (max-width: 1199px) {
  .flow .flow-container .flow-step p {
    font-size: 20px;
  }
}
@media screen and (max-width: 991px) {
  .flow .flow-container .flow-step p {
    font-size: 16px;
    padding-top: 81px;
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-step p {
    width: 100%;
    padding-top: 0%;
    font-size: 14px;
  }
}
.flow .flow-container .flow-step p a {
  color: #C8505E;
}
.flow .flow-container .flow-notification {
  text-align: left;
  font-size: 24px;
  display: flex;
  justify-content: center;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-notification {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .flow .flow-container .flow-notification {
    font-size: 12px;
  }
}
.flow .flow-container .flow-schedule .flow-schedule-title {
  max-width: 722px;
  margin: 0 auto;
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #DDC8BE;
  border-radius: 32px;
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-schedule .flow-schedule-title {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.flow .flow-container .flow-schedule .flow-schedule-title h3 {
  font-size: 30px;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-schedule .flow-schedule-title h3 {
    font-size: 20px;
  }
}
.flow .flow-container .flow-schedule .flow-schedule-text {
  font-size: 24px;
  margin-top: 16px;
  margin-bottom: 28px;
}
@media screen and (max-width: 767px) {
  .flow .flow-container .flow-schedule .flow-schedule-text {
    font-size: 14px;
    margin-top: 8px;
    margin-bottom: 16px;
  }
}
.flow .flow-container .flow-schedule .flow-schedule-image {
  max-width: 712px;
  width: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 1199px) {
  .price {
    margin-bottom: 450px;
  }
}
@media screen and (max-width: 767px) {
  .price {
    margin-top: 12px;
    margin-bottom: 0%;
  }
}
@media screen and (max-width: 575px) {
  .price {
    font-size: 20px;
  }
}
.price h2 {
  font-size: 32px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .price h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .price h2 {
    font-size: 16px;
  }
}
.price .price-container .price-contents {
  position: relative;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.price .price-container .price-contents.price-1 {
  margin-bottom: 135px;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents.price-1 {
    margin-bottom: 0;
  }
}
.price .price-container .price-contents img {
  width: auto;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents img {
    width: 100%;
  }
}
.price .price-container .price-contents .price-desc {
  background-color: #fff;
  width: 500px;
  position: absolute;
  bottom: 0%;
  left: 50%;
  transform: translate(-50%, 50%);
  border: 1px solid #C8505E;
  padding: 24px 30px;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents .price-desc {
    position: relative;
    left: auto;
    bottom: auto;
    transform: translate(0, 0);
    width: 100%;
  }
}
.price .price-container .price-contents .price-desc h3 {
  font-size: 24px;
  color: #C8505E;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents .price-desc h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc h3 {
    font-size: 16px;
  }
}
.price .price-container .price-contents .price-desc p {
  font-size: 30px;
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc p {
    font-size: 20px;
  }
}
.price .price-container .price-contents .price-desc p .price-number {
  font-size: 60px;
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc p .price-number {
    font-size: 35px;
  }
}
.price .price-container .price-contents .price-desc p .yen {
  font-size: 40px;
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc p .yen {
    font-size: 25px;
  }
}
.price .price-container .price-contents .price-desc p .tax-included {
  font-size: 20px;
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc p .tax-included {
    font-size: 16px;
  }
}
.price .price-container .price-contents .price-desc .price-explanation {
  font-size: 24px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .price .price-container .price-contents .price-desc .price-explanation {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .price .price-container .price-contents .price-desc .price-explanation {
    font-size: 14px;
  }
}
.price .price-container-flex {
  width: 90%;
  margin: 0 auto;
  justify-content: space-between;
  margin-bottom: 270px;
}
@media screen and (max-width: 1199px) {
  .price .price-container-flex {
    margin-bottom: 500px;
  }
}
@media screen and (max-width: 767px) {
  .price .price-container-flex {
    width: 100%;
    margin-bottom: 16px;
  }
}
.price .price-container-flex .price-container {
  width: 49%;
}
@media screen and (max-width: 1199px) {
  .price .price-container-flex .price-container {
    width: auto;
  }
}
@media screen and (max-width: 1199px) {
  .price .price-container-flex .price-container.price-container-2 {
    height: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .price .price-container-flex .price-container.price-container-2 {
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .price .price-container-flex .price-container .price-contents {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.price .price-container-flex .price-container .price-contents img {
  width: 100%;
}
@media screen and (max-width: 1199px) {
  .price .price-container-flex .price-container .price-contents img {
    width: auto;
  }
}
@media screen and (max-width: 767px) {
  .price .price-container-flex .price-container .price-contents img {
    width: 100%;
  }
}
.price .price-container-flex .price-container .price-contents .price-desc {
  width: 90%;
  padding: 24px 20px;
  transform: translate(-50%, 80%);
}
@media screen and (max-width: 1199px) {
  .price .price-container-flex .price-container .price-contents .price-desc {
    width: 500px;
  }
}
@media screen and (max-width: 767px) {
  .price .price-container-flex .price-container .price-contents .price-desc {
    transform: translate(0, 0);
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 575px) {
  .price .price-container-flex .price-container .price-contents .price-desc {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 767px) {
  .price .price-attention {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.price .price-attention .price-attention-text {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .price .price-attention .price-attention-text {
    font-size: 16px;
  }
}
.price .price-attention .price-attention-text .price-attention-text-price {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  .price .price-attention .price-attention-text .price-attention-text-price {
    font-size: 20px;
  }
}
.price .price-attention .price-attention-text .price-attention-text-price-tax {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .price .price-attention .price-attention-text .price-attention-text-price-tax {
    font-size: 14px;
  }
}

@media screen and (min-width: 1441px) {
  .service-included {
    width: 100%;
  }
}
.service-included h3 {
  font-size: 24px;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .service-included h3 {
    font-size: 16px;
    margin-bottom: 11px;
  }
}
@media screen and (max-width: 575px) {
  .service-included h3 {
    font-size: 14px;
  }
}
.service-included .si-wrapper {
  position: relative;
}
@media screen and (max-width: 767px) {
  .service-included .si-wrapper {
    background-color: #EBE3DF;
    padding-top: 23px;
    padding-bottom: 26px;
  }
}
.service-included .si-wrapper .bg-grey {
  position: absolute;
  background-color: #EBE3DF;
  height: 380px;
  width: 100%;
  z-index: 1;
  bottom: 50%;
  transform: translateY(50%);
}
@media screen and (max-width: 991px) {
  .service-included .si-wrapper .bg-grey {
    height: 300px;
  }
}
.service-included .si-wrapper .si-container {
  z-index: 3;
  width: 90%;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .service-included .si-wrapper .si-container {
    width: 1200px;
  }
}
.service-included .si-wrapper .si-container .plan-contents {
  z-index: 3;
}
.service-included .si-wrapper .si-container .plan-contents .img-container {
  width: 32%;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .service-included .si-wrapper .si-container .plan-contents .img-container {
    width: 50%;
  }
}
.service-included .si-wrapper .si-container .plan-contents .img-container img {
  width: 100%;
  z-index: 3;
}
.service-included .si-desc {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .service-included .si-desc {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .service-included .si-desc .si-desc-header {
    font-size: 20px;
    margin-bottom: 8px;
  }
}
.service-included .si-desc p {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .service-included .si-desc p {
    font-size: 16px;
    text-align: left;
  }
}

.reasonable-price {
  display: flex;
  flex-direction: row-reverse;
  position: relative;
  margin-left: auto;
  margin-right: 0%;
  margin-bottom: 140px;
}
@media screen and (max-width: 767px) {
  .reasonable-price {
    flex-direction: column;
    align-items: center;
    padding-left: 100px;
    padding-right: 100px;
    margin-top: 12px;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 575px) {
  .reasonable-price {
    padding-left: 18px;
    padding-right: 18px;
  }
}
.reasonable-price img {
  width: 53%;
}
@media screen and (min-width: 1441px) {
  .reasonable-price img {
    width: 60%;
  }
}
@media screen and (max-width: 1199px) {
  .reasonable-price img {
    width: 47%;
  }
}
@media screen and (max-width: 991px) {
  .reasonable-price img {
    width: 45%;
  }
}
@media screen and (max-width: 767px) {
  .reasonable-price img {
    width: 100%;
  }
}
.reasonable-price .rp-wrapper {
  position: absolute;
  left: calc(100% - 53% - 543px);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 1441px) {
  .reasonable-price .rp-wrapper {
    left: calc(100% - 60% - 541px);
  }
}
@media screen and (max-width: 1199px) {
  .reasonable-price .rp-wrapper {
    left: calc(100% - 47% - 475px);
  }
}
@media screen and (max-width: 991px) {
  .reasonable-price .rp-wrapper {
    left: calc(100% - 45% - 408px);
  }
}
@media screen and (max-width: 767px) {
  .reasonable-price .rp-wrapper {
    position: static;
    top: auto;
    left: auto;
    transform: translateY(0);
  }
}
.reasonable-price .rp-wrapper h2 {
  font-size: 32px;
  color: #C8505E;
}
@media screen and (max-width: 767px) {
  .reasonable-price .rp-wrapper h2 {
    font-size: 20px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 575px) {
  .reasonable-price .rp-wrapper h2 {
    font-size: 16px;
    margin-top: 20px;
  }
}
.reasonable-price .rp-wrapper .rp-explanation p {
  font-size: 32px;
}
@media screen and (max-width: 1199px) {
  .reasonable-price .rp-wrapper .rp-explanation p {
    font-size: 28px;
  }
}
@media screen and (max-width: 991px) {
  .reasonable-price .rp-wrapper .rp-explanation p {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .reasonable-price .rp-wrapper .rp-explanation p {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .reasonable-price .rp-wrapper .rp-explanation p {
    font-size: 14px;
  }
}
.reasonable-price .rp-wrapper .rp-explanation p span {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .reasonable-price .rp-wrapper .rp-explanation p span {
    color: #000;
  }
}

.faq {
  width: 100%;
}
.faq h2 {
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  .faq h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .faq h2 {
    font-size: 16px;
  }
}
.faq .faq-container {
  width: 90%;
  margin: 0 auto;
  text-align: left;
}
@media screen and (min-width: 1441px) {
  .faq .faq-container {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .faq .faq-container {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.faq .faq-container .faq-item {
  border-bottom: 1px solid #BCBCBC;
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 575px) {
  .faq .faq-container .faq-item {
    padding-top: 1rem;
  }
}
.faq .faq-container .faq-item .faq-header {
  display: flex;
  align-items: center;
  position: relative;
}
.faq .faq-container .faq-item .faq-header img {
  margin-right: 35px;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header img {
    width: 10px;
    margin-right: 20px;
  }
}
.faq .faq-container .faq-item .faq-header .question {
  color: #D8CA7D;
  margin: 0%;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header .question {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .faq .faq-container .faq-item .faq-header .question {
    width: calc(100% - 17px - 30px);
    font-size: 16px;
  }
}
.faq .faq-container .faq-item .faq-header .toggle-icon-down {
  position: absolute;
  right: 0%;
  top: 50%;
  transform: translateY(-50%);
  width: 33.33px;
  height: 33.33px;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header .toggle-icon-down {
    width: 17px;
    height: 17px;
  }
}
.faq .faq-container .faq-item .faq-header .toggle-icon-down span {
  cursor: pointer;
  position: absolute;
  right: 0%;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 16.665px 0 16.665px;
  border-color: #ad9107 transparent transparent transparent;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header .toggle-icon-down span {
    border-width: 13px 8.5px 0 8.5px;
  }
}
.faq .faq-container .faq-item .faq-header .toggle-icon-down.hide {
  z-index: 1;
}
.faq .faq-container .faq-item .faq-header .toggle-icon-down.hide span {
  opacity: 0;
}
.faq .faq-container .faq-item .faq-header .toggle-icon-up {
  position: absolute;
  right: 0%;
  top: 50%;
  transform: translateY(-50%);
  width: 33.33px;
  height: 33.33px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header .toggle-icon-up {
    width: 17px;
    height: 17px;
  }
}
.faq .faq-container .faq-item .faq-header .toggle-icon-up span {
  cursor: pointer;
  position: absolute;
  right: 0%;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 16.665px 25px 16.665px;
  border-color: transparent transparent #ad9107 transparent;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-header .toggle-icon-up span {
    border-width: 0 8.5px 13px 8.5px;
  }
}
.faq .faq-container .faq-item .faq-header .toggle-icon-up.show {
  z-index: 3;
}
.faq .faq-container .faq-item .faq-header .toggle-icon-up.show span {
  opacity: 1;
}
.faq .faq-container .faq-item .faq-contents {
  margin-left: 50px;
  font-size: 32px;
  display: none;
}
@media screen and (max-width: 767px) {
  .faq .faq-container .faq-item .faq-contents {
    font-size: 16px;
    margin-left: 30px;
  }
}
@media screen and (max-width: 575px) {
  .faq .faq-container .faq-item .faq-contents {
    font-size: 14px;
  }
}
.faq .faq-container .faq-item .faq-contents.show {
  display: block;
}

.contact h2 {
  font-size: 32px;
}
@media screen and (max-width: 767px) {
  .contact h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .contact h2 {
    font-size: 16px;
  }
}
.contact h3 {
  font-size: 24px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .contact h3 {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact h3 {
    font-size: 14px;
  }
}
.contact .contact-tel {
  background-color: #D8CA7D;
  color: #fff;
  width: 380px;
  height: 96px;
  margin: 0 auto;
}
.contact .contact-tel:hover {
  opacity: 0.8;
}
@media screen and (max-width: 575px) {
  .contact .contact-tel {
    width: 250px;
    height: 60px;
  }
}
.contact .contact-tel div img {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}
@media screen and (max-width: 575px) {
  .contact .contact-tel div img {
    width: 20px;
    height: 20px;
    margin-right: 10px;
  }
}
.contact .contact-tel div p {
  font-size: 40px;
}
@media screen and (max-width: 575px) {
  .contact .contact-tel div p {
    font-size: 24px;
  }
}
.contact .to-contact {
  background-color: #C8505E;
}
.contact .to-contact div p {
  font-size: 24px;
}
@media screen and (max-width: 575px) {
  .contact .to-contact div p {
    font-size: 16px;
  }
}
.contact .open-hours {
  font-size: 24px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .contact .open-hours {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .open-hours {
    font-size: 14px;
  }
}
.contact .contact-container {
  width: 60%;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 1199px) {
  .contact .contact-container {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .contact .contact-container {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.contact .contact-container .contact-notification {
  font-size: 24px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact .contact-container .contact-notification {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container .contact-notification {
    font-size: 14px;
  }
}
.contact .contact-container form .form-item {
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
.contact .contact-container form .form-item .form-left {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 40%;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-left {
    width: 100%;
    justify-content: flex-start;
  }
}
.contact .contact-container form .form-item .form-left label {
  font-size: 24px;
}
@media screen and (max-width: 991px) {
  .contact .contact-container form .form-item .form-left label {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-left label {
    margin-right: 30px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .form-left label {
    font-size: 16px;
  }
}
.contact .contact-container form .form-item .form-left .required {
  font-size: 24px;
  padding: 2px 12px;
  color: #fff;
  background-color: #FC7A7A;
}
@media screen and (max-width: 991px) {
  .contact .contact-container form .form-item .form-left .required {
    font-size: 24px;
    padding: 0 8px;
  }
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-left .required {
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .form-left .required {
    font-size: 16px;
  }
}
.contact .contact-container form .form-item .form-right {
  width: 60%;
  padding-top: 38px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-right {
    width: 100%;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .form-right {
    width: 100%;
    padding-top: 10px;
  }
}
.contact .contact-container form .form-item .form-right input {
  width: 80%;
  margin-left: 20%;
  height: 40px;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-right input {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .form-right input {
    margin: 0%;
    width: 100%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-item .form-example {
  margin-left: 20%;
  margin-top: 10px;
  color: #aaa;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .form-example {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .form-example {
    margin-top: 5px;
    margin-left: 0%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-item .name-alert {
  display: none;
  margin-left: 20%;
  color: #C8505E;
  height: 0;
}
.contact .contact-container form .form-item .name-alert.show {
  display: block;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .name-alert.show {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .name-alert.show {
    margin-left: 0%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-item .mail-alert {
  display: none;
  margin-left: 20%;
  color: #C8505E;
  height: 0;
}
.contact .contact-container form .form-item .mail-alert.show {
  display: block;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .mail-alert.show {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .mail-alert.show {
    margin-left: 0%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-item .email-alert {
  display: none;
  margin-left: 20%;
  color: #C8505E;
  height: 0;
}
.contact .contact-container form .form-item .email-alert.show {
  display: block;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-item .email-alert.show {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-item .email-alert.show {
    margin-left: 0%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-description {
  align-items: flex-start;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-description {
    padding-bottom: 0%;
    padding-top: 1rem;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-description {
    padding-top: 8px;
  }
}
.contact .contact-container form .form-description .form-right {
  padding: 0%;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-description .form-right {
    padding-top: 10px;
  }
}
.contact .contact-container form .form-description .form-right textarea {
  margin-left: 20%;
  width: 80%;
  height: 170px;
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-description .form-right textarea {
    margin: 0;
    width: 100%;
    font-size: 14px;
  }
}
.contact .contact-container form .form-description .form-right textarea::placeholder {
  color: #aaa;
  padding: 5px;
}
.contact .contact-container form .form-submit:hover {
  opacity: 0.8;
}
.contact .contact-container form .form-submit .form-submit-container {
  margin: 0 auto;
  background-color: #C8505E;
  color: #fff;
  width: 400px;
  height: 89px;
  position: relative;
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-submit .form-submit-container {
    width: 300px;
    height: 70px;
  }
}
.contact .contact-container form .form-submit .form-submit-container .form-submit-box img {
  margin-right: 20px;
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-submit .form-submit-container .form-submit-box img {
    display: none;
  }
}
.contact .contact-container form .form-submit .form-submit-container .form-submit-box p {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  .contact .contact-container form .form-submit .form-submit-container .form-submit-box p {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  .contact .contact-container form .form-submit .form-submit-container .form-submit-box p {
    font-size: 20px;
  }
}
.contact .contact-container form .form-submit .form-submit-container .submit-btn {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  opacity: 0;
}

footer {
  background-color: #EBE3DF;
}
footer .container .footer-contents {
  width: 100%;
}
@media screen and (max-width: 575px) {
  footer .container .footer-contents {
    width: 70%;
    margin: 0 auto;
  }
}
footer .container .footer-contents .footer-left {
  width: 20%;
}
@media screen and (max-width: 991px) {
  footer .container .footer-contents .footer-left {
    width: 50%;
    margin: 0 auto;
  }
}
footer .container .footer-contents .footer-center {
  width: 45%;
  margin-right: 5%;
}
@media screen and (max-width: 991px) {
  footer .container .footer-contents .footer-center {
    width: 100%;
    margin-right: 0%;
    padding-top: 40px;
  }
}
footer .container .footer-contents .footer-center p {
  font-size: 20px;
}
@media screen and (max-width: 575px) {
  footer .container .footer-contents .footer-center p {
    font-size: 12px;
  }
}
footer .container .footer-contents .footer-center a {
  color: #212529;
  text-decoration: underline;
  display: inline-block;
}
footer .container .footer-contents .footer-center a:hover {
  opacity: 0.8;
}
footer .container .footer-contents .footer-right {
  width: 30%;
}
@media screen and (max-width: 991px) {
  footer .container .footer-contents .footer-right {
    width: 100%;
    padding-top: 40px;
  }
}
footer .container .footer-contents .footer-right a img {
  margin-right: 30px;
}
@media screen and (max-width: 767px) {
  footer .container .footer-contents .footer-right a img {
    margin-right: 15px;
  }
}
@media screen and (max-width: 575px) {
  footer .container .footer-contents .footer-right a img {
    width: 30px;
    height: 30px;
  }
}
footer .container .footer-contents .footer-right a:hover {
  opacity: 0.8;
}
footer .container .footer-contents .footer-right p {
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  footer .container .footer-contents .footer-right p {
    font-size: 12px;
  }
}
footer .container .footer-contents .footer-right .syashinkan-img {
  width: 200px;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  footer .container .footer-contents .footer-right .syashinkan-img {
    width: 120px;
    margin-bottom: 17px;
  }
}
footer .container .footer-contents .footer-right .syashinkan-img a {
  display: block;
  width: 100%;
  height: 100%;
}
footer .container .footer-contents .footer-right .syashinkan-img a img {
  width: 100%;
  height: auto;
}
footer .container .footer-contents .footer-right .syashinkan-img a:hover {
  opacity: 0.8;
}
footer .container .copyright {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 991px) {
  footer .container .copyright {
    margin-top: 50px;
  }
}
@media screen and (max-width: 575px) {
  footer .container .copyright {
    font-size: 10px;
  }
}

.modal-area {
  position: fixed;
  width: 70%;
  top: 200%;
  left: 200%;
  height: auto;
  z-index: -1;
  opacity: 0;
  background-color: #EBE3DF;
}
.modal-area.fade-in {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 1s;
}
@media screen and (max-width: 991px) {
  .modal-area {
    width: 80%;
  }
}
@media screen and (max-width: 575px) {
  .modal-area {
    width: 90%;
  }
}
.modal-area .modal-wrapper {
  width: 100%;
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper {
    padding-right: 20px;
    padding-left: 20px;
  }
}
.modal-area .modal-wrapper h2 {
  font-size: 24px;
  color: #C8505E;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper h2 {
    font-size: 20px;
  }
}
.modal-area .modal-wrapper .ashirai {
  margin-top: 16px;
}
.modal-area .modal-wrapper p {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper p {
    font-size: 14px;
  }
}
.modal-area .modal-wrapper .modal-container {
  width: 80%;
  margin: 0 auto;
  text-align: left;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container {
    flex-direction: column;
  }
}
.modal-area .modal-wrapper .modal-container img {
  width: 30%;
  margin-right: 5%;
  margin-left: 5%;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container .modal-contents {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 10px;
  }
}
.modal-area .modal-wrapper .modal-container .modal-contents p {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container .modal-contents p {
    font-size: 14px;
  }
  .modal-area .modal-wrapper .modal-container .modal-contents p.insta-start {
    font-size: 16px;
    margin-bottom: 10px;
  }
}
.modal-area .modal-wrapper .modal-container .modal-contents .instagram-link {
  width: 180px;
  height: 45px;
  display: block;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container .modal-contents .instagram-link {
    width: 160px;
    height: 40px;
  }
}
.modal-area .modal-wrapper .modal-container .modal-contents .instagram-link:hover {
  color: #fff;
  opacity: 0.8;
}
.modal-area .modal-wrapper .modal-container .modal-contents .instagram-link .instagram-container {
  width: 180px;
  height: 45px;
  background-color: #C8505E;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container .modal-contents .instagram-link .instagram-container {
    width: 160px;
    height: 40px;
  }
}
.modal-area .modal-wrapper .modal-container .modal-contents .instagram-link .instagram-container img {
  width: 30px;
  margin-right: 10px;
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  .modal-area .modal-wrapper .modal-container .modal-contents .instagram-link .instagram-container img {
    width: 25px;
  }
}
.modal-area .modal-wrapper .modal-container .modal-contents .instagram-link .instagram-container p {
  font-size: 14px;
}
.modal-area .modal-wrapper #backToTop {
  background-color: #BCBCBC;
  color: #fff;
  width: 100px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.modal-area .modal-wrapper #backToTop:hover {
  opacity: 0.8;
}
.modal-area .modal-wrapper #backToTop p {
  font-size: 10px;
}

.modal-bg.show {
  background-color: rgba(108, 108, 108, 0.7);
  height: 100vh;
  width: 100%;
  z-index: 5;
  position: fixed;
  top: 0%;
  left: 0%;
}

.sp-footer {
  position: fixed;
  left: 0%;
  bottom: 0px;
  width: 100%;
  height: 50px;
  transition: 0.7s bottom;
  z-index: 10;
}
.sp-footer.hide {
  bottom: -50px;
  transition: 0.7s bottom;
}
.sp-footer .sp-footer-tel {
  background-color: #D8CA7D;
  width: 50%;
  font-size: 14px;
}
.sp-footer .sp-footer-tel:hover {
  color: #fff;
  opacity: 0.8;
}
.sp-footer .sp-footer-tel img {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}
.sp-footer .sp-footer-contact {
  background-color: #C8505E;
  width: 50%;
  font-size: 14px;
}
.sp-footer .sp-footer-contact:hover {
  color: #fff;
  opacity: 0.8;
}
.sp-footer .sp-footer-contact img {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}

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