@charset "UTF-8";

/*-----------------------------------------------
  トップページ

-- 01 ムービー
-- 02 スクロールダウン
-- 03 スクロールでヘッダーの色変え
-- 04 コンセプト
-- 05 ニュース
-- 06 共通
-- 07 新中村化学工業について
-- 08 製品について
-- 09 事業内容について
-- 10 採用について

------------------------------------------------*/

/*------------------------------------------------
  01 ムービー
------------------------------------------------*/
.movie-area-wrap {
    position: relative;
}
#video {
    display: flex;
}
.movie-area-wrap .copy span {
    color: #EAEFF1;
    width: 100%;
    font-family: "Anton", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17vw;
    text-transform: uppercase;
    line-height: 1.25;
    z-index: 5;
    position: absolute;
    left: 0;
    bottom: 0;
    mix-blend-mode: overlay;
  }
  .section.next .copy span {
    display: block;
  }

@media print, screen and (max-width: 900px) {
    #video {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }
}

@media print, screen and (min-width: 901px) {
    .movie-guidance {
        text-align: center;
        margin: 1em 0;
    }
    .movie-area-wrap {
        position: relative;
        height: calc(100vh - var(--header-pc-height));
    }
    .movie-area-inner {
        position: fixed;
        z-index: -1;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        overflow: hidden;
    }
    #video {
        /*天地中央配置*/
        position: absolute;
        z-index: -1;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        /*縦横幅指定*/
        width: 177.77777778vh;
        height: 56.25vw;
        aspect-ratio: 16 / 9;
        min-height: 100%;
        min-width: 100%;
    }
}

@media print, screen and (min-width: 1401px) {
    .movie-area-wrap {
        height: calc(100vh - var(--header-pc-height));
    }
}

/*------------------------------------------------
  02 スクロールダウン
------------------------------------------------*/
.scrolldown-link {
    display: block;
    z-index: 50;
}
.scrolldown {
    z-index: 50;
}

@media print, screen and (max-width: 900px) {
    .scrolldown-link {
        display: none;
    }
}

@media print, screen and (min-width: 901px) {
    .scrolldown {
        position: absolute;
        bottom: 10px;
        /*left: 50%;*/
        right: 5%;
    }
    .scrolldown span {
        /*描画位置*/
        position: absolute;
        left: 10px;
        bottom: 10px;
        /*テキストの形状*/
        color: #fff;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        /*縦書き設定*/
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
    }
    .scrolldown:before {
        content: "";
        /*描画位置*/
        position: absolute;
        bottom: 0;
        left: -4px;
        /*丸の形状*/
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background:#fff;
        /*丸の動き1.6秒かけて透過し、永遠にループ*/
        animation:
        circlemove 1.6s ease-in-out infinite,
        cirlemovehide 1.6s ease-out infinite;
    }
    /*下からの距離が変化して丸の全体が上から下に動く*/
    @keyframes circlemove {
         0% {bottom: 5em;}
       100% {bottom: -5px;}
    }
    /*上から下にかけて丸が透過→不透明→透過する*/
    @keyframes cirlemovehide {
         0% {opacity: 0}
        50% {opacity: 1;}
        80% {opacity: 0.9;}
       100% {opacity: 0;}
    }
    /* 線の描写 */
    .scrolldown:after {
        content: "";
        /*描画位置*/
        position: absolute;
        bottom: 0;
        left: 0;
        /*線の形状*/
        width: 2px;
        height: 5.25em;
        background: #fff;
    }
}

/*------------------------------------------------
  03 スクロールでヘッダーの色変更
------------------------------------------------*/
@media print, screen and (min-width: 901px) {
    /* 動画と重なるときは背景透明＋ロゴ白 */
    .header_inner {
        background-color: rgba(255,255,255,0);
        box-shadow: none;
        border-top: 4px solid rgba(255,255,255,0);
    }
    .header-logo {
        filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(42deg) brightness(100%) contrast(105%) drop-shadow(0 0 3px rgba(0, 0, 0, 0.9));
    }
    .menu-btn span:nth-of-type(1), 
    .menu-btn span:nth-of-type(2), 
    .menu-btn span:nth-of-type(3) {
        background: #fff;
    }
    input[type="text"], 
    input[type="submit"] {
        border: none;
    }
    .navi-block-list::before {
        color: #fff;
    }
    .material-icons {
        color: #fff;
    }
	.navi-block-item:nth-child(2), 
	.navi-block-item:nth-child(3) {
        border-right: 2px dotted #fff;
    }
    .navi-block-item .lang-change {
        color: #fff;
    }
	.navi-block-item .lang-change.current {
		color: #fff;
	}
    .header-nav__item a {
        color: #fff;
        text-shadow: 0 0 5px #000;
    }
    .header-nav__item.item-contact a, 
    .header-nav__item > ul li a {
        text-shadow: none;
    }
    .header-nav__list li.header-nav__item .touch-btn, 
	.header-nav__list li.header-nav__item .touch-btn::after {
        background-color: #fff;
    }
    .header-nav-child__list li.header-nav__item .touch-btn {
        background-color: rgb(255, 255, 255, 0)!important;
    }
    .open-search-block {
        background: url('../../images/common/icon_search_w.svg') no-repeat center;
    }
	.open-search-block.btnactive {
		background:url('../../images/common/icon_close_w.svg') no-repeat center;
	}
    #search-wrap, 
    #search-wrap.panelactive .close-btn {
        background-color: rgb(255, 255, 255, .7);
    }
    #search-wrap.panelactive .close-btn:hover {
        opacity: 1;
    }
    .navi-block-icon img {
        filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(42deg) brightness(100%) contrast(105%);
    }

    /* 動画を過ぎたら通常に戻す */
    header[data-js-scroll="true"] {
        .header_inner {
            background-color: #fff;
            box-shadow: 20px 20px 40px rgba(var(--primary-color-rgb), 0.1);
            border-top: 4px solid var(--primary-color);
        }
        .header-logo {
            filter: none;
        }
        .menu-btn span:nth-of-type(1), 
        .menu-btn span:nth-of-type(2), 
        .menu-btn span:nth-of-type(3) {
            background: var(--primary-color);
        }
        input[type="text"] {
            border-top: 2px solid var(--primary-color);
            border-left: 2px solid var(--primary-color);
            border-bottom: 2px solid var(--primary-color);
        }
        input[type="submit"] {
            border-top: 2px solid var(--primary-color);
            border-right: 2px solid var(--primary-color);
            border-bottom: 2px solid var(--primary-color);
        }
        .navi-block-list::before {
            color: var(--primary-color);
        }
        .material-icons {
            color: var(--primary-color);
        }
        .navi-block-item:nth-child(2), 
        .navi-block-item:nth-child(3) {
            border-right: 2px dotted var(--primary-color);
        }
        .navi-block-item .lang-change {
            color: #d1dbe8;
        }
        .navi-block-item .lang-change.current {
            color: var(--primary-color);
        }
        .navi-block-icon, 
        .navi-block-item {
            text-shadow: none;
        }
        .navi-block-icon img {
            filter: none;
        }
        .header-nav__item a {
            color: #333;
            text-shadow: none;
        }
        .header-nav__item ul li a {
            color: #fff;
        }
        .header-nav__item.item-contact a {
            color: #fff;
        }
        .header-nav__list li.header-nav__item .touch-btn, 
        .header-nav__list li.header-nav__item .touch-btn::after {
            background-color: #bbb;
        }
        .open-search-block {
            background: url('../../images/common/icon_search.svg') no-repeat center;
        }
        .open-search-block.btnactive {
            background:url('../../images/common/icon_close.svg') no-repeat center;
        }
        #search-wrap, 
        #search-wrap.panelactive .close-btn {
            background-color: var(--primary-color);
        }
        #search-wrap.panelactive .close-btn:hover {
            opacity: .8;
        }
    }
}

/*------------------------------------------------
　04 コンセプト
------------------------------------------------*/
.section.next {
    background-image: url('../../images/top/next_bg.jpg');
    background-size: cover;
    background-position: center bottom;
    position: relative;
    padding-bottom: 50px;
}
.section.next .logo-line {
    width: 100%;
    mix-blend-mode: darken;
    z-index: 3;
    opacity: .8;
    position: absolute;
    left: 0;
    top: -40vw;
}
.logo-line img {
    width: 100%;
    height: auto;
}
.section.next .copy {
    color: #EAEFF1;
    width: 100%;
    font-family: "Anton", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17vw;
    text-transform: uppercase;
    line-height: 1.25;
    position: relative;
}
.section.next .copy span {
    display: block;
}
.section-container {
    height: 100%;
}
.section.next .section-container {
    padding-bottom: 100px;
}
.top-text-block {
    color: #fff;
    position: relative;
    z-index: 4;
}
.top-text-detail {
    /*margin-bottom: 30px;*/
    font-size: 1.4rem;
}
.top-text-company > span {
    display: block;
}
.top-text-company-catch {
    font-weight: 900;
    font-size: 1.6rem;
}
.top-text-company-name {
    font-weight: 300;
    font-size: 3.4rem;
    line-height: 1.5em;
}
.container {
    background-color: #fff;
}

@media print, screen and (max-width: 900px) {
    .top-text-company {
        text-align: left;
    }
}

@media print, screen and (min-width: 390px) {
    .top-text-company-catch {
        font-size: 1.8rem;
    }
    .top-text-company-name {
        font-size: 3.8rem;
    }
}

@media print, screen and (min-width: 414px) {
    .top-text-company-catch {
        font-size: 2rem;
    }
    .top-text-company-name {
        font-size: 4.2rem;
    }
}

@media print, screen and (min-width: 768px) {
    .top-text-company-catch {
        font-size: 3.2rem;
    }
    .top-text-company-name {
        font-size: 6.8rem;
    }
    .top-text-detail {
        font-size: 1.6rem;
    }
}

@media print, screen and (min-width: 901px) {
    .section.next {
        padding-bottom: 100px;
    }
    .top-text-block {
        text-align: right;
    }
    .top-text-company-catch {
        font-size: 3.4rem;
    }
    .top-text-company-name {
        font-size: 7.2rem;
    }
}

@media print, screen and (min-width: 1201px) {
    .section.next {
        padding-bottom: 150px;
    }
    .top-text-company-catch {
        font-size: 3.6rem;
    }
    .top-text-company-name {
        font-size: 7.6rem;
    }
}

/* 菱形途中で消す場合 */
.appear {
	animation:show 10s both;
}
@keyframes show {
    0% {
        opacity: 0;
      }
      5% {
        opacity: 0.8;
      }
      80% {
        opacity: 0.8;
      }
      100% {
        opacity: 0;
      }
}

/*------------------------------------------------
　05 ニュース
------------------------------------------------*/
.news-block.bg-color-white {
    margin-top: -80px;
}
.section-container.news-block-inner {
    position: relative;
    z-index: 2;
}
.section-container-inner.protrude-left {
    padding: 30px 20px;
}
.news-item {
    padding: 1em 0;
    border-bottom: 1px solid #E6E6E6;
}
.news-item:last-child {
    border-bottom: none;
}
.news-date {
    font-family: "Poppins", sans-serif;
	font-weight: 500;
	font-style: normal;
    font-size: 1.2rem;
    color: #8F9CA3;
}
.news-cate {
    font-weight: 500;
    font-size: 1.2rem;
    color: var(--primary-color);
    margin-left: 2em;
    text-transform: uppercase;
}
.news-item-title a {
    display: block;
    position: relative;
    padding-right: calc(20px + 1em);
}
.news-item-title a::before, 
.news-item-title a::after {
    content: '';
    position: absolute;
}
.news-item-title a::before {
    width: 20px;
    height: 20px;
    background-color: #F7F5F3;
    border-radius: 50%;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.news-item-title a::after {
    width: 8px;
    height: 8px;
    border-top: 3px solid var(--primary-color);
    border-right: 3px solid var(--primary-color);
    top: 50%;
    right: 10px;
    transform: rotate(45deg) translateY(-50%);
}
.news-readmore {
    text-align: right;
    margin-top: 30px;
}
.news-readmore a {
    display: block;
    font-weight: 700;
    color: var(--primary-color);
}

@media print, screen and (max-width: 767px) {
    .section-container.news-block-inner {
        background-color: #fff;
        padding-bottom: 0;
    }
}

@media print, screen and (min-width: 768px) {
    .section-container-inner.protrude-left {
        background-color: #fff;
        padding: 40px;
        margin-left: calc(50% - 50vw);
        padding-left: calc(50vw - 50% + 40px);
    }
}

@media print, screen and (min-width: 901px) {
    .section-container-inner.protrude-left {
        padding: 60px;
        padding-left: calc(50vw - 50% + 60px);
    }
    .news-block .section-container-inner.protrude-left {
        display: flex;
        flex-wrap: wrap;
    }
    .news-block-heading {
        width: 20%;
        max-width: 180px;
    }
    .news-block-body {
        width: 80%;
        min-width: calc(100% - 180px);
    }
    .news-date, 
    .news-cate {
        font-size: 1.4rem;
    }
    .news-item:hover {
        opacity: .8;
        cursor: pointer;
    }
    .news-readmore {
        width: 100%;
        margin-top: 50px;
    }
    .news-readmore a {
        display: inline-block;
    }
}

@media print, screen and (min-width: 1201px) {
    .news-block.bg-color-white {
        margin-top: -150px;
    }
    .section-container-inner.protrude-left {
        padding: 50px 80px 80px;
        padding-left: calc(50vw - 50% + 80px);
    }
}

/*------------------------------------------------
　06 共通
------------------------------------------------*/

.top-heading {
    font-family: "Anton", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 15vw;
    text-transform: uppercase;
    line-height: 0.89;
    position: relative;
}

/*------------------------------------------------
　07 新中村化学工業について
------------------------------------------------*/
.aboutus-block {
    overflow: hidden;
    position: relative;
    padding-bottom: 60px;
}
.bg-rhombus-top {
    position: absolute;
    width: 600px;
    bottom: 10%;
    left: -40%;
}
.bg-rhombus-top img {
    width: 100%;
    height: auto;
}
.aboutus-block-inner {
    position: relative;
}
.aboutus-image-block {
    width: calc(100% - 20px);
    margin: auto;
    margin-top: calc(15vw / 2 - 5vw);
}
.aboutus-image-block p {
    margin-right: calc(50% - 50vw);
}
.aboutus-image-block img {
    width: 100%;
    height: auto;
}
.aboutus-block-inner .top-heading.heading-grade {
    display: inline-block;
    background: linear-gradient(to bottom,  rgba(0,42,99,1) 0%,rgba(54,168,217,.5) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: absolute;
    top: -0.45em;
    left: 0;
}
.aboutus-explanation-block {
    margin: auto;
}
.aboutus-explanation-block-inner {
    background-color: #fff;
    margin: auto;
    padding: 20px 20px 0;
}
.aboutus-explanation-block-item {
    position: relative;
    z-index: 1;
}
.top-subheading {
    font-weight: 900;
    color: var(--primary-color);
    margin-bottom: 20px;
    font-size: 2.4rem;
}
.aboutus-catch {
    font-size: 1.8rem;
    font-weight: 900;
    color: var(--primary-color);
    margin-bottom: 0.5em;
}
.aboutus-detail {
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--primary-color);
}
.common-link-btn {
    margin-top: 20px;
}

@media print, screen and (max-width: 767px) {
    .aboutus-block {
        padding-top: 40px;
    }
}

@media print, screen and (min-width: 768px) {
    .aboutus-block {
        padding-bottom: 90px;
    }
    .aboutus-block-inner .top-heading.heading-grade {
        top: -0.44em;
    }
    .aboutus-image-block {
        width: calc(100% - 40px);
        margin-top: calc(15vw / 2 - 1vw);
    }
    .aboutus-explanation-block {
        width: calc(100% - 40px);
        max-width: var(--layout-inner-width);
        margin-top: -100px;
    }
    .aboutus-explanation-block-inner {
        width: calc(100% - 40px);
        padding: 50px 50px 0;
        margin-left: calc(50% - 50vw);
        padding-left: calc(50vw - 50%);
    }
    .aboutus-explanation-block-inner.protrude-left {
        box-shadow: 20px -20px 40px rgba(var(--primary-color-rgb), 0.1);
    }
    .top-subheading {
        font-size: 3rem;
        margin-bottom: 30px;
    }
    .aboutus-catch {
        font-size: 2em;
    }
    .common-link-btn {
        margin-top: 30px;
    }
    .bg-rhombus-top {
        width: 1600px;
        bottom: -20%;
        left: -40%;
    }
}

@media print, screen and (min-width: 901px) {
    .aboutus-block {
        padding-bottom: 120px;
    }
    .aboutus-explanation-block {
        margin-top: -150px;
        display: flex;
    }
    .blank-block {
        width: calc(50% - 80px);
    }
    .aboutus-explanation-block-inner {
        min-width: calc(var(--layout-outer-width) - 45%);
        padding-top: 60px;
        padding-right: 70px;
    }
    .aboutus-block .top-subheading, 
    .aboutus-block .aboutus-catch, 
    .aboutus-block .aboutus-detail, 
    .aboutus-block .common-link-btn.only_pc {
        margin-left: 20px;
    }
    .aboutus-detail {
        font-size: 1.6rem;
    }
    .bg-rhombus-top {
        left: -25%;
    }
    .aboutus-image-block {
        width: var(--layout-inner-width);
    }
}

@media print, screen and (min-width: 1001px) {
    .aboutus-explanation-block {
        margin-top: -200px;
    }
}

@media print, screen and (min-width: 1201px) {
    .aboutus-block {
        padding-bottom: 150px;
    }
    .aboutus-explanation-block {
        margin-top: -250px;
    }
    .aboutus-explanation-block-inner {
        padding-top: 90px;
        padding-right: 80px;
    }
    .top-subheading {
        font-size: 4rem;
        margin-bottom: 40px;
    }
    .aboutus-catch {
        font-size: 2.8rem;
    }
    .common-link-btn {
        margin-top: 40px;
    }
}

@media print, screen and (min-width: 1281px) {
    .aboutus-explanation-block-inner {
        padding-left: calc(50vw - 50%);
    }
}

@media print, screen and (min-width: 1401px) {
    .aboutus-block {
        padding-bottom: 170px;
    }
    .bg-rhombus-top {
        width: 1800px;
    }
    .aboutus-explanation-block .common-link-btn {
        margin-left: -20px;
    }
}

/*------------------------------------------------
　08 製品について
------------------------------------------------*/
.products-block {
    background-image: url('../../images/top/products_block_bg01.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: -20%;
    margin-bottom: -20%;
}
.products-block .top-heading.heading-white {
    color: #fff;
    text-align: right;

}
.products-block-image-wrap {
    display: flex;
    justify-content: space-between;
    margin-top: -30px;
}
.products-block-image {
    height: 40vw;
    max-height: 712px;
}
.products-block-image-inner {
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    height: 100%;
    background-image: url('../../images/top/products_block_bg02.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.products-explanation-block-inner {
    /*background: linear-gradient(to bottom,  #fff 0%,#fff 90%,#ddd 100%);*/
    background-color: #fff;
    box-shadow: 10px 10px 20px rgb(0, 0, 0, .1);
    margin: auto;
    margin-bottom: 30px;
    position: relative;
    z-index: 2;
    padding: 30px;
}
.scontents-block {
    padding: 0;
    position: relative;
}
.scontents-block-inner {
    max-width: var(--layout-outer-width);
    height: auto;
    margin: auto;
    background-color: #36a8d9;
}
.scontents-block-item {
    width: 40%;
    margin: auto;
    z-index: 2;
    position: absolute;
    right: 0;
    top: -25%;
}
.scontents-block-item img {
    width: 100%;
    height: auto;
}
.scontents-block-detail {
    height: 100%;
    padding: 30px;
}
.scontents-bubble {
    font-size: 1.4rem;
    line-height: 1.5em;
    font-weight: 900;
    color: #091F43;
    background-color: #fff;
    padding: 0.75em 2em;
    display: inline-block;
    border-radius: 100px;
    position: relative;
    z-index: 2;
    margin-bottom: 2em;
}
.scontents-bubble::after {
    content: '';
    position: absolute;
    bottom: -17px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    height: calc(tan(60deg) * 20px / 2);
    width: 20px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.scontents-text {
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff;
    position: relative;
    z-index: 2;
}
.scontents-heading {
    margin-top: 1em;
}
.scontents-heading a {
    margin-top: 1em;
    position: relative;
    display: block;
}
.scontents-heading span {
    display: block;
}
.scontents-heading span:nth-child(1) {
    font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
    font-size: 1.8rem;
    text-transform: uppercase;
    color: #ff0;
}
.scontents-heading span:nth-child(2) {
    font-size: 2rem;
    font-weight: 900;
    color: #fff;
    line-height: 1.5em;
}
.scontents-heading a::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
    background-color: #ff0;
    border-radius: 50%;
}
.scontents-heading a::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
	height: 40px;
    background-image: url('../../images/common/arrow-blue.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px auto;
}
.adjust-block {
    background-color: #fff;
    padding: 10% 0;
}

@media print, screen and (max-width: 900px) {
    .products-block-image:nth-child(1) {
        width: 70%;
    }
    .products-block-image:nth-child(2) {
        width: 30%;
    }
}

@media print, screen and (max-width: 767px) {
    .products-block-image-wrap {
        margin-top: -52px;
    }
    .scontents-block {
        margin-top: -20px;
    }
    .scontents-block-inner {
        width: calc(100% - 40px);
        border-bottom-left-radius: 30px;
        border-bottom-right-radius: 30px;
    }
    .scontents-block-item {
        right: 20px;
    }
}

@media print, screen and (min-width: 390px) {
    .scontents-block-item {
        top: -30%;
    }
}

@media print, screen and (min-width: 420px) {
    .scontents-block-item {
        top: -40%;
    }
    .scontents-bubble {
        font-size: 1.6rem;
    }
}

@media print, screen and (min-width: 600px) {
    .scontents-block-item {
        top: -50%;
    }
}

@media print, screen and (min-width: 700px) {
    .scontents-block-item {
        top: -60%;
    }
}

@media print, screen and (min-width: 768px) {
    .products-block {
        overflow: hidden;
    }
    .scontents-block-inner {
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        display: flex;
    }
    .scontents-block-detail {
        width: 65%;
    }
    .scontents-block-image {
        width: 35%;
    }
    .scontents-block-image-inner {
        height: 100%;
        margin-right: calc((50vw - 100%) * -1);
        background-color: #36a8d9;
        align-items: stretch;
    }
    .scontents-block-item {
        top: -140px;
        width: 40%;
        max-width: 645px;
    }
    .products-block .top-heading.heading-white {
        margin-top: -3px;
    }
    .scontents-bubble::after {
        bottom: -22px;
        height: calc(tan(60deg) * 26px / 2);
        width: 26px;
    }
}

@media print, screen and (min-width: 901px) {
    .products-block {
        padding-bottom: -10%;
        margin-bottom: -10%;
    }
    .adjust-block {
        padding: 5% 0;
    }
    .products-block-image-wrap {
        margin-top: -45px;
    }
    .products-block-image {
        width: 50%;
    }
    .products-explanation-block-inner {
        width: calc(100% - 40px);
        max-width: 840px;
        margin-top: -230px;
        margin-left: auto;
        margin-right: 0;
        padding: 80px 60px;
    }
    .scontents-block-detail {
        width: 63%;
        padding: 60px 0 60px 60px;
    }
    .scontents-block-image {
        width: 37%;
    }
    .scontents-bubble {
        font-size: 2.4rem;
    }
    .scontents-text {
        font-size: 2rem;
        width: 85%;
    }
    .scontents-heading {
        margin-top: 2em;
    }
    .scontents-heading span:nth-child(1) {
        font-size: 2.4rem;
    }
    .scontents-heading span:nth-child(2) {
        font-size: 4rem;
    }
    .scontents-heading a::before, 
    .scontents-heading a::after {
        width: 50px;
        height: 50px;
    }
}

@media print, screen and (min-width: 1161px) {
    .scontents-block-detail {
        width: 56%;
    }
    .scontents-block-image {
        width: 44%;
    }
}

@media print, screen and (min-width: 1201px) {
    .products-block {
        padding-bottom: -16%;
        margin-bottom: -16%;
    }
    .adjust-block {
        padding: 8% 0;
    }
    .products-block-image-wrap {
        margin-top: -60px;
    }
    .products-explanation-block-inner {
        margin-top: -325px;
    }
    .scontents-block-item {
        top: -130px;
    }
    .scontents-block-detail {
        padding: 80px 0 80px 80px;
    }
    .scontents-heading a::before, 
    .scontents-heading a::after {
        width: 60px;
        height: 60px;
    }
}

@media print, screen and (min-width: 1321px) {
    .scontents-block-inner {
        height: 530px;
    }
}

@media print, screen and (min-width: 1401px) {
    .products-block {
        padding-bottom: -14%;
        margin-bottom: -14%;
    }
    .adjust-block {
        padding: 7% 0;
    }
    .scontents-block-item {
        top: -150px;
    }
    .scontents-heading {
        margin-top: 3em;
    }
}

@media print, screen and (min-width: 1401px) {
    .scontents-block-item {
        top: -170px;
    }
}

/*------------------------------------------------
　09 事業内容について
------------------------------------------------*/
.business-block {
    background-image: url('../../images/top/business-block-bg.png');
    background-repeat: no-repeat;
    background-position: left top;
}
.business-block-inner {
    padding-bottom: 60px;
}
.section-container {
    padding-top: 0;
}
.top-heading.heading-blue {
    color: var(--quaternary-color);
    text-align: center;
}
.business-block .top-subheading {
    text-align: center;
    margin-top: 1em;
}
.business-block .aboutus-catch, 
.business-block .aboutus-detail {
    margin: auto;
    text-align: left;
}
.business-block .aboutus-catch {
    max-width: 670px;
}
.business-block .aboutus-detail {
    max-width: 430px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.business-block .common-link-btn a {
    margin: auto;
}
.business-link-block {
    margin-top: 1em;
}
.business-link-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}
.business-link-item {
    width: calc(50% - 10px);
}
.business-link-item a {
    width: 150px;
    height: 150px;
    display: block;
    margin: auto;
    position: relative;
    border: 10px solid #fff;
    background-color: var(--quaternary-color);
    border-radius: 50%;
}
.business-link-item a::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    border: 3px solid #b9e1f2;
    border-radius: 50%;
}
.item-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 100%;
}
.item-inner span {
    display: block;
    text-align: center;
}
.business-link-item-ja {
	font-weight: 900;
	font-style: normal;
    font-size: 1.4rem;
    text-transform: uppercase;
    color: #fff;
}
.business-link-item-en {
    font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
    font-size: 1.4rem;
    text-transform: uppercase;
    color: #9bd4ec;
}
.business-link-block {
    order: 1;
}
.common-link-btn-sp.only_sp {
    width: 100%;
    order: 2;
}

@media print, screen and (max-width: 767px) {
    .business-block-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media print, screen and (min-width: 390px) {
    .business-link-item a {
        width: 180px;
        height: 180px;
        border: 16px solid #fff;
    }
    .business-link-item a::after {
        width: calc(100% + 16px);
        height: calc(100% + 16px);
    }
}

@media print, screen and (min-width: 420px) {
    .business-link-item a {
        width: 200px;
        height: 200px;
        border: 18px solid #fff;
    }
    .business-link-item a::after {
        width: calc(100% + 18px);
        height: calc(100% + 18px);
    }
}

@media print, screen and (min-width: 768px) {
    .business-block-inner {
        padding-bottom: 100px;
    }
    .top-heading.heading-blue {
        margin-top: -3px;
    }
    .business-link-item a {
        width: 250px;
        height: 250px;
        border: 20px solid #fff;
    }
    .business-link-item a::after {
        width: calc(100% + 20px);
        height: calc(100% + 20px);
    }
    .business-link-item-ja {
        font-size: 1.8rem;
    }
    .business-link-item-en {
        font-size: 2rem;
    }
}

@media print, screen and (min-width: 901px) {
    .business-block-inner {
        padding-bottom: 120px;
    }
    .business-block .aboutus-detail {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .business-link-item {
        width: calc(25% - 30px);
    }
    .business-link-item a {
        width: 200px;
        height: 200px;
        border: 20px solid #fff;
    }
    .business-link-item:nth-of-type(2), 
    .business-link-item:nth-of-type(3) {
        margin-top: 20px;
    }
    .business-block .aboutus-catch {
        text-align: center;
    }
}

@media print, screen and (min-width: 1001px) {
    .business-block-inner {
        padding-bottom: 140px;
    }
    .business-link-item a {
        width: 220px;
        height: 220px;
    }
}

@media print, screen and (min-width: 1101px) {
    .business-link-item a {
        width: 230px;
        height: 230px;
    }
}

@media print, screen and (min-width: 1201px) {
    .business-block-inner {
        padding-bottom: 160px;
    }
    .business-link-item a {
        width: 240px;
        height: 240px;
    }
    .business-link-item-ja {
        font-size: 2rem;
    }
    .business-link-item-en {
        font-size: 2.2rem;
    }
    .business-link-item:nth-of-type(2), 
    .business-link-item:nth-of-type(3) {
        margin-top: 30px;
    }
}

@media print, screen and (min-width: 1401px) {
    .business-block-inner {
        padding-bottom: 180px;
    }
    .business-link-item a {
        width: 250px;
        height: 250px;
    }
}

@media print, screen and (min-width: 1501px) {
    .business-link-item a {
        width: 260px;
        height: 260px;
    }
    .business-link-item-ja {
        font-size: 2.2rem;
    }
    .business-link-item-en {
        font-size: 2.4rem;
    }
    .business-link-item:nth-of-type(2), 
    .business-link-item:nth-of-type(3) {
        margin-top: 40px;
    }
}

@media print, screen and (min-width: 1501px) {
    .business-block-inner {
        padding-bottom: 200px;
    }
}

/*------------------------------------------------
　10 採用について
------------------------------------------------*/
.recruit-block {
    background: linear-gradient(to bottom,  #ffffff 0%,#d1dbe8 100%);
    padding-bottom: 60px;
    overflow: hidden;
}
.recruit-block-inner {
    position: relative;
    margin: auto;
    width: calc(100% - 40px);
    max-width: var(--layout-outer-width);

}
.recruit-block .top-heading.heading-grade {
    display: inline-block;
    background: linear-gradient(to bottom,  rgba(0,42,99,1) 0%,rgba(54,168,217,.5) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.recruit-image-block {
    margin-top: -3.5%;
}
.recruit-image-block img {
    width: 100%;
    height: auto;
}
.recruit-explanation-block {
    background-color: #fff;
    margin-left: 0;
    margin-right: auto;
    width: auto;
    max-width: 740px;
    position: relative;
    z-index: 2;
    margin-top: -25%;
}

@media print, screen and (max-width: 767px) {
    .recruit-image-block {
        margin: 0 calc(50% - 50vw);
        margin-top: -2.5em;
    }
    .recruit-explanation-block-inner {
        padding: 20px 40px 60px 20px;
    }
    .recruit-explanation-block {
        margin-right: calc(50% - 50vw);
    }
    .recruit-block-inner .common-link-btn-sp.only_sp {
        margin-top: -25px;
        margin-left: 10px;
        position: relative;
        z-index: 2;
    }
}

@media print, screen and (min-width: 768px) {
    .recruit-block {
        padding-bottom: 80px;
    }
    .recruit-explanation-block-inner {
        padding: 50px 100px 50px 50px;
    }
    .recruit-image-block {
        margin-right: calc(50% - 50vw);
        margin-left: 30px;
    }
}

@media print, screen and (min-width: 901px) {
    .recruit-block {
        padding-bottom: 100px;
    }
    .recruit-block {
        padding-bottom: 160px;
    }
    .recruit-explanation-block-inner {
        padding: 60px 120px 60px 60px;
    }
    .recruit-image-block {
        margin-left: 40px;
    }
}

@media print, screen and (min-width: 1161px) {
    .recruit-image-block {
        margin-left: 60px;
    }
}

@media print, screen and (min-width: 1201px) {
    .recruit-block {
        padding-bottom: 120px;
    }
}

@media print, screen and (min-width: 1401px) {
    .recruit-block {
        padding-bottom: 140px;
    }
    .recruit-image-block {
        margin-left: 80px;
    }
    .recruit-explanation-block-inner {
        padding: 80px 150px 50px 80px;
    }
}

@media print, screen and (min-width: 1601px) {
    .recruit-block {
        padding-bottom: 160px;
    }
}
