@charset "utf-8";
@import url('common.css?date=20241101');
@import url('https://use.fontawesome.com/releases/v5.6.3/css/all.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;500&family=Noto+Serif+JP:wght@400;700&display=swap');

.search_kokunai_map_Bar .pr_banner {
  display: none;
}

/* CSS Document */
html {
  scroll-behavior: smooth;
}

#wrapper {
  width: 100%;
  margin: 0 auto 10px;
  padding: 0;
  font-size: 14px;
  line-height: 1.6;
  overflow: hidden;
  font-family: 'Noto Sans JP', sans-serif;
}

#wrapper * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/*--------common-------------*/
@media screen and (min-width: 760px) {
  .pc_none {
    display: none;
  }

  .sp_br {
    display: none;
  }
}

@media screen and (max-width: 759.9px) {

  /*--------PCのみ表示　スマホでは非表示-------------*/
  .sp_none {
    display: none;
  }
}

.disnon {
  display: none;
}

.text_red {
  color: #B20202;
  border-bottom: 1px solid #B20202;
}

.marker {
  background: linear-gradient(transparent 80%, #ffd22c 80%);
  font-weight: bold;
}

.positon_right {
  object-position: right center;
}

a.godetail {
  width: 90%;
  max-width: 350px;
  display: block;
  margin: 50px auto;
  line-height: 65px;
  text-align: center;
  text-decoration: none;
  background: url("../images/button.png") no-repeat center bottom;
  background-size: auto 100%;
  color: #FFFFFF;
  font-family: 'Noto Sans JP', sans-serif;
}

a.godetail:hover {
  color: #FFFFFF !important;
  text-decoration: none !important;
  opacity: 0.8;
}

/*--------section-------------*/
section .inner>h2 {
  font-size: 25px;
  text-align: center;
  font-weight: bold;
  line-height: 1.4;
  width: fit-content;
  margin: 0 auto 10px;
  ;
}

section .inner>h2 span {
  font-size: 18px;
  font-weight: normal;
}

#toplogo {
  position: absolute;
  top: 10px;
  /*left: 33%;*/
  left: 21%;
  width: 14%;
  z-index: 1;
}

#toplogo label {
  cursor: pointer;
}

#toplogo #akaaka_logo {
  width: 70%;
}

#toplogo #akaaka_logo p {
  margin: 5px 10px;
  background: rgba(255, 255, 255, 0.9);
  border: 2px solid #E60612;
  padding: 3px 2px;
  color: #E60612;
  font-size: 14px;
  border-radius: 5px;
  text-align: center;
  white-space: nowrap;
}

@media screen and (min-width: 760px)and (max-width: 1024px) {
  #toplogo #akaaka_logo p {
    font-size: 15px;
  }
}

@media screen and (max-width: 759.9px) {
  #toplogo {
    position: absolute;
    top: 10px;
    left: 12%;
    width: 20%;
    z-index: 1;
  }

  #toplogo #akaaka_logo p {
    margin: 5px -5px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #E60612;
    padding: 3px 2px 2px;
    color: #E60612;
    font-size: 9px;
    border-radius: 5px;
    font-weight: bold;
  }
}

#toplogo #akaaka_logo img {
  width: 100%;
}

@media screen and (max-width: 759.9px) {
  section .inner>h2 {
    font-size: 20px;
  }

  section .inner>h2 span {
    font-size: 14px;
    font-weight: normal;
  }

}


/*----トップスライド----------*/
#topslide {
  width: 100%;
  margin-bottom: 20px;
}

#topslide .inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 759.9px) {
  #topslide {
    margin-bottom: 10px;
  }
}

/*----トップバナースライド----------*/
#topbanners {
  width: 100%;
  margin-bottom: 60px;
}

#topbanners .inner {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}

@media screen and (max-width: 759.9px) {
  #topbanners {
    margin-bottom: 40px;
  }
}

/*----日程・方面から探す----------*/
#kensaku {
  width: 100%;
}

#kensaku .inner {
  width: 95%;
  max-width: 820px;
  margin: 20px auto 30px;
  text-align: center;
  position: relative;
  display: flex;
  justify-content: center;
}

#kensaku a {
  text-decoration: none;
  outline: none;
  overflow: hidden;
  border-radius: 10px;
  width: 65%;
  height: 70px;
  border: 1px solid #CCCCCC;
  color: #FFFFFF;
  position: relative;
  margin: 0 1%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#kensaku h2 {
  font-size: 180%;
  font-weight: bold;
  line-height: 1.2;
}

#kensaku_btn h2 {
  text-shadow: 1px 1px 2px #28329C, 1px 1px 2px #28329C, 1px 1px 2px #28329C, 1px 1px 2px #28329C, 1px 1px 2px #28329C, 1px 1px 2px #28329C, 1px 1px 2px #28329C;
}

#chubu_dept_btn h2 {
  text-shadow: 1px 1px 2px #c71585, 1px 1px 2px #c71585, 1px 1px 2px #c71585, 1px 1px 2px #c71585, 1px 1px 2px #c71585, 1px 1px 2px #c71585, 1px 1px 2px #c71585;
}

#kensaku h2 i {
  font-size: 80%;
  margin-right: 0.5em;
}

#kensaku a#kensakugadget::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .2) 100%);
  transform: skewX(-25deg);
}

#kensaku a#chubu_dept_btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 40%;
  height: 100%;
  background: linear-gradient(275deg, rgba(255, 255, 255, 0.2) 0%, rgba(212, 114, 200, 1) 49%, rgba(255, 255, 255, 0.2) 100%);
  transform: skewX(-45deg);
}

#kensaku a#chubu_dept_btn::before {
  animation: shinyshiny 4s ease-in-out infinite;
}

/*hoverした際のアニメーション*/
#kensaku a#kensakugadget:hover::before {
  animation: shine 0.7s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

/*--ボタンの色--*/
#kensaku a#kensaku_btn {
  background-image: linear-gradient(180deg, rgba(40, 50, 156, 0.8) 50%, rgba(40, 50, 156, 1)50%);
}

#kensaku a#chubu_dept_btn {
  /*background-image: linear-gradient(180deg, rgba(199,21,133, 0.8) 50%, rgba(199,21,133, 1)50%);
  width: 35%;*/
  background: #c71585;
  width: 28%;
  animation: balloon 1.5s ease infinite;
}

@media screen and (max-width: 759.9px) {
  #kensaku .inner {
    justify-content: space-between;
  }

  #kensaku a {
    height: 50px;
  }

  #kensaku h2 {
    font-size: 120%;
  }
}

#kensaku h2 {
  z-index: 1;
}

@keyframes shinyshiny {
  0% {
    left: -75%;
    opacity: 0;
  }

  50% {
    left: -75%;
    opacity: 0;
  }

  60% {
    left: -75%;
    opacity: 0.5;
  }

  70% {
    left: 150%;
    opacity: 0.5;
  }

  85% {
    left: 150%;
    opacity: 0;
  }

  86% {
    left: -75%;
    opacity: 0;
  }

  87% {
    left: -75%;
    opacity: 0.5;
  }

  100% {
    left: 150%;
    opacity: 0.5;
  }
}

@keyframes balloon {
  0% {
    transform: scaleX(1);
  }

  50% {
    transform: scale3d(1.1, 1.1, 1.1);
  }

  100% {
    transform: scaleX(1);
  }
}

/*---首都圏発　いちおし　エリアおすすめ　タブ切り替え---*/
.tabNav_wrap {
  width: 100%;
  padding: 30px 0;
}

.tabNav_wrap .inner {
  width: 100%;
  max-width: 950px;
  margin: 0 auto;
}

.tabNav_wrap .inner>h2 {
  padding: 0.5em 2.5em;
}

#syutoken_dept_head .inner>h2,
#chubu_dept_head .inner>h2 {
  background: url("../images/akanico.png") no-repeat center left;
  background-size: 2em auto;
}

.tabNav_wrap ul {
  width: 90%;
  max-width: 700px;
  margin: 0 auto;
  display: flex;
}

.tabNav_wrap ul li {
  width: 48%;
  text-align: center;
  margin: 0 1%;
  background: #f5dce9;
  color: #909090;
  overflow: hidden;
  position: relative;
  transition-duration: .4s;
  z-index: 2;
  cursor: pointer;
  /* border: 2px solid #CCCCCC; */
  border-radius: 2em;
  padding: 0.5em 0;
  font-size: 120%;
}

.tabNav_wrap ul li::after {
  border-radius: 50%;
  content: "";
  display: block;
  margin: auto;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 100%;
  padding-top: 100%;
  height: 0;
  z-index: -1;
  transform: translateY(-50%) scale(0.1);
  transition: opacity .5s, transform 0s;
  transition-delay: 0s, .4s;
}

.tabNav_wrap ul li:hover {
  color: #FFFFFF;
}

.tabNav_wrap ul li:hover::after {
  opacity: 1;
  transform: translateY(-50%) scale(1.1);
  transition-delay: 0s;
  transition: opacity .2s, transform .4s ease-in-out;
}

.tabNav_wrap ul li.selected {
  color: #FFFFFF;
}

.tabNav_wrap .color_s1::after,
.tabNav_wrap .color_s1.selected {
  background: #dc143c;
}

.tabNav_wrap .color_s2::after,
.tabNav_wrap .color_s2.selected {
  background: #a52a2a;
}

.tabNav_wrap .color_c1::after,
.tabNav_wrap .color_c1.selected {
  background: #8b008b;
}

.tabNav_wrap .color_c2::after,
.tabNav_wrap .color_c2.selected {
  background: #9932cc;
}

/*----いちおし エリアおすすめ----*/
#syutoken_tab_wrap {
  margin-bottom: 0;
}

#chubu_tab_wrap {
  margin-bottom: 60px;
}

.tab_wrap {
  width: 100%;
}

.tab_wrap .inner {
  width: 97%;
  max-width: 950px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

.tab_wrap .inner a {
  /*width: 31.3%; 3つずつ*/
  width: 23%;
  margin: 0 1% 20px;
  display: flex;
  flex-direction: column;
  /* border: 1px solid #CCCCCC; */
  color: inherit;
  padding-bottom: 10px;
}

.tab_wrap .inner a.disnon {
  display: none !important;
  /*時限設定対応*/
}

.tab_wrap .inner a p {
  margin: 0 10px 10px;
}

.tab_wrap .inner a .price {
  color: #E60012;
  font-family: Arial, Helvetica, "sans-serif";
  font-size: 120%;
  font-weight: bold;
  margin: 0 10px;
}

.tab_wrap .inner .box img {
  width: 100%;
  margin-bottom: 7px;
}

.tab_wrap .inner .box h3 {
  margin: 0 10px 10px;
  font-weight: bold;
  font-size: 110%;
}

@media screen and (max-width: 759.9px) {
  .tab_wrap .inner a {
    width: 48%;
    margin: 0 1% 20px;
  }

  .tab_wrap .inner a .price {
    font-size: 14px;
  }
}

/*----いちおしシプラン-----*/
.ichioshi_unit {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.ichioshi_unit a {
  width: 31.3%;
  margin: 0 1% 20px;
  display: flex;
  flex-direction: column;
  border: 1px solid #CCCCCC;
  color: inherit;
  padding-bottom: 10px;
}

.ichioshi_unit a p {
  margin: 0 10px 10px;
}

.ichioshi_unit a .price {
  color: #E60012;
  font-family: Arial, Helvetica, "sans-serif";
  font-size: 120%;
  font-weight: bold;
  margin: 0 10px;
}

.ichioshi_unit .box img {
  width: 100%;
  margin-bottom: 10px;
}

.ichioshi_unit .box h3 {
  margin: 0 10px 10px;
  font-weight: bold;
  font-size: 110%;
}

@media screen and (max-width: 759.9px) {
  .ichioshi_unit a {
    width: 48%;
    margin: 0 1% 20px;
  }

  .ichioshi_unit a .price {
    font-size: 14px;
  }
}

/*----------テーマ---------------*/
#theme {
  width: 100%;
  margin-bottom: 40px;
}

#theme .inner {
  width: 100%;
  max-width: 950px;
  margin: 0 auto;
  text-align: center;
}

#theme .inner h2 {
  text-align: center;
}

#theme .salebanner {
  width: 90%;
  margin: 20px auto;
  position: relative;
}

#theme .salebanner img {
  width: 100%;
}

@media screen and (min-width: 760px) {
  #theme .salebanner ul {
    position: absolute;
    top: 10px;
    bottom: 10px;
    right: 15px;
    width: 25%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }

  #theme .salebanner ul a {
    width: 100%;
  }

  #theme .salebanner ul li {
    width: 100%;
    background: #ED0000;
    color: #FFFFFF;
    font-weight: bold;
    padding: 10px 10px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
  }
}

@media screen and (max-width: 759.9px) {
  #theme .salebanner {
    width: 96%;
    margin: 20px auto;
    position: relative;
  }

  #theme .salebanner ul {
    position: absolute;
    bottom: 5px;
    left: 0;
    right: 0;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  #theme .salebanner ul a {
    width: 40%;
    margin: 0 10px;
  }

  #theme .salebanner ul li {
    width: 100%;
    background: #ED0000;
    color: #FFFFFF;
    font-size: 80%;
    font-weight: bold;
    padding: 2px 5px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
  }

}

#theme .salebanner ul li:hover {
  background: #F76D4B;
}

#theme .salebanner ul a,
#theme .salebanner ul a:hover {
  text-decoration: none !important;
}

#theme .salebanner>a:hover {
  opacity: 0.7;
}

#theme .unit_parent {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}

@media screen and (max-width: 759.9px) {
  #theme .inner {
    /* padding: 0 5px 20px 5px;*/
  }

  #theme .inner h2 {
    padding-left: 15px;
  }
}

/*----おすすめエリア-----*/
#recommendarea {
  width: 100%;
  margin-bottom: 60px;
}

#recommendarea .inner {
  width: 100%;
  max-width: 950px;
  margin: 0 auto;
}

/*----レンタカー予約----------*/
#rentacar_dept {
  width: 100%;
}

#rentacar_dept .inner {
  max-width: 950px;
  margin: 20px auto 30px;
  text-align: center;
  position: relative;
}

#rentacar_dept h2 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url("../images/icon/arrow_maru_w.svg"), linear-gradient(180deg, rgba(237, 0, 0, 0.8) 50%, rgba(237, 0, 0, 1)50%);
  background-repeat: no-repeat;
  background-size: 20px, 100%;
  background-position: center right 30px, center;
  padding: 5px 20px 5px 10px;
  text-decoration: none;
  outline: none;
  overflow: hidden;
  border-radius: 10px;
  width: 80%;
  max-width: 500px;
  margin: 0 auto;
  border: 1px solid #CCCCCC;
  color: #FFFFFF;
  font-size: 160%;
  font-weight: bold;
  text-shadow: 1px 1px 2px #ED0000, 1px 1px 2px #ED0000, 1px 1px 2px #ED0000, 1px 1px 2px #ED0000, 1px 1px 2px #ED0000, 1px 1px 2px #ED0000, 1px 1px 2px #ED0000;
}

#rentacar_dept h2 img {
  width: 25px;
  margin-right: 15px;
}

#rentacar_dept a:hover {
  text-decoration: none !important;
}

#rentacar_dept h2::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .2) 100%);
  transform: skewX(-25deg);
}

/*hoverした際のアニメーション*/
#rentacar_dept h2:hover::before {
  animation: shine 0.7s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

@media screen and (max-width: 759.9px) {
  #rentacar_dept h2 {
    font-size: 110%;
    font-weight: bold;
  }
}

/*----パンフレットとバナー-----*/
#pamph_bn_unit {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

#pamph_bn_unit a {
  margin: 10px 15px;
  text-align: center;
}

#pamph_bn_unit #carbon {
  width: 200px;
}

#pamph_bn_unit #tadaima {
  width: 200px;
}

#pamph_bn_unit a img {
  width: 100%;
  height: auto;
}

#digitalpamph {
  width: 400px;
  height: 65px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: url("../images/bg/bg_pamph.png") no-repeat center left 30px rgba(40, 50, 156, 1);
  border-radius: 35px;
  background-size: auto 50px;
  padding-left: 110px;
  text-decoration: none !important;
  line-height: 1.5;
  color: #FFFFFF;
}

#digitalpamph:hover {
  opacity: 0.8;
  color: #FFFFFF !important;
}

@media screen and (max-width: 759.9px) {
  #pamph_bn_unit {
    justify-content: center;
    margin-bottom: 20px;
  }

  #digitalpamph {
    width: 80%;
    height: 50px;
    margin: 0 auto;
    text-align: center;
    background: rgba(40, 50, 156, 1);
    border-radius: 25px;
    background-size: auto 40px;
    padding-left: 0;
    line-height: 50px;
    order: 3;
  }

  #pamph_bn_unit #carbon {
    width: 40%;
    order: 1;
  }

  #pamph_bn_unit #tadaima {
    width: 40%;
    order: 2;
  }
}

/*-----SNS----*/
#snsContent {
  width: 100%;
  ;
}

#snsContent .sns_unit {
  width: 80%;
  max-width: 800px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
}

#snsContent #nta_timeline {
  background: #D8E9ED;
  padding: 2px;
  border-radius: 5px;
  width: 100%;
  max-width: 400px;
  margin-bottom: 20px;
}

@media screen and (min-width: 760px) {
  #snsContent .icon_unit {
    width: 45%;
    margin: 0 auto;
    order: 2;
  }

  #snsContent .icon_unit a {
    width: 100%;
    border-radius: 20px;
    color: inherit;
    text-decoration: none !important;
  }

  #snsContent .icon_unit dl {
    width: 90%;
    max-width: 400px;
    margin: 0 auto 20px;
    background: #F7F7F7;
    display: flex;
  }

  #snsContent .icon_unit dt {
    width: 45%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 11%;
  }

  #snsContent .icon_unit dt img {
    width: 100%;
  }

  #snsContent .icon_unit dd {
    width: 55%;
    display: flex;
    align-items: center;
    padding-left: 10px;
  }

  #snsContent .icon_unit h2 {
    font-size: 100%;
  }
}

@media screen and (max-width: 759.9px) {
  #snsContent .icon_unit {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #snsContent .icon_unit a {
    width: 22%;
    margin: 0 5% 30px;
  }

  #snsContent .icon_unit dl,
  #snsContent .icon_unit dt,
  #snsContent .icon_unit dt img {
    width: 100%;
  }

  #snsContent .icon_unit dd {
    display: none;
  }
}

#snsContent .icon_unit #x_logo img {
  width: 90%;
}

/*----オンライン相談------*/
#onlinedesk {
  width: 100%;
  margin: 0;
  background: #e8e5e2;
}

#onlinedesk .inner {
  width: 100%;
  max-width: 950px;
  margin: 0 auto;
  padding: 30px 0;
  text-align: center;
}

#onlinedesk .inner img {
  max-width: 90%;
  border: 1px solid #aaaaaa;
}

#onlinedesk h2 {
  font-size: 120%;
  font-weight: bold;
  margin-bottom: 20px;
  display: inline-block;
  padding: 0 25px;
  background: url("../images/icon/deco_left.png") no-repeat center left, url("../images/icon/deco_right.png") no-repeat center right;
  background-size: auto 90%;
}

@media screen and (max-width: 759.9px) {
  #onlinedesk h2 {
    padding: 0 22px;
    background: url("../images/icon/deco_left.png") no-repeat center left, url("../images/icon/deco_right.png") no-repeat center right;
    background-size: 15px auto;
  }
}

/*----問い合わせ------*/
#toiawase_box {
  width: 100%;
  padding: 30px 0;
  background: #e8e5e2;
}

.yoyaku_tel p.deco {
  font-size: 120%;
  margin-bottom: 20px;
}

.yoyaku_tel p.deco span {
  padding: 0 25px;
  background: url("../images/icon/deco_left.png") no-repeat center left, url("../images/icon/deco_right.png") no-repeat center right;
  background-size: auto 90%;
}

.yoyaku_tel h2 {
  font-size: 140%;
  text-align: center;
}

.yoyaku_tel .address {
  width: 95%;
  max-width: 530px;
  margin: 20px auto 0;
  text-align: left;
  font-size: 110%;
}

.yoyaku_tel a.telno {
  font-size: 150%;
  text-decoration: none;
}

.yoyaku_tel .attention {
  font-size: 90%;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 5px;
}

/*---問い合わせBOX横並び---*/
#toiawase_box_yoko {
  width: 100%;
  padding: 30px 0;
  background: #e8e5e2;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#toiawase_box_yoko #toiawase_tab {
  display: none;
}

#toiawase_box_yoko .yoyaku_tel {
  width: 48%;
  max-width: 470px;
  background: rgba(243, 243, 243, 1.00);
  padding: 20px 10px;
  margin: 0 1%;
  border-radius: 5px;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
}

@media screen and (max-width: 759.9px) {
  #toiawase_box_tab ul li {
    font-size: 100%;
  }

  .yoyaku_tel h2 {
    font-size: 120%;
    font-weight: bold;
  }

  #toiawase_box_yoko .yoyaku_tel {
    width: 90%;
    margin: 0 auto 15px;
  }
}


/*-----スライドswiper カスタマイズ-共通-------------------*/
/*.swiper-pagination .swiper-pagination-bullet {
  margin: 0 5px;
}
.swiper-button-prev:focus,
.swiper-button-next:focus{
  outline: none;
}*/
/*-----スライドswiper カスタマイズ---------*/
.swiper-container.top {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 25px;
}

.swiper-container.top .swiper-slide {
  position: relative;
  margin: 0 auto;
}

.swiper-container.top .swiper-slide:hover {
  opacity: 0.8;
}

.swiper-container.top .swiper-slide a img {
  width: 100%;
  height: auto;
  border: 1px solid #E5E5E5;
}

.swiper-container.top .swiper-pagination {
  bottom: 0;
}

.swiper-button-prev.top::after,
.swiper-button-next.top::after {
  display: none;
}

.swiper-button-prev.top,
.swiper-button-next.top {
  font-size: 50px;
  cursor: pointer;
  color: #333333;
}

.swiper-button-prev.top {
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;

}

.swiper-button-next.top {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-container.top .swiper-pagination-bullet-active {
  background: #079FE2;
}

@media screen and (max-width: 759.9px) {
  .swiper-container.top {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 20px;
  }

  .swiper-button-prev.top {
    width: 25px;
  }

  .swiper-button-next.top {
    width: 25px;
  }

  .swiper-button-prev.top,
  .swiper-button-next.top {
    font-size: 20px;
  }
}

/*-----スライドswiper バナーカスタマイズ-ver202308-------------------*/
.topbanners_wrapper {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto 20px;
  position: relative;
}

.swiper-container.topbanners {
  width: 95%;
  margin: 0 auto;
  padding-bottom: 30px;
}

.swiper-container.topbanners .swiper-slide img {
  width: 100%;
  border: 1px solid #CCCCCC;
}

.swiper-pagination.topbanners {
  bottom: 5px;
}

.swiper-pagination.topbanners .swiper-pagination-bullet-active {
  background: #079FE2;
}

.swiper-button-prev.topbanners::after,
.swiper-button-next.topbanners::after {
  display: none;
}

.swiper-button-prev.topbanners,
.swiper-button-next.topbanners {
  font-size: 40px;
  line-height: 1;
  cursor: pointer;
  color: #333333;
  z-index: 20;
  padding-bottom: 30px;
}

.swiper-button-prev.topbanners {
  left: 0;
}

.swiper-button-next.topbanners {
  right: 0;
}

@media (max-width:767px) {

  .swiper-button-prev.topbanners,
  .swiper-button-next.topbanners {
    display: none;
  }
}

/*-----スライドswiper ホテルカスタマイズ--------------------*/
.ranking_wrapper {
  width: 100%;
  max-width: 970px;
  margin: 0 auto 20px;
  position: relative;
}

.swiper-container.hotels {
  width: 92%;
  margin: 0 auto;
  padding-bottom: 30px;
}

.swiper-container.hotels .swiper-slide {
  border: 1px solid #FAFAFA;
  background: #FFFFFF;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
  position: relative;
  text-align: left;
  height: auto;
  padding-bottom: 60px;
}

.swiper-container.hotels .swiper-slide a {
  text-align: center;
  width: 100%;
  color: inherit;
  text-decoration: none;
}

.swiper-container.hotels .swiper-slide a:hover {
  opacity: 0.7;
  color: inherit !important;
  text-decoration: none !important;
}

#ranking_hotel .swiper-slide img {
  width: 100%;
  height: 170px;
  object-fit: cover;
  border-radius: 5px 5px 0 0;
}

#ranking_ryokan .swiper-slide img {
  width: 100%;
  height: 150px;
  object-fit: cover;
  border-radius: 5px 5px 0 0;
}

.swiper-pagination.hotels {
  bottom: 5px;
}

.swiper-pagination.hotels .swiper-pagination-bullet-active {
  background: #079FE2;
}

.swiper-button-prev.hotels::after,
.swiper-button-next.hotels::after {
  display: none;
}

.swiper-button-prev.hotels,
.swiper-button-next.hotels {
  font-size: 40px;
  line-height: 1;
  cursor: pointer;
  color: #333333;
  z-index: 20;
  padding-bottom: 30px;
}

.swiper-button-prev.hotels {
  left: 0;
}

.swiper-button-next.hotels {
  right: 0;
}

@media screen and (max-width: 759.9px) {
  .swiper-container.hotels {
    width: 95%;
  }

  .swiper-button-prev.hotels,
  .swiper-button-next.hotels {
    display: none;
  }

  .swiper-container.hotels .swiper-pagination {
    display: none;
  }

  #ranking_hotel .swiper-slide img {
    height: 150px;
  }

  #ranking_ryokan .swiper-slide img {
    height: 135px;
  }
}

/*-----スライドswiper バナーカスタマイズ--------------------*/
.quartet_wrapper {
  width: 100%;
  max-width: 970px;
  margin: 0 auto 20px;
  position: relative;
}

.swiper-container.quartet {
  width: 92%;
  margin: 0 auto;
  padding-bottom: 30px;
}

.swiper-container.quartet .swiper-slide {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.swiper-container.quartet .swiper-slide .dummy {
  width: 49.8%;
}

#recommendarea .swiper-slide a {
  width: 49.8%;
  color: inherit;
  text-decoration: none;
  text-align: left;
  margin-bottom: 5px;
}

#theme .swiper-slide a {
  width: 49.8%;
  color: inherit;
  text-decoration: none;
  text-align: left;
  margin-bottom: 2px;
}

#recommendarea .swiper-slide img {
  border: 1px solid #CCCCCC;
  width: 100%;
  height: 120px;
  object-fit: cover;
}

#theme .swiper-slide img {
  width: 100%;
}

#theme .swiper-pagination {
  display: none;
}

.swiper-container.quartet .swiper-slide a:hover {
  opacity: 0.7;
}

.swiper-container.quartet .swiper-slide a:hover {
  color: inherit;
  text-decoration: none !important;
}

.swiper-pagination.quartet {
  bottom: 10px;
}

.swiper-pagination.quartet .swiper-pagination-bullet {
  margin: 0 5px !important;
  background: #CCCCCC;
  opacity: 0.6;
}

.swiper-pagination.quartet .swiper-pagination-bullet-active {
  background: #079FE2;
  opacity: 1;
}

.swiper-pagination.quartet {
  bottom: 5px;
}

.swiper-pagination.quartet .swiper-pagination-bullet-active {
  background: #079FE2;
}

.swiper-button-prev.quartet::after,
.swiper-button-next.quartet::after {
  display: none;
}

.swiper-button-prev.quartet,
.swiper-button-next.quartet {
  font-size: 40px;
  line-height: 1;
  cursor: pointer;
  color: #333333;
  z-index: 20;
  padding-bottom: 30px;
}

.swiper-button-prev.quartet {
  left: 0;
}

.swiper-button-next.quartet {
  right: 0;
}

@media screen and (max-width: 759.9px) {
  .swiper-container.quartet {
    width: 95%;
    margin: 0 auto;
    padding-bottom: 30px;
  }

  .swiper-container.quartet .swiper-pagination,
  .swiper-button-prev.quartet,
  .swiper-button-next.quartet {
    display: none;
  }

  #recommendarea .swiper-slide img {
    height: 100px;
  }
}

/*ポップアップ*/
.popup_wrap input {
  display: none;
}

.popup_overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(213, 213, 213, 0.5);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}

.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

#akaaka_popup.popup_content {
  position: relative;
  align-self: center;
  width: 90%;
  max-width: 500px;
  padding: 40px 10px 130px;
  box-sizing: border-box;
  background: url(../images/bg/bg_fusen.png) no-repeat bottom center, url(../images/bg/bg_popup.jpg) no-repeat top center;
  background-size: 100% auto, cover;
  line-height: 1.4em;
  transition: 0.5s;
  border-radius: 20px;
  overflow: hidden;
}

.popup_content p {
  text-align: center;
  margin-bottom: 20px;
}

#akaaka_popup.popup_content p {
  color: #FFFFFF;
}

#siteopen.popup_content {
  width: 90%;
  max-width: 750px;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
}

#siteopen.popup_content img {
  width: 100%;
  background: #FFFFFF;
}

#siteopen.popup_content .inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-top: 18%;
}

#siteopen.popup_content .inner p {
  font-size: 300%;
  font-weight: bold;
  line-height: 1.4;
  background: linear-gradient(transparent 60%, #ffd22c 60%);
}

#siteopen.popup_content .inner a {
  color: #FFFFFF;
  font-size: 200%;
  font-weight: bold;
  background: #ed1c24;
  border-radius: 10px;
  padding: 10px 30px;
  margin-top: 1em;
}

#siteopen.popup_content a:hover {
  opacity: 0.7;
  text-decoration: none !important;
}

.popup_content .bold {
  font-weight: bold;
  font-size: 120%;
  white-space: nowrap;
}

.close_btn {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 150%;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.8);
  padding: 0 8px;
  border-radius: 20px;
  color: #000000;
}

@media screen and (max-width: 759.9px) {
  .popup_content {
    padding: 40px 0 60px;
    background-size: auto 120%;
  }

  .popup_content p {
    font-size: 3.4vw;
  }

  .popup_content .bold {
    font-size: 3.5vw;
  }

  #siteopen.popup_content .inner {
    padding-top: 10%;
  }

  #siteopen.popup_content .inner p {
    font-size: 5vw;
    margin-bottom: 0.5em;
  }

  #siteopen.popup_content .inner a {
    font-size: 4.5vw;
    padding: 5px 20px;
  }

  #siteopen.popup_content .close_btn {
    position: absolute;
    top: 10px;
    right: 0;
    font-size: 100%;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.8);
    padding: 0 5px;
    border-radius: 20px;
  }
}

#akaaka_popup .close_btn {
  color: #FFFFFF;
}

.popup_wrap input:checked~.popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 1s;
}

/*風船アニメ―ション*/
#fusen_anime {
  width: 15%;
  position: absolute;
  right: 30px;
  top: 30px;
}

#fusen_anime.animation {
  animation: FloatVertical 8.0s;
}

#fusen {
  width: 100%;
  animation: 3.5s Roll ease-in-out infinite;
}

#fusen img {
  width: 90%;
}

@keyframes Roll {
  0% {
    transform: rotateZ(10deg) scale(0.9);
  }

  50% {
    transform: rotateZ(-10deg) scale(1.0);
  }

  100% {
    transform: rotateZ(10deg) scale(0.9);
  }
}

@keyframes FloatVertical {
  0% {
    transform: translate3d(0, 500px, 0);
  }

  100% {
    transform: translate3d(0, 0, 0);
  }
}



/*add20221116 gadget*/
@media screen and (max-width: 759.9px) {
  #kensakugadget {
    width: 100%;
    margin: auto;
  }

  #kensakugadget .search_kokunai_map_Bar .serchBox ul {
    display: flex;
  }

  #kensakugadget .search_kokunai_map_Bar .serchBox li {
    width: 32.33333%;
    margin: 0 0.5%;
  }
}

@media screen and (min-width: 760px) {
  #kensakugadget {
    width: 100%;
    margin-bottom: 40px;
  }

  #kensakugadget .inner {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
  }
}