@charset "UTF-8";
/*スライドショー*/
.slidePC {
  display: block; }

.slideSP {
  display: none; }

.swiper-container {
  width: 100%;
  height: 650px;
  position: relative; }
  .swiper-container a {
    font-size: 20px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    -webkit-text-orientation: upright;
    position: absolute;
    left: 50px;
    bottom: 50px;
    background-color: white;
    padding: 10px;
    display: block;
    transition: all 0.5s 0s ease;
    z-index: 999; }
    .swiper-container a:hover {
      background: #B5A142;
      color: white; }

.swiper-slide {
  padding-top: 0px;
  /* 画像位置の調整用 */
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat; }

/*#hero {

	width: 100%;
	height: 650px;
	background: url("../img/slide01.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;


}*/
#news {
  padding: 140px 0; }
  #news ul {
    width: 900px;
    display: block;
    margin: 30px auto; }
    #news ul li {
      position: relative;
      border-top: solid thin #808080;
      padding: 10px; }
      #news ul li:last-child {
        border-bottom: solid thin #808080; }
      #news ul li dt, #news ul li dd {
        display: inline-block;
        font-size: 18px;
        vertical-align: top; }
      #news ul li dt {
        margin-right: 50px;
        padding-left: 30px; }
      #news ul li img {
        text-align: right;
        display: inline-block;
        width: 20px;
        vertical-align: top;
        position: absolute;
        right: 50px;
        top: 10px; }

#menu {
  background: #E0F1F4;
  padding-top: 140px; }
  #menu h2 {
    font-size: 40px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    -webkit-text-orientation: upright;
    display: inline-block;
    vertical-align: top; }
  #menu .titleEn {
    font-size: 18px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: inline-block;
    vertical-align: top;
    color: #B5A142; }
  #menu .therapy {
    width: 1000px;
    display: flex;
    justify-content: space-between;
    margin: 40px auto 0 auto;
    padding: 100px 0;
    border-top: solid thin #808080;
    border-bottom: solid thin #808080; }
    #menu .therapy > div img {
      width: 520px;
      height: 380px;
      display: inline-block;
      overflow: hidden; }
    #menu .therapy > div .text {
      font-size: 20px;
      margin-top: 50px;
      line-height: 1.5;
      display: inline-block;
      width: 300px;
      margin-left: 30px; }
    #menu .therapy > div .price {
      font-size: 25px;
      text-align: right;
      line-height: 2;
      margin-top: -20px; }
      #menu .therapy > div .price span {
        font-size: 30px; }
    #menu .therapy > div a {
      text-align: right;
      margin: 20px 0 0 auto;
      font-size: 18px;
      display: table;
      padding: 10px 10px 15px 10px;
      background: black;
      color: white;
      border-radius: 5px;
      transition: all 0.5s 0s ease; }
      #menu .therapy > div a:hover {
        background: #B5A142;
        color: white; }
  #menu .facial {
    width: 1000px;
    display: block;
    vertical-align: top;
    margin: 0px auto 0 auto;
    padding: 100px 0; }
    #menu .facial > div {
      display: inline-block;
      vertical-align: top; }
      #menu .facial > div img {
        display: block;
        width: 520px;
        height: 380px;
        overflow: hidden;
        background: red;
        margin-right: 20px; }
      #menu .facial > div h2 {
        height: 400px;
        width: 40px; }
      #menu .facial > div .titleEn {
        height: 300px;
        width: 18px; }
      #menu .facial > div ul {
        margin: 50px 0 0 50px; }
        #menu .facial > div ul h3 {
          text-align: center;
          font-size: 18px;
          margin-bottom: 20px;
          margin-left: -4.1em; }
        #menu .facial > div ul li {
          margin: 0 0 15px 15px;
          font-size: 18px; }
        #menu .facial > div ul .time {
          font-size: 25px;
          display: inline-block;
          margin-left: 20px;
          margin-top: 20px; }
        #menu .facial > div ul .price {
          font-size: 30px;
          display: inline-block;
          margin-left: 20px;
          margin-top: 10px;
          display: block; }
    #menu .facial .sp img {
      display: none; }
  #menu .retreat {
    width: 1000px;
    display: flex;
    justify-content: space-between;
    margin: 40px auto 0 auto;
    padding: 100px 0;
    border-top: solid thin #808080;
    border-bottom: none; }
    #menu .retreat > div img {
      width: 450px;
      display: inline-block;
      overflow: hidden; }
    #menu .retreat > div .retreatMenu {
      width: 450px;
      border: solid thin gray;
      margin-top: 30px; }
      #menu .retreat > div .retreatMenu p:first-child {
        font-size: 24px;
        text-align: center;
        background: #E0F1F4;
        width: 250px;
        margin-top: -10px;
        display: block;
        margin: -10px auto 20px auto; }
      #menu .retreat > div .retreatMenu P:last-child {
        font-size: 13px;
        text-align: center;
        margin-top: 10px;
        padding-bottom: 30px; }
      #menu .retreat > div .retreatMenu dl dt {
        font-size: 30px;
        display: inline-block;
        line-height: 1.5;
        margin-left: 20px; }
      #menu .retreat > div .retreatMenu dl dd {
        font-size: 30px;
        display: inline-block;
        line-height: 1.5; }
    #menu .retreat > div .text {
      font-size: 20px;
      margin-top: 50px;
      line-height: 1.5;
      display: inline-block;
      width: 420px;
      margin-left: 30px;
      padding-right: 20px; }
    #menu .retreat > div .price {
      font-size: 25px;
      text-align: right;
      line-height: 2;
      margin-top: -20px; }
      #menu .retreat > div .price span {
        font-size: 30px; }
    #menu .retreat > div a {
      text-align: right;
      margin: 20px 0 0 auto;
      font-size: 18px;
      display: table;
      padding: 10px 10px 15px 10px;
      background: black;
      color: white;
      border-radius: 5px;
      transition: all 0.5s 0s ease; }
      #menu .retreat > div a:hover {
        background: #B5A142;
        color: white; }

#access {
  padding-top: 140px;
  padding-bottom: 120px; }
  #access p.subTitle {
    margin-bottom: 40px; }
  #access #information {
    display: table;
    margin: 110px auto 0 auto; }
    #access #information .shop {
      width: 230px;
      overflow: hidden;
      display: inline-block; }
    #access #information ul {
      display: inline-block;
      vertical-align: top;
      margin-left: 20px; }
      #access #information ul .logoType {
        width: 200px;
        margin-bottom: 20px; }
      #access #information ul li {
        font-size: 20px;
        line-height: 1.5; }

.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 40%;
  position: relative; }

.gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%; }

@media (max-width: 768px) {
  .swiper-container {
    width: 100%;
    height: 100vh; }
    .swiper-container a {
      font-size: 20px;
      left: 20px;
      top: 50px;
      margin: 0;
      z-index: 1;
      display: table; }
    .swiper-container .scrolldown1 {
      display: none; }

  .slidePC {
    display: none; }

  .slideSP {
    display: block; }

  /* Avoid Chrome to see Safari hack */
  /*@supports (-webkit-touch-callout: none) {
  		.swiper-container {
  			//The hack for Safari
              
  			height: -webkit-fill-available;
  
  			a {
  				left: 20px;
  			}
  		}
  	}*/
  #news {
    padding: 70px 0; }
    #news ul {
      width: 90%;
      display: block;
      margin: 30px auto; }
      #news ul li {
        border-top: solid thin #808080;
        padding: 10px 0 10px 0; }
        #news ul li:last-child {
          border-bottom: solid thin #808080; }
        #news ul li dt, #news ul li dd {
          display: inline-block;
          font-size: 14px; }
        #news ul li dt {
          margin-right: 10px;
          padding-left: 0px; }
        #news ul li img {
          text-align: right;
          display: inline-block;
          width: 20px;
          vertical-align: top;
          position: absolute;
          right: 0px;
          top: 10px; }

  #menu {
    background: #E0F1F4;
    padding-top: 70px; }
    #menu h2 {
      font-size: 40px;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      text-orientation: upright;
      -webkit-text-orientation: upright;
      display: block;
      text-align: center;
      line-height: 1.5;
      margin: 0; }
    #menu .titleEn {
      font-size: 18px;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      text-orientation: upright;
      -webkit-text-orientation: upright;
      display: block;
      text-align: center;
      color: #B5A142;
      margin-top: 10px; }
    #menu .therapy {
      width: 90%;
      display: block;
      margin: 40px auto 0 auto;
      padding: 40px 0 100px 0;
      border-top: solid thin #808080;
      border-bottom: solid thin #808080; }
      #menu .therapy > div img {
        width: 100%;
        height: auto;
        display: inline-block;
        overflow: hidden;
        margin-top: 30px; }
      #menu .therapy > div .text {
        width: 100%;
        font-size: 15px;
        line-height: 1.5;
        text-align: justify;
        margin: 30px auto 0 auto; }
      #menu .therapy > div .price {
        text-align: center;
        margin-top: 20px; }
      #menu .therapy > div a {
        text-align: center;
        margin: 20px auto 0 auto;
        font-size: 15px; }
    #menu .facial {
      width: 90%;
      display: block;
      margin: 0px auto 0 auto;
      padding: 70px 0; }
      #menu .facial > div {
        display: block;
        margin: 0 auto; }
        #menu .facial > div img {
          display: block;
          width: 100%;
          height: auto;
          overflow: hidden;
          margin: 0 auto 0 auto; }
        #menu .facial > div h2 {
          height: auto;
          width: auto;
          font-size: 35px; }
        #menu .facial > div .titleEn {
          height: auto;
          width: auto; }
        #menu .facial > div ul {
          margin: 30px auto 0 auto;
          display: block; }
          #menu .facial > div ul h3 {
            text-align: center;
            display: block;
            margin: 0 auto 20px auto;
            font-size: 18px; }
          #menu .facial > div ul li {
            margin: 0 0 15px 0px;
            font-size: 15px;
            text-align: center; }
          #menu .facial > div ul .time {
            font-size: 25px;
            display: block;
            text-align: center;
            margin: 30px 0 10px 0; }
          #menu .facial > div ul .price {
            font-size: 30px;
            text-align: center;
            margin-bottom: 30px;
            margin-left: -0.5em; }
      #menu .facial .pc img {
        display: none; }
      #menu .facial .sp img {
        display: block; }
    #menu .retreat {
      width: 90%;
      display: block;
      margin: 40px auto 0 auto;
      padding: 40px 0 100px 0;
      border-top: solid thin #808080;
      border-bottom: none; }
      #menu .retreat > div img {
        width: 100%;
        height: auto;
        display: inline-block;
        overflow: hidden;
        margin-top: 30px; }
      #menu .retreat > div .retreatMenu {
        width: 100%;
        border: solid thin gray;
        margin-top: 30px; }
        #menu .retreat > div .retreatMenu p:first-child {
          font-size: 20px;
          text-align: center;
          background: #E0F1F4;
          width: 250px;
          margin-top: -10px;
          display: block;
          margin: -10px auto 20px auto; }
        #menu .retreat > div .retreatMenu P:last-child {
          font-size: 13px;
          text-align: center;
          margin-top: 10px;
          padding-bottom: 30px;
          line-height: 1.5; }
        #menu .retreat > div .retreatMenu dl dt {
          font-size: 22px;
          display: inline-block;
          line-height: 1.5;
          margin-left: 20px; }
        #menu .retreat > div .retreatMenu dl dd {
          font-size: 22px;
          display: inline-block;
          line-height: 1.5; }
      #menu .retreat > div .text {
        width: 100%;
        font-size: 15px;
        margin: 30px auto 0 auto;
        line-height: 1.5;
        text-align: center; }
      #menu .retreat > div .price {
        text-align: center;
        margin-top: 20px; }
      #menu .retreat > div a {
        text-align: center;
        margin: 20px auto 0 auto;
        font-size: 15px; }

  #access {
    padding-top: 70px;
    padding-bottom: 70px; }
    #access p.subTitle {
      margin-bottom: 40px; }
    #access #information {
      display: table;
      margin: 50px auto 0 auto; }
      #access #information .shop {
        width: 90%;
        height: auto;
        display: block;
        margin: 0 auto; }
      #access #information ul {
        display: inline-block;
        vertical-align: top;
        margin-left: 20px; }
        #access #information ul .logoType {
          width: 200px;
          margin: 20px 0 10px 0; }
        #access #information ul li {
          font-size: 15px;
          line-height: 1.5; }

  .gmap {
    height: 300px;
    overflow: hidden;
    padding-bottom: 40%;
    position: relative; }

  .gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%; } }
