@charset "UTF-8";
/* 共通 */
html {
  font-size: 100%;
}
body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  font-size: 16px;
  background: #eedbbc;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.1em;
  line-height: 1.9;
  overflow: auto;
}
.hamopen {
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}
a {
  text-decoration: none;
  transition: .4s;
}
a:focus-visible {
  outline: 3px solid blue !important;
  outline-offset: -1px;
  box-shadow: 0 0 0 3px white;
}
button:focus-visible {
  outline: 3px solid blue !important;
  outline-offset: -1px;
  box-shadow: 0 0 0 3px white;
}
ul, ol {
  list-style: none;
  padding: 0;
}
/*main section*/
main {
  display: block;
  position: relative;
  overflow: hidden;
}
main section {
  padding: 70px 0 85px;
  position: relative;
}
@media (max-width: 550px) {
  main section {
    padding: 40px 0 50px;
  }
}
.pdb {
  padding-bottom: 55px !important;
}
.pdb0 {
  padding-bottom: 1px !important;
}
@media (max-width: 750px) {
  .pdb {
    padding-bottom: 20px !important;
  }
}
/*img*/
img {
  line-height: 1;
  vertical-align: top;
  max-width: 100%;
  transition: .4s;
}
/*text*/
p {
  margin-bottom: 10px;
}
.marker {
  text-decoration: underline;
  text-decoration-thickness: 0.45em;
  text-decoration-color: rgba(255, 239, 135, 0.55);
  text-underline-offset: -0.05em;
  text-decoration-skip-ink: none;
}
/*中央寄せ*/
.center {
  text-align: center;
}
@media (max-width:750px) {
  .spcenter {
    text-align: center !important;
  }
}
.fitc {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
/* 見出し */
/*01*/
.maintitle {
  width: fit-content;
  margin-bottom: 50px;
  display: block;
  line-height: 1.8;
  position: relative;
  font-size: clamp(1.4rem, 0.65rem + 2.4vw, 2rem);
  font-weight: 700;
}
.maintitle .mf {
  font-size: 120%;
  font-weight: 900;
  line-height: 1;
  position: relative;
  letter-spacing: 0.015em;
  text-transform: uppercase;
}
.maintitle .sf {
  position: relative;
  top: -6px;
}
.maintitle .sf span:not(.ib) {
  border-bottom: 3px solid #333;
}
/*02*/
.mtitle {
  margin-bottom: 15px;
  line-height: 1.7;
  font-size: clamp(1.2rem, 0.6375rem + 1.8vw, 1.65rem);
  font-weight: 700;
}
/*03*/
.stitle {
  font-weight: 700;
  position: relative;
  font-size: clamp(1.2rem, 0.7rem + 1.6vw, 1.6rem);
  padding-left: 2px;
  line-height: 1.65;
  padding-bottom: 12px;
  margin-bottom: 23px;
  border-bottom: 2px solid #333;
}
/**/
.mtright {
  text-align: right;
  margin-left: auto;
}
/**/
.txtmgb {
  margin-bottom: 35px !important;
}
@media (max-width: 750px) {
  .maintitle.mtleft.spcenter {
    margin-left: auto;
  }
  .spfitc {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 550px) {
  .maintitle {
    margin-bottom: 40px;
  }
  .txtmgb {
    margin-bottom: 15px !important;
  }
}
/* ボタン */
.mainbtn a {
  position: relative;
  vertical-align: middle;
  margin: 0 auto;
  padding: 17px;
  display: inline-block;
  width: fit-content;
  min-width: 255px;
  text-align: center;
  z-index: 1;
  overflow: hidden;
  border-radius: 50px;
  border: 1px solid #333;
  color: #333;
  background: #ffbd59;
  font-size: 95%;
  white-space: nowrap;
}
.mainbtn a:hover {
  background: #333;
  color: #fff;
}
.right {
  text-align: right;
}
/**/
.tbtn {
  margin-top: 40px;
}
.btnflex {
  text-align: center;
}
.btnflex a {
  margin: 4px;
  display: inline-block;
}
@media (max-width:750px) {
  .tbtn {
    margin-top: 30px;
  }
}
@media (max-width: 550px) {
  .mainbtn a {
    padding: 15px;
    min-width: 200px;
    font-size: 93%;
  }
}
/* flex要素 */
.flexbox {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.aic {
  align-items: center;
}
.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 750px) {
  .flexbox {
    display: block;
  }
  .flexbox img {
    width: 100%;
  }
  .flexbox div {
    width: 100%;
  }
  .spmgb {
    margin-bottom: 20px;
  }
}
/* 幅 */
.inner {
  width: 88%;
  max-width: 1300px;
  margin: 0 auto;
}
@media (min-width: 2000px) {
  .inner02 {
    max-width: 1500px;
    width: 92%;
    margin: 0 auto;
  }
}
@media (max-width: 1999px) {
  .inner02 {
    max-width: 100%;
    width: 100%;
  }
  .mauto {
    margin-left: auto;
    margin-right: auto;
  }
  .mauto.w48 {
    width: 42%;
  }
  .mauto.w43 {
    width: 37%;
  }
}
@media (max-width: 750px) {
  .inner02 {
    width: 88%;
    margin: 0 auto;
  }
  .mauto.w48, .mauto.w43 {
    width: 100%;
  }
}
.w65 {
  width: 64.5%;
}
.w60 {
  width: 60%;
}
.w52 {
  width: 52%;
}
.w48 {
  width: 48%;
}
.w43 {
  width: 43%;
}
.w37 {
  width: 37%;
}
.w32 {
  width: 31.5%;
}
/*background*/
/*
.bg::before {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(../img/bg.jpg) repeat;
  background-size: 650px;
  background-position: center;
  z-index: -101;
}
.bg::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffbd59;
  z-index: -100;
  opacity: 0.9;
}
*/
/* 左のヘッダー幅分 */
/*box*/
.contentsBox {
  border-radius: 35px;
  padding: 40px 40px 50px;
  background: #eedbbc;
  border: 3px solid #333;
  margin-bottom: 45px;
}
.contentsBox:last-of-type {
  margin-bottom: 0 !important;
}
@media (min-width: 1880px) {
  .leftmargin, .contentsBox {
    width: 100%;
  }
}
@media (max-width: 1879px) {
  .leftmargin, .contentsBox {
    margin-left: auto;
    width: calc(100% - 100px); /**/
  }
}
@media (max-width: 1750px) {
  .leftmargin, .contentsBox {
    margin-left: auto;
    width: calc(100% - 210px); /**/
  }
}
@media (max-width: 1280px) {
  .leftmargin, .contentsBox {
    width: 100%;
  }
}
@media (max-width: 950px) {
  .contentsBox {
    padding: 40px 30px;
  }
}
@media (max-width: 550px) {
  .contentsBox {
    padding: 20px 15px 25px;
    border: 2px solid #333;
  }
}
/**/
.conts {
  margin-bottom: 75px;
}
.conts:last-of-type {
  margin-bottom: 0 !important;
}
@media (max-width: 1130px) {
  .conts {
    margin-bottom: 50px;
  }
}
@media (max-width:750px) {
  .SP_displayContents {
    display: flex;
    flex-direction: column;
  }
  .SP_displayContents .flexbox, .SP_dc {
    display: contents;
  }
  .SP_displayContents .maintitle {
    order: -1;
  }
}
@media (max-width: 550px) {
  .conts {
    margin-bottom: 40px;
  }
}
/* logo decoration */
.deco {
  position: absolute;
  z-index: 1;
  top: -45px;
  right: -45px;
  width: 210px !important;
}
@media (max-width:900px) {
  .deco {
    top: -50px;
    right: -3%;
    max-width: 150px;
    width: 35% !important;
  }
}
/* アニメーション ============*/
/* flowup */
.flowup {
  opacity: 0;
  transform: translateY(15px);
  transition: opacity 1.3s, transform 1.3s;
  transition-delay: 0.35s;
}
.flowup.inview {
  opacity: 1;
  transform: translateY(0);
}
/*delay*/
.delay01 {
  transition-delay: 0.45s;
}
.delay02 {
  transition-delay: 0.6s;
}
@media (max-width: 750px) {
  .delay01, .delay02 {
    transition-delay: 0.3s !important;
  }
}
/* illust ==============================*/
.psr {
  position: relative;
}
/**/
.illust {
  position: absolute;
  z-index: 2;
  width: fit-content !important;
}
.illust img {
  width: auto !important;
  height: 150px !important;
}
@media (max-width: 1660px) {
  .illust img {
    height: 8.5vw !important;
  }
}
@media (max-width: 1280px) {
  .illust img {
    height: 10vw !important;
  }
}
@media (max-width: 750px) {
  .illust img {
    height: 25vw !important;
    max-height: 100px;
  }
}
/*位置*/
.tl {
  top: -7px;
  left: -7px;
}
.tr {
  top: -7px;
  right: -7px;
}
.bl {
  bottom: -7px;
  left: -7px;
}
.br {
  bottom: -7px;
  right: -7px;
}
/*=== 共通部分ここまで ===*/
/* header ================================================*/
.header {
  /*border-top: 2px solid #ffbd59;*/
  background: #fff;
  padding: 20px 20px 23px;
  position: fixed;
  z-index: 99;
  top: 59px;
  left: 48px;
  width: fit-content;
  display: flex;
  flex-direction: column;
}
@media (max-height: 655px) {
  .header {
    top: 2%;
  }
}
.hwrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
/*logo*/
.header_title {
  margin: 0 auto 15px;
  width: 100%;
  max-width: 135px;
}
/*menu*/
.hnav {
  margin-bottom: 17px;
}
.header ul li a {
  display: inline-block;
  color: #333;
  width: 100%;
  text-transform: uppercase;
  margin-bottom: 2px;
}
/*hover effect*/
.header ul li a span {
  white-space: nowrap;
  display: inline-block;
  position: relative;
  transition: 0.25s;
  transform-origin: 50% 0%;
  transform-style: preserve-3d;
  font-size: 87.5%;
}
.header ul li a span:after {
  content: attr(data-text);
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  transform-origin: 50% 0%;
  transform: translate3d(0, 105%, 0) rotateX(-90deg);
}
.header ul li a:hover span {
  transform: translate3d(0, 0, -30px) rotateX(90deg);
}
/*SNS icons*/
.snsicons a {
  color: #333;
  margin: 0 2px;
}
.snsicons a:hover {
  opacity: 0.6;
}
/* hamburger =================================================*/
.header__inner {
  display: none;
}
.hamburger {
  position: fixed;
  display: block;
  top: 25px;
  right: 20px;
  z-index: 9999;
  width: 60px;
  height: 33px;
  border: none;
  background-color: transparent;
}
.hamburger.-active {
  filter: none;
}
.hamburger.-active .hamburger__line {
  background-color: transparent;
}
.hamburger.-active .hamburger__line::before {
  top: 0;
  transform: rotate(45deg);
}
.hamburger.-active .hamburger__line::after {
  top: 0;
  transform: rotate(-45deg);
}
.hamburger__line {
  display: block;
  height: 2px;
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 35px;
  transition: 0.4s;
  border-radius: 10px;
}
.hamburger__line:before, .hamburger__line:after {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  transition: inherit;
}
.hamburger__line, .hamburger__line:before, .hamburger__line:after {
  background: #333;
}
.hamburger__line:before {
  top: -8px;
}
.hamburger__line:after {
  top: 8px;
}
/*
.hamburger__text {
	position: absolute;
	bottom: -8px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.hamburger.-active .hamburger__text::before {
	content: 'close';
}
.hamburger__text::before {
	content: "menu";
	text-align: center;
	color: #333;
	font-size: 19px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
*/
.header__nav-area {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  height: 100%;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: 0.4s;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #eedbbc;
}
.header__nav-area.-active {
  opacity: 1;
  visibility: visible;
}
.wr {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
@media (max-height: 650px) {
  .wr {
    height: 100%;
    overflow-y: scroll;
    padding: 70px 0;
  }
}
@media (max-width: 550px) {
  .wr {
    height: 100%;
    overflow-y: scroll;
    padding: 70px 0;
  }
}
.global-navigation {
  margin: auto;
  width: 65%;
  max-width: 330px;
}
.global-navigation__list {
  margin-bottom: 33px;
}
.global-navigation ul li {
  display: block;
}
.global-navigation ul li a {
  font-size: 1.5rem;
  line-height: 1.7;
  color: #333;
  display: inline-block;
  width: 100%;
  padding: 5px 0;
  position: relative;
  text-transform: uppercase;
  margin-bottom: 0;
}
.global-navigation .snsicons {
  width: fit-content;
  margin-left: auto;
  font-size: 1.5rem;
}
/*ホバー後に出る文字*/
.global-navigation ul li a span {
  display: inline-block;
  position: relative;
  transition: all 0.25s;
  transform-origin: 50% 0%;
  transform-style: preserve-3d;
}
.global-navigation ul li a span:after {
  content: attr(data-text);
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  transform-origin: 50% 0%;
  transform: translate3d(0, 105%, 0) rotateX(-90deg);
}
.global-navigation ul li a:hover span {
  transform: translate3d(0, 0, -30px) rotateX(90deg);
}
/*btn*/
.header__nav-area .mainbtn a:hover {
  opacity: 0.6;
}
@media (max-width: 1280px) {
  .header_title {
    position: fixed;
    z-index: 100;
    top: 12px;
    left: 18px;
    max-width: 135px;
  }
  .header {
    padding: 0;
    border-top: none;
  }
  .hnav, .snsicons.pc {
    display: none;
  }
  .header__inner {
    display: block;
  }
}
@media (max-width: 550px) {
  .header_title {
    top: 8px;
    left: 9px;
    max-width: 85px;
  }
  .hamburger {
    top: 17px;
    right: 3px;
  }
  .global-navigation ul li a {
    font-size: 1.3rem;
  }
  .global-navigation .snsicons {
    font-size: 1.15rem;
  }
}
/* footer ================================================*/
.ib {
  display: inline-block;
}
/**/
.footer_illust {
  width: 100%;
  max-width: 275px;
}
@media (max-width: 750px) {
  .footer_illust {
    width: 75% !important;
    margin: 35px auto 0;
  }
}
/**/
.footer {
  overflow: hidden;
  background: #fff; /*#ffd596*/
  padding: 60px 0;
}
.footer_add {
  font-size: 90%;
  width: 100%;
  margin-left: 60px;
}
.footer_add .fitc {
  margin-right: 0;
}
.footer_add h3 {
  width: 150px;
  margin: auto;
  margin-bottom: 10px;
}
.footer_add p {
  margin-bottom: 0;
}
.footer_add .snsicons {
  font-size: 105%;
  text-align: right;
}
@media (max-width: 1820px) {
  .footer_add {
    max-width: calc(100% - 250px);
    margin-left: auto;
  }
}
@media (max-width: 1280px) {
  .footer_add {
    max-width: 100%;
    margin: auto;
  }
}
@media (max-width: 750px) {
  .footer_add .fitc {
    margin-right: auto;
  }
  .footer_add h3 {
    margin: 0 auto 20px;
  }
  .footer_add {
    text-align: center;
  }
  .footer_add p {
    margin-bottom: 10px;
  }
  .footer_add .snsicons {
    font-size: 110%;
    text-align: center;
  }
}
@media (max-width: 550px) {
  .footer {
    padding: 45px 0 40px;
  }
  .footer_add h3 {
    width: 125px;
    margin-bottom: 13px;
  }
}
/* コピーライト */
.copyright {
  position: fixed;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 79;
  font-size: 10px;
  writing-mode: vertical-rl;
  text-orientation: sideways;
}
@media (max-width: 550px) {
  .copyright {
    right: 0;
    font-size: 8px;
  }
}
/* ページ上に戻るボタン */
.go_top {
  display: block;
  width: 56px;
  height: 56px;
  background: #ffbd59;
  border: 2px solid rgba(255, 255, 255, 0.2);
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 79;
  border-radius: 50px;
}
.go_top::before {
  font-family: "Font Awesome 6 Free";
  content: "\f124";
  font-weight: bold;
  color: #fff;
  font-size: 0.85rem;
  position: absolute;
  top: 51%;
  left: 51%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.go_top:hover {
  opacity: 0.6;
}
.tfade {
  position: relative;
  z-index: 79;
}
@media(max-width:550px) {
  .go_top {
    width: 50px;
    height: 50px;
    bottom: 7px;
    right: 13px;
  }
  .go_top::before {
    font-size: 0.7rem;
  }
}
/* TOP ファーストビュー　========================================*/
.topfv {
  padding-right: 23px;
  position: relative;
  height: 670px;
  width: calc(100% - 120px);
}
/*
.topfv::before {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  content: "origin base";
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: 0.8rem;
  line-height: 1.0;
  white-space: nowrap;
  text-transform: uppercase;
  font-weight: 700;
}
*/
.topfv video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 750px) {
  .topfv {
    height: calc(100vh - 140px);
    width: calc(100% - 20px);
  }
}
/* loop */
.loop_anime {
  width: 100%;
  height: 140px;
  background-image: url("../img/_illust/01.svg");
  background-repeat: no-repeat;
  background-size: 140px;
  animation: loop 20s linear infinite;
  margin: 15px 0;
}
@keyframes loop {
  from {
    background-position: right -50% bottom;
  }
  to {
    background-position: left -50% bottom;
  }
}
@media (max-width: 1660px) {
  .loop_anime {
    background-size: 8.5vw;
    height: 8.5vw;
  }
}
@media (max-width: 750px) {
  .loop_anime {
    background-size: 65px;
    height: 65px;
    animation: loop 10s linear infinite;
  }
}
@media (max-width: 550px) {
  .loop_anime {
    background-size: 22vw;
    height: 22vw;
  }
}
/* 次世代の体験を、旅と日常に。　========================================*/
.welcome {
  padding-top: 0 !important;
}
/**/
.titleflex {
  display: flex;
}
.titleflex div {
  width: 100%;
}
.titleflex h2 {
  margin-top: -13px;
  margin-right: 70px;
  white-space: nowrap;
}
.titleflex.reverse h2 {
  margin-right: 0;
  margin-left: 70px;
}
@media (max-width: 1000px) {
  .titleflex {
    display: block;
  }
  .titleflex h2 {
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    white-space: normal !important;
    margin-bottom: 25px;
  }
  .titleflex h2.spright {
    margin-left: auto !important;
    margin-right: 0 !important;
  }
}
/**/
.welcome .titleflex {
  margin-top: 0 !important;
  margin-bottom: 55px;
  margin-right: 15%;
  align-items: center;
}
.welcome .inner {
  max-width: 1300px;
}
/**/
.w_sp_img {
  position: relative;
  padding-bottom: 6%;
}
.w_sp_img img {
  display: block;
}
.w_sp_img img:nth-child(1) {
  width: 65%;
  margin-left: auto;
}
.w_sp_img img:nth-child(2) {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 45%;
}
/**/
.w_text p {
  margin-bottom: 25px;
}
.w_text p:last-of-type {
  margin-bottom: 0 !important;
}
@media (max-width: 1665px) {
  .welcome .titleflex {
    margin-right: 4vw;
  }
}
@media (max-width: 1080px) {
  .w_text p br {
    display: none;
  }
}
@media (max-width: 1000px) {
  .welcome .inner02 {
    width: 88%;
    margin: auto;
  }
  .welcome .titleflex {
    margin-right: 0;
  }
  .welcome .titleflex h2 {
    margin-bottom: 45px;
  }
}
@media (max-width: 750px) {
  .welcome .titleflex {
    margin-bottom: 30px;
  }
  .welcome .titleflex h2 {
    margin-bottom: 30px;
  }
  .welcome .psr {
    margin-top: 60px;
  }
  .welcome .w_sp_img {
    width: 120%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    padding-bottom: 40px;
  }
  .w_sp_img img:nth-child(1) {
    width: 49%;
  }
  .w_text p {
    margin-bottom: 15px;
  }
}
/* illust */
.welcome .inner02 .illust {
  top: -11%;
  right: 2%;
}
.welcome .leftmargin .illust {
  top: -24%;
  right: 0;
}
@media (max-width: 1000px) {
  .welcome .leftmargin .illust {
    position: initial;
    margin-left: auto;
  }
  .welcome .inner02 .illust {
    top: 0;
  }
}
@media (max-width: 750px) {
  .welcome .leftmargin .illust {
    margin-bottom: -17%;
    margin-left: 0;
  }
}
@media (max-width: 550px) {
  .welcome .psr {
    margin-top: 40px;
  }
}
@media (max-width: 490px) {
  .welcome .inner02 .illust {
    top: 13vw;
  }
}
@media (max-width: 370px) {
  .welcome .inner02 .illust {
    top: 19vw;
  }
  .welcome .leftmargin .illust {
    margin-bottom: -20vw;
  }
}
/* 選べるレンタルプラン　========================================*/
.ecplans .conts {
  padding: 40px;
  background: #fff;
  border-radius: 35px;
}
/**/
.ecplans .deco {
  display: none;
  width: 13% !important;
}
@media (max-width: 1180px) {
  .ecplans .deco {
    /*display: block;*/
    right: 1%;
  }
}
@media (max-width: 1005px) {
  .ecplans .deco {
    width: 16vw !important;
  }
}
@media (max-width: 750px) {
  .ecplans .deco {
    top: -30px;
    width: 110px !important;
  }
}
@media (max-width: 550px) {
  .ecplans .deco {
    display: block;
  }
}
/**/
.title_mini_flex {
  display: flex;
}
.title_mini_flex .maintitle {
  margin-bottom: 0;
  line-height: 0.85;
  white-space: nowrap;
}
.title_mini_flex .maintitle .mf {
  font-size: 130%;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  width: 67px;
  display: flex;
  align-items: flex-end;
}
.title_mini_flex .tmconts {
  width: 100%;
}
.title_mini_flex .tmconts .maintitle .sf {
  top: 0;
}
.title_mini_flex .tmconts .maintitle {
  margin-bottom: 45px;
}
@media (max-width: 1050px) {
  .title_mini_flex {
    display: block;
  }
  .title_mini_flex .maintitle .mf {
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    width: fit-content;
    margin-bottom: 18px;
  }
}
@media (max-width: 550px) {
  .title_mini_flex .tmconts .maintitle {
    margin-bottom: 33px;
  }
  .ecplans .maintitle {
    font-size: 1.3rem;
  }
}
/*list*/
.acheck li {
  padding-left: 21px;
  position: relative;
  border-bottom: 1px dashed rgba(0, 0, 0, 0.25);
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.acheck li::before {
  font-family: "Font Awesome 6 Free";
  content: "\f14a";
  font-weight: bold;
  display: inline-block;
  font-size: .9em;
  position: absolute;
  top: 0.15em;
  left: 0;
}
.dots.acheck li {
  padding-left: 13px;
}
.dots.acheck li::before {
  content: "\f111";
  font-size: .3em;
  top: 2.25em;
}
.diamond.acheck li {
  padding-left: 20px;
}
.diamond.acheck li::before {
  content: "\f219";
  font-size: 70%;
  top: 0.5em;
}
@media (max-width: 750px) {
  .plan {
    margin-bottom: 40px;
  }
}
@media (max-width: 410px) {
  .plan ul .ib {
    width: fit-content;
    display: block;
    margin-left: auto;
  }
}
/* レンタル条件 */
.rental {
  font-size: 90%;
  margin-top: 30px;
}
.rental h2 {
  font-size: clamp(1.1rem, 0.9125rem + 0.6vw, 1.25rem);
  margin-bottom: 10px;
  font-weight: 700;
}
.rental ul {
  display: flex;
  flex-wrap: wrap;
}
.rental ul li {
  width: 47%;
  margin: 0 1% 10px;
}
@media (max-width: 1530px) {
  .rental ul {
    display: block;
  }
  .rental ul li {
    width: 100%;
    margin: 0 0 10px;
  }
}
/* 移動手段を車で運ぶ。*/
.compact img {
  margin-bottom: 7px;
}
.compact p {
  margin-bottom: 0;
  font-size: 87%;
}
@media (max-width:750px) {
  .compact {
    margin-top: 35px;
  }
  .comp_mgb {
    margin-bottom: 43px !important;
  }
}
/* お客様の声 */
.reviews .mf {
  margin-right: 20px;
}
.review {
  align-items: stretch !important;
}
.review div {
  width: 32.5%;
  border-radius: 10px;
  padding: 20px;
  background: #FFE559;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.rlast {
  width: fit-content;
  margin-left: auto;
  position: relative;
  padding-left: 40px;
  margin-top: auto;
}
.rlast:before {
  background: #333;
  position: absolute;
  content: "";
  top: 0.9em;
  left: 0;
  width: 29px;
  height: 1px;
}
@media (max-width:1000px) {
  .review div {
    width: 100%;
    margin-bottom: 15px;
  }
  .review div:last-of-type {
    margin-bottom: 0 !important;
  }
}
@media (max-width:550px) {
  .review div {
    padding: 15px;
  }
}
/* illust */
.reviews .illust {
  top: -45px;
  right: 2%;
}
@media (max-width: 1000px) {
  .reviews .illust {
    top: -1px;
  }
}
@media (max-width: 600px) {
  .reviews .maintitle .sf {
    display: block;
  }
}
/* 横スクロール ==========================*/
.ecplans {
  padding: 0;
}
/*scroll effect*/
.main-slide {
  position: relative;
  display: flex;
}
.slide-item {
  display: flex;
}
.slide-item .item {
  position: relative;
  width: 100vw;
  height: 100vh;
}
.slide-item .item .text {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.slide-item .item .text .inner {
  position: relative;
  max-width: max-content;
}
@media (min-width: 1880px) {
  .slide-item .item .text {
    max-width: 100%;
    width: 85%;
    margin-right: 0;
  }
}
@media (max-width: 1879px) {
  .slide-item .item .text {
    max-width: 100%;
    width: 85%;
    margin-right: 0;
  }
}
@media (max-width: 1405px) {
  .slide-item .item .text {
    width: 82vw;
  }
}
@media (max-width: 1280px) {
  .slide-item .item .text {
    width: 100%;
  }
}
/*img*/
.item .flexbox img {
  width: 100%;
  height: 35vh;
  min-height: 320px;
  object-fit: cover;
}
@media (max-height: 775px) {
  .item .flexbox {
    position: relative;
  }
}
/* ↓ =========横スクロール無効時========= ↓ */
@media (max-width:1180px) {
  .main-slideWrapper {
    padding: 100px 0;
  }
  .main-slide, .slide-item {
    display: block;
  }
  .slide-item .item {
    height: auto;
  }
  .slide-item .item .text {
    position: initial;
    transform: translate(0, 0);
    height: auto;
  }
  .slide-item {
    margin-bottom: 30px;
  }
  .slide-item:last-child {
    margin-bottom: 0 !important;
  }
  .slide-item .item .text .flexbox {
    align-items: center;
  }
  .slide-item:nth-child(2n+1) .item .text .flexbox {
    flex-direction: row-reverse;
  }
  .item .flexbox img {
    height: auto;
    min-height: auto;
  }
  .scrollarea_title {
    display: block;
    position: initial;
    transform: translate(0, 0);
  }
  .scrollarea_title .maintitle {
    margin-bottom: 85px;
  }
}
@media (max-width:750px) {
  .scrollarea_title .maintitle {
    margin-bottom: 55px;
  }
  .slide-item {
    margin-bottom: 55px;
  }
  .item img {
    margin-bottom: 7px;
  }
}
@media (max-width:550px) {
  .main-slideWrapper {
    padding: 60px 0 70px;
  }
  .scrollarea_title .maintitle {
    margin-bottom: 43px;
  }
  .slide-item {
    margin-bottom: 25px;
  }
  .ecplans .conts {
    padding: 23px;
  }
}
/* ワクワクをあなたのまちにも 代理店募集　========================================*/
/**/
.month {
  margin-bottom: 0;
  font-size: clamp(1.2rem, 0.8875rem + 1vw, 1.45rem);
}
.month span {
  font-weight: 900;
  font-size: 170%;
  color: #de8600;
}
.only span {
  font-weight: 700;
  font-size: 110%;
  display: block;
}
.partners .rental {
  margin-top: 20px !important;
}
@media (max-width:550px) {
  .only span {
    font-size: 92%;
  }
}
/**/
.partners .inner {
  /*max-width: 1245px;*/
}
.partners .titleflex {
  margin-bottom: 45px;
}
.spblock {
  display: none;
}
@media (max-width: 390px) {
  .waku {
    white-space: nowrap;
    font-size: 6.15vw;
  }
}
@media (max-width:550px) {
  .partners .spmgb {
    margin-bottom: 30px;
  }
  .spblock {
    display: block;
  }
}
/* その他サービス　========================================*/
.others {
  padding-top: 20px;
}
@media (max-width:750px) {
  .others {
    padding-top: 40px;
  }
}
.eolp {
  display: block;
  font-size: 60%;
  font-weight: 900;
  letter-spacing: 0.015em;
  text-transform: uppercase;
}
.eol {
  margin-bottom: 17px;
}
@media (max-width:750px) {
  .others .tbtn {
    margin-top: 20px;
  }
}
@media (max-width: 550px) {
  .others .maintitle {
    margin-bottom: 20px;
  }
  .others .conts .maintitle {
    font-size: 1.25rem;
    margin-bottom: 25px !important;
  }
}
/* illust */
.eol_ill .illust {
  top: -20px;
  right: 1%;
  z-index: -1;
}
@media (max-width: 1280px) {
  .eol_ill .illust {
    top: -2vw;
  }
}
@media (max-width: 600px) {
  .eol_ill .maintitle .ib {
    display: block;
  }
  .eol_ill .illust {
    top: 0;
  }
}
@media (max-width: 340px) {
  .eol_ill .illust {
    height: 18vw !important;
    top: -15vw;
  }
}
/* 鹿児島ってどんなとこ？　========================================*/
.location {
  padding-top: 50px;
  padding-bottom: 55px;
}
.location .inner {
  max-width: 1310px;
}
@media (max-width: 1000px) {
  .location {
    padding-top: 0;
  }
}
/*img*/
.wide {
  background: #fff;
  position: relative;
  z-index: 1;
}
.wide img {
  object-fit: cover;
  width: 100%;
  height: 370px;
}
@media (max-width: 1200px) {
  .wide img {
    height: 35vw;
  }
}
@media (max-width: 1050px) {
  .wide img {
    height: 40vw;
  }
}
@media (max-width: 550px) {
  .wide img {
    height: 55vw;
  }
}
/* illust */
.location {
  padding-bottom: 0 !important;
}
.location .illust {
  margin: 30px auto -12px;
  max-width: 900px;
  position: initial;
}
.location .illust img {
  object-fit: contain;
}
@media (max-width: 750px) {
  .location {
    padding-top: 0;
  }
  .location .illust img {
    height: 14vw !important;
  }
}
@media (max-width: 450px) {
  .location .illust {
    margin-bottom: -5px;
  }
}
/* 241225 修正 余白調整　========================================*/
.welcome {
  padding-bottom: 15px !important;
}
.partners {
  padding-top: 10px;
  padding-bottom: 1px !important;
}
.others {
  padding-bottom: 40px !important;
}
@media (max-width: 1180px) {
  .welcome {
    padding-bottom: 1px !important;
  }
}
@media (max-width: 1000px) {
  .ecplans {
    padding-bottom: 40px !important;
  }
}
/* 下層ページトップ ===========================================================================================================*/
.fv {
  padding: 70px 0;
  width: 100%;
  display: flex;
  align-items: center;
  background: #ede9e4;
  position: relative;
}
.fv .inner {
  width: 97%;
}
.fv h2 {
  text-align: center;
  margin: auto;
  margin-bottom: 0 !important;
  line-height: 1.6;
  z-index: 1;
  position: relative;
}
.fv h2 .sf span {
  border-bottom: none !important;
}
@media(max-width:750px) {
  .fv {
    padding: 50px 0;
  }
  .fv.elsc h2 {
    font-size: 2.45vw;
  }
}
@media(max-width:550px) {
  .fv {
    padding: 93px 0 33px;
  }
  .fv.elsc h2 {
    font-size: 1.35rem;
  }
  .maintitle .sf {
    font-size: 82%;
  }
}
.fv h2 .sf {
  text-transform: uppercase;
}
/* breadcrumb */
.binner {
  width: 94%;
  max-width: 1600px;
  font-size: 0.8rem;
  position: relative;
  margin-bottom: 20px;
}
.breadcrumb {
  z-index: 1;
  background: transparent;
  position: absolute;
  top: 4px;
  right: 0;
}
.breadcrumb li {
  display: inline;
  list-style: none;
}
.breadcrumb li:after {
  content: '>';
  padding: 0 0.2em;
  position: relative;
  top: -0.1em;
}
.breadcrumb li:last-child:after {
  content: '';
}
.breadcrumb li a {
  text-decoration: none;
  color: #333;
}
.breadcrumb li:first-child a::before {
  font-family: "Font Awesome 6 Free";
  content: '\f015';
  font-weight: bold;
  font-size: 90%;
  position: relative;
  top: -0.05em;
}
@media(max-width:550px) {
  .breadcrumb {
    font-size: 0.65rem;
  }
}
/* 電動キックボードレンタル・販売ページ ==================================================================================================*/
/* 次世代の体験を、旅と日常に。 */
.elsc_pd {
  padding-top: 70px !important;
}
@media (min-width: 2000px) {
  .elsc_pd.welcome .titleflex {
    margin-right: 0;
  }
}
.elsc_pd.welcome .titleflex {
  margin-bottom: 0 !important;
}
.elsc_text {
  width: 50% !important;
  max-width: 477px;
  margin-left: 70px;
}
h2.mgl0 {
  margin-bottom: 20px !important;
  margin-left: 0 !important;
}
@media(max-width:1665px) {
  .elsc_text {
    width: 100% !important;
  }
}
@media(max-width:1220px) {
  .elsc_pd.welcome .titleflex {
    align-items: stretch;
  }
  .elsc_img {
    display: flex;
  }
  .elsc_img img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}
@media(max-width:1000px) {
  .elsc_text {
    margin-left: 0;
    margin-bottom: 35px;
  }
  h2.mgl0 {
    margin-bottom: 15px !important;
  }
}
@media (max-width:550px) {
  .elsc_pd {
    padding-top: 40px !important;
  }
}
/* 電動キックボードの良いところ */
.merit div {
  margin-bottom: 25px;
}
.merit div .stitle {
  margin-bottom: 7px;
}
.merit div .stitle span {
  font-weight: 900;
  margin-right: 15px;
}
.merit div:last-of-type {
  margin-bottom: 0 !important;
}
@media (max-width:955px) {
  .merit div .stitle span {
    margin-right: 0;
    display: block;
  }
}
@media (max-width:750px) {
  .merit div:first-of-type {
    order: -1;
  }
  .merit div:first-of-type .stitle span {
    margin-right: 15px;
    display: inline-block;
  }
  .merits .maintitle {
    margin-bottom: 20px;
  }
  .merits .compact {
    margin-top: 0;
  }
  .merits .flexbox.psr .bl.illust img {
    height: 113px !important;
  }
  .merits .flexbox.psr .bl {
    bottom: -118px;
    left: auto;
    right: -7px;
  }
}
/* 代理店募集ページ ===========================================================================================================*/
/* 募集エリア */
.areaimg img {
  filter: brightness(0) invert(1);
}
.areatext p:first-of-type {
  margin-bottom: 33px;
}
.areatext .maintitle {
  margin-bottom: 20px;
}
@media (max-width:750px) {
  .SP_displayContents_area {
    display: flex;
    flex-direction: column;
  }
  .SP_displayContents_area .flexbox, .SP_dc {
    display: contents;
  }
  .SP_displayContents_area .maintitle {
    order: -1;
  }
  .SP_displayContents_area .areatext p:first-of-type {
    order: -2;
    margin-bottom: 0;
  }
  .areaimg {
    width: 80% !important;
    margin: 35px auto 10px;
  }
  .SP_areatext {
    order: -1;
    margin-top: 35px;
  }
}
/* 電動キックボード導入のメリット */
.w_text .mtitle {
  margin-bottom: 20px;
}
.bf_border {
  display: inline-block;
  position: relative;
  font-size: 90%;
  padding-left: 40px;
}
.bf_border::before {
  background: #333;
  position: absolute;
  content: "";
  top: 0.85em;
  left: 0;
  width: 32px;
  height: 2px;
}
@media (max-width:750px) {
  .w_sp_img {
    padding-top: 55px;
    margin-top: 30px;
  }
}
@media (max-width:550px) {
  .w_text .bf_border {
    padding-left: 30px;
    font-size: 85%;
  }
  .w_text .bf_border::before {
    width: 25px;
  }
}
/* 募集要件 */
.whitebox {
  padding: 40px;
  background: #fff;
  border-radius: 35px;
}
.whitebox .maintitle {
  margin-bottom: 20px;
}
/*table*/
.info_table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
.info_table tr {
  border-bottom: 1px dashed rgba(0, 0, 0, 0.25);
}
.info_table th {
  background: transparent;
  width: 35%;
}
.info_table th, .info_table td {
  font-weight: 500;
  padding: 23px 0;
}
.info_table td {
  padding-left: 10px;
  padding-right: 10px;
  width: 65%;
  background: transparent;
}
/**/
.info_table .acheck li {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 3px;
}
@media(max-width: 550px) {
  .whitebox {
    padding: 28px 15px;
  }
  .whitebox .maintitle {
    margin-bottom: 5px;
  }
  .info_table tr {
    border-bottom: none;
  }
  .info_table td {
    border-bottom: 1px dashed rgba(0, 0, 0, 0.25);
    margin-bottom: 0;
  }
  .info_table td, .info_table th {
    width: 100%;
    padding: 8px 0 18px;
    display: block;
  }
  .info_table th {
    text-align: left;
    padding-bottom: 0;
    padding-top: 13px;
    font-weight: 700;
  }
}
/* 代理店一覧 */
.franchise .maintitle {
  margin-bottom: 10px !important;
}
.insta a {
  font-size: 107%;
  margin-left: 10px;
  color: #de8600;
}
.insta a:hover {
  opacity: 0.6;
}
.mini_map {
  display: flex;
}
.mini_map iframe {
  width: 100%;
  height: 420px;
  /*height: auto;*/
}
/**/
.mgb0 {
  margin-bottom: 0 !important;
}
@media(max-width: 750px) {
  .spmgb02 {
    margin-bottom: 13px;
  }
  .mini_map {
    margin-top: 30px;
  }
  .mini_map iframe {
    height: 280px;
  }
}
/* 各種サービス紹介ページ ===========================================================================================================*/
.os_item {
  margin-bottom: 45px;
}
.os_item:last-of-type {
  margin-bottom: 0 !important;
}
.os_item .maintitle {
  margin-bottom: 20px !important;
}
/**/
.scene.rental h2 {
  font-size: clamp(1.2rem, 0.7rem + 1.6vw, 1.6rem);
}
@media(max-width: 750px) {
  .os_item {
    margin-bottom: 23px;
  }
  .os_item .rental {
    margin-top: 13px;
  }
}
/*プラン・サービス料金*/
/*プラン*/
.os_feeplans_item {
  margin-bottom: 0;
}
.os_feeplans_item span {
  display: inline-block;
  margin: 0 10px 8px 0;
  background: #333;
  color: #fff;
  padding: 3px 10px;
  width: fit-content;
}
.os_feeplans_item span.block {
  display: block;
}
/*値段*/
.os_item .month {
  line-height: 1.5;
  font-size: clamp(1rem, 0.79rem + 0.7467vw, 1.35rem);
}
.os_item .month span.ib {
  color: #333;
  font-size: 75%;
  font-weight: 500;
}
.os_item .month span.pl {
  color: #333;
  font-weight: 500;
  font-size: 89%;
  margin-right: 10px;
}
.os_item .month span.pl::before {
  content: "・";
}
/**/
.mgb10 {
  margin-bottom: 10px !important;
}
@media(max-width: 750px) {
  .os_item .month span.pl {
    display: block;
  }
  .os_item .month {
    margin-bottom: 15px;
  }
  .os_item .month:last-of-type {
    margin-bottom: 0 !important;
  }
}
@media(max-width: 500px) {
  .os_feeplans_item {
    font-size: 4.25vw;
  }
}
/*制作事例*/
.pastworks {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.pastworks:last-of-type {
  margin-bottom: 0 !important;
}
.pastworks div {
  width: 32%;
  margin: 0 0.6% 12px;
}
/**/
.pastworks_wrap h3 {
  font-size: clamp(1.1rem, 0.86rem + 0.8533vw, 1.5rem);
  font-weight: 700;
  margin-bottom: 15px;
}
.pastworks_wrap h3::before {
  font-family: "Font Awesome 6 Free";
  content: "\f0d7";
  font-weight: bold;
  margin-right: 8px;
}
/*ロゴ*/
.works_logo div {
  display: block;
  position: relative;
  overflow: hidden;
}
.works_logo div::before {
  content: '';
  display: block;
  padding-top: 107%;
}
.works_logo div img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  max-height: 100% !important;
}
@media(max-width: 750px) {
  .pastworks {
    display: block;
  }
  .pastworks div {
    width: 100%;
    margin: 0 0 12px;
  }
  .pastworks div:last-of-type {
    margin-bottom: 0 !important;
  }
}
/*サービスの流れ*/
.os_flow .stitle {
  margin-bottom: 8px;
}
.os_flow p {
  margin-bottom: 0;
  font-size: 1.1rem;
}
.os_flow p span::after {
  font-family: "Font Awesome 6 Free";
  content: "\f30b";
  font-weight: bold;
  margin: 0 5px;
}
.os_flow p span:last-of-type::after {
  content: none;
}
@media(max-width: 1750px) {
  .os_flow p {
    font-size: 100%;
  }
}
@media(max-width: 750px) {
  .os_flow p span::after {
    margin: 0 3px;
  }
}
/* 動画編集代行 */
/*個人様向け 企業様向け*/
.os_item .rental div h2 {
  margin-bottom: 5px;
}
.os_item .rental.flexbox {
  font-size: 100%;
}
@media(max-width: 750px) {
  .os_item .rental div {
    margin-bottom: 23px;
  }
  .os_item .rental div:last-of-type {
    margin-bottom: 0 !important;
  }
}
/* 鹿児島ってどんなとこ？ページ ===========================================================================================================*/
.sightseeing_item {
  margin-bottom: 55px;
}
.sightseeing_item:last-of-type {
  margin-bottom: 0 !important;
}
.sightseeing_item:nth-child(2n) .flexbox {
  flex-direction: row-reverse;
}
/**/
.sstext_mgb {
  margin-bottom: 20px;
}
.sstext_mgb:last-of-type {
  margin-bottom: 0 !important;
}
@media(max-width: 750px) {
  .sightseeing_item {
    margin-bottom: 43px;
  }
  .sightseeing .spmgb {
    margin-bottom: 10px;
  }
  .sstext_mgb {
    margin-bottom: 15px;
  }
}
/*title*/
.sightseeing_item .stitle {
  margin-bottom: 10px;
}
.sstext_mgb h3 {
  font-size: clamp(1.1rem, 0.98rem + 0.4267vw, 1.3rem);
  font-weight: 700;
  margin-bottom: 3px;
}
.sstext_mgb h3::before {
  font-family: "Font Awesome 6 Free";
  content: "\f0d7";
  font-weight: bold;
  margin-right: 8px;
}
/**/
.fleximg {
  display: flex;
}
.fleximg img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
/* よくある質問・お問い合わせページ ===========================================================================================================*/
/* よくある質問 */
.faq_items {
  margin-bottom: 27px;
}
.faq_items:last-of-type {
  margin-bottom: 0 !important;
}
.faqbox {
  width: 32%;
  padding: 23px;
  background: #fff;
  border-radius: 25px;
  margin-bottom: 10px;
}
.faqbox:last-of-type {
  margin-bottom: 0 !important;
}
.faqbox:nth-child(2n) .flexbox {
  flex-direction: row-reverse;
}
/*text*/
.qt::before, .at::before {
  display: inline-block;
  position: absolute;
  left: 0;
  font-size: 1.4rem;
}
.qt {
  position: relative;
  margin-bottom: 10px;
  font-weight: 700;
  line-height: 1.6;
  padding-left: 35px;
  font-size: clamp(1rem, 0.6875rem + 1vw, 1.25rem);
}
.qt::before {
  content: "Q.";
  top: -0.2em;
}
.at {
  position: relative;
  padding-left: 35px;
}
.at::before {
  content: "A.";
  top: -0.35em;
  left: 0.05em;
  color: #de8600;
}
@media(max-width:1000px) {
  .faq .flexbox {
    display: block;
  }
  .faqbox {
    width: 100%;
  }
}
@media(max-width: 550px) {
  .faqbox {
    padding: 20px 15px;
    margin-bottom: 17px;
  }
}
/* お問い合わせ ======================*/
#contact {
  padding-top: 7px;
}
.contact_sec section .inner {
  max-width: 1050px;
}
.contact_sec .loop_anime {
  transform: scaleX(-1);
}
/**/
.contop {
  margin-bottom: 40px;
}
@media (max-width: 550px) {
  .contop {
    margin-bottom: 25px;
    font-size: 94%;
  }
}
/* 電話・FAX */
/*title*/
.contact_sec .stitle {
  margin-bottom: 7px;
}
/*box*/
@media (max-width:750px) {
  .telbox {
    margin-bottom: 10px;
  }
  .telbox:last-child {
    margin-bottom: 0;
  }
}
/* 番号 */
.telbox a {
  font-size: clamp(1.5rem, 1.25rem + 0.8vw, 1.7rem);
  color: #333;
  font-weight: 900;
}
.telbox a i {
  color: #de8600;
}
.telbox a:hover {
  opacity: 0.6;
}
.telwrap {
  margin-top: 0 !important;
}
.telwrap p {
  margin-top: 5px;
  margin-bottom: 0;
}
/*fax*/
.telboxwrap {
  margin-top: 50px;
}
.telboxwrap .telbox a {
  margin-right: 40px;
}
.telboxwrap .telbox p {
  margin-bottom: 4px;
}
.telboxwrap .telbox {
  display: flex;
  align-items: center;
}
.fcheck {
  display: flex;
}
.fcheck li {
  padding-left: 18px;
  margin-right: 20px;
  position: relative;
}
.fcheck li:last-child {
  margin-right: 0;
}
.fcheck li::before {
  font-family: "Font Awesome 6 Free";
  content: "\f14a";
  font-weight: bold;
  display: inline-block;
  font-size: .9em;
  position: absolute;
  top: 0.15em;
  left: 0;
}
@media (max-width: 965px) {
  .telboxwrap .telbox {
    display: block;
  }
  .telboxwrap .telbox a {
    margin-right: 0;
  }
  .telboxwrap .telbox p {
    margin-top: 7px;
  }
}
@media (max-width:550px) {
  .telboxwrap .telbox p, .fcheck li {
    font-size: 90%;
  }
}
@media (max-width: 500px) {
  .telboxwrap .telbox {
    display: block;
  }
  .telboxwrap .telbox p {
    margin-bottom: 7px;
  }
  .fcheck {
    display: block;
  }
  .fcheck li {
    margin-right: 0;
  }
}
/* メール */
.mnote {
  max-width: 905px;
  margin: auto;
  margin-top: 50px;
}
@media(max-width:550px) {
  .mnote {
    margin-top: 40px;
  }
}
.mailform .row {
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
}
.mailform .row:not(.last) {
  border-bottom: 0.9px dotted #333;
}
.mailform .row div {
  text-align: left;
}
.mailform .row div:nth-child(1) {
  width: 28%;
  font-size: 97%;
}
.mailform .row div:nth-child(2) {
  width: 70%;
  line-height: 1.5;
}
.mailform .row span {
  color: #fff;
  background: #333;
  padding: 6px 5px 5px;
  margin-right: 5px;
  font-size: 12px;
}
.mailsp {
  background: #fff !important;
  border: 1px solid #333;
  color: #333 !important;
}
.mailform .row small {
  display: block;
  margin-top: 3px;
}
.mailform .box, .mailform textarea {
  border: 1px solid #ddd;
  padding: 5px;
  width: 100% !important;
  border-radius: 0;
  -webkit-appearance: none;
  margin-bottom: 5px;
  background: #fff;
}
.mailform button {
  display: block;
  text-align: center;
  margin: 0 auto;
  white-space: nowrap;
  border: 1px solid #333;
  color: #333;
  background: #ffbd59;
  width: 260px;
  padding: 24px 0;
  transition: .4s;
  border-radius: 50px;
}
.mailform button:hover {
  background: #333;
  color: #fff;
}
.mailform button::before {
  font-family: "Font Awesome 6 Free";
  content: "\f0e0";
  font-weight: bold;
  margin-right: 10px;
}
.mails {
  padding-bottom: 60px;
}
/*チェックボックス*/
.mailform input[type=checkbox] {
  display: none;
}
.mailform input[type=checkbox] + label {
  display: inline-block;
  padding-left: 20px;
  position: relative;
  margin-right: 20px;
  margin-bottom: 10px;
  cursor: pointer;
}
.mailform input[type=checkbox] + label::before {
  background: #fff;
  border: 1px solid #b5b5b5;
  content: '';
  display: block;
  position: absolute;
  top: 55%;
  transform: translate(0, -50%);
  left: 0;
  width: 15px;
  height: 15px;
  border-radius: 3px;
}
.mailform input[type=checkbox] + label::after {
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
  content: '';
  display: block;
  height: 13px;
  width: 7px;
  opacity: 0;
  position: absolute;
  top: 25%;
  left: 4px;
  transform: rotate(45deg);
  transition: .1s;
}
.mailform input[type=checkbox]:checked + label::after {
  opacity: 1;
}
@media (max-width: 550px) {
  .mailform input[type=checkbox] + label {
    display: block;
  }
}
@media (max-width: 800px) {
  .mailform .row {
    padding: 20px 0;
    flex-direction: column;
  }
  .mailform .row div:nth-child(1) {
    width: 100%;
    margin-bottom: 20px;
  }
  .mailform .row div:nth-child(2) {
    width: 100%;
  }
}
@media (max-width: 550px) {
  .mails {
    padding: 25px 0 35px;
  }
  .mailform button {
    width: 220px;
    padding: 17px 0;
  }
  .selection small {
    font-size: 0.8rem;
  }
}
/* 個人情報の取り扱いについて */
.privacy {
  padding-top: 0;
}
/*アコーディオン*/
/*title*/
.accordion-titleWrap {
  border-bottom: 2px solid #333;
}
.accordion-title {
  position: relative;
  cursor: pointer;
  font-size: clamp(1.15rem, 0.7125rem + 1.4vw, 1.5rem);
  padding: 0 0 15px;
  transition: all .5s ease;
  line-height: 1.5;
  font-weight: 700;
}
.privacy .accordion-title span::before {
  font-family: "Font Awesome 6 Free";
  content: "\f023";
  font-weight: bold;
  margin-right: 7px;
}
/*アイコンの＋と×*/
.privacy .accordion-title::before, .privacy .accordion-title::after {
  position: absolute;
  content: '';
  width: 15px;
  height: 2px;
  background: #333;
  top: 40%;
  right: 0;
  transform: translateY(-50%);
}
.privacy .accordion-title::after {
  transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.privacy .accordion-title.close::before {
  transform: rotate(45deg);
}
.privacy .accordion-title.close::after {
  transform: rotate(-45deg);
}
/*アコーディオンで現れるエリア*/
.accordion-text {
  display: none; /*はじめは非表示*/
  padding: 13px 25px;
  font-size: 95%;
}
.accordion-text span {
  font-size: 103%;
}
.accordion-text span::before {
  content: "■";
  display: inline-block;
  font-size: 80%;
  margin-right: 0.35em;
  transform: translateY(-2px);
}
@media (max-width: 610px) {
  .privacy .accordion-title::before, .privacy .accordion-title::after {
    top: 14px;
  }
}
@media (max-width: 550px) {
  .privacy .accordion-title::before, .privacy .accordion-title::after {
    width: 13px;
  }
  .accordion-text {
    padding: 13px;
    font-size: 90%;
  }
}