@charset "UTF-8";
/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/
/************************************
** 子テーマ用のスタイルを書く*/
/************************************/
/*必要ならばここにコードを書く*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

.mt60 {
  margin-top: 60px;
}

.mt70 {
  margin-top: 70px;
}

.mt80 {
  margin-top: 80px;
}

.mt90 {
  margin-top: 90px;
}

.mt100 {
  margin-top: 100px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb100 {
  margin-bottom: 100px;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  background: #fff;
  color: #232323;
  font-size: 1.6rem;
}

a {
  text-decoration: none;
  color: #1071d3;
}
a:hover {
  text-decoration: none;
  opacity: 0.5;
}

.wrap {
  width: 100%;
}

.main {
  padding: 0;
}

.content {
  margin-top: 0;
}

p {
  margin: 0;
}

.entry-content > section {
  max-width: 1400px;
  margin: auto;
  margin-bottom: 220px;
}

.br-sp {
  display: none;
}

.center {
  text-align: center;
}

#breadcrumb {
  display: none;
}

/* span  */
.bold {
  font-weight: bold;
}

.red {
  color: #FF0000;
}

/* span end */
.new-entry-card-date.widget-entry-card-date.display-none {
  display: block;
}

#header-container .hlt-center-logo #navi {
  background: #fff;
}

#navi a {
  color: #232323;
}

.navi-in > ul {
  justify-content: flex-end;
}
.navi-in a:hover {
  background-color: #fff;
  color: #232323;
  transition: none;
}

.header-container-in.hlt-top-menu .logo-text {
  display: none;
}

.hlt-tm-right .navi-in > ul {
  font-size: 2rem;
}

/* .hlt-tm-right .navi-in > ul:before{
    content:'carot taxi';
    color:$orange ;
    text-align: center;
    font-size: 3rem;
    font-weight: bold;
} */
#menu-item-115 a {
  color: #FFA233;
  font-weight: bold;
  font-size: 3rem;
  text-align: center;
}

#menu-item-342 {
  border-left: none;
}

#toc {
  display: none;
}

#top {
  margin-top: -1em;
}

#top-bg-img {
  background: url(img/carrotax_mainbg_pc-8.png);
  background-size: cover;
}

#top-taxi-img {
  position: relative;
  z-index: 2;
  margin-bottom: -120px;
  padding-top: 42px;
  text-align: center;
}

#top-bg-orange-outer {
  overflow: hidden;
}

#top-bg-orange {
  padding-top: 147px;
  padding-bottom: 4.5vw;
  background-size: auto auto;
  background-color: rgb(254, 171, 58);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgb(255, 160, 57) 10px, rgb(255, 160, 57) 20px);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 9vw), 0 100%);
}

#top-text-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42vw;
  max-width: 580px;
  height: 42vw;
  max-height: 580px;
  margin: auto;
  padding: 120px 0;
  background: url(img/carrotax_testbg-8.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}

#top-text {
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
}
#top-text p {
  margin: auto;
}

#top-taxi-mov-outer {
  transform: rotate(-5.25deg);
}

#top-taxi-mov-inner {
  overflow: hidden;
  margin-top: 20px;
}

#top-taxi-mov {
  animation: loop 10s linear infinite;
}
#top-taxi-mov img {
  display: block;
  width: 200px;
  height: auto;
  margin-left: auto;
}

@keyframes loop {
  0% {
    transform: translateX(40%);
  }
  100% {
    transform: translateX(-100%);
  }
}
.h2-outer {
  margin: auto;
  text-align: center;
}

.article h2 {
  margin: auto;
  padding: 10px 0;
  background: none;
  font-weight: bold;
  font-size: 3rem;
}
.article h2.green {
  color: #6FCC27;
}
.article h2.green2 {
  color: #39B54A;
}
.article h2.blue {
  color: #0066CC;
}
.article h2.orange {
  color: #F9883B;
}

.h2-border {
  height: 1px;
  max-width: 600px;
  margin: auto;
}
.h2-border.orange {
  background: #FFA233;
}
.h2-border.green {
  background: #6FCC27;
}
.h2-border.green2 {
  background: #39B54A;
}
.h2-border.blue {
  background: #0066CC;
}

.h2-bottom-text {
  margin-bottom: 30px;
  font-size: 1.4rem;
}
.h2-bottom-text.orange {
  color: #FFA233;
}
.h2-bottom-text.green {
  color: #6FCC27;
}

.flex {
  display: flex;
}

:is(#howto, #t-attraction) .h2-bottom-text {
  margin-bottom: 75px;
}

#howto .flex-box {
  width: 100%;
  margin: 35px;
  padding: 40px 0;
  border-top: 2px dashed #FFA233;
  border-bottom: 2px dashed #FFA233;
  font-size: 2.5rem;
  text-align: center;
}

.howto-tel {
  margin: auto;
  text-align: center;
  line-height: 1.2;
}

.howto-tel-text {
  color: #FFA233;
  font-size: 3.8rem;
  font-weight: bold;
}

#t-attraction .flex {
  align-items: stretch;
}
#t-attraction .flex-box {
  width: 33.3333333333%;
  margin: 0 0 80px 70px;
}
#t-attraction .flex-box:first-child {
  margin-left: 0;
}
#t-attraction .flex-box .text {
  width: calc(100% - 60px);
  margin: 20px auto 0 auto;
  padding: 5px;
  background: #fff;
  color: #3AB212;
  font-weight: bold;
  font-size: 2.6rem;
  text-align: center;
}
#t-attraction .flex-box a {
  color: #1071d3;
}
#t-attraction .flex-box i {
  margin-left: 5px;
}
#t-attraction .flex-box-bg {
  display: flex;
  flex-flow: column;
  justify-content: end;
  height: 500px;
  margin-bottom: 20px;
  padding: 0 0 30px 0;
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 31%, rgb(189, 239, 142) 31%, rgb(189, 239, 142) 100%);
}
#t-attraction .flex-box-bg img {
  display: block;
  margin: auto auto 0 auto;
}
#t-attraction .more-outer {
  max-width: 1400px;
}
#t-attraction .more {
  width: 380px;
  margin-left: auto;
}
#t-attraction .more .text {
  margin-bottom: -20px;
  color: #3AB212;
  font-weight: bold;
  font-size: 2.6rem;
}
#t-attraction .more .text a {
  color: #6FCC27;
}

.arrow {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 1px;
  border-radius: 9999px;
  background-color: #6FCC27;
}
.arrow::before {
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 45px;
  height: 1px;
  transform: rotate(45deg);
  transform-origin: calc(100% - 0.5px) 50%;
  border-radius: 9999px;
  background-color: #6FCC27;
  content: "";
}

.swipe-pc-img .flex {
  gap: 25px;
}

#photo .text-top {
  font-weight: bold;
  font-size: 2.6rem;
  text-align: center;
}
#photo .flex-box {
  width: 25%;
  margin-top: 25px;
}

#use-contents {
  max-width: 850px;
  margin-right: auto;
  margin-left: auto;
}

:is(#fare, #o-hours, #luggage, #payment) .text {
  text-align: center;
}

#fare .text .bg-green {
  margin-right: 5px;
  padding: 5px 20px;
  border-radius: 50px;
  background: #6FCC27;
  color: #fff;
  font-size: 2rem;
}
#fare span.big {
  font-size: 5rem;
}
#fare span.mid {
  font-size: 2.5rem;
}

:is(.fare-img, .use-fare-img) img {
  display: block;
  margin: 30px auto;
}
:is(.fare-img, .use-fare-img):first-child {
  margin-top: 0;
}

.fare-btn {
  max-width: 510px;
  margin: auto;
}

.footer {
  margin-top: 0;
}
.footer a {
  color: #fff;
}
.footer a:hover {
  background: none;
  color: #fff;
}

.footer, #footer-top {
  background: #FFA233;
  color: #fff;
  text-align: center;
}

#footer-top .tel {
  padding: 40px 0;
}
#footer-top .tel img {
  filter: drop-shadow(rgba(0, 0, 0, 0.3) 2px 2px 2px);
}

#footer-taxi {
  text-align: center;
}

.navi-footer-in > .menu-footer li {
  border-left: 1px solid #fff;
}
.navi-footer-in > .menu-footer li:last-child {
  border-right: 1px solid #fff;
}

#footer-stripe {
  height: 51px;
  background-color: rgb(251, 204, 66);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgb(255, 162, 51) 10px, rgb(255, 162, 51) 20px);
  background-size: auto auto;
}

#fix-banner {
  display: none;
}

.copyright {
  position: relative;
}

.footer-bottom-inner {
  display: flex;
  justify-content: center;
  align-items: end;
}
.footer-bottom-inner::before {
  width: 30vw;
  max-width: 427px;
  height: 9vw;
  max-height: 127px;
  background: url(img/carrotax_ill_f02-8.png);
  background-repeat: no-repeat;
  background-position: left;
  background-size: contain;
  display: inline-block;
  content: "";
}
.footer-bottom-inner::after {
  display: inline-block;
  width: 30vw;
  max-width: 427px;
  height: 9vw;
  max-height: 127px;
  background: url(img/carrotax_ill_f03-8.png);
  background-repeat: no-repeat;
  background-position: right;
  background-size: contain;
  content: "";
}

.footer-bottom.fnm-text-width .menu-footer li {
  height: 2em;
  margin-top: auto;
  margin-bottom: auto;
}

.go-to-top {
  display: none; /* 初期状態では非表示 */
  z-index: 3;
  position: fixed;
  right: 20px;
  bottom: 20px;
}
.go-to-top img {
  cursor: pointer;
}
.go-to-top:has(.visible) {
  display: block; /* スクロールしたら表示 */
}
.go-to-top .fixed {
  position: absolute;
  right: 0;
  width: 59px;
  height: 59px;
}
.go-to-top button {
  background: none;
  border: none;
}
.go-to-top button:hover {
  background: none;
}

.navi-in > ul li {
  width: auto;
  padding: 0 20px;
}
.navi-in .item-label {
  border-bottom: 1px solid #FFA233;
}

.fa-close::before {
  content: "×";
}

#footer-mobile-deco {
  display: none;
}

:is(#post-68, #post-69, #post-313) header {
  position: relative;
  height: 330px;
  margin-bottom: 80px;
  padding-top: 220px;
  padding-bottom: 45px;
  background-size: auto auto;
  background-color: rgb(254, 171, 58);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgb(255, 160, 57) 10px, rgb(255, 160, 57) 20px);
  color: #232323;
  text-align: center;
}
:is(#post-68, #post-69, #post-313) header::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 163px;
  background: #FFA039;
  content: "";
}
:is(#post-68, #post-69, #post-313) header h1 {
  position: relative;
  z-index: 2;
  font-weight: normal;
  font-size: 4.2rem;
}

#post-68 header {
  height: 380px;
}
#post-68 header h1::before {
  background: url(img/carrotax_spot_icon-8.png);
  content: "";
  display: block;
  position: absolute;
  top: -160px;
  right: 0;
  left: 0;
  width: 150px;
  height: 150px;
  margin: auto;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  content: "";
}
#post-68 .entry-title::after {
  content: "―観光・ランチ・宿泊・商店―";
  display: block;
  margin-top: 10px;
  font-size: 3rem;
}
#post-68 section {
  max-width: 100%;
  margin-bottom: 100px;
}
#post-68 .map-spot-fare-btn {
  margin-top: 180px;
  margin-bottom: 100px;
}

#post-69 header h1::before {
  background: url(img/carrotax_use_icon-8.png);
  display: block;
  position: absolute;
  top: -160px;
  right: 0;
  left: 0;
  width: 150px;
  height: 150px;
  margin: auto;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  content: "";
}

#post-313 header h1::before {
  background: url(img/carrotax_exclusive_icon-8.png);
  display: block;
  position: absolute;
  top: -160px;
  right: 0;
  left: 0;
  width: 150px;
  height: 150px;
  margin: auto;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  content: "";
}

/* map */
#map-link {
  margin: auto;
  margin-bottom: 130px;
  text-align: center;
}

#map-spot {
  width: 100%;
  margin: auto;
}
#map-spot .name {
  width: 100%;
  margin: 0 auto 25px auto;
  padding: 5px;
  background: #6FCC27;
  color: #fff;
  font-weight: bold;
  font-size: 3rem;
  text-align: center;
}
#map-spot > .flex {
  max-width: 1070px;
  margin: auto;
}
#map-spot .flex-box {
  align-items: center;
}
#map-spot .flex-box.left {
  width: 450px;
  padding-right: 60px;
}
#map-spot .flex-box.left .flex {
  flex-direction: column;
}
#map-spot .flex-box.right {
  display: grid;
  max-width: 550px;
  place-items: center;
}
#map-spot .border {
  position: relative;
  width: 100%;
  height: 70px;
  margin-bottom: 70px;
  border-bottom: 1px #6FCC27 dashed;
}
#map-spot .border img {
  position: absolute;
  bottom: 0;
}

.spot-flex {
  max-width: 1070px;
  margin: auto;
}

.map-border1 {
  position: absolute;
  left: 50%;
}

.map-border2 {
  position: absolute;
  left: 55%;
}

.map-border3 {
  position: absolute;
  left: 60%;
}

.map-border4 {
  position: absolute;
  left: 65%;
}

.map-border5 {
  position: absolute;
  left: 70%;
}

.map-border6 {
  position: absolute;
  left: 75%;
}

#map-spot-link .text {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFA233;
  text-align: center;
}

#map-spot-link1 img {
  display: block;
  max-height: 310px;
  max-width: 341px;
  margin: auto;
}

.spot-h2-img {
  text-align: center;
  margin-bottom: 80px;
}

.spot-flex {
  margin-bottom: 100px;
}

.spot-flexbox:is(.spot-textbox1, .spot-textbox2) {
  flex-flow: column;
  width: 450px;
  margin-left: 65px;
}

.spot-flexbox {
  display: flex;
  flex-wrap: wrap;
  width: 550px;
}

.spot-flexbox.spot-textbox2 p {
  margin: 0;
}

.spot-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 2;
  width: 440px;
  margin-bottom: 30px;
}

.spot-title:before {
  position: absolute;
  z-index: 1;
  content: "";
  top: 5px;
  left: 5px;
  width: 100%;
  height: 100%;
  background: transparent;
  border: 1px dashed #ccc;
  border-radius: 10px;
}

.spot-title-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 100%;
  background: #ccc;
  border-radius: 10px 0 0 10px;
  border-right: 1px solid #fff;
}

.spot-title-text {
  width: 100%;
  background: #ccc;
  border-radius: 0 10px 10px 0;
  color: #fff;
  font-size: 3.3rem;
  line-height: 39px;
  font-weight: bold;
  text-align: center;
}

.spot-text-top {
  margin-bottom: 30px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: 500;
  line-height: 30px;
}

.spot-text {
  font-size: 2rem;
  margin-bottom: 0;
}

.spot-hp-link {
  font-size: 2rem;
  margin-top: 1em;
}
.spot-hp-link a {
  margin: 0;
  border-bottom: 1px solid #1071d3;
  color: #1071d3;
}
.spot-hp-link i {
  padding-left: 5px;
}

.spot-photo-big {
  width: 100%;
}

.spot-photo-small {
  margin-top: 15px;
  width: calc(50% - 7.5px);
  margin-right: 15px;
}
.spot-photo-small:last-child {
  margin-right: 0;
}

.spot-source {
  margin: auto;
  font-size: 1.1rem;
  text-align: right;
}
.spot-source a {
  color: #1071d3;
}

.spot-title-icon, .spot-title-text {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 2;
  padding: 5px;
}

.spot-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(5, 1fr);
  gap: 8px;
  grid-template-rows: 125px;
}
.spot-grid.left-title-two2 {
  grid-template-rows: 160px;
}
.spot-grid .spot-photo {
  grid-row: span 2/span 2;
  grid-column-start: 1;
  grid-row-start: 1;
}
.spot-grid .spot-textbox1 {
  grid-column-start: 2;
  grid-row-start: 1;
}
.spot-grid .spot-textbox2 {
  grid-column-start: 2;
  grid-row-start: 2;
}

.food-title :is(.spot-title-icon, .spot-title-text) {
  background: #FF8C3E;
}
.food-title::before {
  border-color: #FF8C3E;
}

.food-text-top {
  color: #FF8C3E;
}

.shop-title :is(.spot-title-icon, .spot-title-text) {
  background: #E5441F;
}
.shop-title::before {
  border-color: #E5441F;
}

.shop-text-top {
  color: #E5441F;
}

.inn-title :is(.spot-title-icon, .spot-title-text) {
  background: #129FFF;
}
.inn-title::before {
  border-color: #129FFF;
}

.inn-text-top {
  color: #129FFF;
}

#recommend {
  max-width: 1070px;
}
#recommend img {
  display: block;
  margin: auto;
  margin-bottom: 28px;
}
#recommend p {
  max-width: 600px;
  margin: auto auto 25px;
}
#recommend dl {
  margin-bottom: 54px;
  text-align: center;
}
#recommend dl:last-child {
  margin-bottom: 0;
}
#recommend dt {
  max-width: 212px;
  margin: auto auto 23px;
  border-radius: 50px;
  background: #6FCC27;
  color: #fff;
  font-size: 3rem;
}
#recommend dd {
  margin-bottom: 54px;
  margin-left: 0;
  font-size: 2rem;
}
#recommend dd .big {
  font-weight: bold;
  font-size: 3rem;
}
#recommend dd:last-child {
  margin-bottom: 0;
}

:is(#map-spot-link1, #map-spot-link2, #map-spot-link3, #map-spot-link4, #map-spot-link5, #map-spot-link6) img {
  border: 8px solid #fff;
  box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.6);
}

#fare2,
#o-hours,
#luggage,
#payment {
  max-width: 100%;
}

.use-h2-border {
  max-width: 100%;
}

.use-bg-green {
  display: inline-block;
  margin: auto;
  margin-bottom: 32px;
  padding: 5px 20px;
  border-radius: 50px;
  background: #6FCC27;
  color: #fff;
  font-size: 3rem;
}

.use-bg-white {
  margin: auto;
  padding: 5px 20px;
  border: 1px solid #232323;
  border-radius: 50px;
  background: #fff;
  color: #232323;
  font-size: 3rem;
}

.use-bg-orange {
  margin: auto;
  padding: 5px 20px;
  border-radius: 50px;
  background: #FFA233;
  color: #fff;
  font-size: 3rem;
}

#fare2 {
  text-align: center;
}

.fare2-use-bg-orange {
  display: inline-block;
  margin-bottom: 30px;
}

.fare2-use-bg-white {
  display: inline-block;
}

.use-text {
  max-width: 750px;
  margin: auto;
  font-size: 2rem;
  text-align: center;
}

.text-taxi {
  margin-bottom: 32px;
}

.use .big {
  font-size: 6rem;
}
.use .mid {
  font-size: 3rem;
}
.use .mid2 {
  font-size: 3rem;
}
.use section {
  margin-bottom: 120px;
}

.use-fare-img {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

.use-contents-box {
  justify-content: center;
  align-items: center;
}

.use-contents-box a:nth-child(odd),
.use-contents-box a:is(:active, :visited):nth-child(odd) {
  color: #6FCC27;
}

.use-contents-box a:nth-child(even),
.use-contents-box a:is(:active, :visited):nth-child(even) {
  color: #FFA233;
}

.use-contents-box ul {
  font-weight: bold;
  font-size: 2.6rem;
  list-style: none;
  text-align: center;
}
.use-contents-box li {
  padding-bottom: 0.2em;
}

.use-top-list a:nth-child(odd) {
  display: block;
  padding: 10px 50px;
  background: url(img/carrotax_use_btbg_green-8.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.use-top-list a:nth-child(even) {
  display: block;
  padding: 10px 50px;
  background: url(img/carrotax_use_btbg_orange-8.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.fare-free {
  max-width: 700px;
  margin: 51px auto 46px;
}

.fare-free-box {
  border: 1px dashed #FFA233;
  border-top: none;
  padding: 25px;
}

.fare2-bg-white {
  display: inline-block;
  max-width: 292px;
  margin: 30px auto 26px auto;
  padding: 5px 40px;
  border: 1px solid #000;
  font-size: 2rem;
  text-align: center;
}

.use-fare-free-top {
  display: block;
  border-radius: 0;
  text-align: center;
}

.fare-free .text {
  padding: 0px 25px 25px;
}
.fare-free p {
  margin-bottom: 0;
}
.fare-free .bg-white {
  margin-top: 55px;
  border-radius: 0;
}

.o-hours-time .bg-orange,
.o-hours-deadline .bg-orange,
.o-hours-deadline .bg-white {
  max-width: 272px;
}

.o-hours-deadline .bg-orange {
  margin-bottom: 29px;
}
.o-hours-deadline .bg-white {
  margin-bottom: 13px;
}

.o-hours-info .bg-orange {
  margin-bottom: 23px;
}

.payment-use-text {
  margin-bottom: 40px;
  text-align: center;
}

.payment-use-text-list {
  justify-content: center;
  margin-bottom: 40px;
  font-weight: bold;
  font-size: 2.4rem;
}

.payment-use-text-list .flex-box {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 95px;
  margin: auto 35px;
}

.payment-box-outer {
  max-width: 750px;
  margin: auto;
  border: 1px solid #000000;
}

.payment-box {
  padding: 0 20px 20px;
  text-align: left;
  font-size: 2rem;
}
.payment-box ul {
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
}

.payment-box-top {
  margin-bottom: 15px;
  padding: 9px;
  background: #FFF86C;
  font-size: 2rem;
  text-align: center;
}

.luggage-use-text {
  text-align: left;
}

:where(#post-70, #post-268) header {
  position: relative;
  height: 117px;
  background-size: auto auto;
  background-color: rgb(255, 160, 57);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgb(251, 204, 66) 10px, rgb(251, 204, 66) 20px);
  color: #232323;
  text-align: center;
}
:where(#post-70, #post-268) header::after {
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 100px;
  background: rgb(255, 160, 57);
  background: linear-gradient(180deg, rgb(255, 160, 57) 16%, rgb(255, 255, 255) 16%, rgb(255, 255, 255) 100%);
  content: "";
}

#post-268 header {
  height: 253px;
}
#post-268 header:after {
  height: 236px;
  background: linear-gradient(180deg, rgb(255, 160, 57) 9%, rgb(255, 255, 255) 9%, rgb(255, 255, 255) 100%);
}
#post-268 h1 {
  padding-top: 195px;
  color: #232323;
  text-align: left;
}

:where(#post-70, #post-268) h1 {
  position: relative;
  z-index: 3;
  margin-top: 0;
  padding-top: 60px;
  color: #FFA233;
  font-weight: normal;
  font-size: 3.6rem;
  text-align: center;
}

#post-70 h2 {
  color: #fff;
  font-weight: normal;
  font-size: 4.2rem;
}
#post-70 .flex {
  justify-content: center;
  width: 988px;
  margin: auto;
}
#post-70 .flex-box {
  width: 444px;
  margin-right: 50px;
}
#post-70 .flex-box:last-child {
  margin-right: 0;
}
#post-70 .name {
  width: 100%;
  height: 60px;
  margin-bottom: 17px;
  padding: 5px;
  border-radius: 30px;
  color: #fff;
  font-size: 3rem;
  text-align: center;
  line-height: 45px;
}
#post-70 .h2-border {
  width: 100%;
  max-width: 100%;
  margin-bottom: 38px;
}
#post-70 #marine p {
  height: 190px;
  margin-top: 25px;
}
#post-70 #agri p {
  height: 150px;
  margin-top: 25px;
}
#post-70 section {
  max-width: 100%;
  margin-top: 25px;
  margin-bottom: 50px;
}

/* #post-70 .link-outer{
    text-align: center;
}
#post-70 .link{
    display: inline-block;
    height: 45px;
    padding: 5px 15px;
    border-radius: 22.5px;
    color: #fff;
    font-size: 2.4rem;
    line-height: 1.3;
} */
#business-top {
  width: 100%;
  height: 1135px;
  padding-top: 100px;
  background: url(img/carrotax_Business_bg_pc-8.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#business-top img {
  display: block;
  margin: auto;
}
#business-top .text {
  max-width: 700px;
  margin: 40px auto 0;
  font-size: 2.2rem;
}

.business-detail {
  width: 100%;
  margin: 25px auto 0;
  padding: 10px 10px;
  border-radius: 20px;
  color: #232323;
  font-size: 1.9rem;
}
.business-detail a {
  color: #1071d3;
}
.business-detail i {
  margin-left: 5px;
}
.business-detail.blue {
  border: 1px solid #0066CC;
}
.business-detail.blue span {
  background: #0066CC;
}
.business-detail.green {
  border: 1px solid #39B54A;
}
.business-detail.green span {
  background: #39B54A;
}
.business-detail.orange {
  border: 1px solid #F9883B;
}
.business-detail.orange span {
  background: #F9883B;
}
.business-detail .business-detail-table {
  background: transparent;
  border: none;
  font-weight: normal;
  margin-bottom: 0;
  font-feature-settings: "palt";
}
.business-detail .business-detail-table tr:nth-of-type(2n+1) {
  background: none;
}
.business-detail .business-detail-table :is(th, td) {
  background: transparent;
  border: none;
  font-weight: normal;
}
.business-detail .business-detail-table tr {
  vertical-align: top;
}
.business-detail .business-detail-table th {
  padding: 5px;
}
.business-detail .business-detail-table td {
  padding: 0 0 0 10px;
}

.business-detail:is(.blue, .green, .orange) span {
  display: inline-block;
  width: 90px;
  border-radius: 10px;
  color: #fff;
  text-align: center;
}

#marine h2 {
  color: #0066CC;
}
#marine .name {
  background: #0066CC;
}
#marine .link {
  background: #008EEF;
}

#agri h2 {
  color: #39B54A;
}
#agri .name {
  background: #39B54A;
}
#agri .link {
  background: #5BDD67;
}

#sight h2 {
  color: #F9883B;
}
#sight .name {
  background: #F9883B;
}

.news-list {
  list-style: none;
  padding-left: 0;
}

#post-67 section {
  max-width: 100%;
  margin-bottom: 100px;
}
#post-67 #about-top {
  margin-bottom: 68px;
  padding: 84px 0 80px;
  background: url(img/carrotax_tuken_bg_pc-8.png);
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
}
#post-67 .text {
  max-width: 650px;
  margin: auto;
  font-size: 2rem;
  text-align: left;
}
#post-67 h2 {
  color: #232323;
  font-weight: normal;
  font-size: 4.2rem;
}
#post-67 :is(#access, #transportation) h2 {
  color: #FFA233;
}
#post-67 h3 {
  max-width: 450px;
  margin: 80px auto 30px;
  border: none;
  border-radius: 50px;
  background: #FFA233;
  color: #fff;
  font-size: 3rem;
  text-align: center;
}
#post-67 .ferry1 {
  max-width: 1020px;
  margin: auto;
  text-align: center;
}
#post-67 .ferry1 img {
  display: block;
  margin: auto;
}
#post-67 .ferry1 .text {
  font-size: 1.4rem;
  text-align: center;
}
#post-67 .ferry2 {
  max-width: 1020px;
  margin: auto;
  text-align: center;
}
#post-67 .ferry2 img {
  display: block;
  margin: auto;
}
#post-67 .ferry2 img:first-child {
  margin-right: 40px;
}
#post-67 .ferry2 .text {
  font-size: 1.4rem;
  text-align: center;
}
#post-67 .h2-border {
  max-width: 100%;
  margin-bottom: 45px;
}
#post-67 #about h2 {
  margin-bottom: 40px;
}

.footer-bottom.fnm-text-width .menu-footer .br {
  display: none;
}

#menu-item-289 {
  border-left: none;
}

.taxi-reserve p {
  max-width: 835px;
  margin-right: auto;
  margin-left: auto;
}
.taxi-reserve .text {
  max-width: 600px;
  margin: auto;
  font-size: 2rem;
  text-align: left;
}
.taxi-reserve .big {
  font-weight: bold;
  font-size: 3rem;
}

.carrotax-reserve-exclusive h2 {
  margin: auto auto 75px;
}
.carrotax-reserve-exclusive h2 img {
  display: block;
  margin: auto;
}

.taxi-reserve-fare {
  margin: auto;
  max-width: 450px;
  border: solid 2px #6FCC27;
  font-size: 2.1rem;
  text-align: center;
}
.taxi-reserve-fare th {
  display: block;
  width: 100%;
  border: none;
  background: #6FCC27;
  color: #fff;
  font-size: 2.1rem;
}
.taxi-reserve-fare td {
  display: block;
  width: 100%;
  padding: 15px 50px;
  border: none;
  background: #fff;
  font-size: 2.1rem;
}
.taxi-reserve-fare ul {
  padding-left: 0;
  list-style: none;
}
.taxi-reserve-fare .time {
  margin-bottom: 0;
}
.taxi-reserve-fare .time-text {
  font-size: 1.8rem;
  text-align: left;
}

.taxi-reserve-course h2 {
  background: #FFA233;
}
.taxi-reserve-course h2 img {
  display: block;
  margin: auto;
}

.course-point {
  padding: 30px 0;
  background: url(img/carrotax_course_hbg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.course-point .flex {
  justify-content: center;
  align-items: center;
  gap: 17px;
}
.course-point img {
  border: solid 7px #fff;
  box-shadow: 4px 4px 4px 0 rgba(69, 69, 69, 0.3);
}

.point-list-outer {
  margin-top: 20px;
  padding: 15px;
  background: rgba(255, 255, 255, 0.8);
}

.point-list-inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.point-list-inner::before {
  content: "";
  width: 132px;
  height: 160px;
  background: url(img/carrotax_course_point.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.point-list-inner ul {
  margin-bottom: 0;
  padding-left: 20px;
  list-style: none;
}
.point-list-inner li {
  padding: 9px;
  border-bottom: 2px dashed #6FCC27;
  color: #454545;
  font-size: 2.8rem;
  font-weight: bold;
}
.point-list-inner li::before {
  content: "▶";
  color: #6FCC27;
  margin-right: 5px;
}

.model-link-box {
  display: flex;
  flex-flow: column;
  align-items: center;
  gap: 35px;
  margin-top: 40px;
  margin-bottom: 45px;
}

.model-link {
  display: block;
  max-width: 290px;
  padding: 15px 30px;
  border: solid 2px #6FCC27;
  box-shadow: 4px 4px 0 #6FCC27;
  border-radius: 30px;
  font-weight: 500;
  color: #6FCC27;
  text-align: center;
}
.model-link::after {
  content: "▼";
  margin-left: 1rem;
  color: #6FCC27;
}
.model-link:hover {
  color: #6FCC27;
}

.model-cource-box {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 750px;
  margin: auto;
}
.model-cource-box::before {
  display: block;
  content: "";
  width: 750px;
  height: 170px;
  background: url(img/carrotax_course_kakomi_ue.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  aspect-ratio: 1/0.235;
}
.model-cource-box img {
  display: block;
}
.model-cource-box h3 {
  border: none;
  margin-bottom: 40px;
  padding: 0;
  font-size: 5rem;
  font-weight: bold;
  text-align: center;
}
.model-cource-box h4 {
  display: inline-block;
  margin-bottom: 20px;
  padding: 8px 40px;
  border-radius: 40px;
  font-size: 3.2rem;
  text-align: center;
}
.model-cource-box h4.h4-black {
  border: solid 1px #454545;
}
.model-cource-box h4.h4-green {
  background: #6FCC27;
  outline: solid 2px #6FCC27;
  border: 5px solid #fff;
  color: #fff;
}
.model-cource-box h4.h4-orange {
  position: relative;
  background: #FFA233;
  outline: solid 2px #FFA233;
  border: 5px solid #fff;
  color: #fff;
}
.model-cource-box h4.h4-orange::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-50%, -50%);
  content: "";
  width: 104px;
  height: 102px;
  background: url(img/carrotax_course_kazari.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.model-cource-box h4.h4-start {
  margin-bottom: 50px;
}
.model-cource-box h4.h4-goal {
  margin-bottom: 35px;
}
.model-cource-box table tbody {
  vertical-align: top;
}
.model-cource-box table tr, .model-cource-box table th, .model-cource-box table td {
  background: #fff;
  border: none;
}
.model-cource-box table tr:has(.text2) {
  vertical-align: middle;
}
.model-cource-box table tr:last-child td {
  border-color: transparent;
}
.model-cource-box table th {
  width: 335px;
  padding-right: 35px;
  padding-bottom: 40px;
  padding-left: 0;
}
.model-cource-box table th:first-child {
  padding-top: 0;
}
.model-cource-box table td {
  padding-top: 0;
  border-left: 3px solid #b3b3b3;
}
.model-cource-box table .time {
  display: flex;
  align-items: start;
  margin-top: -7px;
  margin-left: -25px;
  margin-bottom: 0;
  font-size: 2.8rem;
  color: #6FCC27;
  font-weight: bold;
  line-height: 3.6rem;
}
.model-cource-box table .time::before {
  content: "";
  width: 28px;
  height: 28px;
  margin-top: 7px;
  margin-right: 8px;
  background: #fff;
  outline: 5px solid #6FCC27;
  outline-offset: -5px;
  border-radius: 30px;
}
.model-cource-box table .model-spot-img {
  width: 100%;
  max-width: 300px;
  height: auto;
  max-height: 260px;
  border-radius: 20px;
  aspect-ratio: 300/260;
  -o-object-fit: contain;
     object-fit: contain;
  background: lightgray;
}
.model-cource-box table .text {
  margin-top: 10px;
  margin-right: 20px;
  margin-left: 15px;
  font-size: 1.6rem;
  color: #666666;
  line-height: 2.8rem;
}
.model-cource-box table .text2 {
  display: flex;
  align-items: center;
  padding-top: 40px;
  margin-bottom: 0;
  margin-left: -25px;
  color: #f9883b;
}
.model-cource-box table .text2::before {
  content: "";
  width: 28px;
  height: 127px;
  margin-right: 15px;
  background: url(img/carrotax_course_arrow02.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  aspect-ratio: 1/4.536;
}
.model-cource-box table .img-right {
  display: block;
  margin-left: auto;
}
.model-cource-box .cource-allow {
  margin-bottom: 35px;
}

.model-cource-box-1 h3::before {
  display: block;
  content: "";
  margin: -20px auto auto;
  width: 320px;
  height: 73px;
  background: url(img/carrotax_course_model1.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.model-cource-box-1::after {
  display: block;
  content: "";
  margin: -20px auto auto;
  width: 750px;
  height: 176px;
  background: url(img/carrotax_course_kakomi_sita.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  aspect-ratio: 1/0.235;
}

.model-cource-box-2 {
  margin-top: 80px;
}
.model-cource-box-2::after {
  display: block;
  content: "";
  width: 750px;
  height: 176px;
  background: url(img/carrotax_course_kakomi_sita.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  aspect-ratio: 1/0.235;
}
.model-cource-box-2 h3::before {
  display: block;
  content: "";
  margin: auto;
  width: 320px;
  height: 72px;
  background: url(img/carrotax_course_model2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.model-cource-box-2 .model-cource-box-top {
  width: 100%;
  max-width: 750px;
  background: url(img/carrotax_course_kakomi_ue2_illust.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  min-height: 830px;
}
.model-cource-box-2 .model-cource-box-top .text-big {
  font-size: 2.8rem;
  font-weight: bold;
  color: #454545;
  text-align: center;
}

.model-cource {
  max-width: 660px;
  position: relative;
}
.model-cource::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 10px;
  transform: translateY(-100%);
  width: 148px;
  height: 160px;
  background: url(img/carrotax_course_start.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.model-cource-button {
  display: block;
  margin: 40px auto 0;
}

.model-cource-box-bottom {
  width: 100%;
  max-width: 750px;
  min-height: 750px;
  background: url(img/carrotax_course_kakomi_sita1.png);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain;
}
.model-cource-box-bottom .text-big {
  font-size: 3.2rem;
  color: #232323;
  font-weight: bold;
  text-align: center;
  line-height: 4.8rem;
}

.taxi-reserve-selectable {
  max-width: 750px;
  margin: 65px auto auto;
}
.taxi-reserve-selectable h2 {
  margin-bottom: 20px;
  font-size: 4rem;
  color: #FFA233;
  font-weight: bold;
  text-align: center;
}
.taxi-reserve-selectable p {
  font-size: 2.8rem;
  text-align: center;
}
.taxi-reserve-selectable .custom {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 560px;
  margin: auto;
  border-top: 1px solid #6fcc27;
  padding-top: 27px;
}
.taxi-reserve-selectable .custom h3 {
  margin-bottom: 25px;
  padding: 0;
  border: none;
  font-size: 4rem;
  color: #3ab212;
  font-weight: bold;
  text-align: center;
}
.taxi-reserve-selectable .custom ul {
  display: inline-block;
  padding-left: 0;
}
.taxi-reserve-selectable .custom li {
  padding-left: 42px;
  color: #6FCC27;
  font-size: 2.4rem;
  font-weight: bold;
  list-style: none;
  background: url(img/carrotax_course_check.png);
  background-size: 32px;
  background-repeat: no-repeat;
  background-position: left top 1rem;
}

#post-268 h1 {
  max-width: 1070px;
  margin: auto;
  margin-bottom: 45px;
  border-bottom: 1px solid #FFA233;
  font-weight: normal;
  font-size: 3rem;
}
#post-268 .sitemap {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 25px;
  padding-left: 0;
  font-size: 2rem;
  list-style: none;
}
#post-268 .sitemap li {
  margin-right: 20px;
}
#post-268 .sitemap li::before {
  content: "▶";
  font-size: 1.5rem;
  color: #FFA233;
}

.sitemap-outer {
  max-width: 1070px;
  margin: auto;
}

.sitemap a {
  color: #000;
}
.sitemap a:hover {
  color: #000;
}
.sitemap a:active {
  color: #000;
}

.sitemap-outer {
  margin-bottom: 460px;
}

.company-top {
  height: 535px;
  margin-bottom: 60px;
  padding-top: 70px;
  background: url(img/carrotax_company_bg_pc.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.company-top img {
  display: block;
  margin: auto;
}

.company table {
  width: 100%;
  max-width: 800px;
  margin: 30px auto;
  border: solid 1px #ABABAB;
  font-size: 1.6rem;
}
.company table th {
  width: 230px;
  border: solid 1px #ABABAB;
  background: #F7F9F9;
  font-weight: 400;
}
.company table td {
  font-weight: 400;
}
.company table:not(.has-border-color) :where(td) {
  border: solid 1px #ABABAB;
  background: #fff;
}
.company iframe {
  display: block;
  width: 100%;
  max-width: 800px;
  margin: auto;
}

.company-header {
  position: relative;
  height: 40px;
  margin-bottom: 0;
  background-size: auto auto;
  background-color: rgb(255, 160, 57);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgb(251, 204, 66) 10px, rgb(251, 204, 66) 20px);
  color: #232323;
  text-align: center;
}
.company-header::after {
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 20px;
  background: rgb(255, 160, 57);
  content: "";
}

.indicators {
  display: none;
}

.map-table {
  width: 100%;
  margin: 50px auto;
}

.label-box {
  display: flex;
  justify-content: center;
}

.tab-item {
  width: 210px;
  height: 57px;
  margin-left: 15px;
  border-radius: 15px;
  color: #fff;
  font-size: 2.1rem;
  text-align: center;
  line-height: 57px;
  font-weight: bold;
  transition: all 0.2s ease;
  cursor: pointer; /* マウスホバーを示すためのカーソル */
}
.tab-item:first-child {
  margin-left: 0;
}

/* 各タブの背景色 */
.label-map-spot {
  background: #5BD867;
}

.label-map-food {
  background: #FFA233;
}

.label-map-shop {
  background: #FF6E3D;
}

.label-map-inn {
  background: #66CCFF;
}

/* ラジオボタンを全て消す */
input[name=tab-item] {
  display: none;
}

/* タブのコンテンツ */
.tab-content {
  display: none;
  clear: both;
}
.tab-content.active {
  display: block;
}

/* チェックされていないラベルの透明度を変更 */
.label-box label {
  opacity: 0.5;
}

/* チェックされたラベルの透明度を100%に */
input[name=tab-item]:checked + label {
  opacity: 1;
}

.swiper {
  display: none;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px) {
  /*必要ならばここにコードを書く*/
  .mobile-menu-buttons {
    flex-flow: row-reverse;
  }
  main.main {
    padding: 0;
  }
  .navi-menu-content {
    right: 0;
    left: auto;
    transform: translateY(105%);
  }
  .menu-content {
    max-width: 100%;
  }
  .entry-content > section {
    width: 100%;
  }
  .content-box {
    width: 90%;
    margin: auto;
  }
  body.customize-partial-edit-shortcuts-shown .customize-partial-edit-shortcut button {
    display: none;
  }
  #navi-menu-content {
    color: #fff;
    text-align: center;
  }
  .menu-drawer a:hover {
    background: none;
  }
  #top-taxi-mov img {
    width: 150px;
    height: auto;
  }
  .entry-content > section {
    margin-bottom: 95px;
  }
  .flex {
    flex-flow: column;
  }
  #top-bg-img {
    height: 123vw;
    background: url(img/carrotax_mainbg_sp-8.png);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: cover;
  }
  #top-taxi-img {
    padding-top: 20%;
  }
  #top-taxi-img img {
    width: 100%;
  }
  #top-bg-orange {
    padding-top: 100px;
  }
  :is(#howto, #t-attraction) .h2-bottom-text {
    margin-bottom: 5px;
  }
  #howto .flex-box {
    display: flex;
    align-content: center;
    margin: auto;
    padding: 12px 0 12px 0;
    border-bottom: none;
  }
  #howto .flex-box picture {
    width: 30%;
    margin-right: 10px;
  }
  #howto .flex-box img {
    display: block;
    width: 100%;
  }
  #howto .flex-box .text {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    text-align: left;
  }
  #howto .flex-box:last-child {
    border-bottom: 2px dashed #FFA233;
  }
  .howto-tel-text {
    font-size: 2.6rem;
  }
  #t-attraction .flex-box {
    width: 80%;
    margin: auto auto 70px auto;
  }
  #t-attraction .flex-box:first-child {
    margin-left: auto;
  }
  #t-attraction .more {
    margin: auto;
  }
  #t-attraction .flex-box-bg {
    height: auto;
  }
  #t-attraction .flex-box-bg img {
    width: 90%;
  }
  #photo .flex-box {
    width: 100%;
    margin-left: 0;
    text-align: center;
  }
  #photo .flex-box img {
    width: 100%;
  }
  .footer {
    padding-right: 0;
    padding-left: 0;
  }
  .footer a {
    width: 80%;
  }
  .footer a img {
    width: 100%;
  }
  #footer-top {
    margin-bottom: -1px;
  }
  #footer-top .tel {
    display: none;
  }
  #footer-top .img {
    margin-top: 35px;
  }
  .footer-bottom {
    padding-right: 0;
    padding-left: 0;
  }
  .footer-bottom.fnm-text-width .menu-footer li {
    justify-content: center;
    margin: 4px 0;
    border-right: 1px solid #fff;
  }
  .footer-bottom.fnm-text-width .menu-footer li:last-child {
    border-right: none;
  }
  #fix-banner {
    display: block;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    margin: auto;
  }
  .footer-bottom-inner {
    display: block;
  }
  .footer-bottom-inner::before {
    display: none;
  }
  .footer-bottom-inner::after {
    display: none;
  }
  #navi-menu-input:checked ~ #navi-menu-content {
    padding: 0 0 3% 0;
    background: #FFA233;
    /* transition: none; */
  }
  .menu-drawer a {
    width: 55%;
    margin: auto;
    color: #fff;
    font-size: 2rem;
  }
  .menu-drawer a:hover {
    color: #fff;
  }
  .menu-drawer li {
    width: 90%;
    margin: auto;
    padding: 0 8% 20px;
    border-bottom: 1px solid #fff;
    text-align: left;
  }
  .menu-close-button {
    text-align: right;
  }
  .menu-footer:is(::before, ::after) {
    content: none;
  }
  .fa {
    padding-right: 5px;
  }
  .search-menu-button.menu-button {
    visibility: hidden;
  }
  .go-to-top-pc {
    bottom: 15vw;
  }
  .go-to-top-pc:has(> .fixed) {
    bottom: 0;
  }
  .go-to-top-sp {
    display: block;
    position: inherit;
    background: #2672FF;
  }
  .fix-banner-inner {
    box-shadow: 0px -2px 4px rgba(0, 0, 0, 0.25);
  }
  .fix-banner-inner img {
    width: 100%;
  }
  .go-to-top-common-sp {
    border: none;
  }
  .mobile-menu-buttons .menu-caption {
    display: none;
  }
  #mobile-menu-tel {
    padding: 15px 10%;
    background: #fff;
  }
  .telimg1 {
    width: 50%;
  }
  .menu-item-76 a:before {
    background: url(img/carrotax_sp_menu01@2x-8.png);
    content: "";
  }
  .menu-item-77 a:before {
    background: url(img/carrotax_sp_menu02@2x-8.png);
    content: "";
  }
  .menu-item-78 a:before {
    background: url(img/carrotax_sp_menu03@2x-8.png);
    content: "";
  }
  .menu-item-79 a:before {
    background: url(img/carrotax_sp_menu04@2x-8.png);
    content: "";
  }
  .menu-item-400 a:before {
    background: url(img/carrotax_sp_menu04@2x-8.png);
    content: "";
  }
  :is(.menu-item-76, .menu-item-77, .menu-item-78, .menu-item-79, .menu-item-400) a:before {
    display: inline-block;
    width: 3rem;
    height: 3rem;
    padding-left: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: translateY(7px);
  }
  .footer-bottom-content {
    padding-bottom: 80px;
  }
  #footer-mobile-deco {
    display: block;
  }
  #footer-mobile-deco img {
    width: 100%;
  }
  #post-68 .entry-title::after {
    font-size: 2rem;
  }
  #post-68 header {
    margin-bottom: 30px;
  }
  #map-link {
    margin-bottom: 40px;
  }
  #map-spot > .flex {
    width: 90%;
    margin: auto;
  }
  #map-spot .flex .flex-box.left {
    width: 100%;
    margin-bottom: 15px;
    padding-right: 0;
  }
  #map-spot .name {
    margin-bottom: 17px;
    font-size: 2.4rem;
  }
  .map-border .border1 {
    position: absolute;
    left: 5%;
  }
  .map-border .border2 {
    position: absolute;
    left: 25%;
  }
  .map-border .border3 {
    position: absolute;
    left: 40%;
  }
  .map-border .border4 {
    position: absolute;
    left: 55%;
  }
  .map-border .border5 {
    position: absolute;
    left: 70%;
  }
  .map-border6 {
    position: absolute;
    left: 85%;
  }
  .swipe-pc-img {
    display: none;
  }
  .spot-h2-img {
    width: 90%;
    margin: auto auto 50px;
    text-align: center;
  }
  .spot-title-icon {
    height: auto;
  }
  .spot-flex {
    align-items: center;
    padding-top: 50px;
    margin-top: -50px;
  }
  .spot-flexbox {
    width: 90%;
    margin: auto;
  }
  .spot-flexbox.slides {
    padding-bottom: 50px;
  }
  .spot-flexbox.source-slides {
    padding-bottom: 0;
  }
  .spot-flexbox:has(+ .spot-source) img {
    padding-bottom: 0;
  }
  .spot-flexbox.source-in img {
    padding-bottom: 0;
  }
  .spot-source {
    padding-right: 5%;
  }
  .source-slider {
    padding-bottom: 25px;
  }
  .source-slides.spot-photo img {
    padding-bottom: 0;
  }
  .spot-title-text {
    font-size: 2.2rem;
    line-height: 26px;
  }
  .spot-flexbox.spot-textbox1,
  .spot-flexbox.spot-textbox2 {
    width: 90%;
    margin-left: inherit;
  }
  .spot-title {
    align-items: stretch;
    margin-bottom: 15px;
    width: 100%;
  }
  .spot-text,
  .spot-hp-link {
    font-size: 1.4rem;
  }
  .spot-text-top {
    font-size: 1.6rem;
  }
  #post-68 .spot-text-top {
    margin: 10px 0;
  }
  .spot-flex .swiper {
    width: 90%;
    margin: auto;
  }
  .spot-photo {
    width: 100%;
  }
  .spot-photo img {
    width: 100%;
  }
  .spot-photo-small {
    width: 100%;
    margin: 0;
  }
  .map-table {
    margin-top: 40px;
  }
  .map-table .label-box {
    flex-wrap: wrap;
    width: 90%;
    margin: auto auto 30px;
  }
  .tab-item {
    width: calc(50% - 10px);
    margin: 5px 5px;
  }
  .tab-item:first-child {
    margin-left: 5px;
  }
  .spot-grid {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }
  #recommend p {
    width: 90%;
    margin-right: auto;
    margin-bottom: 48px;
    margin-left: auto;
  }
  #recommend dl {
    margin-bottom: 38px;
  }
  #recommend dt {
    max-width: 150px;
    margin-bottom: 18px;
    font-size: 2rem;
  }
  #recommend dd {
    font-size: 14px;
  }
  #recommend dd .big {
    font-size: 2rem;
  }
  :is(#post-68, #post-69, #post-313) header {
    height: 140px;
    padding-top: 82px;
  }
  :is(#post-68, #post-69, #post-313) header::after {
    height: 60px;
  }
  :is(#post-68, #post-69, #post-313) header h1 {
    font-size: 2rem;
  }
  :is(#post-68, #post-69, #post-313) header h1::before {
    top: -65px;
    width: 70px;
    height: 70px;
  }
  #post-68 header {
    height: 180px;
  }
  #post-68 header::after {
    height: 110px;
  }
  #post-68 section {
    width: 100%;
  }
  #fare2,
  #o-hours,
  #luggage,
  #payment {
    width: 100%;
  }
  :is(#fare2, #o-hours, #luggage, #payment) .text {
    width: 85%;
    margin: auto;
    font-size: 1.5rem;
  }
  #business-top {
    width: 100%;
    height: auto;
    padding-top: 20px;
    background: url(img/carrotax_Business_bg_sp-8.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
  }
  #business-top .text {
    width: 85%;
    margin: 120px auto 0;
    font-size: 1.4rem;
  }
  .business-detail:is(th, td) {
    font-size: 1.3rem;
  }
  #post-70 h2 {
    font-size: 2.8rem;
  }
  #post-70 .name {
    height: auto;
    margin-top: 43px;
    border-radius: 50px;
    font-size: 2rem;
  }
  #post-70 .link {
    height: auto;
    border-radius: 50px;
    font-size: 1.6rem;
  }
  #post-70 .flex {
    width: 100%;
  }
  #post-70 .flex-box {
    width: 100%;
    margin-right: 0;
  }
  #post-70 .flex-box img {
    width: 100%;
  }
  #post-70 #marine p {
    height: auto;
  }
  #post-67 #about-top {
    padding: 60px 0 55px;
    background: url(img/carrotax_tuken_bg_sp@2x-8.png);
    background-position: center bottom;
  }
  #post-67 #about-top img {
    width: 280px;
    height: 259px;
  }
  #post-67 h2 {
    font-size: 2.8rem;
  }
  #post-67 :is(#about, #access, #transportation) .h2-outer img {
    width: 105px;
    height: 105px;
  }
  #post-67 .text {
    width: 90%;
    font-size: 1.4rem;
  }
  #post-67 h3 {
    margin-bottom: 15px;
    font-size: 2.1rem;
  }
  #post-67 #about h2 {
    margin-bottom: 40px;
  }
  #post-67 section {
    margin-bottom: 95px;
  }
  #post-67 .ferry2 img:first-child {
    margin-bottom: 18px;
  }
  #post-67 :is(.ferry1, .ferry2) .text {
    width: 100%;
  }
  .use-h2-outer img {
    width: 56px;
    height: 56px;
  }
  .use section {
    margin-bottom: 100px;
  }
  .use .mid {
    font-size: 2rem;
  }
  .use .big {
    font-size: 4rem;
  }
  .use-text {
    font-size: 1.4rem;
  }
  .use-contents-box img {
    width: 90%;
    margin: auto;
  }
  .use-contents-box ul {
    font-size: 2rem;
  }
  .article .use-top-list {
    padding-left: 0;
    width: 65%;
  }
  .use-top-list a:nth-child(odd), .use-top-list a:nth-child(even) {
    padding: 10px 60px;
  }
  .use-bg-green,
  .use-bg-white,
  .use-bg-orange {
    font-size: 2rem;
  }
  .fare2-bg-white {
    font-size: 1.4rem;
  }
  .fare-free {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
  .payment-box-top {
    font-size: 1.4rem;
  }
  .payment-use-text {
    font-size: 2.6rem;
  }
  .payment-box {
    font-size: 1.4rem;
  }
  .payment-use-text-list {
    flex-flow: row;
    width: 90%;
    margin: 20px auto;
  }
  .payment-use-text-list .flex-box {
    width: 33.3333333333%;
    margin: 0 15px;
  }
  .payment-box-outer {
    width: 90%;
    margin: auto;
  }
  .luggage-use-text {
    width: 90%;
    margin: auto;
    font-size: 1.5rem;
  }
  .entry-content > section.taxi-reserve {
    width: 100%;
  }
  .taxi-reserve h2 {
    margin-bottom: 25px;
  }
  .taxi-reserve p {
    width: 90%;
  }
  .taxi-reserve .text {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
    font-size: 1.4rem;
  }
  .taxi-reserve .text p {
    margin-bottom: 50px;
  }
  .taxi-reserve img {
    margin-bottom: 28px;
  }
  .taxi-reserve .bg-green {
    font-size: 2rem;
  }
  .taxi-reserve .big {
    font-size: 2rem;
  }
  .taxi-reserve-fare {
    width: 90%;
  }
  .o-hours-time .bg-orange,
  .o-hours-deadline .bg-orange,
  .o-hours-deadline .bg-white {
    max-width: 170px;
  }
  #post-313 header {
    margin-bottom: 40px;
  }
  .company-top {
    height: 375px;
    margin-bottom: 60px;
    padding-top: 30px;
    background: url(img/carrotax_company_bg_sp.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  .company table {
    font-size: 1.4rem;
  }
  .company table th {
    width: 30%;
    padding: 5px;
  }
  .company table td {
    padding: 5px;
  }
  .company iframe {
    height: 225px;
  }
  .swiper {
    display: block;
    width: 100%;
    padding-bottom: 50px;
  }
  .swiper .spot-source {
    padding-right: 0;
  }
  .swiper-slide img {
    width: 100%;
  }
  .swiper-pagination-bullet-active {
    background: #333;
  }
}
/*834px以下*/
@media screen and (max-width: 834px) {
  /*必要ならばここにコードを書く*/
  .br-sp {
    display: block;
  }
  .br-pc {
    display: none;
  }
  #top-text-circle {
    width: auto;
    height: auto;
    padding: 14vw 0;
    background-size: contain;
  }
  #top-text {
    font-size: 4.5vw;
  }
  .article h2 {
    font-size: 2.6rem;
  }
  .h2-bottom-text {
    margin-bottom: 5px;
    font-size: 1.2rem;
  }
  #top-text {
    font-size: 3.3vw;
  }
  #t-attraction .more {
    width: 80%;
  }
  #t-attraction .more .text {
    font-size: 1.8rem;
  }
  #photo .text-top {
    font-size: 2rem;
  }
  #photo .slider {
    width: 100%;
  }
  .menu-drawer li {
    width: 100%;
    padding: 10px 0 10px;
  }
  .menu-drawer a {
    width: 100%;
  }
  #map-spot-link1,
  #map-spot-link2,
  #map-spot-link3,
  #map-spot-link4,
  #map-spot-link5,
  #map-spot-link6,
  #map-link1,
  #map-link2,
  #map-link3,
  #map-link4,
  #map-link5,
  #map-link6 {
    margin-top: -50px;
    padding-top: 50px;
  }
  #post-70 .entry-title {
    padding-top: 45px;
  }
  #post-70 .flex {
    max-width: 100%;
  }
  #post-70 .flex-box {
    width: 90%;
    margin: auto;
  }
  #post-70 .flex-box img {
    width: 100%;
  }
  #post-70 .flex-box:last-child {
    margin-right: auto;
  }
  #post-70 .link {
    margin-bottom: 37px;
  }
  #post-70 :is(#marine, #agri) p {
    height: auto;
  }
  #post-70 section {
    width: 100%;
  }
  #post-70 header {
    height: 76px;
  }
  #post-70 header::after {
    height: 60px;
  }
  #map-spot .flex .flex-box.left {
    padding-right: 0;
  }
  #map-spot .flex .flex-box img {
    width: 100%;
  }
  :is(#map-spot-link1, #map-spot-link2, #map-spot-link3, #map-spot-link4, #map-spot-link5, #map-spot-link6) img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 100%;
  }
  #map-spot .flex-box.right {
    max-width: 100%;
  }
  .go-to-top {
    bottom: 25vw;
  }
  .navi-footer-in > .menu-footer li.menu-item {
    width: auto;
  }
  .navi-footer-in > .menu-footer li.menu-item a {
    width: auto;
  }
  .footer-bottom.fnm-text-width .menu-footer li#menu-item-117 {
    margin-right: 2vw;
  }
  #post-268 h1,
  .sitemap-outer {
    width: 90%;
    margin: auto;
    padding: 0;
  }
  #post-268 h1 {
    padding-top: 85px;
  }
  #post-268 .sitemap {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
  #post-268 header {
    height: 145px;
  }
  #post-268 header::after {
    height: 135px;
  }
  .sitemap li::before {
    font-size: 1.2rem;
  }
  .model-cource-box::before, .model-cource-box::after {
    width: 100%;
    height: auto;
  }
  .sitemap-outer {
    margin-bottom: 95px;
  }
  .howto-h2-bg, .photo-h2-bg {
    margin-bottom: 30px;
    padding: 20px 0 10px;
    background: #FFECD6;
  }
  .t-attraction-h2-bg, .fare-h2-bg {
    margin-bottom: 30px;
    padding: 20px 0 10px;
    background: #E2F5D4;
  }
  .course-point {
    padding: 20px 0;
  }
  .course-point .flex {
    gap: 8px;
    flex-flow: row;
  }
  .course-point img {
    margin-bottom: 0;
    border-width: 5px;
    width: calc(33.3333333333% - 16px);
  }
  .taxi-reserve-course h2 {
    margin-bottom: 0;
  }
  .point-list-outer {
    padding: 0;
  }
  .point-list-inner::before {
    width: 66px;
    height: 88px;
  }
  .point-list-inner ul {
    padding-left: 10px;
  }
  .point-list-inner li {
    padding: 0;
    border-width: 1px;
    font-size: 1.4rem;
  }
  .model-link {
    padding: 10px 15px;
  }
  .model-cource::before {
    width: 19.7333333333vw;
    height: auto;
    aspect-ratio: 74/80;
  }
  .taxi-reserve-fare th {
    font-size: 1.4rem;
  }
  .taxi-reserve-fare td {
    padding: 10px 30px;
    font-size: 1.4rem;
  }
  .taxi-reserve-fare .time-text {
    font-size: 1.2rem;
  }
  .model-cource-box h3 {
    width: 100%;
    margin-bottom: 20px;
    font-size: 2.5rem;
  }
  .model-cource-box h3::before {
    width: 42.6666666667%;
  }
  .model-cource-box h4 {
    font-size: 1.4rem;
  }
  .model-cource-box h4.h4-orange::before {
    top: -5px;
    left: -5px;
    transform: translate(-50%, -50%) scale(0.5);
  }
  .model-cource-box h4.h4-goal {
    margin-bottom: 15px;
  }
  .model-cource-box table {
    width: 90%;
  }
  .model-cource-box table th {
    padding-right: 20px;
    padding-bottom: 20px;
    width: calc(40vw + 20px);
  }
  .model-cource-box table td {
    padding-bottom: 20px;
    border-width: 3px;
  }
  .model-cource-box table .time {
    margin-top: -2px;
    margin-left: -12px;
    font-size: 1.4rem;
    line-height: 1.8rem;
  }
  .model-cource-box table .time::before {
    width: 14px;
    height: 14px;
    margin-top: 2px;
    outline: solid 3px #6FCC27;
    outline-offset: -3px;
  }
  .model-cource-box table .text {
    margin-left: 10px;
    font-size: 1.2rem;
    line-height: 1.8em;
  }
  .model-cource-box table .text2 {
    margin-left: -2px;
  }
  .model-cource-box table .text2::before {
    width: 14px;
    height: 63px;
    margin-left: -10px;
  }
  .model-cource-box table .model-spot-img {
    margin-bottom: 0px;
    border-radius: 10px;
  }
  .model-cource-box .cource-allow {
    width: 3.7333333333vw;
    margin-bottom: 15px;
  }
  .model-cource-box-1 h3 {
    margin-top: -30px;
  }
  .model-cource-box-1 .step2 .img-right {
    width: 6.1333333333vw;
    margin-bottom: 0;
  }
  .model-cource-box-1 .step5 .img-right {
    width: 9.6vw;
    margin-bottom: 0;
  }
  .model-cource-box-1 .step7 .img-right {
    width: 26.9333333333vw;
  }
  .model-cource-box-1 .course_illust {
    width: 52.8vw;
    margin-bottom: 10px;
  }
  .model-cource-box-2 {
    margin-top: 40px;
  }
  .model-cource-box-2 .model-cource-box-top {
    margin-top: -25px;
    min-height: auto;
    height: 90vw;
  }
  .model-cource-box-2 .model-cource-box-top .text-big {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  .model-cource-box-2 .step3 .img-right {
    width: 9.6vw;
    margin-bottom: 0;
  }
  .model-cource-box-2 .step4 .img-right {
    width: 17.3333333333vw;
  }
  .model-cource-box-2 .step6 .img-right {
    width: 6.1333333333vw;
    margin-bottom: 0;
  }
  .model-cource-box-2 .course_illust {
    width: 77.8666666667vw;
  }
  .model-cource-button {
    width: 66.6666666667%;
  }
  .model-cource-box-bottom {
    width: 100%;
    height: auto;
    min-height: auto;
    aspect-ratio: 375/355;
  }
  .model-cource-box-bottom .text-big {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  .taxi-reserve-selectable {
    width: 90%;
    margin-top: 35px;
  }
  .taxi-reserve-selectable h2 {
    margin-bottom: 10px;
    font-size: 2rem;
  }
  .taxi-reserve-selectable p {
    width: 100%;
    font-size: 1.4rem;
  }
  .taxi-reserve-selectable .custom {
    width: 80%;
  }
  .taxi-reserve-selectable .custom h3 {
    margin-bottom: 12px;
    font-size: 2rem;
  }
  .taxi-reserve-selectable .custom li {
    padding-left: 20px;
    font-size: 1.2rem;
    background-size: 16px;
    background-position: left top 0.5rem;
  }
}
/*480px以下*/
@media screen and (max-width: 480px) {
  /*必要ならばここにコードを書く*/
  .footer-bottom.fnm-text-width .menu-footer li#menu-item-118,
  .footer-bottom.fnm-text-width .menu-footer li#menu-item-116 {
    border-right: none;
  }
  .footer-bottom.fnm-text-width .menu-footer .br {
    display: block;
    width: 100%;
    height: 0;
    visibility: hidden;
  }
  .model-cource-box-2 .model-cource-box-top {
    height: auto;
    aspect-ratio: 0.8169934641;
  }
  .model-cource-box-2 .model-cource-box-top .text-big {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
}/*# sourceMappingURL=style.css.map */