@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500&family=Noto+Serif+JP:wght@400;600&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");
@import url("global.css");
.sec_intro {
  margin-bottom: 140px; }
  .sec_intro .sec_intro_inner {
    min-height: 540px;
    position: relative; }
    .sec_intro .sec_intro_inner .img_area {
      width: 50%;
      height: 100%;
      min-height: 540px;
      position: absolute;
      right: 0;
      top: 0; }
    .sec_intro .sec_intro_inner .wrapper {
      min-height: 540px;
      display: flex;
      align-items: center; }
      .sec_intro .sec_intro_inner .wrapper .text_area {
        width: 68%;
        padding: 60px 70px 0 0;
        margin-top: 120px;
        margin-right: auto;
        background-color: #fff;
        position: relative;
        z-index: 3;
        box-sizing: border-box; }
        .sec_intro .sec_intro_inner .wrapper .text_area .catch {
          margin-bottom: 50px;
          font-size: clamp(21px, 3.9vw, 32px);
          font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif; }
        .sec_intro .sec_intro_inner .wrapper .text_area p {
          line-height: 1.8; }
          .sec_intro .sec_intro_inner .wrapper .text_area p + p {
            margin-top: 15px; }

.sec_technique {
  margin-bottom: 80px; }
  .sec_technique .sub_title {
    text-align: center; }
  .sec_technique .section_inner .img_area {
    width: 45%; }
    .sec_technique .section_inner .img_area .img {
      width: 100%;
      height: 0;
      padding-bottom: 74%;
      position: relative; }
      .sec_technique .section_inner .img_area .img img {
        object-position: center center;
        position: absolute;
        top: 0;
        left: 0; }
  .sec_technique .section_inner .text_area {
    width: 50%; }
    .sec_technique .section_inner .text_area p + p {
      margin-top: 15px; }
  .sec_technique.sec_factory .section_inner {
    flex-direction: row-reverse; }

/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-1 (1200px)
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 1200px) {
  .sec_intro .sec_intro_inner .wrapper .text_area {
    width: 65%; }
    .sec_intro .sec_intro_inner .wrapper .text_area .catch {
      font-size: clamp(21px, 3.9vw, 26px); }

  .sec_technique .section_inner {
    align-items: stretch;
    height: 100%; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-2 ( 960px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 959px) {
  .sec_intro {
    margin-bottom: 80px; }
    .sec_intro .sec_intro_inner {
      min-height: initial; }
      .sec_intro .sec_intro_inner .img_area {
        width: 100%;
        height: 300px;
        min-height: initial;
        position: relative;
        right: auto;
        top: auto;
        margin-top: 50px; }
      .sec_intro .sec_intro_inner .wrapper {
        min-height: initial;
        display: block; }
        .sec_intro .sec_intro_inner .wrapper .text_area {
          width: 100%;
          padding: 0;
          background-color: none; }

  .sec_technique .section_inner {
    display: block; }
    .sec_technique .section_inner .img_area {
      width: 100%;
      margin-bottom: 30px; }
      .sec_technique .section_inner .img_area .img {
        width: 100%;
        height: 0;
        padding-bottom: 60%;
        position: relative;
        overflow: hidden; }
        .sec_technique .section_inner .img_area .img img {
          width: 100%;
          position: absolute;
          left: 0;
          top: 0; }
    .sec_technique .section_inner .text_area {
      width: 100%; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-3 ( 644px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 644px) {
  .sec_intro {
    margin-bottom: 50px; }
    .sec_intro .sec_intro_inner .img_area {
      height: 200px; }
    .sec_intro .sec_intro_inner .wrapper .text_area .catch {
      margin-bottom: 30px; }

  .sec_technique {
    margin-bottom: 50px; } }
