@charset "UTF-8";
body,
#all_wrap {
  width: 100vw;
  overflow-x: hidden;
}

@media (min-width: 1000px) {
  .disp-sp {
    display: none;
  }
  .disp-pc {
    display: block;
  }
}
@media (max-width: 1000px) {
  .disp-pc {
    display: none;
  }
  .disp-sp {
    display: block;
  }
}
.eng {
  font-family: "Cormorant SC", serif;
  font-weight: bold;
  letter-spacing: 0.25rem;
}

.jpserif {
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  letter-spacing: 0.2rem;
}

.jpn {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  letter-spacing: 0.1rem;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  position: relative;
}

.slick-slider {
  -ms-touch-action: auto;
  touch-action: auto;
}

.-fixed {
  position: fixed;
  transition: 100ms;
  opacity: 1 !important;
}
@media (max-width: 1000px) {
  .-fixed {
    position: inherit;
  }
}

.-flx {
  display: flex;
  flex-wrap: wrap;
}

.-abs {
  position: absolute;
  opacity: 1;
  transition: 200ms;
}

.-ontop {
  z-index: 3;
  transition: 500ms liner;
  opacity: 1 !important;
}

.-transleft {
  width: 80vw;
  transition: 250ms;
}

.-transright {
  width: 48vw !important;
  transition: 100ms;
}

.ud-line::after {
  content: "";
  display: block;
  border: bottom;
  width: 100%;
  height: 1px;
  border: 1px solid #222;
}

h3,
p,
h2,
h4,
h5,
span,
.details {
  color: #231815;
}

body {
  width: 100vw;
  overflow-x: hidden;
}

@keyframes opa {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes opa_rev {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes opa_blur {
  0% {
    filter: blur(0px);
  }
  100% {
    filter: blur(3px);
  }
}
@keyframes blur {
  0% {
    opacity: 0;
    filter: blur(20px);
  }
  100% {
    opacity: 1;
    filter: blur(0px);
  }
}
@keyframes opa05 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes z-in15_01 {
  0% {
    z-index: 15;
  }
  100% {
    z-index: -15;
  }
}
html {
  overflow-x: hidden;
}

a,
p,
h1,
h2,
h3,
h4,
h5,
span,
em,
li,
div {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  letter-spacing: 0.1rem;
}

#all_wrap {
  width: 100vw;
  position: relative;
}

a:hover {
  filter: brightness(1.2);
}

#lp_hd {
  position: fixed;
  width: 100vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  z-index: 9999;
  height: 6vh;
  padding: 2vh 4vh 0vh 2vh;
}
@media (max-width: 1000px) {
  #lp_hd {
    padding: 3vw 3vw 0;
  }
}
#lp_hd .logo_wrap {
  width: 20%;
}
#lp_hd .logo_wrap a.logo_l {
  display: flex;
}
@media (max-width: 1000px) {
  #lp_hd .logo_wrap a.logo_l {
    flex-wrap: wrap;
  }
}
#lp_hd .logo_wrap a.logo_l img {
  height: auto;
  width: 40%;
  max-width: 100%;
  margin-right: 8%;
  margin-bottom: 2%;
}
@media (max-width: 1000px) {
  #lp_hd .logo_wrap a.logo_l img {
    width: 100%;
  }
}
#lp_hd .logo_wrap a.logo_l p {
  font-size: min(14px, 2.8vw);
  letter-spacing: 0.2rem;
  font-weight: 600;
}
#lp_hd a.logo_r {
  width: 20%;
  height: 100%;
  border-radius: 100px;
  background-color: #009ae8;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1000px) {
  #lp_hd a.logo_r {
    width: 45%;
    height: 85%;
  }
}
#lp_hd a.logo_r p {
  font-size: min(14px, 2.8vw);
  text-align: center;
  padding: 2% 0;
  color: #fff;
  font-weight: 600;
}

#mainV {
  width: 100vw;
  height: 50vh;
  position: relative;
  background-color: #e8f6ff;
  overflow: visible;
  z-index: -1;
}
@media (min-width: 1000px) {
  #mainV {
    height: 90vh;
  }
}
@media (max-width: 1000px) {
  #mainV {
    height: max(70vh, 70vw);
  }
}
@media (max-width: 480px) {
  #mainV {
    height: 55vh;
  }
}
#mainV .mv_inner_wrap {
  width: 80%;
  margin: 0 auto;
  aspect-ratio: 1/0.9;
}
@media (min-width: 1000px) {
  #mainV .mv_inner_wrap {
    max-width: 800px;
    width: 100%;
  }
}
#mainV .mv_inner_wrap .mv_upper {
  width: 100%;
  position: relative;
  z-index: 2;
  padding: 10vh 0 0 0;
}
@media (min-width: 1000px) {
  #mainV .mv_inner_wrap .mv_upper {
    padding-top: 6%;
  }
}
#mainV .mv_inner_wrap .mv_upper h1 {
  width: 85%;
  margin: 0 auto;
}
#mainV .mv_inner_wrap .mv_upper h1 img {
  width: 100%;
  height: auto;
}
#mainV .mv_inner_wrap .mv_upper h1 p {
  font-size: min(24px, 4.8vw);
  text-align: center;
  margin-top: 2%;
  padding: 1% 0;
  color: #009ae8;
  border-top: 1px solid #009ae8;
  border-bottom: 1px solid #009ae8;
  font-weight: 600;
  line-height: 120%;
}
#mainV .mv_inner_wrap .mv_upper h1 p span {
  font-size: min(20px, 4vw);
  color: #009ae8;
  font-weight: 600;
}
#mainV .mv_inner_wrap .mv_under {
  width: 90%;
  height: 60vh;
  position: relative;
  margin: 0 auto;
}
@media (max-width: 1000px) {
  #mainV .mv_inner_wrap .mv_under {
    width: max(70vw, 70vh);
    height: max(40vh, 40vw);
  }
}
@media (max-width: 480px) {
  #mainV .mv_inner_wrap .mv_under {
    width: 101vw;
    height: 34vh;
  }
}
#mainV .mv_inner_wrap .mv_under .mv_circle {
  position: absolute;
  width: 70%;
  height: auto;
  left: 0;
  bottom: -8%;
}
@media (max-width: 1000px) {
  #mainV .mv_inner_wrap .mv_under .mv_circle {
    left: -6vw;
    bottom: -3vh;
  }
}
@media (max-width: 480px) {
  #mainV .mv_inner_wrap .mv_under .mv_circle {
    left: -11vw;
    bottom: -3vh;
  }
}
#mainV .mv_inner_wrap .mv_under .mv_phone {
  position: absolute;
  width: 20%;
  height: auto;
  right: 0;
  bottom: 0vh;
}
@media (max-width: 1000px) {
  #mainV .mv_inner_wrap .mv_under .mv_phone {
    width: 26%;
    right: 4vw;
    bottom: 0vh;
  }
}
@media (max-width: 480px) {
  #mainV .mv_inner_wrap .mv_under .mv_phone {
    width: 23vw;
    right: 15vw;
    bottom: 2vh;
  }
}

.mainC_outer {
  width: 97%;
  margin: 0 auto;
  padding: 6vh 2%;
}
@media (min-width: 1000px) {
  .mainC_outer {
    width: 600px;
  }
}

.sec_ttl_wrap {
  text-align: center;
  color: #009ae8;
  font-weight: 600;
}
.sec_ttl_wrap img {
  width: 16%;
  margin: 0 auto;
}
@media (min-width: 1000px) {
  .sec_ttl_wrap img {
    height: 50px;
    width: auto;
  }
}
.sec_ttl_wrap h2,
.sec_ttl_wrap h3 {
  margin-top: 2%;
  margin-bottom: 5%;
  color: #009ae8;
  font-weight: 600;
}

.-fs12 {
  font-size: min(12px, 2.4vw);
  line-height: 160%;
}

.-fs14 {
  font-size: min(14px, 2.8vw);
  line-height: 160%;
}

.-fs16 {
  font-size: min(16px, 3.2vw);
}

.-fs18 {
  font-size: min(18px, 3.6vw);
}

.-fs20 {
  font-size: min(20px, 4vw);
  letter-spacing: 0.1rem;
}

.-fs22 {
  font-size: min(22px, 4.4vw);
}

.-fs24 {
  font-size: min(24px, 4.8vw);
}

.-fs32 {
  font-size: min(32px, 6.4vw);
}

.-fs40 {
  font-size: min(40px, 8vw);
}

#about {
  text-align: center;
  padding: 6% 0;
}
@media (max-width: 1000px) {
  #about {
    padding: 2vh 0 0;
  }
}
#about a {
  width: 80%;
  margin: 5% auto;
  display: block;
  border-radius: 5px;
  background-color: #009ae8;
}
#about a p {
  color: #fff;
  padding: 3% 0;
  font-weight: 600;
}
#point {
  background-color: #e8f6ff;
  padding: 6% 0;
}
#point ul {
  margin-top: 2%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: min(16px, 2.6666666667vw);
}
@media (max-width: 1000px) {
  #point ul {
    padding: 0 2%;
  }
}
#point ul li {
  width: 49%;
  padding: 4% 0;
  background-color: #fff;
  border: 1px solid #009ae8;
  border-radius: 20px;
  text-align: center;
  color: #009ae8;
  font-weight: 600;
  letter-spacing: 0.02rem;
}
@media (max-width: 1000px) {
  #point ul li {
    padding: 4vw 0;
  }
}
#point ul li span {
  color: #009ae8;
  font-weight: 600;
  letter-spacing: 0.02rem;
}

#flow {
  padding: 6% 0;
}
#flow .each_flow_wrap {
  margin: 4% 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  row-gap: 40px;
}
#flow .each_flow_wrap .each_flow {
  border-radius: 10px;
  background: #e8f6ff;
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 0% 5%;
  height: 120px;
}
#flow .each_flow_wrap .each_flow img {
  width: 25%;
}
#flow .each_flow_wrap .each_flow .flow_txt_wrap {
  width: 73%;
}
#flow .each_flow_wrap .each_flow .flow_txt_wrap h4,
#flow .each_flow_wrap .each_flow .flow_txt_wrap p {
  text-align: left;
  letter-spacing: 0.05rem;
}
#flow .each_flow_wrap .each_flow .flow_txt_wrap h4 {
  font-weight: 600;
  letter-spacing: 0.05rem;
  margin-bottom: 2%;
  line-height: 130%;
}
#flow .each_flow_wrap .each_flow:not(:last-of-type)::after {
  content: "";
  position: absolute;
  display: block;
  bottom: -22%;
  left: 50%;
  width: 3%;
  margin: 0 auto;
  aspect-ratio: 1/1;
  background: url("../../img/auto_view/flow_arrow.svg") no-repeat;
}
#flow .notice_wrap {
  margin: 8% 0 4%;
  padding: 8% 2% 0;
  border: 1px solid #999;
  border-radius: 5px;
}
#flow .notice_wrap .notice_ttl {
  text-align: center;
  align-items: center;
  justify-self: center;
  font-weight: 600;
}
#flow .notice_wrap .notice_ttl::before {
  content: "";
  display: block;
  height: 100%;
  width: auto;
  background-size: 100%;
  height: 1rem;
  aspect-ratio: 1/1;
  background: url(../../img/auto_view/notice_icn.png) no-repeat;
  background-size: 100%;
  margin-right: 0.5rem;
}
#flow .notes {
  padding: 3% 0 8%;
}
#flow .notes li {
  margin: 1.5% 0;
}
#flow .notes li::before {
  font-family: "Font Awesome 5 Free ";
  color: #009ae8;
  content: "・";
}

#lineup_outer {
  background-color: #e8f6ff;
  padding: 10% 0;
}
@media (min-width: 1000px) {
  #lineup_outer .lineup_inner {
    width: 800px;
  }
}
#lineup_outer .lineup_inner .lineup_wrap {
  margin: 4% 0 8%;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  column-gap: 2%;
  row-gap: 60px;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner .lineup_wrap {
    padding: 0 2%;
    justify-content: space-between;
  }
}
#lineup_outer .lineup_inner li {
  width: 48%;
  padding: 3% 3%;
  border: 1px solid #666;
  background: #fff;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner li {
    padding: 3% 3% 6%;
  }
}
#lineup_outer .lineup_inner li .each_lineup-img img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#lineup_outer .lineup_inner li .lineup_catch {
  padding: 4% 0;
  width: 100%;
  text-align: center;
  font-size: min(16px, 3.2vw);
  line-height: 140%;
  font-weight: 600;
  word-wrap: break-word;
  word-break: auto-phrase;
  letter-spacing: 0.05rem;
}
#lineup_outer .lineup_inner li .lineup_catch span {
  margin-top: 1%;
  font-size: min(14px, 2.45vw);
  line-height: 120%;
  display: block;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner li .lineup_catch span {
    margin-top: 5%;
    letter-spacing: 0.05rem;
  }
}
#lineup_outer .lineup_inner li .line_txt {
  width: 100%;
  font-size: min(10px, 2vw);
  text-align: center;
  position: relative;
  margin-top: 2%;
  margin-bottom: 4%;
  font-weight: 600;
}
#lineup_outer .lineup_inner li .line_txt::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: calc((100% - 4rem) / 2 * 0.93);
  border-top: 1px solid #333;
}
#lineup_outer .lineup_inner li .line_txt::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: calc((100% - 4rem) / 2 * 0.93);
  border-top: 1px solid #333;
}
#lineup_outer .lineup_inner li .each_data {
  width: 100%;
  justify-content: left;
  margin: 4% auto 4%;
}
#lineup_outer .lineup_inner li .each_data .label {
  font-weight: 600;
  width: 25%;
  text-align: left;
  font-size: min(12px, 2.1vw);
  letter-spacing: 0.05rem;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner li .each_data .label {
    margin-right: 3%;
  }
}
#lineup_outer .lineup_inner li .each_data span {
  width: 72%;
  text-align: left;
  word-wrap: break-word;
  font-size: min(12px, 2.1vw);
  letter-spacing: 0.05rem;
}
#lineup_outer .lineup_inner li .parm {
  width: 100%;
  display: block;
  border: 1px solid #999;
  border-radius: 5px;
  margin: 6% 0 4%;
}
#lineup_outer .lineup_inner li .parm p {
  padding: 3% 0;
  text-align: center;
  font-size: min(12px, 2.4vw);
  font-weight: 600;
}
#lineup_outer .lineup_inner li .cv_wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  column-gap: 2%;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner li .cv_wrap {
    margin-top: 2%;
  }
}
#lineup_outer .lineup_inner li .cv_wrap a {
  width: 48%;
  border-radius: 5px;
}
#lineup_outer .lineup_inner li .cv_wrap a p {
  text-align: center;
  padding: 6% 0;
  color: #fff;
  font-size: min(12px, 2.1vw);
  font-weight: 600;
}
@media (max-width: 1000px) {
  #lineup_outer .lineup_inner li .cv_wrap a p {
    letter-spacing: 0.05rem;
    padding: 12% 0;
  }
}
#lineup_outer .lineup_inner li .cv_wrap a.ggle {
  background-color: #333;
}
#lineup_outer .lineup_inner li .cv_wrap a.muj {
  background-color: #009ae8;
}
#lineup_outer .others_link {
  width: 100%;
  border-radius: 4px;
  display: block;
}
#lineup_outer .others_link p {
  padding: 1% 0 2.5%;
  text-align: center;
  font-weight: 600;
  background: #009ae8;
  width: 70%;
  margin: 0 auto;
  color: #fff;
  line-height: 100%;
  border-radius: 100px;
}
#lineup_outer .others_link p span {
  font-weight: 600;
  color: #fff;
}

.mainsite_link {
  margin: 10% 0;
}
@media (max-width: 1000px) {
  .mainsite_link {
    margin: 6vh 0 3vh;
  }
}
.mainsite_link p {
  text-align: center;
  font-weight: 600;
}
.mainsite_link .link_wrap {
  margin-top: 5%;
  justify-content: space-between;
}
.mainsite_link .link_wrap a {
  width: 48%;
  border-radius: 100px;
}
.mainsite_link .link_wrap a p {
  text-align: center;
  padding: 6% 0;
  color: #fff;
  letter-spacing: 0.01rem;
}
.mainsite_link .link_wrap a.link_home {
  background-color: #333;
}
.mainsite_link .link_wrap a.link_form {
  background-color: #009ae8;
}

.ev_bnr p {
  font-weight: 600;
  text-align: center;
}

.ev_bnr.upbnr {
  width: 70%;
  margin: 0 auto;
}

#footer {
  background: #3c3b4f;
  padding: 6% 4% 2%;
  z-index: 999;
  position: relative;
}
@media (min-width: 1000px) {
  #footer #foot_outer {
    width: 800px;
  }
}
#footer .footer_cv_btn_wrap {
  justify-content: space-between;
  margin-bottom: 10%;
}
#footer .footer_cv_btn_wrap a.foot_logo {
  width: 20%;
}
#footer .footer_cv_btn_wrap a.foot_tel {
  width: 70%;
}
#footer .footer_cv_btn_wrap a img {
  width: 100%;
  height: auto;
}
#footer p {
  font-size: min(10px, 2.1276595745vw);
  text-align: center;
  color: #fff;
}

#sp_nav {
  opacity: 0;
  transition: 500ms;
  z-index: 999;
}
#sp_nav.-scrolld {
  opacity: 1;
  transition: 500ms;
}
#sp_nav .menu {
  display: flex;
  flex-wrap: wrap;
  position: fixed;
  left: 0;
  justify-content: space-evenly;
  bottom: 0;
  align-items: center;
  background: #fff;
  background: rgba(255, 255, 255, 0.92);
  width: 100%;
  height: 11vw;
}
@media (max-width: 480px) {
  #sp_nav .menu {
    height: 22vw;
  }
}
@media (min-width: 1000px) {
  #sp_nav .menu {
    display: none;
  }
}
#sp_nav .menu li {
  display: flex;
  flex-wrap: wrap;
  width: fit-content;
  height: fit-content;
  justify-content: space-evenly;
  text-align: center;
  letter-spacing: 0;
}
#sp_nav .menu li a {
  height: fit-content;
  width: fit-content;
}
#sp_nav .menu li a img {
  height: 8vw;
  width: auto;
}
@media (max-width: 480px) {
  #sp_nav .menu li a img {
    height: 15vw;
  }
}

.ev_bnr_float {
  position: absolute;
  width: 210px;
  top: calc(100vh - 323px);
  right: 3%;
  z-index: 10;
  opacity: 0.95;
  position: fixed;
}

.ev_bnr_float:hover {
  filter: drop-shadow(5px 0px 3px #fff) drop-shadow(-2px 0px 10px #fff);
  transition: 0.8s ease-in-out;
}

@media screen and (max-width: 1000px) {
  .ev_bnr_float {
    right: 15vw;
    width: 25vw;
    top: calc(100vh - 39vw);
  }
}
@media screen and (max-width: 800px) {
  .ev_bnr_float {
    width: 30vw;
    right: 0vw;
    bottom: 24vw;
    top: initial;
  }
}
#form .ev_bnr_float {
  display: none;
}

.ev_bnr_float img {
  width: 100%;
  height: 100%;
  filter: brightness(1.1);
}

#cv_float {
  position: fixed;
  height: 22vw;
  bottom: 0;
  width: 100vw;
  background: #fff;
  z-index: 999;
}
#cv_float a {
  background-color: #009ae8;
  display: block;
  border-radius: 100px;
  margin: 3.5vw auto;
  width: 90%;
}
#cv_float a p {
  color: #fff;
  font-weight: 600;
  font-size: 3.7333333333vw;
  padding: 4vw 0;
  text-align: center;
}/*# sourceMappingURL=main.css.map */