/*
Theme Name: Nitibo
Template: twentyseventeen
Version: 1.0
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700;800;900&display=swap');
/* ----------------------------------------------
reset
---------------------------------------------- */
html{scroll-behavior: smooth;}
body {margin: 0 auto; padding: 0; -webkit-text-size-adjust: 100%; overflow-wrap: break-word;}
table {margin : 0; border-collapse: collapse; border-spacing: 0; empty-cells: show;}
img {vertical-align: middle; border: none;}
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
.elem{word-break: keep-all; line-break: strict; word-wrap: break-word; overflow-wrap: break-word;}
/*clearfix*/
.clearfix:after {content: " "; display: block; height: 0;clear: both; visibility: hidden;}
.clearfix {display: inline-table;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/*pagetop*/
.pagetop {height: 50px; width: 50px; position: fixed; right: 10px; bottom: 20px; background: rgba(255,255,255,1); border: solid 2px #00326e; border-radius: 50%; display: flex; justify-content: center; align-items: center; z-index: 2;}
.pagetop__arrow {height: 10px; width: 10px; border-top: 3px solid #00326e; border-right: 3px solid #00326e; transform: translateY(20%) rotate(-45deg);}
/* ***DEF-family*** */
html, body, table, th, td, li, div, p, em, mark{font-family: 'Noto Sans JP', sans-serif; font-weight:400;}
b, strong{font-weight:800;}
i{font-weight:900; font-family:'Font Awesome 6 Free'; display:inline-block; font-style: normal;}

/* ***DEF-FONTSIZE*** */
html {font-size: 62.5%;}
body {font-size: 1.6em; letter-spacing:1px; line-height:1.7;}

/* ***DEF-color*** */
html, body, table, th, td, li, div, p, dl, dt, dd, 
h1,h2,h3,h4,h5,h6
{color:#333;}

a {outline:none; transition:.3s;}
a,a:hover,a:hover img {text-decoration: none;}
img {max-width: 100%; height: auto; width:auto;}
a .fa-caret-right{display:inline-block; margin-left:.8em;}
a .fa-caret-left{display:inline-block; margin-right:.8em;}

div.clear {clear: both !important;}

span.bk:before{content:"「"; display:inline-block; letter-spacing:0; width:.5em; text-indent:-.5em;}
span.bk:after{content:"」"; display:inline-block; letter-spacing:0; width:.5em;}

br.sp{display:none;}
@media (max-width:600px) {
br.sp{display:inherit;}
}

/*margin*/
.mt0{margin-top:0 !important;}
.mb0{margin-bottom:0 !important;}
.mtS{margin-top:1.5em !important;}
.mbS{margin-bottom:1.5em !important;}
.mtM{margin-top:3em !important;}
.mbM{margin-bottom:3em !important;}
.mtL{margin-top:5em !important;}
.mbL{margin-bottom:5em !important;}

.has-text-align-center{text-align:center !important;}
.has-text-align-right{text-align:right !important;}
.has-small-font-size{font-size:80% !important;}

.wp-block-image {margin: 0 auto 1.5em auto; display:table;}
p+.wp-block-image{margin-top:2em;}
.wp-block-image figure{margin:0; padding:0;}
figcaption{line-height:1.3;}
.wp-block-image.full{max-width:100%; width:100%;}
.wp-block-image.full figure{max-width:100%; width:100%;}
.wp-block-image.full figure img{max-width:100%; width:100%;}
.wp-block-image:has(.alignright){margin-right:0; margin-left:auto; float:right; max-width:50%;}
.wp-block-image:has(.alignright) figure{padding-left:1.5em;}
.wp-block-image:has(.alignleft){margin-right:auto; margin-left:0; float:left; max-width:50%;}
.wp-block-image:has(.alignleft) figure{padding-right:1.5em;}


.wp-block-columns {display: flex; justify-content: center; gap: 3em; width: fit-content; margin: 0 auto 2em auto;}
.wp-block-column {flex: 0 1 auto; flex-basis:50%;}
p+.wp-block-columns,.wp-block-columns+p{margin-top:3em;}
@media (max-width: 768px) {
.wp-block-columns {gap:1.5em;}
.wp-block-column {width:100%;}
.wp-block-columns:not(.is-not-stacked-on-mobile) {flex-direction: column;}
.wp-block-columns.is-not-stacked-on-mobile {flex-direction: row;}
.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {flex: 1 1 0;}
}

.wp-block-columns.are-vertically-aligned-center{align-items:center;}
.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end;}

/* wp-colomun 
.wp-block-columns {display: flex; justify-content:center; gap: 2em; margin-bottom: 1.75em;}
.wp-block-column {flex: 1 1 0; min-width: 0;}
p+.wp-block-columns{margin-top:2em;}
@media (max-width:600px) {
.wp-block-columns {flex-direction: column;}
}

.wp-block-columns {display: flex; flex-wrap: wrap; gap:2em;}
.wp-block-column {flex: 1 1 0; min-width: 0;}
@media (max-width: 768px) {
.wp-block-columns {gap:1em;}
.wp-block-column{border:1px solid #ccc;}
.wp-block-columns:not(.is-not-stacked-on-mobile) {flex-direction: column;}
.wp-block-columns.is-not-stacked-on-mobile {flex-direction: row;}
.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {flex: 1 1 0;}
}
*/

/*rayout*/
section > .inner, footer > .inner{margin:0 auto; max-width:calc(1200px + 3em);}
section[id^='area-'] > .inner{padding:4em 1.5em;}
@media (max-width: 768px) {
section[id^='area-'] > .inner{padding:3em 1.5em;}
}


/*HEADER*/
header{background:#fff;}
header dl{display:flex; align-items:center; justify-content:space-between; width:100%; max-width:1200px; margin:0 auto;}
header dt, header dd{padding:0;}
header dt{padding:.7em 0;}
header dt .sub{display:block;}
header dd{display:flex; align-items:center; gap:2em;}
header .lang{white-space:nowrap; background:#00326e; color:#fff; padding:1em; border-radius:.3em; line-height:1; font-size:clamp(1.3rem, 1.4vw, 1.4rem);}
header .lang i{margin-right:.5em;}
header .num{padding:.2em 0 .5em 0;}
header .num p{font-size:80%;}
header .num label{font-size:2.5rem; margin:0; line-height:1;}
body.recruit header .num{display:none;}
.navarea{background:#fff; width:100%;}
@media (max-width: 767px) {
header{background:#fff; position:fixed; width:100%; left:0; top:0; z-index:9998;}
header dt{padding:.5em 0;}
.navarea{box-shadow:0 0 0; background:inherit;}
header dl{height:60px;}
header dt{width:50%;}
header dt .sub{display:none;}
header dd{padding-right:60px;}
header .lang{border-radius:0; line-height:60px; padding:0 1em;}
header .lang span{display:none;}
header .num{display:none;}
header+.space{height:60px;}
}
@media (hover: hover) and (min-width: 768px){
header .lang:hover{background:#73c3d7;}
}
/*pc-nav*/
#gnav {background:#00326e;}
body.recruit #gnav,body.infolist #gnav,body.single-info #gnav
{background:#8cc81e;}
#gnav ul{list-style:none; margin:0 auto; padding:0; width:100%; max-width:1200px;}
#gnav > ul > li > a{display:block; line-height:1.3; padding:0 1em; color:#fff;}
#gnav > ul > li > a > span{display:flex; align-items:center; justify-content:center; height:4em; position:relative;}
#gnav > ul > li:has(.megaMenu) > a:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f107'; display:inline-block; margin:0; font-size:85%; position:absolute; right:.7em; top:0; line-height:5em;}
.megaMenu > ul li:has(.gchild) > a{padding:1em 1.5em 1em 1em; position:relative;}
.megaMenu > ul li:has(.gchild) > a:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f107'; display:inline-block; position:absolute; top:30%; right:.5em; color:#999;}
#gnav > ul > li:last-child > a{background:#8cc81e;}
body.recruit #gnav > ul > li:last-child > a{background:#73c3d7;}

body.home #gnav > ul > li:nth-child(1) > a,
body.about #gnav > ul > li:nth-child(2) > a,
body.business #gnav > ul > li:nth-child(3) > a,
body.products #gnav > ul > li:nth-child(4) > a,
body.catalogue #gnav > ul > li:nth-child(5) > a,
body.contact #gnav > ul > li:nth-child(6) > a,
body.recruit #gnav > ul > li:nth-child(7) > a
{background:#73c3d7;}

@media (min-width: 768px) {
#gnav > ul{display:flex; justify-content:center;}
#gnav > ul > li{font-size:1.3rem; position: relative; border-left:1px solid rgba(255,255,255,.3); width:calc(100% / 7); text-align:center;}
}
@media (hover: hover) and (min-width: 768px){
#gnav > ul > li:hover .megaMenu,#gnav > ul > li .megaMenu:hover {opacity: 1; visibility: visible; pointer-events: auto;}
#gnav > ul > li > a:hover{background:#73c3d7;}
}
/*megaMenu*/
/* PC */
@media (min-width: 768px) {
.megaMenu {position: absolute; top: 100%; left: 0; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease; z-index: 1000; max-width: none; width: 200px;}
#gnav > ul > li:last-child .megaMenu{left:inherit; right:0;}
.megaMenu ul{background:#edf7f9;}
.megaMenu > ul li{border-top:1px solid #ccc;}
.megaMenu > ul a{font-weight:600; color:#333; text-align:left; display:block; padding:1em; line-height:1.3;}
.megaMenu > ul li:has(.gchild) > a:after{transform:rotate(-90deg);}
.megaMenu > ul a:has(i){padding:1em 1.5em 1em 1em; position:relative;}
.megaMenu > ul a i{position:absolute; right:.5em; color:#999;}
.megaMenu ul.child li:has(ul.gchild){position:relative;}
.megaMenu ul.gchild{border-left:1px solid #ccc; border-right:1px solid #ccc; border-bottom:1px solid #ccc; position:absolute; right:-100%; top:-1px;
opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease; z-index: 1000; max-width: none;}
ul.child li:hover ul.gchild{opacity: 1; visibility: visible; pointer-events: auto;}
}
@media (hover: hover) and (min-width: 768px){
#gnav > ul > li:hover .megaMenu {height:70px;}
.megaMenu > ul a:hover{background:#c8f0f5;}
}
/*sp-system*/
@media (max-width: 767px) {
.menu {position: fixed; top: 0; right: -100%; width: 90%; max-width:400px; height: 100%; background-color:#fff; transition: right 0.3s ease; box-sizing: border-box; z-index: 10;}
.menu.open {right: 0;}
.hamburger {position: fixed; top: 15px; right: 15px; width: 30px; cursor: pointer; z-index: 20;}
.hamburger span {display: block; height: 3px; width: 100%; background-color: #333; margin: 5px 0; transition: 0.4s;}
.hamburger.active span:nth-child(1) {transform: rotate(45deg) translate(5px, 5px); background-color: #fff;}
.hamburger.active span:nth-child(2) {opacity: 0;}
.hamburger.active span:nth-child(3) {transform: rotate(-45deg) translate(6px, -6px); background-color: #fff;}
.megaMenu,.gchild {display: none;}
}
/*sp-design*/
@media (max-width: 767px) {
#gnav {background:#edf7f9;}
body.recruit #gnav{background:#8cc81e;}
#gnav > ul > li{border-bottom:1px solid #aaa;}
#gnav > ul > li > a{background:#00326e; color:#fff; position:relative; font-size:1.3rem;}
body.recruit #gnav > ul > li > a{background:#8cc81e;}
#gnav > ul > li > a > i{right:1.5em !important;}
#gnav > ul{background:#edf7f9; height:100vh; padding-bottom:100px; overflow-y:auto;}
.megaMenu a{display:block; line-height:1; font-size:1.3rem; color:#333; border-top:1px solid #ccc;}
.megaMenu ul.child a{padding:1.3em;}
.megaMenu ul.gchild a{padding:.9em 1.3em; background:#faffff;}
.megaMenu ul.gchild a:before{content:"┗"; display:inline-block; margin:0 .5em 0 0;}
#gnav a:after {transition: transform 0.3s ease;}
#gnav a.active:after {transform: rotate(180deg);}
}
/*nav-fixed*/
@media (min-width: 768px) {
.navarea.fixed{position:fixed; left:0; top:0; z-index:9998;}
}


/*footer*/
footer{background:#00326e;}
footer .inner{color:rgba(255,255,255,.9); padding:2em 1.5em; display:flex; justify-content:space-between; align-items:center;}
footer ul, footer li{margin:0; padding:0; list-style:none;}
footer p, footer a{color:rgba(255,255,255,.9);}
.fnav{display:flex; flex-wrap:wrap; gap:.3em;}
footer .inner > div:first-child{width:40%;}
footer .inner > div:last-child{width:60%;}
.fmenu{display:flex; flex-wrap:wrap; justify-content:flex-end; margin-bottom:2em; text-align:right; font-size:1.2rem; line-height:1;}
.fmenu li{margin:.3em 0;}
.fmenu li:after{content:"|"; display:inline-block; margin:0 1em; color:rgba(255,255,255,.9);}
.fmenu li:last-child:after{display:none;}
.copy{text-align:right; font-size:1.2rem; line-height:1; margin:0; white-space:nowrap;}
@media (hover: hover) and (min-width: 768px){
.fnav a{display:inline-block; background:#001430; line-height:1; padding:.5em 1em; font-size:90%;}
.fnav a:hover{background:#285087;}
.fmenu a:hover{border-bottom:1px solid;}
}
@media (max-width: 768px) {
footer .inner{display:block; padding:0 0 2em 0;}
footer .inner > div{width:auto !important;}
.fnav{display:block; margin-bottom:2em;}
.fnav a{display:block; text-align:center; line-height:1; padding:1em; font-size:75%; border-bottom:1px solid rgba(255,255,255,.2);}
.fmenu{justify-content:center; text-align:center; font-size:1rem;}
.copy{text-align:center; font-size:1rem;}

}

/*area-bottom*/
#area-bottom{background:#f0f0f5;}
#area-bottom .inner{display:flex; align-items:center; justify-content:space-between;}
.num h5{margin:0 0 .8em 0; line-height:1; font-size:clamp(1.8rem, 2vw, 2rem);}
.num p{margin:0; font-weight:500; font-size:clamp(1.4rem, 1.6vw, 1.6rem);}
.num label{display:block; font-size:clamp(2.8rem, 3.5vw, 3.5rem); font-weight:900; color:#00326e !important; line-height:1.3; letter-spacing:0; white-space:nowrap; margin:0; padding:0;}
.num label a{color:#00326e;}
.num label i{display:inline-block; width:1.3em; text-align:center; font-size:85%;}
#area-bottom .btns{width:60%; text-align:right;}
#area-bottom .btns p{font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
#area-bottom .btns a{color:#fff; font-weight:500; white-space:nowrap; padding:1em 1.5em; font-size:clamp(1.5rem, 1.8vw, 1.8rem); line-height:4;}
#area-bottom .btns a:has(i.fa-envelope){background:#00326e;}
body.recruit #area-bottom .btns a:has(i.fa-envelope){background:#8cc81e;}
#area-bottom .btns a:has(i.fa-download){background:#f06400;}
body:not(.recruit) #area-bottom .def{display:block;}
body:not(.recruit) #area-bottom .rec{display:none;}
body.recruit #area-bottom .def{display:none;}
body.recruit #area-bottom .rec{display:block;}
@media (hover: hover) and (min-width: 768px){
#area-bottom .btns a:hover{background:#73c3d7 !important;}
}
@media (max-width: 768px) {
#area-bottom .inner{display:block; text-align:center;}
#area-bottom .btns{width:auto; text-align:center; margin-top:2em;}
}


/*************************************************************************************/
/*************************************************************************************/
/*                                       INDEX                                       */
/*************************************************************************************/
/*************************************************************************************/

/*intro*/
#intro{background:#f0f0f5; text-align:center;}
ul.slider{list-style:none !important; margin:0 auto !important; padding:0 !important; max-width:1200px;}
ul.slider li{margin:0; padding:0;}
@media (hover: hover) and (min-width: 768px){
ul.slider a:hover{opacity:.5;}
}
/* 左右収納 */
ul.slider {position: relative;}
.slick-prev,.slick-next {position: absolute; top: 50%; transform: translateY(-50%); z-index: 10;}
.slick-prev {left: 10px;}
.slick-next {right: 10px;}



/*area-catch*/
#area-catch .inner{text-align:center; padding-bottom:2em;}
#area-catch strong{color:#00326e;}
#area-catch h1{font-size:clamp(2.2rem, 5vw, 3.5rem); line-height:1.5; margin:0 0 1em 0;}
#area-catch p{font-size:clamp(1.4rem, 2.5vw, 1.8rem); font-weight:500; margin:0;}
@media (min-width: 768px) {
#area-catch p br{display:none;}
}
@media (max-width: 768px) {
#area-catch p+p{margin-top:.7em;}
}

/*area-business*/
#area-business h2{margin:0 0 2em 0; text-align:center; font-size:clamp(2.2rem, 5vw, 2.8rem);}
#area-business h2:after{content:""; display:block; background:#00326e; width:2em; height:4px; margin:.5em auto 0 auto;}

.businesslist a{display:block; text-decoration:none !important;}
.busbox{border:1px solid #ddd;}
.busbox .img{margin: 0 auto 1em auto; overflow: hidden; cursor: pointer;}
.busbox .img img{width: 100%; transition-duration: 0.5s;}
.busbox .text{position:relative; padding:1em 0 3em 0;}
.busbox h3{background:inherit !important; margin:0 !important; padding:0 .5em !important; height:5em; font-size:clamp(1.3rem, 2vw, 2rem); line-height:1.3; display:flex; align-items:center; justify-content:center; text-align:center;}
.busbox h3 span{margin:0; position:absolute; top:0; left:0; z-index:-1; display:block; width:100%; text-align:center; color:#e6ebf5; font-size:clamp(3.5em, 4vw, 4em); font-weight:500; line-height:1;}
.busbox .more{font-size:1.2rem; color:#00326e; text-align:right; display:block; padding:1em; width:100%; transition:.5s; position:absolute; bottom:0;}
.busbox .more:before{content:"More"; font-weight:500;}
.busbox .more:after{content:"\f105"; font-family:'Font Awesome 6 Free'; font-weight:900; display:inline-block; margin-left:.8em; font-size:85%;}
@media (max-width: 768px) {
.busbox{display:flex; gap:5%; align-items:center; position:relative;}
.busbox .img{aspect-ratio:1; width:35%; margin:0;}
.busbox .img img{object-fit:cover; width:100%; height:100%;}
.busbox .text{padding:0 0 .5em 0; width:60%; position:inherit !important; display:flex; align-items:center; flex-wrap:wrap;}
.busbox h3{display:block; padding:0; font-size:clamp(1.5rem, 3vw, 3rem); text-align:left; width:100%; height:inherit;}
.busbox h3 span{position:inherit !important; font-size:clamp(1.8rem, 4.5vw, 4.5rem); margin:0 0 .3em 0; color:#c8d2e6; text-align:left;}
.busbox .more{display:none;}
}
@media (hover: hover) and (min-width: 769px){
.busbox a:hover{opacity:.7;}
.busbox a:hover .img img{transform: scale(1.1);　transition-duration: 0.5s;}
.busbox a:hover .more{padding-right:.7em;}
}





/*area-recruit*/
#area-recruit .inner{margin-top:0; padding-top:0;}
.greenblock a{display:block;}
.greenblock .item{padding:3em; border-radius:.3em; box-shadow:0 10px 20px rgba(100,100,100,.2); transition:.5s;
background-color: #82BE00;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2000' height='2000' viewBox='0 0 800 800'%3E%3Cg fill='none' %3E%3Cg stroke='%2382BE00' stroke-width='17'%3E%3Cline x1='-8' y1='-8' x2='808' y2='808'/%3E%3Cline x1='-8' y1='792' x2='808' y2='1608'/%3E%3Cline x1='-8' y1='-808' x2='808' y2='8'/%3E%3C/g%3E%3Cg stroke='%2383bf00' stroke-width='16'%3E%3Cline x1='-8' y1='767' x2='808' y2='1583'/%3E%3Cline x1='-8' y1='17' x2='808' y2='833'/%3E%3Cline x1='-8' y1='-33' x2='808' y2='783'/%3E%3Cline x1='-8' y1='-783' x2='808' y2='33'/%3E%3C/g%3E%3Cg stroke='%2383bf00' stroke-width='15'%3E%3Cline x1='-8' y1='742' x2='808' y2='1558'/%3E%3Cline x1='-8' y1='42' x2='808' y2='858'/%3E%3Cline x1='-8' y1='-58' x2='808' y2='758'/%3E%3Cline x1='-8' y1='-758' x2='808' y2='58'/%3E%3C/g%3E%3Cg stroke='%2384c000' stroke-width='14'%3E%3Cline x1='-8' y1='67' x2='808' y2='883'/%3E%3Cline x1='-8' y1='717' x2='808' y2='1533'/%3E%3Cline x1='-8' y1='-733' x2='808' y2='83'/%3E%3Cline x1='-8' y1='-83' x2='808' y2='733'/%3E%3C/g%3E%3Cg stroke='%2384c000' stroke-width='13'%3E%3Cline x1='-8' y1='92' x2='808' y2='908'/%3E%3Cline x1='-8' y1='692' x2='808' y2='1508'/%3E%3Cline x1='-8' y1='-108' x2='808' y2='708'/%3E%3Cline x1='-8' y1='-708' x2='808' y2='108'/%3E%3C/g%3E%3Cg stroke='%2385c100' stroke-width='12'%3E%3Cline x1='-8' y1='667' x2='808' y2='1483'/%3E%3Cline x1='-8' y1='117' x2='808' y2='933'/%3E%3Cline x1='-8' y1='-133' x2='808' y2='683'/%3E%3Cline x1='-8' y1='-683' x2='808' y2='133'/%3E%3C/g%3E%3Cg stroke='%2386c200' stroke-width='11'%3E%3Cline x1='-8' y1='642' x2='808' y2='1458'/%3E%3Cline x1='-8' y1='142' x2='808' y2='958'/%3E%3Cline x1='-8' y1='-158' x2='808' y2='658'/%3E%3Cline x1='-8' y1='-658' x2='808' y2='158'/%3E%3C/g%3E%3Cg stroke='%2386c200' stroke-width='10'%3E%3Cline x1='-8' y1='167' x2='808' y2='983'/%3E%3Cline x1='-8' y1='617' x2='808' y2='1433'/%3E%3Cline x1='-8' y1='-633' x2='808' y2='183'/%3E%3Cline x1='-8' y1='-183' x2='808' y2='633'/%3E%3C/g%3E%3Cg stroke='%2387c300' stroke-width='9'%3E%3Cline x1='-8' y1='592' x2='808' y2='1408'/%3E%3Cline x1='-8' y1='192' x2='808' y2='1008'/%3E%3Cline x1='-8' y1='-608' x2='808' y2='208'/%3E%3Cline x1='-8' y1='-208' x2='808' y2='608'/%3E%3C/g%3E%3Cg stroke='%2388c400' stroke-width='8'%3E%3Cline x1='-8' y1='567' x2='808' y2='1383'/%3E%3Cline x1='-8' y1='217' x2='808' y2='1033'/%3E%3Cline x1='-8' y1='-233' x2='808' y2='583'/%3E%3Cline x1='-8' y1='-583' x2='808' y2='233'/%3E%3C/g%3E%3Cg stroke='%2388c400' stroke-width='7'%3E%3Cline x1='-8' y1='242' x2='808' y2='1058'/%3E%3Cline x1='-8' y1='542' x2='808' y2='1358'/%3E%3Cline x1='-8' y1='-558' x2='808' y2='258'/%3E%3Cline x1='-8' y1='-258' x2='808' y2='558'/%3E%3C/g%3E%3Cg stroke='%2389c500' stroke-width='6'%3E%3Cline x1='-8' y1='267' x2='808' y2='1083'/%3E%3Cline x1='-8' y1='517' x2='808' y2='1333'/%3E%3Cline x1='-8' y1='-533' x2='808' y2='283'/%3E%3Cline x1='-8' y1='-283' x2='808' y2='533'/%3E%3C/g%3E%3Cg stroke='%2389c500' stroke-width='5'%3E%3Cline x1='-8' y1='292' x2='808' y2='1108'/%3E%3Cline x1='-8' y1='492' x2='808' y2='1308'/%3E%3Cline x1='-8' y1='-308' x2='808' y2='508'/%3E%3Cline x1='-8' y1='-508' x2='808' y2='308'/%3E%3C/g%3E%3Cg stroke='%238ac600' stroke-width='4'%3E%3Cline x1='-8' y1='467' x2='808' y2='1283'/%3E%3Cline x1='-8' y1='317' x2='808' y2='1133'/%3E%3Cline x1='-8' y1='-333' x2='808' y2='483'/%3E%3Cline x1='-8' y1='-483' x2='808' y2='333'/%3E%3C/g%3E%3Cg stroke='%238bc700' stroke-width='3'%3E%3Cline x1='-8' y1='342' x2='808' y2='1158'/%3E%3Cline x1='-8' y1='442' x2='808' y2='1258'/%3E%3Cline x1='-8' y1='-458' x2='808' y2='358'/%3E%3Cline x1='-8' y1='-358' x2='808' y2='458'/%3E%3C/g%3E%3Cg stroke='%238bc700' stroke-width='2'%3E%3Cline x1='-8' y1='367' x2='808' y2='1183'/%3E%3Cline x1='-8' y1='417' x2='808' y2='1233'/%3E%3Cline x1='-8' y1='-433' x2='808' y2='383'/%3E%3Cline x1='-8' y1='-383' x2='808' y2='433'/%3E%3C/g%3E%3Cg stroke='%238CC800' stroke-width='1'%3E%3Cline x1='-8' y1='392' x2='808' y2='1208'/%3E%3Cline x1='-8' y1='-408' x2='808' y2='408'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.greenblock h2{margin:0; padding:0 !important; font-size:clamp(2.5rem, 3.5vw, 3.5rem); letter-spacing:.1em; color:#fff; border:0; letter-spacing:.1em;}
.greenblock h2 small{display:block; line-height:1; font-size:clamp(1.2rem, 1.5vw, 1.5rem); font-weight:normal; margin:0 0 .5em 0; letter-spacing:.1em; color:#fff;}
.greenblock p{font-weight:500; margin:1.5em 0 2em 0; font-size:clamp(1.4rem, 1.5vw, 1.5rem); color:#fff;}
.greenblock a label{cursor:pointer; border:1px solid; font-size:clamp(1.4rem, 1.5vw, 1.5rem); padding:1.3em 1.5em; line-height:1; margin:0; display:inline-block; color:#fff; transition:.5s;}
@media (max-width: 500px) {
.greenblock .item{padding:2em 1.5em;}
.greenblock p{letter-spacing:0;}
}
@media (hover: hover) and (min-width: 768px){
.greenblock a:hover .item{box-shadow:0 0 0 rgba(100,100,100,0); opacity:.9;}
.greenblock a:hover label{background:#fff; color:#6ea000; font-weight:600;}
}










#area-recruit .item{padding:3em; border-radius:.3em; box-shadow:0 10px 20px rgba(100,100,100,.2); transition:.5s;
background-color: #82BE00;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2000' height='2000' viewBox='0 0 800 800'%3E%3Cg fill='none' %3E%3Cg stroke='%2382BE00' stroke-width='17'%3E%3Cline x1='-8' y1='-8' x2='808' y2='808'/%3E%3Cline x1='-8' y1='792' x2='808' y2='1608'/%3E%3Cline x1='-8' y1='-808' x2='808' y2='8'/%3E%3C/g%3E%3Cg stroke='%2383bf00' stroke-width='16'%3E%3Cline x1='-8' y1='767' x2='808' y2='1583'/%3E%3Cline x1='-8' y1='17' x2='808' y2='833'/%3E%3Cline x1='-8' y1='-33' x2='808' y2='783'/%3E%3Cline x1='-8' y1='-783' x2='808' y2='33'/%3E%3C/g%3E%3Cg stroke='%2383bf00' stroke-width='15'%3E%3Cline x1='-8' y1='742' x2='808' y2='1558'/%3E%3Cline x1='-8' y1='42' x2='808' y2='858'/%3E%3Cline x1='-8' y1='-58' x2='808' y2='758'/%3E%3Cline x1='-8' y1='-758' x2='808' y2='58'/%3E%3C/g%3E%3Cg stroke='%2384c000' stroke-width='14'%3E%3Cline x1='-8' y1='67' x2='808' y2='883'/%3E%3Cline x1='-8' y1='717' x2='808' y2='1533'/%3E%3Cline x1='-8' y1='-733' x2='808' y2='83'/%3E%3Cline x1='-8' y1='-83' x2='808' y2='733'/%3E%3C/g%3E%3Cg stroke='%2384c000' stroke-width='13'%3E%3Cline x1='-8' y1='92' x2='808' y2='908'/%3E%3Cline x1='-8' y1='692' x2='808' y2='1508'/%3E%3Cline x1='-8' y1='-108' x2='808' y2='708'/%3E%3Cline x1='-8' y1='-708' x2='808' y2='108'/%3E%3C/g%3E%3Cg stroke='%2385c100' stroke-width='12'%3E%3Cline x1='-8' y1='667' x2='808' y2='1483'/%3E%3Cline x1='-8' y1='117' x2='808' y2='933'/%3E%3Cline x1='-8' y1='-133' x2='808' y2='683'/%3E%3Cline x1='-8' y1='-683' x2='808' y2='133'/%3E%3C/g%3E%3Cg stroke='%2386c200' stroke-width='11'%3E%3Cline x1='-8' y1='642' x2='808' y2='1458'/%3E%3Cline x1='-8' y1='142' x2='808' y2='958'/%3E%3Cline x1='-8' y1='-158' x2='808' y2='658'/%3E%3Cline x1='-8' y1='-658' x2='808' y2='158'/%3E%3C/g%3E%3Cg stroke='%2386c200' stroke-width='10'%3E%3Cline x1='-8' y1='167' x2='808' y2='983'/%3E%3Cline x1='-8' y1='617' x2='808' y2='1433'/%3E%3Cline x1='-8' y1='-633' x2='808' y2='183'/%3E%3Cline x1='-8' y1='-183' x2='808' y2='633'/%3E%3C/g%3E%3Cg stroke='%2387c300' stroke-width='9'%3E%3Cline x1='-8' y1='592' x2='808' y2='1408'/%3E%3Cline x1='-8' y1='192' x2='808' y2='1008'/%3E%3Cline x1='-8' y1='-608' x2='808' y2='208'/%3E%3Cline x1='-8' y1='-208' x2='808' y2='608'/%3E%3C/g%3E%3Cg stroke='%2388c400' stroke-width='8'%3E%3Cline x1='-8' y1='567' x2='808' y2='1383'/%3E%3Cline x1='-8' y1='217' x2='808' y2='1033'/%3E%3Cline x1='-8' y1='-233' x2='808' y2='583'/%3E%3Cline x1='-8' y1='-583' x2='808' y2='233'/%3E%3C/g%3E%3Cg stroke='%2388c400' stroke-width='7'%3E%3Cline x1='-8' y1='242' x2='808' y2='1058'/%3E%3Cline x1='-8' y1='542' x2='808' y2='1358'/%3E%3Cline x1='-8' y1='-558' x2='808' y2='258'/%3E%3Cline x1='-8' y1='-258' x2='808' y2='558'/%3E%3C/g%3E%3Cg stroke='%2389c500' stroke-width='6'%3E%3Cline x1='-8' y1='267' x2='808' y2='1083'/%3E%3Cline x1='-8' y1='517' x2='808' y2='1333'/%3E%3Cline x1='-8' y1='-533' x2='808' y2='283'/%3E%3Cline x1='-8' y1='-283' x2='808' y2='533'/%3E%3C/g%3E%3Cg stroke='%2389c500' stroke-width='5'%3E%3Cline x1='-8' y1='292' x2='808' y2='1108'/%3E%3Cline x1='-8' y1='492' x2='808' y2='1308'/%3E%3Cline x1='-8' y1='-308' x2='808' y2='508'/%3E%3Cline x1='-8' y1='-508' x2='808' y2='308'/%3E%3C/g%3E%3Cg stroke='%238ac600' stroke-width='4'%3E%3Cline x1='-8' y1='467' x2='808' y2='1283'/%3E%3Cline x1='-8' y1='317' x2='808' y2='1133'/%3E%3Cline x1='-8' y1='-333' x2='808' y2='483'/%3E%3Cline x1='-8' y1='-483' x2='808' y2='333'/%3E%3C/g%3E%3Cg stroke='%238bc700' stroke-width='3'%3E%3Cline x1='-8' y1='342' x2='808' y2='1158'/%3E%3Cline x1='-8' y1='442' x2='808' y2='1258'/%3E%3Cline x1='-8' y1='-458' x2='808' y2='358'/%3E%3Cline x1='-8' y1='-358' x2='808' y2='458'/%3E%3C/g%3E%3Cg stroke='%238bc700' stroke-width='2'%3E%3Cline x1='-8' y1='367' x2='808' y2='1183'/%3E%3Cline x1='-8' y1='417' x2='808' y2='1233'/%3E%3Cline x1='-8' y1='-433' x2='808' y2='383'/%3E%3Cline x1='-8' y1='-383' x2='808' y2='433'/%3E%3C/g%3E%3Cg stroke='%238CC800' stroke-width='1'%3E%3Cline x1='-8' y1='392' x2='808' y2='1208'/%3E%3Cline x1='-8' y1='-408' x2='808' y2='408'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
#area-recruit h2{margin:0; font-size:clamp(2.5rem, 3.5vw, 3.5rem); letter-spacing:.1em; color:#fff;}
#area-recruit h2 small{display:block; line-height:1; font-size:clamp(1.2rem, 1.5vw, 1.5rem);}

#area-recruit p{font-weight:600; margin:1.5em 0 2em 0; font-size:clamp(1.4rem, 1.5vw, 1.5rem); color:#fff;}
#area-recruit a label{cursor:pointer; border:1px solid; font-size:clamp(1.4rem, 1.5vw, 1.5rem); padding:1.3em 1.5em; line-height:1; margin:0; display:inline-block; color:#fff; transition:.5s;}
@media (max-width: 500px) {
#area-recruit .item{padding:2em 1.5em;}
#area-recruit p{letter-spacing:0;}
}
@media (hover: hover) and (min-width: 768px){
#area-recruit a:hover .item{box-shadow:0 0 0 rgba(100,100,100,0); opacity:.9;}
#area-recruit a:hover label{background:#fff; color:#6ea000; font-weight:600;}
}


/*area-news*/
#area-news h2{margin:0 0 1em 0; font-size:clamp(2.5rem, 3.5vw, 3.5rem);}
#area-news h2 small{color:#73c3d7; font-size:90%;}
.newslist{margin:0 !important; padding:0 !important; list-style:none; border-top:1px solid #ccc;}
.newslist li{margin:0 !important; padding:1.5em 1em; list-style:none; border-bottom:1px solid #ccc; line-height:1.3; display:flex; justify-content:flex-start; gap:2em;}
.newslist li a{/* transition:.3s; */}
.newslist li time{width:6em; display:inline-block; font-size:1.2rem; font-weight:700; line-height:1.8; white-space:nowrap; color:#333;}
.newslist li span{color:#fff; background:#00326e; text-align:center; width:7em; display:inline-block; line-height:1; padding:.5em 0; font-size:1.1rem; font-weight:500; white-space:nowrap; height:2em;}
.newslist li label{/*max-width:calc(100% - 17em);*/ color:#00326e; text-decoration:underline; font-size:clamp(1.3rem, 1.3vw, 1.4rem); cursor:pointer; line-height:1.5;}
.newslist li label a{margin-right:1em; color:#00326e;}
a.sl{text-decoration:none !important; letter-spacing:0; font-size:1.1rem; display:inline-block; background:#eee; padding:.2em .6em; border-radius:.2em; white-space:nowrap; color:#333;}
a.sl:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f0da'; color:#73c3d7; margin-left:.5em;}
.newslist + .more{text-align:right; margin-top:2em;}
.newslist + .more a{display:inline-block; text-decoration:none !important; white-space:nowrap; color:#333; font-size:1.2rem; font-weight:500; border:1px solid #ccc; line-height:1; padding:1em .8em 1em 1.2em;}
span.技術情報{background:#73c3d7 !important;}
span.採用{background:#8cc81e !important;}
@media (max-width: 768px) {
.newslist li time{width:inherit; line-height:1;}
.newslist li span{padding:.5em 0; font-size:1rem; height:inherit; white-space:nowrap;}
.newslist li label{display:block; max-width:inherit; margin:0;}
}
@media (max-width: 600px) {
.newslist li{flex-wrap:wrap; gap:1em; align-items:center;}
.newslist li time, .newslist li div:has(span){}
.newslist li div:has(label){width:100%; margin:0;}
.newslist li label{display:inline-block;}
a.sl{margin:.5em; display:inline-block;}
}
@media (hover: hover) and (min-width: 768px){
.newslist li a:hover{color:#73c3d7;}
.newslist + .more a:hover{background:#f0f0f5;}
}
ul.pagination{display:flex; flex-wrap:wrap; gap:.6em; justify-content:center; list-style:none; margin:2em 0 0 0; padding:0;}
ul.pagination li{text-align:center; margin:0; padding:0; border:1px solid #ccc;}
ul.pagination li a{text-decoration:none !important; display:inline-block; padding:.5em; line-height:1;}

/*area-pickup*/
ul.pickuplist{margin:0 !important; padding:0 !important; list-style:none !important; display:grid; gap:10px; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));}
ul.pickuplist li a{display:block; text-align:center; border:1px solid #ccc; padding:1.5em .8em; line-height:1.3; font-size:clamp(1.3rem, 1.5vw, 1.5rem); font-weight:600; color:#00326e; transition:.3s;}




/*************************************************************************************/
/*************************************************************************************/
/*                                        PAGE                                       */
/*************************************************************************************/
/*************************************************************************************/

/*rayout*/
main{max-width:calc(1200px + 3em); padding:0 1.5em 3em 1.5em; margin:0 auto;}
body.home main{max-width:inherit; padding:0;}
body.single main{margin-top:3em;}

main:has(#side){display:flex; justify-content:space-between; gap:5%;}
main:has(#side) #content{width:75%;}

#side{width:25%; max-width:250px; text-align:center;}
#side ul{margin:0; padding:0; list-style:none;}
#side li{margin:0; padding:0; text-align:left;}
#side > a{margin:1em 0; display:inline-block;}
@media (max-width: 768px) {
main:has(#side){display:block !important;}
#content{width:100% !important;}
#side{width:100%; max-width:inherit; border-top:1px solid #ccc; margin-top:3em; padding-top:1em;}
}
#title .inner{max-width:1200px; text-align:center; font-size:clamp(2rem, 2.7vw, 2.7rem); font-weight:600 !important; padding:2em 0 1.5em 0; border-bottom:1px solid #ccc; margin-bottom:1.5em;}
.pankuzu{font-size:clamp(1rem, 1.2vw, 1.2rem); color:#aaa; margin:1em;}
.pankuzu a{color:#00326e; text-decoration:underline;}
@media (max-width: 768px) {
#title .inner{padding:1.5em 0 1em 0; border-top:1px solid #ccc;}
}



/*side*/
#side li{padding:0;}
ul.sidenav{margin:0 0 3em 0;}
ul.sidenav > li > a{border:1px solid #ccc; text-align:center; display:block; margin:0 0 1em 0; padding:1em .5em;}
ul.sidenav li.page-item-772:before{content:"先輩社員の声"; border:1px solid #ccc; text-align:center; display:block; margin:1em 0; padding:1em .5em; font-weight:bold; line-height:1;}
ul.sidenav  a > div{color:#333; font-weight:bold; line-height:1.3;}
ul.sidenav ul > li{margin:.5em 0 !important;}
ul.sidenav ul > li a{display:flex; justify-content:space-between; align-items:center; gap:1em; width:100%; line-height:1.3; color:#333;}
ul.sidenav ul > li a:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f105';}
ul.sidenav > li > ul > li > a{border-left:4px solid #00326e; border-bottom:1px solid #ccc; font-size:1.3rem; font-weight:bold; padding:1em .4em 1em 1em;}
body.recruit ul.sidenav > li > ul > li > a{border-left:4px solid #8cc81e;}
ul.sidenav > li > ul > li > ul > li:nth-child(2n){background:#f5f5f5;}
ul.sidenav > li > ul > li > ul > li > a{font-size:1.2rem; padding:1em .8em 1em 1.2em;}
body.single ul.sidenav{display:none;}
ul.sidenav .active > a{background:#73c3d7;}
ul.sidenav .active > a > div{color:#fff;}
@media (hover: hover) and (min-width: 768px){
ul.sidenav > li > a:hover{background:#f0f0f5; color:#222;}
ul.sidenav a:hover{color:#fff; background:#73c3d7;}
}
ul.sidenav:has(li.page-item-168), 
ul.sidenav:has(li.page-item-172), 
ul.sidenav:has(li.page-item-244), 
/*ul.sidenav:has(li.page-item-246), */
ul.sidenav:has(li.page-item-248), 
ul.sidenav ul:has( > li.page-item-284), 
ul.sidenav ul:has( > li.page-item-286), 
ul.sidenav ul:has( > li.page-item-6128) 
/*ul.sidenav:has(li.page-item-8085)*/
{display:none !important;}


#side h2.widgettitle{font-size:1.5rem; margin:0 0 .5em 0;}
#side h2.widgettitle:before{content:"▼"; margin-right:.5em; font-size:70%;}

#side ul.wp-block-list{margin:2em 0;}
#side ul.wp-block-list li{margin:.2em 0;}
#side ul.wp-block-list a{display:block !important; text-align:center; font-size:85%; padding:1em .5em; font-weight:bold; background:inherit; border-radius:0; border:1px solid #ccc; color:#333;}
@media (hover: hover) and (min-width: 768px){
#side ul.wp-block-list a:hover{background:#f0f0f5;}
}

#side p a{display:block; background:#00326e; border-radius:.3em; padding:1em 1.3em; color:#fff; text-align:center; font-weight:bold; line-height:1.4;}
#side p a:hover{background:#50b4c8 !important;}
#side .rec a{background:#8cc81e;}

#side ul.sidebar-common{margin:2em 0 0 0;}
#side ul.sidebar-common li{margin:1em 0; text-align:center;}

.search-form {display: flex; align-items: center; gap: 0; width: 100%; max-width: 100%; box-sizing: border-box; margin: 0.5em 0;}
.search-form label {display: none;}
.search-form .search-field {flex: 1; padding: 0.8em; border: 1px solid #ccc; box-sizing: border-box; font-size:14px; height:40px;}
.search-form .search-submit {display: flex; align-items: center; justify-content: center; padding:0; border:0 !important; background: #666; cursor: pointer; font-size:14px; height:40px; width:50px;}
.search-form .search-submit .screen-reader-text {position: static; width: auto; height: auto; clip: auto; clip-path: none; overflow: visible; white-space: normal; color: #fff;}
.search-form .search-submit svg {display: none;}
.search-form .search-submit:hover {background: #444;}

body:not(.recruit) #side .def{display:block;}
body:not(.recruit) #side .rec{display:none;}
body.recruit #side .def{display:none;}
body.recruit #side .rec{display:block;}



/*def-object*/
#content, #content p, #content li, #content th, #content td, #content div{font-size:clamp(1.3rem, 1.5vw, 1.5rem);}

.has-vivid-red-color{color:#cf2e2e;}
.has-cyan-bluish-gray-color{color:#abb8c3;}
.has-vivid-cyan-blue-color{color:#0693e3;}

p.※{position:relative; padding:0 0 0 1.3em; line-height:1.3;}
p.※:before{content:"※"; position:absolute; left:0; top:0;}

#content p{margin:0;}
#content p+p{margin-top:1em;}
body.single #content p:empty{height:1em;}

#content ul, #content ol{margin:1.5em 0; padding:0 0 0 1.5em;}
#content li ul, #content li ol{margin:0; padding:0 0 0 1.3em;}

.dlm-downloads{list-style:none; margin:0; padding:0 !important; display:flex; flex-wrap:wrap; gap:2%;}
.dlm-downloads li{width:49%;}
@media (max-width: 600px){
.dlm-downloads{display:block; gap:0;}
.dlm-downloads li{width:100%;}
}
.download-count{display:none;}


#content a{color:#00326e; text-decoration:underline;}
a.download-link{display:block; border:1px solid #ccc; border-radius:.2em; line-height:1.3; padding:.8em 1em; font-size:90%; margin-top:.5em;}
a.download-link:before{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f019'; color:#cc0000; margin-right:.5em;}
p+a.download-link{margin-top:2em !important;}
@media (hover: hover) and (min-width: 768px){
#content a:hover{color:#50aaff;}
a.download-link:hover{background:#f0f0f5;}
}

a code{display:inline-block; padding:.5em 1em; background:#00326e; color:#fff; border-radius:.3em; font-size:80% !important; transition:.3s;}
a:has(code){margin:.2em .2em .2em 0;}
@media (hover: hover) and (min-width: 768px){
a:hover code{background:#73c3d7;}
}



#content table{border-collapse:collapse; width:100%; margin:.5em 0;}
#content th, #content td{border:1px solid #ccc; padding:1em; line-height:1.5; font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
#content th, thead th{background:#edf7f9; text-align:center; font-weight:bold; line-height:1.3; /*white-space:nowrap;*/}
#content td{text-align:left;}
figure.wp-block-table{padding:0; margin:0;}
p+figure.wp-block-table{margin-top:1em;}
figure.wp-block-table+p{margin-top:1em;}
.typeA table tr > td:first-child{background:#edf7f9; text-align:center !important; font-weight:600; white-space:nowrap;}
@media (max-width: 600px){
#content th, #content td{padding:1em;}
}



figure{text-align:center;}
figcaption{font-size:clamp(1.1rem, 1.2vw, 1.2rem); text-align:center;}


#content h1{line-height:1.5; margin:3em auto 2em auto; display:table; text-align:center; font-size:clamp(2rem, 2.4vw, 2.4rem);}
#content h1:after{content:""; display:block; width:3em; height:4px; background:#00326e; margin:1em auto 0 auto;}
body.recruit #content h1:after{background:#8cc81e;}
body.single #title h1{display:block; text-align:left;}
body.single #title h1:after{display:none;}
#content h2{line-height:1.5; margin:1.5em 0; border-bottom:2px solid; font-size:clamp(1.8rem, 2.2vw, 2.2rem); padding:1em 0;}
#content h3{line-height:1.5; margin:2.5em 0 1em 0; padding:.7em 1em; background:#f0f0f5;}
#content h4{line-height:1.5; margin:2em 0 1em 0; padding:0 0 0 1.2em; position:relative; line-height:1.3; font-size:clamp(1.5rem, 1.7vw, 1.7rem);}
#content h4:before{content:""; display:block; width:.6em; height:1em; background:#00326e; position:absolute; left:0; top:.2em;}
#content h5{line-height:1.5; margin:2em 0 .5em 0; font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
#content h6{line-height:1.5; margin:1em 0;}
span.start+h1,span.start+h2,span.start+h3,span.start+h4,span.start+h5,span.start+h6{margin-top:0 !important;}
#content h4+h5{margin-top:1em;}



/*block-object*/
.design1{border:1px solid #ccc; padding:1.5em;}
.design2{border:1px solid #ccc; padding:1.5em; background:#f8f8f8;}

.box.small h4{font-size:100% !important;}
.box.small p{font-size:90% !important;}


p.contact span{white-space:nowrap;}
p.contact span+span{margin-left:2em;}
p.contact span i{margin-right:.5em;}

ul.anchorlist{list-style:none; margin:3em 0 !important; border:1px solid #ccc; padding:1em !important;}
ul.anchorlist li{padding:0; margin:0 .5em; display:inline-block; white-space:nowrap; font-size:1.3rem !important;}
ul.anchorlist li:before{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f0da'; margin-right: .4em;}
ul.anchorlist li a{}

/*archive*/
ul.archive{margin:0 !important; padding:0 !important; list-style:none; display:flex; flex-wrap:wrap; align-items:stretch; width:100%; gap:5%;}
span.start+ul.archive{margin:0 !important;}
ul.archive > li{margin:0 0 2em 0; width:calc(95% / 2);}
ul.archive > li.long{width:100%;}
ul.archive > li > a{text-decoration:none !important; line-height:1.3; display:flex; gap:1em; justify-content:space-between; align-items:center; width:100%; border:1px solid #ccc; padding:1.5em 1em 1.5em 1.5em; font-weight:bold;}
ul.archive > li > a:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f105';}
ul.archive > li ul{list-style:none; margin:.5em !important; padding:0 !important;}
ul.archive > li li{font-size:95% !important; display:inline-block; margin:0 1em 0 0; white-space:nowrap;}
ul.archive > li li:before{content:"・";}
ul.archive > li p{font-size:90% !important; margin:.5em !important; line-height:1.3;}
@media (hover: hover) and (min-width: 768px){
ul.archive > li > a:hover{color:#fff !important; background:#73c3d7;}
}
@media (max-width: 768px) {
ul.archive{display:block;}
ul.archive > li{width:100%;}
}

.diagonal td:empty{background: linear-gradient( to top right, transparent 49.5%, #999 50%, #999 50.5%, transparent 51% );}

dl.tip{margin:0; padding:0; display:flex; justify-content:flex-start; align-items:flex-start;}
dl.tip.small dt, dl.tip.small dd p{font-size:85% !important;}
dl.tip dt{margin:0; padding:0 .5em 0 0; font-weight:inherit !important;}
dl.tip dd{margin:0; padding:0;}
dl.tip dd p{margin:0 !important;}



/*************************************************************************************/
/*************************************************************************************/
/*                                        FORM                                       */
/*************************************************************************************/
/*************************************************************************************/
table.form{margin:2em auto !important; width:100%;}
table.form th{line-height:1.3 !important; border:1px solid #ccc !important; white-space:nowrap !important; padding:1em !important; background:#f0f0f5 !important;}
table.form th p{margin:0; font-weight:bold; font-size:90% !important; line-height:1.3;}
table.form td{line-height:1.3 !important; border:1px solid #ccc !important; padding:1em !important;}
table.form td p{margin:0; font-size:90% !important; line-height:1.3;}

form input, form textarea{display:block; padding:.7em; border:1px solid #aaa; width:calc(100% - 2px);}
form textarea{width:100%;}
form input+p{font-size:90% !important; line-height:1.5;}
.checklist{list-style-type:none; margin:0 !important; padding:0 !important; display:flex; flex-wrap:wrap; white-space:nowrap;}
.checklist.full{display:block;}
.checklist.half li{width:calc(50% - .5em); overflow:hidden;}
.checklist li{margin:.2em !important; padding:.4em .7em .5em .3em !important; border:1px solid #ccc; border-radius:.2em; line-height:1;}
.checklist input{display:inline-block; margin-right:.3em; width:inherit;}

span.requied{padding:.1em .3em; font-weight:bold; font-size:1.1rem; color:#fff; background:red; margin-left:.5em;}
@media (max-width: 768px) {
span.requied{display:block; margin:0 auto;}
}

input[type='submit'] {cursor:pointer; border:none; padding:1em 2em;}
.flat-btn {-webkit-appearance:none; border-radius:.3em; background:#00326e; color:#fff; transition:.3s; display:block; font-size:110%; font-weight:bold; width:150px; margin:0 auto;}
body.recruit .flat-btn {background:#8cc81e;}
@media (hover: hover) and (min-width: 768px){
.flat-btn:hover{background:#50b4c8 !important;}
}
table.form td p label{display:flex; gap:1em; align-items:flex-start;}
table.form td p label input{width:1em;}
fieldset.hidden-fields-container {display:none !important;}


.wpcf7-checkbox{display:flex; flex-wrap:wrap; white-space:nowrap;}
.wpcf7-checkbox .wpcf7-list-item{margin:.2em !important; border:1px solid #ccc; border-radius:.2em;}
.wpcf7-checkbox .wpcf7-list-item label{padding:.5em 1em .5em .5em !important;  line-height:1.3; display:flex; align-items:flex-start; white-space:nowrap; gap:0;}
.wpcf7-checkbox .wpcf7-list-item label input{width:inherit;}
.wpcf7-checkbox .wpcf7-list-item-label{margin:0 0 0 .3em; padding:0;}
.wpcf7-form-control-wrap .wpcf7-list-item{padding:.3em 0 !important; display:block;}
.wpcf7-checkbox.seminar{justify-content:center;}



/*************************************************************************************/
/*************************************************************************************/
/*                                        POST                                       */
/*************************************************************************************/
/*************************************************************************************/

/*title*/
body.single #title{font-size:clamp(1.5rem, 2.5vw, 2.5rem);}
body.single #title small{color:#73c3d7; font-size:90%;}
body.single #title h1{border-bottom:1px solid #ccc; margin:0 0 2em 0; padding:0 0 1em 0; font-size:clamp(1.5rem, 2.5vw, 2.5rem);}
body.single #title h1 time{width:6em; display:inline-block; font-size:1.2rem; font-weight:700; line-height:1.8; white-space:nowrap; color:#333; margin-right:2em;}
body.single #title h1 span{color:#fff; background:#00326e; text-align:center; width:7em; display:inline-block; line-height:1; padding:.5em 0; font-size:1.1rem; font-weight:500; white-space:nowrap; height:2em;}
body.single #title h1 label{display:block; line-height:1.3; margin:.5em 0 0 0;}

#postmenu{display:flex; justify-content:space-between; align-items:flex-start; gap:10%; border-top:1px solid #ccc; margin-top:5em; padding-top:2em;}
#postmenu > div{width:clac(90% / 2); line-height:1.3; max-width:50%;}
#postmenu > div:last-child{text-align:right;}
#postmenu > div a{font-size:clamp(1.1rem, 1.3vw, 1.3rem); text-decoration:none; color:#666;}
#postmenu > div:first-child a:before{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f104'; margin-right:.5em;}
#postmenu > div:last-child a:after{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f105'; margin-left:.5em;}
@media (max-width: 600px) {
#postmenu{display:block;}
#postmenu > div{width:100%;}
#postmenu > div:last-child{margin-top:1em;}
}



/*****************************************
　　　　　　　BLOCK OBJECT
*****************************************/
.anchor{position:relative;}
.anchor a{position:absolute; top:-126px;}
@media (max-width: 1000px) {
.anchor a{top:-120px;}
}
@media (max-width: 767px) {
.anchor a{top:-60px;}
}

.btnarea{text-align:center; margin:3em 0; padding:.5em;}
.btnarea > a{display:inline-block; text-decoration:none !important; min-width:250px; background:#00326e;border-radius:.3em; padding:1em 1.3em;}
.btnarea > a > div{display:flex; align-items:center; justify-content:center; text-align:center; width:100%;}
.btnarea > a span{line-height:1.3; text-decoration:none; font-size:14px; color:#fff;}
.btnarea.green > a{background:#8cc81e;}
.btnarea.white > a{border-radius:.3em; background:#fff; border:1px solid #ccc; padding:.7em;}
.btnarea.white > a span{font-size:1.3rem; color:#666;}
.btnarea.white > a span:before{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f0da'; margin-right:.4em;}
.btnarea.center{text-align:center;}
.btnarea.center > a{margin-left:auto; margin-right:auto;}
.btnarea.left{text-align:left;}
.btnarea.left > a{margin-left:0 !important; margin-right:inherit !important;}
.btnarea.right{text-align:right;}
.btnarea.right > a{margin-left:inherit; margin-right:0;}

@media (hover: hover) and (min-width: 768px){
.btnarea > a:hover{background:#50b4c8 !important;}
.btnarea.white > a:hover span{color:#fff !important;}
}



hr{display:block; border:0;}
hr.def{background:#00326e; height:4px; width:80px; margin:0 auto;}
body.recruit hr.def{background:#8cc81e !important;}
hr.space{background:inherit; height:1px;}

/*scroll*/
@media only screen and ( max-width : 900px ) {
.table-group .wrapper {width: 100%; overflow-x: scroll; padding:1em 0;}
.table-group .scrollbar {width: 100%; height: 20px; overflow-x: scroll; overflow-y: hidden;}
.table-group .scrollbar .inner {height: 1px;}
.table-group .wrapper table {min-width: 600px;}
.table-group .scrollbar .inner {width: 600px;}
}
@media only screen and ( max-width : 450px ) {
.table-group{position:relative;}
.table-group:before{content:"Scroll →"; position:absolute; top:.2em; right:0; font-size:1.1rem; color:#888;}
}


.imgarea{margin:0 auto; text-align:center;}
.imgarea .item{text-align:center; display:inline-block;}
.imgarea.align_l{text-align:left !important;}
.imgarea.align_r{text-align:right !important;}
.imgarea.float_l, .imgarea.float_l2{float:left; max-width:45%; margin-right:2em;}
.imgarea.float_r, .imgarea.float_r2{float:right; max-width:45%; margin-left:2em;}
.imgarea.border img{border:1px solid #ccc;}

.imgarea .item p.cap{text-align:center !important; color:#666; font-size:1.2rem !important; margin:.4em 0 0 0 !important; display:block !important; padding:0 1em; line-height:1.3;}
.imgarea .item p.cap:empty{display:none;}

@media (min-width: 1000px){
.imgarea.float_l, .imgarea.float_l2{max-width:300px;}
.imgarea.float_r, .imgarea.float_r2{max-width:300px;}
}
@media (max-width: 600px){
.imgarea.float_l{margin-right:1.5em;}
.imgarea.float_r{margin-left:1.5em;}
.imgarea.float_l2{float:none; max-width:inherit; margin-right:auto;}
.imgarea.float_r2{float:none; max-width:inherit; margin-left:auto;}
}
@media (hover: hover) and (min-width: 768px){
.imgarea a:hover{opacity:.7;}
}



.cards{display:flex; flex-wrap:wrap; gap:5%;}
.cards > div{width:calc(95% / 2); margin:2.5% 0; /*padding:2%; border:1px solid #ccc;*/}


.area.flexharf{display:flex; flex-wrap:wrap; gap:2%; justify-content:center; align-items:flex-end;}
.area.flexharf:has(> aside){justify-content:flex-start;}
.area.flexharf > div, .area.flexharf > aside{margin:0 0 2% 0; width:calc(98% / 2);}
.area.inlineflex{display:flex; justify-content:center; align-items:flex-end; flex-wrap:wrap;}
.area.inlineflex > div{margin:0;}
.inlineflex.four-harf{flex-wrap:wrap;}
.inlineflex.four-harf > div{max-width:25%;}
.flextableimg{display:flex; gap:3%; flex-direction: row-reverse;}
.flextableimg figure{width:72%;}
.flextableimg .imgarea{width:25%;}
@media (max-width: 600px){
.area.flexharf:has(> aside){display:block;}
.area.flexharf > aside{width:100%;}
.inlineflex.four-harf > div{width:50%; max-width:inherit;}
.flextableimg{display:block;　flex-direction:inherit;}
.flextableimg figure{width:100%;}
.flextableimg .imgarea{width:100%; margin-bottom:1em;}
}

.area.flex_pc{display:flex; justify-content:center; align-items:stretch;}
@media (max-width: 600px){
.area.flex_pc{display:block;}
.area.flex_pc > div{width:100%; height:auto; margin:0 auto; text-align:center;}
}


.area.gallery{display:flex; justify-content:center; align-items:stretch; flex-wrap:wrap; gap:1%;}
.area.gallery .item{width:calc(97% / 4); margin:.5% 0;}


/*モーダルウィンドウ*/
.modalDialog {
  position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 99999; opacity:0;
  -webkit-transition: opacity 100ms ease-in; -moz-transition: opacity 100ms ease-in; transition: opacity 100ms ease-in; pointer-events: none;
  display:flex; justify-content:center; align-items:center;
}
.modalDialog:target {opacity:1; pointer-events: auto;}
.modalDialog > div{width:100%; height:100vh; padding:5%; display:flex; justify-content:center; align-items:center;}
.modalDialog div.img{position:relative;}
.modalDialog div.img img{display:block; margin:0; max-height:90vh;}
.modalDialog div.img .close{color:#fff !important; position:absolute; top:-1.5em; right:-1em; font-size:clamp(1.8rem, 3vw, 3rem);}
.modalDialog {background: rgba(0, 0, 0, .95);}
.imgarea:has(.modalDialog) .item{max-width:300px;}

/*************************************************************************************/
/*************************************************************************************/
/*                                        UNCOMMON                                       */
/*************************************************************************************/
/*************************************************************************************/

/*outline*/
.outline table td:has(img){padding:0 !important;}
@media (max-width: 500px){
.outline table td{padding:.5em !important;}
}

/*history*/
.history table td{padding:1em .5em !important; border-right:0 !important; border-left:0 !important;}
.history table tr > td:first-child{font-weight:bold; white-space:nowrap;}

/*office*/
dl.office{display:flex; justify-content:flex-start; align-items:stretch; width:100%; border:1px solid #ccc; margin:.5em 0;}
dl.office dt{width:20%; white-space:nowrap; text-align:center; font-weight:bold; background:#f1f1f1; border-right:1px solid #ccc; display:flex; justify-content:center; align-items:center;}
dl.office dt span{padding:.5em;}
dl.office dd{width:80%; padding:0 1.5em 1em 1.5em !important; margin:0 !important;}
dl.office dd p{padding:0 !important; margin:0 !important; line-height:1.2 !important;}
dl.office dd p+p{margin-top:1em !important;}
dl.office dd .contact-area{display:flex; gap:1.5em; flex-wrap:wrap;}
dl.office dd .contact-area span{white-space:nowrap; line-height:1;}
dl.office dd .contact-area span.tel:before{margin-right:.5em; font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f095';}
dl.office dd .contact-area span.fax:before{margin-right:.5em; font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f1ac';}
dl.office dd .contact-area a{display:inline-block; font-size:1.2rem; line-height:1; padding:.4em .8em; border-radius:.3em; background:#00326e; color:#fff !important; text-decoration:none !important;}
dl.office dd .contact-area a:before{margin-right:.5em; font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f3c5';}
dl.office.check dd .contact-area span.tel > span:before{margin-right:.5em; font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f1ac';}
@media (max-width: 600px){
dl.office{display:block;}
dl.office dt{width:100%; border-right:0;}
dl.office dd{width:100%;}
dl.office dd .contact-area, dl.office dd .contact-area span.tel, dl.office dd .contact-area span.fax{display:block; margin:.5em 0;}
}

/*sdgs*/
div.sdgs{display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:2%;}
div.sdgs img{width:calc(90% / 6); max-width:150px; height:auto; margin:1% 0;}


/*catalogue*/
aside.download-box{text-align:center; margin-bottom:2em;}
aside.download-box .download-count{font-size:85% !important; margin:.5em 0 1em 0;}
aside.download-box .download-box-content h1{margin:1em 0 !important; font-size:1.6rem !important; display:block !important; text-align:center;}
aside.download-box .download-box-content h1:after{display:none !important;}
aside.download-box .download-box-content a small{font-weight:normal; display:block;}

aside.catalogue{max-width:500px; margin:0 auto 1em auto;}
aside.catalogue a.download-link{background:#00326e; border:0; color:#fff !important; padding:1.5em .8em; font-weight:bold; text-decoration:none !important;}
aside.catalogue a.download-link:before{color:red !important;}
@media (hover: hover) and (min-width: 768px){
aside.catalogue a.download-link:hover{background:#50b4c8 !important;}
}












/*sitemap*/
#sitemap_list ul.children{display:block; padding:0;}
#sitemap_list ul.children > li{display:inline-block; background-color:pink; margin-right:.1em; font-size:95%;}
#sitemap_list ul.children > li{padding:.7em; border:1px solid #ddd; background:#f5f5f5; line-height:1; white-space:nowrap;}
#sitemap_list ul.children > li > ul.children{display:flex; flex-wrap:wrap; padding:1em 0 0 0;}
#sitemap_list ul.children ul.children ul.children ul.children{display:block;}
#sitemap_list ul.children ul.children li{display:inline-block; border:0; background:inherit; padding:.3em .5em;}
#sitemap_list ul.children ul.children li:before{font-family:'Font Awesome 6 Free'; font-weight:900; content:'\f105'; margin-right:.3em;}
#sitemap_list li:has(> ul.children){display:block; margin:.5em 0;}


/*recruit*/
.wp-block-columns.interview{gap:1px;}
.recbox{position:relative;}
.recbox .img{aspect-ratio:4 / 5; overflow:hidden;}
.recbox .img img{width:100%; height:100%; object-fit:cover; width: 100%; transition-duration: .3s;}
.recbox .text{position:absolute; left:0; top:0; aspect-ratio:4 / 5; width:100%; display:flex; justify-content:center; align-items:center; padding:1em; background:rgba(255,255,255,0);}
.recbox .text h3{padding:0 !important; margin:0 !important; font-size:clamp(1.4rem, 1.5vw, 1.5rem); background:inherit !important; -webkit-writing-mode:vertical-rl; writing-mode:vertical-rl; color:#fff; font-weight:600; letter-spacing:.1em;}
.recbox .text h3 b{font-size:120%; font-weight:600;}
@media (hover: hover) and (min-width: 768px){
.wp-block-columns.interview a:hover .recbox .img img{transform: scale(1.1); opacity:.9;　transition-duration: 0.5s;}
}
@media (max-width: 768px) {
.wp-block-columns.interview{display:block;}
.recbox{margin-bottom:1px;}
.recbox .img, .recbox .text{aspect-ratio:3 / 1;}
.recbox .text h3{-webkit-writing-mode:inherit; writing-mode:inherit;}
}


.blockbtn{margin:1em auto;}
.blockbtn a{display:block; text-decoration:none !important;}
.blockbtn .bg{background-repeat:no-repeat; background-position:right; background-size:contain; transition:.3s;}
.blockbtn .text{padding:1.5em; width:50%;}
.blockbtn .text h2{border:0 !important; padding:0 !important; margin:0 0 .5em 0 !important; font-weight:500; font-size:2.3rem !important; line-height:1.2;}
.blockbtn .text small{font-size:12px; display:block; font-weight:500; line-height:1.3;}
.blockbtn .text p{font-weight:500;}
.blockbtn .text label{cursor:pointer; border:1px solid; display:inline-block; margin-top:1em; line-height:1; padding:.7em; width:15em; text-align:center; font-size:clamp(1.1rem, 1.3vw, 1.3rem); transition:.3s;}
@media (hover: hover) and (min-width: 768px){
.blockbtn a:hover .text label{background:#222; color:#fff;}
}
@media (max-width: 600px) {
.blockbtn{border:1px solid #ccc;}
.blockbtn .bg{background-size:cover; background-position:center;}
.blockbtn .text{width:100%; background-image: linear-gradient(90deg, #ffffffb3, #ffffffb3 50%, transparent 100%);}
.blockbtn .text p{font-size:2rem !important;}
.blockbtn .text small{width:70%;}
/*.blockbtn .text label{background:#222; color:#fff; border:0 !important;}*/
}

#content .rec_intro{aspect-ratio:17 / 8; display:flex; justify-content:flex-start; align-items:center; margin:0 auto 2em auto ;
    background-repeat:no-repeat; background-position:center center; background-size:cover; max-width:850px;}
#content .rec_intro .text{padding:1em;}
#content .rec_intro .text label{font-size:clamp(1rem, 1.3vw, 1.3rem); font-weight:600; line-height:1; padding:.2em .5em; border:2px solid;}
#content .rec_intro .text h1{text-align:left; font-size:clamp(2.5rem, 4.5vw, 4.5rem); line-height:1.5; margin:.3em 0 .5em 0; font-weight:400;}
#content .rec_intro .text h1:after{display:none;}
#content .rec_intro .text h1 span{color:#fff; background:rgba(0, 0, 0, 0) linear-gradient(transparent 10%, #73c3d7 0%) repeat scroll 0 0;}
#content .rec_intro .text p{margin:0; line-height:1.3;}
#content .rec_intro .text .name{font-weight:bold; font-size:clamp(1.3rem, 1.8vw, 1.8rem);}
#content .rec_intro .text .name small{font-weight:500;}
#content .rec_intro .text .group{font-weight:bold; font-size:clamp(1.3rem, 1.8vw, 1.8rem); margin-top:.3em;}
#content .rec_intro.woman{background-image: linear-gradient(90deg, transparent, #ffe6e6) !important;}




/* hide reCAPTCHA v3 badge */
.grecaptcha-badge {visibility: hidden;}