@charset "UTF-8";
/* =======================================
 reset
======================================= */
html {
  -webkit-text-size-adjust: 100%;
}

header, footer, main, nav, section, small, div, p, a, span, h1, h2, h3, h4, h5, dl, dt, dd, ul, ol, li {
  box-sizing: border-box;
  font-size: 100%;
  margin: 0;
  padding: 0;
}

ul, ol {
  list-style: none;
}

/* =======================================
 base style
======================================= */
body {
  background: #fff;
  color: #333;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, Osaka, sans-serif;
  line-height: 1;
  margin: auto;
  padding: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1200px) {
  body {
    font-size: 20px;
    min-width: 1200px;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 3.733vw;
  }
}

img {
  vertical-align: bottom;
  width: 100%;
}

a {
  color: #333;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  a:hover {
    transition: all 0.5s;
    opacity: 0.8;
  }
}

.wrapper {
  overflow: hidden;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .none-pc {
    display: none !important;
  }
  /*
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
  */
}
@media screen and (max-width: 767px) {
  .none-sp {
    display: none !important;
  }
  .overlay {
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer;
    display: block;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    transition: all 0.5s ease;
    visibility: hidden;
    width: 100%;
    z-index: 110;
  }
  .menu-btn {
    background: rgb(92, 182, 118);
    cursor: pointer;
    display: block;
    -webkit-filter: drop-shadow(0.357em 0.357em 0.357em rgba(0, 0, 0, 0.15));
            filter: drop-shadow(0.357em 0.357em 0.357em rgba(0, 0, 0, 0.15));
    height: 3.571em;
    position: fixed;
    right: 0;
    top: 0;
    width: 3.929em;
    z-index: 120;
  }
  .menu-btn span {
    background: #fff;
    border-radius: 0.107em;
    display: block;
    height: 0.214em;
    left: 0.893em;
    position: absolute;
    transition: all 0.3s ease;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    width: 2.143em;
  }
  .menu-btn span:nth-of-type(1) {
    top: 0.929em;
  }
  .menu-btn span:nth-of-type(2) {
    top: 1.429em;
  }
  .menu-btn span:nth-of-type(3) {
    top: 1.929em;
  }
  .menu-btn span:nth-of-type(4) {
    top: 2.429em;
  }
  .menu {
    background: #fff;
    left: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    padding: 4.714em 1.429em 0.643em;
    position: fixed;
    top: -100%;
    transition: all 0.5s linear;
    width: 100%;
    z-index: 110;
  }
  .menu-list {
    font-size: 107.143%;
    font-weight: bold;
    text-align: center;
  }
  .menu-list li {
    margin-bottom: 0.667em;
  }
  .menu-list a {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2027.63542%2027.63542%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23fff%3B%7D.cls-2%7Bfill%3Anone%3Bstroke%3A%235cb676%3Bstroke-miterlimit%3A10%3Bstroke-width%3A2px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2213.81771%22%20cy%3D%2213.81771%22%20r%3D%2213.81771%22%2F%3E%3Cpolyline%20class%3D%22cls-2%22%20points%3D%2210.856%205.52%2018.642%2013.306%2010.856%2021.092%22%2F%3E%3C%2Fsvg%3E") no-repeat rgb(92, 182, 118);
    background-position: 20.4em 50%;
    background-size: 0.921em auto;
    color: #fff;
    display: block;
    padding: 0.833em 0;
  }
  .is-menu-open .overlay {
    background-color: rgba(0, 0, 0, 0.3);
    visibility: visible;
  }
  .is-menu-open .menu-btn span:nth-of-type(1) {
    -webkit-transform: translateY(0.75em) rotate(-45deg);
            transform: translateY(0.75em) rotate(-45deg);
  }
  .is-menu-open .menu-btn span:nth-of-type(2), .is-menu-open .menu-btn span:nth-of-type(3) {
    opacity: 0;
  }
  .is-menu-open .menu-btn span:nth-of-type(4) {
    -webkit-transform: translateY(-0.75em) rotate(45deg);
            transform: translateY(-0.75em) rotate(45deg);
  }
  .is-menu-open .menu {
    top: 0;
  }
}
@media screen and (min-width: 768px) {
  .gnav {
    background: rgb(92, 182, 118);
    left: 0;
    position: sticky;
    top: 0;
    width: 100%;
    z-index: 100;
  }
  .gnav ul {
    display: -ms-flex;
    display: flex;
    -ms-justify-content: space-between;
    justify-content: space-between;
  }
  .gnav a {
    display: block;
  }
  .gnav a:hover {
    background: rgba(255, 255, 255, 0.2);
  }
}
.container {
  position: relative;
}
@media screen and (min-width: 768px) {
  .container {
    margin: auto;
    width: 83.333%;
    max-width: 1000px;
  }
}

.pagetop {
  position: fixed;
  z-index: 100;
}
.pagetop.is-scrolled {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .pagetop {
    bottom: 2em;
    -webkit-filter: drop-shadow(0.23em 0.23em 0.23em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.23em 0.23em 0.23em rgba(102, 102, 102, 0.3));
    right: 2em;
    width: 7.4em;
  }
  .pagetop.is-scrolled {
    bottom: inherit;
    top: -3.3em;
  }
}
@media screen and (max-width: 767px) {
  .pagetop {
    bottom: 1.071em;
    -webkit-filter: drop-shadow(0.166em 0.166em 0.166em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.166em 0.166em 0.166em rgba(102, 102, 102, 0.3));
    right: 1.321em;
    width: 5.25em;
  }
  .pagetop.is-scrolled {
    bottom: inherit;
    top: -3.571em;
  }
}

@media screen and (max-width: 767px) {
  .lp .pagetop {
    bottom: 6.429em;
  }
}

.footer {
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer {
    background: url(../img/share/footer_bg_pc.jpg) 50% 0 no-repeat rgb(228, 255, 194);
    background-size: 100em auto;
    padding: 1.8em 0 4.5em;
  }
}
@media screen and (max-width: 767px) {
  .footer {
    background: url(../img/share/footer_bg_sp.jpg) 0 0/100% auto no-repeat rgb(228, 255, 194);
    padding: 2.75em 0 2.143em;
  }
}

.footer-main {
  background: #fff;
}
@media screen and (min-width: 768px) {
  .footer-main {
    border-radius: 0.6em;
    display: -ms-flex;
    display: flex;
    -ms-justify-content: space-between;
    justify-content: space-between;
    margin: 0 auto 2em;
    padding: 1.75em 0 1.25em 3.25em;
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .footer-main {
    margin: 0 auto 1.429em;
    padding: 1.429em 1.25em;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .footer-adr {
    padding-top: 0.5em;
    width: 16.5em;
  }
}
@media screen and (max-width: 767px) {
  .footer-adr {
    margin-bottom: 1.429em;
  }
}

@media screen and (min-width: 768px) {
  .footer-logo {
    margin-bottom: 1.3em;
    width: 14.55em;
  }
}
@media screen and (max-width: 767px) {
  .footer-logo {
    margin: 0 auto 0.714em;
    width: 10.393em;
  }
}

@media screen and (min-width: 768px) {
  .footer-adr-txt {
    font-size: 80%;
    line-height: 1.75;
  }
}
@media screen and (max-width: 767px) {
  .footer-adr-txt {
    line-height: 1.64;
  }
}

@media screen and (min-width: 768px) {
  .footer-contact {
    width: 21.8em;
  }
}

@media screen and (min-width: 768px) {
  .footer-contact-txt {
    font-size: 100%;
    line-height: 1.5;
    margin-bottom: 1.2em;
    width: 20em;
  }
}
@media screen and (max-width: 767px) {
  .footer-contact-txt {
    font-size: 128.571%;
    line-height: 1.44;
    margin-bottom: 1.111em;
    text-align: center;
  }
}

.footer-contact-tel dt, .footer-contact-tel dd {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .footer-contact-tel dt {
    font-size: 100%;
    margin-bottom: 0.5em;
  }
  .footer-contact-tel dd {
    font-size: 210%;
    margin-bottom: 0.476em;
  }
}
@media screen and (max-width: 767px) {
  .footer-contact-tel {
    text-align: center;
  }
  .footer-contact-tel dt {
    color: rgb(238, 0, 68);
    font-size: 114.286%;
    line-height: 1.625;
    margin-bottom: 0.5em;
  }
  .footer-contact-tel dd {
    font-size: 171.429%;
    margin: 0 auto 0.521em;
    text-align: center;
    width: 12.5em;
  }
  .footer-contact-tel dd a {
    background: url(../img/share/icon_tel.svg) no-repeat rgb(238, 0, 68);
    background-position: 1.354em 50%;
    background-size: 1.342em auto;
    border-radius: 1.042em;
    color: #fff;
    display: block;
    box-shadow: 0.104em 0.104em 0.104em rgba(102, 102, 102, 0.3);
    padding: 0.521em 0 0.438em;
    text-indent: 1.771em;
  }
}

@media screen and (min-width: 768px) {
  .footer-contact-notes {
    font-size: 80%;
    line-height: 1.625;
  }
}
@media screen and (max-width: 767px) {
  .footer-contact-notes {
    line-height: 1.64;
    text-align: center;
  }
}

.footer-nav {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .footer-nav {
    font-size: 100%;
    margin-bottom: 1.5em;
    text-align: center;
  }
  .footer-nav a:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width: 767px) {
  .footer-nav {
    margin: 0 auto 0.893em;
    text-align: center;
    width: 81.333%;
  }
}

@media screen and (min-width: 768px) {
  .footer-navlist {
    display: -ms-flex;
    display: flex;
    -ms-justify-content: center;
    justify-content: center;
    margin-bottom: 1.3em;
  }
  .footer-navlist li:not(:last-child) {
    border-right: 1px solid #333;
  }
  .footer-navlist a {
    padding: 0 1em;
  }
}
@media screen and (max-width: 767px) {
  .footer-navlist {
    margin-bottom: 1.964em;
  }
  .footer-navlist li:not(:last-child) {
    border-bottom: 1px solid #333;
  }
  .footer-navlist a {
    display: block;
    padding: 0.643em 0;
  }
}

.footer-link a {
  position: relative;
}
.footer-link a::before {
  background: url(../img/share/icon_link.svg) 50% 50%/contain no-repeat;
  content: "";
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .footer-link a::before {
    height: 1em;
    margin-right: 0.25em;
    width: 1.05em;
  }
}
@media screen and (max-width: 767px) {
  .footer-link a::before {
    height: 1em;
    margin-right: 0.429em;
    width: 0.857em;
  }
}

.copyright {
  display: block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .copyright {
    font-size: 90%;
  }
}
@media screen and (max-width: 767px) {
  .copyright {
    font-size: 85.714%;
  }
}

@media screen and (min-width: 768px) {
  .fv {
    background: url(../img/lp/fv2022_bg.jpg) 50% 0 no-repeat rgb(245, 188, 183);
    background-size: 100em auto;
    height: 30em;
  }
  .fv .container {
    padding-top: 3.35em;
  }
}
@media screen and (max-width: 767px) {
  .fv {
    background: url(../img/lp/fv2022_bg_sp.jpg) 0 0/100% 100% no-repeat;
    height: 38.143em;
  }
  .fv .container {
    padding-top: 4.286em;
  }
}

@media screen and (min-width: 768px) {
  .fv-txt01 {
    margin: 0 auto 1.1em 38%;
    width: 42.8%;
  }
}
@media screen and (max-width: 767px) {
  .fv-txt01 {
    margin: 0 auto 1.536em;
    width: 18.357em;
  }
}

@media screen and (min-width: 768px) {
  .fv-txt02 {
    left: 38%;
    position: absolute;
    top: 23.3em;
    width: 44.9%;
  }
}
@media screen and (max-width: 767px) {
  .fv-txt02 {
    margin: 0 auto 0.929em;
    width: 17.5em;
  }
}

@media screen and (min-width: 768px) {
  .fv-txt03 {
    margin: 0 auto 3.7em 38%;
    width: 45.4%;
  }
}
@media screen and (max-width: 767px) {
  .fv-txt03 {
    margin: 0 auto 7.857em 4.643em;
    width: 17.643em;
  }
}

@media screen and (min-width: 768px) {
  .fv-txt04 {
    margin: 0 1% 0 auto;
    width: 42%;
  }
}
@media screen and (max-width: 767px) {
  .fv-txt04 {
    margin: 0 auto 0 0.571em;
    width: 25.607em;
  }
}

.intro {
  background: url(../img/lp/intro_bg_pc.png) no-repeat;
}
@media screen and (min-width: 768px) {
  .intro {
    background-position: 50% 3.4em;
    background-size: 82% auto;
    padding: 7em 0 3.8em;
  }
}
@media screen and (max-width: 767px) {
  .intro {
    background-position: 50% 3.214em;
    background-size: 89.333% auto;
    padding: 6.071em 0 0.857em;
  }
}

.intro-txt {
  font-weight: bold;
  letter-spacing: 0.075em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .intro-txt {
    font-size: 160%;
    line-height: 1.875;
    margin-bottom: 3.281em;
  }
}
@media screen and (max-width: 767px) {
  .intro-txt {
    font-size: 107.143%;
    line-height: 1.94;
    margin: 0 auto 2.4em;
  }
}

.intro-atnt {
  background: rgba(228, 250, 200, 0.5);
  box-shadow: 0.313em 0.313em 0.313em rgba(0, 0, 0, 0.075);
}
.intro-atnt h3 {
  color: #fff;
  text-align: center;
  background: #8cc87c;
}
.intro-atnt-box h4 {
  position: relative;
  border-bottom: 2px solid #000;
}
.intro-atnt-box h4 span {
  font-size: 90%;
}
.intro-atnt-box h4 .ab {
  position: absolute;
}
.intro-atnt-box p {
  margin-bottom: 0.3em;
  line-height: 1.75;
}
.intro-atnt mark {
  color: #ee0044;
  background: none;
}
@media screen and (min-width: 768px) {
  .intro-atnt {
    margin-bottom: 5em;
    padding-bottom: 1px;
  }
  .intro-atnt h3 {
    margin-bottom: 1.25em;
    padding: 0.7em 0;
    font-size: 160%;
  }
  .intro-atnt-box {
    width: 46em;
    margin: 0 auto;
    margin-top: 1.75em;
    margin-bottom: 3em;
  }
  .intro-atnt-box h4 {
    margin-left: 5em;
    margin-bottom: 0.7em;
    padding-bottom: 0.3em;
    font-size: 150%;
    line-height: 1.46;
  }
  .intro-atnt-box h4 .ab {
    left: -5em;
    bottom: 0;
    width: 4.2em;
  }
  .intro-atnt-box p {
    font-size: 100%;
  }
}
@media screen and (max-width: 767px) {
  .intro-atnt {
    width: 24.643em;
    margin: 0 auto 5.179em auto;
    padding-bottom: 0.714em;
    background: #fff;
    line-height: 1.94;
  }
  .intro-atnt h3 {
    margin-bottom: 1.071em;
    padding: 1.2em 0;
    font-size: 146.429%;
    line-height: 1;
  }
  .intro-atnt-box {
    padding: 0 1.071em;
    padding-bottom: 1.786em;
  }
  .intro-atnt-box h4 {
    margin-bottom: 0.7em;
    padding-bottom: 0.8em;
    font-size: 150%;
    line-height: 1.23;
  }
  .intro-atnt-box h4 .ab {
    position: static;
    display: block;
    margin: 0 auto;
    margin-bottom: 0.952em;
    width: 3.571em;
  }
  .intro-atnt-box p {
    font-size: 100%;
    text-align: justify;
  }
}

@media screen and (min-width: 768px) {
  .intro-shl {
    margin: 0 auto 1.5em;
    width: 68.2%;
  }
}
@media screen and (max-width: 767px) {
  .intro-shl {
    margin: 0 auto 1.214em;
    width: 89.333%;
  }
}

.em {
  color: rgb(238, 0, 68);
}

.intro-step-list {
  display: -ms-flex;
  display: flex;
  font-weight: bold;
}
.intro-step-list li {
  background: rgb(247, 244, 244);
  border: solid rgb(140, 200, 124);
  display: block;
}
@media screen and (min-width: 768px) {
  .intro-step-list {
    -ms-justify-content: space-between;
    justify-content: space-between;
  }
  .intro-step-list li {
    border-radius: 0.59em;
    border-width: 2px;
    padding: 1.1em 0 2.6em;
    width: 23.8%;
  }
}
@media screen and (max-width: 767px) {
  .intro-step-list {
    flex-wrap: wrap;
    -ms-justify-content: center;
    justify-content: center;
  }
  .intro-step-list li {
    border-radius: 0.51em;
    border-width: 1.2px;
    margin: 0 0.393em 2.429em;
    padding: 1em 0 1.429em;
    width: 45.333%;
  }
}

@media screen and (min-width: 768px) {
  .intro-step-num {
    margin: 0 auto 1.3em;
    width: 10em;
  }
}
@media screen and (max-width: 767px) {
  .intro-step-num {
    margin: 0 auto 1.214em;
    width: 79.022%;
  }
}

@media screen and (min-width: 768px) {
  .intro-step-img {
    margin: 0 auto 1em;
    width: 10em;
  }
}
@media screen and (max-width: 767px) {
  .intro-step-img {
    margin: 0 auto 1.214em;
    width: 79.022%;
  }
}

.intro-step-txt {
  letter-spacing: 0.02em;
  line-height: 1.8;
  margin: auto;
  text-align: justify;
}
@media screen and (min-width: 768px) {
  .intro-step-txt {
    width: 10.2em;
  }
}
@media screen and (max-width: 767px) {
  .intro-step-txt {
    font-size: 92.857%;
    width: 79.022%;
  }
}

.info {
  margin: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .info {
    padding-bottom: 6.5em;
    width: 88.333%;
    max-width: 1060px;
  }
}
@media screen and (max-width: 767px) {
  .info {
    padding-bottom: 2.857em;
    width: 89.333%;
  }
}

.info-hl {
  border: solid rgb(238, 0, 68);
  border-width: 1px 0;
  color: rgb(238, 0, 68);
  font-weight: bold;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .info-hl {
    font-size: 160%;
    margin: 0 1.563em 0.938em 0;
    padding: 0.563em 0 0.563em 5.313em;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .info-hl {
    font-size: 135.714%;
    line-height: 1.38;
    margin-bottom: 2.053em;
    padding: 0.421em 0;
    text-align: center;
  }
}

.info-deco {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .info-deco {
    right: 2em;
    top: -2.7em;
    width: 8.5em;
  }
}
@media screen and (max-width: 767px) {
  .info-deco {
    right: -0.286em;
    top: 2.714em;
    width: 6.786em;
  }
}

@media screen and (min-width: 768px) {
  .info-inner {
    align-items: flex-start;
    display: -ms-flex;
    display: flex;
    -ms-justify-content: space-between;
    justify-content: space-between;
    padding: 0 1.5em;
  }
}

@media screen and (min-width: 768px) {
  .info-shl {
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 767px) {
  .info-shl {
    font-size: 114.286%;
    margin-bottom: 0.938em;
    text-align: center;
  }
  .info-shl span {
    border-bottom: 0.188em solid #ccc;
    display: inline-block;
    padding: 0 0.5em 0.5em;
  }
}

@media screen and (min-width: 768px) {
  .info-time {
    width: 24.2em;
  }
}
@media screen and (max-width: 767px) {
  .info-time {
    margin-bottom: 1.786em;
  }
}

.info-table {
  border-collapse: separate;
  border-spacing: 0;
  font-weight: bold;
  width: 100%;
}
.info-table th, .info-table td {
  box-sizing: border-box;
  vertical-align: middle;
}
.info-table th {
  border-left: 1px solid #333;
  border-right: 1px solid #999;
}
.info-table td {
  border-right: 1px solid #333;
}
.info-table td:not(:last-child) {
  border-right-style: dotted;
}
.info-table thead th, .info-table thead td {
  background: rgb(140, 200, 124);
  border-top: 1px solid #333;
  color: #fff;
  text-align: center;
}
.info-table tbody th, .info-table tbody td {
  border-bottom: 1px solid #333;
}
.info-table tbody td {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .info-table {
    font-size: 80%;
    margin-bottom: 0.625em;
  }
  .info-table th, .info-table td {
    height: 3.188em;
  }
  .info-table th {
    width: 32%;
  }
  .info-table td {
    width: 9.7142857143%;
  }
  .info-table tbody th {
    padding-left: 0.375em;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .info-table {
    font-size: 78.14%;
    margin-bottom: 1.188em;
  }
  .info-table th, .info-table td {
    height: 3.291em;
    text-align: center;
  }
  .info-table th {
    width: 9.598em;
  }
  .info-table td {
    width: 2.971em;
  }
}

@media screen and (min-width: 768px) {
  .info-notes {
    font-size: 90%;
    line-height: 1.56;
  }
}
@media screen and (max-width: 767px) {
  .info-notes {
    font-size: 85.714%;
  }
}

@media screen and (min-width: 768px) {
  .info-adress {
    padding-top: 1.8em;
    width: 24em;
  }
}

@media screen and (min-width: 768px) {
  .info-txt {
    font-size: 90%;
    line-height: 1.56;
    margin-bottom: 1.333em;
  }
}
@media screen and (max-width: 767px) {
  .info-txt {
    line-height: 1.42;
    margin-bottom: 0.857em;
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .info-btn {
    -webkit-filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
    width: 21.6em;
  }
}
@media screen and (max-width: 767px) {
  .info-btn {
    -webkit-filter: drop-shadow(0.169em 0.169em 0.169em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.169em 0.169em 0.169em rgba(102, 102, 102, 0.3));
  }
}

.step {
  background: #fff;
}

.step-header {
  background: rgb(140, 200, 124);
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.step-header .container::after {
  border-color: rgb(140, 200, 124) transparent transparent;
  border-style: solid;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}
@media screen and (min-width: 768px) {
  .step-header .container {
    padding: 2em 0;
  }
  .step-header .container::after {
    border-width: 1.1em 1.15em 0;
    bottom: -1.05em;
    left: 23.9em;
  }
}
@media screen and (max-width: 767px) {
  .step-header .container {
    padding: 1.429em 0 1.786em;
  }
  .step-header .container::after {
    border-width: 0.786em 0.821em 0;
    bottom: -0.75em;
    left: 46.667%;
  }
}

@media screen and (min-width: 768px) {
  .step-hd-hl {
    font-size: 205%;
    margin-bottom: 0.341em;
  }
}
@media screen and (max-width: 767px) {
  .step-hd-hl {
    font-size: 1.464em;
    margin-bottom: 0.488em;
  }
}

.step-hd-txt {
  letter-spacing: 0.02em;
  line-height: 1.58;
}
@media screen and (min-width: 768px) {
  .step-hd-txt {
    font-size: 175%;
  }
}
@media screen and (max-width: 767px) {
  .step-hd-txt {
    font-size: 125%;
  }
}

@media screen and (min-width: 768px) {
  .step-hd-notes {
    font-size: 110%;
    margin-top: 1.364em;
  }
}
@media screen and (max-width: 767px) {
  .step-hd-notes {
    font-size: 94.286%;
    line-height: 1.435;
    margin-top: 0.379em;
  }
}

.step-hd-img {
  position: absolute;
}

@media screen and (min-width: 768px) {
  .step-main {
    padding: 4em 0 5em;
  }
}
@media screen and (max-width: 767px) {
  .step-main {
    padding: 2.071em 0 1.857em;
  }
}

.step-main-sec {
  background: rgb(226, 129, 147);
}
@media screen and (min-width: 768px) {
  .step-main-sec {
    box-shadow: 0.5em 0.5em 0.5em rgba(0, 0, 0, 0.15);
  }
  .step-main-sec:not(:last-child) {
    margin-bottom: 2.9em;
  }
}
@media screen and (max-width: 767px) {
  .step-main-sec {
    box-shadow: 0.464em 0.464em 0.464em rgba(0, 0, 0, 0.15);
    margin: 0 auto 1.786em;
    width: 92%;
  }
}

.step-main-hl {
  position: relative;
  z-index: 10;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .step-main-hl {
    margin-left: 5.5em;
    padding: 0.8em 0 0.8em 2.5em;
  }
  .step-main-hl .ab {
    position: absolute;
    z-index: 10;
    left: -5.5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 5.5em;
    margin-left: 1.5em;
  }
  .step-main-hl .num {
    margin-right: 1.2em;
    vertical-align: middle;
    width: 2.5em;
  }
}
@media screen and (max-width: 767px) {
  .step-main-hl {
    display: flex;
    align-items: center;
    padding: 0.786em 0;
    padding-left: 0.786em;
  }
  .step-main-hl .ab {
    width: 4.643em;
  }
  .step-main-hl .num {
    width: 2.143em;
    margin: 0 0.714em;
  }
}

@media screen and (min-width: 768px) {
  .step-main-hl-txt {
    font-size: 160%;
    vertical-align: middle;
  }
}
@media screen and (max-width: 767px) {
  .step-main-hl-txt {
    font-size: 150%;
    line-height: 1.3;
  }
}

.step-main-body {
  background: rgb(255, 253, 254);
  position: relative;
}
@media screen and (min-width: 768px) {
  .step-main-body {
    -ms-align-items: flex-start;
    align-items: flex-start;
    display: -ms-flex;
    display: flex;
    padding: 1.5em 0 1.75em 1.95em;
  }
  .step-main-body.type02 {
    -ms-align-items: center;
    padding: 2em 0 1.5em 1.95em;
  }
}
@media screen and (max-width: 767px) {
  .step-main-body {
    padding: 0.893em 1.429em 1.857em;
  }
  .step-main-body.type02 {
    padding: 0.893em 1.429em;
  }
}

@media screen and (min-width: 768px) {
  .step-main-icon {
    margin-right: 1.5em;
    width: 5.1em;
  }
}
@media screen and (max-width: 767px) {
  .step-main-icon {
    left: 1.071em;
    position: absolute;
    top: 1.071em;
    width: 3.357em;
  }
}

@media screen and (max-width: 767px) {
  .step-main-sec.sec02 .step-main-icon {
    top: 1.429em;
  }
}

@media screen and (min-width: 768px) {
  .step-main-shl {
    border-bottom: 2px solid #333;
    font-size: 140%;
    margin-bottom: 0.857em;
    padding-bottom: 0.286em;
  }
}
@media screen and (max-width: 767px) {
  .step-main-shl {
    border-bottom: 1px solid #333;
    font-size: 142.857%;
    line-height: 1.3;
    margin-bottom: 0.75em;
    padding: 0 0 0.6em 2.85em;
  }
}

.step-main-shl02 {
  font-weight: bold;
  border-bottom: 2px solid #333;
}
@media screen and (min-width: 768px) {
  .step-main-shl02 {
    margin-bottom: 0.8em;
    padding-bottom: 0.8em;
    font-size: 140%;
  }
}
@media screen and (max-width: 767px) {
  .step-main-shl02 {
    font-size: 142.857%;
    line-height: 1.3;
    padding: 0 0 0.4em 2.85em;
    margin-bottom: 0.8em;
  }
}

.step-main-box p {
  line-height: 1.75;
}
.step-main-box p span {
  color: #ee0044;
  font-weight: normal;
}
.step-main-box mark {
  color: #ee0044;
  background: none;
}

.step-main-txt .link {
  text-decoration: underline;
}
.step-main-txt p, .step-main-txt li {
  line-height: 1.75;
}
.step-main-txt li::before {
  content: "・";
}
.step-main-txt .mark {
  background: #ff0;
}
@media screen and (min-width: 768px) {
  .step-main-txt {
    width: 38.9em;
  }
}

@media screen and (min-width: 768px) {
  .step-main-img {
    position: absolute;
  }
}

.step-main-sec a {
  display: block;
}
@media screen and (min-width: 768px) {
  .step-main-sec a:hover {
    opacity: 1;
  }
  .step-main-sec a:hover .step-main-hl,
  .step-main-sec a:hover .step-main-icon,
  .step-main-sec a:hover .step-main-desc,
  .step-main-sec a:hover .step-main-img {
    opacity: 0.8;
  }
  .step-main-sec a:hover .link {
    text-decoration: none;
  }
}

@media screen and (min-width: 768px) {
  .items {
    margin-bottom: 2.5em;
  }
}
@media screen and (max-width: 767px) {
  .items {
    margin-bottom: 2em;
  }
}
@media screen and (max-width: 767px) {
  .items.last_item {
    margin-bottom: 3.643em;
  }
}

.items-hl {
  border: solid rgb(238, 0, 68);
  color: rgb(238, 0, 68);
  text-align: center;
}
.items-hl .check {
  vertical-align: bottom;
}
@media screen and (min-width: 768px) {
  .items-hl {
    border-width: 2px 0;
    font-size: 165%;
    margin-bottom: 1.97em;
    padding: 0.303em 0;
  }
  .items-hl .check {
    margin-right: 0.909em;
    width: 0.879em;
  }
}
@media screen and (max-width: 767px) {
  .items-hl {
    border-width: 1px 0;
    font-size: 135.714%;
    margin: 0 auto 1.053em;
    padding: 0.342em 0;
    width: 89.333%;
  }
  .items-hl .check {
    margin-right: 0.526em;
    width: 0.916em;
  }
}

.items-list {
  display: -ms-flex;
  display: flex;
  -ms-justify-content: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .items-list {
    flex-wrap: wrap;
  }
  .items-list li {
    width: 50%;
  }
}

.items-label {
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .items-label {
    line-height: 1.358;
  }
}
@media screen and (max-width: 767px) {
  .items-label {
    font-size: 121.429%;
    line-height: 1.32;
    margin-bottom: 0.882em;
  }
}

.items-img {
  margin: auto;
  position: relative;
}
.items-img .em {
  display: block;
  font-weight: bold;
  position: absolute;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .items-img .em {
    left: 4em;
    line-height: 1.33;
    top: 0.45em;
    -webkit-transform: scale(0.66, 0.66);
            transform: scale(0.66, 0.66);
  }
}
@media screen and (max-width: 767px) {
  .items-img {
    width: 11.5em;
  }
  .items-img.img01 {
    width: 12.143em;
  }
  .items-img .em {
    font-size: 76.755%;
    line-height: 1.33;
    right: 0;
    top: 0.698em;
  }
}

@media screen and (min-width: 768px) {
  .items-list {
    margin-bottom: 2em;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col1 {
    margin-bottom: 1.786em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col1 li {
    width: 50%;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col1 .items-label {
    font-size: 140%;
    min-height: 3em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col1 .items-img {
    width: 13.45em;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col3 li {
    margin-bottom: 1.786em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col3 li {
    width: 33.333%;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col3 .items-label {
    font-size: 140%;
    min-height: 3em;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col3 .items-label.lines3 {
    padding-top: 1.32em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col3 .items-img {
    width: 13.45em;
  }
  .items-list.col3 .items-img.img01 {
    width: 14em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col4 {
    margin-bottom: 1.4em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col4 li {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col4 li {
    margin-bottom: 1.286em;
  }
  .items-list.col4 li:nth-of-type(3), .items-list.col4 li:nth-of-type(4) {
    margin-bottom: 1.571em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col4 .items-label {
    font-size: 102.88%;
    min-height: 4em;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col4 .items-label.lines3 {
    padding: 0.66em 0;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col4 .items-img {
    width: 9.9em;
  }
  .items-list.col4 .items-img.img01 {
    width: 10.4em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col5 {
    margin-bottom: 1.4em;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col5 {
    justify-content: flex-start;
    margin-inline: 0.357em 0;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col5 li {
    width: 20%;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col5 li {
    margin-bottom: 1.286em;
  }
  .items-list.col5 li:nth-of-type(3), .items-list.col5 li:nth-of-type(4) {
    margin-bottom: 1.571em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col5 .items-label {
    font-size: 90%;
    min-height: 2.6em;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col5 .items-label.lines3 {
    padding: 0.66em 0;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col5 .items-img {
    margin-top: 1.75em;
    width: 8.8em;
  }
  .items-list.col5 .items-img.img01 {
    width: 9.85em;
  }
}
@media screen and (max-width: 767px) {
  .items-list.col5 .items-img.img01 {
    width: 11.607em;
  }
}
@media screen and (min-width: 768px) {
  .items-list.col5 .items-img .em {
    left: 1.2em;
    top: -0.3em;
    -webkit-transform: scale(0.65);
            transform: scale(0.65);
  }
}
@media screen and (max-width: 767px) {
  .items-list.col5 .items-img .em {
    right: -1em;
  }
}

.items-notes li {
  line-height: 1.75;
  margin-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 768px) {
  .items-notes {
    margin: 0 4% 2em;
  }
}
@media screen and (max-width: 767px) {
  .items-notes {
    margin: auto;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .if {
    margin-bottom: 2em;
  }
}
@media screen and (max-width: 767px) {
  .if {
    margin: auto;
    width: 89.333%;
  }
}

.if-hl {
  background: #ccc;
  position: relative;
  text-align: center;
}
.if-hl::after {
  border-color: #ccc transparent transparent;
  border-style: solid;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}
@media screen and (min-width: 768px) {
  .if-hl {
    font-size: 140%;
    margin-bottom: 1.429em;
    padding: 0.75em 0;
  }
  .if-hl::after {
    border-width: 0.786em 0.821em 0;
    bottom: -0.75em;
    left: 17.464em;
  }
}
@media screen and (max-width: 767px) {
  .if-hl {
    font-size: 121.429%;
    line-height: 1.28;
    margin-bottom: 1.529em;
    padding: 0.529em 0;
  }
  .if-hl::after {
    border-width: 0.647em 0.676em 0;
    bottom: -0.618em;
    left: 9.118em;
  }
}

.if-txt {
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .if-txt {
    margin: 0 4% 2em;
  }
}
@media screen and (max-width: 767px) {
  .if-txt {
    margin-bottom: 1.071em;
  }
}

.if-group {
  border: 1px solid #333;
}
.if-group dt {
  background: rgb(226, 129, 147);
  color: #fff;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}
.if-group dd p, .if-group dd li {
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .if-group {
    display: -ms-flex;
    display: flex;
    margin-bottom: 2.3em;
    width: 100%;
  }
  .if-group dt {
    font-size: 125%;
  }
  .if-group dd {
    padding: 1.3em 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .if-group {
    margin-bottom: 1.357em;
  }
  .if-group dt {
    font-size: 107.143%;
  }
  .if-group dd {
    padding: 1.143em 1.214em;
  }
}

.if-group-block .if-list li::before {
  content: "・";
}
@media screen and (min-width: 768px) {
  .if-group-block {
    width: 50%;
  }
  .if-group-block:not(:last-child) {
    border-right: 1px solid #333;
  }
}
@media screen and (max-width: 767px) {
  .if-group-block:not(:last-child) {
    border-bottom: 1px solid #333;
  }
}

.if-btn {
  margin: auto;
}
@media screen and (min-width: 768px) {
  .if-btn {
    -webkit-filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .if-btn {
    -webkit-filter: drop-shadow(0.169em 0.169em 0.169em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.169em 0.169em 0.169em rgba(102, 102, 102, 0.3));
    margin-bottom: 3.214em;
  }
}

.please dd {
  font-weight: bold;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .please {
    -ms-align-items: center;
    align-items: center;
    display: -ms-flex;
    display: flex;
    flex-direction: row-reverse;
    -ms-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 1.35em;
  }
  .please dt {
    margin-right: 0.5%;
    width: 26%;
  }
  .please dd {
    font-size: 165%;
    line-height: 1.67;
    width: 71%;
  }
}
@media screen and (max-width: 767px) {
  .please {
    margin: 0 auto 3.214em;
    width: 89.333%;
  }
  .please dt {
    margin: 0 auto 1.214em;
    width: 53.731%;
  }
  .please dd {
    font-size: 125%;
    line-height: 1.58;
    text-align: center;
  }
}

.reserve-hl {
  border-style: solid;
  text-align: center;
}
.reserve-hl.online-hl {
  border-color: rgb(238, 0, 68);
  color: rgb(238, 0, 68);
}
.reserve-hl.tel-hl {
  border-color: rgb(12, 173, 100);
  color: rgb(12, 173, 100);
}
@media screen and (min-width: 768px) {
  .reserve-hl {
    border-width: 2px 0;
    font-size: 180%;
    padding: 0.444em 0;
  }
  .reserve-hl.online-hl {
    margin-bottom: 1.25em;
  }
  .reserve-hl.tel-hl {
    margin-bottom: 1.25em;
  }
}
@media screen and (max-width: 767px) {
  .reserve-hl {
    border-width: 1px 0;
    font-size: 135.714%;
    margin: 0 auto 1.368em;
    padding: 0.342em 0;
    width: 89.333%;
  }
  .reserve-hl.online-hl {
    margin-bottom: 2.105em;
    padding-left: 4.474em;
    text-align: left;
  }
}

.reserve-online {
  position: relative;
}
@media screen and (min-width: 768px) {
  .reserve-online {
    margin-bottom: 4em;
  }
}
@media screen and (max-width: 767px) {
  .reserve-online {
    margin-bottom: 3.036em;
  }
}

.icon-rec-24hour {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .icon-rec-24hour {
    left: 5.5%;
    top: -3.1em;
    width: 18.4%;
  }
}
@media screen and (max-width: 767px) {
  .icon-rec-24hour {
    left: 1.067%;
    top: -2em;
    width: 24.533%;
  }
}

.online-notes li {
  line-height: 1.75;
  margin-left: 1em;
  text-indent: -1em;
}
.online-notes li a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .online-notes {
    margin: 0 0 3em auto;
    width: 82%;
  }
}
@media screen and (max-width: 767px) {
  .online-notes {
    margin: 0 auto 2.143em;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .online-links.yoyaku-icons {
    margin-bottom: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .online-links.yoyaku-icons {
    margin-bottom: 1.786em;
  }
}
@media screen and (max-width: 767px) {
  .online-links.yoyaku-icons .online-links-block {
    height: auto;
  }
}
@media screen and (min-width: 768px) {
  .online-links.yoyaku-icons img {
    width: 5.5em;
  }
}
@media screen and (max-width: 767px) {
  .online-links.yoyaku-icons img {
    width: 5.357em;
  }
}

.online-links {
  font-weight: bold;
  display: -ms-flex;
  display: flex;
  -ms-justify-content: space-between;
  justify-content: space-between;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .online-links {
    margin: 0 auto 1.643em;
    width: 89.333%;
  }
}

.online-links-block a {
  background: #fff;
  border: solid rgb(238, 0, 68);
  display: block;
  height: 100%;
  position: relative;
  transition: all 0.5s;
}
.online-links-block a::after {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2037%2037%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23e04%3B%7D.cls-2%7Bfill%3Anone%3Bstroke%3A%23fff%3Bstroke-miterlimit%3A10%3Bstroke-width%3A2px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2218.5%22%20cy%3D%2218.5%22%20r%3D%2218.5%22%2F%3E%3Cpolyline%20class%3D%22cls-2%22%20points%3D%2229.609%2014.535%2019.185%2024.959%208.761%2014.535%22%2F%3E%3C%2Fsvg%3E") 0 0/contain no-repeat;
  content: "";
  display: block;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .online-links-block {
    width: 31.6%;
  }
  .online-links-block a {
    border-radius: 0.625em;
    border-width: 0.1em;
    padding: 4.85em 0 1.8em;
  }
  .online-links-block a::after {
    bottom: -0.95em;
    -webkit-filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.25em 0.25em 0.25em rgba(102, 102, 102, 0.3));
    height: 1.85em;
    left: 7em;
    width: 1.85em;
  }
  .online-links-block a:hover {
    background-color: #F1E7D5;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .online-links-block a:hover .online-links-hl::before {
    background: #F1E7D5;
  }
}
@media screen and (max-width: 767px) {
  .online-links-block {
    width: 7.5em;
    height: 15.714em;
  }
  .online-links-block a {
    border-radius: 0.357em;
    border-width: 1px;
    padding: 2.143em 0 1.286em;
  }
  .online-links-block a::after {
    bottom: -0.661em;
    -webkit-filter: drop-shadow(0.179em 0.179em 0.179em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.179em 0.179em 0.179em rgba(102, 102, 102, 0.3));
    height: 1.321em;
    left: 3.036em;
    width: 1.321em;
  }
}
@media screen and (min-width: 768px) {
  .online-links-block:first-child .online-links-hl {
    width: 13.1em;
  }
}
@media screen and (max-width: 767px) {
  .online-links-block:first-child .online-links-hl {
    width: 6.357em;
  }
}
@media screen and (max-width: 767px) {
  .online-links-block:last-child .online-links-hl {
    width: 4.143em;
  }
}

@media screen and (min-width: 768px) {
  .online-links-hl {
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: -0.9em;
    width: 10.7em;
  }
}
@media screen and (max-width: 767px) {
  .online-links-hl {
    margin: 0 auto 0.536em;
    width: 4.643em;
    position: absolute;
    top: -0.893em;
    left: 0;
    right: 0;
  }
}
@media screen and (min-width: 768px) {
  .online-links-hl::before {
    content: "";
    display: block;
    background: #fff;
    width: 100%;
    height: 1em;
    position: absolute;
    top: 0.75em;
    z-index: 1;
    transition: all 0.5s;
  }
}
@media screen and (max-width: 767px) {
  .online-links-hl::before {
    content: "";
    display: block;
    background: #fff;
    width: 100%;
    height: 0.714em;
    position: absolute;
    top: 0.786em;
    z-index: 1;
    transition: all 0.5s;
  }
}
.online-links-hl img {
  position: relative;
  z-index: 5;
}

@media screen and (min-width: 768px) {
  .online-links-icon {
    margin: 0 auto 1.3em;
    width: 9.5em;
  }
}
@media screen and (max-width: 767px) {
  .online-links-icon {
    margin: 0 auto 0.714em;
    width: 6.786em;
  }
}

.online-links-txt {
  letter-spacing: 0.02em;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .online-links-txt {
    font-size: 130%;
    line-height: 1.428;
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .online-links-txt {
    font-size: 85.714%;
    line-height: 1.38;
    width: 7.692em;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1.154em;
  }
}

.reserve-notes {
  text-align: center;
}
.reserve-notes a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .reserve-notes a:hover {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .reserve-notes {
    line-height: 1.75;
  }
}

.tel-catch {
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .tel-catch {
    font-size: 140%;
    line-height: 1.42;
    margin-bottom: 1.071em;
  }
}
@media screen and (max-width: 767px) {
  .tel-catch {
    font-size: 120%;
    line-height: 1.428;
    margin: -0.357em auto 1.19em;
  }
}

.tel-card {
  background: #fff;
  border: solid rgb(12, 173, 100);
  margin: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .tel-card {
    border-radius: 0.539em;
    border-width: 0.16em;
    padding: 1.8em 0;
    text-align: center;
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .tel-card {
    border-radius: 0.332em;
    border-width: 0.107em;
    margin: 0 auto 1.786em;
    padding: 1.429em 0;
    width: 89.333%;
  }
}

.tel-card-hl {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .tel-card-hl {
    font-size: 150%;
    margin-bottom: 0.333em;
  }
}
@media screen and (max-width: 767px) {
  .tel-card-hl {
    font-size: 128.571%;
    line-height: 1.33;
    margin-bottom: 0.278em;
    text-align: center;
  }
}

.tel-card-num {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .tel-card-num {
    font-size: 210%;
    margin-bottom: 0.476em;
  }
  .tel-card-num a {
    color: rgb(12, 173, 100);
  }
}
@media screen and (max-width: 767px) {
  .tel-card-num {
    font-size: 171.429%;
    margin: 0 auto 0.521em;
    text-align: center;
    width: 12.5em;
  }
  .tel-card-num a {
    background: url(../img/share/icon_tel.svg) no-repeat rgb(238, 0, 68);
    background-position: 1.354em 50%;
    background-size: 1.342em auto;
    border-radius: 1.042em;
    color: #fff;
    display: block;
    -webkit-filter: drop-shadow(0.104em 0.104em 0.104em rgba(102, 102, 102, 0.3));
            filter: drop-shadow(0.104em 0.104em 0.104em rgba(102, 102, 102, 0.3));
    padding: 0.521em 0 0.438em;
    text-indent: 1.771em;
  }
}

.tel-card-notes dl {
  display: -ms-flex;
  display: flex;
  justify-content: center;
}
.tel-card-notes p {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .tel-card-notes {
    width: 100%;
  }
  .tel-card-notes dl {
    -ms-justify-content: center;
    justify-content: center;
  }
  .tel-card-notes dt, .tel-card-notes dd, .tel-card-notes p {
    line-height: 1.75;
  }
}
@media screen and (max-width: 767px) {
  .tel-card-notes {
    font-size: 85.714%;
    margin: 0 auto;
  }
  .tel-card-notes dt, .tel-card-notes dd, .tel-card-notes p {
    line-height: 1.4;
  }
  .tel-card-notes dt {
    width: 5em;
  }
}

.tel-card-img {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .tel-card-img {
    right: 1.2em;
    top: 0.7em;
    width: 6em;
  }
}
@media screen and (max-width: 767px) {
  .tel-card-img {
    right: -0.393em;
    top: -2.964em;
    width: 16vw;
  }
}

.link-access {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015.79218%2025.99896%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%230cad64%3Bstroke-miterlimit%3A10%3Bstroke-width%3A1.80582px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpolyline%20class%3D%22cls-1%22%20points%3D%220.601%200.674%2014.435%2012.999%200.601%2025.325%22%2F%3E%3C%2Fsvg%3E") no-repeat #fff;
  border: solid rgb(12, 173, 100);
  color: rgb(12, 173, 100);
  display: block;
  font-weight: bold;
  letter-spacing: 0.02em;
  line-height: 1.4375;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .link-access {
    background-position: 22em 50%;
    background-size: auto 0.813em;
    border-width: 2px;
    font-size: 160%;
    margin: 0 auto 0.625em;
    padding: 0.625em 0;
    width: 75.6%;
  }
}
@media screen and (max-width: 767px) {
  .link-access {
    background-position: 16.146em 50%;
    background-size: 0.365em auto;
    border-width: 1px;
    font-size: 137.143%;
    line-height: 1.435;
    margin: 0 auto 1.719em;
    padding: 0.625em 0;
    width: 89.333%;
  }
}

.step01 {
  background-color: rgba(228, 250, 200, 0.5);
}
@media screen and (min-width: 768px) {
  .step01 .step-hd-img {
    bottom: -1.5em;
    left: 0;
    width: 6.95em;
  }
}
@media screen and (max-width: 767px) {
  .step01 .step-hd-img {
    bottom: -2.071em;
    left: 2%;
    width: 18.533%;
  }
}
@media screen and (min-width: 768px) {
  .step01 .sec01 .step-main-hl-txt {
    font-size: 140%;
  }
  .step01 .sec01 .step-main-txt {
    width: 29.5em;
  }
  .step01 .sec01 .step-main-img {
    right: 1em;
    width: 10em;
  }
  .step01 .sec03 .step-main-hl-txt {
    font-size: 140%;
  }
  .step01 .sec03 .step-main-txt {
    width: 21.45em;
  }
  .step01 .sec03 .step-main-img {
    right: 1.7em;
    top: 1.9em;
    width: 14.1em;
  }
}
@media screen and (max-width: 767px) {
  .step01 .sec01 .step-main-body {
    padding-bottom: 1.143em;
  }
  .step01 .sec01 .step-main-img {
    margin: 0 auto 0 5.429em;
    width: 12.25em;
  }
  .step01 .sec02 .step-main-hl-txt {
    font-size: 142.857%;
  }
  .step01 .sec03 .step-main-hl-txt {
    font-size: 139.286%;
  }
  .step01 .sec03 .step-main-body {
    padding-bottom: 1.071em;
  }
  .step01 .sec03 .step-main-img {
    margin: 1.071em auto 0 2.286em;
    width: 18.714em;
  }
}

@media screen and (min-width: 768px) {
  .step02 .step-header .container {
    padding-bottom: 2.75em;
  }
}
@media screen and (min-width: 768px) {
  .step02 .step-hd-img {
    right: 0;
    top: 1.7em;
    width: 6.8em;
  }
}
@media screen and (max-width: 767px) {
  .step02 .step-hd-img {
    right: 0.286em;
    top: -2.643em;
    width: 18.267%;
  }
}
@media screen and (min-width: 768px) {
  .step02 .sec01 .step-main-hl-txt {
    font-size: 135%;
  }
  .step02 .sec01 .step-main-desc {
    width: 39em;
  }
  .step02 .sec01 .step-main-txt {
    width: 100%;
  }
  .step02 .sec01 .step-main-img {
    right: 1.25em;
    top: 2.5em;
    width: 7.5em;
  }
  .step02 .sec02 .step-main-desc {
    width: 39em;
  }
  .step02 .sec03 .step-main-hl {
    letter-spacing: -0.02em;
  }
  .step02 .sec03 .step-main-desc {
    width: 39em;
  }
  .step02 .sec03 .step-main-hl-txt {
    font-size: 140%;
  }
  .step02 .step-main {
    padding-bottom: 2.1em;
  }
}
@media screen and (max-width: 767px) {
  .step02 .sec01 .step-main-img {
    margin: 1.071em auto 0;
    width: 8.929em;
  }
  .step02 .sec03 .step-main-img {
    margin: 1.071em auto 0 2.286em;
    width: 18.714em;
  }
}

.step03 {
  background-color: rgba(228, 250, 200, 0.5);
}
@media screen and (min-width: 768px) {
  .step03 .step-header .container {
    padding: 3em 0 4em;
  }
}
@media screen and (max-width: 767px) {
  .step03 .step-header .container {
    padding: 1.25em 0 1.429em;
  }
}
@media screen and (min-width: 768px) {
  .step03 .step-main {
    padding-top: 1.4em;
  }
}
@media screen and (min-width: 768px) {
  .step03 .step-hd-txt {
    font-size: 165%;
    letter-spacing: 0;
  }
}
@media screen and (min-width: 768px) {
  .step03 .step-hd-img {
    bottom: 1.7em;
    left: -0.8em;
    width: 9.9em;
  }
}
@media screen and (max-width: 767px) {
  .step03 .step-hd-img {
    left: 4.267%;
    top: -3.143em;
    width: 22.4%;
  }
}

.step04 {
  padding-bottom: 6.5em;
}
.step04 .step-header {
  background: rgb(92, 182, 118);
}
.step04 .step-header .container::after {
  border-color: rgb(92, 182, 118) transparent transparent;
}
@media screen and (min-width: 768px) {
  .step04 .step-hd-txt {
    font-size: 165%;
    letter-spacing: 0;
  }
}
@media screen and (min-width: 768px) {
  .step04 .step-hd-img {
    bottom: -1.6em;
    right: -3em;
    width: 10.5em;
  }
}
@media screen and (max-width: 767px) {
  .step04 .step-hd-img {
    bottom: -0.893em;
    right: 0;
    width: 28%;
  }
}
.step04 #cancel {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .step04 #cancel {
    width: 50em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel {
    width: 23.929em;
  }
}
.step04 #cancel h3 {
  color: #EE0044;
  font-weight: bold;
  text-align: center;
  border-top: solid 1px #EE0044;
  border-bottom: solid 1px #EE0044;
}
@media screen and (min-width: 768px) {
  .step04 #cancel h3 {
    font-size: 160%;
    line-height: 2.188em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel h3 {
    font-size: 114.286%;
    line-height: 2.188em;
  }
}
.step04 #cancel .tit_sub {
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .tit_sub {
    font-size: 140%;
    line-height: 1.35;
    margin: 1.071em 0 1.25em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .tit_sub {
    font-size: 100%;
    line-height: 1.75;
    margin: 1.25em 0 1.786em;
  }
}
.step04 #cancel .box {
  background: #fff;
  box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box {
    margin-bottom: 3em;
    padding-bottom: 2em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box {
    margin-bottom: 1.964em;
    padding-bottom: 1.429em;
  }
}
.step04 #cancel .box > h4 {
  display: flex;
  align-items: center;
  background: #ccc;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box > h4 {
    padding: 0.85em 2em;
    line-height: 1.25;
    margin-bottom: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box > h4 {
    padding: 0.893em 0.714em;
    line-height: 1.25;
    margin-bottom: 1.071em;
  }
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box > h4 img {
    width: 2.5em;
    margin-right: 1.75em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box > h4 img {
    width: 2.321em;
    margin-right: 1.071em;
  }
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box > h4 span {
    font-size: 160%;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box > h4 span {
    font-size: 139.286%;
  }
}
.step04 #cancel .box .text {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box .text {
    font-size: 100%;
    line-height: 1.6;
    width: 45em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .text {
    font-size: 100%;
    line-height: 1.64;
    width: 21.429em;
  }
}
@media screen and (min-width: 768px) {
  .step04 #cancel .box .tel-card {
    margin: 1.5em auto 2em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card {
    margin: 1.25em auto 1.429em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-img {
    right: 0.071em;
    top: -1.786em;
    width: 12.8vw;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-hl {
    font-size: 114.286%;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-num {
    width: 11.25em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-num a {
    background-position: 0.771em 50%;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-notes {
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-notes dl {
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .box .tel-card .tel-card-notes p {
    display: block;
    text-align: center;
    width: 100%;
  }
}
.step04 #cancel .c_link {
  display: flex;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .c_link {
    font-size: 100%;
    margin-bottom: 0.75em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .c_link {
    font-size: 100%;
    line-height: 1.75;
    margin-bottom: 0.536em;
  }
}
.step04 #cancel .c_link span {
  color: #EE0044;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .c_link span {
    font-size: 100%;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .c_link span {
    font-size: 100%;
    line-height: 1.75;
  }
}
.step04 #cancel .c_link a {
  text-decoration: underline;
}
.step04 #cancel .c_link.qa a::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  background: url(../img/share/icon_link.svg) 50% 50%/contain no-repeat;
}
@media screen and (min-width: 768px) {
  .step04 #cancel .c_link.qa a::after {
    height: 1em;
    margin-left: 0.25em;
    width: 1.05em;
  }
}
@media screen and (max-width: 767px) {
  .step04 #cancel .c_link.qa a::after {
    height: 1em;
    margin-left: 0.429em;
    width: 0.857em;
  }
}

@media screen and (max-width: 767px) {
  .fixed {
    background-color: rgba(12, 159, 102, 0.2);
    bottom: 0;
    padding: 0.857em 0;
    position: sticky;
    right: 0;
    width: 100%;
    z-index: 90;
  }
  .fixed-btn {
    display: -ms-flex;
    display: flex;
    -ms-justify-content: space-between;
    justify-content: space-between;
    margin: auto;
    width: 88.133%;
  }
  .fixed-btn li {
    width: 11.429em;
  }
}
@media screen and (min-width: 768px) {
  .access {
    padding: 4em 0 5.5em;
  }
}
@media screen and (max-width: 767px) {
  .access {
    padding: 4.286em 0 5.357em;
  }
}

.headline {
  border: solid rgb(238, 0, 68);
  border-width: 1px 0;
  color: rgb(238, 0, 68);
  font-weight: bold;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .headline {
    font-size: 160%;
    margin-bottom: 2.5em;
    padding: 0.563em 0;
  }
}
@media screen and (max-width: 767px) {
  .headline {
    font-size: 135.714%;
    line-height: 1.38;
    margin: 0 auto 1.737em;
    padding: 0.421em 0;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .access-main {
    align-items: flex-start;
    display: -ms-flex;
    display: flex;
    -ms-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 4.25em;
  }
}
@media screen and (max-width: 767px) {
  .access-main {
    margin: 0 auto 0.714em;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .access-map {
    width: 44%;
  }
}

.access-goolemap {
  display: block;
  height: 0;
  padding-top: 84.1%;
  position: relative;
  width: 100%;
}
.access-goolemap iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .access-goolemap {
    margin-bottom: 2.2em;
  }
}

@media screen and (min-width: 768px) {
  .access-img {
    width: 20.95em;
  }
}

@media screen and (min-width: 768px) {
  .access-desc {
    width: 51%;
  }
}

@media screen and (min-width: 768px) {
  .access-hl {
    font-size: 120%;
    margin-bottom: 1.333em;
    padding-left: 1em;
  }
}
@media screen and (max-width: 767px) {
  .access-hl {
    font-size: 128.571%;
    line-height: 1.36;
    margin-bottom: 1.556em;
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .access-sec {
    border-left: 0.25em solid #ccc;
    padding-left: 1em;
  }
  .access-sec:not(:last-child) {
    margin-bottom: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .access-sec {
    margin-bottom: 2.143em;
  }
}

@media screen and (min-width: 768px) {
  .access-shl {
    margin-bottom: 0.9em;
  }
}
@media screen and (max-width: 767px) {
  .access-shl {
    font-size: 114.286%;
    margin-bottom: 0.938em;
    text-align: center;
  }
  .access-shl span {
    border-bottom: 0.188em solid #ccc;
    display: inline-block;
    padding: 0 0.5em 0.5em;
  }
}

@media screen and (max-width: 767px) {
  .access-table-outer {
    position: relative;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .access-table-wrap {
    overflow: hidden;
  }
}

@media screen and (max-width: 767px) {
  .access-table-scroll {
    cursor: pointer;
    margin: 0 0 1.071em 9.75em;
    padding-bottom: 0.893em;
    overflow-x: auto;
    -webkit-overflow-scrolling: auto;
    white-space: nowrap;
  }
  .access-table-scroll::-webkit-scrollbar {
    height: 0.429em;
  }
  .access-table-scroll::-webkit-scrollbar-track {
    background: #e6e6e6;
  }
  .access-table-scroll::-webkit-scrollbar-thumb {
    background: #b3b3b3;
  }
}

.access-table {
  border-collapse: separate;
  border-spacing: 0;
  font-weight: bold;
}
.access-table th, .access-table td {
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
}
.access-table th {
  border-left: 1px solid #333;
  border-right: 1px solid #999;
}
.access-table td {
  border-right: 1px solid #333;
}
.access-table td:not(:last-child) {
  border-right-style: dotted;
}
.access-table thead th, .access-table thead td {
  background: rgb(140, 200, 124);
  border-top: 1px solid #333;
  color: #fff;
}
.access-table tbody th, .access-table tbody td {
  border-bottom: 1px solid #333;
}
@media screen and (min-width: 768px) {
  .access-table {
    font-size: 80%;
    margin-bottom: 0.625em;
    width: 100%;
  }
  .access-table th, .access-table td {
    height: 3.188em;
  }
  .access-table th {
    width: 32%;
  }
  .access-table td {
    width: 9.7142857143%;
  }
}
@media screen and (max-width: 767px) {
  .access-table {
    table-layout: fixed;
    min-width: 20.75em;
  }
  .access-table th {
    -ms-align-items: center;
    align-items: center;
    display: -ms-flex;
    display: flex;
    -ms-justify-content: center;
    justify-content: center;
    left: 0;
    position: absolute;
    text-align: center;
    width: 9.75em;
    z-index: 10;
  }
  .access-table td {
    width: 3.071em;
  }
  .access-table thead th, .access-table thead td {
    height: 3.357em;
  }
  .access-table tbody th, .access-table tbody td {
    height: 3.214em;
  }
}

@media screen and (min-width: 768px) {
  .access-notes, .access-txt, .access-list01 li, .access-list02 li {
    font-size: 90%;
    line-height: 1.56;
  }
}

@media screen and (max-width: 767px) {
  .access-notes {
    font-size: 85.714%;
    margin-bottom: 3.75em;
  }
}

@media screen and (max-width: 767px) {
  .access-txt {
    line-height: 1.42;
    margin-bottom: 1.357em;
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .access-list01 li, .access-list02 li {
    line-height: 1.75;
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .access-list02 {
    margin-bottom: 0.714em;
  }
}

.access-list01 li::before {
  content: "・";
}

.access-list02 li::before {
  content: "● ";
}

.access-reserve {
  border: solid rgb(12, 173, 100);
  margin: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .access-reserve {
    border-radius: 0.5em;
    border-width: 0.15em;
    padding: 1.7em 0;
    text-align: center;
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .access-reserve {
    border-radius: 0.357em;
    border-width: 0.107em;
    padding: 1.857em 0 0.929em;
    width: 89.333%;
  }
}

.access-reserve-img {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .access-reserve-img {
    left: -2.4em;
    top: 0.75em;
    width: 13.25em;
  }
}
@media screen and (max-width: 767px) {
  .access-reserve-img {
    bottom: 1.714em;
    left: -2.985%;
    width: 39.701%;
  }
}

.access-reserve-tel {
  width: 100%;
}
.access-reserve-tel dt, .access-reserve-tel dd {
  font-weight: bold;
}
.access-reserve-tel dt {
  line-height: 1.33;
}
.access-reserve-tel dd a {
  color: rgb(12, 173, 100);
}
@media screen and (min-width: 768px) {
  .access-reserve-tel dt {
    font-size: 150%;
    margin-bottom: 0.667em;
  }
  .access-reserve-tel dd {
    font-size: 210%;
    margin-bottom: 0.476em;
  }
}
@media screen and (max-width: 767px) {
  .access-reserve-tel {
    text-align: center;
  }
  .access-reserve-tel dt {
    font-size: 128.571%;
    margin-bottom: 0.833em;
  }
  .access-reserve-tel dd {
    font-size: 171.429%;
    margin: 0 auto 0.625em;
    width: 89.552%;
  }
  .access-reserve-tel dd a {
    background: url(../img/share/icon_tel.svg) no-repeat rgb(238, 0, 68);
    background-position: 1.354em 50%;
    background-size: 1.342em auto;
    border-radius: 1.042em;
    color: #fff;
    display: block;
    box-shadow: 0.104em 0.104em 0.104em rgba(102, 102, 102, 0.3);
    padding: 0.521em 0 0.438em;
    text-indent: 1.771em;
  }
}

@media screen and (min-width: 768px) {
  .access-reserve-notes {
    line-height: 1.75;
  }
}
@media screen and (max-width: 767px) {
  .access-reserve-notes {
    line-height: 1.64;
    margin: 0 3.582% 0 auto;
    width: 57.015%;
  }
}

@media screen and (min-width: 768px) {
  .privacy {
    background-color: rgba(228, 250, 200, 0.5);
    padding: 5em 0;
  }
}
@media screen and (max-width: 767px) {
  .privacy {
    padding: 4.286em 0 3.214em;
  }
}

@media screen and (min-width: 768px) {
  .privacy-container {
    background: #fff;
    padding: 3.2em 3em;
  }
}

.privacy-hl {
  border: solid rgb(238, 0, 68);
  color: rgb(238, 0, 68);
  font-weight: bold;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .privacy-hl {
    border-width: 0.083em 0;
    font-size: 180%;
    margin-bottom: 1.111em;
    padding: 0.458em 0;
  }
}
@media screen and (max-width: 767px) {
  .privacy-hl {
    border-width: 1px 0;
    font-size: 135.714%;
    margin: 0 auto 0.789em;
    padding: 0.342em 0;
    width: 89.333%;
  }
}

.privacy-txt01 {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .privacy-txt01 {
    font-size: 140%;
    line-height: 1.357;
    margin-bottom: 1.071em;
  }
}
@media screen and (max-width: 767px) {
  .privacy-txt01 {
    font-size: 121.429%;
    line-height: 1.35;
    margin: 0 auto 0.882em;
    width: 81.333%;
  }
}

.privacy-txt02 {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .privacy-txt02 {
    line-height: 1.75;
    margin-bottom: 2.5em;
  }
}
@media screen and (max-width: 767px) {
  .privacy-txt02 {
    line-height: 1.64;
    margin: 0 auto 2.5em;
    width: 89.333%;
  }
}

@media screen and (min-width: 768px) {
  .privacy-sec:not(:last-child) {
    margin-bottom: 1.8em;
  }
}
@media screen and (max-width: 767px) {
  .privacy-sec {
    margin: 0 auto 2.5em;
    width: 89.333%;
  }
}

.privacy-shl {
  border-bottom: 1px solid #333;
}
.privacy-shl::before {
  color: rgb(238, 0, 68);
  content: "・";
}
@media screen and (min-width: 768px) {
  .privacy-shl {
    font-size: 140%;
    padding-bottom: 0.643em;
    margin-bottom: 0.643em;
  }
}
@media screen and (max-width: 767px) {
  .privacy-shl {
    font-size: 142.857%;
    margin-bottom: 0.65em;
    padding-bottom: 0.5em;
  }
}

.privact-txt03 p {
  text-indent: 1em;
}
@media screen and (min-width: 768px) {
  .privact-txt03 {
    line-height: 1.75;
  }
}
@media screen and (max-width: 767px) {
  .privact-txt03 {
    line-height: 1.64;
  }
}/*# sourceMappingURL=style.css.map */