@charset "utf-8";
@import url('https://www.nta.co.jp/akafu/east/common/css/common.css');
/*@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Gothic&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@300;400;500&display=swap');
@import url('https://use.fontawesome.com/releases/v5.6.3/css/all.css');
/* CSS Document */
html{scroll-behavior:smooth;}
#wrapper {
	width: 100%;
	margin:0 auto 30px;
 	font-size:14px;
	line-height:1.6;
  overflow: hidden;
	font-family: 'Kiwi Maru', 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;
}
#wrapper a{
   word-break: break-all;  
}
#wrapper img{
  vertical-align: bottom;
} 
#wrapper h2,
#wrapper h3,
#wrapper h4 {
	font-weight: bold;
}
@media screen and (min-width: 760px){
   .pc_none{
    	display: none;
  }
}
@media screen and (max-width: 759.9px){
   .sp_none{
    	display: none;
  }
}
.disnon {
  display: none;
}
.text_red {
	color: #B20202;
}
.text_bold {
	font-weight: bold;
}
.text_normal {
	font-weight: normal;
}
.text_center {
	text-align: center;
}
.text_font_sans {
	font-family: 'Noto Sans JP', sans-serif;
}
.attention {
	font-size:90%;
	text-indent: -1em;
	margin-left: 1em;
	margin-bottom: 5px;
}
.marker {
	background: linear-gradient(transparent 80%, #ffd22c 80%);
	font-weight: bold;
}
a.godetail{
  width: 47%;
  max-width: 300px;
  height: 60px;
	margin: 0 1.5%;
  display: flex;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-decoration: none;
  /*background-image: url("../images/button.png");
	background-repeat: no-repeat;
	background-position: center bottom;
  background-size: cover;*/
	background-color: #28329C;
  font-family: 'Noto Sans JP', sans-serif;
  z-index: 10;
  color: #FFFFFF;
}
a.godetail.onlyone{
  width: 80%;
  height: 45px;
}
a.godetail:hover {
	text-decoration: none !important;
	opacity: 0.6;
}
a.godetail.pink{
  background-image: url("../images/button_stay.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-color:#FFFFFF;
  background-size: cover;
}
a.godetail.gray{
	background-color: #6E6E6E;
	pointer-events: none;
}
.slash{
	width: fit-content;
	margin: 0 auto;
	padding: 0 2em;
	background: url("../images/slash_left.svg") no-repeat bottom left,
		url("../images/slash_right.svg") no-repeat bottom right ;
	background-size: auto 1.5em;
}
@media screen and (max-width: 759.9px){
  a.godetail{
    height:50px;
  }
	a.godetail.onlyone{
    height:40px;
  }
}
/*--------.page_roof-------------*/
.page_roof {
	width: 100%;
  height: 500px;
  margin-bottom: 30px;
	position: relative;
}
.page_roof .upper {
	width: 100%;
	max-width: 950px;
  height: 100%;
	margin: 0 auto;
  position: absolute;
  top:0;
  left:0;
	right:0;
  bottom: 0;
  z-index: 1;
}
.page_roof .upper h2{
  width: 100%;
	max-width: 950px;
	margin: 0 auto;
  height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
  animation: fadeIn 3s;
}
.page_roof .upper h2 img{
  width: 90%;
	height: 80%;
	object-fit: contain;
}
@media screen and (max-width: 759.9px){
  .page_roof {
    height: 35vh;
  }
}
@keyframes fadeIn { 
  0% { opacity: 0; }
  40% { opacity:0;}
  100% { opacity:1;}
}
@media screen and (max-width: 759.9px){
	.page_roof_fade {
		margin-bottom: 30px;
	}
}
/*-------------トップリード   --------------*/
#toplead .inner{
	width: 95%;
	max-width: 950px;
	text-align: center;
	margin: 0 auto 100px;
}
#toplead .inner p{
	font-size: 140%;
	margin-bottom: 70px
}
#toplead .inner h2{
	font-size: 160%;
	font-weight: normal;
	margin-bottom: 1em;
	position: relative;
}
#toplead .inner h2::before{
	content: "";
	position: absolute;
	top:-60px;
	left:-100px;
	width: 180px;
	height: 100px;
	background: url("../images/icon_campaign.png")no-repeat center;
	background-size: contain;
}
#toplead .inner img{
	max-width: 100%;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.6);
}
@media screen and (max-width: 759.9px){
	#toplead .inner{
		margin: 0 auto 50px;
	}
	#toplead .inner p{
		font-size: 120%;
		margin-bottom: 50px
	}
	#toplead .inner h2{
		font-size: 140%;
	}
	#toplead .inner h2::before{
		content: "";
		position: absolute;
		top:-50px;
		left:-20px;
		width: 110px;
		height: 70px;
		background: url("../images/icon_campaign.png")no-repeat center;
		background-size: contain;
	}
	#toplead .inner img{
		width: 90%;
	}
}
/*----日旅まつり----*/
#matsuri {
	position: relative;
	z-index: 1;
	margin-bottom: 40px;
}
#matsuri .inner{
	width: 95%;
	max-width: 950px;
	margin:0 auto;
}
#matsuri h2 {
	text-align: center;
	font-size: 200%;
	margin:0 auto;
	width: fit-content;
	padding: 0 200px;
	position: relative;
}
#matsuri .target {
	text-align: center;
	font-size: 120%;
	margin:10px auto 30px;
	width: fit-content;
	background: #FDD901;
	padding: 0 10px 2px 10px;
}

#matsuri h2::before {
	content: "";
	background: url("../images/deco_left.png")no-repeat top left,url("../images/deco_right.png")no-repeat top right;
	background-size: contain;
	position: absolute;
	top:-50px;
	left: 0;
	right:0;
	height: 160px;
	z-index: -1;
}
#matsuri h2 span{
	color:#fcee21;
	font-size: 200%;
	margin: 0 0.2em;
	text-shadow: 1px 1px 1px #000,-1px -1px 1px #000, -1px 1px 1px #000,1px -1px 1px #000,1px 1px 1px #000,-1px -1px 1px #000, -1px 1px 1px #000,1px -1px 1px #000;
}
#matsuri h2 img{
	width: 2em;
	height: auto;
	vertical-align: bottom;
	margin: 0 0.2em;
}
#matsuri .banner_unit{
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
	flex-wrap: wrap;
}
#matsuri .banner_unit > a,
#matsuri .banner_unit > .banner{
	margin: 0 auto;
	text-align: center;
}
#matsuri .banner_unit > a img,
#matsuri .banner_unit > .banner img{
	max-width: 100%;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
#matsuri .comment{
	display: flex;
	justify-content: center;
}
#matsuri .comment p{
	font-size: 120%;
}
@media screen and (max-width: 759.9px){
	#matsuri h2 {
		text-align: center;
		font-size: 160%;
		margin:0 auto;
		width: 100%;
		padding: 0;
		position: relative;
	}
	#matsuri h2::before {
		content: "";
		background: url("../images/deco_left.png")no-repeat top left,url("../images/deco_right.png")no-repeat top right;
		background-size: contain;
		position: absolute;
		top:-20px;
		left: -30px;
		right:-30px;
		height: 100px;
	}
	#matsuri h2 span{
		font-size: 150%;
	}
	#matsuri .target {
		font-size: 100%;
		margin:10px auto 10px;
		padding: 0 5px 3px 5px;
	}
	#matsuri .banner_unit{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 20px;
	}
	#matsuri .banner_unit.only > a,
	#matsuri .banner_unit.only > .banner{
		max-width: 95%;
		margin: 20px auto 0;
	}
	#matsuri .banner_unit > a{
		max-width: 60%;
		margin: 15px auto;
	}
}
/*-------------yoyaku --------------*/
.yoyaku {
  width: 100%;
	text-align: center;
	margin:20px auto 30px;
}
.yoyaku p{
	font-size: 110%;
	margin-bottom: 20px;
}
.yoyaku_unit{
  width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

/*-------------ページコンテンツ   --------------*/
.pageContent {
  width: 100%;
}
.pageContent .inner{
  width: 95%;
  max-width: 950px;
  margin: 0 auto;
	padding: 30px 0;
	position: relative;
}
.pageContent h2 {
	text-align: center;
	font-size: 240%;
	margin:0 auto 3em;
	width: fit-content;
	padding: 0 100px;
	position: relative;
	background: url("../images/title_line.png")repeat-x bottom center;
	background-size: auto 10px;
	padding-bottom: 15px;
}
.pageContent h2::before {
	content: "";
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: contain;
	position: absolute;
	bottom:0;
	left: 0;
	height: 95px;
	width: 70px;
}
.pageContent .banner_unit{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
.pageContent .banner_unit > a{
	width: 23%;
	margin: 0 1% 20px;
	color: inherit;
	text-decoration: none;
}
.pageContent .banner_unit .box{
	width: 23%;
	margin: 0 1% 20px;
	color: inherit;
}

.pageContent .banner_unit dl {
	width: 100%;
}
.pageContent .banner_unit dt {
	width: 100%;
}
.pageContent .banner_unit dt img{
	width: 100%;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
.pageContent .banner_unit dd {
	background: rgba(255,255,255,0.6);
	padding: 10px 5px;
	font-size: 110%;
	margin: 0;
}
.box .yoyaku_unit {
	margin-bottom: 10px;
}
.box .godetail {
	height: 50px;
	font-size: 90%;
	line-height: 1.2;
}

@media screen and (max-width: 759.9px){
	.pageContent .inner{
		padding: 20px 0;
	}
	.pageContent h2 {
		font-size: 160%;
		margin:0 auto 3em;
		width: fit-content;
		padding:0 30px 0 40px;
		position: relative;
		background: url("../images/title_line.png")repeat-x bottom center;
		background-size: auto 8px;
		padding-bottom: 10px;
	}
	.pageContent h2::before {
		content: "";
		background-repeat: no-repeat;
		background-position: left bottom;
		background-size: contain;
		position: absolute;
		bottom:0;
		left: 0;
		height: 65px;
		width: 30px;
	}
	.pageContent .banner_unit{
		display: flex;
		justify-content: center;
		margin-bottom: 20px;
	}
	.pageContent .banner_unit > a,
	.pageContent .banner_unit .box{
		width: 46%;
		margin: 0 2% 20px;
	}
	.pageContent .banner_unit dd {
		font-size: 100%;
		padding: 10px 0 10px 5px;
	}
	.box .yoyaku_unit {
		margin-bottom: 5px;
	}
	.box .godetail {
		height: 40px;
		font-size: 90%;
		line-height: 1.2;
		margin-bottom: 0;
	}
}

/*-------おすすめの旅行先--------------*/
#recommend {
	background-image: repeating-linear-gradient(110deg, transparent, transparent 14px, rgba(223,240,244,0.4) 14px, rgba(223,240,244,0.4) 28px);
	margin:0;
	padding: 60px 0;
}
#recommend h2::before {
	background-image: url("../images/title_flag1.png");
}
@media screen and (max-width: 759.9px){
	#recommend {
		padding: 30px 0;
	}
}
/*--------テーマで選ぶ旅--------------*/
#theme {
	background-image: repeating-linear-gradient(110deg, transparent, transparent 14px, rgba(254,251,128,0.3) 14px, rgba(254,251,128,0.3) 28px);
	margin:0;
	padding: 60px 0;
}
#theme h2::before {
	background-image: url("../images/title_flag2.png");
}
@media screen and (max-width: 759.9px){
	#theme {
		padding: 100px 0 30px;
	}
}
/*--------国内旅行--------------*/
#domestic {
	background-image: repeating-linear-gradient(110deg, transparent, transparent 14px, rgba(255,211,199,0.3) 14px, rgba(255,211,199,0.3) 28px);
	margin:0;
	padding: 60px 0;
}
#domestic .inner{
	max-width: 1230px;
	background: url("../images/bg_cloud.png") no-repeat center bottom;
	background-size: auto 300px;
	padding-bottom: 80px;
}
#domestic h2::before {
	background-image: url("../images/title_flag1.png");
}
#domestic .banner_unit{
	width: 95%;
	max-width: 950px;
	display: flex;
	justify-content: center;
	margin:0 auto 20px;
}
#domestic .banner_unit a{
	width: 40%;
	margin: 0 2%;
}
#domestic .banner_unit a img{
	width: 100%;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
#domestic .comment{
	display: flex;
	justify-content: center;
}
#domestic .comment p{
	font-size: 120%;
}
@media screen and (max-width: 759.9px){
	#domestic .inner{
		background: url("../images/bg_cloud.png") no-repeat center bottom;
		background-size: auto 500px;
		padding-bottom: 110px;
	}
	#domestic .banner_unit{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 20px;
	}
	#domestic .banner_unit a{
		width: 80%;
		margin: 0 auto 20px;
	}
	#domestic .comment{
		width: 80%;
		margin: -10px auto 10px;
	}
	#domestic .comment p{
		font-size: 110%;
	}
}





/*-----トップwiper カスタマイズ--------------------*/
.swiper-container.top{
	width: 100%;
	height: 100%;
}
.swiper-container.top .swiper-slide{
	width: 100%;
	height: 100%;
}
.swiper-container.top .swiper-slide img {
	width: 100%;
  height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 759.9px){
	.swiper-container.top .swiper-slide img {
	}
}
