@charset "UTF-8";
/*===============================================
 *	ブラウザリセット
===============================================*/
@font-face {
  font-family: 'Noto Serif JP';
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/NotoSerifJP-Bold.woff2") format("woff2"), url("../fonts/NotoSerifJP-Bold.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/NotoSansJP-Bold.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: medium;
  font-weight: 500;
  src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/NotoSansJP-Medium.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/NotoSansJP-Regular.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: 'Robot';
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/Roboto-Bold.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: 'Robot';
  font-style: black;
  font-weight: 900;
  src: url("../fonts/Roboto-Black.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: 'Robot Slab';
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/RobotoSlab-Bold.woff") format("woff");
  font-display: swap;
}

/* a:hover {filter: alpha(opacity=85);-moz-opacity: 0.85;opacity: 0.85;} */
/* html {overflow-x: hidden;overflow-y: scroll;} */
/*
body {font-size: 100%;font-family:'Noto Sans JP', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;letter-spacing: 0;height: 100%;}
*/
body {
  font-size: 100%;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;
  letter-spacing: 0;
  height: 100%;
  position: relative;
}

table {
  font-size: inherit;
}

select, input, textarea {
  font: 99% arial, helvetica, clean, sans-serif;
}

pre, code {
  font: 115% monospace;
  font-size: 100%;
}

br {
  letter-spacing: normal;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
  font-style: normal;
  font-weight: normal;
}

address, em {
  font-style: normal;
}

strong, th {
  font-weight: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
}

th, td {
  text-align: left;
  border: none;
  font-weight: normal;
}

hr {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: bold;
}

img, fieldset {
  border: 0;
  vertical-align: bottom;
}

li {
  list-style-type: none;
}

ul, ol, dl {
  margin: 0;
  list-style-position: outside;
  list-style-type: none;
}

li, dt, dd {
  font-size: 100%;
}

dt {
  font-weight: normal;
}

a {
  text-decoration: underline;
  outline: none;
}

a:hover {
  text-decoration: none;
}

form, input {
  padding: 0;
  margin: 0;
}

iframe {
  border: none;
}

figure {
  margin: 0;
}

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

p {
  line-height: 1.75;
  position: relative;
}

i {
  font-family: 'icon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* --------------このサイトオリジナル設定--------------- */
a {
  color: #333;
  outline: none;
  text-decoration: none;
}

:root {
  --site-primary: #0071ae;
  --site-secondary: #f8e61f;
  --site-keycolor: #ce3328;
}

/*====================== clearFix ======================*/
.clearfix:before, .clearfix:after {
  content: "";
  display: block;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

/*=============================================== *
	パターン
===============================================*/
.column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

.row-rev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.space-btw {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.space-around {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.js-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.al-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.al-start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.al-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.al-base {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}



/*===============================================

 *	common

===============================================*/
html body {
  color: #333;
  font-size: 18px;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%;
  letter-spacing: 0.05em;
}

em {
  font-weight: bold;
}

.sp {
  display: none;
}

.inner {
  max-width: 1300px;
  margin: 0 auto;
  width: 100%;
  position: relative;
}

.inner_s {
  max-width: 1136px;
  margin: 0 auto;
  width: 100%;
  position: relative;
}

.txt-small {
  font-size: 13px;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

.txt-caution {
  font-size: 12px;
}

.magb {
  margin-bottom: 70px;
}

.serif {
  font-family: 'Noto Serif JP', serif;
}

.robot {
  font-family: 'Robot Slab';
}

.txt_primarycolor {
  color: var(--site-primary);
}

.txt_secondarycolor{
  color: var(--site-secondary);
}

.txt_keycolor {
  color: var(--site-keycolor);
}

.txt_white {
  color: #fff;
}
.txt_red{
  color:var(--site-keycolor);
  font-weight: bold;
}
.txt_yellow{
  color:#f8e11f;
  font-weight: bold;
}

.bg_white {
  background-color: #fff;
}
.bg_primary{
  background:var(--site-primary);
}
.bg_gray {
  background-color: #ebecf1;
}
.stripe{
  background: url(../img/taxi_lp/stripe.png)repeat;
}
.lg_inner_space {
  padding: 60px 0 80px;
}

.bg_inner_space {
  padding: 80px 0;
}

.bg_gradation{
  background: linear-gradient(130deg, rgba(0, 79, 122, 1) 0%, rgba(0, 102, 158, 1) 100%);
}

.md_radius {
  border-radius: 10px;
  overflow: hidden;
}

.sm_radius {
  border-radius: 6px;
  overflow: hidden;
  /*height: fit-content;*/
}

.md_under_radius {
  border-radius: 0 0 10px 10px;
}

.annotation_txt {
  color: #999;
  font-size: 16px;
  padding-left: 1em;
  text-indent: -1em;
}

.hover_white {
  display: inline-block;
  position: relative;
}

.hover_white::after {
  content: '';
  display: block;
  background: #fff;
  width: 100%;
  height: 100%;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.hover_white:hover::after {
  opacity: 0.15;
}

.sub-attention{
  color: #333;
  font-size: 16px;
  margin-top: 18px;
  font-weight: bold;
  padding-left: 1em;
    text-indent: -1em;
}
.sub-attention span{
  color: #ce3328;
}
.sub-pay{
  color: #999;
  font-size: 16px;
  font-weight: bold;
  padding-left: 1em;
    text-indent: -1em;
}

@media screen and (min-width: 1025px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

@media only screen and (max-width: 1024px) {
  html body {
    font-size: 16px;
  }
  .inner {
    margin: 0 auto;
    max-width: initial;
    width: 94%;
  }
  /*.lg_inner_space {
    overflow: hidden;
  }*/
  .md_inner_space {
    padding: 4vw 4vw;
  }
  .md_inner_space02 {
    padding: 4vw 4vw;
  }
}

@media only screen and (max-width: 960px) {
  html body {
    font-size: 14px;
  }
  .lg_inner_space {
    padding: 5vw 0 10vw;
  }
  .annotation_txt {
    font-size: 14px;
  }
  .bg_inner_space {
    padding: 60px 0;
  }
}

@media only screen and (max-width: 568px) {
  html {
    scroll-padding-top: 65px;
  }
  html body {
    font-size: 15px;
  }
  .inner {
    margin: 0 auto;
    width: 89.4vw;
  }
  .magb {
    margin-bottom: 8%;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .lg_inner_space {
    padding: 40px 0;
  }
  .md_inner_space {
    padding: 30px 5.3vw;
  }
  .md_inner_space02 {
    padding: 30px 5.3vw 25px;
  }
  .sp_side_margin {
    margin: 0 -5.3vw;
  }
  .md_under_radius {
    border-radius: 0;
  }
  .caution_content div {
    padding: 10px;
    margin-top: 10px;
  }
  .bg_inner_space {
    padding: 40px 0;
  }
  .sub-attention{
    font-size: 12px;
    padding-left: 1em;
    text-indent: -1em;
  }
  .sub-pay{
    font-size: 12px;
  }
}

/*===============================================
 *	br
===============================================*/
@media screen and (min-width: 1021px) {
  .br-pc {
    display: block;
  }
  .br-tb {
    display: none;
  }
  .br-sp {
    display: none;
  }
}

@media screen and (min-width: 481px) and (max-width: 1020px) {
  .br-pc {
    display: none;
  }
  .br-tb {
    display: block;
  }
  .br-sp {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  .br-pc {
    display: none;
  }
  .br-tb {
    display: none;
  }
  .br-sp {
    display: block;
  }
}

/*===============================================
 *	汎用スタイルなど
===============================================*/
.ttl_skew {
  font-size: 52px;
  font-weight: bold;
  line-height: 1.3;
  -webkit-transform: skewX(-10deg) translateX(12px);
          transform: skewX(-10deg) translateX(12px);
}

.ttl_skew .line_side {
  font-size: 0.73em;
  position: relative;
}

.ttl_skew .line_side::before, .ttl_skew .line_side::after {
  content: '';
  width: 34px;
  height: 41px;
  position: absolute;
  top: 2px;
  -webkit-transform: skewX(10deg);
          transform: skewX(10deg);
}

.underline_blue {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(82%, transparent), color-stop(0%, rgba(0, 210, 217, 0.3)));
  background: linear-gradient(transparent 82%, rgba(0, 210, 217, 0.3) 0%);
  background-position-y: -4px;
}

.bg_square {
  position: relative;
  z-index: 10;
}

.bg_square::before {
  content: '';
  background: var(--site-primary);
  width: 250px;
  height: 250px;
  border-radius: 6px;
  position: absolute;
  z-index: -1;
}

.shadow_white {
  text-shadow: 4px 4px 0 #fff;
}

.dot {
  padding-top: 33px;
  position: relative;
}

.dot::before {
  content: '';
  width: 100%;
  height: 1em;
  position: absolute;
  top: 12px;
  left: 0;
  -webkit-transform: skewX(10deg);
  transform: skewX(0deg) translateX(3px);
  background-color: rgba(255, 255, 255, 0);
  background-image: radial-gradient(#f8e61f 11%, transparent 12%);
  background-size: 1em 1em;
}

.border_box {
  background: #fff;
  border: 4px solid var(--site-keycolor);
}

.border_box .box_ttl {
  font-size: 28px;
  background: var(--site-keycolor);
  padding: 15px 40px 17px 60px;
  position: relative;
  top: -1px;
}

.ttl_border {
  font-size: 42px;
  border-bottom: 5px solid #cdbea3;
  padding-bottom: 7px;
  margin-bottom: 35px;
}

.sec_ttl {
  font-size: 55px;
  line-height: .9;
  margin-bottom: 50px;
}

.sec_ttl .robot {
  font-size: 22px;
  color: #a3c0d9;
  letter-spacing: 0.08em;
}

.intro_box {
  text-align: center;
  margin-top: -10px;
}

.intro_txt {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 48px;
  display: inline-block;
  position: relative;
}

.intro_txt .size_large {
  font-size: 1.75em;
}

@media only screen and (max-width: 1024px) {
  .ttl_skew {
    font-size: 45px;
  }
  .sec_ttl {
    font-size: 50px;
  }
  .intro_txt {
    font-size: 22px;
  }
  .intro_txt .size_large {
    font-size: 1.6em;
  }
  .ttl_border {
    font-size: 36px;
  }
  .wave_top::before {
    height: 5vw;
    top: -5vw;
  }
}

@media only screen and (max-width: 960px) {
  .ttl_skew {
    font-size: 35px;
  }
  .ttl_skew .line_side::before, .ttl_skew .line_side::after {
    width: 25px;
    height: 30px;
  }
  .ttl_skew .line_side::before {
    left: -40px;
  }
  .ttl_skew .line_side::after {
    right: -40px;
  }
  .bg_arrow {
    padding-top: 20px;
  }
  .border_box .box_ttl {
    font-size: 23px;
  }
  .ttl_border {
    font-size: 30px;
    margin-bottom: 28px;
  }
  .intro_txt {
    font-size: 21px;
  }
  .intro_txt::before, .intro_txt::after {
    width: 25px;
    height: 25px;
  }
  .intro_txt::before {
    left: -35px;
    top: 0;
  }
  .intro_txt::after {
    bottom: 0;
  }
  .sec_ttl {
    font-size: 45px;
    margin-bottom: 40px;
  }
}

@media only screen and (max-width: 568px) {
  .ttl_skew {
    font-size: 30px;
    -webkit-transform: skewX(-10deg) translateX(1%);
            transform: skewX(-10deg) translateX(1%);
  }
  .ttl_skew .line_side {
    font-size: 0.63em;
  }
  .ttl_skew .line_side::before, .ttl_skew .line_side::after {
    width: 17px;
    height: 20px;
    top: 3px;
  }
  .ttl_skew .line_side::before {
    left: -29px;
  }
  .ttl_skew .line_side::after {
    right: -25px;
  }
  .bg_square::before {
    width: 168px;
    height: 168px;
  }
  .shadow_white {
    text-shadow: 3px 3px 0 #fff;
  }
  .bg_arrow::before {
    background-size: contain;
    bottom: -20px;
  }
  .dot {
    background-position: top 22px left -5px;
  }
  .border_box .box_ttl {
    font-size: 17px;
    padding: 10px 6vw 12px 60px;
  }
  .ttl_border {
    font-size: 26px;
    border-width: 3px;
    margin-bottom: 20px;
  }
  .sec_ttl {
    font-size: 30px;
    line-height: 1.2;
    margin-bottom: 20px;
  }
  .sec_ttl .robot {
    font-size: 0.49em;
  }
  .intro_box {
    margin-top: -5px;
  }
  .intro_txt {
    font-size: 17px;
    margin-bottom: 20px;
    display: block;
  }
  .intro_txt .size_large {
    font-size: 1.47em;
    line-height: 1.5;
  }
  .intro_txt .skew {
    -webkit-transform: translateX(-1%) skewX(-10deg);
            transform: translateX(-1%) skewX(-10deg);
  }
  .intro_txt::before, .intro_txt::after {
    width: 20px;
    height: 20px;
  }
  .intro_txt::before {
    left: -2px;
    top: -5px;
  }
  .intro_txt::after {
    right: -2px;
    bottom: -5px;
  }
  .annotation_txt {
    font-size: 12px;
    line-height: 1.45;
  }
  .wave_top::before {
    height: 25px;
    top: -25px;
  }
main {
  width: 100%;
}
}

/*===============================================
 *	ヘッダー・メインビジュアル
===============================================*/
.header {
  width: 100%;
  position: absolute;
  top:0;
  left: 0;
  z-index: 2;
}

.header .hd_inner {
  width: 100%;
  margin: 0 auto;
}


.header .logo_area {
  margin-right: auto;
  margin-left: 40px;
  width: 15%;
}

.header .logo_area a,
.header .logo_area a img {
  width: 337px;
}
.header_contact_pc{
  width: 50%;
  justify-content: end;
}

.header .header_tel {
  margin-right: 30px;
  max-width: 244px;
  width: 100%;
}
.header .header_tel img{
  width: 100%;
}
.sp_only{display: none;}

.header .header_line {
  max-width: 100px;
  width: 100%;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  background: #06c755;
  padding: 15px 0 17px;
}
.header .header_line img{
  width: 66px;
  height: 68px;
  margin: 0 auto;
  display: block;
}

@media only screen and (max-width: 1024px) {
  .header .logo_area {
    padding-left: 0;
  }
}

@media only screen and (max-width: 960px) {
  .header .logo_area {
    padding: 20px 20px 20px 0;
    margin-left:30px;
  }
  .header .header_tel {
    width: 43%;
  }
}

@media only screen and (max-width: 568px) {
  #header{
    transition: all, 0.5s;
  }
  .header {
    height: 60px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
  }
  .header .hd_inner {
    width: 100%;
    height: 100%;
    justify-content: space-between;
  }
  .header .logo_area {
    padding: 0 0 0 3.3vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    /*width: 52%;*/
    width: 72%;
    margin-right: 0;
    margin-left: 0;
  }
  .header .logo_area a,
  .header .logo_area a img{
    width: 100%;
    /*max-width: 180px;*/ 
  }
  .sp_only{
    display: block;
  }
  .sp_tel{flex-direction:initial;}


  .header .header_line:hover img {
    visibility: visible;
  }
}

.main_visual {
  background: url(../img/taxi_lp/mv_bg_img.jpg) no-repeat center top;
  background-size: cover;
  position: relative;
}

.mv_inner {
  width: 89.3vw;
  max-width: 1640px;
  margin: 0 auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 50% 50%;
      grid-template-columns: 50% 50%;
  -ms-grid-rows: auto auto 1fr;
      grid-template-rows: auto auto 1fr;
      /*ワンカラム時の余白▽*/
  /*padding: min(17vw, 140px) 0 min(6vw, 80px);*/
  /*ツーカラム時の余白▽*/
  padding: min(17vw, 140px) 0 min(8vw, 140px);
  
  /*padding: min(17vw, 140px) 0 min(6vw, 80px);*/
}
.mv-attention{
  color: #fff;
  font-size: 15px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
.mv-content{
  max-width: 650px;
  -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
}
.mv_inner .mv-point{
    max-width: 650px;
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3; 
}
.mv_inner .mv-point ul{
    gap:2%;
}

/*--項目が１つの場合--*/
.mv_inner .mv-point ul.one-column{
  gap: 0;
}
.mv_inner .mv-point ul.one-column li{
  width: 100%;
}
.mv_inner .mv-point ul.one-column img{
  width: 100%;
}
.mv_inner .mv-point ul.one-column picture,
.mv_inner .mv-point ul.one-column .txt{
  width: 50%;
}
.mv_inner .mv-point ul.one-column li p{
  padding: 1.4vw 0;
}
.mv_inner .mv-point ul.one-column li p,
.mv_inner .mv-point ul.one-column li p span{
  font-size: clamp(18px, 1.6vw, 24px);
}
@media only screen and (max-width: 960px) {
  .mv_inner .mv-point ul.one-column li p,
.mv_inner .mv-point ul.one-column li p span{
  font-size: clamp(12px, 1.6vw, 18px);
}
}
@media only screen and (max-width: 568px) {
  .mv_inner .mv-point ul.one-column li p{
    padding: 5vw 0;
  }
  .mv_inner .mv-point ul.one-column li p,
  .mv_inner .mv-point ul.one-column li p span{
    font-size: 14px;
  }

}
/*--項目が１つの場合end--*/

.mv_ttl .mv_txt {
  background: #bd8e4d;
  color: #fff;
  transform: skewX(-10deg);
  padding: 8px 0 10px;
  margin-bottom: 26px;
}
.mv_ttl .mv_txt p{
  transform: skewX(10deg);
  font-size: clamp(16px, 1.8vw, 28px);
  line-height: 1.5;
  text-align: center;
  margin: 0;
}
.mv_ttl .mv_txt p::before{
  content: '';
  background: url(../img/taxi_lp/ico-car02.png)no-repeat;
  width: 48px;
  height: 44px;
  background-size: contain;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  margin-top: -5px;
}
.mv_ttl h2{
  border-bottom: 1px solid #fff;
  padding-bottom: 35px;
}
.mv-content p{
  margin-bottom: 30px;
  font-size: clamp(18px, 1.5vw, 27px);
  margin-top: 20px;
  line-height: 1.5;
}
.txt{
  background: #fff;
}
.txt p{
  padding:18px 0 20px ;
  margin-bottom: 0;
}
.mv-content ul li{
  width: 48.5%;
}
.mv-point ul li p{
  font-size:clamp(16px, 1.6vw, 22px);
  line-height: 1.5;
}
.mv-point ul li p span{
  font-size:clamp(18px, 1.6vw, 25px);
}
.bg_hdttlbox{
  /*background: url("../img/taxi_lp/bg-stripe.png"),linear-gradient(135deg,  #0071ae 0%,#0172af 40%,#0172af 40%,#087cbb 50%,#158ecf 60%,#7db9e8 100%);*/
  background: #0071ae;
  background-size: auto;
  padding: 25px 0;
}
.hd_ttl{
  color: #fff;
  font-size: 30px;
  font-weight:normal;
  letter-spacing: .08em;
  line-height: 1;
}


@media only screen and (max-width: 1024px) {
  .mv-content p{
    font-size: 17px;
  }
  .mv_ttl .mv_txt p::before{
    width: 33px;
    height: 30px;
    margin-right: 7px;
    vertical-align: middle;
  }
  .mv_ttl .mv_txt p{
    font-size: clamp(14px, 1.8vw, 22px);
  }

}

@media only screen and (max-width: 960px) {
  .mv_inner {
    padding-top: 13vw;
  }
  .mv_ttl .mv_txt{
    padding: 12px 0 10px;
  }
  .mv_ttl .mv_txt p::before{

  }
  .mv_ttl .before_txt {
    margin-bottom: 22px;
  }
  .mv_ttl .after_txt {
    margin: 15px 0 17px;
  }
  .main_visual .ttl_box .main_ttl {
    font-size: 21px;
  }
  .mv-attention{
    font-size: 12px;
  }

  .bg_hdttlbox {
    padding: 15px 0;
  }
  .hd_ttl{
    line-height: 1.4;
  }
}

@media only screen and (max-width: 568px) {
  .main_visual {
    background: url(../img/taxi_lp/mv_bg_img_sp.jpg) no-repeat center top;
    background-size:100%;
    margin-top: -60px;
  }
  .mv_inner {
    -ms-grid-columns: auto;
        grid-template-columns: auto;
    -ms-grid-rows: auto 1fr 1fr;
        grid-template-rows: auto 1fr 1fr;
        padding-top: 70px;
        padding: min(19vw, 140px) 0 min(6vw, 0px);
  }
  .mv_inner .mv-content{
    margin-bottom: 180px;
  }
  .mv-content p{
    margin-top: 0;
  }
  .mv_inner .mv-point{
    max-width: 650px;
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3;
    background:url(../img/taxi_lp/stripe.png)repeat,linear-gradient(130deg, rgba(0,113,174,1) 0%, rgba(31,156,222,1) 100%);
    margin: 0 -5.35vw;
}
  .mv_inner .mv-point ul{
    gap: 5%;
    padding: 20px;
  }
  .mv_ttl .mv_txt{
    padding: 12px 0 10px;
  }
  .mv_ttl .mv_txt p{
    font-size: 16px;
    letter-spacing: 0;
  }
  .mv-content .mv-title_sub{
    font-size: 16px;
    margin-bottom: auto;
    letter-spacing: .05em;
  }
  .mv_ttl .mv_txt p::before{
    width: 24px;
    height: 22.5px;
    margin-right: 3px;
  }
  .mv_ttl .mv_txt{
    margin-bottom: 15px;
  }
  .mv_ttl h2{
    padding-bottom: 20px;
  }
  .mv_ttl {
    margin-bottom: 15px;
  }
  .mv_ttl .before_txt {
    font-size: 18px;
    padding: 4px 0 6px;
    margin-bottom: 10px;
  }
  .mv_ttl .before_txt span {
    padding-left: 25px;
  }
  .mv_ttl .after_txt {
    font-size: min(2.9vw, 12px);
    letter-spacing: 0.05em;
    margin: 5px 0 10px;
  }
  .mv_car {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
    width: 96.7%;
    -ms-grid-column-align: center;
        justify-self: center;
    margin: 0;
  }
  .main_visual .ttl_box {
    padding: 10px 20px 12px;
  }
  .main_visual .ttl_box .main_ttl {
    font-size: 19px;
  }
  .mv-attention{
    font-size: 12px;
    right: 20px;
    bottom: 23%;
  }
  .mv-point ul li p{
    font-size:15px;
    line-height: 1.5;
  }
  .mv-point ul li p span{
    font-size:16px;
  }
  .mv-point ul li .txt p{
    padding: 10px 0 12px;
  }
  .hd_ttl {
    font-size: 20px;
    line-height: 1.4;
  }
}

@media only screen and (max-width: 375px) {

.mv_inner .mv-content{
  margin-bottom: 170px;
}
}
/*===============================================
 *	出発地点 departure
===============================================*/
.departure{
  background: url(../img/taxi_lp/departure-bg.png)no-repeat center top;
}

.departure .departure-content{
  max-width: 907px;
  margin-left: 30%;
}
.departure .departure-content h3{
  font-size: clamp(24px, 2.9vw, 38px);
  margin-bottom: 45px;
  line-height: 1.5;
}

.departure .area-box dl{
  padding: 30px 50px;
  box-shadow: 0px 0px 25px 0px rgba(51, 51, 51, 0.1);
}
.departure .area-box dl:first-child{
  margin-bottom: 10px;
}
.departure .area-box dl dt{
  font-size: 28px;
  margin-bottom: 20px;
}
.departure .area-box dl dt::before{
  content: '';
  background: url(../img/taxi_lp/pin.svg)no-repeat;
  background-size: contain;
  width:24px ;
  height: 32px;
  display: inline-block;
  margin-right:12px ;
  margin-bottom: 5px;
  vertical-align: middle;
}
.departure .area-box dl dd{
  font-size: 18px;
}
@media only screen and (max-width: 1024px) {
  .departure{
    background-position:30% 0;
  }
  .departure .departure-content{
    margin-left: 38%;
  }
}

@media only screen and (max-width: 960px) {
  .departure .departure-content h3{
    font-size: 24px;
  }
  .departure .departure-content .area-box dl dd{
    font-size: 16px;
  }
  .departure .area-box dl{
    padding: 30px;
}
.departure .area-box dl dt{
  font-size: 24px;
}
}
@media only screen and (max-width: 568px) {
  .departure{
    background: url(../img/taxi_lp/departure-bg_sp.png)no-repeat center top;
    background-size: cover;
    background-position: center bottom;
  }
  .departure .departure-content{
    margin-left:0;
    margin-bottom: 75%;
  }
  .departure .departure-content h3{
    font-size: 23px;
    text-align: center;
    margin-bottom: 20px;
  }
  .departure .area-box dl{
    padding: 15px 20px;
  }
  .departure .area-box dl dt{
    font-size: 19px;
    margin-bottom: 8px;
  }
  .departure .area-box dl dt::before{
    content: '';
    background: url(../img/taxi_lp/pin.svg)no-repeat;
    background-size: contain;
    width:19px ;
    height: 25px;
    margin-right:5px ;
    margin-bottom: 3px;

  }
  .departure .departure-content .area-box dl dd{
    font-size: 14px;
  }


}
/*===============================================
 * ハピネスのペットタクシーとは	about
===============================================*/
.about {
  padding-bottom: 80px;
}
.about-bg{
  background: url(../img/taxi_lp/about-bg.jpg) no-repeat center top;
  background-size: cover;
  overflow: hidden;
}
.about .sec_ttl{
  line-height: 1.3;
  padding-top: 55px;
  margin-bottom: 20px;
}
.about .sec_ttl span{
  display: block;
  line-height: 3.5;
}
.about .about-intro ul{
  max-width: 768px;
  width: 100%;
  font-size: 22px;
}
.about .about-intro ul li{
  background: #fff;
  border-radius: 6px;
  margin-bottom: 13px;
  padding: 15px 0;
  width: 94%;
  position: relative;
}
.about .about-intro ul li::after{
  content: '';
  background:url(../img/taxi_lp/about-shape.svg) no-repeat;
  width: 30px;
  height: 17px;
  position: absolute;
  right: -30px;
  top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.about .about-intro img{
  max-width: 340px;
  margin-top: -50px;
}
.safety h3{
  margin-bottom: 30px;
}
.serif_title{
  background: url(../img/taxi_lp/fukidashi_blue.png)no-repeat;
  background-size:100% 100%;
  width: 100%;
  height: auto;
}
.serif_title h3{
  font-size: clamp(35px, 3vw, 45px);
  padding: 28px 0 35px;
}
.serif_title h3 span{
  font-size: clamp(45px, 3vw, 55px);
}

.serif_title h3 .dots{
  background-image: radial-gradient(circle at center, #f8e11f 15%, transparent 17%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1.015em 0.2em; /* 点の間隔とサイズ調整 */
  padding-top: 5px; /* 縦方向の位置調整 */
}

.content-large,
.content-small{
  gap: 3%;
  display: flex;
}
.content-large li{
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  width: 49%;
}
.content-large li .safety-img{
  position: relative;
}
.content-large li .safety-img::after{
  content: '';
  position: absolute;
  left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  bottom: -60px;
  width: 120px;
  height: 120px;
  background-size: contain;
  z-index: 2;
}
.content-large li:first-child .safety-img::after{
  background: url(../img/taxi_lp/ico-about01.png)no-repeat center;
}

.content-large li:nth-child(2) .safety-img::after{
  background: url(../img/taxi_lp/ico-about03.png)no-repeat center;
}

.safety_txt{
  background: url(../img/taxi_lp/stripe.png)repeat,linear-gradient(130deg, rgba(0,113,174,1) 0%, rgba(31,156,222,1) 100%);
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 80px 50px 50px;
}
.safety_txt h4{
  font-size: clamp(24px, 1.8vw, 32px);
  border-bottom: 1px solid #e1edf6;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.safety_txt dl dd{
  font-size: 19px;
  text-indent: -1.5em;
  padding-left: 1.5em;
  color: #e1edf6;
}
.safety_txt dl dd::before{
  content: '';
  background: url(../img/taxi_lp/ico-check.svg)no-repeat;
  width: 18px;
  height: 15px;
  display: inline-block;
  margin-right: 12px;
}
.content-small li{
  max-width: 630px;
  width: 100%;
  margin-bottom: 60px;
}
.content-small .txt-persons{
  background: url(../img/taxi_lp/stripe.png)repeat,linear-gradient(130deg, rgba(189,142,77,1) 0%, rgba(194,153,97,1) 100%);
  width: 50%;
  font-size: clamp(20px, 1.4vw, 28px);
  display: inline-block;
  vertical-align: middle;
  padding: 18px 0 16px;
  text-align: center;
}
.third{
  margin-bottom: 40px;
}
.third .safety-img{
  width: 50%;
}
.third .safety_txt img{
  max-width: 120px;
  margin: 0 auto 25px;
}
.third .safety_txt{
  padding: 40px 50px;
  width: 50%;
}
.content-small img{
  width: 50%;
  height: fit-content;
}
.content-small .txt-persons .stripe{
  padding: 40px 0;
  text-align: center;
}
.txt-persons span{
  background: #fff;
  color: #bd8e4d;
  width: 14%;
  height: 15%;
  display: inline-table;
  vertical-align: middle;
  line-height: 1.5;
  padding: 1px;
}
.txt-persons p{
  line-height: 1.5;
}
.txt-persons p span{
  margin-left: 5px;
  margin-top: -7px;
}

.safety-box{
  background: url(../img/taxi_lp/about-sub-bg.jpg)no-repeat center top;
  padding: 50px 80px;
  gap:5%;
}
.safety-box img{
  max-width: 540px ;
}
.safety-box p{
  font-size: clamp(20px, 2.2vw, 32px);
  line-height: normal;
}
.safety-box p span{
  font-size: clamp(28px, 2.2vw, 42px);
}




@media only screen and (max-width: 1024px) {
  .safety-box{
    background-size: 100% 100%;
    padding: 4vw;
  }
  .safety-box .sm_radius{
    width: 50%;
    height: fit-content;
  }
  .safety-box img{
    width: 100%;
    max-width: 100%;
  }
  .safety-box p{
    font-size: clamp(20px, 3vw, 24px);
    line-height: normal;
  }
  .safety-box p span{
    font-size: clamp(16px, 3vw, 30px);
  }

  .safety_txt{
    padding:60px 30px 30px ;
  }
  .content-small .txt-persons{
    padding: 13px 0 0;
  }
  .txt-persons span{
    width: 26px;
    height: 26px;
    line-height: 1.3;
  }
}

@media only screen and (max-width: 960px) {
  .about{
    padding-bottom: 50px;
  }
  .about .sec_ttl{
    font-size: 45px;
    padding-top: 40px;
  }
  .about-intro{
    max-width: 94%;
    margin: 0 auto;
  }
  .about .about-intro ul{
    font-size: 18px;
  }
  .serif_title{
    background: url(../img/taxi_lp/fukidashi_blue_sp.png)no-repeat;
    background-size:100% 100%;
  }
  .serif_title h3{
    font-size: clamp(25px, 3vw, 35px);
    line-height: 1.5;
    padding: 28px 0 40px;
  }
  .serif_title h3 span{
    font-size: clamp(35px, 3vw, 45px);
    line-height: 1.5;
  }

  .safety_txt h4{
    font-size: clamp(18px, 3vw, 24px);
  }
  .safety_txt .stripe{
    padding: 60px 30px 30px;
  }
  .safety_txt dl dd{
    font-size: 16px;
    text-indent: -1.9em;
    padding-left: 1.9em;
  }
  .content-small li{
    margin-bottom: 40px;
  }
  .content-small li img{
    max-width: 50%;
  }
  .content-small .txt-persons .stripe{
    padding: 8% 0;
  }
  .content-small .txt-persons{
    font-size: 16px;
    padding: 2% 0;
  }
  .txt-persons span{
    line-height: 1.65;
  }
  .content-large li .safety-img::after{
    bottom: -40px;
    width: 80px;
    height: 80px;
  }
  .content-large li:first-child .safety-img::after,
  .content-large li:nth-child(2) .safety-img::after{
    background-size: contain;
  }
  .third .safety-img{
    width: 50%;
  }
  .third .safety_txt img{
    max-width: 80px;
    margin: 0 auto 15px;
  }
  .third .safety_txt{
    padding: 20px 30px 20px;
    width: 50%;
  }

  }
  

@media only screen and (max-width: 568px) {
  .about{
    padding-bottom: 40px;
  }
  .about-bg{
    background: url(../img/taxi_lp/about-bg_sp.jpg)no-repeat center top;
    background-size: cover;
  }
  .about .sec_ttl{
    font-size: 30px;
  }
  .about .sec_ttl span{
    line-height: 2.5;
  }
  .about-intro{
    display: block;
    max-width: 89.4vw;
  }
  .about .about-intro ul{
    margin-bottom: 20px;
  }
  .about .about-intro ul li{
    width: 100%;
    margin-bottom: 20px;
  }
  .about .about-intro ul li:first-child::after,
  .about .about-intro ul li:nth-child(3)::after{
    background: url(../img/taxi_lp/about-shape_sp.svg)no-repeat;
    width: 25px;
    height: 20px;
    position: absolute;
    top:auto;
    right: auto;
    left: 80px;
    bottom: -28%;
  }
  .about .about-intro ul li:nth-child(2)::after{
    background: url(../img/taxi_lp/about-shape_sp.svg)no-repeat;
    width: 25px;
    height: 20px;
    position: absolute;
    top:auto;
    right: auto;
    right: 80px;
    transform: scale(-1, 1);
    bottom: -18%;
  }
  .about .about-intro img{
  max-width: 170px;
  margin: 0 auto;
  display: block;
 }
 .safety h3{
  margin-bottom: 5px;
 }
 .dot::before {
  top:20px;
 }
.content-large,
.content-small{
  display: block;
 }
 .content-small .txt-persons{
  padding: 2% 0 1%;
 }
 .serif_title{
  background-size:100% 100%;
}
.serif_title h3{
  font-size: 23px;
  line-height: 1.5;
  padding: 20px 0 30px;
}
.serif_title h3 span{
  font-size: 26px;
}
.serif_title h3 .dots {
  background-image: radial-gradient(circle at center, #f8e11f 19%, transparent 23%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1.015em 0.2em;
  padding-top: 5px;
}

 .safety_txt h4{
  font-size: 20px;
 }
 .content-large li{
  margin-bottom: 20px;
  width: 100%;
 }
 .content-large li .safety-img::after{
  bottom: -35px;
  width: 70px;
  height: 70px;
}
.safety_txt{
  padding: 45px 20px 30px;
}
.content-small li{
  margin-bottom: 20px;
}
.content-small .txt-persons span{
  width: 24px;
  height: 24px;
  line-height: 1.5;
  margin-left: 2px;
}
.safety-box{
  display: block;
  background: url(../img/taxi_lp/about-sub_bg_sp.jpg)no-repeat;
  background-size: cover;
  border:3px solid #004f7a;
  box-sizing: border-box;
  box-shadow: inset 1px 1px 1px rgba(255,255,255,.5),
            inset -1px -1px 1px rgba(255,255,255,.5);
  text-align: center;
  
}
.safety-box .sm_radius{
  width: 100%;
  margin-bottom: 10px;
}

.safety-box p{
  font-size: 16px;
  line-height: normal;
}
.safety-box p span{
  font-size:21px;
}
.third{
  flex-direction: column;
  margin-bottom: 20px;
}
.third .safety-img,
.third .safety_txt{
  width: 100%;
}
.third .safety_txt img{
  width: 70px;
  margin: -80px auto 15px;
}
.third .safety_txt{
  padding: 45px 20px 30px;
}
.third .safety_txt h4{
  font-size: 23px;
}
}
/*===============================================
 *	ドライバーのご紹介 driver
===============================================*/
.driver{
  background:#ebecf1;
}

.driver .inner::before{
  content: '';
  background: url(../img/taxi_lp/logo-driver.png)no-repeat;
  max-width: 830px;
  width: 100%;
  background-size: contain;
  height: 163px;
  position: absolute;
  left: 0;
  top:4%;
  z-index: 0;
}

.driver .sec_ttl{
  vertical-align: baseline;
  display:inline-block;
  position: relative;
  z-index: 3;
  text-indent: -0.3em;
}
.driver .sec_ttl span{
  margin-left:20px;
  position: absolute;
  bottom: -6px;
}

.driver .staff{
  gap: 40px;
  margin: 30px auto 70px;
  position: relative;
}

.driver .staff .introduction{
  width: 48%;
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto auto;
}

.driver .driver-content{
  grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
  z-index: 2;
  margin-top: 20px;
  position: relative;
}

 .driver-content p{
  margin-bottom: 35px;
  z-index: 2;
  position: relative;
}
 .staff .name p{
  margin-bottom: 0;
  font-size: 24px;
}

.staff .name .stripe{
  padding: 5px 20px;
}
.staff .name p.driver-name{
  font-size: 38px;
  margin-top: 10px;
}
.staff .name .bg_primary{
  display: inline-block;
}
.driver-name span{
  font-size: 22px;
}
.message01{
  max-width: 434px;
  margin: 25px 0 30px;
}
.message02{
  max-width: 456px;
  margin: 25px 0 30px;
}
.driver-img{
    grid-column: 1;
    grid-row: 1;
    z-index: 2;
}
.driver-point{
  background: #fff;
  padding: 30px 20px;
  box-shadow: 0px 0px 50px 0px rgba(51, 51, 51, 0.03);
  grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3;
}
.driver-point li{
  font-size: 22px;
  border-bottom: 1px dotted #cccccc;
  padding: 20px 0;
}
.driver-point li:first-child{
  padding-top: 0;
}
.driver-point li:last-child{
  border-bottom:none;
  padding-bottom: 0;
}
.driver-point li::before{
  content: '';
  background: url(../img/taxi_lp/check.png)no-repeat center top;
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: text-top;
  margin-right: 15px;
}

.sub_title_box{
  background: linear-gradient(130deg, rgba(0,79,122,1) 0%, rgba(0,102,158,1) 100%);
  transform: skewX(-10deg);
  width: 98.5%;
  margin: 0 auto 40px;
}
.sub_title_box h3{
  transform: skewX(10deg);
  font-size: clamp(18px, 3vw, 32px);
  padding: 15px 0 20px;
}
.sub_title_box h3 span{
  font-size: clamp(24px, 3vw, 42px);
}
.reassurance{
    gap:3%;
}

.reassurance li{
  max-width: 630px;
  box-shadow: 0px 0px 50px 0px rgba(51, 51, 51, 0.03);
  background: #fff;
  width: 49%;
}
.reassurance li h4{
  font-size: 34px;
}
.reassurance li p{
  font-size: 20px;
}
.reassurance li .txt{
padding: 30px 55px 40px ;
}

@media only screen and (max-width: 1024px) {
  .driver .staff{
    gap: 20px;
  }
  .staff .name{
    display: block;
    text-align: center;
  }
  .staff .name p.driver-name{
    margin-left: 0;
    font-size: 32px;
  }
  .driver-name span{
    font-size: 20px;
  }
  .message01,
  .message02{
    margin: 10px 0 20px;
    width: 90%;
  }
  .driver-point{
    padding: 20px 30px;
  }
  .sub_title_box {
    width: 96%;
    margin: 0 auto 30px;
  }
  .sub_title_box h3{
    font-size:22px;
  }
  .driver-point li {
    padding-left: 2.3em;
    text-indent: -2.3em;
    font-size: 20px;
}
.reassurance li h4{
  font-size: 24px;
}
.reassurance li .txt{
  padding:20px;
}

}

@media only screen and (max-width: 960px) {
  .reassurance li p{
    font-size: 16px;
  }
  }
  

@media only screen and (max-width: 568px) {
  .driver .inner{
    overflow: visible;
  }
  .driver .sec_ttl{
    line-height: .9;
  }
  .driver .sec_ttl span{
    position: static;
    margin-left: 0;
  }
  .driver .driver-content{
    grid-row: 1;
    -ms-grid-row: 1;
    margin-top: 0;
  }
  .driver-img{
    width: 100%;
    margin-bottom: 20px;
    grid-row: 2;
  }
  .driver .inner::before{
    z-index: 0;
    content: none;
  }
  .driver .staff .introduction{
    width: 100%;
  }
  .driver .staff{
    margin: 20px auto 30px;
  }
  .staff .name{
    display: inline-block;
    text-align: left;
  }
  .staff .name .stripe{
    padding: 5px 15px;
  }
  .staff .name p{
    text-align: left;
    font-size: 19px;
  }
  .staff .name p.driver-name{
    font-size: 27px;
  }
  .driver-name span{
    font-size: 17px;
  }
  .message01{
    width: 85%;
  }
  .message02{
    width: 100%;
  }
  .driver-point{
    padding: 20px;
  }
  .driver-point li::before{
    width: 25px;
    height: 25px;
    background-size: contain;
  }
  .driver-point li{
    font-size: 17px;
  }
  
  .reassurance{
    gap:4.5%;
  }

  .reassurance li{
    background: #fff;
  }
  .reassurance li .txt{
    display: flex;
    flex-direction: column;
    padding:10px 20px 20px;
  }
  .reassurance li .txt h4{
  font-size: 17px;
  flex-grow: 1;
  line-height: 1.5;
}
  .reassurance li .txt p{
    font-size: 14px;
    padding: 10px 0 0;
  }

  .sub_title_box{
    transform: skewX(0deg);
    padding: 0.3em 5.3vw 0.4em;
    width:auto;
    margin: 0 -5.3vw 20px;
  }
  .sub_title_box h3{
    transform:skewX(0deg) ;
    line-height: 1.5;
    padding: 5px 0 10px
  }
  
}

@media only screen and (max-width: 375px) {
  .driver-point li{
    font-size: 16px;
    padding-left: 2.5em;
    text-indent: -2.5em;
  }
}

/*===============================================
 *	料金プラン price
===============================================*/
.price .sec_ttl{
  margin-top: 20px;
  margin-bottom: 30px;
}
.price h3{
  font-size: 28px;
}
table.compare_table {
  width: 100%;
  margin: 45px 0 10px;
}
.mb65{
  margin-bottom: 65px;
}
table.compare_table th, table.compare_table td {
  font-size: 20px;
  text-align: center;
}
table.compare_table thead th {
  color: #fff;
}
table.compare_table tbody th {
  background: #f8f3ed;
  font-weight: bold;
  max-width: 245px;
  width: 20%;
  border: 1px solid #ccc;
  font-size: 22px;
}
table.compare_table tbody td {
  padding: 18px 0;
  border: 1px solid #ccc;
  font-weight: 500;
  max-width: 351px;
  width: 27%;
}
table.compare_table .none {
  background: #fff;
}

table.compare_table .line_txt{
  background: #cd3327;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  padding: 2px 10px;
  border-radius: 6px;
}

table.compare_table .color {
  color: #ce3328;
  font-weight: bold;
  font-size: 24px;
}
table.compare_table .f28{
  font-size: 28px;
}
table.compare_table .f28 span{
  font-size: 20px;
}
table.compare_table .f24{
  font-size: 24px;
}
table.compare_table .f25{
  font-size: 25px;
  line-height: 1.3;
}
table.compare_table .f22{
  font-size: 22px;
}
table.compare_table thead th.color {
  background:var(--site-primary) ;
  padding: 20px 0 28px;
}
table.compare_table thead th img {
  width: 34%;
}
table.compare_table thead th.gray {
  vertical-align: bottom;
}
table.compare_table thead th.gray div {
  background: #b98a4a;
  padding: 20px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #ccc;
  font-size: 26px;
  font-weight: bold;
}
table.compare_table thead th.gray div span{
  font-size: 22px;
}
table.compare_table .on {
  border: 4px solid var(--site-primary);
}

.tab-table{
  margin-bottom: 60px;
}
.tab-table .ico-title{
  font-size: 40px;
  border-bottom: 3px solid #e5e5e5;
  margin-bottom: 40px;
}
.tab-table .ico-title::before{
  content: '';
  background: url(../img/taxi_lp/ico-price.png)no-repeat;
  background-size: contain;
  width: 62px;
  height: 60px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 15px;
  padding-bottom: 14px;
}
.tab-table h5{
  font-size: 28px;
  margin-bottom: 45px;
  line-height: 1.5;
  background: #f8f3ed;
  border-radius: 6px;
  padding: 18px 0 23px;
}
.tab-table h5 span{
  font-size: 32px;
}
.marker{
  background: linear-gradient(transparent 70%, #f8e61f 70%);
  padding-left: 7px;
}

.change_element_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  align-items:flex-end;
  gap: 0 8px;
}

.change_element_btn {
  font-size: 24px;
  font-weight: bold;
  background: #fff;
  width: 350px;
  padding: 25px 0 23px;
  border: 2px solid #e4e4e4;
  border-bottom: none;
  box-sizing: border-box;
  border-radius: 10px 10px 0 0;
  margin: 0;
  cursor: pointer;
  color:#333;
}

.change_element_btn:hover {
  background: #ebecf1;
}

.change_element_btn.is_active {
  color: #fff;
  background: var(--site-primary);
  border: none;
  padding: 30px 0 27px;
}

.change_element_panel {
  display: none;
}

.change_element_panel.is_active {
  display: block;
}
.panel{
  background: #ebecf1;
  padding: 50px;
}
.change_element_panel table {
  width: 100%;
}
.change_element_panel table th,
.change_element_panel table td{
  width: 50%;
  text-align: center;
  border: 1px solid #cccccc;
  padding: 22px 0;
}
.change_element_panel table thead{
  font-size: 26px;
}
.change_element_panel table thead th{
  padding: 15px 0 18px;
  font-weight: bold;
}
.change_element_panel table  tbody th{
background: #f8f3ed;
font-size: 22px;
font-weight: bold;
}
.change_element_panel table tbody td{
  background: #fff;
  font-size: 20px;
  font-weight: 500;
}
.change_element_panel table tbody td.color{
  color: #ce3328;
  font-size: 28px;
  font-weight: bold;
}
.change_element_panel table tbody td.color span{
  font-size: 20px;
}
.tab-table .sub-attention{
  color: #999;
}
.point {
gap: 2%;
}
.point li{
  max-width: 295px;
}
.point li p{
  font-size: clamp(16px, 1.8vw, 25px);
  line-height: 1.5;
}
.point li p.sub-attention{
  font-size: 16px;
  color: #999;
}
.point li img{
  margin-bottom: 20px;
}
.price .sub-attention{
  color: #999;
}
.comparison h3{
  max-width:956px;
  margin: 0 auto;
}
.comparison table.compare_table{
  margin:45px 0 70px;
}
.comparison table.compare_table thead th.gray div {
 background: #999;
}
.comparison table.compare_table .on{
  border: 4px solid #65ccca;
}

.comparison table.compare_table tbody th,
.comparison table.compare_table tbody td{
  font-size: 20px;
  line-height: 1.5;
}
.comparison table.compare_table tbody td{
  width: 25%;
}
.comparison table.compare_table tbody th{
  padding: 20px 0;
  background: #f5f5f5;
}
.comparison table.compare_table tbody td.f28{
  font-size: 28px;
}
.comparison table.compare_table tbody td.f28 span{
  font-size: 20px;
}
.comparison table.compare_table tbody td.f28 span.line_txt{
  font-size: 18px;
}

.comparison table.compare_table tbody th.f22,
.comparison table.compare_table tbody td.f22{
  font-size: 22px;
}
.comparison table.compare_table tbody td.bold{
  font-weight: bold;
}
.comparison table.compare_table thead th img{
  width: 75.4%;
}
.comparison table.compare_table tbody th{
  width: 22%;
}
.txt_black{
  color: #333;
  font-size: 18px;
}

@media only screen and (max-width: 1024px) {

  .change_element_btn{
    font-size: clamp(18px, 1vw, 26px);
  }
  table.compare_table .color{
    font-size: 14px;
  }
  .comparison table.compare_table thead th img{
    width: 90%;
  }
  
}


@media only screen and (max-width: 960px) {
  table.compare_table thead th.gray div{
    font-size: 18px;
  }
  table.compare_table thead th.gray div span{
    font-size: 14px;
  }

  table.compare_table thead th.color{
    padding: 10px 0 20px;
  }
  .tab-table{
    margin-bottom: 40px;
  }
  .tab-table .ico-title {
    font-size: 32px;
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.2;
    text-align: left;
    padding-left: 1.6em;
    text-indent: -1.6em;
    padding-bottom: 10px;
}
.tab-table .ico-title::before{
  width:60px ;
  height:60px ;
  margin-right: 12px;
  margin-bottom: -15px;
}
table.compare_table .line_txt {
  display: block;
  margin-top: 10px;
  padding:5px 0;
  margin: -18px 0 15px;
  border-radius: unset;
}

}

@media only screen and (max-width: 568px) {
  table.compare_table thead th img {
    width: 60%;
}
  .price .sec_ttl {
    margin-bottom: 25px;
    margin-top: 0;
  }
  .price h3{
    font-size:19px ;
  }
  .price h3 span{
    font-size:20px ;
    letter-spacing: -1px;
  }
  table.compare_table tbody th{
    font-size: 15px;
  }
  table.compare_table thead th.gray div{
    font-size: 14px;
    flex-direction: column;
    line-height: 1.3;
    padding: 10px 0;
  }
  table.compare_table thead th.gray div span{
    font-size: 9px;
    line-height: 2;
  }
  table.compare_table .f28{
    font-size: 17px;
    line-height: 1.2;
  }
  table.compare_table .f28 span{
    font-size: 13px;
  }
  table.compare_table tbody th{
    width: 24%;
    padding: 15px 0;
  }
  table.compare_table tbody td{
    font-size: 15px;
    padding: 10px 0;
    line-height: 1.5;
  }
  table.compare_table .line_txt {
    margin:-10px 0 10px ;
    font-size: 12px;
}
  table.compare_table .f24{
    font-size: 15px;
  }
  table.compare_table .f22{
    font-size: 15px;
  }

table.compare_table thead th.color{
  padding: 13px 0;
}
table.compare_table .f25 {
  font-size: 15px;
}
table.compare_table{
  margin: 20px 0 10px;
}
.mb65{
  margin-bottom: 30px;
}
.tab-table{
  margin-bottom: 30px;
}
.tab-table .ico-title{
  font-size: 26px;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.2;
  text-align: left;
  padding-left: 1.6em;
  text-indent: -1.6em;
  padding-bottom: 10px;
  margin-bottom:25px ;
}
.tab-table .ico-title::before{
  width:48px ;
  height:48px ;
  margin-right: 8px;
  margin-bottom: -50px;
}
.tab-table h5{
  font-size: 20px;
  margin-bottom: 25px;
  padding: 8px 0 15px;
}
.tab-table h5 span{
  font-size: 20px;
}
.marker{
  padding-left: 5px;
}
.change_element_content{
  flex-wrap: wrap;
  gap:3%;
  row-gap: 10px;
  margin-bottom: 20px;
}
.change_element_content .change_element_btn{
  width: 48.5%;
  border-radius: 10px ;
  border-bottom:2px solid #e4e4e4;
  padding: 12px 0 ;
}
.change_element_btn.is_active{
  padding: 15px 0 12px;
}
.sp_only p{
  font-size: 21px;
  margin-bottom: 5px;
}
.sp_only p.indent{
  padding-left: 0.8em;
  text-indent: -0.8em;
}
.sp_only p::before{
  content: '■';
  color: var(--site-primary);
  font-size: 13px;
  vertical-align: middle;
  margin-right: 5px;
}
.panel{
  background: none;
  padding: 0;
}
.change_element_panel table thead th{
  font-size: 19px;
  padding: 6px 0 9px;
}
.change_element_panel table tbody th{
  font-size: 17px;
  padding: 8px 0 10px;
}
.change_element_panel table th, .change_element_panel table td{
  padding:13px 0 ;
}
.change_element_panel table tbody td{
  font-size: 15px;
}
.change_element_panel table tbody td.color{
  font-size: 22px;
  line-height: 1.2;
  padding: 8px 0 10px;
}
.change_element_panel table tbody td.color span{
  font-size: 15px;
}

.price .sub_title_box h3{
  font-size: 20px;
} 
.price .sub_title_box h3 span{
  font-size: 24px;
}
.point{
  flex-wrap: wrap;
  gap: 20px 13px;

}
.point li{
  width: 48%;
}
.point li img{
  margin-bottom: 10px;
}
.point li p{
  font-size: 17px;
}
.point li p.sub-attention{
  font-size:12px;
}
.price .lg_inner_space{
  padding-bottom: 40px;
}
.comparison table.compare_table{
  margin:20px 0 30px;
}

.comparison table.compare_table .on{
  border: 2px solid #65ccca;
}

.comparison table.compare_table thead th.color{
  font-size: 20px;
}
.comparison table.compare_table thead th.gray div{
  padding: 15px 0;
}

.comparison table.compare_table tbody td.f28{
  font-size: 17px;
}
.comparison table.compare_table tbody td.f28 span{
  font-size: 13px;
}
.comparison table.compare_table tbody td.f28 span.line_txt{
  font-size: 12px;
}
.comparison table.compare_table tbody th.f22{
  font-size: 14px;
}
.comparison table.compare_table tbody th{
  font-size: 12px;
  width: 25%;
  padding: 5px 0;
}
.comparison table.compare_table tbody td.f22{
  font-size: 13px;
  letter-spacing: 0;
}
.comparison table.compare_table tbody td.sp-f12{
  font-size: 12px;
}
.comparison table.compare_table tbody td{
  font-size: 13px;
}
.comparison table.compare_table thead th.color{
  padding: 4px 0 13px;
}
.txt_black{
  font-size: 13px;
}

}
@media only screen and (max-width: 375px) {
  .point li{
    width: 47%;
  }
  .comparison table.compare_table tbody td.f22{
    font-size: 12px;
  }
  .comparison table.compare_table tbody td{
    font-size: 12px;
  }
  .txt_black{
    font-size: 12px;
  }
}

/*240424追加*/
.round_trip{
  margin-bottom: 70px;
}
.round_trip .fukidashi{
  background: url(../img/taxi_lp/fukidashi_gold.png)no-repeat;
  background-size: 100% 100%;
  margin-bottom: 20px;
}
.round_trip .fukidashi h3{
  font-size: clamp(35px, 3vw, 45px);
  padding: 30px 0 34px;
}
.round_trip .fukidashi h3 span{
  font-size: clamp(45px, 3vw, 55px);
  color: #f8e11f;
  background-image: radial-gradient(circle at center, #f8e11f 15%, transparent 17%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1.015em 0.2em; /* 点の間隔とサイズ調整 */
  padding-top: 5px; /* 縦方向の位置調整 */
}
.round-box{
  background:#f8f3ed;
  border: 4px solid #b98a4a;
  border-radius: 10px;
  padding: 50px 54px;
}
.round-content{
  width: 100%;
}
.round-content ul{
  width: 50%;
  padding: 40px;
}
.round-content ul li::before{
  content: '';
  background: url(../img/taxi_lp/check.png)no-repeat;
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  background-size: contain;
}
.round-content ul li{
  font-size: 22px;
  text-indent: -1.8em;
  padding-left: 1.8em;
  border-bottom: 2px dotted #cccccc;
  line-height: 1.5;
  padding-top: 20px;
  padding-bottom: 20px;
}
.round-content ul li:first-child{
  padding-top: 0;
}
.round-content ul li:last-child{
  border-bottom: none;
  padding-bottom: 0;
}
.round-content ul li span{
  font-size: 25px;
  color: #ce3328;
}
.round-img{
  background: #f5e8d6;
  width: 50%;
  padding: 65px 34px 30px;
}
.round-img img{
  max-width:519px;
}
.round-img p{
  text-align: right;
  color: #ce3328;
  font-size:16px;
  font-weight: bold;
}
.round-point{
  position: relative;
}
.round-point::before{
  background: url(../img/taxi_lp/arrow.png)no-repeat;
  background-size: contain;
  width: 516px;
  height: 93px;
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.round-point h4{
  position: relative;
  padding-top: 40px;
  padding-left: 245px;
  font-size: clamp(24px, 2.5vw, 32px);
  line-height: 1.5;
}
.round-point h4 span{
  font-size: clamp(32px, 3vw, 42px);
  color: var(--site-primary);
}
.round-point h4::before{
  background: url(../img/taxi_lp/round_img.png)no-repeat;
  background-size: contain;
  width: 175px;
  height: 184px;
  content: '';
  position: absolute;
  bottom: -50px;
  left: 2vw;
}

@media only screen and (max-width: 1024px) {}

@media only screen and (max-width: 960px) {
  .round_trip .fukidashi h3{
    font-size: clamp(28px, 2vw, 35px);
  }
  .round_trip .fukidashi h3 span{
    font-size:clamp(32px, 3vw, 45px);
  }
  .round-content{
    flex-direction: column;
  }
  
  .round-box{
    padding: 30px 34px;
  }
  .round-content ul,
  .round-content .round-img{
    width:100%;
  }
  .round-content ul{
    padding: 30px;
  }
  .round-point h4::before{
    bottom: -30px;
  }
  .round-content .round-img img{
    max-width: 100%;
  }
}

@media only screen and (max-width: 568px) {
  .round_trip{
    margin-bottom: 35px;
  }
  .round_trip .fukidashi{
    padding: 0.3em 5.3vw 0.4em;
    width: auto;
    margin: 0 -5.3vw 5px;
    background: url(../img/taxi_lp/fukidashi_gold_sp.png)no-repeat;
    background-size: contain;
  }
  .round_trip .fukidashi h3{
    font-size: 23px;
    padding: 5px 0 42px;
  }
  .round_trip .fukidashi h3 span{
    font-size: 26px;
    background-image: radial-gradient(circle at center, #f8e11f 19%, transparent 23%); /* 点の色とサイズ調整 */
    background-position: top right; /* 点の位置 */
    background-repeat: repeat-x; /* 横方向に繰り返し */
    background-size: 0.955em 0.2em; /* 点の間隔とサイズ調整 */
    padding-top: 5px; /* 縦方向の位置調整 */
  }

  .round-box{
    padding: 20px 5.3vw 30px;
    width: auto;
    margin: 0 -5.3vw 5px;
    border-left: none;
    border-right: none;
    border-radius: 0;
  }

  .round-point::before{
    background: url(../img/taxi_lp/arrow_sp.png)no-repeat;
    background-size: contain;
    width: 100%;
  }
  .round-img{
    padding: 20px;
  }
  .round-img p{
    font-size: 12px;
  }
  .round-content ul{
    padding: 20px;
  }
  .round-content ul li::before{
    width: 25px;
    height: 25px;
  }
  .round-content ul li{
    font-size: 17px;
  }
  .round-content ul li span{
    font-size: 20px;
  }
  .round-point h4{
    padding-left: 29%;
    font-size: 17px;
    padding-top: 20px;
  }
  .round-point h4 span{
    font-size: 23px;
  }
  .round-point h4::before{
    background: url(../img/taxi_lp/round_img_sp.png)no-repeat;
    background-size: contain;
    width: 86px;
    height: 123px;
    bottom: -30px;
    left: 0;
  }
}
@media only screen and (max-width: 375px) {
.round_trip .fukidashi h3{
  padding: 5px 0 27px;
}
}
/*===============================================
 *	送迎事例 CASES
===============================================*/
.cases{
  background: #ebecf1;
  padding: 80px 0 120px;
}
.slider{
  width: 100%;
  margin: 0 auto;
}
.slider-img{
  height: auto;
  opacity: .3;
  transform: scale(.92);
  transition: opacity .5s, transform .5s;
  width: 100%;
}
/* 中央のスライド */
.slider .slick-center{
  opacity: 1;
  transform: scale(1);
  max-width: 1300px;
}

.slick-track {
  display: flex;
  align-items: center;
}
.slick-slide {
  height: auto !important;
}
.slick-dots{
  display: flex;
  justify-content: center;
  gap:10px;
}


.case-box{
  background: #fff;
  max-width: 1300px;
}
.slider-img .case-ttl h3{
  font-size: clamp(20px, 2vw, 36px);
  display: flex;
  align-items: center;
}
.slider-img .case-ttl h3::before{
  content: '';
  background-size: contain;
  width: 66px;
  height: 66px;
  display: inline-block;
  vertical-align: middle;
  margin:12px 20px 12px 40px;
}
.slider-img .case-ttl h3.case01::before {
  background: url(../img/taxi_lp/number_w01.svg)no-repeat;
}
.slider-img .case-ttl h3.case02::before {
  background: url(../img/taxi_lp/number_w02.svg)no-repeat;
}
.slider-img .case-ttl h3.case03::before {
  background: url(../img/taxi_lp/number_w03.svg)no-repeat;
}
.slider-img .case-ttl h3.case04::before {
  background: url(../img/taxi_lp/number_w04.svg)no-repeat;
}


.slider button.arrow-common {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  width: 60px;
  height: 60px;
  cursor: pointer;
  z-index: 5;
}


.slider button.arrow-next{
  background: url(../img/taxi_lp/slider-next.svg)no-repeat!important;
  background-size: contain!important;
  position: absolute;
  top: 50%;
  right: 11%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 10; 
}

.slider button.arrow-prev{
  background: url(../img/taxi_lp/slider-prev.svg)no-repeat!important;
  background-size: contain!important;
  position: absolute;
  top: 50%;
  left: 11%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 10; 
}
.slider button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}

.slider button:focus {
  outline: none;
}

.case-content{
  padding: 40px 50px;
  width: 100%;
}
.case-content .row{
  gap:4%;
}
.case-left{
  max-width: 580px;
  width: 100%;
}
.case-right{
  max-width: 580px;
  width: 100%;
}
.case-right h4{
  font-size: 30px;
  line-height: .8;
  margin-bottom: 25px;
}
.case-content .case-right dl{
  gap: 0;
  margin-bottom: 30px;
}
.case-right dl dt{
  background: #b98a4a;
  color: #fff;
  width: 25%;
  text-align: center;
  padding: 8px 0;
  font-size:clamp(14px,1.2vw,19px);
  font-weight: bold;
}
.case-right dl dd{
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: 25%;
  text-align: center;
  padding: 8px 0;
  font-size:clamp(14px,1.2vw,19px);
  font-weight: bold;
}
.case-right table {
  width: 100%; 
}
.case-right table th,
.case-right table td{
  text-align: center;
  width: 50%;
  border: 1px solid #ccc;
  box-sizing: border-box;
  font-weight: bold;
}
.case-right table thead th{
  font-size: 25px;
  padding: 13px 0;
}
.case-right table tbody{
  background:#f8f3ed ;
}
.case-right table tbody th{
  font-size: 25px;
  padding: 18px 0;
  line-height: 1;
}
.case-right table tbody th span{
  color: #fff;
  background: #ce3328;
  font-size: clamp(12px, 1.2vw, 15px);
  border-radius: 20px;
  padding:0 4%;
  vertical-align: text-bottom;
  margin-left: 4%;
  display: inline-block;
  font-weight: 500;
  line-height: 2;
}
.case-right table tbody td{
  font-size: 30px;
  color: #ce3328;
  padding: 15px 0;
}
.case-right table tbody td span{
  font-size: 20px;
}
.case-content .sub-attention{
  color: #999999;
  margin-top: 10px;
}
.result{
  background: #ebecf1;
  font-size: 24px;
  margin-top: 50px;
  padding: 8px 0 10px;
}
.result ul{
  gap:2%;
}
.result ul li{
  font-weight: bold;
  font-size: clamp(16px, 1.8vw, 24px);
}
.result span{
  font-size: clamp(24px, 1.8vw, 30px);
}

.result span.small{
  font-size: 22px;
}
.distance-img{
  margin: 30px auto 30px;
}
.slide-01 .distance-img{
  max-width: 513px;
}
.slide-02 .distance-img{
  max-width: 736px;
}
.slide-03 .distance-img{
  max-width: 651px;
}
.slide-04 .distance-img{
  max-width: 962px;
}
.customer{
  background: #f5f5f5;
  padding: 45px;
}
.customer img{
  max-width: 180px;
}
.customer_txt{
  max-width: 890px;
}
.customer_txt h5{
  font-size: 30px;
  border-bottom: 2px solid #e5e5e5;
  padding-left: 23px;
  margin-bottom: 10px;
  position: relative;
}
.customer_txt h5::before{
  content: '■';
  color: var(--site-primary);
  font-size: 10px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
}
.customer_txt p{
  line-height: 1.9;
}

@media only screen and (max-width: 1024px) {
  .case-content{
    padding: 30px;
  }
  .result{
    font-size: 20px;
  }
  .result span{
    font-size: 24px;
  }
  .result .row{
    justify-content: space-around;
  }
  .prev-arrow { 
    left: 4%;
  }
  .next-arrow {
    right: 4%;
  }
  .case-right dl dt{
    width: 28%;
  }
  .case-right dl dd{
    width: 22%;
  }
}

@media only screen and (max-width: 960px) {
  .customer{
    padding: 30px;
  }
  .slider-img .case-ttl h3{
    line-height: 1.5;
    display: flex;
    align-items: center;
  }
  .slider-img .case-ttl h3::before{
    width: 46px;
    height: 46px;
    margin: 12px 10px 12px 20px;
  }
  .case-right h4{
    font-size: 32px;
  }
  .case-right table thead th{
    font-size: 20px;
  }
  .case-right table tbody th{
    font-size: 18px;
  }
  .case-right table tbody th{
    line-height: 1.5;
  }
  .case-right table tbody th span{
    margin-left: 0;
    padding: 2px 5px 3px;
    line-height: 1.5;
  }
  .case-right table tbody td{
    font-size: 22px;
  }
  .cv-content .sub-attention{
    padding-left: 1em;
    text-indent: -1em;
  }
  .slider button.arrow-common{
    width: 50px;
  }
  .slider button.arrow-next{
    right: 2%;
  } 
  .slider button.arrow-prev{
    left: 2%; 
  }

}

@media only screen and (max-width: 568px) {
  .cases{
    padding: 40px 0;
  }
  .slider-img{
    opacity: .5;
    transform: scale(.95);
  }
  .hide-content{
    display: none;
  }
  .case-box{
    width: 100%;
    max-width: 100%;
}
.slider-img .case-ttl h3{
  font-size: 18px;
}
.slider-img .case-ttl h3::before{
  width: 40px;
  height: 40px;
  background-size: contain;
}
.case-ttl .stripe{
  padding: 10px 15px;
}
.slider-img .case-ttl h3{
  padding-left: 2.7em;
  text-indent: -2.7em;
  line-height: 1.5;
  display: inline-block;
}
.slider-img .case-ttl h3::before{
  margin:0 10px -20px 0;
  vertical-align: middle;
}
.case-content{
  padding: 20px 10px;
}
.case-content .row{
  flex-wrap: wrap;
  justify-content: left;
}
.case-left{
  width: 48%;
}
.case-right{
  width: 100%;
  margin-bottom: 20px;
}
.case-content .case-right dl{
  margin-bottom: 15px;
}
.case-right dl dt,
.case-right dl dd{
  font-size: 14px;
  padding: 6px 0;
}

.case-left dl{
  margin-top: 10px;
}

.case-right h4{
  font-size: 21px;
  margin-bottom: 15px;
}

.case-right table thead th{
  font-size: 17px;
  width: 40%;
  padding: 8px 0 10px;
}
.case-right table tbody th{
  font-size: 17px;
  line-height: 1.3;
  padding: 8px 0 10px;
  width: 25%;
}
.case-right table tbody th span{
  font-size: 11px;
  padding: 1px 7px 3px;
}
.case-right table tbody td{
  font-size: 22px;
  width: 40%;
  padding: 8px 0 10px;
}

.case-right table tbody td span{
  font-size: 14px;
}
.slide-03 .result{
  padding:10px 13px ;
}
.result{
  padding: 10px 13px;
  margin-top: 0;
  width: 48%;
}
.hospital{
  padding: 10px 13px;
}
.result ul li{
  font-size: 16px;
  line-height: 1.4;
}
.result ul li span{
  font-size:18px;
}
.result span.small_sp{
  font-size: 14px;
}
.slide-01 .distance-img{
  max-width: 226px;
}

.slide-03 .distance-img{
  max-width: 245px;
}
.slide-04 .distance-img{
  max-width: 323px;
}

.distance-img{
  margin: 15px auto;
}
.case-content .sub-attention{
  line-height: 1.5;
}
.customer{
  padding: 15px 20px;
  display: block;
}
.customer img{
  max-width:90px;
  float: left;
  margin: 0 20px 10px 0;
}
.customer_txt h5{
  font-size: 21px;
  display: inline-block;
  width: 57%;
  padding-left: 20px;
}
.customer_txt h5::before{
  margin-top: -11px;
  font-size: 12px;
}
.customer::after{
  clear: both;
}
/*
.more_btn{
  background: #fff;
  margin: 0 auto;
  padding-bottom: 30px;
}
button.more {
  width: 82%;
  margin: 0px auto;
  display: block;
  background-color: var(--site-primary);
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  padding:10px 15px;
  border: none;
  outline: 0;
  transition: .5s;
  -webkit-transition: .5s;
  position: relative;
 }
   
button.more::before {
  content: "もっと見る";
  transition: .2s;
  -webkit-transition: .2s;
  font-size: 18px;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;
}
button.more::after {
  content: '';
  background:url(../img/taxi_lp/icon_arrow-top.svg)no-repeat ;
  width:15px ;
  height:9.5px ;
  position: absolute;
  right: 20px;
  top:40%;
  transform: rotate(180deg);
}
  
button.more.on-click::before{
  content: "閉じる";
}
button.more.on-click::after {
  content: '';
  background:url(../img/taxi_lp/icon_arrow-top.svg)no-repeat ;
  width:15px ;
  height:9.5px ;
  position: absolute;
  right: 20px;
  top:40%;
  transform: rotate(0deg);
}*/
.slide-02 .distance-img{
  width: 91.5%;
}
.slider button.arrow-common{
  width: 30px;
}
.slider button.arrow-next{
  right: 2%;
  top:33.5%;
} 
.slider button.arrow-prev{
  left: 2%;
  top:33.5%;
}
/*.slick-slider{
  background: #fff;
}*/
}

@media only screen and (max-width: 375px) {
  .customer_txt h5{
    width: 54%;
    padding-left: 15px;
    font-size: 18px;
  }
  .result ul li{
    font-size: 15px;
    line-height: 1.5;
  }
  .result ul li span{
    font-size:16px;
  }
  .result span.small_sp{
    font-size: 13px;
  }
}
/*===============================================
 *	CVエリア
===============================================*/

.cv-area .cv_ttl {
  background: #00456b; 
}
.cv-area h3{ 
  font-size: clamp(30px, 2.9vw, 42px);
  color: #fff;
  padding:20px 0;
  letter-spacing: 1px;
}
.cv-area h3 small{
  font-size: 35px;
  margin:0 3px;
}
.cv-area .pay-box{
  border:2px solid #fff;
  box-sizing: border-box;
  font-size: clamp(18px, 2vw, 24px);
  padding: 12px 20px 10px;
  margin-right: 30px;
}
.cv-area .cv-content{
  background: rgb(0,102,158);
  background: url(../img/taxi_lp/cv-bg.png)no-repeat center top,linear-gradient(270deg, rgba(0,102,158,1) 0%, rgba(0,79,122,1) 100%);
  background-size: 100%;
  background-position: 0% 36%;
  max-width: 1920px;
  padding: 5px 0 30px;
}
.cv-content .cv-images{
  max-width: 520px;
  width: 100%;
  margin:0 0 -18px 35%;
  position: relative;
}
.cv-content .cv-images .car{
  max-width: 391px;
  margin-right: auto;
  display: block;
}
.cv-content .cv-images .pet{
  max-width: 130px;
  position: absolute;
  right: 0;
  bottom: 0;
}
.cv-content .cv-btn-area{
  background-color: #fff;
  align-items: center;
  padding:25px 50px;
  margin-bottom: 15px;
  border-radius: 10px;
}
.cv-content .cv-btn-area .row{
  gap: 10px;
}
.cv-content .cv-btn-area .cv-line{
  height: fit-content;
}
.cv-line{
  position: relative;
}
.cv-line::before{
  content: '';
  background: url(../img/taxi_lp/cv-speech_pc.png)no-repeat;
  background-size: contain;
  width: 345px;
  height: 60px;
  position: absolute;
  left: 0;
  top:-70px;
}
.cv-content .cv-btn-area .cv-line a{
  background:#06c755;
  padding: 10px 30px;
  width: 100%;
  height: auto;
  display: block;
}
.cv-content .cv-btn-area .cv-tel a{
  width: 100%;
  height: auto;
  background:var(--site-primary);
  padding: 20px 30px;
  display: block;
}

.cv-content .sub-attention{
  color: #333;
  font-size: 16px;
}

.cv-content span{
  color: #ce3328;
}


@media only screen and (max-width: 1024px) {
  .cv-content .cv-images{
    margin:0 0 -18px 25vw;
  }
  .cv-content .cv-btn-area .cv-line a{
    padding: 13px 30px;
  }
  .cv-line::before{
    width: 70%;
    top:-70%;
  }
 
}
@media only screen and (max-width: 960px) {
  .cv_area {
    padding-bottom: 10vw;
  }
  .cv-area .pay-box{
    width: 100%;
    margin-right: 0;
    text-align: center;
  }
  .cv-area h3{
    text-align: center;
    font-size: 32px;
  }
  .cv-area h3 span{
    display: block;
    text-align: center;
    margin: 0 auto;
  }
  .cv-content .cv-btn-area {
    padding: 25px 30px;
  }
  .cv-area .cv-content{
    background: url(../img/taxi_lp/cv-bg_sp.png)no-repeat,linear-gradient(270deg, rgba(0,102,158,1) 0%, rgba(0,79,122,1) 100%);
    background-position:center 15%;
    background-size: contain;
  }
  .cv-content .cv-btn-area .cv-tel a{
    padding: 21px 20px;
  }
  .cv-content .cv-btn-area .cv-line a{
    padding: 15px 20px;
  }
  .cv-content .cv-images{
    margin:0 0 -18px 25vw;
    max-width: 50%;
  }
  .cv-content .cv-images .car{
    width: 80%;
  }
  .cv-content .cv-images .pet{
    width: 25%;
  }

}

@media only screen and (max-width: 568px) {
  .cv-area h3{
    font-size: 23px;
    padding-bottom: 15px;
  }
  .cv-area h3 span{
    line-height: 1.5;
  }
  .cv-area h3 .pay-box{
    font-size: 19px;
    padding:2px 0 4px;
    margin-bottom: 10px;
  }
  .cv-area h3 small{
    font-size: 20px;
  }
  .cv-area .cv-content{
    background-position: center 7%;
  }
  .cv-content .cv-images{
    max-width: 66%;
    margin: 8px auto -8px;
  }
  .cv-content .cv-images .car{
    max-width: 195.5px;
    width: 100%;
  }
  .cv-content .cv-images .pet{
    max-width: 68.5px;
    right: -35px;
    bottom: 0;
  }
  .cv-content .cv-btn-area{
    padding:20px 17px 17px;
    margin-bottom: 0;
  }
  .cv-content .cv-btn-area ul{
    display: block;
  }
  .cv-content .cv-btn-area .cv-tel a{
    padding: 12px 28px 12px;
  }
  .cv-content .cv-btn-area .cv-line{
    margin-bottom: 10px;
  }
  .cv-content .cv-btn-area .cv-line a{
    padding: 12px 28px 2px;
  }
  .cv-line::before{
    content: '';
    background: url(../img/taxi_lp/cv-speech_sp.png)no-repeat;
    background-size: contain;
    width: 100%;
    position: static;
    display: inline-block;
    height: 11vw;
    margin-bottom: -5px;
  }

  .cv-content .sub-attention{
    font-size: 12px;
    padding-left: 1em;
    text-indent: -1em;
    margin-top: 10px;
  }
  .cv_area {
    padding-bottom: 55px;
  }
}
/*===============================================
 *	主なご利用シーン SCENE
===============================================*/
.scene .lg_inner_space{
  padding: 80px 0;
}
.scene-list{
  background:#ebecf1;
  padding: 50px;
  width: 100%;
  margin-top: 60px;
}
.scene-list ul{
  gap: 30px 2.9%;
  margin-bottom: 35px;
}
.scene-list ul:last-child{
  margin-bottom: 0;
}
.scene-list li{
  border-radius: 6px;
  border: 2px solid #338dbe;
  box-sizing: border-box;
  background: #fff;
  max-width: 212px;
  width: 17.3%;
  padding: 36px 0;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}
.scene-list li:first-child img{
  width: 80px;
  padding-bottom: 20px;
}
.scene-list li:nth-child(2) img{
  width: 75px;
  padding-bottom: 22px;
}
.scene-list li:nth-child(3) img{
  width: 90px;
  padding-bottom: 33px;
}
.scene-list li:nth-child(4) img{
  width: 81px;
  padding-bottom: 20px;
}
.scene-list li:nth-child(5) img{
  width: 80px;
  padding-bottom: 20px;
}
.scene-list li:nth-child(6) img{
  width: 71px;
  padding-bottom: 35px;
}
.scene-list li:nth-child(7) img{
  width: 81px;
  padding-bottom: 26px;
}
.scene-list li:nth-child(8) img{
  width: 70px;
  padding-bottom: 28px;
}
.scene-list li:nth-child(9) img{
  width: 78px;
  padding-bottom: 34px;
}
.scene-list li:nth-child(10) img{
  width: 80px;
  padding-bottom: 24px;
}
.scene-list li p{
  font-weight: bold;
}

.scene-box{
  background: linear-gradient(130deg, rgba(0, 79, 122, 1) 0%, rgba(0, 102, 158, 1) 100%);
  font-size: clamp(24px, 3vw, 32px);
  padding: 10px 0;
} 
.scene-box p{
  position: relative;
}
.scene-box p::before{
  content: '';
  background: url(../img/taxi_lp/pet-seane-img.png)no-repeat;
  width: 148px;
  height: 103px;
  position: absolute;
  right: 78%;
  top:-25px;
}
.scene-box span{
  font-size: clamp(32px, 3vw, 42px);
}

@media only screen and (max-width: 1024px) {
  .scene-list li{
    width: 17.5%;
  }
  .scene-list li p{
    font-size: 16px;
  }
}

@media only screen and (max-width: 960px) {
  .scene .lg_inner_space{
    padding: 40px 0;
  }
  .scene-list{
    padding: 30px;
  }
  .scene-list ul li{
    padding:3% 0 ;
  }
}

@media only screen and (max-width: 568px) {
  .scene-list{
    padding: 1.3em 5.3vw 2.3em;
    width: auto;
    margin: 20px -5.3vw 0;
  }
  .scene-list ul{
    gap:15px 15px;
  }
  .scene-list ul li{
    width: 47.7%;
    padding: 7% 0;
  }
  .scene-list p{
    font-size: 13px;
  }
  .scene-list li:first-child img{
    width: 60px;
    padding-bottom: 20px;
  }
  .scene-list li:nth-child(2) img{
    width: 56px;
    padding-bottom: 20px;
  }
  .scene-list li:nth-child(3) img{
    width: 60px;
    padding: 10px 0 25px;
  }
  .scene-list li:nth-child(4) img{
    width: 59.5px;
    padding-bottom: 20px;
  }
  .scene-list li:nth-child(5) img{
    width: 53.5px;
    padding-bottom: 20px;
  }
  .scene-list li:nth-child(6) img{
    width: 53.5px;
    padding-bottom: 21px;
  }
  .scene-list li:nth-child(7) img{
    width: 53.5px;
    padding-bottom: 23px;
  }
  .scene-list li:nth-child(8) img{
    width: 52.5px;
    padding-bottom: 17px;
  }
  .scene-list li:nth-child(9) img{
    width: 58px;
    padding-bottom: 23px;
  }
  .scene-list li:nth-child(10) img{
    width: 53px;
    padding-bottom: 24px;
  }
  .scene-box{
    padding: .4em 5.3vw .6em;
    width: auto;
    margin: 0 -5.3vw;
  }
  .scene-box p{
    font-size: 20px;
    text-align: left;
    margin-left: 63px;
    line-height: 1.5;
  }
  .sp-left{
    text-align: left;
  }
  .scene-box span{
    font-size: 24px;
  }
  .scene-box p::before{
    width: 66.5px;
    height: 52px;
    background-size: contain;
    right: 102%;
    top:60%;
    transform: translateY(-70%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
}
@media only screen and (max-width: 375px) {
  .scene-list ul li{
    width: 47%;
  }
}

/*===============================================
 *	ご利用の流れ
===============================================*/
.flow {
  background: url(../img/taxi_lp/flow-bg.jpg)no-repeat center top;
  background-size: cover;
}

.flow li {
  width: 22.7%;
  max-width: 295px;
  position: relative;
  justify-content: flex-start;
  border-radius: 6px;
  background: #fff;
}
.flow li::before{
  background: url(../img/taxi_lp/number01.svg)no-repeat;
  background-size: contain;
  width:66px ;
  height: 66px;
  content: '';
  position: absolute;
  top: -35px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.flow li:nth-child(2)::before{
  background: url(../img/taxi_lp/number02.svg)no-repeat;
}

.flow li:nth-child(3)::before{
  background: url(../img/taxi_lp/number03.svg)no-repeat;
}

.flow li:nth-child(4)::before{
  background: url(../img/taxi_lp/number04.svg)no-repeat;
}


.flow li img{
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}
.flow li .txt{
  border-radius:0 0 6px 6px ;
  overflow: hidden;
  padding: 25px 40px 30px;
}

.flow li .txt h4{
  font-size: 24px;
  line-height: 1.5;
}
.flow li:last-of-type .txt h4{
  margin: 18px 0;
}

.flow li::after{
  content: '';
  background: url(../img/taxi_lp/ico-arrow-right.svg)no-repeat;
  width: 22px;
  height: 36px;
  position: absolute;
  right: -32px;
  top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.flow li:last-of-type::after{
  content: none;
}

@media only screen and (max-width: 1024px) {
  .flow li .ttl {
    font-size: 20px;
  }
  .flow li .txt h4{
    font-size: 18px;
  }
}

@media only screen and (max-width: 960px) {
  .flow li .ttl {
    font-size: 18px;
  }
  .flow li .txt h4{
    font-size: 16px;
  }
  .flow li .txt{
    padding: 20px;
  }
  .flow li::after{
    background-size: contain;
    width: 10%;
    right: -20px;
  }
}

@media only screen and (max-width: 568px) {
  .flow {
    background: url(../img/taxi_lp/flow-bg_sp.jpg)no-repeat;
    background-size: cover;
  }
  .flow .sec_ttl{
    margin-bottom:40px ;
  }
  .flow ul{
    flex-direction: column;
    row-gap: 72.5px;
  }
  .flow ul li{
    width: 100%;
    max-width: 100%;
  }
  .flow li::before{
    width: 55px;
    height: 55px;
    top:-27px;
  }
  .flow li::after{
    right: auto;
    top: auto;
    left: 45%;
    bottom: -47px;
    transform: translateX(-45%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: rotate(90deg);
  }
  .flow li .txt h4{
    font-size: 22px;
    margin: 0;
  }
  .flow li:last-of-type .txt h4{
    margin: 0;
  }
  .flow li .txt p{
    padding-bottom: 0;
  }

}

/*===============================================
 *	よくあるご質問
===============================================*/
.faq .lg_inner_space{
  padding: 80px 0 50px;
}
.faq .sec_ttl{
  font-size: 45px;
}
.faq .sec_ttl::before{
  content: '';
  background:url(../img/taxi_lp/ico-faq.png)no-repeat ;
  width: 60px;
  height: 54px;
  display: inline-block;
  vertical-align: sub;
  margin-right: 15px;
}
.faq .sec_ttl span{
  margin-left: 30px;
}
.faq dl {
  background: #ebecf1;
  padding: 35px 50px 40px;
  margin-bottom: 20px;
}

.faq dl:last-of-type {
  margin-bottom: 0;
}

.faq dt {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 30px;
  margin-right: 15px;
}
.faq dt span{
  font-size: 34px;
  color: var(--site-primary);
  margin-right: 15px;
}

.faq dd {
  background: #fff;
  padding: 28px 35px 30px;
}

@media only screen and (max-width: 960px) {
  .faq dl {
    padding: 30px 4vw 30px;
  }
  .faq dt {
    font-size: 22px;
  }
  .faq dd {
    font-size: 17px;
    padding:15px 20px;
  }
}

@media only screen and (max-width: 568px) {
  .faq .lg_inner_space{
    padding: 40px 0;
  }
  .faq .sec_ttl{
    font-size: 27px;
  }
  .faq .sec_ttl span{
    font-size: 16px;
    margin-left: 15px;
    
  }
  .faq .sec_ttl::before{
    width:45.5px ;
    height:41.5px ;
    background-size: contain;
    vertical-align: middle;
    margin-right: 10px;
  }
  .faq dl {
    padding: 15px 20px 20px;
    margin-bottom: 15px;
  }
  .faq dt{
    margin: 0 0 15px 0;
    padding-left: 1.6em;
    text-indent: -1.6em;
    font-size: 18px;
  }
  .faq dt span{
    font-size: 25px;
    margin-right: 10px;
  }
  .faq dd{
    font-size: 14px;
  }
}

/*===============================================
 *	注意事項　ATTENTION
===============================================*/
.attention{
  background: url(../img/taxi_lp/attention-bg.jpg)no-repeat;
  background-size: cover;
}
.attention .sec_ttl{
  font-size: 45px;
}
.attention .sec_ttl::before{
  content: '';
  background: url(../img/taxi_lp/ico-attention.png)no-repeat;
  width: 56px;
  height: 51px;
  background-size: contain;
  display: inline-block;
  vertical-align: text-bottom;
  margin-right: 20px;
}
.attention .sec_ttl span{
  font-size:22px ;
  margin-left: 30px;
  color: #acacac;
}

.attention ul{
  background: #fff;
  padding: 40px 50px;
}
.attention ul li{
  font-family: 'Noto Serif JP', serif;
  font-size: 22px;
  border-bottom: 2px dotted #ccc;
  padding: 16px 0 18px; 
}
.attention ul li::before{
  content: '■';
  font-size: 12px;
  color: var(--site-primary);
  margin-right:15px;
  vertical-align: middle;
}
.attention ul li:last-child{
  border-bottom: none;
  padding-left: 0.8em;
  text-indent: -0.8em;
  line-height: 1.4;
}
.attention ul li:last-child span{
  font-size:18px;
}
@media only screen and (max-width: 960px) {
  
}

@media only screen and (max-width: 568px) {
  .attention{
    background: url(../img/taxi_lp/bg_attention_sp.jpg)no-repeat;
    background-size: cover;
  }
  .attention .lg_inner_space{
    padding: 40px 0;
  }
  .attention .sec_ttl::before{
    width: 40px;
    height: 36.5px; 
    margin-right: 10px;
  }
  .attention .sec_ttl{
    font-size: 27px;
    margin-bottom: 20px;
  }
  .attention .sec_ttl span{
    font-size: 16px;
    margin-left: 15px;
  }
  .attention ul{
    padding: 20px 20px 10px 20px
  }
  .attention ul li{
    font-size: 17px;
    padding-left: 1.2em;
    text-indent: -1.2em;
  }
  .attention ul li::before{
    margin-right: 7px;
    line-height: 2;
  }
  .attention ul li:last-child span{
    font-size:15px;
  }
  .attention ul li:last-child{
    padding-left: 1.2em;
    text-indent: -1.2em;
  }
}

/*===============================================
 *	会社概要　COMPANY
===============================================*/
.company {
  background: #ebecf1;
}
.company .lg_inner_space{
  padding: 80px 0;
}

.company table {
  width: 100%;
  background: #fff;
}

.company table th {
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: var(--site-primary);
  text-align: center;
  width: 27%;
  border-bottom: 3px solid #ebecf1;
  vertical-align: top;
  padding: 23px 0 25px;
}

.company table td {
  border-bottom: 3px solid #ebecf1;
  border-left: none;
  padding: 22px 40px;
}
.company table td ul{
  margin-bottom: 20px;
}
.company table td ul li::before{
  content: '■';
  color: var(--site-primary);
  font-size: 12px;
  margin-right: 12px;

}
.company table td ul li a::after{
  content: '';
  background: url(../img/taxi_lp/icon-link-primary.svg)no-repeat;
  display: inline-block;
  margin-left: 12px;
  width: 15px;
  height: 15px;
}
.company table td a::after{
  content: '';
  width: 15px;
  height: 15px;
  display: inline-block;
  margin-left: 12px;
  background: url(../img/taxi_lp/icon-link-black.svg)no-repeat;
}



@media only screen and (max-width: 1024px) {
  .company table th {
    font-size: 18px;
  }
  .company table td {
    font-size: 16px;
  }
}

@media only screen and (max-width: 568px) {
  .company .lg_inner_space {
    padding: 35px 0 42px;
  }
  .company table {
    border: 1px solid #ccc;
  }
  .company table th {
    display: block;
    width: 100%;
    font-size: 18px;
    padding: 7px 20px;
    border: none;
  }
  .company table td {
    font-size: 15px;
    display: block;
    padding: 15px 20px;
    border: none;
  }
  .company table td a {
    text-underline-offset: 5px;
  }
  
  .company table td ul {
    margin-bottom: 5px;
  }
}

/*===============================================
 *	footer
===============================================*/

footer {
  background: #ebecf1;
}
.footer_nav{
  padding: 40px 0;
  font-size: 16px;
}
.footer_nav ul{
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-template-rows	:auto auto auto;
  gap: 0 19%;
  width: 100%;
}
.footer_nav ul li{
  font-weight: bold;
}
.footer_nav ul li:nth-child(1){
  grid-column: 1 ;
  grid-row: 1;
}
.footer_nav ul li:nth-child(2){
  grid-column: 1 ;
  grid-row: 2;
}
.footer_nav ul li:nth-child(3){
  grid-column: 1 ;
  grid-row: 3;
}
.footer_nav ul li:nth-child(4){
  grid-column: 2 ;
  grid-row: 1;
}
.footer_nav ul li:nth-child(5){
  grid-column: 2 ;
  grid-row: 2;
}
.footer_nav ul li:nth-child(6){
  grid-column: 2 ;
  grid-row: 3;
}
.footer_nav ul li:nth-child(7){
  grid-column: 3 ;
  grid-row: 1;
}
.footer_nav ul li:nth-child(8){
  grid-column: 3 ;
  grid-row: 2;
}
.footer_nav ul li:nth-child(9){
  grid-column: 3 ;
  grid-row: 3;
}

.footer_nav ul li:nth-child(10){
  grid-column: 4 ;
  grid-row: 1;
}
.footer_nav ul li:nth-child(11){
  grid-column: 4 ;
  grid-row: 2;
}
footer .copy {
  font-size: 16px;
  font-weight: 500;
  padding: 30px 0;
  margin-bottom: 100px;
}
footer .copy p{
  font-weight: normal;
}
footer .copy a {
  color: #fff;
}

.pagetop {
  position: fixed;
  bottom: 130px;
  right: 30px;
  z-index: 999;
}

.pagetop a {
  display: block;
  background-color: #333;
  width: 60px;
  height: 60px;
  position: relative;
  border-radius: 50%;
}

.pagetop a img {
  width: 17px;
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media only screen and (max-width: 1024px) {
  .footer_nav ul{
    gap: 0 5%;
  }
}


@media only screen and (max-width: 960px) {
  footer .inner{
    width: 89.4vw;
  }
  footer .copy{
    margin-bottom: 75px;
  }
}

@media only screen and (max-width: 568px) {
  footer {
    padding: 0;
  }
  footer .inner{
    width: 100%;
  }
  .footer_nav{
    padding: 0;
    flex-wrap: wrap;
    font-size: 14px;
  }
  .footer_nav ul{
    flex-wrap: wrap;
    display: flex;
    border: 1px solid #ccc;
    box-sizing: border-box;
    gap:0;
    border-collapse: collapse;
  }
  .footer_nav ul li{
    width: 50%;
    border-bottom: 1px solid #ccc;
}
  .footer_nav li:nth-child(even){
    width: 50%;
    border-left: 1px solid #ccc;
  }
  /*.footer_nav li:last-child{
    border-right: 1px solid #ccc;
    border-collapse: collapse;
    width: 50.5%;
  }*/
  .footer_nav li a{
    padding-left: 20px;
    height: 50px;
    display: flex;
    align-items: center;
    line-height: 1.2;
  }
  footer .copy {
    font-size: 11px;
    padding: 15px 0;
    
  }
  .pagetop {
    position: static;
  }
  .pagetop a {
    width: 100%;
    height: auto;
    padding: 20px 0;
    border-right: none;
    border-left: none;
    border-radius: 0;
  }
  .pagetop a img {
    width: 21px;
    
  }
}
.nav-wrap-sp{
  display: none;
}

@media only screen and (max-width: 568px) {
  .header_contact_pc{display: none;}
  .nav-box{display: block; width: 60px; height: 60px; z-index: 9999;}
  .nav-button {display: block;cursor: pointer;}
  .nav-button,.nav-button span {display: inline-block;transition: all .4s;box-sizing: border-box;}
  .nav-button {z-index: 20;position: relative;height: 36px;width: 100%; text-align: center;padding: 30px 0;}
  .nav-button span {position: absolute;left: 50%;transform: translateX(-50%); width: 100%;height: 3px;background-color: #fff;}
  .nav-button span:nth-of-type(1) {top: 22px; width: 25px;}
  .nav-button span:nth-of-type(2) {top: 27 px; width: 25px;}
  .nav-button span:nth-of-type(3) {bottom: 19px; width: 25px;}
  .active{background: #00456b;}
  .active span:nth-of-type(1) {-webkit-transform: translate(-12px, 8px) rotate(-45deg);transform: translate(-12px, 8px) rotate(-45deg);}
  .active span:nth-of-type(2) {opacity: 0;}
  .active span:nth-of-type(3) {-webkit-transform: translate(-12px, -8px) rotate(45deg);transform: translate(-12px, -8px) rotate(45deg);}
  .nav-list{margin-bottom: 1.5em;}

  .nav-wrap-sp {display:block;position: fixed; top: 0; left: 0; z-index: 100; width: 100%; height: 100%; overflow: scroll;visibility: hidden; opacity: 0; transition: 0.3s;}
  .open.nav-wrap-sp {visibility: visible; opacity: 1;background: #fff;}
  .nav-wrap-sp ul{background: #fff;margin-top: 60px;}
  .nav_logo_area{width: 72%;height: 60px;padding: 15px 0 20px 3.3vw;-webkit-box-align: center;-ms-flex-align: center;align-items: center;margin-right: 0;margin-left: 0;background: #fff;position: fixed;z-index: 2;}
  .nav_logo_area a, .nav_logo_area a img {width: 100%;/*max-width: 180px;*/}
  .nav-wrap-sp ul li {width: 100%; border-top:2px solid #e2e2e2 ;}
  .nav-wrap-sp ul li:last-child {border-bottom: 2px solid #e2e2e2;}
  .nav-wrap-sp ul li a {display: block; min-height: 55px; display: flex; align-items: center;justify-content: left; font-size: 16px; text-align: center; padding: 8px 20px 8px 20px; line-height: 1.3;color: #333;font-weight: bolder;position: relative;}
  .nav-wrap-sp ul li a::after {content: ''; background: url(../img/taxi_lp/icon_arrow_right.svg) no-repeat center; width: 8px; height:13px; position: absolute; right: 20px;}
  .btn_area02{background: #00456b;}
  .btn_area02 .inner{width: 94%;}
  .btn_area02 dl{gap:6px;}
  .btn_area02 a{display: flex;justify-content: center;align-items: center;padding: 10px 0;}
  #menu-box{display: none;}
}

  #fl-fxmenu{display: none;background: #00456b;position: fixed;width: 100%;bottom: 0;left: 0;z-index: 99;}
  #fl-fxmenu ul {width: 89.4vw;margin: 0 auto; display: flex;align-items: center;max-width: 1300px;justify-content: space-between;padding: 15px 0 15px;gap:20px;}
  #fl-fxmenu .logo{width: 33.5%; max-width: 337px; margin-right: auto;}
  #fl-fxmenu .phone{width: 25%; max-width: 260px;}
  #fl-fxmenu .line{width: 40%;max-width: 420px;}
  @media only screen and (max-width: 1024px) {
  #fl-fxmenu ul {width: 100%; gap: 10px;}
  }
  @media only screen and (max-width: 568px) {
  #fl-fxmenu .inner{width: 100%;}
  #fl-fxmenu ul{width: 94%;gap: 7px;padding: 10px 0;}
  #fl-fxmenu .phone{width: 22%;}
  #fl-fxmenu .line{width: 80%;}
  footer .copy {margin-bottom: 74px;}
  }

  /*pc-nav*/
  .container {border-top: #e2e2e24f 1px solid;position: relative;}
  .global-nav {position: relative;width: 90vw;max-width: 1300px;margin: 0 auto;}
  .nav-wrap {position: relative;}
  .global-nav .nav-list {display: flex;justify-content: space-between;align-items: center;}
  .global-nav .nav-list .nav-item a {font-size: 16px;color: #fff;text-align: center;position: relative;line-height: 1.4;height: 83px;display: flex;align-items: center;}
  .gnavi-fixed {position: fixed;top: 0;width: 100%;z-index: 999;background: rgba(0, 61, 124, 0.8);}


/*240701追記（フッターバナー）*/
.recommended_links .ttl_left_border{
  font-size: 21px;
}
.ttl_left_border{
  padding: 2px 0 12px 20px;
  line-height: 1.0;
  border-bottom: 1px solid var(--site-primary);
  position: relative;
  margin-bottom: 28px;
}
.ttl_left_border::before {
  content: '';
  background: linear-gradient(180deg, rgba(0, 113, 174, .5) 0%, rgba(0, 113, 174, .5) 50%, rgba(0, 113, 174, 1) 50%, rgba(0, 113, 174, 1) 100%);
  height: 32px;
  width: 6px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.recommended_links {
  margin: 30px 0;
}
.recommended_links .wrap{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.recommended_links ul{
  gap: 20px 2%;
}
.recommended_links li{
  width: 23.5%;
  margin: 0;
  padding: 0;
}
@media only screen and (max-width: 568px) {
  .recommended_links{
    margin: 30px 5% 30px;
  }
  .recommended_links .ttl_left_border{
    font-size: 18px;
  }
  .ttl_left_border {
    padding: 2px 0 12px 20px;
    margin-bottom: 20px;
    border-bottom: 2px solid var(--site-primary);
}
.recommended_links ul{
  gap: 15px 3.5%;
}
footer .recommended_links li{
  width: 48%;
  border: none;
}
footer .recommended_links li a{
  height: auto;
  padding: 0;
}
}

/*240912追加*/
.guide{
  background: #ebecf1;
  
}
.guide-point{
  margin: 40px 0;
}
.guide-point li{
  font-size: 20px;
  text-indent: -1.8em;
  padding-left: 1.8em;
  line-height: 2.5;
  border-bottom: 2px dotted #cccccc;

}
.guide-point li:last-child{
  border-bottom: none;
}
.guide-point li::before{
  content: '';
  background: url(../img/taxi_lp/check.png) no-repeat center top;
  background-size: contain;
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: text-top;
  margin-right: 7px;
}
.guide a img{
  width: 15px;
  height: 15px;
  margin: 7px;
}
.guide a::before{
  content: '■';
  color: var(--site-primary);
  font-size: 18px;
  display: inline-block;
  vertical-align: baseline;
}
@media only screen and (max-width: 1024px) {

}


@media only screen and (max-width: 960px) {
  .guide-point li{
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 10px;
    text-indent: -2.1em;
    padding-left: 2.1em;
    padding-bottom:10px ;
  }
}

@media only screen and (max-width: 568px) {
  .guide-point{
    margin: 20px 0;
  }
  .guide-point li{
    font-size: 17px;
    text-indent: -1.7em;
    padding-left: 1.7em;
  }
  .guide a span{
    word-break: break-all;
  }
  .guide-point li::before{
    width: 25px;
    height: 25px;
    margin-right: 5px;
  }
}
/*--241104追記--*/
.sub{
  color: #999;
  font-size: 16px;
}
@media only screen and (max-width: 568px) {
  .sub{
    font-size: 12px;
  }
}

/*-----代行受診-----*/
.alternate{
  background:#ebecf1;
}
.alternate-intro{
  margin: 50px 0 10px;
}
.alternate-intro li{
  width: 48%;
  padding: 25px;
  border-radius: 10px;
}
.alternate-intro li img{
  max-width:357px;
  margin: 0 auto 10px;
  display: block;
}
.alternate-intro li p{
  font-size: 24px;
  color: #fff;
}
.bg_allow{
  position: relative;
}
.bg_allow::before{
  background: url(../img/taxi_lp/arrow.png) no-repeat;
  background-size: contain;
  width: 516px;
  height: 93px;
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.bg_allow{
  font-size: 32px;
  padding: 20px 0 40px;
}
.bg_allow h3{
  position: relative;
  z-index: 2;
}
.altrenate-content{
  margin-bottom: 40px;
  gap: 30px;
}
.altrenate-content img{
  max-width: 650px;
}
.altrenate-content .altrenate-txt{
  max-width: 600px;
}
.altrenate-content h3{
  font-size: 32px;
  margin-bottom: 25px;
}

.altrenate-attention{
  background: #f8f3ed;
  border-radius: 10px;
  padding: 25px;
}
.altrenate-attention h4{
  font-size: 22px;
  border-bottom: 2px solid #e5e5e5;
  margin-bottom: 20px;
}
.altrenate-attention h4::before{
  content: '■';
    color: var(--site-primary);
    font-size: 12px;
    margin-right: 10px;
    display: inline-block;
}
.altrenate-txt p{
  margin-bottom: 30px;
}
.altrenate-attention ul li{
  text-indent: -1em;
  padding-left: 1em;
}
.altrenate-attention ul li span{
  color: var(--site-keycolor);
}
.alternate-price img{
  max-width: 1027px;
  margin: 50px auto;
  display: block;
}
.alternate-price ul{
  max-width:1091px;
  background: var(--site-primary);
  margin: 0 auto;
  padding: 20px 0;
  border-radius: 10px;
}
.alternate-price ul li::after{
  content: '';
  background: url(../img/taxi_lp/plus.png) no-repeat;
  background-size: contain;
  width: 55px;
  height: 55px;
  position: absolute;
  right: -110px;
  top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.alternate-price ul li:last-child:after{
  content: none;
}
.alternate-price ul li{
  color: #fff;
  font-size:28px;
  line-height: 1.4;
  position: relative;
}
.alternate-price ul li span{
  color:var(--site-secondary);
}
.alternate .sub-attention{
  color: #999;
  font-size: 16px;
}
.alternate .right-attention{
  margin-left: auto;
  width: fit-content;
}
.alternate .sub-attention{

}
.alternate .sub-attention.mt-0{
  margin-top: 0;
}
.altrenate-price ul li small{
  position: relative;
}
.altrenate-price ul li small::before,
.altrenate-price ul li small::after{
  display: block;
	position: absolute;
	top: 50%;  
	box-sizing: border-box;
	line-height: 0;
	font-size:23px;
	color: 333;
}
.altrenate-price ul li small::before {
	content: '('; 
	left: -10px;
}
.altrenate-price ul li small::after {
	content: ')'; 
	right: -10px;
}

@media only screen and (max-width: 1024px) {
.altrenate-content img{
  width: 50%;
}
.alternate-price ul li::after{
  right: -80px;
}
}
@media only screen and (max-width: 960px) {
  .alternate-price ul li::after{
    right: -43px;
    width:35px ;
    height: 35px;
  }
  .alternate-price ul li:nth-child(2)::after{
    right: -26px;
  }
}
@media only screen and (max-width: 568px) {
  .alternate p.sp-left{
    text-align: left;
  }
  .alternate-intro{
    background: linear-gradient(130deg, rgba(0, 79, 122, 1) 0%, rgba(0, 102, 158, 1) 100%);
    padding: 20px;
    margin: 20px -5.3vw;
  }
  .alternate-intro li{
    background: none;
    padding: 0;
  }
  .alternate-intro li p{
    font-size: 18px;
  }
  .bg_allow{
    padding: 0px 0 20px;
  }
  .bg_allow::before{
    width: 100%;
  }
  .bg_allow h3{
    font-size:22px;
    line-height: 1.4;
  }
  .altrenate-content{
    flex-direction: column;
    gap: 20px;
  }
  .altrenate-content img{
    width: 100%;
  }
  .altrenate-content h3{
    text-align: center;
    font-size: 24px;
    margin-bottom: 20px;
    line-height: 1.4;
  }
  .altrenate-txt p{
    margin-bottom: 20px;
  }
  .altrenate-attention{
    padding: 15px;
  }
  .altrenate-attention ul li{
    letter-spacing: 0;
  }
  .altrenate-content{
    margin-bottom: 30px;
  }
  .alternate-price img{
    margin: 30px auto;
  }
  .alternate-price ul li{
    font-size:17px;
  }
  .alternate-price ul li span{
    font-size: 19px;
  }
  .alternate-price ul{
    align-items: center;
  }
  .alternate-price ul li::after{
    width: 20px;
    height: 20px;
    right: -27px;
  }
  .altrenate-price ul li small{
    line-height: ;
  }
  .altrenate-price ul li small::before {
    content: '('; 
    left: -13px;
  }
  .altrenate-price ul li small::after {
    content: ')'; 
    right: -27px;
  }
  .alternate .sub-attention{
    font-size: 12px;
  }
}

/*----------------2024/11/26追加---------------------*/
.banner{
  margin:60px auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.banner a:hover{
  opacity: .8;
  transition: .3s;
}
@media only screen and (max-width: 568px) {
  .banner{
    margin:30px auto;
    gap: 20px;
  }
}
/*# sourceMappingURL=taxi.css.map */