@charset "UTF-8";

:root {
    --white: #fff;
    --black: #000;
    --nav-yellow: #fff673;
    --navy: #00407d;
    --font-family-sans-serif: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    --font-family-eg: "Oswald", sans-serif;
    --base-font-size: 16px;
    --small-font-size: 14px;
    --large-font-size: 18px;
    --letter-spacing-eg: 0.09em;
}
* {
    line-height: 1;
}
body {
    line-height: 0;
    font-family: var(--font-family-sans-serif);
    font-size: var(--base-font-size);
    background-color: var(--white);
    letter-spacing: 0.03em;
}
img {
    width: 100%;
}
p {
    line-height: 1.6;
}
a:hover{
    cursor: pointer;
}
h1 {
    width: 130px;
}
.eg {
    font-family: var(--font-family-eg);
}
.js-fade {
    opacity: 0;
    visibility: hidden;
    transform: translateY(25px);
    transition: opacity 1s,visibility 1s, transform 1s;
}
.scroll {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}
@keyframes fadeIn{
    0% { 
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}


.flex-container{
    display: flex;
}
.link-btn{
    font-family: var(--font-family-eg);
    letter-spacing: var(--letter-spacing-eg);
    background-color: var(--nav-yellow);
    width: 150px;
    border-radius: 40px;
    text-align: center;
    margin-left: 20px;
    border: 1px solid var(--nav-yellow);
    box-sizing: border-box;
}
.link-btn a{
    color: var(--navy);
}
.triangle-arrow {
    position: relative;
}
.triangle-arrow::after {
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 8px 0 8px 8px;
    border-color: transparent transparent transparent var(--navy);
    display: inline-block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
.triangle-bottom {
    position: relative;
}
.triangle-bottom {
    font-family: var(--font-family-eg);
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.09em;
}
.triangle-bottom::after {
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 8px 8px 0 8px;
    border-color: var(--navy) transparent transparent transparent;
    display: inline-block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
.triangle-right {
    position: relative;
}
.triangle-right::after {
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 8px 0 8px 8px;
    border-color: transparent transparent transparent var(--white);
    display: inline-block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: -15px;
    transform: translateY(-50%);
}
.triangle-right.under::after {
    top: -0%;
    transform: translateY(20%);
}
.header-area .triangle-right::after{
    display: none;
}


/* header */
.header-toppage {
    display: none;
    z-index: 9999;
    position: relative;
}
.header-area{
    justify-content: space-between;
    align-items: center;
    padding: 10px 2%;
    background: linear-gradient(rgba(91, 154, 212, 0.5), rgba(91, 154, 212, 0.5)),url( "../../_assets/img/common/bg-gradation.webp" ) top right / cover no-repeat;
    position: fixed;
    width: 96%;
    z-index: 9999;
}
.header-area .nav ul > li {
    display: inline-block;
    position: relative;
}
.header-area ul > li > a{
    padding: 10px 30px;
    display: block;
    color: var(--white);
    font-weight: bold;
    line-height: 1.5;
}

.header-area .nav ul .nav-sp {
    display: none;
}
@media (hover: hover) {
    .header-area .nav li a:hover,
    .header-area .nav li p:hover{
        color: var(--navy);
    }
    .header-area .nav ul li a:hover{
        opacity: .8;
    } 
}
.header-area .nav-list-btn {
    padding: 0;
    border: none;
    outline: none;
    font: inherit;
    color: inherit;
    background: none
}
.header-area .nav-yellow .nav-list-btn {
    padding: 7px 50px;
    font-weight: bold;
}
.header-area .nav-work .nav-list-btn p,
.header-area .nav-data .nav-list-btn p{
    color: var(--white);
    font-weight: bold;
    padding: 10px 30px;
}
.header-area .nav-yellow .nav-list-btn p{
    color: var(--navy);
}
.header-area .nav-list-menu {
    display: none;
}
.header-area .nav-list-menu.is-open {
    display: block;
}
.header-area .nav-yellow .nav-list-btn.is-open {
    border-radius: 0%;
    width: 150px;
    background-color: var(--white);
    border: 1px solid var(--white);
}
.header-area .nav-list ul {
    background-color: var(--white);
    padding: 18px 10px;
    position: absolute;
    border-radius: 8px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    top: 45px;
}
.header-area .nav-list ul a{
   color: var(--navy);
   padding: 6px 0 6px 25px;
   text-align: left;
}
.header-area .nav-list ul li{
    width: 200px;
    font-size: var(--small-font-size);
}
.header-area .nav-list.nav-data ul li{
    width: 140px;
    font-family: var(--font-family-sans-serif);
}
.header-area .nav-list.nav-yellow ul li{
    width: 120px;
    font-family: var(--font-family-sans-serif);
}
.header-area .nav-list .triangle-right::after {
    color: var(--navy);
    border-width: 7px 0 7px 7px;
    border-color: transparent transparent transparent var(--navy);
    left: 10px;
    display: inline-block;
}
.header-area .nav-list .triangle-right.under::after {
    transform: translateY(72%);
}
.header-area .nav-list ul::after{
    content: "";
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid var(--white);
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
.header-area .nav-yellow {
    border: none;
}
.header-area .nav-yellow ul{
    position: absolute;
    top: 40px;
    left: 0;
    z-index: 9999;
}
.header-area .nav-yellow ul li{
    display: block;
    width: 150px;
}
.header-area .nav-yellow ul a{
    background-color: rgba(0, 64, 125, .8);
    color: var(--white)!important;
    font-size: var(--small-font-size);
}
.header-area .nav .triangle-bottom {
    font-size: 16px;
}
.header-area .nav .ul{
    display: flex;
    justify-content: space-between;
}
.header-area .nav .ul li {
    margin: 0 auto;
    padding: 0 5px;
}

.header-area .hamburger {
    position: fixed;
    top: 4.56vw;
    right: 3.5vw;
    width: 7vw;
    height: 2vw;
    z-index: 12;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}
.header-area .hamburger span {
    position: absolute;
    width: 100%;
    height: 4px;
    background: #ffffff;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}
.header-area .hamburger span:nth-child(1) {
    top: 0;
}
.header-area .hamburger span:nth-child(2) {
    top: 10px;
}
.header-area .hamburger span:nth-child(3) {
    top: 20px;
}
.header-area span.open:nth-child(1) {
    background: #ffffff;
    top: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.header-area span.open:nth-child(2),
.header-area span.open:nth-child(3) {
    top: 6px;
    background: #ffffff;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
.header-area .hamburger {
    display: none;
}
.header-area .sp-entry{
    display: none;
}


/* Main */

#index-top {
    background-color: #fff;
    width: 100%;
    overflow: hidden;
    min-height: 900px;
    max-height: 100vh;
}
#index-top .kv-gallery ul li.kv-02 > img {
    width: 100%;
    object-fit: cover;
    min-height: 900px;
    max-height: 100vh;
}
#index-top .kv-gallery ul li.kv-01 {
    text-align: center;
    width: auto;
    object-fit: contain;
}
#index-top .kv-gallery ul li.kv-01 img{
    width: 420px;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
#index-top .kv-gallery ul li.kv-02 {
    position: relative;
}
#index-top .kv-gallery ul li.kv-02 .kv-inner-lead{
    position: absolute;
    top: 140px;
    left: 10vw;
    width: 500px;
}
#index-top .kv-gallery ul li.kv-02 .kv-values{
    position: absolute;
    top: 380px;
    left: 10vw;
    width: auto;
    background-color: rgba(91,154,212,.7);
    padding: 40px 60px 50px 40px;
    border-radius: 10px;
}
#index-top .kv-gallery ul li.kv-02 .kv-values img{
    width: 480px;
}
#index-top .fadeIn-kv-01{
    animation: fadeIn .5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
    animation-delay: 1s;
    opacity:0;
}
#index-top .fadeIn-kv-02{
    animation: fadeIn 4s cubic-bezier(0.33, 1, 0.68, 1) forwards;
    animation-delay: .5s;
    opacity:0;
}
@keyframes fadeIn{
    0% { 
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}


/* contents */

.inner-title-area{
    width: 440px;
    text-align: left;
}
.inner-title-area .title img{
    width: auto;
    text-align: center;
    object-fit: contain;
}
.inner-title-area .title-ja{
    padding: 30px 0 40px;
    font-weight: bold;
}
.inner-title-area .title-ja::after{
    content:'';
    border-bottom: 2px solid #000;
    width: 60px;
    height: 40px;
    display: block;
}
.inner-title-area .title-ja.center {
    text-align: center;
}
.inner-title-area .title-ja.center::after {
    margin: 0 auto;
}
@media (hover: hover) {
 #content .link-btn:hover,
 .footer-entry .link-btn:hover{
    background-color: var(--white);
    border-color: var(--navy);
    color: var(--navy);
    transition: background-color .5s;
}
#content .work-gallery .work-slider .work-card:hover{
    opacity: .8;
}
}
#content .content-wrapper:first-child {
    padding: 200px 0;
}
#content .content-wrapper:last-child{
    padding: 200px 0;
}
#content .content-wrapper {
    padding: 200px 0 0;
}
#content .link-btn {
    width: 220px;
    margin: 50px 0 0 0;
}
#content .link-btn.center {
    width: 220px;
    margin: 50px auto 0;
}
#content .link-btn.center + .link-btn.center{
    margin: 10px auto 0;
}
#content .link-btn a{
    padding: 20px 0;
    display: block;
    font-weight: bold;
}
#content .top-portfolio .flex-container{
    width: 1250px;
    margin: 0 0 0 auto;
    justify-content: space-between;
    text-align: center;
}
#content .top-portfolio .inner-img{
    width: 800px;
    margin: 0 0 40px 80px;
    position: relative;
}
#content .top-portfolio .inner-img-credit{
    position: absolute;
    right: 15px;
    bottom: -80px;
    width: 200px;
}
#content .top-work {
    background: url( "../../_assets/img/common/work-bg.webp" ) top right / contain repeat;
    padding: 140px 0 0;
    overflow: hidden;
}
#content .top-work .inner-title-area{
    text-align: center;
    margin: 0 auto;
}
#content .top-work .inner-title-area .title-ja::after{
    display: none;
}
#content .work-slider .slick-track {
    display: flex;
    position: relative;
    gap: 180px;
}
#content .work-gallery .work-slider .card-outer {
    text-align: center;
    border: 2px solid #d36691;
    border-radius: 20px;
    background-color: var(--white);
    position: relative;
	transition: all .3s;
    width: 360px;
    z-index: 99;
}
#content .work-gallery .work-slider .card-outer.slick-center{
	transform: scale(1.2);
}
#content .work-gallery .work-slider .pink {
    border: 2px solid #d36691;
}
#content .work-gallery .work-slider .purple {
    border: 2px solid #ab5c99;
}
#content .work-gallery .work-slider .green {
    border: 2px solid #3c98b3;
}
#content .work-gallery .work-slider .orange {
    border: 2px solid #e56957;
}
#content .work-gallery .work-slider .blue {
    border: 2px solid #1a4270;
    background-color: #F3F5F6;
    position: relative;
}
#content .work-gallery .work-slider .blue {
    border: 2px solid #1a4270;
    background-color: #F3F5F6;
    position: relative;
}
#content .work-gallery .work-slider .blue .work-card-sub img{
    position: absolute;
    top: 0;
    left: 0;
    width: 120px;
    border-radius: 18px 0 0 0;
}
#content .work-slider .work-card-lead img{
    width: auto;
    height: 20px;
    margin: 60px auto 20px;
}
#content .work-slider .work-card-name img{
    width: 310px;
    margin: 0 auto;
}
#content .work-slider .work-card-illust img{
    width: 95%;
    margin: 10px auto 20px;
    height: 210px;
    object-fit: contain;
}
#content .work-slider .work-card-number{
    position: absolute;
    top: -90px;
    right: -150px;
    width: 480px;
}
#content .work-slider .card-outer.pink .work-card-number{
    position: absolute;
    top: -55px;
    right: 40px;
    width: 100px;
}
#content .work-slider .work-card-btn{
    border-radius: 0 0 17px 17px;
    background-color: var(--navy);
}
#content .work-slider .work-card-btn p{
    padding: 10px 0;
    text-align: center;
    font-family: var(--font-family-eg);
    color: var(--white);
    font-size: var(--large-font-size);
}
#content .pink .work-card-btn{
    background-color: #d36691;
}
#content .purple .work-card-btn{
    background-color: #ab5c99;
}
#content .green .work-card-btn{
    background-color: #3c98b3;
}
#content .orange .work-card-btn{
    background-color: #e56957;
}
#content .blue .work-card-btn{
    background-color: #1a4270;
}
#content .work-slider .slick-track{
    padding: 130px 0 200px;
}
#content .work-slider .slick-dots li {
    width: 20px;
    border: none;
    background-color: transparent;
}
#content .work-slider .dots-class button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}
#content .work-slider .dots-class {
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 90px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
#content .work-slider .dots-class li {
    width: 15px;
    height: 15px;
    background-color: var(--white);
    border: none;
    border-radius: 50%;
    margin: 0 6px;
    cursor: pointer;
    transition: background-color .5s ease;
}
#content .work-slider .dots-class li.slick-active {
    background-color: var(--navy);
}
.slick-next::before {
  right: 0;
}
.slick-prev::before {
  left: 0;
}
.slick-prev::after {
  transform: rotate(-135deg);
}
.slick-next::after {
  transform: rotate(45deg);
}
.slick-next::before,
.slick-next::after,
.slick-prev::before,
.slick-prev::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.slick-next::after,
.slick-prev::after {
    width: 20px;
    height: 20px;
  border-top: 4px solid var(--white);
  border-right: 4px solid var(--white);
  z-index: 999;
}
.slick-arrow {
    position: absolute;
    width: 0;
    height: 0;
    bottom: 100px;
    top: auto;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.slick-next {
    right: 45%;
    left: auto;
  }
.slick-prev {
    left: 45%;
}
#content .top-about .flex-container{
    width: 1100px;
    margin: 0 auto;
    justify-content: space-between;
}
#content .top-about .inner-box:first-child {
    width: 450px;
    padding-right: 100px;
    background-image: linear-gradient(to bottom, #000 3px, transparent 3px);
    background-size: 3px 15px;
    background-repeat: repeat-y;
    background-position: right top;
}
#content .top-about .inner-box:last-child {
    width: 450px;
    padding-left: 100px;
}
#content .top-about .title {
    text-align: center;
}
#content .top-about .title img{
    width: auto;
    height: 90px;
    object-fit: contain;
}
#content .top-about .link-btn > a > span {
    font-size: 13px;
}
#content .top-interview {
    padding: 200px 0 150px;
}
#content .top-interview .inner-img{
    width: 640px;
    margin-left: 60px;
}
#content .top-interview .inner-title-area {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
#content .top-interview .grid-container {
    grid-template-columns: 1fr 1fr;
    display: grid;
    width: 1250px;
    margin: 0 0 0 auto;
    align-items: baseline;
}
#content .grid-container .title {
    grid-column: 1;
}
#content .grid-container .title img{
    width: 510px;
}
#content .grid-container .title-ja {
    grid-column: 1;
    padding: 0;
}
#content .grid-container .inner-img {
    grid-column: 2;
    grid-row: 1 / 5;
    padding: 0;
}
#content .grid-container .description {
    grid-column: 1;
}
#content .grid-container .link-btn {
    grid-column: 1;
    margin: 0 0 100px;
}

/* Footer */
.footer-entry {
    background: 
    linear-gradient(rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.6)),
    url( "../../_assets/img/common/footer-entry-bg.webp" ) top right / cover no-repeat;
}
.footer-entry .inner-title-area {
    width: 1020px;
    margin: 0 auto;
    padding: 80px 0;
}
.footer-entry .inner-title-area .title {
    text-align: center;
}
.footer-entry .inner-title-area .title-ja::after {
    display: none;
}
.footer-entry .inner-title-area .title img{
    height: 40px;
}
.footer-entry .inner-title-area .description{
    font-weight: bold;
    text-align: center;
}
.footer-entry .inner-title-area .link-btn{
    width: 460px;
    margin: 40px auto 0;
    font-weight: bold;
}
.footer-entry .inner-title-area .link-btn a{
    padding: 26px 0;
    display: block;
}
.footer-outer {
    background: 
    linear-gradient(rgba(91, 154, 212, 0.5), rgba(91, 154, 212, 0.5)),
    url( "../../_assets/img/common/bg-gradation.webp" ) top -260px right / cover no-repeat;
}
.footer-area {
    width: 92vw;
    margin: 0 auto;
    padding: 70px 0 20px; 
    color: var(--white);
    font-weight: bold;
}
.footer-area a {
    color: var(--white);
    line-height: 1.6;
}
@media (hover: hover){
.footer-area a:hover {
    opacity: .8;
}
}
.footer-inner {
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 60px;
}
.footer-inner.bottom {
    margin-bottom: 20px;
}
.footer-inner.top ul > li {
    margin: 0 0 0 80px;
}
.footer-inner.top ul li ul li {
    margin: 0 20px;
    padding-bottom: 10px;
    font-family: var(--font-family-eg);
    font-weight: normal;
}
.footer-inner.top ul li ul li:first-child {
    padding: 15px 0 10px;
}
.footer-inner .link li{
    margin-right: 60px;
    font-family: var(--font-family-eg);
    position: relative;
    font-weight: normal;
}
.footer-inner .link a::before {
    content: '';
    background: url( "../../_assets/img/common/icon-arrow.svg") no-repeat;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 5px;
    right: -17px;
}
.footer-inner .sns img{
    width: auto;
    height: 20px;
    object-fit: contain;
    margin-left: 20px;
}
.footer-area small {
    display: block;
    text-align: center;
    font-family: var(--font-family-sans-serif);
    font-weight: normal;
}
span.sp-none {
    display: inline-block;
}
.sp-none {
    display: block;
}
.pc-none {
    display: none;
}

/* 下層ページ　PC */

header {
    display: block;
}
#heading-top {
    position: relative;
    padding: 360px 0 0 0;
    background: url( "../../_assets/img/common/bg-gradation.webp" ) top right / cover no-repeat;
}
#heading-top .heading-wrapper .heading-bg {
    width: 1100px;
    margin: 0 auto;
}
#heading-top .heading-wrapper .heading-bg .white{
    padding: 70px 65px 20px;
    background-color: var(--white);
    width: 450px;
    position: absolute;
    top: 150px;
    left: auto;
}
#heading-top .heading-bg .title img{
    width: auto;
    margin-bottom: 40px;
    height: 80px;
    object-fit: contain;
    object-position: left top;
}
#heading-top .heading-bg .title-ja{
    font-size: var(--large-font-size);
    font-weight: bold;
}
#heading-top .heading-bg .title-ja::after{
    content:'';
    border-bottom: 2px solid #000;
    width: 60px;
    height: 36px;
    display: block;
}
#heading-top .heading-text{
    background-color: var(--white);
    font-weight: bold;
    width: 100%;
}
#heading-top .heading-text p {
    text-align: justify;
    line-height: 1.8;
    padding: 100px 0 0 0;
    width: 970px;
    margin: 0 auto;
}
.subpage-wrapper {
    padding: 180px 0 0;
}
.subpage-content .flex-container.space {
    justify-content: space-between;
}
.subpage-content {
    background-color: var(--white);
}
.p-justify {
    text-align: justify;
}

/* PORTFOLIO */
.portfolio .subpage-content .flex-container.portfolio {
    align-items: baseline;
}
.portfolio .subpage-content .portfolio-main-img {
    width: 825px;
    position: relative;
    z-index: 1;
}
.portfolio .subpage-content .portfolio-main-img::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -45px;
    width: 100%;
    height: 100%;
    background-color: rgba(91, 154, 212, 0.1);
    z-index: -1;
}
.portfolio .subpage-content .portfolio-main-timeline {
    width: 290px;
    margin-left: 130px;
}
.portfolio .timeline-detail {
    width: 1100px;
    margin: 0 auto;
} 
.portfolio .timeline-column {
    align-items: baseline;
    justify-content: center;
    margin: 0 0 190px;
}
.portfolio .timeline-column + .timeline-column {
    margin: 0 0 190px;
}
.portfolio .timeline-column .data {
    width: 420px;
    background-color: rgba(91, 154, 212, 0.1);
    padding: 40px 60px;
}
.portfolio .timeline-column .data img{
    width: auto;
    height: 190px;
    object-fit: contain;
}
.portfolio .timeline-column .photo img{
    width: 500px;
    margin: 0 0 0 -190px;
}
.portfolio .timeline-column.right-side {
    text-align: right;
    margin: 0 0 140px;
}
.portfolio .timeline-column.right-side .data img{
    width: auto;
    height: 190px;
    object-fit: contain;
}
.portfolio .timeline-column.right-side .photo img{
    width: 500px;
    margin: -100px -190px 0 0;
}

/* WORK */
.work .subpage-wrapper {
    width: 1100px;
    margin: 0 auto;
    padding: 120px 0 0;
}
.work .subpage-wrapper:nth-child(2) {
    padding: 120px 0 160px;
}
.work .subpage-wrapper .position-area-top {
    border-radius: 15px;
    justify-content: center;
    padding: 60px 0;
}
.work .position-area-top.pink{
    border: 4px solid #d36691;
}
.work .position-area-top.purple {
    border: 4px solid #ab5c99;
}
.work .position-area-top.green {
    border: 4px solid #3c98b3;
}
.work .position-area-top.orange {
    border: 4px solid #e56957;
}
.work .position-area-top.blue {
    border: 4px solid #1a4270;
    background-color: #F3F5F6;
    position: relative;
    padding: 80px 0 60px;
}
.work .position-area-top.blue .work-card-sub img{
    position: absolute;
    top: 0;
    left: 0;
    width: 190px;
    border-radius: 10px 0 0 0;
}
.work .subpage-wrapper .position-area-top .top-box-text{
    width: 470px;
    padding-right: 40px;
}
.work .subpage-wrapper .position-area-top .top-box-number img{
    width: auto;
    height: 100px;
    margin-bottom: 30px;
}
.work .subpage-wrapper .position-area-top .top-box-text p{
   line-height: 1.8;
}
.work .subpage-wrapper .position-area-top .top-box-img{
    position: relative;
}
.work .subpage-wrapper .position-area-top .top-box-illust{
    width: 460px;
}
.work .subpage-wrapper .position-area-top .producer-memo {
    border: 2px solid rgba(25, 66, 113, .6);
    color: #1a4270;
    background-color: #fff;
    padding: 10px;
    font-size: 12px;
    margin-top: 20px;
}
.work .subpage-wrapper .position-area-top.blue .top-box-illust {
    width: 380px;
}
.work .subpage-wrapper .position-area-top.blue .top-box-text{
    width: 550px;
}
.work .subpage-wrapper .position-area-detail {
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1100px;
    margin: 0 auto;
}
.work .position-area-detail .detail-staff-name {
    width: 550px;
}
.work .position-area-detail .detail-staff-name img{
    width: auto;
    height: 220px;
    object-fit: contain;
}
.work .position-area-detail .detail-staff-name.small img{
    width: auto;
    height: 170px;
    object-fit: contain;
}
.work .position-area-detail .detail-staff-comment {
    width: 550px;
    margin: -140px 0 0 0;
}
.work .position-area-detail .detail-staff-comment.mg-large  {
    margin: -100px 0 0 0;
}
.work .position-area-detail .detail-staff-comment .comment-box{
    padding-top: 40px;
}
.work .position-area-detail .detail-staff-comment .comment-lead {
    padding-bottom: 10px;
    font-weight: bold;
    font-size: 18px;
}
.work .detail-staff-comment.pink .comment-lead{
    color: #d36691;
}
.work .detail-staff-comment.purple .comment-lead{
    color: #ab5c99;
}
.work .detail-staff-comment.green .comment-lead{
    color: #3c98b3;
}
.work .detail-staff-comment.orange .comment-lead{
    color: #e56957;
}
.work .detail-staff-comment.blue .comment-lead{
    color: #1a4270;
}
.work .comment-box > p + p {
    font-size: 15px;
    line-height: 1.8;
}
.work .position-area-detail .detail-staff-img {
    position: relative;
    width: 550px;
    text-align: right;
}
.work .position-area-detail .detail-staff-img > img{
    width: 510px;
}
.work .position-area-detail .detail-staff-schedule{
    width: 510px;
    text-align: center;
}
.work .position-area-detail .detail-staff-schedule img{
    width: 300px;
    margin: 50px auto 0;
    height: 460px;
    object-fit: contain;
    object-position: top;
}
.work .top-work {
    width: 100%;
}
#content.work .work-gallery .work-slider .card-outer{
	transform: scale(.8);
    margin: 0;
}
#content.work .work-gallery .work-slider .card-outer.slick-center{
	transform: scale(.8);
}
.work .work-subpage .inner-title-area {
    width: 340px;
}
#content.work .work-subpage {
    padding: 60px 0 10px;
}
#content.work .work-slider .dots-class {
    bottom: 10px;
}
#content.work .work-slider .slick-track {
    padding: 0;
    gap: 0px;
}
#content.work .slick-next {
  right: 44%;
}
#content.work .slick-prev {
  left: 44.5%;
}
#content.work .slick-prev::before {
  left: 0;
}
#content.work.slick-prev::after {
  left: 0;
  transform: rotate(-135deg);
}
#content.work .slick-next::after {
  right: 0;
  transform: rotate(45deg);
}
#content.work .slick-arrow {
  bottom: 18px;
}
#content.work .slick-next::after,
#content.work .slick-prev::after {
  width: 1vw;
  height: 1vw;
  border-top: 3px solid var(--white);
  border-right: 3px solid var(--white);
  z-index: 999;
}
#heading-top .title-img {
    background-color: var(--white);
    height: 340px;
}
#heading-top .title-img.large {
    height: 260px;
}
#benefits {
    position: relative;
    width: 1240px;
    margin: 0 auto;
    padding: 10px 0 160px;
}
#benefits .benefits-intro{
    position: absolute;
    top: 90px;
    left: 160px;
    width: 370px;
}
#benefits .benefits-head-area {
    margin: 20px auto 60px;
    width: 1100px;
    border-radius: 15px;
    background-color: var(--white);
}
#benefits .benefits-head-area .benefits-outer {
    background: 
    url( "../../_assets/img/about/line-center.png" ) top -6.9px center / 4px repeat-y,
    url( "../../_assets/img/about/line-bottom.png" ) top 30.95% left / 130% repeat-x,
    url( "../../_assets/img/about/line-bottom.png" ) top 66.89% left / 130% repeat-x;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
}
#benefits .benefits-head-area .benefits-inner {
    display: flex;
    align-items: center;
    padding: 0 0 60px 0;
    width: 490px;
    justify-content: space-between;
}
#benefits .benefits-head-area .benefits-inner.long {
    width: 1100px;
    justify-content: end;
    padding: 40px 0 80px;
}
#benefits .benefits-head-area .benefits-inner-illust {
    width: 200px;
    padding: 0 20px 0 0;
}
#benefits .benefits-head-area .benefits-inner-illust.small {
    width: 180px;
    margin: 0 auto;
}
#benefits .benefits-head-area .benefits-inner-text {
    width: 270px;
    font-size: 15px;
}
#benefits .benefits-head-area .benefits-inner-text p{
    font-size: 15px;
    line-height: 1.8;
}
#benefits .benefits-inner-text .benefits-lead {
    text-align: center;
}
#benefits .benefits-inner-text .benefits-lead img{
    height: 40px;
    width: 260px;
    object-fit: contain;
    margin-bottom: 20px;
}
#benefits .benefits-inner-text .benefits-lead.large img{
    height: 61px;
    width: 270px;
}
#benefits .benefits-foot-area {
    justify-content: center;
    width: 1150px;
    margin: 0 auto;
}
#benefits .benefits-foot-area .benefits-other{
    background: 
    url( "../../_assets/img/about/bg-benefits-other.webp" ) top -10px left -40px / 190% no-repeat;
    text-align: center;
    width: 190px;
    border-radius: 15px 0 0 15px;
    padding: 30px 0;
    border: 1px solid var(--navy);
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}
#benefits .benefits-foot-area .benefits-other img{
    width: 130px;
}
#benefits .benefits-foot-area .benefits-other-txt{
    width: 900px;
    padding: 30px 20px;
    border-radius: 0 15px 15px 0;
    border: 1px solid var(--navy);
    border-left: none;
    box-sizing: border-box;
}
#benefits .benefits-foot-area .benefits-other-txt p{
    line-height: 1.8;
}
#benefits .benefits-foot-area .benefits-other-txt span{
    display: inline-block;
    background-color: #fdfad1;
    font-weight: bold;
}
#office {
    width: 1240px;
    margin: 0 auto 140px;
    padding: 100px 0 10px;
    position: relative;
}
#office .office-intro{
    width: 450px;
    margin-bottom: 30px;
}
#office .office-text{
    font-weight: bold;
}
#office .office-about{
    position: absolute;
    top: 140px;
    right: 80px;
    width: 310px;
}
#office .office-area {
    margin: 0 auto 60px;
    width: 1100px;
    border-radius: 15px;
    background-color: var(--white);
}
#office .office-map-outer {
    margin-top: 80px;
}
#office .office-map-outer .office-map{
    width: 100%;
    position: relative;
}
#office .office-map-outer ul li img{
    width: 60px;
}
#office .office-map-outer ul .point01{
    position: absolute;
    top: 360px;
    left: 230px;
}
#office .office-map-outer ul .point02{
    position: absolute;
    top: 280px;
    left: 190px;
}
#office .office-map-outer ul .point03{
    position: absolute;
    bottom: 270px;
    right: 160px;
}
#office .office-map-outer ul .point04{
    position: absolute;
    top: 80px;
    left: 440px;
}
#office .office-map-outer ul .point05{
    position: absolute;
    top: 60px;
    left: 350px;
}
#office .office-map-outer ul .point06{
    position: absolute;
    top: 110px;
    left: 295px;
}
#office .office-map-outer ul .point07{
    position: absolute;
    top: 100px;
    left: 210px;
}
#office .office-map-outer ul .point08{
    position: absolute;
    top: 40px;
    left: 110px;
}
#office .office-map-outer ul .point09{
    position: absolute;
    top: 130px;
    left: 80px;
}
#office .office-detail {
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
}
#office .office-detail ul{
    width: 460px;
    padding-top: 70px;
}
#office .office-detail ul li{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
#office .office-detail ul li .detail-no{ 
    width: 65px;
    margin: 0 10px 15px 0;
}
#office .office-detail ul li .detail-title img{ 
    width: auto;
    height: 40px;
    object-fit: contain;
}
#office .office-detail ul li p{ 
    width: 100%;
    font-size: 15px;
    padding-bottom: 15px;
}
#office .office-detail ul li .detail-title-img{ 
    width: 100%;
}
#office .office-detail ul li .detail-title-img.small{ 
    width: 328px;
}

/* DATA */

.data .subpage-wrapper {
    width: 1240px;
    margin: 0 auto;
    padding: 0 0 150px;
    position: relative;
}
.data .grid-container {
    position: relative;
    display: grid;
    width: 1100px;
    margin: 0 auto;
    grid-template-columns: 1fr 1fr;
    background-color: var(--white);
}
.data .grid-container .data-title img {
    width: auto;
    height: 50px;
    margin-bottom: 20px;
    object-fit: contain;
} 
.data .grid-container .data-title.large img {
    height: 90px;
} 
.data .grid-container p {
    line-height: 1.8;
    font-size: 15px;
} 
.data .grid-container p.p-small {
    line-height: 1.6;
    font-size: 12px;
    padding-top: 15px;
} 
.data .grid-container .data-inner {
    padding: 50px 50px;
}
.data .heading-text {
    grid-column: 1;
    display: flex;
    align-items: center;
    font-weight: bold;
    text-align: center;
    justify-content: center;
}
.data .heading-text p {
    font-size: var(--large-font-size);
}
.data .grid-container .data01{
    grid-column: 1/ 3 ;
    position: relative;
}
.data .grid-container .data01 p.p-small{
    position: absolute;
    top: 52px;
    left: 230px;
}
.data .grid-container .data02{
    grid-column: 1;
}
.data .grid-container .data03{
    grid-column: 2;
}
.data .grid-container .data04{
    grid-column: 1 / 3;
    position: relative;
}
.data .grid-container .data04 p.p-small{
    position: absolute;
    bottom: 50px;
    right: 230px;
}
.data .grid-container .data05{
    grid-column: 1;
    position: relative;
}
.data .grid-container .data05 p.p-small{
    position: absolute;
    right: 190px;
    top: 50px;
}
.data .grid-container .data06{
    grid-column: 2;
}
.data .grid-container .data07{
    grid-column: 1;
}
.data .grid-container .data08{
    grid-column: 2;
}
.data .grid-container .data07,
.data .grid-container .data08 {
    border-bottom: none;
}
.data .grid-container .data-illust {
    margin: 0 auto;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 0 40px;
    justify-content: center;
}
.data .grid-container .data-illust img{
    padding: 10px 0;
}
.data .data01 .data-illust img:first-child {
    width: 460px;
}
.data .data01 .data-illust img:last-child {
    width: auto;
    height: 130px;
    padding-left: 20px;
}
.data .data02 .data-illust{
    width: 360px;
}
.data .data03 .data-illust{
    width: 340px;
}
.data .data04 .data-illust{
    width: 1000px;
    flex-wrap: wrap;
    justify-content: center;
}
.data .data04 .data-illust img{
    width: 460px;
}
.data .data05 .data-illust{
    width: 100%;
}
.data .data06 .data-illust{
    width: 430px;
}
.data .data07 .data-illust{
    width: 440px;
}
.data .data08 .data-illust{
    width: 340px;
}

/* INTERVIEW */
#heading-top .message .title img {
    width: 430px;
}
.message .subpage-wrapper {
    padding: 120px 0 140px;
}
.message .message-outer {
    width: 900px;
    margin: 0 auto;
}
.message .message-detail .message-lead{
    font-size: 20px;
    font-weight: bold;
    margin: 90px 0 50px;
    border-bottom: 1px solid #333;
    padding-bottom: 10px;
    letter-spacing: 0.05em;
}
.message .message-detail .message-text-area .message-text{
    margin: 0 0 40px 0;
}
.message .message-text-area .message-text p:first-child{
    display: inline-block;
    background-color: #e5e89d;
    font-weight: bold;
}
.message .message-text-area .message-text p:last-child{
    padding-top: 10px;
    line-height: 1.8;
}


@media screen and (min-width: 1680px) {
    .header-area{
        padding: 10px 15%;
        width: 70%;
    }
    #content .top-portfolio .flex-container {
        width: 1500px;
    }
    #content .top-portfolio .inner-img {
       width: 70%;
       margin: 0 0 60px 100px;
    }
    #content .top-portfolio .inner-img-credit{
        right: 1vw;
        bottom: -5vw;
        width: 10vw;
    }
    #content .top-interview .inner-img {
        width: 100%;
        margin-left: 0;
    }
    #content .top-interview .grid-container {
        width: 1500px;
    }
    #content .grid-container .link-btn {
        margin: 0 0 180px;
    }
    .portfolio .subpage-content .flex-container.portfolio {
        justify-content: center;
    }
    .footer-area {
        width: 70vw;
    }
    #content.work .slick-next {
        right: 45%;
    }
    #content.work .slick-prev {
        left: 45.4%;
    }
    #content.work .slick-next::after,
    #content.work .slick-prev::after {
        width: 20px;
        height: 20px;
    }
}
@media screen and (max-width: 1440px) {
    .slick-next {
        right: 43%;
    }
    .slick-prev {
        left: 43%;
    }
    #content.work .slick-next {
        right: 40%;
    }
      #content.work .slick-prev {
        left: 41%;
    }
}

@media screen and (max-width: 1279px) {
    h1 {
        width: 11.5vw;
    }
    .header-area ul > li > a{
        padding: 1vw 1vw;
    }
    .header-area .nav-list > p {
        padding: 1vw 1vw;
    }
    .header-area nav > ul {
        font-size: 1.3vw;
    }
    .header-area .nav-list ul {
        top: 4vw;
    }
    .header-area .nav-yellow .nav-list-btn {
        padding: 0.5vw 4vw;
    }
    .header-area .nav-work .nav-list-btn p,
    .header-area .nav-data .nav-list-btn p {
        padding: 0.5vw 1.5vw;
    }
    .header-area .nav-yellow .nav-list-btn.is-open {
        width: 12vw;
    }
    .header-area .nav-yellow ul {
        top: 3.1vw;
    }
    .link-btn{
        width: 12vw;
        margin-left: 1vw;
    }
    .footer-entry .inner-title-area .link-btn {
        width: 40vw;
    }
    .footer-outer {
        background: linear-gradient(rgba(91, 154, 212, 0.5), rgba(91, 154, 212, 0.5)), url( "../../_assets/img/common/bg-gradation.webp" ) top 0 right / cover no-repeat;
    }
    .footer-area {
        width: 95vw;
        padding: 4vw 0 4vw; 
    }
    .header-area .nav-yellow ul li{
        width: 12vw;
    }
    .footer-inner {
        margin-bottom: 4vw;
        flex-wrap: wrap;
    }
    .footer-inner.top ul > li {
        margin: 0 0 0 5vw;
        font-size: 1.3vw;
    }
    .footer-inner.top > ul {
        justify-content: space-between;
    }
    .footer-inner.bottom {
        margin-bottom: 5vw;
        font-size: 1.2vw;
    }
    .footer-inner .sns img{
        height: 2vw;
        margin-left: 3vw;
    }
    .slick-next {
        right: 40%;
      }
    .slick-prev {
        left: 40%;
    }
    .work .subpage-wrapper {
        width: 100vw;
    }
    .work .subpage-wrapper .position-area-detail {
        width: 90vw;
    }
    .work .subpage-wrapper .position-area-top {
        padding: 4vw 2vw;
        margin: 0 4vw;
    }

    .work .subpage-wrapper .position-area-top.blue {
        padding: 9vw 2vw 4vw;
    }
    .work .position-area-detail .detail-staff-name {
        width: 20vw;
    }
    .work .position-area-detail .detail-staff-name.small img {
        height: 15vw;
    }
    .work .position-area-detail .detail-staff-name img {
        height: 20vw;
    }
    .work .subpage-wrapper .position-area-top .top-box-number img {
        height: 9vw;
        margin-bottom: 3vw;
    }
    .work .position-area-detail .detail-staff-img,
    .work .subpage-wrapper .position-area-top .top-box-illust {
        width: 40vw;
    }
    .work .subpage-wrapper .position-area-top.blue .top-box-illust {
        width: 40vw;
    }
    .work .subpage-wrapper .position-area-top.blue .top-box-text {
        width: 40vw;
        padding-right: 3vw;
    }
    .work .position-area-detail .detail-staff-img > img {
        width: 40vw;
    }
    .work .position-area-detail .detail-staff-comment {
        width: 40vw;
        margin: -12vw 0 0 0;
    }
    .work .position-area-detail .detail-staff-comment.mg-large {
        margin: -5vw 0 0 0;
    }
    .work .position-area-detail .detail-staff-schedule {
        width: 40vw;
    }
    .work .position-area-top.blue .work-card-sub img {
        width: 18vw;
    }
    #content .top-portfolio .flex-container,
    .portfolio .timeline-detail{
        width: 90vw;
    }
    .portfolio .timeline-column .photo img,
    .portfolio .timeline-column.right-side .photo img {
        width: 40vw;
    }
    #content .top-about .flex-container {
        width: 90vw;
    }
    #content .top-about .title img{
        width: auto;
        height: 6vw;
        object-fit: contain;
    }
    #content .top-interview .grid-container {
        width: 96vw;
        overflow: hidden;
    }
    #content .grid-container .inner-img {
        margin-left: 4vw;
        width: 570px;
    }
    #content .top-interview .grid-container .inner-img img{
        object-fit: contain;
        object-position: -6vw;
    }
    #content .grid-container .title img {
        width: 40vw;
    }
    .footer-entry .inner-title-area {
        width: 90vw;
    }
    #benefits,
    #office {
        width: 90vw;
    }
    #benefits .benefits-head-area .benefits-outer {
        background: none;
        background: 
        url( "../../_assets/img/about/line-bottom.png" ) top 28.5% left / 130% repeat-x,
        url( "../../_assets/img/about/line-bottom.png" ) top 62.5% left / 130% repeat-x;
        gap: 20px;
    }
    #benefits .benefits-head-area {
        width: 90vw;
    }
    #benefits .benefits-foot-area {
        width: 90vw;
    }
    #benefits .benefits-intro{
        width: 30vw;
        top: 3vw;
        left: 4vw;
    }
    #benefits .benefits-foot-area .benefits-other{
        background: url( "../../_assets/img/about/bg-benefits-other.webp" ) top 0 left 0 / cover no-repeat;    
    }
    #benefits .benefits-head-area .benefits-inner {
        width: 40vw;
    }
    #benefits .benefits-head-area .benefits-inner-text {
        width: 30vw;
    }
    #office .office-area,
    #office .office-detail {
        width: 90vw;
    }
    #office {
        padding: 0 0 2vw;
    }
    #office .office-text {
        width: 55vw;
    }
    #office .office-intro{
        width: 32vw;
        margin: 0 auto 0 0;
        margin-bottom: 3vw;
    }
    #office .office-about {
        top: 10vw;
        right: 0;
        width: 25vw;
    }
    #office .office-map-outer ul li img{
        width: 5vw;
    }
    #office .office-detail ul {
        width: 40vw;
    }
    #office .office-map-outer ul .point01{
        position: absolute;
        top: 30vw;
        left: 20vw;
    }
    #office .office-map-outer ul .point02{
        position: absolute;
        top: 23vw;
        left: 15vw;
    }
    #office .office-map-outer ul .point03{
        position: absolute;
        bottom: 22vw;
        right: 12vw;
    }
    #office .office-map-outer ul .point04{
        position: absolute;
        top: 6vw;
        left: 36vw;
    }
    #office .office-map-outer ul .point05{
        position: absolute;
        top: 5vw;
        left: 29vw;
    }
    #office .office-map-outer ul .point06{
        position: absolute;
        top: 9vw;
        left: 24vw;
    }
    #office .office-map-outer ul .point07{
        position: absolute;
        top: 8vw;
        left: 17vw;
    }
    #office .office-map-outer ul .point08{
        position: absolute;
        top: 5vw;
        left: 8vw;
    }
    #office .office-map-outer ul .point09{
        position: absolute;
        top: 11vw;
        left: 5vw;
    }
    .data .subpage-wrapper,.data .grid-container {
        width: 90vw;
    }
    .data .grid-container .data-inner {
        padding: 4vw 2vw;
    }
    .data .grid-container .data-illust {
        padding: 2vw 0 3vw;
    }
    .data .grid-container .data-illust img{
        max-width: 80%;
        padding: 0 0 1vw;
    }
    .data .data01 .data-illust img:last-child {
        height: 11vw;
    }
    .data .data04 .data-illust {
        width: 90vw;
    }
    #heading-top .heading-wrapper .heading-bg .white {
        width: 35vw;
    }
    #heading-top .heading-text p {
        width: 90vw;
    }
    #heading-top .heading-bg .title img {
        width: 25vw;
        margin-bottom: 2vw;
    }
    
}
@media screen and (max-width: 768px) {

    .sp-none {
        display: none;
    }
    .pc-none {
        display: block;
    }
    span.sp-none {
        display: none;
    }
    :root {
        --base-font-size: 3.4vw;
        --small-font-size: 3.2vw;
        --large-font-size: 3.6vw;
    }
    .flex-container {
        flex-wrap: wrap;
        justify-content: space-between;
    }
    p {
        line-height: 1.6;
    }
    h1 {
        width: 25vw;
    }
    .link-btn{
        width: 32vw;
        margin-left: 0;
    }
    .triangle-arrow::after {
        right: 4vw;
    }
    .triangle-bottom {
        font-size: var(--base-font-size);
    }
    .triangle-bottom::after {
        border-width: 1.8vw 1.8vw 0 1.8vw;
        right: 2.5vw;
    }
    .triangle-right {
        position: relative;
    }
    .triangle-right::after {
        content: '';
        display: inline-block;
        border-style: solid;
        border-width: 8px 0 8px 8px;
        border-color: transparent transparent transparent var(--white);
        display: inline-block;
        width: 0;
        height: 0;
        position: absolute;
        top: 50%;
        left: -15px;
        transform: translateY(-50%);
    }
    .triangle-right.under::after {
        top: 0%;
        transform: translateY(20%);
    }
    .header-area .triangle-right::after {
        left: 1vw;
    }
    .header-area .triangle-right::after{
        display: block;
    }

    
/* header */
    .header-area{
        padding: 3vw 2vw;
        background: linear-gradient(rgba(91, 154, 212, 0.5), rgba(91, 154, 212, 0.5)),url( "../../_assets/img/common/bg-gradation.webp" ) top right / cover no-repeat;
    }
    .header-area .nav {
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        height: 100%;
        background-color: rgba(91, 154, 212, 1);
        box-sizing: border-box;
        z-index: 1;
        padding-top: 20vw;
        transition: .3s;
    }
    .header-area nav > ul {
        font-size: var(--base-font-size);
    }
    .header-area .nav.open {
        right: 0;
    }
    .header-area .nav ul {
        text-align: left;
    }
    .header-area .nav ul > li {
        width: 86%;
        margin: 0 auto;
        display: block;
    }
    .header-area ul > li > a{
        padding: 4vw 4vw 4vw 5vw;
    }
    .header-area ul > li .link-btn a {
        padding: 3vw 0;
    }
    .header-area .nav-yellow a,
    .header-area .nav-sp a{ 
        color: var(--navy);
        padding: 0;
        display: block;
    }
    .header-area .nav .link-btn.nav-yellow{
        display: none;
    }
    .header-area .nav ul .nav-sp {
        display: block;
        border: none;
        margin-top: 4vw;
    }
    .header-area .nav ul .nav-sp ul li{
        width: 42vw;
        margin: 0;
        border: none;
    }
    .header-area .hamburger {
        display: block;
    }
    .header-area .sp-entry {
        display: block;
        position: relative;
    }
    .header-area .sp-entry ul {
        display: none;
    }
    .header-area .sp-entry .link-btn {
        padding: 2.5vw 0;
        margin-right: 15vw;
        font-weight: bold;
        color: var(--navy);
    }
    .header-area .sp-entry .link-btn.open {
        border-radius: 0;
        background-color: var(--white);
        border: 1px solid var(--white);
    }
    .header-area .sp-entry ul {
        position: absolute;
        right: 15vw;
        top: 8.9vw;
        width: 32vw;
    }
    .header-area .sp-entry ul a{
        background-color: rgba(0, 64, 125, 1);
        color: var(--white)!important;
        font-size: var(--small-font-size);
        padding: 3vw 0;
        text-align: center;
    }
    .header-area .open.triangle-bottom::after {
        transform: rotate(180deg);
        top: 35%;
    }
    .header-area .nav ul > li.nav-list{
        margin-bottom: 2vw;
    }
    .header-area .nav-list > p {
        padding: 4vw 0 1vw 0;
    }
    .header-area .nav-list ul {
        display: block;
        background-color: transparent;
        padding: 0;
        position: static;
        width: 100%;
        margin: 0 auto;
        text-align: left;
        transform: none;
    }
    .header-area .nav-list.nav-data ul {
        width: auto;
    }
    .header-area .nav-list ul a{
        padding: 2vw 0 2vw 4vw;
        color: var(--white);
     }
     .header-area .nav-list ul li {
         width: 100%;
         border: none;
         padding-left: 1vw;
     }
     .header-area .nav-list .triangle-right::after {
         left: 0;
         border-color: transparent transparent transparent var(--white);
     }
     .header-area .nav-list .triangle-right.under::after {
         transform: translateY(72%);
     }
     .header-area .nav-list ul::after{
         display: none;
     }
     .header-area .nav-work .nav-list-btn p,
     .header-area .nav-data .nav-list-btn p {
        padding: 3vw 0 1vw;
     }
     .header-area .nav-list.nav-data ul li {
        width: 100%;
     }
     .header-area .nav-list-btn {
        pointer-events: none;
     }

/* Main */
    #index-top {
        width: 100%;
        min-height: 100vh;
        max-height: 100vh;
    }
    #index-top .kv-gallery ul li.kv-02 > img {
        width: auto;
        object-fit: cover;
        min-height: 100vh;
        max-height: 100vh;
    }
    #index-top .kv-gallery ul li.kv-01 img{
        width: 48vw;
    }
    #index-top .kv-gallery ul li.kv-02 .kv-inner-lead{
        position: absolute;
        top: 25vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 86vw;
    }
    #index-top .kv-gallery ul li.kv-02 .kv-values{
        position: absolute;
        top: 66vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 85vw;
        padding: 6vw 0 7vw 3vw;
        border-radius: 2vw;
    }
    #index-top .kv-gallery ul li.kv-02 .kv-values img{
        width: 82vw;
    }


/* contents */
    .inner-title-area{
        width: 90.67vw;
        text-align: center;
        margin: 0 auto;
    }
    .inner-title-area .title img{
        height: 17vw;
    }
    .inner-title-area .title-ja{
        padding: 3vw 0 5vw;
    }
    .inner-title-area .title-ja::after{
        content:'';
        border-bottom: 2px solid #000;
        width: 8vw;
        height: 8vw;
        margin: 0 auto;
    }
    .inner-title-area .title-ja.center {
        text-align: center;
    }
    .inner-title-area .title-ja.center::after {
        margin: 0 auto;
    }
    #content .content-wrapper:first-child,
    #content .content-wrapper:last-child{
        padding: 24vw 0;
    }
    #content .content-wrapper {
        padding: 24vw 0 0;
    }
    #content .link-btn {
        width: 50vw;
        margin: 8vw auto;
    }
    #content .link-btn.center {
        width: 50vw;
        margin: 8vw auto 0;
    }
    #content .link-btn.center + .link-btn.center{
        margin: 10px auto 0;
    }
    #content .link-btn a{
        padding: 4vw 0;
    }
    #content .top-portfolio .flex-container,
    #content .top-interview .flex-container{
        width: 100%;
    }
    #content .top-portfolio .inner-img{
        width: 100%;
        margin: 0 0 10vw 0;
    }
    #content .top-portfolio .inner-img-credit{
        right: 3vw;
        bottom: -17vw;
        width: 40vw;
    }
    #content .top-work {
        padding: 22vw 0 12vw;
    }
    #content .work-gallery .work-slider .card-outer {
        width: 60vw;
        margin: 2vw 3vw;
    }
    #content .work-gallery .work-slider .card-outer.slick-center{
        width: 60vw;
        margin: 0;
        transform: scale(1.1);
    }
    #content .work-gallery .work-slider .card-outer .work-card-lead img{
        width: auto;
        height: 4.2vw;
        margin: 12vw auto 3vw;
    }
    #content .work-gallery .work-slider .card-outer .work-card-name img{
        width: 50vw;
    }
    #content .work-gallery .work-slider .card-outer .work-card-illust img{
        width: 95%;
        margin: 1vw auto 1vw;
        height: 42.67vw;
        object-fit: contain;
    }
    #content .work-gallery .work-slider .card-outer .work-card-number{
        position: absolute;
        top: -16vw;
        right: -25vw;
        width: 86vw;
    }
    #content .work-gallery .work-slider .card-outer.pink .work-card-number{
        position: absolute;
        top: -10vw;
        right: 6vw;
        width: 19vw;
    }
    #content .work-slider .work-card-btn p{
        padding: 2vw 0;
    }
    #content .work-gallery .slick-track{
        padding: 17vw 0 8vw;
        gap: 11vw;
    }
    #content .work-gallery .slick-dots li {
        width: 2vw;
    }
    #content .work-gallery .dots-class {
        margin-top: 4vw;
        bottom: -1vw;
    }
    #content .work-gallery .dots-class li {
        width: 3vw;
        height: 3vw;
        margin: 0 1vw;
    }
    .slick-next {
        right: 32%;
      }
    .slick-prev {
        left: 32%;
    }
    .slick-prev::after {
        left: 0;
        transform: rotate(-135deg);
    }
    .slick-next::after {
        right: 0;
        transform: rotate(45deg);
    }
    .slick-next::after,
    .slick-prev::after {
        width: 4vw;
        height: 4vw;
        border-top: 3px solid var(--white);
        border-right: 3px solid var(--white);
        z-index: 999;
    }
    .slick-arrow {
        bottom: 0.5vw;
    }
    #content .top-about .flex-container{
        width: 81.33vw;
    }
    #content .top-about .inner-box:first-child {
        width: 81.33vw;
        padding-right: 0;
        background-image: linear-gradient(to left, #000 1vw, transparent 1vw);
        background-repeat: repeat-x;
        background-position: left bottom;
        padding-bottom: 20vw;
        background-size: 3vw 1vw;
    }
    #content .top-about .inner-box:last-child {
        width: 81.33vw;
        padding-top: 18vw;
        padding-left: 0;
    }
    #content .top-about .title img{
        height: 16vw;
    }
    #content .top-about .description,
    #content .top-interview .description {
        text-align: left;
    }
    #content .top-about .link-btn > a > span {
        font-size: 2.8vw;
    }
    #content .top-interview .inner-title-area {
        width: 100vw;
        display: flex;
        flex-wrap: wrap;
    }
    #content .top-interview .grid-container {
        grid-template-columns: 1fr;
        width: 100vw;
        margin: 0 auto;
        justify-content: center;
    }
    #content .grid-container .title {
        grid-column: 1;
    }
    #content .grid-container .title img{
        width: 80vw;
        margin-bottom: 3vw;
    }
    #content .top-interview .inner-img {
        width: auto;
        margin: 0;
    }
    #content .grid-container .title-ja {
        grid-column: 1;
        padding: 0;
    }
    #content .grid-container .inner-img {
        grid-column: 1;
        grid-row: auto;
        padding: 0;
        margin: 7vw 0;
    }
    #content .top-interview .grid-container .inner-img img{
        object-position: 0;
    }
    #content .grid-container .description {
        grid-column: 1;
        width: 84vw;
        margin-bottom: 6vw;
    }
    #content .grid-container .link-btn {
        grid-column: 1;
        margin: 0 0 100px;
    }

/* Footer */
    .footer-entry {
        background: 
        linear-gradient(rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.6)),
        url( "../../_assets/img/common/footer-entry-bg.webp" ) center center cover no-repeat;
    }
    .footer-entry .inner-title-area {
        width: 81.33vw;
        padding: 12vw 0;
    }
    .footer-entry .inner-title-area .title img{
        height: 7vw;
    }
    .footer-entry .inner-title-area .description{
        width: 81.33vw;
        text-align: left;
        margin-bottom: 2vw;
    }
    .footer-entry .inner-title-area .link-btn{
        width: 81.33vw;
        margin: 3vw auto 0;
    }
    .footer-entry .inner-title-area .link-btn a{
        padding: 4.5vw 0;
    }
    .footer-outer {
        background: 
        linear-gradient(rgba(91, 154, 212, 0.5), rgba(91, 154, 212, 0.5)),
        url( "../../_assets/img/common/bg-gradation.webp" ) top right / cover no-repeat;
    }
    footer h1 {
        width: 25vw;
        margin: 0 auto 10vw;
    }
    .footer-area {
        width: 90.67vw;
        padding: 5vw 0 5vw; 
    }
    .footer-inner {
        margin-bottom: 6vw;
    }
    .footer-inner.top > ul {
        margin: 8vw auto 0;
        width: 100vw;
    }
    .footer-inner.top ul > li {
        margin: 0 0 6vw 4vw;
        width: 82.67vw;
        font-size: var(--base-font-size);
    }
    .footer-inner.top ul .footer-list {
        margin: 0 0 6vw 0;
    }
    .footer-inner.top ul li ul li {
        margin: 0 4vw;
        padding-bottom: 1.5vw;
    }
    .footer-inner.top ul li ul li:first-child {
        padding: 3vw 0 1.5vw;
    }
    .footer-inner .link li{
        margin: 0 8vw 4vw 0;
    }
    .footer-inner .link a::before {
        content: '';
        background: url( "../../_assets/img/common/icon-arrow.svg") no-repeat;
        width: 2vw;
        height: 3vw;
        position: absolute;
        top: 1vw;
        right: -3vw;
    }
    .footer-inner.bottom {
        margin-bottom: 10vw;
        font-size: var(--small-font-size);
    }
    .footer-inner .sns img{
        width: auto;
        height: 4vw;
        object-fit: contain;
        margin: 0 3vw 0 0;
    }
    .footer-area small {
        display: block;
        text-align: center;
        font-family: var(--font-family-sans-serif);
        font-weight: normal;
        font-size: 80%;
    }


/* 下層ページ　SP */

    #heading-top {
        padding: 74vw 0 0 0;
    }
    #heading-top .heading-wrapper .heading-bg .white{
        padding: 10vw 0 0 8vw;
        width: 82vw;
        margin: 40vw auto 0;
        position: absolute;
        top: 5vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }
    #heading-top .heading-bg .title img{
        width: 58vw;
        margin-bottom: 5vw;
        height: 13vw;
    }
    #heading-top .heading-bg .title-ja::after{
        width: 10vw;
        height: 8vw;
    }
    #heading-top .heading-bg .title-ja.after-none::after{
        border: none;
    }
    #heading-top .heading-text{
        padding: 18vw 0 0;
        width: 100vw;
        margin: 0 auto;
    }
    #heading-top .heading-text p {
        width: 75vw;
        padding: 0;
    }
    .subpage-wrapper {
        padding: 20vw 0 0;
    }

/* PORTFOLIO */
    .portfolio .subpage-content .portfolio-main-img {
        width: 90vw;
    }
    .portfolio .subpage-content .portfolio-main-img::after {
        right: -6vw;
        bottom: -6vw;
    }
    .portfolio .subpage-content .portfolio-main-timeline {
        width: 60.67vw;
        margin: 15vw auto;
    }
    .portfolio .timeline-detail {
        width: 81.33vw;
        margin-bottom: 30vw;
    } 
    .portfolio .timeline-column {
        margin: 0 0 15vw;
        justify-content: space-between;
    }
    .portfolio .timeline-column + .timeline-column {
        margin: 0 0 15vw;
    }
    .portfolio .timeline-column .data {
        width: 36.67vw;
        padding: 8vw 14vw 12vw 8vw;
        margin: 0 auto 0 0;
    }
    .portfolio .timeline-column .data img{
        height: 34vw;
    }
    .portfolio .timeline-column .data.d2022 img{
        height: 32vw;
    }
    .portfolio .timeline-column .photo img{
        width: 70vw;
        margin: -5vw 0 0 11vw;
    }
    .portfolio .timeline-column.right-side {
        text-align: right;
        margin: 0 0 15vw;
    }
    .portfolio .timeline-column.right-side .data {
        padding: 8vw 14vw 12vw 8vw;
    }
    .portfolio .timeline-column.right-side .data img{
        width: auto;
        height: 34vw;
        object-fit: contain;
    }
    .portfolio .timeline-column.right-side .data.d2022 img{
        height: 30vw;
    }
    .portfolio .timeline-column.right-side .photo img{
        width: 70vw;
        margin: -5vw 0 0 11vw;
    }
    .portfolio .timeline-column.right-side .data {
        order: 1;
    }
    .portfolio .timeline-column.right-side .photo{
        order: 2;
    }
    .work .subpage-wrapper {
        width: 90.67vw;
        padding: 15vw 0 0;
    }
    .work .subpage-wrapper:nth-child(2) {
        padding: 20vw 0 20vw;
    }
    .work .subpage-wrapper .position-area-top {
        padding: 10vw 5vw;
        border-radius: 3vw;
    }
    .work .subpage-wrapper .position-area-top.blue {
        padding: 15vw 5vw 4vw;
    }
    .work .position-area-top.pink {
        border: 0.8vw solid #d36691;
    }
    .work .position-area-top.purple {
        border: 0.8vw solid #ab5c99;
    }
    .work .position-area-top.green {
        border: 0.8vw solid #3c98b3;
    }
    .work .position-area-top.orange {
        border: 0.8vw solid #e56957;
    }
    .work .position-area-top.blue {
        border: 0.8vw solid #1a4270;
    }
    .work .position-area-top.blue .work-card-sub img{
        width: 30vw;
    }
    .work .subpage-wrapper .position-area-top .top-box-text{
        width: 74vw;
        padding-right: 0;
    }
    .work .subpage-wrapper .position-area-top .top-box-number img{
        width: auto;
        height: 18vw;
        margin-bottom: 5vw;
    }
    .work .subpage-wrapper .position-area-top .top-box-illust{
        width: 74vw;
        margin-top: 6vw;
    }
    .work .subpage-wrapper .position-area-top .producer-memo {
        border: 0.5vw solid rgba(25, 66, 113, .6);
        padding: 3vw;
        font-size: 3vw;
        margin-top: 5vw;
    }
    .work .subpage-wrapper .position-area-top.blue .top-box-illust {
        width: 74vw;
    }
    .work .subpage-wrapper .position-area-top.blue .top-box-text{
        width: 74vw;
        padding: 0;
    }
    .work .subpage-wrapper .position-area-detail{
        width: 80vw;
    }
    .work .position-area-detail .detail-staff-name{
        width: 64vw;
        margin-bottom: 3vw;
        order: 1;
    }
    .work .position-area-detail .detail-staff-name img{
        margin-bottom: 3vw;
        height: 36vw;
    }
    .work .position-area-detail .detail-staff-name.small img {
        height: 30vw;
    }
    .work .position-area-detail .detail-staff-comment {
        width: 80vw;
        order: 3;
        margin: 4vw 0 4vw 0;
    }
    .work .position-area-detail .detail-staff-comment.mg-large {    
        margin: 5vw 0 0 0;
    }
    .work .position-area-detail .detail-staff-comment .comment-box{
        padding-top: 8vw;
    }
    .work .position-area-detail .detail-staff-comment .comment-lead {
        padding-bottom: 2vw;
        font-size: 3.8vw;
    }
    .work .comment-box > p + p {
        font-size: 3.4vw; 
    }
    .work .position-area-detail .detail-staff-picture{
        width: 510px;
    }
    .work .position-area-detail .detail-staff-img{
        width: 80vw;
        order: 2;
    }
    .work .position-area-detail .detail-staff-img img{ 
        width: 80vw;
    }
    .work .position-area-detail .detail-staff-schedule{
        width: 60vw;
        order: 4;
        margin: 0 auto;
    }
    .work .position-area-detail .detail-staff-schedule img{
        width: 60vw;
        margin: 10vw auto 0;
        height: 78vw;
    }
    .work .top-work {
        width: 100%;
    }
    #content.work .work-gallery > ul li {
        transform: scale(.9);
    }
    #content.work .work-gallery > ul li.slick-center{
        transform: scale(.9);
    }
    .work .work-subpage .inner-title-area {
        width: 80vw;
    }
    .work .work-subpage .inner-title-area img{
        height: 13vw;
    }
    #content .work-gallery .work-slider .blue .work-card-sub img{
        width: 21vw;
    }
    #content.work .work-subpage {
        padding: 10vw 0 3vw;
    }
    #content.work .work-gallery .dots-class {
        margin-top: -5vw;
        bottom: 2vw;
    }
    #content.work .work-gallery .slick-track {
        padding-top: 0;
    }
    #content.work .slick-next {
      right: 31vw;
    }
    #content.work .slick-prev {
      left: 31vw;
    }
    #content.work .slick-prev::before {
      left: 0;
    }
    #content.work .slick-arrow {
        bottom: 4%;
    }
    #content.work .slick-next::after,
    #content.work .slick-prev::after {
      width: 3vw;
      height: 3vw;
      border-top: 3px solid var(--white);
      border-right: 3px solid var(--white);
      z-index: 999;
    }    
    
    /* SP-environment */
    #heading-top .title-img.large {
        height: 0;
    }
    #benefits {
        width: 100vw;
        padding: 10vw 0 0;
    }
    #benefits .benefits-intro{
        position: absolute;
        width: 60vw;
        top: 72vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }
    #benefits .benefits-head-area {
        margin: 50vw auto 0;
        width: 86vw;
        padding: 10vw 0 0;
    }
    #benefits .benefits-head-area .benefits-outer {
        background: none;
        gap: 0;
    }
    #benefits .benefits-head-area .benefits-inner {
        padding: 0 0 22vw 0;
        width: 86vw;
        flex-wrap: wrap;
        background: 
        url( "../../_assets/img/about/line-bottom.png" ) bottom 10vw left / 322vw repeat-x;
    }
    #benefits .benefits-head-area .benefits-inner:last-child {
        background: none;
    }   
    #benefits .benefits-head-area .benefits-inner.long {
        width: 86vw;
        padding: 40vw 0 20vw;
    }
    #benefits .benefits-head-area .benefits-inner-illust {
        width: 50vw;
        padding: 0 0 5vw 0;
        margin: 0 auto;
    }
    #benefits .benefits-head-area .benefits-inner-illust.small {
        width: 40vw;
        margin: 0 auto;
    }
    #benefits .benefits-head-area .benefits-inner-text {
        width: 86vw;
        font-size: 3.4vw;
        margin: 0 auto;
    }
    #benefits .benefits-head-area .benefits-inner-text p{
        font-size: 3.4vw;
    }
    #benefits .benefits-inner-text .benefits-lead img{
        height: 7.5vw;
        margin-bottom: 3vw;
    }
    #benefits .benefits-inner-text .benefits-lead.large img{
        height: 12vw;
        width: auto;
    }
    #benefits .benefits-foot-area {
        width: 86vw;
    }
    #benefits .benefits-foot-area .benefits-other{
        background: url( "../../_assets/img/about/bg-benefits-other.webp" ) top -3vw left -3vw/ 110% no-repeat;
        width: 86vw;
        border-radius: 2vw 2vw 0 0;
        padding: 4vw 0;
    }
    #benefits .benefits-foot-area .benefits-other img{
        width: 23vw;
    }
    #benefits .benefits-foot-area .benefits-other-txt{
        border-radius: 0 0 2vw 2vw;
        width: 86vw;
        padding: 5vw 4vw 4vw;
        border: 1px solid var(--navy);
        border-top: none;
    }
    #office {
        margin: 12vw auto 10vw;
        width: 100vw;
        padding: 10vw 0 15vw;
    }
    #office .office-intro{
        width: 71vw;
        margin: 0 auto;
        margin-bottom: 7vw;
    }
    #office .office-text {
        width: 90vw;
    }
    #office .office-about{
        position: absolute;
        top: 88vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 60vw;
        z-index: 10;
    }
    #office .office-area {
        margin: 0 auto 5vw;
        border-radius: 4vw;
        width: 86vw;
        padding-top: 10vw;
    }
    #office .office-map-outer {
        margin: 0;
    }
    #office .office-map-outer .office-map{
        width: 100%;
        padding-top: 70vw;
    }
    #office .office-detail {
        width: 86vw;
        margin: 0 auto 5vw;
    }
    #office .office-detail ul{
        width: 100%;
        padding-top: 12vw;
    }
    #office .office-detail ul li .detail-no{ 
        width: 11vw;
        margin: 0 3vw 3vw 0;
    }
    #office .office-detail ul li .detail-title img{ 
        height: 8vw;
    }
    #office .office-detail ul li p{ 
        width: 100%;
        font-size: 3.4vw;
        padding-bottom: 3vw;
    }
    #office .office-detail ul li .detail-title-img.small{ 
        width: 100%;
    }

    /* DATA */
    .data .subpage-content {
        padding: 38vw 0 20vw;
    }
    .data .subpage-wrapper {
        width: 100%;
        padding: 20vw 0;
    }
    .data .data-intro {
        top: 0;
        left: 50%;
        width: 60vw;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }
    .data .grid-container {
        grid-template-columns: 86vw;
        width: 86vw;
    }
    .data .grid-container .data-title img {
        height: 10vw;
        margin-bottom: 2vw;
    } 
    .data .grid-container .data-title.large img {
        height: 16vw;
    } 
    .data .grid-container p {
        font-size: 3.4vw;
        padding: 7vw 0 0;
    } 
    .data .grid-container p.p-small {
        font-size: 3vw;
        padding-top: 3vw;
    } 
    .data .grid-container .data-inner {
        padding: 15vw 3vw 0;
    }
    .data .grid-container .data01 .data-inner {
        padding: 0 3vw 0;
    }
    .data .grid-container .data01{
        grid-column: 1 / 2;
        grid-row: 1 / 2; 
        position: relative;
    }
    .data .grid-container .data01 p.p-small{
        position: absolute;
        top: 9vw;
        right: auto;
        left: 2vw;
    }
    .data .grid-container .data02{
        grid-column: 1 / 2;
        grid-row: 2 / 3;
    }
    .data .grid-container .data03{
        grid-column: 1 / 2;
        grid-row: 3 / 4;
    }
    .data .grid-container .data04{
        grid-column: 1 / 2;
        grid-row: 4 / 5;
        position: relative;
    }
    .data .grid-container .data04 p.p-small{
        position: absolute;
        bottom: -3vw;
        right: auto;
        left: 3vw;
    }
    .data .grid-container .data05{
        grid-column: 1 / 2;
        grid-row: 5 / 6;
        position: relative;
    }
    .data .grid-container .data05 p.p-small{
        position: absolute;
        right: 18vw;
        top: 15vw;
    }
    .data .grid-container .data06{
        grid-column: 1 / 2;
        grid-row: 6 / 7;
    }
    .data .grid-container .data07{
        grid-column: 1 / 2;
        grid-row: 7 / 8;
    }
    .data .grid-container .data08{
        grid-column: 1 / 2;
        grid-row: 8 / 9;
    }
    .data .grid-container .data08 {
        border-bottom: none;
    }
    .data .grid-container .data-illust {
        margin: 0 auto;
        padding: 8vw 0 0;
        text-align: center;
        justify-content: center;
    }
    .data .grid-container .data-illust img {
        padding: 0 0 3vw;
        max-width: 100%;
    }
    .data .data01 .data-illust img:first-child {
        width: 66vw;
        margin: 0 auto;
    }
    .data .data01 .data-illust img:last-child {
        width: 70vw;
        height: auto;
        padding: 4vw 0 0 0;
        margin: 0 auto;
    }
    .data .data02 .data-illust{
        width: 60vw;
    }
    .data .data03 .data-illust{
        width: 60vw;
    }
    .data .data04 .data-illust{
        width: 60vw;
    }
    .data .data04 .data-illust img{
        width: 60vw;
        margin: 0 0 2vw;
    }
    .data .data05 .data-illust{
        width: 100%;
    }
    .data .data06 .data-illust{
        width: 60vw;
    }
    .data .data07 .data-illust{
        width: 100%;
    }
    .data .data08 .data-illust{
        width: 60vw;
    }
    /* SP- INTERVIEW */
    .message .subpage-wrapper {
        padding: 20vw 0 20vw;
    }
    .message .message-outer {
        width: 84vw;
    }
    .message .message-detail .message-lead{
        font-size: 3.8vw;
        margin: 14vw 0 10vw;
        padding-bottom: 3vw;
    }
    .message .message-detail .message-text-area .message-text{
        margin: 0 0 40px 0;
    }
    .message .message-text-area .message-text p:first-child{
        display: inline;
        padding: 1vw 0;
    }
    .message .message-text-area .message-text p:last-child{
        padding-top: 10px;
        line-height: 1.8;
    }


}


