@charset "UTF-8";
@import url("global.css");
#contents {
  font-size: 1.06em; }

.morebtn .en, .morebtn .ja {
  background-color: #2866B7;
  color: #FFF;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 4px;
  border-radius: 4px; }
  .morebtn .en:hover, .morebtn .ja:hover {
    transform: translateY(3px); }
.morebtn .en {
  display: inline-block;
  padding: 10px 25px 8px;
  min-width: 160px;
  text-align: center;
  font-size: clamp(14px, 1.7vw, 19px); }
.morebtn .ja {
  display: flex;
  padding: 15px 25px;
  max-width: 320px;
  position: relative; }
  .morebtn .ja::after {
    content: "\f061";
    position: absolute;
    right: 25px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    line-height: 1;
    font-family: 'Font Awesome 6 free','Font Awesome 6 Brands';
    font-weight: 900;
    font-size: clamp(12px, 1.6vw, 19px); }

.section .title_box .sec_title span {
  display: block; }
.section .title_box .sec_title .ja {
  padding-bottom: 10px; }
  .section .title_box .sec_title .ja::before {
    content: "-";
    display: inline-block;
    margin-right: 8px; }
.section .title_box .sec_title .en {
  font-size: clamp(40px, 6vw, 80px);
  line-height: 1; }

.block .text_box .sec_title::after {
  content: "";
  display: block;
  margin: 40px 0;
  width: 55px;
  height: 5px;
  background-color: #2866B7; }
.block .text_box .sec_title span {
  display: block; }
.block .text_box .sec_title .en {
  color: #2866B7;
  font-size: clamp(22px, 2vw, 23px);
  line-height: 1; }
.block .text_box .sec_title .ja {
  font-size: clamp(24px, 2.7vw, 40px);
  font-weight: bold; }

/* ---------- Top Movie ---------- */
#toparea {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100svh;
  display: flex;
  align-items: flex-end;
  padding: 0 13vw 5%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  clip-path: inset(0); }
  #toparea #top_movie {
    position: fixed;
    z-index: -1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100svh; }
    #toparea #top_movie .movie {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      overflow: hidden; }
      #toparea #top_movie .movie::before {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        background-color: #000;
        opacity: .4; }
      #toparea #top_movie .movie video#movie {
        position: absolute;
        top: 50%;
        left: 50%;
        object-fit: cover;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%; }
  #toparea .catch {
    font-size: clamp(27px, 4.2vw, 90px);
    line-height: 1.4;
    color: #FFF; }
  #toparea .en {
    position: absolute;
    left: 100%;
    top: 0;
    width: 85svh;
    opacity: .9;
    line-height: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: left top;
    transform-origin: left top;
    mix-blend-mode: overlay; }
    #toparea .en span {
      display: block;
      width: 100%;
      margin: 5vw 0 0 110px; }

/* ---------- News ---------- */
#sec_news {
  background-color: #FFF;
  padding: 180px 0 160px;
  display: flex; }
  #sec_news .title_box {
    flex-shrink: 0;
    margin: 15px 140px 0 calc( ( 100vw - 1200px ) / 2 );
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    white-space: nowrap; }
    #sec_news .title_box .morebtn {
      margin-top: 50px; }
  #sec_news .contentblock {
    width: 100%;
    overflow: hidden; }
    #sec_news .contentblock .newslist .slick-list {
      padding: 0 120px 0 0 !important; }
    #sec_news .contentblock .newslist .item {
      margin-right: 60px; }
      #sec_news .contentblock .newslist .item .inner {
        display: block; }
        #sec_news .contentblock .newslist .item .inner .img {
          width: 100%;
          height: 0;
          padding-top: 52.3%;
          overflow: hidden;
          position: relative; }
          #sec_news .contentblock .newslist .item .inner .img img {
            position: absolute;
            left: 0;
            top: 0;
            transition: all 0.5s cubic-bezier(0.04, 0.435, 0.315, 0.9) 0s;
            -webkit-transition: all 0.5s cubic-bezier(0.04, 0.435, 0.315, 0.9) 0s;
            backface-visibility: hidden;
            -webkit-backface-visibility: hidden; }
        #sec_news .contentblock .newslist .item .inner .text {
          margin-top: 20px;
          text-align: justify; }
          #sec_news .contentblock .newslist .item .inner .text .postinfo {
            display: flex;
            justify-content: space-between;
            margin-bottom: 5px; }
            #sec_news .contentblock .newslist .item .inner .text .postinfo .postdate {
              color: #2866B7;
              line-height: 1;
              font-size: clamp(14px, 1.5vw, 19px);
              font-family: "Akshar", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
              line-height: 24px; }
            #sec_news .contentblock .newslist .item .inner .text .postinfo .cat {
              display: flex;
              flex-wrap: wrap;
              gap: 10px; }
              #sec_news .contentblock .newslist .item .inner .text .postinfo .cat > span {
                display: block;
                width: fit-content;
                padding: 0 10px;
                font-size: .8em;
                line-height: 24px;
                background-color: #2866B7;
                color: #FFF; }
          #sec_news .contentblock .newslist .item .inner .text .posttitle {
            font-size: clamp(13px, 1.5vw, 17px); }
      #sec_news .contentblock .newslist .item a .text .posttitle {
        text-decoration-color: rgba(40, 102, 183, 0.2);
        text-decoration-line: underline;
        text-decoration-thickness: 4px;
        text-underline-offset: 0; }
      @media (any-hover: hover) {
        #sec_news .contentblock .newslist .item a:hover .img img {
          transform: scale(1.05); } }

/* ---------- Fixed img ---------- */
.about_top_img,
.service_bottom_img {
  height: 780px;
  clip-path: inset(0); }
  .about_top_img figure.bg,
  .service_bottom_img figure.bg {
    content: "";
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }

.service_bottom_img figure.bg img.objectfit {
  object-position: left center; }

/* ---------- About & Service ---------- */
#sec_about {
  padding-top: 130px;
  background-color: #FFF; }
  #sec_about .wrapper {
    display: flex;
    align-items: flex-start;
    flex-direction: row-reverse; }
  #sec_about .text_box {
    padding: 50px 0 0 50px;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    #sec_about .text_box .text {
      text-align: justify; }
      #sec_about .text_box .text .morebtn {
        margin-top: 55px; }
  #sec_about .photo_box {
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    -webkit-transform: translateX(-170px);
    transform: translateX(-170px); }
    #sec_about .photo_box .img1 {
      width: 106%; }
    #sec_about .photo_box .img2 {
      margin-top: 30px;
      width: 66.33%; }
    #sec_about .photo_box .img3 {
      position: absolute;
      right: calc( ( 130px + 6% ) * -1 );
      bottom: 0;
      z-index: 2;
      background-color: #FFF;
      width: 380px;
      padding: 30px 0 0 30px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }

#sec_service {
  margin-top: 60px;
  background-color: #FFF; }
  #sec_service .wrapper {
    position: relative;
    z-index: 2; }
  #sec_service .text_box {
    padding: 70px 0 140px;
    max-width: 38%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    #sec_service .text_box .text {
      text-align: justify; }
      #sec_service .text_box .text .morebtn {
        margin-top: 35px; }
  #sec_service .service_img {
    position: absolute;
    left: 38%;
    right: 0;
    top: 0;
    width: 740px;
    max-width: 62%;
    margin: 0 auto; }
    #sec_service .service_img figure {
      width: 100%; }

/* ---------- Strengths ---------- */
#sec_strengths {
  padding: 130px 0 200px;
  background-color: #2866B7;
  color: #FFF; }
  #sec_strengths .sec_title span {
    display: block; }
  #sec_strengths .sec_title .en {
    font-size: clamp(21px, 2.2vw, 23px);
    line-height: 1; }
  #sec_strengths .sec_title .ja {
    font-size: clamp(24px, 3.2vw, 40px);
    font-weight: bold; }
  #sec_strengths .list {
    margin-top: 80px; }
    #sec_strengths .list ul li {
      display: flex;
      align-items: center; }
      #sec_strengths .list ul li + li {
        margin-top: 70px; }
      #sec_strengths .list ul li .img {
        width: 41%;
        flex-shrink: 0; }
        #sec_strengths .list ul li .img figure {
          width: 100%;
          height: 100%; }
      #sec_strengths .list ul li .textbox {
        width: 100%;
        padding-left: 70px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; }
        #sec_strengths .list ul li .textbox dl dt {
          display: flex;
          align-items: baseline;
          font-size: clamp(18px, 2.1vw, 40px);
          font-weight: bold;
          margin-bottom: 30px; }
          #sec_strengths .list ul li .textbox dl dt .num {
            display: block;
            line-height: 1;
            font-size: 2.6em;
            margin-right: 20px; }
        #sec_strengths .list ul li .textbox dl dd {
          text-align: justify; }

/* ---------- Works ---------- */
#sec_works {
  padding: 130px 0;
  background-color: #FFF;
  overflow: hidden; }
  #sec_works .title_box {
    display: flex;
    align-items: flex-end;
    justify-content: space-between; }
  #sec_works .contentblock {
    margin-top: 50px; }
    #sec_works .contentblock .workslist li {
      margin: 0 35px; }
      #sec_works .contentblock .workslist li:nth-child(even) {
        margin-top: 60px; }
      #sec_works .contentblock .workslist li .inner {
        display: block; }
        #sec_works .contentblock .workslist li .inner .thumb {
          width: 100%;
          height: 0;
          padding-top: 75.27%;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          overflow: hidden;
          position: relative; }
          #sec_works .contentblock .workslist li .inner .thumb img {
            position: absolute;
            left: 0;
            top: 0;
            transition: all 0.5s cubic-bezier(0.04, 0.435, 0.315, 0.9) 0s;
            -webkit-transition: all 0.5s cubic-bezier(0.04, 0.435, 0.315, 0.9) 0s;
            backface-visibility: hidden;
            -webkit-backface-visibility: hidden; }
        #sec_works .contentblock .workslist li .inner .text {
          margin-top: 15px;
          font-size: clamp(11px, 1.2vw, 14px); }
          #sec_works .contentblock .workslist li .inner .text .info {
            display: flex;
            align-items: flex-start;
            justify-content: space-between; }
            #sec_works .contentblock .workslist li .inner .text .info .cat {
              display: flex;
              flex-wrap: wrap;
              -webkit-box-sizing: border-box;
              box-sizing: border-box;
              gap: 7px; }
              #sec_works .contentblock .workslist li .inner .text .info .cat span {
                display: block;
                background-color: #1D1D1D;
                color: #FFF;
                padding: 1px 10px;
                white-space: nowrap; }
            #sec_works .contentblock .workslist li .inner .text .info .postdate {
              padding-top: 6px;
              line-height: 1;
              color: #CCC;
              font-family: "Akshar", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
              font-size: clamp(12px, 1.5vw, 18px); }
          #sec_works .contentblock .workslist li .inner .text .posttitle {
            margin: 15px 0;
            font-size: clamp(15px, 1.8vw, 20px);
            font-weight: bold;
            line-height: 1.3; }
          #sec_works .contentblock .workslist li .inner .text .tags dl {
            display: flex;
            background-color: #F1F1F1; }
            #sec_works .contentblock .workslist li .inner .text .tags dl dt {
              padding: 15px 20px;
              background-color: #E3E3E3;
              font-weight: bold;
              white-space: nowrap; }
            #sec_works .contentblock .workslist li .inner .text .tags dl dd {
              padding: 15px 20px;
              display: flex;
              flex-wrap: wrap;
              -webkit-box-sizing: border-box;
              box-sizing: border-box;
              gap: 3px 10px; }
              #sec_works .contentblock .workslist li .inner .text .tags dl dd span {
                display: block;
                white-space: nowrap; }
                #sec_works .contentblock .workslist li .inner .text .tags dl dd span::before {
                  content: "●";
                  display: inline-block;
                  vertical-align: middle;
                  font-size: 6px;
                  margin-right: 5px;
                  color: #2866B7; }
      #sec_works .contentblock .workslist li a:hover .thumb img {
        transform: scale(1.05); }

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

 Responsive-Breakpoint-1 ( 1600px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 1600px) {
  /* ---------- Top Movie ---------- */
  #toparea {
    padding: 0 50px 5%; }
    #toparea .en {
      width: 80svh; }
      #toparea .en span {
        margin: 50px 0 0 110px; }

  /* ---------- News ---------- */
  #sec_news .contentblock .newslist .slick-list {
    padding: 0 90px 0 0 !important; }
  #sec_news .contentblock .newslist .item {
    margin-right: 45px; }

  /* ---------- Fixed img ---------- */
  .about_top_img,
  .service_bottom_img {
    height: 90svh; }

  /* ---------- About & Service ---------- */
  #sec_about .photo_box {
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px); }
    #sec_about .photo_box .img1 {
      width: 79%; }
    #sec_about .photo_box .img2 {
      width: 49%; }
    #sec_about .photo_box .img3 {
      right: 0;
      width: 51%; }

  #sec_service .service_img {
    width: auto;
    max-width: 46%; }

  /* ---------- Strengths ---------- */
  #sec_strengths .list {
    margin-top: 65px; }
    #sec_strengths .list ul li + li {
      margin-top: 60px; }
    #sec_strengths .list ul li .textbox {
      padding-left: 50px; }

  /* ---------- Works ---------- */
  #sec_works .contentblock .workslist li {
    margin: 0 25px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-2 ( 1300px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 1300px) {
  .morebtn .en {
    min-width: 150px; }
  .morebtn .ja {
    max-width: 300px; }

  .block .text_box .sec_title::after {
    margin: 20px 0 30px;
    width: 50px;
    height: 4px; }

  /* ---------- Top Movie ---------- */
  /* ---------- News ---------- */
  #sec_news {
    padding: 120px 0 100px; }
    #sec_news .title_box {
      margin: 10px 100px 0 50px; }
      #sec_news .title_box .morebtn {
        margin-top: 40px; }
    #sec_news .contentblock .newslist .slick-list {
      padding: 0 120px 0 0 !important; }
    #sec_news .contentblock .newslist .item {
      margin-right: 30px; }

  /* ---------- Fixed img ---------- */
  /* ---------- About & Service ---------- */
  #sec_about {
    padding-top: 90px; }
    #sec_about .text_box {
      padding: 35px 0 0 40px;
      width: 46%; }
      #sec_about .text_box .text .morebtn {
        margin-top: 40px; }
    #sec_about .photo_box {
      width: 54%; }
      #sec_about .photo_box .img2 {
        margin-top: 20px; }
      #sec_about .photo_box .img3 {
        padding: 20px 0 0 20px; }

  #sec_service {
    margin-top: 50px; }
    #sec_service .text_box {
      padding: 60px 0 100px;
      max-width: 40%; }
      #sec_service .text_box .text .morebtn {
        margin-top: 30px; }
    #sec_service .service_img {
      left: auto;
      margin: 0;
      max-width: 56%; }

  /* ---------- Strengths ---------- */
  #sec_strengths {
    padding: 90px 0 140px; }
    #sec_strengths .list {
      margin-top: 45px; }
      #sec_strengths .list ul li {
        align-items: stretch; }
        #sec_strengths .list ul li + li {
          margin-top: 35px; }
        #sec_strengths .list ul li .textbox {
          padding-left: 40px; }
          #sec_strengths .list ul li .textbox dl dt {
            margin-bottom: 20px; }
            #sec_strengths .list ul li .textbox dl dt .num {
              margin-right: 15px; }

  /* ---------- Works ---------- */
  #sec_works {
    padding: 90px 0; }
    #sec_works .contentblock {
      margin-top: 35px; }
      #sec_works .contentblock .workslist li:nth-child(even) {
        margin-top: 40px; }
      #sec_works .contentblock .workslist li .inner .text {
        margin-top: 10px; }
        #sec_works .contentblock .workslist li .inner .text .info .cat {
          gap: 5px; }
          #sec_works .contentblock .workslist li .inner .text .info .cat span {
            padding: 1px 8px; }
        #sec_works .contentblock .workslist li .inner .text .info .postdate {
          padding-top: 5px; }
        #sec_works .contentblock .workslist li .inner .text .posttitle {
          margin: 12px 0; }
        #sec_works .contentblock .workslist li .inner .text .tags dl {
          display: block; }
          #sec_works .contentblock .workslist li .inner .text .tags dl dt, #sec_works .contentblock .workslist li .inner .text .tags dl dd {
            padding: 12px 15px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-3 ( 959px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 959px) {
  .morebtn .en {
    padding: 10px 35px 8px;
    min-width: 0; }
  .morebtn .ja {
    max-width: 100%; }

  .section .title_box .sec_title .ja {
    padding-bottom: 5px; }
    .section .title_box .sec_title .ja::before {
      margin-right: 7px; }

  .block .text_box .sec_title::after {
    margin: 15px 0 30px; }

  /* ---------- Top Movie ---------- */
  #toparea {
    padding: 0 6vw 7%; }
    #toparea .en {
      width: 70svh; }
      #toparea .en span {
        margin: 6vw 0 0 130px; }

  /* ---------- News ---------- */
  #sec_news {
    padding: 90px 0 80px; }
    #sec_news .title_box {
      flex-shrink: 0;
      margin: 10px 70px 0 5vw; }
      #sec_news .title_box .morebtn {
        margin-top: 35px; }
    #sec_news .contentblock .newslist .slick-list {
      padding: 0 90px 0 0 !important; }
    #sec_news .contentblock .newslist .item {
      margin-right: 30px; }
      #sec_news .contentblock .newslist .item .inner .text {
        margin-top: 15px; }
        #sec_news .contentblock .newslist .item .inner .text .postinfo {
          margin-bottom: 5px; }

  /* ---------- Fixed img ---------- */
  .about_top_img,
  .service_bottom_img {
    height: 60svh; }

  /* ---------- About & Service ---------- */
  #sec_about .text_box {
    padding: 0 0 0 20px;
    width: 48%; }
    #sec_about .text_box .text .morebtn {
      margin-top: 35px; }
  #sec_about .photo_box {
    width: 52%; }
    #sec_about .photo_box .img2 {
      margin-top: 10px; }
    #sec_about .photo_box .img3 {
      padding: 10px 0 0 10px; }

  #sec_service .text_box {
    padding: 15px 0 60px;
    max-width: 34%; }
  #sec_service .service_img {
    max-width: 60%; }

  /* ---------- Strengths ---------- */
  #sec_strengths {
    padding: 70px 0 90px; }
    #sec_strengths .list {
      margin-top: 20px; }
      #sec_strengths .list ul li .img {
        width: 40%; }
      #sec_strengths .list ul li .textbox {
        padding-left: 30px; }
        #sec_strengths .list ul li .textbox dl dt {
          margin-bottom: 15px; }
          #sec_strengths .list ul li .textbox dl dt .num {
            font-size: 2.2em;
            margin-right: 10px; }

  /* ---------- Works ---------- */
  #sec_works {
    padding: 65px 0; }
    #sec_works .contentblock .workslist li {
      margin: 0 15px; }
      #sec_works .contentblock .workslist li:nth-child(even) {
        margin-top: 20px; }
      #sec_works .contentblock .workslist li .inner .text {
        margin-top: 8px; }
        #sec_works .contentblock .workslist li .inner .text .info .cat {
          gap: 2px; }
          #sec_works .contentblock .workslist li .inner .text .info .cat span {
            padding: 1px 6px; }
        #sec_works .contentblock .workslist li .inner .text .tags dl dt {
          padding: 10px; }
        #sec_works .contentblock .workslist li .inner .text .tags dl dd {
          padding: 10px;
          gap: 1px 6px; }
          #sec_works .contentblock .workslist li .inner .text .tags dl dd span::before {
            margin-right: 3px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-4 ( 644px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 644px) {
  .morebtn .en, .morebtn .ja {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  .morebtn .en {
    padding: 10px 20px 8px; }
  .morebtn .ja {
    width: fit-content;
    margin-left: auto;
    padding: 12px 60px 12px 15px; }
    .morebtn .ja::after {
      right: 15px; }

  .section .title_box .sec_title .ja {
    padding-bottom: 3px; }
    .section .title_box .sec_title .ja::before {
      margin-right: 5px; }

  .block .text_box .sec_title::after {
    margin: 10px 0 15px;
    width: 32px;
    height: 3px; }

  /* ---------- Top Movie ---------- */
  #toparea {
    height: 60svh;
    padding: 0 5vw 7%; }
    #toparea #top_movie {
      height: 100%; }
      #toparea #top_movie video#movie {
        width: auto;
        height: 100%; }
    #toparea .en {
      width: calc( 60svh - 140px ); }
      #toparea .en span {
        margin: 5vw 0 0 100px; }

  /* ---------- News ---------- */
  #sec_news {
    padding: 45px 0 65px;
    display: block; }
    #sec_news .title_box {
      margin: 0 5vw 25px;
      white-space: normal;
      display: flex;
      align-items: flex-end;
      justify-content: space-between; }
      #sec_news .title_box .morebtn {
        margin: 0; }
    #sec_news .contentblock .newslist .slick-list {
      padding: 0 50px !important; }
    #sec_news .contentblock .newslist .item {
      margin: 0 10px; }

  /* ---------- Fixed img ---------- */
  .about_top_img {
    height: 40svh; }

  .service_bottom_img {
    display: none; }

  /* ---------- About & Service ---------- */
  #sec_about {
    padding-top: 70px; }
    #sec_about .wrapper {
      display: block; }
    #sec_about .text_box {
      padding: 0 0 30px;
      width: 100%; }
      #sec_about .text_box .text .morebtn {
        margin-top: 25px; }
    #sec_about .photo_box {
      width: 100%;
      -webkit-transform: none;
      transform: none; }
      #sec_about .photo_box .img2 {
        margin-top: 7px; }
      #sec_about .photo_box .img3 {
        padding: 7px 0 0 7px; }

  #sec_service {
    margin: 50px 0 -30px; }
    #sec_service .wrapper {
      position: static; }
    #sec_service .text_box {
      padding: 0;
      max-width: 100%; }
      #sec_service .text_box .text .morebtn {
        margin-top: 25px; }
    #sec_service .service_img {
      margin-top: 30px;
      position: static;
      z-index: 2;
      right: auto;
      top: auto;
      max-width: 100%; }

  /* ---------- Strengths ---------- */
  #sec_strengths {
    padding: 65px 0 80px; }
    #sec_strengths .list ul li {
      display: block; }
      #sec_strengths .list ul li .img {
        width: 100%; }
        #sec_strengths .list ul li .img figure {
          height: auto; }
      #sec_strengths .list ul li .textbox {
        padding: 15px 0 0; }
        #sec_strengths .list ul li .textbox dl dt {
          margin-bottom: 10px; }

  /* ---------- Works ---------- */
  #sec_works {
    padding: 50px 0; }
    #sec_works .contentblock {
      margin-top: 30px; }
      #sec_works .contentblock .workslist .slick-list {
        padding: 0 70px 0 0 !important; }
      #sec_works .contentblock .workslist li {
        margin: 0 2vw 0 5vw; }
        #sec_works .contentblock .workslist li:nth-child(even) {
          margin-top: 20px; } }
