/*
Theme Name: 'NOIR' WordPress Templete
Theme URI: 
Author: Toyohiko Yoshimine (LuckyPeaks)
Author URI: 
Description: 
Version: 1.0
*/
@charset "UTF-8";

:root {

    --color-blue: #76C9EB;
    --color-gray: #4C4C4C;
    --color-bgray1: #596D74;
    --color-red: #F44D4D;
    --color-gray5: #E5E5EA;

    --lp-header-height: 200rem;			/* ヘッダー縦サイズ */
	--lp-header-navigation-gap:0rem;	/* ヘッダーナビゲーション間隔 */

	/* body背景色 */
	--lp-body-background: #fff;

	/* 基本文字色 */
    --lp-color-text: #222;

	/* HEADER */
    
    /* Under FirstView */
    --lp-under-fv-text-color: #fff;
}

/* fonts */
body, textarea, input, button { font-family:"Noto Sans JP", sans-serif; }
.fontAverage { font-family: "Average", serif; font-weight: 400; font-style: normal; }
.fontMincho { font-family: "Noto Serif JP", serif; font-style: normal; }

/* color */
.colorBlue { color:var(--color-blue) !important; }
.colorRed { color:var(--color-red) !important; }
.colorGray { color:var(--color-gray) !important; }
.colorBGray1 { color:var(--color-bgray1) !important; }


/* コンテンツボックス */
@media (max-width:780px) {      /* MOBILE */
    .LPContentBox { padding-top:20rem; padding-bottom:40rem; }
}

/* ボタン */
.LPButton { width:347rem; height:50rem; border-radius:25rem; font-size:18rem; border:none; background:var(--color-blue); color:#fff; }
.LPButton.bgray1 { background:var(--color-bgray1); color:#fff; }
.LPButton.white { border:1rem solid; color:var(--lp-color-text); background:#fff; }
.LPButton.more { background:var(--color-bgray1); }
.LPButton .arrowRight { position:absolute; right:24rem; width:20rem; height:auto; }

/* HEADER */
.LPHeader .headerBox { min-height:100rem; }
.LPHeader .headerBox .logo .text { font-size:14rem; letter-spacing:.1em; font-weight:bold; color:var(--color-blue); }
.LPHeader .headerBox .logo .image { width:220rem; margin:13rem 0 0; }
@media (max-width:780px) {      /* MOBILE */
    .LPHeader .headerBox { min-height:inherit; height:80rem; padding-left:20rem; }
    .LPHeader .logo .text { font-size:11rem; }
    .LPHeader .logo .image { width:220rem; margin:10rem 0 0; }
}

/* MOBILEメニュー */
.LPMobileMenu { position:absolute; right:40rem; top:calc(50rem - 30rem); display:flex; cursor:pointer; }
.LPMobileMenu > * { background:transparent; }
.LPMobileMenu > *::before,
.LPMobileMenu > *::after { background:var(--color-gray); left:13rem; width:22rem; height:3rem; border-radius:1.5rem; }
.LPMobileMenu > *::before { transform:translateY(-4rem); }
.LPMobileMenu > *::after { transform:translateY(4rem); }
.LPMobileMenuOpened .LPMobileMenu:not(.noAnimation) > *::before { transform:translateY(0) rotate(45deg); background:#fff; }
.LPMobileMenuOpened .LPMobileMenu:not(.noAnimation) > *::after { transform:translateY(0) rotate(-45deg); background:#fff; }

.LPHeader nav { display:flex; position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.9); color:#fff; column-gap:0; transition:height 0.5s; opacity:0; pointer-events:none; transition:opacity 0.33s; }
.LPMobileMenuOpened .LPHeader nav { opacity:1; pointer-events:auto; }
.LPHeader nav > * { width:344rem;  }
.LPHeader nav .menuLogo {  }
.LPHeader nav .menu { width:344rem; font-size:24rem; font-weight:700; text-align:left; }
.LPHeader nav .menu ul { width:100%; }
.LPHeader nav .menu li { line-height:40rem; height:40rem; }
.LPHeader nav .menu li::after { content:''; position:absolute; right:0; top:calc((40rem - 24rem) / 2); width:24rem; height:24rem; background:url(img/menu-next-arrow.svg); background-size:cover; }
/*
.LPHeader nav { width:100%; color:#fff; column-gap:0; transition:height 0.5s; }
.LPHeader nav > * { width:140rem; height:100rem; padding:0; flex-direction:column; }
.LPHeader nav .icon { width:40rem; margin:0 0 8rem; transition:all 0.5s; }
.LPHeader nav .text { width:100%; line-height:1.2; transition:all 0.5s; }
.LPHeader nav .text.jpn { font-size:15rem; }
.LPHeader nav .text.eng { font-size:11rem; }
.LPAttachmentHeaderAttached .LPHeader nav .icon { width:20rem; margin-bottom:4rem; }
.LPAttachmentHeaderAttached .LPHeader nav > * { height:72rem; }
.LPAttachmentHeaderAttached .LPHeader nav .text.jpn { font-size:14rem; }
.LPAttachmentHeaderAttached .LPHeader nav .text.eng { font-size:10rem; }
*/

/* .LPWPNavigation { position:fixed; left:0; top:0; width:100%; height:100%; color:#fff; background:rgba(0, 0, 0, 0.9); display:flex; z-index:1000; } */


.LPFooter { padding-top:100rem; }
.LPFooter .footerContent { font-size:16rem; padding-top:50rem; padding-bottom:20rem; background:#F4F5F6; }
.LPFooter .navigation { display:flex; gap:32rem; }
.LPFooter .navigation > * + *::before { content:'|'; position:absolute; left:-16rem; top:-1rem; }
.LPFooter .logo { margin-top:24rem; }
.LPFooter .logo figure { width:320rem; }
.LPFooter .snsIcons { display:flex; gap:10rem; margin-top:24rem; }
.LPFooter .copyright { margin-top:40rem; font-weight:normal; }
@media (max-width:780px) {      /* MOBILE */
    .LPFooter { padding-top:60rem; }
    .LPFooter .footerContent { padding-top:40rem; padding-bottom:20rem; padding-left:20rem; padding-right:20rem; display:flex; }
    .LPFooter .navigation { gap:8rem; flex-direction:column; align-items:start; width:100%; margin-top:24rem; order:3; }
    .LPFooter .navigation > * + *::before { content:none; }
    .LPFooter .logo { margin-top:0; order:1; margin-right:auto; }
    .LPFooter .logo .image { width:220rem; }
    .LPFooter .snsIcons { gap:15rem; margin-top:0; order:2; }
    .LPFooter .snsIcons > * { display:block; }
    .LPFooter .copyright { margin-top:52rem; width:100%; order:4; }
}

.LPWPPage h1 { font-size:28rem; line-height:1.5em; font-weight:bold; margin:60rem auto; }

.LPWPPage .content { font-size:16rem; line-height:1.5em; width:100%; max-width:none; margin-top:0; }
.LPWPPage .content > * { width:100%; max-width:960rem; margin-left:auto; margin-right:auto; }
.LPWPPage .content > *.widthFull { max-width:none; }
.LPWPPage .content > *.width640 { max-width:640rem; }
.LPWPPage .content > *.width840 { max-width:840rem; }
.LPWPPage .content > *.width900 { max-width:900rem; }
.LPWPPage .content > *.width1000 { max-width:1000rem; }
.LPWPPage .content > *.width1200 { max-width:1200rem; }
.LPWPPage .content h2 { margin-top:40rem; margin-bottom:20rem; }
.LPWPPage .content h3 { margin-top:40rem; margin-bottom:20rem; }
.LPWPPage .content h4 { margin-top:40rem; margin-bottom:20rem; font-size:24rem; font-weight:500; color:var(--color-blue); }
.LPWPPage .content h5 { margin-top:40rem; margin-bottom:20rem; font-size:24rem; font-weight:300; }
.LPWPPage .content h6 { margin-top:40rem; margin-bottom:20rem; font-size:15rem; }

.LPWPPage .content .LPAccordion + * { display:none; }

.LPWPPage .content .LPAccordion.faq { padding:24rem 0 24rem 73rem; margin-bottom:0; font-size:20rem; line-height:1.5; }
.LPWPPage .content .LPAccordion.faq::before { content:'Q'; font-size:36rem; line-height:0; font-weight: bold; color: #3075b7; position: absolute; left:24rem; top:36rem; }
.LPWPPage .content .LPAccordion.faq::after { content:'\FF0B'; font-size:28rem; line-height:0; font-weight: bold; color: #3075b7; position: absolute; right:24rem; top:38rem; transition:transform 0.33s; }
.LPWPPage .content .LPAccordion.faq + * { display:none; transition:margin 0.33s; }
.LPWPPage .content .LPAccordion.faq + * > * { line-height:1.8; padding:24rem 64rem 24rem 73rem; background:#f6f9f9; border-radius:8rem; min-height:0; }
.LPWPPage .content .LPAccordion.faq + * > *::before { content:'A'; font-size:36rem; line-height:0.75; font-weight: bold; position: absolute; left:28rem; color:var(--color-bgray1); }
.LPWPPage .content .LPAccordion.faq.open::after { transform:rotate(45deg); }
.LPWPPage .content .LPAccordion.faq.open + * { margin-bottom:20rem; }

/*
    ボタン
*/
.LPButton {  }
.LPButton.bgray1 { background:var(--color-bgray1); color:#fff; }
.LPButton.white { border:1rem solid; color:var(--lp-color-text); background:#fff; }
.LPButton.more { background:var(--color-bgray1); }
.LPButton .arrowRight { position:absolute; right:24rem; width:20rem; height:auto; }
@media (max-width:780px) {      /* MOBILE */
    .LPWPPage .content .wp-block-buttons { display:flex; flex-direction:column-reverse; margin-top:40rem; gap:20rem; }
    .LPWPPage .content .wp-block-buttons.spNoReverse { flex-direction:column; }
    .LPWPPage .content .wp-block-buttons.horizontal { flex-direction:row; }
    .LPWPPage .content .wp-block-buttons.shortTopMargin { margin-top:20rem; }
    .LPWPPage .content .wp-block-buttons.largeTopMargin { margin-top:60rem; }
    .LPWPPage .content .wp-block-button.arrow::after { width:10rem; height:10rem; }
}

section.LPNewsTitles .articlesBox { display:flex; }
section.LPNewsTitles .articles { display:inline-block; }
section.LPNewsTitles .articles .article { display:block; }
section.LPNewsTitles .articles * + .article { margin-top:40rem; }
section.LPNewsTitles .articles .article .date { display:inline-block; width:100rem; font-size:12rem; }
section.LPNewsTitles .articles .article .categories { display:inline-block;; font-size:10rem;  }
section.LPNewsTitles .articles .article .categories > * { display:flex; height:21rem; border-radius:10rem; border:1rem solid var(--color-gray); padding:0 12rem; line-height:0; }
section.LPNewsTitles .articles .article .title { width:auto; font-size:16rem; margin-top:8rem; }
section.LPNewsTitles .articles .article .title > a { display:inline-block; text-decoration:underline; text-underline-offset:4rem; }
@media (max-width:780px) {      /* MOBILE */
}

section.LPNewsThumbnailTitles .articles .thumb { aspect-ratio:346 / 180; margin-bottom:12rem; }
section.LPNewsThumbnailTitles .title { height:52rem; letter-spacing:0.1em; color:var(--color-bgray1); }
section.LPNewsThumbnailTitles .detail { margin-top:8rem; display:flex; column-gap:20rem; justify-content:flex-start; align-items:flex-start; text-align:left; font-size:10rem; }
section.LPNewsThumbnailTitles .detail > * { width:calc(50% - 10rem); letter-spacing:0.1em; min-height:1.6em; }
section.LPNewsThumbnailTitles .detail .index3 { padding-left:3em; }
section.LPNewsThumbnailTitles .detail .index4 { padding-left:4em; }
section.LPNewsThumbnailTitles .detail .index5 { padding-left:5em; }
section.LPNewsThumbnailTitles .detail .index > *:first-child { position:absolute; left:0; }
section.LPNewsThumbnailTitles .article .LPButtons { margin-top:8rem; }
section.LPNewsThumbnailTitles .article .LPButton { width:100%; }
@media (max-width:780px) {      /* MOBILE */
    section.LPNewsThumbnailTitles .articles .article:nth-child(3) ~ * { display:none; }
}


.LPScrollTo { position:fixed; right:20rem; bottom:20rem; opacity:0; pointer-events:none; width:60rem; height:60rem; transform:translateY(20rem); transition:opacity 0.5s, transform 0.5s; cursor:pointer; }
.LPScrolled .LPScrollTo { opacity:1; transform:translateY(0); pointer-events:auto; }

#home .LPFirstView { height:480rem; }
#home .LPFirstView .bg {  }
@media (max-width:780px) {      /* MOBILE */
    #home .LPFirstView { height:294rem; }
}

#home .sectionTitle { font-size:20rem; letter-spacing:.35em; padding-left:.35em; margin-bottom:40rem; color:var(--color-blue); font-weight:500; padding-bottom:16rem; }
#home .sectionTitle::after { content:''; position:absolute; left:calc(50% - 45rem); bottom:0; width:90rem; height:1rem; background:var(--color-gray); }
@media (max-width:780px) {      /* MOBILE */
    #home .sectionTitle { margin-bottom:34rem; }
}

#home section.LPNewsThumbnailTitles .LPButton { width:calc((100% - (40rem * 2)) / 3 ); }
#home section.LPNewsThumbnailTitles .article .LPButtons { margin-top:8rem; }
#home section.LPNewsThumbnailTitles .article .LPButton { width:100%; }
@media (max-width:780px) {      /* MOBILE */
    #home section.LPNewsThumbnailTitles .articles.gap40 { gap:20rem; }
    #home section.LPNewsThumbnailTitles .LPButtons { margin-top:26rem; }
    #home section.LPNewsThumbnailTitles .LPButton { width:100%; }
}

#home .pickup .LPContentBox { max-width:1036rem; }
#home .pickup .borderBox { border:1rem solid var(--color-gray); border-radius:25rem; padding:24rem 40rem 40rem; }
#home .pickup .content { display:flex; align-items:flex-start; column-gap:40rem; }
#home .pickup .content > * { width:calc(50% - 20rem); }
#home .pickup .content .article .title { height:94rem; text-align:left; font-size:24rem; letter-spacing:0.1em; line-height:1.2; color:var(--color-bgray1); }
#home .pickup .content .article .detail { margin-top:16rem; display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; text-align:left; font-size:14rem; }
#home .pickup .content .article .detail > * { width:calc(50% - 10rem); letter-spacing:0.1em; }
#home .pickup .content .article .detail .index3 { padding-left:3em; }
#home .pickup .content .article .detail .index4 { padding-left:4em; }
#home .pickup .content .article .detail .index5 { padding-left:5em; }
#home .pickup .content .article .detail .index > *:first-child { position:absolute; left:0; }
#home .pickup .content .article .LPButtons { margin-top:26rem; }
#home .pickup .content .thumb { aspect-ratio:486 / 306; }
@media (max-width:780px) {      /* MOBILE */
    #home .pickup .LPContentBox { padding-left:10rem; padding-right:10rem; }
    #home .pickup .borderBox { border-radius:25rem; padding:24rem 12rem; }
    #home .pickup .content { flex-direction:column-reverse; column-gap:14rem; }
    #home .pickup .content > * { width:100%; }
    #home .pickup .content .article { margin-top:14rem; }
    #home .pickup .content .article .title { height:45rem; font-size:16rem; }
    #home .pickup .content .article .detail { margin-top:8rem; font-size:10rem; }
    #home .pickup .content .article .LPButtons { margin-top:8rem; }
}

#home .about {  }
#home .about .videoBox { max-width:900rem; margin: 0 auto 116rem; aspect-ratio:900 / 506; line-height:0; }
#home .about .videoBox video { width:100%; }
#home .about .content .text { font-size:20rem; line-height:1.7em; letter-spacing:.35em; }
#home .about .content .illust { width:353rem; margin-top:40rem; }
#home .about .content .LPButtons { margin-top:28rem; }
#home .about .content .text h3 { font-size:24rem; font-weight:bold; line-height:1.8; }
#home .about .content .text p { line-height:1.8; margin-top:40rem; }

@media (max-width:780px) {      /* MOBILE */
    #home .about .LPContentBox { padding-bottom:35rem; }
    #home .about .videoBox { margin-bottom:80rem; }
    #home .about .content .illust { width:270rem; margin-top:25rem; }
}

#home .message { background:var(--color-gray5); }
#home .message .LPSlider { display:flex; }
#home .message .LPSlider .viewer { width:1030rem; }
#home .message .LPSlider .items { width:100%; white-space:nowrap; }
#home .message .LPSlider .items .item { display:inline-block; width:calc(100% / 3); padding:0 10rem; }
#home .message .LPSlider .items .item .thumb { aspect-ratio:330 / 203; }
#home .message .LPSlider .items .item .thumb img { height:100%; }
#home .message .LPSlider .items .item .thumb img { height:100%; }
#home .message .LPSlider .arrows { position:absolute; top:77rem; width:57rem; cursor:pointer; }
#home .message .LPSlider .arrows.prev { left:0; }
#home .message .LPSlider .arrows.next { right:0; }
#home .message .LPSlider .arrows2 { display:flex; column-gap:8rem; }
#home .message .LPSlider .arrows2 > * { width:40rem; cursor:pointer; }
#home .message .text { font-size:16rem; line-height:1.4; margin-top:14rem; white-space:normal; }
@media (max-width:780px) {      /* MOBILE */
    #home .message .LPContentBox { padding-left:0; padding-right:0; }
    #home .message .sectionTitle { letter-spacing:0.1em; }
    #home .message .LPSlider .viewer { width:calc(203 / 390 * 100%); margin:0 auto; }
    #home .message .LPSlider .items .item { width:100%; padding:0 6rem; }
    #home .message .LPSlider .items .item .thumb { aspect-ratio:1 / 1; }
}

#recruitment section.LPUnderFV { height:400rem; margin-bottom:30rem; }
#recruitment section.LPUnderFV figure { height:400rem; }
#recruitment .recruitDetails .title { font-size:28rem; letter-spacing:0.1em; }
#recruitment .summary .detail { width:35%; text-align:left; letter-spacing:0.1em; }
#recruitment .summary .detail dl + dl { margin-top:6rem; }
#recruitment .summary .detail dt { width:6em; }
#recruitment .summary .detail dd { width:calc(100% - 6em); }
#recruitment .summary .categories { width:65%; display:flex; justify-content:flex-end; align-items:flex-end; gap:5rem; padding-left:20rem; }
#recruitment .summary .categories > * { height:28rem; padding:0 28rem; display:flex; border:1px solid #989898; background:#F9F9F9; border-radius:14rem; }
#recruitment .about .title { font-size:24rem; margin-bottom:32rem; letter-spacing:0.1em; }
#recruitment .about .items { display:flex; justify-content:flex-start; align-items:stretch; font-size:18rem; font-weight:bold; }
#recruitment .about .items > * { display:flex; padding:0 5rem 10rem; }
#recruitment .about .items .border { display:flex; flex-direction:column; width:100%; height:200rem; border:1rem solid var(--color-gray); border-radius:28rem; color:var(--color-gray); padding:0 20rem; }
#recruitment .about .items .border.directionRow { flex-direction:row; }
#recruitment .about .items .border.directionRow .data { margin-left:40rem; margin-top:0; }
#recruitment .about .items .colmn1x4 { width:25%; }
#recruitment .about .items .colmn2x4 { width:50%; }
#recruitment .about .items .illust { font-family:'Material Icons Outlined'; font-size:60rem; height:60rem; display:flex; font-weight:normal; color:#525151; }
#recruitment .about .items .heading { font-size:18rem; line-height:21rem; margin-top:2rem; letter-spacing:0.1em; }
#recruitment .about .items .data { font-size:20rem; line-height:26rem; margin-top:12rem; font-weight:900; letter-spacing:0.1em; }
#recruitment .about .items .data .valueList { display:flex; gap:0 20rem; margin-top:10rem; line-height:22rem; }
#recruitment .about .items .large { font-size:40rem; }
#recruitment .about .items .small { font-size:14rem; }
#recruitment .about .items table { text-align:right; line-height:22rem; }
#recruitment .about .items table th { font-size:11rem; }
#recruitment .about .items table td { padding-left:13rem; }
#recruitment .messages dl { text-align:left; letter-spacing:0.1em; line-height:26rem; }
#recruitment .messages dl + dl { margin-top:32rem; }
#recruitment .messages dt { width:11em; font-weight:bold; color:var(--color-blue); }
#recruitment .messages dd { width:calc(100% - 11em); }
#recruitment .gallery .items { gap:12rem; }
#recruitment .gallery .items > * { width:calc((100% + 12rem) / 3 - 12rem); }
#recruitment .gallery .items figure { aspect-ratio:350 / 250; }
#recruitment .jobInfo dl { text-align:left; letter-spacing:0.1em; line-height:30rem; padding-bottom:32rem; border-bottom:1rem solid var(--color-bgray1); }
#recruitment .jobInfo dl + dl { margin-top:32rem; }
#recruitment .jobInfo dt { width:256rem; padding-left:28rem; font-weight:bold; color:var(--color-blue); }
#recruitment .jobInfo dd { padding-right:28rem; }
#recruitment .jobInfo .large { font-size:24rem; }
@media (max-width:780px) {      /* MOBILE */
    #recruitment section.LPUnderFV .LPContentBox{ padding:0; }
    #recruitment .recruitDetails .title { font-size:20rem; line-height:25rem; padding:0 14rem; color:var(--color-blue); }
    #recruitment .summary .detail { width:100%; }
    #recruitment .summary .detail dt { width:92rem; }
    #recruitment .summary .detail dd { width:calc(100% - 92rem); }
    #recruitment .summary .categories { width:100%; justify-content:flex-start; align-items:flex-start; padding-left:0; margin-top:20rem; gap:15rem 5rem; }
    #recruitment .about .LPContentBox { padding-left:15rem; padding-right:15rem; }
    #recruitment .about .title { font-size:20rem; line-height:30rem; margin-bottom:16rem; text-align:center; }
    #recruitment .about .items { font-size:16rem; }
    #recruitment .about .items .border { padding:0 10rem; }
    #recruitment .about .items .border.directionRow .data { margin-left:20rem; }
    #recruitment .about .items .colmn1x4 { width:50%; }
    #recruitment .about .items .colmn2x4 { width:100%; }
    #recruitment .about .items .heading { font-size:16rem; margin-top:6rem; }
    #recruitment .about .items table td { padding-left:12rem; }
    #recruitment .messages dl + dl { margin-top:24rem; }
    #recruitment .messages dt { width:100%; }
    #recruitment .messages dd { width:100%; }
    #recruitment .gallery .items { gap:6rem; justify-content:flex-start; }
    #recruitment .gallery .items > * { width:calc((100% + 6rem) / 2 - 6rem); }
    #recruitment .jobInfo .LPContentBox { padding-bottom:20rem; }
    #recruitment .jobInfo dl { display:block; font-size:18rem; font-weight:500; color:var(--color-gray); padding-bottom:18rem; border-color:var(--color-gray); }
    #recruitment .jobInfo dl + dl { margin-top:18rem; }
    #recruitment .jobInfo dt { width:100%; padding-left:0; color:var(--color-gray); }
    #recruitment .jobInfo dd { padding-right:0; padding-left:1em; }
    #recruitment .jobInfo .large { font-size:20rem; }
}



@media (max-width:1280px) {     /* PC(Minimam) */
    html[data-page-id=lp] { font-size:1px; }
}
@media (max-width:780px) {      /* MOBILE */
    html[data-page-id=lp]{ font-size:calc(1 / 390 * 100vw); }
}
#lp section .LPWPContent .content { margin-top:0; }
/* #lp section .LPWPContent .content figure { margin-top:0; margin-bottom:0; } */
