@charset "UTF-8";
/*
NIKKEI
WE WORKS 2025.07 STYLE.CSS
*/

/* web fonts */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');
.opensans { font-family: 'Open Sans', sans-serif; }
.roboto { font-family: 'Roboto', sans-serif; }
.notojp { font-family: 'Noto Sans JP', sans-serif; }
.oswald { font-family: "Oswald", sans-serif; }
.lato { font-family: "Lato", sans-serif; }
.jost { font-family: "Jost", sans-serif; }





/*------------------------------------------------------------
	base
------------------------------------------------------------ */
* { box-sizing: border-box; }
html { font-family: sans-serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; overflow-x: hidden; font-size: 16px; }
body { margin: 0; padding: 0; height: 100%; font-family: "Helvetica Neue", "Arial", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif; color:　#000; line-height: 1.5; background-color: #fff; }
h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,form,figure { margin: 0px; padding: 0px; }
ul { list-style-type: none; }
img { border: none; }
input,textarea,select { font-size: 1em; }
form { margin: 0px; }
table {	border-collapse:collapse; font-size: 100%; border-spacing: 0; }
div { position: relative; font-size: 14px; color:　#000; line-height: 1.5; }

/* font-size */
h1, h2, h3, h4, h5, h6 { text-align: left; line-height: 1.5; line-break: strict; font-weight: bold; color: #000; word-wrap: break-word; margin-bottom: 1.0em; letter-spacing: 0; }
h1 { font-size: 48px; }
h2 { font-size: 36px; }
h3 { font-size: 24px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }
p { font-size: 14px; line-height: 1.5; font-weight: normal; color: #000; margin-bottom: 1.0em; letter-spacing: 0; }
@media(max-width:768px) {
h1 { font-size: 3.2rem; }
h2 { font-size: 2.8rem; }
h3 { font-size: 2.4rem; }
h4 { font-size: 1.8rem; }
h5 { font-size: 1.6rem; }
h6 { font-size: 1.4rem; }
p { font-size: 1.4rem; }
}

/* text */
strong { font-weight: bold; }
b { color:#000; font-weight: bold; }
em, i { font-style: italic; }
.normal { font-weight:normal!important; }
.txt-center { text-align: center!important; }
.txt-left { text-align: left!important; }
.txt-right { text-align: right!important; }
@media(max-width:768px) {
}

/* clearfx */
.cf:before, .cf:after { content: ""; display: table; }
.cf:after{ clear: both; }
.cf { zoom: 1; } /* For IE 6/7 */

/* 非表示 ============================================== */
.no_display { display: none!important; }

/* list-style */
ul { margin-bottom: 0; list-style: none outside; text-align: left; }
ol { margin-bottom: 0; list-style: decimal; margin-left: 2.0em; text-align: left; }
ul.square,
ul.disk,
ul.circle,
ul.minus { margin-left: 1.5em; margin-top: 4px; margin-bottom: 5px; }
ul.square li { list-style: square outside; }
ul.disk li { list-style: disc outside; }
ul.circle li { list-style: circle outside; }
ul.minus li { list-style: none outside; }
ul.minus li { position: relative; }
ul.minus li::before {
display: block;
content: '';
position: absolute;
top: 0.8em;
left: -1.25em;
width: 8px;
height: 1px;
background-color: #666;
}
@media(max-width:768px) {
ul.square,
ul.disk,
ul.circle,
ul.minus { margin-left: 1.5em; }
}

/* hr */
hr { border-width: 1px 0 0 0; border-style: solid; border-color: #999; height: 1px; margin: 1.5em 0; }
hr.dot { border-width: 1px 0 0 0; border-style: dotted; border-color: #999; height: 1px; }
hr.dash { border-width: 1px 0 0 0; border-style: dashed; border-color: #999; height: 1px; }


/* margin */
.mgn-btm0 { margin-bottom: 0!important; }
.mgn-btm5 { margin-bottom: 5px!important; }
.mgn-btm10 { margin-bottom: 10px!important; }
.mgn-btm20 { margin-bottom: 20px!important; }
.mgn-btm30 { margin-bottom: 30px!important; }
.mgn-btm40 { margin-bottom: 40px!important; }
.mgn-top0 { margin-top: 0!important; }
.mgn-top10 { margin-top: 10px!important; }
.mgn-top20 { margin-top: 20px!important; }
.mgn-top30 { margin-top: 30px!important; }
.mgn-top40 { margin-top: 40px!important; }


/* link */
a { color: #0c5a92; text-decoration: underline; }
a:hover { text-decoration: underline; }


/* PC-SP */
.disp-pc { display: block!important; }
.disp-sp { display: none!important; }
@media(max-width:768px) { 
.disp-pc { display: none!important; }
.disp-sp { display: block!important; }
}


/* image */
img { display: block; margin: 0 auto; padding: 0; border: 0; max-width: 100%; }
img.center { display: block; margin: 0 auto; }
img.left { float: left; margin: 0 20px 0 0; border: 0; }
img.right { float: right; margin: 0 0 0 20px; border: 0; }
a img { transition: all .2s ease-in-out; }



/* common */
main { display: block; margin: 0; padding: 0; background: #fff; background-size: contain; width: 100%; }
section { position: relative; width: 100%; margin: 0; padding: 80px 0; overflow: hidden; background: #fff; }
section.gray { background: #efefef; }
section.darkblue { background-color: #212f3a!important; }
.container { position: relative; width: 80%; margin: 0 auto; }
@media(max-width:768px) {
main { padding-top: 40px;}
section { }
.container { width: 90%; margin: 0 auto; }
}




/* responsive table */
.table-res { margin: 0 auto 40px; border: 0; border-bottom:  1px solid #999; border-collapse: collapse; width: 100%; }
.table-res th,
.table-res td { padding: 10px 5px; border: 0; border-top: 1px solid #999; border-collapse: collapse; text-align: left; font-size: 1.4rem; line-height: 1.5; color: #000; background-color: inherit; }
.table-res th { width: 30%; font-weight: normal; padding: 15px 20px; }
.table-res td { width: 70%; color: #333; }
.table-res td a { color: #f39800; text-decoration: underline; }
@media(max-width:768px) {
.table-res th { display: block; width: 100%; padding: 12px 10px; background-color: #efefef; font-size: 1.4rem; }
.table-res td { display: block; width: 100%; padding: 12px 10px; font-size: 1.4rem; }
}







/* =============================================
style.min.css 上書き
============================================= */
/* register ボタン */
.p-float__link {
position: fixed;
top: 2%;
right: 1%;
display: grid;
place-content: center;
width: 160px;
height: 160px;
background: none;
z-index: 999;
opacity: 1;
-webkit-transition: opacity .3s ease-in, -webkit-transform .3s ease-in;
transition: opacity .3s ease-in, -webkit-transform .3s ease-in;
transition: opacity .3s ease-in, transform .3s ease-in;
transition:opacity .3s ease-in, transform .3s ease-in, -webkit-transform .3s ease-in
}
.p-float__link img { width: 100%; }
@media(max-width:768px) {
a.p-float__link { right: 3%!important; top: 8%!important; width: 20%!important; height: 20%!important; }
}

/* archive btn */
.p-float__link.archive { width: 160px; height: 160px; }




/* HEADER＆ボタン箇所 上書き!!!!!!!
================================================== */
.l-header { width: 65%; }
@media screen and (max-width: 900px) {
.l-header { width: 100%; }
}

/* left nenu */
.l-header .logo__wrap { padding: 0.75em 2em; }
/* NIKKEI logo h1 */
.l-header .logo__wrap .logo { width:min(55%, 320px); margin-bottom: 0; font-size: inherit; }
@media screen and (max-width: 869px) {
.l-header .logo__wrap .logo { width:min(60%, 300px); }
}
.l-header .logo__wrap .global__nav { width: 50%; }
.l-header .logo__wrap .global__nav .parent-menu { text-decoration: none; font-size: 13px; letter-spacing: 0; color: #999; }
.l-header .logo__wrap .global__nav li a { display: inline-block; }
.parent-menu a { color: #000; text-decoration: none; font-size: 13px; letter-spacing: 0; }
.parent-menu a:hover { color: #666!important; }
.l-header .logo__wrap .global__nav .parent-menu:not(:last-child) { margin-right: 0.5em; }

.l-header .logo__wrap .global__nav .parent-menu.lang { display: inline-block; margin-left: 0.5em; cursor: default; }
.l-header .logo__wrap .global__nav .parent-menu.lang a { color: #08c; }
.l-header .logo__wrap .global__nav .parent-menu.lang a:hover { color: #369; }

.l-header .logo__wrap .global__nav .parent-menu.form,
.l-header .logo__wrap .global__nav .parent-menu.form a { color: #ec1e79!important; }
.l-header .logo__wrap .global__nav .parent-menu.form a:hover { color: #c0272d!important; }

.button__wrap { display: none; }
@media screen and (max-width: 768px) {
.l-header .logo__wrap .global__nav .parent-menu.lang { display: none; }
.button__wrap { display: flex;  }
}
/* language ボタン wrap */
.l-header .button__wrap { width: 160px; }
@media screen and (max-width: 869px) {
.l-header .button__wrap .menu__button { display: block; margin-top: 15px; letter-spacing: 0; }
}
/* language ボタン */
.l-header .button__wrap .lang__button {
width: 160px;
height: 32px;
border-radius: 16px;
}
@media screen and (max-width: 869px) {
.l-header .button__wrap .lang__button {
background-color: transparent;
-webkit-box-shadow: none;
box-shadow:none;
width: 35%;
}
}
.l-header .button__wrap .lang__button span {
color: #fff;
font-size: 14px;
letter-spacing: 0;
font-weight: 500;
line-height: 1;
}
@media screen and (max-width: 869px) {
.l-header .button__wrap .lang__button span { color:#004989; }
.l-header .button__wrap .lang__button span span { display: none; }
}























