@charset "UTF-8";

/* 目次
***************************************
01. TOP
02. Service
03. Product Service
04. Works
05. About
06. News
07. contact
08. Privacy Policy
09. 404
10. Whitepaper
11. Recruit
12. Information Security Policy
*****************************************/
/****************************************
01. TOP
*****************************************/
body.home {
    min-width: inherit;
    background-image: url(../img/home_parallax-01.png);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}

.home .wrapper {
    width: 100vw;
    height: auto;
    padding: 8vw 12vw;
    overflow: hidden;
    text-align: left;
    display: block;
    margin-bottom: 6vw;
    background-color: var(--body-bg-color);
}

.home .wrapper:last-child {
    margin-bottom: 0;
}

.home .wrapper .areaName {
    color: var(--main-color-fvOrange);
    text-align: left;
    font: 1.1vw zen-maru-gothic, sans-serif;
    font-weight: 600;
    margin-bottom: 3vh;
}

.home .wrapper.about .areaName,
.home .wrapper.about .about_body {
    max-width: 1300px;
    margin: 0 auto;
}

.home .wrapper.service .areaName,
.home .wrapper.service .section_header {
    padding: 0 12vw;
}

.home .wrapper.service .areaName {
    margin-bottom: 0;
}

.home .wrapper .areaName::after,
.home .wrapper [class*="-area"] [class*="-title"]::after {
    font-size: .7vw;
    margin: 0.3vw 0 0 .5vw;
    color: var(--sub-color-bule);
}

.home .wrapper [class*="-area"] [class*="-title"]::after {
    display: block;
    margin: 0.3vw 0 0;
    font-size: 1.2vw;
    letter-spacing: .2rem;
}

.home .wrapper.about .areaName::after {
    content: "/ 私たちについて";
}

.home .wrapper.service .areaName::after {
    content: "/ 私たちのサービス";
}

.home .wrapper.productService .areaName::after {
    content: "/ プロダクトサービス";
}

.home .wrapper .works-area .works-title::after {
    content: "/ 最新の実績";
}

.home .wrapper .news-area .news-title::after {
    content: "/ お知らせ";
}

.home [class$="_body"]:not(.service_body) {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.home footer {
    background-image: none;
    background-color: transparent !important;
}

/* TOPのファーストビュー */
/* ファーストビューの大枠 */
.wrapper_firstView {
    width: 100vw;
    margin-top: 10%;
    position: relative;
    top: -40px;
    margin-bottom: -40px;
    background-color: var(--body-bg-color);
}

.firstView_img {
    width: 100vw;
    height: 48.4vw;
    overflow: hidden;
    position: relative;
    background-color: var(--body-bg-color);
}

.firstView_img::after {
    content: "";
    background: url(../img/firstView-bg-4.png) no-repeat;
    background-size: contain;
    display: block;
    width: 20vw;
    height: 24vw;
    position: absolute;
    top: 24vw;
    left: 26vw;
}

/* TOPのファーストビューのキャッチコピー */
.catchphrase {
    padding-left: 10vw;
    position: relative;
    top: -1.5vw;
    margin-bottom: -1.2vw;
    text-align: left;
    z-index: 1;
}

.catchphrase span {
    display: block;
    overflow: hidden;
}

.catchphrase>span {
    width: 19vw;
}

.catchphrase>span+span {
    width: 50vw;
    position: relative;
    top: 1.8vw;
}

.catchphrase span img {
    width: 100%;
    height: auto;
}

.catchphrase-en {
    background: url(../img/catchphrase-en.svg) no-repeat;
    width: 19vw;
    height: 1.2vw;
    background-size: contain;
    color: transparent;
}

.catchphrase-ja {
    background: url(../img/catchphrase-ja.svg) no-repeat;
    width: 50vw;
    height: 6.4vw;
    background-size: contain;
    color: transparent;
}

/* TOPのファーストビューの背景 */
[class^="firstView-background"] {}

.firstView-background-1 {
    background: url(../img/firstView-bg-1.png) no-repeat;
    background-size: contain;
    display: block;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

}

.firstView-background-2 {
    background: url(../img/firstView-bg-2.png) no-repeat;
    background-size: contain;
    display: block;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    position: absolute;
    top: 52.7%;
    left: 50%;
    transform: translate(-50%, -50%);

}

.firstView-background-3 {
    background: url(../img/firstView-bg-3.png) no-repeat;
    background-size: contain;
    display: block;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* 最新のNews1件表示 */
.firstView-news {
    position: absolute !important;
    right: 2vw;
    bottom: 19.5%;
}

.firstView-news a {
    display: block;
    background: #48486C;
    border-radius: 0.5vh;
    width: 26vw;
    min-height: 5vw;
    padding: .8vw;
}

.firstView-newsTitle {
    display: block;
    color: #48486C;
    font-size: .9vw;
    font-weight: bold;
    margin-bottom: .2vw;
}

.firstView-newsDate {
    display: block;
    font-size: .7vw;
    font-weight: bold;
    color: #fff;
}

.firstView-newsName {
    display: inline-block;
    font-size: .9vw;
    font-weight: bold;
    color: #fff;
    margin-top: .7vw;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.firstView-news:hover a {
    background: #F46B00;
    -webkit-box-shadow: 0 0.625rem 0.625rem 0 rgb(0 0 0 / 20%);
    box-shadow: 0 0.625rem 0.625rem 0 rgb(0 0 0 / 20%);
}

.firstView-news:hover .firstView-newsTitle {
    color: #F46B00;
}

/* TOPのabout */
.home .wrapper.about {
    content: "";
    padding: 2vw 12vw 10vw;
    background-image: url('../img/scrollText-about.svg');
    background-repeat: repeat-x;
    background-size: auto 297px;
    animation: loop 40s linear infinite;
}

@keyframes loop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -2000px 0;
        /* 画像のマイナス幅 */
    }
}

.about_body {
    position: relative;
}

.about_body .inner-left {
    width: 32%;
}

.about_body .inner-right {
    width: 68%;
}

.about_body .area-text {
    margin-bottom: 4vw;
    margin-top: 14vw;
}

.area-text p,
.top_productService-description p {
    font-family: zen-maru-gothic, sans-serif;
    color: var(--sub-color-bule);
    font-weight: 500;
    font-size: 1.2vw;
    line-height: 2;
}

.home .content_img,
.home .content_img img {
    width: 100%;
}

/* TOPのService */
.home .wrapper.service {
    padding: 10vh 0;
}

.home .wrapper .normalBtn:hover {
    font-size: 1.3vw;
}

.home .wrapper.service>div {
    content: "";
    width: 100vw;
    margin-top: 6vw;
    padding: 0;
    background-image: url('../img/scrollText-service.svg');
    background-repeat: repeat-x;
    background-size: auto 297px;
    animation: loop 40s linear infinite;
}

@keyframes loop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -2000px 0;
        /* 画像のマイナス幅 */
    }
}

.top_service {
    align-items: center;
    display: flex;
    flex-direction: column;
    width: 90%;
}

.home .wrapper.service .section_leftArea {
    width: 75%;
}

.home .wrapper.service .section_leftArea p {
    font-size: 1.8vh;
    font-weight: 500;
    line-height: 2;
}

.home .service .section_header .section_rightArea {
    width: 20%;
}

.home .wrapper.service .normalBtn {
    width: 14.5vw;
    height: 6vw;
}

/* TOPのProduct Service紹介 */
.home .wrapper.productService {
    padding: 2vw 0 10vw 0;
}

.home .wrapper.productService>div {
    content: "";
    width: 100vw;
    margin-top: 6vw;
    padding: 0 12vw;
    background-image: url('../img/scrollText-ps.svg');
    background-repeat: repeat-x;
    background-size: auto 297px;
    animation: loop 40s linear infinite;
}

@keyframes loop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -2000px 0;
        /* 画像のマイナス幅 */
    }
}

/* TOPのProduct Service紹介の左側 */
.top_productService-description {
    width: 100%;
}

.home .wrapper .ps_body {
    margin-top: 6vh;
    align-items: flex-start;
    justify-content: space-between;
}

.ps_body .inner-left {
    width: 34%;
}

.ps_body .inner-right {
    width: 60%;
}

.home .wrapper.productService .normalBtn {
    width: 19.5vw;
    margin-top: 4vw;
}

.top_productService-description h3 {
    background: url(../img/top_ps-title-text.svg) no-repeat;
    background-size: contain;
    width: 100%;
    height: 0;
    margin-bottom: 3vw;
    overflow: hidden;
    padding-top: 9vw;
}

.top_productService-button a {
    background-color: #333130;
    border-radius: 100vh;
    color: #F8F8F8;
    font-size: 1.8rem;
    padding: 2.3rem 5rem;
}

/* TOPのProduct Service紹介の右側 */
.top_productService-carousel {
    width: 100%;
    height: fit-content;
    -webkit-box-shadow: 1rem 1rem 2rem rgba(0, 0, 0, 0.2);
    box-shadow: 1rem 1rem 2rem rgba(0, 0, 0, 0.2);
}

.top_productService-carousel-slider-inner {
    background-color: transparent
}

.top_productService-carousel-sliderFor {
    padding: 0;
    position: relative;
}

.top_productService-carousel-slider-inner {}

.top_productService-carousel-sliderFor .top_productService-carousel-slider-inner img {
    width: 100%;
}

.top_productService-carousel-description {
    align-items: center;
    background-color: var(--sub-color-bule);
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 100%;
    padding: 2rem;
    gap: 1.4vw;
}

.top_productService-carousel-description p {
    width: 75%;
    display: block;
    color: #fff;
    font-size: 1vw;
    font-weight: 400;
    /* 三点リーダーで省略 */
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.top_productService-carousel-description a {
    width: 24%;
    background-color: #F8F8F8;
    border-radius: 100vh;
    color: #224EA8;
    font-size: .9vw;
    font-weight: bold;
    padding: 0.5rem 0;
    text-align: center;
}

.top_productService-carousel-sliderNav {
    margin-top: 1vw;
}

.top_productService-carousel-sliderNav .slick-track {
    width: 100% !important;
    transform: unset !important;
    display: flex;
    justify-content: center;
}

.top_productService-carousel-sliderNav-inner {
    margin-left: .6vw;
    box-shadow: none;
}

.top_productService-carousel-sliderNav-inner:first-child {
    margin-left: 0;
}

.top_productService-carousel-sliderNav-inner img {
    width: 100%;
    height: auto;
    opacity: .4;
    border-radius: .8vw;
}

.top_productService-carousel-sliderNav-inner.slick-current img {
    opacity: 1;
    border: 2px solid var(--sub-color-bule);
}

.top_productService-carousel-sliderNav-inner:first-child {
    margin-left: 0;
}

.slick-prev,
.slick-next {
    position: absolute;
    width: 6vw;
    height: 6vw;
    z-index: 10;
}

.slick-prev {
    left: -2.8vw;
}

.slick-next {
    right: -2.8vw;
}

.slick-prev:before,
.slick-next:before {
    font-size: 4vw !important;
    color: #fff;
}

.slick-prev:hover::before,
.slick-next:hover:before {
    color: var(--main-color-fvOrange);
}

.slick-prev:focus,
.slick-next:focus {
    box-shadow: none;
}

/* 取扱い製品 */
.home .wrapper.product {
    background: none;
    text-align: center;
    padding: 0;
    margin: 2vw 0 7vw;
    box-shadow: none;
}

.home .wrapper.product .areaName {
    display: inline-block;
    text-align: center;
    margin: 0 auto 3vw;
    font-size: 1.4vw;
    padding-bottom: 1vw;
    color: var(--sub-color-bule);
    border-bottom: 3px solid var(--sub-color-bule);
}

.home .product-inner {
    display: flex;
    align-items: center;
    height: 11vw;
    overflow: hidden;
}

.home .product-inner+.product-inner {
    margin-top: .6vw;
}

.home .product ul {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home .product .product-inner ul li {
    width: 14vw;
    display: flex;
    margin-right: .4vw;
}

.home .product .product-inner li img {
    width: 100%;
}

/* TOPのWorksとNewsのタイトル */
.home [class*="-area"] [class*="-title"] {
    width: 100%;
    text-align: left;
    font: 5vw zen-maru-gothic, sans-serif;
    font-weight: 400;
    letter-spacing: .4vw;
    color: var(--sub-color-bule);
    padding: 0 12vw 2vw;
}

/* TOPのWorks */
.home .wrapper.works {
    text-align: left;
    padding: 10vw 0;
    min-width: inherit;
}

.home .wrapper.works:before {
    content: '';
    width: 100%;
    background: inherit;
    -webkit-filter: blur(5px);
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    z-index: -1;
}

.home .works .works_block {
    position: relative;
}

.home .works .works_block ul {
    padding: 0;
}

.home .works .works_block li .works_li-worksName {
    font-size: 1.4vw;
    font-weight: 600;
    padding: 1.2rem 0 1.6rem;
    letter-spacing: .2vw;
    line-height: 1.5;
}

.home .works .works_block li:nth-child(1) {
    margin-left: 12vw;
    width: 40%;
}

.home .works .works_block li:nth-child(1) img {
    height: auto;
}

.home .works .works_block li:nth-child(2) {
    margin-right: 12vw;
}

.home .works .works_block li:nth-child(2) img {
    height: 17vw;
}

.home .works .works_block li:nth-child(2) .works-serviceName_wrapper {
    top: 16.2vw;
}

.home .works .works_block li:nth-child(3),
.home .works .works_block li:nth-child(4),
.home .works .works_block li:nth-child(5) {
    margin-right: 0;
    width: 23.3vw;
    margin-right: 3vw;
}

.home .works .works_block li:nth-child(3) {
    margin-left: 12vw;
}

.home .works .works_block li:nth-child(4) {
    position: relative;
    top: -4vw;
    margin-bottom: -4vw;
}

.home .works .works_block li:nth-child(5) {
    margin-right: 12vw;
    position: relative;
    top: -8vw;
    margin-bottom: -8vw;
}

.home .works .btnWrap {
    width: 16vw;
    position: absolute;
    bottom: 3vw;
    right: 12vw;
}

.home .works .normalBtn {
    position: relative;
    top: 3vw;
    right: 1vw;
    text-align: left;
    width: 100%;
}

/* TOPのNews表示 */
.home .wrapper.news {
    background: none !important;
    padding: 0;
    box-shadow: none;
}

.home .news-area {
    min-height: auto !important;
}

.home .news-area .news-title {
    padding: 0 22vw 0;
}

.home .wrapper.news .news_block {
    width: 100%;
    padding: 0 22vw;
    text-align: center;
}

.home .wrapper.news .news_block>div {
    width: 100%;
}

.home .wrapper.news .news_block ul {
    width: 100%;
    display: block;
    margin: 0;
}

.home .wrapper.news .news_block ul li {
    width: 100%;
    margin-bottom: 1vw;
}

.home .wrapper.news .news_block .btnWrap {
    position: absolute;
    top: .8vw;
    right: 21vw;
    width: 15vw;
    text-align: right;
}

.home .wrapper.news .news_block .btnWrap .normalBtn {
    width: 100%;
    right: 1vw;
    top: 1rem;
}

/* TOPのボタン */
.top_button {
    background: url(../img/buttonBg.svg) no-repeat;
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
    height: 98px;
    margin: 5rem 0;
    padding: 2rem;
    transition: all 0.3s;
    width: 966px;
}

.top_button a {
    align-items: center;
    background-color: #F8F8F8;
    display: flex;
    font-size: 2.4rem;
    font-weight: bold;
    height: 100%;
    justify-content: center;
    width: 100%;
}

.top_button:hover {
    box-shadow: none;
}

.button-serviceTop {
    margin: 10rem 0 20rem 0;
}

/****************************************
02. Service
*****************************************/
body.service.index {
    background-image: url(../img/service_bg.png) !important;
    background-size: cover;
    background-repeat: no-repeat;
    background-position-y: 10vw;
    overflow-x: hidden;
}

.service .localNav li a {
    font-size: 1.2rem;
}

.service .localNav li a::before {
    top: 10.5px;
}

.service01 {
    width: 100%;
    padding: 0 12vw;
    display: flex;
    justify-content: space-between;
}

.serviceTop {
    text-align: left;
    margin: 10rem auto 10vh;
    width: 100%;
    max-width: 53vw;
}

.serviceTop .service-catchcopy {
    font-size: 4.4vw;
}

.serviceTop .service-catchcopy .color-fvOrange {
    font-size: 5.5rem;
}

.serviceTop .page-text {
    font-size: 1.7rem;
    line-height: 1.8;
    margin-top: 0;
}

.serviceTop .page-text p {
    margin-bottom: 4rem;
    -webkit-font-smoothing: antialiased;
    letter-spacing: .3rem;
    font-weight: 600;
}

.serviceTop .service-img {
    text-align: center;
    margin-top: 2vw;
    width: 119%;
    position: relative;
    left: -5vw;
}

.serviceTop .service-img img {
    width: 100%;
}

.service .serviceCommon_area {
    margin: 10rem 0 16rem;
}

.service .serviceCommon_area .serviceCommon_area-right {
    width: 30%;
    margin-left: 1rem;
}

.serviceCommon_area-right img {
    width: 100%;
}

.service .serviceCommon_area .serviceCommon_area-left {
    align-self: flex-start;
    width: 44%;
}

body.service:not(.index) .serviceCommon_area-left .page-text p {
    font-weight: 600 !important;
    font-size: 1.7rem !important;
    line-height: 1.8 !important;
    margin-bottom: 0 !important;
    letter-spacing: .3rem;
    color: #F46B00;
    mix-blend-mode: multiply;
    -webkit-font-smoothing: antialiased;
}

body.service .serviceCommon_area-left .page-text p:not(.service-catchcopy) {
    font-weight: 400;
    line-height: 3.6rem;
    margin-bottom: 3rem;
}

.serviceCommon_area-left .page-text p:last-child {
    margin-bottom: 0;
}

.service section {
    width: 100%;
    padding: 0 12vw;
}

.service section.list-productService {
    margin: 22rem 0 20rem;
}

.service section:last-child {
    margin-bottom: 0;
}

.section_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.home .section_header {
    margin-bottom: 0;
}

.section_header .section_leftArea {
    width: calc(100% - 14vw);
}

.section_header .section_rightArea {
    width: 49%;
    text-align: right;
}

.section_header .sectionTitle {
    font-family: zen-maru-gothic, sans-serif;
    font-size: 6rem;
    font-weight: 400;
}

.section_header .sectionTitle,
.section_header p {
    font-family: zen-maru-gothic, sans-serif;
    color: #48486C;
    line-height: 1;
}

.section_header p {
    margin-top: 2rem;
}

body.service .section_header {
    align-items: center;
}

body.service.index:not(.ourService) .section_header {
    margin-bottom: 6vh;
}

body.service .ourService .section_header {
    padding: 0 12vw;
}

body.service .list-works {
    margin-bottom: 10vw;
}

body.service .section_header .section_rightArea {
    width: 14vw;
    text-align: right;
}

body.service .normalBtn {
    font-size: 1.2vw;
    width: 100%;
    height: 6vw;
}

body.service .normalBtn:hover {
    font-size: 1.3vw !important;
}

body.productService-List .ps_block {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

body.service .ps_block,
body.service .works_block ul {
    min-width: 75vw;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    display: flex;
}

body.service ul.service-carousel-sliderFor,
body.service .works_block ul.service-carousel-sliderFor {
    min-width: unset;
    width: auto;
    overflow-x: unset;
    overflow-y: unset;
    white-space: unset;
    display: block;
}

body.service .ps_block::-webkit-scrollbar,
body.service .works_block ul::-webkit-scrollbar {
    height: .3rem;
}

body.service ul.service-carousel-sliderFor::-webkit-scrollbar,
body.service .works_block ul.service-carousel-sliderFor::-webkit-scrollbar {
    display: none;
}

body.service .ps_block::-webkit-scrollbar-track,
body.service .works_block ul::-webkit-scrollbar-track {
    background-color: #fff;
    border-radius: 100px;
}

body.service .ps_block::-webkit-scrollbar-thumb,
body.service .works_block ul::-webkit-scrollbar-thumb {
    background: linear-gradient(338deg, rgba(233, 96, 95, 1) 0%, rgba(255, 207, 65, 0.7273503151260504) 74%, rgba(253, 200, 45, 1) 100%);
    width: 130px;
    border-radius: 100px;
}

body.service .list-productService_block ul.service-carousel-sliderFor {
    display: block;
    padding: 1rem 0 6rem 0;
}

body.service .ps_block {
    padding: 1rem 1rem 6rem 1rem;
    gap: 3vw;
}

body.service .works_block ul {
    padding: 1.5rem 1.5rem 0 1.5rem;
}

body.service .works_block ul {
    justify-content: inherit;
    align-items: inherit;
    flex-direction: row;
    flex-wrap: nowrap;
}

body.service .works_block ul.service-carousel-sliderFor {
    display: block;
}

body.service .list-productService,
body.service .list-works {
    padding: 0 12vw;
}

body.service [class$="Common_area"] .page-text p {
    background: none;
    color: #48486C;
}

body.service .ps_item {
    width: calc(100% / 3);
    min-width: 40rem;
    transform: scale(1);
    transition: .2s all;
}

body.service ul.service-carousel-sliderFor .ps_item {
    min-width: unset;
    padding: 1vw 0;
    margin-right: 4vw;
    margin-left: 0;
}

body.service .ps_item-text {
    white-space: normal;
}

body.service .ps_item:last-child {
    margin-right: 0;
}

body.service .ps_item img {
    width: 100%;
    height: auto;
}

body.service .ps_item .ps_item-productName {
    display: block;
    font-size: 2.4rem;
    margin-top: 0.8rem;
    line-height: 3.7rem;
    white-space: initial;
}

body.service .ps_item-thumbnail {
    margin-bottom: 0;
}

body.service .ps_item:hover {
    transform: scale(.98);
    transition: .2s all;
}

body.service .ps_item:nth-child(even) {
    margin-top: 0;
}

body.service .ps_item a:hover {
    background: #4F4F62;
    padding: 1vh 2vw;
    border-radius: 1rem;
}

body.service .ps_item a:hover::before {
    top: calc(50% - 77px);
    left: calc(50% - 120px);
    font-size: 2rem;
    padding: 5rem 6rem 7rem 6rem;
    font-weight: 400;
}

body.service .ps_item a:hover::after {
    top: calc(50% + 19px);
    left: calc(50% - 88px);
    font-size: 1.2rem;
    font-weight: 400;
}

.service:not(.index) .page-bg {
    width: 63vw;
    max-width: 800px;
    top: 24rem;
}

.service .localNav li a {
    padding: 1rem 0;
}

.service:not(.index) .serviceCommon_area .serviceCommon_area-left {
    align-self: flex-end;
    width: 35%;
    position: relative;
    left: 6rem;
}

.serviceLocalNav {
    counter-reset: item;
    list-style-type: none;
    width: 100%;
    /*min-width: 300px;*/
    margin-left: 2rem;
}

.serviceLocalNav li {
    border: 2px solid var(--body-bg-color);
    font-size: 1.6rem;
    margin-bottom: 1.6rem;
    background-color: rgba(250, 248, 247, 0.4);
    position: relative;
}

.serviceLocalNav li a {
    display: block;
    padding: 1.6rem 2rem 1.6rem 3.5rem;
    font-family: dnp-shuei-mgothic-std, sans-serif;
    font-weight: 600;
    letter-spacing: .2rem;
    color: #EB610E;
}

.serviceLocalNav li:before {
    counter-increment: item;
    content: '0' counter(item)'.';
    font-weight: bold;
    position: absolute;
    top: calc(50% - 27px);
    left: -2.8rem;
    font-style: italic;
    background: #FCA069;
    border-radius: 100px;
    padding: 1.6rem 1.4rem;
    color: #fff;
}

.serviceLocalNav li:hover {
    background-color: #EB610E;
    color: #fff;
    border: 2px solid var(--main-color-fvOrange);
}

.serviceLocalNav li:hover a {
    color: #fff;
}

.service .content_block {
    width: 86vw;
    margin: 0 auto 16rem;
    display: flex;
    align-items: flex-start;
}

.service .content_img {
    width: 50%;
    padding-right: 7rem;
}

.service .content_img img,
.service .content_img svg {
    width: 100%;
}

.content_block .content_textArea {
    width: 50%;
    margin-top: 13rem;
}

.content_textArea img {
    width: 100%;
    margin-top: 3rem;
}

.content_textArea .content_title {
    font: 600 2.6vw dnp-shuei-mgothic-std, sans-serif;
    letter-spacing: .4rem;
    line-height: 6rem;
    margin-bottom: 4rem;
    color: #48486C;
}

.content_textArea .content_title .content_title-No {
    font: italic 300 1.6rem dnp-shuei-mgothic-std, sans-serif;
    display: block;
    margin-bottom: 1rem;
}

.content_textArea .content_title .content_title-repletion {
    font-size: 3rem;
    display: block;
}

.content_textArea-text {
    width: 100%;
}

.content_textArea-text * {
    font-size: 1.7rem;
    line-height: 3.2;
}

.content_textArea-text p {
    letter-spacing: .3rem;
    margin-bottom: 2rem;
    line-height: 3rem;
}

.content_textArea-text .content_textArea_img {
    width: 100%;
    background: #fff;
    padding: 4vh 2vw;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.content_textArea-text .content_textArea_img img {
    width: 26%;
    max-width: 120px;
    margin: 0;
    margin-top: 1.2rem;
}

.content_textArea:only-child {
    width: 54vw;
    margin: 0 auto;
    margin-bottom: 0;
}

.content_textArea-text img {
    width: 100%;
}

/*.service .content_block:nth-child(odd) .content_textArea-text {
    width: 100%;
}
.service .content_block:nth-child(even) {
    flex-direction: row-reverse;
}
.service .content_block:nth-child(even) .content_textArea,
.service .prologue .content_img {
    position: relative;
    left: 2vw;
}*/
.service:not(.index) .list-works,
.service:not(.index) .list-productService {
    width: calc(100vw - 9vw);
    margin: 0 auto;
}

.service:not(.index) .ps_block,
body.service .works_block ul {
    min-width: 67vw;
    padding: 6vh 0;
}

body.service .works_block ul {
    padding: 6vh 0 0 1rem;
}

body.service .works_block ul.service-carousel-sliderFor {
    padding: 1rem 0 0;
    margin-top: 0;
}

body.service .works_block ul.slick-dots {
    margin: unset;
    padding: unset;
    min-width: unset;
    display: block;
}

body.service ul.service-carousel-sliderFor ul.slick-dots {
    padding-right: 4vw;
    width: 100%;
}

body.service ul.service-carousel-sliderFor ul.d-none {
    display: none;
}

.serviceTitle .en-size {
    font: 300 12rem zen-maru-gothic, sans-serif;
    letter-spacing: .4rem;
    position: relative;
    top: 3px;
}

.content_textArea-wrapper:not(:first-of-type) {
    margin-top: 5vh;
}

.content_textArea-wrapper .content_textArea_title {
    font: 600 2.2rem dnp-shuei-mgothic-std, sans-serif;
    line-height: 3.4rem;
    letter-spacing: .6rem;
    margin-bottom: 1.8vh;
    border-left: 3px solid #48486C;
    padding: 0 1.6vw;
}

.content_textArea-wrapper ul {
    width: 100%;
}

.content_textArea-wrapper li {
    padding-left: 2rem;
    display: block;
}

.content_textArea-wrapper li::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    background: #EB610E;
    position: relative;
    top: -.4rem;
    left: -2rem;
    border-radius: 20px;
}

.content_textArea-wrapper .content_textArea_img+p em {
    display: block;
    background: #F46B00;
    font: 600 2rem dnp-shuei-mgothic-std, sans-serif;
    color: #fff;
    line-height: 4rem;
    padding: 2rem 1rem;
}

.emphasis {
    display: inline-block;
    padding: 0 .8rem;
    background: #fff;
    color: #F46B00;
    margin: 0 .6rem;
    border-radius: 6px;
}

.content_textArea-block .block_inner {
    display: flex;
    margin-bottom: 4vh;
}

.content_textArea-block .block_inner figure {
    width: 30%;
}

.content_textArea-block .block_inner .block_item {
    margin: 7vh 0 0 2.6vw;
    width: calc(100% - 30%);
}

.block_item h3 {
    font: 600 2.3rem dnp-shuei-mgothic-std, sans-serif;
    letter-spacing: .4rem;
    margin-bottom: 2vh;
}

[class$="_list"] {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: auto;
    column-gap: 5vw;
    row-gap: 2vh;
}

[class$="_list"] div {
    width: 100%;
}

[class$="_list"] div dt img {
    width: 100%;
}

[class$="_list"] div dd {
    text-align: center;
}

[class*="_list"].square {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
}

[class*="_list"].square .product_logo {
    width: calc(100% / 4 - 1vw);
    display: flex;
    margin: 0 0 1vw 1.2vw;
}

[class*="_list"].square .product_logo:nth-child(1),
[class*="_list"].square .product_logo:nth-child(5n) {
    margin-left: 0;
}

[class*="_list"].square .product_logo img {
    width: 100%;
    display: block;
    height: auto;
    margin: 0;
}

.service:not(.index) .content_block.longText {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto 16rem;
}

.service:not(.index) .content_block.longText>div {
    width: calc(100% / 2);
}

.service:not(.index) .content_block.longText>div:nth-child(3) {
    width: 80%;
    margin: 6rem auto 0;
}

.service:not(.index) .content_block.longText .content_img {
    position: inherit;
    top: 0;
    margin-bottom: 0;
}

.service:not(.index) .content_block.longText .content_img img {
    width: 100%;
}

.service:not(.index) .content_block.longText .content_textArea {
    margin-top: 0;
}

body.service ul.service-carousel-sliderFor img.slide-arrow {
    width: 1.5vw;
    height: auto;
    opacity: 0.5;
    position: absolute;
    bottom: -25px;
    border-radius: 0;
    border-bottom: none;
    z-index: 12;
}

body.service ul.service-carousel-sliderFor img.next-arrow {
    right: 4vw;
}

body.service ul.service-carousel-sliderFor .slick-track {
    margin-left: 0;
}

/*********/
/* VR
/*********/
.service.vr .page-bg svg {
    width: 100%;
}

.service.vr .wrapper div[class*="-area"]>[class$="Title"]>em {
    display: block;
    font-size: 4rem;
    font-family: dnp-shuei-mgothic-std, sans-serif;
    font-weight: normal;
    letter-spacing: .5rem;
    line-height: 1;
}

/*********/
/* AWS
/*********/
.service.aws .serviceCommon_area .serviceCommon_area-left {
    margin-top: -38rem;
}

figure[class*="aws-"] img {
    width: 100%;
    height: auto;
    clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
}

/*********/
/* design
/*********/
.service.design .serviceCommon_area {
    /*min-height: 680px;*/
    margin-bottom: 14vw;
}

/*********/
/* 内製化・自走化支援
/*********/
.service.insourcing .serviceCommon_area {
    min-height: 660px;
    margin-bottom: 7vh;
}

.service.insourcing .content_block.prologue {
    width: 100%;
    display: block;
    padding: 0 22%;
}

.service.insourcing .content_block.prologue .content_textArea {
    padding: 0;
}

.service.insourcing .content_block.prologue .content_textArea-text p {
    line-height: 4rem;
    color: var(--font-baseColor-black);
}

/*********/
/* ソフトウェア開発
/*********/
.serviceTitle .katakana {
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 300;
    letter-spacing: -1rem;
    margin-right: .8rem;
}

figure[class*="software-"] img {
    width: 100%;
    height: auto;
    clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
}

.service.software .serviceCommon_area .serviceCommon_area-left {
    top: -12rem;
    margin-bottom: -12rem;
}

/*********/
/* 取り扱い製品
/*********/
.service.product .serviceCommon_area {
    margin-bottom: 14vh;
}

figure[class*="product-"] img {
    width: 100%;
    height: auto;
    clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
}

.service.product .serviceCommon_area .serviceCommon_area-left {
    margin-top: 24rem;
}

/*****g***********************************
03. Product Service
*****************************************/
.productService-List .ps-area {
    width: 100%;
}

.productService-List .ps_wrapper {
    margin: 16rem 0;
    padding: 0 12vw;
    background-color: unset;
    width: 100%;
    min-height: 100vh;
    text-align: left;
}

.productService-List .ps_wrapper ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ps_item {
    width: calc(50% - 7rem);
}

.ps_item:nth-child(even) {
    margin-top: 30rem;
}

.ps_item a {
    display: block;
    transition: transform 0.2s linear;
    color: #343434;
    transform: scale(1);
}

.ps_item a * {
    font-family: zen-maru-gothic, sans-serif;
}

.ps_item-thumbnail {
    display: block;
    width: 100%;
    margin-bottom: 2.4rem;
}

.ps_item-thumbnail img {
    width: 100%;
}

.ps_item-explanatorytext-short {
    display: block;
    font-weight: 500;
    margin-bottom: 1rem;
    letter-spacing: .2rem;
    color: #5A5856;
}

.ps_item-productName {
    display: block;
    font-size: 2.8rem;
    margin: 0 0 1rem;
    font-weight: 500;
    letter-spacing: .4rem;
}

.ps_item-explanatorytext {
    width: 100%;
}

.ps_item-explanatorytext {
    line-height: 1.8;
    margin-top: 0;
}

.ps_item-text p {
    color: #5A5856;
    font-size: 1.4rem;
    white-space: normal;
}

body.productService-List .ps_item a:hover {
    background: #4F4F62;
    transform: scale(.96);
    padding: 3vh 4vw;
    box-sizing: border-box;
    border-radius: 3rem;
    -webkit-box-shadow: 0 0.625rem 0.625rem 0 rgb(0 0 0 / 20%);
    box-shadow: 0 0.625rem 0.625rem 0 rgb(0 0 0 / 20%);
}

.ps_item a:hover::before {
    content: "製品サイトへ";
    font-weight: bold;
    display: block;
    position: absolute;
    top: calc(50% - 108px);
    left: calc(50% - 164px);
    color: #fff;
    font-size: 2.6rem;
    padding: 6rem 8rem 10rem 8rem;
    border: 1px solid #fff;
    background-color: var(--sub-color-bule);
    z-index: 100;
}

.ps_item a:hover::after {
    content: "別のウインドウで開きます";
    display: block;
    font-size: 1.3rem;
    font-weight: bold;
    position: absolute;
    top: calc(50% + 7px);
    left: calc(50% - 96px);
    margin: auto;
    color: #fff;
    padding: 0.5rem 1.2rem;
    border: 1px solid #fff;
    border-radius: 104px;
    z-index: 100;
}

.ps_item a:hover>* {
    opacity: .1;
    text-align: left;
    color: #fff;
}

/****************************************
04. Works
*****************************************/
.worksList .works ul .works_li {
    width: calc(100% / 3 - 50px);
}

.works-categoryTilte {
    margin: 0rem 0 5rem;
}

/***************
詳細ページ
***************/
.worksDetail .wrapper .articleDetail-area .articleDetail-Title,
.articleDetail-data-serviceName,
.whitepaperDetail .wrapper .articleDetail-area .articleDetail-Title,
.articleDetail-data-skillName {
    font-family: zen-maru-gothic, sans-serif;
    color: #48486C;
}
.worksDetail .wrapper .articleDetail-area .articleDetail-Title,
.whitepaperDetail .wrapper .articleDetail-area .articleDetail-Title {
    font-size: 6rem;
    margin-bottom: 1.8rem;
}
.whitepaperDetail .wrapper .articleDetail-area .articleDetail-Title {
    font-size: 4rem;
    font-weight: 400;
    margin-top: 0;
}
.articleDetail-data-wrapper {
    display: block;
    width: 100%;
    padding: 0 12%;
}

.articleDetail-data-serviceName,
.articleDetail-data-skillName {
    display: inline-block;
    width: auto;
    margin: 4rem 1.2rem 5rem 0;
    font-size: 1.4rem;
    font-weight: 500;
    padding: 0.6rem 1rem;
    background-color: var(--body-bg-color);
    border: 1px solid var(--sub-color-bule);
    border-radius: 100px;
}

.articleDetail-data-serviceName:hover {
    background-color: var(--main-color-fvOrange);
    border: 1px solid var(--main-color-fvOrange);
    color: var(--body-bg-color);
}

.worksDetail-mainPicture {
    width: 100%;
}

.worksDetail-mainPicture img {
    width: 100%;
    height: auto;
    max-height: 900px;
    min-height: 40rem;
    object-fit: contain;
}

/****************************************
05. About
*****************************************/

.about-area {
    margin: 5rem 0;
}

.about section[class^="sectionBlock-"] {
    width: 100%;
    padding: 20rem 16vw;
    text-align: center;
    max-width: 1600px;
}

.about section.sectionBlock-corporatePhilosophy {
    width: 100%;
    padding: 0;
    margin-top: 30vw;
}

.about section.sectionBlock-corporatePhilosophy div {
    display: block;
    width: auto;
    margin: 0 auto;
    text-align: center;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.about section.sectionBlock-corporatePhilosophy div p {
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    line-height: 2.4;
    letter-spacing: .5rem;
    margin-left: 5.2rem;
}

.about section.sectionBlock-corporatePhilosophy div p:last-child {
    margin-left: 0;
}

.text-horizontally {
    display: inline-block;
    margin-bottom: 6px;
    transform: rotate(270deg)
}

.about section.sectionBlock-corporatePhilosophy div p:last-child {
    padding: 0;
}

.about section[class^="sectionBlock-"] p,
.about section[class^="sectionBlock-"] .data_inner {
    text-align: left;
    font-size: 1.8rem;
}

.about [class^="sectionTitle-"] {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    margin: 0 auto 10rem;
    width: 256px;
    height: 84px;
}

.about .sectionTitle-corporatePhilosophy {
    background: url(../img/about-title-corporatePhilosophy.svg) no-repeat;
}

.about .sectionBlock-presidentMessage img {
    margin-bottom: 4rem;
    width: 100%;
    max-width: 70rem;
}

.about .sectionBlock-presidentMessage p {
    line-height: 2.3;
    margin-bottom: 2rem;
}

.about .sectionTitle-presidentMessage {
    background: url(../img/about-title-presidentMessage.svg) no-repeat;
}

.sectionTitle-profile {
    background: url(../img/about-title-profile.svg) no-repeat;
}

.sectionTitle-history {
    background: url(../img/about-title-history.svg) no-repeat;
}

.sectionBlock-access {
    margin-bottom: 10rem;
}

.sectionTitle-access {
    background: url(../img/about-title-access.svg) no-repeat;
}

.about .data_inner {
    line-height: 2;
}

.accessMap-wrp {
    display: block;
    width: 100%;
    height: 400px;
    background: gray;
    margin-bottom: 4rem;
}

.accessMap-wrp .map iframe {
    border: 0;
    height: 400px;
    width: 100%;
}

.sectionBlock-access p {
    line-height: 2;
    margin-bottom: 2rem;
}

.about .page-bg {
    top: -640px;
    margin-bottom: -640px;
}

.about .page-bg svg {
    width: 100%;
    z-index: 1;
}

/****************************************
06. News
*****************************************/
.news .section-wrapper:not(:first-of-type) {
    margin: 16rem auto 10rem;
}

[class*="categoryTilte"] {
    font-size: 5rem;
    letter-spacing: .4rem;
    font-weight: bold;
    text-align: center;
    font-weight: normal;
    color: var(--sub-color-bule);
    opacity: .9;
    font-family: dnp-shuei-mgothic-std, sans-serif;
}

.news-categoryTilte {
    margin-bottom: 10rem;
}

.news-area {
    margin: 0;
    width: 90%;
}

.illust-news {
    position: absolute;
    top: -151.5px;
    left: calc(50% + 400px);
    display: block;
    width: 193px;
    height: 173px;
    background: url(../img/news_illust_forge-kun.svg) no-repeat;
}

.newsList .news_block {
    margin: 0;
}

/***************
詳細ページ
***************/
.newsDetail .wrapper .articleDetail-area .articleDetail-Title {
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 400;
    color: #48486C;
    font-size: 5.4rem;
    line-height: 1.6;
    margin: 4rem 0 4.8rem;
    max-width: 900px;
    padding: 0 12%;
}

.newsDetail-mainPicture {
    width: 100%;
    max-width: 1100px;
}

.newsDetail-mainPicture img {
    width: 100%;
    height: auto;
    border: 1px solid #E3E3E3;
}

.newsDetail .articleDetail_block {
    margin: 6rem 0 0;
}

.newsDetail .articleDetail_group-content {
    padding: 0;
}

.newsDetail .articleDetail_group-content figure {
    margin-bottom: 2rem;
}

.newsDetail .news_freeitem>*:first-child {
    margin-top: 5rem;
}

.newsDetail .articleDetail_group-subTitle,
.newsDetail .news_freeitem h2 {
    font-size: 2.4rem;
    color: #333130;
    border-top: none;
    border-bottom: none;
    text-align: left;
}

.newsDetail h2.articleDetail_group-subTitle,
.newsDetail .news_freeitem h2 {
    margin: 6rem 0;
    padding: 1.4rem 0 1.4rem 2.4rem;
    border-left: 6px solid #333130;
}

.newsDetail .news_freeitem h2 {
    margin: 10rem 0 4rem !important;
}

.newsDetail h3.articleDetail_group-subTitle,
.newsDetail .news_freeitem h3,
.newsDetail .news_freeitem h4 {
    font-size: 2.2rem;
    margin: 8rem 0 5rem !important;
    padding: 0;
    border-left: none;
}

.newsDetail .news_freeitem h4 {
    font-size: 2rem;
}

.newsDetail .news_freeitem img {
    width: 100%;
    height: auto;
    display: block;
    text-align: left;
}

.newsDetail .news_freeitem * {
    font-size: 1.8rem;
}

.newsDetail .news_freeitem img,
.newsDetail .news_freeitem ul,
.newsDetail .news_freeitem ol,
.newsDetail .news_freeitem dl,
.newsDetail .news_freeitem pre {
    margin-bottom: 5rem;
}

.newsDetail .news_freeitem em {
    font-style: italic;
}

.newsDetail .news_freeitem ul,
.newsDetail .news_freeitem ol {
    border: none;
    padding: 0;
}

.newsDetail .news_freeitem dd {
    margin-bottom: 1.6rem;
}

.newsDetail .news_freeitem ins {
    text-decoration: none;
}

.newsDetail .news_freeitem code {
    display: block;
    padding: .4rem 1.4rem;
    /* 文字周りの余白 */
    color: var(--body-bg-color);
    /* 文字色 */
    background-color: var(--sub-color-bule);
    /* 背景色 */
    border-radius: .6rem;
    margin-right: .4rem;
}

.newsDetail .news_freeitem pre {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    background-color: var(--sub-color-bule);
    border-radius: .6rem;
}

.newsDetail .news_freeitem pre * {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    color: var(--body-bg-color);
}

.newsDetail .news_freeitem code {
    display: inline-block;
}

.newsDetail .news_freeitem blockquote {
    position: relative;
    padding: 1.6rem 1.6rem 1.6rem 6rem;
    border-radius: .6rem;
    box-sizing: border-box;
    font-style: italic;
    color: #464646;
    background: #EFE9E5;
    margin: 5rem 0;
}

.newsDetail .news_freeitem blockquote:before {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 8px;
    width: 38px;
    height: 30px;
    text-align: center;
    content: "\f10d";
    font-family: FontAwesome;
    color: #FFF;
    font-size: 18px;
    line-height: 30px;
    background: var(--main-color-fvOrange);
    font-weight: 900;
}

.newsDetail .news_freeitem blockquote:after {
    content: '';
    position: absolute;
    left: 8px;
    top: 30px;
    height: 0;
    width: 0;
    border-left: 19px solid var(--main-color-fvOrange);
    border-right: 19px solid var(--main-color-fvOrange);
    border-bottom: 10px solid transparent;
}

.newsDetail .news_freeitem blockquote p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}

.newsDetail .news_freeitem blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

.newsDetail .articleDetail-column {
    margin: 0;
}

.newsDetail .articleDetail-column:first-of-type {
    margin-top: 0;
}

.newsDetail .articleDetail-column:last-of-type {
    margin-bottom: 10rem;
}

.newsDetail .articleDetail_group-content_inner {
    text-align: left;
    margin-top: 8rem;
}

.newsDetail .articleDetail-column.addText .articleDetail_group-content_inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.newsDetail .articleDetail-column.addText .articleDetail_group-content_inner .articleDetail_group-text {
    width: 100%;
}

.newsDetail .articleDetail-column.addText .articleDetail_group-content_inner .articleDetail_group-text h3 {
    width: 100%;
    margin-top: 0;
}

.newsDetail .articleDetail-column.addText .articleDetail_group-content_inner img {
    box-sizing: border-box;
    border: 1px solid #E3E3E3;
    width: 400px;
    height: auto;
    clip-path: circle(200px at 50% 50%);
    margin-right: 40px;
}

.newsDetail .articleDetail-column.addText .articleDetail_group-content_inner img+.articleDetail_group-text {
    width: calc(100% - 440px);
    margin-top: 14rem;
}

.newsDetail .articleDetail-column.addText>.articleDetail_group-content_inner img:only-child {
    width: 100%;
    clip-path: none !important;
    margin-right: 0;
    margin-top: 5rem;
}

.newsDetail .articleDetail-column.addText>.articleDetail_group-content_inner+.articleDetail_group-content_inner .articleDetail_group-text:only-child {
    position: relative;
    top: -4rem;
    margin-bottom: -4rem;
}

/****************************************
07. contact
*****************************************/
body[class*="contact"] .container {
    background-color: #FAF8F7;
    background-image: url(../img/footer_bg.png) !important;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: calc(50% - 0px) calc(100% - -276px);
    padding-bottom: 260px;
}

body[class*="contact"] .footer_contacts {
    display: none;
}

.contact-Form .contact-form-wrapper,
.recruit-entry-Form .contact-form-wrapper {
    display: block;
    width: 100%;
}

.contact-area {
    margin: 5rem 0;
    width: 90%;
}

.contact-area .section-wrapper {
    margin: 3rem;
    width: 100%;
    text-align: left;
    position: relative;
    padding: 0 12vw;
}

.content_block * {
    line-height: 3.2rem;
}

.content_block>img {
    width: 800px;
    margin-top: 3rem;
}

.illust-contact.bird {
    position: absolute;
    top: 8vw;
    left: calc(50% + 28vw);
    display: block;
    width: 16vw;
    height: 28vw;
    max-width: 354px;
    max-height: 241px;
    background: url(../img/contact_bird.svg) no-repeat;
    background-size: contain;
}

.contactform_area {
    margin-top: 6rem;
}

.contactform_area>* {
    width: 100%;
}

.contactform_area li .contactform-select span.menu::after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 30%;
    right: 1%;
    pointer-events: none;
}

.contactform_area .titleLabel {
    display: block;
    margin-bottom: 1rem;
    font-size: 2rem;
    font-weight: bold;
    color: #48486C;
}

.contactform_area li:not(:last-child) {
    margin-bottom: 4rem;
}

.contactform_area li [class*="contactform-"] span,
.contactform_area .longText .longText-text {
    display: block;
    border-radius: 6px;
}

.contactform_area li [class*="contactform-"] > span input,
.contactform_area li [class*="contactform-"] > span select,
.contactform_area li [class*="contactform-"] > span textarea,
.contactform_area li.longText .longText-text {
    background: #fff;
    display: block;
    width: 100%;
    padding: 2rem;
    border-radius: 6px;
    border: .2px solid #48486C !important;
    font-size: 1.8rem;
}

.contactform_area li.longText .longText-text {
    padding: 2.6rem;
    height: 246px;
    overflow-y: auto;
    border: 1px solid #cfcfcf;
}

.contactform_column-2 p {
    display: flex;
    justify-content: space-between;
}

.contactform_column-2>p [class*="contactform-"] {
    width: calc(100% - 10px);
}

.contactform_column-2>p [class*="contactform-"] span {
    display: block;
}

.contactform_column-2>p [class*="contactform-"]:nth-child(2) .contactform-text,
.contactform_column-2>p [class*="contactform-"]:nth-child(2) .titleLabel-sub {
    margin-left: 10px;
}

.contactform_area li .contactform-select span select {
    padding: 2rem 1rem;
}

.contactform_area .contactform-textarea span textarea {
    resize: vertical;
    min-height: 30rem;
}

.contactform_area .required::after,
.f70ldd_entry label::after {
    content: "必須";
    display: inline-block;
    padding: 0 1rem;
    background: #EB610E;
    color: #fff;
    font-size: 1rem;
    border-radius: 18px;
    position: relative;
    top: -5px;
    margin-left: 0.5rem;
}

.f70ldd_entry label::after {
    padding: .3rem 1rem;
    top: -3px;
}

.contactform_area .note,
.contactform_area .has-error>.error-msg,
.error-msg {
    font-size: 1.4rem;
}

.contactform_area .longText {
    height: 280px;
}

.contactform_area .longText * {
    opacity: .8;
}

.contactform_area .longText em {
    display: block;
    font-weight: bold;
    margin: 2rem 0 .8rem;
}

.contactform_area .longText em:first-child {
    margin: 0 0 .8rem;
}

.contactform_area .longText .address {
    border: 2px solid var(--font-baseColor-black);
    padding: 2rem;
}

.contactform_area .longText p:last-child {
    margin-top: 3rem;
}

.contact-form-acceptance {
    display: inline-block;
    margin: 6rem auto;
    font-size: 1.8rem;
    position: relative;
}

.contact-form-acceptance input[name="acceptance"] {
    display: none;
}

.contact-form-acceptance input[name="acceptance"]+span {
    padding-left: 6rem;
    line-height: 1.8;
}

.contact-form-acceptance input[name="acceptance"]:checked+span {
    color: #EB610E;
}

.contact-form-acceptance input[name="acceptance"]+span::before {
    position: absolute;
    top: -5px;
    left: 0;
    display: inline-block;
    content: '';
    box-sizing: border-box;
    background-image: url(../img/contact_check-off.svg);
    background-repeat: no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
}

.contact-form-acceptance input[name="acceptance"]:checked+span::after {
    content: '';
    position: absolute;
    top: -5px;
    left: 0;
    display: inline-block;
    content: '';
    box-sizing: border-box;
    background-image: url(../img/contact_check-on.svg);
    background-repeat: no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
}

.contactform-submit,
.contact-form-buttons .contact-form-btn--submit {
    display: block;
    margin: 6rem auto 0;
    padding: 2.2rem 15rem;
    border-radius: 100px;
    background: #3C3C60;
    color: #fff;
    border: none;
    cursor: pointer;
    letter-spacing: .2rem;
}

.contactform-submit,
.contact-form-buttons .contact-form-btn--submit,
.contact-form-buttons .contact-form-btn--edit {
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    padding: 1.8rem 4rem;
}

.contact-form-buttons .contact-form-btn--submit {
    margin: 0;
    border: none;
}

.contact-form-buttons {
    width: 100%;
}

.contact-form-buttons button {
    display: inline-block !important;
}

.contact-form-buttons .contact-form-btn--edit {
    border: none !important;
    color: var(--font-baseColor-black);
    cursor: pointer;
    letter-spacing: 1rem;
}

.contact-form-buttons button:only-of-type {
    padding: 1rem 4rem;
    background: var(--font-baseColor-black);
    color: #fff;
    font-size: 1.4rem;
    letter-spacing: .2rem;
}

.contact-form-buttons .contact-form-btn--edit:hover {
    color: #EB610E;
    opacity: .7;
}

.contact-form-buttons .contact-form-btn--submit:hover {
    background-color: #EB610E;
    color: #fff;
}

.contactform-submit:hover {
    background-color: #EB610E;
}

.contactform-submit:disabled {
    opacity: .4;
}

.contactform-submit:disabled:hover {
    background-color: #3C3C60;
    cursor: default;
}

/* エラーメッセージ */
.contactform_area .has-error>.error-msg,
.error-msg {
    display: block;
    font-size: 1.4rem;
    color: #F42A2A;
    padding: 0;
    font-weight: bold;
}

.contactform_area .has-error .is-error {
    outline: 2px solid #FCB3B3;
    outline-offset: 1px;
    background-color: #FCB3B3;
}

.contact-area form .error-msg:empty {
    display: none;
}

.is-error span input {
    background: #FCB3B3 !important;
}
/* Inputs */
.contact-form .contact-form-control {
    width: 100%;
    padding: 2rem;
    border: .2px solid #48486C !important;
    border-radius: 4px;
    font-size: 1.6rem;
    background: #fff;
    box-sizing: border-box;
}

.contact-form-select {
    min-height: 40px;
}

.contact-form-text,
.contact-form-email,
.contact-form-tel {
    min-height: 40px;
}

.contact-form-textarea {
    min-height: 120px;
    resize: vertical;
}

/***************
確認ページ
***************/
.contacts-comfirm .titleLabel,
.recruit-entry-Confirm .contactform_area .titleLabel {
    font-size: 1.8rem;
    color: #48486C;
}
.contacts-comfirm .contact-form-control,
.recruit-entry-Confirm span[class*="contactform"],
.recruit-entry-Form .contact-form-control {
    border-radius: 6px;
    padding: 2rem;
    background: #E8E8E8;
    font-size: 1.8rem;
    width: 100% !important;
    display: block;
    pointer-events: none;
}
.recruit-entry-Confirm .contactform_column-2 p {
    gap: 2rem;
}
.contacts-comfirm .contact-form-buttons,
.recruit-entry-Form .contact-form-buttons {
    margin: 12rem 0 0 0;
    display: flex;
    justify-content: space-between;
}
.recruit-entry-Form .contact-form-buttons {
    margin: 5rem 0 0 0;
}
/***************
完了ページ
***************/
body.contact-Comp .wrapper .contact-area {
    min-height: 0;
}

body.contact-Comp button.normalBtn,
body.recruit-entry-Comp button.normalBtn {
    width: 21rem;
    height: 8rem;
    font-size: 1.8rem;
    margin-top: 6rem;
}

body.contact-Comp button.normalBtn::before,
body.recruit-entry-Comp button.normalBtn::before {
    width: 6rem;
    height: 6rem;
    border: 2px solid var(--sub-color-bule);
}

body.contact-Comp button.normalBtn::after,
body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner button.normalBtn::after {
    width: 6rem;
    height: 1.8rem;
    right: 2rem;
}

body.contact-Comp button.normalBtn:hover,
body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner button.normalBtn:hover {
    font-size: 1.9rem !important;
}

body.contact-Comp .container {
    /*background-image: none !important;*/
    background-position: calc(50% - 0px) calc(100% - -238px);
    padding-bottom: 50rem;
}

body.contact-Comp .footer {
    align-items: flex-end;
}

body.contact-Comp [class$="Title"]+.contctsCommon_area .page-text {
    font-size: 2rem;
    line-height: 2;
}

body.contact-Comp [class$="Title"]+[class$="Common_area"]>div {
    width: 100%;
}


/****************************************
08. Privacy Policy
*****************************************/
.privacypolicy-area .privacypolicy_block {
    margin: 10rem 12vw 6rem;
    padding: 8rem;
    background-color: rgba(255, 255, 255, 0.9);
    width: auto;
    text-align: left;
    position: relative;
    line-height: 2.8rem;
}

.privacypolicy_block p:not(:last-child) {
    margin-bottom: 4rem;
}

.privacypolicy_block .paragraph-title {
    margin-bottom: 1rem;
}

.paragraph-title.contact {
    margin-top: 4rem;
}

/****************************************
09. 404
*****************************************/
body.error404 {
    background-image: url(../img/img_404-pc.png);
    background-repeat: no-repeat;
    background-position: center 0;
}

body.error404 .container {
    padding-top: 40rem;
    margin-bottom: 6rem;
}

body.error404 h1 {
    color: transparent;
}

body.error404 p {
    text-align: center;
    line-height: 2;
}

body.error404 .message-1 {
    font-size: 2.6rem;
    font-weight: bold;
    letter-spacing: .3rem;
    margin-bottom: 2.6rem;
    color: var(--sub-color-bule);
}

body.error404 .container .normalBtn {
    width: 20rem;
    height: 6rem;
    font-size: 1.6rem;
    margin-top: 2.6rem;
}

body.error404 .container .normalBtn::before {
    width: 5.2rem;
    height: 5.2rem;
}

body.error404 .container .normalBtn::after {
    width: 6rem;
    height: 1.4rem;
    right: 1.6rem;
}

body.error404 .container .normalBtn:hover {
    font-size: 1.7rem !important;
}

body.error404 .container .normalBtn:hover::after {
    width: 2.4rem;
}

/****************************************
10. Whitepaper
*****************************************/
/* 一覧 */
body.whitepaperList .section-wrapper {
    width: 100%;
}

.whitepaper_block {
    width: 100%;
}

.whitepaper_block ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto;
    padding: 0 12%;
    width: 100%;
}

.whitepaper_block li {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: calc(100% / 3 - 2.6vw);
    margin-bottom: 3.6vw;
    text-align: center;
    padding: 2rem 3rem 3rem 3rem;
    background: #FFF;
    border-radius: 20px;
}

.whitepaper_categoryName,
.whitepaper_Name {
    display: block;
    font-family: zen-maru-gothic, sans-serif;
    color: var(--sub-color-bule);
    font-weight: 500;
    text-align: left;
}

.whitepaper_categoryName {
    font-size: 1.5rem;
}

.whitepaper_Name {
    font-size: 2.2rem;
    padding: 1.4rem 0 1.8rem;
}

.whitepaper_thumbnail,
.file-thumbnail {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24vw;
    background: #f3f3f3;
}

.file-thumbnail {
    width: 40rem;
    height: 50rem;
    padding: 6rem !important;
}

.f70ldd_download_files>.file .file-thumbnail {
    margin-bottom: unset !important;
    max-width: unset !important;
}

.whitepaper_thumbnail img,
.file-thumbnail img {
    width: auto;
    display: block;
    max-width: 100% !important;
    max-height: 100% !important;
}

.whitepaper_block li .whitepaperBtn,
.f70ldd_entry .submit input {
    background: var(--sub-color-bule);
    color: #EBEBEB;
    padding: .8rem 2rem;
    border-radius: 100px;
    margin: 2rem 0 0 0;
    font-size: 1.5rem;
    font-weight: 500;
    display: block;
    width: 18rem;
    border: none !important;
    cursor: pointer;
}

.whitepaper_block li .whitepaperBtn:hover,
.f70ldd_entry .submit input:hover {
    background: var(--main-color-fvOrange);
}

/* 詳細ページ */
.whitepaperDetail .articleDetail_block {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.whitepaperDetail .articleDetail_block [class*="articleDetail_block-"] {
    width: calc(100% / 2 - 2.6vw);
}

.whitepaperDetail .articleDetail-Title,
.whitepaperDetail .articleDetail-data-wrapper,
.whitepaperDetail .footer_contacts {
    max-width: 1000px;
    padding: 0 !important;
    text-align: left;
}

.whitepaperDetail .articleDetail_block [class*="articleDetail_block-"] .whitepaper_thumbnail {
    padding: 6rem;
    background: #fff;
}

.whitepaperDetail .whitepaper_thumbnail {
    height: auto;
}

.whitepaper_text-1 .textArea {
    background: #F4ECE2;
    border-radius: 20px;
    padding: 1.4rem;
}

[class*="whitepaper_text"] {
    margin-top: 6rem;
}

[class*="whitepaper_text"] p {
    line-height: 1.8;
}

.text-1_balloon {
    display: block;
    width: 340px;
    height: 55.5px;
    background: url(../img/text-1_balloon.svg);
    background-repeat: no-repeat;
    text-indent: 400px;
    overflow: hidden;
    word-break: keep-all;
    margin-bottom: .4rem;
    text-indent: -99999px;
}

.articleDetail_block-right {
    background: #F4F3F2;
    padding: 6rem;
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
}

.articleDetail_block-right > p {
    margin-bottom: 4rem;
    font-size: 1.5rem;
    line-height: 1.7;
}

/* 資料ダウンロードプラグインの上書き */
.f70ldd_entry {
    margin-top: 0 !important;
    background: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.f70ldd_entry *:not(.submit input) {
    display: block;
    width: 100%;
    text-align: left;
}
.whitepaper-btn--edit {
    cursor: pointer;
}

.f70ldd_entry div {
    margin-bottom: 2rem;
}

.f70ldd_entry label {
    color: var(--sub-color-bule);
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500 !important;
    margin-bottom: .4rem;
}

.f70ldd_entry input,
.f70ldd_entry select,
.confirm-value {
    padding: 1.2rem;
    border-radius: .6rem;
    border-width: thin;
    border-color: var(--sub-color-bule);
}

.f70ldd_entry .submit {
    width: 100%;
    display: flex !important;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    flex-wrap: nowrap;
    text-align: right !important;
    margin-top: 4rem !important;
    margin-bottom: 2rem !important;
    cursor: pointer;
}

.f70ldd_entry .submit input {
    padding: 1rem 1rem 1rem 2rem !important;
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    letter-spacing: 1rem;
    margin-left: auto;
    margin-right: 0;
    width: 14rem !important;
}
.f70ldd_entry .submit input:disabled,
.f70ldd_entry .submit input:disabled:hover {
    opacity: .6;
    background-color: #48486c;
}

.f70ldd_error {
    border: none !important;
    border-radius: unset !important;
    background-color: #F42A2A !important;
    color: #fff !important;
    padding: 1.4rem !important;
}

.f70ldd_error>ul>li {
    line-height: unset !important;
}

.f70ldd_entry form .error {
    color: #F42A2A !important;
    font-weight: unset !important;
}

.f70ldd_entry.f70ldd-accepted+p {
    display: none;
}

.f70ldd_entry.f70ldd-accepted .to-home,
.f70ldd_entry.f70ldd-accepted .to-home a {
    display: inline-block;
    width: auto;
}

.f70ldd_entry.f70ldd-accepted .to-home {
    margin-top: 4rem;
    display: block;
    text-align: right;
}

.f70ldd_download_files_title {
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    margin: 4rem 0 2rem;
}
.file,
.file-name,
.file-size {
    text-align: center;
}

.f70ldd_download_files {
    display: flex;
    justify-content: center !important;
    text-align: center;
}

.f70ldd_download_files img {
    width: auto;
}

.page-template-default .container {
    margin: 10rem 0;
}

.file-name,
.file-size {
    margin: 1.2rem 0 !important;
}

.file-size {
    color: var(--font-baseColor-black) !important;
    font-size: 1.4rem !important;
    line-height: unset !important;
    margin-bottom: 4rem !important;
}

.f70ldd_download_button_area.wp-block-buttons {
    margin-bottom: unset !important;
}

.f70ldd_download_button_area.wp-block-buttons .wp-block-button {
    margin-top: unset !important;
}

.wp-block-button__link {
    font-family: zen-maru-gothic, sans-serif;
    color: #fff;
    background-color: var(--sub-color-bule) !important;
    font-weight: 500;
    border-radius: 9999px;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    font-size: 1.125em;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    text-align: center;
    text-decoration: none;
    word-break: break-word;
    box-sizing: border-box;
}

.wp-block-button__link:hover {
    background-color: var(--main-color-fvOrange) !important;
}

.confirm-value {
    background: #E8E8E8;
    width: 100% !important;
    display: block;
    pointer-events: none;
}
/** 資料ダウンロード サンキューメッセージ **/
.whitepaper-thanks__title {
    font-size: 1.8rem;
    margin-bottom: 1.6rem;
}
.whitepaper-thanks__text {
    line-height: 1.6;
    font-size: 1.4rem;
}


/****************************************
11. Recruit
*****************************************/
body.recruit section {
    width: 100%;
    padding: 0 12vw;
    margin-bottom: 18rem;
}

body.recruit .wrapper.recruit {
    content: "";
    background-image: url('../img/scrollText-recruiting.svg');
    background-repeat: repeat-x;
    background-size: auto 600px;
    animation: loop 40s linear infinite;
}

@keyframes loop {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -2000px 0;
        /* 画像のマイナス幅 */
    }
}

body[class*="recruit"] .localNav-recruit {
    margin-top: 4rem;
    position: relative;
    background-image: linear-gradient(114deg, rgba(22, 247, 229, 1), rgba(255, 109, 23, 1));
    border-radius: 100px;
    padding: 10px;
}

body[class*="recruit"] .localNav-recruit ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 52px;
}

body[class*="recruit"] .localNav-recruit ul.recruit_interview {
    padding: 0;
}

body[class*="recruit"] ul.recruit_entry {
    margin-top: 20px;
}

body[class*="recruit"] .localNav-recruit li {
    margin-right: 14px;
    margin-left: 10px;
}

body[class*="recruit"] .localNav-recruit li::before {
    content: "●";
    color: #fff;
    font-size: 1.2rem;
    position: relative;
    top: -1px;
    margin-right: 2px;
}

body[class*="recruit"] .recruit_entry li::before,
body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child:before {
    content: none;
}

body[class*="recruit"] .localNav-recruit li a,
body[class*="recruit"] .recruit_entry li a {
    color: #fff;
    font-size: 1.5rem;
    font-weight: 500;
    font-family: zen-maru-gothic, sans-serif;
}

body[class*="recruit"] .recruit_entry li,
body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child {
    background-color: #fff;
    border: 3px solid #FC9356;
    border-radius: 100px;
    display: block;
    text-align: center;
    margin: 0;
    margin-left: auto;
    padding: 7px 0;
}

body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child {
    border: none;
    padding: 0;
}

body[class*="recruit"] .recruit_entry li:hover {
    background-color: #FC9356;
    border: 3px solid #fff;
}

body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child:hover {
    background-color: #FC9356;
}

body[class*="recruit"] .recruit_entry li a,
body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child a {
    color: var(--main-color-fvOrange);
    display: block;
    padding: 1rem 2rem;
}

body[class*="recruit"] .recruit_entry li:hover a,
body[class*="recruit"] .localNav-recruit ul.recruit_interview li:last-child:hover a {
    color: #FFF;
}

body[class*="recruit"] .recruit_firstView {
    display: flex;
    align-items: center;
    height: 80vh;
    padding: 0;
}

.recruit_firstView>div {
    width: 50%;
}

body[class*="recruit"] .wrapper div[class*="-area"] section [class$="-inner"]>[class$="Title"] {
    padding: 0;
}

body[class*="recruit"] .wrapper div[class*="-area"] section [class$="-inner"]>[class$="Title"]>em {
    top: -140px;
}

.recruit_firstView-inner {
    padding: 0 4rem;
    z-index: 99;
}

.recruit_firstView-inner>* {
    width: 60rem !important;
    margin: 0 auto;
}

.recruit_firstView-inner p {
    color: #FF9A5D;
    line-height: 2;
    font-size: 1.8rem;
}

.recruit_firstView-slideBox {
    display: block;
    height: 84%;
    border-radius: 200px 0 0 200px;
    background-image: url(../img/recruit_heroImage-1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* 会社を知る ここから */
.recruit_company {
    padding: 24rem 0 0 0 !important;
    text-align: center;
}

.recruit_company-inner {
    width: 100%;
    padding: 0 0 10rem 0;
    background-image: url(../img/recruit_bg-1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.recruit_company-inner img {
    position: relative;
    top: -27rem;
    margin: 0 auto -27rem;
    width: 90vw;
    max-width: 160rem;
}

body[class*="recruit"] .wrapper div[class*="-area"] .recruit_company-inner>h2.sectionTitle {
    color: #FAF8F7;
    font-size: 6rem;
    font-weight: 400;
    margin-top: 12rem;
}

body[class*="recruit"] .wrapper div[class*="-area"] .recruit_company-inner>h2.sectionTitle em {
    top: -112px;
}

/* 遷移ボタン */
.recruit_company-inner div {
    width: 70rem;
    margin: 4rem auto;
}

.recruit_company-inner div p {
    color: #FAF8F7;
    font-size: 1.8rem;
    line-height: 2;
}

/* 遷移ボタン  ここから */
body[class*="recruit"] section div .normalBtn {
    width: 40rem;
    margin: 2rem auto 0;
    font-size: 1.8rem;
    font-weight: 500;
    color: #FAF8F7;
}

body[class*="recruit"] .recruit_service .normalBtn {
    width: 32rem;
    color: #48486C !important;
    height: 5rem;
}

body[class*="recruit"] section div .normalBtn::before {
    width: 4.2rem;
    height: 4.2rem;
}

body[class*="recruit"] section div .normalBtn.btn-white::before {
    border: 1px solid #fff;
}

body[class*="recruit"] div .normalBtn::after {
    width: 5rem;
    height: 1.1rem;
    position: absolute;
    right: 1.4rem;
}

body[class*="recruit"] div .normalBtn.btn-white::after {
    background: url(../img/btn_arrow_white.svg) no-repeat;
    background-position: center right;
    background-size: cover;
}

body[class*="recruit"] div .normalBtn:hover {
    font-size: 1.86rem !important;
}

body[class*="recruit"] div .normalBtn:hover::after {
    width: 4rem;
}

/* 遷移ボタン  ここまで */
.recruit_company .section_header {
    padding-top: 4rem;
    width: 66vw;
    margin: 0 auto;
}

.recruit_company .section_header .section_leftArea {
    width: 22rem;
    text-align: right;
}

body[class*="recruit"] .wrapper .recruit_company .section_header .section_leftArea .sectionTitle {
    font-size: 4.8rem !important;
    color: #FFA557 !important;
    margin-bottom: 0 !important;
}

.recruit_company .section_rightArea {
    width: 60%;
    width: calc(100% - 25rem);
}

.recruit_company .section_rightArea p {
    margin-top: 0;
    color: #FFA557;
    line-height: 1.8;
}

/* 会社を知る ここまで */
/* 仲間を知る ここから */
.recruit_people {
    width: 100%;
    border-radius: 200px 0 0 0;
    background-image: linear-gradient(160deg, rgba(255, 215, 108, 0.5), rgba(252, 168, 119, 0.5));
    padding: 10rem 0 !important;
}

.recruit_people-inner,
.recruit_culture-inner {
    display: flex;
    align-items: center;
    width: 100rem;
    margin: 0 auto;
}

body[class*="recruit"] .wrapper div[class*="-area"]>[class$="Title"],
body[class*="recruit"] .wrapper div[class*="-area"] section[class*="recruit_"] [class*="recruit_"] div [class$="Title"],
body[class*="recruit"] .wrapper div[class*="-area"] section.recruit_qa .recruit_qa-inner>[class$="Title"] {
    color: var(--sub-color-bule);
    font-size: 6rem;
    font-weight: 400;
    font-family: zen-maru-gothic, sans-serif;
    margin-bottom: 2rem;
}

body[class*="recruit"] .wrapper div[class*="-area"]>[class$="Title"],
body[class*="recruit"] .wrapper div[class*="-area"] section[class*="recruit_"] [class*="recruit_"] div [class$="Title"] em,
body[class*="recruit"] .wrapper div[class*="-area"] section.recruit_qa .recruit_qa-inner>[class$="Title"] em {
    font-size: 1.6rem;
    display: block;
    font-weight: 500;
    position: relative;
    top: -107px;
    font-family: zen-maru-gothic, sans-serif;
}
body[class*="recruit-entry"] .wrapper div[class*="-area"]>[class$="Title"] {
    top: -10rem;
    margin-bottom: -4rem;
}

.recruit_people-inner div,
.recruit_culture-inner div {
    width: 50%;
}

.recruit_people-inner div:first-child {
    padding-right: 6rem;
}

.recruit_people-inner div img,
.recruit_culture-inner div img {
    width: 100%;
}

.recruit_people-inner div p,
.recruit_culture-inner div p {
    font-size: 1.8rem;
    line-height: 2;
    color: var(--sub-color-bule);
}

section [class*="interview-"] {
    margin-top: 10rem;
}

section [class*="interview-"] h3 {
    width: 100rem;
    margin: 0 auto 6rem;
    display: block;
    font-family: zen-maru-gothic, sans-serif;
    color: var(--main-color-fvOrange);
    font-size: 2rem;
    font-weight: 500;
}

section [class*="interview-"] h3::before {
    content: "●";
    font-size: 1.2rem;
}

/* リクルート用のカルーセル  ここから */
.recruit-carousel-sliderFor .slick-slide {
    transition: all ease-in-out .3s;
    opacity: .7;
}

.recruit-carousel-sliderFor .slick-active {
    opacity: .7;
}

.recruit-carousel-sliderFor .slick-current {
    opacity: 1;
}

.recruit-carousel-sliderFor .slick-slide:hover {
    opacity: 1;
}

.recruit-carousel-sliderFor {
    display: flex;
}

.recruit-carousel-sliderFor li {
    height: auto;
    margin: 0 2rem;
}

.recruit-carousel-sliderFor li a {
    text-decoration: none !important;
}

.recruit-carousel-sliderFor li div {
    width: 100%;
    height: 50rem;
    min-height: 40rem;
    border-radius: 15rem;
    position: relative;
    background-image: linear-gradient(122deg, rgba(255, 197, 165, 1) 36%, rgba(255, 171, 110, 1));
}

.recruit-carousel-sliderFor li div img {
    width: 100%;
    height: 50rem;
    min-height: 40rem;
    border-radius: 15rem;
    object-fit: contain;
    object-position: 50% 100%;
}

.recruit-carousel-sliderFor li div p {
    position: absolute;
    bottom: -2rem;
    right: 0;
    font-family: zen-maru-gothic, sans-serif;
}

.recruit-carousel-sliderFor li div p em {
    display: block;
    text-align: center;
    color: #fff;
}

.recruit-carousel-sliderFor li div p em.recruit_category {
    position: relative;
    top: 3rem;
}

.recruit-carousel-sliderFor li div p em.interview_num {
    font-size: 10rem;
    font-weight: 100;
    font-family: zen-maru-gothic, sans-serif;
}

.recruit-carousel-sliderFor p[class*="_title"],
.recruit-carousel-sliderFor p[class*="_name"] {
    font-family: zen-maru-gothic, sans-serif;
    color: var(--sub-color-bule);
}

.recruit-carousel-sliderFor p[class*="_title"] {
    font-size: 2.4rem;
    font-weight: 500;
    padding: 3rem 1rem 1.8rem;
}

.recruit-carousel-sliderFor p[class*="_name"] {
    font-size: 1.4rem;
    padding: 0 1rem;
}

.recruit_carousel-header_wrap {
    width: 100rem;
    display: flex;
    align-items: flex-start;
    margin: 0 auto;
}

.recruit_carousel-header {
    display: flex;
    position: relative;
    width: 30rem;
    height: 1.2rem;
}

.recruit_carousel-header .slick-prev,
.recruit_carousel-header .slick-next {
    width: 4rem;
}

.recruit_carousel-header .slick-prev:before,
.recruit_carousel-header .slick-next:before {
    content: "";
    width: 4rem !important;
    height: 1.2rem !important;
    display: block;
    opacity: 1;
}

.recruit_carousel-header .slick-prev {
    left: 0;
}

.recruit_carousel-header .slick-prev:before {
    background-image: url(../img/carousel_arrow-left.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
}

.recruit_carousel-header .slick-next {
    right: 0;
}

.recruit_carousel-header .slick-next:before {
    background-image: url(../img/carousel_arrow-right.svg);
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;
}

.recruit_carousel-header-dots {
    width: calc(100% - 5rem);
    margin: 0 auto;
}

.recruit_carousel-header-dots .slick-dots {
    width: 78%;
    height: 3.4rem;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    top: -.7rem;
}

.recruit-carousel-sliderFor .slick-dots li {
    width: 2vw;
    height: auto;
}

.recruit_carousel-header-dots .slick-dots li.slick-active button:before,
.recruit_carousel-header-dots .slick-dots li button:before {
    color: #FF9A5D !important;
}

.interview-blog {
    margin: 12rem auto !important;
}

.interview-blog .recruit-carousel-sliderFor li div,
.interview-blog .recruit-carousel-sliderFor li div img {
    height: 30rem;
    min-height: 30rem;
}

.interview-blog .recruit-carousel-sliderFor li div img {
    object-fit: cover;
}

.interview-blog .recruit_carousel-header {
    width: 40rem;
}

.interview-blog .recruit_carousel-header-dots {
    width: calc(100% - 6.4rem);
}

/* リクルート用のカルーセル  ここまで */
/* 仲間を知る ここまで */
/* 環境を知る ここから */
body.recruit section.recruit_culture {
    width: 100%;
    padding: 0;
    margin-bottom: 10rem;
}

.recruit_culture-inner {
    flex-direction: row-reverse;
}

.recruit_culture-inner div:first-child {
    padding-left: 6rem;
}

.recruit_culture h3 {
    width: 100rem;
    margin: 6rem auto 0;
}

.culture-list {
    margin: 3rem auto 10rem;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-content: flex-start;
    gap: 3rem;
}

.culture-list li {
    width: 34rem;
    min-width: 34rem;
    background: #fff;
    border-radius: 38px;
    padding: 4rem 3rem 3rem;
    text-align: center;
    -webkit-box-shadow: 0.2rem 1rem 1.6rem rgb(0 0 0 / 8%);
    box-shadow: 0.2rem 1rem 1.6rem rgb(0 0 0 / 8%);
}

.culture-list li p:not(.culture-text) {
    text-align: center;
    color: var(--sub-color-bule);
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500;
}

.culture-list li p.culture-category {
    font-size: 1.2rem;
    margin-bottom: 0;
}

.culture-list li p.culture-title {
    font-size: 2.2rem;
    margin-bottom: 3rem;

}

/* 環境を知る ここまで */
/* フォトリスト ここから */
.culture-photo_wrap {
    display: flex;
    overflow: hidden;
    width: 100vw;
}

.culture-photo_list {
    display: flex;
}

.culture-photo_list-left {
    animation: infinity-scroll-left 95s linear infinite;
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.culture-photo_item {
    width: calc(100vw / 3);
    position: relative;
}

.culture-photo_item>img {
    width: 100%;
}

.culture-photo_item span {
    display: inline-block;
    padding: 1.4rem 1.8rem;
    text-align: center;
    background: var(--sub-color-bule);
    color: #fff;
    font-size: 1.2rem;
    position: absolute;
    right: 0;
    bottom: 2rem;
    border-radius: 100px 0 0 100px;
}

/* フォトリスト ここまで */
/* 募集要項 ここから */
.recruit_recruiting {
    background-image: linear-gradient(160deg, rgba(72, 196, 176, 0.43), rgba(252, 147, 86, 0.43));
    position: relative;
    top: -3px;
    padding: 10rem 0 18rem !important;
    margin-bottom: -3px !important;
}

.recruit_recruiting>div {
    width: 100rem;
    margin: 10rem auto 0;
}

.recruit_recruiting-inner {
    display: flex;
    margin-bottom: 6rem;
}

.recruit_recruiting-inner .section_leftArea {
    width: 36rem;
}

.recruit_recruiting-inner .section_rightArea {
    margin-top: 1rem;
    width: calc(100% - 36rem);
    font-size: 1.8rem;
    line-height: 2;
}

.recruit_recruiting .recruit_recruiting-inner .section_leftArea {
    text-align: left;
}

.recruit_recruiting-item {
    background: #F4F4F4;
    padding: 6rem 8rem;
    border-radius: 60px;
}

.recruit_recruiting-item .item_title {
    display: block;
    width: 100%;
    text-align: center;
    color: var(--sub-color-bule);
    font-size: 2.6rem;
    font-family: zen-maru-gothic, sans-serif;
    font-weight: 500;
    margin-bottom: 3rem;
}

.recruit_recruiting-item p {
    font-family: zen-maru-gothic, sans-serif;
    font-size: 1.8rem;
    line-height: 2;
    font-weight: 500;
    color: var(--sub-color-bule);
}

.process-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 4rem;
    margin-top: 5rem;
}

.process-list li {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 240px;
    width: calc(100% / 3 - 4rem);
    background: #fff;
    counter-increment: count-ex01-2;
    border-radius: 11px;
    padding: 4rem 2.5rem;
    position: relative;
}

.process-list li::after {
    content: "0" counter(count-ex01-2);
    position: absolute;
    top: -4rem;
    display: block;
    text-align: center;
    width: calc(100% - 6rem);
    font-size: 5rem;
    font-weight: lighter;
    color: #D2D2E0;
}

.process-list li::before {
    content: "";
    background: url(../img/btn_arrow.svg) no-repeat;
    background-position: center right;
    background-size: cover;
    width: 4rem;
    height: 1.1rem;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(-50%, -50%);
}

.process-list li:first-child::before {
    display: none;
}

.process-list li p {
    font-family: zen-maru-gothic, sans-serif;
    color: var(--sub-color-bule);
    font-size: 13px;
    font-weight: 400;
    line-height: normal;
    margin-top: 30px;
    text-align: left;
}

.process-list li p:first-child {
    font-size: 1.8rem;
    font-weight: 500;
    margin-top: 0;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block-parts,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li {
    border-radius: 10px;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block ul li a,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a {
    align-items: center;
    display: flex;
    text-decoration: none;
    padding: 0 4rem;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block ul li a div:last-child,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div:last-child {
    margin-left: 4rem;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block ul li a div .recruitment_num,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_num {
    font-size: 6rem;
    color: #D2D2E0;
    font-weight: 100;
    margin-bottom: 1rem;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block ul li a div .recruitment_type,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_type {
    font-size: 2.4rem;
    line-height: 2.4rem;
    margin-bottom: 1.6rem;
}

body.recruit .recruit_recruiting-item .recruitmentType_type_block ul li a div .recruitment_department,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_department {
    font-size: 1.4rem;
    line-height: 1.4rem;
}

/* 募集要項 ここまで */
/* 遷移エリア ここから */
.recruit_recruiting-transitionArea {
    width: 100%;
    display: flex;
    align-items: center;
}

.recruitAgentSite {
    width: 100%;
    background-image: linear-gradient(90deg, rgba(40, 206, 193, 1), rgba(252, 147, 86, 1));
}

.recruitAgentSite:hover {
    background-image: linear-gradient(90deg, rgba(40, 206, 193, 1) 36%, rgba(252, 147, 86, 1));
}

.recruit_recruiting-transitionArea .recruitAgentSite a {
    display: block;
    width: 78rem;
    height: 30rem;
    margin: 0 auto;
    background: url(../img/text-entry.svg) no-repeat;
    background-position: center center;
    background-size: 100%;
    text-indent: -20rem;
    overflow: hidden;
}

.recruit_recruiting-transitionArea .recruitAgentSite:hover a {
    background: url(../img/text-entry-hover.svg) no-repeat;
    background-position: center center;
    background-size: 100%;
}

.recruit_recruiting-transitionArea .recruitCulture {
    width: 100%;
    background-image: linear-gradient(131deg, rgba(81, 81, 119, 1) 10%, rgba(72, 72, 108, 1) 90%);
}

.recruit_recruiting-transitionArea .recruitCulture:hover {
    background-color: #424265;
}

.recruit_recruiting-transitionArea .recruitCulture a {
    display: block;
    width: 100%;
    height: 30rem;
    margin: 0 auto;
    background: url(../img/text-recruit_culture.svg) no-repeat;
    background-position: center center;
    background-size: contain;
    text-indent: -10rem;
    overflow: hidden;
}

.recruit_recruiting-transitionArea .recruitCulture:hover a {
    background: url(../img/text-recruit_culture-hover.svg) no-repeat;
    background-position: center center;
    background-size: contain;
}

/* 遷移エリア ここまで */
/* 採用のお知らせ ここから */
.recruit_news,
.recruit_qa,
.recruitmentType_type {
    width: 100rem !important;
    padding: 0 !important;
}

.recruit_news,
.recruitmentType_type {
    margin: 18rem 0 0 !important;
}

.recruit_news-inner,
.recruit_qa-inner {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.recruit_news-inner .section_rightArea .normalBtn,
.recruit_qa-inner .section_rightArea .normalBtn {
    width: 20rem;
    margin-top: 0 !important;
    color: var(--sub-color-bule);
}

.recruit_news .news_block-parts,
.recruitmentType_type .recruitmentType_type_block-parts,
.recruit_qa .qa_block-parts {
    margin-bottom: 3rem;
}

/* 採用のお知らせ ここまで */
/* Q&A ここから */
.recruit_qa {
    margin-top: 4rem;
}

.qa_block ul li p:last-child {
    font-size: 1.6rem;
    margin-top: 2rem;
    margin-left: 2rem;
}

.qa_block ul li p:last-child a {
    color: #F46B00;
}

#qa-list {
    padding: 0 12vw !important;
    width: 100% !important;
}

/* Q&A ここまで */
/* インタビュー ここから */
.recruitInterview .interview .localNav-recruit,
.recruitmentType .recruitmentType .localNav-recruit {
    margin: 1rem 0 0 auto;
    position: sticky;
    top: 10rem;
    right: 2.6rem;
    padding: 6px 6px 6px 8px;
    z-index: 999;
}

.recruitInterview .interview .localNav-recruit li a,
.recruitmentType .recruitmentType .localNav-recruit li a {
    font-size: 1.4rem;
}

.recruitInterview .interview .localNav-recruit li:last-child a,
.recruitmentType .recruitmentType .localNav-recruit li:last-child a {
    padding: 0.6rem 2rem;
}

.recruitInterview .interview_wrap,
.recruitmentType .recruitmentType_wrap {
    display: flex;
    justify-content: space-between;
    position: relative;
    width: 100vw;
    margin-top: -20rem;
}

.recruitInterview .interview_wrap_contents {
    width: 50vw;
    margin-bottom: 20rem;
}

.recruitInterview .interview_wrap_contents>div,
.recruitmentType .recruitmentType_wrap_contents>div {
    padding: 10rem 10vw;
}

.recruitInterview .interview_firstView,
.recruitmentType .recruitmentType_firstView {
    width: 100%;
    height: auto;
    min-height: 100vh;
    background-image: linear-gradient(122deg, rgba(194, 237, 235, 1) 36%, rgba(255, 179, 139, 1));
}

.recruitInterview .interviewImages {
    width: 50vw;
    height: 100vh;
    display: flex;
    align-items: center;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    margin-top: -20rem;
}

.recruitInterview .interviewImages p {
    width: 100%;
    height: 100vh;
    margin: auto;
    display: block;
    visibility: hidden;
    /* 画像が透過pngの時は背景色が必要です */
    background: #5bd2d2;
    position: absolute;
    top: 0;
    bottom: 0;
    transition: opacity .6s ease-in-out;
    opacity: 0;
    /* フェード速度 */
    transition: .8s;
    opacity: 0;
}

.recruitInterview .interviewImages p:first-child,
.recruitInterview .interviewImages p.active {
    visibility: visible;
    opacity: 1;
}

.interviewImages img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.recruitInterview .interview_firstView .interview_num,
.recruitInterview .interview_firstView .interview_title,
.recruitInterview .interview_firstView .interview_profile-inner p,
.recruitInterview .interview_firstView [class*="interview_0"] h2,
.recruitmentType .recruitmentType_firstView .recruitmentType_num,
.recruitmentType .recruitmentType_firstView .recruitmentType_title,
.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner h2,
.recruitmentType_information-bottom .information_title,
.recruitmentType .recruitmentType_type h2,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_num,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_type,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_department {
    font-family: zen-maru-gothic, sans-serif;
}

.recruitInterview .interview_firstView .interview_num,
.recruitmentType .recruitmentType_firstView .recruitmentType_num {
    color: #F46B00;
    font-size: 4.3rem;
    position: relative;
    left: 9rem;
    margin-top: 4vw;
}

.recruitInterview .recruit-carousel-sliderFor li div p em {
    color: #F46B00;
}

.recruitInterview .interview_firstView .interview_title,
.recruitmentType .recruitmentType_firstView .recruitmentType_title {
    color: var(--sub-color-bule);
    font-size: 4.2rem;
    font-weight: 500;
    margin-top: 2rem;
}

.recruitInterview .interview_firstView .interview_num::before,
.recruitmentType .recruitmentType_firstView .recruitmentType_num::before {
    content: "interview -";
    font-size: 1.6rem;
    font-weight: 500;
    position: absolute;
    top: 2.2rem;
    left: -9rem;
}

.recruitInterview .interview_firstView .interview_profile-inner p,
.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner h2,
.recruitmentType .recruitmentType_type h2,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_type,
.recruitmentType .recruitmentType_type .recruitmentType_type_block ul li a div .recruitment_department {
    font-weight: 500;
    color: var(--sub-color-bule);
}

.recruitInterview .interview_firstView .interview_profile-inner .profile_name {
    font-size: 2.4rem;
}

.recruitInterview .interview_firstView .interview_profile-inner>div,
.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner>div {
    margin: 2.6rem 0;
}

.recruitInterview [class*="interview_0"] {
    margin-top: 3rem;
}

.recruitInterview .interview_01 {
    margin-top: 12rem;
}

.recruitInterview [class*="interview_0"] h2 {
    font-size: 2.2rem;
    color: #FF9A5D;
    font-weight: 500;
    margin-bottom: 4rem;
}

.recruitInterview [class*="interview_0"] h2::before {
    content: "-";
}

.recruitInterview [class*="interview_0"] p {
    font-size: 1.8rem;
    line-height: 1.9;
}

.recruitInterview .recruit_people {
    background: #fff;
    border-radius: 0;
    padding: 0 0 10rem !important;
}

body.recruitInterview .localNav-recruit li:not(:last-child)::before,
body.recruitmentType .localNav-recruit li:not(:last-child)::before {
    content: "←";
}

body.recruitInterview .post_date {
    margin-top: 113px;
    text-align: right;
}

/* インタビュー ここまで */
/* 募集職種ページ ここから */
.recruitmentType .recruitmentType_wrap_contents {
    width: 100vw;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_num {
    left: 11.5rem;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_num::before {
    content: "Recruitment -";
    left: -11.5rem;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_information {
    padding: 4rem 9rem;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner .recruitmentType_information-top>div {
    margin: 5rem 0;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner h2 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
}

.articleDetail-data-skillName {
    margin: 0 1.2rem 10px 0;
}

.recruitmentType .recruitmentType_firstView .recruitmentType_information-inner .recruitmentType_information-bottom>div {
    background-color: #FAF8F7;
    display: flex;
    margin: 3.6rem 0;
    padding: 3rem;
}

.recruitmentType_information-bottom p.information_title {
    font-weight: 500;
    width: 30%;
}

.recruitmentType_information-bottom p:last-child {
    width: 70%;
}

.recruitmentType .recruitmentType_type h2 {
    font-size: 2.4rem;
    text-align: center;
}

/* 募集職種ページ ここまで */
/* 採用募集ページ ここから */
body[class*="recruit-entry"] .container {
    background-image: linear-gradient(180deg, rgba(194, 237, 235, 1), rgba(255, 179, 139, 0.3), rgba(0, 0, 0, 0));
    margin-top: calc(-80px - 10rem);
    padding-top: calc(80px + 10rem);
}
body[class*="recruit-entry"] .wrapper div[class*="-area"] > [class$="Title"] > em {
    top: 0;;

}
.recruitInterview .interview_firstView .interview_profile, 
.recruitmentType .recruitmentType_firstView .recruitmentType_information, 
.recruit-entry-block,
body.recruit-entry-Form form.wpcf7cp-form-hide + #wpcf7cpcnf,
body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner {
    background: #fff;
    border-radius: 40px;
    padding: 4rem;
    margin-top: 6rem;
    width: 100%;
    height: auto;
}
.recruit-entry .section-wrapper,
.recruit-entry-block {
    margin-top: 0;
}
.recruit-entry-block {
    padding: 9rem;
}

body.recruit-entry-Form span.salary,
body.recruit-entry-Form span.age {
    position: relative;
}

body.recruit-entry-Form span.salary::after,
body.recruit-entry-Form span.age::after {
    position: absolute;
    content: "万円";
    top: 20px;
    right: 20px;
    font-size: 1.8rem;
}

body.recruit-entry-Form span.age::after {
    content: "歳";
}

body.recruit-entry-Form #wpcf7cpcnf table tr:nth-child(2) td p::after,
body.recruit-entry-Form #wpcf7cpcnf table tr:nth-child(6) td p::after {
    position: absolute;
    content: "万円";
    right: 11rem;
}

body.recruit-entry-Form #wpcf7cpcnf table tr:nth-child(6) td p::after {
    content: "歳";
}

body.recruit-entry-Form #wpcf7cpcnf table tr:first-child::before,
body.recruit-entry-Form #wpcf7cpcnf table tr:nth-child(2)::before {
    content: unset;
}

body.recruit-entry-Comp .wrapper .contact-area.recruit-entry h1.contctsTitle {
    padding: 0 14vw !important;
}

body.recruit-entry-Comp .contctsCommon_area {
    padding: 0 14vw !important;
    margin-top: 0;
}

body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner {
    margin-top: 0;
}

body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner p {
    text-align: center;
    margin: 4rem 0;
}

body.recruit-entry-Comp .contctsCommon_area .recruit-entry-Comp_inner button {
    margin: 0 auto;
}

/* 採用募集ページ ここまで */

/****************************************
12. Information Security Policy
*****************************************/
.security_policy li {
    margin-bottom: 4rem;
    text-indent: -1.5em;
    padding-left: 1.5em;
}

/* =============================================
   Contact Form (CF7-free) unified styles
============================================= */
.recruit-entry-Form .contact-form-wrapper,
.contacts-comfirm .contact-form-wrapper {
    display: block;
    width: 100%;
}