@charset "UTF-8";
/* CSS Document */
/*============================================
responsive
============================================*/
/*--------------------------------------------
	main
--------------------------------------------*/
main .inner {
  width: 1200px; }
main section h2 {
  color: #292929;
  font-family: "Roboto", sans-serif;
  font-size: 69px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: 2.07px;
  text-transform: uppercase; }
  main section h2 + p.hl_jp {
    color: #292929;
    font-family: "Source Han Sans JP", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.68px;
    text-transform: uppercase;
    margin-top: 10px; }

/*--------------------------------------------
	header
--------------------------------------------*/
header div.logo {
  display: none; }
header h1.logo {
  display: block; }

/*--------------------------------------------
	.main_img
--------------------------------------------*/
.main_img {
  position: relative;
  background-color: #F5F5F5;
  height: 80vh; }
  .main_img h2 {
    color: #292929;
    font-family: "Source Han Sans JP", sans-serif;
    font-size: 3vw;
    font-style: normal;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: 2.7px; }
    .main_img h2 + .more_btn {
      margin-top: 45px; }
  .main_img .more_btn {
    width: auto;
    height: auto;
    display: table; }
    .main_img .more_btn a {
      width: 230px !important;
      height: 60px !important;
      font-size: 1.3rem;
      font-weight: 700;
      line-height: 70px;
      padding-bottom: 1px !important;
      background: #004481 !important;
      color: #fff !important;
      display: flex !important;
      justify-content: center !important;
      align-items: center !important;
      position: static;
      letter-spacing: inherit; }
      .main_img .more_btn a:hover {
        background-color: #005bac !important; }
      .main_img .more_btn a::before {
        background-image: url("../image/common/ic-wt.png") !important;
        display: inline-block;
        width: 9px;
        height: 9px;
        margin-right: 1em;
        transition: all 0.3s ease 0s;
        position: static; }
      .main_img .more_btn a::after {
        content: none; }
  .main_img .left_img {
    width: 72%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0; }
    .main_img .left_img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: left 80%; }
  .main_img .right_img {
    width: 100%;
    height: 95vh; }
    .main_img .right_img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: right; }
  .main_img .text {
    position: absolute;
    top: 50%;
    left: 9%;
    transform: translateY(-50%); }
    .main_img .text p {
      font-size: 2rem;
      font-weight: 700;
      color: #fff; }
      .main_img .text p:nth-of-type(1) {
        font-size: 6.2rem;
        letter-spacing: 0.1em;
        margin-bottom: 50px; }
  .main_img .info {
    background-color: #fff;
    position: absolute;
    bottom: 0;
    right: 0;
    clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 0% 100%);
    padding: 30px 50px 0 135px; }
    .main_img .info p {
      width: 260px;
      line-height: 1.4; }
    .main_img .info p.info_title {
      font-size: 1.4rem;
      font-weight: 700;
      color: #0067b0;
      margin-bottom: 10px; }
      .main_img .info p.info_title::before {
        content: "";
        background: url("../image/common/ic_info.png") no-repeat bottom/contain;
        display: inline-block;
        width: 18px;
        height: 16px;
        margin-right: 0.5em; }
    .main_img .info p.info_content {
      margin-bottom: 5px; }
      .main_img .info p.info_content a {
        font-size: 1.2rem;
        font-weight: 700;
        color: #292929;
        transition: all 0.3s ease 0s; }
        .main_img .info p.info_content a:hover {
          opacity: 0.6; }
        .main_img .info p.info_content a::after {
          content: ">"; }
    .main_img .info p.info_date time {
      font-size: 1.1rem;
      font-weight: 600;
      color: #9f9f9f; }

/*--------------------------------------------
	.more_btn
--------------------------------------------*/
.more_btn {
  width: 400px;
  height: 70px; }
  .more_btn a {
    width: 400px;
    height: 70px;
    display: block;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 70px;
    text-align: center;
    border: 1px solid #292929;
    transition: all 0.3s ease 0s;
    border: none !important;
    padding: 0 !important;
    text-align: left !important;
    background: none !important;
    position: relative;
    display: table !important;
    height: auto;
    width: auto;
    max-width: inherit;
    color: #292929;
    font-family: "Source Han Sans JP", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.44px; }
    .more_btn a::before {
      content: "";
      display: inline-block;
      background: url("../image/common/ic.png") no-repeat center/contain;
      width: 9px;
      height: 9px;
      margin-right: 1em;
      transition: all 0.3s ease 0s;
      content: '';
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: auto;
      right: 0;
      width: 100%;
      height: 1px;
      transition: all 0.3s ease-in-out; }
    .more_btn a:hover {
      color: #fff;
      background-color: #005bac;
      border: 1px solid #005bac; }
      .more_btn a:hover::before {
        background: url("../image/common/ic_hover.png") no-repeat center/contain; }
      .more_btn a:hover::after {
        bottom: 0;
        left: 0;
        right: auto;
        width: 100%; }
      .more_btn a:hover span {
        color: #383838; }
        .more_btn a:hover span::after {
          right: 15px;
          border-top: 1px solid #383838 !important;
          border-right: 1px solid #383838 !important; }
        .more_btn a:hover span::before {
          background-color: #fff;
          border: 1px solid #383838; }
    .more_btn a::after {
      content: '';
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: auto;
      right: 0;
      width: 100%;
      height: 1px;
      transition: all 0.3s ease-in-out;
      width: 0;
      background: #000;
      color: #000 !important; }
    .more_btn a span {
      margin-left: 10px; }
      .more_btn a span::after {
        content: '';
        position: absolute !important;
        top: 10px !important;
        left: -22px !important;
        width: 6px !important;
        height: 6px !important;
        border-top: 1px solid #fff !important;
        border-right: 1px solid #fff !important;
        transform: rotate(45deg) !important;
        transition: all .3s; }
      .more_btn a span::before {
        content: '';
        position: absolute;
        top: 0;
        left: -30px;
        width: 24px;
        height: 24px;
        background-color: #383838;
        border: 1px solid #383838;
        border-radius: 50%;
        transition: all .3s; }

/*--------------------------------------------
	.top_service
--------------------------------------------*/
.top_service {
  padding: 120px 0; }
  .top_service .inner > .headline {
    margin-bottom: 90px; }
  .top_service .headline h2 {
    color: #292929;
    font-family: "Source Han Sans JP", sans-serif;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 165%;
    letter-spacing: 4.32px;
    text-transform: uppercase; }
    .top_service .headline h2 b {
      color: #005BAC;
      font-family: "Source Han Sans JP", sans-serif;
      font-size: 36px;
      font-style: normal;
      font-weight: 700;
      line-height: 165%;
      letter-spacing: 4.32px;
      text-transform: uppercase; }
  .top_service .service-list {
    width: 960px;
    margin: 0 auto;
    border-bottom: 1px solid #F1F1F1; }
    .top_service .service-list > li {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      border-top: 1px solid #F1F1F1;
      padding: 50px 0; }
      .top_service .service-list > li > div:first-child {
        width: 200px; }
      .top_service .service-list > li > div:last-child {
        width: calc(100% - 260px); }
    .top_service .service-list li .headline h3 {
      color: #292929;
      font-family: "Source Han Sans JP", sans-serif;
      font-size: 24px;
      font-style: normal;
      font-weight: 700;
      line-height: 160%;
      letter-spacing: 2.88px;
      text-transform: uppercase; }
    .top_service .service-list li .headline .hl_en {
      /*color: #CCC;*/
      color: #005BAC;
      font-family: "Source Han Sans JP", sans-serif;
      font-size: 12px;
      font-style: normal;
      font-weight: 350;
      line-height: 160%;
      letter-spacing: 1.08px;
      text-transform: uppercase; }
    .top_service .service-list li .txt + .link__list {
      margin-top: 40px; }
    .top_service .service-list li .link__list {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding-left: 30px; }
      .top_service .service-list li .link__list > li {
        width: calc(100%/2 - 15px); }
        .top_service .service-list li .link__list > li .more_btn {
          height: auto;
          margin-bottom: 15px; }
          .top_service .service-list li .link__list > li .more_btn a span::before {
            background-color: #005BAC !important;
            border-color: #005BAC; }
          .top_service .service-list li .link__list > li .more_btn a span::after {
            border-color: #fff !important; }

/*--------------------------------------------
	.top_ourworks
--------------------------------------------*/
.top_ourworks {
  background-color: #f6f5ed;
  padding: 105px 0;
  position: relative; }
  .top_ourworks .headline {
    margin-bottom: 75px; }
  .top_ourworks h2 {
    line-height: 1; }
  .top_ourworks ul.link_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .top_ourworks ul.link_list li {
      width: 400px;
      margin-bottom: 50px; }
    .top_ourworks ul.link_list .img_wrap {
      width: 400px;
      height: 230px;
      margin-bottom: 20px; }
      .top_ourworks ul.link_list .img_wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .top_ourworks ul.link_list .text {
      position: relative;
      border-left: 1px solid #e1dfdf;
      padding-left: 30px; }
    .top_ourworks ul.link_list h3 {
      font-size: 1.8rem;
      margin-bottom: 10px;
      color: #292929;
      font-family: "Source Han Sans JP", sans-serif;
      font-style: normal;
      font-weight: 700;
      line-height: 150%;
      letter-spacing: 2.16px;
      text-transform: uppercase; }
    .top_ourworks ul.link_list p {
      font-size: 1.3rem;
      margin-bottom: 10px; }
    .top_ourworks ul.link_list p.tag {
      font-size: 1.2rem;
      font-weight: 500;
      color: #0067b0; }
      .top_ourworks ul.link_list p.tag::before {
        content: "";
        display: block;
        background-color: #005bac;
        width: 2px;
        height: 12px;
        position: absolute;
        bottom: 0;
        left: 0; }
      .top_ourworks ul.link_list p.tag a {
        color: #0067b0;
        transition: all 0.3s ease 0s; }
        .top_ourworks ul.link_list p.tag a:hover {
          color: #0067b0;
          opacity: 0.6; }
  .top_ourworks .more_btn {
    margin: auto;
    width: auto;
    margin-right: 0 !important;
    margin-left: auto !important;
    display: table;
    height: auto; }

/*--------------------------------------------
	.news_blog
--------------------------------------------*/
.news_blog {
  margin: 105px 0; }
  .news_blog .title {
    margin-bottom: 75px; }
  .news_blog .list_area {
    display: flex;
    justify-content: space-between; }
    .news_blog .list_area .list_wrap {
      width: calc(100%/2 - 65px); }
    .news_blog .list_area .head {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: 20px;
      position: relative; }
    .news_blog .list_area h3 {
      font-size: 2.2rem;
      font-weight: 700; }
    .news_blog .list_area .btn a {
      font-size: 1.4rem;
      font-weight: 700;
      transition: all 0.3s ease 0s; }
      .news_blog .list_area .btn a::before {
        content: "";
        display: inline-block;
        background: url("../image/common/ic.png") no-repeat bottom/contain;
        width: 9px;
        height: 9px;
        margin-right: 1em;
        transition: all 0.3s ease 0s; }
      .news_blog .list_area .btn a:hover {
        opacity: 0.7; }
        .news_blog .list_area .btn a:hover::before {
          opacity: 0.7; }
    .news_blog .list_area ul li {
      position: relative;
      border-bottom: 1px solid #f1f1f1;
      padding: 30px 0; }
      .news_blog .list_area ul li:first-of-type {
        border-top: 1px solid #f1f1f1; }
        .news_blog .list_area ul li:first-of-type::before {
          content: "";
          display: block;
          background-color: #005bac;
          width: 25px;
          height: 2px;
          position: absolute;
          top: 0;
          left: 0; }
      .news_blog .list_area ul li p a {
        transition: all 0.3s ease 0s; }
        .news_blog .list_area ul li p a:hover {
          opacity: 0.7; }
      .news_blog .list_area ul li p.content {
        font-size: 1.5rem;
        font-weight: 700;
        margin-bottom: 10px; }
      .news_blog .list_area ul li p.date {
        display: inline-block; }
        .news_blog .list_area ul li p.date::after {
          content: "";
          display: inline-block;
          background-color: #e6e6e6;
          width: 15px;
          height: 1px;
          transform: translateY(-5px);
          margin: 0 9px; }
        .news_blog .list_area ul li p.date time {
          font-size: 1.1rem;
          font-weight: 700;
          color: #9f9f9f; }
      .news_blog .list_area ul li p.cate {
        display: inline-block;
        font-size: 1.1rem;
        font-weight: 700;
        color: #005bac; }
    .news_blog .list_area .more_btn {
      width: auto;
      position: absolute;
      top: 0;
      right: 0; }
      .news_blog .list_area .more_btn a span {
        color: #292929;
        font-family: "Source Han Sans JP", sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: 160%;
        text-transform: capitalize; }
        .news_blog .list_area .more_btn a span::before {
          background-color: #EBEBEB !important;
          border-color: #EBEBEB; }
        .news_blog .list_area .more_btn a span::after {
          border-color: #868686 !important; }

@media all and (max-width: 1290px) {
  main .inner {
    width: auto; } }
@media only screen and (max-width: 1024px) {
  .main_img {
    overflow: hidden;
    position: relative;
    margin-bottom: 30px;
    height: 80vh;
    background-color: #F5F5F5; }
    .main_img .text {
      position: static;
      top: auto;
      left: auto;
      transform: none; }
    .main_img h2 + .more_btn {
      margin: 20px auto; } }
@media screen and (max-width: 767px) {
  header div.logo {
    display: none; }
  header h1.logo {
    display: block; }

  .more_btn {
    height: auto;
    max-width: 300px; }
    .more_btn a {
      max-width: 300px;
      display: block;
      font-size: 1.3rem;
      font-weight: 700;
      text-align: center;
      border: 1px solid #292929;
      transition: all 0.3s ease 0s; }
      .more_btn a span::after {
        top: 6px !important;
        left: -17px !important;
        width: 4px !important;
        height: 4px !important; }
      .more_btn a span::before {
        width: 16px;
        height: 16px;
        left: -22px; }
      .more_btn a:hover {
        color: #fff;
        background-color: #005bac;
        border: 1px solid #005bac; }
        .more_btn a:hover::before {
          background: url("../image/common/ic_hover.png") no-repeat center/contain; }
      .more_btn a::after {
        transition: none !important; }

  main section {
    padding: 30px 0 !important;
    margin: 30px 0 !important; }
    main section .more_btn a::before {
      transition: none !important; }
    main section h2 {
      font-size: 3.2rem;
      font-weight: 700; }
    main section div.inner {
      padding-left: 20px;
      padding-right: 20px;
      width: auto; }
      main section div.inner .headline {
        margin-bottom: 30px !important; }
        main section div.inner .headline h3 {
          font-size: 5.5vw !important; }
        main section div.inner .headline .hl_en {
          font-size: 2.5vw !important; }

  .main_img .right_img {
    width: 100%;
    margin-bottom: 30px; }
    .main_img .right_img img {
      width: 100%;
      height: 90vh;
      object-fit: cover; }
  .main_img h2 {
    font-size: 4.5vw;
    white-space: nowrap; }
  .main_img .text p {
    font-size: 1.2rem;
    color: #fff; }
    .main_img .text p:nth-of-type(1) {
      font-size: 2.1rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      margin-bottom: 6%; }

  .top_service .headline h2 {
    font-size: 5vw;
    letter-spacing: 2px;
    text-align: center; }
    .top_service .headline h2 b {
      font-size: 5vw;
      letter-spacing: 2px;
      display: block; }
  .top_service .service-list {
    width: auto; }
    .top_service .service-list > li {
      display: inherit;
      padding: 30px 0; }
      .top_service .service-list > li > div {
        width: auto !important; }
    .top_service .service-list li {
      display: inherit; }
      .top_service .service-list li .link__list {
        display: inherit; }
        .top_service .service-list li .link__list > li {
          width: auto; }

  .top_ourworks {
    background-color: #f6f5ed;
    padding: 40px 0; }
    .top_ourworks h2 {
      line-height: 1; }
    .top_ourworks ul.link_list {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .top_ourworks ul.link_list li {
        width: calc(100%/2 - 5px);
        max-width: inherit;
        margin-bottom: 20px; }
      .top_ourworks ul.link_list .img_wrap {
        max-width: inherit;
        width: auto;
        height: auto;
        margin-bottom: 10px; }
        .top_ourworks ul.link_list .img_wrap img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          margin: 0 auto;
          display: block; }
        .top_ourworks ul.link_list .img_wrap a {
          display: block; }
      .top_ourworks ul.link_list .text {
        position: relative;
        border-left: 1px solid #e1dfdf;
        padding-left: 15px; }
      .top_ourworks ul.link_list h3 {
        font-size: 1.3rem;
        margin-bottom: 10px;
        font-weight: 500; }
      .top_ourworks ul.link_list p {
        font-size: 1.3rem;
        margin-bottom: 10px; }
      .top_ourworks ul.link_list p.tag {
        font-size: 1.2rem;
        font-weight: 500;
        color: #0067b0; }
        .top_ourworks ul.link_list p.tag::before {
          content: "";
          display: block;
          background-color: #005bac;
          width: 2px;
          height: 12px;
          position: absolute;
          bottom: 0;
          left: 0; }
    .top_ourworks .more_btn {
      margin: auto !important; }

  .news_blog {
    margin: 50px 0; }
    .news_blog .title {
      margin-bottom: 50px; }
    .news_blog .list_area {
      display: inherit; }
      .news_blog .list_area .list_wrap {
        display: inherit;
        width: auto; }
        .news_blog .list_area .list_wrap:not(:last-of-type) {
          margin-bottom: 80px; }
      .news_blog .list_area .head {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 20px; }
      .news_blog .list_area h3 {
        font-size: 1.8rem;
        font-weight: 700; }
      .news_blog .list_area .btn a {
        font-size: 1.4rem;
        font-weight: 700;
        transition: all 0.3s ease 0s; }
        .news_blog .list_area .btn a::before {
          content: "";
          display: inline-block;
          background: url("../image/common/ic.png") no-repeat bottom/contain;
          width: 9px;
          height: 9px;
          margin-right: 1em;
          transition: all 0.3s ease 0s; }
        .news_blog .list_area .btn a:hover {
          opacity: 0.7; }
          .news_blog .list_area .btn a:hover::before {
            opacity: 0.7; }
      .news_blog .list_area ul li {
        position: relative;
        border-bottom: 1px solid #f1f1f1;
        padding: 20px 0; }
        .news_blog .list_area ul li:first-of-type {
          border-top: 1px solid #f1f1f1; }
          .news_blog .list_area ul li:first-of-type::before {
            content: "";
            display: block;
            background-color: #005bac;
            width: 25px;
            height: 2px;
            position: absolute;
            top: 0;
            left: 0; }
        .news_blog .list_area ul li p a {
          transition: all 0.3s ease 0s;
          font-size: 1.4rem;
          line-height: 160%; }
          .news_blog .list_area ul li p a:hover {
            opacity: 0.7; }
        .news_blog .list_area ul li p.content {
          font-size: 1.4rem;
          font-weight: 700;
          margin-bottom: 0; }
        .news_blog .list_area ul li p.date {
          font-size: 1.1rem;
          display: inline-block; }
          .news_blog .list_area ul li p.date::after {
            content: "";
            display: inline-block;
            background-color: #e6e6e6;
            width: 15px;
            height: 1px;
            transform: translateY(-5px);
            margin: 0 5px; }
          .news_blog .list_area ul li p.date time {
            font-size: 1.2rem;
            font-weight: 700;
            color: #9f9f9f; }
        .news_blog .list_area ul li p.cate {
          display: inline-block;
          font-size: 1rem;
          font-weight: 700;
          color: #005bac; }
      .news_blog .list_area .more_btn {
        line-height: 1; }
        .news_blog .list_area .more_btn span {
          line-height: 1 !important; } }
/*--------------------------------------------
	.main-container
--------------------------------------------*/
.main-container {
  display: flex;
  width: 100%;
  height: 100vh;
  background-image: url("../image/top/bg_view.png");
  background-size: cover; }

.text-area {
  flex: 1;
  padding: 60px;
  display: flex;
  flex-direction: column;
  justify-content: center; }
  .text-area h1 {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 30px;
    font-weight: 300; }
  .text-area p {
    font-size: 1.1rem;
    color: #666;
    line-height: 1.8; }

.photo-area {
  flex: 1;
  display: flex;
  gap: 20px;
  padding: 0 40px; }

.photo-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  overflow: hidden;
  position: relative; }
  .photo-column:nth-child(1) .photo-scroll {
    animation-name: scrollDown; }
  .photo-column:nth-child(2) .photo-scroll {
    animation-name: scrollUp;
    animation-delay: -12.5s; }
  .photo-column:nth-child(3) .photo-scroll {
    animation-name: scrollDown;
    animation-delay: -25s; }

.photo-scroll {
  display: flex;
  flex-direction: column;
  gap: 20px;
  animation-duration: 25s;
  animation-timing-function: linear;
  animation-iteration-count: infinite; }

@keyframes scrollDown {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(-50%);
    /* 終了位置を調整 */ } }
@keyframes scrollUp {
  0% {
    transform: translateY(-50%);
    /* 開始位置を調整 */ }
  100% {
    transform: translateY(0); } }
.photo-item {
  width: 100%;
  aspect-ratio: 3 / 2;
  border-radius: 8px;
  overflow: hidden;
  background: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center; }
  .photo-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: white; }

@media (max-width: 1024px) {
  .main-container {
    flex-direction: column; }

  .text-area {
    padding: 30px;
    text-align: center;
    position: absolute;
    z-index: 100;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    background-color: #fff;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.14); }

  .photo-area {
    flex-direction: row;
    gap: 10px;
    padding: 0 20px; }
    .photo-area::after {
      content: "";
      display: inline-block;
      background: linear-gradient(rgba(245, 245, 245, 0), whitesmoke);
      position: absolute;
      bottom: 0;
      width: calc(100% - 40px);
      height: 100%; }

  .photo-item {
    height: 140px; } }
@media (max-width: 480px) {
  .text-area h1 {
    font-size: 1.8rem; }
  .text-area p {
    font-size: 1rem; }

  .photo-item {
    height: 100px; } }
/*--------------------------------------------
	.top_ourworks .category_tabs
--------------------------------------------*/
.top_ourworks .category_tabs {
  display: flex;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin-bottom: 80px;
  flex-wrap: wrap; }
  @media screen and (max-width: 767px) {
    .top_ourworks .category_tabs {
      margin-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .top_ourworks .category_tabs::after {
      content: "";
      display: inline-block;
      width: calc(100%/2 - 10px);
      margin: 0 2px 5px; } }
  .top_ourworks .category_tabs li {
    padding: 10px 20px;
    cursor: pointer;
    border: 1px solid #ccc;
    margin: 0 5px;
    border-radius: 5px; }
    @media screen and (max-width: 767px) {
      .top_ourworks .category_tabs li {
        width: calc(100%/2 - 10px);
        text-align: center;
        font-size: 3vw;
        padding: 5px;
        margin: 0 2px 5px; } }
  .top_ourworks .category_tabs li.active {
    background-color: #383838;
    color: white;
    border-color: #383838; }
.top_ourworks .works_category.works_category-txtlink .link_list {
  display: flex;
  padding: 50px;
  align-items: flex-start;
  gap: 60px;
  align-self: stretch;
  background: #FFF;
  gap: 0;
  justify-content: flex-start;
  margin-bottom: 60px; }
  @media screen and (max-width: 767px) {
    .top_ourworks .works_category.works_category-txtlink .link_list {
      padding: 20px; } }
.top_ourworks .works_category.works_category-txtlink ul.link_list li {
  width: auto;
  margin: 0 15px 10px; }
  @media screen and (max-width: 767px) {
    .top_ourworks .works_category.works_category-txtlink ul.link_list li {
      margin: 0 20px 10px 0; } }
  .top_ourworks .works_category.works_category-txtlink ul.link_list li h3 {
    font-size: 1.6rem;
    font-weight: 500;
    margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .top_ourworks .works_category.works_category-txtlink ul.link_list li h3 {
        font-size: 3.5vw; } }
  .top_ourworks .works_category.works_category-txtlink ul.link_list li a {
    color: #292929;
    transition: .3s;
    opacity: 0.8; }
    .top_ourworks .works_category.works_category-txtlink ul.link_list li a:hover {
      text-decoration: underline;
      opacity: 1; }
.top_ourworks .works_category.works_category-txtlink#business-model .link_list {
  background: none;
  padding: 0;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .top_ourworks .works_category.works_category-txtlink#business-model .link_list {
      display: inherit; } }
  .top_ourworks .works_category.works_category-txtlink#business-model .link_list li {
    width: calc(100%/2 - 30px);
    margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .top_ourworks .works_category.works_category-txtlink#business-model .link_list li {
        width: auto;
        margin-bottom: 10px;
        margin-right: 0; } }
  .top_ourworks .works_category.works_category-txtlink#business-model .link_list a {
    text-decoration: none;
    opacity: 1;
    background-color: #fff;
    display: block;
    border: 1px solid #fff;
    transition: .3s; }
    .top_ourworks .works_category.works_category-txtlink#business-model .link_list a:hover {
      text-decoration: none;
      border-color: #383838; }
  .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3 {
    position: relative;
    padding: 50px;
    display: table;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3 {
        padding: 20px; } }
    .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3::before {
      content: '';
      position: absolute;
      top: 50px;
      left: -20px;
      width: 24px;
      height: 24px;
      background-color: #EBEBEB;
      border: 1px solid #EBEBEB;
      border-radius: 50%;
      transition: all .3s;
      background-color: #EBEBEB !important;
      border-color: #EBEBEB; }
      @media screen and (max-width: 767px) {
        .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3::before {
          top: 22px;
          width: 16px;
          height: 16px; } }
    .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3::after {
      content: '';
      position: absolute !important;
      top: 60px;
      left: -12px !important;
      width: 6px !important;
      height: 6px !important;
      border-top: 1px solid #fff !important;
      border-right: 1px solid #fff !important;
      transform: rotate(45deg) !important;
      transition: all .3s;
      border-color: #868686 !important; }
      @media screen and (max-width: 767px) {
        .top_ourworks .works_category.works_category-txtlink#business-model .link_list h3::after {
          top: 28px;
          left: -16px !important; } }
.top_ourworks .works_category.works_category-txtlink#service-item .link_list {
  background: none;
  padding: 0;
  justify-content: space-between; }
  .top_ourworks .works_category.works_category-txtlink#service-item .link_list li {
    width: calc(100%/2 - 30px);
    margin-bottom: 0;
    width: calc(100%/2 - 5px);
    margin: 0; }
    .top_ourworks .works_category.works_category-txtlink#service-item .link_list li:nth-child(n+3) {
      margin-top: 10px; }
  .top_ourworks .works_category.works_category-txtlink#service-item .link_list a {
    text-decoration: none;
    opacity: 1;
    background-color: #fff;
    display: block;
    border: 1px solid #fff;
    transition: .3s; }
    .top_ourworks .works_category.works_category-txtlink#service-item .link_list a:hover {
      text-decoration: none;
      border-color: #383838; }
  .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3 {
    position: relative;
    display: table;
    margin: 0 auto;
    padding: 20px; }
    @media screen and (max-width: 767px) {
      .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3 {
        padding: 20px 5px; } }
    .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3::before {
      content: '';
      position: absolute;
      top: 50px;
      left: -20px;
      width: 24px;
      height: 24px;
      background-color: #EBEBEB;
      border: 1px solid #EBEBEB;
      border-radius: 50%;
      transition: all .3s;
      background-color: #EBEBEB !important;
      border-color: #EBEBEB;
      top: 20px; }
      @media screen and (max-width: 767px) {
        .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3::before {
          top: 22px;
          width: 16px;
          height: 16px; } }
    .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3::after {
      content: '';
      position: absolute !important;
      top: 60px;
      left: -12px !important;
      width: 6px !important;
      height: 6px !important;
      border-top: 1px solid #fff !important;
      border-right: 1px solid #fff !important;
      transform: rotate(45deg) !important;
      transition: all .3s;
      border-color: #868686 !important;
      top: 30px; }
      @media screen and (max-width: 767px) {
        .top_ourworks .works_category.works_category-txtlink#service-item .link_list h3::after {
          top: 28px;
          left: -16px !important; } }

/*--------------------------------------------
	.und_ourworks
--------------------------------------------*/
/* カテゴリタブのスタイル */
.top_ourworks_2025 {
  padding: 105px 0;
  position: relative;
  background-color: #f6f5ed; }
  @media screen and (max-width: 767px) {
    .top_ourworks_2025 {
      padding: 40px 0; } }
  .top_ourworks_2025 .headline {
    margin-bottom: 75px; }
  .top_ourworks_2025 h2 {
    line-height: 1; }
  .top_ourworks_2025 ul.link_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px; }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 ul.link_list {
        display: inherit;
        gap: 40px; } }
    .top_ourworks_2025 ul.link_list::after {
      content: "";
      display: inline-block;
      width: calc(100% / 3 - 40px); }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 ul.link_list::after {
          content: none; } }
    .top_ourworks_2025 ul.link_list > li.link_list__item {
      width: calc(100% / 3 - 40px);
      margin-bottom: 50px;
      border-left: 1px solid #dedede;
      padding-left: 30px; }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 ul.link_list > li.link_list__item {
          width: auto;
          border-left: 0;
          border: 1px solid #dedede;
          border-radius: 3px;
          padding: 30px;
          margin-bottom: 30px; } }
      .top_ourworks_2025 ul.link_list > li.link_list__item .assignment {
        background: none; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .works_hashtag {
        margin-bottom: 0;
        min-height: 59px; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_hashtag {
            min-height: inherit; } }
        .top_ourworks_2025 ul.link_list > li.link_list__item .works_hashtag ul {
          display: flex;
          flex-wrap: wrap; }
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_hashtag ul > li {
            line-height: 1; }
            .top_ourworks_2025 ul.link_list > li.link_list__item .works_hashtag ul > li a {
              line-height: 1;
              color: #9f9f9f;
              font-style: normal;
              font-weight: 400;
              letter-spacing: 1.356px;
              font-size: 11.3px;
              text-transform: uppercase; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .works_title {
        margin-bottom: 10px; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_title {
            margin-bottom: 10px; } }
        .top_ourworks_2025 ul.link_list > li.link_list__item .works_title h2 {
          color: #292929;
          font-size: 1.7rem;
          font-style: normal;
          font-weight: 700;
          line-height: 150%;
          /* 25.5px */
          letter-spacing: 0.51px;
          text-transform: uppercase;
          min-height: 58px; }
          @media screen and (max-width: 767px) {
            .top_ourworks_2025 ul.link_list > li.link_list__item .works_title h2 {
              min-height: inherit; } }
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_title h2 a {
            line-height: 113%;
            display: block;
            font-weight: 600; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .works_service {
        /*display: flex;
        flex-wrap: wrap;*/
        margin-bottom: 25px; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_service {
            margin-top: 10px;
            margin-bottom: 20px; } }
        .top_ourworks_2025 ul.link_list > li.link_list__item .works_service p {
          color: #292929;
          font-family: "Source Han Sans JP", sans-serif;
          font-size: 1.3rem;
          font-style: normal;
          font-weight: 400;
          line-height: 150%;
          /* 19.5px */
          letter-spacing: 1.56px;
          text-transform: uppercase; }
        .top_ourworks_2025 ul.link_list > li.link_list__item .works_service ul {
          display: flex;
          flex-wrap: wrap;
          gap: 10px; }
          .top_ourworks_2025 ul.link_list > li.link_list__item .works_service ul li {
            border-radius: 3px;
            background: #292929;
            line-height: 1; }
            .top_ourworks_2025 ul.link_list > li.link_list__item .works_service ul li a {
              color: #fcfcfc;
              font-family: "Source Han Sans JP", sans-serif;
              font-size: 1.3rem;
              font-style: normal;
              font-weight: 500;
              letter-spacing: 1.56px;
              text-transform: uppercase;
              line-height: 1;
              padding: 5px 10px;
              display: flex;
              justify-content: center;
              align-items: center; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .works_text h3 {
        color: #292929;
        font-size: 1.3rem;
        font-style: normal;
        font-weight: 300;
        line-height: 150%;
        /* 19.5px */
        letter-spacing: 1.56px;
        text-transform: uppercase; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .works_img {
        margin-bottom: 10px; }
      .top_ourworks_2025 ul.link_list > li.link_list__item .more_btn {
        margin: 0 !important;
        margin-left: 25px !important;
        margin-top: 8px !important; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 ul.link_list > li.link_list__item .more_btn {
            margin-top: 20px !important; } }
        .top_ourworks_2025 ul.link_list > li.link_list__item .more_btn a span::after {
          border-color: #868686 !important; }
        .top_ourworks_2025 ul.link_list > li.link_list__item .more_btn a span::before {
          background-color: #ebebeb;
          border: 1px solid #ebebeb; }
    .top_ourworks_2025 ul.link_list .img_wrap {
      width: 400px;
      height: 230px;
      margin-bottom: 20px; }
      .top_ourworks_2025 ul.link_list .img_wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .top_ourworks_2025 ul.link_list .text {
      position: relative;
      border-left: 1px solid #e1dfdf;
      padding-left: 30px; }
    .top_ourworks_2025 ul.link_list h3 {
      font-size: 1.8rem;
      margin-bottom: 10px;
      color: #292929;
      font-family: "Source Han Sans JP", sans-serif;
      font-style: normal;
      font-weight: 700;
      line-height: 150%;
      letter-spacing: 2.16px;
      text-transform: uppercase; }
    .top_ourworks_2025 ul.link_list p {
      font-size: 1.3rem;
      margin-bottom: 10px; }
    .top_ourworks_2025 ul.link_list p.tag {
      font-size: 1.2rem;
      font-weight: 500;
      color: #0067b0; }
      .top_ourworks_2025 ul.link_list p.tag::before {
        content: "";
        display: block;
        background-color: #005bac;
        width: 2px;
        height: 12px;
        position: absolute;
        bottom: 0;
        left: 0; }
      .top_ourworks_2025 ul.link_list p.tag a {
        color: #0067b0;
        transition: all 0.3s ease 0s; }
        .top_ourworks_2025 ul.link_list p.tag a:hover {
          color: #0067b0;
          opacity: 0.6; }
  .top_ourworks_2025 .more_btn {
    margin: auto;
    width: auto;
    margin-right: 0 !important;
    margin-left: auto !important;
    display: table;
    height: auto; }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 .more_btn a {
        font-size: 1.3rem; } }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 .more_btn a span::before {
        width: 16px;
        height: 16px;
        left: -22px; } }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 .more_btn a span::after {
        top: 6px !important;
        left: -17px !important;
        width: 4px !important;
        height: 4px !important; } }
  .top_ourworks_2025 .works_category-txtlink .link_list {
    display: flex;
    padding: 50px;
    align-items: flex-start;
    gap: 60px;
    align-self: stretch;
    background: #fff;
    gap: 0;
    justify-content: flex-start;
    margin-bottom: 60px; }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 .works_category-txtlink .link_list {
        padding: 20px;
        background: #f6f5ed; } }
  .top_ourworks_2025 .works_category-txtlink ul.link_list li {
    width: auto;
    margin: 0 15px 10px; }
    .top_ourworks_2025 .works_category-txtlink ul.link_list li h3 {
      font-size: 1.6rem;
      font-weight: 500;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 .works_category-txtlink ul.link_list li h3 {
          font-size: 3.5vw; } }
    .top_ourworks_2025 .works_category-txtlink ul.link_list li a {
      color: #292929;
      transition: 0.3s;
      opacity: 0.8; }
      .top_ourworks_2025 .works_category-txtlink ul.link_list li a:hover {
        text-decoration: underline;
        opacity: 1; }
  .top_ourworks_2025 #business-model.works_category-txtlink .link_list {
    background: none;
    padding: 0;
    justify-content: space-between; }
    .top_ourworks_2025 #business-model.works_category-txtlink .link_list li {
      width: calc(100% / 2 - 30px);
      margin-bottom: 0; }
    .top_ourworks_2025 #business-model.works_category-txtlink .link_list a {
      text-decoration: none;
      opacity: 1;
      background-color: #f5f5f5;
      display: block;
      border: 1px solid #f5f5f5;
      transition: 0.3s; }
      .top_ourworks_2025 #business-model.works_category-txtlink .link_list a:hover {
        text-decoration: none;
        border-color: #383838; }
    .top_ourworks_2025 #business-model.works_category-txtlink .link_list h3 {
      position: relative;
      padding: 50px;
      display: table;
      margin: 0 auto; }
      .top_ourworks_2025 #business-model.works_category-txtlink .link_list h3::before {
        content: "";
        position: absolute;
        top: 50px;
        left: -20px;
        width: 24px;
        height: 24px;
        background-color: #ebebeb;
        border: 1px solid #ebebeb;
        border-radius: 50%;
        transition: all 0.3s;
        background-color: #ebebeb !important;
        border-color: #ebebeb; }
      .top_ourworks_2025 #business-model.works_category-txtlink .link_list h3::after {
        content: "";
        position: absolute !important;
        top: 60px;
        left: -12px !important;
        width: 6px !important;
        height: 6px !important;
        border-top: 1px solid #fff !important;
        border-right: 1px solid #fff !important;
        transform: rotate(45deg) !important;
        transition: all 0.3s;
        border-color: #868686 !important; }
  .top_ourworks_2025 #service-item.works_category-txtlink .link_list {
    background: none;
    padding: 0;
    justify-content: space-between; }
    .top_ourworks_2025 #service-item.works_category-txtlink .link_list li {
      width: calc(100% / 2 - 30px);
      margin-bottom: 0;
      width: calc(100% / 2 - 5px);
      margin: 0; }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 #service-item.works_category-txtlink .link_list li {
          width: calc(100% / 2 - 5px);
          position: relative;
          margin: 0; } }
      .top_ourworks_2025 #service-item.works_category-txtlink .link_list li:nth-child(n + 3) {
        margin-top: 10px; }
    .top_ourworks_2025 #service-item.works_category-txtlink .link_list a {
      text-decoration: none;
      opacity: 1;
      background-color: #f5f5f5;
      display: block;
      border: 1px solid #f5f5f5;
      transition: 0.3s; }
      .top_ourworks_2025 #service-item.works_category-txtlink .link_list a:hover {
        text-decoration: none;
        border-color: #383838; }
    .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3 {
      padding: 50px;
      display: table;
      margin: 0 auto;
      padding: 20px;
      position: relative; }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3 {
          position: static;
          font-size: 3.5vw; } }
      .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3::before {
        content: "";
        position: absolute;
        top: 50px;
        left: -20px;
        width: 24px;
        height: 24px;
        background-color: #fff;
        border: 1px solid #fff;
        border-radius: 50%;
        transition: all 0.3s;
        top: 20px; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3::before {
            left: 8px;
            top: 22px;
            width: 16px;
            height: 16px; } }
      .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3::after {
        content: "";
        position: absolute !important;
        top: 60px;
        left: -12px !important;
        width: 6px !important;
        height: 6px !important;
        border-top: 1px solid #fff !important;
        border-right: 1px solid #fff !important;
        transform: rotate(45deg) !important;
        transition: all 0.3s;
        border-color: #868686 !important;
        top: 30px; }
        @media screen and (max-width: 767px) {
          .top_ourworks_2025 #service-item.works_category-txtlink .link_list h3::after {
            top: 28px;
            left: 12px !important; } }
  .top_ourworks_2025 .category_tabs {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      .top_ourworks_2025 .category_tabs {
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 40px; } }
    .top_ourworks_2025 .category_tabs li {
      padding: 10px 20px;
      cursor: pointer;
      border: 1px solid #ccc;
      margin: 0 5px;
      border-radius: 5px;
      background-color: #fff; }
      @media screen and (max-width: 767px) {
        .top_ourworks_2025 .category_tabs li {
          width: calc(100% / 2 - 5px);
          margin: 0;
          text-align: center;
          padding: 10px 0; } }
    .top_ourworks_2025 .category_tabs li.active {
      background-color: #383838;
      color: white;
      border-color: #383838; }

/* ADD SCSS 2025.10.03 */
/*-------------------------------------------------------------
	top_service
-------------------------------------------------------------*/
.top_service .service-list li .link__list.link__list__text {
  padding-left: 0; }
  .top_service .service-list li .link__list.link__list__text > li {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.44px;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 10px; }
    @media screen and (max-width: 767px) {
      .top_service .service-list li .link__list.link__list__text > li {
        font-size: 1.3rem; } }
    .top_service .service-list li .link__list.link__list__text > li::before {
      content: "・";
      display: inline-block;
      color: #EBEBEB; }
    .top_service .service-list li .link__list.link__list__text > li:last-child {
      justify-content: flex-end;
      width: auto;
      margin-top: 30px; }
      .top_service .service-list li .link__list.link__list__text > li:last-child .more_btn {
        width: auto; }

/*-------------------------------------------------------------
	top_service
-------------------------------------------------------------*/
.top_ourworks_2025 #service-item.works_category-txtlink .link_list a {
  background-color: #fff; }

/* ADD SCSS 2025.10.09 */
/*-------------------------------------------------------------
	.top_service
-------------------------------------------------------------*/
.top_service .inner > .headline {
  display: flex;
  justify-content: space-between;
  align-items: flex-end; }
  @media screen and (max-width: 767px) {
    .top_service .inner > .headline {
      display: inherit; } }
  .top_service .inner > .headline h2 {
    font-size: 3.2rem; }
    @media screen and (max-width: 767px) {
      .top_service .inner > .headline h2 {
        font-size: 7vw; } }
    @media screen and (max-width: 767px) {
      .top_service .inner > .headline h2 b {
        font-size: 7vw; } }
  .top_service .inner > .headline h3 {
    position: relative;
    color: #292929;
    font-size: 2.8rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 3.84px;
    text-transform: uppercase; }
    @media screen and (max-width: 767px) {
      .top_service .inner > .headline h3 {
        text-align: center; } }
    .top_service .inner > .headline h3 .number {
      font-family: "Roboto", sans-serif;
      font-size: 9.4rem;
      font-weight: 500;
      line-height: 1;
      letter-spacing: 2.88px;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .top_service .inner > .headline h3 .number {
          font-size: 20vw; } }
    .top_service .inner > .headline h3 .day {
      font-size: 1.2rem;
      font-style: normal;
      font-weight: 400;
      line-height: 1;
      letter-spacing: 0.36px;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .top_service .inner > .headline h3 .day {
          display: block;
          text-align: center;
          margin-top: 10px; } }
    .top_service .inner > .headline h3::before {
      width: 1px;
      height: 80px;
      content: "";
      display: inline-block;
      background-color: #222;
      margin-left: 0.5em;
      transform: rotate(30deg);
      position: absolute;
      left: -34px;
      bottom: 0; }
      @media screen and (max-width: 767px) {
        .top_service .inner > .headline h3::before {
          display: none; } }

/* ADD SCSS 2025.11.04 */
/*-------------------------------------------------------------
	main-container.main_img
-------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  .main-container.main_img .photo-area::after {
    content: none; }
  .main-container.main_img .text-area {
    padding: 0;
    top: 16vh;
    left: 20px;
    transform: none;
    background: none;
    box-shadow: none;
    text-align: left;
    width: calc(100% - 40px); }
  .main-container.main_img h2 {
    font-size: 6vw; }
  .main-container.main_img .photo-area {
    margin-top: 45vh;
    height: 40vh; }

  .top_service .inner > .headline h2,
  .top_service .inner > .headline h2 b {
    font-size: 5.5vw; }
  .top_service .inner > .headline h3 .number {
    font-size: 16vw; }

  .main-container {
    height: 93vh; }

  .photo-area {
    display: grid;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 40px; }

  .photo-item {
    height: auto;
    width: 190px; }

  .photo-column {
    gap: 0;
    flex-direction: row; }

  .photo-scroll {
    flex-direction: row;
    width: 367%; }

  .photo-column:nth-child(2) .photo-scroll {
    width: 483%; }

  @keyframes scrollDown {
    0% {
      transform: none;
      transform: translateX(0); }
    100% {
      transform: none;
      /* 終了位置を調整 */
      transform: translateX(-50%);
      /* 終了位置を調整 */ } }
  @keyframes scrollUp {
    0% {
      transform: none;
      /* 開始位置を調整 */
      transform: translateX(-50%);
      /* 開始位置を調整 */ }
    100% {
      transform: none;
      transform: translateX(0); } } }
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .main-container.main_img .text-area h2 {
    font-size: 4vw;
    text-align: center; } }
/* ADD SCSS 2025.11.26 */
/*-------------------------------------------------------------
	main-container.main_img
-------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  .main-container.main_img .photo-area {
    margin-top: 28px;
    height: 40vh;
    margin-bottom: 27vh; }
  .main-container.main_img .text-area {
    top: auto;
    bottom: 5vh; }
  .main-container.main_img h2 + .more_btn {
    margin: 20px auto 20px 0; } }
