@charset "UTF-8";
/* =======================================
 base style
======================================= */
html {
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
dl,
dt,
dd,
ul,
ol,
li {
  font-size: 100%;
  line-height: 1;
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
  padding: 0;
}

ul,
ol,
li {
  list-style: none;
}

body {
  background: #fff;
  line-height: 1;
  margin: auto;
  width: 100%;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
@media only screen and (min-width: 769px) {
  body {
    font-size: 1.524vw;
  }
}
@media only screen and (min-width: 1050px) {
  body {
    font-size: 16px;
    min-width: 1050px;
  }
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 3.467vw;
    overflow-x: hidden;
  }
}

img {
  width: 100%;
  backface-visibility: hidden;
}

a {
  text-decoration: none;
  animation: all 1s ease-in-out;
}
a:hover {
  opacity: 0.9;
  animation: all 1s ease-in-out;
}

.main_ctx {
  position: relative;
}

.inner_ctx {
  margin: auto;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .inner_ctx {
    width: 100vw;
    max-width: 1050px;
  }
}
@media only screen and (max-width: 768px) {
  .inner_ctx {
    padding: 0 5.333%;
  }
}

@media only screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

@media only screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

.popup {
  position: relative;
  z-index: 1007;
  display: none;
}
.popup .mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}
.popup .inner {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .popup .inner {
    width: 50em;
    height: 34.75em;
    border-radius: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .popup .inner {
    width: 89.333vw;
    height: 143.467vw;
    border-radius: 2.667vw;
  }
}
.popup_close {
  position: absolute;
  cursor: pointer;
}
@media only screen and (min-width: 769px) {
  .popup_close {
    width: 3.625em;
    top: -1.188em;
    right: -1.188em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_close {
    width: 7.733vw;
    top: -3.867vw;
    right: -3.867vw;
  }
}
.popup_top {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .popup_top {
    padding-top: 2.625em;
    height: 20.375em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_top {
    padding-top: 4.4vw;
    height: 91.333vw;
  }
}
.popup_tit {
  background-color: #f77726;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .popup_tit {
    width: 39.688em;
    letter-spacing: 0.125em;
    border-radius: 3.75em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_tit {
    width: 82.133vw;
    letter-spacing: 0.133vw;
    border-radius: 13.333vw;
  }
}
.popup_tit h1 {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .popup_tit h1 {
    font-size: 2.25em;
    padding: 0.306em 0;
    gap: 0.417em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_tit h1 {
    font-size: 4.8vw;
    padding: 3.2vw 0;
    gap: 1.333vw;
  }
}
.popup_tit h1::before,
.popup_tit h1::after {
  content: "";
  display: inline-block;
  background-image: url("../img/popup_el01.png");
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .popup_tit h1::before,
  .popup_tit h1::after {
    width: 1.278em;
    height: 1.111em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_tit h1::before,
  .popup_tit h1::after {
    width: 6.133vw;
    height: 5.333vw;
  }
}
.popup_tit:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #f77726 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .popup_tit:after {
    border-width: 1.125em 0.688em 0 0.688em;
    bottom: -1em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_tit:after {
    border-width: 2.267vw 2.133vw 0 2.133vw;
    bottom: -1.867vw;
  }
}
.popup_list {
  display: flex;
}
@media only screen and (min-width: 769px) {
  .popup_list {
    padding-top: 1.813em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_list {
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 4.4vw;
    gap: 4vw 0;
  }
}
.popup_list li {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .popup_list li {
    width: 10.875em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_list li {
    width: 34.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .popup_list li img {
    width: 7.5em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_list li img {
    width: 23.333vw;
  }
}
.popup_list li p {
  font-weight: bold;
}
@media only screen and (min-width: 769px) {
  .popup_list li p {
    font-size: 1.5em;
    padding-top: 0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_list li p {
    font-size: 4.533vw;
    padding-top: 2.667vw;
  }
}
.popup_list li:nth-of-type(1) p {
  color: #f77726;
}
.popup_list li:nth-of-type(2) p {
  color: #f47255;
}
.popup_list li:nth-of-type(3) p {
  color: #4997c8;
}
.popup_list li:nth-of-type(4) p {
  color: #49c8ce;
}
.popup_bottom {
  background-color: #6dd3d8;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .popup_bottom {
    height: 14.375em;
    border-bottom-left-radius: 1.25em;
    border-bottom-right-radius: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_bottom {
    height: 52.133vw;
    border-bottom-left-radius: 2.667vw;
    border-bottom-right-radius: 2.667vw;
  }
}
.popup_sub {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .popup_sub {
    gap: 0.625em;
    padding-top: 1.875em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_sub {
    gap: 1.333vw;
    padding-top: 4.933vw;
  }
}
.popup_sub p {
  color: #ffffff;
}
@media only screen and (min-width: 769px) {
  .popup_sub p {
    font-size: 1.75em;
    letter-spacing: 0.063em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_sub p {
    font-size: 3.867vw;
    letter-spacing: 0.133vw;
  }
}
.popup_sub p b {
  color: #333333;
  display: inline;
  background-position: left -100% center;
  background-repeat: repeat-x;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 60%,
    rgb(254, 235, 164) 60%,
    rgb(254, 235, 164) 80%,
    rgba(255, 255, 255, 0) 80%
  );
}
.popup_sub::before,
.popup_sub::after {
  content: "";
  display: inline-block;
  background-image: url("../img/popup_el02.png");
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .popup_sub::before,
  .popup_sub::after {
    width: 1.688em;
    height: 2.188em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_sub::before,
  .popup_sub::after {
    width: 3.333vw;
    height: 4.4vw;
  }
}
.popup_sub::after {
  transform: scaleX(-1);
}
.popup_btn {
  display: flex;
}
@media only screen and (min-width: 769px) {
  .popup_btn {
    gap: 1.25em;
    padding-top: 1.125em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_btn {
    flex-direction: column;
    gap: 3.2vw;
    padding-top: 4vw;
  }
}
@media only screen and (min-width: 769px) {
  .popup_btn a {
    width: 22.813em;
  }
}
@media only screen and (max-width: 768px) {
  .popup_btn a {
    width: 76.533vw;
  }
}

@media only screen and (min-width: 769px) {
  .nav-pc {
    position: fixed;
    background-color: #fff;
    width: 100%;
    z-index: 1003;
    top: 0;
    height: 5.625em;
  }
  .nav-pc .menu-container {
    position: fixed;
    top: 0;
    height: 100%;
    background-color: #fff;
    transition: left 0.3s ease-in-out;
    z-index: 5;
    left: -38.75em;
    width: 38.75em;
    max-height: 100vh;
    overflow: auto;
  }
  .nav-pc .menu-container.open {
    left: 0;
  }
  .nav-pc .mask {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    display: none;
    z-index: 2;
  }
  .nav-pc .menu {
    padding: 3.438em 1.688em 0;
  }
  .nav-pc .menu a {
    display: flex;
    align-items: center;
    color: #333333;
    text-decoration: none;
    font-size: 1.5em;
    letter-spacing: 0.042em;
    padding: 1.167em 1.5em;
    border-bottom: 0.083em solid #d6dbde;
  }
  .nav-pc .menu a:nth-last-child(1) {
    border-bottom: none;
  }
  .nav-pc .pc-header {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 65.625em;
    padding: 0.875em 1.563em 0;
  }
  .nav-pc .pc-header .left {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.938em;
  }
  .nav-pc .pc-header .left img:nth-of-type(1) {
    width: 15.938em;
  }
  .nav-pc .pc-header .left img:nth-of-type(2) {
    width: 11.813em;
  }
  .nav-pc .pc-header .right {
    position: relative;
    right: 4.063em;
  }
  .nav-pc .pc-header .right .contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5em;
  }
  .nav-pc .pc-header .right .tel {
    display: flex;
    align-items: center;
    gap: 0.313em;
  }
  .nav-pc .pc-header .right .tel img {
    width: 2em;
  }
  .nav-pc .pc-header .right .tel p {
    color: #f77726;
    font-weight: bold;
    font-size: 2em;
  }
  .nav-pc .pc-header .right .time {
    color: #333333;
    font-size: 1em;
  }
  .nav-pc .pc-header .right .time span {
    display: inline-block;
    border: 0.063em solid #333333;
    padding: 0.125em 0.25em;
    margin-left: 0.625em;
  }
  .nav-pc .hamburger {
    position: absolute;
    cursor: pointer;
    z-index: 1001;
    width: 2.75em;
    height: 3.375em;
    top: 1.125em;
    right: 1.563em;
  }
  .nav-pc .hamburger span {
    display: inline-block;
    transition: all 0.4s;
    position: absolute;
    background: #4d4d4d;
    width: 2.875em;
    height: 0.313em;
    border: 0.267em;
    border-radius: 2em;
  }
  .nav-pc .hamburger p {
    position: absolute;
    font-weight: bold;
    color: #4d4d4d;
    white-space: nowrap;
    font-size: 0.813em;
    bottom: 0;
  }
  .nav-pc .hamburger p:after {
    content: "MENU";
  }
  .nav-pc .hamburger span:nth-of-type(1) {
    top: 0;
  }
  .nav-pc .hamburger span:nth-of-type(2) {
    top: 0.75em;
  }
  .nav-pc .hamburger span:nth-of-type(3) {
    top: 1.5em;
  }
  .nav-pc .hamburger.open span {
    background: #fff;
  }
  .nav-pc .hamburger.open p {
    color: #fff;
  }
  .nav-pc .hamburger.open p:after {
    content: "CLOSE";
  }
  .nav-pc .hamburger.open span:nth-of-type(1) {
    top: 0em;
    transform: translateY(0.8em) rotate(-45deg);
    width: 100%;
  }
  .nav-pc .hamburger.open span:nth-of-type(2) {
    opacity: 0;
  }
  .nav-pc .hamburger.open span:nth-of-type(3) {
    top: 1.7em;
    transform: translateY(-0.8em) rotate(45deg);
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .nav-sp {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1003;
    background-color: #fff;
    height: 14.667vw;
  }
  .nav-sp .inner_ctx {
    display: flex;
    justify-content: space-between;
    padding-top: 2.933vw;
  }
  .nav-sp .logo {
    width: 46vw;
    display: flex;
  }
  .nav-sp .logo img {
    height: 80%;
    width: 80%;
    margin: auto;
  }
  .nav-sp .nav-sp-wrapper {
    position: absolute;
    background-color: #fff;
    transition: left 0.5s ease-in-out;
    left: -46.875em;
    width: 100vw;
    height: 100vh;
    top: 0;
  }
  .nav-sp .nav-sp-wrapper.open {
    left: 0;
  }
  .nav-sp .nav-sp {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 19.333vw 0 0;
  }
  .nav-sp .nav-sp ul {
    width: 80vw;
  }
  .nav-sp .nav-sp ul li {
    padding: 5.333vw 0;
    border-bottom: 0.267vw solid #e0e0e0;
  }
  .nav-sp .nav-sp ul li a {
    color: #333333;
    font-size: 4.533vw;
    padding: 0 6.667vw;
  }
  .nav-sp .nav-sp ul li:nth-last-child(1) {
    border-bottom: none;
  }
  .nav-sp .hamburger-sp {
    width: 7.2vw;
    height: 8.8vw;
    position: relative;
    cursor: pointer;
    float: right;
    z-index: 1006;
  }
  .nav-sp .hamburger-sp p {
    position: absolute;
    font-weight: bold;
    color: #4d4d4d;
    white-space: nowrap;
    font-size: 2.133vw;
    bottom: 0;
  }
  .nav-sp .hamburger-sp p:after {
    content: "MENU";
  }
  .nav-sp .hamburger-sp span {
    display: inline-block;
    transition: all 0.4s;
    position: absolute;
    background: #4d4d4d;
    width: 7.2vw;
    height: 0.8vw;
    border-radius: 1.333vw;
  }
  .nav-sp .hamburger-sp span:nth-of-type(1) {
    top: 0.3vw;
  }
  .nav-sp .hamburger-sp span:nth-of-type(2) {
    top: 2.3vw;
  }
  .nav-sp .hamburger-sp span:nth-of-type(3) {
    top: 4.5vw;
  }
  .nav-sp .hamburger-sp.active span:nth-of-type(1) {
    top: 1.4vw;
    transform: translateY(0.8vw) rotate(-45deg);
    width: 100%;
  }
  .nav-sp .hamburger-sp.active span:nth-of-type(2) {
    opacity: 0;
  }
  .nav-sp .hamburger-sp.active span:nth-of-type(3) {
    top: 3.2vw;
    transform: translateY(-0.8vw) rotate(45deg);
    width: 100%;
  }
  .nav-sp .hamburger-sp.active p:after {
    content: "CLOSE";
  }
}

.cv {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cv_tit {
  display: flex;
  align-items: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .cv_tit {
    gap: 0.938em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit {
    flex-direction: column;
    gap: 2.667vw;
  }
}
.cv_tit h1 {
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .cv_tit h1 {
    font-size: 1.875em;
    padding: 0.167em 0.4em 0.167em;
    border: 0.033em solid #333333;
    letter-spacing: 0.033em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit h1 {
    font-size: 4.8vw;
    padding: 0.933vw 2.267vw 1.333vw;
    border: 0.133vw solid #333333;
  }
}
.cv_tit h2 {
  text-align: center;
  color: #1a1a1a;
  display: inline;
  background-position: left -100% center;
  background-repeat: repeat-x;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 70%,
    rgb(254, 235, 164) 70%,
    rgb(254, 235, 164) 100%,
    rgba(255, 255, 255, 0) 100%
  );
}
@media only screen and (min-width: 769px) {
  .cv_tit h2 {
    font-size: 2.5em;
    letter-spacing: 0.1em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit h2 {
    font-size: 6.667vw;
    letter-spacing: 0.4vw;
  }
}
.cv_tit::before,
.cv_tit::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .cv_tit::before,
  .cv_tit::after {
    background-image: url("../img/cv_line.png");
    width: 2.063em;
    height: 3.313em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit::before,
  .cv_tit::after {
    background-image: url("../img/cv_line_sp.png");
    width: 6vw;
    height: 17.467vw;
  }
}
@media only screen and (min-width: 769px) {
  .cv_tit::before {
    left: -3em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit::before {
    left: -8vw;
  }
}
.cv_tit::after {
  transform: scaleX(-1);
}
@media only screen and (min-width: 769px) {
  .cv_tit::after {
    right: -3em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_tit::after {
    right: -8vw;
  }
}
.cv_btn {
  display: flex;
}
@media only screen and (min-width: 769px) {
  .cv_btn {
    gap: 1.25em;
    padding-top: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_btn {
    flex-direction: column;
    gap: 4.667vw;
    padding-top: 5.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .cv_btn a {
    width: 26.75em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_btn a {
    width: 74.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .cv_note {
    font-size: 0.875em;
    margin-top: 1.429em;
  }
}
@media only screen and (max-width: 768px) {
  .cv_note {
    width: 74.667vw;
    font-size: 2.933vw;
    line-height: 4.8vw;
    margin-top: 4.267vw;
  }
}

@media only screen and (min-width: 769px) {
  .common-cv {
    padding: 4.375em 0;
  }
}
@media only screen and (max-width: 768px) {
  .common-cv {
    padding: 14.267vw 0;
  }
}

@media only screen and (min-width: 769px) {
  .top {
    background: url("../img/top_bg.jpg") no-repeat 50% 0%, #6dd3d8;
    background-size: 125em 49.188em, auto;
    padding-bottom: 5.25em;
    margin-top: 5.625em;
  }
}
@media only screen and (max-width: 768px) {
  .top {
    background: url("../img/top_bg_sp.jpg") no-repeat 50% 0, #6dd3d8;
    background-size: 100vw 100vw, auto;
    padding-bottom: 15.467vw;
    margin-top: 14.667vw;
  }
}
.top .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  .top .inner_ctx {
    padding: 0;
  }
}
.top_range {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .top_range {
    gap: 0.438em;
    padding-top: 2.625em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range {
    gap: 0.933vw;
    padding-top: 6.133vw;
  }
}
.top_range li {
  display: flex;
  align-items: center;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .top_range li {
    box-shadow: rgba(0, 0, 0, 0.1) 0.125em 0.125em 0.75em -0.188em;
    gap: 0.438em;
    border-radius: 1.875em;
    padding: 0.313em 0.938em 0.5em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range li {
    box-shadow: rgba(0, 0, 0, 0.1) 0.267vw 0.267vw 1.6vw -0.4vw;
    gap: 0.4vw;
    border-radius: 4vw;
    padding: 0.8vw 1.6vw 1.067vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_range li img {
    width: 2.25em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range li img {
    width: 4.8vw;
  }
}
.top_range li p {
  color: #49c8ce;
  font-weight: bold;
}
@media only screen and (min-width: 769px) {
  .top_range li p {
    font-size: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range li p {
    font-size: 3.2vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_range li:first-child img {
    width: 2.063em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range li:first-child img {
    width: 4.4vw;
  }
}
.top_range li:nth-last-child(1) {
  padding: unset;
  background-color: unset;
  box-shadow: unset;
  font-weight: bold;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .top_range li:nth-last-child(1) {
    font-size: 1.625em;
  }
}
@media only screen and (max-width: 768px) {
  .top_range li:nth-last-child(1) {
    font-size: 3.467vw;
  }
}
.top_tit {
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .top_tit {
    padding-top: 2.125em;
  }
}
@media only screen and (max-width: 768px) {
  .top_tit {
    padding-top: 4.8vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_tit img {
    width: 32.5em;
  }
}
@media only screen and (max-width: 768px) {
  .top_tit img {
    width: 78.667vw;
  }
}
.top_wrap {
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.15) 3px 4px 11px;
}
@media only screen and (min-width: 769px) {
  .top_wrap {
    background: #fff;
    border: solid 5px #f18941;
    background-size: 60em 34.75em;
    width: 60em;
    height: 24.375em;
    margin-top: 2.375em;
    border-radius: 1.5em;
    box-shadow: rgba(0, 0, 0, 0.15) 0.25em 0.25em 0.75em;
    -webkit-border-radius: 1.5em;
    -moz-border-radius: 1.5em;
    -ms-border-radius: 1.5em;
    -o-border-radius: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .top_wrap {
    background: #fff;
    border: solid 5px #f18941;
    background-size: 89.333vw 176vw;
    width: 89.333vw;
    height: 73.333vw;
    margin-top: 8vw;
    border-radius: 3.2vw;
    box-shadow: rgba(0, 0, 0, 0.15) 0.533vw 0.533vw 1.6vw;
  }
}
.top_tag {
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .top_tag {
    top: -2.125em;
    left: 3.125em;
  }
}
@media only screen and (max-width: 768px) {
  .top_tag {
    top: -3.733vw;
    left: -2.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_tag img {
    width: 8.25em;
  }
}
@media only screen and (max-width: 768px) {
  .top_tag img {
    width: 18.667vw;
  }
}
.top_sub01 {
  text-align: center;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .top_sub01 {
    font-size: 1.875em;
    letter-spacing: 0.028em;
    padding-top: 0.889em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub01 {
    font-size: 5.067vw;
    line-height: 7.2vw;
    padding-top: 6.933vw;
  }
}
.top_sub01 span {
  color: #f77726;
  position: relative;
}
.top_sub01 span::after {
  position: absolute;
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .top_sub01 span::after {
    background-image: url("../img/top_line.png");
    width: 7.333em;
    height: 0.111em;
    left: -0.139em;
    bottom: 0.083em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub01 span::after {
    width: 42.267vw;
    height: 0.533vw;
    left: 0.267vw;
    bottom: 1.333vw;
  }
}
.top_sub02 {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .top_sub02 {
    gap: 0.938em;
    padding-top: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub02 {
    gap: 2.667vw;
    padding-top: 1.067vw;
  }
}
.top_sub02 h2 {
  text-align: center;
  color: #1a1a1a;
  display: inline;
  background-position: left -100% center;
  background-repeat: repeat-x;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 70%,
    rgb(254, 235, 164) 70%,
    rgb(254, 235, 164) 100%,
    rgba(255, 255, 255, 0) 100%
  );
}
@media only screen and (min-width: 769px) {
  .top_sub02 h2 {
    font-size: 2.625em;
    letter-spacing: 0.083em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub02 h2 {
    font-size: 7.333vw;
    letter-spacing: 0.4vw;
  }
}
.top_sub02::before,
.top_sub02::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  background-color: #4d4d4d;
}
@media only screen and (min-width: 769px) {
  .top_sub02::before,
  .top_sub02::after {
    width: 8.125em;
    height: 0.125em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub02::before,
  .top_sub02::after {
    width: 4.267vw;
    height: 0.4vw;
  }
}
.top_sub03 {
  color: #333333;
  font-weight: normal;
  text-align: center;
  background-color: #f0f0f0;
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .top_sub03 {
    font-size: 1.125em;
    width: 48.333em;
    padding: 0.389em;
    border-radius: 1.667em;
    margin-top: 1.389em;
    -webkit-border-radius: 1.667em;
    -moz-border-radius: 1.667em;
    -ms-border-radius: 1.667em;
    -o-border-radius: 1.667em;
  }
}
@media only screen and (max-width: 768px) {
  .top_sub03 {
    font-size: 3.2vw;
    line-height: 4.533vw;
    width: 78.667vw;
    padding: 1.6vw;
    border-radius: 9.333vw;
    margin-top: 4vw;
  }
}
.top_service {
  display: flex;
  justify-content: center;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .top_service {
    margin-top: 4.267vw;
  }
}
.top_service li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .top_service li {
    width: 14.375em;
    margin-top: 1.563em;
    border-right: 0.063em dotted #939393;
  }
}
@media only screen and (max-width: 768px) {
  .top_service li {
    width: 20.267vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_service li img {
    width: 6.25em;
  }
}
@media only screen and (max-width: 768px) {
  .top_service li img {
    width: 13.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_service li h3 {
    font-size: 1.688em;
    padding: 1em 0 0.5em;
  }
}
@media only screen and (max-width: 768px) {
  .top_service li h3 {
    font-size: 4.8vw;
    padding: 2.667vw 0 1.333vw;
  }
}
.top_service li p {
  text-align: center;
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .top_service li p {
    font-size: 1.125em;
    line-height: 1.875em;
  }
}
@media only screen and (max-width: 768px) {
  .top_service li p {
    font-size: 3.733vw;
    line-height: 7.2vw;
  }
}
.top_service li:nth-child(1) {
  border-right: 0.133vw dotted #939393;
}
.top_service li:nth-child(1) h3 {
  color: #f77726;
}
.top_service li:nth-child(2) {
  border-right: 0.133vw dotted #939393;
}
.top_service li:nth-child(2) h3 {
  color: #f47255;
}
.top_service li:nth-child(3) {
  border-right: 0.133vw dotted #939393;
}
.top_service li:nth-child(3) h3 {
  color: #4997c8;
}
.top_service li:nth-child(4) {
  border-right: unset;
}
.top_service li:nth-child(4) h3 {
  color: #49c8ce;
}
@media only screen and (max-width: 768px) {
  .top_service:after {
    position: absolute;
    content: "";
    top: 53.333vw;
    width: 77.333vw;
    border-bottom: 0.133vw dotted #939393;
  }
}
.top_cv-wrap {
  background-color: #fff;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .top_cv-wrap {
    width: 60em;
    height: 20.5em;
    margin-top: 2.375em;
    border-radius: 1.5em;
    box-shadow: rgba(0, 0, 0, 0.15) 0.25em 0.25em 0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .top_cv-wrap {
    width: 89.333vw;
    height: 112vw;
    margin-top: 8vw;
    border-radius: 3.2vw;
    box-shadow: rgba(0, 0, 0, 0.15) 0.533vw 0.533vw 1.6vw;
  }
}
@media only screen and (min-width: 769px) {
  .top_cv-wrap .cv {
    padding-top: 2.813em;
  }
}
@media only screen and (max-width: 768px) {
  .top_cv-wrap .cv {
    padding-top: 9.333vw;
  }
}
.top_cv-wrap::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .top_cv-wrap::before {
    background-image: url("../img/top_el01.png");
    width: 3.375em;
    height: 4.938em;
    top: -3.625em;
  }
}
@media only screen and (max-width: 768px) {
  .top_cv-wrap::before {
    background-image: url("../img/top_el01_sp.png");
    width: 10.133vw;
    height: 14.8vw;
    top: -11.067vw;
  }
}
.top_cv-wrap::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .top_cv-wrap::after {
    background-image: url("../img/top_el02.png");
    width: 0.688em;
    height: 5.688em;
    bottom: -8.125em;
  }
}
@media only screen and (max-width: 768px) {
  .top_cv-wrap::after {
    background-image: url("../img/top_el02_sp.png");
    width: 1.867vw;
    height: 14.8vw;
    bottom: -23.067vw;
  }
}

@media only screen and (min-width: 769px) {
  .worry {
    background: url("../img/worry_bg.jpg") no-repeat 50% 0%;
    background-size: 125em auto;
    height: 50.5em;
  }
}
@media only screen and (max-width: 768px) {
  .worry {
    background: url("../img/worry_bg_sp.jpg") no-repeat 50% 0;
    background-size: 100vw auto;
    height: 200.933vw;
  }
}
.worry_tit01 {
  text-align: center;
  color: #ffffff;
}
@media only screen and (min-width: 769px) {
  .worry_tit01 {
    font-size: 2.688em;
    letter-spacing: 0.07em;
    padding-top: 2.233em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_tit01 {
    font-size: 5.733vw;
    letter-spacing: 0.133vw;
    padding-top: 18.667vw;
  }
}
.worry_tit01 span {
  color: #fee892;
  font-size: 110%;
  position: relative;
  right: -1%;
}
@media only screen and (min-width: 769px) {
  .worry_tit02 {
    display: flex;
    justify-content: center;
    margin-top: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_tit02 {
    text-align: center;
    margin-top: 2.933vw;
  }
}
.worry_tit02 h2 {
  text-align: center;
  color: #ffffff;
  display: inline;
  background-position: left -100% center;
  background-repeat: repeat-x;
}
@media only screen and (min-width: 769px) {
  .worry_tit02 h2 {
    background: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0) 55%,
      rgba(0, 0, 0, 0.3) 55%,
      rgba(0, 0, 0, 0.3) 100%,
      rgba(255, 255, 255, 0) 100%
    );
    font-size: 3em;
    letter-spacing: 0.104em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_tit02 h2 {
    background: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0) 55%,
      rgba(0, 0, 0, 0.3) 55%,
      rgba(0, 0, 0, 0.3) 85%,
      rgba(255, 255, 255, 0) 85%
    );
    font-size: 7.467vw;
    letter-spacing: 0.4vw;
    line-height: 10.133vw;
  }
}
.worry_tit02 h2 span {
  font-size: 85%;
}
.worry_lists {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .worry_lists {
    gap: 1.625em;
    margin-top: 4.688em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_lists {
    flex-wrap: wrap;
    justify-content: center;
    gap: 7.6vw 5.067vw;
    margin-top: 12.667vw;
  }
}
.worry_lists li {
  background-color: #fff;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .worry_lists li {
    width: 19.75em;
    height: 27.125em;
    border-radius: 1.125em;
    box-shadow: rgba(0, 0, 0, 0.15) 0.25em 0.25em 0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_lists li {
    width: 42.133vw;
    height: 60vw;
    border-radius: 2.667vw;
    box-shadow: rgba(0, 0, 0, 0.15) 0.533vw 0.533vw 1.6vw;
  }
}
.worry_lists li img {
  width: 100%;
}
.worry_lists li p {
  font-weight: bold;
  text-align: center;
  color: #1a1a1a;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .worry_lists li p {
    font-size: 1.625em;
    padding-top: 1.154em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_lists li p {
    font-size: 3.733vw;
    padding-top: 5.333vw;
  }
}
.worry_lists li p span {
  display: inline-block;
}
@media only screen and (min-width: 769px) {
  .worry_lists li p span {
    margin-top: 0.538em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_lists li p span {
    margin-top: 1.6vw;
  }
}
.worry_lists li p span.bg {
  color: #203a72;
  background-color: #fee892;
}
@media only screen and (min-width: 769px) {
  .worry_lists li p span.bg {
    padding: 0 0.192em;
  }
}
.worry_lists li::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
@media only screen and (min-width: 769px) {
  .worry_lists li::before {
    background-image: url("../img/worry_check.png");
    width: 2.625em;
    height: 2.625em;
    top: -1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .worry_lists li::before {
    background-image: url("../img/worry_check.png");
    width: 5.6vw;
    height: 5.6vw;
    top: -2.933vw;
  }
}

@media only screen and (min-width: 769px) {
  .intro {
    background: url("../img/intro_bg_top.jpg") no-repeat top center,
      url("../img/intro_bg_bottom.jpg") no-repeat bottom center, #ffeee0;
    background-size: 125em 95.625em, 125em 19.25em;
  }
}
@media only screen and (max-width: 768px) {
  .intro {
    background: url("../img/intro_bg_top_sp.jpg") no-repeat top center,
      url("../img/intro_bg_bottom_sp.jpg") no-repeat bottom center, #ffeee0;
    background-size: 96vw 133.333vw, 100vw 54.267vw;
  }
}
.intro .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .intro_tit01 {
    width: 28em;
    padding-top: 5.875em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_tit01 {
    width: 62.8vw;
    padding-top: 18.267vw;
  }
}
.intro_tit02 {
  color: #f77726;
}
@media only screen and (min-width: 769px) {
  .intro_tit02 {
    font-size: 3.75em;
    letter-spacing: 0.05em;
    padding-top: 0.4em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_tit02 {
    font-size: 8.533vw;
    letter-spacing: 0.267vw;
    padding-top: 4.267vw;
  }
}
.intro_tit02 span {
  font-size: 80%;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .intro_tit03 {
    display: flex;
    margin-top: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_tit03 {
    text-align: center;
    margin-top: 2.933vw;
  }
}
.intro_tit03 h2 {
  color: #fff;
  background-color: #f77726;
}
@media only screen and (min-width: 769px) {
  .intro_tit03 h2 {
    font-size: 3.375em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_tit03 h2 {
    display: inline-block;
    font-size: 7.733vw;
    padding: 0 1.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .intro_tit03 h2:first-child {
    padding-left: 0.13em;
  }
}
@media only screen and (min-width: 769px) {
  .intro_tit03 h2:last-child {
    padding-right: 0.13em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_tit03 h2:last-child {
    margin-top: 1.867vw;
  }
}
.intro_detail {
  color: #333333;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .intro_detail {
    font-size: 1.125em;
    line-height: 1.778em;
    margin-top: 2.286em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_detail {
    font-size: 3.733vw;
    line-height: 7.2vw;
    margin-top: 7.467vw;
  }
}
.intro_lists {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media only screen and (min-width: 769px) {
  .intro_lists {
    gap: 5.5em 2.625em;
    padding-top: 6.25em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_lists {
    gap: 18vw;
    padding-top: 18.667vw;
  }
}
.intro_list {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .intro_list {
    box-shadow: rgba(0, 0, 0, 0.15) 0.25em 0.25em 0.75em;
    width: 24em;
    padding-bottom: 2.5em;
    border-radius: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list {
    box-shadow: rgba(0, 0, 0, 0.15) 0.533vw 0.533vw 1.6vw;
    width: 74.667vw;
    padding-bottom: 7.333vw;
    border-radius: 2.667vw;
  }
}
.intro_list img {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .intro_list img {
    width: 7.5em;
    top: -3.5em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list img {
    width: 21.333vw;
    top: -10.667vw;
  }
}
.intro_list h3 {
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .intro_list h3 {
    font-size: 1.938em;
    padding: 2.839em 0 0.387em;
    letter-spacing: 0.065em;
    width: 10.323em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list h3 {
    font-size: 5.333vw;
    padding: 14.667vw 0 3.467vw;
    letter-spacing: 0.267vw;
    width: 64vw;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(1) {
    border: 0.25em solid #f8ab55;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(1) {
    border: 0.533vw solid #f8ab55;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(1) h3 {
    border-bottom: 0.097em solid #f8ab55;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(1) h3 {
    border-bottom: 0.4vw solid #f8ab55;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(2) {
    border: 0.25em solid #f47255;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(2) {
    border: 0.533vw solid #f47255;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(2) h3 {
    border-bottom: 0.097em solid #f47255;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(2) h3 {
    border-bottom: 0.4vw solid #f47255;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(3) {
    border: 0.25em solid #4997c8;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(3) {
    border: 0.533vw solid #4997c8;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(3) h3 {
    border-bottom: 0.097em solid #4997c8;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(3) h3 {
    border-bottom: 0.4vw solid #4997c8;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(4) {
    border: 0.25em solid #49c8ce;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(4) {
    border: 0.533vw solid #49c8ce;
  }
}
@media only screen and (min-width: 769px) {
  .intro_list:nth-child(4) h3 {
    border-bottom: 0.097em solid #49c8ce;
  }
}
@media only screen and (max-width: 768px) {
  .intro_list:nth-child(4) h3 {
    border-bottom: 0.4vw solid #49c8ce;
  }
}
@media only screen and (min-width: 769px) {
  .intro_points {
    width: 20em;
    padding-top: 1.875em;
    letter-spacing: 0.125em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_points {
    width: 64vw;
    padding-top: 4.8vw;
    line-height: 0.267vw;
  }
}
.intro_point {
  text-indent: -1em;
  padding-left: 1em;
}
@media only screen and (min-width: 769px) {
  .intro_point {
    font-size: 1.125em;
    line-height: 1.778em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_point {
    font-size: 3.733vw;
    line-height: 7.2vw;
  }
}
.intro_change {
  display: flex;
}
@media only screen and (min-width: 769px) {
  .intro_change {
    padding: 8.75em 0 8.438em;
    gap: 2.5em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_change {
    flex-direction: column;
    padding: 20vw 0;
    gap: 18.667vw;
  }
}
.intro_before,
.intro_after {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .intro_before,
  .intro_after {
    width: 33.125em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_before,
  .intro_after {
    width: 89.333vw;
  }
}
.intro_before h3,
.intro_after h3 {
  color: #fff;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .intro_before h3,
  .intro_after h3 {
    font-size: 1.813em;
    letter-spacing: 0.034em;
    padding: 0.655em 1.379em;
    border-radius: 1.724em;
    top: -1.103em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_before h3,
  .intro_after h3 {
    font-size: 4.8vw;
    letter-spacing: 0.133vw;
    padding: 3.333vw 7.333vw;
    border-radius: 6.667vw;
    top: -5.333vw;
  }
}
.intro_before p,
.intro_after p {
  text-align: center;
  font-weight: bold;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .intro_before p,
  .intro_after p {
    font-size: 1.5em;
    height: 4.583em;
    line-height: 1.583em;
    letter-spacing: 0.042em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_before p,
  .intro_after p {
    font-size: 4vw;
    height: 20.533vw;
    line-height: 7.467vw;
    letter-spacing: 0.133vw;
  }
}
.intro_before p span,
.intro_after p span {
  color: #f77726;
}
.intro_before {
  position: relative;
}
.intro_before h3 {
  background-color: #808080;
}
.intro_before h3:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #808080 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .intro_before h3:after {
    border-width: 0.414em 0.379em 0 0.379em;
    bottom: -0.414em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_before h3:after {
    border-width: 2.267vw 2.133vw 0 2.133vw;
    bottom: -1.867vw;
  }
}
.intro_before::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .intro_before::after {
    background-image: url("../img/intro_el01.png");
    width: 4.438em;
    height: 8.125em;
    top: 16.438em;
    right: -4.438em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_before::after {
    background-image: url("../img/intro_el01_sp.png");
    width: 21.867vw;
    height: 14.4vw;
    bottom: -11.2vw;
  }
}
.intro_after h3 {
  background-color: #f77726;
}
.intro_after h3:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #f77726 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .intro_after h3:after {
    border-width: 0.414em 0.379em 0 0.379em;
    bottom: -0.414em;
  }
}
@media only screen and (max-width: 768px) {
  .intro_after h3:after {
    border-width: 2.267vw 2.133vw 0 2.133vw;
    bottom: -1.867vw;
  }
}

.reason {
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason {
    background: url("../img/reason_bg.jpg") no-repeat 50% 0%, #fff;
    background-size: 125em 92.438em, auto;
    padding-bottom: 6.875em;
  }
}
@media only screen and (max-width: 768px) {
  .reason {
    background: url("../img/reason_bg_sp.jpg") no-repeat 50% 0, #fff;
    background-size: 100vw 339.467vw, auto;
    padding-bottom: 15.2vw;
  }
}
.reason::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 9;
}
@media only screen and (min-width: 769px) {
  .reason::before {
    background-image: url("../img/reason_el05.png");
    width: 3.375em;
    height: 3.875em;
    top: -1.438em;
  }
}
@media only screen and (max-width: 768px) {
  .reason::before {
    background-image: url("../img/reason_el05_sp.png");
    width: 10.133vw;
    height: 11.733vw;
    top: -4.267vw;
  }
}
.reason_tit01 {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .reason_tit01 {
    padding-top: 4.625em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit01 {
    padding-top: 15.467vw;
  }
}
.reason_tit01 h1 {
  color: #1a1a1a;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_tit01 h1 {
    font-size: 2.75em;
    line-height: 1.75em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit01 h1 {
    text-align: center;
    font-size: 6.667vw;
    line-height: 9.067vw;
  }
}
.reason_tit01 h1 span {
  color: #f77726;
}
.reason_tit01 h1::before,
.reason_tit01 h1::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media only screen and (max-width: 768px) {
  .reason_tit01 h1::before,
  .reason_tit01 h1::after {
    top: 1.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_tit01 h1::before {
    background-image: url("../img/reason_line01.png");
    width: 0.409em;
    height: 2.682em;
    left: -0.909em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit01 h1::before {
    background-image: url("../img/reason_line01_sp.png");
    width: 3.467vw;
    height: 23.333vw;
    left: -8.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_tit01 h1::after {
    background-image: url("../img/reason_line02.png");
    width: 0.409em;
    height: 2.682em;
    right: -0.909em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit01 h1::after {
    background-image: url("../img/reason_line02_sp.png");
    width: 3.467vw;
    height: 23.333vw;
    right: -8.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_tit01 img {
    width: 6em;
    margin-top: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit01 img {
    width: 16.667vw;
    margin-top: 2.667vw;
  }
}
.reason_lists {
  display: flex;
  justify-content: center;
  background-color: #fff;
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .reason_lists {
    padding: 1.375em 0;
    width: 62.5em;
    margin-top: 2.5em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_lists {
    align-items: center;
    flex-direction: column;
    width: 74.667vw;
    margin-top: 6.133vw;
  }
}
.reason_lists li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_lists li {
    width: 20.875em;
    height: 18em;
    border-right: 0.063em dotted #808080;
  }
}
@media only screen and (max-width: 768px) {
  .reason_lists li {
    width: 74.667vw;
    padding: 8.4vw 0;
    border-bottom: 0.133vw dotted #808080;
  }
}
.reason_lists li:last-child {
  border-right: unset;
  border-bottom: unset;
}
@media only screen and (min-width: 769px) {
  .reason_lists li img {
    width: 12em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_lists li img {
    width: 40vw;
  }
}
.reason_lists li p {
  text-align: center;
  color: #1a1a1a;
  font-weight: bold;
}
@media only screen and (min-width: 769px) {
  .reason_lists li p {
    font-size: 1.75em;
    line-height: 1.429em;
    margin-top: 0.714em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_lists li p {
    font-size: 5.333vw;
    line-height: 8.267vw;
    margin-top: 5.333vw;
  }
}
.reason_lists li::after {
  position: absolute;
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .reason_lists li::after {
    width: 1.75em;
    height: 9.188em;
    top: -0.375em;
    left: 1.063em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_lists li::after {
    width: 5.333vw;
    height: 29.333vw;
    top: 6.267vw;
    left: 8.933vw;
  }
}
.reason_lists li:nth-child(1)::after {
  background-image: url("../img/reason_num01.png");
}
.reason_lists li:nth-child(2)::after {
  background-image: url("../img/reason_num02.png");
}
.reason_lists li:nth-child(3)::after {
  background-image: url("../img/reason_num03.png");
}
.reason_tit02 {
  display: flex;
  position: relative;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_tit02 {
    margin-top: 3.625em;
    gap: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit02 {
    margin-top: 13.333vw;
  }
}
.reason_tit02 h1 {
  text-align: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_tit02 h1 {
    font-size: 1.875em;
    letter-spacing: 0.067em;
    top: 0.667em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit02 h1 {
    font-size: 4.8vw;
    line-height: 9.333vw;
    top: -2vw;
  }
}
.reason_tit02 h1 span {
  font-size: 110%;
  position: relative;
  color: #f77726;
}
.reason_tit02 h1 span:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  background-color: #f77726;
}
@media only screen and (min-width: 769px) {
  .reason_tit02 h1 span:before {
    width: 0.167em;
    height: 0.167em;
    border-radius: 0.333em;
    top: -0.167em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit02 h1 span:before {
    width: 0.8vw;
    height: 0.8vw;
    border-radius: 1.333vw;
    top: -0.4vw;
  }
}
.reason_tit02 h1 b {
  font-size: 130%;
  position: relative;
  color: #f77726;
}
.reason_tit02 h1 b:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  background-color: #f77726;
}
@media only screen and (min-width: 769px) {
  .reason_tit02 h1 b:before {
    width: 0.167em;
    height: 0.167em;
    border-radius: 0.333em;
    top: -0.1em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit02 h1 b:before {
    width: 0.8vw;
    height: 0.8vw;
    border-radius: 1.333vw;
    top: -0.4vw;
  }
}
.reason_tit02::before,
.reason_tit02::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .reason_tit02::before,
  .reason_tit02::after {
    background-image: url("../img/reason_line03.png");
    width: 2.063em;
    height: 3.938em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_tit02::before,
  .reason_tit02::after {
    background-image: url("../img/reason_line03_sp.png");
    width: 9.867vw;
    height: 18.933vw;
  }
}
.reason_tit02::after {
  transform: scaleX(-1);
}
@media only screen and (min-width: 769px) {
  .reason .slick-slide {
    width: 65.625em !important;
    height: 57.5em !important;
    margin: 0 1.25em !important;
  }
}
@media only screen and (max-width: 768px) {
  .reason .slick-slide {
    width: 89.333vw !important;
    height: 160vw !important;
    margin: 0 6vw !important;
  }
}
.reason .slick-prev {
  display: block;
  position: absolute;
  z-index: 1000;
}
@media only screen and (min-width: 769px) {
  .reason .slick-prev {
    top: 55%;
    width: 4rem;
    height: 4rem;
    left: -3%;
  }
}
@media only screen and (max-width: 768px) {
  .reason .slick-prev {
    top: 53%;
    width: 9vw;
    height: 9vw;
    left: -5%;
  }
}
.reason .slick-next {
  display: block;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .reason .slick-next {
    top: 55%;
    width: 4rem;
    height: 4rem;
    right: -3%;
  }
}
@media only screen and (max-width: 768px) {
  .reason .slick-next {
    top: 53%;
    width: 9vw;
    height: 9vw;
    right: -5%;
  }
}
@media only screen and (min-width: 769px) {
  .reason_slider {
    padding-top: 1.375em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_slider {
    padding-top: 2.667vw;
  }
}
.reason_s-tit {
  background-color: #f77726;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: auto;
  position: relative;
  z-index: 1;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (min-width: 769px) {
  .reason_s-tit {
    height: 5.313em;
    border-radius: 3.125em;
    gap: 0.75em;
    padding: 0 0.688em 0 1.938em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-tit {
    height: 16vw;
    border-radius: 8vw;
    gap: 4vw;
    padding: 0 2vw 0 4.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_s-tit img:nth-child(1) {
    width: 3.313em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-tit img:nth-child(1) {
    width: 9.6vw;
  }
}
.reason_s-tit p:nth-child(2) {
  color: #ffffff;
  font-weight: bold;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .reason_s-tit p:nth-child(2) {
    font-size: 1.875em;
    letter-spacing: 0.1em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-tit p:nth-child(2) {
    font-size: 4.267vw;
    line-height: 5.333vw;
    letter-spacing: 0.267vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_s-tit img:nth-child(3) {
    width: 4.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-tit img:nth-child(3) {
    width: 12vw;
  }
}
.reason_s-tit:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #f77726 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .reason_s-tit:after {
    border-width: 0.75em 0.688em 0 0.688em;
    bottom: -0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-tit:after {
    border-width: 2.267vw 2.133vw 0 2.133vw;
    bottom: -1.867vw;
  }
}
.reason_s-inner {
  background-color: #fff;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_s-inner {
    width: 65.625em;
    height: 54.75em;
    border-radius: 1.25em;
    border: 0.188em solid #f78f41;
    top: -2.563em;
    padding: 4.625em 4.625em 2.75em;
    -webkit-border-radius: 1.25em;
    -moz-border-radius: 1.25em;
    -ms-border-radius: 1.25em;
    -o-border-radius: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-inner {
    width: 89.333vw;
    height: 150.667vw;
    border-radius: 2.667vw;
    border: 0.4vw solid #f78f41;
    top: -7.6vw;
    padding: 14.667vw 4.8vw 8.533vw 4.8vw;
  }
}
.reason_s-before {
  background-color: #dcf4f5;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_s-before {
    height: 18.438em;
    padding-top: 1.563em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-before {
    height: 45.333vw;
    padding-top: 4.8vw;
  }
}
.reason_s-before:after {
  content: "";
  display: inline-block;
  background-image: url("../img/reason_el03.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .reason_s-before:after {
    width: 1.75em;
    height: 2.813em;
    top: 16.938em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-before:after {
    width: 6.133vw;
    height: 10.667vw;
    top: 40.8vw;
  }
}
.reason_s-after {
  background-color: #ffffd4;
}
@media only screen and (min-width: 769px) {
  .reason_s-after {
    height: 23.75em;
    padding-top: 2.188em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-after {
    height: 68vw;
    padding-top: 9.333vw;
  }
}
.reason_s-annual {
  background-color: #f77726;
  text-align: center;
  color: #ffffff;
}
@media only screen and (min-width: 769px) {
  .reason_s-annual {
    height: 5em;
    padding-top: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-annual {
    height: 13.333vw;
    padding-top: 3.067vw;
  }
}
@media only screen and (min-width: 769px) {
  .reason_s-annual h1 {
    font-size: 1.875em;
    letter-spacing: 0.063em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_s-annual h1 {
    font-size: 4.8vw;
    letter-spacing: 0.133vw;
  }
}
.reason_s-annual h1 span {
  font-size: 150%;
}
.reason_b-list {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_b-list {
    gap: 2.188em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list {
    gap: 5.6vw;
  }
}
.reason_b-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li {
    width: 15.313em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li {
    width: 19.333vw;
  }
}
.reason_b-list li h1 {
  color: #fff;
  background-color: #49c2c8;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li h1 {
    font-size: 1.25em;
    width: 7.6em;
    padding: 0.2em 0;
    letter-spacing: 0.05em;
    border-radius: 1.5em;
    -webkit-border-radius: 1.5em;
    -moz-border-radius: 1.5em;
    -ms-border-radius: 1.5em;
    -o-border-radius: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li h1 {
    font-size: 2.667vw;
    width: 16vw;
    padding: 3 75000vw 0;
    line-height: 3.2vw;
    letter-spacing: 0.133vw;
    border-radius: 4vw;
  }
}
.reason_b-list li h2 {
  color: #333333;
  text-align: center;
  font-weight: normal;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li h2 {
    font-size: 1.125em;
    padding: 0.625em 0 1.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li h2 {
    font-size: 2.133vw;
    line-height: 2.8vw;
    padding: 1.067vw 0 1.333vw;
  }
}
.reason_b-list li div {
  background-color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li div {
    width: 13.75em;
    height: 6.25em;
    border-radius: 0.625em;
    gap: 0.625em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li div {
    width: 22.667vw;
    height: 10.667vw;
    border-radius: 1.333vw;
    gap: 1.333vw;
    -webkit-border-radius: 1.333vw;
    -moz-border-radius: 1.333vw;
    -ms-border-radius: 1.333vw;
    -o-border-radius: 1.333vw;
  }
}
.reason_b-list li div p:nth-child(1) {
  display: inline-block;
  color: #ffffff;
  background-color: #939393;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li div p:nth-child(1) {
    font-size: 1.25em;
    width: 4.5em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li div p:nth-child(1) {
    font-size: 2.133vw;
    width: 9.333vw;
  }
}
.reason_b-list li div p:nth-child(2) {
  font-weight: bold;
  color: #203a72;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li div p:nth-child(2) {
    font-size: 2.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li div p:nth-child(2) {
    font-size: 3.333vw;
  }
}
.reason_b-list li div p:nth-child(2) span {
  font-size: 90%;
}
.reason_b-list li::after {
  content: "";
  display: inline-block;
  background-image: url("../img/reason_el01.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li::after {
    width: 1.75em;
    height: 1.75em;
    top: 7.25em;
    left: 15.625em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li::after {
    width: 1.867vw;
    height: 1.867vw;
    top: 15.733vw;
    left: 21.333vw;
  }
}
.reason_b-list li:nth-last-child(1)::after {
  content: none;
}
.reason_b-list li:nth-child(1) h2 {
  align-self: flex-end;
}
.reason_b-list li:nth-child(1) h2::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-image: url("../img/reason_el02.png");
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .reason_b-list li:nth-child(1) h2::after {
    width: 2.5em;
    height: 2.5em;
    left: -1.25em;
    top: 1.438em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-list li:nth-child(1) h2::after {
    width: 5.333vw;
    height: 5.333vw;
    left: 0vw;
    top: 4vw;
  }
}
.reason_b-total {
  text-align: center;
  color: #203a72;
}
@media only screen and (min-width: 769px) {
  .reason_b-total {
    font-size: 2.375em;
    padding-top: 0.526em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-total {
    font-size: 7.2vw;
    padding-top: 3.333vw;
  }
}
.reason_b-total span {
  font-size: 75%;
}
.reason_b-total span:nth-child(1) {
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .reason_b-total span:nth-child(1) {
    margin-right: 0.263em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_b-total span:nth-child(1) {
    margin-right: 1.333vw;
  }
}
.reason_a-tit {
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .reason_a-tit {
    width: 26.375em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-tit {
    width: 56.267vw;
  }
}
.reason_a-list {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_a-list {
    gap: 2.188em;
    margin-top: 1.25em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list {
    gap: 5.6vw;
    margin-top: 4vw;
  }
}
.reason_a-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li {
    width: 15.313em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li {
    width: 19.333vw;
  }
}
.reason_a-list li h1 {
  color: #fff;
  background-color: #f77726;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li h1 {
    font-size: 1.25em;
    width: 7.6em;
    padding: 0.2em 0;
    letter-spacing: 0.05em;
    border-radius: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li h1 {
    font-size: 2.667vw;
    width: 16vw;
    padding: 3 75000vw 0;
    line-height: 3.333vw;
    letter-spacing: 0.133vw;
    border-radius: 4vw;
  }
}
.reason_a-list li h2 {
  color: #333333;
  text-align: center;
  font-weight: normal;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li h2 {
    font-size: 1.125em;
    padding: 0.625em 0 1.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li h2 {
    font-size: 2.133vw;
    line-height: 2.8vw;
    padding: 1.067vw 0 1.333vw;
  }
}
.reason_a-list li div {
  background-color: #fed17c;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li div {
    width: 13.75em;
    height: 6.25em;
    border-radius: 0.625em;
    gap: 0.625em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li div {
    width: 22.667vw;
    height: 10.667vw;
    border-radius: 1.333vw;
    gap: 1.333vw;
    -webkit-border-radius: 1.333vw;
    -moz-border-radius: 1.333vw;
    -ms-border-radius: 1.333vw;
    -o-border-radius: 1.333vw;
  }
}
.reason_a-list li div p:nth-child(1) {
  display: inline-block;
  color: #f73137;
  background-color: #ffffff;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li div p:nth-child(1) {
    font-size: 1.25em;
    width: 4.5em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li div p:nth-child(1) {
    font-size: 2.133vw;
    width: 9.333vw;
  }
}
.reason_a-list li div p:nth-child(2) {
  font-weight: bold;
  color: #f73137;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li div p:nth-child(2) {
    font-size: 2.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li div p:nth-child(2) {
    font-size: 3.333vw;
  }
}
.reason_a-list li div p:nth-child(2) span {
  font-size: 90%;
}
.reason_a-list li::after {
  content: "";
  display: inline-block;
  background-image: url("../img/reason_el04.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li::after {
    width: 1.75em;
    height: 1.75em;
    top: 7.25em;
    left: 15.625em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li::after {
    width: 1.867vw;
    height: 1.867vw;
    top: 15.733vw;
    left: 21.333vw;
  }
}
.reason_a-list li:nth-last-child(1)::after {
  content: none;
}
.reason_a-list li:nth-child(1) h2 {
  align-self: flex-end;
}
.reason_a-list li:nth-child(1) h2::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-image: url("../img/reason_el02.png");
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .reason_a-list li:nth-child(1) h2::after {
    width: 2.5em;
    height: 2.5em;
    left: -1.25em;
    top: 1.438em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-list li:nth-child(1) h2::after {
    width: 5.333vw;
    height: 5.333vw;
    left: 0vw;
    top: 4vw;
  }
}
.reason_a-price {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .reason_a-price {
    gap: 0.75em;
    margin-top: 1.125em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-price {
    flex-direction: column;
    gap: 1.6vw;
    margin-top: 4vw;
  }
}
.reason_a-discount {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .reason_a-discount {
    font-size: 1.625em;
    gap: 0.692em;
    top: 0.077em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-discount {
    flex-direction: column;
    font-size: 4.267vw;
    gap: 2.4vw;
    top: 0.133vw;
  }
}
.reason_a-discount:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
}
@media only screen and (min-width: 769px) {
  .reason_a-discount:after {
    border-color: transparent transparent transparent #f73137;
    border-width: 0.438em 0 0.438em 0.688em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-discount:after {
    border-color: #f73137 transparent transparent transparent;
    border-width: 2vw 1.467vw 0 1.467vw;
  }
}
.reason_a-total {
  text-align: center;
  color: #f73137;
}
@media only screen and (min-width: 769px) {
  .reason_a-total {
    display: inline;
    background-position: left -100% center;
    background-repeat: repeat-x;
    background: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0) 70%,
      rgb(254, 216, 74) 70%,
      rgb(254, 216, 74) 100%,
      rgba(255, 255, 255, 0) 100%
    );
    font-size: 2.375em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-total {
    font-size: 6.4vw;
  }
}
.reason_a-total span {
  font-size: 75%;
}
.reason_a-total span:nth-child(1) {
  color: #f73137;
}
@media only screen and (min-width: 769px) {
  .reason_a-total span:nth-child(1) {
    margin-right: 0.263em;
  }
}
@media only screen and (max-width: 768px) {
  .reason_a-total span:nth-child(1) {
    margin-right: 1.333vw;
  }
}

@media only screen and (min-width: 769px) {
  .service {
    background: url("../img/service_bg.jpg") no-repeat 50% bottom, #fff;
    background-size: 125em 75.313em, auto;
  }
}
@media only screen and (max-width: 768px) {
  .service {
    padding-bottom: 12%;
    background: url("../img/service_bg_sp.jpg") no-repeat 50% bottom, #fff;
    background-size: 100vw 208.933vw, auto;
  }
}
.service .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .service_tit {
    width: 33.813em;
  }
}
@media only screen and (max-width: 768px) {
  .service_tit {
    width: 86.533vw;
  }
}
@media only screen and (min-width: 769px) {
  .service_img {
    width: 62.5em;
    margin-top: 2.875em;
  }
}
@media only screen and (max-width: 768px) {
  .service_img {
    width: 89.333vw;
    margin-top: 8vw;
  }
}
.service_info {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .service_info {
    padding: 2.813em 0 3.125em;
  }
}
@media only screen and (max-width: 768px) {
  .service_info {
    padding: 8.267vw 0 9.867vw;
  }
}
.service_info h1 {
  color: #fff;
  background-color: #f77726;
  display: inline-block;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .service_info h1 {
    font-size: 1.438em;
    width: 41.478em;
    padding: 0.522em 0;
    border-radius: 2.609em;
    letter-spacing: 0.087em;
  }
}
@media only screen and (max-width: 768px) {
  .service_info h1 {
    font-size: 4.533vw;
    width: 89.333vw;
    padding: 2.933vw 0;
    border-radius: 9.333vw;
    line-height: 6.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .service_info p {
    font-size: 1.125em;
    width: 51.667em;
    letter-spacing: 0.111em;
    line-height: 1.778em;
    padding-top: 1.222em;
  }
}
@media only screen and (max-width: 768px) {
  .service_info p {
    font-size: 3.733vw;
    width: 84vw;
    letter-spacing: 0.133vw;
    line-height: 7.467vw;
    padding-top: 5.333vw;
  }
}
.service_info p span {
  color: #f77726;
  font-weight: bold;
}
.service_info p span b {
  background-color: #feefb3;
}
@media only screen and (min-width: 769px) {
  .service_sec {
    width: 62.5em;
    border-radius: 0.75em;
    margin-bottom: 2.313em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec {
    width: 89.333vw;
    border-radius: 2.4vw;
    margin-bottom: 6.667vw;
  }
}
.service_sec--int {
  background-color: #dbf4f5;
}
@media only screen and (min-width: 769px) {
  .service_sec--int {
    border: 0.188em solid #49c8ce;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--int {
    border: 0.4vw solid #49c8ce;
  }
}
.service_sec--int .service_sub {
  background-color: #49c8ce;
}
.service_sec--int .service_sub:after {
  border-color: #49c8ce transparent transparent transparent;
}
.service_sec--int .service_list li {
  color: #49c8ce;
}
.service_sec--gasenergy {
  background-color: #ffe7e7;
}
@media only screen and (min-width: 769px) {
  .service_sec--gasenergy {
    border: 0.188em solid #f74141;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--gasenergy {
    border: 0.4vw solid #f74141;
  }
}
.service_sec--gasenergy .service_sub {
  background-color: #f74141;
}
.service_sec--gasenergy .service_sub:after {
  border-color: #f74141 transparent transparent transparent;
}
.service_sec--gasenergy .service_list li {
  color: #f74141;
}
.service_sec--energy {
  background-color: #fde9d9;
}
@media only screen and (min-width: 769px) {
  .service_sec--energy {
    border: 0.188em solid #f78f41;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--energy {
    border: 0.4vw solid #f78f41;
  }
}
.service_sec--energy .service_sub {
  background-color: #f78f41;
}
.service_sec--energy .service_sub:after {
  border-color: #f78f41 transparent transparent transparent;
}
.service_sec--energy .service_list li {
  color: #f78f41;
}
.service_sec--gas {
  background-color: #fae0da;
}
@media only screen and (min-width: 769px) {
  .service_sec--gas {
    border: 0.188em solid #f47255;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--gas {
    border: 0.4vw solid #f47255;
  }
}
.service_sec--gas .service_sub {
  background-color: #f47255;
}
.service_sec--gas .service_sub:after {
  border-color: #f47255 transparent transparent transparent;
}
.service_sec--gas .service_list li {
  color: #f47255;
}
.service_sec--water {
  margin-bottom: unset;
  background-color: #dbeaf4;
}
@media only screen and (min-width: 769px) {
  .service_sec--water {
    border: 0.188em solid #4997c8;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--water {
    border: 0.4vw solid #4997c8;
  }
}
.service_sec--water .service_sub {
  background-color: #4997c8;
}
.service_sec--water .service_sub:after {
  border-color: #4997c8 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .service_sec--water .service_list {
    padding: 1.625em 0 1.375em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--water .service_list {
    padding: 4vw 0 5.067vw;
  }
}
.service_sec--water .service_list li {
  color: #4997c8;
}
@media only screen and (min-width: 769px) {
  .service_sec--water .service_list li {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .service_sec--water .service_list li {
    width: 76.8vw;
  }
}
.service_sub {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .service_sub {
    gap: 1.125em;
    height: 4.375em;
    border-top-left-radius: 0.375em;
    border-top-right-radius: 0.375em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sub {
    gap: 4.667vw;
    height: 17.333vw;
    border-top-left-radius: 1.333vw;
    border-top-right-radius: 1.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .service_sub img {
    width: 2.188em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sub img {
    width: 8vw;
  }
}
.service_sub h1 {
  color: #ffffff;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .service_sub h1 {
    font-size: 1.75em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sub h1 {
    font-size: 4.267vw;
    line-height: 6.133vw;
  }
}
.service_sub:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
}
@media only screen and (min-width: 769px) {
  .service_sub:after {
    border-width: 0.75em 0.688em 0 0.688em;
    bottom: -0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .service_sub:after {
    border-width: 2.133vw 2vw 0 2vw;
    bottom: -2vw;
  }
}
.service_list {
  display: flex;
  margin: auto;
  flex-wrap: wrap;
}
@media only screen and (min-width: 769px) {
  .service_list {
    gap: 0.625em;
    padding-top: 2em;
    width: 57.5em;
  }
}
@media only screen and (max-width: 768px) {
  .service_list {
    gap: 2.667vw;
    padding-top: 6.133vw;
    width: 76.8vw;
  }
}
.service_list li {
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: bold;
}
@media only screen and (min-width: 769px) {
  .service_list li {
    font-size: 1.094em;
    width: 12.654em;
    height: 2.72em;
  }
}
@media only screen and (max-width: 768px) {
  .service_list li {
    font-size: 3.467vw;
    line-height: 6.133vw;
    width: 37.067vw;
    height: 11.2vw;
  }
}
.service_note {
  text-align: center;
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .service_note {
    font-size: 1.125em;
    padding: 1.444em 0 1.222em;
  }
}
@media only screen and (max-width: 768px) {
  .service_note {
    font-size: 3.733vw;
    padding: 4vw 0 5.067vw;
  }
}

@media only screen and (min-width: 769px) {
  .move {
    background: url("../img/move_bg.jpg") no-repeat top center, #6dd3d8;
    background-size: 125em 15.125em, auto;
    padding: 15.125em 0 5.25em;
  }
}
@media only screen and (max-width: 768px) {
  .move {
    background: url("../img/move_bg_sp.jpg") no-repeat top center, #6dd3d8;
    background-size: 100vw 37.333vw, auto;
    padding: 37.333vw 0 16vw;
  }
}
.move_wrap {
  background-color: #fee892;
  margin: auto;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .move_wrap {
    width: 60em;
    height: 20.875em;
    border-radius: 1em;
    padding: 2.875em 18.75em 0 3.125em;
    box-shadow: rgba(0, 0, 0, 0.1) 0.063em 0.063em 0.25em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 82.667vw;
    height: 118.667vw;
    border-radius: 2.667vw;
    padding: 8vw 5.333vw 0;
    box-shadow: rgba(0, 0, 0, 0.1) 0.267vw 0.267vw 0.8vw;
  }
}
.move_wrap h1 {
  font-weight: normal;
}
@media only screen and (min-width: 769px) {
  .move_wrap h1 {
    font-size: 1.875em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap h1 {
    text-align: center;
    font-size: 4.8vw;
    line-height: 6.667vw;
  }
}
.move_wrap h2 {
  color: #f77726;
  display: inline-block;
}
@media only screen and (min-width: 769px) {
  .move_wrap h2 {
    font-size: 2.75em;
    margin-top: 0.318em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap h2 {
    text-align: center;
    font-size: 7.2vw;
    margin-top: 2.4vw;
  }
}
.move_wrap h2 span {
  background-color: #ffffff;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .move_wrap h2 span {
    margin-bottom: 2.133vw;
  }
}
.move_wrap p {
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .move_wrap p {
    font-size: 1.125em;
    line-height: 1.778em;
    letter-spacing: 0.056em;
    margin-top: 1.556em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap p {
    font-size: 3.733vw;
    line-height: 7.2vw;
    letter-spacing: 0.133vw;
    margin-top: 5.333vw;
  }
}
.move_wrap p b {
  color: #f77726;
}
.move_wrap::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .move_wrap::after {
    background-image: url("../img/move_el01.png");
    width: 14.5em;
    height: 17.5em;
    top: 2.688em;
    right: 3.625em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap::after {
    background-image: url("../img/move_el01_sp.png");
    width: 25.333vw;
    height: 31.2vw;
    bottom: 6.667vw;
    right: 9.333vw;
  }
}
.move_wrap::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 769px) {
  .move_wrap::before {
    background-image: url("../img/move_el02.png");
    width: 5.125em;
    height: 2.813em;
    bottom: -1.875em;
  }
}
@media only screen and (max-width: 768px) {
  .move_wrap::before {
    background-image: url("../img/move_el02_sp.png");
    width: 17.067vw;
    height: 9.467vw;
    bottom: -6.133vw;
  }
}
.move_lists {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .move_lists {
    gap: 1.438em;
    margin-top: 11.563em;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists {
    flex-direction: column;
    gap: 29.067vw;
    margin-top: 36.667vw;
  }
}
.move_lists li {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .move_lists li {
    width: 19.75em;
    height: 27.5em;
    border-radius: 1em;
    box-shadow: rgba(0, 0, 0, 0.1) 0.25em 0.25em 0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists li {
    width: 89.333vw;
    border-radius: 2.667vw;
    padding: 28.667vw 0 10.667vw;
    box-shadow: rgba(0, 0, 0, 0.1) 0.533vw 0.533vw 1.6vw;
  }
}
.move_lists li img:nth-child(1) {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .move_lists li img:nth-child(1) {
    width: 15em;
    height: 15em;
    border-radius: 15em;
    box-shadow: rgba(0, 0, 0, 0.1) 0.063em 0.063em 0.25em;
    top: -7.5em;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists li img:nth-child(1) {
    width: 44.933vw;
    height: 44.933vw;
    border-radius: 44.933vw;
    box-shadow: rgba(0, 0, 0, 0.1) 0.267vw 0.267vw 0.8vw;
    top: -22.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .move_lists li img:nth-child(2) {
    width: 16.25em;
    padding-top: 9.375em;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists li img:nth-child(2) {
    width: 57.333vw;
  }
}
.move_lists li h2 {
  text-align: center;
  color: #f77726;
}
@media only screen and (min-width: 769px) {
  .move_lists li h2 {
    font-size: 1.625em;
    line-height: 1.538em;
    padding: 0.615em 0;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists li h2 {
    font-size: 5.6vw;
    line-height: 8.8vw;
    padding: 4vw 0;
  }
}
.move_lists li p {
  text-align: center;
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .move_lists li p {
    font-size: 1.125em;
    line-height: 1.778em;
  }
}
@media only screen and (max-width: 768px) {
  .move_lists li p {
    font-size: 3.733vw;
    line-height: 7.2vw;
  }
}

.voice {
  background-color: #fff7db;
}
@media only screen and (min-width: 769px) {
  .voice {
    padding: 4.375em 0;
  }
}
@media only screen and (max-width: 768px) {
  .voice {
    padding: 10.667vw 0 15.733vw;
  }
}
.voice .inner_ctx {
  max-width: 920px;
}
.voice_tit {
  background-color: #f77726;
  margin: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .voice_tit {
    width: 18.75em;
    padding: 0.5em 0;
    border-radius: 5.625em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_tit {
    width: 56vw;
    padding: 1.867vw 0;
    border-radius: 12vw;
  }
}
.voice_tit h1 {
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .voice_tit h1 {
    font-size: 2em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_tit h1 {
    font-size: 5.867vw;
  }
}
.voice_tit:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #f77726 transparent transparent transparent;
}
@media only screen and (min-width: 769px) {
  .voice_tit:after {
    border-width: 0.75em 0.688em 0 0.688em;
    bottom: -0.75em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_tit:after {
    border-width: 2.133vw 2vw 0 2vw;
    bottom: -2vw;
  }
}
@media only screen and (min-width: 769px) {
  .voice_slider {
    margin-top: 2.5em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_slider {
    margin-top: 8vw;
  }
}
@media only screen and (min-width: 769px) {
  .voice .slick-slide {
    width: 18.375em !important;
    height: 23.875em !important;
    margin: 0 0.625em !important;
  }
}
@media only screen and (max-width: 768px) {
  .voice .slick-slide {
    width: 89.067vw !important;
    height: 85.333vw !important;
    margin: 0 6vw !important;
  }
}
.voice .slick-prev {
  display: block;
  position: absolute;
  z-index: 1000;
}
@media only screen and (min-width: 769px) {
  .voice .slick-prev {
    top: 55%;
    width: 4rem;
    height: 4rem;
    left: -6%;
  }
}
@media only screen and (max-width: 768px) {
  .voice .slick-prev {
    top: 53%;
    width: 9vw;
    height: 9vw;
    left: -5%;
  }
}
.voice .slick-next {
  display: block;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .voice .slick-next {
    top: 55%;
    width: 4rem;
    height: 4rem;
    right: -6%;
  }
}
@media only screen and (max-width: 768px) {
  .voice .slick-next {
    top: 53%;
    width: 9vw;
    height: 9vw;
    right: -5%;
  }
}
.voice_s-inner {
  position: relative;
  background-color: #fee892;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .voice_s-inner {
    width: 18.375em;
    height: 23.875em;
    border-radius: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_s-inner {
    width: 89.067vw;
    height: 85.333vw;
    border-radius: 2.133vw;
  }
}
.voice_s-tit {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .voice_s-tit {
    gap: 1em;
    padding: 1.625em 0 0.938em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_s-tit {
    gap: 3.467vw;
    padding: 6.133vw 0 3.467vw;
  }
}
@media only screen and (min-width: 769px) {
  .voice_s-tit img {
    width: 5em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_s-tit img {
    width: 21.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .voice_s-tit p {
    font-size: 1.375em;
    line-height: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_s-tit p {
    font-size: 4.267vw;
    line-height: 6.933vw;
  }
}
.voice_s-detail {
  margin: auto;
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .voice_s-detail {
    font-size: 1.125em;
    line-height: 1.667em;
    border-top: 0.111em solid #4d4d4d;
    width: 13.889em;
    padding-top: 1.333em;
  }
}
@media only screen and (max-width: 768px) {
  .voice_s-detail {
    font-size: 3.733vw;
    line-height: 7.2vw;
    border-top: 0.267vw solid #4d4d4d;
    width: 69.867vw;
    padding-top: 5.333vw;
  }
}

@media only screen and (min-width: 769px) {
  .schedule {
    background: url("../img/schedule_bg.jpg") no-repeat 50% 0%;
    background-size: 125em;
    height: 112.75em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule {
    background: url("../img/schedule_bg_sp.jpg") no-repeat 50% 0;
    background-size: 100vw auto;
    height: 528vw;
  }
}
.schedule_tit {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 769px) {
  .schedule_tit {
    top: 4.375em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_tit {
    top: 12vw;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_tit img {
    width: 52.5em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_tit img {
    width: 90.4vw;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_tit p {
    font-size: 1.5em;
    padding-top: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_tit p {
    text-align: center;
    font-size: 4.533vw;
    line-height: 8.533vw;
    letter-spacing: 0.267vw;
    padding-top: 8.933vw;
  }
}
.schedule_sec {
  position: absolute;
}
.schedule_sec h1 {
  color: #49c8ce;
}
@media only screen and (min-width: 769px) {
  .schedule_sec h1 {
    font-size: 1.625em;
    line-height: 1.538em;
    padding-left: 0.462em;
    padding-bottom: 0.769em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_sec h1 {
    font-size: 4.267vw;
    line-height: 7.2vw;
    padding-bottom: 3.467vw;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_sec p {
    font-size: 1.125em;
    line-height: 1.778em;
    letter-spacing: 0.056em;
    width: 25em;
    padding-left: 0.462em;
    padding-top: 1.111em;
    border-top: 0.111em solid #49c8ce;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_sec p {
    font-size: 3.733vw;
    line-height: 7.2vw;
    width: 72vw;
    letter-spacing: 0.133vw;
    padding-top: 3.467vw;
    border-top: 0.4vw solid #49c8ce;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_sec--01 {
    top: 29.375em;
    left: 33.75em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_sec--01 {
    top: 162.667vw;
    left: 16.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_sec--02 {
    top: 55.625em;
    left: 3.438em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_sec--02 {
    top: 312vw;
    left: 11.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .schedule_sec--03 {
    top: 88.125em;
    left: 33.75em;
  }
}
@media only screen and (max-width: 768px) {
  .schedule_sec--03 {
    top: 441.333vw;
    left: 16.667vw;
  }
}

.qna {
  background-color: #fff7db;
}
@media only screen and (min-width: 769px) {
  .qna {
    padding: 7.5em 0;
  }
}
@media only screen and (max-width: 768px) {
  .qna {
    padding: 19.333vw 0;
  }
}
.qna .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.qna_tit {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .qna_tit img {
    width: 12em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_tit img {
    width: 27.333vw;
  }
}
.qna_tit h1 {
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .qna_tit h1 {
    font-size: 1.625em;
    padding-top: 0.385em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_tit h1 {
    font-size: 3.733vw;
    padding-top: 2.133vw;
  }
}
.qna_wrapper {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 769px) {
  .qna_wrapper {
    gap: 1.875em;
    margin-top: 3.75em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_wrapper {
    gap: 4.933vw;
    margin-top: 10vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_container {
    width: 62.5em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_container {
    width: 89.333vw;
  }
}
.qna_question {
  display: flex;
  align-items: center;
  cursor: pointer;
  background-color: #f77726;
}
@media only screen and (min-width: 769px) {
  .qna_question {
    width: 62.5em;
    padding: 1.563em 3.75em;
    border-radius: 6.25em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question {
    width: 89.333vw;
    height: 18.667vw;
    padding: 0 2.267vw 0 4.667vw;
    border-radius: 13.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_question div:nth-of-type(1) {
    width: 2.688em;
    margin-right: 1.375em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question div:nth-of-type(1) {
    width: 7.333vw;
    margin-right: 1.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_question div:nth-of-type(1) img {
    width: 2.438em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question div:nth-of-type(1) img {
    width: 6.267vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_question div:nth-of-type(2) {
    width: 51.188em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question div:nth-of-type(2) {
    width: 69.867vw;
  }
}
.qna_question div:nth-of-type(2) h2 {
  line-height: 1.4;
  color: #ffffff;
}
@media only screen and (min-width: 769px) {
  .qna_question div:nth-of-type(2) h2 {
    font-size: 1.5em;
    letter-spacing: 0.063em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question div:nth-of-type(2) h2 {
    font-size: 4.267vw;
    line-height: 6.667vw;
  }
}
.qna_question div:nth-of-type(3) {
  transition: all 0.4s ease-in-out;
}
@media only screen and (min-width: 769px) {
  .qna_question div:nth-of-type(3) {
    width: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_question div:nth-of-type(3) {
    width: 3.2vw;
  }
}
.qna_answer {
  display: flex;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .qna_answer {
    align-items: center;
    padding: 1.313em 2.75em 0.25em 2.75em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_answer {
    padding: 4vw 3.733vw 1.333vw 3.733vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_answer div:nth-of-type(1) {
    margin-right: 1.375em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_answer div:nth-of-type(1) {
    margin-right: 1.867vw;
  }
}
@media only screen and (min-width: 769px) {
  .qna_answer div:nth-of-type(1) img {
    width: 3em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_answer div:nth-of-type(1) img {
    width: 8vw;
  }
}
.qna_answer div:nth-of-type(2) p {
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .qna_answer div:nth-of-type(2) p {
    font-size: 1.125em;
    line-height: 1.778em;
  }
}
@media only screen and (max-width: 768px) {
  .qna_answer div:nth-of-type(2) p {
    font-size: 3.733vw;
    line-height: 7.2vw;
  }
}

.arrow-rotate {
  transform: rotate(0.5turn);
}

.flow {
  background-color: #fee892;
}
@media only screen and (min-width: 769px) {
  .flow {
    padding-bottom: 4.375em;
  }
}
@media only screen and (max-width: 768px) {
  .flow {
    padding-bottom: 14vw;
  }
}
.flow .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
}
@media only screen and (min-width: 769px) {
  .flow_tit {
    width: 45.063em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_tit {
    width: 96.133vw;
  }
}
.flow_lists {
  display: flex;
  justify-items: center;
}
@media only screen and (min-width: 769px) {
  .flow_lists {
    gap: 4.125em;
    margin-top: 3.125em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists {
    flex-direction: column;
    gap: 13.333vw;
    margin-top: 11.333vw;
  }
}
.flow_lists li {
  position: relative;
  display: flex;
  justify-items: center;
}
@media only screen and (min-width: 769px) {
  .flow_lists li {
    flex-direction: column;
    gap: 1.75em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists li {
    align-items: center;
    gap: 5.333vw;
  }
}
.flow_lists li span {
  font-weight: bold;
  text-align: center;
  background-color: #fff;
  color: #f77726;
  z-index: 1;
}
@media only screen and (min-width: 769px) {
  .flow_lists li span {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.75em;
    width: 1.714em;
    height: 1.714em;
    border-radius: 1.714em;
    padding-top: 0.393em;
    top: -0.893em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists li span {
    position: absolute;
    font-size: 5.333vw;
    width: 9.067vw;
    height: 9.067vw;
    border-radius: 9.067vw;
    padding-top: 2vw;
    top: -4.8vw;
    left: 13.467vw;
  }
}
@media only screen and (min-width: 769px) {
  .flow_lists li img {
    width: 11.875em;
    height: 11.875em;
    border-radius: 11.875em;
    box-shadow: rgba(0, 0, 0, 0.1) 0.063em 0.063em 0.25em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists li img {
    width: 35.467vw;
    height: 35.467vw;
    border-radius: 35.467vw;
    box-shadow: rgba(0, 0, 0, 0.1) 0.267vw 0.267vw 0.8vw;
  }
}
.flow_lists li p {
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .flow_lists li p {
    font-size: 1.375em;
    line-height: 1.636em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists li p {
    width: 40vw;
    font-size: 4.267vw;
    line-height: 7.2vw;
  }
}
.flow_lists li:after {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
}
@media only screen and (min-width: 769px) {
  .flow_lists li:after {
    border-color: transparent transparent transparent #f77726;
    border-width: 1.125em 0 1.125em 1.125em;
    top: 4.875em;
    left: 13.563em;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lists li:after {
    border-color: #f77726 transparent transparent transparent;
    border-width: 4vw 4vw 0 4vw;
    bottom: -6.667vw;
  }
}
.flow_lists li:nth-last-child(1):after {
  content: none;
}

.inquiry {
  background-color: #6dd3d8;
}
@media only screen and (min-width: 769px) {
  .inquiry {
    background: url("../img/inquiry_bg.jpg") no-repeat 50% bottom, #6dd3d8;
    background-size: 125em 19.25em, auto;
    padding: 4.688em 0 5.625em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry {
    background: url("../img/inquiry_bg_sp.jpg") no-repeat 50% bottom, #6dd3d8;
    background-size: 100vw 50.533vw, auto;
    padding: 13.733vw 0 20.8vw;
  }
}
.inquiry .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry_tit {
    width: 24em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry_tit {
    width: 61.333vw;
  }
}
.inquiry_wrap {
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .inquiry_wrap {
    width: 54.063em;
    border-radius: 1em;
    padding: 3.75em 4.375em 5em;
    margin-top: 2.938em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry_wrap {
    width: 89.333vw;
    border-radius: 2.667vw;
    padding: 8.667vw 6vw 13.867vw;
    margin-top: 5.867vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry form {
    width: 45em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry form {
    margin: auto;
    width: 77.333vw;
  }
}
.inquiry tr {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 769px) {
  .inquiry tr {
    padding-bottom: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr {
    padding-bottom: 6.4vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr:nth-last-child(1) {
    padding-top: 1.5em;
  }
}
.inquiry tr th {
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .inquiry tr th {
    margin-bottom: 1.333vw;
  }
}
.inquiry tr th p {
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .inquiry tr th p {
    font-size: 1.25em;
    line-height: 1.6em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr th p {
    font-size: 4vw;
    line-height: 6.667vw;
  }
}
.inquiry tr th .remark {
  position: absolute;
  right: 0;
  color: #333333;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .inquiry tr th .remark {
    top: 25%;
    font-size: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr th .remark {
    bottom: 20%;
    font-size: 2.933vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td {
    width: 45em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td {
    width: 77.333vw;
  }
}
.inquiry tr td input,
.inquiry tr td textarea,
.inquiry tr td select {
  display: block;
  width: 100%;
  background-color: #ececec;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td input,
  .inquiry tr td textarea,
  .inquiry tr td select {
    font-size: 1.125em;
    border-radius: 0.278em;
    line-height: 2.5em;
    border: 0.056em solid #939393;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td input,
  .inquiry tr td textarea,
  .inquiry tr td select {
    font-size: 3.6vw;
    border-radius: 0.8vw;
    line-height: 11.467vw;
    border: 0.133vw solid #cccccc;
    -webkit-border: 0.133vw solid #939393;
  }
}
.inquiry tr td input:focus,
.inquiry tr td textarea:focus,
.inquiry tr td select:focus {
  outline: none;
}
.inquiry tr td input {
  padding: 0.1em 0.6em;
}
.inquiry tr td select {
  padding: 0.1em 0.6em;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #ececec;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td select {
    min-height: 2.813em;
    -webkit-min-height: 2.813em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td select {
    min-height: 13.333vw;
    -webkit-min-height: 13.333vw;
  }
}
.inquiry tr td textarea {
  font-family: inherit;
  line-height: 1.8;
  padding: 0.1em 0.6em;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td textarea {
    min-height: 9.375em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td textarea {
    min-height: 37.333vw;
  }
}
.inquiry tr td .grid {
  display: flex;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .grid {
    gap: 2em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .grid {
    flex-direction: column;
  }
}
.inquiry tr td .short {
  position: relative;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .short {
    width: 21.5em;
    margin-top: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .short {
    width: 77.333vw;
    margin-bottom: 5.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .short.nyukyobi {
    margin-top: 3.375em;
  }
  .inquiry tr td .short.nyukyobi:before {
    content: "";
    position: absolute;
    top: -1.25em;
    display: inline-block;
    width: 210%;
    border-top: 3px dotted #ddd;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .short.nyukyobi {
    margin-top: 12vw;
  }
  .inquiry tr td .short.nyukyobi:before {
    content: "";
    position: absolute;
    top: -4vw;
    display: inline-block;
    width: 100%;
    border-top: 3px dotted #ddd;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .short p {
    font-size: 1.125em;
    margin-bottom: 0.556em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .short p {
    font-size: 4vw;
    margin-bottom: 3.067vw;
  }
}
.inquiry tr td .short .remark {
  position: absolute;
  right: 0;
  color: #333333;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .short .remark {
    top: 2%;
    font-size: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .short .remark {
    top: 4%;
    font-size: 2.933vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .time-wrapper {
    margin-top: 0.938em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .time-wrapper {
    margin-top: 4vw;
  }
}
.inquiry tr td .time {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .time {
    gap: 0.938em 0;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .time {
    flex-direction: column;
    gap: 4vw;
  }
}
.inquiry tr td .time .time-inner label {
  background-color: #ececec;
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .time .time-inner label {
    width: 21.375em;
    padding-left: 1em;
    border-radius: 0.313em;
    line-height: 2.813em;
    border: 0.063em solid #939393;
    min-height: 3.25em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .time .time-inner label {
    border: 0.133vw solid #cccccc;
    padding-left: 4.667vw;
    border-radius: 0.8vw;
    min-height: 13.333vw;
    -webkit-min-height: 13.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .time .time-inner label p {
    font-size: 1.125em;
    padding-left: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .time .time-inner label p {
    font-size: 3.733vw;
    padding-left: 3.733vw;
  }
}
.inquiry tr td .time .time-inner input[type="checkbox"] {
  width: unset; /* IE */ /* FF */ /* Safari and Chrome */ /* Opera */
  transform: scale(1.5);
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap {
    width: 45em;
    border: 0.063em solid #939393;
    border-radius: 0.313em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap {
    width: 77.333vw;
    border: 0.133vw solid #939393;
    border-radius: 0.8vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap:nth-of-type(1) {
    margin-top: 0.813em;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap:nth-of-type(1) .checkbox {
    border-top-right-radius: 0.313em;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap:nth-of-type(2) {
    margin-top: 1.438em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap:nth-of-type(2) {
    margin-top: 6.667vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap:nth-last-child(1) .checkbox {
    border-bottom-right-radius: 0.313em;
  }
}
.inquiry tr td .check-wrap .check-inner {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner {
    border-bottom: 0.063em solid #939393;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner {
    flex-direction: column;
  }
}
.inquiry tr td .check-wrap .check-inner:nth-last-child(1) {
  border-bottom: unset;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .title {
    width: 12.813em;
    padding-left: 1.375em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .title {
    width: 77.067vw;
    padding: 4.933vw 3.2vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .title p {
    font-size: 1.125em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .title p {
    font-size: 3.733vw;
  }
}
.inquiry tr td .check-wrap .check-inner .checkbox {
  background-color: #ececec;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .checkbox {
    padding: 1em 0;
    border-left: 0.063em solid #939393;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .checkbox {
    padding: 2.667vw 0;
    width: 76.8vw;
  }
}
.inquiry tr td .check-wrap .check-inner .checkbox label {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .checkbox label {
    width: 32.188em;
    padding-left: 2em;
    min-height: 2.5em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .checkbox label {
    padding-left: 4.8vw;
    min-height: 9.333vw;
    -webkit-min-height: 9.333vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .checkbox label p {
    font-size: 1.125em;
    padding-left: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .checkbox label p {
    font-size: 3.733vw;
    padding-left: 3.2vw;
  }
}
.inquiry tr td .check-wrap .check-inner .checkbox input[type="checkbox"] {
  width: unset; /* IE */ /* FF */ /* Safari and Chrome */ /* Opera */
  transform: scale(1.5);
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .setting {
    padding: 0.688em 0 1.75em;
    border-left: 0.063em solid #939393;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .setting {
    padding: 0vw 0 9.333vw;
  }
}
.inquiry tr td .check-wrap .check-inner .setting p {
  position: relative;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .check-wrap .check-inner .setting p {
    font-size: 1.125em;
    padding-left: 1em;
    line-height: 1.222em;
    top: 0.556em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .check-wrap .check-inner .setting p {
    font-size: 3.733vw;
    padding-left: 4vw;
    line-height: 5.333vw;
    top: 5.333vw;
  }
}
.inquiry tr td .check-wrap .check-inner .setting p span {
  display: inline-block;
  font-size: 80%;
}
.inquiry tr td .note {
  text-indent: -1em;
  padding-left: 1em;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .note {
    margin-top: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .note {
    margin-top: 3.333vw;
  }
}
.inquiry tr td .note li {
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .inquiry tr td .note li {
    font-size: 0.875em;
    line-height: 1.429em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry tr td .note li {
    font-size: 2.933vw;
    line-height: 4.267vw;
  }
}
.inquiry .privacy {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy {
    width: 45em;
    margin-top: 3.125em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy {
    width: 77.333vw;
    margin-top: 4vw;
  }
}
.inquiry .privacy h1 {
  font-weight: 300;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy h1 {
    font-size: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy h1 {
    font-size: 3.467vw;
    line-height: 6.4vw;
  }
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy h2 {
    font-size: 0.875em;
    margin: 1.286em 0;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy h2 {
    font-size: 3.467vw;
    margin: 3.467vw 0;
  }
}
.inquiry .privacy .checkbox label {
  display: flex;
}
.inquiry .privacy .checkbox label input {
  transform: scale(1.5);
}
.inquiry .privacy .checkbox label p {
  padding-left: 1em;
}
.inquiry .privacy .checkbox label p a {
  color: #000;
  text-decoration: underline;
}
.inquiry .privacy .detail {
  background-color: #ececec;
  overflow-y: scroll;
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy .detail {
    border: 0.056em solid #939393;
    width: 45em;
    height: 6.875em;
    padding: 1.25em;
    border-radius: 0.313em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy .detail {
    border: 0.133vw solid #cccccc;
    width: 77.333vw;
    height: 42.667vw;
    padding: 5.333vw;
    border-radius: 0.8vw;
  }
}
.inquiry .privacy .detail b,
.inquiry .privacy .detail p {
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy .detail b,
  .inquiry .privacy .detail p {
    font-size: 0.875em;
    line-height: 1.286em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy .detail b,
  .inquiry .privacy .detail p {
    font-size: 3.467vw;
    line-height: 6.4vw;
  }
}
.inquiry .privacy .detail b {
  display: inline-block;
}
@media only screen and (min-width: 769px) {
  .inquiry .privacy .detail b {
    margin-bottom: 0.714em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .privacy .detail b {
    margin-bottom: 4vw;
  }
}
.inquiry .required,
.inquiry .optional {
  display: block;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.inquiry .required::after,
.inquiry .optional::after {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  font-weight: normal;
}
@media only screen and (min-width: 769px) {
  .inquiry .required::after,
  .inquiry .optional::after {
    font-size: 0.688em;
    width: 3.273em;
    height: 1.636em;
    border-radius: 0.455em;
    right: -4.182em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .required::after,
  .inquiry .optional::after {
    font-size: 2.933vw;
    width: 9.333vw;
    height: 4.533vw;
    border-radius: 0.4vw;
    right: -12vw;
  }
}
.inquiry .required::after {
  content: "必須";
  background: #f75137;
}
.inquiry .optional::after {
  content: "任意";
  background: #808080;
}
.inquiry .submit-area {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .inquiry .submit-area {
    width: 45em;
    margin-top: 3em;
    gap: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .submit-area {
    flex-direction: column;
    margin-top: 8vw;
    gap: 4vw;
  }
}
.inquiry .btn_confirmation {
  display: block;
  text-indent: -9999px;
  border: none;
  cursor: pointer;
}
@media only screen and (min-width: 769px) {
  .inquiry .btn_confirmation {
    background: url("../img/form_btn.png") no-repeat center/100%;
    width: 32.5em;
    height: 5.625em;
  }
}
@media only screen and (max-width: 768px) {
  .inquiry .btn_confirmation {
    background: url("../img/form_btn_sp.png") no-repeat center/100%;
    width: 73.333vw;
    height: 17.333vw;
  }
}

.thanks {
  background-color: #6dd3d8;
  height: 100vh;
}
@media only screen and (min-width: 769px) {
  .thanks {
    background: url("../img/inquiry_bg.jpg") no-repeat 50% bottom, #6dd3d8;
    background-size: 125em 19.25em, auto;
    padding: 4.688em 0 5.625em;
  }
}
@media only screen and (max-width: 768px) {
  .thanks {
    background: url("../img/inquiry_bg_sp.jpg") no-repeat 50% bottom, #6dd3d8;
    background-size: 100vw 50.533vw, auto;
    padding: 13.733vw 0 20.8vw;
  }
}
.thanks .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.thanks_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .thanks_wrap {
    width: 54.063em;
    border-radius: 1em;
    padding: 3.75em 4.375em 5em;
  }
}
@media only screen and (max-width: 768px) {
  .thanks_wrap {
    width: 89.333vw;
    border-radius: 2.667vw;
    padding: 8.667vw 6vw 13.867vw;
  }
}
.thanks_wrap h1 {
  color: #49c8ce;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .thanks_wrap h1 {
    font-size: 2.125em;
    letter-spacing: 0.029em;
    padding-bottom: 0.471em;
    border-bottom: 0.118em solid #49c8ce;
  }
}
@media only screen and (max-width: 768px) {
  .thanks_wrap h1 {
    font-size: 6.133vw;
    line-height: 8.533vw;
    letter-spacing: 0.133vw;
    padding-bottom: 1.867vw;
    border-bottom: 0.933vw solid #49c8ce;
  }
}
.thanks_wrap p {
  text-align: center;
  color: #1a1a1a;
}
@media only screen and (min-width: 769px) {
  .thanks_wrap p {
    font-size: 1.125em;
    line-height: 2em;
    letter-spacing: 0.056em;
    margin-top: 2.389em;
  }
}
@media only screen and (max-width: 768px) {
  .thanks_wrap p {
    font-size: 3.733vw;
    line-height: 7.2vw;
    letter-spacing: 0.133vw;
    margin-top: 9.333vw;
  }
}
.thanks .btn_close {
  display: block;
  text-indent: -9999px;
  border: none;
  cursor: pointer;
}
@media only screen and (min-width: 769px) {
  .thanks .btn_close {
    background: url("../img/form_close.png") no-repeat center/100%;
    width: 19.125em;
    height: 4.75em;
    margin-top: 3.75em;
  }
}
@media only screen and (max-width: 768px) {
  .thanks .btn_close {
    background: url("../img/form_close_sp.png") no-repeat center/100%;
    width: 66.667vw;
    height: 17.333vw;
    margin-top: 10.667vw;
  }
}

.bottom_tit {
  text-align: center;
  background-color: #fee480;
}
@media only screen and (min-width: 769px) {
  .bottom_tit {
    font-size: 1.25em;
    padding: 0.625em 0;
  }
}
@media only screen and (max-width: 768px) {
  .bottom_tit {
    font-size: 4vw;
    line-height: 6.933vw;
    padding: 4.667vw 0;
  }
}
.bottom .inner_ctx {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .bottom .inner_ctx {
    padding: 2.313em 0;
  }
}
@media only screen and (max-width: 768px) {
  .bottom .inner_ctx {
    padding: 7.067vw 0;
  }
}
@media only screen and (min-width: 769px) {
  .bottom_logo {
    width: 16.25em;
  }
}
@media only screen and (max-width: 768px) {
  .bottom_logo {
    width: 48.267vw;
  }
}
.bottom_lists {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .bottom_lists {
    margin: 1.75em 0;
  }
}
@media only screen and (max-width: 768px) {
  .bottom_lists {
    margin: 5.867vw 0;
  }
}
.bottom_lists li a {
  color: #333333;
}
@media only screen and (min-width: 769px) {
  .bottom_lists li a {
    font-size: 1.125em;
    border-right: 0.056em solid #333333;
    padding: 0 2em;
  }
}
@media only screen and (max-width: 768px) {
  .bottom_lists li a {
    font-size: 4vw;
    border-right: 0.133vw solid #333333;
    padding: 0 4.667vw;
  }
}
.bottom_lists li:nth-last-child(1) a {
  border-right: none;
}
.bottom_copy {
  color: #4d4d4d;
}
@media only screen and (min-width: 769px) {
  .bottom_copy {
    font-size: 0.875em;
  }
}
@media only screen and (max-width: 768px) {
  .bottom_copy {
    font-size: 2.933vw;
  }
}



.overlay {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
}
.pop-up{
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.pop-up_area{
  background: url(../img/popup_bg.png)no-repeat;
  width: calc(85vh * 670 / 1076);
  height: 85vh;
  background-size: contain;
  background-position: center;
  position: relative;
}
@media only screen and (max-width: 599px) {
  .pop-up_area{
    width: 80vw;
    height: auto;
  }
}
.pop-up_close{
  position: absolute;
  right: 5px;
  top:5px;
  width: 35px;
  height: auto;
  z-index: 1;
  cursor: pointer;
}
.pop-up_btn {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(85vh * 670 / 1076);
}
.pop-up_btn a{
  width: 50%;
  cursor: pointer;
}
.pop-up_btn a:hover{
  opacity: 0.8;
}

@media only screen and (max-width: 599px) {
  .pop-up_area{
    width: 85vw;
    height: calc(85vw * 1076 / 670);
  }
  .pop-up_btn{
    width: 85vw;
  }
}
