/* Common  */

img.header-img { max-width: 100%; height: auto; margin-bottom: 35px;}
img.minstagram  { width: 80px; height: auto; vertical-align: middle;}

.header {width: 100%;margin:0;padding:0;display:block;}
.top_header {width:100%;margin:0 auto;padding:0;background:#fff; }

.body_detail  {margin: 0; width:100%; position: relative; z-index: 0;}

.bg-w {background: #fff; position: relative; z-index: -9999;}
.bg-g {background: #f7f7f7;position: relative; z-index: -9999;}

.outer {margin: 0; width:100%; padding: 40px 0; display: block;pointer-events: auto; box-sizing: border-box; }

.header_inner h1, .body_inner h1  {font-family: 'Sawarabi Mincho', sans-serif; position: relative;display: table; font-weight: 400; }
.header_inner h1::after, .body_inner h1::after {z-index: -1;position:absolute; content:"";background-color:#eee8dd; width:100%;}

/* Monitor @2021/06/20*/

.writer { font-style:italic; padding:10px 0;}
.monitor-left {width: calc(100% - 320px) ; margin: 20px 0 0 0; }
.monitor{ }

.monitor_box {position: relative;width:100%; border: 1px solid #efefef; background: #fefefe; border-radius:3px; box-shadow: 0 0 3px 1px #888; margin: 40px 0;  padding:20px 25px; box-sizing: border-box;}
.monitor_box .monitor p {font-size:13px; font-weight:bold; line-height:20px; width: 100% ; border-top: solid 1px #aaa ; padding: 5px 10px;}
.monitor_box .monitor p.last {border-bottom: solid 1px #aaa ;  }
.monitor_box .monitor p.odd  {background: #eee ; }
.monitor_box .monitor-left p.kome {font-size:12px; line-height:20px; margin:5px 0;}
.monitor_box .monitor-left p.mcontact {font-size:18px; font-weight:bold; line-height:25px;margin-bottom:9px;}
.monitor_box .monitor-photo {position:absolute; top: 50%;-webkit-transform: translateY(-50%); transform: translateY(-50%); right:25px; width:290px; height:250px; background: url('../index_files/monitor.jpg');background-size:100% 100%;}


.header_inner .right p {margin-bottom: 15px;}
.body_inner .right p   {margin-bottom: 15px;}

.right h3 { font-size: 15px; font-weight: bold; margin: -5px 0 0 0;  }
.ad_note  { font-size: 11px; line-height: 17px; margin: 3px 0 20px 10PX;}

.right .subhead { width: 100%; text-align: left; margin: 0; padding: 10px 0; font-family: 'Sawarabi Mincho', sans-serif; font-size: 20px; color:#A18553;}

.right h2.heading {margin: 10px 0; }
.right .subhead1 h2.heading {position: relative; padding-left: 35px;}
.right .subhead1 h2.heading::before, .right .subhead1 h2.heading::after {content: "□"; position: absolute; width:4px; height: 4px;}
.right .subhead1 h2.heading:before { left:0; top:-3px;}
.right .subhead1 h2.heading:after  { left: 5.5px; top: 3.5px;}

.right p a  {color: blue;}
.left table {line-height:1.6;font-size: 11px; margin-top:20px; border-collapse: collapse;box-sizing: border-box; }
.left table td {background:#fff; padding: 2px 5px; border: 1px solid #d4c5ab; box-sizing: border-box;}
.left table td.lt {background:#A18553; width:200px; color:#fff;}
.left table td.th {background:#A18553; text-align:center; color:#fff;}
.left table td.prc {color:red; padding: 0 10px 0 80px; }
.left table td.incl_serv { padding: 5px 10px 5px 15px; }

.right img.anyca  { width: 100%; height: auto; margin:10px 0 0 0;}
.right img.e-photo  { width: 32%; height: auto; margin:10px 1% 0 0; display: inline-block;}
.right img.e-photo:last-child  { margin-right: 0;}

.right .table_box { width: 100%; height: auto; margin: 0 0 30px 0; padding:0 ; }

.right .youtube { position: relative; padding: 20px; font-size: 12px; background:#e6e3d6 ; margin: 0 0 20px 0; box-sizing: border-box;}
.right .youtube::before, .right .youtube::after { content: '';position: absolute;	width: 100%; height: 8px;	background-image:
repeating-linear-gradient(45deg, #A18553 0px, #A18553 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%),
repeating-linear-gradient(135deg, #A18553 0px, #A18553 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);	background-size: 8px 8px;}

.right .youtube::before { top: 0; left: 0 ; }
.right .youtube::after { bottom: 0; left: 0 ; }
.right .youtube img { width: 100%; height: auto; margin-top:10px; }
.right .youtube a { color: blue; }

.glid_outer  { border: solid 1px #000; padding:10px; margin:20px 2px 0 2px; box-sizing: border-box; border-radius: 8px; box-shadow: 0 0 3px 1px #888;}
.glid { background-image: linear-gradient(0deg, transparent 31px, #ddd 32px),linear-gradient(90deg,  transparent 31px, #ddd 32px);
background-size: 32px 32px; padding: 0 20px 5px 20px;  box-sizing: border-box; border-radius: 4px;border: solid 1px #ddd; position: relative;}
.glid img  { position: absolute; top:0; right:0; width:100% ; height:100%;z-index: -7;}
.glid::before {content: ""; width: 100%; height: 100%; display: block; background: linear-gradient(to left, rgba(255,255,255,0.0) 0, #fff 100%);
position: absolute; top: 0; left: 0;z-index: -6;}

.header_inner ol  { margin: 8px 0 8px 22px; list-style-type: none; width:80%; counter-reset: number; ba}
.header_inner ol li { margin: 6px 0 6px 0; padding: 0 0 0 8px;line-height: 25px; position: relative; font-size: 17px; color:#fff;letter-spacing : 4px;
text-shadow :	1px  1px 3px rgba(0, 0, 0, 0.56), -1px  1px 3px rgba(0, 0, 0, 0.56), 1px -1px 3px rgba(161, 133, 83, 0.56),
-1px -1px 3px rgba(161, 133, 83, 0.56), 1px  0px 3px rgba(161, 133, 83, 0.56), 0px  1px 3px rgba(161, 133, 83, 0.56),
-1px  0px 3px rgba(161, 133, 83, 0.56), 0px -1px 3px rgba(161, 133, 83, 0.56); }

.header_inner ol li::before {
counter-increment: number; content: counter(number); color:#fff; font-weight: bold; font-size: 11px; position: absolute; }
.header_inner ol li:nth-child(1)::before,.header_inner ol li:nth-child(2)::before,.header_inner ol li:nth-child(3)::before,.header_inner ol li:nth-child(4)::before,.header_inner ol li:nth-child(5)::before,
.header_inner ol li:nth-child(6)::before,.header_inner ol li:nth-child(7)::before,.header_inner ol li:nth-child(8)::before,.header_inner ol li:nth-child(9)::before
{top:0; left:-17px; }
.header_inner ol li:nth-child(10)::before,.header_inner ol li:nth-child(11)::before,.header_inner ol li:nth-child(12)::before
{top:0; left:-20px; }

.header_inner ol li::after { z-index: -5;position: absolute;top:0; left:-25px; content: "\f111"; font-family: "Font Awesome 5 Free"; color:#A18553;font-weight: bold; font-size: 22px; }
.header_inner ol li::before, .header_inner ol li::after {text-shadow : none; letter-spacing : normal;}

.form { width: 100%; height: 100px; padding:0 ; margin:0;text-align:center;position: relative;}
.form h1 {white-space: nowrap;position:absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); margin: auto; display: block;color:#fff;}
.delica-5 { margin: 0; }
.form { background:#153952; }

.terms_box  {max-width:850px; margin:30px auto;text-align: left;padding:0 0 10px 0;background:#fff;display:block;border-radius:0 5px;
	background-color:#fff;border:solid #d4c5ab;border-width:0 1px 1px 1px; box-sizing:border-box;}
.terms_box h2 {font-weight:400; font-size: 14px; line-height:1.2;color:#fff;margin:0px;text-align:left;background:#A18553;padding:8px 25px;}
.terms_box h3 {font-size:14px;font-weight:600;text-align:left;margin:10px 0 -10px 20px;border:none;color:#333;}

.terms_box p {line-height:1.6;font-size: 15px; color:#333;margin: 10px 20px 0 20px;}
.no_wrap  { white-space: nowrap }

.left_box     { color: #fff; }
.left_box h3  { letter-spacing: 5px; text-transform: uppercase;margin: 0; font-weight: 400; }
.left_box p   { font-weight: 400; }

table.ikamper-t { margin: 15px auto 5px auto; width: 100%; border-collapse: collapse; table-layout: fixed; box-sizing: border-box;}
table.ikamper-t tr td  { border: 1px solid #eee; text-align: center; font-weight: 400; vertical-align: middle; }
table.ikamper-t td.rental { background: #f18d2b; color: #fff;}
table.ikamper-t td.sales { background: #ea5433; color: #fff;}
table.ikamper-t td.hours { background: #facb73;}
table.ikamper-t td.cond { background: #f39b77;}
table.ikamper-t td.ikamperp { background: #fffde4; color: red;}

/*input:focus, select:focus, textarea:focus {border:1px solid #A7FF61;outline:0;background:#fff;}
input, select, textarea {font-size:14px;resize: vertical;overflow:hidden;background-color:#fff; background-image:-webkit-linear-gradient(to top, #fff 0%, #dfe0d9 100%);
background-image:linear-gradient(top, #fff 0%, #dfe0d9 100%);
box-sizing: border-box;border-radius:2px;border:1px solid #c0c0c0;padding:15px;margin:0;color:#333;}

input[type=text], select{width:100%;}
input::placeholder, textarea::placeholder {color: #333;}
*/
.ui-datepicker { font-size:17px !important}

.hitem-line   { position: relative; margin:0 ; box-sizing: border-box;}
.hitem-box    { width: 100%; height: 100%; background:#fff; border-radius: 2px; -webkit-transition:2s; -moz-transition:2s;-o-transition:2s;-ms-transition:2s;transition:2s;}
.hitem-bg-box { overflow: hidden; }

.hitem-info {padding:5px 10px;}
.hitem-info h2 { font-weight:600; line-height: 15px; margin: 8px 0 0 0; font-size:11px; color: #A18553;}
.hitem-info h3 { font-weight:400; line-height: 24px; margin: 8px 0 -2px 0; font-size:16px;font-weight: bold;}
.hitem-line p { display:block; margin-top: 5px ;width:100%;text-align:left;}
.hitem-line a { color: #333 ; text-decoration:none; }

.hitem-box .btna, .hitem-box .btnb {border: none; border-radius: 2px;  position:absolute;bottom:22px; background-color: #A18553; color:#fff;
box-shadow: 0 2px 2px 0 rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
-webkit-tap-highlight-color: transparent; transition: .3s ease-out;}

#swiper01 .swiper-pagination-bullet { width: 20px; margin-right:15px; height: 20px; text-align: center; line-height: 20px; font-size: 13px; color:#000; background: #fff;}
#swiper01 .swiper-pagination-bullet-active { color:#000; background:#fff; }

.inquiry_box {position: relative;width:100%; border: 1px solid #efefef; background: #fefefe; border-radius:3px; box-shadow: 0 0 3px 1px #888; margin: 40px 0; box-sizing: border-box;}
.inquiry_box .button {position:absolute; }
.ge_outer i {margin-right:10px;}
.ge_outer {display:inline-block;position:relative;text-align: center; width:260px; height:50px!important; margin:0px;
  border: 1px solid #153952;background: #153952; border-radius:3px; line-height:50px;font-weight:bold; box-shadow: 3px 3px 3px gray; transition: 0.5s; }
.ge_outer a  {color: #fff; text-decoration: none; width:100%; height:100%;position:absolute; top:0; left:0;}
.ge_outer a:hover {color: #153952; }
.ge_outer:hover  {background: #fff;transform: scale(1.02,1.02); border: 1px solid #153952;}

input[name=btn_confirm],
input[name=btn_submit],
input[name=btn_back],
input[name=btn_back] {border-radius:3px; overflow: hidden; padding: 20px 0 ;color: #fff;background: #153952 ;box-shadow: 3px 3px 3px gray; }
input[name=btn_confirm]:hover,
input[name=btn_submit]:hover,
input[name=btn_back]:hover,
input[name=btn_back]:hover {transform: scale(1.05,1.05); color: #153952;background: #fff ;}

.service-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2rem;
}

.service-item-a {
    color: #323232;
    text-decoration: none;
}
.p-service__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    font-weight: 700;
    width: 100%;
}
.p-service__label2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    font-size: 90%;
    width: 100%;
}

.service-item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	text-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    width: calc(33.3333333333% - 1.35rem);
    border-bottom: 0.1rem solid gray;
	width: 320px;
}

.lightbox-overlay {
  /* 初期状態では非表示 */
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s, visibility 0.3s; /* フェードイン・アウトのアニメーション */

  /* オーバーレイの基本スタイル */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8); /* 半透明の背景 */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

/* :target擬似クラスで表示状態を切り替える */
.lightbox-overlay:target {
  visibility: visible;
  opacity: 1;
}

.lightbox-content {
  max-width: 90%;
  max-height: 90%;
  overflow: auto; /* 画像がはみ出す場合にスクロール */
  background: #fff;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  transform: scale(0.8); /* ポップアップ時の初期サイズ */
  transition: transform 0.3s ease-out;
}

.lightbox-overlay:target .lightbox-content {
  transform: scale(1); /* ポップアップ時に元のサイズに */
}

.lightbox-content img {
  display: block; /* 余白をなくす */
  max-width: 100%;
  height: auto;
}

.lightbox-close {
  position: absolute;
  top: 15px;
  right: 25px;
  color: #fff;
  font-size: 40px;
  text-decoration: none;
  line-height: 1;
  z-index: 1001; /* 画像より手前に表示 */
}

.lightbox-close:hover {
  color: #ccc;
}

/* オーバーレイクリックで閉じるための設定 (HTMLのa href="#_") */
.lightbox-overlay .lightbox-close-area { /* オーバーレイ全体をクリックで閉じるための要素を別途用意する場合 */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
}

@media screen and (min-width: 911px) and (max-width: 1500px) {

.package-card  { height: 480px; }

}

@media screen and (min-width: 769px) and (max-width: 910px) {

.package-card  { height: 520px; }

}

@media screen and (max-width:359px) {

img.top_logo {float:left;margin:4px 0 0 5px;width:70px;}
.w100 img { width:100%; }

.package-card {width: 100%; height: 440px; margin: 0 3px 3px 3px; padding:0; box-sizing: border-box;}

}


@media screen and (min-width:769px) {

img.top_logo {display:block;position:absolute;top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);left:0;}

.swiper-container { width:100%; height:auto; overflow: hidden; }
.swiper-slide { width:100%; height:auto;}
.swiper-slide img { width:100%; height:auto;}

.slide-img {width: 100%; position:relative; z-index:-20;}
.slide-content {position:absolute;bottom:20px;left:0;right:0; background: orange; border-radius: 2px;
font-family: 'Sawarabi Mincho', sans-serif; transition: 1.5s;height:80px;line-height: 80px}
.slide-content h1 {color: #FFF; font-size: 2.3vw; text-shadow: 2px 2px rgba(0,0,0,0.3);}
.slide-content:hover  {background: blue;}

.caption {z-index: 100;
position: absolute; top: 0; right: 0; width:50%; height:100%; font-family: 'Sawarabi Mincho', sans-serif;
color: #fff; font-size: 2.3vw; font-weight: bold; line-height: 1.3; background: rgba(161, 133, 83, 1.0); padding: 20px 0; }
.caption p { margin-top:27%}

@keyframes zoom { 0% { transform: scale(1); } 100% { transform: scale(1.1); }}
.swiper-slide-active .zoom img { animation: zoom 10s linear 0s 1 normal both; }
.varied { display:block; }

/* Top Menu */

.menu_base ol {list-style: none; padding: 0;margin: 0;z-index:101;}
.menu_base ol:first-child {width: 100%;max-width: 1200px;margin: 0 auto;height:70px;display: grid; grid-template-columns: repeat(5, 1fr);align-items: center;box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.3);}
.menu-item_base {display: flex;align-items: center;justify-content: center;
border-right: 1px solid rgba(255, 255, 255, 0.15);border-top: 2px solid #333;position: relative;transition: background 0.3s ease-in-out;}

.menu-item_base .sub-menu > a {color: red;}
.menu-item_base:first-child {border-left: 1px solid rgba(255, 255, 255, 0.15);}
.menu-item_base .sub-menu {position: absolute;top: 100%;width: 100%;
-webkit-transform-origin: top; transform-origin: top;-webkit-transform: rotateX(-90deg);transform: rotateX(-90deg);
transition: -webkit-transform 0.3s linear;transition: transform 0.3s linear;transition: transform 0.3s linear, -webkit-transform 0.3s linear;background-color:rgba(0, 0, 0, 0.8);}
.menu-item_base .sub-menu .menu-item_base {border-color: rgba(255, 255, 255, 0.15);}
.menu-item_base .sub-menu .menu-item_base a::before {content: "";}
.menu-item_base .sub-menu .menu-item_base:first-child {border: 0;}
.menu-item_base:hover, .menu-item_base.active {border-top: 3px solid #BC161C;background-color: rgba(255, 255, 255, 0.15);}
.menu-item_base:hover a::before, .menu-item_base.active a::before {color: white;}
.menu-item_base:hover .sub-menu {-webkit-transform: rotateX(0deg);transform: rotateX(0deg);}
.menu-item_base a {z-index:20;font-size: 0.8rem;font-weight:700;display: flex;flex-direction: column;align-items: center;color: #fff;text-decoration: none;width: 100%;line-height:70px;height:100%;}


.menu_box_base   {position:relative; background:rgba(0, 0, 0, 0.5);}
.nav_box_base    {background-color:rgba(0, 0, 0, 0.5);width: 100%;position:absolute;top:0;left:0;right:0;z-index:12;}
.title_back {height:auto; width: 100%; overflow: hidden;  }

#mb_menu { display : none;}

.top_header       {height: 120px;}
.top_header_box   {max-width: 1200px; height: 100%; margin: 0 auto; position: relative;}


.top_address      {font-size:19px;display: block;position:absolute;top:22px;right:2px;}
img.top_contact   {position:absolute;bottom:15px;right:0; height:40px;}
img.top_facebook_base  {position:absolute;bottom:15px;right:250px;height:40px;}
img.top_instagram_base {position:absolute;bottom:15px;right:293px;height:40px;}
.top_tel, .top_mail { display : none;}

.bottom_header {height:60px;}

/* Menu  */

.header_inner, .body_inner {margin: 0 auto; max-width:1200px; padding: 0; text-align: left;}

.left img {width: 100%; height: auto; vertical-align: top; margin-bottom:10px;box-shadow: 0 0 3px 1px #888;}
.left  {display: inline-block; width: 470px; margin-right: 20px; margin-left:-70px; padding:0;}
.right {display: inline-block; width: calc(100% - 430px); vertical-align: top; padding:0; line-height: 1.8; }
.right .r-top  { font-size: 28px; line-height: 1.7; margin: -10px 0 0 0; }

.header_inner h1, .body_inner h1  {font-size: 28px; padding-right:15px;margin-bottom: 50px; }
.header_inner h1::after, .body_inner h1::after {top: 13px; left:-15px; height:3px;}

table.ikamper-t tr td  { padding: 3px 8px; font-size: 14px; }

.hitem-line    { width:33.33333%; width: -webkit-calc(100% / 3); width: calc(100% / 3); padding: 0 8px 1px 0; box-sizing: border-box;margin-bottom: 10px;}
.hitem-line:nth-child(3n) { padding: 0 0 1px 0;}

.package-card  { height: 460px; box-shadow:0px 10px 10px -5px rgba(0,0,0,0.5);}

.hnews { width:100%; height:210px;-webkit-transition:2s; -moz-transition:2s;-o-transition:2s;-ms-transition:2s;transition:2s;}

.hitem-info h2 {letter-spacing: 0.1em; }
.hitem-info .info {margin-top  : 10px ;font-size:13px;line-height:1.7; }

.hitem-box .btna, .hitem-box .btnb {width:40%;}
.hitem-box .btna { margin-left: 7%; }
.hitem-box .btnb { margin-left: 52%;}

.hitem-box .btna p, .hitem-box .btnb p {position: relative;line-height: 30px;text-align: center;width:100%;margin:0;padding:0;}
.hitem-box .btna a, .hitem-box .btnb a {position: absolute; top: 0; bottom: 0; width:100%; height: 100%; }

.hitem-box .btna:hover, .hitem-box .btnb:hover,
.hitem-box .btna:focus, .hitem-box .btnb:focus {cursor: pointer; text-decoration: none;
    box-shadow: 0 5px 10px 0 rgba(0,0,0,0.12), 0 3px 20px 0 rgba(0,0,0,0.12), 0 5px 6px -2px rgba(0,0,0,0.2); }

.hitem-wrapper {max-width:1200px;height:auto;display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap;list-style:none; padding: 0;
-webkit-transition: .5s; -o-transition: .5s; transition: .5s; }

.inquiry_box {height:100px; padding:20px 30px;display: table; margin: 40px 0; }
.inquiry_box .button {top: 50%; right: 30px; transform: translateY(-50%) ;  -webkit- transform: translateY(-50%);}

img.top_banner {display:block;position:absolute;height:100px;top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);left:180px;}

.l_mb {display: none; }

.section_access { width: 100%; height: auto; padding:50px 0 20px 0 ; margin:0;text-align:center;}
.jp_map { width: 100%; height: 800px; position:relative;}

.cover {position:relative;background:#153952;height: 810px;padding:0 0 10px 0;}
.map_info {position:absolute;bottom:50px;right:60px;font-weight:400;letter-spacing: 0.05em;
background-color:#fff;border-radius:10px;width: auto; height:auto;padding: 30px;text-align:center;}

.map_access  {line-height:1.5;font-size:1.2rem;margin-top:15px;text-align:left; }
.map_access a { color: #333; text-decoration:none;}
.map_access i  {line-height:1.5;font-size:1.0rem;padding:0;margin:0; }

.map_hour {line-height:1.5;font-size:1.2rem;margin-top:15px;text-align:left;}

.google_btn{margin:20px 0 0 0;display:block;background-color:#999691;font-size:1.3rem;color:#fff;border-radius:3px;position:relative;
width: 250px; height: 60px;text-align:left;line-height:60px;}
.google_btn a { color: #fff; text-decoration:none;position:absolute;top:0;right:0;width:100%;height:100%;text-align:center;}
.google_btn a:hover {background-color:#444; border-radius:3px;}

.google_btn a:hover:after{-webkit-transform:translateX(12px);transform:translateX(12px)}

.cont_wrap      {margin:0; padding:0; width:100%; overflow: hidden; background: #153952 url(index_files/c_back.png) no-repeat; background-position: 82% 50px; }
.cont_inner     {max-width:1430px; height:300px; margin:0 auto; position: relative;}
.cont_inner div {}

.left_box     {height:300px; padding:0; position: absolute; top:0; left: 50px; text-align: left; width: 300px; }
.fTel         {height:300px; padding:0; position: absolute; top:0; left: 38%; text-align: left; width: auto; }
.btn_wrap     {height:300px; padding:0; position: absolute; top:0; right:40px; }

.c_out  {display: table;}
.c_in   {display: table-cell; vertical-align: middle;}

.left_box h3  { font-size: 70px; }
.left_box p   { margin: 15px 0 0 2px; font-size: 20px; line-height: 22px; }

.fTel a {color:#FFF; font-weight:bold;letter-spacing: 3px; font-size:42px;text-decoration: none;line-height:50px;margin: 0; display:inline-block;}
.fTel a:hover {text-decoration:none;}

.op_hours {margin-top: 1px; display:block;background:#fff;width:auto;padding:6px 8px 4px 8px;border-radius:6px;letter-spacing: 0.05em;}
.op_hours i {color:#153952;margin-right:5px;}
.mb_address {display:none;}

.fa-inverse {color:#153952;font-size:1.0rem;}
.fa-stack{position:relative;display:inline-block;vertical-align:middle;margin-bottom:18px;}
.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}

.btn_outer {width:240px;}
.btn_outer p  {text-align: center;}
.btn_outer i {margin-right:10px;}

.enquiry_btn { position:relative; display: inline-block;width:240px;height:50px; line-height:50px;box-sizing: border-box;border: 1px solid #153952;
color: #153952;font-weight:bold; text-align: center;background: #fff; border-radius:30px; text-decoration: none; transition: .3s;}

.enquiry_btn:hover {color: #fff; background: #153952; border: 1px solid #fff; border-radius: 30px;}
.enquiry_btn:hover { transform: scale(1.2,1.2); }

.form h1 {font-size: 30px;}

.form_body { max-width: 780px;margin: 50px auto 100px auto ;padding: 0;text-align: left;}
.contact {width: 190px ; margin:0; display:inline-block;padding: 15px 0;box-sizing: border-box;vertical-align: top;}
*/.input {width: 578px ;margin:0 0 30px 0; display:inline-block; }*/

textarea {height:150px;width:578px;}

input[name=btn_confirm],
input[name=btn_submit],
input[name=btn_back],
input[name=btn_back] {cursor: pointer; width:300px; margin: 20px 0 0 190px ; transition: 0.5s;}

}


@media screen and (max-width:768px) {

.title_back {margin: 0 ;height:auto; width: 100%; }

.swiper-container { width:100%; height:auto; }
.swiper-slide { width:100%; height:auto;padding:50px 0 85px 0;}
.swiper-slide img { width:200%; height:auto;}

.slide-img {width: 100%; position:relative; z-index:20;}
.slide-content {position:absolute;bottom:0;left:0;right:0; background: orange; border-radius: 2px;
  font-family: 'Sawarabi Mincho', sans-serif; transition: 1.5s;height:90px;line-height: 80px}
.slide-content h1 {color: #FFF; font-size: 4vw; text-shadow: 2px 2px rgba(0,0,0,0.1);}
.slide-content:hover  {background: blue;}

.caption {z-index: 20;
position: absolute; top: 0; right: 0; width:100%; height:100%; font-family: 'Sawarabi Mincho', sans-serif;
color: #fff; font-size: 6vw; font-weight: bold; line-height: 1.3; background: rgba(0, 0, 0, 0.1); padding: 0;
text-shadow :	1px  1px 5px rgba(0, 0, 0, 0.8), -1px  1px 5px rgba(0, 0, 0, 0.8), 1px -1px 5px rgba(0, 0, 0, 0.8),
-1px -1px 5px rgba(0, 0, 0, 0.8), 1px  0px 5px rgba(0, 0, 0, 0.8), 0px  1px 5px rgba(0, 0, 0, 0.8),
-1px  0px 5px rgba(0, 0, 0, 0.8), 0px -1px 5px rgba(0, 0, 0, 0.8); }
.caption p { margin-top:40%;}

@keyframes zoom { 0% { transform: scale(1); } 100% { transform: scale(1.1); }}
.swiper-slide-active .zoom img { animation: zoom 10s linear 0s 1 normal both; }
.varied { display:block; }

/* Top Menu */

.menu_base ol {list-style: none; padding: 0;margin: 0;z-index:101; position: fixed;}
.menu_base ol:first-child {width: 100%;max-width: 1200px;margin: 0 auto;height:104px;display: grid; grid-template-columns: repeat(5, 1fr);align-items: center;box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.3);}
.menu-item_base {display: flex;align-items: center;justify-content: center;
border-right: 1px solid rgba(255, 255, 255, 0.15);border-top: 2px solid #333;position: relative;transition: background 0.3s ease-in-out;}

.menu-item a::before {font-family: "Font Awesome 5 Free";font-size: 0.5rem;display: block;margin-bottom:0.6rem;font-weight: 900;
-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;display: inline-block;
font-style: normal;font-variant: normal;text-rendering: auto;line-height: 1;color: #333;}

.menu-item_base .sub-menu > a {color: red;}
.menu-item_base:first-child {border-left: 1px solid rgba(255, 255, 255, 0.15);}
.menu-item_base .sub-menu {position: absolute;top: 100%;width: 100%;
-webkit-transform-origin: top; transform-origin: top;-webkit-transform: rotateX(-90deg);transform: rotateX(-90deg);
transition: -webkit-transform 0.3s linear;transition: transform 0.3s linear;transition: transform 0.3s linear, -webkit-transform 0.3s linear;background-color:rgba(0, 0, 0, 0.8);}
.menu-item_base .sub-menu .menu-item_base {border-color: rgba(255, 255, 255, 0.15);}
.menu-item_base .sub-menu .menu-item_base a::before {content: "";}
.menu-item_base .sub-menu .menu-item_base:first-child {border: 0;}
.menu-item_base:hover, .menu-item.active {border-top: 3px solid #BC161C;background-color: rgba(255, 255, 255, 0.15);}
.menu-item_base:hover a::before, .menu-item_base.active a::before {color: white;}
.menu-item_base:hover .sub-menu {-webkit-transform: rotateX(0deg);transform: rotateX(0deg);}
.menu-item a {z-index:20;font-size: 0.8rem;font-family:'Josefin Slab',serif;font-weight:700;display: flex;flex-direction: column;align-items: center;color: #fff;text-decoration: none;text-transform: uppercase;line-height: 100px;width: 100%;}

.menu-btn {position: absolute;top: 0;right: 0;width:50px;height:50px;line-height:50px;font-size: 28px; background-color:#A18553;text-align:center;z-index:20;}
.menu-btn span {color: #fff;}
.menu-btn span:after {content:attr(data-txt-menu);}

.open .menu-btn span:after {content: attr(data-txt-close);}

.menu_mb {position: fixed; display:block; top: 0; left: 0; width: 100%; height: 100%;background: rgba(0,0,0,.8);
padding:80px 10px 0 10px;box-sizing: border-box; -webkit-transition: all .5s;transition: all .5s;visibility: hidden;opacity: 0; text-align: center;}

.menu_mb ul {list-style: none;text-align:center;width:100%;margin:0; }

.plink {height:48px;font-size: 20px;}
.menu_mb li.sns {width:60px;height:50px;display:inline-block;padding:0;margin:-10px 0 10px 0;}
.menu_mb li.w100 {width:100%;text-align :center ; clear: both; display: block;}
.menu_mb li.address {width:100%; text-align : center; clear: both; display: block; margin-top:10px; font-size: 20px; color: #fff; line-height:1.6;}
.menu_mb li a {display: block; color: #fff;text-decoration: none;}

img.menu_sns {float: left;width: 50px;height: 50px;}
.menu_mb li a:hover {text-decoration:none;border-style:none; color:#fff;}
.menu_mb li a:focus, *:focus { outline:none;background: rgba(0,0,0,.8);}
.open .menu_mb {cursor: url(../images/cross.svg),auto;-webkit-transition: all .5s; transition: all .5s; visibility: visible; opacity: 1;}

.header  {position: relative; margin: 0; }
.top_header {height: 50px; position: fixed;z-index: 9999; }
.top_header_box {width:100%; margin:0; height:50px;}

.nav_box_base, .top_address, img.top_contact, img.top_facebook, img.top_instagram, #pc_mf_menu {display : none;}

img.top_logo {float:left;margin:4px 0 0 5px;width:70px;}

.header_inner, .body_inner {margin: 0; width:100%; text-align: left; padding: 0 ; }


.left img {width: 100%; height: auto; vertical-align: top; margin-bottom: 5px;}
.left .l-m {margin-left: 10px;}
.left  {display: block; width: 100%; margin: 0; padding:0 0 10px 0; box-sizing: border-box; }
.right {display: block; width: 100%; margin: 0; padding:10px; line-height: 1.8; box-sizing: border-box; }
.right .r-top  { font-size: 20px; line-height: 1.6; margin: 0 10px 0 0; }

.header_inner h1, .body_inner h1  {font-size: 20px; padding: 0 12px; margin: 0 0 30px 5px; }
.header_inner h1::after, .body_inner h1::after {top: 9px; left:0 ;height:3px;}

.glid img { display: none;}
.glid::before { display: none;}

.header_inner ol  { margin: 8px 0 8px 18px; list-style-type: none; width:100%; counter-reset: number; ba}
.header_inner ol li { margin: 5px 0; padding: 0 0 0 3px;line-height: 20px; font-size: 14px; color: #333; text-shadow: none;}

.header_inner ol li::after { top:-1px; font-size: 20px; }
.header_inner ol li:nth-child(1)::before,.header_inner ol li:nth-child(2)::before,.header_inner ol li:nth-child(3)::before,.header_inner ol li:nth-child(4)::before,
.header_inner ol li:nth-child(5)::before,.header_inner ol li:nth-child(6)::before,.header_inner ol li:nth-child(7)::before,.header_inner ol li:nth-child(8)::before,
.header_inner ol li:nth-child(9)::before {top:0; left:-18px; }
.header_inner ol li:nth-child(10)::before,.header_inner ol li:nth-child(11)::before,.header_inner ol li:nth-child(12)::before {top:0; left:-21px; }

.monitor-left {width: 100% ; margin: 285px 0 0 0; display: block; }
.monitor_box {height:auto; padding:20px ; display: block; margin: 20px 0; }
.monitor_box .monitor-photo {top: 200px; left:20px; right:0; width:calc(100% - 40px); height:250px; }
.monitor_box .monitor-photo img { height:250px;}

.hitem-line  {position: relative; }

.package-card {width: 50%; height: 450px; margin: 0 0 6px 0; padding:0 2px 0 0; box-sizing: border-box; box-shadow:0px 10px 10px -5px rgba(0,0,0,0.5);}
.package-card:nth-child(even) {padding: 0;}

.hnews { width:100%;height:0;padding-top:60%; background-position: center;}

.hitem-info .info {font-size:13px;line-height:1.4; }
.hitem-info .icon {position:absolute;bottom: -8px; left: 10px;}

.hitem-line img { width:100%; height:0; padding-top:60%; position: relative;overflow: hidden; }
.hitem-wrapper {max-width:768px;width:100%;margin: 0;height:auto;display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap;list-style:none; }

.hitem-info h2 { line-height: 13px; margin: 8px 0 ; font-size:11px; color:#A18553; }
.hitem-info h3 { line-height: 20px; margin-bottom: 10px ; font-size:14px;font-weight: bold;}

.hitem-box .btna, .hitem-box .btnb {width:47%;}
.hitem-box .btna { margin-left: 2%; }
.hitem-box .btnb { margin-left: 51%;}

.hitem-box .btna p, .hitem-box .btnb p {position: relative;line-height: 28px;text-align: center;width:100%;margin:0;padding:0; font-size: 12px; white-space: nowrap;}
.hitem-box .btna a, .hitem-box .btnb a {position: absolute; top: 0; bottom: 0; width:100%; height: 100%; }

.left table {margin:10px 2px; }

.right .subhead { width: 100%; text-align: left; margin: 0; padding: 10px 0; font-family: 'Sawarabi Mincho', sans-serif; font-size: 20px; color:#A18553;}

.right h2.heading {margin: 0 0 10px -8px}
.right .subhead1 h2.heading {position: relative; padding-left: 30px; font-size:18px; line-height: 23px;}

.right img.anyca  {  width: calc(100% + 20px); margin:10px -10px 0 -10px;}
.ad_note  { margin: 3px 0 20px 0;}

.right .table_box { margin: 0 0 0px 0; }
table.ikamper-t tr td  { padding: 3px 0; font-size: 12px; }

.terms_box  {max-width:100%; margin:20px 0;}
.terms_box h2 {font-weight:400; font-size: 14px; line-height:22px;color:#fff;margin-bottom: 8px;text-align:left;background:#A18553;padding:8px 15px; box-sizing: border-box;}
.terms_box h3 {font-size:14px;font-weight:600;text-align:left;margin: 2px 10px ;border:none;color:#333;}
.terms_box p {line-height:18px;font-size: 12px; color:#333;margin: 0 10px; box-sizing: border-box;}

.inquiry_box {height:260px; padding:20px ; display: block; margin: 20px 0; }
.inquiry_box .button {bottom: 18px; left: 50%; transform: translateX(-50%); -webkit- transform: translateX(-50%); margin: auto; }

.section_access { width: 100%; height: auto; padding: 0 ; margin-bottom:0; text-align:center;}
.jp_map { width: 100%; height: 300px; position:relative; margin:0;}

.left_box { padding: 20px 0 0 0; }
.left_box h3  { font-size: 50px; margin-bottom: 20px;}
.left_box p   { margin: 0 10px 20px 10px; font-size: 15px; line-height: 17px;}

.cover {background:#153952;margin:0; padding: 0 0 1px 0;}
.map_info, .logo_box, img.top_banner {display:none;}

.cont_wrap{background:#153952;margin-top:-17px;}
.section_cont {width:100%;padding:0 8px 30px 8px;background:#153952;box-sizing: border-box;}
.cont_inner {max-width:100%;text-align:center;}

.cont_inner .fTel {width:100%;height:auto;text-align:center;}
.cont_inner .fTel a {color:#FFF; font-weight:bold;font-size:2.0rem;letter-spacing:0.1em;margin-left:7px;text-decoration: none;line-height:50px;display:inline-block;}

.cont_inner .op_hours {display:block;background:#fff;width:330px;padding:6px 0 4px 0;margin:0 auto;border-radius:6px;letter-spacing: 0.05em;font-size:0.9rem;}
.cont_inner .op_hours i {color:#003360;margin-right:5px;}

.cont_inner .fDl {margin-top:18px;text-align:center;width:100%;color:#FFF;line-height:1.5;
font-weight:400;letter-spacing: 0.05em;font-size:1.2rem;}

.fa-inverse {color:#153952;font-size:1.0rem;}
.fa-stack{position:relative;display:inline-block;vertical-align:middle;margin-bottom:18px;}
.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}

.cont_inner { margin-top: 20px; width: 100%; padding: 0; text-align:center;}
.btn_wrap { margin: 35px 0 0 0; width: 100%; padding: 0; text-align:center;}

.btn_wrap p {text-align:center;}
.btn_wrap i {margin-right:10px;}

.enquiry_btn { display: inline-block;width:240px;height:50px;line-height:50px;box-sizing: border-box;border: 2px solid #153952;
color: #153952; font-weight:bold; text-align: center;background: #fff; border-radius:2px; text-decoration: none; }
.enquiry_btn a { color: #153952; }

.l_mb { width: 30px; height: 1px; margin:0 auto 25px auto; background:#fff ;}

.mb_address    { margin-top: 30px; padding:20px 0 10px 0; color: #fff; border-top: 1px solid #fff;}
.mb_address h4 { letter-spacing: 5px; text-transform: uppercase;margin: 0; font-size: 20px; font-weight: 400; margin-bottom: 20px}
.mb_address p  { letter-spacing: 0.05em; font-size: 17px; line-height: 1.2; margin-bottom: 15px; font-weight: 400; }

.form h1 {font-size: 18px;}

.enquiry_form { width : 100% ; margin:0; border : solid 1px #8B8B99 ;}
.form_top { width : 100% ;background-color: #eee;font-weight:bold;padding: 5px 10px ;box-sizing: border-box;}
.form_body { width : 100% ;background-color: #FFF;padding: 20px 10px ;box-sizing: border-box;}
.contact {width: 100% ; margin:0; display:inline-block;padding: 8px 0 ;box-sizing: border-box;vertical-align: top;text-align: left;}
/*.input, .select  {width: 100% ;margin:5px 0 15px 0; display:inline-block; }*/

textarea {height:150px;width:100%;}

input[name=btn_confirm],
input[name=btn_submit],
input[name=btn_back],
input[name=btn_back] {width:200px; margin: 20px auto ; }

}
