@charset "UTF-8";
a {
  font-weight: bold;
  color: #1D2088;
  text-decoration: none; }
  a:link {
    transition: .3s; }
  a:hover {
    opacity: 0.7; }
  a.indent {
    text-indent: -9999px; }
  a.lined {
    text-decoration: underline !important; }
  a.endLink {
    opacity: 0.2;
    pointer-events: none; }

main a {
  font-weight: bold;
  color: #1D2088;
  text-decoration: none; }
  main a:hover {
    text-decoration: underline; }

.redTxt {
  color: #FF0000; }

.blueTxt {
  color: #1D2088; }

.colWrapper {
  box-sizing: border-box; }
  .colWrapper.flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .colWrapper.flexCenter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
  .colWrapper.flexBtwn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }
  .colWrapper.flexStart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: start; }
  .colWrapper.flexEnd {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end; }
  .colWrapper.inflex {
    display: inline-flex;
    flex-wrap: wrap; }
  .colWrapper.inflexBtwn {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  .colWrapper.inflexStart {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: start; }
  .colWrapper.inflexEnd {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-end; }
  .colWrapper.flexBk {
    display: block; }
  .colWrapper.aiFlexStart {
    align-items: flex-start; }
  .colWrapper.aiStretch {
    align-items: stretch;
    height: 100%; }
    .colWrapper.aiStretch .box {
      height: auto; }
  .colWrapper.w100 {
    max-width: 100%;
    width: 100%; }
  .colWrapper.gap0 {
    gap: 0px; }
    @media screen and (max-width: 1024px) {
      .colWrapper.gap0 {
        gap: 0; } }
  .colWrapper.gap05 {
    gap: 5px; }
    @media screen and (max-width: 1024px) {
      .colWrapper.gap05 {
        gap: 5px; } }
  .colWrapper.gap10 {
    gap: 10px; }
    @media screen and (max-width: 1024px) {
      .colWrapper.gap10 {
        gap: 10px; } }
  .colWrapper.gap25 {
    gap: 25px; }
    @media screen and (max-width: 1024px) {
      .colWrapper.gap25 {
        gap: 20px; } }
  .colWrapper.gap30 {
    gap: 30px; }
    @media screen and (max-width: 1024px) {
      .colWrapper.gap30 {
        gap: 20px; } }
  .colWrapper .box {
    box-sizing: border-box; }
    .colWrapper .box.w10 {
      max-width: 10%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w10 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w19 {
      max-width: 19%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w19 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w20 {
      max-width: calc(100% / 5 - 20px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w20 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w20pd {
      max-width: calc(100% / 5 - 10px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w20pd {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w24 {
      max-width: 24%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w24 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w25 {
      max-width: calc(100% / 4 - 23px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w25 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w25pd {
      max-width: calc(100% / 4 - 10px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w25pd {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w30 {
      max-width: 30%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w30 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w33 {
      max-width: calc(100% / 3 - 20px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w33 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w33pd {
      max-width: calc(100% / 3 - 7px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w33pd {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w35 {
      max-width: 35%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w35 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w40 {
      max-width: 40%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w40 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w45 {
      max-width: 45%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w45 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w48 {
      max-width: 48%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w48 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w50 {
      max-width: calc(100% / 2 - 20px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w50 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w50pd {
      max-width: calc(100% / 2 - 5px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w50pd {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w50pd02 {
      max-width: calc(100% / 2 - 15px);
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w50pd02 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w55 {
      max-width: 55%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w55 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w60 {
      max-width: 60%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w60 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w65 {
      max-width: 65%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w65 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w70 {
      max-width: 70%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w70 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w73 {
      max-width: 73%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w73 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w75 {
      max-width: 75%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w75 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w80 {
      max-width: 80%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w80 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w90 {
      max-width: 90%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w90 {
          width: 100%;
          max-width: 100%; } }
    .colWrapper .box.w100 {
      max-width: 100%;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        .colWrapper .box.w100 {
          width: 100%;
          max-width: 100%; } }
    @media screen and (max-width: 1024px) {
      .colWrapper .box.spw19 {
        max-width: 100%;
        width: 19%; }
      .colWrapper .box.spw22 {
        max-width: 100%;
        width: 22%; }
      .colWrapper .box.spw25 {
        max-width: 100%;
        width: 25%; }
      .colWrapper .box.spw44 {
        max-width: 100%;
        width: 45%; }
      .colWrapper .box.spw46 {
        max-width: 100%;
        width: 45%; }
      .colWrapper .box.spw48 {
        max-width: 100%;
        width: 48%; }
      .colWrapper .box.spw50 {
        max-width: 100%;
        width: calc(100% / 2 - 10px); }
      .colWrapper .box.spw50pd {
        max-width: 100%;
        width: calc(100% / 2 - 5px); }
      .colWrapper .box.spw75 {
        max-width: 100%;
        width: 75%; }
      .colWrapper .box.spw77 {
        max-width: 100%;
        width: 77%; } }

.colWrapper {
  box-sizing: border-box; }
  .colWrapper.grid {
    display: grid;
    gap: 20px; }
  .colWrapper.fr250 {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
  .colWrapper.fr300 {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  .colWrapper.fr500 {
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr)); }
  @media screen and (max-width: 1024px) {
    .colWrapper {
      grid-template-columns: repeat(auto-fit, minmax(100%, 1fr)); } }

.noLink {
  pointer-events: none; }

.telNoLink {
  pointer-events: none; }
  @media screen and (max-width: 1024px) {
    .telNoLink {
      pointer-events: auto; } }

.dispPC {
  display: block; }
  @media screen and (max-width: 1279px) {
    .dispPC {
      display: block; } }
  @media screen and (max-width: 1024px) {
    .dispPC {
      display: none !important; } }

.dispSP {
  display: none !important; }
  @media screen and (max-width: 1279px) {
    .dispSP {
      display: none; } }
  @media screen and (max-width: 1024px) {
    .dispSP {
      display: block !important; } }

.dispTB {
  display: none; }
  @media screen and (max-width: 1279px) {
    .dispTB {
      display: block !important; } }
  @media screen and (max-width: 1024px) {
    .dispTB {
      display: none; } }

.sentenceTtlWrapper h2 {
  text-align: center;
  font-weight: 500;
  font-size: 36px;
  font-size: calc($size / 10)rem;
  display: block;
  color: #1D2088;
  padding: 25px;
  margin: 0 auto 60px auto;
  position: relative;
  line-height: 1.4em; }
  @media screen and (max-width: 1024px) {
    .sentenceTtlWrapper h2 {
      font-size: 28px;
      font-size: calc($size / 10)rem;
      padding: 30px 0 15px 0;
      margin: 0 0 30px 0; } }
  .sentenceTtlWrapper h2 span {
    position: relative; }
    @media screen and (max-width: 1024px) {
      .sentenceTtlWrapper h2 span {
        display: inline-block; } }
    .sentenceTtlWrapper h2 span:after {
      content: "";
      max-width: 100%;
      width: 100%;
      background-image: url(../images/common/yellow_naminami.svg);
      background-repeat: repeat-x;
      background-size: auto 25px;
      display: block;
      position: absolute;
      left: 0;
      right: 0;
      height: 25px; }
.sentenceTtlWrapper h3 {
  font-weight: 500;
  font-size: 30px;
  font-size: calc($size / 10)rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #1D2088;
  padding: 60px 0 40px 0;
  line-height: 1.6em; }
  @media screen and (max-width: 1024px) {
    .sentenceTtlWrapper h3 {
      font-size: 24px;
      font-size: calc($size / 10)rem;
      padding: 30px 0 15px 0; } }
.sentenceTtlWrapper h4 {
  font-weight: 500;
  font-size: 26px;
  font-size: calc($size / 10)rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #1D2088;
  padding: 30px 0;
  line-height: 1.6em; }
  @media screen and (max-width: 1024px) {
    .sentenceTtlWrapper h4 {
      font-size: 20px;
      font-size: calc($size / 10)rem;
      padding: 20px 0 10px 0; } }
.sentenceTtlWrapper h5 {
  font-weight: 500;
  font-size: 20px;
  font-size: calc($size / 10)rem;
  color: #000000;
  padding-bottom: 10px;
  line-height: 1.4em; }
  @media screen and (max-width: 1024px) {
    .sentenceTtlWrapper h5 {
      font-size: 18px;
      font-size: calc($size / 10)rem;
      padding-bottom: 10px; } }
.sentenceTtlWrapper .linedTtl {
  background: linear-gradient(to bottom, rgba(255, 255, 0, 0) 0%, rgba(255, 255, 0, 0) 50%, yellow 51%, yellow 99%, yellow 100%);
  padding: 0 10px 5px 10px;
  display: inline-block;
  margin: 0 auto;
  color: #000000;
  font-weight: 500;
  font-size: 24px;
  font-size: calc($size / 10)rem; }
.sentenceTtlWrapper .linedTtlBlue {
  background: linear-gradient(to bottom, rgba(232, 242, 249, 0) 0%, rgba(232, 242, 249, 0) 50%, #e8f2f9 51%, #e8f2f9 100%);
  padding: 0 10px 5px 10px;
  display: inline-block; }
.sentenceTtlWrapper .iconTtl {
  display: block;
  color: #000000;
  font-size: 24px;
  font-size: calc($size / 10)rem; }
  .sentenceTtlWrapper .iconTtl span {
    display: block;
    max-width: 62px;
    width: 100%;
    margin: 0 auto 20px auto;
    aspect-ratio: 1/1;
    background-size: contain;
    background-repeat: no-repeat; }
    .sentenceTtlWrapper .iconTtl span.spotEventIcon {
      background-image: url(/common/images/trip/spotEventIcon.svg); }
    .sentenceTtlWrapper .iconTtl span.spotOtherIcon {
      background-image: url(/common/images/trip/spotOtherIcon.svg); }
.sentenceTtlWrapper .subTxt {
  font-size: 20px;
  font-size: calc($size / 10)rem;
  font-weight: 500;
  padding: 10px 0;
  max-width: 100%;
  width: 100%; }
.sentenceTtlWrapper .lined {
  padding-bottom: 20px;
  padding-top: 20px;
  margin-top: 60px;
  margin-bottom: 40px;
  border-top: 1px dotted #1D2088;
  border-bottom: 1px dotted #1D2088; }
  @media screen and (max-width: 1024px) {
    .sentenceTtlWrapper .lined {
      font-size: 20px;
      font-size: calc($size / 10)rem;
      padding: 10px 0 10px 0;
      margin: 30px 0 20px 0; } }

@media screen and (max-width: 1024px) {
  .tableWrapper.scroll {
    overflow: auto;
    white-space: nowrap; }
    .tableWrapper.scroll table {
      width: 100%; }
    .tableWrapper.scroll:-webkit-scrollbar {
      height: 5px; }
    .tableWrapper.scroll:-webkit-scrollbar-track {
      background: #F1F1F1; }
    .tableWrapper.scroll:-webkit-scrollbar-thumb {
      background: #BCBCBC; } }
.tableWrapper table.w75 {
  max-width: 75%;
  width: 100%;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1024px) {
    .tableWrapper table.w75 {
      max-width: 100%;
      width: 100%; } }
.tableWrapper table.w100 {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1024px) {
    .tableWrapper table.w100 {
      max-width: 100%;
      width: 100%; } }
.tableWrapper table .wTtl {
  width: 10%;
  box-sizing: border-box; }
  @media screen and (max-width: 1024px) {
    .tableWrapper table .wTtl {
      width: 20%; } }
.tableWrapper table .w25 {
  width: 25%;
  box-sizing: border-box; }
.tableWrapper table .w28 {
  width: 28%;
  box-sizing: border-box; }
.tableWrapper table .w33 {
  width: calc(100% / 3);
  box-sizing: border-box; }
.tableWrapper table .w50 {
  width: 50%;
  box-sizing: border-box; }
.tableWrapper table .w75 {
  width: 75%;
  box-sizing: border-box; }
.tableWrapper table .wCont {
  width: 90%;
  box-sizing: border-box; }
  @media screen and (max-width: 1024px) {
    .tableWrapper table .wCont {
      width: 80%; } }
.tableWrapper table .w100 {
  width: 100%;
  box-sizing: border-box; }

.listWrapper ul {
  list-style: disc inside; }
  .listWrapper ul li {
    text-indent: -1em;
    padding-left: 1em; }
.listWrapper ol {
  list-style: decimal inside; }
  .listWrapper ol li {
    text-indent: -1em;
    padding-left: 1em; }

.tabWrapper {
  background-color: #fff; }
  .tabWrapper ul {
    display: flex;
    background: #D2D2E7;
    margin: 0;
    padding: 0; }
  .tabWrapper .tabBtn {
    width: 50%;
    padding: 10px 0;
    text-align: center;
    list-style: none;
    cursor: pointer;
    transition: .4s ease-in-out; }
    .tabWrapper .tabBtn.show {
      background: #1D2088;
      border-top: 2px solid #1D2088;
      color: #FFFFFF;
      animation: panelShow .3s ease-in-out forwards; }
  .tabWrapper .tabContents {
    display: none; }
    .tabWrapper .tabContents.show {
      display: block;
      padding: 20px;
      animation: panelShow .3s ease-in-out forwards; }

/* TAB切り替えのアニメーション */
@keyframes panelShow {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.attension {
  color: #FF0000;
  font-size: 18px;
  font-size: calc($size / 10)rem;
  font-weight: 400;
  border: 2px solid #FF0000;
  padding: 20px;
  box-sizing: border-box;
  border-radius: 10px; }
  @media screen and (max-width: 1024px) {
    .attension {
      font-size: 16px;
      font-size: calc($size / 10)rem;
      padding: 15px;
      line-height: 1.4em; } }

.attension02 {
  color: #00A0CA;
  font-size: 24px;
  font-size: calc($size / 10)rem;
  font-weight: 500; }
  @media screen and (max-width: 1024px) {
    .attension02 {
      font-size: 20px;
      font-size: calc($size / 10)rem; } }

.btn {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 0 0 0; }
  .btn a {
    border: 2px solid #1D2088;
    background-color: #FFFF00;
    border-radius: 9999px;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    padding: 10px 40px 10px 34px;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .btn a {
        font-size: 1.8rem; } }
    @media screen and (max-width: 1024px) {
      .btn a {
        font-size: 1.2rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .btn a {
      font-size: 1.4rem; } }

    .btn a:after {
      content: "";
      width: 11px;
      height: 18px;
      background-image: url(../images/common/btnLinkSign.svg);
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      right: 8px;
      top: 50%;
      transform: translate(0, -50%);
      bottom: 0; }
    .btn a:hover {
      background-color: #1D2088;
      color: #FFFF00;
      opacity: 1;
      text-decoration: none; }
      .btn a:hover:after {
        background-image: url(../images/common/btnLinkSignOn.svg); }

.prevBtn {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 0 0 0; }
  .prevBtn a {
    border: 2px solid #1D2088;
    background-color: #FFFFFF;
    color: #1D2088;
    border-radius: 9999px;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    padding: 12px 60px 10px 60px;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .prevBtn a {
        font-size: 1.8rem; } }
    @media screen and (max-width: 1024px) {
      .prevBtn a {
        font-size: 1.2rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .prevBtn a {
      font-size: 1.4rem; } }

    .prevBtn a:before {
      content: "";
      width: 11px;
      height: 18px;
      background-image: url(../images/common/btnLinkSign.svg);
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      left: 15px;
      top: 50%;
      transform: translate(0, -50%) rotate(180deg);
      bottom: 0; }
    .prevBtn a:hover {
      background-color: #1D2088;
      color: #FFFFFF;
      opacity: 1;
      text-decoration: none; }
      .prevBtn a:hover:before {
        background-image: url(../images/common/btnLinkSignOn.svg); }

.nextBtn {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 0 0 0; }
  .nextBtn a {
    border: 2px solid #1D2088;
    background-color: #FFFFFF;
    color: #1D2088;
    border-radius: 9999px;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    padding: 12px 60px 10px 60px;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .nextBtn a {
        font-size: 1.8rem; } }
    @media screen and (max-width: 1024px) {
      .nextBtn a {
        font-size: 1.2rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .nextBtn a {
      font-size: 1.4rem; } }

    .nextBtn a:after {
      content: "";
      width: 11px;
      height: 18px;
      background-image: url(../images/common/btnLinkSign.svg);
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translate(0, -50%);
      bottom: 0; }
    .nextBtn a:hover {
      background-color: #1D2088;
      color: #FFFFFF;
      opacity: 1;
      text-decoration: none; }
      .nextBtn a:hover:after {
        background-image: url(../images/common/btnLinkSignOn.svg); }

.textBtn a {
  font-weight: 500;
  border: 2px solid #1D2088;
  background-color: #FFFFFF;
  color: #1D2088;
  border-radius: 9999px;
  line-height: 1;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 1.6rem;
  position: relative;
  padding: 10px 40px 8px 40px; }
  @media screen and (max-width: 1024px) {
    .textBtn a {
      font-size: 1.8rem; } }
  @media screen and (max-width: 1024px) {
    .textBtn a {
      font-size: 1.2rem;
      padding: 8px 20px; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .textBtn a {
      font-size: 1.4rem; } }

  .textBtn a:hover {
    border: 2px solid #1D2088;
    background-color: #1D2088;
    color: #FFFFFF;
    text-decoration: none; }
  .textBtn a.active {
    border: 2px solid #1D2088;
    background-color: #1D2088;
    color: #FFFFFF; }

.textBtn02 a {
  font-weight: 500;
  border: 2px solid #1D2088;
  background-color: #FFFFFF;
  color: #1D2088;
  border-radius: 9999px;
  line-height: 1;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 1.6rem;
  position: relative;
  padding: 10px 40px 8px 34px; }
  @media screen and (max-width: 1024px) {
    .textBtn02 a {
      font-size: 1.8rem; } }
  @media screen and (max-width: 1024px) {
    .textBtn02 a {
      font-size: 1.2rem;
      padding: 10px 35px 10px 30px; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .textBtn02 a {
      font-size: 1.4rem; } }

  .textBtn02 a:after {
    content: "";
    width: 11px;
    height: 18px;
    background-image: url(../images/common/btnLinkSign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
  .textBtn02 a:hover {
    background-color: #1D2088;
    color: #FFFFFF;
    text-decoration: none;
    opacity: 1; }
    .textBtn02 a:hover:after {
      background-image: url(../images/common/btnLinkSignOn.svg); }

.textBtnDL a {
  font-weight: 500;
  border: 2px solid #1D2088;
  background-color: #FFFFFF;
  color: #1D2088;
  border-radius: 10px;
  line-height: 1;
  max-width: 100%;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 1.6rem;
  position: relative;
  padding: 14px 50px 12px 30px; }
  @media screen and (max-width: 1024px) {
    .textBtnDL a {
      font-size: 1.8rem; } }
  @media screen and (max-width: 1024px) {
    .textBtnDL a {
      font-size: 1.2rem;
      padding: 8px 40px 8px 25px; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .textBtnDL a {
      font-size: 1.4rem; } }

  .textBtnDL a:after {
    content: "";
    width: 25px;
    height: 25px;
    background-image: url(../images/common/btnDLSignOn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
    @media screen and (max-width: 1024px) {
      .textBtnDL a:after {
        width: 22px;
        height: 22px; } }
  .textBtnDL a:hover {
    background-color: #1D2088;
    color: #FFFFFF;
    opacity: 1;
    text-decoration: none; }
    .textBtnDL a:hover:after {
      background-image: url(../images/common/btnDLSign.svg); }
  .textBtnDL a.w310 {
    max-width: 360px; }
    @media screen and (max-width: 1024px) {
      .textBtnDL a.w310 {
        max-width: 100%; } }

.textBtnWH a {
  font-weight: 500;
  border: 2px solid #FFFFFF;
  background-color: #FFFFFF;
  color: #1D2088;
  border-radius: 9999px;
  line-height: 1;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 1.6rem;
  position: relative;
  padding: 7px 30px 7px 0; }
  @media screen and (max-width: 1024px) {
    .textBtnWH a {
      font-size: 1.8rem; } }
  @media screen and (max-width: 1024px) {
    .textBtnWH a {
      font-size: 1.2rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .textBtnWH a {
      font-size: 1.4rem; } }

  .textBtnWH a:after {
    content: "";
    width: 10px;
    height: 12px;
    background-image: url(../images/common/btnLinkSign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
  .textBtnWH a:hover {
    opacity: 0.7;
    text-decoration: none; }
  .textBtnWH a.active {
    border: 2px solid #1D2088;
    background-color: #1D2088;
    color: #FFFFFF; }

.textBtnS a {
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: start;
  font-size: 1.4rem;
  position: relative;
  padding: 7px 15px 7px 15px; }
  @media screen and (max-width: 1024px) {
    .textBtnS a {
      font-size: 1.6rem; } }
  @media screen and (max-width: 1024px) {
    .textBtnS a {
      font-size: 1.2rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .textBtnS a {
      font-size: 1.4rem; } }

  .textBtnS a:before {
    content: "";
    width: 10px;
    height: 12px;
    background-image: url(../images/common/btnLinkSignOn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
  .textBtnS a:hover {
    opacity: 0.7;
    text-decoration: none; }

.btn_large a {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 1em;
  position: relative;
  font-size: 2.0rem;
  font-weight: 500;
  color: #1D2088;
  background: #FFFFFF;
  border-radius: 0.5em;
  border: 2px solid #1D2088;
  transition: all 0.3s;
  max-width: 100%;
  width: 100%; }
  @media screen and (max-width: 1024px) {
    .btn_large a {
      font-size: 2.2rem; } }
  @media screen and (max-width: 1024px) {
    .btn_large a {
      padding: 0.5em 2.5em;
      font-size: 1.4rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .btn_large a {
      font-size: 1.6rem; } }

  .btn_large a:hover, .btn_large a.active {
    color: #FFFFFF;
    background: #1D2088;
    border: 2px solid #1D2088;
    text-decoration: none; }
    .btn_large a:hover:after, .btn_large a.active:after {
      background-image: url(../images/common/btnLinkSignOn.svg); }
  .btn_large a:after {
    content: "";
    width: 11px;
    height: 18px;
    background-image: url(../images/common/btnLinkSign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
  .btn_large a.w310 {
    max-width: 310px; }
    @media screen and (max-width: 1024px) {
      .btn_large a.w310 {
        max-width: 100%; } }

.pdfBtn a {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 1em 4em 1em 3.5em;
  position: relative;
  font-size: 2.0rem;
  font-weight: 500;
  color: #1D2088;
  background: #FFFFFF;
  border-radius: 0.5em;
  border: 2px solid #1D2088;
  transition: all 0.3s; }
  @media screen and (max-width: 1024px) {
    .pdfBtn a {
      font-size: 2.2rem; } }
  @media screen and (max-width: 1024px) {
    .pdfBtn a {
      padding: 0.5em 2.5em 0.5em 2.5em;
      font-size: 1.4rem; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .pdfBtn a {
      font-size: 1.6rem; } }

  .pdfBtn a:hover {
    color: #FFFFFF;
    background: #1D2088;
    border: 2px solid #1D2088;
    text-decoration: none; }
    .pdfBtn a:hover:before {
      background-image: url(../images/common/btnPdfLinkSignOn.svg); }
    .pdfBtn a:hover:after {
      background-image: url(../images/common/btnLinkSignOn.svg); }
  .pdfBtn a:before {
    content: "";
    width: 36px;
    aspect-ratio: 36/47;
    background-image: url(../images/common/btnPdfLinkSign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 0.5em;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }
    @media screen and (max-width: 1024px) {
      .pdfBtn a:before {
        width: 25px; } }
  .pdfBtn a:after {
    content: "";
    width: 11px;
    height: 18px;
    background-image: url(../images/common/btnLinkSign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translate(0, -50%);
    bottom: 0; }

.textBtnOUT a {
  position: relative; }
  .textBtnOUT a:after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 16px;
    background: url(../images/common/icon_siteLink.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 7px; }

.tabBtnWrapper ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border: 2px solid #1D2088;
  box-sizing: content-box;
  margin: 0;
  padding: 0; }
  .tabBtnWrapper ul.btn02col li {
    max-width: calc(100% / 2);
    width: 100%;
    display: block;
    border-right: 2px solid #1D2088; }
    .tabBtnWrapper ul.btn02col li:last-child {
      border-right: none; }
    @media screen and (max-width: 1024px) {
      .tabBtnWrapper ul.btn02col li {
        max-width: 100%;
        border-right: none;
        border-bottom: 2px solid #1D2088; }
        .tabBtnWrapper ul.btn02col li:last-child {
          border-bottom: none; } }
  .tabBtnWrapper ul.btn03col li {
    max-width: calc(100% / 3);
    width: 100%;
    display: block;
    border-right: 2px solid #1D2088; }
    .tabBtnWrapper ul.btn03col li:last-child {
      border-right: none; }
    @media screen and (max-width: 1024px) {
      .tabBtnWrapper ul.btn03col li {
        max-width: 100%;
        border-right: none;
        border-bottom: 2px solid #1D2088; }
        .tabBtnWrapper ul.btn03col li:last-child {
          border-bottom: none; } }
  .tabBtnWrapper ul.btn04col li {
    max-width: calc(100% / 4);
    width: 100%;
    display: block;
    border-right: 2px solid #1D2088; }
    .tabBtnWrapper ul.btn04col li:last-child {
      border-right: none; }
    @media screen and (max-width: 1024px) {
      .tabBtnWrapper ul.btn04col li {
        max-width: 100%;
        border-right: none;
        border-bottom: 2px solid #1D2088; }
        .tabBtnWrapper ul.btn04col li:last-child {
          border-bottom: none; } }
  .tabBtnWrapper ul a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 20px 25px;
    color: #1D2088;
    background-color: #FFFFFF;
    font-size: 22px;
    font-size: calc($size / 10)rem;
    font-weight: 500;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .tabBtnWrapper ul a {
        font-size: 20px;
        font-size: calc($size / 10)rem;
        padding: 15px 20px; } }
    .tabBtnWrapper ul a.active {
      background-color: #1D2088;
      color: #FFFFFF; }
    .tabBtnWrapper ul a:hover {
      background-color: #1D2088;
      color: #FFFFFF;
      opacity: 1;
      text-decoration: none; }
      .tabBtnWrapper ul a:hover:after {
        content: "";
        width: 26px;
        height: 17px;
        background-image: url(../images/common/btnLinkSignOn.svg);
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translate(-50%, 0) rotate(90deg); }
    .tabBtnWrapper ul a:after {
      content: "";
      width: 26px;
      height: 17px;
      background-image: url(../images/common/btnLinkSign.svg);
      background-size: contain;
      background-repeat: no-repeat;
      display: block;
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translate(-50%, 0) rotate(90deg); }

.pagetopBtn {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 2; }
  @media screen and (max-width: 1024px) {
    .pagetopBtn {
      right: 10px;
      bottom: 60px; } }
  .pagetopBtn a {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #333333;
    display: block;
    text-indent: -9999px;
    position: relative;
    transition: .3s; }
    .pagetopBtn a::before {
      content: "";
      top: 23px;
      left: 15px;
      width: 12px;
      transform: rotate(-45deg);
      position: absolute;
      width: 12px;
      height: 2px;
      border-radius: 3px;
      background: #ffffff; }
    .pagetopBtn a::after {
      content: '';
      top: 23px;
      left: 23px;
      width: 12px;
      transform: rotate(45deg);
      position: absolute;
      width: 12px;
      height: 2px;
      border-radius: 3px;
      background: #ffffff; }
    .pagetopBtn a:hover {
      background: #bbbbbb; }

.pagenationWrapper {
  padding: 0 0 60px 0; }
  @media screen and (max-width: 1024px) {
    .pagenationWrapper {
      padding: 30px 0 30px 0; } }
  .pagenationWrapper h2 {
    display: none; }
  .pagenationWrapper .page-numbers,
  .pagenationWrapper .nav-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-size: calc($size / 10)rem; }
    @media screen and (max-width: 1024px) {
      .pagenationWrapper .page-numbers,
      .pagenationWrapper .nav-links {
        font-size: 16px;
        font-size: calc($size / 10)rem; } }
    .pagenationWrapper .page-numbers span,
    .pagenationWrapper .nav-links span {
      width: 45px;
      height: 45px;
      font-family: 'Oswald', sans-serif;
      border: 1px solid #C1C1C1;
      background-color: #FFFFFF;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      transition: ease .2s;
      line-height: 0;
      margin: 0 10px; }
      @media screen and (max-width: 1024px) {
        .pagenationWrapper .page-numbers span,
        .pagenationWrapper .nav-links span {
          width: 40px;
          height: 40px; } }
      .pagenationWrapper .page-numbers span.current,
      .pagenationWrapper .nav-links span.current {
        color: #FFFFFF;
        background-color: #1D2088;
        margin: 0 10px; }
    .pagenationWrapper .page-numbers li,
    .pagenationWrapper .nav-links li {
      font-family: 'Oswald', sans-serif;
      font-weight: 500;
      margin: 0 5px; }
      @media screen and (max-width: 1024px) {
        .pagenationWrapper .page-numbers li,
        .pagenationWrapper .nav-links li {
          margin: 0 2px; } }
      .pagenationWrapper .page-numbers li span,
      .pagenationWrapper .nav-links li span {
        width: 45px;
        height: 45px;
        border: 2px solid #1D2088;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        transition: ease .2s;
        line-height: 0; }
        @media screen and (max-width: 1024px) {
          .pagenationWrapper .page-numbers li span,
          .pagenationWrapper .nav-links li span {
            width: 40px;
            height: 4ch; } }
        .pagenationWrapper .page-numbers li span.current,
        .pagenationWrapper .nav-links li span.current {
          color: #000000;
          background-color: #FFFFFF; }
    .pagenationWrapper .page-numbers a,
    .pagenationWrapper .nav-links a {
      width: 45px;
      height: 45px;
      font-family: 'Oswald', sans-serif;
      border: 1px solid #C1C1C1;
      background-color: #FFFFFF;
      color: #7C8080;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      transition: ease .2s;
      margin: 0 10px;
      border-radius: 4px;
      line-height: 0; }
      @media screen and (max-width: 1024px) {
        .pagenationWrapper .page-numbers a,
        .pagenationWrapper .nav-links a {
          width: 40px;
          max-height: 40px; } }
      .pagenationWrapper .page-numbers a:hover:not(.prev, .next),
      .pagenationWrapper .nav-links a:hover:not(.prev, .next) {
        color: #FFFFFF;
        background-color: #00A0CA;
        opacity: 1;
        text-decoration: none; }
      .pagenationWrapper .page-numbers a.prev,
      .pagenationWrapper .nav-links a.prev {
        width: auto;
        border: none;
        margin-right: 40px;
        color: #1D2088;
        background-color: transparent; }
        @media screen and (max-width: 1024px) {
          .pagenationWrapper .page-numbers a.prev,
          .pagenationWrapper .nav-links a.prev {
            margin-right: 10px; } }
        .pagenationWrapper .page-numbers a.prev:hover,
        .pagenationWrapper .nav-links a.prev:hover {
          background-color: none;
          text-decoration: none; }
        .pagenationWrapper .page-numbers a.prev:before,
        .pagenationWrapper .nav-links a.prev:before {
          content: "";
          left: 3px;
          width: 10px;
          height: 10px;
          margin-right: 15px;
          border-top: 2px solid #1D2088;
          border-right: 2px solid #1D2088;
          -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg); }
          @media screen and (max-width: 1024px) {
            .pagenationWrapper .page-numbers a.prev:before,
            .pagenationWrapper .nav-links a.prev:before {
              margin-right: 5px;
              width: 8px;
              height: 8px; } }
      .pagenationWrapper .page-numbers a.next,
      .pagenationWrapper .nav-links a.next {
        width: auto;
        border: none;
        margin-left: 40px;
        color: #1D2088;
        background-color: transparent; }
        @media screen and (max-width: 1024px) {
          .pagenationWrapper .page-numbers a.next,
          .pagenationWrapper .nav-links a.next {
            margin-left: 10px; } }
        .pagenationWrapper .page-numbers a.next:hover,
        .pagenationWrapper .nav-links a.next:hover {
          background-color: none;
          text-decoration: none; }
        .pagenationWrapper .page-numbers a.next:after,
        .pagenationWrapper .nav-links a.next:after {
          content: "";
          right: 3px;
          width: 10px;
          height: 10px;
          margin-left: 15px;
          border-top: 2px solid #1D2088;
          border-right: 2px solid #1D2088;
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
          @media screen and (max-width: 1024px) {
            .pagenationWrapper .page-numbers a.next:after,
            .pagenationWrapper .nav-links a.next:after {
              margin-left: 5px;
              width: 8px;
              height: 8px; } }
      .pagenationWrapper .page-numbers a.list,
      .pagenationWrapper .nav-links a.list {
        width: auto;
        border-top: none;
        border-bottom: none;
        padding: 0 2em;
        border-color: #EEF6FB;
        line-height: 1.2em; }
        @media screen and (max-width: 1024px) {
          .pagenationWrapper .page-numbers a.list,
          .pagenationWrapper .nav-links a.list {
            padding: 0 1em; } }
        .pagenationWrapper .page-numbers a.list:hover,
        .pagenationWrapper .nav-links a.list:hover {
          background-color: transparent;
          opacity: 0.6; }
    .pagenationWrapper .page-numbers nav,
    .pagenationWrapper .nav-links nav {
      position: relative;
      visibility: visible;
      z-index: 1;
      max-width: 100%;
      opacity: 1;
      background-color: transparent; }
  .pagenationWrapper.dots {
    border: none; }

.movieBox {
  width: 100%;
  aspect-ratio: 16 / 9; }
  .movieBox iframe {
    width: 100%;
    height: 100%; }

.googlemapBox {
  width: 100%;
  aspect-ratio: 16 / 9; }
  .googlemapBox iframe {
    width: 100%;
    height: 100%; }

.labelBox {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 1;
  padding: 14px 25px 12px 25px;
  border-radius: 10px;
  font-size: 20px;
  font-size: calc($size / 10)rem;
  font-weight: 500;
  margin: 0 0 20px 0; }
  @media screen and (max-width: 1024px) {
    .labelBox {
      padding: 10px 20px;
      font-size: 16px;
      font-size: calc($size / 10)rem;
      margin: 0 0 0 0; } }
  .labelBox.blueLabel {
    background-color: #1D2088;
    color: #FFFFFF; }

@media screen and (max-width: 1024px) {
  .animate {
    opacity: 0; }
    .animate.animated {
      opacity: 1; } }
html:has(body.page-template-page-carshare) {
  scroll-padding-top: 150px; }

/*タイトル*/
.rentacarWrap #rentacarHeadWrap {
  max-width: 1040px;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 40px;
  z-index: 2;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  margin-top: 20px; }
  @media screen and (max-width: 1024px) {
    .rentacarWrap #rentacarHeadWrap {
      top: 30px; } }
  .rentacarWrap #rentacarHeadWrap .rentacarNavWrap {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .rentacarWrap #rentacarHeadWrap #rentacarNav {
    display: flex;
    justify-content: space-around;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.3);
    background: #fff;
    padding-left: 0;
    width: 80%; }
    @media screen and (max-width: 1024px) {
      .rentacarWrap #rentacarHeadWrap #rentacarNav {
        margin: 0;
        border-left: 0;
        border-right: 0;
        box-shadow: none;
        border-radius: 0;
        width: 100%; } }
    .rentacarWrap #rentacarHeadWrap #rentacarNav li {
      list-style: none;
      padding: 10px; }
      @media screen and (max-width: 1024px) {
        .rentacarWrap #rentacarHeadWrap #rentacarNav li {
          letter-spacing: 0;
          font-size: 10px;
          font-size: calc($size / 10)rem;
          padding: 10px 0; }
          .rentacarWrap #rentacarHeadWrap #rentacarNav li a::before {
            display: block;
            content: "";
            background-repeat: no-repeat !important;
            width: 28px;
            height: 28px;
            background-size: contain !important;
            background-position: 50% 50% !important;
            margin: 0 auto; } }
      .rentacarWrap #rentacarHeadWrap #rentacarNav li a:hover {
        text-decoration: none; }
    .rentacarWrap #rentacarHeadWrap #rentacarNav .iconExLink a::after {
      width: 11px;
      height: 9px;
      margin-left: 1px; }
      @media screen and (max-width: 1024px) {
        .rentacarWrap #rentacarHeadWrap #rentacarNav .iconExLink a::after {
          width: 10px;
          height: 10px;
          margin-left: 3px; } }
    @media screen and (max-width: 1024px) {
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-campaign a::before {
        background: url(../images/common/iconSPcampaign.svg); }
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-yen a::before {
        background: url(../images/common/iconSPyen.svg); }
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-access a::before {
        background: url(../images/common/iconSPaccess.svg); }
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-guide a::before {
        background: url(../images/common/iconSPguide.svg); }
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-member a::before {
        background: url(../images/common/iconSPmember.svg); }
      .rentacarWrap #rentacarHeadWrap #rentacarNav #nav-qanda a::before {
        background: url(../images/common/iconSPqanda.svg); } }
  .rentacarWrap #rentacarHeadWrap ul#rentacarNav.carshareNav {
    width: 58%; }
    @media screen and (max-width: 1024px) {
      .rentacarWrap #rentacarHeadWrap ul#rentacarNav.carshareNav {
        width: 100%; } }
  .rentacarWrap #rentacarHeadWrap ul#rentacarNav_reserve.carshareNav_reserve {
    display: flex;
    gap: 2rem; }
    @media screen and (max-width: 1024px) {
      .rentacarWrap #rentacarHeadWrap ul#rentacarNav_reserve.carshareNav_reserve {
        display: none; } }
  .rentacarWrap #rentacarHeadWrap a.carshare_btn_mypage {
    border: 2px solid;
    padding: 5px 8px;
    background-color: #fdd000;
    border-radius: 5px; }
    .rentacarWrap #rentacarHeadWrap a.carshare_btn_mypage:hover {
      background-color: white; }
  .rentacarWrap #rentacarHeadWrap #rentacarNav_reserve li {
    list-style: none; }
  .rentacarWrap #rentacarHeadWrap #rentacarNav_reserve .rentacar_reserve_btn {
    padding: 5px 20px 5px 50px;
    background-color: #f19329;
    border-radius: 50px;
    color: white;
    position: relative; }
    .rentacarWrap #rentacarHeadWrap #rentacarNav_reserve .rentacar_reserve_btn::before {
      content: "";
      background-image: url(../images/rentacar/icon_reserve_car.svg);
      background-repeat: no-repeat;
      width: 25px;
      height: 15px;
      display: inline-block;
      position: absolute;
      top: 7px;
      left: 17px; }
  @media screen and (max-width: 1024px) {
    .rentacarWrap #rentacarHeadWrap #rentacarNav_reserve {
      display: none; } }
.rentacarWrap #rentacarNav_reserveSP {
  display: none; }
  @media screen and (max-width: 1024px) {
    .rentacarWrap #rentacarNav_reserveSP {
      display: flex;
      position: fixed;
      bottom: 0;
      left: 0;
      z-index: 2;
      width: 100vw;
      min-height: 50px;
      border-top: 1px solid #1d2085;
      text-align: center; }
      .rentacarWrap #rentacarNav_reserveSP .rentacar_reserve_btn {
        background-color: #f19329;
        width: 60%;
        color: white;
        min-height: 50px;
        display: flex;
        justify-content: center;
        align-items: center; }
        .rentacarWrap #rentacarNav_reserveSP .rentacar_reserve_btn a {
          color: white; }
        .rentacarWrap #rentacarNav_reserveSP .rentacar_reserve_btn::before {
          content: "";
          background-image: url(../images/rentacar/icon_reserve_car.svg);
          background-repeat: no-repeat;
          width: 40px;
          height: 20px;
          display: inline-block;
          margin-right: 5px; }
      .rentacarWrap #rentacarNav_reserveSP .rentacar_reserve_sub {
        width: 40%;
        background-color: white;
        min-height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        line-height: 1.5rem; } }
.rentacarWrap .rentacar_logo {
  width: 80%;
  margin: 40px auto; }
.rentacarWrap .rentacarCover {
  padding-top: 260px; }
  .rentacarWrap .rentacarCover .rentacarContainer {
    max-width: 1040px; }
  .rentacarWrap .rentacarCover .wp-block-group__inner-container {
    width: 100%;
    max-width: 1040px; }
  @media screen and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container {
      display: flex;
      flex-direction: column; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container .rentacarFormWrap {
      order: 2; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container .rentacarFormWrap .rentacarFrom {
      padding: 0.5em;
      margin-top: 90px; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container .rentacarFormWrap .rentacarFrom .rentacarFromParts dd {
      padding: 1em 0.1em; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container .rentacarFormWrap .rentacarFrom .rentacarFromParts dd span img {
      display: none; } }
  @media screen and (max-width: 1024px) {
      .rentacarWrap .rentacarCover .wp-block-group__inner-container .rentacarFormWrap .rentacarFrom .rentacarFromParts dd select {
        font-size: 16px;
        /*transform: scale(0.9);*/
        padding-left: 0.3em; } }
  @media screen and (max-width: 1024px) and (max-width: 1024px) {
    .rentacarWrap .rentacarCover .wp-block-group__inner-container .illustMapSado {
      order: 1;
      padding-top: 1em;
      margin: 1em auto; } }

.rentacarWrap .wp-block-cover__image-background.is-repeated {
  background-size: 100px; }
.rentacarWrap .cover_car-illust {
  position: absolute;
  width: 50%;
  max-width: 1000px;
  min-width: 600px;
  right: 0;
  bottom: 40px;
  z-index: -1; }
  @media screen and (max-width: 1024px) {
    .rentacarWrap .cover_car-illust {
      position: absolute;
      width: 410px;
      min-width: 410px;
      right: -50px;
      top: 190px;
      z-index: -1; } }
.rentacarWrap p.border-r50 {
  border-radius: 50px; }

input[type=text] {
  font-size: 16px;
  /*transform: scale(0.9);*/
  padding-left: 0.3em; }

.wp-block-flexible-table-block-table table {
  /*width: 100%!important;*/ }

.tokuten {
  padding: 40px 0 20px; }
  .tokuten ul {
    margin: 0 auto;
    text-align: center;
    padding-left: 0; }
    .tokuten ul li {
      padding: 10px;
      list-style: none; }
      .tokuten ul li::before {
        content: "";
        background: url(../images/common/icon_giftbox.svg);
        display: inline-block;
        background-size: contain;
        background-repeat: no-repeat;
        width: 20px;
        height: 20px;
        margin-right: 6px; }

#ui-datepicker-div {
  z-index: 3 !important; }

/* 通常のヘッダー */
header {
  transition: transform 0.3s ease, opacity 0.3s ease !important; }

/* sticky発動時にヘッダー全体を隠す（さっきの状態） */
body.is-sticky-header-hide header {
  transform: translateY(-100%);
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important; }

.wp-block-cover__inner-container .carshareContainer {
  max-width: 1040px; }
  @media screen and (min-width: 782px) and (max-width: 1279px) {
    .wp-block-cover__inner-container .carshareContainer {
      flex-basis: 100% !important; } }

.carshare_top_txt_box img {
  margin-bottom: 20px; }
.carshare_top_txt_box ul {
  margin-top: 20px;
  padding-left: 0; }
  .carshare_top_txt_box ul li {
    list-style: none; }
    .carshare_top_txt_box ul li::before {
      content: "●";
      color: #de6a1d;
      margin-right: 1rem;
      font-size: 3rem; }

.carshare_btn {
  position: relative; }
  .carshare_btn::before {
    content: "";
    background-image: url("/wp-content/uploads/sites/17/2026/03/carshare_kv_qr.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 130px;
    height: 130px;
    position: absolute;
    display: block;
    top: -70px;
    left: -70px;
    z-index: 1; }
    @media screen and (max-width: 1024px) {
      .carshare_btn::before {
        display: none; } }
  .carshare_btn::after {
    content: "";
    background-image: url("/wp-content/uploads/sites/17/2026/03/carshare_top_btn_arrow-r.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    display: block;
    top: 40px;
    right: 20px; }
    @media screen and (max-width: 1024px) {
      .carshare_btn::after {
        top: 35px; } }
  .carshare_btn img {
    padding-right: 40px; }

.wp-block-cover__inner-container .carshare_top_box_left {
  margin-top: 30px; }
  @media screen and (max-width: 1024px) {
    .wp-block-cover__inner-container .carshare_top_box_left {
      flex-basis: 100% !important; } }
  @media screen and (max-width: 1024px) {
    .wp-block-cover__inner-container .carshare_top_box_left {
      margin-top: 200px; } }
@media screen and (max-width: 1024px) {
  .wp-block-cover__inner-container .carshare_top_box_right .cover_car-illust {
    right: 0;
    top: 230px; } }

.rentacarCampaignWrap {
  max-width: 100%;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  align-items: center;
  padding-top: 1vw;
  padding-bottom: 7vw;
  z-index: 1;
  position: relative; }
  .rentacarCampaignWrap .container {
    max-width: 1180px;
    width: 100%;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .rentacarCampaignWrap .container {
        padding-bottom: 15vw; } }
    .rentacarCampaignWrap .container h3 {
      padding-top: 0; }
    .rentacarCampaignWrap .container .rentacarCampaignSliderWrap {
      max-width: 1140px;
      width: 100%;
      margin: 0 auto;
      padding-left: 0; }
      @media screen and (max-width: 1024px) {
        .rentacarCampaignWrap .container .rentacarCampaignSliderWrap {
          padding: 0;
          max-width: 100%; } }
      .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide {
        border: 1px solid #ddd;
        border-radius: 10px;
        margin: 0 20px;
        height: 400px;
        background: url(../images/common/bg_sea_wc.png);
        background-repeat: repeat;
        box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.3); }
        .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li {
          height: 305px;
        /*a {
      		transition: .3s;
      		display: block;
      		&:hover {
      		  text-decoration: none;
      		  opacity: 0.7;
      	  }*/
          /*}*/ }
          .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .headWrapWhiteBG {
            background: #fff;
            padding: 20px;
            border-top-left-radius: 10px;
            border-top-right-radius: 10px; }
          .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .title {
            color: #000000;
            padding-bottom: 10px;
            font-size: 18px;
            font-size: calc($size / 10)rem; }
          .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .picture {
            aspect-ratio: 3/2;
            object-fit: cover;
            display: flex;
            justify-content: center;
            overflow: hidden; }
            .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .picture img {
              height: 100%;
              object-fit: cover; }
          .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .cat_date {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: space-between;
            padding: 20px;
            box-sizing: border-box;
            display: inline-block;
            color: #1D2088;
            border: 1px solid #1D2088;
            padding: 6px 10px;
            font-weight: 400; }
          .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide li .rentacarCampaignSliderCont .text {
            padding: 20px 20px 0;
            color: #000000;
            font-weight: 400; }
        .rentacarCampaignWrap .container .rentacarCampaignSliderWrap .slick-slide::after {
          background: url(../images/common/bg_boat_02.png);
          background-repeat: no-repeat;
          display: block;
          content: "";
          width: 100%;
          height: 95px;
          background-size: contain;
          background-position: right bottom; }
    .rentacarCampaignWrap .container .slick-arrow {
      position: absolute;
      top: 35%;
      transform: translate(0, -50%);
      max-width: 21px;
      width: 100%;
      background-repeat: no-repeat;
      background-size: contain;
      text-indent: -9999px; }
      .rentacarCampaignWrap .container .slick-arrow.slick-prev {
        background-image: url(../images/common/topRecommendPrev.svg);
        left: -40px; }
        @media screen and (max-width: 1024px) {
          .rentacarCampaignWrap .container .slick-arrow.slick-prev {
            left: 2%; } }
      .rentacarCampaignWrap .container .slick-arrow.slick-next {
        background-image: url(../images/common/topRecommendNext.svg);
        right: -40px; }
        @media screen and (max-width: 1024px) {
          .rentacarCampaignWrap .container .slick-arrow.slick-next {
            right: 0; } }

.text-center {
  text-align: center; }

#footerInfo table {
  margin: 0 auto; }

#footerInfo table th {
  text-align: right;
  padding: .3em;
  vertical-align: middle; }

#footerInfo table td {
  padding: .3em;
  vertical-align: middle; }

#footerInfo table a {
  font-size: 24px; }

main #footerInfo .ar_info_paleBlueBg {
  padding: 2em; }

.rentacarFrom .rentacarFromParts .time select#departure_time1, .rentacarFrom .rentacarFromParts .time select#returned_time1, .rentacarFrom .rentacarFromParts .time select#departure_time2, .rentacarFrom .rentacarFromParts .time select#returned_time2 {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: .5em;
  box-sizing: border-box;
  display: block;
  margin: .5em auto 0 0.8em; }

.rentacarFrom .rentacarFromParts .time {
  right: 40px;
  position: relative; }

.rentacarFrom .rentacarFromParts dd select {
  color: #000;
  width: 100%; }

.wp-block-image.arriveandgo_bnr {
  position: absolute;
  right: 13px;
  top: 330px; }
  .wp-block-image.arriveandgo_bnr img {
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.3);
    width: 340px;
    border-radius: 10px; }

.rentacarCover {
  margin: 0 calc(50% - 50vw);
  width: 100vw; }

main .container {
  position: relative; }

section.rentacar-carshare_kv {
  background-color: #fdd000;
  padding: 100px 0 50px;
  margin-top: -60px; }
  @media screen and (max-width: 1024px) {
    section.rentacar-carshare_kv {
      margin-top: -20px; } }
  section.rentacar-carshare_kv .maincopy {
    width: 80%;
    margin: 0 auto; }
  section.rentacar-carshare_kv .rentacar-carshare_kv_wrapper {
    max-width: 1040px;
    margin: auto; }
  section.rentacar-carshare_kv .kv_rentacar_box_wrapper {
    display: flex;
    justify-content: space-between;
    margin-top: 3rem;
    align-items: center; }
    @media screen and (max-width: 1024px) {
      section.rentacar-carshare_kv .kv_rentacar_box_wrapper {
        flex-direction: column;
        gap: 6rem;
        margin-top: 2rem; } }
  section.rentacar-carshare_kv .kv_rentacar_box,
  section.rentacar-carshare_kv .kv_carshare_box {
    width: calc(50% - 3rem);
    background-image: url(../images/common/rentacar_box_bg.svg);
    background-position: top;
    background-repeat: repeat-y;
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.3); }
    @media screen and (max-width: 1024px) {
      section.rentacar-carshare_kv .kv_rentacar_box,
      section.rentacar-carshare_kv .kv_carshare_box {
        width: 90%; } }
  section.rentacar-carshare_kv .kv_rentacar_txt {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 2rem 3rem;
    margin: 0 3rem 3rem; }
    @media screen and (max-width: 1024px) {
      section.rentacar-carshare_kv .kv_rentacar_txt {
        padding: 1.5rem 1.5rem;
        margin: 0 1.5rem 1.5rem; } }
    section.rentacar-carshare_kv .kv_rentacar_txt img {
      border-bottom: 2px solid;
      padding-bottom: 10px;
      width: 80%;
      display: block;
      margin: auto; }
  section.rentacar-carshare_kv .kv_rentacar_txt ul {
    padding-top: 20px;
    padding-left: 1rem; }
    section.rentacar-carshare_kv .kv_rentacar_txt ul li {
      list-style: none; }
      section.rentacar-carshare_kv .kv_rentacar_txt ul li::before {
        content: "●";
        color: #de6a1d;
        margin-right: 1rem;
        font-size: 3rem; }

.tab_choice_sticky .tab_choice_sticky_wrap {
  position: sticky;
  top: 0px;
  z-index: 3; }
  @media screen and (max-width: 1024px) {
    .tab_choice_sticky .tab_choice_sticky_wrap {
      top: 0; } }
.tab_choice_sticky .tab_choice_ttl {
  background-color: #1D2088;
  color: white;
  text-align: center;
  padding: 10px;
  font-weight: 500;
  font-size: larger; }
  @media screen and (max-width: 1024px) {
    .tab_choice_sticky .tab_choice_ttl {
      padding: 10px; } }
.tab_choice_sticky .tab_choice_wrapper {
  display: flex;
  align-items: center;
  text-align: center;
  gap: 20px;
  font-size: larger;
  background-color: white;
  border-bottom: 2px solid #1D2088; }
  .tab_choice_sticky .tab_choice_wrapper::before {
    content: "";
    background-color: #1D2088;
    position: absolute;
    width: 2px;
    height: 30px;
    transform: translate(-50%);
    right: 50%; }
.tab_choice_sticky a.tab_box {
  width: 50%;
  padding: 10px;
  margin: 7px;
  border-radius: 10px;
  position: relative;
  opacity: 0.5; }
  .tab_choice_sticky a.tab_box:hover {
    background-color: #f19206;
    opacity: 1;
    color: white; }
  .tab_choice_sticky a.tab_box div {
    line-height: 2rem; }
  @media screen and (max-width: 1024px) {
    .tab_choice_sticky a.tab_box {
      padding: 5px;
      margin: 5px;
      border-radius: 5px; } }
.tab_choice_sticky a.tab_box div::after {
  content: "";
  background-image: url(../images/common/btnLinkSign.svg);
  background-repeat: no-repeat;
  display: inline-block;
  width: 12px;
  height: 19px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  position: absolute;
  right: 20px; }
  @media screen and (max-width: 1024px) {
    .tab_choice_sticky a.tab_box div::after {
      background-size: contain;
      width: 8px;
      height: 13px;
      right: 15px; } }
.tab_choice_sticky a.tab_box.selected {
  background-color: #f19206;
  color: white;
  opacity: 1; }

ul.rentacar_news {
  margin-left: 0 !important; }
  ul.rentacar_news li {
    border-bottom: 1px dotted;
    margin-bottom: 28px; }

@media screen and (max-width: 1024px) {
  .rentacarFrom .rentacarFromParts .time select#departure_time1, .rentacarFrom .rentacarFromParts .time select#returned_time1, .rentacarFrom .rentacarFromParts .time select#departure_time2, .rentacarFrom .rentacarFromParts .time select#returned_time2 {
    margin: .5em auto 0;
    padding: .5em;
    width: 92%; } }
@media screen and (max-width: 1024px) {
  .rentacarFrom .rentacarFromParts .time {
    right: auto; }

  .wp-block-image.arriveandgo_bnr {
    display: block;
    position: relative;
    right: auto;
    top: auto;
    margin-bottom: 30px; }

  .wp-block-image.arriveandgo_bnr img {
    width: 100%; } }
@media screen and (max-width: 768px) {
  main #footerInfo table th, main #footerInfo table td {
    text-align: center;
    display: block;
    width: 100%; }

  main #footerInfo table td {
    padding-bottom: 1em; } }
@media screen and (max-width: 378px) {
  .rentacarWrap .flex-grow input[type=text] {
    font-size: 14px; } }
