/*! Writen  by SCSS */
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap");
.garamond {
  font-family: "EB Garamond", serif; }

.inner_main .main_deco.right {
  top: calc(462%/6.06);
  right: 0; }
  @media screen and (max-width: 600px) {
    .inner_main .main_deco.right {
      top: calc(350%/6.06); } }

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

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

.read_lg {
  font-size: clamp(12px, 1.334vw, 16px); }
  @media screen and (max-width: 480px) {
    .read_lg {
      line-height: 1.4; } }

.txt_box .sec_ttl_min {
  margin-bottom: 0.8em; }
.txt_box .read_lg {
  line-height: 2.75;
  letter-spacing: 0.05em; }

.sec02,
.sec03,
.sec04 {
  padding-bottom: clamp(40px, 13.334vw, 160px); }

.sec01 {
  padding-bottom: clamp(60px, 8.334vw, 100px); }
  @media screen and (max-width: 480px) {
    .sec01 {
      padding-bottom: 60px; } }
  .sec01 .sec_ttl_wrap {
    margin-bottom: clamp(30px, 3.334vw, 40px); }
    @media screen and (max-width: 480px) {
      .sec01 .sec_ttl_wrap {
        gap: 15px 0; } }
    .sec01 .sec_ttl_wrap .sec_ttl {
      line-height: 1; }
    .sec01 .sec_ttl_wrap .sec_ttl_min {
      line-height: 1; }
      @media screen and (max-width: 480px) {
        .sec01 .sec_ttl_wrap .sec_ttl_min {
          line-height: 1.4; } }
  .sec01 .img101 {
    margin-bottom: clamp(30px, 4.167vw, 50px); }
    @media screen and (max-width: 1200px) {
      .sec01 .img101 {
        margin-left: -20px;
        margin-right: -20px;
        width: calc(100% + 40px); } }
  .sec01 .txt_box {
    margin-bottom: clamp(30px, 4.167vw, 50px); }
  .sec01 .box01 {
    display: flex;
    justify-content: center;
    margin-bottom: clamp(10px, 1.667vw, 20px); }
    .sec01 .box01 .l_cnt {
      width: calc(450%/10.14);
      margin-right: calc(54%/10.14); }
    .sec01 .box01 .r_cnt {
      width: calc(410%/10.14); }

.sec_ttl_wrap_des {
  margin-bottom: clamp(40px, 5.834vw, 70px); }
  .sec_ttl_wrap_des .sec_ttl {
    font-size: clamp(24px, 2.667vw, 32px);
    text-align: center;
    line-height: 1.4;
    margin-bottom: 1.8em; }
    @media screen and (max-width: 480px) {
      .sec_ttl_wrap_des .sec_ttl {
        font-size: 6vw; } }
  .sec_ttl_wrap_des .sec_ttl_en {
    font-size: clamp(24px, 2.667vw, 32px);
    text-align: center;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #9c6069;
    position: relative;
    padding-bottom: 0.6em; }
    @media screen and (max-width: 480px) {
      .sec_ttl_wrap_des .sec_ttl_en {
        font-size: 6vw; } }
    .sec_ttl_wrap_des .sec_ttl_en::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 2px;
      margin: auto;
      height: 1px;
      background: #9c6069;
      width: 240px; }
    .sec_ttl_wrap_des .sec_ttl_en::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      width: 60px;
      height: 5px;
      background: #9c6069; }

.sec {
  background: #fff; }
  .sec .sec_ttl_wrap_des {
    margin-bottom: clamp(40px, 3.334vw, 40px); }
  .sec .bg_wrap {
    background: #f2f2f3;
    margin-bottom: clamp(20px, 3.334vw, 40px); }
  .sec .img201 {
    margin: 0 auto; }
  .sec .img204 {
    /*  max-width: 1000px;*/
    margin: 0 auto; }

.caption_area .inner p.no_indent {
  text-indent: 0;
  padding-left: 0; }
