@charset "UTF-8";
.tt_page {
  background: url(../common_img/bg_tt_page.png) top center no-repeat;
  position: relative;
  background-size: cover;
  margin-bottom: 35px; }
  .tt_page h2 {
    padding: 70px 0;
    text-align: center; }
    .tt_page h2 img {
      height: 29px; }

/*PAGE ABOUT*/
.cont_about {
  margin-bottom: 20px; }
  .cont_about h3 {
    font-family: 'Yu Gothic', sans-serif;
    font-size: 121%;
    background: url(../about/images/bg_h3.png) top left no-repeat;
    padding: 5px 20px;
    background-size: 9%;
    line-height: 21px;
    margin-bottom: 3%; }

/*PAGE GALLERY*/
.list_gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 5%; }
  .list_gallery li {
    width: 30.6%;
    background: #c1b98c;}
    .list_gallery li a {
      font-size: 109%;
      color: #fff;
      text-decoration: none;
      position: relative;
      z-index: 99;
      display: block;
      background: url(../gallery/images/icon01.png) no-repeat center right 10%;
      background-size: 11%;
      padding: 6% 0;
      text-align: center;
      font-family: "游ゴシック medium", "yu gothic medium", "游ゴシック体", "yu gothic", "ヒラギノ角ゴシック pron", "hiragino kaku gothic pron", "メイリオ", meiryo, "ＭＳ Ｐゴシック", "ms pgothic", sans-serif; }

.cont_gallery h3 {
  margin-bottom: 4%; }
.cont_gallery h4 {
  border-top: 1px solid #8e9e9f;
  border-bottom: 1px solid #8e9e9f;
  font-size: 109%;
  padding: 10px 0;
  margin-bottom: 5%; }
.cont_gallery .list_cont_gallery li {
  width: 48%;
  margin: 0 4% 2% 0;
  position: relative;
  float: left; }
  .cont_gallery .list_cont_gallery li:nth-child(2n+2) {
    margin-right: 0; }
  .cont_gallery .list_cont_gallery li a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
  .cont_gallery .list_cont_gallery li img {
    margin-bottom: 2%; }

.btn_pre_next {
  margin: 0 0 10%; }
  .btn_pre_next p {
    width: 22%; }

.detail_gallery {
  margin-bottom: 7%; }
  .detail_gallery .photo {
    border: 1px solid #95b2b0;
    width: 100%;
    height: 367px;
    display: table;
    margin-bottom: 4%; }
    .detail_gallery .photo p {
      display: table-cell;
      vertical-align: middle;
      text-align: center; }
      .detail_gallery .photo p #targetImg {
        opacity: 1 !important;
        max-width: 100%;
        max-height: 365px; }
  .detail_gallery .ov_hide {
    overflow: hidden; }
  .detail_gallery .thumbnail {
    margin-bottom: 4%; }
    .detail_gallery .thumbnail li {
      float: left;
      display: table;
      width: 30%;
      line-height: 0;
      border: 1px solid #95b2b0;
      margin-right: 5%;
      transition-duration: 0.5s;
      text-align: center;
      height: 112px; }
      .detail_gallery .thumbnail li:nth-child(3) {
        margin-right: 0; }
      .detail_gallery .thumbnail li a {
        display: table-cell;
        vertical-align: middle;
        text-align: center; }
      .detail_gallery .thumbnail li img {
        max-width: 100%;
        max-height: 112px;
        opacity: 1 !important; }
  .detail_gallery .text_detail {
    border: 2px solid #c1d2d4;
    padding: 4%;
    line-height: 26px; }

/*PAGE FAQ*/
.cont_faq dl {
  border: 1px solid #95b2b0;
  padding: 1px;
  margin-top: 4%; }
  .cont_faq dl dt {
    background: url(../faq/images/bg01.png) top left;
    padding: 4% 4% 2% 10%;
    font-size: 114%;
    color: #fff;
    position: relative;
    background-size: cover;
    cursor: pointer; }
    .cont_faq dl dt:before {
      content: '';
      position: absolute;
      top: 30%;
      left: 3%;
      background: url(../faq/images/q.png) top left no-repeat;
      width: 23px;
      height: 29px;
      background-size: 100%; }
    .cont_faq dl dt:after {
      content: '';
      position: absolute;
      top: 30%;
      right: 2%;
      background: url(../faq/images/down.png) top left no-repeat;
      width: 23px;
      height: 17px;
      background-size: 100%; }
    .cont_faq dl dt.opened:after {
      content: '';
      position: absolute;
      top: 30%;
      right: 2%;
      background: url(../faq/images/up.png) top left no-repeat;
      width: 23px;
      height: 17px;
      background-size: 100%; }
  .cont_faq dl dd {
    background: url(../faq/images/a.png) top left 3% no-repeat;
    padding: 0 4% 2% 10%;
    background-size: 5%;
    display: none;
    margin-top: 3%; }

/*PAGE CONTACT*/
.cont_contact {
  margin-bottom: 5%; }
  .cont_contact h3 {
    margin-bottom: 3%; }
  .cont_contact .tb_form {
    width: 100%; }
    .cont_contact .tb_form th, .cont_contact .tb_form td {
      vertical-align: top;
      text-align: left;
      font-weight: normal;
      width: 100%;
      display: block; }
    .cont_contact .tb_form th {
      border-top: 1px solid #c1d2d4;
      margin-bottom: 2%; }
      .cont_contact .tb_form th.hissu {
        background: url(../contact/images/hissu.png) center left 2% no-repeat #e0e8e9;
        padding: 2% 2% 2% 14%;
        background-size: 9%; }
      .cont_contact .tb_form th.ninni {
        background: url(../contact/images/ninni.png) center left 2% no-repeat #e0e8e9;
        padding: 2% 2% 2% 14%;
        background-size: 9%; }
    .cont_contact .tb_form td {
      padding: 1% 0 3%; }
      .cont_contact .tb_form td input[type='text'], .cont_contact .tb_form td select {
        padding: 5px;
        width: 100%;
        border: 1px solid #736e6e; }
  .cont_contact #formEnd {
    text-align: center; }
  .cont_contact .box_text {
    border: 2px solid #c1d2d4;
    margin: 3% 0 3%;
    padding: 2% 4%;
    position: relative; }
    .cont_contact .box_text:after {
      content: '';
      position: absolute;
      top: -2px;
      right: -3%;
      background: url(../contact/images/bg_box_text.png) top right no-repeat;
      width: 223px;
      height: 168px; }
    .cont_contact .box_text ul li {
      background: url(../contact/images/arr.png) no-repeat top 2% left;
      padding-left: 4%;
      margin: 5px 0;
      background-size: 2.3%;
      line-height: 1.3; }

/*PAGE COMPANY*/
.cont_company .comp_tbl01 {
  width: 100%;
  margin-bottom: 9%; }
  .cont_company .comp_tbl01 th, .cont_company .comp_tbl01 td {
    text-align: left;
    padding: 2% 0;
    border-bottom: 1px dotted #8e9e9f; }
  .cont_company .comp_tbl01 th {
    width: 20%;
    font-size: 109%; }
.cont_company .comp_tbl02 {
  width: 100%;
  margin: 0 2% 2%; }
  .cont_company .comp_tbl02 tr:last-child th:before {
    content: '';
    background: none; }
  .cont_company .comp_tbl02 th {
    position: relative;
    width: 33%;
    color: #8f814b;
    font-size: 136%;
    padding: 3% 0;
    font-weight: normal; }
    .cont_company .comp_tbl02 th:after {
      content: '';
      position: absolute;
      top: 20px;
      left: 0;
      background: #7c9c9a;
      width: 10px;
      height: 10px;
      border-radius: 50%; }
    .cont_company .comp_tbl02 th:before {
      content: '';
      position: absolute;
      top: 25px;
      left: 5px;
      background: #7c9c9a;
      width: 1px;
      height: 100%;
      border-radius: 50%;
      z-index: 1; }
    .cont_company .comp_tbl02 th span {
      background: #fff;
      position: relative;
      display: block; }
      .cont_company .comp_tbl02 th span:after {
        content: '';
        position: absolute;
        top: 40%;
        left: 10px;
        background: #7c9c9a;
        width: 20px;
        height: 1px; }
      .cont_company .comp_tbl02 th span:before {
        content: '';
        position: absolute;
        top: 40%;
        right: 0;
        background: #7c9c9a;
        width: 20px;
        height: 1px; }
  .cont_company .comp_tbl02 td {
    padding: 2% 2% 0 9%; }

/*■07.FIX RESPONSIVE*/
@media only screen and (max-width: 414px) {
  .cont_company .comp_tbl02 th:after {
    content: '';
    position: absolute;
    top: 17px;
    left: 0;
    background: #7c9c9a;
    width: 10px;
    height: 10px;
    border-radius: 50%; } }
@media only screen and (max-width: 390px) {
  .cont_faq dl dt {
    padding: 2% 8% 2% 10%; }

  .cont_faq dl dt:after {
    content: '';
    position: absolute;
    top: 30%;
    right: 1%;
    background: url(../faq/images/down.png) top left no-repeat;
    width: 23px;
    height: 17px;
    background-size: 80%; } }
@media only screen and (max-width: 320px) {
  .cont_company .comp_tbl02 th:after {
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    background: #7c9c9a;
    width: 10px;
    height: 10px;
    border-radius: 50%; }

  .cont_company .comp_tbl02 th {
    width: 40%; }

  .cont_company .comp_tbl02 td {
    padding: 2% 2% 0 3%; }

  .cont_faq dl dt {
    padding: 2% 8% 2% 13%; } }

/*# sourceMappingURL=content.css.map */
