@charset "UTF-8";

#wrapper,
#container {
  overflow:inherit;
}
.secttl {
  margin:0 0 60px;
  overflow:hidden;
}
.secttl .inner {
  max-width:1700px;
  margin:0 auto;
  padding:0 50px;
}
.secttl .ttlbox {
  padding:75px 0 90px;
  position:relative;
}
.secttl .bgtxt {
  font-family:roboto-condensed, sans-serif;
  color:#ccc;
  font-size:300px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  position:absolute;
  top:-20px;
  left:120px;
  opacity:.1;
}
.secttl h1 {
  font-family:roboto-condensed, sans-serif;
  color:#222;
  font-size:120px;
  font-weight:700;
  line-height:1;
  width:fit-content;
  position:relative;
}
.secttl h1 .sub {
  font-family: "noto-sans-cjk-jp", sans-serif;
  color:#d95e29;
  font-size:24px;
  font-weight:700;
  line-height:1;
  letter-spacing:.1em;
  position:absolute;
  bottom:-30px;
  right:0;
}
.pankuzu {
  display: flex;
}
.pankuzu li {
  color:#363636;
  font-size:16px;
  line-height:1;
  letter-spacing:.05em;
  position:relative;
}
.pankuzu li + li {
  padding-left:32px;
}
.pankuzu li + li::before {
  content:"";
  width:8px;
  height:8px;
  display:block;
  background:url(../img/common/ico_arrow_pankuzu.svg) no-repeat 0 0;
  background-size:100% auto;
  position:absolute;
  top:5px;
  left:12px;
}
.pankuzu li a {
  color:#363636;
  display:inline-block;
  position:relative;
  transition:ease .3s;
}
.pankuzu li a::before {
  content:"";
  width:100%;
  height:1px;
  background:#d95e29;
  display:block;
  position:absolute;
  bottom:-5px;
  left:0;
  transform:scaleX(0);
  transition:ease .3s;
}

.pageCols {
  width:100%;
  max-width:1700px;
  margin:0 auto;
  padding:0 50px 200px;
  position: relative;
  display:flex;
  flex-direction:row-reverse;
}
.pageNavi {
  width:250px;
}
.pageNavi ul {
  padding:20px 0;
  background:#fff;
  border-radius:10px;
  box-shadow:0 0 18px 0 rgba(0, 0, 0, 0.1);
  position:sticky;
  top:150px;
}
.pageNavi ul li + li {
  margin-top:20px;
}
.pageNavi ul li a {
  font-size:16px;
  font-weight:400;
  line-height:1.33;
  letter-spacing:.05em;
  padding:10px 20px 10px 30px;
  display:block;
  transition:ease .3s;
}
.pageNavi ul li.current a {
  color:#fff;
  background:#d95e29;
}
.pageContents {
  width:1140px;
  margin-right:90px;
}
.pageContents section {
  margin:150px 0 0;
}
.pageContents section.lead,
.pageContents section:first-child {
  margin-top:0 !important;
}
.pageContents section > *:first-child {
  margin-top:0 !important;
}

.pageContents h2 {
  color:#222;
  font-size:30px;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1.2;
  padding:8px 0 8px 14px;
  margin:0 0 30px;
  border-left:solid 3px #d95e29;
}
.pageContents p {
  font-size:18px;
  letter-spacing:.08em;
  line-height:1.77;
  margin:0;
}
.pageContents p a {
  color:#373737;
  display:inline-block;;
  position:relative;
  transition:ease .3s;
}
.pageContents p a::before {
  content:"";
  width:100%;
  height:1px;
  display:block;
  background:#373737;
  position:absolute;
  bottom:0;
  transition:ease .3s;
}

.pageContents table {
  width:100%;
  border-top:solid 1px #373737;
  border-left:solid 1px #373737;
}
.pageContents table th,
.pageContents table td {
  color:#373737;
  font-size:16px;
  line-height:1.5;
  letter-spacing:.05em;
  vertical-align:middle;
  padding:18px 20px;
  border-bottom:solid 1px #373737;
  border-right:solid 1px #373737;
}
.pageContents table thead tr th {
  color:#fff;
  font-weight:500;
  white-space:nowrap;
  background:#373737;
  border-right:solid 1px #fff;
}
.pageContents table thead tr th:last-child {
  border-right:solid 1px #373737;
}
.pageContents table tbody tr th {
  font-weight:500;
  text-align:left;
  white-space:nowrap;
  background:#eee;
}
.table {
  overflow:hidden !important;
}

.hours .table + .table {
  margin-top:60px;
}
.hours .table + .table table th {
  width:20%;
}
.hours table tbody tr td:nth-child(2) {
  white-space: nowrap;
}
.hours .table + .table table td,
.price table tbody tr td {
  text-align:center;
}
.pageContents table td .chushaku {
  font-size:14px;
  text-indent:-1em;
  padding-left:1em;
  margin-top:.3em;
  display:block;
}


@media screen and (max-width:1580px) {

.secttl {
  margin:0 0 3.79vw;
}
.secttl .inner {
  padding:0 3.16vw;
}
.secttl .ttlbox {
  padding:4.74vw 0 5.69vw;
}
.secttl .bgtxt {
  font-size:18.98vw;
  top:-1.26vw;
  left:7.59vw;
}
.secttl h1 {
  font-size:7.59vw;
}
.secttl h1 .sub {
  font-size:1.51vw;
  bottom:-1.89vw;
}
.pankuzu li {
  font-size:1.01vw;
}
.pankuzu li + li {
  padding-left:2.02vw;
}
.pankuzu li + li::before {
  width:.5vw;
  height:.5vw;
  top:.31vw;
  left:.75vw;
}
.pageCols {
  padding:0 3.16vw 12.65vw;
}
.pageNavi {
  width:15.82vw;
}
.pageNavi ul {
  padding:1.26vw 0;
  border-radius:.63vw;
  box-shadow:0 0 1.13vw 0 rgba(0, 0, 0, 0.1);
  top:9.49vw;
}
.pageNavi ul li + li {
  margin-top:1.26vw;
}
.pageNavi ul li a {
  font-size:1.01vw;
  padding:.63vw 1.26vw .63vw 1.89vw;
}
.pageContents {
  width:72.15vw;
  margin-right:5.69vw;
}
.pageContents section {
  margin:9.49vw 0 0;
}
.pageContents h2 {
  font-size:1.89vw;
  padding:.5vw 0 .5vw .88vw;
  margin:0 0 1.89vw;
}
.pageContents p {
  font-size:1.13vw;
}

.pageContents table th,
.pageContents table td {
  font-size:1.01vw;
  padding:1.13vw 1.26vw;
}

.hours .table + .table {
  margin-top:3.79vw;
}
.pageContents table td .chushaku {
  font-size:.88vw;
}

}


@media screen and (max-width:767px) {

#wrapper {
  overflow:hidden;
}
.secttl {
  margin:0 0 9.33vw;
}
.secttl .inner {
  padding:0 5.33vw;
}
.secttl .ttlbox {
  padding:10.66vw 0 11.33vw;
}
.secttl .bgtxt {
  font-size:32vw;
  top:0;
  left:9.33vw;
}
.secttl h1 {
  font-size:13.33vw;
}
.secttl h1 .sub {
  font-size:3.2vw;
  bottom:-4vw;
}
.pankuzu li {
  font-size:3.2vw;
}
.pankuzu li + li {
  padding-left:6.66vw;
}
.pankuzu li + li::before {
  width:1.6vw;
  height:1.6vw;
  top:.8vw;
  left:2.4vw;
}

.pageCols {
  margin:0 auto;
  padding:0 5.33vw 26.66vw;
}
.pageNavi {
  display:none !important;
}
.pageContents {
  width:100%;
  margin-right:0;
}
.pageContents section {
  margin:18.66vw 0 0;
}
.pageContents h2 {
  font-size:4.8vw;
  padding:2.13vw 0 2.13vw 3.2vw;
  margin:0 0 6.66vw;
}
.pageContents p {
  font-size:3.73vw;
  letter-spacing:.05em;
  line-height:2;
}
.pageContents p a::before {
  bottom:.8vw;
}

.sc_table {
  overflow:auto !important;
  overflow-y:hidden !important;
}
.sc_table table {
  min-width:213.33vw;
}
.pageContents table th,
.pageContents table td {
  font-size:3.73vw;
  padding:3.46vw 4vw;
}

.hours .table + .table {
  margin-top:10.66vw;
}
.pageContents table td .chushaku {
  font-size:3.2vw;
}

}


@media (hover: hover) {
.pageContents p a:hover,
.pageContents p a:focus {
  color:#da6634;
}
.pageContents p a:hover::before,
.pageContents p a:focus::before {
  transform:scaleX(0);
  background:#da6634;
}
.pageNavi ul li a:hover,
.pageNavi ul li a:focus {
  color:#fff;
  background:#d95e29;
}
.pankuzu li a:hover,
.pankuzu li a:focus {
  color:#d95e29;
}
.pankuzu li a:hover::before,
.pankuzu li a:focus::before {
  transform:scaleX(1);
}

}
