@charset "utf-8";
/* CSS Document */


#footer {
	background-image: url(images/footerback.png);
	background-repeat: repeat-x;
	height: 400px;
	width: 100%;
	min-width:1000px;
	position:relative;
	top:-30px;
}
#footer #footerContainer {
	position:relative;
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 68px;
	height:312px;
}
#footer #footerLink{
	color:#FFF;
	font-weight:bold;
	font-size:14px;
}
#footer #footerLink{
	margin-left:22px;
}
#footer #footerLink li{
	background-image:url(images/footerArrow.png);
	background-repeat:no-repeat;
	padding-left:24px;
	margin-left:22px;
	line-height:27px;
}
#footer #footerLink a{
	color:#FFF;
	text-decoration:none;
}
#footer #footerLink a:hover{
	color:#F60;
}
#footer #footerSyuzai{
	background-image:url(images/footerSyuzai.jpg);
	width:200px;
	height:65px;
	overflow:hidden;
	line-height:200px;
	position:absolute;
	left:230px;
	top:88px;
}
#footer #footerSaiyou{
	background-image:url(images/footerSaiyou.jpg);
	width:200px;
	height:65px;
	overflow:hidden;
	line-height:200px;
	position:absolute;
	left:230px;
	top:168px;
}
#footer #footerContainer #state{
	display:block;
	width:1000px;
	text-align:center;
	color:#fff;
	position:absolute;
	bottom:0px;
}
#footer #footerMark{
	width:96px;
	height:100px;
	position:absolute;
	top:115px;
	left:577px;
}
#footer #footerGaikan{
	width:308px;
	height:229px;
	position:absolute;
	top:54px;
	left:693px;
}


/*全ページ共通の設定（南国プロジェクト）*/
#tih_side{
	margin-top:10px;
	background-image:url(images/thisIsHawaiiSide.jpg);
	height:148px;
	height:230px;
}




/* --------------------------------
 レスポンシブ
-------------------------------- */

/* 全ページ共通の設定（YouTube）
YouTubeの<iframe>タグを
<div class="youtube" style="padding: 0 0 動画長辺px÷動画短辺pxの%数値">タグで囲むこと
アスペクト比計算ツール https://aspect.arc-one.jp/ */
.youtube {
	margin: 0;
    position: relative;
    height: 0;
}
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* 全ページ共通の設定（スマホ・PC出し分け） */
.sp {
	display: none !important;	
}

/* 全ページ共通の設定（ファブレット・タブレット出し分け） */
.phablet {
	display: none !important;
}

/* 全ページ共通の設定（改行しない） */
.nowrap {
    white-space: nowrap;
}

/* 全ページ共通の設定（画像の下の隙間を消す） */
#column1 img {
	vertical-align:bottom
}

/* 全ページ共通の設定（Googleマップ、Googleマイマップ） */
iframe {
	max-width: 100%;
}

/* 全ページ共通の設定（URL等が改行されないのを回避） */
#column1 {
	word-break: break-all;
	word-break: break-word;
}

/* 全ページ共通の設定（ページごとにフッター画像の余白にバラツキがあるのを統一） */
#footerMark img {
	margin: 10px;
}
#footerGaikan img {
	margin: 10px;
}

/* 全ページ共通の設定（バナー調整） */
#banner li.banner_dummy {
	display: none;
}

/* 全ページ共通の設定（ヘッダー下PRエリア） */
#pr_outline {
  	border: solid 1px #e60012;
    padding: 1px;
    background-color: #FFF;
    margin-bottom: 15px;
    margin-left: 5px;
    margin-right: 10px;
}
#pr_inline {
    border: solid 3px #f29c9f;
    background-color: #FFF;
    padding: 0 10px;
}
#pr_inline p {
	margin-top: 15px;
	margin-bottom: 15px; 
}

/* ページ下部固定メニュー */
.dp-footer-bar {
	display: none;
}


@media screen and (max-width:1060px) {
/* 共通（ハンバーガーメニュー） */
.menuopen {
	display: block;
	width: 40px;
	height: 40px;
    position: fixed;
    top: 40px;
    right: 10px;
	z-index: 100010;
	background-image: url(images/sp_menu.png);
	background-size: contain;
}
.menuopen.active {
	background-image: url(images/sp_close.png);
}

/* 全ページ共通の設定（ヘッダー下PRエリア） */
#pr_outline {
    max-width: 755px;
    width: calc(100% - 24px);
    margin-left: auto;
    margin-right: auto;
}

#banner {
	width: 100% !important;
	background-repeat: no-repeat;
}

#footer {
	width: 100% !important;
	min-width: auto !important;
}
#footerContainer {
	width: 100% !important;
}

#footerNav {
	width: 480px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}
#footer #footerNav #footerSyuzai {
	top: 20px;
}
#footer #footerNav #footerSaiyou {
	top: 100px;
}
#footerStation {
	position: relative;
	width: 439px;
	margin-left: auto;
	margin-right: auto;
}
#footer #footerStation #footerMark {
	left: 0px;
}
#footer #footerStation #footerGaikan {
	left: 116px;
}
#footer #footerContainer #state {
	position: static !important;
    margin-top: 348px;
    padding-bottom: 100px;
    padding-left: 10px;
    padding-right: 10px;
    width: auto !important;
}

/* ページ下部固定メニュー */
.dp-footer-bar {
  /*background: rgba(255,255,255, 0.8);*/
  /*background-color: #ffffff;*/
  background-color: #ffffff;
  /*border-top: 1px solid #000;*/
  /*border-top: 1px solid #00479d;*/
  border-top: 1px solid #00479d;
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  position: fixed;
  bottom: 0;
  table-layout: fixed;
  text-align: center;
  width: 100%;
  z-index: 9998;
  visibility: hidden;
}
.dp-footer-bar a {
  display: block;
  padding: 5px 0;
  /*color: #00479d;*/
  color: #00479d;
}

.dp-footer-bar-item {
  flex: 1;
}
.dp-footer-bar-item + .dp-footer-bar-item {
  /*border-left: 1px solid #59493f;*/
  /*border-left: 1px solid #00479d;*/
  border-left: 1px solid #00479d;
}
.dp-footer-bar-item:only-child .dp-footer-bar-icon {
  display: block;
  position: relative;
}
.dp-footer-bar-item:only-child .dp-footer-bar-icon:before {
  position: absolute;
  right: 15px;
}
.dp-footer-bar-icon:before {
  display: block;
  font-size: 20px;
  margin-bottom: .5em;
}

.dp-footer-bar.menu_display {
	visibility: visible;
}

}


/* 全ページ共通の設定（フッター上バナー） */
@media screen and (max-width:1003px) {
#banner {
    background: url(images/bannerBack.png) no-repeat left bottom;
    height: auto;
}
#banner li:last-child {
	margin-bottom: 28px;
}
.banner_upper3, .banner_upper4, .banner_upper5 {
	margin-top: 4px !important;
}
.banner_dummy {
	display: block !important;
}
}


@media screen and (max-width:781px) {
/* 全ページ共通の設定（ヘッダー下の余白確保） */
#header {
	height: 300px;
}
}

@media screen and (max-width:775px) {
/* 全ページ共通の設定（ファブレット・タブレット出し分け） */
.tablet {
	display: none !important;
}
.phablet {
	display: block !important;
}

/* 全ページ共通の設定（フォームのレスポンシブ対応） */
form table {
	max-width: 505px !important;
}

.scroll-back-to-top-wrapper {
	right: 10px !important;
}

}

/* 全ページ共通の設定（スマホ・PC出し分け） */
@media screen and (max-width:545px) {
.pc {
    display: none !important;
}
.sp {
	display: block !important;
}

/* 全ページ共通の設定（フォームのレスポンシブ対応） */
#column1 input[type="text"], #column1 input[type="email"], textarea {
	width: calc(100% - 6px);
}

/* 全ページ共通の設定（テーブル自動調整） */
#column1 table div {
	width: auto !important;
}
#column1 table td {
	width: auto !important;
	vertical-align: top !important;
}

/* 全ページ共通の設定（コンテンツエリアの高さを正常に確保） */
/*#column1 {
	overflow: hidden;
}*/

}

/* 全ページ共通の設定（スマホ・PC出し分け） */
@media screen and (max-width:526px) {
#banner {
    background-position: -164px bottom;
}
#banner ul {
	margin-left: 34px;
}
}


@media screen and (max-width:500px) {
/* 共通（ハンバーガーメニュー） */
.menuopen {
	visibility: hidden;
}
.menuopen.menu_display {
	visibility: visible;
}
.menuopen.active {
	visibility: visible;
}
#footerNav {
	width: 100%;
}

#footer #footerNav #footerSyuzai ,#footer #footerNav #footerSaiyou {
	position: static;
	display: block;
	width: 200px;
	margin-top: 10px;
	margin-left: 44px;
}

#footerStation {
	width: 100%;
	margin-left: 0px;
}
#footer #footerStation #footerMark, #footer #footerStation #footerGaikan {
	position: static !important;
}

#footer #footerStation #footerMark {
	margin-top: 20px;
	margin-left: 4px;
}
#footer #footerStation #footerGaikan {
	margin-top: 10px;
	width: 100%;
	height: auto;
}
#footer #footerStation #footerGaikan img {
	width: calc(100% - 20px);
    height: auto !important;
}
#footer #footerContainer #state {
	margin-top: 40px;
}
}


@media screen and (max-width:400px) {
/* 全ページ共通の設定（ヘッダー下の余白確保） */
#header {
	height: 370px;
}
}

@media screen and (min-width:1061px) {
.menuopen {
	display: none;
}
}