@charset "utf-8";

* {
	margin: 0;
	padding: 0;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

html,body {
	height: 100%;
}

html {
	 font-size: 62.5%;
	 -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
    text-size-adjust: 100%;
}
body {
  position: relative;
  line-height: 2;
  margin: 0;
  color: #333;
  overflow-x: hidden;
  letter-spacing: 0.1em;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
html,body { height:100%;}
body { font-size: 1.5rem; line-height: 1.7}
a { color: #000; text-decoration: none}
a:hover, .active{ text-decoration: underline}
img {
	border: 0px;
	vertical-align: top;
	line-height: 0px;
	width: 100%;
	height: auto
}
ul,li,dl,dt,dd,p,h1,h2,h3,h4,em { margin:0; padding:0; font-style: normal}
ul,li,td {	list-style-type: none;}
h2 { font-size: 3.2rem; line-height: 1.2; margin-bottom: 0; text-align: center}
h3 { font-size: 2.8rem; margin-bottom: 50px; font-weight: normal}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.right { text-align: right}
.center { text-align: center}
.link {
	text-decoration: underline;
}
section { margin: 0 auto; padding: 50px 0; max-width: 1040px}
@media only screen and (max-width: 750px){
	section { padding: 50px 0}
	h2 { font-size: 2.6rem}
}
@media (min-width: 751px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
	.h-b { height: 61px; background:url(../images/common/h-b-l.png) left top no-repeat,
        url(../images/common/h-b-r.png) right bottom no-repeat; text-align: center}
}
/* 点滅 */
.blink:hover {
	-webkit-animation:blink .8s ease-in-out alternate;
    -moz-animation:blink .8s ease-in-out alternate;
    animation:blink .8s ease-in-out alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#container{display:none;}
@media (max-width: 750px) {
	.visible-xs { display: none !important}
}
@media (min-width: 751px) {
	.hidden-xs { display: none !important}
}

#page-loading {
  background: #eee;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  text-align: center;
  z-index: 1000;
  display: table;
}

.ball-pulse-sync {
  background: #eee;
  display: table-cell;
  vertical-align: middle;
}


/*------------------------------------------------------------
	
	ヘッダー 

------------------------------------------------------------*/
.masthead {
    position: relative;
}
@media screen and (min-width:769px){
.masthead {
    min-width: 720px;
}
}
@media screen and (max-width:768px){
.masthead {
    width: 100%;
	height: 100%;
	background-size: cover;
    background-position: center;
	background-image: url("../images/home/poster.jpg")
}
	video { display: none!important}
}

.masthead-video {
    z-index: 0;
}
.masthead-overlay {
    background-color: #000;
    opacity: 0.4;
    position: absolute;
    top: 0; left: 0;
    bottom: 0; right: 0;
    width: 100%;
    height: 100%;
}


header {
	background: url("../images/home/mv.jpg") no-repeat 50% 100%/cover;
}
.home header {
	height: 100vh;
}

#headerWrap { text-align: center; background:rgba(52,72,94,0.9); width: 100%; z-index: 2;}
#headerWrap .inner { max-width: 1100px; margin: 0 auto; padding: 20px 0; justify-content: space-around; align-items: center}
#headerWrap #logo { float: left; padding: 0 2%}
.page #headerWrap h1 { float: left; padding: 0 2%}
#headerWrap .notice table { width: 100%}
#headerWrap .notice th { padding: 3px 15px 3px 40px; color: #fff; background:#2c3d4f url(../images/common/icon-gondola.png) no-repeat 10px 50%}
#headerWrap .notice td { background: #fff; font-weight: bold; font-size: 1.8rem; letter-spacing: 5px; padding: 3px 10px 3px 15px}
#headerWrap .weather { width: 110px!important; z-index: 10000; padding: 0}
#headerWrap .wideget { overflow: hidden}
#headerWrap .wideget img { margin-top: -18px}
#headerWrap .cityname { color: #fff; font-size: 1.3rem; text-align: center; background: #2c3d4f}
#headerWrap .info { float: right; overflow: hidden}
#headerWrap .info .lang { margin-bottom: 10px}
#headerWrap .info .lang a { text-decoration: none; color: #fff; font-size: 1.3rem; letter-spacing: 3px}
#headerWrap .info .lang a span { border-bottom: solid 1px #fff}
#headerWrap .info ul { overflow: hidden}
#headerWrap .info li { float: left; width: 50%; padding: 0 10px}
#headerWrap .info li img { width: 31px; height: auto}
nav a { color: #fff; font-weight: bold; display: block}
nav a small { font-weight: normal; font-size: 1rem}


.header_cont.floating{
        position: fixed;
        top: 0;
        bottom: auto;
}
.header_cont {
		position: absolute;
        bottom: 0px;
	}

@media only screen and (min-width: 751px){
	.home #headerWrap { height: 160px}
	
	.page .header_cont {
        top: 0px;
		position: fixed;
	}
	.fixed {
		position: fixed;
		top: 0;
	}
	#mainnav { display: none}
}

@media only screen and (min-width: 997px){
	.home #headerWrap { height: 110px}
}

@media only screen and (max-width: 768px){
	#headerWrap .weather { padding-top: 10px}
	source { display: none}
}
@media only screen and (max-width: 750px){
	#headerWrap { background:rgba(52,72,94,1)}
	.page #headerWrap {
		position: relative;
		width: 100%;
	}
	.page #headerWrap h1 { padding-left: 20px}
	.page #headerWrap h1 img { max-width: 200px; height: auto}
	#headerWrap #logo img { max-width: 200px; height: auto}
	.home #headerWrap #logo,
	#headerWrap .notice { width: 100%}
	#headerWrap .weather,
	#headerWrap .info { width: 100px}
	#headerWrap .notice table { width: 90%; margin: 10px auto}
}
@media only screen and (max-width: 320px){
	#headerWrap #logo { height: 33px}
	#headerWrap #logo img { max-width: 180px; height: auto}
	#headerWrap .info { left: 35%}
	#headerWrap .info .tel { font-size: 1.8rem; background-size: 17px auto; -webkit-background-size: 17px auto; padding-left: 20px}
	#headerWrap .info .tel span { font-size: 1.3rem; margin-left: -25px}
	#headerWrap .notice td { background: #fff; font-weight: bold; font-size: 1.6rem; letter-spacing: 1px; padding: 3px 10px}
	#headerWrap .weather { margin: 0 10px 0 20px}
	#headerWrap .inner { padding: 15px 0 5px}
}



/*------------------------------------------------------------

	フッター
	
------------------------------------------------------------*/
footer { background: #562310; color: #fff}
footer a { color: #fff; font-size: 1.3rem}
footer .inner { align-items: flex-start!important;}
footer .footer-name { font-size: 2rem}
footer .footer-info { order: 1}
footer .footer-link { order: 2}
footer .copyright { text-align: center; background: #33190e; padding: 10px; font-size: 1.2rem}
@media only screen and (min-width: 751px){s
	footer { padding-top: 20px}
	footer .inner { max-width: 980px; margin: 0 auto 20px; padding: 40px 20px 20px}
	footer .footer-info { width: 30%}
	footer .footer-link { width: 70%; justify-content: space-around; align-items: flex-start!important; padding-top: 30px;}
	footer .footer-link ul { width: 37%}
	footer .footer-link ul:first-child { width: 26%}
	#return,
	#return a{ display: none}
}
@media only screen and (max-width: 750px){
	footer .footer-info { padding: 20px; border-bottom: solid 1px #e7c9a5; width: 100%}
	footer .footer-info p { text-align: center}
	footer .footer-info dl { margin: 1em auto 0}
	footer ul { width: 100%}
	footer li { border-bottom: solid 1px #e7c9a5; padding: 15px}
	footer li:before{
		content:"";
		display: inline-block;
		margin-right: 15px;
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 5px solid #e7c9a5;}
	#return { position: fixed; bottom: 20px; right: 20px}
	#return a { display: block; background: url(../images/common/btn-return.png) no-repeat 50%; width: 60px; height: 60px; background-size: 60px auto; -webkit-background-size: 60px auto; text-indent: 100%; white-space:nowrap; overflow: hidden}
}
@media only screen and (min-width: 751px)and (max-width: 850px){
	footer .footer-info { width: 40%}
	footer .footer-link { width: 60%}
	footer .footer-link ul { width: 50%}
	footer .footer-link ul:first-child { width: 50%}
	footer .footer-link ul:last-child { width: 100%}
}


/* ----------------------------------------------------
	
	モーダルメニュー　movilie-menu
	 
---------------------------------------------------- */	
.menu-btn {
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 30001;
	background:url(../images/common/open.png) no-repeat 0 0;
	background-size: 40px auto; -webkit-background-size: 40px auto;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	margin: 0 30px
}

.menu-btn span:after {
    content: attr(data-txt-menu);
}

/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu-btn {
	/*position: fixed;
	top: 0;
	right: 20px;
	width: 40px;
    height: 40px;*/
    cursor: pointer;
	background:url(../images/common/close.png) no-repeat 0 0;
	background-size: 40px auto; -webkit-background-size: 40px auto;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index:30001
}

.menu {
    position: fixed;
    display: table;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(52,72,94,0.95);
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
	z-index:30000
}
.menu-inner { margin: 0 auto; max-width: 800px; width: 100%; position: absolute;
	padding: 0 20px;
    top: 40%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%)}
.menu-inner div { width: 100%; display: table}
.menu-inner .ttl { padding-bottom: 30px}
.menu-inner .ttl img { width: 500px; height: auto}
.menu ul {
    vertical-align: top;
	padding-top: 30px;
	width: 38%
}
.menu li {
    width: 100%;
    line-height: 1.3;
    margin: 0 auto 1em;
	padding-left: 0;
    text-align: left
}
.menu li a {
    display: block;
    font-size: 1.5rem;
    color: #fff;
	padding-left: 5%;
	-webkit-transition: all 0s;
    transition: all 0s;
}

.menu li a:hover {
	text-decoration: underline;
	-webkit-transition: all 0s;
    transition: all 0s;
}

.hover {
	text-decoration: none
}
/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu {
    cursor: url(../images/cross.svg),auto;
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: visible;
    opacity: 1;
}
@media (min-width:751px){
	.menu ul { display: table-cell}
	.menu ul:first-child { width: 24%}
	.menu-inner .ttl { height: 61px; text-align: center; background:url(../images/home/h-01-l.png) left top no-repeat,
        url(../images/home/h-01-r.png) right bottom no-repeat}
}
@media (max-width:750px){
	.menu ul { width: 100%; padding-top: 0}
	.menu .ttl { margin-bottom: 10px}
	.menu .ttl img { width: 100%; height: auto}
	.menu li { line-height: 1.3}
}
@media only screen and (min-width: 751px) and (max-width: 996px) {
	#header .info { padding-top: 5px}
	#js__btn { margin-top: 10px}
}
@media only screen and (max-width: 320px){
	.menu-btn { margin: 20px 0 0 20px}
	.page .menu-btn { margin: 0 0 0 30px}
	.menu-inner { padding-top: 70px}
	.menu-inner .ttl { display: none}
}
/*------------------------------------------------------------

	ホーム	.home
	
------------------------------------------------------------*/
.home article { padding: 100px 4% 0}
.home section { padding-top: 0; max-width: 1040px; overflow: hidden}
.home h2 { margin-bottom: 50px; line-height: 1.5}
.home #information { padding: 30px 0}
.home #information section { padding-bottom: 0}
.home #information section { justify-content: space-around}
.home .operation tr:nth-child(n+1):nth-child(-n+3) th,
.home .operation tr:nth-child(n+1):nth-child(-n+3) td { font-weight: normal; font-size: 1.9rem}
.home .operation th,
.home .operation td { padding: 5px 10px; border-bottom: solid 1px #ccc}
.home .operation td { text-align: center}
.home .operation span { padding-left: 10px; display: inline-block}
.home .topics .ttl { margin-bottom: 15px}
.newslist { display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 90%; margin: 7px auto 0; padding-bottom: 5px; border-bottom: solid 1px #ccc}
.newslist dt { padding-top: 5px}
.newslist dt img { width: 60px}
.newslist .update{ display: block;}
.tag {display: inline-block;width: 60px;height: 20px;}
.tag.information{ background: url("../images/common/icon-info.png") no-repeat 0 0/60px 20px;}
.tag.news{ background: url("../images/common/icon-news.png") no-repeat 0 0/60px 20px;}
.tag.event{ background: url("../images/common/icon-event.png") no-repeat 0 0/60px 20px;}
.home #contents li { width: 33.3333%}
.home #cape { padding-top: 80px; background: url(../images/home/bg-1.png)}
.home #cape .flex { justify-content: space-between}
.home #cape p { line-height: 2; letter-spacing: 1px; font-size: 1.6rem}
.home #cape .figure-1 img { max-width: 488px}
.home #cape .figure-2 { text-align: center}
.home #cape .figure-2 img { max-width: 365px}
.home #cape h2 { text-align: left}
.home #cape h2 img { max-width: 411px}
.home #slide { border: solid 10px #552311; border-width: 10px 0}
.home #slide .slider { position: relative; z-index:-1}
.home #links { background: url(../images/common/bg-sky.jpg) no-repeat; background-size: cover; -webkit-background-size: cover}
.home #links h2 img { max-width: 391px}
.home #links .flex { justify-content: space-around}
.home .cont-banner a span,
.home .cont-banner a { height: 100%; display: block; text-indent: 100%; white-space:nowrap; overflow: hidden; background-size: cover; -webkit-background-size: cover;-webkit-transition: all 0.3s linear; transition: all 0.3s linear}
.home .cont-banner a:hover { -webkit-transition: all 0.3s linear; transition: all 0.3s linear}
.home .cont-banner li:nth-child(1) a { background-image: url(../images/home/con-1.jpg)}
.home .cont-banner li:nth-child(2) a { background-image: url(../images/home/con-2.jpg)}
.home .cont-banner li:nth-child(3) a { background-image: url(../images/home/con-3.jpg)}
.home .cont-banner li:nth-child(4) a { background-image: url(../images/home/con-4.jpg)}
.home .cont-banner li:nth-child(5) a { background-image: url(../images/home/con-5.jpg)}
.home .cont-banner li:nth-child(6) a { background-image: url(../images/home/con-6.jpg)}
.home .cont-banner a:hover span {background: rgba(255,255,255,0.4)}

@media only screen and (min-width: 751px){
	.home .operation { width: 360px}
	.home .operation table { width: 90%; margin: 10px auto 0}
	.home #information .ttl { height: 61px; text-align: center; background:url(../images/home/h-01-l.png) left top no-repeat,
        url(../images/home/h-01-r.png) right bottom no-repeat}
	.home .operation .ttl img { width: 175px; height: auto}
	.home .topics { width: 100%; max-width: 620px}
	.home .topics .ttl img { width: 300px; height: auto}
	.newslist dt { width: 90px}
	.newslist dd { -webkit-flex: 1; flex: 1; padding-top: 3px}
	.home #cape .flex .figure-1 { width: 48%}
	.home #cape .flex .col { width: 52%}
	.home #cape p { margin: 0 0 50px 80px}
	.home #links { padding-top: 50px}
	.home #links .flex div:nth-child(-n+2) { margin-bottom: 30px}
	.home #links h2 { height: 61px; text-align: center; background:url(../images/home/h-03-l.png) left top no-repeat,
        url(../images/home/h-03-r.png) right bottom no-repeat}
	.home #links h2 img { width: 260px; height: auto}
}
@media only screen and (max-width: 1000px){
	.home #information section { padding: 0 2%}
}
@media only screen and (min-width: 751px) and ( max-width: 999px){
	.home .topics { padding-left: 3%}
}
@media only screen and (max-width: 750px){
	#video-background,
	#video-overlay { display: none}
	.home #information { padding: 30px 20px}
	.home .operation { margin-bottom: 50px}
	.home .operation table { width: 100%; margin: 10px auto 0}
	.home .operation small { display: block}
	.newslist dt,
	.newslist dd { width: 100%}
	.home #links { padding-top: 50px; padding-bottom: 0}
	.home #links .flex div { margin-bottom: 30px}
	.home #cape .flex { flex-direction:column-reverse}
	.home #cape .flex .col { margin-bottom: 30px}
	.home #cape p { margin: 0 0 30px 10px}
	.home #contents li { width: 50%}
	.home .ttl { text-align: center}
	.home .ttl img { max-width: 391px; height: auto}
}

/*------------------------------------------------------------

	下層ページ	.page
	
------------------------------------------------------------*/
.page .mv { background: url(../images/price/mv.jpg) no-repeat 50% 35%; text-align: center; background-size: cover; -webkit-background-size: cover}
.page h2 { margin-bottom: 30px}
.page main { background: center center /cover no-repeat fixed;
			 background-image:url(../images/common/bg-sky.jpg);
    		 background-size: cover;
			 z-index: 1;position: relative}
.page .main-inner { background: #fff; padding: 0 25px 50px; width: 85%; max-width: 1240px; margin: 0 auto}
.page #header { z-index: 2; position: relative}
.page #header .notice,
.page #header .weather,
.page #header .info { display: none}
.page #header .inner,
.page .flex { justify-content: space-between;align-items: center}

@media only screen and (min-width: 751px){
	.page .mv { padding: 80px 20px}
	.page h2.h-b img { max-width: 520px}
	.page .flex .figure { width: 45%}
	.page .flex .summary { width: 55%}
	.page .fig-summary .figure { order: 1}
	.page .fig-summary .summary { order: 2}
	.page .summary-fig .figure { order: 2}
	.page .summary-fig .summary { order: 1}
	.page { padding-top: 95px}
	.archive { padding-top: 95px}
	.page #headerWrap { height: 95px}
	.archive #headerWrap { height: 95px}
}
@media only screen and (max-width: 750px){
	.page .mv { padding: 30px 20px}
	.page .main-inner { width: 90%}
	.page #headerWrap h1 { line-height: 1}
	.page #headerWrap { height: 70px}
	.archive #headerWrap { height: 70px}
}


/*------------------------------------------------------------

	あいじょう岬の楽しみ方	.aijoumisaki
	
------------------------------------------------------------*/
.aijoumisaki h2 { text-align: left}
.aijoumisaki section { padding-bottom: 0}
.aijoumisaki .mv { /*background: #e90052;*/ text-align: center}
.aijoumisaki .mv img { max-width: 476px}
.aijoumisaki .summary-fig,
.aijoumisaki .fig-summary { align-items: flex-start}
.aijoumisaki .flow-1 h2 img { max-width: 425px}
.aijoumisaki .flow-2 h2 img { max-width: 391px}
.aijoumisaki .flow-3 h2 img { maxa-width: 484px}
.aijoumisaki .flow-4 h2 img { max-width: 423px}
.aijoumisaki .flow-5 h2 img { max-width: 455px}
.aijoumisaki .flow-6 h2 img { max-width: 334px}
.aijoumisaki .flow-7 h2 img { max-width: 374px}

@media only screen and (min-width: 751px){
	.aijoumisaki .mv { padding: 80px 20px}
	.aijoumisaki .flow-1 .summary { background: url(../images/aijoumisaki/dot-1.png) no-repeat 70% 100%; padding-bottom: 250px}
	.aijoumisaki .flow-2 .summary { background: url(../images/aijoumisaki/dot-2.png) no-repeat 30% 100%; padding-bottom: 200px}
	.aijoumisaki .flow-3 .summary { background: url(../images/aijoumisaki/dot-3.png) no-repeat 70% 100%; padding-bottom: 250px}
	.aijoumisaki .flow-4 .summary { background: url(../images/aijoumisaki/dot-4.png) no-repeat 0 100%; padding-bottom: 150px}
	.aijoumisaki .flow-5 .summary { background: url(../images/aijoumisaki/dot-5.png) no-repeat 70% 100%; padding-bottom: 180px}
	.aijoumisaki .flow-6 .summary { background: url(../images/aijoumisaki/dot-6.png) no-repeat 0 100%; padding-bottom: 160px}
	.page.aijoumisaki .flow-1 .summary { width: 48%}
	.page.aijoumisaki .flow-2 .summary { width: 48%}
	.page.aijoumisaki .flow-3 .summary { width: 48%}
	.page.aijoumisaki .flow-4 .summary { width: 50%}
	.page.aijoumisaki .flow-5 .summary { width: 50%}
	.page.aijoumisaki .flow-6 .figure { width: 55%}
	.page.aijoumisaki .flow-6 .summary { width: 42%}
	.page.aijoumisaki .flow-7 .summary { width: 44%}
	.page.aijoumisaki .flow-7 .figure { width: 53%}
	.aijoumisaki h2 + p { margin-left: 60px}
}
@media only screen and (max-width: 750px){
	.aijoumisaki .mv { padding: 40px 30px}
	.aijoumisaki .summary { margin-bottom: 20px}
}


/*------------------------------------------------------------

	料金・ご利用案内	.price
	
------------------------------------------------------------*/
.price .mv { background: url(../images/price/mv.jpg) no-repeat 50% 35%; text-align: center; background-size: cover; -webkit-background-size: cover}
.price .mv img { max-width: 401px}
.price table { margin: 0 auto; width: 100%}
.price .summary { margin: 0 auto}
.price .summary p { font-size: small; text-indent: -1em; padding-left: 1em}
.price td { text-align: center; padding: 15px; width: 33%; border: solid 1px #fff; border-width: 0 1px 1px 0}
.price tr:nth-child(1) td:nth-child(2){ background: #4680f6; color: #fff}
.price tr:nth-child(1) td:nth-child(3){ background: #48c75a; color: #fff}
.price tr:nth-child(2) td:nth-child(1),
.price tr:nth-child(3) td:nth-child(1),
.price .hihou td:nth-child(1) { background: #f1f1f1}
.price tr:nth-child(2) td:nth-child(2),
.price tr:nth-child(3) td:nth-child(2){ background: #e3ecff}
.price tr:nth-child(2) td:nth-child(3),
.price tr:nth-child(3) td:nth-child(3){ background: #d8f7dc}
.price .hihou td:nth-child(2) { background: #feecec!important; color: #333!important}
.price .hihou table + p { color: #f00}
.price td small { margin-left: 1em}
.price main small { color: #f00}
.price .notice { background: #f1f1f1; padding: 3% 3% 2%}
.price .notice dt span { background: #1a3941; color: #fff; padding: 10px 15px 8px; border-radius: 10px; display: inline-block}
.price .notice dd + dt { margin-top: 10px}
.price .notice dd { padding: 5px 5px 5px 15px}
.price .btn-ticket { max-width: 376px; margin: 0 auto}
@media only screen and (min-width: 751px){
	.price .mv { padding: 80px 20px}
	.price .summary { width: 80%}
	.price .hihou { width: 70%}
}
@media only screen and (max-width: 750px){
	.price .mv { padding: 40px 30px}
	.price td { padding: 8px}
	.price small { display: block}
}


/*------------------------------------------------------------

	お得なチケット	.ticket
	
------------------------------------------------------------*/
.ticket .mv { background: url(../images/common/bg-1.png); padding: 20px}
.ticket .mv .flex { max-width: 1040px; margin: 0 auto}
.ticket .mv .txt-1 { max-width: 521px; margin-bottom: 3em}
.ticket .mv .txt-2 { max-width: 460px; margin-bottom: 1em}
.ticket .mv .txt-2 + p { text-align: left}
.ticket .mv .figure { text-align: right; padding-left: 30px}
.ticket .mv .figure img { max-width: 423px}
.ticket .summary { position: relative}
.ticket .summary .icon { position: absolute; width: 40px; height: 40px; top: 50%; left: 50%; margin-left: -20px; margin-top: -8px}
.ticket .summary li { width: 50%}
.ticket .summary li + li {text-align: center}
.ticket .btn-ticket { max-width: 274px; margin: 50px auto 0}
.ticket .fig { max-width: 850px; margin: 0 auto}
.ticket .fig-1 { max-width: 377px; margin: 0 auto 30px}
.ticket .fig-2 { max-width: 420px}
.ticket .fig-3 { max-width: 377px; margin: 0 auto 30px}
.ticket .fig-4 { max-width: 420px}
/*.ticket .fig-1 { max-width: 377px; padding-top: 15px}
.ticket .fig-2 { max-width: 375px}
.ticket .fig-3 { max-width: 377px}
.ticket .fig-4 { max-width: 376px}*/
.ticket .notice { border-top: solid 6px #7c3a69; background: #fff0fb; padding: 30px 6%}
.ticket .notice dt span { background: #7c3a69; border-radius: 10px; padding: 5px 20px; color: #fff; display: inline-block; margin-bottom: 10px}
.ticket .notice p { text-indent: -1em; padding-left: 1em}
.ticket .notice p + p { margin-bottom: 1em}
.ticket .notice li { border-bottom: dashed 2px #7c3a69; margin-bottom: 5px; text-indent: -1.9em; padding-left: 1.9em}

@media only screen and (min-width: 751px){
	.ticket .mv .txt-2,
	.ticket .mv .txt-2 + p { margin-left: 96px}
	.ticket .summary li:first-child { padding-left: 50px}
}
@media only screen and (max-width: 750px){
	.ticket .mv .txt-1 img { max-width: 360px; margin: 10px auto 0}
	.ticket .mv .figure { width: 100%; text-align: center; margin-top: 20px}
	.ticket .summary p { width: 100%; text-align: center}
}


/*------------------------------------------------------------

	交通案内	.access
	
------------------------------------------------------------*/
.access h3 { font-size: 2rem; margin: 20px; border-bottom: solid 1px #1a3941; padding: 5px 0 5px 60px; background: url(../images/common/icon-finger.png) no-repeat 0 50%; background-size: 40px auto; -webkit-background-size: 40px auto}
.access .mv { background: url(../images/price/mv.jpg) no-repeat 50% 35%; text-align: center; background-size: cover; -webkit-background-size: cover; padding: 20px}
.access .mv img { max-width: 256px; height: auto}
.access iframe { border: 0;  frameborder: 0; width: 100%; height: 450px; margin: 0 auto 40px}
.access .summary { width: 90%; margin: 0 auto}
.access .summary dl { width: 90%; margin: 0 auto; font-size: small}
.access .summary dt { font-weight: bold}
.access .summary dd { margin-left: 1em}
.access .fig { text-align: center; margin-bottom: 20px}
.access .fig-1 { max-width: 667px}
.access .route-to { border: solid 13px #ddd; padding: 30px 30px 10px; margin: 0 auto}
.access .route-to h4 { color: #fff; background: #1a3941; margin-bottom: 10px; padding: 5px 1em; font-weight: normal}
/*.access .route-to h4 { color: #1a3941; border-bottom: solid 1px #1a3941; margin-bottom: 10px; padding-bottom: 5px}*/
.access .route-to dt { font-weight: bold; text-indent: -1em; padding-left: 1em}
.access .route-to dl dd { margin-left: 1em}
.access .notice { background: #eee; margin: 30px auto 0}
.access .notice dt span { background: #1a3941; border-radius: 10px; padding: 5px 20px; color: #fff; display: inline-block; margin-bottom: 10px}
.access .notice dd { padding-left: 1.4em}
.access .notice dd + dt { margin-top: 1em}
.access a[target="_blank"] { text-decoration: underline; color: #000}
@media only screen and (min-width: 751px){
	.access .mv { padding: 80px 20px}
	.access .route-to { width: 90%}
	.access .route-to dl { margin: 0 0 1em 1em}
	.access .notice { padding: 30px; width: 90%}
	.access .tohihou { background: url(../images/access/image-bus.png) no-repeat 90% 95%; background-size: 160px auto; -webkit-background-size: 160px auto}
	.access .tohihou .bybus { padding-right: 220px}
}
@media only screen and (max-width: 750px){
	.access .mv { padding: 30px 20px}
	.access iframe { height: 300px}
	.access .route-to { border: solid 10px #ddd; padding: 10px 10px 0}
	.access .route-to dl { margin: 0 0 1em 0}
	.access .notice { padding: 20px}
	.access .tohihou { background: url(../images/access/image-bus.png) no-repeat 95% 100%; background-size: 90px auto; -webkit-background-size: 90px auto}
	.access .tohihou .bybus { padding-right: 120px}
}
@media only screen and (max-width: 640px){
	.access .tohihou .bybus { padding-right: 0px; padding-bottom: 0px}
	.access .tohihou a { display: inline-block; margin-right: 110px}
}


/*------------------------------------------------------------

	山頂展望台（あいじょうテラス）	.terrace
	
------------------------------------------------------------*/
.terrace h2 { color: #F00; padding-bottom: 30px}
.terrace h2 img { max-width: 695px; height: auto}
.terrace h2 + h3 { color:#f00; text-align: center}
.terrace .mv { background: url(../images/price/mv.jpg) no-repeat 50% 35%; text-align: center; background-size: cover; -webkit-background-size: cover}
.terrace .mv img { max-width: 510px; height: auto}
.terrace .about { padding-top: 10px; padding-bottom: 0}
.terrace .about .summary { width: 80%; margin: 3em auto 0}
.terrace .about .summary p { margin: 0 1em 3em; font-size: 1.4rem}
.terrace .about .summary p:last-child { margin-bottom: 0}

.terrace .galleries {
	list-style: none;
	padding: 0;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	}
.terrace .galleries li {
	width: 25%;
	padding: 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	}
.terrace .galleries li a {
	width: 100%;
	height: 0;
	padding-top: 65%;
	background-repeat: no-repeat;
	background-position: center center;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
	display: block;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.10);
	-moz-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.10);
	-webkit-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.10);
	}
.terrace #shop .fig-summary { width: 90%; margin: 0 auto}
.terrace #shop .summary { width: 50%}
.terrace #shop h3 { padding-left: 60px; font-size: 2rem; width: 100%; border-bottom: solid 1px #1a3941; background: url(../images/common/icon-finger.png) no-repeat 0 50%; background-size: 40px auto; -webkit-background-size: 40px auto}
.terrace #shop .fig {width: 40%}
.terrace #shop dl { width: 80%; margin: 0 auto}
.terrace #shop dt { width: 75%}
.terrace #shop dd { width: 25%; text-align: right}
@media only screen and (min-width: 751px){
	.terrace .mv { padding: 80px 20px}
}
@media only screen and (max-width: 750px){
	.terrace .mv { padding: 30px 20px}
	.terrace .galleries li { width: 50%}
	.terrace #shop .fig,
	.terrace #shop .summary { width: 100%}
	.terrace #shop .fig { margin-bottom: 20px}
}



/*------------------------------------------------------------

	会社概要	.company
	
------------------------------------------------------------*/
.company .mv img { max-width: 564px; height: auto}
.company .summary { width: 80%; margin: 0 auto}
.company main table { width: 100%}
.company main th,
.company main td { padding: 15px 35px; text-align: left; font-weight: normal}
@media only screen and (min-width: 751px){
	.company main th { border-bottom: solid 2px #1a3941; width: 30%}
	.company main td { border-bottom: solid 1px #ddd}
}
@media only screen and (max-width: 750px){
	.company .summary { width: 100%}
	.company main th,
	.company main td { padding: 15px; display: block; width: 100%}
	.company main th { border-bottom: solid 1px #ddd; background: #f8f8f8}	
	.company main td { border-bottom: solid 2px #1a3941}
}



/*------------------------------------------------------------

	よくある質問	.faq
	
------------------------------------------------------------*/
.faq .mv img { max-width: 301px; height: auto}
.faq .faq-list dt { font-size: 1.8rem; position: relative; padding: 7px 0 0 60px; color: #1a3941; font-weight: bold}
.faq .faq-list dt:before { content: "Q"; position: absolute; top: 0px; left: 0; line-height: 40px; height: 40px; width: 40px; color: #fff; text-align: center; background: #1a3941; border-radius: 50%}
.faq .faq-list dd { position: relative; border-bottom: solid 1px #ccc}
.faq .faq-list dd:before { content: "A"; position: absolute; top: 0px; left: 0; line-height: 40px; height: 40px; width: 40px; color: #fff; text-align: center; background: #562310; border-radius: 50%; font-weight: bold}

/*.faq .icon-q { color: #fff; background: #1a3941; line-height: 40px; display: inline-block; height: 40px; width: 40px; text-align: center; border-radius: 50%; margin-right: 20px}
.faq .icon-a { color: #fff; background: #562310; line-height: 40px; display: inline-block; height: 40px; width: 40px; text-align: center; border-radius: 50%; margin-right: 20px}*/
@media only screen and (min-width: 751px){
	.faq .faq-list dd { padding: 7px 0 30px 60px; margin: 20px}
}
@media only screen and (max-width: 750px){
	.faq .faq-list dd { padding: 7px 0 30px 60px; margin: 20px 20px 20px 0}
}



/*------------------------------------------------------------

	ロープウェイカード	.card
	
------------------------------------------------------------*/
.card h2 + p { font-weight: bold; border: solid 2px #1a3941; padding: 10px; width: 80%; margin: 0 auto 30px}
.card h3 { border-bottom: solid 1px #1a3941; padding: 5px 0 5px 60px; background: url(../images/common/icon-finger.png) no-repeat 0 50%; background-size: 40px auto; -webkit-background-size: 40px auto}
.card .mv img { max-width: 359px; height: auto}
.card .fig img { margin-bottom: 30px}
.card .notice { background: #f1f1f1; padding: 2% 3%; margin: 30px auto}
.card .notice .ttl span { background: #1a3941; color: #fff; padding: 10px 15px 8px; border-radius: 10px; display: inline-block}
.card .notice ul { margin-top: 10px}
.card .notice li { padding: 5px 5px 5px 1em; text-indent: -1em; border-bottom: solid 1px #ccc}
.card .summary-inner { width: 80%; margin: 0 auto; border: solid 5px #c7da30; background: #c7da30; padding: 30px}
.card .summary-inner span { color: #bc2a11}
.card .summary-inner p:last-child { font-weight: bold; margin-top: 1em}
@media only screen and (min-width: 751px){
	.card h3 { font-size: 2rem; margin: 20px}
	.card .fig { width: 80%; margin: 30px auto 0}
	.card h3 + p { margin: 0 80px}
	.card small { margin-left: 80px}
	.card .notice { width: 90%}
}
@media only screen and (max-width: 750px){
	.card h3 { font-size: 1.8rem; margin: 20px 0}
	.card .summary-inner { width: 100%}
}

/*------------------------------------------------------------

	ニュース	.news
	
------------------------------------------------------------*/
.news .mv img { max-width: 301px; height: auto}
.news .news-topics .ttl { margin-bottom: 15px}
.news .news-topics dl { display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 90%; margin: 7px auto 0; padding-bottom: 5px; border-bottom: solid 1px #ccc}
.news .news-topics dt { padding-top: 5px}
.news .news-topics dt img { width: 60px}


@media only screen and (min-width: 751px){
	.news #information .ttl { height: 61px; text-align: center; background:url(../images/home/h-01-l.png) left top no-repeat,
        url(../images/home/h-01-r.png) right bottom no-repeat}
	.news .news-topics { -webkit-flex: 1; flex: 1; max-width: 1000px}
	.news .news-topics .ttl img { width: 300px; height: auto}
	.news .news-topics dt { width: 90px}
	.news .news-topics dd { -webkit-flex: 1; flex: 1; padding-top: 3px}
}
@media only screen and (max-width: 1000px){
	.news #information section { padding: 0 2%}
}
@media only screen and (min-width: 751px) and ( max-width: 999px){
	.news .news-topics { padding-left: 3%}
}
@media only screen and (max-width: 750px){
	.news #information { padding: 30px 20px}
	.news .news-topics dt,
	.news .news-topics dd { width: 100%}
	.news .ttl { text-align: center}
	.news .ttl img { max-width: 391px; height: auto}
}


.img-news {
	border: 0px;
	vertical-align: top;
	line-height: 0px;
	width: 70%;
	height: auto;
	margin: 20px 0 20px 0;
}

.comment-news{
	margin: 30px 0 20px 0;
	text-align: center;
}

.spacer{margin:20px 0;}

/* Devices */
.pc {
  display: block;
}

.smp {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }

  .smp {
    display: block;
  }
}

/*------------------------------------------------------------

	眺望ガイド	.view
	
------------------------------------------------------------*/
.view h2 { color: #F00; padding-bottom: 30px}
.view h2 img { max-width: 695px; height: auto}
.view h2 + h3 { color:#f00; text-align: center}
.view .mv { background: url(../images/price/mv.jpg) no-repeat 50% 35%; text-align: center; background-size: cover; -webkit-background-size: cover}
.view .mv img { max-width: 301px; height: auto}
.view .view-guide { padding-top: 30px; padding-bottom: 0}

.view .view-guide .summary-guide { width: 100%; margin: 1em auto 2em}
.view .view-guide .summary-guide p { margin: 3em 0 .8em; font-size: 1.4rem}
.view .view-guide .summary-guide p:last-child { margin-bottom: 0}
.view .view-guide .summary-guide img{ width: 40%;}
.view .view-guide .summary h3 { font-size: 2.0rem; font-weight: bold; margin-bottom: 10px;}

@media only screen and (min-width: 751px){
	.view .mv { padding: 80px 20px}
}
@media only screen and (max-width: 750px){
	.view .mv { padding: 30px 20px}
	.view .view-guide .summary-guide img{ width: 100%;}
	.view .view-guide .summary h3 { font-size: 1.8rem; margin-bottom: 10px;}
}

.newstopics a{
 text-decoration: underline;
}
.newstopics2{
 padding: 10px 0;
}


/*------------------------------------------------------------

	個人情報保護方針	.privacy
	
------------------------------------------------------------*/
.privacy h2 + p { font-weight: bold; border: solid 2px #1a3941; padding: 10px; width: 80%; margin: 0 auto 30px}
.privacy h3 { border-bottom: solid 1px #1a3941; padding: 30px 0 5px;}
.privacy h4 {  padding: 20px 0 5px;}
.privacy .list { padding: 0; margin: 10px auto}
.privacy .list ul { margin-top: 10px}
.privacy .list li { padding: 5px; list-style: disc;}
.privacy .number { padding: 0; margin: 10px auto}
.privacy .number ul { margin-top: 10px}
.privacy .number li { padding: 5px; list-style: decimal;}
@media only screen and (min-width: 751px){
	.privacy h3 { font-size: 2rem; margin: 20px}
	.privacy .fig { width: 80%; margin: 30px auto 0}
	.privacy h3 + p { margin: 0;}
	.privacy .list { width: 90%}
	.privacy .number { width: 90%}
}
@media only screen and (max-width: 750px){
	.privacy h3 { font-size: 1.8rem; margin: 20px 0}
}

.single .mv img,
.archive .mv img { max-width: 301px; height: auto}
.archive .header { background: none;}
.single .main-inner,
.archive .main-inner {
	padding: 100px 5%;
}
.archive .entry-container {
	margin-bottom: 100px;
}
.single article {
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
}
.single .category_tags {
	display: flex;
	column-gap: 20px;
	margin-bottom: 30px;
}

.post-nav{
	display: flex;
	justify-content: center;
	column-gap: 40px;
}
.post-nav a {
	display: inline-block;
	border: solid 1px #ddd;
	padding: 8px 20px;
	line-height: 1;
}

@media only screen and (max-width: 750px){
	.single .main-inner,
	.archive .main-inner {
		padding: 50px 5%;
	}
}