@charset "UTF-8";
/*****************************
 *
 *settings
 *
 ***************************** */
.trans_txt_parent .inner {
  overflow: hidden; }
.trans_txt_parent s {
  display: inline-block;
  transform: translateY(50px); }

.scroll_fadein {
  transform: translateY(50px);
  opacity: 0; }

@media (max-width: 1310px) {
  .head_title .ib {
    padding-left: 64px; }

  .interview_head .main_img h1 {
    left: 16px; }
  .interview_head .int_title .ib {
    padding: 60px 16px; }

  #content_wrap .ib:not(.common_page, .ib100), #content_wrap.single .ib:not(.common_page, .ib100) {
    padding-right: 16px;
    padding-left: 16px; }
  #content_wrap .top_introduction img.img2, #content_wrap .top_introduction img.img1, #content_wrap.single .top_introduction img.img2, #content_wrap.single .top_introduction img.img1 {
    width: 25vw; }
  #content_wrap #kyoken_kouza .ib, #content_wrap.single #kyoken_kouza .ib {
    padding: 90px 32px 32px; }
    #content_wrap #kyoken_kouza .ib .inner .int_link, #content_wrap.single #kyoken_kouza .ib .inner .int_link {
      height: auto; }
      #content_wrap #kyoken_kouza .ib .inner .int_link .r, #content_wrap.single #kyoken_kouza .ib .inner .int_link .r {
        padding: 40px 0 40px 40px; }
        #content_wrap #kyoken_kouza .ib .inner .int_link .r .box h3, #content_wrap.single #kyoken_kouza .ib .inner .int_link .r .box h3 {
          font-size: 24px; }
          #content_wrap #kyoken_kouza .ib .inner .int_link .r .box h3 br, #content_wrap.single #kyoken_kouza .ib .inner .int_link .r .box h3 br {
            display: none; }

  .breadcrumbs .ib {
    padding: 0 64px; }
    .breadcrumbs .ib:after {
      left: 0; } }
@media (max-width: 1350px) and (min-width: 760px) {
  footer .ib {
    max-width: calc(100vw - 128px); }

  #first_view .ib:not(.ib100, .head_ib) {
    max-width: calc(100vw - 128px); }
    #first_view .ib:not(.ib100, .head_ib) .tit_row p {
      font-size: 1.8vw; }
    #first_view .ib:not(.ib100, .head_ib) .tit_row h1 {
      font-size: 7.8vw; }

  #content_wrap .ib:not(.ib100, .head_ib) {
    max-width: calc(100vw - 128px);
    padding-right: 0;
    padding-left: 0; }

  #content_wrap .bottom_link .ib, #content_wrap2 .bottom_link .ib {
    padding: 84px 0;
    max-width: calc(100vw - 128px); }
  #content_wrap .top_news .ib [class^="right"], #content_wrap .top_news .ib [class^="right"], #content_wrap2 .top_news .ib [class^="right"], #content_wrap2 .top_news .ib [class^="right"] {
    max-width: calc(100% - 262px); }
  #content_wrap .top_introduction.section2 .ib .row, #content_wrap2 .top_introduction.section2 .ib .row {
    height: auto;
    flex-wrap: wrap; }
    #content_wrap .top_introduction.section2 .ib .row:nth-of-type(2) .right_column, #content_wrap2 .top_introduction.section2 .ib .row:nth-of-type(2) .right_column {
      padding-left: 0;
      padding-right: 30%; }
      #content_wrap .top_introduction.section2 .ib .row:nth-of-type(2) .right_column:before, #content_wrap2 .top_introduction.section2 .ib .row:nth-of-type(2) .right_column:before {
        left: auto;
        right: -64px;
        background: url(../img/top_introduction5.png);
        background-size: cover;
        border-radius: 12px 0 0 12px; }
    #content_wrap .top_introduction.section2 .ib .row .left_colmun, #content_wrap2 .top_introduction.section2 .ib .row .left_colmun {
      width: 20%;
      display: none; }
    #content_wrap .top_introduction.section2 .ib .row .right_column, #content_wrap2 .top_introduction.section2 .ib .row .right_column {
      width: 100%;
      padding-left: 2%;
      padding-left: 0;
      padding-left: 30%; }
      #content_wrap .top_introduction.section2 .ib .row .right_column:before, #content_wrap2 .top_introduction.section2 .ib .row .right_column:before {
        content: "";
        width: 30%;
        top: 0;
        height: 100%;
        background: url(../img/top_introduction4.png);
        background-size: cover;
        left: -64px;
        display: block;
        border-radius: 0 12px 12px 0;
        position: absolute; }
      #content_wrap .top_introduction.section2 .ib .row .right_column .inner, #content_wrap2 .top_introduction.section2 .ib .row .right_column .inner {
        width: 100%; }
        #content_wrap .top_introduction.section2 .ib .row .right_column .inner p, #content_wrap2 .top_introduction.section2 .ib .row .right_column .inner p {
          width: 100%; } }
@media (max-width: 1210px) and (min-width: 760px) {
  #content_wrap.culture .culture_list .box {
    width: 660px;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    margin-top: 0 !important; }
    #content_wrap.culture .culture_list .box.b2 {
      right: 0; }
  #content_wrap.culture .c1, #content_wrap.culture .c5, #content_wrap.culture .c8 {
    left: calc(0px - calc(50vw - 50%)); }
  #content_wrap.culture .c2, #content_wrap.culture .c7, #content_wrap.culture .c9 {
    right: calc(0px - calc(50vw - 50%));
    min-width: 240px; }
  #content_wrap.culture .c4 {
    width: 20vw;
    top: -20%; }
  #content_wrap.culture .c6 {
    width: 20vw;
    top: -10%;
    left: auto;
    right: 20px; }

  .breadcrumbs .ib:after {
    width: calc(100% - 128px);
    left: 64px; }

  footer .ib {
    max-width: 860px; }
    footer .ib .left {
      width: 100%;
      flex-wrap: wrap;
      display: flex; }
      footer .ib .left a.btn {
        margin-top: 24px; }
      footer .ib .left p {
        width: 100%; }
        footer .ib .left p + p {
          margin-top: 0; }
      footer .ib .left .logo {
        width: 200px; }
    footer .ib .right {
      width: 100%;
      margin-top: 32px; }
      footer .ib .right .buttons {
        justify-content: flex-start;
        margin-top: 32px; }

  #content_wrap .ib .interview_list .inner {
    width: 48.8%;
    margin-bottom: 2%; }
    #content_wrap .ib .interview_list .inner .box {
      width: 100%; }
  #content_wrap .ib .interview_list .box {
    width: 48.8%; }
    #content_wrap .ib .interview_list .box h4 {
      font-size: 2vw; }
      #content_wrap .ib .interview_list .box h4 br {
        display: none; } }
@media (max-width: 1100px) {
  header {
    min-height: 72px;
    height: auto; }
    header.active .ib .spbtn .dehaze .line {
      transform: translateX(1px) rotate(-45deg);
      transform-origin: center; }
      header.active .ib .spbtn .dehaze .line:nth-of-type(2) {
        transform: translateX(-1px) translateY(1px) rotate(45deg);
        transform-origin: right; }
    header .ib {
      padding: 15px 20px; }
      header .ib .logo {
        width: 112px; }
      header .ib nav {
        display: none;
        background: #eee;
        position: absolute;
        top: 72px;
        left: 0;
        width: 100%;
        height: calc(100vh - 72px);
        overflow-y: scroll; }
        header .ib nav .sub_links.sp_content {
          justify-content: space-between;
          display: flex !important;
          flex-wrap: wrap;
          margin-top: 32px; }
          header .ib nav .sub_links.sp_content a {
            border: none;
            padding: 0;
            font-size: 14px;
            display: flex;
            align-items: center;
            font-weight: normal;
            margin-right: 0;
            width: auto; }
            header .ib nav .sub_links.sp_content a.external:after {
              content: url(../img/external_s.svg);
              margin-left: 5px;
              position: relative;
              top: 1px;
              right: 0; }
            header .ib nav .sub_links.sp_content a.pp {
              width: 100%;
              display: block;
              text-align: center;
              margin-bottom: 16px; }
              header .ib nav .sub_links.sp_content a.pp:after {
                display: none; }
        header .ib nav .buttons {
          margin-top: 24px;
          width: 100%;
          display: flex !important;
          justify-content: space-between;
          flex-wrap: wrap; }
          header .ib nav .buttons a.btn {
            width: 100%;
            height: 52px;
            text-align: center;
            padding: 14px 16px;
            border-bottom-color: inherit; }
            header .ib nav .buttons a.btn.gh, header .ib nav .buttons a.btn.x {
              width: 48.5%; }
            header .ib nav .buttons a.btn:hover {
              color: #fff; }
            header .ib nav .buttons a.btn:after {
              color: #fff; }
            header .ib nav .buttons a.btn.s {
              margin-top: 12px; }
              header .ib nav .buttons a.btn.s:after {
                top: calc(50% - 8px); }
              header .ib nav .buttons a.btn.s:hover {
                color: #E6002D; }
        header .ib nav a.btn {
          display: flex !important; }
        header .ib nav .inner {
          width: 100%;
          height: max-content;
          padding: 6px 16px 24px;
          display: flex;
          flex-wrap: wrap; }
        header .ib nav span.parent {
          padding-right: 0 !important; }
          header .ib nav span.parent:after {
            display: none; }
        header .ib nav a, header .ib nav span.parent {
          display: block;
          width: 100%;
          padding: 17px;
          border-bottom: 1px solid #d1d1d1;
          position: relative;
          margin-right: 0; }
          header .ib nav a:before, header .ib nav span.parent:before {
            display: none; }
          header .ib nav a:after, header .ib nav span.parent:after {
            content: "";
            font-family: "material icons";
            position: relative;
            top: calc(50% - 10px);
            color: #E6002D;
            right: auto !important;
            display: inline-block;
            margin-left: 8px;
            font-size: 14px;
            font-weight: normal; }
          header .ib nav a:hover, header .ib nav span.parent:hover {
            color: #333; }
          header .ib nav a.sp_w50, header .ib nav span.parent.sp_w50 {
            width: 50%;
            margin-right: 0; }
          header .ib nav a .inner, header .ib nav span.parent .inner {
            display: flex !important;
            background: none;
            padding: 0;
            box-shadow: none;
            position: relative;
            top: 0;
            flex-wrap: wrap;
            left: 0 !important;
            width: 100%;
            margin-top: 8px; }
            header .ib nav a .inner a, header .ib nav span.parent .inner a {
              font-size: 14.4px;
              padding: 6px 0;
              border: none;
              width: auto;
              margin-right: 28px;
              font-weight: normal; }
              header .ib nav a .inner a:after, header .ib nav span.parent .inner a:after {
                margin-right: 0;
                bottom: auto;
                top: calc(50% - 6px);
                left: auto !important;
                right: -12px !important; }
              header .ib nav a .inner a:hover, header .ib nav span.parent .inner a:hover {
                color: #333; }
        header .ib nav span.parent:after {
          display: none; }
        header .ib nav a.parent_a {
          padding: 0;
          border: none; }
          header .ib nav a.parent_a:after {
            display: none; }
      header .ib .lang_switch {
        right: 84px;
        top: 24px; }
      header .ib .spbtn.sp_content {
        position: absolute;
        width: 40px;
        height: 36px;
        display: flex !important;
        justify-content: center;
        align-items: center;
        right: 16px;
        flex-wrap: wrap;
        top: 24px; }
        header .ib .spbtn.sp_content .dehaze {
          width: 21px;
          height: 13px;
          display: flex;
          align-items: space-between;
          flex-wrap: wrap; }
          header .ib .spbtn.sp_content .dehaze .line {
            display: block;
            width: 100%;
            height: 3px;
            background: #E6002D;
            transition: 0.5s ease; }
        header .ib .spbtn.sp_content i {
          width: 100%;
          font-weight: bold;
          color: #E6002D;
          text-align: center;
          letter-spacing: 0.1em;
          font-size: 12px; }

  #content_wrap .ib .research_intro .ib .research_list .box p br {
    display: none; }
  #content_wrap .column_2 .right, #content_wrap .column_2 .left {
    width: 100%; }
  #content_wrap .column_2 .right {
    margin-top: 24px; }

  .head_title {
    margin-top: 72px; }

  #content_wrap .ib.devide .blog_list .box {
    width: 32%;
    margin-right: 2%; }
    #content_wrap .ib.devide .blog_list .box .img.thumb {
      height: auto;
      aspect-ratio: 1/0.7; } }
@media (max-width: 1120px) and (min-width: 760px) {
  .interview_head .main_img {
    margin-top: 72px; }
  .interview_head .int_title .ib .left h2 {
    font-size: 2.7vw; }
    .interview_head .int_title .ib .left h2 br {
      display: none; }

  #content_wrap.single .ib .interview_content .content_row.r_img .content {
    width: 65%; }
  #content_wrap.single .prev_next .ib .row .box a.title p {
    font-size: 15px; }

  #content_wrap.subpages .ib .ceo_messages {
    flex-wrap: wrap; }
    #content_wrap.subpages .ib .ceo_messages .right {
      width: 100%; }
      #content_wrap.subpages .ib .ceo_messages .right p {
        width: 100%; }

  #content_wrap .card_m .box {
    padding: 26px;
    overflow: hidden;
    height: auto; }
    #content_wrap .card_m .box img {
      right: 0;
      height: 150px; }
    #content_wrap .card_m .box h3 {
      min-height: 140px;
      padding: 20px 0;
      height: auto;
      font-size: 20px; }
  #content_wrap .recruit_flow .box {
    padding: 30px 16px;
    width: 20%; }
    #content_wrap .recruit_flow .box em {
      margin-right: 16px; }
    #content_wrap .recruit_flow .box span {
      font-size: 16.6px; }
    #content_wrap .recruit_flow .box:nth-of-type(1) {
      width: 30%; }
    #content_wrap .recruit_flow .box:nth-of-type(3) {
      width: 23%; }
    #content_wrap .recruit_flow .box:nth-of-type(4) {
      width: 16%; }
  #content_wrap .ib .df_content .left {
    width: 100%; }
  #content_wrap .ib .df_content .right {
    width: 100%; } }
@media (max-width: 760px) {
  ::-webkit-scrollbar {
    width: 6px; }

  body.scrolled a.btn.fixed {
    z-index: 999; }
  body .ib {
    width: 100%; }
    body .ib.common_page {
      padding: 24px 16px; }
  body .sp_content {
    display: block !important; }
    body .sp_content.dnone {
      display: none !important; }
  body .pc_content {
    display: none !important; }

  a.btn {
    font-size: 15.6px;
    padding: 14px 15px;
    min-width: inherit;
    border-radius: 8px; }
    a.btn.sp_content {
      display: -webkit-flex !important;
      display: -moz-flex !important;
      display: -ms-flex !important;
      display: -o-flex !important;
      display: flex !important; }
    a.btn.fixed {
      display: block;
      z-index: -1;
      opacity: 0;
      height: auto !important;
      z-index: 9;
      right: 16px;
      font-size: 15px; }
      a.btn.fixed.black {
        padding-left: 12px;
        padding-right: 12px;
        padding: 12px; }
        a.btn.fixed.black:after {
          margin-left: 12px; }
      a.btn.fixed.yoko {
        width: 260px !important;
        bottom: 0;
        right: calc(50% - 130px);
        height: 48px !important;
        border-radius: 6px 6px 0 0;
        padding: 13px; }
        a.btn.fixed.yoko:before {
          display: block; }
        a.btn.fixed.yoko em {
          writing-mode: lr; }
    a.btn:after {
      margin-left: 5px;
      font-size: 13px; }

  #first_view {
    height: auto; }
    #first_view .fv_material {
      width: 230px;
      position: absolute;
      bottom: 88px;
      right: 0px; }
    #first_view .ib {
      padding: 80px 16px 20px;
      z-index: 9; }
      #first_view .ib .buttons {
        margin-top: 16px;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 100%;
        position: relative;
        right: 0;
        z-index: 9;
        bottom: 0; }
        #first_view .ib .buttons a {
          width: 48%;
          height: 52px;
          font-size: 15.4px; }
          #first_view .ib .buttons a.od1 {
            order: 1;
            width: 100%;
            margin-bottom: 12px;
            margin-right: 0; }
          #first_view .ib .buttons a.od2 {
            order: 2;
            width: 53%;
            margin-right: 0; }
          #first_view .ib .buttons a.od3 {
            margin-right: 0;
            order: 3;
            width: 45%; }
      #first_view .ib .fv_slide {
        width: calc(100vw - 16px);
        margin-right: -16px;
        height: 290px;
        border-radius: 8px 0 0 8px; }
        #first_view .ib .fv_slide .swiper-slide .sp_slide3 {
          object-position: 100% 50%; }
      #first_view .ib .tit_row {
        flex-wrap: wrap;
        height: auto; }
        #first_view .ib .tit_row h1 {
          width: 100%;
          font-size: 12vw;
          margin: 20px 0; }
        #first_view .ib .tit_row p {
          font-size: 16px; }

  #content_wrap.archive_monograph .ib h2, #content_wrap2.archive_monograph .ib h2 {
    font-size: 24px; }
  #content_wrap.blog_single .ib p, #content_wrap2.blog_single .ib p {
    font-size: 14px;
    line-height: 1.7; }
  #content_wrap .ib h3.line, #content_wrap2 .ib h3.line {
    font-size: 22px;
    padding-left: 32px; }
  #content_wrap h2, #content_wrap2 h2 {
    line-height: 1.1; }
    #content_wrap h2 span, #content_wrap2 h2 span {
      font-size: 32px; }
    #content_wrap h2 em, #content_wrap2 h2 em {
      font-size: 14px; }
    #content_wrap h2.line, #content_wrap2 h2.line {
      padding-left: 8px;
      border-width: 6px; }
      #content_wrap h2.line em, #content_wrap2 h2.line em {
        font-size: 24px; }
      #content_wrap h2.line.medium em, #content_wrap2 h2.line.medium em {
        font-size: 24px; }
  #content_wrap h3, #content_wrap2 h3 {
    margin: 24px 0; }
    #content_wrap h3 span, #content_wrap2 h3 span {
      font-size: 14px; }
  #content_wrap .top_news .ib, #content_wrap2 .top_news .ib {
    padding: 0px 16px 16px;
    flex-wrap: wrap; }
    #content_wrap .top_news .ib [class^="left"], #content_wrap2 .top_news .ib [class^="left"] {
      width: 100%; }
      #content_wrap .top_news .ib [class^="left"] a.btn, #content_wrap2 .top_news .ib [class^="left"] a.btn {
        display: none; }
    #content_wrap .top_news .ib [class^="right"], #content_wrap2 .top_news .ib [class^="right"] {
      width: 100%; }
      #content_wrap .top_news .ib [class^="right"] a.btn, #content_wrap2 .top_news .ib [class^="right"] a.btn {
        margin: 32px auto 0; }
      #content_wrap .top_news .ib [class^="right"] .news_list .row, #content_wrap2 .top_news .ib [class^="right"] .news_list .row {
        flex-wrap: wrap;
        display: flex; }
        #content_wrap .top_news .ib [class^="right"] .news_list .row .date, #content_wrap2 .top_news .ib [class^="right"] .news_list .row .date {
          width: 57px; }
        #content_wrap .top_news .ib [class^="right"] .news_list .row p, #content_wrap2 .top_news .ib [class^="right"] .news_list .row p {
          width: 100%;
          word-break: break-all; }
  #content_wrap .top_movie .ib, #content_wrap2 .top_movie .ib {
    padding: 32px 0; }
    #content_wrap .top_movie .ib p, #content_wrap2 .top_movie .ib p {
      bottom: 40px;
      font-size: 9px;
      right: 16px;
      z-index: 9999; }
    #content_wrap .top_movie .ib a, #content_wrap2 .top_movie .ib a {
      height: 220px; }
      #content_wrap .top_movie .ib a .start, #content_wrap2 .top_movie .ib a .start {
        width: 66px;
        height: 66px;
        top: calc(50% - 33px);
        left: calc(50% - 33px); }
  #content_wrap .top_keyword, #content_wrap2 .top_keyword {
    height: auto; }
    #content_wrap .top_keyword .ib, #content_wrap2 .top_keyword .ib {
      padding: 42px 16px 74px; }
      #content_wrap .top_keyword .ib h2, #content_wrap2 .top_keyword .ib h2 {
        margin-bottom: 36px; }
      #content_wrap .top_keyword .ib .keyword_container, #content_wrap2 .top_keyword .ib .keyword_container {
        flex-wrap: wrap;
        height: auto; }
        #content_wrap .top_keyword .ib .keyword_container .box, #content_wrap2 .top_keyword .ib .keyword_container .box {
          width: 100%;
          height: 440px;
          margin-bottom: 0;
          margin-right: 0 !important; }
          #content_wrap .top_keyword .ib .keyword_container .box:nth-of-type(1), #content_wrap2 .top_keyword .ib .keyword_container .box:nth-of-type(1) {
            margin-bottom: 60px; }
          #content_wrap .top_keyword .ib .keyword_container .box a.btn, #content_wrap2 .top_keyword .ib .keyword_container .box a.btn {
            width: 180px;
            left: calc(50% - 90px); }
  #content_wrap .top_introduction, #content_wrap2 .top_introduction {
    width: 100%;
    height: auto; }
    #content_wrap .top_introduction.section2 .ib, #content_wrap2 .top_introduction.section2 .ib {
      padding: 16px 0px; }
      #content_wrap .top_introduction.section2 .ib .row, #content_wrap2 .top_introduction.section2 .ib .row {
        height: auto;
        margin-bottom: 0;
        flex-wrap: wrap; }
        #content_wrap .top_introduction.section2 .ib .row:nth-of-type(2) [class^="right"], #content_wrap2 .top_introduction.section2 .ib .row:nth-of-type(2) [class^="right"] {
          padding: 16px; }
        #content_wrap .top_introduction.section2 .ib .row [class^="left"], #content_wrap2 .top_introduction.section2 .ib .row [class^="left"] {
          width: 100%;
          height: 340px;
          width: 293px; }
          #content_wrap .top_introduction.section2 .ib .row [class^="left"] .image_box, #content_wrap2 .top_introduction.section2 .ib .row [class^="left"] .image_box {
            width: 100%;
            height: 100%;
            border-radius: 4px; }
            #content_wrap .top_introduction.section2 .ib .row [class^="left"] .image_box img, #content_wrap2 .top_introduction.section2 .ib .row [class^="left"] .image_box img {
              width: 240px;
              height: 300px; }
            #content_wrap .top_introduction.section2 .ib .row [class^="left"] .image_box:after, #content_wrap2 .top_introduction.section2 .ib .row [class^="left"] .image_box:after {
              width: 217px;
              height: 300px;
              border-radius: 4px; }
        #content_wrap .top_introduction.section2 .ib .row [class^="right"], #content_wrap2 .top_introduction.section2 .ib .row [class^="right"] {
          width: 100%;
          padding: 32px 16px; }
          #content_wrap .top_introduction.section2 .ib .row [class^="right"] .inner, #content_wrap2 .top_introduction.section2 .ib .row [class^="right"] .inner {
            width: 100%; }
            #content_wrap .top_introduction.section2 .ib .row [class^="right"] .inner p, #content_wrap2 .top_introduction.section2 .ib .row [class^="right"] .inner p {
              margin-bottom: 0; }
            #content_wrap .top_introduction.section2 .ib .row [class^="right"] .inner h3, #content_wrap2 .top_introduction.section2 .ib .row [class^="right"] .inner h3 {
              text-align: left; }
    #content_wrap .top_introduction img.img1, #content_wrap2 .top_introduction img.img1 {
      position: absolute;
      width: 250px;
      right: 0;
      top: 120px; }
    #content_wrap .top_introduction img.img2, #content_wrap2 .top_introduction img.img2 {
      width: 204px;
      top: 235px;
      left: 0; }
    #content_wrap .top_introduction img.img3, #content_wrap2 .top_introduction img.img3 {
      width: 70px;
      left: 24px;
      top: 400px; }
    #content_wrap .top_introduction .ib, #content_wrap2 .top_introduction .ib {
      padding: 10px 16px 16px; }
      #content_wrap .top_introduction .ib .flow_title, #content_wrap2 .top_introduction .ib .flow_title {
        font-size: 28px;
        margin-top: 380px; }
      #content_wrap .top_introduction .ib .math, #content_wrap2 .top_introduction .ib .math {
        width: calc(100% + 20px);
        margin-left: -10px;
        margin-bottom: 40px; }
      #content_wrap .top_introduction .ib h3, #content_wrap2 .top_introduction .ib h3 {
        text-align: center;
        font-size: 20px; }
      #content_wrap .top_introduction .ib p, #content_wrap2 .top_introduction .ib p {
        font-size: 14px; }
  #content_wrap .news_list .row, #content_wrap2 .news_list .row {
    padding: 16px 0; }
    #content_wrap .news_list .row .date, #content_wrap2 .news_list .row .date {
      font-size: 14px;
      padding-bottom: 4px;
      font-weight: bold; }
    #content_wrap .news_list .row p, #content_wrap2 .news_list .row p {
      word-break: break-all;
      font-size: 14px;
      margin: 0;
      line-height: 1.7; }
  #content_wrap .bottom_link .ib, #content_wrap2 .bottom_link .ib {
    padding: 48px 16px; }
    #content_wrap .bottom_link .ib .link_outer, #content_wrap2 .bottom_link .ib .link_outer {
      border-radius: 0;
      height: auto; }
      #content_wrap .bottom_link .ib .link_outer a, #content_wrap2 .bottom_link .ib .link_outer a {
        border-radius: 4px;
        overflow: hidden;
        width: 100%;
        height: 210px; }
        #content_wrap .bottom_link .ib .link_outer a:hover:before, #content_wrap2 .bottom_link .ib .link_outer a:hover:before {
          opacity: 0.9; }
        #content_wrap .bottom_link .ib .link_outer a:before, #content_wrap2 .bottom_link .ib .link_outer a:before {
          opacity: 0.9; }
        #content_wrap .bottom_link .ib .link_outer a img, #content_wrap2 .bottom_link .ib .link_outer a img {
          opacity: 1;
          transform: scale(1); }
        #content_wrap .bottom_link .ib .link_outer a:nth-of-type(1), #content_wrap2 .bottom_link .ib .link_outer a:nth-of-type(1) {
          margin-bottom: 16px; }

  #content_wrap .ib.common_page {
    padding: 24px 16px; }

  .head_title {
    margin-top: 72px;
    height: 120px; }
    .head_title.culture {
      height: 230px;
      z-index: 4;
      background: url(../img/culture/cr1_sp.png) 100% 0% no-repeat;
      background-size: auto; }
      .head_title.culture:after {
        display: none;
        width: 200px;
        height: 250px;
        right: -100px;
        top: -110px; }
      .head_title.culture .ib {
        align-items: baseline; }
        .head_title.culture .ib h1 span {
          font-size: 40px; }
    .head_title.emp {
      height: 120px; }
      .head_title.emp .images {
        height: 120px;
        width: calc(50vw + 12%); }
      .head_title.emp h1 {
        position: relative;
        z-index: 3; }
        .head_title.emp h1.line {
          padding-left: 0px; }
          .head_title.emp h1.line em {
            font-size: 20px;
            top: -6px; }
          .head_title.emp h1.line span {
            font-size: 14px; }
          .head_title.emp h1.line:before {
            display: none;
            width: 6px; }
    .head_title.pt2 {
      height: auto; }
      .head_title.pt2 .ib {
        padding-top: 20px; }
        .head_title.pt2 .ib h1 em {
          font-size: 32px; }
      .head_title.pt2 .images {
        width: calc(100% - 32px);
        margin: 0 auto -24px;
        border-radius: 12px; }
    .head_title .ib {
      padding: 16px; }
      .head_title .ib h1 span {
        font-size: 32px; }
      .head_title .ib h1 em {
        font-size: 14px; }

  .buttons_row {
    margin-top: 48px;
    width: 100%;
    justify-content: center; }
    .buttons_row a {
      width: 100%;
      margin-right: 0; }
      .buttons_row a:last-child {
        margin-bottom: 0; }

  #content_wrap .ib .w100 {
    width: 100%;
    display: block; }
  #content_wrap .ib h2.center em {
    font-size: 26px; }
  #content_wrap .ib .card_m {
    margin: 64px 0 48px;
    flex-wrap: wrap; }
    #content_wrap .ib .card_m .box {
      padding: 20px;
      width: 100%;
      height: auto;
      margin-bottom: 16px; }
      #content_wrap .ib .card_m .box img {
        height: 90px; }
      #content_wrap .ib .card_m .box h3 {
        height: 104px;
        font-size: 19px; }
      #content_wrap .ib .card_m .box p {
        font-size: 15px;
        margin-bottom: 0; }
  #content_wrap .ib .pickup {
    margin: 64px 0; }
    #content_wrap .ib .pickup .row {
      padding: 16px 0; }
      #content_wrap .ib .pickup .row p {
        font-size: 16px; }
      #content_wrap .ib .pickup .row a.btn {
        width: 144px;
        height: auto;
        font-size: 15px; }
  #content_wrap .ib .recruit_flow {
    flex-wrap: wrap; }
    #content_wrap .ib .recruit_flow .box {
      width: 100%;
      margin-right: 0;
      margin-bottom: 32px;
      padding: 24px;
      height: auto; }
      #content_wrap .ib .recruit_flow .box:last-child {
        margin-bottom: 0; }
      #content_wrap .ib .recruit_flow .box:after {
        right: calc(50% - 10px);
        bottom: -22px;
        transform: rotate(0); }
      #content_wrap .ib .recruit_flow .box span {
        font-size: 16px; }
  #content_wrap .ib .faq_list .row:before {
    top: 20px;
    font-size: 30px;
    right: 0; }
  #content_wrap .ib .faq_list .row div {
    padding: 24px 20px;
    padding-left: 54px; }
    #content_wrap .ib .faq_list .row div:before {
      width: 32px;
      height: 32px;
      left: 0;
      top: calc(50% - 16px);
      font-size: 18px; }
    #content_wrap .ib .faq_list .row div.a {
      padding-left: 66px;
      border-radius: 6px; }
      #content_wrap .ib .faq_list .row div.a:before {
        left: 16px; }
      #content_wrap .ib .faq_list .row div.a p {
        line-height: 1.6;
        font-size: 14px; }
    #content_wrap .ib .faq_list .row div.q p {
      line-height: 1.5;
      font-size: 15px;
      padding-right: 10px; }
  #content_wrap .rec_entry {
    height: auto;
    background: none;
    margin: 44px 0 64px;
    margin-left: -16px; }
    #content_wrap .rec_entry .inner {
      border-radius: 0; }

  #content_wrap.culture {
    background: url(../img/culture/cr4_sp.png) calc(100%) 3060px no-repeat, url(../img/culture/cr3_sp.png) calc(0% - 130px) 2460px no-repeat, url(../img/culture/cr2_sp.png) 0 1300px no-repeat, url(../img/stripe1.png), #D8E2E9;
    background-size: auto, auto, auto, 100px auto, cover;
    padding-top: 130px;
    margin-top: -230px; }
    #content_wrap.culture .about_tealorg .ib {
      padding: 64px 16px; }
      #content_wrap.culture .about_tealorg .ib .df_content {
        margin: 0; }
        #content_wrap.culture .about_tealorg .ib .df_content h3 {
          font-size: 18px;
          margin-top: 0; }
      #content_wrap.culture .about_tealorg .ib p {
        font-size: 14px; }
    #content_wrap.culture .culture_slider {
      height: 150px; }
    #content_wrap.culture .ib {
      overflow: hidden; }
    #content_wrap.culture h2 {
      line-height: 1.4; }
    #content_wrap.culture .shiki {
      width: 100vw;
      right: 0;
      top: 120px; }
    #content_wrap.culture .c1 {
      height: 210px;
      left: -16px;
      right: auto;
      top: 655px;
      width: calc(50vw - 10px); }
    #content_wrap.culture .c2 {
      width: 55vw;
      height: 133px;
      position: absolute;
      top: 810px;
      right: -16px;
      z-index: 99; }
    #content_wrap.culture .c3 {
      width: 240px;
      right: auto;
      top: 135px;
      left: 180px; }
    #content_wrap.culture .c4 {
      width: 193px;
      right: 16px;
      top: -124px; }
    #content_wrap.culture .c5 {
      height: 207px;
      width: calc(50vw  + 80px);
      top: 2400px;
      right: auto;
      left: -36px;
      z-index: 2; }
    #content_wrap.culture .c6 {
      width: 180px;
      left: -50px;
      top: -100px; }
    #content_wrap.culture .c7 {
      width: calc(50vw + 20px);
      height: 210px;
      right: -16px;
      left: auto;
      top: 2440px; }
    #content_wrap.culture .c8 {
      width: 210px;
      right: -30px;
      left: auto;
      top: 3300px; }
    #content_wrap.culture .c9 {
      width: calc(50vw + 80px);
      height: 180px;
      left: -16px;
      right: auto;
      top: 3300px; }
  #content_wrap .ib .culture_list {
    margin: 120px 0 240px;
    z-index: 3; }
    #content_wrap .ib .culture_list .box {
      margin-bottom: 24px;
      top: 0 !important;
      width: 100% !important;
      padding: 24px 16px;
      left: 0 !important;
      right: 0 !important; }
      #content_wrap .ib .culture_list .box a.btn {
        width: 100%; }
      #content_wrap .ib .culture_list .box.b1 {
        margin-bottom: 190px; }
      #content_wrap .ib .culture_list .box.b3 {
        margin-bottom: 101px !important; }
      #content_wrap .ib .culture_list .box.b4 {
        margin-top: 0px !important; }
      #content_wrap .ib .culture_list .box.b5 {
        margin-bottom: 326px !important; }
      #content_wrap .ib .culture_list .box.b6 {
        margin-top: auto; }
      #content_wrap .ib .culture_list .box p {
        font-size: 14px; }
      #content_wrap .ib .culture_list .box h3 {
        font-size: 18px;
        margin-bottom: 16px; }
        #content_wrap .ib .culture_list .box h3.red {
          margin-left: -16px;
          font-size: 24px; }
      #content_wrap .ib .culture_list .box a.thumb_link {
        height: 74px;
        width: 100%; }
        #content_wrap .ib .culture_list .box a.thumb_link .img {
          width: 111px; }
        #content_wrap .ib .culture_list .box a.thumb_link .r p {
          font-size: 16px;
          line-height: 1.6; }

  #content_wrap.research h2.center {
    text-align: center !important; }
    #content_wrap.research h2.center em {
      font-size: inherit; }
      #content_wrap.research h2.center em img {
        display: none; }
  #content_wrap #kyoken_kouza {
    padding: 32px 16px;
    margin-bottom: 24px; }
    #content_wrap #kyoken_kouza .ib {
      padding: 40px 20px; }
      #content_wrap #kyoken_kouza .ib .inner {
        padding: 0;
        width: 100%; }
        #content_wrap #kyoken_kouza .ib .inner p {
          font-size: 14px; }
        #content_wrap #kyoken_kouza .ib .inner .logo {
          width: 70px;
          right: 0px;
          top: -10px;
          left: auto; }
        #content_wrap #kyoken_kouza .ib .inner h3 {
          font-size: 18px; }
        #content_wrap #kyoken_kouza .ib .inner .column_2 {
          flex-direction: column;
          margin: 24px 0 0; }
          #content_wrap #kyoken_kouza .ib .inner .column_2 .right {
            margin-bottom: 16px; }
        #content_wrap #kyoken_kouza .ib .inner h2 {
          margin-top: 0;
          margin-bottom: 24px;
          font-size: 24px; }
        #content_wrap #kyoken_kouza .ib .inner .border_gray {
          margin: 24px 0; }
        #content_wrap #kyoken_kouza .ib .inner .int_link {
          flex-wrap: wrap;
          height: auto;
          margin: 32px 0; }
          #content_wrap #kyoken_kouza .ib .inner .int_link l, #content_wrap #kyoken_kouza .ib .inner .int_link .r {
            width: 100%; }
          #content_wrap #kyoken_kouza .ib .inner .int_link .l {
            width: 100%;
            height: auto;
            aspect-ratio: 1/0.53;
            border-radius: 6px;
            overflow: hidden; }
          #content_wrap #kyoken_kouza .ib .inner .int_link .r {
            height: auto;
            padding-left: 0;
            padding: 14px 0 0; }
            #content_wrap #kyoken_kouza .ib .inner .int_link .r .box:after {
              top: 10px;
              font-size: 26px;
              right: -2px; }
            #content_wrap #kyoken_kouza .ib .inner .int_link .r .box h3 {
              font-size: 18px;
              margin-top: 0; }
            #content_wrap #kyoken_kouza .ib .inner .int_link .r .box p {
              margin: 14px 0 0;
              font-size: 16px; }
              #content_wrap #kyoken_kouza .ib .inner .int_link .r .box p s {
                font-size: 12px; }
  #content_wrap .ib a.btn.flr {
    float: none; }
  #content_wrap .ib .cluster_content {
    margin: 32px 0; }
    #content_wrap .ib .cluster_content .df_content {
      margin: 24px 0; }
    #content_wrap .ib .cluster_content .bullet_list p {
      font-size: 18px !important;
      margin-bottom: 16px !important; }
  #content_wrap .ib .bullet_list {
    margin-bottom: 48px; }
    #content_wrap .ib .bullet_list .box {
      font-size: 16px;
      width: 100%;
      margin-right: 0;
      height: auto;
      padding-bottom: 16px;
      border-right: none;
      border-bottom: 1px solid #ccc; }
      #content_wrap .ib .bullet_list .box:last-child {
        margin-bottom: 0; }
      #content_wrap .ib .bullet_list .box .links {
        padding-left: 24px; }
        #content_wrap .ib .bullet_list .box .links a {
          font-size: 14px; }
  #content_wrap .ib .wide_img {
    width: 100vw;
    height: 182px;
    margin-right: -16px;
    margin-left: -16px;
    margin-bottom: 64px; }
    #content_wrap .ib .wide_img.mgt {
      margin-top: 64px;
      margin-bottom: 64px; }
  #content_wrap .ib .buttons_list a {
    height: 72px;
    width: 100%;
    margin-bottom: 12px;
    padding-left: 32px; }
    #content_wrap .ib .buttons_list a:after {
      right: 24px; }
  #content_wrap .ib .df_content {
    margin: 40px 0;
    flex-wrap: wrap; }
    #content_wrap .ib .df_content.pt2 {
      margin-bottom: 0; }
      #content_wrap .ib .df_content.pt2 .left, #content_wrap .ib .df_content.pt2 .right {
        width: 100%;
        justify-content: center; }
        #content_wrap .ib .df_content.pt2 .left img.logo, #content_wrap .ib .df_content.pt2 .right img.logo {
          width: 100px !important;
          display: block;
          margin: 0 auto; }
        #content_wrap .ib .df_content.pt2 .left a.btn, #content_wrap .ib .df_content.pt2 .right a.btn {
          width: 100% !important; }
    #content_wrap .ib .df_content.mgt {
      margin-top: 64px; }
    #content_wrap .ib .df_content .left, #content_wrap .ib .df_content .right {
      width: 100%; }
      #content_wrap .ib .df_content .left p, #content_wrap .ib .df_content .right p {
        font-size: 14px; }
    #content_wrap .ib .df_content .right {
      margin-top: 24px; }
  #content_wrap .ib .rs_kankyo p {
    font-size: 14px; }
  #content_wrap .ib .research_intro {
    margin: -120px 0 -64px;
    margin-left: -16px;
    width: 100vw; }
    #content_wrap .ib .research_intro .ib {
      padding: 132px 16px; }
      #content_wrap .ib .research_intro .ib .cr {
        background: url(../img/research/cr1_sp.jpg) 50% 50%;
        width: 300px;
        height: calc(100% + 300px);
        left: -180px;
        top: -150px;
        background-size: 100% 90%; }
        #content_wrap .ib .research_intro .ib .cr.t2 {
          background: url(../img/research/cr2_sp.jpg) 50% 50%;
          background-size: 100% 90%;
          left: auto;
          right: -180px; }
      #content_wrap .ib .research_intro .ib .research_list {
        padding: 24px 20px;
        flex-wrap: wrap; }
        #content_wrap .ib .research_intro .ib .research_list .box {
          width: 100%;
          height: 94px;
          padding-left: 0;
          border-right: none !important; }
          #content_wrap .ib .research_intro .ib .research_list .box:after {
            display: none !important; }
          #content_wrap .ib .research_intro .ib .research_list .box img {
            height: 52px;
            margin-right: 12px; }
          #content_wrap .ib .research_intro .ib .research_list .box p {
            font-size: 14px;
            line-height: 1.4; }
  #content_wrap .ib .column_2.rr {
    flex-direction: colmun; }
  #content_wrap .ib .column_2 .left, #content_wrap .ib .column_2 .right {
    width: 100%; }

  #content_wrap .ib .culture_list, #content_wrap .ib .sample_list {
    flex-wrap: wrap; }
    #content_wrap .ib .culture_list .box, #content_wrap .ib .sample_list .box {
      width: 100%; }
  #content_wrap .ib h2.center {
    font-size: 26px; }

  #content_wrap .iframe {
    height: 320px; }
  #content_wrap a.map_link {
    font-size: 15px; }
  #content_wrap table {
    margin: 32px 0;
    width: 100%; }
    #content_wrap table tr, #content_wrap table td, #content_wrap table tbody, #content_wrap table th {
      display: block !important;
      width: 100% !important; }
    #content_wrap table tr th {
      padding: 16px !important;
      background: #f7f7f7;
      font-size: 15px;
      border: none; }
    #content_wrap table tr td {
      border: none;
      padding: 16px !important;
      font-size: 15px; }
  #content_wrap.subpages .access .ib {
    padding: 24px 16px; }
    #content_wrap.subpages .access .ib a.map_link {
      top: 26px;
      right: 16px; }
    #content_wrap.subpages .access .ib p {
      font-size: 15px; }
  #content_wrap.subpages .profile .ib {
    padding: 24px 16px; }
  #content_wrap.subpages .history .ib {
    padding: 24px 16px; }
    #content_wrap.subpages .history .ib .history_line {
      margin: 32px 0; }
      #content_wrap.subpages .history .ib .history_line .row {
        flex-wrap: wrap;
        margin-bottom: 36px;
        padding-left: 24px; }
        #content_wrap.subpages .history .ib .history_line .row .date {
          width: 100%;
          padding: 0;
          font-size: 16px; }
        #content_wrap.subpages .history .ib .history_line .row .detail {
          width: 100%; }
          #content_wrap.subpages .history .ib .history_line .row .detail h4 {
            font-size: 18px; }
          #content_wrap.subpages .history .ib .history_line .row .detail p {
            font-size: 15px; }
  #content_wrap.subpages .company_illustration1 {
    height: auto;
    margin-top: -48px;
    margin-bottom: -16px; }
    #content_wrap.subpages .company_illustration1 .ib {
      padding: 32px 0; }
  #content_wrap.subpages .ib {
    padding: 32px 16px; }
    #content_wrap.subpages .ib .ceo_images {
      height: auto;
      height: 240px;
      margin: 32px 0 48px; }
      #content_wrap.subpages .ib .ceo_images .tm {
        width: 280px;
        left: 0;
        bottom: -40px;
        height: auto; }
      #content_wrap.subpages .ib .ceo_images img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content_wrap.subpages .ib h2.center {
      font-size: 26px;
      text-align: left;
      line-height: 1.4;
      margin-bottom: 32px; }
      #content_wrap.subpages .ib h2.center br {
        display: none; }
    #content_wrap.subpages .ib p.company1 {
      width: 100%;
      font-size: 15px;
      margin: 20px 0; }
    #content_wrap.subpages .ib .ceo_messages .left {
      width: 100%; }
      #content_wrap.subpages .ib .ceo_messages .left h3 {
        font-size: 24px; }
        #content_wrap.subpages .ib .ceo_messages .left h3 br {
          display: none; }
    #content_wrap.subpages .ib .ceo_messages .right {
      width: 100%; }
      #content_wrap.subpages .ib .ceo_messages .right p.sp_content {
        text-align: right;
        padding-right: 8px; }
        #content_wrap.subpages .ib .ceo_messages .right p.sp_content span {
          display: block;
          font-size: 14px; }
        #content_wrap.subpages .ib .ceo_messages .right p.sp_content em {
          display: block;
          font-size: 18px;
          font-weight: bold; }

  #content_wrap .ib.side_main {
    flex-direction: column-reverse; }
    #content_wrap .ib.side_main.ib_monograph {
      flex-direction: column; }
    #content_wrap .ib.side_main .side, #content_wrap .ib.side_main .main {
      width: 100%; }
    #content_wrap .ib.side_main .side {
      margin-top: 32px; }
      #content_wrap .ib.side_main .side.s {
        width: 100%; }
      #content_wrap .ib.side_main .side .year_links {
        flex-wrap: wrap;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        #content_wrap .ib.side_main .side .year_links li {
          width: 48.4%;
          border-bottom: 1px solid #ccc; }
          #content_wrap .ib.side_main .side .year_links li a:before {
            display: none; }

  #content_wrap .ib.devide {
    padding: 32px 16px; }
    #content_wrap .ib.devide .meta.single {
      margin-bottom: 32px; }
    #content_wrap .ib.devide .meta h2 {
      font-size: 24px; }
    #content_wrap .ib.devide .member .img.m.l {
      width: 40px;
      height: 40px; }
    #content_wrap .ib.devide .anchor_link a {
      font-size: 16px;
      margin-right: 20px; }
    #content_wrap .ib.devide .main {
      width: 100%; }
    #content_wrap .ib.devide .post-navigation a.back span {
      font-size: 14px; }
    #content_wrap .ib.devide .post-navigation a.back img {
      margin: 0 !important;
      width: 24px; }
    #content_wrap .ib.devide .post-navigation .next-post a, #content_wrap .ib.devide .post-navigation .prev-post a {
      font-size: 14px; }
      #content_wrap .ib.devide .post-navigation .next-post a:after, #content_wrap .ib.devide .post-navigation .prev-post a:after {
        transform: scaleX(-1) scale(0.8); }
    #content_wrap .ib.devide .post-navigation .next-post a:before {
      transform: scale(0.8); }
    #content_wrap .ib.devide .side {
      width: 100%; }
    #content_wrap .ib.devide .blog_list .box {
      margin-right: 0;
      width: 100%;
      margin-bottom: 32px; }

  #content_wrap .ib h3.line {
    margin-bottom: 16px; }
  #content_wrap .ib .interview_list {
    margin: 32px 0; }
    #content_wrap .ib .interview_list.zadan .member {
      flex-wrap: nowrap; }
      #content_wrap .ib .interview_list.zadan .member .box {
        width: 33%; }
        #content_wrap .ib .interview_list.zadan .member .box p {
          font-size: 11px; }
          #content_wrap .ib .interview_list.zadan .member .box p.name {
            font-size: 15px; }
        #content_wrap .ib .interview_list.zadan .member .box:nth-of-type(2) {
          padding-left: 0px; }
    #content_wrap .ib .interview_list .inner {
      margin-bottom: 32px; }
      #content_wrap .ib .interview_list .inner:nth-of-type(2) {
        margin-bottom: 12px; }
      #content_wrap .ib .interview_list .inner.ceo .box .member .box {
        width: 100%; }
      #content_wrap .ib .interview_list .inner.zadan .box .img img {
        object-position: center; }
    #content_wrap .ib .interview_list .box {
      margin-bottom: 32px; }
      #content_wrap .ib .interview_list .box .img .cat {
        top: auto;
        bottom: 22px;
        font-size: 14px;
        padding: 3px 8px; }
      #content_wrap .ib .interview_list .box h4 {
        font-size: 18px;
        margin: 10px 0 16px;
        padding-right: 16px; }
        #content_wrap .ib .interview_list .box h4:after {
          right: 0px; }
        #content_wrap .ib .interview_list .box h4 br {
          display: none; }
      #content_wrap .ib .interview_list .box p {
        font-size: 12px; }
        #content_wrap .ib .interview_list .box p.name {
          font-size: 16px; }
      #content_wrap .ib .interview_list .box .member .box {
        width: 50%;
        padding-right: 12px;
        margin-right: 0; }
        #content_wrap .ib .interview_list .box .member .box:nth-of-type(2) {
          padding-left: 12px; }

  .interview_head .main_img {
    margin-top: 72px;
    height: 168px; }
    .interview_head .main_img h1 {
      left: 16px;
      bottom: -10px; }
      .interview_head .main_img h1 span {
        font-size: 36px; }
      .interview_head .main_img h1 em {
        font-size: 14px; }
  .interview_head .int_title {
    height: auto; }
    .interview_head .int_title .ib {
      padding: 16px;
      flex-wrap: wrap; }
      .interview_head .int_title .ib .left {
        width: 100%; }
        .interview_head .int_title .ib .left h2 {
          font-size: 22px; }
          .interview_head .int_title .ib .left h2 br {
            display: none; }
      .interview_head .int_title .ib .right {
        width: 100%;
        margin-top: 24px; }
        .interview_head .int_title .ib .right .taxonomy a {
          font-size: 14px; }
        .interview_head .int_title .ib .right .tags a {
          font-size: 14px; }
  .interview_head .members {
    height: auto; }
    .interview_head .members .ib {
      padding: 24px 16px; }
      .interview_head .members .ib .member_list .box {
        margin: 0 8px; }
        .interview_head .members .ib .member_list .box h4 {
          font-size: 18px;
          margin-top: 4px; }
        .interview_head .members .ib .member_list .box p {
          font-size: 13px; }
      .interview_head .members .ib .member_list:has(> .box:nth-child(3)) .box {
        width: 33%; }
        .interview_head .members .ib .member_list:has(> .box:nth-child(3)) .box .img {
          width: 100px;
          height: 100px; }
        .interview_head .members .ib .member_list:has(> .box:nth-child(3)) .box p {
          font-size: 12px; }

  #content_wrap.single .last_img {
    height: 156px; }
  #content_wrap.single .related_contents {
    height: auto; }
    #content_wrap.single .related_contents .ib {
      padding: 24px 16px; }
      #content_wrap.single .related_contents .ib .row {
        height: auto;
        flex-wrap: wrap;
        justify-content: space-between; }
        #content_wrap.single .related_contents .ib .row a.btn {
          width: 48.5%;
          height: auto;
          font-size: 16px;
          margin-bottom: 12px; }
          #content_wrap.single .related_contents .ib .row a.btn:last-child {
            width: 100%; }
  #content_wrap.single .prev_next .ib {
    padding: 36px 16px 38px; }
    #content_wrap.single .prev_next .ib .row {
      height: auto;
      flex-wrap: wrap; }
      #content_wrap.single .prev_next .ib .row .box, #content_wrap.single .prev_next .ib .row .back {
        margin-bottom: 24px;
        width: 100%; }
        #content_wrap.single .prev_next .ib .row .box.next-post, #content_wrap.single .prev_next .ib .row .back.next-post {
          order: 2; }
        #content_wrap.single .prev_next .ib .row .box.prev-post, #content_wrap.single .prev_next .ib .row .back.prev-post {
          order: 1; }
        #content_wrap.single .prev_next .ib .row .box .img, #content_wrap.single .prev_next .ib .row .back .img {
          height: 95px;
          width: 95px; }
        #content_wrap.single .prev_next .ib .row .box a.title, #content_wrap.single .prev_next .ib .row .back a.title {
          width: calc(100% - 105px); }
          #content_wrap.single .prev_next .ib .row .box a.title p, #content_wrap.single .prev_next .ib .row .back a.title p {
            font-size: 16px; }
      #content_wrap.single .prev_next .ib .row .back {
        border: none;
        flex-wrap: nowrap;
        justify-content: center;
        order: 3;
        padding: 12px 20px;
        border: 1px solid #E6002D;
        border-radius: 8px;
        width: auto;
        margin-bottom: 0;
        margin: 0 auto;
        margin-top: 24px; }
        #content_wrap.single .prev_next .ib .row .back p {
          font-size: 16px;
          width: auto; }
        #content_wrap.single .prev_next .ib .row .back img {
          margin-right: 8px; }
  #content_wrap.single .ib {
    padding: 32px 16px; }
    #content_wrap.single .ib .interview_content .middle_img {
      height: 156px;
      width: 100vw;
      margin: 32px 0;
      margin-left: -16px;
      max-width: 100vw; }
    #content_wrap.single .ib .interview_content h3 {
      font-size: 22px;
      line-height: 1.4;
      margin: 24px 0 32px; }
    #content_wrap.single .ib .interview_content h4 {
      font-size: 15px;
      margin: 32px 0; }
    #content_wrap.single .ib .interview_content .content_row {
      margin-bottom: 24px;
      margin-top: 24px; }
      #content_wrap.single .ib .interview_content .content_row + h3 {
        margin-top: 24px; }
      #content_wrap.single .ib .interview_content .content_row + .content_row {
        margin-top: 16px; }
      #content_wrap.single .ib .interview_content .content_row:nth-last-of-type(1) {
        margin-bottom: 0; }
      #content_wrap.single .ib .interview_content .content_row.r_img {
        justify-content: end;
        flex-wrap: wrap; }
        #content_wrap.single .ib .interview_content .content_row.r_img.left {
          justify-content: space-between !important; }
        #content_wrap.single .ib .interview_content .content_row.r_img.int:has(.eye_img) {
          padding-top: 240px; }
          #content_wrap.single .ib .interview_content .content_row.r_img.int:has(.eye_img).left {
            justify-content: space-between; }
            #content_wrap.single .ib .interview_content .content_row.r_img.int:has(.eye_img).left .eye_img {
              right: -16px;
              left: auto; }
          #content_wrap.single .ib .interview_content .content_row.r_img.int:has(.eye_img) .eye_img {
            display: block;
            position: absolute;
            width: 100vw;
            height: 200px;
            top: 0;
            right: -16px; }
        #content_wrap.single .ib .interview_content .content_row.r_img .eye_img {
          width: calc(100% - 100px);
          position: relative;
          aspect-ratio: 1/1.17;
          height: auto;
          margin-top: 30px; }
        #content_wrap.single .ib .interview_content .content_row.r_img .member {
          margin-right: 32px; }
        #content_wrap.single .ib .interview_content .content_row.r_img .content {
          width: calc(100% - 100px); }
      #content_wrap.single .ib .interview_content .content_row.nothumb .eye_img {
        width: 100%; }
      #content_wrap.single .ib .interview_content .content_row.nothumb .content {
        width: 100%; }
      #content_wrap.single .ib .interview_content .content_row .member {
        width: 68px; }
        #content_wrap.single .ib .interview_content .content_row .member .img {
          width: 100%;
          height: auto;
          aspect-ratio: 1/1; }
      #content_wrap.single .ib .interview_content .content_row .content {
        width: calc(100% - 100px); }
        #content_wrap.single .ib .interview_content .content_row .content p {
          font-size: 15px; }
          #content_wrap.single .ib .interview_content .content_row .content p:last-child {
            margin-bottom: 0; }
    #content_wrap.single .ib .interview_content .wide_img {
      margin: 30px 0; }

  .breadcrumbs {
    height: auto; }
    .breadcrumbs .ib {
      padding: 16px;
      font-size: 14px; }
      .breadcrumbs .ib span, .breadcrumbs .ib a {
        font-size: 13px; }
      .breadcrumbs .ib a.home {
        padding-right: 12px;
        width: 90px;
        border: none; }
      .breadcrumbs .ib .inner {
        padding-left: 12px;
        flex-wrap: wrap;
        border-left: 1px solid #d1d1d1; }
        .breadcrumbs .ib .inner span {
          width: 100%;
          margin-bottom: 6px; }
          .breadcrumbs .ib .inner span:before {
            display: none; }
          .breadcrumbs .ib .inner span a {
            color: #E6002D; }

  footer .footer_copyright {
    height: auto; }
    footer .footer_copyright .ib {
      padding: 24px 16px 20px;
      flex-direction: column-reverse; }
      footer .footer_copyright .ib nav {
        margin-bottom: 28px;
        flex-wrap: wrap;
        justify-content: space-between; }
        footer .footer_copyright .ib nav.ff a {
          margin-right: 0; }
        footer .footer_copyright .ib nav a.pp {
          width: 100%;
          text-align: center;
          order: 1;
          display: block;
          margin-bottom: 24px; }
        footer .footer_copyright .ib nav a {
          font-size: 14px;
          margin-right: 0; }
          footer .footer_copyright .ib nav a.denso {
            order: 2; }
          footer .footer_copyright .ib nav a.satolab {
            order: 3; }
      footer .footer_copyright .ib p {
        margin: 0; }
  footer .ib {
    padding: 16px 16px 38px; }
    footer .ib .left, footer .ib right {
      width: 100%; }
    footer .ib .left .logo {
      width: 174px;
      margin: 24px auto;
      display: block; }
    footer .ib .left p {
      text-align: center;
      font-size: 14px; }
    footer .ib .left a.btn {
      margin-top: 36px; }
    footer .ib .right {
      margin-top: 14px; }
      footer .ib .right .buttons {
        height: 118px;
        justify-content: space-between;
        flex-wrap: wrap; }
        footer .ib .right .buttons a.btn {
          height: 100%;
          margin: 0;
          height: 52px; }
          footer .ib .right .buttons a.btn.sp_middle {
            width: 100% !important;
            order: 1;
            margin-bottom: 14px; }
          footer .ib .right .buttons a.btn.gh {
            order: 2; }
          footer .ib .right .buttons a.btn.x {
            order: 3; }
          footer .ib .right .buttons a.btn.note.n {
            order: 4; }
          footer .ib .right .buttons a.btn.s {
            width: max-content;
            min-width: inherit;
            padding: 14px 20px; }
          footer .ib .right .buttons a.btn.grad {
            width: 56%; }
      footer .ib .right nav {
        display: none; } }
/*736pxend */

/*# sourceMappingURL=style_sp.css.map */
