@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : common.css
 author     : Ability Consultant
 style info : 基本・共通設定
=================================================================== */
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
* {
  -webkit-appearance: none;
}
html {
  max-width: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-size: 62.5%;
  line-height: 1.5;
}
body {
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  background-color: #fff;
  color: #000000;
  -webkit-text-size-adjust: none;
}
.ie body {
  font-size: 98%;
}
body a {
  color: #242424;
}
.mouse body a:hover,
.touch body a.touchstart {
  text-decoration: none;
}
body img {
  max-width: 100%;
  -webkit-touch-callout: none;
}
p.img.sp_none {
  text-align: center;
}
input,
select,
textarea {
  font-size: 100%;
}
html.ie8 .view_tab,
html.ie8 .view_tab_sp,
html.ie8 .view_sp {
  display: none !important;
}

@media only screen and (min-width: 1101px) {
  body .view_tab-sp,
  body .view_tab {
    display: none !important;
  }
}
@media print {
  body .view_tab-sp,
  body .view_tab {
    display: none !important;
  }
}
.ie8 body .view_tab-sp,
.ie8 body .view_tab {
  display: none !important;
}
@media only screen and (min-width: 768px) {
  body .view_sp {
    display: none !important;
  }
}
@media print {
  body .view_sp {
    display: none !important;
  }
}
.ie8 body .view_sp {
  display: none !important;
}
@media only screen and (max-width: 1100px) {
  body .view_pc {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body .view_pc-tab,
  body .view_tab {
    display: none !important;
  }
}
.mouse .over {
  -webkit-transition: opacity 200ms ease-in;
  -moz-transition: opacity 200ms ease-in;
  -o-transition: opacity 200ms ease-in;
  transition: opacity 200ms ease-in;
}
.mouse .over:hover,
.touch .over.touchstart {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.touch .over {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.touch .over.touchend {
  -webkit-transition-delay: 200ms;
  -moz-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  transition-delay: 200ms;
}
/*----------------------------------------
	font
----------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6,
th {
  font-weight: normal;
}
body,
pre,
input,
textarea,
select {
  font-family: Arial, Verdana, sans-serif;
}
.min {
  font-family: "Noto Serif", serif;
  font-weight: 400;
}
em {
  font-style: normal;
}
/* スマートフォンのデフォルトブラウザ、Safariのフォーム装飾の打消し */

/* -----------------------------------------------------------
	#下層メインビジュアル
----------------------------------------------------------- */
.mainvisual_ttl {
  font-weight: 300;
}

/* -----------------------------------------------------------
	.inner
----------------------------------------------------------- */
@media only screen and (min-width: 0px) {
  .inner {
    width: auto;
  }
}

/* -----------------------------------------------------------
	テーブル
----------------------------------------------------------- */
table.tbl_basic {
  width: 100%;
  border-top: 1px solid #9aa7c1;
  border-bottom: 1px solid #9aa7c1;
}
table.tbl_basic tr th,
table.tbl_basic tr td {
  padding: 10px 9px;
  vertical-align: top;
  font-weight: normal;
  box-sizing: border-box;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) and (max-width: 1100px) {
  table.tbl_basic tr th,
  table.tbl_basic tr td {
    padding: 10px;
  }
}
@media only screen and (max-width: 767px) {
  table.tbl_basic tr th,
  table.tbl_basic tr td {
    padding: 0.5em;
    vertical-align: middle;
  }
}
@media only screen and (min-width: 1101px) {
  table.tbl_basic tr th,
  table.tbl_basic tr td {
    font-size: 116%;
    vertical-align: middle;
  }
}
@media print {
  table.tbl_basic tr th,
  table.tbl_basic tr td {
    font-size: 116%;
  }
}
.ie8 table.tbl_basic tr th,
.ie8 table.tbl_basic tr td {
  font-size: 116%;
}
@media only screen and (min-width: 768px) and (max-width: 1100px) {
  table.tbl_basic tr th,
  table.tbl_basic tr td {
    font-size: 108%;
    vertical-align: middle;
  }
}
table.tbl_basic tr th {
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
}
table.tbl_basic tr th span {
  display: block;
  padding: 0em 0.5em;
  background: #4f9d82;
  color: #fff;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  -ms-border-radius: 2em;
  -o-border-radius: 2em;
  border-radius: 2em;
  letter-spacing: 0.06em;
}

/* -----------------------------------------------------------
	↓↓ここから共通部品のヘッダー
----------------------------------------------------------- */
/*スマートフォン*/
@media screen and (min-width: 0px) {
  /* =======================
	　header
========================== */
  header .pc_gnav nav ul,
  header .pc_gnav2 nav ul {
    width: 583px;
  }
  header .pc_gnav nav ul li,
  header .pc_gnav2 nav ul li {
    width: 75px;
    padding: 0 15px;
    margin: 24px 0px;
    font-size: 1.3rem;
  }
  header .pc_gnav nav ul .rest,
  header .pc_gnav2 nav ul .rest {
    width: 120px;
  }
  header .pc_gnav nav ul li:last-child,
  header .pc_gnav2 nav ul li:last-child {
    width: 113px;
  }
  .tel_box dt {
    font-size: 1.8rem;
  }
  #top-head ul.top_header_box,
  #top-head #global-nav {
    font-size: 1.4rem;
  }
  /* =======================
	多言語導線
========================== */
  .language {
    color: #fff;
    font-size: 1.6rem;
    text-align: center;
    margin: 20px 0;
  }
  .language dt a:link,
  .language dt a:visited {
    color: #fff;
  }
  /* =======================
	お電話でのご予約
========================== */
  #lnk_ctc {
    padding-top: 0;
    margin-top: 0;
  }
  .tel_box {
    background-color: #f0f0f0;
    padding: 20px 0;
    text-align: center;
    margin: 0;
  }
  .tel_box dt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .tel_box dd {
    font-size: 2.4rem;
    width: 180px;
    margin: 0 auto;
    padding: 0 0 0 20px;
    background: url(/akabane/img/common/tel_img_001.png) no-repeat 24px 6px;
    background-size: 7%;
  }
  .tel_box dd a {
    color: #ab8334;
  }
  input,
  select {
    vertical-align: middle;
    border: 1px solid #999999;
    padding: 2px;
  }
  input,
  textarea {
    margin: 0;
    padding: 0;
    text-align: center;
    border: 1px solid #999999;
  }
}

/* タブレット */
@media screen and (min-width: 768px) {
  /* =======================
	　header
========================== */
  header {
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 5;
  }
  header #logo {
    width: 135px;
    left: 1%;
    position: absolute;
    z-index: 3;
  }
  header #logo a {
    display: block;
    width: 100%;
    margin: 0;
  }
  header .sp_none a {
    color: #fff;
  }
  header .pc_lnav {
    width: 100%;
    /*	background-color: #000;*/
  }
  header .pc_lnav nav {
    width: 100%;
  }
  header .pc_lnav nav ul {
    position: inherit;
    right: 0;
    font-size: 1rem;
    padding: 10px 0;
    text-align: right;
  }
  header .pc_lnav nav ul li {
    padding: 5px 15px;
    display: inline;
  }
  header .pc_gnav {
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
  }
  header .pc_gnav nav {
    width: 100%;
    margin: 0 auto;
    position: relative;
    height: 62px;
  }
  header .pc_gnav nav ul {
    position: absolute;
    right: 0;
    font-size: 1.4rem;
    background-color: transparent;
    width: 583px;
  }
  header .pc_gnav nav ul li {
    padding: 0;
    margin: 24px 0;
    width: 115px;
    float: left;
    text-align: center;
    /* border-left: #666 solid 1px; */
  }
  header .pc_gnav nav ul li:last-child {
    background-color: #8e6126;
    padding: 0;
    margin: 0;
    width: 115px;
  }
  header .pc_gnav nav ul li:last-child a {
    display: block;
    padding: 24px 0px;
  }
  header .pc_gnav nav ul li:before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 15px;
    top: 37%;
    background-color: #666;
  }
  header .pc_gnav nav ul .rest {
    width: 120px;
  }
  header .pc_lnav nav {
    /*    height: 20px;*/
    margin: 0 auto;
    position: relative;
  }
  #container .topicpath {
    display: block;
    margin-bottom: 30px;
    font-size: 1.1rem;
  }
  /* =======================
	 pc_gnav #pc_gnav2
========================== */
  header .pc_lnav2 {
    width: 100%;
  }
  header .pc_lnav2 nav {
    width: 100%;
  }
  header .pc_lnav2 #logo {
    position: fixed;
  }
  header .pc_lnav2 nav ul {
    position: absolute;
    right: 0;
    font-size: 1rem;
    padding: 10px 0;
    width: 440px;
    text-align: right;
  }
  header .pc_lnav2 nav ul li {
    padding: 5px 15px;
    display: inline;
  }
  header .pc_gnav2 {
    width: 100%;
    background-color: #000;
    position: fixed;
    top: 0;
  }
  header .pc_gnav2 nav {
    width: 100%;
    margin: 0 auto;
    position: relative;
    height: 60px;
  }
  header .pc_gnav2 nav ul {
    position: absolute;
    right: 0;
    font-size: 1.4rem;
    background-color: transparent;
    width: 569px;
  }
  header .pc_gnav2 nav ul li {
    padding: 0;
    margin: 24px 0;
    width: 115px;
    float: left;
    text-align: center;
    /* border-left: #666 solid 1px; */
  }
  header .pc_gnav2 nav ul li:last-child {
    background-color: #8e6126;
    padding: 0;
    margin: 0;
    width: 99px;
  }
  header .pc_gnav2 nav ul li:last-child a {
    display: block;
    padding: 23px 0px;
  }
  header .pc_gnav2 nav ul li:before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 15px;
    top: 37%;
    background-color: #666;
  }
  header .pc_gnav2 nav ul .rest {
    width: 120px;
  }
  header .pc_lnav2 nav {
    height: 30px;
    margin: 0 auto;
    position: relative;
  }
  .pc_gnav2 nav #logo img {
    max-width: 126%;
    margin: 10px 0 0 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  #header .scroll {
    bottom: 30px;
  }
}

/* タブレット（横	）,PCページ */
@media screen and (min-width: 1024px) {
  /* =======================
	　header
========================== */
  header {
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 5;
  }
  header #logo {
    width: 219px;
    left: 0;
    position: absolute;
    z-index: 5;
  }
  header #logo a {
    display: block;
    width: 100%;
    margin: 0;
  }
  header .sp_none a {
    color: #fff;
  }
  header .pc_lnav {
    width: 100%;
    background-color: #000;
  }
  header .pc_lnav nav {
    width: 1000px;
  }
  header .pc_lnav nav ul {
    position: inherit;
    right: 0;
    font-size: 1.1rem;
    padding: 10px 0;
    text-align: right;
  }
  header .pc_lnav nav ul li {
    padding: 5px 15px;
    display: inline;
  }
  header .pc_gnav {
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
  }
  header .pc_gnav nav {
    width: 1000px;
    margin: 0 auto;
    position: relative;
    height: 62px;
  }
  header .pc_gnav nav ul {
    position: absolute;
    right: 0;
    font-size: 1.4rem;
    background-color: transparent;
    width: 745px;
  }
  header .pc_gnav nav ul li {
    padding: 0;
    margin: 24px 0;
    width: 150px;
    float: left;
    text-align: center;
    /* border-left: #666 solid 1px; */
  }
  header .pc_gnav nav ul li:last-child {
    background-color: #8e6126;
    padding: 0;
    margin: 0;
    width: 140px;
  }
  header .pc_gnav nav ul li:last-child a {
    display: block;
    padding: 24px 0;
  }
  header .pc_gnav nav ul li:before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 15px;
    top: 35%;
    background-color: #666;
  }
  header .pc_gnav nav ul .rest {
    width: 150px;
  }
  header .pc_lnav nav {
    margin: 0 auto;
    position: relative;
  }
  #container .topicpath {
    display: block;
    margin-bottom: 30px;
    font-size: 1.1rem;
  }
  /* =======================
	 pc_gnav #pc_gnav2
========================== */
  header .pc_lnav2 {
    width: 100%;
    background-color: #000;
  }
  header .pc_lnav2 nav {
    width: 1000px;
  }
  header .pc_lnav2 #logo {
    position: fixed;
  }
  header .pc_lnav2 nav ul {
    position: absolute;
    right: 0;
    font-size: 1rem;
    padding: 10px 0;
    width: 440px;
    text-align: right;
  }
  header .pc_lnav2 nav ul li {
    padding: 5px 15px;
    display: inline;
  }
  header .pc_gnav2 {
    width: 100%;
    background-color: #000;
    position: fixed;
    top: 0;
  }
  header .pc_gnav2 nav {
    width: 1000px;
    margin: 0 auto;
    position: relative;
    height: 61px;
  }
  header .pc_gnav2 nav ul {
    position: absolute;
    right: 0;
    font-size: 1.4rem;
    background-color: transparent;
    width: 745px;
  }
  header .pc_gnav2 nav ul li {
    padding: 0;
    margin: 24px 0;
    width: 150px;
    float: left;
    text-align: center;
    /* border-left: #666 solid 1px; */
  }
  header .pc_gnav2 nav ul li:last-child {
    background-color: #8e6126;
    padding: 0;
    margin: 0;
    width: 140px;
  }
  header .pc_gnav2 nav ul li:last-child a {
    display: block;
    padding: 23.5px 0;
  }
  header .pc_gnav2 nav ul li:before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 15px;
    top: 38%;
    background-color: #666;
  }
  header .pc_gnav2 nav ul .rest {
    width: 150px;
  }
  header .pc_lnav2 nav {
    height: 30px;
    margin: 0 auto;
    position: relative;
  }
  .pc_gnav2 nav #logo img {
    max-width: 88%;
    margin: 5px 0 0 0;
  }
}
/* -----------------------------------------------------------
	↓↓ここから共通部品のフッター
----------------------------------------------------------- */
/* -----------------------------------------------------------
	footer
----------------------------------------------------------- */
.sp_footer_menu {
  font-size: 1.5rem;
}
#acMenu dd li a {
  line-height: 2;
  font-size: 1.5rem;
}
#acMenu dd li img {
  width: 11px;
  vertical-align: baseline;
  margin-bottom: -1px;
}
footer .pc_footer_menu ul li img {
  width: 11px;
  vertical-align: baseline;
  margin-bottom: -1px;
}
footer .hotel_list li p {
  text-align: center;
  margin: auto;
  width: 58%;
}
footer .grouphotels {
  border-bottom: 1px solid #fff;
  border-top: 1px solid #fff;
  padding: 40px 0 10px;
  margin-bottom: 30px;
}
@media screen and (min-width: 0px) {
  footer .hotels {
    margin-bottom: 0;
    border-bottom: none;
  }
  footer .hotel_list {
    width: 95%;
    margin: 0 auto 20px;
  }
  footer .lang ul {
    border: #fff 1px solid;
    margin: 0 auto;
    width: 45%;
  }
  footer .lang li a {
    color: #fff;
    padding: 15px 0;
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  footer .grouphotels {
    padding: 40px 0 10px;
  }
  footer .hotel_list {
    width: 100%;
    margin: 0;
  }
  footer .hotel_list h3 {
    border-bottom: #adadad solid 1px;
    padding-bottom: 5px;
    margin-bottom: 15px;
    padding-left: 0;
  }
  .tel_box {
    margin: 0 0 4%;
  }
  .tel_box dt {
    font-size: 1.8rem;
  }
  .tel_box dd {
    font-size: 2.4rem;
    width: 250px;
    margin: 0 auto;
    padding: 0 0 0 20px;
    background: url(/akabane/img/common/tel_img_001.png) no-repeat 24px 6px;
    background-size: 7%;
  }
  footer .hotel_list {
    width: 95%;
    margin: 0 auto 15px;
  }
  footer .hotel_list li p {
    width: 65%;
  }
  footer .hotel_info a {
    padding: 0;
  }
  footer .hotel_list div {
    width: 100%;
    display: flex;
    justify-content: left;
  }
  footer .lang ul {
    width: 172px;
  }
}
@media screen and (max-width: 768px) {
  .tel_box dd {
    width: 250px;
  }
}
@media screen and (min-width: 768px) and (max-width: 11100px) {
  footer {
    padding-bottom: 0;
  }
  footer .hotels {
    border-bottom: none;
    margin-bottom: 0;
  }
  footer .hotel_list li p {
    width: 100%;
    text-align: left;
  }
  footer .hotel_info a {
    padding: 0;
  }
}
@media only screen and (min-width: 1024px) {
  footer .lang {
    margin: 15px 0 5px;
  }
  footer .hotel_list h3 a {
  }
  footer .hotel_info a {
    padding: 0;
  }
  .hotels_box {
    max-width: 1000px;
    margin: auto;
  }
  footer .hotels {
    border-bottom: none;
    margin: auto;
  }
  footer .hotels:first-child {
    padding-bottom: 10px;
  }
  footer .hotel_list h3 {
    border-bottom: #adadad solid 1px;
    padding-bottom: 5px;
    margin-bottom: 15px;
  }
  footer .lang {
    margin: 0 auto;
  }
  footer .hotel_list dl {
    padding: 0 15px 0 0;
  }
  footer .hotel_list dt.area {
    font-size: 1.3rem;
  }
  footer .hotel_list li {
    font-size: 1.2rem;
  }
  footer .hotel_list div {
    width: 100%;
  }
  footer .hotel_list {
    width: auto;
  }
}
