@charset "utf-8";
/* CSS Document */

p{
    color: #000;
}

.main_contents{
	width: 80%;
    margin: 20% auto;
	max-width: 700px;
    padding: 5em 2em 0.5em;
    text-align: center;
    background-color:rgba(255,255,255,0.75);
}

.main_contents img{
	text-align: center;
	margin: 0 auto 0;
	opacity: 1;
}


.fadein {
  animation-name: fadein;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

h4 img {
    width: 100%;
}

@keyframes fadein {
  0% {
     opacity: 0;
     transform: translateY(20px);
  }
  100% {
     opacity: 1;
     transform: translateY(0);
  }
}

.mt_30{
	margin-top: 30px;
}

.mt_50{
	margin-top: 50px;
}

.mt_70{
	margin-top: 70px;
}

#overview p{
	font-size: 12px;
	line-height: 1.2em;
	text-align: left;
	margin-top: 10px;
}

hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
    height: 1em;
  background-image: repeating-linear-gradient(45deg, #0068b7 0, #0068b7 1px, transparent 0, transparent 50%);
  background-size: 8px 8px;
}

.map_box{
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	padding: 0 20px;
}


/*== ボタン共通設定 */
.btn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
  overflow: hidden;
    /*ボタンの形状*/
  text-decoration: none;
  display: inline-block;
    border: 1px solid #0068b7;/* ボーダーの色と太さ */
    padding: 10px 30px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/   
    transition: ease .2s;
	color:#333;
	font-weight: bold;
}

/*ボタン内spanの形状*/
.btn span {
  position: relative;
  z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color:#333;
}

.btn:hover span {
  color:#fff !important;
}

/*== 背景が流れる（斜め） */
.bgskew::before {
  content: '';
    /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: -130%;
    /*色や形状*/
  background:#0068b7;
  width:120%;
  height: 100%;
  transform: skewX(-25deg);
	color:#fff;
}

/*hoverした時のアニメーション*/
.bgskew:hover::before {
  animation: skewanime .5s forwards;/*アニメーションの名前と速度を定義*/
}

@keyframes skewanime {
  100% {
    left:-10%;/*画面の見えていない左から右へ移動する終了地点*/
  }
}



#sightseeing .title{
	background-color: #0068b7;
	width: 100%;
	line-height: 2em;
	color: #fff;
	font-size: 3em;
}

#sightseeing .map{
	margin: 10px 0;
	border:#7F7F7F 1pX solid;
	padding: 10px;
}

.btn_box{
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	width: 100%;
}

.btn_box > li .btn{
	min-width: 265px;
    width: 30vw;
    max-width: 310px;
	margin: 0;
	text-align: left;
}

a img:hover{
	opacity: 0.7;
}

.copyright{
	font-size: 0.5em;
	margin-top: 50px;
}

.title_02{
    font-size: 2em !important;
    text-align: center!important;
    font-weight: bold;
    margin: 30px 0!important;
display: flex;
    align-items: center;
    padding: 0 1.5em!important;
}

.title_02:before,
.title_02:after{
    content: "";
      flex-grow: 1;
  height: 1px; /* 線の太さ */
  background: #000; /* 線の色 */
  margin:0 2em; /* 文字と線の余白 */
    
}

.title_03{
    font-size: 2em !important;
    text-align: center!important;
    font-weight: bold;
    margin-top: 50px!important;
display: flex;
    align-items: center;
    padding: 0 1.5em!important;
}

.title_03:before,
.title_03:after{
    content: "";
      flex-grow: 1;
  height: 1px; /* 線の太さ */
  background: #000; /* 線の色 */
  margin:0 2em; /* 文字と線の余白 */
    
}

.map_img img{
    margin-top: 30px;
    width: 100%;
}

.sns_sp{
    margin: 30px auto 0;
    text-align: center;
}

.sns_box{
    display: flex;
    width: 50%;
    margin: 0 auto;
    text-align: center;
}

.sns_box li{
    margin: 0 10px;
}

.sns_box img{
    margin: 0 10px;
}

.slider {
  margin: 30px auto 0;
  width: 100%;
}
.slick-img img {
  height: auto;
  width: 100%!important;
}

.questionnaire_s{
    font-size: 0.8em; 
    color: red;
}

.btn_text{
    font-size: 2em; margin-top:60px;
}




@media only screen and (max-width: 771px){
	
	.main_contents{
padding: 3em 0.5em;
		 height: 100%;
		margin: 40% auto;
        width: 90%;
	}
    
    .main_contents img{
        margin: 0 auto;
    }
	
	#sightseeing .title{
	width: 100%;
	line-height: 2em;
	color: #fff;
	font-size: 2em;
}
	h2 img{
		width: 80%;
	}
	
	.map_box{
		width: 100%;
		padding: 0;
	}
	
	.btn{
		width: 100%;
	}
	
		.btn_box > li{
	width: 100%;
	}
	
	.btn_box > li .btn{
	width: 100%;
		font-size: 18px;
	}
	
	#overview p{
		color: #000000;
		font-size: 13px;
		width: 100%;
        padding: 0;
	}
	
	.copyright{
		color: #000000;
	}
    
    .title_02{
    font-size: 1.5em !important;
        margin-bottom: 20px;
    }
    
    .title_02:before,
.title_02:after{
  margin:0 1em; /* 文字と線の余白 */
}
    
        .title_03{
    font-size: 1.5em !important;
            margin-bottom: 20px;
    }
    
    .title_03:before,
.title_03:after{
  margin:0 1em; /* 文字と線の余白 */
}
    
    .map_img img {
        width: 100%;
    }
    
    h3 img {
width: 100%;
}
    .sns_box {
        width: 80%;
    }
    .questionnaire_box p{
        text-align: left;
        width: 90%;
        margin: 0 auto;
    }
    
    .questionnaire_s{
    font-size: 0.9em; 
    color: red;
}

.btn_text{
    font-size: 1.5em;
}
}


@media(min-width:751px){
    .pc_none{
        display: none !important;
    }
}
@media(max-width:750px){
    .sp_none{
        display: none !important;
    }
}




