@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap&subset=japanese');

:root{
  --red: #d0505d;
  --blue: #1e9cb5;
  --yellow: #e7df4c;
  --green: #04b58b;
  --purple: #b66999;
  --t_red: rgba(208 80 93 / 80%);
  --line_red: linear-gradient(transparent 85%, #d0505d 85%);
  --line_yel: linear-gradient(transparent 85%, #e7df4c 85%);
  --line_gre: linear-gradient(transparent 85%, #04b58b 85%);
  --border: 5px solid;
  --bg: no-repeat center top;
  --center_cover: no-repeat center center / cover;
  --center_contain: no-repeat center center / contain;
}
/* CSS Document */
main {
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", sans-serif;
  line-height: calc(20 / 14);
}
.heading--title {
  font-weight: bold;
}
.simpleMv--full {
  height: 450px;
}
.simpleMv--full .simpleMv__img {
  height: 450px;
  width: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.nopc{
	display: none;
}
/****マップ****/
#map .section__container {
  overflow: hidden;
}
.map {
  width: 40%;
  float: right;
}
.map_txt {
  width: 60%;
  float: left;
  padding-top: 5px;
}
.map_txt p {
  font-size: 1.2em;
  padding: 0 2em;
}
.map_txt img {
  width: 100%;
  padding-top: 15px;
}
.map img {
  width: 100%;
}
/****フライトスケジュール****/
.flightSchedule tr {
  background: #FFF;
}
/*見どころ*/
.imp01{
	padding: 10px 0;
	width: 1024px;
    margin: 0 auto;
}
.imgContainer__caption {
  font-size: 14px;
}
.seen .imgContainer--full {
  margin-bottom: 8px;
}
.seen h5 {
  font-size: 1.2em;
  font-weight: bold;
  color: #108ecf;
}
.seen p {
  font-size: 15px;
	text-align: left;
}
	.seen h5 span{
    font-size: 0.6em;
    font-weight: normal;
    color: #FFF;
    padding: 0px 5px 1px;
    background: #666;
    margin: 0 0 0 10px;
	vertical-align: middle;
}

.seen .section__container{
	padding-bottom: 0;
}
/*****おすすめリゾート*****/
#section_hotel .heading--title {
  color: #FFF;
}
.col1 {
  background: #FFF;
  padding: 1em;
  -webkit-box-shadow: 4px 4px 0 #dfdfdf;
    box-shadow: 4px 4px 0 #dfdfdf;
}
.col1 a {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.col1 a:hover {
	opacity: 0.7;
}
.col1 .grid-col__link {
  flex-direction: inherit;
}
.col1 .img {
  width: 30%;
}
.col1 .img img {
  width: 100%;
}
.col1 .lx_textBox {
  width: 70%;
  padding-left: 10px;
  display: flex;
  flex-direction: column;
	text-align: left;
}
.heading--md{
	margin: 8px auto!important;
}
.heading--md span {
  display: inline-block;
  font-weight: normal;
  font-size: 12px;
  padding: 3px 8px;
  background: #00B900;
  color: #FFF;
}
.col1 .lx_textBox h6 {
  font-size: 1.1em;
  font-weight: 600;
  color: #ED1B24;
}
.tour_box {
  display: flex;
  /*justify-content: flex-end;*/
  margin-top: 10px;
	text-align: left;
}
.text_tour {
  font-size: 1.1em;
  padding-top: 0.4em;
}
.josei {
	padding:1px 10px;
    font-size: 0.9em;
    background: #108ecf;
    color: #FFF;
    margin: 5px 0;
    width: fit-content;
}
.col1 .text--smallPrice {
  font-size: 24px;
}
.js-gridCarousel--col1 .gridCarousel__dots {
  padding-top: 16px;
}

.col2 {
  background: #FFF;
  padding: 1em;
  -webkit-box-shadow: 4px 4px 0 #dfdfdf;
    box-shadow: 4px 4px 0 #dfdfdf;
	width: 48%;
    display: inline-block;
    margin: 0 5px 0;
}
.col2 a {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.col2 a:hover {
	opacity: 0.7;
}
.col2 .grid-col__link {
  flex-direction: inherit;
}
.col2 .img img {
  width: 100%;
	aspect-ratio: 4 / 2;
    object-fit: cover;
}
.col2 .lx_textBox {
  width: 100%;
  padding: 10px;
  display: flex;
  flex-direction: column;
}
.col2 .lx_textBox h6 {
  font-size: 1.1em;
  font-weight: 600;
  color: #ED1B24;
}
.col2 .text--smallPrice {
  font-size: 22px;
}

.col2 .heading--md{
	font-size: 1.35rem;
}
.js-gridCarousel--col2 .gridCarousel__dots {
  padding-top: 16px;
}

.text_tour .imgContainer__tag {
  position: static;
  /*margin-right: 8px;
	padding: 1px 10px 3px;*/
	border-radius: 5px;
	background:#FFF;
	color:#333;
}
/****早期予約特典****/
.ap_point .section__container .grid-row > div {
  /* background: #FFF;
    border-radius: 6px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right:10px;
  width: 49%;*/
}
.ap_point .section__container .grid-row {
  justify-content: space-between;
}
.ap_point .section__container .grid-row .bg_white_round {
  background: #FFF;
  border-radius: 10px;
  padding: 20px;
  margin: 5px;
}
.ap_point .section__container .grid-row .bg_white_round p {
  padding: 0 0 5px;
  font-size: 15px;
	text-align: left;
}
.ap_point{
     margin-bottom: 100px;}
.ap_point .flexbox img{

 aspect-ratio: 4.5 / 2;
  object-fit: cover;
}

.fl_70 {
  width: 69%;
  float: left;
  margin-right: 1%;
  overflow: hidden;
}
.ap_point h5 {
  font-size: 1.7em;
  font-weight: bold;
  text-align: left;
  border-bottom: 2px solid #108ecf;
  margin-bottom: 8px;
}
.ap_point h5 span.number {
  display: inline-block;
  background: #108ecf;
  color: #FFF;
  margin-right: 5px;
  font-size: 0.86em;
  padding: 0.2em 0.5em 0.2em;
}
/***アイコン***/
.ico{
	width: 6%;
    padding: 0 12px 0 0;
}
.ico_top{
	width:8%;
    padding: 0 0px 5px 0;
}
/***おすすめツアー***/
#section_tour h3 {
  text-align: center;
  font-size: 1.6em;
  padding: 20px 0 10px;
}
#section_tour h3 span {
  display: inline-block;
  background: #000;
  color: aliceblue;
  font-size: 0.8em;
  padding: 0 5px;
  margin-right: 10px;
}
#section_tour .imgContainer {
  margin-bottom: 16px;
  position: relative;
}
#section_tour .imgContainer > img {
  width: 100%;
}
#section_tour .grid-col__link {
  background: #FFF;
}
#section_tour .grid-col__body p {
  padding: 0 5px;
}
#section_tour .text--smallPrice {
  text-align: center;
  padding-bottom: 6px;
}
.imgContainer__tag2 {
  position: absolute;
  top: 0;
  background: #00B900;
  color: #FFF;
  font-size: .86rem;
  padding: 4px 8px;
}
.imgContainer__tag2.line {
  background: #06c755;
}
.imgContainer__tag2.np {
  background: #314785;
}
.mb_10 {
  margin-bottom: 50px;
}
.goTop__img--sp {
  display: none;
}
main .areabox section {
  width: 1024px;
  margin: 0 auto;
}
/*.infoTab {
  width: 100%;
  display: flex;
  justify-content: space-between;
  border-bottom: solid 5px #d6001d;
}
.infoTab li {
  display: block;
  width: 100%;
  margin: 0 7px;
  font-size: 20px;
  background: #eaecec;
  text-align: center;
  cursor: pointer;
  border-bottom: solid 2px #eaecec;
  transition: ease all 0.3s;
  padding: 10px 0;
  position: relative;
  border-radius: 10px 10px 0 0;
}
.infoTab span {
  display: block;
  vertical-align: middle;
  font-size: 14px;
  margin-bottom: 5px;
}
.infoTab li.nav_on {
  background-color: #d6001d;
  color: #fff;
  border-bottom: solid 2px #d6001d;
}
.infoTab li:hover {
  background-color: #d6001d;
  color: #fff;
}
.infoTab li span {
  font-size: 16px;
  display: block;
}*/

.tourTab{  width: 550px; margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 30;
}
.tourTab>li{
     font-size: 25px;
    width: 100%;
/*  width: calc(98% / 6);*/
/*  min-height: 60px;*/ 
  margin-right: 1%;
  border: solid 3px #108ecf;
  border-bottom: none;
  padding: 7px 10px 8px;
  font-weight: 600;
  color: #FFF;
    background: #108ecf;
      text-align: center;
  cursor: pointer;
  flex-direction: column;
  justify-content: center;  transition: ease all 0.3s;
  flex-grow: 1;
  border-radius: 10px 10px 0 0;
}
.tourTab>li.nav_on,
.tourTab>li:hover{
  background: #f1f9f9;
      color:#108ecf;
  position: relative
}
.tourTab>li.nav_on::after{
  content: "";
  width: 100%;
  height: 5px;
  background: #f1f9f9;
  position: absolute;
  bottom: -5px;
  left: 0;
}
.tourTab span {
  display: block;
  vertical-align: middle;
  font-size: 15px;
  margin-bottom: 3px;
}






.flexbox {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox li {
  width: 49.5%;
  margin: 10px auto 0;
  text-align: right
}
.flexbox img {
  width: 100%;
}.flexbox span {
  display: block;
  font-size: 0.8em;
}
.areabox {
  display: none;
      
}
.comment {
  font-size: 12px;
}
 

     .item-wrap {
    background:#f1f9f9;
    border-top:solid 3px #108ecf;
    padding: 20px 0 50px;
    position: relative;
    z-index: 10;
}
  
.bnr_area {
    
    margin: 30px auto 60px;
    
    text-align: center;
	margin-bottom: 60px;
}
.bnr_area img:hover {
    opacity: 0.8;
}
/*.bnr_area:hover{
	border: 30px solid #fee262;
}*/
.bnr_area img {
	vertical-align: bottom;
}

.bnr_area_txt {
text-align: center;
    font-size: 28px;
    margin: 30px auto 15px;
    border-bottom: 6px solid #0064b1;
    color: #333;
    display: table;
}
.freeplan {
    background: #F2F2F2;
    padding: 5px 0px 25px;
    border-top:solid 3px #108ecf
}
.forGuide__section{
	text-align: center;
}
.button{
	max-width: 250px;
}

/*タブの箇所*/

.tab01 {
  width: 100%;
  margin: 0 auto 50px;
text-align: center;
}
/*タブのスタイル*/
.tab_menu {
  /*color: #000;
  display: block;
  float: left;*/
font-size: 28px;
    width: 100%;
/*  width: calc(98% / 6);*/
/*  min-height: 60px;*/ 
  /*margin-right: 1%;*/
  border: solid 3px #108ecf;
  border-bottom: none;
  padding: 5px 60px 3px;
  font-weight: 600;
  color: #FFF;
    background: #108ecf;
      text-align: center;
  cursor: pointer;
  flex-direction: column;
  justify-content: center;  transition: ease all 0.3s;
  flex-grow: 1;
  border-radius: 10px 10px 0 0;
}
.tab_menu:hover {
  background: #f1f9f9;
      color:#108ecf;
  position: relative
}
/*ラジオボタンを全て消す*/
input[name="tab_menu"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_contents {
  display: none;
  clear: both;
  overflow: hidden;
}
/*選択されているタブを表示*/
#menu01:checked ~ #menu01,
#menu02:checked ~ #menu02,
#menu03:checked ~ #menu03 {
  display: block;
}
/*選択されているタブのスタイル*/
.tab01 input:checked + .tab_menu {
    background: #f1f9f9;
    color: #108ecf;
    position: relative;
        z-index: 10000;
}
.tab01 input:checked + .tab_menu::after {
    content: "";
    width: 100%;
    height: 5px;
    background: #f1f9f9;
    position: absolute;
    bottom: -5px;
    left: 0;
}

