/* Scoped to the native Elementor HOME. Existing public PHP HOME is untouched. */
.pl-native-section{max-width:100%;box-sizing:border-box}.pl-native-section .elementor-widget-heading .elementor-heading-title{font-family:"Noto Serif JP",serif;font-weight:400;color:#17132d;line-height:1.65}.pl-native-section .elementor-widget-text-editor{color:#77708e;line-height:2}.pl-native-section .pl-label{font:500 12px Outfit,sans-serif;letter-spacing:.2em;color:#8570b1}.pl-native-section .pl-kicker{font:500 12px Outfit,sans-serif;letter-spacing:.2em;color:#8570b1}.pl-native-hero .pl-hero-mobile{display:none}.pl-native-hero .elementor-widget-image img{width:100%;height:auto;display:block}.pl-native-hero .pl-hero-bottom{text-align:center;padding:52px 20px 70px}.pl-native-hero .pl-hero-lead{font-size:17px}.pl-native-buttons{display:flex;flex-direction:row;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:24px}.pl-native-buttons .elementor-button{min-width:260px;padding:18px 24px;border-radius:40px;background:#785be2;color:#fff}.pl-native-buttons .pl-secondary .elementor-button{background:#fff;border:1px solid #e0d9ed;color:#272139}.pl-native-about,.pl-native-join,.pl-native-philosophy{padding:100px max(6%,calc((100% - 1140px)/2))}.pl-native-two{display:flex;flex-direction:row;gap:7%;align-items:start}.pl-native-two>.e-con{flex:1;min-width:0}.pl-native-about .elementor-heading-title{font-size:clamp(28px,3.3vw,52px)}.pl-native-about .pl-about-right .elementor-heading-title{font-family:"Noto Sans JP",sans-serif;font-size:22px}.pl-native-join{background:#faf8ff}.pl-native-join-cards{margin-top:46px;gap:22px}.pl-native-contact-card{background:#fff;border:1px solid #e8e1f2;border-radius:22px;padding:30px}.pl-native-contact-card .elementor-heading-title{font-size:26px}.pl-native-contact-card .elementor-button{background:transparent;color:#71569b;padding:0}.pl-native-philosophy{background:#f8f5fc}.pl-native-philosophy .elementor-heading-title{font-size:clamp(27px,3vw,44px)}.pl-native-ending{text-align:center;margin-top:90px}.pl-native-ending .elementor-heading-title{font-size:clamp(27px,3vw,42px)}.pl-native-dynamic{width:100%}.pl-native-dynamic .elementor-widget-shortcode{width:100%}@media(max-width:767px){.pl-native-hero .pl-hero-pc{display:none}.pl-native-hero .pl-hero-mobile{display:block}.pl-native-hero .pl-hero-bottom{padding:30px 6% 55px}.pl-native-hero .pl-hero-lead{font-size:14px}.pl-native-two{flex-direction:column;gap:30px}.pl-native-about,.pl-native-join,.pl-native-philosophy{padding:65px 7%}.pl-native-buttons{flex-direction:column;align-items:center}.pl-native-buttons .elementor-widget-button,.pl-native-buttons .elementor-button{width:100%;max-width:360px}.pl-native-join-cards{gap:16px}}


/* Integrated confirmed WordPress Additional CSS — 2026-10-13 */

/* Palace Luna HOME Elementor visual restoration. Scoped to HOME sections. */
.pl-native-section{color:#17132a;box-sizing:border-box}
.pl-native-section *, .pl-native-section *::before,.pl-native-section *::after{box-sizing:border-box}
.pl-native-section .elementor-heading-title{color:#17132a;font-family:'Noto Serif JP',serif;font-weight:500}
.pl-native-section .elementor-widget-text-editor{font-family:'Noto Sans JP',sans-serif;color:#6f6a7f}
.pl-native-section .pl-label,.pl-native-section .pl-kicker{font-family:'Outfit',sans-serif!important;letter-spacing:.2em;font-size:11px}
.pl-native-section .pl-label p,.pl-native-section .pl-kicker p{margin:0}
.pl-native-two{display:flex;flex-direction:row;gap:42px;align-items:flex-start}
.pl-native-two>.e-con{min-width:0;flex:1 1 0;width:0}
.pl-native-about .pl-native-two .elementor-heading-title,.pl-native-join .pl-native-two .elementor-heading-title{overflow-wrap:normal;word-break:normal}
.pl-native-hero .pl-hero-pc{display:block}.pl-native-hero .pl-hero-mobile{display:none}
.pl-native-hero .pl-hero-pc img,.pl-native-hero .pl-hero-mobile img{display:block;width:100%;height:auto}
.pl-hero-lead{text-align:center}
.pl-native-buttons{display:flex;flex-direction:row;justify-content:center;gap:14px}
.pl-native-buttons .elementor-button{border-radius:999px;padding:17px 34px}
.pl-native-buttons .pl-primary .elementor-button{background:linear-gradient(100deg,#8057db,#5f83dc)!important;color:#fff!important}
.pl-native-buttons .pl-secondary .elementor-button{background:#fff!important;border:1px solid #e6e0ef;color:#17132a!important}
.pl-native-contact-card{border:1px solid #ece6f4;border-radius:22px}
.pl-native-contact-card .elementor-button{background:transparent!important;color:#7c54d9!important;padding:0!important}
.pl-native-philosophy{background:#151326;color:#fff}
.pl-native-philosophy .elementor-heading-title,.pl-native-philosophy .pl-native-ending .elementor-heading-title{color:#fff!important}
.pl-native-philosophy .elementor-widget-text-editor{color:#d6d0e4}
@media(max-width:767px){
 .pl-native-two,.pl-native-join-cards{flex-direction:column!important;gap:22px!important}
 .pl-native-two>.e-con{width:100%!important;flex:0 0 auto!important;min-width:0!important;max-width:100%!important}
 .pl-native-section{padding-left:20px!important;padding-right:20px!important}
 .pl-native-hero{padding-left:0!important;padding-right:0!important}
 .pl-native-hero .pl-hero-pc{display:none!important}.pl-native-hero .pl-hero-mobile{display:block!important}
 .pl-native-buttons{flex-direction:column!important;align-items:stretch!important;gap:12px!important}
 .pl-native-buttons .elementor-button{width:100%}
 .pl-native-about .elementor-heading-title,.pl-native-join .elementor-heading-title{max-width:100%;overflow-wrap:break-word}
 .pl-native-contact-card{width:100%!important}
}
/* Elementor内のSUPPORTERS画像を元HOMEと同じ表示にする */
.elementor .talent-image img {
    height: 100%;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    object-position: center bottom;
}
/* スマホのみリード文の幅制限を解除 */
@media (max-width: 700px) {
    .section-heading > p {
        width: 100%;
        max-width: none;
        line-height: 1.85;
    }
}
/* JOINカード見出し：スマホ表示 */
@media (max-width: 767px) {
  #join .pl-native-contact-card .elementor-heading-title {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0;
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
  }
}
/* PHILOSOPHY 最後のキャッチコピー */
.elementor-200 .pl-philosophy-final-title .elementor-heading-title {
    font-family: "Noto Serif JP", "Noto Sans JP", serif !important;
    font-size: clamp(30px, 5vw, 70px) !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.05em !important;
    color: #ffffff !important;
    margin: 12px 0 !important;
}

/* HOME PROJECT: editable Elementor widgets, scoped to the new PROJECT section. */
.pl-native-project{background:#faf7ff;padding:100px max(5vw,24px);color:#17132a}
.pl-native-project .pl-project-layout{display:flex;flex-direction:row;gap:clamp(45px,7vw,120px);align-items:flex-start;max-width:1200px;margin:0 auto}
.pl-native-project .pl-project-intro{flex:0 1 40%;min-width:0}
.pl-native-project .pl-project-list{flex:1 1 60%;min-width:0}
.pl-native-project .pl-project-main-title .elementor-heading-title{font-family:'Noto Serif JP',serif;font-weight:500;font-size:clamp(32px,3.3vw,54px);line-height:1.55;letter-spacing:-.035em;color:#17132a}
.pl-native-project .pl-project-intro-text{font-size:14px;line-height:2;color:#6f6a7f;max-width:440px}
.pl-native-project .pl-project-item{display:flex;flex-direction:row;align-items:flex-start;gap:clamp(18px,3vw,55px);border-top:1px solid #e5deed;padding:36px 0;position:relative}
.pl-native-project .pl-project-item:last-child{border-bottom:1px solid #e5deed}
.pl-native-project .pl-project-no{flex:0 0 32px;font-family:Outfit,sans-serif;font-size:11px;color:#a092b4}
.pl-native-project .pl-project-card-content{flex:1 1 auto;min-width:0}
.pl-native-project .pl-project-card-title .elementor-heading-title{font-family:'Noto Serif JP',serif;font-size:clamp(24px,2.1vw,34px);font-weight:400;line-height:1.3;color:#17132a}
.pl-native-project .pl-project-description{font-size:13px;line-height:1.95;color:#6f6a7f}
.pl-native-project .pl-project-arrow{display:none}
.pl-native-project .pl-project-detail-link .elementor-button{background:transparent!important;color:#8057db!important;padding:8px 0!important;font-size:12px;border:0!important;text-align:left}
.pl-native-project .pl-project-no p,.pl-native-project .pl-project-arrow p,.pl-native-project .pl-project-description p{margin:0}
@media(max-width:767px){
 .pl-native-project{padding:65px 20px!important}
 .pl-native-project .pl-project-layout{flex-direction:column!important;gap:30px!important}
 .pl-native-project .pl-project-intro,.pl-native-project .pl-project-list{width:100%!important;flex:0 0 auto!important}
 .pl-native-project .pl-project-main-title .elementor-heading-title{font-size:clamp(29px,7vw,38px)}
 .pl-native-project .pl-project-item{gap:14px;padding:25px 0}
 .pl-native-project .pl-project-card-title .elementor-heading-title{font-size:26px}
 .pl-native-project .pl-project-no{flex-basis:24px}
}

/* v3.1.6: consolidated PROJECT styling from verified Additional CSS. */
.pl-native-project .pl-project-item {padding-top:10px!important;padding-bottom:10px!important}
.pl-native-project .pl-project-item .elementor-widget {margin-bottom:0!important}
.pl-native-project .pl-project-item:last-child {padding-bottom:28px!important}
.pl-native-project .pl-project-card .elementor-heading-title,
.pl-native-project .pl-project-card-title .elementor-heading-title {color:#8059e8!important}
/* Elementor HOME primary H2 headings; shortcode headings are handled in style.css. */
body.home .elementor-widget-heading h2.elementor-heading-title {
 color:#8059e8!important;font-size:36px!important;line-height:1.4!important;font-weight:400
}
@media(min-width:1025px){
 .pl-native-project .elementor-heading-title{max-width:100%}
 .pl-native-project .pl-project-intro{min-width:0}
 .pl-native-project .pl-project-intro .elementor-widget-heading{width:100%;max-width:100%}
}
@media(min-width:768px) and (max-width:1024px){
 body.home .elementor-widget-heading h2.elementor-heading-title{font-size:30px!important}
}
@media(max-width:767px){
 body.home .elementor-widget-heading h2.elementor-heading-title{font-size:27px!important}
 .pl-native-project .pl-project-item{padding-top:8px!important;padding-bottom:8px!important}
 .pl-native-project .pl-project-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;align-items:stretch;row-gap:16px!important}
 .pl-native-project .pl-project-card{width:100%!important;min-width:0;justify-content:flex-start!important;gap:4px!important;padding:12px 8px!important;overflow-wrap:anywhere}
 .pl-native-project .pl-project-card .elementor-heading-title{font-size:16px!important;line-height:1.3!important;overflow-wrap:anywhere}
 .pl-native-project .pl-project-card .elementor-widget{margin-bottom:0!important}
}
