@charset "UTF-8";
/*! Writen  by SCSS */
/*下層ページ最初のセクション上部余白を統一する際は使用してみて下さい*/
.contents_wrap {
  position: relative;
  clip-path: inset(0 0 0 0); }
  .contents_wrap:before {
    content: "";
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: -1;
    background-image: url("../images/common/bg_site.jpg"); }

.section_cont {
  padding: clamp(60px, 7.693vw, 100px) 0; }
  .section_cont.first_sec {
    padding-top: 60px; }
    @media screen and (max-width: 480px) {
      .section_cont.first_sec {
        padding-top: 40px; } }

.inner_main {
  position: relative; }
  .inner_main .main_bg {
    height: 300px;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover; }
    @media screen and (max-width: 820px) {
      .inner_main .main_bg {
        height: 250px; } }
    @media screen and (max-width: 480px) {
      .inner_main .main_bg {
        height: 210px; } }
  .inner_main .page_title {
    position: absolute;
    inset: 0;
    top: auto;
    bottom: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    row-gap: 20px;
    font-size: 40px;
    color: #FFF;
    line-height: 1.2; }
    .inner_main .page_title.shadow {
      text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.15), 0px 0px 1px rgba(0, 0, 0, 0.15), 0px 0px 2px rgba(0, 0, 0, 0.15), 0px 0px 3px rgba(0, 0, 0, 0.15), 0px 0px 4px rgba(0, 0, 0, 0.15), 0px 0px 5px rgba(0, 0, 0, 0.15), 0px 0px 6px rgba(0, 0, 0, 0.15), 0px 0px 7px rgba(0, 0, 0, 0.15), 0px 0px 8px rgba(0, 0, 0, 0.15), 0px 0px 9px rgba(0, 0, 0, 0.15), 0px 0px 10px rgba(0, 0, 0, 0.15); }
    @media screen and (max-width: 480px) {
      .inner_main .page_title {
        font-size: 30px;
        bottom: 45px;
        row-gap: 10px; } }
    .inner_main .page_title .en {
      line-height: 1; }
    .inner_main .page_title .jp {
      font-size: 44%; }

.decoration_on {
  position: relative; }
  .decoration_on .decoration_img {
    position: absolute;
    right: 0;
    top: 0;
    transform: translate(35%, -40%);
    width: 39.82%;
    max-width: 637px;
    z-index: -1;
    aspect-ratio: 637/618;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("../images/common/site_deco_big.svg");
    animation: 40s infinite deco_rotate linear; }
    @media screen and (max-width: 480px) {
      .decoration_on .decoration_img {
        animation-name: deco_rotate_sp;
        transform: translate(35%, -35%);
        width: 55%; } }
@keyframes deco_rotate {
  0% {
    transform: translate(35%, -40%) rotate(0deg); }
  100% {
    transform: translate(35%, -40%) rotate(360deg); } }
@keyframes deco_rotate_sp {
  0% {
    transform: translate(35%, -35%) rotate(0deg); }
  100% {
    transform: translate(35%, -35%) rotate(360deg); } }
.sec_ttl_wrap {
  display: flex;
  flex-direction: column;
  row-gap: clamp(30px, 4.167vw, 50px);
  color: #8e7146;
  margin-bottom: clamp(40px, 5vw, 60px); }

.sec_ttl {
  font-size: clamp(24px, 3.334vw, 40px);
  text-align: center;
  line-height: 1.4; }
  @media screen and (max-width: 480px) {
    .sec_ttl {
      font-size: 6vw; } }

.read_group {
  flex-direction: column;
  text-align: center;
  row-gap: clamp(25px, 3.334vw, 40px); }
  @media screen and (max-width: 480px) {
    .read_group {
      row-gap: 20px; } }

.read {
  font-size: clamp(14px, 1.334vw, 16px);
  line-height: 2.5; }
  @media screen and (max-width: 480px) {
    .read {
      line-height: 2; } }

@media print {
  header {
    position: relative; }
    header div.header .headnavi {
      display: none; }

  .nav_btn {
    display: none; }

  .contents_wrap:before {
    content: none; }

  .inner_main {
    display: none; }
    .inner_main .page_title {
      position: static;
      text-align: center;
      top: 0;
      bottom: 0;
      flex-direction: row;
      align-items: center;
      column-gap: 10px; }

  .decoration_img {
    display: none; }

  .btn_wrap {
    display: none; }

  .caption_area {
    padding: 10px 0;
    background: none !important; }
    .caption_area .caption_in p {
      color: #000; }

  footer .footer_in.footer_over {
    padding: 12px 0; }
    footer .footer_in.footer_over .contact_group {
      width: 100%;
      text-align: center; }
      footer .footer_in.footer_over .contact_group .o01 {
        font-size: 12px; }
      footer .footer_in.footer_over .contact_group .o02 {
        font-size: 40px;
        justify-content: center; }
  footer .footer_in.footer_bottom {
    display: none; }
  footer .footer_in .own_group {
    display: none; }
  footer .copyright {
    display: none; } }

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