@charset "UTF-8";
@font-face {
  font-family: "gen"; }
*,
*::before,
*::after {
  box-sizing: border-box; }

header, section, footer, aside, nav, article, figure {
  display: block;
  position: relative; }

html {
  height: 100%;
  -webkit-print-color-adjust: exact; }

html, body {
  margin: 0;
  padding: 0;
  font-style: normal;
  vertical-align: baseline;
  text-indent: 0;
  line-height: 1;
  color: #000;
  font-style: normal;
  font-weight: 400;
  -webkit-text-size-adjust: 100%; }

html, body, small, h1, h2, h3, h4, h5 {
  font-size: 1.0625em;
  font-weight: 300; }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    html, body, small, h1, h2, h3, h4, h5 {
      font-size: 1em; } }
  @media only screen and (max-width: 560px) {
    html, body, small, h1, h2, h3, h4, h5 {
      font-size: 1em; } }

div, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, canvas, details, figcaption, figure, picture,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  text-indent: 0;
  list-style: none;
  font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-style: normal;
  font-weight: 300; }
  @media only screen and (max-width: 560px) {
    div, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    abbr, address, cite, code,
    del, dfn, em, img, ins, kbd, q, samp,
    small, strong, sub, sup, var,
    b, i,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    article, aside, canvas, details, figcaption, figure, picture,
    footer, header, hgroup, menu, nav, section, summary,
    time, mark, audio, video {
      font-weight: 300; } }
  @media print, screen and (min-width: 960px) {
    div, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    abbr, address, cite, code,
    del, dfn, em, img, ins, kbd, q, samp,
    small, strong, sub, sup, var,
    b, i,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    article, aside, canvas, details, figcaption, figure, picture,
    footer, header, hgroup, menu, nav, section, summary,
    time, mark, audio, video {
      font-weight: 500; } }

table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-style: normal;
  text-indent: 0;
  list-style: none; }
  @media only screen and (max-width: 560px) {
    table, caption, tbody, tfoot, thead, tr, th, td {
      font-weight: 300; } }
  @media print, screen and (min-width: 960px) {
    table, caption, tbody, tfoot, thead, tr, th, td {
      font-weight: 500; } }

iframe {
  display: block;
  width: 100%;
  height: auto;
  border: none; }

img,
picture {
  display: block;
  width: 100%;
  height: auto; }

.fixImg {
  width: auto;
  height: auto; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

header a,
#container a,
footer a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  color: #117afd; }
  @media print, screen and (min-width: 960px) {
    header a,
    #container a,
    footer a {
      -webkit-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
      header a:hover, header a:active,
      #container a:hover,
      #container a:active,
      footer a:hover,
      footer a:active {
        color: rgba(17, 122, 253, 0.7); }
      header a:hover,
      #container a:hover,
      footer a:hover {
        opacity: 0.7; } }

header a,
nav a,
footer a {
  text-decoration: none; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

th {
  font-weight: normal; }

td, th {
  line-height: 1.3em; }

input,
select {
  vertical-align: middle; }

ul, ol, dl, li {
  padding: 0;
  margin: 0;
  list-style: none; }

area {
  cursor: pointer !important; }

section p,
.section p {
  margin-bottom: 1em;
  line-height: 1.8em; }

#contents ul,
#contents ol,
#contents dl {
  margin-bottom: 1em;
  margin-top: 1em; }

#contents li,
#contents dd {
  line-height: 1.5em; }

#contents ul li {
  margin-left: 0em;
  padding-left: normal; }

.low #contents section ol:not(.flow) li,
.low #contents .section ol:not(.flow) li {
  margin-left: 1.5em;
  list-style: decimal;
  padding-left: normal; }

/* clearfix -------------*/
.cf {
  zoom: 1; }

.cf:before,
.cf:after,
#hdUpper:after,
header:after,
header nav:after,
#container:after,
footer:after,
#contents:after,
#contents section:after,
#contents .sectiion:after,
#sidebar section:after,
#sidebar .section:after,
#bread:after,
footer:after,
#bottomInfo:after,
.innerL:after,
.innerM:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.cf,
.float_block {
  overflow: hidden; }

/* Layout Document */
/* Layout Basic block   //////////////////////////////////////*/
body {
  line-height: 1.6;
  color: #000; }

header
header nav ul {
  margin: 0 auto; }

#contents {
  width: 100%;
  max-width: 1600px;
  margin: auto;
  padding-left: 3%;
  padding-right: 3%; }
  .home #contents {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0; }
  @media only screen and (max-width: 560px) {
    #contents {
      padding-left: 6%;
      padding-right: 6%; }
      .reInd #contents {
        max-width: 100%;
        padding-left: 0 !important;
        padding-right: 0 !important; } }

#contentsFooter {
  background: #f1e3d3; }
  @media only screen and (max-width: 560px) {
    #contentsFooter {
      padding: 50px 0 !important; } }
  @media print, screen and (min-width: 561px) {
    #contentsFooter {
      padding: 80px 0 !important; } }
  #contentsFooter .innerBlock {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto; }

footer {
  padding: 40px 3% 20px 3%; }
  @media only screen and (max-width: 560px) {
    footer {
      padding: 15px 0 80px 0; } }

footer .innerBlock,
#copy {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto; }

.innerL {
  max-width: 2000px;
  margin: 0 auto; }

.innerM {
  max-width: 1200px;
  margin: 0 auto; }

@media print, screen and (min-width: 561px) {
  .low #contents > section,
  .low #contents > .section {
    width: 90%;
    max-width: 1600px;
    margin: 0 auto;
    padding-bottom: 70px; } }
@media only screen and (max-width: 560px) {
  .low #contents > section,
  .low #contents > .section {
    width: 100%;
    margin: 0;
    padding-bottom: 50px; } }
.low #contents > section.minHeigh,
.low #contents > .section.minHeigh {
  min-height: 400px; }

#contents > section section,
#contents > section .section,
#contents > .section section,
#contents > .section .section {
  position: relative; }
  @media only screen and (max-width: 560px) {
    #contents > section section,
    #contents > section .section,
    #contents > .section section,
    #contents > .section .section {
      margin-bottom: 30px; } }
  @media print, screen and (min-width: 561px) {
    #contents > section section,
    #contents > section .section,
    #contents > .section section,
    #contents > .section .section {
      margin-bottom: 50px; } }

h2 {
  font-size: 1.8rem; }

h3 {
  font-size: 1.5rem; }

h4 {
  font-size: 1.3rem; }

@media only screen and (max-width: 560px) {
  .low h1 {
    font-size: 7.5vw;
    letter-spacing: 0; }

  h2 {
    font-size: 6.5vw; }

  h3 {
    font-size: 5.5vw; }

  h4 {
    font-size: 5vw; } }
@media only screen and (max-width: 560px) {
  #wrapper {
    z-index: 0; }

  header {
    z-index: 1; }

  .menu-trigger {
    z-index: 5 !important; }

  #gn {
    z-index: 4; }

  #container,
  #contentsFooter,
  #footerAsk,
  footer {
    z-index: 2; }

  #reserve_banner_sp {
    z-index: 3; } }
@media print, screen and (min-width: 561px) {
  header {
    z-index: 1; }

  #hdUpper {
    z-index: 2; }

  #gn {
    z-index: 3; }

  #container {
    z-index: 0; }

  #mask {
    z-index: 2; }

  #layer {
    z-index: 3; }

  #contents {
    z-index: 3; }

  #contentsFooter {
    z-index: 3; }

  .ptBtn {
    z-index: 2; }

  footer {
    z-index: 0; } }
@media only screen and (max-width: 560px) {
  #wrapper {
    opacity: 1;
    transition: all 300ms ease-out; }
    .active #wrapper {
      position: fixed;
      opacity: 0.5; }

  .menu-trigger {
    position: fixed;
    top: 23px;
    right: 3%;
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    border: 2px solid #7b8d42;
    transition: all 300ms ease-in; }
    .menu-trigger:before {
      display: inline-block;
      content: '\f0c9';
      width: 36px;
      height: 36px;
      color: #7b8d42;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 1.2em;
      text-align: center;
      line-height: 36px; }
    .active .menu-trigger {
      top: 23px;
      background: #fff; }
      .active .menu-trigger:before {
        content: '\f00d'; }
    .menu-trigger:hover {
      cursor: pointer; } }
@media print, screen and (min-width: 561px) {
  .menu-trigger {
    display: none; }

  header {
    width: 100%;
    margin: 0; }
    header #hdUpper {
      background: #7b8d42;
      box-shadow: 0 1px 8px rgba(0, 0, 0, 0.7); }
      header #hdUpper #hdTel {
        position: relative;
        float: left;
        width: 37%;
        margin-left: 3%;
        padding: 13px 0 8px 0;
        color: #fff; }
        header #hdUpper #hdTel img {
          float: left;
          width: 60%;
          max-width: 300px; }
        header #hdUpper #hdTel span {
          display: block;
          float: left;
          width: 40%;
          font-size: 0.75rem; } }
      @media only screen and (min-width: 561px) and (min-width: 561px) and (max-width: 1570px) {
        header #hdUpper #hdTel img {
          float: none;
          width: 100%;
          max-width: 300px; }
        header #hdUpper #hdTel span {
          float: none;
          width: 100%;
          font-size: 0.75rem; } }
      @media only print {
        header #hdUpper #hdTel {
          float: none;
          width: 100%; }
          header #hdUpper #hdTel img {
            width: 30%;
            max-width: auto; } }
@media print, screen and (min-width: 561px) {
      header #hdUpper .groupBtn {
        float: right;
        width: 57%;
        margin-right: 3%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: stretch; }
        header #hdUpper .groupBtn li {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          flex-wrap: nowrap;
          justify-content: flex-end;
          align-items: stretch;
          -webkit-box-flex: 1 1 "";
          -ms-flex: 1 1 "";
          flex: 1 1 "";
          margin-left: 4px; }
          header #hdUpper .groupBtn li a {
            -webkit-box-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            align-items: center;
            position: relative;
            display: block;
            padding: 5px;
            text-align: center;
            color: #000;
            font-size: 0.75rem;
            font-weight: bold;
            background: #fff;
            border: 1px solid #fff; }
            header #hdUpper .groupBtn li a span {
              display: block;
              font-size: 0.875rem; }
            header #hdUpper .groupBtn li a::after {
              content: "";
              display: block;
              width: 100%;
              height: 5px;
              position: absolute;
              bottom: 0;
              left: 0; }
          header #hdUpper .groupBtn li:nth-of-type(1) a::after {
            background: #f7c644; }
          header #hdUpper .groupBtn li:nth-of-type(2) a::after {
            background: #a63751; }
          header #hdUpper .groupBtn li:nth-of-type(3) a::after {
            background: #cbe3ae; }
          header #hdUpper .groupBtn li:nth-of-type(4) a::after {
            background: #7b8d42; }
          header #hdUpper .groupBtn li:last-of-type a::after {
            background: none; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  header #hdUpper .groupBtn li a {
    font-size: 7px; }
    header #hdUpper .groupBtn li a span {
      font-size: 9px; } }
@media only screen and (max-width: 560px) {
  .home #container {
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 90vh, #f1e3d3 150vh); } }
@media print, screen and (min-width: 561px) {
  .home #container {
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 80vh, #f1e3d3 130vh); } }
@media only print {
  .home #container {
    padding-top: 0 !important;
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 30mm, #f1e3d3 270mm); } }

@media only screen and (max-width: 560px) {
  .low #container {
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 5vh, white 40vh); } }
@media print, screen and (min-width: 561px) {
  .low #container {
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 8vh, white 30vh); } }
@media only print {
  .low #container {
    background: #7b8d42;
    background: linear-gradient(to bottom, #7b8d42 30mm, white 200mm); } }

#mask {
  left: 0;
  top: 0; }
  @media only screen and (max-width: 560px) {
    #mask {
      position: fixed;
      width: 60%; } }
  @media print, screen and (min-width: 561px) {
    #mask {
      position: fixed;
      width: 70%;
      max-width: 1100px; } }
  @media only print {
    #mask {
      position: absolute; } }

@media only screen and (max-width: 560px) {
  #layer {
    position: relative;
    width: 100%; }
    .home #layer {
      padding-top: 80px; }
    .low #layer {
      padding-top: 0; } }
@media print, screen and (min-width: 561px) {
  #layer {
    margin-left: 3%;
    width: 80%; }
    .home #layer {
      position: absolute;
      left: 3%;
      top: 50px; }
    .low #layer {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: center; } }
@media only print {
  .home #layer {
    position: absolute;
    left: 3%;
    top: 50px; } }
@media only screen and (max-width: 560px) {
  #layer #hdLogo a {
    display: block; }
  .home #hdLogo a {
    background: rgba(255, 255, 255, 0.4); }
  .home #hdLogo img {
    width: 80%;
    margin: 0 auto; }
  .low #hdLogo {
    padding-left: 3%; }
    .low #hdLogo a {
      width: 60%; }
    .low #hdLogo img {
      width: 100%; } }
@media print, screen and (min-width: 561px) {
  .home #layer #hdLogo a {
    display: block;
    width: 45%;
    max-width: 600px;
    margin: 60px 0 100px 0; }
  .low #layer #hdLogo {
    flex-basis: 35%;
    max-width: 450px;
    margin-right: 5%;
    padding: 60px 0; }
    .low #layer #hdLogo a {
      display: block;
      max-width: 420px; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .home #layer #hdLogo a {
    width: 50%;
    max-width: auto;
    margin: 50px 0 80px 0; } }
@media only print {
  .home #layer #hdLogo a {
    width: 40%;
    max-width: 600px;
    margin: 20px 0 50px 0; } }
#layer #telBtn {
  padding: 20px 2% 20px 2% !important;
  background: #495942; }
  @media print, screen and (min-width: 561px) {
    #layer #telBtn {
      position: absolute;
      top: 100px;
      right: 0;
      width: 40%;
      max-width: 500px;
      border-radius: 8px;
      border: 3px double #7b8d42; } }
  #layer #telBtn dt {
    color: #fff;
    text-align: center;
    background: linear-gradient(360deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 48%, white 49%, white 51%, rgba(255, 255, 255, 0) 52%, rgba(255, 255, 255, 0) 100%); }
    #layer #telBtn dt span {
      display: inline-block;
      padding: 0 0.5em;
      background: #495942; }
  #layer #telBtn #resLine a {
    text-decoration: none !important; }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    #layer #telBtn {
      top: 70px; } }
  @media only print {
    #layer #telBtn {
      width: 25% !important; } }

h1 {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
  opacity: 0;
  color: #fff;
  transition: all 300ms ease-in; }
  @media only screen and (max-width: 560px) {
    h1 {
      text-align: center; }
      .home h1 {
        margin: 50px 0 50px 0 !important;
        font-size: 5.2vw; }
      .low h1 {
        margin: 30px 0 30px 0 !important;
        font-size: 5vw; } }
  @media print, screen and (min-width: 561px) {
    h1 {
      font-size: 2.4rem;
      letter-spacing: 2px; }
      .home h1 {
        margin: auto 0 50px 9% !important; }
      .low h1 {
        flex-basis: 60%;
        align-self: center;
        margin: auto; } }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    .home h1 {
      font-size: 3.2vw; }
    .low h11 {
      font-size: 3vw !important; } }
  @media only print {
    h1 {
      font-size: 22px !important; } }
  h1.on {
    opacity: 1;
    color: #fff; }

@media only screen and (max-width: 560px) {
  #reserve_banner_sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    position: fixed;
    top: 0;
    width: 100%; }
    #reserve_banner_sp li {
      -webkit-box-flex: 0 0 50%;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%; }
      #reserve_banner_sp li img {
        width: 100%; } }
@media print, screen and (min-width: 561px) {
  #reserve_banner_pc {
    position: fixed;
    right: 0;
    top: 220px; } }
  @media only screen and (min-width: 561px) and (min-width: 561px) and (max-width: 959px) {
    #reserve_banner_pc {
      top: 320px; } }
@media print, screen and (min-width: 561px) {
    #reserve_banner_pc li {
      position: absolute;
      margin-bottom: 20px; }
      #reserve_banner_pc li:nth-of-type(1) {
        top: 0;
        right: 0; }
      #reserve_banner_pc li:nth-of-type(2) {
        top: 230px;
        right: 0; }
      #reserve_banner_pc li img {
        width: 50px;
        transition: 300ms; }
    #reserve_banner_pc a:hover img {
      transform: scale(1.1); } }
@media only screen and (max-width: 560px) {
  #gn {
    position: fixed;
    top: 0;
    right: -100%;
    bottom: 0;
    width: 100%;
    height: 100%;
    max-width: 480px;
    padding-top: 50px;
    background: #a8bf93;
    opacity: 0;
    transition: all 300ms ease-in-out; }
    .active #gn {
      opacity: 1;
      top: 0;
      right: 0;
      overflow-y: scroll; }
    .menu-active {
      overflow-y: hidden; }
    #gn .tel {
      display: none; } }
@media print, screen and (min-width: 561px) {
  #gn {
    position: relative;
    width: 100%;
    background: rgba(255, 255, 255, 0.85);
    font-weight: bold !important;
    font-size: 1.125rem;
    transition: all 300ms ease-in-out; } }
@media only screen and (max-width: 560px) {
  #gn > ul {
    width: 100%;
    margin: 0;
    margin-top: 30px !important; } }
@media print, screen and (min-width: 561px) {
  #gn > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    max-width: 2000px;
    margin: 0 auto; } }
@media print, screen and (min-width: 960px) {
  #gn > ul {
    width: 90%; } }
@media only screen and (max-width: 560px) {
  #gn > ul > li {
    margin: 0;
    border-bottom: 1px dotted #fff;
    text-align: left; }
    #gn > ul > li:first-child {
      border-top: 1px dotted #fff; } }
@media print, screen and (min-width: 561px) {
  #gn > ul > li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    -webkit-box-flex: 1 1 "";
    -ms-flex: 1 1 "";
    flex: 1 1 "";
    position: relative;
    margin: 0;
    text-align: center; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  #gn > ul > li {
    -webkit-box-flex: 1 1 25%;
    -ms-flex: 1 1 25%;
    flex: 1 1 25%;
    align-content: stretch;
    margin: 0;
    border-bottom: none; } }
#gn > ul > li > a {
  position: relative;
  display: block;
  width: 100%;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  text-decoration: none;
  transition: 300ms ease-in-out; }
  #gn > ul > li > a:hover {
    color: #a8bf93; }
  @media only screen and (max-width: 560px) {
    #gn > ul > li > a {
      margin: 0;
      padding: 14px 0 14px 1em;
      font-size: 4.2vw;
      color: #000;
      font-weight: normal;
      text-align: left; }
      #gn > ul > li > a:before {
        display: inline-block;
        content: "";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-right: 8px; }
      #gn > ul > li.sub > a:before {
        display: inline-block;
        content: "";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        display: inline-block; } }
  @media print, screen and (min-width: 561px) {
    #gn > ul > li > a {
      margin: 15px 0;
      padding: 15px 1.5em;
      font-size: 1.0rem;
      text-align: center;
      color: #3B4043; } }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    #gn > ul > li > a {
      padding: 15px 0;
      font-size: 1.5vw; } }
  #gn > ul > li > a span {
    display: block;
    font-size: 0.5em;
    color: #7b8d42; }
    @media only screen and (max-width: 560px) {
      #gn > ul > li > a span {
        color: #fff;
        font-size: 3.6vw; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  #gn > ul > li:first-child a {
    background: #7b8d42;
    color: #fff; }
    #gn > ul > li:first-child a span {
      color: #fff; } }
#gn > ul > li:last-child a {
  border-right: none; }
.home #gn > ul > li:nth-child(1) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .home #gn > ul > li:nth-child(1):first-child a {
    color: #fff; } }
.home #gn > ul > li:nth-child(1) .sub a {
  color: #000; }
.first #gn > ul > li:nth-child(2) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .first #gn > ul > li:nth-child(2):first-child a {
    color: #fff; } }
.first #gn > ul > li:nth-child(2) .sub a {
  color: #000; }
.greeting #gn > ul > li:nth-child(3) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .greeting #gn > ul > li:nth-child(3):first-child a {
    color: #fff; } }
.greeting #gn > ul > li:nth-child(3) .sub a {
  color: #000; }
.treat #gn > ul > li:nth-child(4) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .treat #gn > ul > li:nth-child(4):first-child a {
    color: #fff; } }
.treat #gn > ul > li:nth-child(4) .sub a {
  color: #000; }
.ope #gn > ul > li:nth-child(5) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .ope #gn > ul > li:nth-child(5):first-child a {
    color: #fff; } }
.ope #gn > ul > li:nth-child(5) .sub a {
  color: #000; }
.faq #gn > ul > li:nth-child(6) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .faq #gn > ul > li:nth-child(6):first-child a {
    color: #fff; } }
.faq #gn > ul > li:nth-child(6) .sub a {
  color: #000; }
.clinic #gn > ul > li:nth-child(7) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .clinic #gn > ul > li:nth-child(7):first-child a {
    color: #fff; } }
.clinic #gn > ul > li:nth-child(7) .sub a {
  color: #000; }
.access #gn > ul > li:nth-child(8) > a {
  background: #7b8d42;
  color: #fff; }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .access #gn > ul > li:nth-child(8):first-child a {
    color: #fff; } }
.access #gn > ul > li:nth-child(8) .sub a {
  color: #000; }
@media only screen and (max-width: 560px) {
  #gn > ul > li {
    text-shadow: none;
    text-shadow: none;
    text-shadow: none;
    text-shadow: none;
    text-shadow: none;
    text-shadow: none;
    text-shadow: none;
    text-shadow: none; }
    .home #gn > ul > li:nth-child(1) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .home #gn > ul > li:nth-child(1) .sub a {
      color: #fff; }
    .first #gn > ul > li:nth-child(2) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .first #gn > ul > li:nth-child(2) .sub a {
      color: #fff; }
    .greeting #gn > ul > li:nth-child(3) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .greeting #gn > ul > li:nth-child(3) .sub a {
      color: #fff; }
    .treat #gn > ul > li:nth-child(4) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .treat #gn > ul > li:nth-child(4) .sub a {
      color: #fff; }
    .ope #gn > ul > li:nth-child(5) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .ope #gn > ul > li:nth-child(5) .sub a {
      color: #fff; }
    .faq #gn > ul > li:nth-child(6) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .faq #gn > ul > li:nth-child(6) .sub a {
      color: #fff; }
    .clinic #gn > ul > li:nth-child(7) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .clinic #gn > ul > li:nth-child(7) .sub a {
      color: #fff; }
    .access #gn > ul > li:nth-child(8) > a {
      animation: trme 0.4s ease-out 0.3s 1 forwards;
      background: #2f3619;
      border-radius: 4px 4px 0 0;
      color: #fff; }
    .access #gn > ul > li:nth-child(8) .sub a {
      color: #fff; } }
#gn > ul .acc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: "";
  font-size: 0.9em; }
  @media only screen and (max-width: 560px) {
    #gn > ul .acc {
      display: block;
      position: static; } }
  @media print, screen and (min-width: 561px) {
    #gn > ul .acc {
      position: absolute;
      top: 60px;
      left: 0;
      right: 0;
      width: 380px;
      padding: 14px;
      border-radius: 5px;
      opacity: 0;
      background: #819445; } }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    #gn > ul .acc {
      width: 500px; } }
  #gn > ul .acc.show {
    opacity: 1; }
  @media print, screen and (min-width: 561px) {
    #gn > ul .acc li {
      margin: 10px 0.6em 15px 0.6em;
      text-align: center; } }
  #gn > ul .acc li a {
    display: block;
    width: 100%;
    font-family: dnp-shuei-mgothic-std, sans-serif;
    font-style: normal;
    font-weight: 400;
    border-bottom: 1px dotted #000;
    text-decoration: none; }
    @media only screen and (max-width: 560px) {
      #gn > ul .acc li a {
        padding: 8px 10px 8px 4em;
        font-size: 4.2vw;
        color: #000 !important;
        border-bottom: 1px dotted #f1f1f1; }
        #gn > ul .acc li a:nth-child(1) {
          border-top: 1px dotted #f1f1f1; }
        #gn > ul .acc li a:last-child {
          border-bottom: none; }
        #gn > ul .acc li a:before {
          display: inline-block;
          content: "";
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          margin-right: 8px; } }
    @media print, screen and (min-width: 561px) {
      #gn > ul .acc li a {
        padding: 0 0.5em;
        color: #fff !important; } }
    #gn > ul .acc li a:hover {
      color: #a8bf93 !important; }
  @media only screen and (max-width: 560px) {
    #gn > ul .acc li.select li a {
      color: #fff !important; } }
  .trInd #gn > ul .acc1 li:nth-of-type(0) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .bridalcheck #gn > ul .acc1 li:nth-of-type(1) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trFuTes #gn > ul .acc1 li:nth-of-type(2) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trFuVar #gn > ul .acc1 li:nth-of-type(3) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trFuMus #gn > ul .acc1 li:nth-of-type(4) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trFuSei #gn > ul .acc1 li:nth-of-type(5) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trStd #gn > ul .acc1 li:nth-of-type(6) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .trPri #gn > ul .acc1 li:nth-of-type(7) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .opInd #gn > ul .acc2 li:nth-of-type(0) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .opVar #gn > ul .acc2 li:nth-of-type(1) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .opAzo #gn > ul .acc2 li:nth-of-type(2) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .opFna #gn > ul .acc2 li:nth-of-type(3) a {
    background: #2f3619 !important;
    color: #fff !important; }
  .opTes #gn > ul .acc2 li:nth-of-type(4) a {
    background: #2f3619 !important;
    color: #fff !important; }
@media only screen and (max-width: 560px) {
  #gn .other ul {
    margin-top: 40px; }
  #gn .other li {
    margin-bottom: 5px; }
  #gn .other a {
    display: block; }
  #gn .other #recBtn a {
    display: block;
    padding: 14px 0 14px 1em;
    color: #000; }
    #gn .other #recBtn a:before {
      display: inline-block;
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      margin-right: 8px; }
  #gn .other .blogBtn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    marfgin-bottom: 20px; }
  #gn .other .groupBtn a {
    display: block;
    padding: 14px 0 14px 1em;
    color: #000;
    background: #fff; }
    #gn .other .groupBtn a:before {
      display: inline-block;
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      margin-right: 8px;
      color: #202511; }
    #gn .other .groupBtn a span {
      display: block;
      margin-left: 1em; }
  #gn .other .groupBtn li {
    font-size: 4vw; } }

.fix {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100% !important;
  margin-top: 0;
  box-shadow: 1px 1px 20px #5d6a32;
  background: white !important; }
  @media only screen and (max-width: 560px) {
    .fix {
      box-shadow: none; }
      .fix img {
        max-width: 480px !important; } }

/* //////////////////////////////////////////////////////////////////////// 
コンテンツ 
///////////////////////////////////////////////////////////////*/
#bread {
  position: relative;
  margin: 0 auto 15px auto !important;
  padding: 20px 0.3em 0.4em 0.8em;
  line-height: 1.4em; }
  .home #bread {
    display: none; }
  @media only screen and (max-width: 560px) {
    #bread {
      margin: 0 auto 10px auto !important;
      padding: 4px 0.3em 4px 1em;
      background: #fff;
      border-radius: 4px;
      font-size: 3.5vw; }
      #bread li {
        float: left;
        list-style: none !important; }
        #bread li:first-of-type span {
          display: none; }
        #bread li:not(:last-of-type):after {
          display: inline-block;
          margin: 0 0.5em 0 0;
          display: inline-block;
          content: "";
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          color: #7b8d42;
          font-size: 0.9em;
          content: '/';
          color: #000 !important;
          margin: 0 0.5em;
          font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif; }
          #bread li:not(:last-of-type):after a {
            margin-right: 0.5em;
            color: #000 !important; } }
  @media print, screen and (min-width: 561px) {
    #bread {
      max-width: 2000px;
      font-size: 0.875rem;
      overflow: hidden;
      list-style: none; }
      #bread i {
        display: inline-block;
        margin-right: 0.6em; }
      #bread *, #bread *:after, #bread *:before {
        -webkit-box-sizing: border-box;
        box-sizing: border-box; }
      #bread li {
        display: inline-block;
        padding: 0;
        margin: 0 0 0.5em 0; }
      #bread a {
        position: relative;
        display: inline-block;
        margin: 0;
        padding: 0.7em 1em 0.7em 2em;
        text-decoration: none;
        color: #000;
        background-color: #a8bf93; }
        #bread a:hover {
          opacity: 1; }
      #bread li:first-of-type a {
        padding-left: 1em;
        border-radius: 5px 0 0 5px; }
      #bread a::after,
      #bread a::before {
        position: absolute;
        top: 50%;
        right: -1.5em;
        margin-top: -1.48em;
        content: '';
        border-top: 1.48em solid transparent;
        border-bottom: 1.48em solid transparent;
        border-left: 1.5em solid; }
      #bread a::after {
        z-index: 2;
        border-left-color: #a8bf93; }
      #bread a::before {
        z-index: 1;
        right: -1.8em;
        border-left-color: #ffffff; }
      #bread li:nth-of-type(2) a {
        background: rgba(168, 191, 147, 0.7); }
      #bread li:nth-of-type(2) a:after {
        border-left-color: rgba(168, 191, 147, 0.7); }
      #bread li:nth-of-type(3) a {
        background: rgba(168, 191, 147, 0.4); }
      #bread li:nth-of-typed(3) a:after {
        border-left-color: rgba(168, 191, 147, 0.4); }
      #bread li:nth-of-type(4) a {
        background: rgba(168, 191, 147, 0.1); }
      #bread li:nth-of-type(4) a:after {
        border-left-color: rgba(168, 191, 147, 0.1); }
      #bread li:last-of-type {
        padding-left: 2em;
        background: none; }
        #bread li:last-of-type a {
          border-radius: 0 5px 5px 0;
          cursor: default;
          pointer-events: none;
          background: none;
          color: #000 !important; }
          #bread li:last-of-type a:after {
            border-left-color: none; }
          #bread li:last-of-type a::before, #bread li:last-of-type a::after {
            content: none !important; } }

#contents h2 span,
#contents h3 span,
#contents h4 span,
#contents h5 span,
#contents .inline span {
  display: inline-block; }

@media only screen and (max-width: 560px) {
  .inlineSp span {
    display: inline-block; } }
h1 {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal; }

#contents h2,
#contents h3,
#contents h4 {
  font-weight: 400;
  font-style: normal; }

@media only screen and (max-width: 560px) {
  .low #contents {
    margin-bottom: 0; } }
.low #contents h2 {
  color: #7b8d42;
  text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
  padding: 30px 0 5px 0;
  margin-bottom: 40px; }
  .low #contents h2 span {
    display: inline-block; }
  @media print, screen and (min-width: 561px) {
    .low #contents h2 {
      font-weight: bold; } }
  @media only screen and (min-width: 561px) and (max-width: 959px) {
    .low #contents h2 {
      font-size: 2rem; } }
  @media only screen and (max-width: 560px) {
    .low #contents h2 {
      font-weight: 500;
      font-size: 6vw; } }
.low #contents h3 {
  display: inline-block;
  margin-bottom: 15px;
  padding-left: 0;
  color: #202511; }
  @media only screen and (max-width: 560px) {
    .low #contents h3 {
      display: block; }
      .low #contents h3 span {
        display: inline-block; } }
  .low #contents h3:before {
    display: inline-block;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #7b8d42;
    margin-right: 6px; }
  .low #contents h3:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both; }
.low #contents h4 {
  display: inline-block;
  margin-bottom: 15px;
  border-bottom: 3px dotted #7b8d42;
  padding-left: 5px;
  padding-right: 5px; }

#contentsFooter {
  padding: 5% 100px;
  background: #f1e3d3; }
  #contentsFooter .logo {
    width: 50%;
    max-width: 400px;
    margin: 0 auto 100px auto; }
  #contentsFooter #gmap iframe {
    width: 90%;
    margin: 0 auto; }
  #contentsFooter h2 {
    margin-bottom: 30px;
    text-align: center !important;
    font-weight: normal;
    color: #13def6; }
  #contentsFooter h3 {
    margin-bottom: 20px;
    text-align: center !important;
    font-weight: normal; }
  @media only screen and (max-width: 560px) {
    #contentsFooter .innerBlock {
      width: 92%;
      margin: 0 auto; } }
  @media print, screen and (min-width: 561px) {
    #contentsFooter #cf2banner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: stretch; }
      #contentsFooter #cf2banner li {
        -webkit-box-flex: 1 1 "";
        -ms-flex: 1 1 "";
        flex: 1 1 "";
        margin: 0 2% 50px 2%; }
        #contentsFooter #cf2banner li a {
          display: block; }
        #contentsFooter #cf2banner li img {
          display: block;
          width: 100%; } }
  @media only screen and (max-width: 560px) {
    #contentsFooter #cf2banner {
      display: none; } }
  @media print, screen and (min-width: 561px) {
    #contentsFooter #cf1 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: stretch;
      width: 90%; } }
  #contentsFooter #cf1 .cf1L p {
    margin-top: 1em; }
  #contentsFooter #cf1 .cf1L dd {
    padding-left: 1.25em; }
    #contentsFooter #cf1 .cf1L dd::before {
      content: "";
      width: 0.6em;
      height: 0.6em;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      background: #7b8d42;
      border-radius: 50%; }
  #contentsFooter #cf1 .cf1L .line {
    display: grid;
    grid-template-columns: max-content max-content;
    grid-template-rows: auto;
    gap: 0px 0;
    grid-template-areas: "txt image"; }
    #contentsFooter #cf1 .cf1L .line span {
      justify-self: start;
      align-self: center;
      grid-area: txt; }
    #contentsFooter #cf1 .cf1L .line a {
      justify-self: start;
      align-self: center;
      grid-area: image; }
    #contentsFooter #cf1 .cf1L .line img {
      max-width: 100px; }
  @media only screen and (max-width: 560px) {
    #contentsFooter #cf1 .cf1L dl {
      margin-bottom: 20px; }
    #contentsFooter #cf1 .cf1L #telLink {
      color: #fff !important;
      margin: 0 0 14px 0 !important;
      padding: 5px 10px 7px 14px; }
      #contentsFooter #cf1 .cf1L #telLink a {
        font-size: 1rem !important; } }
  @media print, screen and (min-width: 561px) {
    #contentsFooter #cf1 .cf1L {
      flex-basis: 55%; } }
  #contentsFooter #cf1 .cf1R .timetable {
    margin-top: 1em; }
  @media print, screen and (min-width: 561px) {
    #contentsFooter #cf1 .cf1R {
      flex-basis: 40%; } }

footer {
  margin: 0 auto; }
  @media only screen and (max-width: 560px) {
    footer {
      position: relative;
      width: 100%;
      text-align: center;
      font-size: 0.8rem;
      color: #fff;
      background: #a8bf93; } }
  @media print, screen and (min-width: 561px) {
    footer {
      background: #2f3619;
      border-top: 3px double #f1e3d3; } }
  @media only screen and (max-width: 560px) {
    footer .innerBlock .logo img {
      width: 80%;
      margin: 0 auto; }
    footer .innerBlock .add {
      color: #068D9D; }
    footer .innerBlock #fm {
      margin: 30px 0; }
      footer .innerBlock #fm ul:not(:last-of-type) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        justify-content: centeer;
        align-items: stratch; }
        footer .innerBlock #fm ul:not(:last-of-type) li {
          text-align: left;
          flex-basis: 46%;
          margin: 0 2%; }
        footer .innerBlock #fm ul:not(:last-of-type) a {
          display: block;
          padding: 8px 0 8px 15px !important;
          color: #000 !important; }
          footer .innerBlock #fm ul:not(:last-of-type) a:before {
            display: inline-block;
            content: "";
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            margin-right: 0.7em;
            color: #c0c0c0; }
      footer .innerBlock #fm ul:last-of-type {
        margin: 30px auto 0 auto; } }
  @media print, screen and (min-width: 561px) {
    footer .innerBlock #fm {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: wrap;
      justify-content: centeer;
      align-items: stratch; }
      footer .innerBlock #fm ul {
        flex-basis: 22%;
        margin: 0 1.5%; }
        footer .innerBlock #fm ul a {
          position: relative;
          padding-left: 15px;
          color: #fff;
          font-size: 0.875rem; }
          footer .innerBlock #fm ul a::after {
            content: "";
            position: absolute;
            top: 50%;
            left: 6px;
            width: 0px;
            height: 0px;
            margin-top: -4px;
            border-left: 4px solid #c0c0c0;
            border-top: 4px solid transparent;
            border-bottom: 4px solid transparent; }
          footer .innerBlock #fm ul a:hover {
            color: #E5CEDC; } }
  footer .innerBlock #fm .bn a {
    display: block;
    margin: 0 auto;
    padding-left: 0; }
    footer .innerBlock #fm .bn a::after {
      content: none; }
    @media only screen and (max-width: 560px) {
      footer .innerBlock #fm .bn a {
        max-width: 210px; } }
    @media print, screen and (min-width: 561px) {
      footer .innerBlock #fm .bn a {
        max-width: 210px; } }
  @media only screen and (max-width: 560px) {
    footer #copy {
      text-align: center; }
      footer #copy a {
        font-size: 2.4vw;
        color: #5a5a5a !important;
        line-height: 1 !important; } }
  @media print, screen and (min-width: 561px) {
    footer #copy {
      margin-top: 20px;
      text-align: right; }
      footer #copy a {
        font-size: 0.75rem;
        color: #8d8d8d !important; } }

@media print, screen and (min-width: 561px) {
  .ptBtn {
    position: fixed;
    bottom: 80px;
    right: 26px; }
    .ptBtn a {
      display: block;
      padding: 6px;
      background: black;
      box-sizing: border-box;
      border-radius: 50%;
      color: #fff;
      text-align: center;
      transition: 300ms ease-in-out; }
      .ptBtn a:hover {
        background: #3e4821; }
      .ptBtn a span {
        display: block;
        font-size: 0.85rem; }
    .ptBtn img {
      margin: 0 auto; } }
@media only screen and (max-width: 560px) {
  #footerAsk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    border-top: 1px solid #fff;
    background: #2f3619; }
    #footerAsk li {
      -webkit-box-flex: 1 1 "";
      -ms-flex: 1 1 "";
      flex: 1 1 "";
      text-align: center;
      border-right: 1px solid #fff; }
      #footerAsk li a {
        display: block;
        padding: 12px 0;
        background: #2f3619;
        color: #fff;
        text-decoration: none; }
        #footerAsk li a i {
          margin-right: 0.5em;
          color: #fff; }
      #footerAsk li:nth-child(1) {
        width: 80%; }
        #footerAsk li:nth-child(1) i {
          transform: rotate(-20deg); }
        #footerAsk li:nth-child(1) a {
          font-size: 4.2vw; }
          #footerAsk li:nth-child(1) a span {
            letter-spacing: 0.4vw;
            font-size: 5vw;
            text-shadow: 1px 1px 3px #000; }
            #footerAsk li:nth-child(1) a span:after {
              display: inline-block;
              content: "";
              font-family: "Font Awesome 5 Free";
              font-weight: 900;
              margin-left: 0.3em; }
      #footerAsk li:nth-child(2) {
        width: 20%;
        border-right: none; }
        #footerAsk li:nth-child(2) a {
          font-size: 3.5vw; } }
#pageNav {
  padding: 0 1em;
  border: 1px solid #c0c0c0; }
  @media only screen and (max-width: 560px) {
    #pageNav {
      margin-bottom: 40px; } }
  @media print, screen and (min-width: 561px) {
    #pageNav {
      display: table;
      margin-top: 55px;
      box-shadow: -1px 1px 5px #c0c0c0; } }
  #pageNav p {
    position: relative;
    margin: 1em 0;
    padding-left: 1em;
    border-bottom: 2px solid #c0c0c0; }
    #pageNav p::after {
      content: "";
      display: block;
      position: absolute;
      bottom: -2px;
      left: 0;
      height: 2px;
      width: 4.5em;
      background-color: #7b8d42; }
  #pageNav ul li {
    position: relative;
    margin: 20px 0 !important;
    padding-left: 1em;
    line-height: 1.3; }
    #pageNav ul li::before {
      position: absolute;
      top: 0;
      left: 0;
      content: "・";
      color: #7b8d42; }

.blogBtn li {
  background: #fff; }
  @media only screen and (max-width: 560px) {
    .blogBtn li {
      flex-basis: 48%;
      max-width: auto; } }
  @media print, screen and (min-width: 561px) {
    .blogBtn li {
      flex-basis: 20%;
      max-width: 173px; } }
.blogBtn li:first-child {
  border: 1px solid #FF0000 !important; }
.blogBtn li:nth-child(2) {
  border: 1px solid #7b8d42 !important; }
.blogBtn li:nth-child(3) {
  border: 1px solid #7b8d42 !important; }
.blogBtn a {
  padding: 0 2%; }

.table_t02 {
  border: 1px solid #ccc;
  width: 95%;
  margin: 0 auto;
  margin-bottom: 10px; }

.table_t02 th,
.table_t02 td {
  padding: 4px 7px;
  border: 1px solid #ccc;
  font-size: 0.9em; }

.table_t02 th {
  background: #90c31f;
  font-weight: bold; }

@media only screen and (max-width: 560px) {
  .timetable {
    margin-bottom: 40px; } }
.timetable table {
  width: 100%;
  max-width: 600px;
  margin-bottom: 10px;
  border: none;
  border-collapse: separate;
  border-spacing: 0;
  text-align: center; }
  .timetable table th, .timetable table td {
    vertical-align: middle;
    border: none;
    border-bottom: 2px solid #fff; }
    @media print, screen and (min-width: 561px) {
      .timetable table th, .timetable table td {
        width: 100%;
        font-weight: bold !important; } }
    .timetable table th:last-child, .timetable table td:last-child {
      border-right: none; }
  .timetable table thead th {
    padding: 7px auto;
    background: #7b8d42;
    color: #fff; }
    #contents .timetable table thead th {
      background: #7b8d42;
      color: #fff;
      font-weight: 500 !important; }
      @media only screen and (max-width: 560px) {
        #contents .timetable table thead th {
          padding: 10px 0px; } }
      @media print, screen and (min-width: 561px) {
        #contents .timetable table thead th {
          padding: 10px 5px; } }
    @media only screen and (max-width: 560px) {
      #contentsFooter .timetable table thead th {
        padding: 8px 0px; } }
    @media print, screen and (min-width: 561px) {
      #contentsFooter .timetable table thead th {
        padding: 10px 5px; } }
  .timetable table tbody tr:last-child th, .timetable table tbody tr:last-child td {
    border-bottom: none; }
  .timetable table tbody th, .timetable table tbody td {
    background-color: #f5f8f3;
    text-align: center;
    vertical-align: middle; }
    @media print, screen and (min-width: 561px) {
      .timetable table tbody th, .timetable table tbody td {
        padding: 10px 0.7em !important; } }
    @media only screen and (max-width: 560px) {
      #contents .timetable table tbody th, #contents .timetable table tbody td {
        padding: 10px 0 !important; } }
    @media print, screen and (min-width: 561px) {
      #contents .timetable table tbody th, #contents .timetable table tbody td {
        padding: 15px !important; } }
    @media only screen and (max-width: 560px) {
      #contentsFooter .timetable table tbody th, #contentsFooter .timetable table tbody td {
        padding: 10px 0 !important; } }
    @media print, screen and (min-width: 561px) {
      #contentsFooter .timetable table tbody th, #contentsFooter .timetable table tbody td {
        padding: 10px auto !important; } }
  .timetable table tbody th {
    text-align: center;
    color: black; }
    .timetable table tbody th span.cat {
      display: inline-block;
      width: 3em;
      margin-right: 1em;
      text-align: right; }
    .timetable table tbody th span.time {
      display: inline-block;
      width: 9em; }
    @media only screen and (max-width: 560px) {
      .timetable table tbody th {
        font-size: 4.0vw; } }
    @media print, screen and (min-width: 561px) {
      .timetable table tbody th {
        font-size: 24px; } }
    #contentsFooter .timetable table tbody th {
      font-weight: 500 !important; }
      @media only screen and (max-width: 560px) {
        #contentsFooter .timetable table tbody th {
          font-size: 3.5vw; } }
      @media print, screen and (min-width: 561px) {
        #contentsFooter .timetable table tbody th {
          font-size: 18px; } }
  .timetable table tbody td {
    position: relative; }
    .timetable table tbody td:before {
      display: block;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
    .timetable table tbody td.no:before {
      content: "／";
      color: #10140c;
      font-size: 0.8em; }
    .timetable table tbody td.sta:before {
      content: " ";
      width: 1.3em;
      height: 1.3em;
      border-radius: 0.65em; }
    .timetable table tbody td.cl1:before {
      background-image: linear-gradient(to top left, #f39f86 0%, #f9d976 74%); }
    #contentsFooter .timetable table tbody td.cl1:before {
      background-image: linear-gradient(to top left, black 0%, #3e4821 74%); }
    @media only screen and (max-width: 560px) {
      .timetable table tbody td {
        min-width: 2.2em !important; }
        .timetable table tbody td.sta:before {
          width: 1.4em;
          height: 1.4em;
          border-radius: 0.7em; } }
    @media print, screen and (min-width: 561px) {
      .timetable table tbody td {
        min-width: 2.2em !important; } }
.timetable p {
  margin-bottom: 0 !important;
  font-size: 0.8em !important; }
  @media only screen and (max-width: 560px) {
    .timetable p {
      font-size: 3vw; } }
  .timetable p img {
    display: inline;
    max-width: 20px; }

@includemedia (pc-tab) {
  .pricetable {
    width: auto; } }
@media only print {
  .pricetable {
    width: 30% !important; } }
.pricetable th,
.pricetable td {
  border: 1px solid #7b8d42;
  vertical-align: middle; }
  .pricetable th span,
  .pricetable td span {
    display: inline-block; }
  @media only screen and (max-width: 560px) {
    .pricetable th,
    .pricetable td {
      font-size: 3.5vw;
      padding: 10px; } }
  @media print, screen and (min-width: 561px) {
    .pricetable th,
    .pricetable td {
      padding: 12px 1em; } }
  @media only print {
    .pricetable th,
    .pricetable td {
      font-size: 10px; } }
.pricetable thead th {
  background: #a8bf93; }
.pricetable tbody th {
  font-weight: bold;
  background: rgba(168, 191, 147, 0.4);
  text-align: left !important;
  font-weight: normal; }
  @media print, screen and (min-width: 561px) {
    .pricetable tbody th {
      white-space: nowrap; } }
.pricetable tbody tr:first-of-type th {
  background: #a8bf93;
  font-weight: bold; }
.pricetable tbody td {
  background: rgba(255, 255, 255, 0.5);
  text-align: right; }

@media print, screen and (min-width: 561px) {
  .checkset_table {
    width: auto; } }
@media only print {
  .checkset_table {
    width: 30% !important; } }
.checkset_table tbody th,
.checkset_table tbody td {
  border: 1px solid #7b8d42;
  vertical-align: middle; }
  .checkset_table tbody th span,
  .checkset_table tbody td span {
    display: inline-block; }
  @media only screen and (max-width: 560px) {
    .checkset_table tbody th,
    .checkset_table tbody td {
      display: block;
      width: 100%;
      padding: 10px;
      font-size: 4vw; } }
  @media print, screen and (min-width: 561px) {
    .checkset_table tbody th,
    .checkset_table tbody td {
      padding: 12px 1em; } }
  @media only print {
    .checkset_table tbody th,
    .checkset_table tbody td {
      font-size: 10px; } }
.checkset_table tbody th {
  background: rgba(168, 191, 147, 0.4);
  text-align: left;
  font-weight: bold; }
  @media print, screen and (min-width: 960px) {
    .checkset_table tbody th {
      white-space: nowrap; } }
.checkset_table tbody td {
  background: #fff;
  text-align: left; }
  .checkset_table tbody td.price {
    text-align: right; }
    @media print, screen and (min-width: 561px) {
      .checkset_table tbody td.price {
        white-space: nowrap; } }

table.recruitTab {
  width: auto;
  margin-bottom: 1em; }
  table.recruitTab th, table.recruitTab td {
    border: 1px solid #7b8d42;
    padding: 10px;
    vertical-align: middle; }
    table.recruitTab th span, table.recruitTab td span {
      display: inline-block; }
  table.recruitTab tbody th {
    font-weight: bold;
    background: #f1e3d3; }
    @media only screen and (max-width: 560px) {
      table.recruitTab tbody th {
        width: 25%; } }
    @media print, screen and (min-width: 561px) {
      table.recruitTab tbody th {
        white-space: nowrap; } }
  table.recruitTab tbody td {
    background: rgba(255, 255, 255, 0.5); }

strong {
  font-weight: bold;
  color: #F25F5C; }

#bread strong {
  font-weight: normal; }

.red {
  color: #F25F5C; }

.blue {
  color: #477fb4; }

.bold {
  font-weight: bold; }

.cc1 {
  color: #730524; }

.italic {
  font-style: italic !important; }
  .italic u {
    color: #f96900 !important; }

u.initial {
  color: #f96900 !important; }

.size-ss {
  font-size: 80% !important; }

.size-s {
  font-size: 88% !important; }

.size-l {
  font-size: 120% !important; }

.size-ll {
  font-size: 150% !important; }

.anno {
  color: #FF0000; }

.anno-s {
  color: #FF0000;
  font-size: 88%; }

.anno-l {
  color: #FF0000;
  font-size: 120%;
  font-weight: bold; }

.anno-ll {
  color: #FF0000;
  font-size: 150%;
  font-weight: bold; }

.anno2 {
  margin: 1em 0em; }
  .anno2 li {
    margin-bottom: 0em;
    color: #44494c;
    font-size: 90%; }
    .anno2 li .red {
      color: #ce0a4c; }
    .anno2 li:before {
      content: "※ "; }

.point1 {
  position: relative;
  font-weight: bold;
  background: rgba(255, 255, 255, 0) linear-gradient(transparent 65%, rgba(254, 154, 128, 0.6) 0%) repeat scroll 0 0;
  color: #000; }

.point2 {
  position: relative;
  font-weight: bold;
  background: rgba(255, 255, 255, 0) linear-gradient(transparent 65%, rgba(242, 95, 92, 0.4) 0%) repeat scroll 0 0;
  color: #000; }

.list-cel {
  padding: 0.4em 1em !important;
  border: 1px solid #d1d1d1;
  background: #f1e3d3; }
  @media only screen and (max-width: 560px) {
    .list-cel {
      display: block; } }
  @media print, screen and (min-width: 561px) {
    .list-cel {
      display: table; } }

.fix img {
  width: auto !important; }

.edge img,
.addImgCap img {
  border: 5px solid #ffffff;
  box-shadow: 1px 1px 7px #000; }

.addImgCap li img {
  margin: 0 auto; }

.photo figcaption {
  margin-top: 10px;
  font-size: 0.9em;
  text-align: center; }
  .photo figcaption:before {
    display: inline-block;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 0.5em; }

.icon {
  display: inline-block;
  max-width: 32px !important; }

.w10 {
  width: 10%;
  height: auto; }

.w15 {
  width: 15%;
  height: auto; }

.w20 {
  width: 20%;
  height: auto; }

.w25 {
  width: 25%;
  height: auto; }

.w30 {
  width: 30%;
  height: auto; }

.w35 {
  width: 35%;
  height: auto; }

.w40 {
  width: 40%;
  height: auto; }

.w45 {
  width: 45%;
  height: auto; }

.w50 {
  width: 50%;
  height: auto; }

.w55 {
  width: 55%;
  height: auto; }

.w60 {
  width: 60%;
  height: auto; }

.w65 {
  width: 65%;
  height: auto; }

.w70 {
  width: 70%;
  height: auto; }

.w75 {
  width: 75%;
  height: auto; }

.w80 {
  width: 80%;
  height: auto; }

.w85 {
  width: 85%;
  height: auto; }

.w90 {
  width: 90%;
  height: auto; }

.w100 {
  width: 100%;
  height: auto; }

.w31 img {
  max-width: 30px; }

.w51 img {
  max-width: 50px; }

.w81 img {
  max-width: 80px; }

.w101 img {
  max-width: 100px; }

.w130 img {
  max-width: 130px; }

.w120 img {
  max-width: 120px; }

.w140 img {
  max-width: 140px; }

.w150 img {
  max-width: 150px; }

.w160 img {
  max-width: 160px; }

.w180 img {
  max-width: 180px; }

.w200 img {
  max-width: 200px; }

.w220 img {
  max-width: 220px; }

.w230 img {
  max-width: 230px; }

.w240 img {
  max-width: 230px; }

.w250 img {
  max-width: 250px; }

.w260 img {
  max-width: 260px; }

.w280 img {
  max-width: 280px; }

.w290 img {
  max-width: 290px; }

.w300 img {
  max-width: 300px; }

.w320 img {
  max-width: 320px; }

.w330 img {
  max-width: 330px; }

.w350 img {
  max-width: 350px; }

.w360 img {
  max-width: 360px; }

.w370 img {
  max-width: 370px; }

.w380 img {
  max-width: 380px; }

.w400 img {
  max-width: 400px; }

.w410 img {
  max-width: 410px; }

.w420 img {
  max-width: 420px; }

.w430 img {
  max-width: 430px; }

.w440 img {
  max-width: 440px; }

.w450 img {
  max-width: 450px; }

.w470 img {
  max-width: 470px; }

.w480 img {
  max-width: 480px; }

.w500 img {
  max-width: 500px; }

.w530 img {
  max-width: 530px; }

.w550 img {
  max-width: 550px; }

.w560 img {
  max-width: 560px; }

.w570 img {
  max-width: 570px; }

.w580 img {
  max-width: 580px; }

.w600 img {
  max-width: 600px; }

.w620 img {
  max-width: 620px; }

.w630 img {
  max-width: 630px; }

.w640 img {
  max-width: 640px; }

.w650 img {
  max-width: 650px; }

.w680 img {
  max-width: 680px; }

.w700 img {
  max-width: 700px; }

.w720 img {
  max-width: 720px; }

.w750 img {
  max-width: 750px; }

.w780 img {
  max-width: 780px; }

.w800 img {
  max-width: 800px; }

.w840 img {
  max-width: 840px; }

.w860 img {
  max-width: 860px; }

.w900 img {
  max-width: 900px; }

.w960 img {
  max-width: 960px; }

.w1000 img {
  max-width: 1000px; }

.w1200 img {
  max-width: 1200px; }

.h250 {
  max-height: 250px;
  width: auto; }

.block {
  display: block; }

.in_block {
  display: inline-block; }

.ind1 {
  text-indent: -1em;
  margin-left: 1em; }

.center {
  text-align: center; }

.right {
  text-align: right; }

.left {
  text-align: left; }

.posR {
  float: right; }

.posL {
  float: left; }

.posC {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.imgR {
  float: right;
  margin: 0 0 15px 5%; }

.imgL {
  float: left;
  margin: 0 5% 15px 0; }

.imgC img {
  display: block;
  margin: 0 auto; }

.posR img,
.imgR img {
  margin-right: 0;
  margin-left: auto; }

#contents section p,
#contents .section p {
  margin-bottom: 1em; }

h2 span,
h3 span,
h4 span,
h5 span,
.inline span {
  display: inline-block; }

h2 span.w31 img {
  display: inline !important;
  margin-left: 5px; }

.inline-li li {
  display: inline-block;
  margin-right: 0.5em; }
  .inline-li li:before {
    content: "・";
    color: #666;
    font-weight: bold; }

#contents ul.list-nor li {
  margin-left: 1.5em;
  margin-bottom: 0.7em;
  padding-left: 0.2em;
  list-style: disc; }

#contents section ol li,
#contents .section ol li {
  margin-bottom: 0.7em; }

.list-tp1 > li {
  padding: 0.5em 0 0.3em 3%;
  border-bottom: 1px dotted #c0c0c0;
  line-height: 1.3em; }

.list-tp2,
.list-tp2b,
.list-tp2-in {
  list-style: none !important; }

.list-tp2 > li,
.list-tp2b > li {
  margin-left: 1em;
  margin-bottom: 0.8em;
  padding-left: 1em;
  line-height: 1.4em;
  list-style: none !important; }

.list-tp2-in > li {
  display: inline-block;
  margin-right: 35px; }

.list-tp2b > li {
  margin-bottom: 0.3em;
  line-height: 1.3em; }

.list-tp2 > li:before,
.list-tp2-in > li:before,
.list-tp2b > li:before {
  position: relative;
  content: '';
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 100%;
  background: #7b8d42;
  left: -5px;
  top: -3px; }

.dl-tp1 dt {
  margin-top: 0.8em;
  padding: 0.3em 0 0.1em 1.4%;
  line-height: 1.3em;
  font-weight: bold;
  border-left: 4px solid #7b8d42; }
.dl-tp1 dd {
  padding: 0.5em 0 0.3em 2%;
  border-bottom: 1px dotted #666;
  line-height: 1.3em; }
.dl-tp1 dd:last-child {
  border-bottom: none; }

.dl-tp2 dt {
  margin-top: 0.8em;
  line-height: 1.3em;
  font-weight: bold; }
.dl-tp2 dd {
  padding: 0.2em 0 0.3em 0.3em;
  line-height: 1.3em; }

.dl-table {
  display: table;
  line-height: 1.3em; }
  .dl-table dt {
    margin-top: 0.6em;
    padding: 0.3em 0 0.1em 10px;
    font-weight: normal;
    border-left: none; }
  .dl-table dd {
    margin: -1.4em 0 0.6em 0;
    padding: 0 10px 0.3em 8em;
    border-bottom: 1px dotted #CCC; }

.linkBlock li {
  margin-bottom: 0.7em; }
  @media only screen and (max-width: 560px) {
    .linkBlock li {
      display: block; } }
  @media print, screen and (min-width: 561px) {
    .linkBlock li {
      display: table; } }
  .linkBlock li a {
    display: block;
    padding: 0.8em !important;
    border: 1px solid #a8bf93;
    background-color: rgba(168, 191, 147, 0.4) !important; }

.linkAwe a {
  text-decoration: none; }
  .linkAwe a:after {
    display: inline-block;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 5px; }

.btn-this {
  display: inline-table;
  margin: 1em auto; }
  .btn-this a {
    display: block;
    padding: 0.3em 1.5em;
    color: #fff !important;
    font-size: 0.95em;
    text-decoration: none !important;
    border: 1px solid #d3d3d3;
    border-radius: 4px;
    background: linear-gradient(to right, #117afd 47%, rgba(17, 122, 253, 0.5) 94%); }
    .btn-this a::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 5%;
      width: 6px;
      height: 6px;
      margin-top: -3px;
      border-top: 1px solid #fff;
      border-right: 1px solid #fff;
      transform: rotate(45deg); }
    .btn-this a:hover {
      background: linear-gradient(to right, rgba(17, 122, 253, 0.8) 47%, rgba(17, 122, 253, 0.4) 94%); }

@media only screen and (max-width: 560px) {
  .hideSp,
  .dispTab,
  .dispPc {
    display: none !important; }

  .w10,
  .w15,
  .w20,
  .w25,
  .w30 {
    width: 45%;
    height: auto; }

  .w35,
  .w40,
  .w45,
  .w50,
  .w55,
  .w60,
  .w65,
  .w70,
  .w75,
  .w80,
  .w85,
  .w90,
  .w100 {
    width: 100%;
    height: auto; }

  .tel #telLink,
  .tel #telLink2 {
    position: relative;
    display: table;
    vertical-align: middle;
    margin-right: auto;
    margin-left: auto;
    padding: 10px;
    line-height: 1;
    background-color: #117afd !important;
    border-radius: 4px; }
    .tel #telLink .btn,
    .tel #telLink2 .btn {
      position: relative;
      color: #fff !important;
      text-decoration: none !important;
      font-size: 1.5em; }
      .tel #telLink .btn:before,
      .tel #telLink2 .btn:before {
        display: inline-block;
        content: "";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-right: 0.5em;
        transform: rotate(-30deg);
        font-size: 1.3em; }

  .scroll {
    overflow-x: scroll;
    white-space: nowrap; }
    .scroll table {
      width: auto;
      margin-top: 0 !important; }
    .scroll::-webkit-scrollbar {
      height: 5px; }
    .scroll::-webkit-scrollbar-track {
      border-radius: 5px;
      background: #eee; }
    .scroll::-webkit-scrollbar-thumb {
      border-radius: 5px;
      background: #666; } }
  @media only screen and (max-width: 560px) and (max-width: 560px) {
    .scroll th, .scroll td {
      -webkit-text-size-adjust: 100%; } }

@media only screen and (max-width: 560px) {
  .form th,
  .form td {
    display: block;
    padding: 0.8em 1em 0.5em 1em;
    border: none;
    text-align: left;
    font-size: 95%; }
  .form th {
    padding: 0.6em 0em 0.4em 1em; }
  .form td {
    padding: 1em 0em 1.5em 1em; } }
/* タブレット向けのレイアウトの指定  ------------*/
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .dispSp,
  .dispPri,
  .dispPc,
  .hideTab {
    display: none !important; } }
/* PC向けのレイアウトの指定  ------------*/
@media print, screen and (min-width: 960px) {
  .hidePc,
  .dispTab,
  .dispSp,
  .dispPri {
    display: none !important; } }
.home .fade {
  opacity: 0;
  transform: translateY(45px);
  transition: all 0.9s ease-out; }
  .home .fade.on {
    opacity: 1;
    transform: translateY(0); }
.home #hdImage {
  width: 100%; }
  @media only screen and (max-width: 560px) {
    .home #hdImage {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background-repeat: no-repeat;
      background-position: left, center;
      background-size: auto 100%; }
      .webp .home #hdImage {
        background-image: url("../img/hdImage-sp.webp"); }
      .no-webp .home #hdImage {
        background-image: url("../img/hdImage-sp.jpg"); }
      .home #hdImage div {
        width: 100%; } }
  @media print, screen and (min-width: 561px) {
    .home #hdImage {
      position: relative;
      background-position: left, center;
      background-size: cover; }
      .webp .home #hdImage {
        background-image: url("../img/hdImage-pc.webp"); }
      .no-webp .home #hdImage {
        background-image: url("../img/hdImage-pc.jpg"); }
      .home #hdImage div {
        width: 100%;
        min-height: 1000px; } }
  @media only print {
    .home #hdImage {
      position: absolute;
      top: 0px;
      left: 0;
      width: 100%;
      height: 100mm !important;
      background-size: 100% auto; }
      .home #hdImage div {
        min-height: auto; } }
.home #spot1,
.home #spot2 {
  display: table;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 4px; }
  @media only screen and (max-width: 560px) {
    .home #spot1,
    .home #spot2 {
      width: 94%;
      margin: 0 auto 1em;
      padding: 5px 3vw;
      font-size: 3.5vw;
      line-height: 1.4; } }
  @media print, screen and (min-width: 561px) {
    .home #spot1,
    .home #spot2 {
      margin: 1.2em 0 1.2em 9%;
      padding: 8px 14px;
      font-size: 1.2rem; } }
.home #spot1 {
  font-weight: 500; }
  @media only screen and (max-width: 560px) {
    .home #spot1 {
      color: #000; } }
  @media print, screen and (min-width: 960px) {
    .home #spot1 {
      color: #6a8b5b; } }
.home #spot2 {
  background: rgba(249, 105, 0, 0.8);
  font-weight: bold; }
  .home #spot2 .linkAwe a {
    color: #000 !important; }
@media only screen and (max-width: 560px) {
  .home #homeInfo {
    padding: 50px 0 !important; } }
@media print, screen and (min-width: 561px) {
  .home #homeInfo {
    padding: 80px 0 !important; } }
.home #homeInfo h2 {
  text-align: center;
  color: #3e4821; }
  @media only screen and (max-width: 560px) {
    .home #homeInfo h2 {
      margin-bottom: 25px; } }
  .home #homeInfo h2 span {
    display: block;
    color: #c0c0c0;
    line-height: 1.2; }
.home #homeInfo #spot {
  margin: 20px auto 20px auto !important;
  border: 2px solid #FE9A80;
  background: #fff; }
  .home #homeInfo #spot h3 {
    letter-spacing: normal; }
    .home #homeInfo #spot h3:after {
      display: inline-block;
      content: "";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      margin-left: 1em;
      color: #117afd; }
    .home #homeInfo #spot h3:hover {
      cursor: pointer; }
  @media only screen and (max-width: 560px) {
    .home #homeInfo #spot {
      width: 90%;
      margin: 100px auto 0 auto;
      padding: 0.6em !important; }
      .home #homeInfo #spot h3 {
        font-size: 4.2vw;
        text-align: center; }
        .home #homeInfo #spot h3:after {
          display: block;
          margin-left: auto;
          margin-right: auto; }
      .home #homeInfo #spot div {
        margin-top: 40px; } }
  @media print, screen and (min-width: 561px) {
    .home #homeInfo #spot {
      display: table;
      margin: 100px auto 0 auto;
      padding: 1em !important;
      font-size: 1rem;
      border-radius: 4px; }
      .home #homeInfo #spot h3:hover {
        cursor: pointer;
        color: #117afd; }
      .home #homeInfo #spot div {
        margin-top: 50px; } }
  @media only print {
    .home #homeInfo #spot {
      margin: 0px auto !important;
      padding-top: 30px !important; } }
.home #homeInfo #newsSpot {
  margin: auto;
  background: #fff; }
  @media only screen and (max-width: 560px) {
    .home #homeInfo #newsSpot {
      width: 90%;
      padding: 10px;
      border: 1px dotted #7b8d42; } }
  @media print, screen and (min-width: 561px) {
    .home #homeInfo #newsSpot {
      display: table;
      margin: 0 auto;
      padding: 10px 2%;
      background: #ffffff;
      border: 1px solid #c0c0c0;
      border-radius: 4px; } }
  .home #homeInfo #newsSpot dt {
    display: none; }
@media only screen and (max-width: 560px) {
  .home #intro {
    width: 80%;
    margin: 0 auto;
    padding: 50px 0 !important; }
    .home #intro h2 {
      margin-bottom: 40px;
      font-size: 5.8vw; }
    .home #intro .name {
      margin-top: 2em;
      font-size: 0.8em;
      line-height: 1.3; }
    .home #intro .fade {
      margin-top: 3em; } }
@media print, screen and (min-width: 561px) {
  .home #intro {
    width: 90%;
    max-width: 1200px !important;
    margin: 0 auto;
    padding: 80px 0 !important;
    font-size: 1.2rem; }
    .home #intro h2 {
      margin-bottom: 50px;
      font-size: 2.2rem; }
      .home #intro h2 span {
        display: block;
        text-align: right; }
    .home #intro .name {
      margin-top: 2em;
      font-size: 0.9em;
      line-height: 1.4; }
    .home #intro .fade {
      margin-top: 4em; } }
@media only print {
  .home #intro {
    margin: 0px auto !important;
    padding-top: 30px !important; }
    .home #intro h2, .home #intro h2 span {
      font-size: 2.2rem !important; } }
@media only screen and (min-width: 561px) and (max-width: 1000px) {
  .home #intro h2 {
    font-size: 3.8vw; }
    .home #intro h2 span {
      display: block;
      text-align: left; } }
@media only screen and (max-width: 560px) {
  .home #homeTreat #homeIntro {
    padding: 1em 3%;
    background: url("../img/reason02-sp.webp") no-repeat center center/cover; } }
@media print, screen and (min-width: 561px) {
  .home #homeTreat #homeIntro {
    padding: 2em;
    background: url("../img/reason02.webp") no-repeat right center/cover; } }
.home #homeTreat #homeIntro h2 {
  color: #f96900; }
  @media only screen and (max-width: 560px) {
    .home #homeTreat #homeIntro h2 {
      font-size: 4.5vw; } }
  .home #homeTreat #homeIntro h2::after {
    content: none; }
@media only screen and (max-width: 560px) {
  .home #homeTreat #homeIntro ul {
    margin-bottom: 50px; } }
.home #homeTreat #homeIntro li {
  text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
.home #homeTreat #homeIntro p {
  padding: 1em;
  background: rgba(255, 255, 255, 0.7); }
.home #homeTreat > div > div h2 {
  margin-bottom: 20px;
  color: #FE9A80; }
  .home #homeTreat > div > div h2 span {
    display: inline-block;
    padding-right: 1em; }
.home #homeTreat > div > div h3 {
  font-weight: 500 !important; }
.home #homeTreat > div > div ul li {
  background: #fff;
  border-radius: 4px;
  border: 3px double #c0c0c0; }
  .home #homeTreat > div > div ul li a {
    position: relative;
    display: table;
    margin: 1em auto;
    padding: 0.6em 85px 0.6em 0.6em;
    text-decoration: none !important;
    background: #FE9A80;
    color: #fff;
    font-weight: bold !important;
    text-align: center;
    border: 1px solid #fff; }
    .home #homeTreat > div > div ul li a::after {
      content: "";
      display: block;
      width: 3em;
      height: 1em;
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      background: url("../img/linkarrow2.svg") no-repeat right center/contain; }
.home #homeTreat .block1 ul li:last-of-type {
  background: url("../treat/img/bridalCheck_bg.jpg") no-repeat right top/cover; }
  .home #homeTreat .block1 ul li:last-of-type h3 {
    display: block;
    margin-bottom: 10px;
    font-weight: bold; }
  .home #homeTreat .block1 ul li:last-of-type strong {
    display: inline-block;
    color: #f96900;
    font-size: 1.5rem;
    text-shadow: #fff 3px 0px, #fff -3px 0px, #fff 0px -3px, #fff 0px 3px, #fff 3px 3px, #fff -3px 3px, #fff 3px -3px, #fff -3px -3px, #fff 1px 3px, #fff -1px 3px, #fff 1px -3px, #fff -1px -3px, #fff 3px 1px, #fff -3px 1px, #fff 3px -1px, #fff -3px -1px; }
  .home #homeTreat .block1 ul li:last-of-type span {
    display: inline-block;
    color: #068D9D;
    font-size: 1.2rem;
    font-weight: bold;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
    .home #homeTreat .block1 ul li:last-of-type span:before {
      content: "～"; }
  .home #homeTreat .block1 ul li:last-of-type p, .home #homeTreat .block1 ul li:last-of-type p a {
    font-size: 1rem; }
  .home #homeTreat .block1 ul li:last-of-type p {
    font-weight: 500; }
@media only screen and (max-width: 560px) {
  .home #homeTreat > div {
    width: 90%;
    margin: 0 auto;
    padding: 50px 0 !important; }
    .home #homeTreat > div h2 {
      margin-bottom: 0.7em;
      font-size: 5.2vw;
      font-weight: 700; }
      .home #homeTreat > div h2 img {
        display: inline-block;
        width: auto;
        max-height: 50px; }
    .home #homeTreat > div h3 {
      font-size: 4.8vw; }
    .home #homeTreat > div > div {
      margin-bottom: 60px; }
      .home #homeTreat > div > div li {
        margin-bottom: 30px;
        padding: 30px 3% 0 3%; }
        .home #homeTreat > div > div li a {
          font-size: 0.9em; } }
@media print, screen and (min-width: 561px) {
  .home #homeTreat {
    padding: 80px 0 !important;
    font-size: 1.2rem; }
    .home #homeTreat > div {
      width: 90%;
      max-width: 1200px !important;
      margin: 0 auto;
      padding: 50px 0 30px 0 !important; }
      .home #homeTreat > div h2 img {
        display: inline-block;
        width: auto;
        max-height: 62px; }
      .home #homeTreat > div > div {
        margin-bottom: 80px; }
        .home #homeTreat > div > div ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          flex-wrap: wrap;
          justify-content: start;
          align-items: stretch; }
          .home #homeTreat > div > div ul li {
            max-width: 30em;
            padding: 30px 3%;
            margin-bottom: 30px;
            font-size: 0.9em; }
            .home #homeTreat > div > div ul li a {
              font-size: 0.9em; }
            .home #homeTreat > div > div ul li:nth-of-type(odd) {
              margin-right: 3%; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .home #homeTreat > div > div ul li {
    max-width: 959px !important; } }
@media only print {
  .home #homeTreat {
    padding: 0 !important; }
    .home #homeTreat > div > div {
      margin-bottom: 40px; } }
.home #reason {
  width: 90%;
  margin: 0 auto; }
  @media only screen and (max-width: 560px) {
    .home #reason {
      padding: 50px 0 !important; }
      .home #reason h2 {
        margin-bottom: 40px;
        font-size: 5.7vw; }
      .home #reason section:not(:last-of-type) {
        margin-bottom: 60px; }
      .home #reason section:not(:first-of-type) img {
        border-radius: 4px; }
      .home #reason h3 {
        margin-bottom: 40px;
        padding: 0.3em 0.5em;
        font-size: 5.2vw !important;
        line-height: 1.3;
        background-color: #FE9A80;
        border-radius: 8px;
        text-align: center; }
        .home #reason h3 span {
          display: block;
          font-size: 2em;
          font-style: italic;
          color: #fff; } }
  @media print, screen and (min-width: 561px) {
    .home #reason {
      max-width: 1200px !important;
      padding: 150px 0 80px 0 !important; }
      .home #reason h2 {
        display: table;
        margin: 0 auto 150px auto !important;
        text-align: center;
        color: #6a8b5b; }
      .home #reason section:not(:last-of-type) {
        margin-bottom: 100px !important; }
      .home #reason section:not(:first-of-type) img {
        border-radius: 4px; }
      .home #reason section > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: stretch; }
        .home #reason section > div .photo,
        .home #reason section > div .text {
          flex-basis: 47%; }
        .home #reason section > div .text {
          font-size: 1.2rem; }
      .home #reason section:nth-of-type(odd) div {
        flex-direction: row-reverse; }
      .home #reason h3 {
        margin-bottom: 40px !important;
        display: table;
        position: relative;
        font-weight: normal;
        color: #000;
        font-size: 1.7rem; }
        .home #reason h3:after {
          content: ' ';
          position: absolute;
          bottom: 0;
          left: 0;
          right: 0;
          z-index: -1;
          border-bottom: 12px solid #FE9A80;
          border-radius: 6px; }
        .home #reason h3 span {
          display: inline-block;
          margin-right: 5px;
          font-size: 2em;
          font-style: italic;
          color: rgba(254, 154, 128, 0.7);
          font-weight: normal !important; }
          .home #reason h3 span:after {
            content: "."; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {
    .home #reason h2 {
      font-size: 3.7vw; } }
  @media only print {
    .home #reason {
      background: #fff; }
      .home #reason > div {
        padding: 50px 0 !important; }
      .home #reason h2 {
        margin-bottom: 80px !important; }
      .home #reason section:not(:last-of-type) {
        margin-bottom: 50px !important; }
      .home #reason section .photo,
      .home #reason section .text {
        flex-basis: 45%; } }
.home #point {
  background: rgba(123, 141, 66, 0.15); }
  .home #point h2 {
    display: table;
    margin: 0 auto 150px auto !important;
    padding-top: 80px;
    background: url("../img/reason_h2.svg") no-repeat center top;
    background-size: 100% auto;
    text-align: center;
    color: #FE9A80; }
    @media print, screen and (min-width: 960px) {
      .home #point h2 {
        font-size: 2rem; } }
    @media only screen and (max-width: 560px) {
      .home #point h2 {
        margin: 0 auto 80px auto !important;
        padding-top: 40px;
        font-size: 5.7vw;
        background-size: 80% auto; } }
  .home #point h3 {
    margin-bottom: 30px;
    text-align: center; }
    @media only screen and (max-width: 560px) {
      .home #point h3 {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        color: #FE9A80 !important;
        font-weight: bold; } }
  .home #point .text {
    width: 90%;
    max-width: 1200px !important;
    margin: 80px auto 100px auto; }
    .home #point .text .bold {
      color: #3e4821; }
  .home #point li {
    position: relative; }
    .home #point li figure {
      text-align: center; }
      .home #point li figure > span {
        display: block;
        position: relative; }
        .home #point li figure > span:after {
          content: ' ';
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          box-shadow: inset 0 0 0px 9px rgba(255, 255, 255, 0.7); }
        .home #point li figure > span img {
          border-radius: 4px; }
      .home #point li figure figcaption {
        display: block;
        position: relative;
        margin-bottom: 2em;
        color: #3e4821; }
        .home #point li figure figcaption:before {
          content: attr(data-number);
          display: block;
          margin-bottom: 10px;
          color: #7b8d42;
          font-size: 1.5em;
          font-style: italic;
          font-family: "Times New Roman", Times, "serif"; }
        .home #point li figure figcaption:after {
          content: '';
          position: absolute;
          top: 3em;
          left: 50%;
          transform: translateX(-50%);
          width: 1px;
          height: 1.5em;
          background-color: #7b8d42; }
    .home #point li p {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, 10%);
      width: 98%;
      text-align: center;
      color: #fff;
      text-shadow: 1px 1px 5px black; }
  @media only screen and (max-width: 560px) {
    .home #point {
      margin: 0 auto;
      padding: 50px 0 !important; }
      .home #point li {
        width: 100%;
        margin: 0 auto 50px auto; }
        .home #point li p {
          font-size: 4.5vw; }
      .home #point figcaption {
        font-size: 5vw;
        font-weight: bold; } }
  @media print, screen and (min-width: 561px) {
    .home #point {
      width: 90%;
      max-width: 2000px !important;
      margin: 0 auto;
      padding: 150px 0 80px 0 !important;
      border: 5px double #7b8d42; }
      .home #point .text p {
        font-size: 1.2rem !important; }
      .home #point ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: stretch; }
      .home #point li {
        flex-basis: 30%;
        margin: 0 1%;
        min-width: 320px; }
        .home #point li p {
          font-size: 1.2vw; }
      .home #point figcaption {
        font-size: 1.2em; } }
  @media only screen and (min-width: 2000px) {
    .home #point figcaption {
      font-size: 1.5em; } }
  @media only screen and (max-width: 1999px) and (min-width: 561px) {
    .home #point figcaption {
      font-size: 1.4vw; } }
  @media only screen and (min-width: 2250px) {
    .home #point li p {
      font-size: 24px !important; } }
  @media only screen and (max-width: 560px) {
    .home #point {
      font-size: 4vw; } }
  @media only print {
    .home #point {
      flex-wrap: nowrap;
      padding: 0px !important; }
      .home #point h2 span {
        font-size: 1.5rem; }
      .home #point li {
        min-width: 200px; } }
@media only screen and (max-width: 560px) {
  .home #news {
    padding: 50px 0 !important; } }
@media print, screen and (min-width: 561px) {
  .home #news {
    padding: 80px 0 !important; } }
.home #news h2 {
  text-align: center; }
  @media only screen and (max-width: 560px) {
    .home #news h2 {
      margin-bottom: 25px; } }
  .home #news h2 span {
    display: block;
    color: #c0c0c0;
    line-height: 1.2; }
.home #news div {
  max-width: 1200px !important;
  margin: auto;
  overflow-y: scroll;
  background: #fff; }
  @media only screen and (max-width: 560px) {
    .home #news div {
      width: 90%;
      max-height: 350px;
      padding: 10px 0; } }
  @media print, screen and (min-width: 561px) {
    .home #news div {
      width: 90%;
      max-height: 550px;
      padding: 10px 2% 35px 2%; } }
  .home #news div::-webkit-scrollbar {
    height: 5px; }
  .home #news div::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #f4f4f4; }
  .home #news div::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #7b8d42; }
.home #news dd {
  border-bottom: 1px dotted #c0c0c0; }
.home .news dl {
  margin-bottom: 0 !important; }
.home .news dt {
  color: #7b8d42;
  font-weight: bold; }
  @media only screen and (max-width: 560px) {
    .home .news dt {
      margin-bottom: 7px; } }
.home .news dd {
  margin: -1.6em 0 0.5em 0;
  padding: 0 0 0 8em; }
  .home .news dd .catName {
    display: inline-block;
    width: 8em;
    margin-right: 1em;
    padding: 0 5px;
    font-size: 0.8em;
    font-weight: bold;
    color: #fff;
    text-align: center;
    border-radius: 3px;
    line-height: 1.5; }
  .home .news dd .newMark {
    display: inline-block;
    margin-left: 1em;
    padding: 1px 5px;
    color: #FE2907;
    font-size: 0.8em;
    font-weight: bold;
    border: 1px solid #FE2907;
    border-radius: 3px;
    line-height: 1.2; }
  @media only screen and (max-width: 560px) {
    .home .news dd {
      margin: 0 0 1em 0;
      padding: 0 0 1em 0; } }
  @media print, screen and (min-width: 561px) {
    .home .news dd {
      margin: 0 0 1.5em 0;
      padding: 0 0 1.5em 0; } }
  .home .news dd strong {
    color: inherit;
    font-size: inherit;
    font-weight: bold; }
  .home .news dd a {
    text-decoration: underline !important;
    color: #3B4043; }

.greeting #contents h3 {
  font-family: "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: normal !important; }
@media only screen and (max-width: 560px) {
  .greeting #low01 .photo,
  .greeting #low02 .photo {
    width: 80%;
    margin: 0 auto 25px auto; } }
@media print, screen and (min-width: 561px) {
  .greeting #low01 .photo,
  .greeting #low02 .photo {
    float: left;
    width: 25%;
    max-width: 350px;
    margin: 0 10% 30px 0; } }
@media print, screen and (min-width: 561px) {
  .greeting #low01 .flex,
  .greeting #low02 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch; }
    .greeting #low01 .flex > section,
    .greeting #low02 .flex > section {
      flex-basis: 30%;
      min-width: 400px; } }
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {
  .greeting #low01 .flex,
  .greeting #low02 .flex {
    display: block; }
  .greeting #low01 > section,
  .greeting #low02 > section {
    min-width: 100%;
    margin-right: 0; } }
@media only print {
  .greeting #low01 .flex > section,
  .greeting #low02 .flex > section {
    flex-basis: 28%;
    min-width: 200px; } }
.greeting #low01 .dl-table dd,
.greeting #low02 .dl-table dd {
  margin: -1.5em 0 0.6em 0;
  padding: 0 10px 0.3em 6em; }

@media only screen and (max-width: 560px) {
  .clinic #low03 section figure {
    margin-bottom: 35px; }
  .clinic #low03 section figcaption {
    margin-top: 0.5em; } }
@media print, screen and (min-width: 561px) {
  .clinic #low03 section#innai .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; }
    .clinic #low03 section#innai .flex figure {
      -webkit-box-flex: 0 0 40%;
      -ms-flex: 0 0 40%;
      flex: 0 0 40%;
      margin: 0 5% 50px 5%; }
    .clinic #low03 section#innai .flex figcaption {
      margin-top: 0.5em; }
  .clinic #low03 section#setsubi .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch; }
    .clinic #low03 section#setsubi .flex figure {
      -webkit-box-flex: 0 0 27%;
      -ms-flex: 0 0 27%;
      flex: 0 0 27%;
      margin: 0 3% 45px 3%;
      min-width: 270px; }
    .clinic #low03 section#setsubi .flex figcaption {
      margin-top: 0.5em; } }
@media only print {
  .clinic #low03 section#setsubi .flex {
    flex-wrap: nowrap; }
    .clinic #low03 section#setsubi .flex figure {
      min-width: 200px; } }

.treat .video {
  max-width: 900px;
  margin: 0 auto; }
  .treat .video video {
    width: 100%;
    height: auto; }
  .treat .video dl, .treat .video figure {
    margin-bottom: 50px !important; }
  .treat .video dt, .treat .video figcaption {
    text-align: center;
    font-weight: 500;
    font-size: 1.2em; }
    .treat .video dt:before, .treat .video figcaption:before {
      content: "【"; }
    .treat .video dt:after, .treat .video figcaption:after {
      content: "】"; }
@media print, screen and (min-width: 561px) {
  .treat #low01 .photo {
    max-width: 600px; } }
@media print, screen and (min-width: 561px) {
  .treat #low02 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; } }
.treat #low02 .flex a {
  text-decoration: none;
  border: 1px solid #c0c0c0;
  background: #fff; }
  @media only screen and (max-width: 560px) {
    .treat #low02 .flex a {
      display: block; }
      .treat #low02 .flex a:not(:last-of-type) {
        border-bottom: none; } }
  @media print, screen and (min-width: 561px) {
    .treat #low02 .flex a {
      -webkit-box-flex: 0 0 30%;
      -ms-flex: 0 0 30%;
      flex: 0 0 30%;
      margin: 0 1% 30px 1%; }
      .treat #low02 .flex a:hover {
        background: rgba(123, 141, 66, 0.7); } }
  .treat #low02 .flex a dl {
    margin: 0; }
  .treat #low02 .flex a dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch; }
    @media only screen and (max-width: 560px) {
      .treat #low02 .flex a dt img {
        -webkit-box-flex: 1 1 20%;
        -ms-flex: 1 1 20%;
        flex: 1 1 20%;
        display: block;
        width: 20%;
        padding: 10px;
        background: #7b8d42;
        max-width: 200px; }
      .treat #low02 .flex a dt span {
        -webkit-box-flex: 1 1 80%;
        -ms-flex: 1 1 80%;
        flex: 1 1 80%;
        align-self: center;
        margin-left: 1em;
        color: #068D9D;
        font-size: 5.5vw; } }
    @media print, screen and (min-width: 561px) {
      .treat #low02 .flex a dt img {
        -webkit-box-flex: 1 1 20%;
        -ms-flex: 1 1 20%;
        flex: 1 1 20%;
        display: block;
        width: 20%;
        padding: 10px;
        background: #7b8d42;
        max-width: 200px; }
      .treat #low02 .flex a dt span {
        -webkit-box-flex: 1 1 80%;
        -ms-flex: 1 1 80%;
        flex: 1 1 80%;
        align-self: center;
        margin-left: 1em;
        color: #068D9D;
        font-size: 1.333rem; } }
  .treat #low02 .flex a dd {
    padding: 1em;
    color: #000; }
.treat #ending {
  margin-bottom: 80px !important;
  padding: 50px 1em 1em 1em !important;
  background: #f1e3d3;
  border: 1px solid #7b8d42; }
  .treat #ending::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 8px;
    left: 8px;
    background: #7b8d42;
    z-index: -1; }
  .treat #ending p {
    color: #000; }
    @media print, screen and (min-width: 960px) {
      .treat #ending p {
        font-weight: 500;
        text-align: center;
        font-size: 1.125rem; } }
  .treat #ending figure img {
    display: block;
    width: 100%;
    max-width: 800px;
    margin: 30px auto 10px auto; }
  .treat #ending .linkBlock {
    margin: 30px auto 0 auto; }
    @media print, screen and (min-width: 960px) {
      .treat #ending .linkBlock {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start; }
        .treat #ending .linkBlock li {
          margin: 0 1.5% 18px 1.5%; } }

.trInd #low01 .block {
  margin-bottom: 2em;
  padding: 1em;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  background: #fff; }

@media only screen and (max-width: 560px) {
  .trAzo .eyecatch,
  .trVar .eyecatch {
    float: right;
    width: 45%;
    margin-left: 5%; } }
@media print, screen and (min-width: 561px) {
  .trAzo .eyecatch,
  .trVar .eyecatch {
    float: left;
    width: 30%;
    max-width: 250px;
    margin-right: 3%; } }
@media only screen and (max-width: 560px) {
  .trAzo .photo,
  .trVar .photo {
    width: 76%;
    max-width: 250px;
    margin: 0 auto 30px auto; } }
@media print, screen and (min-width: 561px) {
  .trAzo .photo,
  .trVar .photo {
    float: right;
    width: 25%;
    max-width: 250px;
    margin-left: 5%; } }

@media print, screen and (min-width: 561px) {
  .trVar #lowJisseki div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch; }
    .trVar #lowJisseki div p {
      -webkit-box-flex: 1 1 "";
      -ms-flex: 1 1 "";
      flex: 1 1 "";
      max-width: 600px;
      margin-right: 3%; } }

.trYog .eyecatch {
  max-width: 180px; }
  @media only screen and (max-width: 560px) {
    .trYog .eyecatch {
      float: left;
      width: 30%;
      margin-right: 5%; } }
  @media print, screen and (min-width: 561px) {
    .trYog .eyecatch {
      float: right;
      width: 30%;
      margin-left: 3%; } }
.trYog #low02 .low02_1 .photo {
  max-width: 220px; }
  @media only screen and (max-width: 560px) {
    .trYog #low02 .low02_1 .photo {
      width: 70%;
      margin: 0 auto 30px auto; } }
  @media print, screen and (min-width: 561px) {
    .trYog #low02 .low02_1 .photo {
      float: right;
      width: 20%;
      margin-left: 3%; } }
.trYog #low02 .low02_2 .photo {
  max-width: 160px; }
  @media only screen and (max-width: 560px) {
    .trYog #low02 .low02_2 .photo {
      width: 60%;
      margin: 0 auto 30px auto; } }
  @media print, screen and (min-width: 561px) {
    .trYog #low02 .low02_2 .photo {
      float: left;
      width: 20%;
      margin-left: 3%; } }
@media print, screen and (min-width: 561px) {
  .trYog #low02 .low02_2 ul {
    float: right;
    width: 77%; } }
.trYog #low03 dl {
  margin-bottom: 1.5em; }
.trYog #low03 .gmap {
  max-width: 1000px; }
  @media only screen and (max-width: 560px) {
    .trYog #low03 .gmap iframe {
      height: 300px; } }
  @media print, screen and (min-width: 561px) {
    .trYog #low03 .gmap iframe {
      height: 400px; } }

.trHin #low01 .low01_1 .photo {
  max-width: 200px; }
  @media only screen and (max-width: 560px) {
    .trHin #low01 .low01_1 .photo {
      width: 70%;
      margin: 0 auto 30px auto; } }
  @media print, screen and (min-width: 561px) {
    .trHin #low01 .low01_1 .photo {
      float: left;
      width: 20%;
      margin-right: 3%; } }
@media print, screen and (min-width: 561px) {
  .trHin #low01 .low01_1 .text {
    float: right;
    width: 77%; } }

.trFuTes #intro .grid {
  display: grid; }
  .trFuTes #intro .grid .list-tp2 {
    grid-area: ul; }
  .trFuTes #intro .grid picture {
    align-self: start;
    grid-area: image; }
  .trFuTes #intro .grid p {
    grid-area: txt; }
  @media only screen and (max-width: 560px) {
    .trFuTes #intro .grid {
      grid-template-columns: 1fr;
      grid-template-rows: auto auto auto;
      gap: 20px 0;
      grid-template-areas: "image" "ul" "txt"; } }
  @media print, screen and (min-width: 960px) {
    .trFuTes #intro .grid {
      grid-template-columns: 55% 45%;
      grid-template-rows: auto auto;
      gap: 20px 5%;
      grid-template-areas: "ul image" "txt image"; } }
  .trFuTes #intro .grid .list-tp2 {
    padding: 15px 1em;
    background: #fff; }
    @media only screen and (max-width: 560px) {
      .trFuTes #intro .grid .list-tp2 {
        border: 1px solid #068D9D; } }
.trFuTes #bridalCheck {
  max-width: 960px;
  margin-top: 40px;
  padding: 0em 5% 0 5% !important;
  border: 2px dotted #068D9D;
  border-radius: 4px;
  background: url("../treat/img/bridalCheck_bg.jpg") no-repeat left top;
  background-size: cover; }
  .trFuTes #bridalCheck h2 {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    color: #f96900 !important;
    text-shadow: #fff 3px 0px, #fff -3px 0px, #fff 0px -3px, #fff 0px 3px, #fff 3px 3px, #fff -3px 3px, #fff 3px -3px, #fff -3px -3px, #fff 1px 3px, #fff -1px 3px, #fff 1px -3px, #fff -1px -3px, #fff 3px 1px, #fff -3px 1px, #fff 3px -1px, #fff -3px -1px; }
  .trFuTes #bridalCheck .tit {
    margin-left: 1em;
    color: #068D9D;
    font-size: 1.5rem;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
    .trFuTes #bridalCheck .tit:before {
      content: "～"; }
    @media only screen and (max-width: 560px) {
      .trFuTes #bridalCheck .tit {
        font-size: 5.5vw; } }
  .trFuTes #bridalCheck h3 {
    margin: 40px 0 0em 0 !important;
    color: #068D9D;
    font-size: 1.5rem;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
    .trFuTes #bridalCheck h3:before {
      content: none; }
    @media only screen and (max-width: 560px) {
      .trFuTes #bridalCheck h3 {
        font-size: 5.5vw; } }
  .trFuTes #bridalCheck p:not(.linkAwe):not(.tit),
  .trFuTes #bridalCheck li {
    color: #000 !important;
    font-weight: 500; }
.trFuTes #low_flow {
  counter-reset: number 0; }
  .trFuTes #low_flow section:not(:last-of-type) {
    padding-bottom: 50px;
    background: url("../img/flowArrow.svg") no-repeat; }
    @media only screen and (max-width: 560px) {
      .trFuTes #low_flow section:not(:last-of-type) {
        background-position: center bottom; } }
    @media print, screen and (min-width: 561px) {
      .trFuTes #low_flow section:not(:last-of-type) {
        background-position: 10% bottom; } }
  .trFuTes #low_flow h3 {
    display: block;
    color: #000; }
    .trFuTes #low_flow h3:before {
      display: inline-block;
      padding: 0 0.8em;
      counter-increment: number 1;
      content: counter(number) " ";
      font-size: 1.5em;
      font-style: italic;
      font-weight: normal;
      background: #FE9A80;
      color: #fff;
      border-radius: 50%; }
  @media print, screen and (min-width: 561px) {
    .trFuTes #low_flow section > div {
      margin-left: 5em; }
    .trFuTes #low_flow section > div.tp .text {
      float: left;
      width: 45%; }
    .trFuTes #low_flow section > div.tp .photo {
      float: right;
      width: 45%; } }

.bridalcheck #intro .grid {
  display: grid; }
  .bridalcheck #intro .grid .list-tp2 {
    grid-area: ul; }
  .bridalcheck #intro .grid picture {
    align-self: start;
    grid-area: image; }
  .bridalcheck #intro .grid p {
    grid-area: txt; }
  @media only screen and (max-width: 560px) {
    .bridalcheck #intro .grid {
      grid-template-columns: 1fr;
      grid-template-rows: auto auto auto;
      gap: 20px 0;
      grid-template-areas: "image" "ul" "txt"; } }
  @media print, screen and (min-width: 960px) {
    .bridalcheck #intro .grid {
      grid-template-columns: 55% 45%;
      grid-template-rows: auto auto;
      gap: 20px 5%;
      grid-template-areas: "ul image" "txt image"; } }
  .bridalcheck #intro .grid .list-tp2 {
    padding: 15px 1em;
    background: #fff; }
    @media only screen and (max-width: 560px) {
      .bridalcheck #intro .grid .list-tp2 {
        border: 1px solid #068D9D; } }
.bridalcheck #bridalCheck {
  max-width: 960px;
  margin-top: 40px;
  padding: 0em 5% 0 5% !important;
  border: 2px dotted #068D9D;
  border-radius: 4px;
  background: url("../treat/img/bridalCheck_bg.jpg") no-repeat left top;
  background-size: cover; }
  .bridalcheck #bridalCheck h2 {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    color: #f96900 !important;
    text-shadow: #fff 3px 0px, #fff -3px 0px, #fff 0px -3px, #fff 0px 3px, #fff 3px 3px, #fff -3px 3px, #fff 3px -3px, #fff -3px -3px, #fff 1px 3px, #fff -1px 3px, #fff 1px -3px, #fff -1px -3px, #fff 3px 1px, #fff -3px 1px, #fff 3px -1px, #fff -3px -1px; }
  .bridalcheck #bridalCheck .tit {
    margin-left: 1em;
    color: #068D9D;
    font-size: 1.5rem;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
    .bridalcheck #bridalCheck .tit:before {
      content: "～"; }
    @media only screen and (max-width: 560px) {
      .bridalcheck #bridalCheck .tit {
        font-size: 5.5vw; } }
  .bridalcheck #bridalCheck h3 {
    margin: 40px 0 0em 0 !important;
    color: #068D9D;
    font-size: 1.5rem;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
    .bridalcheck #bridalCheck h3:before {
      content: none; }
    @media only screen and (max-width: 560px) {
      .bridalcheck #bridalCheck h3 {
        font-size: 5.5vw; } }
  .bridalcheck #bridalCheck p:not(.linkAwe):not(.tit),
  .bridalcheck #bridalCheck li {
    color: #000 !important;
    font-weight: 500; }
.bridalcheck #low_flow {
  counter-reset: number 0; }
  .bridalcheck #low_flow section:not(:last-of-type) {
    padding-bottom: 50px;
    background: url("../img/flowArrow.svg") no-repeat; }
    @media only screen and (max-width: 560px) {
      .bridalcheck #low_flow section:not(:last-of-type) {
        background-position: center bottom; } }
    @media print, screen and (min-width: 561px) {
      .bridalcheck #low_flow section:not(:last-of-type) {
        background-position: 10% bottom; } }
  .bridalcheck #low_flow h3 {
    display: block;
    color: #000; }
    .bridalcheck #low_flow h3:before {
      display: inline-block;
      padding: 0 0.8em;
      counter-increment: number 1;
      content: counter(number) " ";
      font-size: 1.5em;
      font-style: italic;
      font-weight: normal;
      background: #FE9A80;
      color: #fff;
      border-radius: 50%; }
  .bridalcheck #low_flow .no-nunber {
    display: block;
    color: #000;
    margin-bottom: 15px;
    padding-left: 0;
    font-size: 150%; }
  @media print, screen and (min-width: 561px) {
    .bridalcheck #low_flow section > div {
      margin-left: 5em; }
    .bridalcheck #low_flow section > div.tp .text {
      float: left;
      width: 45%; }
    .bridalcheck #low_flow section > div.tp .photo {
      float: right;
      width: 45%; } }

@media print, screen and (min-width: 561px) {
  .trFuVar #low01 figure {
    float: right;
    width: 30%; } }
@media only screen and (max-width: 560px) {
  .trFuVar #low01 figure {
    width: 80%;
    margin: 0 auto 35px auto; } }
@media print, screen and (min-width: 561px) {
  .trFuVar #low01 .text {
    float: left;
    width: 65%; } }

.trFuMus .block {
  margin-bottom: 2em;
  padding: 1em;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  background: #fff; }
@media print, screen and (min-width: 561px) {
  .trFuMus #low01 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start; }
    .trFuMus #low01 .flex .text {
      width: 45%; }
    .trFuMus #low01 .flex .video {
      width: 45%; } }
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {
  .trFuMus #low01 .flex {
    display: block; }
    .trFuMus #low01 .flex .text {
      width: 100%; }
    .trFuMus #low01 .flex .video {
      width: 100%; } }

@media only screen and (max-width: 560px) {
  .trFuSei #low01 figure {
    width: 80%;
    margin: 0 auto 30px auto; } }
@media print, screen and (min-width: 561px) {
  .trFuSei #low01 figure {
    float: right;
    width: 30%;
    margin-left: 5%; } }
.trFuSei section:not(#low01) h2 {
  position: relative;
  padding: 0; }
  .trFuSei section:not(#low01) h2::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 100%;
    height: 3px;
    background: #068D9D;
    z-index: -1; }
  .trFuSei section:not(#low01) h2 span {
    display: inline-block;
    padding-right: 1em;
    background: #fff; }
@media print, screen and (min-width: 561px) {
  .trFuSei #low02 .grid,
  .trFuSei #low03 .grid {
    display: grid;
    grid-template-columns: 65% 30%;
    grid-template-rows: auto;
    gap: 0px 5%;
    grid-template-areas: "txt image";
    margin-bottom: 30px; }
    .trFuSei #low02 .grid picture,
    .trFuSei #low03 .grid picture {
      justify-self: stretch;
      align-self: start;
      grid-area: image; }
    .trFuSei #low02 .grid p,
    .trFuSei #low03 .grid p {
      justify-self: start;
      align-self: start;
      grid-area: txt; } }
@media only screen and (max-width: 560px) {
  .trFuSei #low02 .grid picture,
  .trFuSei #low03 .grid picture {
    width: 70% !important;
    margin: auto auto 30px auto; } }
.trFuSei .list-cel {
  background: rgba(123, 141, 66, 0.2); }
  .trFuSei .list-cel h4 {
    font-weight: bold !important;
    display: inline-block;
    margin-bottom: 25px;
    padding-left: 5px;
    padding-right: 5px;
    border-bottom: 3px dotted #cbe3ae;
    color: #6a8b5b; }
  .trFuSei .list-cel h5 {
    margin-bottom: 10px !important;
    font-size: 110%;
    font-weight: bold !important;
    color: #5c9ead; }
.trFuSei #low04b .grid {
  display: grid;
  grid-template-rows: auto auto;
  gap: 20px 5%;
  grid-template-areas: "txt image"; }
  @media only screen and (max-width: 560px) {
    .trFuSei #low04b .grid {
      grid-template-columns: 70% 25%; } }
  @media print, screen and (min-width: 561px) {
    .trFuSei #low04b .grid {
      grid-template-columns: max-content 15%; } }
  .trFuSei #low04b .grid figure {
    justify-self: start;
    align-self: start;
    grid-area: image;
    max-width: 168px; }
    .trFuSei #low04b .grid figure figcaption {
      margin-top: 0.5em;
      text-align: center;
      font-size: 0.84em; }
      @media only screen and (max-width: 560px) {
        .trFuSei #low04b .grid figure figcaption {
          display: none; } }
  .trFuSei #low04b .grid .text {
    justify-self: start;
    align-self: start;
    grid-area: txt; }
    @media print, screen and (min-width: 561px) {
      .trFuSei #low04b .grid .text {
        max-width: 800px; } }
@media print, screen and (min-width: 561px) {
  .trFuSei #low04 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row-reverse; }
    .trFuSei #low04 .flex figure {
      width: 50%;
      max-width: 700px; }
    .trFuSei #low04 .flex p {
      width: 45%; } }

@media only screen and (max-width: 560px) {
  .opAzo .eyecatch,
  .opVar .eyecatch,
  .opFna .eyecatch,
  .opTes .eyecatch {
    float: right;
    width: 45%;
    margin-left: 5%; } }
@media print, screen and (min-width: 561px) {
  .opAzo .eyecatch,
  .opVar .eyecatch,
  .opFna .eyecatch,
  .opTes .eyecatch {
    float: left;
    width: 30%;
    max-width: 250px;
    margin-right: 3%; } }
@media only screen and (max-width: 560px) {
  .opAzo .photo,
  .opVar .photo,
  .opFna .photo,
  .opTes .photo {
    width: 76%;
    max-width: 250px;
    margin: 0 auto 30px auto; } }
@media print, screen and (min-width: 561px) {
  .opAzo .photo,
  .opVar .photo,
  .opFna .photo,
  .opTes .photo {
    float: right;
    width: 25%;
    max-width: 250px;
    margin-left: 5%; } }

@media only screen and (max-width: 560px) {
  .opVar #low01 .photo {
    margin: 0 auto;
    width: 100%;
    max-width: 480px; } }
@media print, screen and (min-width: 960px) {
  .opVar #low01 .text {
    float: left;
    width: 50%; }
  .opVar #low01 .photo {
    float: right;
    width: 45%;
    max-width: 560px; } }
@media only screen and (min-width: 561px) and (max-width: 959px) {
  .opVar #low01 .photo {
    float: none;
    margin: 0 auto;
    width: 80%;
    max-width: 560px; } }
@media print, screen and (min-width: 561px) {
  .opVar #lowJisseki div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch; }
    .opVar #lowJisseki div p {
      -webkit-box-flex: 1 1 "";
      -ms-flex: 1 1 "";
      flex: 1 1 "";
      max-width: 600px;
      margin-right: 3%; } }
@media only print {
  .opVar #lowJisseki div {
    justify-content: space-between; }
    .opVar #lowJisseki div p {
      max-width: 400px;
      margin-right: 0; } }

.opFna figure {
  max-width: 600px;
  margin-bottom: 30px; }
  @media only screen and (max-width: 560px) {
    .opFna figure {
      width: 90%;
      margin-right: auto;
      margin-left: auto; } }
.opFna figcaption {
  font-size: 0.875rem;
  text-align: center; }
@media print, screen and (min-width: 561px) {
  .opFna .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; }
    .opFna .flex figure {
      flex-basis: 45%;
      margin-right: 5%; } }
.opFna .case {
  padding: 1em;
  border: 2px solid #c0c0c0; }
@media print, screen and (min-width: 561px) {
  .opFna .grid1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: 0px 3%;
    grid-template-areas: "txt image"; }
    .opFna .grid1 p {
      align-self: center;
      grid-area: txt; }
    .opFna .grid1 div {
      align-self: stretch;
      grid-area: image; } }
@media print, screen and (min-width: 561px) {
  .opFna .grid2 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    gap: 0px 0px;
    grid-template-areas: "txt" "image"; }
    .opFna .grid2 p {
      align-self: start;
      grid-area: txt; }
    .opFna .grid2 div {
      justify-self: center;
      align-self: start;
      grid-area: image; } }

.first #low_flow {
  counter-reset: number 0; }
  .first #low_flow section:not(:last-of-type) {
    padding-bottom: 50px;
    background: url("../img/flowArrow.svg") no-repeat; }
    @media only screen and (max-width: 560px) {
      .first #low_flow section:not(:last-of-type) {
        background-position: center bottom; } }
    @media print, screen and (min-width: 561px) {
      .first #low_flow section:not(:last-of-type) {
        background-position: 10% bottom; } }
  .first #low_flow h3 {
    display: block;
    color: #000; }
    .first #low_flow h3:before {
      display: inline-block;
      padding: 0 0.8em;
      counter-increment: number 1;
      content: counter(number) " ";
      font-size: 1.5em;
      font-style: italic;
      font-weight: normal;
      background: #FE9A80;
      color: #fff;
      border-radius: 50%; }
  @media print, screen and (min-width: 561px) {
    .first #low_flow section > div {
      margin-left: 5em; }
    .first #low_flow section > div.tp .text {
      float: left;
      width: 45%; }
    .first #low_flow section > div.tp .photo {
      float: right;
      width: 45%; } }
.first #low_hiyou dl {
  display: flex;
  margin: 0; }
.first #low_hiyou dt {
  min-width: 4em; }

.faq #contents dl {
  padding-bottom: 1em;
  margin-bottom: 2em;
  border-bottom: 1px dotted #c0c0c0; }
.faq #contents dt {
  margin-bottom: 1em;
  padding-left: 40px;
  font-size: 1.125rem;
  font-weight: bold; }
  .faq #contents dt:before {
    content: "Q. ";
    position: absolute;
    top: -0.5em;
    left: 0;
    font-size: 2rem;
    color: rgba(249, 105, 0, 0.7); }
.faq #contents dd {
  padding-left: 40px; }
  .faq #contents dd:before {
    content: "A. ";
    position: absolute;
    left: 0;
    font-weight: bold;
    font-size: 1.5rem;
    color: rgba(123, 141, 66, 0.7); }

@media print, screen and (min-width: 960px) {
  .access #lowMap .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch; } }
.access #lowMap .flex p {
  overflow: hidden; }
  @media only screen and (max-width: 959px) {
    .access #lowMap .flex p {
      margin-bottom: 30px; } }
  @media print, screen and (min-width: 960px) {
    .access #lowMap .flex p {
      flex-basis: 50%; } }
@media print, screen and (min-width: 960px) {
  .access #lowMap .flex .photo img {
    width: 100%;
    height: auto; } }
@media only print {
  .access #lowMap .flex .photo img {
    width: auto;
    height: 350px; } }
@media only print {
  .access #lowMap .flex .map iframe {
    height: 350px !important; } }
@media only screen and (max-width: 560px) {
  .access #lowAcc .flex > section:not(:last-of-type) {
    margin-bottom: 100px; } }
@media print, screen and (min-width: 561px) {
  .access #lowAcc .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: no-wrap;
    justify-content: space-between;
    align-items: flex-start; }
    .access #lowAcc .flex > section {
      flex-basis: 45%; } }
.access #lowAcc li {
  position: relative; }
  .access #lowAcc li img {
    max-width: 480px; }
  .access #lowAcc li:not(:last-of-type) figure:after {
    content: url("../img/flowArrow.svg");
    display: block;
    position: relative;
    width: 10%;
    margin-left: 40%; }
    @media only screen and (max-width: 560px) {
      .access #lowAcc li:not(:last-of-type) figure:after {
        height: 80%; } }
    @media print, screen and (min-width: 561px) {
      .access #lowAcc li:not(:last-of-type) figure:after {
        height: auto; } }
  .access #lowAcc li figcaption {
    margin-bottom: 1em; }

/* print Scss */
/*############################################################################################33*/
/* 印刷向けレイアウトの指定 */
/*############################################################################################*/
@media only print {
  @page {
    size: A4; }
  html, body, div, span, object, iframe,
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  abbr, address, cite, code,
  del, dfn, em, img, ins, kbd, q, samp,
  small, strong, sub, sup, var,
  b, i,
  dl, dt, dd, ol, ul, li,
  fieldset, form, label, legend,
  table, caption, tbody, tfoot, thead, tr, th, td,
  article, aside, canvas, details, figcaption, figure,
  footer, header, hgroup, menu, nav, section, summary,
  time, mark, audio, video {
    font-size: 12px; }

  header,
  .fix,
  .fixed {
    position: relative !important;
    top: 0 !important; }

  .sameHeightPc {
    display: block; }

  .groupBtn,
  #globalNav,
  #reserveBanner,
  .dispSp,
  .slider,
  .ptBtn,
  #gmap,
  .low #contentsFooter,
  .low footer {
    display: none !important;
    float: none !important; }

  header:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both; }

  .home #container {
    margin: 0 auto 0 auto;
    padding: 0; }

  h2 {
    font-size: 20px !important; }

  h3 {
    font-size: 17px !important; }

  #bread {
    font-size: 10px;
    margin: 15px 0; }

  .low #container {
    padding-top: 0 !important; }

  .pBreak,
  .home #contentsFooter {
    page-break-before: always; }

  .pBreakAf {
    page-break-after: always !important; }

  .fade {
    opacity: 1 !important;
    transform: translateY(0px) !important; } }
/*!
 * Font Awesome Free 5.8.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  src: url(https://use.fontawesome.com/releases/v5.8.2/webfonts/fa-solid-900.ttf) format("truetype"); }
.fa, .fas {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: "Font Awesome 5 Free";
  font-weight: 900; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-home:before {
  content: "\f015"; }

.fa-mobile-alt:before {
  content: "\f3cd"; }
