@charset "UTF-8";
/* 温泉 */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
#pagetit {
  background: url(../../onsen/img/pagetit_bg.jpg) no-repeat center;
  background-size: cover;
}

section {
  padding: 50px 0 80px;
}
section .spa_main {
  position: relative;
  max-width: 1280px;
  margin: 0 auto;
}
section .spa_main .pic {
  text-align: center;
}
section .spa_main .pic img {
  max-width: 100%;
}
section .spa_main .caption {
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -3.3em;
  margin-top: -6.8em;
}
section .spa_main .caption > p.wide_block {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 26px;
  line-height: 2;
  letter-spacing: .15em;
  text-shadow: 0 0 6px #111428, 0 0 6px #111428, 0 0 6px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428;
}
section .spa_main .caption > p.tight_block {
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: .1em;
  text-shadow: 0 0 6px #111428, 0 0 6px #111428, 0 0 6px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428;
}
section .spa_flex {
  margin-top: 50px;
}
section .spa_flex > .pic_col {
  width: 540px;
}
section .spa_flex > .txt_col {
  width: 440px;
}
section .spa_flex > .txt_col .info_table {
  margin-top: 25px;
}
section .spa_flex > .txt_col .info_table th {
  padding: 12px 10px 10px 0;
}
section .spa_flex > .txt_col .info_table td {
  padding: 12px 10px 10px 20px;
}

@media screen and (max-width: 768px) {
  section {
    padding: 30px 0 40px;
  }
  section .spa_main .pic {
    overflow: hidden;
  }
  section .spa_main .pic img {
    display: block;
    width: 140%;
    max-width: 140%;
    margin: 0 -20%;
  }
  section .spa_main .caption {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    margin-left: 0;
    margin-top: -2em;
    text-align: center;
  }
  section .spa_main .caption > p.tight_block {
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: .1em;
    text-shadow: 0 0 6px #111428, 0 0 6px #111428, 0 0 6px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428, 0 0 10px #111428;
  }
  section .spa_flex {
    margin-top: 15px;
  }
  section .spa_flex > .pic_col {
    width: 100%;
    margin-top: 20px;
  }
  section .spa_flex > .txt_col {
    width: 100%;
  }
  section .spa_flex > .txt_col .info_table {
    margin-top: 20px;
  }
  section .spa_flex > .txt_col .info_table th {
    padding: 10px;
  }
  section .spa_flex > .txt_col .info_table td {
    padding: 10px;
  }
}
@media screen and (max-width: 320px) {
  section .spa_main .caption > p.tight_block {
    font-size: 18px;
  }
}
/* ---------------------------------------------------
	sec1
------------------------------------------------------ */
#sec1 {
  background: url(../img/bg_common_02.png) center, url(../../onsen/img/sec1_bg.jpg) center bottom 60px;
}
@media (min-width: 2001px) {
  #sec1 {
    background-size: auto, 100%;
  }
}

/* ---------------------------------------------------
	sec2
------------------------------------------------------ */
#sec2 {
  padding-bottom: 16%;
  background: url(../../onsen/img/sec2_bg.jpg) no-repeat center bottom;
  background-size: 100%;
}

@media screen and (max-width: 768px) {
  #sec2 {
    padding-bottom: 20%;
    background-size: 150%;
  }
}
/* ---------------------------------------------------
	sec3
------------------------------------------------------ */
#sec3 .spa_main .caption {
  top: 47%;
}
#sec3 .txt {
  max-width: 750px;
  margin: 50px auto 0;
}

@media screen and (max-width: 768px) {
  #sec3 .spa_main .caption {
    top: 50%;
  }
  #sec3 .txt {
    margin: 15px auto 0;
  }
}
/* ---------------------------------------------------
	sec4
------------------------------------------------------ */
#sec4 {
  max-width: 1600px;
  margin: 0 auto;
  background: url(../../onsen/img/sec4_bg.png) no-repeat bottom 30% left 4%;
}
#sec4 .spa_flex .main_tit {
  text-align: left;
}
#sec4 .spa_flex > .pic_col {
  position: relative;
  width: 640px;
  margin-right: -120px;
}
#sec4 .spa_flex > .txt_col {
  width: 430px;
}

@media screen and (max-width: 768px) {
  #sec4 {
    background: url(../../onsen/img/sec4_bg.png) no-repeat top 4% left 90%;
    background-size: 20%;
  }
  #sec4 .spa_flex {
    margin-top: 0;
  }
  #sec4 .spa_flex .main_tit {
    text-align: center;
  }
  #sec4 .spa_flex > .pic_col {
    width: 100%;
    margin-right: 0;
  }
  #sec4 .spa_flex > .txt_col {
    width: 100%;
  }
  #sec4 .spa_flex > .txt_col > .pic_col {
    margin-bottom: 15px;
  }
}
/* ---------------------------------------------------
	sec5
------------------------------------------------------ */
#sec5 {
  margin-top: 80px;
  padding: 0 0 150px;
}
#sec5 .info_table th,
#sec5 .info_table td {
  line-height: 2;
}

@media screen and (max-width: 768px) {
  #sec5 {
	margin-top: 40px;
    padding: 0 0 40px;
  }
  #sec5 .info_table th,
  #sec5 .info_table td {
    line-height: 1.65;
  }
}
