@charset "utf-8";
/* CSS Document */

body #container{
	font-family: 'Noto Sans JP', sans-serif;
    width: 100%;
    margin: 0;
	font-size: 16px;
	color: #333333;
	line-height: 1.6;
	box-sizing: border-box;
}

* { box-sizing: border-box; }
#container a{
	text-decoration: none;
/*	color: #333;*/
}
#container a:hover{
	opacity: .6;
}
#container img{
	width: 100%;
	max-width: 100%;
    margin: 0;
    padding: 0;
	vertical-align: bottom;

}
.w1000{
	width: 1200px;
	margin: 0 auto;
}

.pc{display: block;}
.sp{display: none;}

.pc_yaji{
	visibility:visible;
}

.sp_yaji{
	visibility:hidden;
}

ul {
  list-style: none;
}

.s_font{	font-size: 0.85em;}
.min{font-family: "Noto Serif JP", serif;}/*200 - 900*/
/*-- flex --*/
.flex_box {
  	display:flex;
}

.photo{position: relative;}
.cre{
	font-family: 'Noto Sans JP', sans-serif;
	position: absolute;
	bottom:0;
	right:0;
	font-size: .8em;
	color: #fff;
	background: rgba(0,0,0,0.70);
	line-height: 1.2;
	padding: 1px 3px;
}
dd{
text-align: justify;
}
/*--------------------page-top */
#page-top{
    position: fixed;
    z-index: 400;
    right: 20px;
    bottom: 20px;
}
#page-top a{
	font-size:min(5.5vw,25px);
    color: #FFFFFF;
	background: rgba(0,83,169,0.60);
	padding: .5em .5em;
	border-radius: 1em;
}
#page-top a:hover{
	background: rgba(0,97,52,0.80);
}
/*--------------------パンくず */
#pankuzu{
	margin: 15px auto;
	width: 1000px;
	font-size: .85em;
}

#pankuzu ul{
    padding: 0 0 5px;
    _zoom: 1;
}
#pankuzu li{
    float: left;
    list-style: none;
}
#pankuzu li + li:before{
    margin: 0 8px;
    content: '>';
}

.bg_blue{
	background: #dff4ff;
}

/*-----------------------------------------------------title */
#title{
	padding-top: 5.5em;
	background-image: url("../img/main_bg.jpg");
	background-position:top center;
	background-repeat: no-repeat;
	background-size: cover;
}
.title_box{position: relative;}
h1{
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url("../img/title.png"); 
	background-position:center top;
	background-repeat: no-repeat;
	background-size: 100%;
	padding: 60% 0 30%;
}

/*-----------------------------------------------------------#intro*/
#intro{
	padding:4em 0 3em;
	background: 
/*		url("../img/point_bg.png") no-repeat top center,*/
		url("../img/intro_bg.jpg") no-repeat center center;
	background-size: cover;
}
.lead{
	text-align: center;
	font-size: min(3vw, 24px);
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	color:#003C73;
	text-shadow    : 
       3px  3px 2px #ffffff,
      -3px  3px 2px #ffffff,
       3px -3px 2px #ffffff,
      -3px -3px 2px #ffffff,
       3px  0px 2px #ffffff,
       0px  3px 2px #ffffff,
      -3px  0px 2px #ffffff,
       0px -3px 2px #ffffff; 
}
/*----------------point*/
.point{
	margin-top: 4em;
	padding: 3em 0;
	background: rgba(255,246,254,0.60);
}
.point dl{
	max-width: 1200px;
	position: relative;
	background: #FFFFFF;
	border: 6px double #D38E28;
	margin: auto;
	padding: 2.5em 1.5em 1.5em;
}
.point dt{
	width: 18em;
	position: absolute;
	top:-2em;
	left:-1.5em;
}
.point dd strong{
	color: #DD0003;
}
.point dd::before{
	content: "◆";
	color: #C57500;
	margin-right: .3em;
}
.point dd{
	padding-left: 1rem;
	text-indent:-1rem;
}
/*----------------hike_session*/
.hike_session section{
	max-width: 1200px;
	margin: 3em auto;
	background: rgba(255,255,255,0.70);
	border-radius: 3em;
	padding: 3.5em 2em 2em;
	position: relative;
}
.hike_session h3{
	font-family: 'Noto Sans JP', sans-serif;
    padding: .3em 1.5em;
    background-color: #006A49;
    color: #fff;
/*	font-size: 1.3em;*/
	font-size: min(2.8vw, 24px);
	position: absolute;
	top:-0.8em;
}
.hike_session h3::before {
    position: absolute;
    top: 100%;
    left: 0;
    border-bottom: solid 10px transparent;
    border-right: solid 20px #003323;
    content: '';
}
.hike_session h3 + p{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;
	margin-bottom: .5em;
	color: #00700F;
}
.hike_session dl.flex_box{
/*	justify-content: center;*/
	align-items: center;
	margin-bottom: .5em;
	font-size: 1.2em;
}
.hike_session dl.flex_box dt{
	font-size: 1.1em;
	background: #ebf4ec;
	border: 2px #000 solid;
	border-radius: 2em;
	flex: 5em;
	width: 5em;
	text-align: center;
	padding: .3em 0;
	margin-right: 1em;
}
.hike_session dl.flex_box dd{
	line-height: 1.4;
	flex: calc(100% - 5em);
	width: calc(100% - 5em);
}
.hike_session ul{
	background: #fff;
	border: 2px #000 solid;
	padding: .5em 1em;
	max-width: 45em;
	margin: 1em auto 2em;;
}
.hike_session ul li{
	padding-left:1em;
	text-indent: -1em;
}
.hike_session .link{
	text-align: center;
}
.hike_session .link a{
	font-size: min(3.4vw, 20px);
	font-weight: bold;
	background: #ebf4ec;
	border: 2px #000 solid;
	border-radius: 2em;
	padding: .5em 2em;
	color: #000;
}
/*------------------------------------------------spot01*/
.spot01{
	background:	url("../img/spot1.jpg") no-repeat right top;
	padding: 7% 0;
}
.spot02{
	background:	url("../img/spot2.jpg") no-repeat left top;
	padding: 7% 0;
}

.spot01 h2{
	font-family: "Noto Serif JP", serif;
	font-size: min(3.2vw, 36px);
	text-align: center;
	color: #007223;
    padding: 1em 0;
	align-items: center; /* 横線を上下中央 */
	display: flex; /* 文字と横線を横並び */
}
.spot01 h2 strong{font-size: 1.3em;}
.spot01 h2::before,
.spot01 h2::after {
  background-color: #007223; 
  content: "";
  flex-grow: 1;
  height: 5px;
}
.spot01 h2::before {  margin-right: 1.2em; }
.spot01 h2::before {  margin-right: 1.2em; }
.spot_box{	
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 2em;
	line-height: 1.3;
}
.spot_box dl:first-of-type{
	margin-right: 2em;	
}
.spot_box dl.box1{	flex: 1;}
.spot_box dl.box2{	flex: 1.67;}
.spot_box dl dt{
	position: relative; 
	margin-bottom: .5em;
}
.spot_box dl dt .date{
	font-size: .9em;
	font-family: "Noto Serif JP", serif;
	position: absolute;
	top:0;
	left: 0;
	background: #004B1D;
	color: #fff;
	padding: 0 .8em;
	box-shadow: 2px 2px #C8CFC8;
	z-index: 100;
}
.spot_box dl dt  .date::first-letter{ font-size: 1.5em;}
.spot_box dl.box2 dt p:nth-last-of-type(2){
	margin-right: 5px;	
}
.hotel{
	display: flex;
	flex-wrap: wrap;
	align-items: center; 
	max-width: 1200px;
	margin: auto;
	padding: 1em 2em;
	background: #00523a;
	border-radius: 2em;
	color: #fff;
}
.hotel dl{flex:10;}
.hotel p.image1{flex: 8; margin: 0 1em;}
.hotel p.image2{flex: 5;}
.hotel dt{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 1.3em;
	padding: 0 .5em;
	border-bottom: #FFFFFF 3px solid;
}
.hotel dd{
	line-height: 1.4;
	margin-top: .8em;
}
/*-------------------------spot02*/
.spot02 h2{
	font-family: "Noto Serif JP", serif;
	font-size: min(3.2vw, 50px);
	font-weight: bolder;
	text-align: center;
	color: #223A78;
    padding: 1em 0;
	align-items: center; /* 横線を上下中央 */
	display: flex; /* 文字と横線を横並び */
}
.spot02 h2 .isan{
	padding: 0 .4em;	
	border: #FFF7C4 4px double;
	background: #000132;
	color: #FFFEBF;
	margin-right: .5em;
	font-size: .7em;
}
.spot02 h2::before,
.spot02 h2::after {
  background-color: #223A78; 
  content: "";
  flex-grow: 1;
  height: 5px;
}
.spot02 h2::before {  margin-right: 1.2em; }
.spot02 h2::after {  margin-left: 1.2em; }
.spot02 .spot_box dl:first-of-type{
	margin-right: 0;	
}
.spot02 .spot_box dl dt .date{
	font-size: 1.3em;
	top:-.7em;
	left: 0;
	background: #2d5da8;
}
.spot02 .hotel{
	background: #2d5da8;
}

/*------------------------------------------------air*/
.air{
	background: linear-gradient(352deg,rgba(70, 29, 89, 1) 0%, rgba(104, 0, 184, 1) 34%, rgba(121, 45, 196, 1) 34%, rgba(105, 42, 150, 1) 74%, rgba(86, 0, 148, 1) 85%, rgba(111, 30, 210, 1) 84%, rgba(88, 13, 122, 1) 100%);
	color: #FFF;
	padding: 2em 0;
}
.air h3{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: min(8vw, 42px);
	text-align: center;
	margin: 1.5em auto .5em;
    padding: .1em 0;
	text-shadow: 5px 5px 4px #000000;
}
.air h4{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: min(4.3vw, 33px);
	text-align: center;
    padding: .5em 0;
	background: linear-gradient(71deg,rgba(248, 250, 199, 1) 0%, rgba(230, 220, 85, 1) 43%, rgba(254, 255, 224, 1) 79%);
	  -webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;
}
.air h4 + p{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: min(3.7vw, 26px);
	text-align: center;
    padding: .5em 0;
}
.bz{
	display: flex;
	max-width: 1000px;
	margin: 1em auto 0;
}
.bz_price{
	display: flex;
	align-items: center;     /* 上下の中央寄せ */
	max-width: 1000px;
	margin: auto ;	
	background: #3C004E;
	padding:  0 .5em;
	
}
.bz_price dt{
	flex: 6;
	display: flex;
  	align-items: center;     /* 上下の中央寄せ */
}
.price{
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: min(4vw, 35px);
	text-align: center;
	background: linear-gradient(71deg,rgba(248, 250, 199, 1) 0%, rgba(230, 220, 85, 1) 43%, rgba(254, 255, 224, 1) 79%);
	  -webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;
	
}
.bz_price dt span{
	font-size: .8em;
	margin: 0 1em;
	line-height: 1.2;
}
.bz_price dd{
	flex: 5;
	background: #fff;
	color: #000;
	font-size: 0.8em;
	padding: 0 0.5em;
	border-radius: 2em;
	text-align: center;
}
.pe{ 
	display: flex;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 3em auto;
	padding: .5em 2em;
	background: #001852;
	align-items: center;     /* 上下の中央寄せ */ 
}
.pe dl{flex:10;}
.pe p.image1{flex: 8; margin: 0 1em;}
.pe p.image2{flex: 6;}
.pe dt h4{ 
	padding: 0;
}

.pe dt span{
	font-size: .8em;
	line-height: 1.2;
	display: inline-block;

}
.pe dd{
	line-height: 1.4;
	border-bottom: #E9EBBA solid 1px;
	margin-bottom: 1em;
}
.pe .s_font{
	background: #fff;
	color: #000;
	font-size: 0.8em;
	padding: 0 0.5em;
	border-radius: 2em;
	text-align: center;
}


.marker{	background:rgba(0, 0, 0, 0) linear-gradient(transparent 75%, #c0e1c0 0%) repeat scroll 0 0;}

/*----------------------------------------------------------------------link*/
#link{
    padding: 7em 0 0;
	font-family: "Noto Serif JP", serif;
}

#link h3{
	font-size: min(5vw, 26px);
	font-weight: 900;
	text-align: center;
	border-bottom: #90D0AE 3px solid;
	border-top: #90D0AE 3px solid;
	padding: .3em 0;
}

#link .link_tour{
	display: flex;
	flex-wrap: wrap;
	padding-top: 3em;
	justify-content:center;
}

#link .link_tour li{
	width:calc((100% - 50px) /2 - 2em);
	text-align: center;
	margin: 1em;
	font-weight: 600;
}
#link .link_tour li span{
	font-family: 'Noto Sans JP';
}
#link .link_tour li a{
	background: #007f41;
	display: block;
	color: #ffffff;
	padding: 1.3em 1em;
	font-size: 1.2em;
	font-weight: 700;
	position: relative;
}
#link .link_tour li:nth-of-type(2n) a{
	background: #22b573;
}

#link .link_tour a:after{
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 8px 0 8px 8px;
    border-color: transparent transparent transparent #fff;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
.soon{position: relative;}
.soon::before{
	content: "2/1発売";
	color:#FFED00;
	background: rgba(255,255,255,0.50);
	width:100%;
	height: 100%;
	text-shadow: 2px 2px 2px #000;
	font-size: 2.2em;
	text-align: left;
	line-height: 2.5;
	text-indent: .5em;
	position: absolute;
	top:0;
	left:0;
	z-index: 100;
}
.soon a{position: absolute; z-index: 1;}
.digipan{
	margin: 3em auto 0;
	background: #90D0AE;
	padding: 3em;
	text-align: center;
}
.digipan a{
	background: #ffffff;
	display: inline-block;
	color: #007f41;
	border: #007f41 3px solid;
	padding: 1.2em 3em;
	font-size: 1.2em;
	font-weight: 700;
	position: relative;
}
.digipan a:after{
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 8px 0 8px 8px;
    border-color: transparent transparent transparent #007f41;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
/*-----------------------------------------------------info*/
/*#info{
	padding: 7em 0 20em;
	background: url("../img/footer_bg.png") no-repeat bottom center / 100%;
}
#info dl{
	flex: 1;
	margin: 1em;
	text-align: center;
	line-height: 1.3;
}
#info dd:first-of-type{
	font-size: 1.3em;
}
#info dd:first-of-type strong{
	display: block;
	font-size: 1.3em;
	background: #FFF9CE;
}
#info dt{
	font-weight: bold;
	color: #FF0004;
	margin: .5em auto;
} 
#info dd:last-of-type{
	text-align: left;
}*/

footer img{width: auto!important;}




/************************************************************
					min770px－max1200px
************************************************************/
@media screen /*and (min-width: 770px) */and (max-width: 1200px){

#container, .w1000 {
	min-width: 100%;  
	width: 100%;
	margin: 0;
/*	overflow: hidden;*/
}
.w1000{
	width: 100%;
	padding-left: 2%;
	padding-right: 2%;
}
.point dl,
.hike_session section,
.hotel{	
	width: 98%;
	margin-left: 1%;
	margin-right: 1%;
}
/*-----------------------------------------------------------#intro*/
/*#intro{
	padding:4em 0 3em;	
}*/
}

/************************************************************
					タブレット対応
************************************************************/
@media screen /*and (min-width:600px)*/ and (max-width:769px)  {

/* 非表示指定 */
.pc {display: none;}
.tb{display: block;}
#pankuzu{display: none;}

/*------------------------------------------------spot*/
.hotel dl{flex:100%; margin-bottom: 1em;}
.hotel p.image1{margin-left: 0;}

/*------------------------------------------------air*/	
.bz_price{	display: block;}
.pe dl{flex:100%;}
.pe p.image1{margin-left: 0;}

/*----------------------------------------------------------------------link*/
#link{    padding: 3em 0 0;}	

/*-----------------------------------------------------info*/
/*#info{
	padding: 3em 0 7em;
	background: url("../img/footer_bg.png") no-repeat bottom right / 100%;
	font-size: 95%;
}*/

}

/************************************************************
						スマホ対応
************************************************************/
@media screen and (max-width:599px)  {
	/* 非表示指定 */
.pc {display: none;}
.tb{display: none;}
.sp{display: block;}	

/*br{display: none}*/
.cre{
	font-size: .8em;
}
/*--------------------------------------------------------------------title */
#title .w1000{
	padding-left: 0;
	padding-right: 0;
}
#title{
	background:none;
}	
h1 span{	margin-top: -1.5em;}		
h1{
	text-indent: 0;
	background: none ;
	padding: 0;
	width: 100%;
}
/*-----------------------------------------------------------#intro*/
#intro{
	padding:1.5em 0 2em;
}
.lead br{display: none;}
.lead{
	text-align: left;
	font-size:1em;
}
/*----------------point*/
.point{
	font-size: .85em;
	margin-top: 1.5em;
	padding: 2em 0;
}
.point dl{	padding: 2.5em .5em 1.5em;}
/*----------------hike_session*/
.hike_session section{
	font-size: .85em;
	line-height: 1.3;

	padding: 3.5em 1em 2em;
	position: relative;
}
.hike_session h3{	font-size: 4vw;}
.hike_session h3 small{display: block;}
.hike_session h3 + p{
	font-size: 1em;
	text-align: left;
}
.hike_session dl.flex_box{
	display: block;
	font-size: 1em;
}
.hike_session dl.flex_box dd{
	width:100%;
}
.hike_session ul{
	padding: .5em .5em;
	font-size: .9em;
}

/*------------------------------------------------spot01*/
.spot01,.spot02{
	font-size: 0.9em; line-height: 1.2;
	border-bottom: #00194F 5px solid;
}
.spot01 h2{
	font-size: 4vw;
	display: block; 
}
.spot01 h2 strong{
	align-items: center; /* 横線を上下中央 */
	display: flex; /* 文字と横線を横並び */
}
.spot01 h2 strong::before,
.spot01 h2 strong::after {
  background-color: #007223; 
  content: "";
  flex-grow: 1;
  height: 2px;
}
.spot_box{	
	display: block;
}
.spot_box dl{font-size: 0.9em;}	
.spot_box dl:first-of-type{
	margin-right: 0;
	margin-bottom: 1em;
}
.hotel{
	font-size: .85em;	
	padding: 1em;
}	

/*-------------------------spot02*/
.spot02 h2{
	font-size: 4.5vw;
	display: block; 
	line-height: 1.5;
}
.spot02 h2 strong{
	align-items: center; /* 横線を上下中央 */
	display: flex; /* 文字と横線を横並び */
}
.spot02 h2 strong::before,
.spot02 h2 strong::after {
  background-color: #223A78; 
  content: "";
  flex-grow: 1;
  height: 2px;
}
.spot02 h2 strong::before {  margin-right: 1.2em; }
.spot02 h2 strong::after {  margin-left: 1.2em; }
.spot02 .spot_box dl dt .date{
	font-size: .9em;
	top:-1.3em;
	left: 0;
	background: #2d5da8;
}

/*------------------------------------------------air*/
.air h3{
	margin: 0 auto .5em;
}
.air .text{
	font-size: .8em;
	line-height: 1.4;
	text-align: left;
}
.bz{
	display: block;
}
.bz_price{
	display: block;
	padding:  .5em .5em;
}
.price{
	font-size: 5.7vw;
}
.bz_price dt span,
.pe dt span
	{
	font-size: .7em;
}
.bz_price dd{
	font-size: .65em;
	text-align: left;
}
.pe{ 	padding: .5em;}
.pe .s_font{
	font-size: .65em;
	text-align: left;
}	
/*----------------------------------------------------------------------link*/
#link{		font-size: .8em;}
#link .link_tour li{
	width:100%;
	margin: .5em auto 1em;
}
#link .link_tour li a{	padding: 0.5em 1em;}

.digipan{
	margin-top: 2em;
	padding: 2em;
}
.digipan a{ padding: 0.5em 3em;}
/*-----------------------------------------------------info*/
#info{margin-bottom: 7em;}
#info .flex_box{	display: block;}
#info dl{
	flex: 1;
	margin: 0 0 .5em;
	padding-bottom: 1em;
	border-bottom: 1px solid #A8A8A8;
}
#info dd:first-of-type{
	font-size: 1em;
}

	
}
