@charset "utf-8";
@charset "utf-8";
@charset "UTF-8";
@charset "UTF-8";
html {
box-sizing: border-box;
-webkit-text-size-adjust: 100%; word-break: normal;
-moz-tab-size: 4;
tab-size: 4;
}
*,
::before,
::after {
background-repeat: no-repeat; box-sizing: inherit;
}
::before,
::after {
text-decoration: inherit; vertical-align: inherit;
}
* {
padding: 0; margin: 0;
} hr {
overflow: visible; height: 0; color: inherit; }
details,
main {
display: block; }
summary {
display: list-item; }
small {
font-size: 80%; }
[hidden] {
display: none; }
abbr[title] {
border-bottom: none;  text-decoration: underline;
text-decoration: underline dotted;
}
a {
background-color: transparent; }
a:active,
a:hover {
outline-width: 0; }
code,
kbd,
pre,
samp {
font-family: monospace, monospace; }
pre {
font-size: 1em; }
b,
strong {
font-weight: bolder; } sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
table {
border-color: inherit; text-indent: 0; }
iframe {
border-style: none;
} input {
border-radius: 0;
}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
height: auto; }
[type='search'] {
-webkit-appearance: textfield; outline-offset: -2px; }
[type='search']::-webkit-search-decoration {
-webkit-appearance: none; }
textarea {
overflow: auto; resize: vertical; }
button,
input,
optgroup,
select,
textarea {
font: inherit; }
optgroup {
font-weight: bold; }
button {
overflow: visible; }
button,
select {
text-transform: none; } button,
[type='button'],
[type='reset'],
[type='submit'],
[role='button'] {
cursor: pointer;
} button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
border-style: none;
padding: 0;
} button:-moz-focusring,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
outline: 1px dotted ButtonText;
}
button,
html [type='button'], [type='reset'],
[type='submit'] {
-webkit-appearance: button; } button,
input,
select,
textarea {
background-color: transparent;
border-style: none;
}
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
outline-width: 0;
} select {
-moz-appearance: none; -webkit-appearance: none; }
select::-ms-expand {
display: none; }
select::-ms-value {
color: currentColor; }
legend {
border: 0; color: inherit; display: table; max-width: 100%; white-space: normal; }
::-webkit-file-upload-button { -webkit-appearance: button;
color: inherit;
font: inherit; } [disabled] {
cursor: default;
} img {
border-style: none; } progress {
vertical-align: baseline;
}  [aria-busy='true'] {
cursor: progress;
} [aria-controls] {
cursor: pointer;
} [aria-disabled='true'] {
cursor: default;
}



        *:first-child+html body {
font-size: 75%;
} * html body {
font-size:75%;
} .fNormal  { font-weight: normal;}
.fBold   { font-weight: bold;}
.fItalic { font-style: italic;}
.fSSS { font-size: 70%;}
.fSS  { font-size: 78%;} .fS   { font-size: 85%;} .fM   { font-size: 100%;}
.fL   { font-size: 115%;} .fLL  { font-size: 130%;} .fLLL { font-size: 143%;} .fLLLL { font-size: 200%;}
sup {
font-size: 78%;
vertical-align: top;
}
sub {
font-size: 78%;
vertical-align: baseline;
} .txtColor1 {
color: #137539;
}
.txtColor2 {
color: #f0c21f;
}
.txtColor3 {
color: #fe0000;
}
.txtColor4 {}
.txtColor5 {}
.fRed {
color: #cc0000;
}
.fGray {
color: #999999;
}
a {
color: #FF86A0;
text-decoration: none;
outline: none;
}
a:hover { } .mt00 { margin-top:  0 !important;}
.mt05 { margin-top:  5px!important;}
.mt10 { margin-top: 10px!important;}
.mt12 { margin-top: 12px!important;}
.mt15 { margin-top: 15px!important;}
.mt20 { margin-top: 20px!important;}
.mt25 { margin-top: 25px!important;}
.mt30 { margin-top: 30px!important;}
.mt35 { margin-top: 35px!important;}
.mt40 { margin-top: 40px!important;}
.mt45 { margin-top: 45px!important;}
.mt50 { margin-top: 50px!important;}
.mr00 { margin-right:  0px !important;}
.mr05 { margin-right:  5px!important;}
.mr10 { margin-right: 10px!important;}
.mr12 { margin-right: 12px!important;}
.mr15 { margin-right: 15px!important;}
.mr20 { margin-right: 20px!important;}
.mr25 { margin-right: 25px!important;}
.mr30 { margin-right: 30px!important;}
.mr35 { margin-right: 35px!important;}
.mr40 { margin-right: 40px!important;}
.mr45 { margin-right: 45px!important;}
.mr50 { margin-right: 50px!important;}
.mb00 { margin-bottom:  0 !important;}
.mb05 {
margin-bottom: 5px;
background-repeat: no-repeat;
}
.mb10 { margin-bottom: 10px!important;}
.mb12 { margin-bottom: 12px!important;}
.mb15 { margin-bottom: 15px!important;}
.mb20 { margin-bottom: 20px!important;}
.mb25 { margin-bottom: 25px!important;}
.mb30 { margin-bottom: 30px!important;}
.mb35 { margin-bottom: 35px!important;}
.mb40 { margin-bottom: 40px!important;}
.mb45 { margin-bottom: 45px!important;}
.mb50 { margin-bottom: 50px!important;}
.ml00 { margin-left:  0 !important;}
.ml05 { margin-left:  5px;}
.ml10 { margin-left: 10px;}
.ml12 { margin-left: 12px;}
.ml15 { margin-left: 15px;}
.ml20 { margin-left: 20px;}
.ml25 { margin-left: 25px;}
.ml30 { margin-left: 30px;}
.ml30 { margin-left: 35px;}
.ml40 { margin-left: 40px;}
.ml45 { margin-left: 45px;}
.ml50 { margin-left: 50px;} .pt00 { padding-top:   0 !important;}
.pt05 { padding-top:  5px;}
.pt10 { padding-top: 10px;}
.pt12 { padding-top: 12px;}
.pt15 { padding-top: 15px;}
.pt20 { padding-top: 20px;}
.pt25 { padding-top: 25px;}
.pt30 { padding-top: 30px;}
.pt35 { padding-top: 35px;}
.pt40 { padding-top: 40px;}
.pt45 { padding-top: 45px;}
.pt50 { padding-top: 50px;}
.pr00 { padding-right:   0 !important;}
.pr05 { padding-right:  5px;}
.pr10 { padding-right: 10px;}
.pr12 { padding-right: 12px;}
.pr15 { padding-right: 15px;}
.pr20 { padding-right: 20px;}
.pr25 { padding-right: 25px;}
.pr30 { padding-right: 30px;}
.pr35 { padding-right: 35px;}
.pr40 { padding-right: 40px;}
.pr45 { padding-right: 45px;}
.pr50 { padding-right: 50px;}
.pb00 { padding-bottom:   0 !important;}
.pb05 { padding-bottom:  5px;}
.pb10 { padding-bottom: 10px;}
.pb12 { padding-bottom: 12px;}
.pb15 { padding-bottom: 15px;}
.pb20 { padding-bottom: 20px;}
.pb25 { padding-bottom: 25px;}
.pb30 { padding-bottom: 30px;}
.pb35 { padding-bottom: 35px;}
.pb40 { padding-bottom: 40px;}
.pb45 { padding-bottom: 45px;}
.pb50 { padding-bottom: 50px;}
.pl00 { padding-left:   0 !important;}
.pl05 { padding-left:  5px;}
.pl10 { padding-left: 10px;}
.pl12 { padding-left: 12px;}
.pl15 { padding-left: 15px;}
.pl20 { padding-left: 20px;}
.pl25 { padding-left: 25px;}
.pl30 { padding-left: 30px;}
.pl30 { padding-left: 35px;}
.pl40 { padding-left: 40px;}
.pl45 { padding-left: 45px;}
.pl50 { padding-left: 50px;} .inlineL { text-align: left;}
.inlineC { text-align: center;}
.inlineR { text-align: right;} .vlineT { vertical-align: top;}
.vlineM { vertical-align: middle;}
.vlineB { vertical-align: bottom;} .wHalf  { width: 48%;}
.wTri   { width: 33%;}
.wQuart { width: 24%;}
.wFull  { width: 99.9%;}
.wMax   { width: 100%;} .tw03 { width:  3%;}
.tw05 { width:  5%;}
.tw10 { width: 10%;}
.tw13 { width: 13%;}
.tw15 { width: 15%;}
.tw20 { width: 20%;}
.tw25 { width: 25%;}
.tw30 { width: 30%;}
.tw35 { width: 35%;}
.tw40 { width: 40%;}
.tw45 { width: 45%;}
.tw50 { width: 50%;} .fltL {
display: inline;
float: left;
}
.fltR {
display: inline;
float: right;
}
.ft {
overflow: hidden;
zoom: 1;
} .imgBoxL,
.imgBoxR {
display: block;
min-height: 1%;
}
.imgBoxL:after,
.imgBoxR:after {
clear: both;
content:".";
display: block;
height: 0;
visibility: hidden;
}
* html .imgBoxL,
* html .imgBoxR {
height: 1%;/*\*//*/height: auto;
overflow: hidden;/**/}
.imgBoxL .fltImg {
display: inline;
float: left;
margin-right: 10px;
}
.imgBoxR .fltImg {
display: inline;
float: right;
margin-left: 10px;
} .clearfix {
display: block;
min-height: 1%;
}
.clearfix:after {
clear: both;
content:".";
display: block;
height: 0;
visibility: hidden;
}
* html .clearfix {
height: 1%;/*\*//*/height: auto;
overflow: hidden;/**/} .blockC { text-align: center;}
.blockC .block {
margin-right: auto;
margin-left: auto;
text-align: left;
} * html .blockC .block {
margin-right: 0;
margin-left: 0;
}
.blockL { text-align: left;}
.blockR { text-align: right;}
.blockR .block {
margin-left: auto;
text-align: left;
} * html .blockR .block {
margin-left: 0;
} .clear { 
clear: both;
}
.block  { display: block;}
.inline { display: inline;}
.hide   { display: none;}
.nobg {
background: none;
}
.underLine { text-decoration: underline;}
.noLine    { text-decoration: none;} .edsmark { border: 2px solid #9966CC; padding: 10px; text-align: center; background-color: #FF99FF; color: #FFF;} .w100{width: 100%;}
.w90{width:90%;}
.w80{width:80%;}
.w70{width:70%;}
.w60{width:60%;}
.w50{width:50%;}
.w40{width:40%;}
.w30{width:30%;}
.w20{width:20%;}
.w10{width:10%;}
@media screen and (max-width: 768px){
.tw100{width:100%;	margin: 0 auto;		display: block;}
.tw90{width:90%;	margin: 0 auto;		display: block;}
.tw80{width:80%;	margin: 0 auto;		display: block;}
.tw70{width:70%;	margin: 0 auto;		display: block;}
.tw60{width:60%;	margin: 0 auto;		display: block;}
.tw50{width:50%;	margin: 0 auto;		display: block;}
.tw40{width:40%;	margin: 0 auto;		display: block;}
.tw30{width:30%;	margin: 0 auto;		display: block;}
.tw20{width:20%;	margin: 0 auto;		display: block;}
.tw10{width:10%;	margin: 0 auto;		display: block;}
} @media screen and (max-width: 480px){
.sw100{width:100%;	margin: 0 auto;		display: block;}
.sw90{width:90%;	margin: 0 auto;		display: block;}
.sw80{width:80%;	margin: 0 auto;		display: block;}
.sw70{width:70%;	margin: 0 auto;		display: block;}
.sw60{width:60%;	margin: 0 auto;		display: block;}
.sw50{width:50%;	margin: 0 auto;		display: block;}
.sw40{width:40%;	margin: 0 auto;		display: block;}
.sw30{width:30%;	margin: 0 auto;		display: block;}
.sw20{width:20%;	margin: 0 auto;		display: block;}
.sw10{width:10%;	margin: 0 auto;		display: block;}
}  #pagetop {
position: fixed;
right: 0px;
bottom: 0px;
} .block1{margin:0 1%;}
.block2{margin:0 2%;}
.block3{margin:0 3%;}
.block4{margin:0 4%;}
.block5{margin:0 5%;}
.block6{margin:0 6%;}
.block7{margin:0 7%;}
.block8{margin:0 8%;}  .pc_none {display:none;}  .pc1L {width: 8.33%;		float: left;}
.pc2L {width: 16.66%;		float: left;}
.pc3L {width: 24.99%;		float: left;} .pc4L {width: 33.33%;		float: left;} .pc5L {width: 41.66%;		float: left;}
.pck5L {width: 20%;			float: left;} .pc6L {width: 50%;			float: left;} .pc7L {width: 58.33%;		float: left;}
.pc8L {width: 66.66%;		float: left;}
.pc9L {width: 74.99%;		float: left;}
.pc10L {width: 83.33%;	float: left;}
.pc11L {width: 91.66%;	float: left;} .pc1R {width: 8.33%;		float: right;}
.pc2R {width: 16.66%;		float: right;}
.pc3R {width: 24.99%;		float: right;} .pc4R {width: 33.33%;		float: right;} .pc5R {width: 41.66%;		float: right;}
.pck5R {width: 20%;			float: right;} .pc6R {width: 50%;			float: right;} .pc7R {width: 58.33%;		float: right;}
.pc8R {width: 66.66%;		float: right;}
.pc9R {width: 74.99%;		float: right;}
.pc10R {width: 83.33%;	float: right;}
.pc11R {width: 91.66%;	float: right;}
@media screen and (max-width: 768px){
.tb_look{display: block;} .tb_none {display:none;} .tb1 {width: 100%; margin: 0 auto ; float: none;}
.tb2 {width: 49.99%; float: left; box-sizing: border-box; padding:0 5px;}
.tb3 {width: 33.33%; float: left; box-sizing: border-box; padding:0 5px;} .tb4 {width: 24.99%; float: left; box-sizing: border-box; padding:0 5px;} } @media screen and (max-width: 480px){
.sp_look{display: block;} .sp_none {display:none;} .sp1 {width: 100%;} .sp2 {width: 49.99%; float: left; padding: 5px; box-sizing: border-box;} .sp3 {width: 33.33%; float: left; padding: 5px; box-sizing: border-box;} .sp4 {width: 24.99%; float: left; padding: 5px; box-sizing: border-box;} .spL {width: 100%;float:left;}
.spR {width: 100%;float:right;}
.spbtn {
float: none;
text-align: center;
display: block;
margin: 20px 0px;
}
}    :root { --header-h: 0px; --ff-mincho: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho",
"MS PMincho", serif; --ff-gothic: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic",
"Meiryo", system-ui, -apple-system, "Segoe UI", sans-serif; }
:root {
--headerH: 90px; } [id] {
scroll-margin-top: calc(var(--headerH) + 16px); } *,
*::before,
*::after {
box-sizing: border-box; }
html, body {
height: 100%; }
body {
margin: 0;
font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", sans-serif;
color: #1a1a1a;
background: #ffffff;
overflow-x: clip; }
a {
color: inherit;
text-decoration: none; }
img {
max-width: 100%;
height: auto;
vertical-align: middle; }
.l-container {
max-width: 1300px;
margin: 0 auto;
padding: 0 24px; }
@media (max-width: 1000px) {
.l-container {
padding: 0 5px; } } .btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
height: 44px;
padding: 0 18px;
border-radius: 999px;
border: 1px solid transparent;
font-weight: 700;
letter-spacing: .02em;
transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
white-space: nowrap; }
.btn__icon {
font-size: 16px;
line-height: 1; }
.btn--primary {
background: #209570;
color: #fff; }
.btn--primary:hover {
background: #0a6f4f;
transform: translateY(-1px); }
.btn--block {
width: 100%; } .u-pc {
display: block; }
.u-sp {
display: none !important; }
@media (max-width: 1000px) {
.u-pc {
display: none !important; }
.u-sp {
display: block !important; } } .site-header { position: fixed;
top: 0;
z-index: 1000;
background: #ffffff;
width: 100%; }
.site-header__inner {
display: flex;
align-items: center;
height: 88px;
padding: 0 24px; }
.site-header__brand {
flex: 0 0 auto; }
.brand__logo {
height: 40px;
width: auto; } .brand {
display: inline-flex;
align-items: center;
gap: 10px;
text-decoration: none;
color: inherit; } .brand__logo {
height: 60px; width: auto; } .brand__text {
font-weight: 700;
font-size: 20px;
letter-spacing: .06em;
white-space: nowrap;
line-height: 1.2; }
@media (max-width: 1000px) {
.brand__text {
font-size: 16px;
letter-spacing: .04em; } } .g-nav {
padding-left: 20px;
padding-right: 20px;
margin-left: auto; }
.g-nav__list {
display: flex;
align-items: center;
justify-content: center;
gap: 26px;
list-style: none;
padding: 0;
margin: 0; }
.g-nav__item {
position: relative; }
.g-nav__link {
display: inline-flex;
align-items: center;
gap: 10px;
height: 88px;
font-weight: 700;
font-size: 15px;
letter-spacing: .02em;
padding: 0 2px;
color: #1a1a1a; }
.g-nav__chev {
width: 10px;
height: 10px;
border-right: 2px solid #209570;
border-bottom: 2px solid #209570;
transform: rotate(45deg);
margin-top: -2px;
transition: transform .2s ease; } .g-nav__item.is-open .g-nav__chev {
transform: rotate(225deg);
margin-top: 5px; } .header-actions {
display: flex;
align-items: center;
gap: 14px; } .hamburger {
display: none;
width: 44px;
height: 44px;
border: 1px solid #e5e7eb;
background: #fff;
border-radius: 999px;
cursor: pointer;
position: relative; }
.hamburger__lines,
.hamburger__lines::before,
.hamburger__lines::after {
content: "";
position: absolute;
left: 50%;
width: 18px;
height: 2px;
background: #1a1a1a;
transform: translateX(-50%);
transition: transform .2s ease, opacity .2s ease, top .2s ease; }
.hamburger__lines {
top: 50%;
transform: translate(-50%, -50%); }
.hamburger__lines::before {
top: -6px; }
.hamburger__lines::after {
top: 6px; } .mega-overlay {
position: fixed;
inset: 88px 0 0 0;
background: rgba(0, 0, 0, 0.12);
opacity: 0;
pointer-events: none;
transition: opacity .2s ease; }
.site-header.is-mega .mega-overlay {
opacity: 1;
pointer-events: auto; }
.mega {
position: fixed;
top: 88px;
left: 0;
width: 100%; background: #f6f7f9;
border-top: 1px solid #e5e7eb;
border-bottom: 1px solid #e5e7eb;
border-left: 0;
border-right: 0;
border-radius: 0;
box-shadow: none;
opacity: 0;
pointer-events: none; transform: translateY(-6px);
transition: opacity .18s ease, transform .18s ease; }
.g-nav__item.is-open > .mega {
opacity: 1;
pointer-events: auto; }
.mega__inner {
max-width: 1300px;
margin: 18px auto;
padding: 26px;
background: #fff; display: grid;
grid-template-columns: 260px minmax(0, 1fr); gap: 24px; min-width: 0; }
.mega__lead {
padding: 8px 8px 8px 0; }
.mega__en {
margin: 0 0 8px;
font-weight: 800;
font-size: 13px;
letter-spacing: .12em;
color: #209570; }
.mega__ja {
margin: 0 0 18px;
font-size: 22px;
letter-spacing: .04em; }
.mega__more {
display: inline-flex;
align-items: center;
gap: 10px;
font-weight: 700;
color: #1a1a1a; }
.mega__more span {
color: #209570; } .mega__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 18px;
align-content: start; }
.mega-card {
display: block;
overflow: hidden;
background: #fff; }
.mega-card__thumb {
border-radius: 16px;
overflow: hidden;
background: #f6f7f9;
aspect-ratio: 16 / 10; }
.mega-card__thumb img {
width: 100%;
height: 100%;
object-fit: cover; }
.mega-card__title {
margin: 10px 0 0;
font-weight: 800;
font-size: 14px;
letter-spacing: .02em;
padding: 0 2px; } .mega__grid--list {
grid-template-columns: 1fr;
gap: 0;
border-top: 1px solid #e5e7eb; }
.mega-row {
display: block;
padding: 16px 6px;
border-bottom: 1px solid #e5e7eb;
font-weight: 700;
color: #1a1a1a; }
.mega-row:hover {
color: #209570; } .sp-drawer {
position: fixed;
top: 0;
right: 0;
width: min(420px, 92vw);
height: 100vh;
background: #fff;
z-index: 1200;
transform: translateX(110%);
transition: transform .28s ease;
overflow: auto;
-webkit-overflow-scrolling: touch; }
.sp-drawer.is-open {
transform: translateX(0); }
.sp-overlay {
position: fixed;
inset: 0;
background: rgba(0, 0, 0, 0.18);
opacity: 0;
pointer-events: none;
transition: opacity .2s ease;
z-index: 1100; }
.sp-overlay.is-open {
opacity: 1;
pointer-events: auto; }
.sp-drawer__head {
padding: 18px 18px 8px;
display: flex;
justify-content: flex-end; }
.sp-close {
width: 78px;
height: 78px;
border-radius: 999px;
border: 1px solid #e5e7eb;
background: #fff;
cursor: pointer;
display: grid;
place-items: center;
gap: 2px; }
.sp-close__icon {
font-size: 22px;
line-height: 1; }
.sp-close__text {
font-size: 12px;
color: #6b7280; }
.sp-nav {
padding: 0 0 18px; }
.sp-nav__list {
list-style: none;
margin: 0;
padding: 0 0 18px; }
.sp-nav__item {
border-top: 1px solid #e5e7eb; }
.sp-nav__link {
display: block;
padding: 18px 18px;
font-weight: 800; }
.sp-nav__item--cta {
border-top: 0;
padding: 18px; } .sp-acc__btn {
width: 100%;
background: transparent;
border: 0;
padding: 18px 18px;
font-weight: 900;
text-align: left;
display: flex;
align-items: center;
justify-content: space-between;
cursor: pointer; }
.sp-acc__chev {
width: 10px;
height: 10px;
border-right: 2px solid #209570;
border-bottom: 2px solid #209570;
transform: rotate(45deg);
transition: transform .2s ease; }
.sp-acc.is-open .sp-acc__chev {
transform: rotate(225deg); }
.sp-acc__panel {
padding: 0 18px 12px; }
.sp-acc__link {
display: block;
padding: 10px 0;
color: #1a1a1a; } @media (max-width: 1000px) {
.g-nav {
display: none; }
.header-actions .btn--primary {
display: none; }
.hamburger {
display: inline-block; }
.header-actions {
margin-left: auto; } } .is-locked {
overflow: hidden; } .c-fluid {
padding-left: 50px;
padding-right: 50px; } @media (max-width: 1500px) {
.c-fluid {
padding-left: calc(2.4489795918vw + 10.8163265306px);
padding-right: calc(2.4489795918vw + 10.8163265306px); } }
main {
padding-top: 88px; } .site-footer {
background: #e0e0e0;
color: #222; } .site-footer__inner {
max-width: 1400px;
margin: 0 auto;
padding-left: 50px;
padding-right: 50px;
display: grid;
grid-template-columns: minmax(220px, 280px) 1fr;
gap: clamp(48px, 6vw, 96px);
padding-top: clamp(64px, 8vw, 120px);
padding-bottom: clamp(56px, 7vw, 100px); }
@media (max-width: 1000px) {
.site-footer__inner {
display: block; } } .site-footer__company {
max-width: 280px; }
@media (max-width: 1000px) {
.site-footer__company {
max-width: auto;
margin: 0 auto; } } .footer-brand {
display: inline-flex;
align-items: center;
gap: 14px;
width: fit-content;
margin-bottom: 20px; }
.footer-brand__logo {
width: 56px;
height: auto; }
.footer-brand__name {
font-size: 20px;
font-weight: 700;
white-space: nowrap; }
.footer-address {
font-style: normal;
font-size: 14px;
line-height: 1.7;
margin-bottom: 24px; } .footer-contactBtn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
width: 100%;
padding: 14px 20px;
background: #209570;
color: #fff;
font-weight: 600;
border-radius: 999px;
text-decoration: none;
transition: background .2s ease; }
.footer-contactBtn:hover {
background: #1b7f5f; }
.footer-contactBtn__icon {
width: 18px;
height: 18px;
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/common/ico_mail_white.svg) no-repeat center/contain; } .footer-sitemap {
display: grid;
grid-template-columns: repeat(4, minmax(230px, 1fr));
gap: 28px 30px;
list-style: none;
padding: 0;
margin: 0; }
@media (max-width: 1000px) {
.site-footer__sitemap {
display: none; } } .sitemap-techStack {
display: grid;
gap: 18px; }
.footer-sitemap a {
color: #222;
text-decoration: none; } .footer-sitemap > li > a {
font-size: 18px;
font-weight: 600;
display: inline-block;
margin-bottom: 10px; } .footer-sitemap > li > ul > li > a {
font-size: 16px; } .footer-sitemap > li > ul > li > ul {
margin-top: 8px;
padding-left: 0;
list-style: none; }
.footer-sitemap > li > ul > li > ul > li {
position: relative;
padding-left: 1.1em;
margin-bottom: 6px; }
.footer-sitemap > li > ul > li > ul > li::before {
content: "・";
position: absolute;
left: 0;
top: 0;
line-height: 1.6;
opacity: .9; }
.footer-sitemap > li > ul > li > ul > li > a {
font-size: 14px; } .sitemap-parent {
font-size: 18px;
font-weight: 600;
display: inline-block;
margin-bottom: 10px;
color: #222;
text-decoration: none; } .sitemap-children > li > a {
font-size: 16px;
color: #222;
text-decoration: none; } .sitemap-children > li > ul > li {
position: relative;
padding-left: 1.1em;
margin-bottom: 6px; }
.sitemap-children > li > ul > li::before {
content: "・";
position: absolute;
left: 0;
top: 0;
line-height: 1.6;
opacity: .9; }
.sitemap-children > li > ul > li > a {
font-size: 14px; } .sitemap-children,
.sitemap-children ul {
list-style: none;
padding-left: 0;
margin: 0; }
.sitemap-children li {
margin-bottom: 6px; }
@media (max-width: 1400px) {
.footer-sitemap {
grid-template-columns: repeat(2, minmax(230px, 1fr)); } } .footer-sitemap ul {
list-style: none;
padding-left: 0;
margin: 0; }
.footer-sitemap ul li {
margin-bottom: 6px; }
.footer-note {
font-size: 12px;
color: #555; } .footer-sitemap__singleRow {
display: flex;
flex-wrap: wrap;
gap: 14px 22px;
list-style: none;
padding: 0;
margin: 28px 0 0; }
.footer-sitemap__singleRow a {
font-size: 14px;
color: #222;
text-decoration: none; }
.footer-sitemap__singleRow a:hover {
text-decoration: underline; } .site-footer__copyright {
background: #000;
color: #fff;
text-align: center;
font-size: 12px;
padding: 18px 0; } @media (max-width: 900px) {
.site-footer__inner {
grid-template-columns: 1fr;
gap: 44px; } }  .c-common_kv {
padding: clamp(22px, 3vw, 40px) 0 clamp(18px, 2.4vw, 32px);
max-width: 1400px;
margin-left: auto;
margin-right: auto;
padding: 20px;
margin-bottom: clamp(40px, 2.4vw, 80px); }
.c-lower_kv02__inner {
display: grid;
grid-template-columns: minmax(320px, 1fr) minmax(380px, 660px);
gap: clamp(18px, 3vw, 36px);
align-items: center; } .c-lower_kv02__textarea {
padding: clamp(6px, 1vw, 10px) 0; }
.c-lower_kv02__parent {
margin: 0 0 10px;
font-size: clamp(13px, 1.2vw, 15px);
font-weight: 700;
letter-spacing: 0.04em;
color: #1e73be; }
.c-lower_kv02__title {
margin: 0;
font-size: clamp(26px, 3.2vw, 44px);
line-height: 1.25;
font-weight: 800;
letter-spacing: 0.02em;
color: #111; } .c-lower_kv02__img {
margin: 0; }
.c-lower_kv02__img img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 16 / 8; object-fit: cover;
border-radius: 16px; } @media (max-width: 800px) {
.c-lower_kv02__inner {
grid-template-columns: 1fr; } .c-lower_kv02__img {
order: 1; }
.c-lower_kv02__textarea {
order: 2; }
.c-lower_kv02__img img {
border-radius: 14px; } } .c-lower_kv02__inner.-noimg {
grid-template-columns: 1fr; }
.c-lower_kv02__date {
margin: 14px 0 0;
font-size: 14px;
color: #666;
letter-spacing: 0.02em; } .p-newsSingle {
padding: clamp(28px, 4vw, 48px) 0 clamp(56px, 6vw, 96px); }
.p-newsSingle__content {
max-width: 1000px;
margin-left: auto;
margin-right: auto; }
.p-newsSingle__back {
margin-top: clamp(30px, 5vw, 56px); } .p-newsArchive {
padding: clamp(28px, 4vw, 48px) 0 clamp(56px, 6vw, 96px); }
.p-newsList {
list-style: none;
margin: 0;
padding: 0;
border-top: 1px solid rgba(0, 0, 0, 0.08); }
.p-newsList__item {
border-bottom: 1px solid rgba(0, 0, 0, 0.08); }
.p-newsList__link {
display: grid;
grid-template-columns: 120px 1fr;
gap: 18px;
align-items: center;
padding: 16px 0;
text-decoration: none;
color: inherit; }
.p-newsList__date {
font-size: 14px;
color: #666;
letter-spacing: .02em;
white-space: nowrap; }
.p-newsList__title {
font-size: 16px;
font-weight: 600;
line-height: 1.6; }
.p-newsList__link:hover .p-newsList__title {
text-decoration: underline; }
@media (max-width: 800px) {
.p-newsList__link {
grid-template-columns: 1fr;
gap: 6px;
padding: 14px 0; } } .c-pagination {
margin-top: clamp(28px, 4vw, 44px); }
.c-pagination .page-numbers {
list-style: none;
display: flex;
gap: 10px;
justify-content: center;
margin: 0;
padding: 0; }
.c-pagination .page-numbers li {
margin: 0;
padding: 0; }
.c-pagination .page-numbers a,
.c-pagination .page-numbers span {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 42px;
height: 42px;
padding: 0 12px;
border: 1px solid rgba(0, 0, 0, 0.18);
border-radius: 999px;
text-decoration: none;
color: inherit;
font-weight: 600; }
.c-pagination .page-numbers .current {
border-color: rgba(0, 0, 0, 0.45); }
.c-pagination .page-numbers a:hover {
border-color: rgba(0, 0, 0, 0.45); } .p-404 {
padding: clamp(40px, 6vw, 80px) 0 clamp(80px, 8vw, 120px);
text-align: center; }
.p-404__lead {
font-size: clamp(20px, 2vw, 24px);
font-weight: 700;
margin-bottom: 18px; }
.p-404__text {
font-size: 15px;
line-height: 1.8;
color: #666; }
.p-404__btn {
margin-top: clamp(30px, 5vw, 50px); } .c-pageTop {
position: fixed;
right: 24px;
bottom: 24px;
z-index: 1000;
opacity: 0;
pointer-events: none;
transition: opacity .3s ease; }
.c-pageTop.is-show {
opacity: 1;
pointer-events: auto; }
.c-pageTop__link {
display: flex;
align-items: center;
justify-content: center;
width: 56px;
height: 56px;
border-radius: 50%;
background: #209570;
color: #fff;
font-size: 18px;
font-weight: 700;
text-decoration: none;
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
transition: .3s ease; }
.c-pageTop__link:hover {
transform: translateY(-4px);
box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2); }
html {
scroll-behavior: smooth; } .p-newsSingle__back {
margin-top: clamp(30px, 5vw, 56px);
text-align: center; }
.c-btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 0 28px;
border-radius: 999px;
font-weight: 600;
text-decoration: none;
transition: .3s ease; }
.c-btn--outline {
border: 1px solid #209570;
color: #209570; }
.c-btn--outline:hover {
background: #209570;
color: #fff; } .p-newsSingle__content .c-wysiwyg img {
max-width: 100%;
height: auto;
margin: 2em 0; }
.c-wysiwyg {
font-size: clamp(15px, 1.1vw, 17px);
line-height: 1.9;
color: #111;
margin-bottom: clamp(40px, 5vw, 100px);       }
.c-wysiwyg p {
margin: 0 0 1.6em; }
.c-wysiwyg a {
text-decoration: underline; }
.c-wysiwyg ul, .c-wysiwyg ol {
padding-left: 1.2em;
margin: 0 0 1.6em; }
.c-wysiwyg li {
margin: 0.4em 0; }
.c-wysiwyg > :first-child {
margin-top: 0; }
.c-wysiwyg h2 {
font-size: clamp(22px, 1.9vw, 28px);
font-weight: 800;
line-height: 1.35;
letter-spacing: 0.02em;
margin: 2.4em 0 0.9em;
padding: 0 0 0.55em;
border-bottom: 1px solid rgba(17, 17, 17, 0.12);
position: relative; }
.c-wysiwyg h2::after {
content: "";
position: absolute;
left: 0;
bottom: -1px;
width: clamp(56px, 6vw, 88px);
height: 3px;
background: #209570;
border-radius: 999px; }
.c-wysiwyg h3 {
font-size: clamp(18px, 1.55vw, 22px);
font-weight: 800;
line-height: 1.4;
letter-spacing: 0.02em;
margin: 2.0em 0 0.7em;
padding-left: 14px;
border-left: 4px solid #209570; }
.c-wysiwyg h4 {
font-size: clamp(16px, 1.25vw, 19px);
font-weight: 800;
line-height: 1.45;
margin: 1.6em 0 0.6em;
padding: 0.35em 0.6em;
background: rgba(32, 149, 112, 0.08);
border-radius: 10px;
display: inline-block; }
.c-wysiwyg h5 {
font-size: clamp(15px, 1.15vw, 17px);
font-weight: 800;
line-height: 1.5;
margin: 1.4em 0 0.5em;
color: rgba(17, 17, 17, 0.92); }
.c-wysiwyg h6 {
font-size: 14px;
font-weight: 800;
line-height: 1.55;
margin: 1.2em 0 0.45em;
color: rgba(17, 17, 17, 0.75);
letter-spacing: 0.02em; } .table_basic {
width: 100%;
border-collapse: separate;
border-spacing: 0;
background: #fff; border: 1px solid #e6e9e8;
border-radius: 18px;
overflow: hidden; font-size: clamp(14px, 1.05vw, 16px);
line-height: 1.8;
color: #111;     }
.table_basic th,
.table_basic td {
padding: clamp(14px, 2vw, 18px) clamp(14px, 2.2vw, 22px);
vertical-align: top;
border-bottom: 1px solid #e6e9e8; }
.table_basic tr:last-child th,
.table_basic tr:last-child td {
border-bottom: 0; }
.table_basic th {
width: min(220px, 28%);
background: #f3f6f5;
font-weight: 700;
letter-spacing: 0.04em;
position: relative; }
.table_basic th::before {
content: "";
position: absolute;
left: 0;
top: 18px;
bottom: 18px;
width: 4px;
background: #209570; border-radius: 99px; }
.table_basic td {
background: #fff; }
.table_basic p {
margin: 0; }
.table_basic br {
content: ""; }
@media (hover: hover) and (pointer: fine) {
.table_basic tr:hover td {
background: #fafcfc; } }
@media (max-width: 800px) {
.table_basic {
border-radius: 16px;  }
.table_basic tr {
display: block;
padding: 0; }
.table_basic th,
.table_basic td {
display: block;
width: 100%;
border-bottom: 0;
padding: 14px 16px; }
.table_basic th {
background: #f3f6f5;
padding-left: 18px; border-top: 1px solid #e6e9e8; }
.table_basic tr:first-child th {
border-top: 0; }
.table_basic th::before {
top: 12px;
bottom: 12px; }
.table_basic td {
padding-top: 12px;
padding-bottom: 16px;
border-bottom: 1px solid #e6e9e8; }
.table_basic tr:last-child td {
border-bottom: 0; } }
.nowrap {
white-space: nowrap; }   :root { --header-h: 0px; --ff-mincho: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho",
"MS PMincho", serif; --ff-gothic: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic",
"Meiryo", system-ui, -apple-system, "Segoe UI", sans-serif; }
:root {
--headerH: 90px; } [id] {
scroll-margin-top: calc(var(--headerH) + 16px); } *,
*::before,
*::after {
box-sizing: border-box; }
html, body {
height: 100%; }
body {
margin: 0;
font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", sans-serif;
color: #1a1a1a;
background: #ffffff;
overflow-x: clip; }
a {
color: inherit;
text-decoration: none; }
img {
max-width: 100%;
height: auto;
vertical-align: middle; }
.l-container {
max-width: 1300px;
margin: 0 auto;
padding: 0 24px; }
@media (max-width: 1000px) {
.l-container {
padding: 0 5px; } } .btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
height: 44px;
padding: 0 18px;
border-radius: 999px;
border: 1px solid transparent;
font-weight: 700;
letter-spacing: .02em;
transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
white-space: nowrap; }
.btn__icon {
font-size: 16px;
line-height: 1; }
.btn--primary {
background: #209570;
color: #fff; }
.btn--primary:hover {
background: #0a6f4f;
transform: translateY(-1px); }
.btn--block {
width: 100%; } .u-pc {
display: block; }
.u-sp {
display: none !important; }
@media (max-width: 1000px) {
.u-pc {
display: none !important; }
.u-sp {
display: block !important; } } .site-header { position: fixed;
top: 0;
z-index: 1000;
background: #ffffff;
width: 100%; }
.site-header__inner {
display: flex;
align-items: center;
height: 88px;
padding: 0 24px; }
.site-header__brand {
flex: 0 0 auto; }
.brand__logo {
height: 40px;
width: auto; } .brand {
display: inline-flex;
align-items: center;
gap: 10px;
text-decoration: none;
color: inherit; } .brand__logo {
height: 60px; width: auto; } .brand__text {
font-weight: 700;
font-size: 20px;
letter-spacing: .06em;
white-space: nowrap;
line-height: 1.2; }
@media (max-width: 1000px) {
.brand__text {
font-size: 16px;
letter-spacing: .04em; } } .g-nav {
padding-left: 20px;
padding-right: 20px;
margin-left: auto; }
.g-nav__list {
display: flex;
align-items: center;
justify-content: center;
gap: 26px;
list-style: none;
padding: 0;
margin: 0; }
.g-nav__item {
position: relative; }
.g-nav__link {
display: inline-flex;
align-items: center;
gap: 10px;
height: 88px;
font-weight: 700;
font-size: 15px;
letter-spacing: .02em;
padding: 0 2px;
color: #1a1a1a;
　cursor: pointer; }
div.g-nav__link {
cursor: default;
pointer-events: none; }
.g-nav__chev {
width: 10px;
height: 10px;
border-right: 2px solid #209570;
border-bottom: 2px solid #209570;
transform: rotate(45deg);
margin-top: -2px;
transition: transform .2s ease; } .g-nav__item.is-open .g-nav__chev {
transform: rotate(225deg);
margin-top: 5px; } .header-actions {
display: flex;
align-items: center;
gap: 14px; } .hamburger {
display: none;
width: 44px;
height: 44px;
border: 1px solid #e5e7eb;
background: #fff;
border-radius: 999px;
cursor: pointer;
position: relative; }
.hamburger__lines,
.hamburger__lines::before,
.hamburger__lines::after {
content: "";
position: absolute;
left: 50%;
width: 18px;
height: 2px;
background: #1a1a1a;
transform: translateX(-50%);
transition: transform .2s ease, opacity .2s ease, top .2s ease; }
.hamburger__lines {
top: 50%;
transform: translate(-50%, -50%); }
.hamburger__lines::before {
top: -6px; }
.hamburger__lines::after {
top: 6px; } .mega-overlay {
position: fixed;
inset: 88px 0 0 0;
background: rgba(0, 0, 0, 0.12);
opacity: 0;
pointer-events: none;
transition: opacity .2s ease; }
.site-header.is-mega .mega-overlay {
opacity: 1;
pointer-events: auto; }
.mega {
position: fixed;
top: 88px;
left: 0;
width: 100%; background: #f6f7f9;
border-top: 1px solid #e5e7eb;
border-bottom: 1px solid #e5e7eb;
border-left: 0;
border-right: 0;
border-radius: 0;
box-shadow: none;
opacity: 0;
pointer-events: none; transform: translateY(-6px);
transition: opacity .18s ease, transform .18s ease; }
.g-nav__item.is-open > .mega {
opacity: 1;
pointer-events: auto; }
.mega__inner {
max-width: 1300px;
margin: 18px auto;
padding: 26px;
background: #fff; display: grid;
grid-template-columns: 260px minmax(0, 1fr); gap: 24px; min-width: 0; }
.mega__lead {
padding: 8px 8px 8px 0; }
.mega__en {
margin: 0 0 8px;
font-weight: 800;
font-size: 13px;
letter-spacing: .12em;
color: #209570; }
.mega__ja {
margin: 0 0 18px;
font-size: 22px;
letter-spacing: .04em; }
.mega__more {
display: inline-flex;
align-items: center;
gap: 10px;
font-weight: 700;
color: #1a1a1a; }
.mega__more span {
color: #209570; } .mega__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 18px;
align-content: start; }
.mega-card {
display: block;
overflow: hidden;
background: #fff; }
.mega-card__thumb {
border-radius: 16px;
overflow: hidden;
background: #f6f7f9;
aspect-ratio: 16 / 10; }
.mega-card__thumb img {
width: 100%;
height: 100%;
object-fit: cover; }
.mega-card__title {
margin: 10px 0 0;
font-weight: 800;
font-size: 14px;
letter-spacing: .02em;
padding: 0 2px; } .mega__grid--list {
grid-template-columns: 1fr;
gap: 0;
border-top: 1px solid #e5e7eb; }
.mega-row {
display: block;
padding: 16px 6px;
border-bottom: 1px solid #e5e7eb;
font-weight: 700;
color: #1a1a1a; }
.mega-row:hover {
color: #209570; } .sp-drawer {
position: fixed;
top: 0;
right: 0;
width: min(420px, 92vw);
height: 100vh;
background: #fff;
z-index: 1200;
transform: translateX(110%);
transition: transform .28s ease;
overflow: auto;
-webkit-overflow-scrolling: touch; }
.sp-drawer.is-open {
transform: translateX(0); }
.sp-overlay {
position: fixed;
inset: 0;
background: rgba(0, 0, 0, 0.18);
opacity: 0;
pointer-events: none;
transition: opacity .2s ease;
z-index: 1100; }
.sp-overlay.is-open {
opacity: 1;
pointer-events: auto; }
.sp-drawer__head {
padding: 18px 18px 8px;
display: flex;
justify-content: flex-end; }
.sp-close {
width: 78px;
height: 78px;
border-radius: 999px;
border: 1px solid #e5e7eb;
background: #fff;
cursor: pointer;
display: grid;
place-items: center;
gap: 2px; }
.sp-close__icon {
font-size: 22px;
line-height: 1; }
.sp-close__text {
font-size: 12px;
color: #6b7280; }
.sp-nav {
padding: 0 0 18px; }
.sp-nav__list {
list-style: none;
margin: 0;
padding: 0 0 18px; }
.sp-nav__item {
border-top: 1px solid #e5e7eb; }
.sp-nav__link {
display: block;
padding: 18px 18px;
font-weight: 800; }
.sp-nav__item--cta {
border-top: 0;
padding: 18px; } .sp-acc__btn {
width: 100%;
background: transparent;
border: 0;
padding: 18px 18px;
font-weight: 900;
text-align: left;
display: flex;
align-items: center;
justify-content: space-between;
cursor: pointer; }
.sp-acc__chev {
width: 10px;
height: 10px;
border-right: 2px solid #209570;
border-bottom: 2px solid #209570;
transform: rotate(45deg);
transition: transform .2s ease; }
.sp-acc.is-open .sp-acc__chev {
transform: rotate(225deg); }
.sp-acc__panel {
padding: 0 18px 12px; }
.sp-acc__link {
display: block;
padding: 10px 0;
color: #1a1a1a; } @media (max-width: 1000px) {
.g-nav {
display: none; }
.header-actions .btn--primary {
display: none; }
.hamburger {
display: inline-block; }
.header-actions {
margin-left: auto; } } .is-locked {
overflow: hidden; } .c-fluid {
padding-left: 50px;
padding-right: 50px; } @media (max-width: 1500px) {
.c-fluid {
padding-left: calc(2.4489795918vw + 10.8163265306px);
padding-right: calc(2.4489795918vw + 10.8163265306px); } }
main {
padding-top: 88px; } .site-footer {
background: #e0e0e0;
color: #222; } .site-footer__inner {
max-width: 1400px;
margin: 0 auto;
padding-left: 50px;
padding-right: 50px;
display: grid;
grid-template-columns: minmax(220px, 280px) 1fr;
gap: clamp(48px, 6vw, 96px);
padding-top: clamp(64px, 8vw, 120px);
padding-bottom: clamp(56px, 7vw, 100px); }
@media (max-width: 1000px) {
.site-footer__inner {
display: block; } } .site-footer__company {
max-width: 280px; }
@media (max-width: 1000px) {
.site-footer__company {
max-width: auto;
margin: 0 auto; } } .footer-brand {
display: inline-flex;
align-items: center;
gap: 14px;
width: fit-content;
margin-bottom: 20px; }
.footer-brand__logo {
width: 56px;
height: auto; }
.footer-brand__name {
font-size: 20px;
font-weight: 700;
white-space: nowrap; }
.footer-address {
font-style: normal;
font-size: 14px;
line-height: 1.7;
margin-bottom: 24px; } .footer-contactBtn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
width: 100%;
padding: 14px 20px;
background: #209570;
color: #fff;
font-weight: 600;
border-radius: 999px;
text-decoration: none;
transition: background .2s ease; }
.footer-contactBtn:hover {
background: #1b7f5f; }
.footer-contactBtn__icon {
width: 18px;
height: 18px;
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/common/ico_mail_white.svg) no-repeat center/contain; } .footer-sitemap {
display: grid; grid-template-columns: minmax(230px, 1fr) minmax(230px, 1fr) minmax(230px, 1.2fr);
gap: 28px 30px;
list-style: none;
padding: 0;
margin: 0; }
@media (max-width: 1000px) {
.site-footer__sitemap {
display: none; } } .sitemap-techStack {
display: grid;
gap: 18px; }
.footer-sitemap a {
color: #222;
text-decoration: none; } .footer-sitemap > li > a {
font-size: 18px;
font-weight: 600;
display: inline-block;
margin-bottom: 10px; } .footer-sitemap > li > ul > li > a {
font-size: 16px; } .footer-sitemap > li > ul > li > ul {
margin-top: 8px;
padding-left: 0;
list-style: none; }
.footer-sitemap > li > ul > li > ul > li {
position: relative;
padding-left: 1.1em;
margin-bottom: 6px; }
.footer-sitemap > li > ul > li > ul > li::before {
content: "・";
position: absolute;
left: 0;
top: 0;
line-height: 1.6;
opacity: .9; }
.footer-sitemap > li > ul > li > ul > li > a {
font-size: 14px; } .sitemap-parent {
font-size: 18px;
font-weight: 600;
display: inline-block;
margin-bottom: 10px;
color: #222;
text-decoration: none; } .sitemap-children > li > a {
font-size: 16px;
color: #222;
text-decoration: none; } .sitemap-children > li > ul > li {
position: relative;
padding-left: 1.1em;
margin-bottom: 6px; }
.sitemap-children > li > ul > li::before {
content: "・";
position: absolute;
left: 0;
top: 0;
line-height: 1.6;
opacity: .9; }
.sitemap-children > li > ul > li > a {
font-size: 14px; } .sitemap-children,
.sitemap-children ul {
list-style: none;
padding-left: 0;
margin: 0; }
.sitemap-children li {
margin-bottom: 6px; }
@media (max-width: 1400px) {
.footer-sitemap {
grid-template-columns: repeat(2, minmax(230px, 1fr)); } } .footer-sitemap ul {
list-style: none;
padding-left: 0;
margin: 0; }
.footer-sitemap ul li {
margin-bottom: 6px; }
.footer-note {
font-size: 12px;
color: #555; } .footer-sitemap__singleRow {
display: flex;
flex-wrap: wrap;
gap: 14px 22px;
list-style: none;
padding: 0;
margin: 28px 0 0; }
.footer-sitemap__singleRow a {
font-size: 14px;
color: #222;
text-decoration: none; }
.footer-sitemap__singleRow a:hover {
text-decoration: underline; } .site-footer__copyright {
background: #000;
color: #fff;
text-align: center;
font-size: 12px;
padding: 18px 0; } @media (max-width: 900px) {
.site-footer__inner {
grid-template-columns: 1fr;
gap: 44px; } }  .c-common_kv {
padding: clamp(22px, 3vw, 40px) 0 clamp(18px, 2.4vw, 32px);
max-width: 1400px;
margin-left: auto;
margin-right: auto;
padding: 20px;
margin-bottom: clamp(40px, 2.4vw, 80px); }
.c-lower_kv02__inner {
display: grid;
grid-template-columns: minmax(320px, 1fr) minmax(380px, 660px);
gap: clamp(18px, 3vw, 36px);
align-items: center; } .c-lower_kv02__textarea {
padding: clamp(6px, 1vw, 10px) 0; }
.c-lower_kv02__parent {
margin: 0 0 10px;
font-size: clamp(13px, 1.2vw, 15px);
font-weight: 700;
letter-spacing: 0.04em;
color: #1e73be; }
.c-lower_kv02__title {
margin: 0;
font-size: clamp(26px, 3.2vw, 44px);
line-height: 1.25;
font-weight: 800;
letter-spacing: 0.02em;
color: #111; } .c-lower_kv02__img {
margin: 0; }
.c-lower_kv02__img img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 16 / 8; object-fit: cover;
border-radius: 16px; } @media (max-width: 800px) {
.c-lower_kv02__inner {
grid-template-columns: 1fr; } .c-lower_kv02__img {
order: 1; }
.c-lower_kv02__textarea {
order: 2; }
.c-lower_kv02__img img {
border-radius: 14px; } } .c-lower_kv02__inner.-noimg {
grid-template-columns: 1fr; }
.c-lower_kv02__date {
margin: 14px 0 0;
font-size: 14px;
color: #666;
letter-spacing: 0.02em; } .p-newsSingle {
padding: clamp(28px, 4vw, 48px) 0 clamp(56px, 6vw, 96px); }
.p-newsSingle__content {
max-width: 1000px;
margin-left: auto;
margin-right: auto; }
.p-newsSingle__back {
margin-top: clamp(30px, 5vw, 56px); } .p-newsArchive {
padding: clamp(28px, 4vw, 48px) 0 clamp(56px, 6vw, 96px); }
.p-newsList {
list-style: none;
margin: 0;
padding: 0;
border-top: 1px solid rgba(0, 0, 0, 0.08); }
.p-newsList__item {
border-bottom: 1px solid rgba(0, 0, 0, 0.08); }
.p-newsList__link {
display: grid;
grid-template-columns: 120px 1fr;
gap: 18px;
align-items: center;
padding: 16px 0;
text-decoration: none;
color: inherit; }
.p-newsList__date {
font-size: 14px;
color: #666;
letter-spacing: .02em;
white-space: nowrap; }
.p-newsList__title {
font-size: 16px;
font-weight: 600;
line-height: 1.6; }
.p-newsList__link:hover .p-newsList__title {
text-decoration: underline; }
@media (max-width: 800px) {
.p-newsList__link {
grid-template-columns: 1fr;
gap: 6px;
padding: 14px 0; } } .c-pagination {
margin-top: clamp(28px, 4vw, 44px); }
.c-pagination .page-numbers {
list-style: none;
display: flex;
gap: 10px;
justify-content: center;
margin: 0;
padding: 0; }
.c-pagination .page-numbers li {
margin: 0;
padding: 0; }
.c-pagination .page-numbers a,
.c-pagination .page-numbers span {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 42px;
height: 42px;
padding: 0 12px;
border: 1px solid rgba(0, 0, 0, 0.18);
border-radius: 999px;
text-decoration: none;
color: inherit;
font-weight: 600; }
.c-pagination .page-numbers .current {
border-color: rgba(0, 0, 0, 0.45); }
.c-pagination .page-numbers a:hover {
border-color: rgba(0, 0, 0, 0.45); } .p-404 {
padding: clamp(40px, 6vw, 80px) 0 clamp(80px, 8vw, 120px);
text-align: center; }
.p-404__lead {
font-size: clamp(20px, 2vw, 24px);
font-weight: 700;
margin-bottom: 18px; }
.p-404__text {
font-size: 15px;
line-height: 1.8;
color: #666; }
.p-404__btn {
margin-top: clamp(30px, 5vw, 50px); } .c-pageTop {
position: fixed;
right: 24px;
bottom: 24px;
z-index: 1000;
opacity: 0;
pointer-events: none;
transition: opacity .3s ease; }
.c-pageTop.is-show {
opacity: 1;
pointer-events: auto; }
.c-pageTop__link {
display: flex;
align-items: center;
justify-content: center;
width: 56px;
height: 56px;
border-radius: 50%;
background: #209570;
color: #fff;
font-size: 18px;
font-weight: 700;
text-decoration: none;
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
transition: .3s ease; }
.c-pageTop__link:hover {
transform: translateY(-4px);
box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2); }
html {
scroll-behavior: smooth; } .p-newsSingle__back {
margin-top: clamp(30px, 5vw, 56px);
text-align: center; }
.c-btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 0 28px;
border-radius: 999px;
font-weight: 600;
text-decoration: none;
transition: .3s ease; }
.c-btn--outline {
border: 1px solid #209570;
color: #209570; }
.c-btn--outline:hover {
background: #209570;
color: #fff; } .p-newsSingle__content .c-wysiwyg img {
max-width: 100%;
height: auto;
margin: 2em 0; }
.c-wysiwyg {
font-size: clamp(15px, 1.1vw, 17px);
line-height: 1.9;
color: #111;
margin-bottom: clamp(40px, 5vw, 100px);       }
.c-wysiwyg p {
margin: 0 0 1.6em; }
.c-wysiwyg a {
text-decoration: underline; }
.c-wysiwyg ul, .c-wysiwyg ol {
padding-left: 1.2em;
margin: 0 0 1.6em; }
.c-wysiwyg li {
margin: 0.4em 0; }
.c-wysiwyg > :first-child {
margin-top: 0; }
.c-wysiwyg h2 {
font-size: clamp(22px, 1.9vw, 28px);
font-weight: 800;
line-height: 1.35;
letter-spacing: 0.02em;
margin: 2.4em 0 0.9em;
padding: 0 0 0.55em;
border-bottom: 1px solid rgba(17, 17, 17, 0.12);
position: relative; }
.c-wysiwyg h2::after {
content: "";
position: absolute;
left: 0;
bottom: -1px;
width: clamp(56px, 6vw, 88px);
height: 3px;
background: #209570;
border-radius: 999px; }
.c-wysiwyg h3 {
font-size: clamp(18px, 1.55vw, 22px);
font-weight: 800;
line-height: 1.4;
letter-spacing: 0.02em;
margin: 2.0em 0 0.7em;
padding-left: 14px;
border-left: 4px solid #209570; }
.c-wysiwyg h4 {
font-size: clamp(16px, 1.25vw, 19px);
font-weight: 800;
line-height: 1.45;
margin: 1.6em 0 0.6em;
padding: 0.35em 0.6em;
background: rgba(32, 149, 112, 0.08);
border-radius: 10px;
display: inline-block; }
.c-wysiwyg h5 {
font-size: clamp(15px, 1.15vw, 17px);
font-weight: 800;
line-height: 1.5;
margin: 1.4em 0 0.5em;
color: rgba(17, 17, 17, 0.92); }
.c-wysiwyg h6 {
font-size: 14px;
font-weight: 800;
line-height: 1.55;
margin: 1.2em 0 0.45em;
color: rgba(17, 17, 17, 0.75);
letter-spacing: 0.02em; } .table_basic {
width: 100%;
border-collapse: separate;
border-spacing: 0;
background: #fff; border: 1px solid #e6e9e8;
border-radius: 18px;
overflow: hidden; font-size: clamp(14px, 1.05vw, 16px);
line-height: 1.8;
color: #111;     }
.table_basic th,
.table_basic td {
padding: clamp(14px, 2vw, 18px) clamp(14px, 2.2vw, 22px);
vertical-align: top;
border-bottom: 1px solid #e6e9e8; }
.table_basic tr:last-child th,
.table_basic tr:last-child td {
border-bottom: 0; }
.table_basic th {
width: min(220px, 28%);
background: #f3f6f5;
font-weight: 700;
letter-spacing: 0.04em;
position: relative; }
.table_basic th::before {
content: "";
position: absolute;
left: 0;
top: 18px;
bottom: 18px;
width: 4px;
background: #209570; border-radius: 99px; }
.table_basic td {
background: #fff; }
.table_basic p {
margin: 0; }
.table_basic br {
content: ""; }
@media (hover: hover) and (pointer: fine) {
.table_basic tr:hover td {
background: #fafcfc; } }
@media (max-width: 800px) {
.table_basic {
border-radius: 16px;  }
.table_basic tr {
display: block;
padding: 0; }
.table_basic th,
.table_basic td {
display: block;
width: 100%;
border-bottom: 0;
padding: 14px 16px; }
.table_basic th {
background: #f3f6f5;
padding-left: 18px; border-top: 1px solid #e6e9e8; }
.table_basic tr:first-child th {
border-top: 0; }
.table_basic th::before {
top: 12px;
bottom: 12px; }
.table_basic td {
padding-top: 12px;
padding-bottom: 16px;
border-bottom: 1px solid #e6e9e8; }
.table_basic tr:last-child td {
border-bottom: 0; } }
.nowrap {
white-space: nowrap; } .hero {
padding-top: 24px; }
.hero__frame {
position: relative;
overflow: hidden;
border-radius: clamp(28px, 3.5vw, 64px);
width: 100%;
background: #bdbdbd; min-height: calc(100svh - var(--header-h) - 24px);
max-height: 920px;
display: flex;
align-items: center; } .hero__media {
position: absolute;
inset: 0; }
.hero__video {
width: 100%;
height: 100%;
object-fit: cover;
transform: scale(1.02); } .hero__overlay {
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 35%, rgba(0, 0, 0, 0.1) 70%, rgba(0, 0, 0, 0) 100%); } .hero__content {
position: relative;
z-index: 1;
color: #fff; max-width: 900px; padding: clamp(28px, 4vw, 72px);
padding-top: clamp(28px, 10vw, 150px); }
.hero__catch {
margin: 0;
font-weight: 600;
letter-spacing: 0.03em;
line-height: 1.18;
font-size: clamp(30px, 4.2vw, 56px);
text-wrap: balance; }
.hero__sub {
margin: 20px 0 0;
font-family: var(--ff-gothic);
font-weight: 500;
line-height: 1.9;
font-size: clamp(16px, 2.15vw, 20px);
opacity: 0.92; } .hero__cta {
margin-top: clamp(18px, 2.2vw, 28px);
display: flex;
gap: 14px;
flex-wrap: wrap; } .btn-pill {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 0 22px;
border-radius: 999px;
text-decoration: none;
font-weight: 700;
font-size: 20px;
letter-spacing: 0.02em;
background: #209570;
color: #fff;
transition: transform 0.15s ease, opacity 0.15s ease; }
.btn-pill:hover {
transform: translateY(-1px);
opacity: 0.92; } .btn-pill--ghost {
background: #006eaf; } @media (max-width: 570px) {
.hero__frame {
min-height: 620px; }
.hero__cta {
flex-direction: column;
align-items: flex-start; } } .contentstitle {
overflow-x: clip; }
.c-secHead {
position: relative;
margin-top: clamp(50px, 10vw, 150px); --block-color: #e0e2e1;
--block-w: clamp(140px, 18vw, 260px);
--block-h: clamp(70px, 10vw, 300px);
--block-gap: 60px;  --gap: 28px;
display: grid;
grid-template-columns: auto auto 1fr; align-items: center;
column-gap: var(--gap); }
.mt150 {
margin-top: clamp(50px, 15vw, 240px); }
.c-secHead__strength {
position: relative;
z-index: 10;
margin-left: 5%; --block-color: #e0e2e1;
--block-w: clamp(140px, 18vw, 260px);
--block-h: clamp(70px, 10vw, 300px);
--block-gap: 60px;  --gap: 28px;
display: grid;
grid-template-columns: auto auto 1fr; align-items: center;
column-gap: var(--gap);
margin-top: 0px; }
@media (max-width: 570px) {
.c-secHead__strength {
margin-left: 0%; } } .c-secHead__ja {
font-size: clamp(36px, 4.2vw, 48px);
font-weight: 800;
letter-spacing: 0.02em;
line-height: 1.1;
margin: 0;
white-space: nowrap; } .c-secHead__en {
font-size: 18px;
font-weight: 600;
letter-spacing: 0.04em;
color: #209570;
opacity: 0.95;
white-space: nowrap; } .c-secHead__block {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: var(--block-w);
height: var(--block-h);
background: var(--block-color); left: calc(-1 * (var(--block-w) + var(--block-gap))); } .c-secHead__line {
position: relative;
height: 4px; }
.c-secHead__line::before {
content: "";
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100vw;
background: #209570; }
@media (max-width: 430px) {
.c-secHead, .c-secHead__strength {
grid-template-columns: 1fr; grid-template-rows: auto auto auto;
row-gap: 8px; }
.c-secHead__ja {
white-space: normal; }
.c-secHead__en {
white-space: normal; }
.c-secHead__line {
margin-top: 12px; } } .p-responsibility {
position: relative;
overflow: hidden; }
.p-responsibility__inner {
display: grid;
grid-template-columns: minmax(420px, 1fr) minmax(520px, 1.4fr);
gap: clamp(44px, 5vw, 80px);
align-items: start;
padding-top: clamp(44px, 6vw, 80px);
padding-bottom: clamp(44px, 6vw, 80px); } .p-responsibility__content {
max-width: 560px; }
.p-responsibility__title {
font-size: clamp(38px, 4.2vw, 56px);
font-weight: 400;
letter-spacing: 0.08em;
line-height: 1.25;
margin: 0 0 28px; }
.p-responsibility__em {
color: #209570; }
.p-responsibility__text {
font-size: 16px;
line-height: 2.05;
letter-spacing: 0.02em; }
.p-responsibility__text p {
margin: 0 0 18px; }
.p-responsibility__text p:last-child {
margin-bottom: 0; } .p-responsibility__media {
position: relative;
margin-right: calc(50% - 50vw);
min-height: clamp(420px, 42vw, 560px); }
.p-responsibility__photo {
position: relative;
height: 100%;
overflow: visible; } .p-responsibility__photo img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center center;
display: block;
border-radius: 0; } .p-responsibility__photo::before {
content: "";
position: absolute;
left: calc(-1 * clamp(80px, 9vw, 140px));
bottom: calc(-1 * clamp(42px, 4vw, 64px));
width: clamp(320px, 40vw, 520px);
height: clamp(120px, 14vw, 180px);
background: #dfede9;
z-index: 0; }
.p-responsibility__photo img {
position: relative;
z-index: 1; } @media (max-width: 1000px) {
.p-responsibility__inner {
grid-template-columns: 1fr;
gap: 28px; }
.p-responsibility__content {
max-width: 100%; }
.p-responsibility__media {
margin-right: 0;
min-height: 0; }
.p-responsibility__photo {
aspect-ratio: 16 / 9; }
.p-responsibility__photo::before {
display: none; } }
@media (max-width: 1000px) {
.p-responsibility__title br {
display: none; } } .p-strengths {
position: relative;
overflow: clip;
margin-top: 0px;
padding-top: 0px !important;
padding-right: 0;
padding-bottom: clamp(56px, 4vw, 10px);
padding-left: 0;
margin-bottom: clamp(75px, 7.8vw, 124px); }
.p-strengths .c-secHead__line::before {
content: none; } .p-strengths__bg {
position: absolute;
inset: 0;
background: #dfede9; top: clamp(122px, 11vw, 124px); border-radius: 40px;
left: 0;
right: 0;
margin: 0 auto;
width: min(1152px, 92vw);
max-width: 1300px; }
@media (max-width: 570px) {
.p-strengths__bg { width: 100vw;
left: 0%;
top: 145px !important; } }
.c-arrowMark__box {
position: absolute;
top: 50%;
left: 4%;
top: 50%;
transform: translateY(-50%); }
.c-arrowMark {
position: relative;
display: inline-block;
width: 55px;
height: 55px; } .c-arrowMark::before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 0;
height: 0;
border-top: 28px solid transparent;
border-bottom: 28px solid transparent;
border-right: 40px solid #cfdad5; } .c-arrowMark::after {
content: "";
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
width: 3px;
height: 100%;
background: #cfdad5; } .p-strengths__inner {
position: relative; margin-inline: auto;
width: min(1200px, 92vw);
max-width: 1300px;
padding-left: 0%;
padding-top: 100px; }
.p-strengths__inner .c-secHead__line::before {
width: 100%; } .p-strengths__head {
margin-bottom: clamp(22px, 3vw, 36px); }
.p-strengths__en {
font-size: 14px;
letter-spacing: .08em;
opacity: .9;
margin: 0 0 8px; }
.p-strengths__ja {
font-size: clamp(28px, 3.4vw, 44px);
margin: 0;
padding-bottom: 14px;
border-bottom: 2px solid rgba(255, 255, 255, 0.85);
display: inline-block; } :root {
--strength-green: #209570; }
.pin-spacer {
padding-top: clamp(50px, 4vw, 10px) !important; } .p-strengths__rail {
overflow-x: hidden; } .p-strengths__track {
display: flex;
align-items: flex-start;
margin-top: clamp(50px, 8vw, 50px); gap: clamp(24px, 6vw, 120px); padding-right: clamp(60px, 25vw, 380px);
padding-left: clamp(60px, 10vw, 130px);
will-change: transform; }  .p-strengths__cards {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 3vw;
padding: 5vw 5vw 0;
align-items: flex-start; }
@media (max-width: 1000px) {
.p-strengths__cards {
left: 5%;
position: relative;
width: 90%;
padding: 5vw 0 0; } }
@media (max-width: 900px) {
.p-strengths__cards {
grid-template-columns: 1fr; } }
.p-strengths__cards .p-strengthCard {
margin: 0 auto; } .p-strengthCard {
flex: 0 0 auto;
width: min(570px, 100%);
max-width: 570px; position: relative;
overflow: visible; display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto;
gap: 0; background: transparent;
border: 0;
border-radius: 0;
padding: 0;
backdrop-filter: none; --media-h: clamp(240px, 24vw, 320px); padding-top: 20px; } .p-strengthCard__dummy {
flex: 0 0 auto; width: clamp(120px, 20vw, 220px); height: 1px;
pointer-events: none; } .p-strengthCard__media {
grid-row: 1;
margin: 0;
height: var(--media-h);
border-radius: 0; overflow: hidden;
background: #ddd; }
.p-strengthCard__media img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; } .p-strengthCard__body {
grid-row: 2;
position: relative;
padding: 18px 0 0;
text-align: center; } .p-strengthCard__title {
margin: 14px 0 16px;
font-size: clamp(20px, 3vw, 30px);
font-weight: 700;
letter-spacing: .02em;
color: var(--strength-green); } .p-strengthCard__text {
margin: 0 auto;
text-align: left;
line-height: 1.5;
font-size: clamp(14px, 2vw, 18px);
color: #222;
background: #fff;
border-radius: 18px;
padding: clamp(16px, 2.2vw, 26px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06); } .p-strengthCard__num {
position: absolute; left: 0;  transform: translate(-36%, -50%);
z-index: 3;
width: 112px;
height: 112px;
display: grid;
place-items: center; } .p-strengthCard__num::before {
content: "";
position: absolute;
inset: 0;
border-radius: 999px;
background: #fff; } .p-strengthCard__num::after {
content: "";
position: absolute; inset: 0px;
border-radius: 999px; background: conic-gradient(from 270deg, var(--strength-green) 0 90deg, transparent 90deg 360deg); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 4px));
mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 4px)); } .p-strengthCard__num span {
position: relative;
z-index: 1;
font-size: clamp(16px, 4.5vw, 65px);
font-weight: 900;
letter-spacing: 0;
color: var(--strength-green);
border-bottom: 0; } @media (max-width: 570px) {
.p-strengths__inner {
position: relative;
width: 98%;
margin-inline: auto;
margin-left: 1%;
padding-left: 0%;
padding-top: 50px; } }
@media (max-width: 768px) {
.p-strengths__track {
gap: clamp(40px, 4.5vw, 48px);
padding-right: clamp(24px, 8vw, 120px); }
.p-strengthCard {
width: min(570px, 75vw);
--media-h: clamp(210px, 52vw, 300px);
padding-top: 16px; }
.p-strengthCard__num {
width: 80px;
height: 80px; }
.p-strengthCard__num::after {
-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 4px));
mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 4px)); }
.p-strengthCard__num span {
font-size: 42px; } } .top-service {
padding: clamp(56px, 6vw, 96px) 0; }
.top-service__grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(24px, 6vw, 60px); } @media (max-width: 1000px) {
.top-service__grid {
grid-template-columns: 1fr; } } .top-serviceCard {
position: relative;
padding: clamp(18px, 2.2vw, 28px);
display: grid;
align-content: start;
gap: 14px; border-right: 5px solid #209570;
border-bottom: 5px solid #209570;
border-bottom-right-radius: 30px; }
.top-serviceCard__title {
color: #209570;
font-weight: 700;
letter-spacing: 0.02em; font-size: clamp(20px, 5vw, 50px);
line-height: 1.35; min-height: calc(1.35em * 2);
margin: 0; } @media (max-width: 1000px) {
.top-serviceCard__title {
min-height: 0; } }
.top-serviceCard__text {
margin: 0;
font-size: clamp(16px, 1.6vw, 20px);
line-height: 1.9; } .p-works {
background: #ffffff;
color: #000; } .p-works__inner {
display: grid;
grid-template-columns: minmax(420px, 1fr) minmax(520px, 1.2fr);
gap: clamp(56px, 6vw, 90px);
align-items: center; }
@media (max-width: 1100px) {
.p-works__inner {
display: grid;
grid-template-columns: minmax(400px, 1fr) minmax(480px, 1fr);
gap: clamp(56px, 6vw, 90px);
align-items: center; } } @media (max-width: 1000px) {
.p-works__inner {
grid-template-columns: 1fr;
gap: clamp(40px, 6vw, 64px); } } .p-works__content {
padding-left: clamp(14px, 1.6vw, 24px);
max-width: 560px; }
@media (max-width: 1000px) {
.p-works__content {
max-width: 100%; } } .p-works__en {
font-size: 18px;
font-weight: 600;
letter-spacing: 0.02em;
margin: 0 0 18px;
opacity: 0.95;
color: #209570; } .p-works__ja {
font-size: clamp(44px, 4.2vw, 56px);
font-weight: 800;
letter-spacing: 0.02em;
line-height: 1.05;
margin: 0 0 26px;
position: relative;
display: inline-block;
border-bottom: 5px solid #209570; }
.p-works__ja::after {
content: "";
display: block;
width: clamp(140px, 15vw, 180px);
height: 4px;
background: rgba(255, 255, 255, 0.95);
margin-top: 16px;
border-radius: 999px; } .p-works__text {
font-size: 18px;
line-height: 2.05;
letter-spacing: 0.02em;
margin: 0 0 44px;
max-width: 34em;
opacity: 0.95; }
@media (max-width: 1000px) {
.p-works__text {
max-width: 100%; } } .c-btn--white {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 18px 44px;
border-radius: 999px;
background: #209570;
color: #fff;
font-weight: 700;
letter-spacing: 0.02em;
transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease; }
.c-btn--white:hover {
transform: translateY(-2px); }
.c-btn--white:active {
transform: translateY(0);
opacity: 0.95; }
@media (max-width: 1000px) {
.p-works__content {
max-width: 100%; } } @media (max-width: 768px) {
.p-works__inner {
grid-template-columns: 1fr;
gap: 34px; }
.p-works__content {
padding-left: 0;
max-width: none; }
.p-works__text {
margin-bottom: 0px; }
.c-btn--white {
width: min(320px, 100%); } }
@media (max-width: 1000px) {
.c-btn--white {
margin-top: 30px;
margin-left: auto;
margin-right: auto;
width: min(320px, 100%);
text-align: center; } } .p-works__media {
display: grid;
grid-template-columns: 1fr 1fr; gap: 24px;
height: clamp(560px, 58vw, 760px); align-items: stretch; } .p-works__col {
overflow: hidden; position: relative;
min-width: 0; } .p-works__col--down {
padding-top: 60px; } .p-works__stack {
display: grid;
gap: 24px;
will-change: transform; }
.p-works__img {
aspect-ratio: 3 / 4;
height: clamp(260px, 30vw, 360px);
border-radius: 20px;
overflow: hidden; }
.p-works__img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; }
@media (max-width: 1000px) {
.p-works__img {
aspect-ratio: 16 / 9;
width: 100%;
height: auto;
border-radius: 16px; } } .p-works__col--up .p-works__stack {
animation: worksLoopUp var(--loopDur, 22s) linear infinite; } .p-works__col--down .p-works__stack {
animation: worksLoopDown var(--loopDur, 22s) linear infinite; } @keyframes worksLoopUp {
from {
transform: translateY(0); }
to {
transform: translateY(-50%); } }
@keyframes worksLoopDown {
from {
transform: translateY(-50%); }
to {
transform: translateY(0); } } @media (prefers-reduced-motion: reduce) {
.p-works__stack {
animation: none !important; } }
@media (max-width: 768px) {
.p-works__inner {
grid-template-columns: 1fr; }
.p-works__media {
height: 420px; } } .index03 {
background-image: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/index/02_index06.jpg);
background-repeat: no-repeat;
background-position: left top;
height: 783px;
margin-top: 50px;
margin-bottom: 50px; }
.index04 {
background-image: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/index/02_index08.jpg);
background-repeat: no-repeat;
background-position: left top;
height: 498px;
margin-top: 50px;
margin-bottom: 50px; } .p-mediaInfo {
padding: clamp(56px, 6vw, 96px) 0 clamp(70px, 7vw, 110px);
background: #fff; }
.p-mediaInfo__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(22px, 3vw, 40px);
align-items: stretch; }
.p-mediaCard {
position: relative;
overflow: hidden;
background: #fff;
border: 1px solid #e6e9e8;
border-radius: clamp(22px, 2.6vw, 36px);
box-shadow: 0 18px 44px rgba(0, 0, 0, 0.06); }
.p-mediaCard__head {
margin-bottom: clamp(16px, 2vw, 24px); }
.p-mediaCard__en {
margin: 0 0 8px;
color: #209570;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.12em; }
.p-mediaCard__title {
margin: 0;
font-size: clamp(26px, 3vw, 40px);
line-height: 1.25;
font-weight: 800;
color: #111;
letter-spacing: 0.04em; }
.p-mediaCard__text {
margin: 0;
font-size: clamp(15px, 1.2vw, 18px);
line-height: 1.9;
color: #333; } .p-mediaCard--tv,
.p-mediaCard--radio {
padding: clamp(22px, 3vw, 34px); } .p-mediaCard__movie {
margin-bottom: clamp(18px, 2vw, 24px);
overflow: hidden;
border-radius: 22px;
background: #111;
aspect-ratio: 16 / 9; }
.p-mediaCard__movie video {
width: 100%;
height: 100%;
display: block;
object-fit: cover; } .p-mediaCard__audio {
margin-bottom: clamp(18px, 2vw, 24px);
overflow: hidden;
border-radius: 22px; display: grid;
place-items: center;
padding: clamp(18px, 3vw, 34px); }
.p-mediaCard__audioInner {
width: min(520px, 100%);
text-align: center; }
.p-mediaCard__audioTitle {
margin: 0 0 clamp(16px, 2vw, 24px);
font-size: clamp(22px, 2.6vw, 34px);
font-weight: 800;
line-height: 1.35;
color: #209570;
letter-spacing: 0.04em; }
.p-mediaCard__audio audio {
width: 100%;
display: block; } .p-mediaCard__link {
margin-top: clamp(18px, 2vw, 24px);
display: inline-flex;
align-items: center;
justify-content: center;
width: fit-content;
min-height: 46px;
padding: 0 24px;
border-radius: 999px;
background: #209570;
color: #fff;
font-weight: 700;
letter-spacing: 0.04em;
text-decoration: none;
transition: transform .25s ease, filter .25s ease; }
.p-mediaCard__link::after {
content: "→";
margin-left: 10px; }
.p-mediaCard__link:hover {
transform: translateY(-2px);
filter: brightness(0.95); } @media (max-width: 1000px) {
.p-mediaInfo__grid {
grid-template-columns: 1fr; }
.p-mediaCard--tv,
.p-mediaCard--radio {
padding: clamp(20px, 5vw, 28px); } }
@media (max-width: 570px) {
.p-mediaInfo {
padding-top: 44px; }
.p-mediaCard {
border-radius: 24px; }
.p-mediaCard__link {
width: 100%; }
.p-mediaCard__audio {
aspect-ratio: auto; } } .p-news {
padding: clamp(80px, 10vw, 100px) 0;
background: #fff;
color: #111; }
.p-news__inner {
max-width: 1200px; } .p-news__head {
margin-bottom: clamp(30px, 5vw, 50px); }
.p-news__en {
font-size: 18px;
font-weight: 600;
letter-spacing: 0.02em;
margin: 0 0 18px;
opacity: 0.95;
color: #209570; } .p-news__ja {
font-size: clamp(44px, 4.2vw, 56px);
font-weight: 800;
letter-spacing: 0.02em;
line-height: 1.05;
margin: 0 0 26px;
position: relative;
display: inline-block;
border-bottom: 5px solid #209570; }
.p-news__ja::after {
content: "";
display: block;
width: clamp(140px, 15vw, 180px);
height: 4px;
background: rgba(255, 255, 255, 0.95);
margin-top: 16px;
border-radius: 999px; } .p-news__list {
display: grid;
row-gap: 18px;
padding-left: 0; list-style: none; } .p-news__item {
display: block; } .p-news__link {
display: grid;
grid-template-columns: 120px 1fr;
column-gap: 24px;
align-items: start;
width: 100%;
text-decoration: none; }
@media (max-width: 760px) {
.p-news__link {
grid-template-columns: 1fr;
row-gap: 6px; } }
.p-news__date {
font-size: 18px;
font-weight: 500;
color: #333;
line-height: 1.8;
white-space: nowrap; }
.p-news__title {
font-size: 18px;
line-height: 1.8;
color: #111; }
.p-news .-center {
text-align: center; }
.p-news .c-btn--white.u-pc {
margin: 50px 0 0; }
.p-newsList__date {
font-weight: 500;
color: #333; }
.p-newsList__title {
font-weight: normal; } .p-contactCta {
padding: clamp(56px, 6vw, 96px) 0; }
.p-contactCta__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(18px, 2.6vw, 30px);
align-items: stretch; } .p-contactCta__stack {
display: grid;
grid-template-rows: 1fr 1fr;
gap: clamp(18px, 2.6vw, 30px);
height: 100%; } .p-contactBtn {
background: #209570;
color: #fff;
border-radius: clamp(22px, 2.6vw, 36px);
text-decoration: none;
display: grid;
align-content: center;
padding: clamp(18px, 2.4vw, 28px);
transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.25s ease, filter 0.25s ease;
-webkit-tap-highlight-color: transparent; box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08); }
.p-contactBtn:hover {
transform: translateY(-4px);
box-shadow: 0 16px 32px rgba(0, 0, 0, 0.18);
filter: brightness(1.06); }
.p-contactBtn:active {
transform: translateY(-1px);
box-shadow: 0 8px 18px rgba(0, 0, 0, 0.15);
filter: brightness(0.98); }
.p-contactBtn:focus-visible {
outline: 3px solid rgba(32, 149, 112, 0.35);
outline-offset: 4px; } .p-contactBtn--mail {
min-height: clamp(180px, 18vw, 260px);
justify-items: center;
text-align: center;
gap: clamp(14px, 1.8vw, 20px); }
.p-contactBtn__label {
font-weight: 500;
letter-spacing: 0.08em;
line-height: 1.35;
font-size: clamp(18px, 2vw, 24px); }
.p-contactBtn__label--small {
font-weight: 500;
font-size: clamp(14px, 1.4vw, 18px);
letter-spacing: 0.08em;
opacity: 0.95; } .p-contactBtn__icon {
color: #fff;
display: grid;
place-items: center; }
.p-contactBtn__icon img {
width: clamp(52px, 10vw, 100px);
height: auto;
display: block; }  .p-contactBtn--tel,
.p-contactBtn--fax {
display: grid;
grid-template-columns: 1fr;
align-content: center;
gap: 10px;
padding: clamp(16px, 2.2vw, 26px) clamp(18px, 2.6vw, 30px);
text-align: center; } .p-contactBtn__row {
display: inline-flex; align-items: center;
justify-content: center;
gap: clamp(10px, 1.4vw, 16px); } .p-contactBtn__icon--left img {
width: clamp(28px, 3.8vw, 40px);
height: auto;
display: block; } .p-contactBtn__value {
font-weight: 800;
letter-spacing: 0.08em;
line-height: 1.05;
font-size: clamp(30px, 3.8vw, 50px);
white-space: nowrap; } @media (max-width: 1000px) {
.p-contactCta__grid {
grid-template-columns: 1fr; }
.p-contactCta__stack {
grid-template-rows: auto auto; }
.p-contactBtn--mail {
min-height: auto;
padding: clamp(22px, 4.6vw, 34px); }
.p-contactBtn__value {
white-space: normal; } } .p-tecAward {
position: relative;
overflow: clip; padding: clamp(70px, 7vw, 110px) 0; padding-top: 0px;
color: #fff;
margin-bottom: clamp(70px, 7vw, 110px); } .p-tecAward__bg {
position: absolute;
inset: 0;
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/index/bg_index__tec.jpg) center/cover no-repeat;
z-index: 0; } .p-tecAward::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(1200px 500px at 50% 45%, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.22));
z-index: 1;
pointer-events: none; } .p-tecAward__deco {
position: absolute;
inset: 0;
z-index: 2;
pointer-events: none; }
.p-tecAward__img {
position: absolute;
height: auto;
display: block;
user-select: none;
-webkit-user-drag: none;
filter: drop-shadow(0 18px 28px rgba(0, 0, 0, 0.18)); } .p-tecAward__img--left {
left: clamp(-120px, -10vw, -40px);
top: 50%;
transform: translateY(-52%) rotate(-6deg);
width: clamp(420px, 45vw, 760px);
opacity: 0.95; } .p-tecAward__img--right {
right: clamp(-10px, -1vw, 0px);
top: 50%;
transform: translateY(-50%);
width: clamp(260px, 24vw, 320px);
opacity: 0.98; } .p-tecAward__content {
position: relative;
z-index: 3;
text-align: center;
max-width: 980px;
margin: 0 auto;
padding-inline: clamp(6px, 2vw, 22px); } .p-tecAward__head {
position: relative;
padding-top: clamp(26px, 4vw, 52px); margin-bottom: clamp(22px, 5vw, 100px); } .p-tecAward__en {
position: absolute;
left: 50%;
top: 0;
transform: translateX(-50%); opacity: 0.1; color: #fff;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 0.9; font-size: clamp(56px, 8vw, 120px);
width: 140vw; text-align: center;
pointer-events: none;
user-select: none;
white-space: nowrap; } .p-tecAward__ja {
position: relative;
z-index: 1;
margin: 0;
color: #fff;
font-weight: 700;
letter-spacing: 0.06em;
line-height: 1.15; padding-top: clamp(34px, 4.2vw, 58px); font-size: clamp(26px, 3.2vw, 44px); } @media (max-width: 1000px) {
.p-tecAward__en {
font-size: clamp(40px, 10vw, 78px);
width: 160vw;
opacity: 0.22; }
.p-tecAward__ja {
padding-top: clamp(26px, 6vw, 40px); } } .p-tecAward__badge {
display: inline-block;
background: #fff2cf;
color: #111;
padding: clamp(18px, 2.2vw, 26px) clamp(22px, 3vw, 38px);
border-radius: 4px;
box-shadow: 0 14px 32px rgba(0, 0, 0, 0.14);
margin: 0 auto clamp(22px, 2.6vw, 34px); }
.p-tecAward__badgeTop {
margin: 0 0 10px;
font-weight: 700;
letter-spacing: 0.04em;
font-size: clamp(18px, 1.8vw, 30px);
line-height: 1.35; }
.p-tecAward__badgeMain {
margin: 0;
font-weight: 800;
letter-spacing: 0.04em;
font-size: clamp(22px, 2.6vw, 44px);
line-height: 1.25; } .p-tecAward__text {
margin: 0 auto clamp(26px, 3vw, 44px);
max-width: 720px;
font-weight: 500;
letter-spacing: 0.05em;
font-size: clamp(18px, 1.5vw, 25px);
line-height: 2.0;
text-shadow: 0 2px 10px rgba(0, 0, 0, 0.22); } .p-tecAward__btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: clamp(220px, 24vw, 340px);
height: clamp(52px, 5.2vw, 64px);
padding-inline: 22px;
border-radius: 999px;
background: #fff;
font-size: clamp(16px, 1.5vw, 22px);
color: #111;
text-decoration: none;
font-weight: 700;
letter-spacing: 0.06em;
box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1), filter 0.22s ease; }
.p-tecAward__btn:hover {
transform: translateY(-3px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.22);
filter: brightness(1.02); }
.p-tecAward__btn:active {
transform: translateY(-1px);
box-shadow: 0 14px 28px rgba(0, 0, 0, 0.18);
filter: brightness(0.99); }
.p-tecAward__btn:focus-visible {
outline: 3px solid rgba(255, 255, 255, 0.55);
outline-offset: 4px; } @media (max-width: 1000px) {
.p-tecAward {
padding: clamp(56px, 9vw, 86px) 0; } .p-tecAward__img--left {
left: clamp(-80px, -10vw, -24px); top: clamp(10px, 3vw, 28px);
bottom: auto;
transform: rotate(-8deg); width: min(88vw, 520px);
opacity: 0.55; } .p-tecAward__img--right {
right: 10px;
bottom: clamp(-10px, -2vw, 18px); left: auto;
top: auto;
transform: none; width: min(62vw, 130px);
opacity: 0.9; }
.p-tecAward__en {
font-size: clamp(34px, 10vw, 64px); } } @media (max-width: 560px) {
.p-tecAward__badgeMain {
font-size: clamp(20px, 6.4vw, 30px); }
.p-tecAward__value { } } .p-recruit {
background: #f3f6f5;
padding: clamp(80px, 8vw, 120px) 0;
overflow: hidden; }
.p-recruit__wrap {
position: relative;
max-width: 1250px;
margin: 0 auto; } .p-recruit__panel {
position: relative;
background: #fff;
border-radius: 40px;
padding: clamp(60px, 6vw, 90px) clamp(40px, 5vw, 80px);
z-index: 2;
box-shadow: 0 30px 60px rgba(0, 0, 0, 0.05); }
.p-recruit__content {
position: relative;
z-index: 4; text-align: center;
max-width: 760px;
margin: 0 auto; }
.p-recruit__ja {
color: #f08300;
font-weight: 800;
font-size: clamp(40px, 3vw, 54px);
margin-bottom: 10px; }
.p-recruit__en {
color: #c1c1c1;
font-weight: 700;
font-size: clamp(18px, 2vw, 32px);
margin-bottom: 28px; }
.p-recruit__text p {
margin-bottom: 14px;
line-height: 2;
font-size: clamp(16px, 1.2vw, 20px); }
.p-recruit__btn {
margin-top: 30px;
display: inline-flex;
align-items: center;
gap: 12px;
padding: 16px 40px;
border: 2px solid #f08300;
border-radius: 999px;
color: #f08300;
font-weight: 700;
text-decoration: none;
letter-spacing: .06em;
transition: .25s ease; }
.p-recruit__btn:hover {
background: rgba(240, 131, 0, 0.08);
transform: translateY(-3px);
box-shadow: 0 18px 30px rgba(0, 0, 0, 0.08); }
.p-recruit__arrow {
width: 0;
height: 0;
border-left: 10px solid #f08300;
border-top: 6px solid transparent;
border-bottom: 6px solid transparent; } .p-recruit__photo {
position: absolute;
z-index: 2; }
.p-recruit__photo--left img {
display: block;
height: auto;
width: clamp(160px, 28vw, 380px); } .p-recruit__photo--left {
left: clamp(-20px, -20vw, -60px);
top: 50%;
transform: translateY(-50%);
z-index: 2; } .p-recruit__photo--right {
right: -100px;
right: clamp(-150px, calc(100px - 10vw), -20px);
top: 50%;
transform: translateY(-50%);
z-index: 2; }
.p-recruit__photo--right img {
display: block;
height: auto;
width: clamp(180px, 28vw, 440px); } @media (max-width: 800px) {
.p-recruit__wrap {
padding: 0 20px; } .p-recruit__photos {
margin-top: 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px;
align-items: start; } .p-recruit__photo {
position: static;
transform: none;
margin: 0;
z-index: auto; } .p-recruit__photo--left,
.p-recruit__photo--right {
left: auto;
right: auto;
top: auto; } .p-recruit__photo img {
width: 100%;
height: auto;
display: block; }
.p-recruit__panel {
padding: 40px 24px; } } .p-triviaNav {
margin: 0 0 28px; }
.p-triviaNav__title {
margin: 22px 0 10px;
font-weight: 700; }
.p-triviaNav__list {
margin: 0 0 6px;
padding-left: 1.2em; }
.p-triviaNav__list a {
text-decoration: underline;
text-underline-offset: 3px; } .c-tableWrap {
margin: 18px 0 14px; }
.c-tableWrap.-scroll {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
padding-bottom: 6px; } .c-tableWrap.-scroll::after {
content: "※表は横にスクロールできます";
display: block;
font-size: 12px;
opacity: .75;
margin-top: 6px; }
.c-table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
background: #fff;
border: 1px solid #e2e6e4;
border-radius: 14px;
overflow: hidden;
min-width: 720px; }
.c-table th,
.c-table td {
border-bottom: 1px solid #e2e6e4;
border-right: 1px solid #e2e6e4;
padding: 12px 12px;
vertical-align: top;
font-size: 14px;
line-height: 1.6; }
.c-table th:last-child,
.c-table td:last-child {
border-right: 0; }
.c-table tr:last-child th,
.c-table tr:last-child td {
border-bottom: 0; }
.c-table thead th {
background: #f3f6f5; font-weight: 700;
white-space: nowrap; } .c-table tbody th[scope="row"] {
background: #fbfcfc;
font-weight: 700;
white-space: nowrap; } .c-note {
margin: 10px 0 18px;
font-size: 13px;
opacity: .9; } @media (max-width: 800px) {
.c-table {
min-width: 900px; } .c-table th, .c-table td {
font-size: 13px;
padding: 10px 10px; } } .p-recruitTop {
background: #fff; } .p-recruitHero {
position: relative;
min-height: clamp(420px, 62vh, 460px);
overflow: clip;
color: #fff; }
@media (min-width: 1000px) {
.p-recruitHero { min-height: calc(clamp(520px, 62vh, 760px) + 200px); } }
.p-recruitHero__media {
position: absolute;
inset: 0;
overflow: hidden; }
.p-recruitHero__image {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block; }
.p-recruitHero__video {
width: 100%;
height: 100%;
object-fit: cover; }
.p-recruitHero__overlay {
position: relative;
z-index: 1;
min-height: inherit;
display: grid;
align-items: end;
padding: clamp(80px, 10vh, 140px) 0 clamp(50px, 6vh, 90px); }
.p-recruitHero__overlay::before {
content: "";
position: absolute;
inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.5));
z-index: -1; } .p-recruitHero__btn.c-btn { border-radius: 50px;
border: 1px solid rgba(255, 255, 255, 0.75);
background: transparent;
color: #fff;
padding: 14px 18px;
min-width: 220px;
display: inline-flex;
align-items: center;
justify-content: space-between;
gap: 14px;
cursor: pointer; }
.p-recruitHero__btn.c-btn:hover {
background: rgba(255, 255, 255, 0.12); }
.p-recruitHero__copy {
max-width: 860px;
padding-left: clamp(12px, 3vw, 56px);
padding-right: clamp(12px, 3vw, 56px); }
.p-recruitHero__lead {
letter-spacing: .12em;
opacity: .85;
margin: 0 0 .6em; }
.p-recruitHero__title {
font-size: clamp(26px, 3.2vw, 44px);
line-height: 1.25;
margin: 0 0 .6em; }
.p-recruitHero__sub {
font-size: clamp(15px, 1.1vw, 18px);
line-height: 1.9;
margin: 0 0 1.4em;
max-width: 720px; }
.p-recruitHero__cta {
display: flex;
gap: 12px;
flex-wrap: wrap; } .p-recruitModal {
position: fixed;
inset: 0;
z-index: 9999;
display: none; }
.p-recruitModal.is-open {
display: block; }
.p-recruitModal__backdrop {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.72); }
.p-recruitModal__panel {
position: relative;
width: min(980px, 92vw);
margin: 6vh auto 0;
background: #111;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35); }
.p-recruitModal__close {
position: absolute;
top: 10px;
right: 10px;
width: 44px;
height: 44px;
border: 0;
background: rgba(255, 255, 255, 0.12);
color: #fff;
border-radius: 999px;
cursor: pointer; }
.p-recruitModal__videoWrap {
aspect-ratio: 16 / 9;
background: #000; }
.p-recruitModal__video {
width: 100%;
height: 100%;
display: block; } .p-recruitWhy {
padding: clamp(70px, 8vw, 120px) 0; }
.p-recruitWhy__inner {
display: grid;
grid-template-columns: minmax(280px, 0.9fr) minmax(520px, 1.3fr);
gap: clamp(24px, 4vw, 56px);
align-items: start;
align-items: center; }
@media (max-width: 900px) {
.p-recruitWhy__inner {
grid-template-columns: 1fr; } }
.p-recruitWhy__en {
letter-spacing: .14em;
opacity: .6;
margin: 0 0 1em;
color: #209570; }
.p-recruitWhy__ja {
margin: 0;
line-height: 1.08; }
.p-recruitWhy__lead {
display: block;
font-size: clamp(18px, 3.2vw, 20px);
font-weight: 700;
color: #111;
letter-spacing: .01em; }
.p-recruitWhy__big {
display: block;
margin-top: clamp(16px, 2vw, 20px);
font-size: clamp(30px, 5.6vw, 50px);
font-weight: 800;
color: #209570; letter-spacing: .02em;
line-height: 1.6; }
.p-recruitWhy__panel { background: #209570;
color: #fff;
padding: clamp(22px, 3vw, 38px); }
.p-recruitWhy__panelTitle {
font-size: clamp(18px, 1.6vw, 22px);
line-height: 1.45;
margin: 0 0 1em;
color: #fff; }
.p-recruitWhy__text {
margin-top: 22px;
color: #fff; }
.p-recruitWhy__more {
margin-top: 22px; } .p-recruitWhy .c-btn.-fill { border-radius: 50px; background: #209570;
border: 1px solid #fff;
color: #fff; padding: 18px 26px;
min-width: 280px;
display: inline-flex;
align-items: center;
justify-content: space-between;
gap: 18px;
font-weight: 700;
letter-spacing: .06em;
text-decoration: none;
transition: background .25s ease, transform .25s ease; } .p-recruitWhy .c-btn.-fill:hover {
background: #1b7e5d; transform: translateY(-2px); } .p-recruitWhy .c-btn.-fill .c-btn__icon {
font-size: 16px;
transition: transform .25s ease; }
.p-recruitWhy .c-btn.-fill:hover .c-btn__icon {
transform: translateX(6px); } .p-recruitJob {
padding: clamp(70px, 8vw, 120px) 0;
background: #f3f6f5; }
.p-recruitJob__head {
margin-bottom: 22px; }
.p-recruitJob__en {
letter-spacing: .14em;
opacity: .6;
margin: 0 0 .4em;
color: #209570; }
.p-recruitJob__ja {
font-size: clamp(22px, 2.3vw, 34px);
margin: 0; } .p-recruitJobGrid {
position: relative;
border-radius: 0;
overflow: clip;
min-height: clamp(520px, 52vw, 720px); background: #000;
display: grid; } .p-recruitJobGrid__bg {
position: absolute;
inset: 0;
background-size: cover;
background-position: center;
opacity: 0;
transform: scale(1.01);
transition: opacity .35s ease, transform .65s ease;
z-index: 1; }
.p-recruitJobGrid.is-active .p-recruitJobGrid__bg {
opacity: 1;
transform: scale(1); } .p-recruitJobGrid__list {
position: relative;
z-index: 2;
display: grid;
grid-template-columns: repeat(4, 1fr);
min-height: inherit;
margin: 0;
padding: 0;
list-style: none; } .p-recruitJobCard {
position: relative;
overflow: clip; } .p-recruitJobCard::before {
content: "";
position: absolute;
inset: 0;
background-image: var(--job-bg);
background-size: cover;
background-position: center;
opacity: 1;
transition: opacity .35s ease, transform .65s ease;
transform: scale(1.02);
z-index: 0; } .p-recruitJobCard::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.42);
transition: opacity .35s ease;
z-index: 1; } .p-recruitJobCard:not(:last-child) .p-recruitJobCard__link::after {
content: "";
position: absolute;
top: 0;
bottom: 0; right: 0;
width: 1px;
background: rgba(255, 255, 255, 0.25); }  .p-recruitJobCard__link {
position: relative;
z-index: 2;
display: block;
height: 100%;
text-decoration: none;
color: #fff; } .p-recruitJobCard__vTitle {
position: absolute;
top: clamp(34px, 5vw, 84px); left: 50%;
transform: translateX(-50%);
writing-mode: vertical-rl; font-size: clamp(28px, 3.2vw, 38px);
font-weight: 800;
letter-spacing: .12em;
line-height: 1.05;
text-shadow: 0 8px 26px rgba(0, 0, 0, 0.45);
white-space: nowrap; } .p-recruitJobGrid.is-active .p-recruitJobCard::before {
opacity: 0;
transform: scale(1); }
.p-recruitJobGrid.is-active .p-recruitJobCard::after {
opacity: 0.15; } .p-recruitJobGrid.is-active .p-recruitJobCard__vTitle {
opacity: 0;
transition: opacity .2s ease; } .p-recruitJobGrid__overlay {
position: absolute;
inset: 0;
z-index: 4;
pointer-events: none;
opacity: 0;
transition: opacity .25s ease; }
.p-recruitJobGrid.is-active .p-recruitJobGrid__overlay {
opacity: 1; } .p-recruitJobGrid__kicker,
.p-recruitJobGrid__title,
.p-recruitJobGrid__desc {
left: clamp(26px, 5vw, 96px); }
.p-recruitJobGrid__title {
position: absolute;
top: clamp(92px, 12vw, 190px);
margin: 0;
font-size: clamp(34px, 5.4vw, 72px);
font-weight: 900;
line-height: 1.05;
letter-spacing: .02em;
color: #fff; }
.p-recruitJobGrid__desc {
position: absolute;
top: clamp(170px, 20vw, 300px);
margin: 0;
max-width: min(52ch, 70%);
font-size: clamp(18px, 1.5vw, 24px);
line-height: 1.9;
opacity: .92;
color: #fff; } .p-recruitJobGrid__arrow {
position: absolute;
right: clamp(14px, 3vw, 44px);
top: 50%;
transform: translateY(-50%);
width: 72px;
height: 72px;
border: 1px solid rgba(255, 255, 255, 0.85);
display: grid;
place-items: center;
color: #fff;
text-decoration: none;
pointer-events: auto; }
.p-recruitJobGrid__arrow:hover {
background: rgba(255, 255, 255, 0.12); }
.p-recruitJobCard__panel {
display: none; } @media (max-width: 768px) {
.p-recruitJobGrid {
min-height: auto;
background: #fff; } .p-recruitJobGrid__bg,
.p-recruitJobGrid__overlay {
display: none !important; } .p-recruitJobGrid__list {
display: grid;
grid-template-columns: 1fr;
gap: 16px;
min-height: auto; }
.p-recruitJobCard {
min-height: 220px; } .p-recruitJobCard__link::after {
display: none !important; } .p-recruitJobCard::before {
opacity: 1 !important;
transform: none !important;
transition: none !important; } .p-recruitJobCard::after {
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 42%, rgba(0, 0, 0, 0.55) 78%, rgba(0, 0, 0, 0.78) 100%);
transition: none !important; }
.p-recruitJobCard__link {
height: 100%;
display: block;
position: relative;
color: #fff; } .p-recruitJobCard__vTitle {
writing-mode: horizontal-tb;
left: 16px;
bottom: 16px;
top: auto;
transform: none;
font-size: 22px;
letter-spacing: .04em; } .p-recruitJobCard__panel {
position: absolute;
left: 16px;
right: 16px;
bottom: 16px;
display: grid;
gap: 10px;
opacity: 0;
transform: translateY(8px);
transition: opacity .18s ease, transform .18s ease; } .p-recruitJobCard__title {
font-size: 22px;
font-weight: 900;
letter-spacing: .02em;
line-height: 1.15; }
.p-recruitJobCard__desc {
font-size: 14px;
line-height: 1.8;
opacity: .95; }
.p-recruitJobCard__arrow {
width: 52px;
height: 52px;
border: 1px solid rgba(255, 255, 255, 0.9);
display: grid;
place-items: center;
justify-self: end; } }
@media (max-width: 768px) and (hover: hover) and (pointer: fine) {
.p-recruitJobCard:hover .p-recruitJobCard__panel {
opacity: 1;
transform: translateY(0); }
.p-recruitJobCard:hover .p-recruitJobCard__vTitle {
opacity: 0; } }
@media (max-width: 768px) { .p-recruitJobCard.is-open .p-recruitJobCard__panel {
opacity: 1;
transform: translateY(0); }
.p-recruitJobCard.is-open .p-recruitJobCard__vTitle {
opacity: 0; } .p-recruitJobCard,
.p-recruitJobCard * {
transition-duration: 0s; } } .p-recruitPeople {
padding: clamp(70px, 8vw, 120px) 0;
background: #fff; }
.p-recruitPeople__head {
display: grid;
grid-template-columns: minmax(220px, 0.9fr) minmax(520px, 1.3fr);
gap: clamp(16px, 4vw, 48px);
align-items: end;
margin-bottom: clamp(18px, 4vw, 34px); }
@media (max-width: 900px) {
.p-recruitPeople__head {
grid-template-columns: 1fr;
align-items: start; } }
.p-recruitPeople__en {
letter-spacing: .14em;
opacity: .55;
margin: 0 0 .4em;
color: #209570; }
.p-recruitPeople__ja {
font-size: clamp(22px, 2.3vw, 34px);
margin: 0; }
.p-recruitPeople__lead {
margin: 0;
font-size: clamp(15px, 1.1vw, 18px);
line-height: 1.9;
color: #111; } .p-people {
position: relative; }
.p-people__viewport {
overflow: hidden; }
.p-people__track {
display: flex;
gap: clamp(14px, 2vw, 22px);
margin: 0;
padding: 0;
list-style: none; will-change: transform;
transition: transform .5s ease; } .p-peopleCard {
flex: 0 0 calc((100% - 2 * clamp(14px, 2vw, 22px)) / 3);
background: #fff; }
@media (max-width: 1100px) {
.p-peopleCard {
flex-basis: calc((100% - 1 * clamp(14px, 2vw, 22px)) / 2); } }
@media (max-width: 680px) {
.p-peopleCard {
flex-basis: 86%; } } .p-peopleCard__link {
display: grid;
grid-template-rows: auto 1fr;
text-decoration: none;
color: inherit;
height: 100%;
border: 1px solid #e8e8e8;
border-radius: 0;
overflow: clip; }
.p-peopleCard__media {
margin: 0;
aspect-ratio: 4 / 5; background: #f3f3f3; }
.p-peopleCard__media img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; }
.p-peopleCard__body {
padding: 14px 16px 18px;
display: grid;
gap: 8px; }
.p-peopleCard__name {
margin: 0;
font-weight: 800;
letter-spacing: .04em;
font-size: 18px; }
.p-peopleCard__meta {
margin: 0;
color: #666;
font-size: 13px; }
.p-peopleCard__one {
margin: 0;
font-size: 14px;
line-height: 1.7;
color: #111; } .p-peopleCard__link:hover .p-peopleCard__media img {
transform: scale(1.03);
transition: transform .6s ease; } .p-people__controls {
display: grid;
grid-template-columns: 64px 1fr 64px;
align-items: center;
gap: 10px;
margin-top: 22px; } .p-people__arrow {
width: 64px;
height: 64px;
border-radius: 50%; border: 1px solid #209570; background: #fff;
color: #209570; display: grid;
place-items: center;
font-size: 20px;
font-weight: 700;
cursor: pointer;
transition: all .25s ease; } .p-people__arrow:hover {
background: #209570;
color: #fff; } .p-people__arrow:disabled {
opacity: .3;
cursor: default; } .p-people__dots {
display: flex;
justify-content: center;
gap: 10px;
flex-wrap: wrap; }
.p-people__dot {
width: 10px;
height: 10px;
border-radius: 50%; border: 1px solid #209570; background: transparent;
cursor: pointer;
transition: all .25s ease; } .p-people__dot.is-active {
background: #209570; border-color: #209570; } .p-people__dot:hover {
background: rgba(32, 149, 112, 0.3); }
.p-recruitPeople__more {
margin-top: 22px; } .p-recruitPeople .c-btn.-fill {
border-radius: 50px; } .p-people__viewport {
overflow: visible; } .p-people__track {
align-items: stretch; }
.p-peopleCard {
flex: 0 0 calc((100% - 2 * clamp(14px, 2vw, 22px)) / 3);
transition: transform .35s ease, filter .35s ease, opacity .35s ease;
transform-origin: center center; }
@media (max-width: 1100px) {
.p-peopleCard {
flex-basis: calc((100% - 1 * clamp(14px, 2vw, 22px)) / 2); } }
@media (max-width: 680px) {
.p-peopleCard {
flex-basis: 86%; } } .p-peopleCard__link {
display: block;
text-decoration: none;
color: #fff; border-radius: 0;
border: 0; } .p-peopleCard__media {
position: relative;
margin: 0;
aspect-ratio: 4 / 5;
overflow: clip;
background: #ddd; }
.p-peopleCard__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 20%; display: block;
transform: scale(1.01);
transition: transform .6s ease; } .p-peopleCard__media::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.55) 72%, rgba(0, 0, 0, 0.78) 100%);
pointer-events: none; } .p-peopleCard__cap {
position: absolute;
left: 18px;
right: 18px;
bottom: 18px;
display: grid;
gap: 6px;
z-index: 2; }
.p-peopleCard__name {
margin: 0;
font-weight: 900;
letter-spacing: .04em;
font-size: clamp(18px, 1.6vw, 26px);
line-height: 1.15;
text-shadow: 0 10px 28px rgba(0, 0, 0, 0.45); }
.p-peopleCard__meta {
margin: 0;
font-size: 13px;
color: #fff; }
.p-peopleCard__one {
margin: 0;
font-size: 14px;
line-height: 1.7;
color: #fff; } .p-peopleCard__link:hover .p-peopleCard__media img {
transform: scale(1.06); } .p-peopleCard.is-center {
transform: scale(1.08);
z-index: 3; }
.p-peopleCard:not(.is-center) {
opacity: .88;
filter: saturate(0.95); } @media (max-width: 680px) {
.p-peopleCard.is-center {
transform: scale(1.03); } } .p-recruitTop,
.p-recruitPeople,
.p-people {
overflow-x: hidden; } .p-people__viewport {
overflow: hidden; padding: 18px 22px;
margin: -18px -22px; } .p-people__track {
will-change: transform; } .p-peopleCard.is-center {
transform: scale(1.08);
z-index: 3; } .p-recruitPeople__more {
margin-top: clamp(28px, 4vw, 48px);
margin-left: auto;
margin-right: auto;
text-align: center; }
.p-recruitPeople__more .c-btn.-fill {
display: inline-flex;
align-items: center;
justify-content: space-between;
min-width: 260px;
padding: 18px 28px;
font-size: 15px;
font-weight: 700;
letter-spacing: .05em;
background: #209570;
color: #fff;
border: 1px solid #209570;
border-radius: 50px;
transition: background .3s ease, transform .25s ease; } .p-recruitPeople__more .c-btn__icon {
margin-left: 18px;
transition: transform .3s ease; } .p-recruitPeople__more .c-btn.-fill:hover {
background: #1b7c5d;
transform: translateY(-3px); }
.p-recruitPeople__more .c-btn.-fill:hover .c-btn__icon {
transform: translateX(6px); } .p-recruitEnv {
background: #209570; color: #fff;
padding: clamp(56px, 6vw, 96px) 0;
overflow: clip; }
.p-recruitEnv__grid {
display: grid;
grid-template-columns: minmax(360px, 0.95fr) minmax(520px, 1.35fr);
gap: clamp(22px, 4vw, 56px);
align-items: center; } .p-recruitEnv__content {
min-width: 0; }
.p-recruitEnv__en {
font-size: 14px;
letter-spacing: .14em;
opacity: .9;
margin: 0 0 10px; }
.p-recruitEnv__ja {
font-size: clamp(26px, 3.2vw, 44px);
font-weight: 900;
line-height: 1.15;
margin: 0 0 18px; }
.p-recruitEnv__lead {
font-size: clamp(15px, 1.2vw, 18px);
line-height: 1.9;
margin: 0 0 12px;
font-weight: 700; }
.p-recruitEnv__text {
font-size: clamp(14px, 1.1vw, 17px);
line-height: 1.95;
margin: 0 0 28px;
opacity: .95; }
.p-recruitEnv__more {
margin-top: 14px; } .p-recruitEnv__media {
margin: 0;
position: relative;
overflow: hidden; aspect-ratio: 16 / 10;
background: rgba(0, 0, 0, 0.15); }
.p-recruitEnv__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 25%; display: block;
transform: scale(1.01); } @media (max-width: 900px) {
.p-recruitEnv__grid {
grid-template-columns: 1fr; }
.p-recruitEnv__media {
order: -1; aspect-ratio: 16 / 11; }
.p-recruitEnv__text {
margin-bottom: 22px; } } .c-btn.-white {
background: #fff;
color: #209570;
border: 1px solid rgba(255, 255, 255, 0.9); }
.c-btn.-white:hover {
background: rgba(255, 255, 255, 0.9); } .c-wysiwyg:has(> .p-recruitEntry) {
margin-bottom: 0; } .c-wysiwyg .p-recruitEntry {
width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw); background: #f3f6f5;
padding: clamp(56px, 6vw, 96px) 0; }
.p-recruitEntry {
background: #f3f6f5;
padding: clamp(56px, 6vw, 96px) 0; }
.c-wysiwyg .p-recruitEntry p {
margin: auto auto; }
.p-recruitEntry__head {
text-align: center;
margin-bottom: clamp(28px, 4vw, 44px); }
.p-recruitEntry__en {
margin: 0 0 6px;
font-size: clamp(40px, 6vw, 78px);
font-weight: 900;
letter-spacing: .02em;
color: #209570;
line-height: 1; }
.p-recruitEntry__ja {
margin: 0 0 14px;
font-size: clamp(18px, 2vw, 22px);
font-weight: 800;
color: #111; }
.p-recruitEntry__lead {
margin: 0 auto;
max-width: 60ch;
font-size: 18px;
line-height: 1.9;
color: #333;
text-align: center; } .p-recruitEntryNav {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(14px, 2vw, 22px); } .p-recruitEntryNav__item {
position: relative;
display: grid;
grid-template-columns: 44px 1fr 56px;
align-items: center;
column-gap: 16px;
padding: 22px 22px;
background: #209570;
color: #fff;
text-decoration: none !important;
border-radius: 10px; box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
transform: translateY(0);
transition: transform .25s ease, filter .25s ease; } .p-recruitEntryNav__item.-primary {
filter: brightness(0.92); } .p-recruitEntryNav__icon {
display: grid;
place-items: center;
opacity: .95; } .p-recruitEntryNav__ttl {
display: block;
font-size: 18px;
font-weight: 900;
letter-spacing: .02em;
line-height: 1.2; }
.p-recruitEntryNav__sub {
display: block;
margin-top: 6px;
font-size: 12px;
letter-spacing: .12em;
opacity: .9; } .p-recruitEntryNav__arrow {
width: 44px;
height: 44px;
border: 1px solid rgba(255, 255, 255, 0.9);
display: grid;
place-items: center;
justify-self: end;
font-weight: 900; } .p-recruitEntryNav__item:hover {
transform: translateY(-3px);
filter: brightness(0.96); } .p-recruitEntryNav__item:focus-visible {
outline: 2px solid rgba(255, 255, 255, 0.85);
outline-offset: 3px; } @media (max-width: 900px) {
.p-recruitEntryNav {
grid-template-columns: 1fr; }
.p-recruitEntryNav__item {
grid-template-columns: 44px 1fr 52px;
padding: 18px 18px; } } .js-heroReveal .js-heroItem {
opacity: 0;
transform: translateY(56px);
transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), transform 1.05s cubic-bezier(0.22, 1, 0.36, 1);
will-change: transform, opacity; } .js-heroReveal.is-inview .js-heroItem {
opacity: 1;
transform: translateY(0); } .js-heroReveal.is-inview .js-heroItem:nth-child(1) {
transition-delay: .05s; }
.js-heroReveal.is-inview .js-heroItem:nth-child(2) {
transition-delay: .14s; }
.js-heroReveal.is-inview .js-heroItem:nth-child(3) {
transition-delay: .23s; }
.js-heroReveal.is-inview .js-heroItem:nth-child(4) {
transition-delay: .32s; } @media (prefers-reduced-motion: reduce) {
.js-heroReveal .js-heroItem {
opacity: 1 !important;
transform: none !important;
transition: none !important; } } .js-reveal {
opacity: 0;
transform: translateY(48px);
transition: opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1), transform 1s cubic-bezier(0.22, 1, 0.36, 1);
will-change: transform, opacity; }
.js-reveal.is-inview {
opacity: 1;
transform: translateY(0); } .js-reveal.-strong {
transform: translateY(70px);
transition-duration: 1.2s; } .js-reveal.-left {
transform: translateX(-60px); }
.js-reveal.-right {
transform: translateX(60px); } @media (prefers-reduced-motion: reduce) {
.js-reveal {
opacity: 1 !important;
transform: none !important;
transition: none !important; } }
.js-revealGroup .js-reveal {
transition-delay: 0s; }
.js-revealGroup .js-reveal:nth-child(1) {
transition-delay: .05s; }
.js-revealGroup .js-reveal:nth-child(2) {
transition-delay: .15s; }
.js-revealGroup .js-reveal:nth-child(3) {
transition-delay: .25s; }
.js-revealGroup .js-reveal:nth-child(4) {
transition-delay: .35s; } .js-revealGroup .js-reveal {
transition-delay: 0s; }
.js-revealGroup .js-reveal:nth-child(1) {
transition-delay: .06s; }
.js-revealGroup .js-reveal:nth-child(2) {
transition-delay: .16s; }
.js-revealGroup .js-reveal:nth-child(3) {
transition-delay: .26s; } .p-entryJob {
background: #fff; }
.p-entryJob__title {
font-size: clamp(22px, 2.5vw, 32px);
font-weight: 900;
margin: 0 0 32px;
letter-spacing: .02em; }
.p-entryJob__tableWrap {
overflow-x: auto; }
.p-entryJob__table {
width: 100%;
border-collapse: collapse;
border-top: 0px solid #111;
font-size: 15px; }
.p-entryJob__table th,
.p-entryJob__table td {
padding: 22px 24px;
vertical-align: top;
line-height: 1.9;
border-bottom: 1px solid #e5e5e5; }
.p-entryJob__table th {
width: 240px;
font-weight: 800;
text-align: left;
background: #f7f7f7;
letter-spacing: .02em; }
.p-entryJob__table td {
color: #333; } @media (max-width: 768px) {
.p-entryJob__table,
.p-entryJob__table tbody,
.p-entryJob__table tr,
.p-entryJob__table th,
.p-entryJob__table td {
display: block;
width: 100%; }
.p-entryJob__table tr {
padding: 18px 0;
border-bottom: 1px solid #e5e5e5; }
.p-entryJob__table th {
background: none;
padding: 0 0 8px;
font-size: 14px;
color: #209570; }
.p-entryJob__table td {
padding: 0; }
.p-entryJob__table th,
.p-entryJob__table td {
border: none; }
.p-entryJob__table {
border-top: none; } } .c-wysiwyg .p-people__track.-grid .p-peopleCard img {
max-width: 100%;
height: auto;
margin: 0em 0; }
.p-people__track.-grid .p-peopleCard__name {
margin: 0;
font-weight: 900;
letter-spacing: .04em;
font-size: clamp(20px, 3vw, 30px);
line-height: 1.15;
color: white; }
.p-people__track.-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(14px, 2vw, 22px); transform: none !important;
will-change: auto; }
.p-people__track.-grid .p-peopleCard { flex: initial !important;
width: auto !important;
transform: none; } .p-people__track.-grid .p-peopleCard__link:hover .p-peopleCard__media img {
transform: scale(1.06); } @media (max-width: 1100px) {
.p-people__track.-grid {
grid-template-columns: repeat(2, 1fr); } } @media (max-width: 680px) {
.p-people__track.-grid {
grid-template-columns: 1fr; } } .p-peopleSingleHero {
position: relative;
width: 100vw;
margin-left: 50%;
transform: translateX(-50%); } .p-peopleSingleHero__bg {
width: 100vw;
margin-left: 50%;
transform: translateX(-50%);
height: clamp(460px, 52vw, 720px);
position: relative; }
.p-peopleSingleHero__bg img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block; } .p-peopleSingleHero__bg::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.25) 45%, rgba(0, 0, 0, 0.05) 100%); } .p-peopleSingleHero__content {
position: absolute;
inset: 0;
display: flex;
align-items: center; } .p-peopleSingleHero__content .l-container {
position: relative;
z-index: 2; } .p-peopleSingleHero__inner {
position: absolute;
inset: 0;
display: grid;
grid-template-columns: 1fr auto;
align-items: end;
gap: clamp(16px, 3vw, 40px);
padding: clamp(26px, 4vw, 56px) 0;
z-index: 2; } .p-peopleSingleHero__lead {
align-self: center;
padding-right: clamp(10px, 2vw, 24px); }
.p-peopleSingleHero__kicker {
display: inline-block;
color: #fff;
font-weight: 700;
letter-spacing: .06em;
padding-bottom: 6px;
border-bottom: 1px solid rgba(255, 255, 255, 0.5);
margin: 0 0 18px; }
.p-peopleSingleHero__catch {
margin: 0;
color: #fff;
font-weight: 800;
line-height: 1.12;
letter-spacing: .02em;
font-size: clamp(36px, 5.2vw, 80px);
text-shadow: 0 14px 38px rgba(0, 0, 0, 0.35); } .p-peopleProfileBox {
background: #209570; color: #fff;
padding: clamp(18px, 2.2vw, 28px);
border-radius: 0; }
.p-peopleProfileBox__name {
margin: 0 0 12px;
font-weight: 800;
font-size: clamp(18px, 1.8vw, 24px);
letter-spacing: .06em; }
.p-peopleProfileBox__list {
margin: 0;
display: grid;
gap: 10px; }
.p-peopleProfileBox__row {
display: grid;
grid-template-columns: 5.5em 1fr;
gap: 12px;
line-height: 1.6;
font-size: clamp(13px, 1.1vw, 15px);
opacity: .95; }
.p-peopleProfileBox__row dt {
opacity: .9; }
.p-peopleProfileBox__row dd {
margin: 0;
font-weight: 700; } .p-peopleQA {
padding: clamp(56px, 7vw, 110px) 0;
background: #fff; } .p-peopleQAGroup {
padding: clamp(30px, 3vw, 50px) 0; }
.p-peopleQAGroup__inner {
display: grid; grid-template-columns: minmax(520px, 1.05fr) minmax(420px, 0.95fr);
gap: clamp(24px, 4vw, 60px);
align-items: center; min-width: 0; }
.p-peopleQAGroup__text {
display: grid;
gap: clamp(30px, 4vw, 48px);
min-width: 0; }
.p-peopleQAItem__q {
margin: 0 0 12px;
font-weight: 800;
font-size: clamp(18px, 1.8vw, 26px);
line-height: 1.4; }
.p-peopleQAItem__a {
font-size: clamp(15px, 1.05vw, 17px);
line-height: 1.9; } .p-peopleQAGroup__media {
margin: 0; height: clamp(260px, 32vw, 520px);
overflow: hidden; min-width: 0; }
.p-peopleQAGroup__media img {
width: 100%;
height: 100%; object-fit: cover; object-position: center 20%; display: block; } .p-peopleQAGroup.-reverse .p-peopleQAGroup__text {
order: 2; }
.p-peopleQAGroup.-reverse .p-peopleQAGroup__media {
order: 1; } .p-peopleQAGroup.-reverse .p-peopleQAGroup__inner {
grid-template-columns: minmax(420px, 0.95fr) minmax(520px, 1.05fr); } .p-peopleQAGroup.-centerImage {
padding: clamp(60px, 6vw, 100px) 0; }
.p-peopleQAGroup__media.-wide {
height: auto; overflow: hidden; }
.p-peopleQAGroup__media.-wide img {
width: 100%;
height: auto; display: block;
object-fit: cover; } @media (max-width: 900px) {
.p-peopleQAGroup__inner {
grid-template-columns: 1fr;
align-items: start; }
.p-peopleQAGroup.-reverse .p-peopleQAGroup__text,
.p-peopleQAGroup.-reverse .p-peopleQAGroup__media {
order: initial; } .p-peopleQAGroup__media {
height: clamp(220px, 56vw, 360px); } .p-peopleQAGroup__media.-wide {
height: auto; }
.p-peopleQAGroup__media.-wide img {
height: auto; } } .p-peopleQAGroup__inner {
display: grid; grid-template-areas: "text media";
grid-template-columns: minmax(420px, 0.95fr) minmax(520px, 1.05fr);
gap: clamp(24px, 4vw, 60px);
align-items: center;
min-width: 0; }
.p-peopleQAGroup__text {
grid-area: text;
min-width: 0; }
.p-peopleQAGroup__media {
grid-area: media;
margin: 0;
min-width: 0; } .p-peopleQAGroup.-reverse .p-peopleQAGroup__inner {
grid-template-areas: "media text";
grid-template-columns: minmax(520px, 1.05fr) minmax(420px, 0.95fr); } .p-peopleQAGroup__media {
height: clamp(260px, 52vw, 620px);
overflow: hidden; }
.p-peopleQAGroup__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 20%;
display: block; } @media (max-width: 900px) {
.p-peopleQAGroup__inner {
grid-template-areas: "media" "text";
grid-template-columns: 1fr;
align-items: start; } } .p-peopleSchedule {
position: relative;
overflow: clip;
background: #111;
width: 100vw;
margin-left: 50%;
transform: translateX(-50%); }
.p-peopleSchedule__bg {
position: absolute;
inset: 0; }
.p-peopleSchedule__bg img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(0.9); } .p-peopleSchedule::before {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.62);
z-index: 1; }
.p-peopleSchedule__inner {
position: relative;
z-index: 2;
padding: clamp(56px, 7vw, 110px) 0;
color: #fff; }
.p-peopleSchedule__head {
margin: 0 0 clamp(18px, 3vw, 34px); }
.p-peopleSchedule__ja {
margin: 0 0 6px;
font-weight: 900;
font-size: clamp(22px, 2.6vw, 34px); }
.p-peopleSchedule__en {
margin: 0;
font-weight: 700;
letter-spacing: .12em;
color: rgba(255, 255, 255, 0.75);
font-size: 13px; }
.p-peopleSchedule__list {
border-top: 1px solid rgba(255, 255, 255, 0.22); }
.p-peopleSchedule__row {
display: grid;
grid-template-columns: 6.5em 1fr;
gap: 14px;
padding: 18px 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.22); }
.p-peopleSchedule__time {
font-weight: 900;
letter-spacing: .06em; }
.p-peopleSchedule__txt {
opacity: .95;
line-height: 1.75; } @media (max-width: 900px) {
.p-peopleSingleHero__inner {
grid-template-columns: 1fr;
align-items: start;
padding: 18px 0 22px; } .p-peopleSingleHero__bg {
height: clamp(420px, 78vw, 520px); } .p-peopleSingleHero__bg::after {
background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.25) 55%, rgba(0, 0, 0, 0.15) 100%); }
.p-peopleQA__inner {
grid-template-columns: 1fr; }
.p-peopleQA__block.-reverse .p-peopleQA__inner {
grid-template-columns: 1fr; }
.p-peopleQA__block.-reverse .p-peopleQA__text {
order: 1; }
.p-peopleQA__block.-reverse .p-peopleQA__media {
order: 2; }
.p-peopleSchedule__row {
grid-template-columns: 5.5em 1fr;
padding: 14px 0; } } .p-recruitFaq {
padding: clamp(36px, 5vw, 72px) 0; }
.p-recruitFaq__inner {
margin: 0 auto;
padding: 0 20px; }
.p-recruitFaq__head {
margin: 0 0 22px;
font-size: clamp(20px, 2.2vw, 28px);
font-weight: 800;
letter-spacing: .02em; }
.p-recruitFaq__list {
display: grid;
gap: 18px; }
.p-recruitFaqItem {
background: #fff;
border: 1px solid rgba(0, 0, 0, 0.08);
border-radius: 0; }
.p-recruitFaqItem__q {
display: grid;
grid-template-columns: 44px 1fr;
align-items: center;
gap: 14px;
padding: 18px 22px;
border-bottom: 1px solid rgba(0, 0, 0, 0.08); }
.p-recruitFaqItem__qMark {
font-size: 28px;
font-weight: 900;
line-height: 1;
color: #209570; }
.p-recruitFaqItem__qText {
margin: 0;
font-size: clamp(16px, 1.2vw, 18px);
font-weight: 800;
line-height: 1.5; }
.p-recruitFaqItem__a {
padding: 16px 22px 18px;
background-color: rgba(32, 149, 112, 0.1); }
.p-recruitFaqItem__a p {
margin: 0;
font-size: 18px;
line-height: 1.9; } @media (max-width: 600px) {
.p-recruitFaqItem__q {
grid-template-columns: 36px 1fr;
padding: 16px 16px; }
.p-recruitFaqItem__a {
padding: 14px 16px 16px; } } .p-recruitCta.-full {
width: 100vw;
margin-left: calc(50% - 50vw);
background: #fff;
padding: clamp(44px, 6vw, 86px) 0 0; } .p-recruitCta__inner {
display: grid;
grid-template-columns: 1fr 1fr; min-height: clamp(260px, 20vw, 320px); }
@media (min-width: 901px) {
.p-recruitCta__inner {
max-height: 400px; } }
@media (max-width: 900px) {
.p-recruitCta__inner {
max-height: auto; } } .p-recruitCta__media {
margin: 0;
overflow: hidden; }
.p-recruitCta__media img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; } .p-recruitCta__panel {
position: relative;
background: #209570; overflow: hidden; } .p-recruitCta__content {
position: relative;
z-index: 2;
height: 100%;
display: grid;
align-content: center; gap: 14px; padding: clamp(26px, 3.6vw, 56px);
padding-left: clamp(22px, 4vw, 60px);
padding-right: clamp(18px, 3vw, 44px); } .c-secTitle.-left {
text-align: left; }
.c-secTitle.-left::before {
left: 0;
transform: translateY(-10%); } .p-recruitCta__text {
margin: 0;
max-width: 46ch;
color: rgba(255, 255, 255, 0.95);
line-height: 1.9;
font-size: clamp(14px, 1.05vw, 16px);
text-shadow: 0 1px 10px rgba(0, 0, 0, 0.18); } .c-btn.-onDark {
margin: 10px 0 0;
border-color: #fff;
color: #fff; } .p-recruitCta__panel .c-secTitle__eyebrow {
color: rgba(255, 255, 255, 0.85); }
.p-recruitCta__panel .c-secTitle__ja {
color: #fff; } .p-recruitCta__panel .c-secTitle::before {
color: rgba(255, 255, 255, 0.2); } .p-recruitCta .c-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 14px 28px;
min-width: 220px;
max-width: 300px;
font-size: 18px;
font-weight: 700;
letter-spacing: .06em;
text-decoration: none;
border-radius: 999px;
transition: all .3s ease; } .p-recruitCta .c-btn.-onDark {
background: #fff;
color: #209570;
border: 2px solid #fff; } .p-recruitCta .c-btn__arrow {
font-size: 16px;
transition: transform .3s ease; } .p-recruitCta .c-btn.-onDark:hover {
background: transparent;
color: #fff;
border-color: #fff; }
.p-recruitCta .c-btn.-onDark:hover .c-btn__arrow {
transform: translateX(4px); } .p-entryForm {
padding: clamp(56px, 6vw, 96px) 0;
padding-top: 0px; }
.p-entryForm__title {
font-size: clamp(22px, 2.5vw, 32px);
font-weight: 900;
margin: 0 0 10px; }
.p-entryForm__lead {
margin: 0 0 28px;
color: #333;
line-height: 1.9; } .wpcf7 form {
margin: 0; }
.wpcf7 .wpcf7-response-output {
margin: 18px 0 0;
padding: 14px 16px;
border-radius: 0; }
.c-form {
background: #fff;
border: 1px solid #e6e6e6;
padding: clamp(18px, 3vw, 34px); }
.c-form__row {
display: grid;
grid-template-columns: 220px 1fr;
gap: 18px;
padding: 16px 0;
border-top: 1px solid #eee; }
.c-form__row:first-child {
border-top: none; }
.c-form__label {
font-weight: 800;
line-height: 1.6;
color: #111; }
.c-form__req,
.c-form__opt {
display: inline-block;
margin-left: 10px;
padding: 2px 8px;
font-size: 12px;
line-height: 1.6;
border: 1px solid currentColor;
border-radius: 0; }
.c-form__req {
color: #209570; }
.c-form__opt {
color: #666; }
.c-form__field input[type="text"],
.c-form__field input[type="email"],
.c-form__field input[type="tel"],
.c-form__field select,
.c-form__field textarea {
width: 100%;
border: 1px solid #d7d7d7;
padding: 14px 14px;
font-size: 16px;
border-radius: 0;
outline: none;
background: #fff; }
.c-form__field textarea {
min-height: 170px;
resize: vertical; }
.c-form__field input:focus,
.c-form__field select:focus,
.c-form__field textarea:focus {
border-color: #209570;
box-shadow: 0 0 0 3px rgba(32, 149, 112, 0.15); }
.c-form__note {
margin: 8px 0 0;
font-size: 13px;
color: #666; }
.c-form__field .wpcf7-list-item {
margin: 0 18px 0 0; }
.c-form__agree {
padding-top: 18px;
margin-top: 12px;
border-top: 1px solid #eee;
font-size: 14px; }
.c-form__submit {
margin-top: 22px; } .c-form__submit input[type="submit"] {
width: min(520px, 100%);
display: block;
margin: 0 auto;
padding: 18px 22px;
background: #209570;
color: #fff;
border: 1px solid #209570;
border-radius: 0;
font-weight: 800;
letter-spacing: .06em;
cursor: pointer;
transition: transform .25s ease, filter .25s ease; }
.c-form__submit input[type="submit"]:hover {
transform: translateY(-2px);
filter: brightness(0.95); } .wpcf7-not-valid-tip {
margin-top: 8px;
font-size: 13px;
color: #b00020; }
.wpcf7-form.invalid .c-form {
border-color: rgba(176, 0, 32, 0.35); } @media (max-width: 768px) {
.c-form__row {
grid-template-columns: 1fr;
gap: 10px; }
.c-form__label {
font-size: 14px; } } .c-form--contact input[name="zip"] {
max-width: 220px; } .p-Message .wp-block-column:first-child {
position: relative;
padding: clamp(52px, 6vw, 92px) 0 0; }
.p-Message .wp-block-column:first-child::before {
content: attr(data-en);
position: absolute;
left: 0;
top: 0;
-webkit-transform: translateY(-10%);
transform: translateY(-10%);
font-size: clamp(42px, 6.2vw, 92px);
font-weight: 800;
letter-spacing: 0.08em;
text-transform: uppercase;
color: rgba(0, 0, 0, 0.06);
line-height: 1;
pointer-events: none;
white-space: nowrap; }
.p-Message .has-large-font-size {
line-height: 1.05;
position: relative;
display: inline-block;
border-bottom: 5px solid #209570; }
.p-Message .has-large-font-size::after {
content: "";
display: block;
width: clamp(140px, 15vw, 180px);
height: 4px;
background: rgba(255, 255, 255, 0.95);
margin-top: 16px;
border-radius: 999px; } .p-aboutMessage { --accent: #209570;
--text: #111;
--muted: #6b6f6e;
--line: #e6e9e8;
--bg: #f3f6f5;
--panel: #ffffff;
color: var(--text);        }
.p-aboutMessage .p-aboutMessage__sec {
padding: clamp(56px, 6vw, 96px) 0;
position: relative; }
.p-aboutMessage .p-aboutMessage__sec--mission,
.p-aboutMessage .p-aboutMessage__sec--values {
background: var(--bg); width: 100vw;
margin-left: calc(50% - 50vw); }
.p-aboutMessage .p-aboutMessage__inner {
width: min(1100px, 92vw);
margin: 0 auto; }
.p-aboutMessage .p-aboutMessage__head {
margin: 0 0 clamp(22px, 3vw, 34px); }
.p-aboutMessage .p-aboutMessage__eyebrow {
margin: 0 0 10px;
font-size: 14px;
letter-spacing: 0.16em;
color: var(--muted);
font-weight: 600;
text-transform: uppercase; }
.p-aboutMessage .p-aboutMessage__title {
margin: 0;
font-size: clamp(22px, 2.4vw, 30px);
letter-spacing: 0.06em;
line-height: 1.25;
position: relative;
padding-left: 14px; }
.p-aboutMessage .p-aboutMessage__title::before {
content: "";
position: absolute;
left: 0;
top: 0.18em;
width: 4px;
height: 1.1em;
background: var(--accent);
border-radius: 99px; }
.p-aboutMessage .p-aboutMessage__body,
.p-aboutMessage .p-aboutMessage__lead {
font-size: clamp(16px, 1.2vw, 20px);
line-height: 1.9;
color: var(--text); }
.p-aboutMessage .p-aboutMessage__body p,
.p-aboutMessage .p-aboutMessage__lead p {
margin: 0 0 1.2em; }
.p-aboutMessage .p-aboutMessage__body p:last-child,
.p-aboutMessage .p-aboutMessage__lead p:last-child {
margin-bottom: 0; }
.p-aboutMessage .p-aboutMessage__philosophy {
background: var(--panel); border-radius: clamp(18px, 2.6vw, 28px);
padding: clamp(22px, 3.2vw, 38px) 0;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 0 30px; }
@media (max-width: 640px) {
.p-aboutMessage .p-aboutMessage__philosophy {
grid-template-columns: 1fr;
gap: 0;
padding: clamp(22px, 3.2vw, 38px) 0 0; } }
.p-aboutMessage .p-aboutMessage__philosophy img {
border-radius: clamp(18px, 2.6vw, 28px); }
.p-aboutMessage .p-aboutMessage__catch {
margin: 0 0 clamp(14px, 2.4vw, 22px);
text-align: center;
font-weight: 800;
letter-spacing: 0.06em;
line-height: 1.35;
font-size: clamp(22px, 3vw, 36px); }
.p-aboutMessage .p-aboutMessage__catch span {
display: block; }
.p-aboutMessage .p-aboutMessage__panel {
background: var(--panel);
border-radius: clamp(18px, 2.6vw, 28px); position: relative;
border: 1px solid var(--line);
overflow: hidden; }
.p-aboutMessage .p-aboutMessage__subtitle {
margin: 0 0 14px;
font-size: clamp(18px, 2vw, 24px);
line-height: 1.45;
letter-spacing: 0.04em;
font-weight: 800; }
.p-aboutMessage .p-aboutMessage__values {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(14px, 2vw, 22px); }
.p-aboutMessage .p-aboutMessage__card {
background: var(--panel);
border: 1px solid var(--line);
border-radius: clamp(18px, 2.6vw, 28px); position: relative;
overflow: hidden; }
@media (max-width: 900px) {
.p-aboutMessage .p-aboutMessage__card {
display: flex; } }
@media (max-width: 900px) {
.p-aboutMessage .p-aboutMessage__card .p-aboutMessage__cardImg {
width: 33.333%;
min-width: 150px; } }
.p-aboutMessage .p-aboutMessage__card .p-aboutMessage__cardImg img {
height: 100%;
object-fit: cover; }
.p-aboutMessage .p-aboutMessage__cardTxtInner {
padding: clamp(14px, 2vw, 22px) clamp(18px, 2.6vw, 28px) clamp(18px, 2.6vw, 28px);
width: 66.666%; }
.p-aboutMessage .p-aboutMessage__cardTitle {
margin: 0 0 10px;
font-size: 18px;
font-weight: 800;
letter-spacing: 0.04em;
padding-left: 14px;
position: relative; }
.p-aboutMessage .p-aboutMessage__cardTitle::before {
content: "";
position: absolute;
left: 0;
top: 0.5em;
width: 6px;
height: 1em;
background: var(--accent);
border-radius: 99px; }
.p-aboutMessage .p-aboutMessage__cardText {
margin: 0;
font-size: clamp(14px, 1vw, 16px);
line-height: 1.85;
color: var(--text); }
.p-aboutMessage .p-aboutMessage__panel {
display: flex; }
@media (max-width: 570px) {
.p-aboutMessage .p-aboutMessage__panel {
flex-direction: column; } }
.p-aboutMessage .p-aboutMessage__panel .p-aboutImg {
width: 33.333%;
min-width: 350px;
margin: 0; }
@media (max-width: 900px) {
.p-aboutMessage .p-aboutMessage__panel .p-aboutImg {
width: 45%;
min-width: 250px; } }
@media (max-width: 570px) {
.p-aboutMessage .p-aboutMessage__panel .p-aboutImg {
width: 100%; } }
.p-aboutMessage .p-aboutMessage__panel .p-aboutImg img {
height: 100%;
width: 100%;
object-fit: cover; }
.p-aboutMessage .p-aboutMessage__panel .p-aboutTxt {
padding: clamp(22px, 3.2vw, 38px); }
@media (max-width: 900px) {
.p-aboutMessage .p-aboutMessage__panel .p-aboutTxt {
width: 55%; } }
@media (max-width: 570px) {
.p-aboutMessage .p-aboutMessage__panel .p-aboutTxt {
width: 100%; } }
@media (max-width: 900px) {
.p-aboutMessage .p-aboutMessage__values {
grid-template-columns: 1fr; } } .p-servicePage {
--accent: #b0121b; --primary: #209570; --text: #111;
--muted: #6b6b6b;
--line: #e7e7e7;
--bg: #f3f6f5;
color: var(--text); } .l-container {
width: min(1200px, 92vw);
margin-inline: auto; }
.c-wysiwyg .p-servicePage p {
margin: 0; } .p-serviceHero {
position: relative;
width: 100vw;
margin-left: calc(50% - 50vw);
overflow: hidden;
background: #000; }
.p-serviceHero__media {
position: absolute;
inset: 0;
background-image: var(--hero-img);
background-size: cover;
background-position: center;
transform: scale(1.02); }
.p-serviceHero__media::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 40%, rgba(0, 0, 0, 0.1) 100%); }
.p-serviceHero__inner {
position: relative;
width: min(1200px, 92vw);
margin-left: 0; margin-right: auto;
padding: clamp(64px, 7vw, 110px) 0;
padding-left: clamp(18px, 6vw, 90px); padding-right: clamp(12px, 4vw, 36px);
color: #fff;
height: clamp(300px, 25vw, 500px);
display: flex;
align-items: center; }
.p-serviceHero__lead {
font-size: clamp(30px, 3.4vw, 40px);
line-height: 1.7;
margin: 0 0 18px;
font-weight: 600; } .p-serviceIntro {
padding: clamp(24px, 3vw, 42px) 0;
background: #fff; }
.p-serviceIntro__text {
font-size: clamp(16px, 1.3vw, 20px);
line-height: 1.95;
color: var(--text); }
.p-serviceIntro__text p {
margin: 0; } .c-secTitle {
position: relative;
padding-top: clamp(26px, 3vw, 40px);
padding-bottom: 10px; }
.c-secTitle::before {
content: attr(data-en);
position: absolute;
left: 0;
top: 0;
transform: translateY(-10%);
font-size: clamp(42px, 6.2vw, 92px);
font-weight: 800;
letter-spacing: .08em;
text-transform: uppercase;
color: rgba(0, 0, 0, 0.06);
line-height: 1;
pointer-events: none;
white-space: nowrap; }
.c-secTitle__eyebrow {
margin: 0 0 10px;
font-size: clamp(20px, 1.6vw, 24px);
letter-spacing: .12em;
color: var(--muted);
font-weight: 700; }
.c-secTitle__ja {
margin: 0;
font-size: clamp(20px, 2.4vw, 36px);
line-height: 1.35;
color: var(--primary);
font-weight: 800;
margin-bottom: 20px; }
.c-secTitle__lead {
margin: 14px 0 0;
color: var(--text);
font-size: clamp(14px, 1.1vw, 16px);
line-height: 1.9; }
.c-secTitle.-center {
text-align: center; }
.c-secTitle.-center::before {
left: 50%;
transform: translate(-50%, -10%); }
.c-secTitle.-compact {
padding-top: 22px; } .c-secTitle.-row2 {
padding-top: clamp(78px, 9vw, 120px); }
.c-secTitle.-row2::before {
white-space: normal; } .p-serviceBlock {
padding: clamp(52px, 6vw, 92px) 0;
background: #fff; }
.p-serviceBlock__img {
margin: 0 0 clamp(22px, 2.6vw, 34px);
height: clamp(180px, 35vw, 470px);
overflow: hidden; }
.p-serviceBlock__img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; }
.p-serviceBlock__body {
display: grid;
grid-template-columns: minmax(280px, 420px) 1fr;
gap: clamp(22px, 3vw, 48px);
align-items: start; }
.p-serviceBlock__text {
font-size: clamp(15px, 1.1vw, 18px);
line-height: 1.95; }
.p-serviceBlock__text p {
margin: 0; } .c-bulletList {
margin: 0 0 18px;
padding-left: 1.2em; }
.c-bulletList li {
margin: .35em 0; } @media (min-width: 901px) {
.p-serviceBlock__text {
margin-top: clamp(40px, 5vw, 90px); } } .p-serviceTargets {
padding: clamp(52px, 6vw, 92px) 0;
background: var(--bg);
width: 100vw;
margin-left: calc(50% - 50vw); }
.p-serviceTargets__inner {
display: grid;
grid-template-columns: minmax(280px, 420px) 1fr;
gap: clamp(22px, 3vw, 48px);
align-items: start;
width: min(1200px, 92vw); }
.c-numCardList {
list-style: none;
padding: 0;
margin: 0;
display: grid;
gap: 18px; }
.c-numCard {
display: flex; align-items: center; gap: 18px; padding: 24px 28px;
background: white;
border: 1px solid #e7e7e7; } .c-numCard__num {
font-size: clamp(22px, 3vw, 30px);
font-weight: 800;
color: #209570; letter-spacing: .08em;
line-height: 1;
min-width: 48px; } .c-numCard__title {
margin: 0;
font-size: clamp(22px, 3vw, 30px);
font-weight: 800;
line-height: 1.4; } .p-serviceFeatures {
padding: clamp(52px, 6vw, 92px) 0;
background: #fff; }
.p-serviceFeatures__grid {
margin-top: clamp(22px, 3vw, 40px);
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 18px; }
.c-featureCard {
border: 1px solid var(--line);
padding: 22px;
background: #fff; }
.c-featureCard__title {
margin: 0 0 12px;
font-size: 16px;
line-height: 1.5;
font-weight: 800; }
.c-featureCard__text {
margin: 0;
color: var(--muted);
line-height: 1.9;
font-size: 14px; } .p-serviceRelation {
padding: clamp(52px, 6vw, 92px) 0;
background: var(--bg);
width: 100vw;
margin-left: calc(50% - 50vw); }
.p-serviceRelation__inner {
display: grid;
grid-template-columns: minmax(280px, 420px) 1fr;
gap: clamp(22px, 3vw, 48px);
align-items: start;
width: min(1200px, 92vw); }
.p-serviceRelation__text {
font-size: clamp(14px, 1.1vw, 16px);
line-height: 1.95; }
.p-serviceRelation__text p {
margin: 0; } @media (min-width: 901px) {
.p-serviceRelation__text {
margin-top: clamp(40px, 5vw, 90px); } } .p-serviceResults {
padding: clamp(60px, 7vw, 100px) 0;
background: #fff; }
.p-serviceResults__grid {
margin-top: clamp(30px, 4vw, 60px);
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 30px; } .c-resultCard {
border: 1px solid #e7e7e7;
background: #fff;
display: flex;
flex-direction: column;
transition: transform .3s ease, box-shadow .3s ease; }
.c-resultCard:hover {
transform: translateY(-6px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08); } .c-resultCard__img {
height: clamp(180px, 18vw, 260px);
overflow: hidden; }
.c-resultCard__img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; } .c-resultCard__body {
padding: 24px;
display: flex;
flex-direction: column;
gap: 14px; }
.c-resultCard__title {
margin: 0;
font-size: 20px;
font-weight: 800;
color: var(--primary); }
.c-resultCard__text {
margin: 0;
font-size: 14px;
line-height: 1.9;
color: #555; } .c-resultCard__btn {
margin-top: auto;
font-weight: 700;
font-size: 14px;
color: var(--primary);
text-decoration: none;
transition: opacity .3s ease; }
.c-resultCard__btn:hover {
opacity: .7; } @media (max-width: 900px) {
.p-serviceResults__grid {
grid-template-columns: 1fr; } } .p-serviceCta.-full {
width: 100vw;
margin-left: calc(50% - 50vw);
background: #fff;
padding: clamp(44px, 6vw, 86px) 0; } .p-serviceCta__inner {
display: grid;
grid-template-columns: 1fr 1fr; min-height: clamp(260px, 20vw, 320px); }
@media (min-width: 901px) {
.p-serviceCta__inner {
max-height: 400px; } }
@media (max-width: 900px) {
.p-serviceCta__inner {
max-height: auto; } } .p-serviceCta__media {
margin: 0;
overflow: hidden; }
.p-serviceCta__media img {
width: 100%;
height: 100%;
object-fit: cover;
display: block; } .p-serviceCta__panel {
position: relative;
background: var(--primary); overflow: hidden; } .p-serviceCta__content {
position: relative;
z-index: 2;
height: 100%;
display: grid;
align-content: center; gap: 14px; padding: clamp(26px, 3.6vw, 56px);
padding-left: clamp(22px, 4vw, 60px);
padding-right: clamp(18px, 3vw, 44px); } .c-secTitle.-left {
text-align: left; }
.c-secTitle.-left::before {
left: 0;
transform: translateY(-10%); } .p-serviceCta__text {
margin: 0;
max-width: 46ch;
color: rgba(255, 255, 255, 0.95);
line-height: 1.9;
font-size: clamp(14px, 1.05vw, 16px);
text-shadow: 0 1px 10px rgba(0, 0, 0, 0.18); } .c-btn.-onDark {
margin: 10px 0 0;
border-color: #fff;
color: #fff; } .p-serviceCta__panel .c-secTitle__eyebrow {
color: rgba(255, 255, 255, 0.85); }
.p-serviceCta__panel .c-secTitle__ja {
color: #fff; } .p-serviceCta__panel .c-secTitle::before {
color: rgba(255, 255, 255, 0.2); } .c-resultCard__btn {
margin-top: auto; display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 12px 20px;
width: fit-content;
font-size: 14px;
font-weight: 700;
letter-spacing: .04em;
background: var(--primary);
color: #fff;
text-decoration: none !important;
border-radius: 6px;
transition: all .3s ease; }
.c-resultCard__btn a {
text-decoration: none !important; } .c-resultCard__btn .arrow {
transition: transform .3s ease; } .c-resultCard__btn:hover {
background: #177a5f; }
.c-resultCard__btn:hover .arrow {
transform: translateX(4px); } .p-serviceCta .c-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 14px 28px;
min-width: 220px;
max-width: 300px;
font-size: 18px;
font-weight: 700;
letter-spacing: .06em;
text-decoration: none;
border-radius: 999px;
transition: all .3s ease; } .p-serviceCta .c-btn.-onDark {
background: #fff;
color: var(--primary);
border: 2px solid #fff; } .p-serviceCta .c-btn__arrow {
font-size: 16px;
transition: transform .3s ease; } .p-serviceCta .c-btn.-onDark:hover {
background: transparent;
color: #fff;
border-color: #fff; }
.p-serviceCta .c-btn.-onDark:hover .c-btn__arrow {
transform: translateX(4px); } @media (max-width: 900px) {
.p-serviceCta.-full {
width: auto;
margin-left: 0;
padding: clamp(36px, 6vw, 64px) 0; }
.p-serviceCta__inner {
grid-template-columns: 1fr;
min-height: auto; }
.p-serviceCta__media {
height: clamp(200px, 52vw, 280px); }
.p-serviceCta__content {
padding: 22px 18px; }
.p-serviceCta__text {
max-width: none; }
.p-serviceCta .c-btn {
max-width: none; } } @media (max-width: 900px) {
.p-serviceBlock__body,
.p-serviceTargets__inner,
.p-serviceRelation__inner {
grid-template-columns: 1fr; }
.c-secTitle::before {
font-size: clamp(40px, 10vw, 86px); }
.p-serviceFeatures__grid {
grid-template-columns: 1fr; }
.c-numCard {
grid-template-columns: 64px 1fr; } } body.page-id-5835 .c-lower_kv02__title {
max-width: 9em; }
.p-techAward {
--accent: #209570;
--bg: #f3f6f5;
--panel: #fff;
--text: #111;
--muted: #6b6f6e;
--line: #e6e9e8;
color: var(--text); } .p-techHero {
position: relative;
overflow: clip;
border-radius: clamp(18px, 2.6vw, 28px);
margin: clamp(18px, 2.5vw, 32px) auto 0;
background: #000; }
.p-techHero__img {
margin: 0;
height: clamp(280px, 36vw, 520px); }
.p-techHero__img img {
width: 100%;
height: 100%;
display: block;
object-fit: cover;
transform: scale(1.02); } .p-techHero::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.18));
pointer-events: none; }
.p-techHero__inner {
position: absolute;
inset: 0;
z-index: 2;
display: flex;
flex-direction: column;
justify-content: flex-end;
gap: 10px;
padding: clamp(20px, 3.2vw, 44px); }
.p-techHero__eyebrow {
margin: 0;
font-size: 13px;
letter-spacing: .18em;
text-transform: uppercase;
color: rgba(255, 255, 255, 0.78);
font-weight: 700; }
.p-techHero__title {
margin: 0;
color: #fff;
font-size: clamp(22px, 3vw, 40px);
font-weight: 900;
letter-spacing: .06em;
line-height: 1.15;
text-shadow: 0 10px 24px rgba(0, 0, 0, 0.35); }
.p-techHero__badge {
margin: 6px 0 0;
display: inline-flex;
align-self: flex-start;
padding: 10px 14px;
border-radius: 999px;
background: rgba(255, 255, 255, 0.14);
border: 1px solid rgba(255, 255, 255, 0.22);
color: #fff;
font-weight: 800;
letter-spacing: .04em;
line-height: 1.5;
font-size: clamp(12px, 1.1vw, 14px);
backdrop-filter: blur(6px); } @media (max-width: 640px) {
.p-techHero { overflow: hidden; }
.p-techHero__img {
height: 220px; }
.p-techHero::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0)); }
.p-techHero__inner {
position: relative; inset: auto;
padding: 16px 16px 20px;
background: rgba(0, 0, 0, 0.62); backdrop-filter: blur(6px); }
.p-techHero__title {
font-size: 20px;
line-height: 1.25; }
.p-techHero__lead {
margin-top: 8px;
font-size: 14px;
line-height: 1.8; }
.p-techHero__badge {
margin-top: 10px;
border-radius: 14px; align-self: stretch; justify-content: center;
text-align: center;
padding: 10px 12px; } }
.p-techHero__lead {
margin: 10px 0 0;
color: rgba(255, 255, 255, 0.92);
line-height: 1.9;
font-size: clamp(14px, 1.05vw, 16px);
max-width: 68ch; } .p-techBody {
padding: clamp(28px, 3.6vw, 46px) 0 0; } .p-techSec {
padding: clamp(56px, 6vw, 96px) 0; } .p-techSec--alt {
background: var(--bg);
width: 100vw;
margin-left: calc(50% - 50vw); }
.p-techSec__inner {
width: min(1100px, 90vw);
margin: 0 auto; }
.p-techSec__inner.-grid {
display: grid;
grid-template-columns: 1fr minmax(200px, 300px);
gap: 20px 50px; }
@media (max-width: 900px) {
.p-techSec__inner.-grid {
grid-template-columns: 1fr; }
.p-techSec__inner.-grid .p-img {
max-width: 200px;
margin: 0 auto; } }  .p-techBlock {
display: grid;
grid-template-columns: 1fr minmax(320px, 520px);
gap: clamp(18px, 3vw, 34px);
align-items: center; }
.p-techBlock--imageLeft {
grid-template-columns: minmax(320px, 520px) 1fr; }
.p-techBlock__text {
background: var(--panel);
border-radius: clamp(18px, 2.6vw, 28px);
padding: clamp(18px, 2.8vw, 34px);
line-height: 1.9;
font-size: clamp(15px, 1.05vw, 17px); }
.p-techBlock__text p {
margin: 0 0 1.1em; }
.p-techBlock__text p:last-child {
margin-bottom: 0; }
.p-techBlock__media {
margin: 0;
border-radius: clamp(18px, 2.6vw, 28px);
overflow: hidden;
border: 1px solid var(--line);
background: #ddd; }
.p-techBlock__media img {
width: 100%;
height: auto;
display: block; }
.p-techCap {
margin: 0;
padding: 10px 14px;
font-size: 13px;
color: var(--muted);
background: rgba(255, 255, 255, 0.86);
border-top: 1px solid var(--line); } .p-techPanel {
background: var(--panel);
border-radius: clamp(18px, 2.6vw, 28px);
padding: clamp(18px, 2.8vw, 34px);
border: 1px solid var(--line); }
.p-techPanel__lead {
margin: 0 0 12px;
font-weight: 800;
letter-spacing: .04em; }
.p-techList {
padding: 0 !important;
margin: 0 0 14px;
line-height: 1.85;
font-size: clamp(15px, 1.05vw, 17px);
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px;
grid-template-rows: auto; }
@media (max-width: 570px) {
.p-techList {
grid-template-columns: repeat(1, 1fr); } }
.p-techList li {
border: 1px solid #209570;
padding: .8rem;
border-radius: 30px;
list-style: none;
margin: 0;
display: grid;
grid-template-columns: 40px 1fr;
align-items: center;
gap: 10px; }
.p-techList li::before {
line-height: 40px;
left: 0;
right: 0;
margin: 0 1rem 0 0;
background: #209570;
width: 40px;
display: inline-block;
border-radius: 50%;
color: #FFF;
text-align: center;
height: 40px; }
.p-techList li:first-child::before {
content: "1"; }
.p-techList li:nth-child(2)::before {
content: "2"; }
.p-techList li:nth-child(3)::before {
content: "3"; }
.p-techList li:nth-child(4)::before {
content: "4"; }
.p-techCheck {
list-style: none;
margin: 0 0 14px;
padding: 0;
display: grid;
gap: 8px; }
.p-techCheck li {
position: relative;
padding-left: 30px;
line-height: 1.8;
font-size: clamp(15px, 1.05vw, 17px); }
.p-techCheck li::before {
content: "";
position: absolute;
left: 0;
top: .55em;
width: 14px;
height: 8px;
border-left: 3px solid var(--accent);
border-bottom: 3px solid var(--accent);
transform: rotate(-45deg); }
.p-techIcon {
padding: 0 !important;
display: flex;
gap: 20px 0;
justify-content: center;
flex-wrap: wrap; }
.p-techIcon li {
list-style: none;
position: relative;
line-height: 1.8;
font-size: clamp(15px, 1.05vw, 17px);
color: #209570;
text-align: center;
font-weight: bold;
width: calc(100% / 5 - 10px);
line-height: 1.3; }
@media (max-width: 900px) {
.p-techIcon li {
width: calc(100% / 3 - 10px); } }
@media (max-width: 430px) {
.p-techIcon li {
width: calc(100% / 2 - 10px); } }
.p-techIcon li::before {
content: "";
width: 100px;
height: 100px;
right: 0;
margin: 0 auto 8px;
display: block; }
.p-techIcon li:first-child::before {
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/category/icon_netis01.png) no-repeat;
background-size: contain; }
.p-techIcon li:nth-child(2)::before {
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/category/icon_netis02.png) no-repeat;
background-size: contain; }
.p-techIcon li:nth-child(3)::before {
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/category/icon_netis03.png) no-repeat;
background-size: contain; }
.p-techIcon li:nth-child(4)::before {
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/category/icon_netis04.png) no-repeat;
background-size: contain; }
.p-techIcon li:nth-child(5)::before {
background: url(//www.shinkougiken.jp/wp/wp-content/themes/shinkougiken_wp/img/category/icon_netis05.png) no-repeat;
background-size: contain; }
.p-techIcon li .nowrap {
white-space: nowrap; }
.p-techNote {
margin: 0;
color: var(--muted);
line-height: 1.9; } .p-techGallery {
margin-top: clamp(16px, 2.6vw, 24px);
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: clamp(12px, 2vw, 18px); }
.p-techGallery__item {
margin: 0;
border-radius: clamp(18px, 2.6vw, 28px);
overflow: hidden;
border: 1px solid var(--line);
background: #ddd; }
.p-techGallery__item img {
width: auto;
height: 400px;
display: block;
object-fit: cover;
margin: 0 auto; } @media (max-width: 900px) {
.p-techBlock,
.p-techBlock--imageLeft {
grid-template-columns: 1fr; }
.p-techGallery {
grid-template-columns: 1fr; } }   .p-ijiNav {
padding: clamp(40px, 5vw, 80px) 0; }
.p-ijiNav__inner {
margin: 0 auto; }
.p-ijiNav__grid {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: clamp(12px, 1.8vw, 20px); }
.p-ijiNav__grid a {
display: flex;
align-items: center;
justify-content: center;
padding: 16px 14px;
border-radius: 999px;
border: 2px solid #209570;
background: #fff;
color: #209570;
font-weight: 700;
font-size: 15px;
letter-spacing: .04em;
text-decoration: none;
transition: all .25s ease; } @media (hover: hover) and (pointer: fine) {
.p-ijiNav__grid a:hover {
background: #209570;
color: #fff;
transform: translateY(-3px); } } @media (max-width: 1000px) {
.p-ijiNav__grid {
grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) {
.p-ijiNav__grid {
grid-template-columns: 1fr; } } 
.wordlist {
margin:0 0 80px;
}
.wordlist ul {
}
.wordlist li {
position:relative;
box-sizing: border-box;
width:49.5%;
border:1px solid #209570;
margin-right:1%;
margin-bottom:8px;
float:left;
}
.wordlist li:nth-child(2n) {
margin-right:0;
}
.wordlist li a {
display:block;
color:#209570;
background:#fff;
padding:10px;
}
.wordlist li a:hover {
text-decoration:none;
color:#fff;
background:#209570;
}
.wordlist:after,
.wordlist ul:after {
content: "";
clear: both;
display: block;
}
.wordListHeader {
width:10%;
}
#machine {}
#machine div.tit {
background: #209570;
font-size: 150%;
font-weight: bold;
color: #fff;
font-family: "Times New Roman", "游明朝", YuMincho, "Hiragino Mincho ProN", Meiryo, serif;
margin-bottom: 20px;
padding: 6px 0px 6px 10px;
margin-top: 30px;
}
.table_machine {
border-collapse: separate;
border-spacing: 1px;
background: #CCC;
border-style: none;
width: 100%;
margin-bottom: 20px;
}
.table_machine th {
background-color: #EEE;
padding: 3px 7px;
font-weight: normal;
border-top: 1px solid #FFF;
text-align: center;
}
.table_machine td {
background-color: #FFF;
padding: 3px 7px;
border-top: 1px solid #FFF;
} .glo{ overflow: visible;
margin: 0 0 25px;
padding: 0;
list-style: none;
display: grid;
gap: 10px; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
}
.glo li{ float: none;
width: auto;
margin: 0;
background: #f2f2f2;
border: 1px solid #87b6a7;
border-radius: 6px;
}
.glo li a{
display: flex;
align-items: center;
justify-content: center; width: 100%;
padding: 12px 10px;
color: #209570;
text-decoration: none;
font-weight: 600; min-height: 48px;
transition: background .2s ease, color .2s ease;
}
.glo li a:hover{
color: #fff;
background: #209570;
}
@media (max-width: 560px){
.glo{
grid-template-columns: repeat(2, 1fr);
}
} .topics__heading{
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 2px solid #209570;
}
.topics__term{
display: block;
font-size: clamp(24px, 2.6vw, 32px);
font-weight: 800;
line-height: 1.3;
letter-spacing: .02em;
color: #111;
} .topics__meta{
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 8px;
align-items: center;
} .topics__label{
font-size: 13px;
font-weight: 600;
padding: 4px 10px;
border: 1px solid #209570;
border-radius: 999px;
color: #209570;
} .topics__cats{
font-size: 13px;
color: #777;
letter-spacing: .04em;
} .table_basic{
width: 100%;
border-collapse: collapse;
margin-top: 28px;
background: #fff;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 24px rgba(0,0,0,.04);
margin-bottom: 100px;  
}
.table_basic th,
.table_basic td{
padding: 18px 20px;
text-align: left;
vertical-align: top;
}
.table_basic th{
width: 160px;
background: #f5f7f6;
font-weight: 700;
color: #333;
border-bottom: 1px solid #e6ece9;
}
.table_basic td{
border-bottom: 1px solid #e6ece9;
line-height: 1.8;
}
.table_basic tr:last-child th,
.table_basic tr:last-child td{
border-bottom: none;
} @media (max-width: 640px){
.table_basic,
.table_basic tbody,
.table_basic tr,
.table_basic th,
.table_basic td{
display: block;
width: 100%;
}
.table_basic th{
width: 100%;
border-bottom: none;
padding-bottom: 6px;
}
.table_basic td{
padding-top: 0;
padding-bottom: 20px;
}
} .p-wordArchive{
padding: clamp(30px, 4vw, 60px) 0 clamp(60px, 6vw, 100px);
}
.p-wordArchive__list{
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: 12px;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.p-wordArchive__item{
background: #f5f7f6;
border: 1px solid #dbe6e2;
border-radius: 8px;
transition: .2s ease;
}
.p-wordArchive__link{
display: block;
padding: 14px 18px;
text-decoration: none;
color: #209570;
font-weight: 600;
}
.p-wordArchive__item:hover{
background: #209570;
}
.p-wordArchive__item:hover .p-wordArchive__link{
color: #fff;
}
.p-wordArchive__empty{
margin-top: 20px;
color: #666;
} .js-project-filter {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 10px 12px;
width: 100%;
margin: 0 0 30px; }
.js-project-filter a {
display: inline-flex;
align-items: center;
justify-content: center;
margin: 0;
padding: 6px 12px;
border: 1px solid #009b7a;
color: #009b7a;
text-decoration: none;
line-height: 1.4;
white-space: nowrap;
box-sizing: border-box;
transition: 0.2s ease; }
.js-project-filter a:hover {
background: #009b7a;
color: #fff; }
.js-project-filter a.is-active {
background: #009b7a;
color: #fff; }
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&display=swap");