﻿
/*  各ページ用スタイル
----------------------------------------------------------- */
@import url("others.css");

.clr {
	clear:both;
}

/*======== div#All ========*/

div#All {
	width:950px;
	margin:0 auto;
	font-family:'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, sans-serif;
}

/*======== div#Header ========*/

#Header {
	width:950px;
	height:60px;
	margin:5px auto 10px auto;
}

#Header #logo {
	width:300px;
	float:left;
}

#Header #Menu {
	width:500px;
	float:right;
	padding:0 0 0 150px;
}

#Menu #ad {
	color:#755e47;
	font-size:13px;
}

#Menu #ad .header_tel {
	font-size: 28px;
	font-weight: bold;
	display: inherit;
	text-align: right;
}

#Menu ul {
	padding:10px 0 0 0;
	list-style-type:none;
	float: right;
}

#Menu ul li {
	font-size:14px;
	display:inline;
}

#Menu ul li:last-child a {
	padding-right: 0px;
}

#Menu ul li a {
	text-decoration:none;
	padding:0 15px 0 20px;
	background:url(../img/ya.gif) no-repeat 0 2px;
	color:#755e47;
}

#Menu ul li a:hover {
	text-decoration:underline;
	color:#b9ada0;
}

/*======== div#top ========*/

#top_island  {
    width:950px;
	height:300px;
    background-repeat: no-repeat;
    background-image: url(https://img.travel.rakuten.co.jp/share/image_up/11084/LARGE/945d0ebed25fd7056138bb35c7f0c44b8062781a.47.9.26.3.jpg);
}

#R_line {
	width:230px;
	float:right;
	padding:20px 65px 0 0;
}

#T_line {
	width:250px;
	height:230px;
	background:url(../img/ken.gif) no-repeat;
	padding:60px 0 0 0;
	margin:0 0 10px 0;
}

/*======== div#Main ========*/

#Main_l {
	width:250px;
	float:left;
	margin:10px 0 0 0;
}

#Main_r {
	width:680px;
	float:right;
	margin:10px 0 0 0;
}

#Main_r .bar_img {
	padding:0 0 10px 0;
}

#Main_r .bar_img2 {
	padding:0 0 3px 0;
}

/*======== div#Main_l ========*/

#Main_l .content_img {
	padding:0 0 10px 0;
}

#Main_l .content_img2 {
	text-align:center;
	background:#f7f7f7;
	border:1px solid #eeeeee;
	padding:10px 0 10px 0;
}

.content_img2 p {
	font-size:13px;
	line-height:17px;
	text-align:left;
	padding:5px 0 0 10px;
}

/*======== div#Main_r_con ========*/

#Main_r .Main_r_con {
	width:680px;
	padding:0 0 10px 0;
}

.Main_r_con table .troom_1 {
	width:340px;
	text-align:left;
	padding:0 0 10px 0;
}

.Main_r_con table .troom_2 {
	width:340px;
	text-align:right;
	padding:0 0 10px 0;
}

.Main_r_con table td a:hover img {
	opacity:0.6;
    filter:alpha(opacity=60);
    -ms-filter:"alpha( opacity=60 )";
    background:#fff;
}

.Main_r_con p {
	font-size:14px;
	line-height:19px;
	padding:3px 0 0 0;
}

h3.title_h3{
	margin-top: 25px;
	margin-bottom: 10px;
	color: rgba(74,98,21,1.00);
	border-bottom: 1px solid rgba(74,98,21,1.00);
	font-size: 140%;
	padding-bottom: 10px;
}

/*======== div#星 ========*/

#hoshi {
	width:250px;
	height:95px;
	padding:0 0 10px 0;
	background:url(../img/bg_review.gif) left top no-repeat;
}

#hoshi #rakuten_point_img {
	width:140px;
	float:left;
	padding:27px 0 0 15px;
}

#hoshi #rakuten_point {
	width:50px;
	padding:28px 3px 0 0;
	color:#ff7400;
	font-size:30px;
	font-family:Century;
	line-height:1;
	float:right;
}

#hoshi #hoshi_btn {
	width:176px;
	height:22px;
	margin:0 auto;
}

#hoshi #hoshi_btn a:hover img {
	opacity:0.6;
    filter:alpha(opacity=60);
    -ms-filter:"alpha( opacity=60 )";
    background:#fff;
}

/*======== div#Footer ========*/

#Footer {
	width:950px;
	display:block;
	clear:both;
	border-top:2px solid #755e47;
	margin:15px auto;
}

#Footer #f_logo {
	width:300px;
	height:60px;
	float:left;
	padding:15px 0 0 5px;
}

#Footer #f_menu {
	float:right;
}

#f_menu ul {
	list-style-type:none;
	padding:15px 0 0 0;
	display: flex;
	justify-content: flex-end;
}

#f_menu ul li {
	display:inline;
	padding:3px 15px 0 20px;
	background:url(../img/ya.gif) no-repeat 0 2px;
}

#f_menu ul li a {
	text-decoration:none;
	color:#755e47;
}

#f_menu ul li a:hover {
	text-decoration:underline;
	color:#b9ada0;
}

.txt-right {
	text-align: left !important;
}
/*oosakacampaign*/
#oosakacampaign img{
	width: 100%;
	height: auto;
}

#oosakacampaign h3{
	font-size: 140%;
	color: #E07914;
	margin: 8px 0;
}

#oosakacampaign p{
	line-height: 1.6;
}
.linkbtn{
	margin-top: 1em;
}

.linkbtn a{
	display: block;
	text-align: center;
	text-decoration: none;
	padding: 10px;
	border-radius: 30px;
	color: #000;
	transition: all 0.5s;
	background: #E07914;
	color: #fff;
	font-size: 130%;
	margin-bottom: 15px;
}

.linkbtn a:hover{
	background:#417016;
	color: #fff;
}
/*アメニティ*/
.pad5 {
    padding: 5px;	
}
.bg_color_01 {
    background-color: #DDFDF3;
}

.linktxt a {
    text-decoration: none;
}

.linktxt a:hover {
    border-bottom: 1px solid #1C3EF2;
}


.an_title {
  color: #000000;
  font-weight: normal;
  font-size: 120%;
  display: block;
  padding: 10px 0;
  background-color: #ffda9c;
  text-align: center;
  line-height: 1.5em;
}
.announcement {
  display: block;
  padding: 10px;
  /* max-width: 100%; */
  margin: 0 auto;
}
.announcement p {
  text-align: left;
  font-size: 16px;
}
.br01 {
  display: none;
}
.br02 {
  display: inherit;
}
@media screen and (max-width: 767px) {
  .br01 {
    display: inherit;
  }
  .br02 {
    display: none;
  }
  .announcement p {
    text-align: left;
  }
}
.pc_top_announce {
  /* width: calc(100% - 20px - 4px) !important; */
  margin: 0 auto 30px;
  /* padding: 20px 20px 0; */
  background: #fff;
  border: 1px solid #ccc;
}

.pc_top_announce h2 {
  margin: 0 0 20px;
}


.bold {
  font-weight: bold;
}

.bold-red {
  color: red;
  font-weight: bold;
}


.an_title {
  color: #000000;
  font-weight: normal;
  font-size: 120%;
  display: block;
  padding: 10px 0;
  background-color: #ffda9c;
  text-align: center;
  line-height: 1.5em;
}
.announcement {
  display: block;
  padding: 0 10px;
  /* max-width: 1140px; */
  margin: 0 auto 15px;
}
.announcement p {
  text-align: left;
  font-size: 14px;
}
.br01 {
  display: none;
}
.br02 {
  display: inherit;
}
@media screen and (max-width: 767px) {
  .br01 {
    display: inherit;
  }
  .br02 {
    display: none;
  }
  .announcement p {
    text-align: left;
  }
}
.pc_top_announce {
  /* width: calc(100% - 20px - 4px) !important; */
  margin: 0 auto;
  padding: 20px 20px 0;
  background: #fff;
  border: 1px solid #ccc;
}

.pc_top_announce h2 {
  margin: 0 0 1rem;
}

.tax-table {
  width: min(640px, 100%); /* 上限を付けつつレスポンシブ */
  margin: 0 auto; /* ★中央寄せのキモ */
  border-collapse: collapse;
  font-size: clamp(14px, 1.6vw, 16px);
}
.tax-table2 {
  width: min(640px, 100%);
  /* margin-bottom: 1rem; */
  border-collapse: collapse;
  font-size: clamp(14px, 1.6vw, 16px);
}
.tax-table th,
.tax-table td,.tax-table2 th,.tax-table2 td {
	text-align: left;
  border: 1px solid #e5e7eb;
  padding: 0.75em 1em;
}
.tax-table thead th,.tax-table2 th {
  background: #f8fafc;
}
.tax-table tbody th,.tax-table2 tbody th {
  background: #fcfdff;
  white-space: nowrap;
}
.tax-table tbody td,.tax-table2 tbody td {
  text-align: left;
}
@media (max-width: 480px) {
  .tax-table tbody td,.tax-table2 tbody td {
    text-align: left;
  }
}

.bold {
  font-weight: bold;
}

.bold-red {
  color: red;
  font-weight: bold;
}


/* ========== Scoped to .tt-tax-table ========== */
.tt-tax-table {
    max-width: 480px;
    color: #222;
    margin: 2rem 0;
}
.tt-tax-table__wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
/* Table base */
.tt-tax-table__table {
    width: 100%;
    table-layout: fixed;                 /* 文字が長くてもカラム幅を詰めやすく */
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #bbb;              /* 外枠（濃いめ） */
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    font-size: 14px;                     /* 横長に見せる用に小さめ */
    line-height: 1.4;
}
/* Header */
.tt-tax-table__head-top {
    background: #ddd;
}  /* 一番上の行だけ薄グレー */
.tt-tax-table__head-sub th {
    background: #fafafa;
    font-weight: normal;
}
/* Cells */
.tt-tax-table__th, .tt-tax-table__td {
    padding: 10px 12px;
    border-bottom: 1px solid #ccc;       /* 内側ボーダー（濃いめ） */
    vertical-align: middle;
}
/* 縦の区切り線 */
.tt-tax-table__th + .tt-tax-table__th, .tt-tax-table__td + .tt-tax-table__td {
    border-left: 1px solid #ccc;
}
/* 左カラム：PCは折り返さず狭めに見せる */
.tt-tax-table__th--price {
    text-align: left;
    width: 50%;
    white-space: nowrap;
}
.tt-tax-table__th--tax {
    text-align: left;
}
.tt-tax-table__th {
    text-align: left;
}
.tt-tax-table__td--price {
    text-align: left;
    white-space: nowrap;
}
/* --- 仕上げ：最後の行の下線は外枠で代替（任意） --- */
.tt-tax-table__table tbody tr:last-child .tt-tax-table__td {
    border-bottom: 0;
}
.tt-tax-table__td {
  text-align: left;
}

/* ========== Responsive (～480px) ========== */
@media (max-width: 480px) {
/* 文字が詰まり過ぎないよう微調整 */
.tt-tax-table__table {
    font-size: 13px;
}
.tt-tax-table__th, .tt-tax-table__td {
    padding: 8px 10px;
}
/* スマホでは左カラムを折り返し可に（右端切れ対策） */
.tt-tax-table__th--price, .tt-tax-table__td--price {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    width: auto;                        /* PCの30%指定を解除 */
}
}