@charset "utf-8";
/*
Theme Name: 日本インフォメーション
Theme URI: http://example.com/
Description: 日本インフォメーション
Version: 1.0
Author: gohako.inc
Author URI: http://gohako.jp
*/

/* Reset.css */
@import "css/reset.css";

html,
body {
    position: relative;
    font-size: 16px;
    line-height: 180%;
    position: relative;
    color: #555555;
    height: 100%;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
}

#blogmain li {
    list-style: none;
}

#bnr50 {
    position: absolute;
    top: 20px;
    right: 10px;
    z-index: 100;
}

#info09 .man {
    padding-right: 100px;
}

.pattern2 {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(/commons/images/raster3.png);
    top: 0;
    left: 0;
    z-index: 2;
}

#sec-bn #pagenavi {
    margin-bottom: 30px;
}

.bikou {
    font-size: 13px;
}

.img100 img {
    width: 100%;
    height: auto;
}

.zure {
    padding-top: 150px;
}

#sec-1,
#sec-2,
#sec-3,
#sec-4,
#sec-5,
#sec-6 {
    margin-top: -150px;
    padding-top: 150px;
}

#top-section11 {
    height: 720px;
    overflow: hidden;
    position: relative;
}

.home_video {
    position: fixed;
    top: 0;
    z-index: -1;
    left: 0;
    display: block !important;
    min-width: 100%;
    min-height: 100%;
    opacity: 1;
}

.snip1445 {
    position: relative;
    overflow: hidden;
    width: 100%;
    color: #ffffff;
    text-align: center;
    font-size: 16px;
    background-color: #000000;
}

.snip1445 *,
.snip1445 *:before,
.snip1445 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.55s ease;
    transition: all 0.55s ease;
}

.snip1445 img {
    max-width: 100%;
    backface-visibility: hidden;
    vertical-align: top;
}

.snip1445 figcaption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 100%;
}

.col {
    position: relative;
}

.radibox {
    border-radius: 10px;
    background-color: #eeeeee;
    padding: 30px 15px;
}

.r-sub {
    text-align: center;
    border-bottom: 1px solid #000000;
    font-weight: bold;
    font-size: 22px;
    line-height: 140%;
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.plus {
    font-size: 50px;
    padding: 75px 0;
}

.r-main {
    text-align: center;
    font-weight: bold;
    font-size: 22px;
}

.r-main span {
    font-size: 42px;
    display: inline-block;
    padding: 0 5px;
    color: #00a3d9;
}

#stren .col,
#method .col {
    margin-bottom: 20px;
}

.stbox {
    position: absolute;
    top: 80px;
    z-index: 10;
    line-height: 140%;
    left: 10px;
    background-color: rgba(0, 0, 0, 0.7);
    width: 85%;
    padding: 10px 10px;
    font-weight: bold;
    color: #ffffff;
    pointer-events: none;
}

.stl {
    font-weight: bold;
    font-size: 25px;
    border-bottom: 1px solid #ffffff;
    margin-bottom: 10px;
}

.stl span {
    font-size: 38px;
    display: inline-block;
    padding-right: 5px;
}

.Strength {
    text-align: center;
}

.sl {
    font-weight: bold;
    font-size: 25px;
    color: #00a3d9;
    display: inline-block;
    border-bottom: 1px solid #404040;
    margin-top: 10px;
}

.sl span {
    font-size: 38px;
    display: inline-block;
    padding-right: 5px;
}

.sl2 {
    text-align: center;
    font-weight: bold;
    font-size: 22px;
}

.fwb {
    font-weight: bold;
    font-size: 22px;
    margin-top: 8px;
}

.sl3 {
    font-weight: bold;
    font-size: 25px;
    display: inline-block;
    border-bottom: 1px solid #404040;
    margin-top: 50px;
    margin-bottom: 50px;
}

.bluettl {
    color: #00a3d9;
    font-weight: bold;
    font-size: 23px;
    margin-bottom: 10px;
    text-align: center;
}

.plr0 .col {
    padding-left: 5px;
    padding-right: 5px;
}

.blackttl {
    color: #000000;
    font-weight: bold;
    font-size: 17px;
    margin-bottom: 10px;
    text-align: center;
}

.blackttl4 {
    color: #000000;
    font-weight: bold;
    font-size: 15px;
    margin-top: 5px;
    margin-bottom: 20px;
    text-align: center;
}

.subtext-black {
    height: 160px;
}

.blackttl2 {
    color: #000000;
    font-weight: bold;
    padding-bottom: 5px;
    font-size: 19px;
    margin-bottom: 10px;
    text-align: center;
    border-bottom: 1px solid #000000;
}

.center p.left {
    text-align: left;
}

.blackttl3 {
    color: #000000;
    font-weight: bold;
    padding-bottom: 5px;
    font-size: 24px;
    display: inline-block;
    margin-bottom: 10px;
    text-align: center;
    border-bottom: 1px solid #000000;
}

.snip1445 h2,
.snip1445 h4 {
    margin: 0;
}

.snip1445 h2 {
    font-weight: 400;
    color: #ffffff;
    font-size: 20px;
    margin-top: 80px;
    text-align: center;
}

.snip1445 h2.p-company-caption {
    margin-top: 67px;
}

#o-link .snip1445 h2 {
    margin-top: 110px;
    font-size: 24px;
}

.snip1445 a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.snip1445 img,
.snip1445 img {
    filter: alpha(opacity=60);
    -webkit-opacity: 0.6;
    opacity: 0.6;
}

.snip1445:hover img,
.snip1445.hover img {
    zoom: 1;
    filter: alpha(opacity=80);
    -webkit-opacity: 0.8;
    opacity: 0.8;
}

#fun {
    padding: 150px 0 0;
}

.transparent2 {
    background-color: rgba(0, 0, 0, 0.4);
    padding: 20px;
    text-align: center;
    color: #ffffff;
    margin: 0;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

.imgWrap {
    overflow: hidden;
    /*拡大時にはみ出た部分を隠す*/
    width: 100%;
    /*画像の幅*/
    height: auto;
    /*画像の高さ*/
}

.imgWrap img {
    display: block;
    transition-duration: 0.3s;
    /*変化に掛かる時間*/
    width: 100%;
    height: auto;
}

.imgWrap img:hover {
    transform: scale(1.1);
    /*画像の拡大率*/
    transition-duration: 0.3s;
    /*変化に掛かる時間*/
    opacity: 0.6;
}

.room {
    position: relative;
}

.spectable {
    position: absolute;
    top: -2px;
    left: 500px;
}

.spectable ul {
    border: 1px solid #cccccc;
    background-color: #f7f7f7;
}

.spectable li {
    display: inline-block;
    padding: 10px;
    font-size: 18px;
    font-weight: bold;
    border-right: 1px solid #cccccc;
}

.spectable li:last-child {
    border-right: initial;
}

#fun h2 {
    line-height: 160%;
    color: #000000;
}

.drawer-navbar .drawer-hamburger {
    display: none;
}

.listitem {
    font-size: 18px;
    margin-bottom: 14px;
}

.pagenavi {
    text-align: center;
}

#pagenavi a span {
    display: block;
    text-align: center;
    margin-top: 2px;
    font-size: 12px;
}

/* ここから下がボタンのCSS　*/
.btn-gradation {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 16px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    padding: 24px 0;
    border-radius: 4px;
    background-image: linear-gradient(-90deg, #ff006e, #ffd500);
    transition: 0.5s;
    background-size: 200%;
}

.btn-gradation:hover {
    background-position: right center;
}

#pagenavi a {
    text-decoration: none;
    color: #ffffff;
}

#pagenavi a:link {
    text-decoration: none;
    color: #ffffff;
}

#pagenavi a:visited {
    text-decoration: none;
    color: #ffffff;
}

#pagenavi a:hover {
    text-decoration: none;
    color: #000000;
}

#pagenavi a:active {
    text-decoration: none;
    color: #000000;
}

.jobback a {
    text-decoration: none;
    color: #ffffff;
}

.jobback a:link {
    text-decoration: none;
    color: #ffffff;
}

.jobback a:visited {
    text-decoration: none;
    color: #ffffff;
}

.jobback a:hover {
    text-decoration: none;
    color: #00a3d9;
}

.jobback a:active {
    text-decoration: none;
    color: #00a3d9;
}

.btn-open {
    display: inline-block;
    width: 100%;
    text-align: center;
    background-color: #000000;
    font-size: 16px;
    padding: 20px 0;
    line-height: 100%;
    color: #000;
    text-decoration: none;
    font-weight: bold;
    border: 2px solid #000000;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.btn-open:after {
    width: 100%;
    height: 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #fff;
    opacity: 0;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    transition: 0.2s;
    z-index: -1;
}

.btn-open:hover {
    color: #000000;
}

.btn-open:hover:after {
    height: 240%;
    opacity: 1;
}

.btn-open:active:after {
    height: 340%;
    opacity: 1;
}

.btn-open2 {
    display: inline-block;
    width: 180px;
    height: 40px;
    text-align: center;
    background-color: #00a3d9;
    font-size: 16px;
    line-height: 42px;
    color: #fff;
    margin-top: 10px;
    text-decoration: none;
    font-weight: bold;
    border: 2px solid #00a3d9;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.btn-open2:after {
    width: 100%;
    height: 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #fff;
    opacity: 0;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    transition: 0.2s;
    z-index: -1;
}

.btn-open2:hover {
    color: #00a3d9;
}

.btn-open2:hover:after {
    height: 280%;
    opacity: 1;
}

.btn-open2:active:after {
    height: 380%;
    opacity: 1;
}

.listitem a::before {
    content: "\f04b";
    font-family: FontAwesome;
    margin-right: 4px;
    color: #000000;
}

.textright {
    text-align: right;
}

#localnavi {
    position: absolute;
    top: 100px;
    z-index: 100;
    right: 0px;
    border-top: 1px solid #ffffff;
    background-color: rgba(0, 0, 0, 0.7);
}

#localnavi2 {
    border: 1px solid #ffffff;
    background-color: rgba(0, 0, 0, 0.7);
    display: inline-block;
    position: absolute;
    right: 10px;
}

.fixed #localnavi {
    top: 70px;
}

.fixed_non #localnavi {
    display: none;
}

.nav {
    margin: 0 auto;
    padding: 0;
}

.inline-block {
    text-align: center;
}

#localnavi ul,
#localnavi2 ul {
    list-style: none;
    font-size: 0;
}

#localnavi li {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    line-height: 120%;
    font-size: 16px;
    color: #ffffff;
    width: 250px;
    border-right: 1px solid #ffffff;
}

#localnavi2 li {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    line-height: 120%;
    font-size: 14px;
    color: #ffffff;
    width: 160px;
    border-right: 1px solid #ffffff;
}

#localnavi2 li:last-child {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    line-height: 120%;
    font-size: 14px;
    color: #ffffff;
    width: 250px;
    border-right: 1px solid #ffffff;
}

#localnavi li a,
#localnavi2 li a {
    padding: 10px;
    display: block;
}

#localnavi li:last-child a {
    display: inline-block;
}

#localnavi li:last-child {
    border-right: initial;
    width: 150px;
    font-size: 20px;
}

#localnavi2 li:last-child {
    border-right: initial;
}

#localnavi fa {
    display: table;
}

#job-section {
    width: 100%;
    height: 700px;
    position: relative;
    background-color: #eeeeee;
    overflow: hidden;
}

#job-section img {
    position: absolute;
    top: 0px;
    left: 0px;
}

#job-section h2 {
    color: #000000;
    line-height: 130%;
    z-index: 10;
    display: block;
    position: absolute;
    top: 200px;
    left: 20px;
}

#job-section h2 span {
    border-bottom: 4px solid #000000;
    padding-bottom: 20px;
    margin-bottom: 30px;
    display: table;
    font-family: "Open Sans Condensed", sans-serif;
    text-align: initial;
    margin-top: initial;
    font-size: 90px;
    font-weight: 900;
    color: initial;
}

#job-section p {
    font-size: 32px;
    font-weight: bold;
    color: #000000;
    z-index: 10;
    display: block;
    position: absolute;
    top: 400px;
    left: 20px;
}

.box-1 {
    background-color: #dddddd;
    width: 700px;
    height: 500px;
    display: block;
    position: absolute;
    bottom: 0px;
    left: 190px;
}

#ann-section {
    max-width: 1180px;
    height: 460px;
    position: relative;
    background-color: #ffffff;
    overflow: hidden;
    margin: 30px auto;
}

.box-2 {
    background-color: #deebf7;
    width: 1000px;
    height: 380px;
    display: block;
    position: absolute;
    top: 30px;
    left: 0px;
}

.box-3 {
    background-color: #002060;
    width: 650px;
    color: #ffffff;
    height: 360px;
    display: block;
    position: absolute;
    top: 60px;
    right: 0px;
    padding: 0 20px;
}

.box-3 h2 {
    color: #ffffff;
    display: inline-block;
    font-size: 45px;
    line-height: 130%;
    border-bottom: 1px solid #ffffff;
    padding-bottom: 10px;
    margin-bottom: 10px;
    margin-top: 60px;
}

#ann-2 {
    background-color: #002060;
    padding: 50px 0;
    margin: 50px 0;
}

#ann-2 img {
    width: 100%;
    height: auto;
}

#ann-2 h4 {
    color: #ffffff;
    font-family:
        游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E,
        メイリオ, Meiryo, serif;
    font-size: 30px;
    display: block;
    border-bottom: 1px solid #ffffff;
    margin-bottom: 20px;
    padding-bottom: 10px;
    margin-top: 50px;
}

#ann-2 p {
    color: #ffffff;
    font-family:
        游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E,
        メイリオ, Meiryo, serif;
    font-size: 24px;
    line-height: 200%;
    margin-bottom: 30px;
}

#ann-3 {
    padding: 0;
}

#ann-3 h4 {
    color: #002060;
    font-size: 30px;
    display: block;
    font-weight: 700;
    text-align: center;
}

#ann-4 {
    padding: 120px 0 0 0;
}

#ann-4 h2 {
    font-size: 60px;
    color: #002060;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 20px;
    font-weight: 900;
    padding: 0;
    border-bottom: initial;
    text-align: center;
    display: block;
    margin: 0 0 20px 0;
}

#ann-4 h3 {
    font-size: 26px;
    margin-bottom: 50px;
    color: #000000;
    font-weight: 700;
}

#ann-4 .fa {
    font-size: 50px;
}

.outer {
    position: relative;
}

.inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}

#ann-4 h2 span {
    color: #002060;
    font-size: 40px;
    font-weight: 900;
    margin-top: 40px;
    font-family: "Open Sans Condensed", sans-serif;
}

.gb {
    background-color: #f5f5f5;
    padding: 30px 50px;
}

.bg {
    background-color: #deebf7;
    padding: 30px 50px;
}

#ann-4 .gb h3 {
    color: #000000;
    font-size: 22px;
    font-weight: 700;
}

#ann-4 img {
    width: 100%;
    height: auto;
    margin: 30px 0;
}

#ann-4 .gb h3 span {
    color: #ffffff;
    background-color: #000000;
    padding: 5px 20px;
    display: inline-block;
    margin-right: 5px;
    font-size: 24px;
    font-weight: 700;
}

#ann-4 .bg h3 {
    color: #002060;
    font-size: 22px;
    font-weight: 700;
}

#ann-4 h3 em {
    margin-top: -10px;
    display: block;
    margin-left: 88px;
}

#ann-4 .bg h3 span {
    color: #ffffff;
    background-color: #002060;
    padding: 5px 20px;
    display: inline-block;
    margin-right: 5px;
    font-size: 24px;
    font-weight: 700;
}

#ann-section img {
    position: relative;
    top: 60px;
    left: 150px;
}

.box-3 p {
    color: #ffffff;
    font-size: 25px;
    padding-left: 10px;
}

.sa {
    opacity: 0;
    transition: all 0.5s ease;
}

.sa.show {
    opacity: 1;
    transform: none;
}

.sa--lr {
    transform: translate(-100px, 0);
}

.sa--rl {
    transform: translate(100px, 0);
}

.sa--up {
    transform: translate(0, 100px);
}

.sa--down {
    transform: translate(0, -100px);
}

.sa--scaleUp {
    transform: scale(0.5);
}

.sa--scaleDown {
    transform: scale(1.5);
}

.sa--rotateL {
    transform: rotate(180deg);
}

.sa--rotateR {
    transform: rotate(-180deg);
}

#data p {
    padding: 25px 0;
    font-size: 18px;
}

#privacypolicy ul,
#privacyhandling ul {
    padding-left: 65px;
}

#securitypolicy ul {
    margin-top: 30px;
    margin-bottom: 30px;
    padding-left: 25px;
    list-style-type: disc;
}

#securitypolicy ul li {
    list-style-type: disc;
}

.privacy_policy2 ul li {
    list-style-type: decimal;
}

#requirements h4 {
    font-size: 18px;
    font-weight: 700;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    color: #006a93;
    margin-left: 10px;
}

#requirements table {
    width: 100%;
}

#requirements th {
    width: 15%;
    padding: 10px;
    background-color: #eeeeee;
    text-align: center;
    font-size: 20px;
    color: #15578c;
    font-weight: 700;
    border: 10px solid #ffffff;
    vertical-align: middle;
}

#requirements td {
    padding: 10px;
    border: 10px solid #ffffff;
}

#requirements dl {
    width: 100%;
    line-height: 200%;
    font-size: 16px;
}

.room dl dt {
    display: block;
    width: 100px;
    clear: left;
    float: left;
}

.photo10 .col {
    padding-bottom: 20px;
}

.x10 ul {
    margin-bottom: 30px;
}

.x10 li {
    list-style-type: disc;
    margin-left: 30px;
    font-size: 16px;
}

.room dl dd {
    display: block;
    margin-left: 100px;
}

#requirements dl dt {
    display: block;
    width: 10%;
    clear: left;
    float: left;
}

#requirements dl dd {
    display: block;
    width: 90%;
    float: left;
}

.privacy_policy_last p,
#privacy_policy_last_contents p {
    font-weight: 900;
}

.privacy_policy_last dt,
#privacy_policy_last_contents dt {
    font-weight: 900;
    color: #0065bd;
}

.privacy_policy_last dl,
#privacy_policy_last_contents dl {
    width: 100%;
    line-height: 200%;
    font-size: 16px;
}

.privacy_policy_last dl dt,
#privacy_policy_last_contents dl dt {
    display: block;
    width: 10%;
    clear: left;
    float: left;
    position: relative;
    top: -5px;
}

.privacy_policy_last dl dd,
#privacy_policy_last_contents dl dd {
    display: block;
    width: 90%;
    float: left;
    margin-bottom: 50px;
}

#career p {
    padding-left: 10px;
    padding-right: 10px;
}

#career #cform2 {
    padding: 20px 10px;
}

.profile_table2 {
    width: 100%;
    font-size: 18px;
}

.profile_table2 tr {
    border-bottom: 1px dashed #000;
    width: 100%px;
}

.profile_table2 th {
    padding: 10px;
    line-height: 24px;
}

.profile_table2 td {
    padding: 10px 10px 10px 120px;
    line-height: 24px;
}

#form p {
    padding: 0 20px;
}

#form p.button {
    margin: 20px 0 0 0;
    padding: 0;
}

.google-maps {
    position: relative;
    width: 100%;
    /* 左右に余白が必要なら値を変更してもOK */
    height: 0;
    padding-bottom: 56.25%;
    /* padding-topでもOK */
    overflow: hidden;
}

.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 必要であれば!importantを付けてください */
    height: 100%;
    /* 必要であれば!importantを付けてください */
}

.third .maindetail strong {
    font-size: 24px;
}

.maindetail h3 {
    position: relative;
    padding-left: 1.5em;
    color: #446689;
    font-size: 24px;
    font-weight: 700;
    margin: 20px 0 10px;
}

.maindetail h3::after {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    width: 20px;
    height: 4px;
    background-color: #446689;
}

.center h6 {
    text-align: center;
}

.kome {
    margin: 0 0 20px 0;
    font-size: 13px;
}

#s-menu h4 {
    font-size: 20px;
    font-weight: 700;
    padding: 10px 0 5px 0;
    color: #006a93;
}

#s-menu h4 a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #006a93;
    font-size: 14px;
}

#semiman p {
    padding-bottom: 15px;
    line-height: 170%;
}

.logbox {
    border: 1px solid #808080;
    height: 250px;
    margin: 0 5px;
    padding: 0.5em;
    overflow: auto;
    margin-bottom: 10px;
}

#cau h3 {
    padding-top: 15px;
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 0px;
}

#greet img {
    width: 100%;
    height: auto;
}

#philosophy h4 {
    font-size: 36px;
    font-weight: 900;
    line-height: 150%;
    color: #15578c;
    text-align: center;
    margin: 20px 0 30px 0;
}

#philosophy h5 {
    font-size: 26px;
    margin-bottom: 5px;
    font-weight: 900;
    line-height: 150%;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    color: #15578c;
    display: block;
    margin: 0;
}

#philosophy p {
    font-size: 18px;
    margin-bottom: 25px;
}

#want {
    margin-top: 100px;
    margin-bottom: 50px;
}

#want h4 {
    font-size: 38px;
    margin-bottom: 5px;
    font-weight: 500;
    line-height: 150%;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    color: #15578c;
    display: block;
    margin: 40px 0 0 0;
}

#want h5 {
    font-size: 18px;
    margin-bottom: 40px;
    font-weight: 500;
}

#smenu h3 {
    padding-top: 15px;
    font-weight: 700;
    font-size: 18px;
}

#smenu .col {
    margin-bottom: 20px;
}

.secondbox .col {
    padding-left: 0;
    padding-right: 0;
}

#box-b {
    border: 3px solid #0070c0;
    border-radius: 10px;
}

#box-b h3 {
    background-color: #0070c0;
    color: #ffffff;
    padding: 10px;
}

.icon span {
    display: inline-block;
    padding: 5px 10px;
    margin-right: 10px;
    font-size: 16px;
    font-weight: bold;
}

.ico1 {
    background-color: #002060;
    color: #ffffff;
}

.ico2 {
    background-color: #1f4e79;
    color: #ffffff;
}

.ico3 {
    background-color: #2e75b6;
    color: #ffffff;
}

.line-ttt2 h4 {
    position: relative;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    margin: 20px 0;
}

.h30 {
    height: 30px;
}

.h60 {
    height: 60px;
}

.h100 {
    height: 120px;
}

#box-b h4,
#box-b p,
#box-g h4,
#box-g p {
    padding: 10px;
}

#box-g h4 {
    color: #00b050;
}

.caution {
    font-size: 11px;
}

#box-g {
    border: 3px solid #00b050;
    border-radius: 10px;
}

#box-g em {
    color: #00b050;
    display: inline;
}

#box-b h4 {
    color: #0070c0;
}

#box-g b {
    color: #00b050;
    font-weight: 700;
    font-size: 30px;
}

#box-b b {
    color: #0070c0;
    font-weight: 700;
    font-size: 30px;
}

#box-b em {
    color: #0070c0;
    display: inline;
}

#box-g h3 {
    background-color: #00b050;
    color: #ffffff;
    padding: 10px;
}

#sns {
    padding: 50px 0;
}

#box1 {
    border: 1px solid #666666;
    margin-top: 50px;
}

#box1 h3 {
    background-color: #666666;
    color: #ffffff;
    font-size: 28px;
    padding: 10px;
}

#box1 p {
    padding: 10px;
}

.box1 {
    border: 1px solid #666666;
    margin-top: 50px;
}

.box1 h3 {
    background-color: #666666;
    color: #ffffff;
    font-size: 20px;
    margin: 0;
    padding: 10px;
}

.box1 p {
    padding: 10px;
    font-size: 16px;
}

#plus {
    font-size: 30px;
    padding-top: 100px;
    text-align: center;
}

#box2 {
    border: 1px solid #666666;
    margin-top: 50px;
}

#cases #box2 {
    border: 1px solid #666666;
    margin-top: 0px;
}

#box2 h3 {
    background-color: #2e98e5;
    color: #ffffff;
    font-size: 28px;
    padding: 10px;
    text-align: center;
}

#box2 p {
    padding: 10px;
}

#prof img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

#service {
    margin-bottom: 50px;
}

.tbox {
    padding: 20px;
    border: 1px solid #cccccc;
    margin-bottom: 20px;
    background-color: #f7f7f7;
}

.steptext {
    font-size: 20px;
    margin-left: 85px;
}

.tbox h4 {
    font-size: 22px;
    font-weight: 900;
    margin-bottom: 20px;
}

.tbox h4::first-letter {
    color: #2e98e5;
    font-size: 46px;
    margin-right: 10px;
}

.tbox p {
    font-size: 18px;
}

.mokuteki li {
    font-size: 18px;
    margin-bottom: 15px;
    position: relative;
    margin-left: 25px;
}

.mokuteki li::before {
    content: "\f00c";
    font-family: FontAwesome;
    padding-right: 0px;
    color: #b20000;
    font-size: 18px;
    position: absolute;
    left: -20px;
}

.privacy_policy_last_phone dt::before {
    content: "\f10b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #0065bd;
    font-size: 30px;
    top: 5px;
    position: relative;
}

.privacy_policy_last_postal::before {
    content: "\f277";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #0065bd;
    font-size: 30px;
    top: 5px;
    position: relative;
}

.privacy_policy_last_email::before {
    content: "\f0e0";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #0065bd;
    font-size: 30px;
    top: 5px;
    position: relative;
}

#service img {
    width: 100%;
    height: auto;
}

#service ul {
    margin: auto;
    width: 800px;
}

#service ul li {
    float: left;
    width: 20%;
    text-align: center;
}

#service h5 {
    font-size: 18px;
    font-weight: 700;
}

#service .s-box {
    border: 1px solid #014c6b;
    padding: 15px;
    margin-bottom: 50px;
    margin-right: 1px;
}

#service ul #active {
    background-color: #006a94;
}

#service ul li a {
    display: block;
    padding: 10px;
    margin: auto;
    text-align: center;
}

#service h5 a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #006a94;
    position: relative;
    top: -3px;
    font-size: 10px;
}

.bnr img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

#snavi a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #81cde4;
    font-size: 14px;
}

.pattern {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(/common/images/common/raster3.png);
    top: 0;
    left: 0;
    z-index: 2;
}

.pt20 {
    padding-top: 25px;
}

.pt40 {
    padding-top: 40px;
}

.pb20 {
    padding-bottom: 20px;
}

.container2.mb50 {
    margin-bottom: 50px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb30 {
    margin-bottom: 30px;
}

.pb40 {
    padding-bottom: 40px;
}

.photo100 img {
    width: 100%;
    height: auto;
}

.flexslider2 {
}

.flex-control-nav {
    display: none;
}

#sns {
    padding-bottom: 15px;
    text-align: center;
    margin: auto;
    background-color: #ffffff;
}

#sns ul {
    font-size: 0;
    text-align: center;
}

#sns li {
    display: inline-block;
    font-size: 12px;
    padding: 0 5px;
}

.flexslider2 img,
.flexslider3 img {
    width: 100%;
    height: auto;
}

#submit_button {
    margin: auto;
    text-align: center;
}

#menu .drawer-menu span {
    display: none;
}

textarea {
    background-color: #ffffff;
}

#submit_button input {
    background-color: #2ea5cf;
    width: 320px;
    padding: 15px 0;
    border: none;
    color: #ffffff;
    cursor: pointer;
    font-size: 18px;
}

.require {
    background-color: #c33;
    padding: 1px 3px;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    margin: 0 0 0 10px;
    border-radius: 3px;
    zoom: normal;
}

.any {
    background-color: #71b55b;
    padding: 1px 3px;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    margin: 0 0 0 10px;
    border-radius: 3px;
    zoom: normal;
}

.clr {
    clear: both;
}

.content {
    width: 1000px;
    margin: 0 auto;
}

.more ul {
    text-transform: uppercase;
    font-size: 13px;
    padding: 50px 0px 30px 0px;
    height: 30px;
    clear: both;
    width: 1000px;
    margin: 10px auto 0 auto;
    color: #000;
}

.more ul li {
    float: left;
    margin: 0px 2px;
}

.more ul li.selected a,
.more ul li.selected a:hover {
    background: #000;
    color: #fff;
    text-shadow: none;
}

.more ul li a {
    text-shadow: 1px 1px 1px #fff;
    color: #555;
    background: #f7f7f7;
    padding: 3px 6px;
    -moz-box-shadow: 1px 1px 2px #aaa;
    -webkit-box-shadow: 1px 1px 2px #aaa;
    box-shadow: 1px 1px 2px #aaa;
}

.more ul li a:hover {
    background: #000;
    color: #fff;
    text-shadow: none;
}

.content {
    width: 100%;
    position: relative;
}

/* Footer Style */
.header {
    position: absolute;
    width: 100%;
    height: 25px;
    line-height: 24px;
    top: 0;
    font-size: 13px;
    background: #000;
    opacity: 0.9;
    text-transform: uppercase;
    z-index: 4;
}

.header a {
    padding: 5px 10px;
    letter-spacing: 1px;
    text-shadow: 1px 1px 1px #000;
    color: #ddd;
    text-align: right;
}

.header a:hover {
    color: #fff;
}

.header a span {
    font-weight: bold;
}

.header span.right_ab {
    position: absolute;
    right: 4px;
}

#privacy .container {
    padding: 50px 150px;
}

#mainproducts img {
    margin-bottom: 15px;
}

#mainphoto img {
    width: 100%;
    height: auto;
}

.middlebtn a {
    display: block;
    text-align: center;
}

.rettl a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #81cde4;
    font-size: 14px;
}

.container3 {
    max-width: 1180px;
    margin: auto;
}

.container4 {
    max-width: 900px;
    margin: 0 auto;
    box-sizing: border-box;
    padding-bottom: 80px;
}

.container-full {
    max-width: 1480px;
    margin: 0 auto;
    box-sizing: border-box;
}

.pagination {
    padding: 50px 0;
    margin: 0 auto;
    text-align: center;
}

.pagination span {
    border: 1px solid #dddddd;
    padding: 5px 10px;
    background-color: #444444;
}

.pagination a {
    border: 1px solid #cccccc;
    padding: 5px 10px;
}

.local-navi2 {
    padding: 15px 0;
    margin: 20px 0;
}

.local-navi2 ul {
    list-style-type: none;
    padding-left: 0;
}

.inline-block {
    text-align: center;
}

.left .inline-block {
    text-align: left;
}

.inline-block li {
    display: inline-block;
}

.local-navi2 li {
    width: 140px;
    padding: 10px;
    margin: 0 5px;
    text-align: center;
    border: 1px solid #ffffff;
}

#r-box img {
    width: 100%;
    height: auto;
    margin: 10px 0;
}

.rettl {
    margin: 10px 0 20px;
}

#main-proarea {
    margin-top: 50px;
}

#main-proarea h1 {
    font-size: 20px;
    color: #7fcce4;
    padding-bottom: 15px;
}

.subcopy {
    font-size: 24px;
    font-weight: 700;
    color: #2e98e5;
    padding-bottom: 30px;
}

.subcopy2 {
    font-size: 22px;
    font-weight: 700;
    color: #155482;
    padding-bottom: 0px;
}

.bgblue-title {
    margin-bottom: 10px;
    padding: 8px 20px;
    border-radius: 15px;
    background-color: #0d3350;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
}

.alignright {
    float: right;
    margin-left: 20px;
}

.alignleft {
    float: left;
    margin-right: 20px;
}

#main-proarea h3 {
    font-size: 20px;
    color: #7fcce4;
    border-bottom: 1px solid #fff;
    margin-bottom: 10px;
    padding-bottom: 5px;
    margin-top: 25px;
}

#main-area h1 {
    font-size: 28px;
    border-bottom: 1px solid #fff;
    margin-bottom: 10px;
    padding-bottom: 5px;
    margin-top: 50px;
}

#news {
    background-color: #ffffff;
    padding: 50px 0;
}

#news img {
    width: 100%;
    height: auto;
}

#news .day {
    margin-bottom: 50px;
    text-align: center;
}

.g-result {
    background-color: #ffffff;
}

.second {
    background-color: #f5f5f5;
    padding: 50px;
}

.second2 {
    background-color: #ffffff;
    padding-bottom: 50px;
}

.second2 .container {
    padding: 0 10px;
}

.second2 h2 {
    color: #002060;
    font-size: 30px;
}

.second2 h3 {
    color: #002060;
    font-size: 20px;
    line-height: 160%;
}

.third {
    background-color: #eeeeee;
    padding: 50px;
}

#rbox a {
    display: block;
}

#rec .container {
    margin-bottom: 100px;
}

#blogmain {
    color: #000000;
    background-color: #eeeeee;
    padding: 40px 0;
}

.navigation {
    text-align: center;
    padding: 50px 0;
}

.navigation2 {
    text-align: center;
    padding: 50px 0;
    background-color: #1ea8bb;
}

#reslut .navigation {
    background-color: #222222;
    border-top: 1px solid #555555;
    border-bottom: 1px solid #555555;
    margin: 30px auto;
    padding: 20px 0;
}

.navitop {
    text-align: center;
    font-size: 20px;
}

.blogcontents {
    max-width: 1180px;
    margin: 0 auto;
    box-sizing: border-box;
}

#related-article {
    margin-top: 50px;
}

#news-side {
    margin-top: 30px;
}

#news-side strong,
#related-article strong {
    display: block;
    padding-bottom: 10px;
    margin: 15px 0;
    border-bottom: 2px solid #000000;
}

.blogcontents img {
    padding: 20px 0;
    margin: 0 auto;
    display: inherit;
}

.blogcontents h3 {
    font-size: 21px;
    padding: 15px 0 30px 0;
    font-weight: 700;
}

.rettl table {
    border-top: 1px solid #555555;
    border-right: 1px solid #555555;
    border-left: 1px solid #555555;
    width: 100%;
    font-size: 13px;
}

.rettl th {
    padding: 5px;
    border-bottom: 1px solid #555555;
    text-align: left;
    font-weight: 700;
    vertical-align: middle;
    width: 100px;
}

.rettl td {
    padding: 5px;
    border-bottom: 1px solid #555555;
    border-left: 1px solid #555555;
}

.gray {
    background-color: #222222;
    padding: 50px 0;
    margin: 50px 0;
}

.gray2 {
    background-color: #222222;
    padding: 20px 0;
    margin-bottom: 20px;
}

.gray2 ul {
    margin-top: 5px;
}

.gray2 ul li {
    float: left;
    margin-right: 20px;
}

.secondimg {
    width: 100%;
    height: 300px;
    display: block;
    color: #000000;
    padding-top: 200px;
    position: relative;
}

.pattern {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(/common/images/common/raster3.png);
    top: 0;
    left: 0;
    z-index: 2;
}

#combox {
    background-color: #ffffff;
    padding: 70px 120px;
}

.secondbox {
    margin-top: -90px;
    position: relative;
}

#pankuzu {
    position: absolute;
    top: 110px;
    z-index: 4;
    width: 100%;
    padding: 5px 10px 5px 180px;
    background-color: rgba(255, 255, 255, 0.7);
    color: #333333;
    font-size: 12px;
}

#combox img {
    width: 100%;
    height: auto;
}

#privacy h3 {
    margin-top: 50px;
}

.mt20 {
    margin-top: 20px;
}

.mt50 {
    margin-top: 50px;
}

#quality .box {
    margin-left: 50px;
    margin-right: 50px;
    text-align: center;
    background-color: #ffffff;
}

#quality .box h4 {
    text-align: center;
    padding-top: 10px;
}

/*  210511 TOPお知らせデザイン変更

#info-section dl dt span {
    border-radius: 5px;
    padding: 5px 0;
    line-height: 100%;
    color: #FFFFFF;
    text-align: center;
    width: 100px;
    margin-left: 20px;
    display: inline-block;
}

#info-section .container {
    max-width: 1000px;
}

#info-section .info span {
background-color:#0177B6 ;
}

#info-section dl,#s-section dl {
    line-height: 250%;
    padding: 0 20px;
	width: 100%;
}


#info-section dl dt,#s-section dl dt {
display: block;
width: 20%;
clear: left;
float: left;
}

#info-section dl dd,#s-section dl dd{
display: block;
width: 80%;
float: left;
}

*/

.complist dl {
    line-height: 200%;
    width: 100%;
    border-bottom: #ccc 1px solid;
    margin-bottom: 100px;
}

.complist dl:after {
    clear: both;
    content: "";
    display: block;
}

.complist dl dt {
    border-top: #ccc 1px solid;
    display: inline;
    float: left;
    text-indent: 1px;
    padding: 20px 0;
    width: 20%;
    clear: both;
}

.complist dl dd {
    border-top: #ccc 1px solid;
    padding: 20px 0;
    margin-bottom: 6px;
    width: 80%;
    float: left;
}

#facility dl {
    line-height: 170%;
    width: 100%;
    margin-bottom: 100px;
}

#facility dl:after {
    clear: both;
    content: "";
    display: block;
}

#setubi p {
    font-size: 14px;
    margin: 10px 0 20px;
}

#facility img {
    width: 100%;
    height: auto;
}

#facility dl dt {
    border-bottom: #ccc 1px solid;
    display: inline;
    float: left;
    text-indent: 1px;
    padding: 10px 0;
    width: 90%;
    clear: both;
}

#facility dl dd {
    border-bottom: #ccc 1px solid;
    padding: 10px 0;
    margin-bottom: 6px;
    width: 10%;
    float: left;
}

.r-list dl dt {
    display: inline;
    float: left;
    text-indent: 1px;
    padding: 10px 0;
    width: 35%;
    clear: both;
}

.r-list dl dd {
    padding: 10px 0;
    margin-bottom: 6px;
    width: 65%;
    float: left;
}

.r-list {
    padding-bottom: 100px;
}

.r-list dl:after {
    clear: both;
    content: "";
    display: block;
}

.hislist dl {
    line-height: 200%;
    width: 100%;
}

.hislist dl:after {
    clear: both;
    content: "";
    display: block;
}

.hislist dl dt {
    display: inline;
    float: left;
    text-indent: 1px;
    padding: 15px 0;
    width: 20%;
    clear: both;
}

.hislist dl dt:before {
    width: 10px;
    content: "";
    display: inline-block;
}

.hislist dl dd {
    padding: 15px 0;
    margin-bottom: 6px;
    width: 80%;
    float: left;
}

.complist dl dt:first-child {
    border-top: none;
}

.complist dl dt:first-child + dd {
    border-top: none;
}

.grayback {
    background-color: #333333;
}

.head {
    padding: 20px;
    border-bottom: 1px dotted #dddddd;
    font-weight: 700;
}

.body {
    border-bottom: 1px dotted #dddddd;
    padding: 20px;
}

#works {
    margin-bottom: 70px;
}

#works strong {
    display: block;
    margin-top: 100px;
    font-size: 18px;
    font-weight: 500;
    margin-left: 5px;
}

.wrap {
    margin-top: 60px;
    background-color: #e8e8dd;
    margin-bottom: 60px;
    padding: 30px 0;
}

#wrap {
    height: 1670px;
    margin-top: 60px;
    background-color: #e8e8dd;
    margin-bottom: 60px;
}

#wrap {
    position: relative;
}

#svg-bg {
    position: absolute;
    width: 100%;
    height: 1670px;
    top: 0;
    left: 0;
    z-index: 1;
}

#sec1,
#sec2,
#sec3 {
    margin-bottom: 50px;
    padding-bottom: 50px;
    border-bottom: 1px solid #cccccc;
}

#sec4 {
    background-color: #f6f1ea;
}

#sec1 p,
#sec3 p,
#sec4 p {
    line-height: 180%;
    font-size: 18px;
}

#sec1 .center p {
    line-height: 50px;
}

#sec4 {
    padding: 50px 0;
}

#sec3 .container,
#sec1 .container,
#sec2 .container,
#sec4 .container {
    max-width: 1060px;
}

#wrap .container {
    z-index: 2;
    position: relative;
}

#services {
    margin-top: 30px;
    margin-bottom: 50px;
}

.section-grey {
    background-color: #e8e8dd;
    position: absolute;
    height: 400px;
    width: 85%;
    z-index: -1;
}

form#searchform .boxLeft {
    float: left;
}

p {
    font-size: 16px;
    line-height: 185%;
}

#about-section h3 {
    display: block;
    width: 100%;
    margin-top: 10px;
    font-size: 24px;
    font-weight: 700;
}

#about-section .copytext {
    display: block;
    width: 100%;
    margin-top: 20px;
    font-size: 18px;
}

.related {
    text-align: center;
    font-size: 13px;
    font-weight: 500;
}

.related span {
    text-align: center;
    display: block;
    font-size: 26px;
    margin-bottom: 10px;
    color: #80cce4;
    font-weight: 500;
}

h2 {
    font-size: 34px;
    color: #006a93;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 20px;
    font-weight: 700;
}

.second .container #recbox1 h2,
.second .container #recbox2 h2,
.second .container #white h2 {
    font-size: 60px;
    color: #999999;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 20px;
    font-weight: 900;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    display: block;
    margin: 0 0 20px 0;
}

.second .container #recbox4 h2 {
    font-size: 30px;
    color: #999999;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 0px;
    font-weight: 900;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    display: block;
    margin: 0 0 20px 0;
}

.container #recbox3 h2 {
    font-size: 60px;
    color: #999999;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 20px;
    font-weight: 900;
    padding: 0;
    border-bottom: initial;
    text-align: center;
    display: block;
    margin: 0 0 20px 0;
}

.second .container #type h2 {
    font-size: 30px;
    color: #333333;
    margin-bottom: 20px;
    line-height: 150%;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    display: block;
    margin: 10px 0 20px 0;
}

#type img {
    width: 100%;
    height: auto;
}

.mess {
    font-size: 25px;
    line-height: 180%;
}

.mess2 {
    font-size: 18px;
    line-height: 180%;
}

.mess3 {
    font-size: 16px;
    line-height: 160%;
    padding-bottom: 25px;
}

.second .container #recbox1 strong,
.second .container #recbox2 strong,
.second .container #white strong,
.second .container #recbox4 strong {
    text-align: left;
}

.container #recbox3 strong {
    text-align: center;
    display: block;
    margin-bottom: 30px;
}

#recbox3 p {
    font-size: 18px;
    text-align: center;
}

.jobback {
    margin-bottom: 100px;
}

#job1 {
    background: url(//www.n-info.co.jp/wp/wp-content/uploads/2018/12/job1.jpg) no-repeat top left;
    height: 450px;
    margin-bottom: 10px;
    background-size: cover;
    position: relative;
}

#job2 {
    background: url(//www.n-info.co.jp/wp/wp-content/uploads/2018/12/job2.jpg) no-repeat top left;
    height: 450px;
    margin-bottom: 10px;
    position: relative;

    background-size: cover;
}

#job3 {
    background: url(//www.n-info.co.jp/wp/wp-content/uploads/2018/12/job3.jpg) no-repeat top left;
    height: 450px;
    margin-bottom: 10px;
    position: relative;

    background-size: cover;
}

#job4 {
    background: url(//www.n-info.co.jp/wp/wp-content/uploads/2018/12/job4.jpg) no-repeat top left;
    height: 450px;
    margin-bottom: 10px;
    position: relative;
    background-size: cover;
}

#job5 {
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2024/02/job5.jpg) no-repeat
        top left;
    height: 450px;
    margin-bottom: 10px;
    position: relative;
    background-size: cover;
}

.second #rec .jbox h4,
.second #rec .jbox2 h4 {
    font-size: 22px;
}

.jbox {
    background-color: rgba(255, 255, 255, 0.7);
    padding: 20px;
    position: absolute;
    top: 100px;
    left: 50px;
    width: 500px;
}

.jbox2 {
    background-color: rgba(255, 255, 255, 0.7);
    padding: 20px;
    position: absolute;
    top: 100px;
    right: 50px;
    width: 500px;
}

h2 span {
    display: block;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    text-align: center;
    margin-top: 8px;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
}

#about-section {
    color: #ffffff;
}

#top-section4 h2 span,
#about-section h2 span {
    text-align: left;
}

#about-section h2,
#about-section h2 span {
    color: #ffffff;
}

#tbox {
    text-align: center;
    z-index: 13;
    position: relative;
    margin-top: 80px;
}

#tbox span {
    font-size: 32px;
    font-weight: 900;
    color: #000000;
    margin-bottom: 5px;
    display: inline-block;
    font-family: "Open Sans Condensed", sans-serif;
}

#people #tbox span {
    font-size: 25px;
    font-weight: 900;
    color: #000000;
    margin-bottom: 5px;
    display: inline-block;
    font-family: "Open Sans Condensed", sans-serif;
}

#people #tbox strong {
    font-size: 20px;
    font-weight: 500;
    color: #000000;
    display: block;
    font-family: "Open Sans Condensed", sans-serif;
}

#people #tbox h1 {
    margin-top: 10px;
    margin-bottom: 20px;
    font-size: 17px;
}

#tbox h1 {
    font-size: 20px;
    color: #000000;
}

#sam {
    font-size: 19px;
    line-height: 165%;
    margin-bottom: 50px;
}

#sam .container {
    max-width: 1010px;
}

.second .container2 h2,
#greet h2 {
    font-size: 30px;
    color: #003443;
    font-weight: 900;
    margin: auto;
    border-bottom: 5px solid #013543;
    padding: 10px 20px;
    display: table;
    margin-bottom: 10px;
    text-align: center;
}

.photo100 img {
    width: 100%;
    height: auto;
    margin-bottom: 60px;
}

.second #intamain h2 {
    font-size: 20px;
    color: #003443;
    font-weight: 900;
    border-bottom: 5px solid #013543;
    padding: 10px 0px;
    display: block;
    line-height: 165%;
    margin-bottom: 30px;
    text-align: left;
}

.maintext {
    font-size: 17px;
    line-height: 175%;
    font-weight: 700;
    margin-bottom: 20px;
}

.linebox h5 {
    margin-top: 30px;
}

.third strong {
    font-size: 20px;
    font-weight: 700;
    color: #155482;
    display: block;
    height: 50px;
    line-height: 110%;
}

.third .color-red strong {
    display: inline;
    height: auto;
    line-height: 1.4;
    color: #c00000;
}

.third strong.color-blue {
    display: inline;
}

.third strong.color-red,
.color-red {
    display: inline;
    color: #c00000;
}

.colpb30 .col {
    margin-bottom: 30px;
}

.third .w100 strong {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    background-color: #155482;
    display: block;
    height: initial;
    padding: 10px 5px;
    margin-bottom: 20px;
}

.third .w100 .gbox strong {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    background-color: #155482;
    display: block;
    height: initial;
    padding: 10px 5px;
    margin-bottom: 0px;
}

.third .box1 strong {
    font-size: 16px;
    font-weight: 700;
    color: #155482;
    display: inline-block;
    margin-bottom: 0px;
    margin-top: 10px;
}

.third .flow strong {
    margin-bottom: 0px;
    margin-top: 20px;
}

#nouhin h3 {
    font-size: 18px;
    font-weight: 500;
    display: block;
    padding: 10px;
    margin: 20px 0 10px 0;
    border: 1px solid #cccccc;
    background-color: #eeeeee;
}

#nouhin img {
    width: 100%;
    height: auto;
}

#assignment .assignment-box {
    position: relative;
    margin: 20px 0 60px 0;
}

#assignment .assignment-box::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -45px;
    transform: translateX(-50%);
    border-right: 50px solid transparent;
    border-top: 30px solid #2e98e5;
    border-left: 50px solid transparent;
}

#assignment .assignment-box h3 {
    padding: 7px 15px;
    background-color: #2e98e5;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
}

#assignment .assignment-box p {
    padding: 10px;
    border-right: 2px solid #2e98e5;
    border-left: 2px solid #2e98e5;
    border-bottom: 2px solid #2e98e5;
}

.third #scene strong {
    font-size: 22px;
    font-weight: 700;
    color: #155482;
    display: block;
    margin: 20px 0 10px 0;
}

.third em {
    font-style: normal;
    display: block;
    font-weight: 700;
    margin-bottom: 10px;
}

#y-menu {
    display: block;
    clear: both;
}

#y-menu li {
    float: left;
    margin-right: 15px;
}

#scene img {
    width: 100%;
    height: auto;
    margin-bottom: 50px;
    margin-top: 10px;
}

.third .container2 {
    padding: 0 50px 50px;
}

.third .container2 h2 {
    font-size: 30px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-weight: 500;
    margin-bottom: 20px;
    margin-top: 60px;
    padding: 0.25em 0.5em;
    /*上下 左右の余白*/
    color: #494949;
    /*文字色*/
    border-left: solid 5px #2e98e5;
    /*左線*/
}

#room img {
    width: 100%;
    height: auto;
}

#room h4 {
    font-size: 30px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-weight: 900;
    margin-bottom: 30px;
    margin-top: 20px;
    padding: 0.25em 0.5em;
    /*上下 左右の余白*/
    color: #494949;
    /*文字色*/
    border-left: solid 5px #2e98e5;
    /*左線*/
}

#room h5 {
    color: #2e98e5;
    font-family: "Open Sans Condensed", sans-serif;
    font-size: 30px;
    font-weight: bold;
    margin-top: 80px;
    margin-bottom: 30px;
    padding: 0.25em 0.3em;
}

#room .room h5 {
    margin-top: 50px;
    padding-top: 10px;
    color: #000;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    overflow: hidden;
}

#room .room h5 .sp {
    display: none;
}

#room .room h5 img {
    float: right;
    width: auto;
    height: auto;
}

#room .room .spectable {
    width: fit-content;
    margin: 0 0 15px 0;
    position: relative;
    top: auto;
    left: auto;
}

.third h5 {
    color: #2e98e5;
    font-family: "Open Sans Condensed", sans-serif;
    font-size: 30px;
    margin-bottom: 15px;
}

.third .flow h5 {
    display: inline-block;
    margin-right: 25px;
    position: relative;
    float: left;
}

.flow {
    position: relative;
}

#flow .col__lg--4 {
    margin: auto;
    text-align: center;
}

#flow img {
    width: 80%;
    height: auto;
}

.flow h5:after {
    content: "\f0d7 ";
    font-family: FontAwesome;
    position: absolute;
    bottom: -30px;
    left: 16px;
    color: #2e98e5;
    font-size: 32px;
}

.third h5 span {
    font-size: 50px;
    display: inline-block;
    margin-left: 5px;
}

.third .container2 {
    margin-bottom: 30px;
}

.second .container2 strong,
.second #greet strong {
    font-size: 19px;

    color: #003443;
    font-weight: 700;
    text-align: center;
    display: block;
    padding-bottom: 30px;
}

.second #prof strong {
    font-size: 17px;
    color: #003443;
    font-weight: 700;
    text-align: left;
    display: block;
    padding-bottom: 5px;
}

#rec img {
    width: 100%;
    height: auto;
}

.second #prof .col__lg--8 {
    margin-bottom: 80px;
}

#sam h2 {
    font-size: 30px;
    font-weight: 700;
    line-height: 150%;
    text-align: center;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    color: #000000;
    margin-bottom: 20px;
}

#sam h4 {
    font-size: 24px;
    font-weight: 700;
    line-height: 150%;
    text-align: center;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    color: #000000;
    margin-bottom: 20px;
}

.g-recruit #sam h2 {
    font-size: 38px;
}

#sam p {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    color: #006a93;
}

#top-section0 {
    padding-top: 100px;
    background-color: #eeeeee;
    padding-bottom: 50px;
}

#top-section2 h2,
#top-section0 h2 {
    text-align: center;
}

#top-section2 .maintt h3,
#top-section0 .maintt h3 {
    text-align: center;
    font-size: 20px;
    margin-bottom: 50px;
    line-height: 170%;
    padding: 0 200px;
}

.p-top__case {
    padding: 100px 0 50px 0;
    background-color: #eeeeee;
}

.p-top__case-desc {
    text-align: center;
    font-size: 20px;
    margin-bottom: 50px;
}

/*
  トップページ実績紹介

*/
.p-top__ourwork {
    background: #ffffff;
    padding: 100px 0 50px 0;
}

.p-top__ourwork-title span {
    text-align: left;
}

.p-top__ourwork-inner {
    display: flex;
    justify-content: center;
}

.p-top__ourwork-left {
    width: 30%;
    margin-right: 10%;
}

.p-top__ourwork-right {
    width: 80%;
    overflow: hidden;
    position: relative;
}

.p-top__ourwork-icon-list {
}

.p-top__ourwork-icon-item {
    padding: 0 50px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

.p-top__ourwork-icon-item img {
    width: 100%;
    height: auto;
}

.p-top__ourwork-right-button,
.p-top__ourwork-left-button {
    width: 30px;
    height: 50px;
    background: #000000;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    cursor: pointer;
}

.p-top__ourwork-right-button::before,
.p-top__ourwork-left-button::before {
    content: "";
    width: 15px;
    height: 15px;
    border-bottom: solid 3px #ffffff;
    border-left: solid 3px #ffffff;
    transform: rotate(45deg);
    margin: auto;
    position: absolute;
    left: 10px;
    right: 0;
    top: 0;
    bottom: 0;
}

.p-top__ourwork-left-button {
    left: -0;
}

.p-top__ourwork-right-button {
    right: 0;
}

.p-top__ourwork-right-button::before {
    transform: rotate(225deg);
    left: 0;
    right: 10px;
}

#greet h2,
#greet strong {
    text-align: center;
}

#top-section2 h4 {
    position: relative;
    font-size: 25px;
    text-align: center;
    margin: 50px 0;
    font-weight: 900;
    font-family: "Open Sans Condensed", sans-serif;
}

#top-section2 h4 span {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 2.5em;
    padding: 0 1em;
    background-color: #fff;
    text-align: left;
}

#top-section2 h4::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ccc;
}

.p-top-section2__title {
    font-size: 20px;
    text-align: center;
    margin-bottom: 50px;
    line-height: 170%;
}

.p-top-section2__service-list {
    display: flex;
    justify-content: center;
}

.p-top-section2__service-item {
    width: calc(100% / 3);
    padding: 0 20px;
}

.p-top-section2__service-title {
    font-size: 19px;
    font-weight: bold;
    margin: 10px 0 5px 0;
}

/*
  トップページ料金紹介

*/
.p-top__price {
    padding: 100px 0 50px 0;
    background-color: #eeeeee;
}

.p-top__price-title {
    text-align: center;
}

.p-top__price-desc {
    text-align: center;
    font-size: 20px;
    margin-bottom: 50px;
}

.p-top__price table {
    border-collapse: collapse;
}

.p-top__price table th {
    border: 1px solid #eee;
    padding: 7px 20px;
    background: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
}

.p-top__price table td {
    border: 1px solid #eee;
    padding: 10px 20px;
    background: #fff;
    vertical-align: middle;
    font-weight: bold;
    line-height: 1.6;
}

.p-top__price table tr th:first-child {
    width: 25%;
}

.p-top__price table tr th:nth-child(2) {
    min-width: 185px;
    width: 15%;
}

.p-top__price table tr th:last-child {
    width: 59%;
}

.p-top__price table td span {
    font-size: 12px;
}

.p-top__price table tr:nth-child(odd) td {
    background: #f7f7f7;
}

.p-top__price .button {
    margin-top: 25px;
}

/* 打ち消し */
.second .p-case__service h3.p-top-section2__service-title {
    font-size: 19px;
    font-weight: bold;
    position: relative;
    padding-bottom: 0;
    color: #555;
    border-bottom: none;
    margin-bottom: 5px;
    margin-top: 10px;
}

.second .p-case__service h3.p-top-section2__service-title::after {
    display: none;
}

.p-top-section2__service-content {
}

.iku1:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2023/08/voice_03_person_01.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.iku2:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2023/08/voice_03_person_02.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.ma1:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2018/10/ma1.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.ma2:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2018/10/ma2.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.ma3:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2018/10/ma3.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

#prof img {
    border-radius: 200px;
}

.m1:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2023/08/voice_01_person_01.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.m2:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2023/08/voice_01_person_02.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.m3:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2023/08/voice_01_person_03.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.remote1:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2024/02/voice_04_person_01.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

.remote2:before {
    margin: 0 10px 0 0;
    content: " ";
    display: inline-block;
    width: 80px;
    height: 80px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2024/02/voice_04_person_02.jpg);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100px;
}

#info-section h2 {
    text-align: left;
    margin-top: 70px;
}

#info-section .box {
    border: 1px solid #cccccc;
    position: relative;
    padding: 20px 0;
}

.more {
    position: absolute;
    top: 15px;
    right: 20px;
}

#info-section .box h3 {
    border-bottom: 1px solid #cccccc;
    padding: 0px 20px 15px;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 500;
}

#top-section .section-grey {
    margin-top: 40px;
}

#top-section h3 {
    font-size: 18px;
    font-weight: 500;
    text-shadow: 0 0 20px #ffffff;
}

#headmenu {
    position: relative;
    height: 100px;
    z-index: 10;
    background-color: rgba(255, 255, 255, 1);
    border-bottom: 1px solid #cccccc;
}

#headmenu #logo {
    display: block;
    position: absolute;
    top: 20px;
    left: 90px;
    font-size: 30px;
    font-weight: 500;
    z-index: 999;
}

#headmenu #logo img {
}

#headmenu #logo strong {
    font-weight: 700;
    display: inline-block;
    margin-right: 10px;
}

#headmenu #headnavi {
    position: absolute;
    top: 5px;
    right: 150px;
}

#Chara .text p {
    margin-bottom: 50px;
}

#Chara .ttl p {
    display: block;
    background-color: #ed7d31;
    border-radius: 30px;
    color: #ffffff;
    padding: 10px 25px;
    text-align: center;
}

.alp {
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

#Chara .container {
    padding: 0 60px;
}

#headmenu #headnavi li {
    float: left;
    font-size: 13px;
    padding: 0 10px;
}

#headmenu #headnavi li a::before {
    content: "\f04b";
    font-family: FontAwesome;
    margin-right: 4px;
    color: #ed7d31;
    font-size: 12px;
}

#y-menu li a::before {
    content: "\f04b";
    font-family: FontAwesome;
    margin-right: 4px;
    color: #ed7d31;
    font-size: 12px;
}

.more a::before {
    content: "\f04b";
    font-family: FontAwesome;
    position: absolute;
    left: -13px;
    top: 2px;
    font-size: 12px;
}

.arrow {
    margin-top: 10px;
    font-weight: 700;
}

.arrow a::before {
    content: "\f105";
    font-family: FontAwesome;
    margin-right: 8px;
}

#headmenu #glnavi {
    position: absolute;
    top: 59px;
    right: 180px;
}

@media (min-width: 801px) {
    #dmenu {
        display: none;
    }
}

@media (max-width: 800px) {
    #headmenu #glnavi {
        display: none;
    }

    #logo img {
    }

    #headmenu #logo {
        position: initial;
        position: fixed;
        top: 30px;
        left: 50px;
        z-index: 99;
        width: 100%;
    }

    #headmenu #cont_btn {
        display: none;
    }
}

#top-sectiontest1 {
    background-image: url(/common/images/top/main-pc.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 85%;
    position: relative;
    margin-top: -100px;
}

#top-sectiontest2 {
    background-image: url(/common/images/top/main-pc2.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 85%;
    position: relative;
    margin-top: -100px;
}

#top-sectiontest3 {
    background-image: url(/common/images/top/main-pc3.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 85%;
    position: relative;
    margin-top: -100px;
}

#top-sectiontest4 {
    background-image: url(/common/images/top/main-pc4.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 85%;
    position: relative;
    margin-top: -100px;
}

#top-sectiontest5 {
    background-image: url(/common/images/top/main-pc5.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 85%;
    position: relative;
    margin-top: -100px;
}

#top-section1 h1 {
    font-size: 54px;
    background-color: #000000;
    padding: 10px;
    font-weight: 900;
    color: #ffffff;
    margin-bottom: 20px;
    line-height: 110%;
}

#top-section1 h3 {
    font-size: 34px;
    margin-top: 260px;
    font-weight: 900;
    margin-bottom: 20px;
    line-height: 110%;
    background-color: #000000;
    padding: 10px;
    color: #ffffff;
}

#top-section11 h1 {
    z-index: 100;
    font-size: 24px;
    background-color: #000000;
    padding: 10px;
    font-weight: 700;
    color: #ffffff;
    display: inline-block;
    margin-bottom: 20px;
    line-height: 150%;
    position: absolute;
    left: 20px;
    top: 330px;
}

#top-section11 h3 {
    z-index: 100;
    font-size: 34px;
    margin-top: 260px;
    font-weight: 900;
    margin-bottom: 20px;
    line-height: 110%;
    background-color: #000000;
    padding: 10px;
    display: inline-block;
    color: #ffffff;
    position: absolute;
    left: 20px;
}

.shadow {
    text-shadow:
        0px 0px 1px #333,
        0px 0px 2px #333,
        0px 0px 3px #333,
        0px 0px 4px #333,
        0px 0px 5px #333,
        0px 0px 6px #333;
}

#top-sectiontest1 h1,
#top-sectiontest2 h1,
#top-sectiontest3 h1,
#top-sectiontest4 h1,
#top-sectiontest5 h1 {
    font-size: 54px;
    margin-top: 300px;
    font-weight: 900;
    margin-bottom: 20px;
}

#top-section1 p,
#top-sectiontest1 p {
    font-size: 18px;
    font-weight: normal;
    padding-top: 20px;
    color: #ffffff;
}

#quality .button-under {
    position: relative;
}

#headmenu #glnavi li {
    float: left;
    font-size: 15px;
    padding: 0 10px;
    text-align: center;
    line-height: 130%;
}

#headmenu #glnavi li span {
    display: block;
    text-align: center;
    font-size: 13px;
    color: #80cce4;
}

#cont_btn {
    position: absolute;
    top: 45px;
    text-align: center;
    right: 10px;
    background-color: #0d3350;
    width: 150px;
    padding: 8px 0;
    text-decoration: none;
    color: #ffffff;
}

#subnavi {
    position: absolute;
    top: 5px;
    right: 8px;
    text-decoration: none;
    color: #000000;
    font-size: 13px;
}

#subnavi li {
    float: left;
    padding-right: 12px;
}

#subnavi li a::before,
#lang_btn li a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

#lang_btn {
    position: absolute;
    top: 5px;
    text-align: center;
    right: 400px;
    text-decoration: none;
    color: #000000;
    font-size: 13px;
}

.fixed #menu #lang_btn {
    top: 15px;
    right: 160px;
    color: #ffffff;
}

.fixed #menu #cont_btn {
    top: 0px;
    right: 0px;
    padding: 20px 0;
}

#lang_btn li {
    float: left;
    width: 46px;
    text-align: center;
}

.middlebtn {
    width: 220px;
    padding: 10px;
    font-size: 18px;
    border: 1px solid #ffffff;
    margin: 20px auto;
    /* height: 30px; */
    text-decoration: none;
    line-height: 33px;
    text-align: center;
    color: #42788e;
    background: #81cde4;
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0.5, #81cde4),
        color-stop(0.5, #21b8ce)
    );
    background: -moz-linear-gradient(top, #81cde4 50%, #21b8ce 50%);
    background: -o-linear-gradient(top, #81cde4 50%, #21b8ce 50%);
    background: -ms-linear-gradient(top, #81cde4 50%, #21b8ce 50%);
    background: linear-gradient(top, #81cde4 50%, #21b8ce 50%);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#81CDE4 50%', endColorstr='#21B8CE 50%');
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#81CDE4 50%', endColorstr='#21B8CE 50%')";
}

#about-section .middlebtn,
footer .middlebtn {
    margin: initial;
    margin-top: 20px;
}

footer .middlebtn {
    width: 320px;
}

#lpmain #section2 .container h3 {
    text-align: center;
    border-left: solid 0px #2e98e5;
    line-height: 170%;
    font-size: 36px;
    margin-top: 20px;
    font-weight: 700;
}

.whitebox {
    background-color: #ffffff;
    padding: 15px;
    margin-bottom: 30px;
}

#section2 .whitebox p {
    font-size: 26px;
}

#section3 .whitebox p {
    font-size: 20px;
}

#section3 .whitebox .linebottom {
    font-size: 30px;
    font-weight: 700;
    border-bottom: 1px solid #cccccc;
    margin-bottom: 10px;
    margin-top: 30px;
}

#lpmain .container .whitebox h4 {
    font-size: 46px;
    font-weight: 900;
    color: #1b5fb7;
    position: relative;
    margin-top: 30px;
}

.whitebox h4 span {
    display: inline-block;
    font-size: 20px;
    position: relative;
    top: -6px;
    font-weight: 700;
    color: #2b91e2;
    padding: 6px;
    background-color: #cbe3f6;
    border: 1px solid #2b91e2;
    border-radius: 8px;
    margin: 0 10px;
}

.marker_blue_futo {
    background: linear-gradient(transparent 60%, #ffff66 0%);
}

.middlebtn a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 5px;
    color: #ffffff;
    font-size: 14px;
}

#top-section2 .swiper-container h3 {
    font-size: 19px;
    font-weight: 700;
    margin: 10px 0 5px;
}

#top-section2 h3 a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #81cde4;
    font-size: 14px;
}

#top-section0 .maintt h3 {
    text-align: center;
    font-size: 20px;
    margin-bottom: 50px;
    line-height: 170%;
    padding: 0 200px;
}

.tags a {
    float: left;
    padding-right: 10px;
    font-weight: 700;
    font-size: 20px;
    padding-bottom: 5px;
}

.tags a:after {
    content: "";
    display: table;
    clear: both;
}

#news-side a:before {
    content: "\f02b";
    font-family: FontAwesome;
    margin: 10px;
    position: relative;
    top: 0;
}

.side_newpost li {
    border-bottom: 1px dotted #aaaaaa;
    margin-bottom: 5px;
    padding: 10px 0;
}

.side_search .col {
    padding-right: 0;
    padding-left: 0;
}

form#searchform .boxRight {
    float: right;
    width: 68px;
}

.title-detail-data2 {
    padding: 0 0 6px 0;
    border-bottom: 4px solid #000;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: 2px;
    line-height: 1;
    display: table;
    margin: 35px 0 10px 0;
}

.copy {
    font-size: 12px;
    color: #ffffff;
    text-align: right;
    padding-right: 50px;
}

a {
    text-decoration: none;
    color: #000000;
}

a:link {
    text-decoration: none;
    color: #000000;
}

a:visited {
    text-decoration: none;
    color: #000000;
}

a:hover {
    text-decoration: none;
    color: #000000;
}

a:active {
    text-decoration: none;
    color: #000000;
}

#pankuzu a {
    text-decoration: none;
    color: #333333;
}

#pankuzu a:link {
    text-decoration: none;
    color: #333333;
}

#pankuzu a:visited {
    text-decoration: none;
    color: #333333;
}

#pankuzu a:hover {
    text-decoration: none;
    color: #333333;
}

#pankuzu a:active {
    text-decoration: none;
    color: #333333;
}

.r-list dl dt a {
    text-decoration: underline;
}

#privacypolicy a,
#privacyhandling a,
#securitypolicy a {
    text-decoration: underline;
    color: #2184cd;
}

#headmenu a {
    text-decoration: none;
    color: #000000;
}

#headmenu a:link {
    text-decoration: none;
    color: #000000;
}

#headmenu a:visited {
    text-decoration: none;
    color: #000000;
}

#headmenu a:hover {
    text-decoration: none;
    color: #333333;
}

#headmenu a:active {
    text-decoration: none;
    color: #000000;
}

#info-section a {
    text-decoration: none;
    color: #000000;
}

#info-section a:link {
    text-decoration: none;
    color: #000000;
}

#info-section a:visited {
    text-decoration: none;
    color: #000000;
}

#info-section a:hover {
    text-decoration: none;
    color: #333333;
}

#info-section a:active {
    text-decoration: none;
    color: #000000;
}

#top-section-blog h3 a {
    text-decoration: none;
    color: #eb611d;
}

#top-section-blog h3 a:link {
    text-decoration: none;
    color: #eb611d;
}

#top-section-blog h3 a:visited {
    text-decoration: none;
    color: #eb611d;
}

#top-section-blog h3 a:hover {
    text-decoration: none;
    color: #eb611d;
}

#top-section-blog h3 a:active {
    text-decoration: none;
    color: #eb611d;
}

.relatedlink a {
    text-decoration: none;
    color: #eb611d;
}

.relatedlink a:link {
    text-decoration: none;
    color: #eb611d;
}

.relatedlink a:visited {
    text-decoration: none;
    color: #eb611d;
}

.relatedlink a:hover {
    text-decoration: none;
    color: #eb611d;
}

.relatedlink a:active {
    text-decoration: none;
    color: #eb611d;
}

.button a {
    text-decoration: none;
    color: #111111;
    display: block;
    text-align: center;
}

.button a:link {
    text-decoration: none;
    color: #111111;
}

.button a:visited {
    text-decoration: none;
    color: #111111;
}

.button a:hover {
    text-decoration: none;
    color: #ffffff;
}

#info-section .button a:hover {
    text-decoration: none;
    color: #ffffff;
}

.button a:active {
    text-decoration: none;
    color: #111111;
}

.button-l a {
    text-decoration: none;
    color: #111111;
    display: block;
    text-align: center;
}

.button-l a:link {
    text-decoration: none;
    color: #111111;
}

.button-l a:visited {
    text-decoration: none;
    color: #111111;
}

.button-l a:hover {
    text-decoration: none;
    color: #ffffff;
}

.button-l a:active {
    text-decoration: none;
    color: #111111;
}

.button-s a {
    text-decoration: none;
    color: #111111;
    display: block;
    text-align: center;
}

.button-s a:link {
    text-decoration: none;
    color: #111111;
}

.button-s a:visited {
    text-decoration: none;
    color: #111111;
}

.button-s a:hover {
    text-decoration: none;
    color: #111111;
}

.button-s a:active {
    text-decoration: none;
    color: #111111;
}

#cont_btn a {
    text-decoration: none;
    color: #ffffff;
}

#cont_btn a:link {
    text-decoration: none;
    color: #ffffff;
}

#cont_btn a:visited {
    text-decoration: none;
    color: #ffffff;
}

#cont_btn a:hover {
    text-decoration: none;
    color: #ffffff;
}

#cont_btn a:active {
    text-decoration: none;
    color: #ffffff;
}

#localnavi a {
    text-decoration: none;
    color: #ffffff;
}

#localnavi a:link {
    text-decoration: none;
    color: #ffffff;
    text-align: center;
}

#localnavi a:visited {
    text-decoration: none;
    color: #ffffff;
}

#localnavi a:hover {
    text-decoration: none;
    color: #ffffff;
}

#localnavi a:active {
    text-decoration: none;
    color: #ffffff;
}

#localnavi2 a {
    text-decoration: none;
    color: #ffffff;
}

#localnavi2 a:link {
    text-decoration: none;
    color: #ffffff;
    text-align: center;
}

#localnavi2 a:visited {
    text-decoration: none;
    color: #ffffff;
}

#localnavi2 a:hover {
    text-decoration: none;
    color: #ffffff;
}

#localnavi2 a:active {
    text-decoration: none;
    color: #ffffff;
}

.logbox a {
    text-decoration: underline;
    color: #2ea5cf;
}

.logbox a:link {
    text-decoration: underline;
    color: #2ea5cf;
}

.logbox a:visited {
    text-decoration: underline;
    color: #2ea5cf;
}

.logbox a:hover {
    text-decoration: underline;
    color: #2ea5cf;
}

.logbox a:active {
    text-decoration: underline;
    color: #2ea5cf;
}

#data a {
    text-decoration: underline;
    color: #2ea5cf;
}

#data a:link {
    text-decoration: underline;
    color: #2ea5cf;
}

#data a:visited {
    text-decoration: underline;
    color: #2ea5cf;
}

#data a:hover {
    text-decoration: underline;
    color: #2ea5cf;
}

#data a:active {
    text-decoration: underline;
    color: #2ea5cf;
}

.linelink a {
    text-decoration: underline;
    color: #2ea5cf;
}

.linelink a:link {
    text-decoration: underline;
    color: #2ea5cf;
}

.linelink a:visited {
    text-decoration: underline;
    color: #2ea5cf;
}

.linelink a:hover {
    text-decoration: underline;
    color: #2ea5cf;
}

.linelink a:active {
    text-decoration: underline;
    color: #2ea5cf;
}

.button-orange a {
    text-decoration: none;
    color: #ffffff;
    display: block;
    text-align: center;
}

.button-orange a:link {
    text-decoration: none;
    color: #ffffff;
}

.button-orange a:visited {
    text-decoration: none;
    color: #ffffff;
}

.button-orange a:hover {
    text-decoration: none;
    color: #ffffff;
}

.button-orange a:active {
    text-decoration: none;
    color: #ffffff;
}

/* footer a {
    text-decoration: none;
    color: #ffffff;
    display: inline-block;
    padding-right: 10px;
}

footer a:link {
    text-decoration: none;
    color: #ffffff;
}

footer a:visited {
    text-decoration: none;
    color: #ffffff;
}

footer a:hover {
    text-decoration: none;
    color: #ffffff;
}

footer a:active {
    text-decoration: none;
    color: #ffffff;
} */

#background {
    position: fixed;
    right: 0;
    top: -80px;
    width: auto;
    min-width: 100%;
    min-height: 100%;
    z-index: -1;
}

#otherlink2 {
    max-width: 1180px;
    margin: 10px 0;
    box-sizing: border-box;
    padding: 0 20px;
    background-color: #ffffff;
    border: 1px solid #dddddd;
}

#otherlink2 img {
    width: 100%;
    height: auto;
}

#otherlink2 #recbox4 h2 {
    font-size: 30px;
    color: #999999;
    font-family: "Open Sans Condensed", sans-serif;
    margin-bottom: 0px;
    font-weight: 900;
    padding: 0;
    border-bottom: initial;
    text-align: left;
    display: block;
    margin: 0 0 20px 0;
}

#otherlink {
    max-width: 1180px;
    margin: 20px auto 0;
    box-sizing: border-box;
    padding: 20px;
    background-color: #ffffff;
    border: 1px solid #dddddd;
}

#otherlink .col {
    margin-bottom: 50px;
}

#otherlink .namecard {
    position: absolute;
    bottom: -35px;
    z-index: 100;
    line-height: 140%;
    right: 5px;
    font-size: 12px;
    background-color: #ffffff;
    width: 250px;
    padding: 5px;
    border: 1px solid #dddddd;
}

#otherlink img {
    width: 100%;
    height: auto;
}

#top-section1 .catch {
    margin: auto;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);

    /* font-family: 'Allura', cursive; */
    font-size: 20px;
    color: #ffffff;
}

#top-section1 .scroll {
    margin: auto;
    text-align: center;
    position: absolute;
    bottom: 5%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#top-section1 img {
    display: block;
    margin: auto;
    text-align: center;
    padding-bottom: 20px;
}

.add {
    font-size: 14px;
    line-height: 170%;
    margin-top: 20px;
}

#menu {
    display: -webkit-box;
    margin: auto;
}

#menu ul {
    position: absolute;
    top: 24px;
    right: 260px;
}

#menu ul li {
    float: left;
    padding: 0 10px;
    font-weight: 500;
    display: inline-block;
    font-size: 13px;
}

#menu .social {
    font-size: 25px;
}

#menu2 {
    display: -webkit-box;
    margin: auto;
}

#menu2 ul {
    list-style: none;
    border-left: 1px solid #dddddd;
    margin-left: auto;
}

#menu2 ul li {
    float: left;
    padding: 15px 20px;
    border-right: 1px solid #dddddd;
    font-weight: 700;
    display: inline-block;
    font-size: 13px;
}

#menu2 li:last-child {
    border-right: none;
}

#menu2 .social {
    font-size: 25px;
}

#top-section2 {
    background-color: #ffffff;
    padding: 100px 0 50px 0;
    position: relative;
}

#top-section2 .container {
    z-index: 2;
    position: relative;
}

#top-section2 img,
#top-section3 img {
    width: 100%;
    height: auto;
}

.l-text {
    font-size: 20px;
    line-height: 180%;
}

.flo-l {
    float: left;
    padding-right: 10px;
}

.ta1 {
    background-color: #333333;
    color: #ffffff;
}

.ta2 {
    background-color: #d90000;
    color: #ffffff;
}

.co-red {
    color: #d90000;
}

h6 {
    position: relative;
    text-align: center;
    margin: 50px 0 30px 0;
    font-size: 26px;
    font-weight: 700;
    color: #2e98e5;
}

h6 span {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 2.5em;
    padding: 0 1em;
    background-color: #fff;
    text-align: center;
}

h6::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ccc;
}

.w_box {
    border: 1px solid #cccccc;
    padding: 20px 10px;
    margin: 10px;
    text-align: center;
}

.w_box h3 {
    font-size: 20px;
    color: #0f5590;
    font-weight: 900;
    text-align: center;
    margin: 15px 0;
}

.w_box h3 span {
    font-size: 65px;
    color: #2e98e5;
    display: block;
    font-weight: 900;
    text-align: center;
    padding-bottom: 35px;
}

.w_box img {
    width: 50%;
    height: auto;
    text-align: center;
}

.box {
    padding: 0 20px;
    margin-bottom: 20px;
}

.concept {
    margin: 0 20px 0 100px;
}

.mb100 {
    margin-bottom: 100px;
}

.mb20 {
    margin-bottom: 20px;
}

.mt20 {
    margin-top: 20px;
}

#top-section3 h2,
#info-section h2 {
    text-align: center;
}

#info-section h2 span {
    color: #000000;
}

#top-section3 h3 {
    text-align: left;
    margin: 15px 0 10px 0;
    color: #0c3352;
    font-size: 16px;
    font-weight: 700;
}

.client {
    text-align: right;
}

#top-section5 h3 {
    text-align: center;
    margin: 15px 0;
    color: #0c3352;
    font-size: 22px;
    font-weight: 900;
}

#top-section4 {
    background: #ffffff url(/commons/images/top/back-section4.jpg) no-repeat top left;
    background-size: cover;
    height: 600px;
    border-bottom: 1px solid #cccccc;
}

.w-box {
    background-color: #ffffff;
    position: absolute;
    padding: 30px;
    top: 150px;
    left: 0;
    width: 100%;
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.1);
}

#top-section6 {
    background-color: #eeeeee;
    border-left: 20px solid #ffffff;
    border-right: 20px solid #ffffff;
    padding: 80px 0;
}

#top-section6 h2 {
    margin-top: 100px;
}

#tr .col {
    padding-left: 0;
    padding-right: 0;
    overflow: hidden;
}

#tr h3 {
    margin-top: 50px;
    padding: 5px;
    font-size: 15px;
}

#tr p {
    padding: 5px;
    font-size: 15px;
    padding-top: 60px;
    text-align: left;
}

#top-section6 .container {
}

.t30 {
    margin-top: 20px;
    font-size: 50px;
    color: #ffffff;
    font-weight: 900;
}

#top-section4 img {
    width: 100%;
    height: auto;
}

.center {
    text-align: center;
}

.center h2,
.center p {
    text-align: center;
}

.flexslider2 img,
.flexslider3 img {
    margin-bottom: 20px;
}

#top-section5 {
    padding: 50px;
    background-color: #ffffff;
}

#top-section5 h2 {
    margin-top: 100px;
}

#top-section3 {
    padding: 50px 0;
    margin: 100px 0 0 0;
    background-color: #eeeeee;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}

.second #top-section3 {
    padding: 20px 0;
}

#top-section2 .button-s {
    position: absolute;
    right: 20px;
    top: 13px;
}

#top-section4 h3 {
    font-size: 23px;
    margin-top: 20px;
    margin-bottom: 10px;
}

#top-section2 .col__lg--2 {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #cacab0;
    border-bottom: 1px solid #cacab0;
    border-left: 1px solid #cacab0;
    padding-bottom: 20px;
    background-color: #e8e8dd;
}

#top-section2 .col__lg--10 {
    padding-top: 20px;
    border: 1px solid #cacab0;
    padding-bottom: 20px;
    position: relative;
}

#top-section2 dt {
    float: left;
    width: 120px;
    padding-left: 15px;
}

.button-s {
    display: inline-block;
    width: 140px;
    height: 40px;
    text-align: center;
    position: relative;
    text-decoration: none;
    line-height: 40px;
    font-size: 17px;
    font-weight: 700;
    outline: none;
    border-radius: 3px;
    box-shadow: 1px 2px 4px #cacab0;
}

.button-orange {
    display: inline-block;
    width: 320px;
    height: 54px;
    text-align: center;
    position: relative;
    text-decoration: none;
    line-height: 54px;
    font-size: 21px;
    font-weight: 700;
    outline: none;
    margin-top: 15px;
    background-color: #ed7d31;
    border-radius: 3px;
}

.button {
    display: inline-block;
    text-align: center;
    position: relative;
    text-decoration: none;
    line-height: 54px;
    font-weight: 700;
    width: 260px;
    height: 54px;
    outline: none;
    margin-top: 15px;
}

.button::before,
.button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.button,
.button::before,
.button::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.button {
    background-color: #fff;
    border: 1px solid #cacab0;
    color: #eb611d;
    line-height: 50px;
}

.button-l {
    display: block;
    margin: 10px auto;
    text-align: center;
    position: relative;
    text-decoration: none;
    line-height: 54px;
    font-size: 34px;
    font-weight: 700;
    width: 680px;
    padding: 10px 0;
    outline: none;
}

.button-l::before,
.button-l::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.button-l,
.button-l::before,
.button-l::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.button-l {
    background-color: #fff;
    border: 1px solid #cacab0;
    color: #eb611d;
    line-height: 50px;
}

.button-s {
    background-color: #fff;
    border: 1px solid #cacab0;
    color: #eb611d;
}

.button-orange:hover {
    background-color: #e16800;
    color: #fff;
}

.button-s:hover {
    background-color: #f5f5f1;
    border-color: #cacab0;
    color: #fff;
}

.button2 {
    display: inline-block;
    width: 280px;
    height: 54px;
    text-align: center;
    text-decoration: none;
    line-height: 54px;
    outline: none;
}

.button2::before,
.button2::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.button2,
.button2::before,
.button2::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.button2 {
    background-color: #fff;
    border: 1px solid #eb611d;
    color: #eb611d;
    line-height: 50px;
}

.button2:hover {
    background-color: #eb611d;
    border-color: #fff;
    color: #fff;
}

.button2 a:before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 5px;
}

.contact-container {
    max-width: 640px;
    margin: 0 auto;
    box-sizing: border-box;
}

.button-contact {
    display: inline-block;
    width: 620px;
    height: 54px;
    text-align: center;
    text-decoration: none;
    line-height: 54px;
    outline: none;
    margin: 20px 0;
}

.button-contact::before,
.button-contact::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.button-contact,
.button-contact::before,
.button-contact::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.button-contact {
    background-color: #eb611d;
    border: 2px solid #eb611d;
    color: #ffffff;
    line-height: 50px;
}

.button-contact:hover {
    background-color: #fff;
    border-color: #eb611d;
    color: #eb611d;
}

header #menu {
    display: none;
}

header #localnavi {
    display: none;
}

.fixed #menu {
    display: -webkit-box;
    height: 70px;
}

.fixed #localnavi {
    display: -webkit-box;
}

.fixed #menu2 {
    display: -webkit-box;
}

@media all and (-ms-high-contrast: none) {
    .fixed #menu {
        display: flex;
    }

    #headmenu #glnavi {
        position: absolute;
        top: 57px;
        /*right: 280px;*/
    }

    .fixed #menu2 {
        display: flex;
    }
}

#top-section-blog .flex {
    margin-top: 40px;
}

#top-section-blog h3 {
    font-weight: 700;
    height: 60px;
    line-height: 130%;
}

#top-section-blog p {
    font-size: 14px;
    line-height: 160%;
}

#top-section-blog .day {
    padding-top: 10px;
}

#top-section-blog img {
    float: left;
    padding-right: 20px;
}

#top-section-blog {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 80px 0;
}

#blog .flex {
    margin-top: 40px;
}

#blog h3 {
    font-weight: 700;
    height: 60px;
    line-height: 130%;
}

#blog p {
    font-size: 14px;
    line-height: 160%;
}

#blog .day {
    padding-top: 10px;
}

#blog img {
    float: left;
    padding-right: 20px;
}

#top-section-blog {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 80px 0;
}

#top-section2 figure {
    width: 100%;
    height: 240px;
    overflow: hidden;
    position: relative;
}

#second figure {
    width: 100%;
    height: 250px;
    overflow: hidden;
    position: relative;
}

#top-section3 figure {
    width: 100%;
    height: 540px;
    overflow: hidden;
    position: relative;
}

#top-section4 figure,
#products figure {
    overflow: hidden;
    position: relative;
}

figure img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    width: 100%;
    height: auto;
}

figure:hover img {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
}

#top-section3 figure:hover img {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.newsbox {
    border: 1px solid #cccccc;
    background-color: #ffffff;
    padding: 10px;
    margin-bottom: 20px;
}

#info-section {
    padding: 50px 0;
    background-color: #fff;
    border-top: 1px solid #cccccc;
    /*	border-bottom: 1px solid #CCCCCC;*/
    color: #000000;
    font-size: 16px;
}

#info-section h3 {
    text-align: center;
    font-size: 19px;
}

#contact-section {
    margin: 0 auto;
    padding: 40px 0;
    text-align: center;
    background-color: #dfdfd0;
}

.contents_inner {
    box-sizing: boder-box;
    width: 100%;
    max-width: 1180px;
    height: 100%;
    margin: 0 auto;
    padding: 100px 10px 120px;
    color: #000;
    text-align: center;
}

.center {
    text-align: center;
}

#bg-scale .col {
    padding-left: 0;
    padding-right: 0;
}

#about-section {
    background: url(/common/images/top/about-back.jpg) no-repeat top center;
    padding: 80px;
    height: 250px;
    background-repeat: no-repeat;
    background-size: cover;
}

/* footer {
    padding: 30px;
    background-color: #000000;
    color: #ffffff;
}

footer h2 {
    color: #ffffff;
}

footer h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}

footer ul {
    list-style-type: none;
    padding-left: 0;
}

footer li {
    width: 44px;
    height: 44px;
    margin: 10px 10px 20px 10px;
}

footer .float {
    width: 192px;
    margin: auto;
    overflow: hidden;
}

footer .float li {
    float: left;
} */

.col {
    position: relative;
}

.p-footer {
    background: #eeeeee;
    width: 100%;
    padding-top: 36px;
}

.p-footer a:hover {
    text-decoration: underline;
}

.p-footer__content {
    display: flex;
    flex-wrap: wrap;
    max-width: 1180px;
    width: 100%;
    padding: 0 36px;
    box-sizing: border-box;
    margin: 0 auto;
}

.p-footer__banner {
    max-width: 100%;
    width: 325px;
    padding-right: 15px;
}

.p-footer__banner-list {
    display: flex;
    flex-wrap: wrap;
}

.p-footer__nav {
    width: calc(100% - 340px);
}

.p-footer__nav-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    height: 430px;
    min-height: 450px;
    /* height: calc(((840px - 100vw) * 0.25) + 500px); */
    height: calc(((840px - 100vw) * 0.25) + 800px);
    padding-bottom: 36px;
}

/* 201214 有料セミナー削除
.p-footer__nav-item--company {
  height:230px;
}
201214 有料セミナー削除 */
.p-footer__nav-item--ni-academia {
    height: 140px;
}

@media (max-width: 1024px) {
    .p-footer {
        padding-top: 0;
    }

    .p-footer__nav {
        width: 100%;
    }

    .p-footer__content,
    .p-footer__nav-list {
        display: block;
        height: auto;
        padding: 18px 20px;
        width: 100%;
        box-sizing: border-box;
    }

    .p-footer__nav-item--company {
        height: auto;
    }

    .p-footer__nav-item--ni-academia {
        height: auto;
    }

    .p-footer__nav-item--qzoo {
        width: auto;
    }
}

.p-footer__nav-item {
    padding: 0 22px;
    font-size: 16px;
    box-sizing: border-box;
}

/*.p-footer__nav-item:first-child {
  padding-bottom:22px;
}*/
.p-footer__nav-title,
.p-footer__nav-title--arrow {
    font-weight: bold;
    color: #000000;
}

.p-footer__nav-title--arrow::before {
    content: "→";
    color: #016a93;
    margin-left: -23px;
    margin-right: 6px;
}

.p-footer__nav-link {
    padding-left: 13px;
    padding-bottom: 22px;
}

.p-footer__copyright {
    width: 100%;
    background: #ffffff;
    text-align: center;
    color: #000000;
    font-size: 16px;
    /*line-height:63px;*/
    line-height: 1.4;
    padding: 21px 0;
}

.transparent {
    background-color: rgba(0, 0, 0, 0.7);
    border: 1px solid #cccccc;
    padding: 40px;
    margin: 0 150px;
    position: absolute;
    top: 150px;
}

@media (max-width: 1360px) {
    .transparent {
        margin: 0 100px;
        padding: 20px;
    }
}

@media (max-width: 1200px) {
    .transparent {
        margin: 0 50px;
        padding: 20px;
        top: 100px;
    }
}

@media (max-width: 1023px) {
    .transparent {
        background-color: rgba(0, 0, 0, 0.7);
        border: 1px solid #cccccc;
        padding: 40px;
        margin: 0 150px;
        position: absolute;
        top: 150px;
    }
}

#tel {
    font-size: 28px;
    font-weight: 900;
    line-height: 1.4;
}

#tel a::before {
    content: "\f095";
    font-family: FontAwesome;
    padding-right: 9px;
}

.secondbox #tbox {
    z-index: 13;
    background-color: #ffffff;
    position: absolute;
    padding: 90px 10% 90px 10%;
    top: 70px;
    left: 0;
    width: 100%;
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.1);
}

#people #tbox {
    top: 250px;
    padding: 40px 10% 40px 26%;
}

#peoplemain p {
    margin-bottom: 70px;
}

#intamain p {
    margin-bottom: 70px;
    padding-left: 90px;
    display: block;
    position: relative;
}

#peoplemain h5 {
    color: #000000;
    font-size: 23px;
    font-weight: 500;
    position: relative;
    padding-left: 20px;
    margin: 20px 0 10px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
}

#peoplemain h5 span {
    color: #2e98e5;
    font-weight: 700;
    position: absolute;
    top: -2px;
    left: 0;
    font-family: "Open Sans Condensed", sans-serif;
}

.secondbox {
    margin-top: 0px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #cccccc;
}

.secondbox-lp {
    margin-top: 0px;
    height: 600px;
}

#lpmain .container {
    max-width: 1100px;
}

#lpmain .container hr {
    border: 1px dotted #cccccc;
    margin: 30px 0;
}

#lpmain .container h3 {
    font-size: 30px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-weight: 500;
    margin-bottom: 30px;
    margin-top: 80px;
    padding: 0.25em 0.5em;
    color: #494949;
    border-left: solid 5px #2e98e5;
}

#lpmain .container h4 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #2e98e5;
}

#lpmain .container h4 .note-red {
    display: inline-block;
    margin-left: 15px;
    font-size: 16px;
    color: #ff0000;
}

#section3 .whitebox #r-datatable {
    background-color: #2b91e1;
    padding: 20px;
    text-align: center;
    font-size: 26px;
    color: #ffffff;
}

#r-data {
    background-color: #66ccff;
    padding: 20px;
    font-size: 20px;
}

#r-data table {
    border-collapse: inherit;
    border-spacing: 10px;
}

#r-data th {
    padding: 10px;
    text-align: center;
    background-color: #ffffff;
    font-weight: 900;
}

#r-data td {
    padding: 20px;
    text-align: center;
    background-color: #2b91e1;
    color: #ffffff;
    font-weight: 900;
}

#r-data dl,
#r-data2 dl {
    width: 100%;
    overflow: hidden;
    border-top: none;
}

#r-data dt {
    width: 20%;
    float: left;
    padding: 10px;
    font-weight: 900;
}

#r-data dd {
    margin-left: 20%;
    padding: 10px;
    font-weight: 900;
    color: #ffffff;
}

#r-data dd:after {
    display: block;
    content: "";
    clear: both;
}

#inbound1 {
    font-size: 24px;
    color: #ffffff;
    line-height: 170%;
    margin-top: 100px;
}

#inbound1 em {
    font-size: 30px;
    display: block;
}

#inbound1 .ftd {
    font-weight: 900;
    color: #000000;
    text-align: center;
}

#inbound1 .ttlth {
    background-color: #ffff66;
    color: #0066b9;
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    width: 40%;
}

#inbound1 th,
#inbound1 td {
    border: 5px solid #0066b9;
    padding: 10px;
    vertical-align: middle;
}

.maru {
    background: url(/wp/wp-content/themes/skeleton/images/maru.png) no-repeat center center;
}

.maru2 {
    background: url(/wp/wp-content/themes/skeleton/images/maru2.png) no-repeat center center;
}

.sankaku {
    background: url(/wp/wp-content/themes/skeleton/images/sankaku.png) no-repeat center center;
}

.secondimg {
    width: 100%;
    height: 350px;
    display: block;
    color: #000000;
    padding-top: 200px;
}

.secondbox-lp .secondimg {
    height: 550px;
    padding-top: 50px;
}

#lpmain section {
    padding-bottom: 100px;
}

#lpmain h2 {
    background-color: #072d5d;
    padding: 30px 20px;
    font-size: 46px;
    text-align: center;
    color: #ffffff;
    font-weight: 700;
    margin-bottom: 20px;
}

#lpmain img {
    margin: 60px auto;
    text-align: center;
    display: block;
}

#lpmain strong {
    font-weight: 500;
    font-size: 26px;
    line-height: 180%;
}

.secondbox-lp h3 {
    text-align: center;
    color: #ffffff;
    font-weight: 700;
    font-size: 32px;
    -moz-text-shadow: 1px 2px 0px black;
    -webkit-text-shadow: 1px 2px 0px black;
    text-shadow: 1px 2px 0px black;
    margin-bottom: 20px;
}

.secondbox-lp h2 {
    text-align: center;
    color: #ffffff;
    font-weight: 900;
    font-size: 46px;
    -moz-text-shadow: 1px 2px 0px black;
    -webkit-text-shadow: 1px 2px 0px black;
    text-shadow: 1px 2px 0px black;
}

.black p {
    padding: 5px;
    background-color: #333333;
    color: #ffffff;
    margin-bottom: 20px;
}

#case h3 {
    margin: 50px 0 10px 0;
}

#cases h3 {
    font-size: 22px;
    font-weight: 900;
    margin-bottom: 20px;
}

#cases #box2 h3 {
    margin-bottom: 0px;
}

#cases strong {
    height: initial;
    padding: 15px 0 5px;
}

#solution h3:first-letter {
    background-color: #ffffff;
    color: #ffffff;
    display: inline-block;
    padding: 0 5px;
    margin-right: 5px;
    font-weight: 900;
}

#sca dt {
    color: #155482;
    font-size: 20px;
    font-weight: 500;
}

#sca dd {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #cccccc;
}

#sca dt::before {
    content: "\f017";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #000000;
}

.second h3,
.niresearchacademy_teaser h3 {
    font-size: 21px;
    font-weight: 500;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
    margin-top: 45px;
}

.second h3::after,
.niresearchacademy_teaser h3::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

.second #rec h3 {
    font-size: 27px;
    font-weight: 900;
    position: relative;
    text-align: center;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 0px solid #ffffff;
    margin-bottom: 20px;
    margin-top: 45px;
}

.second #rec #data h3 {
    font-size: 22px;
    font-weight: 900;
    position: relative;
    text-align: center;
    padding-bottom: 0;
    color: #000000;
    border-bottom: 0px solid #ffffff;
    margin-bottom: 0px;
    margin-top: 0px;
}

.second #rec h3::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 0%;
    margin: auto;
    height: 0px;
    background-color: #15578c;
}

.second #rec h4 {
    font-size: 18px;
    font-weight: 900;
    margin-bottom: 7px;
    margin-top: 14px;
}

.black2 {
    background-color: #555555;
    color: #ffffff;
    padding: 10px;
    border-radius: 15px;
    margin-top: 5px;
}

#info {
    margin-bottom: 40px;
}

#semiman h2 {
    font-size: 21px;
    font-weight: 900;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
    margin-top: 45px;
}

#semiman h2 span {
    display: inline-block;
    text-align: left;
    font-weight: 700;
    margin-left: 10px;
    color: #15578c;
}

#semiman h2::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

.second #sca h3 {
    font-size: 21px;
    font-weight: 500;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
    margin-top: 0px;
}

.msr_list05 li {
    font-size: 16px;
    padding: 0 0 8px 30px;
    position: relative;
}

#map {
    width: 100%;
    height: 400px;
    background-color: grey;
}

/* アイコン */
.msr_list05 li:before {
    border-bottom: 1px solid #333333;
    content: "";
    height: 1;
    left: 0;
    margin: 0 30px 2px 0;
    position: absolute;
    top: 14px;
    vertical-align: middle;
    width: 20px;
}

#mission {
    padding-bottom: 100px;
}

.second #service h3,
.niresearchacademy_teaser h3 {
    font-size: 19px;
    font-weight: 500;
    padding-bottom: 10px;
    padding-top: 10px;
    margin-top: 10px;
}

#people .secondimg {
    height: 600px;
}

#service h3 a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

.flex {
    position: relative;
}

#recbox1 {
    position: absolute;
    top: 100px;
    z-index: 100;
    left: 0px;
    background-color: #ffffff;
    width: 500px;
    height: 300px;
    padding: 50px;
    border: 1px solid #cccccc;
}

#recbox4 {
    position: absolute;
    bottom: 20px;
    z-index: 100;
    left: 20px;
    background-color: #ffffff;
    padding: 20px 40px;
    border: 1px solid #cccccc;
}

#rec .col {
    margin-bottom: 20px;
}

#rec #data .col {
    margin-bottom: 0px;
}

#recbox2 {
    height: 100px;
}

.namecard p {
    line-height: 140%;
    font-size: 12px;
    height: 40px;
}

.marker_yellow {
    background: linear-gradient(transparent 70%, #ffff66 0%);
}

.infobox {
    background-color: #ffffff;
    border: 5px solid #00a3d9;
    margin-bottom: 20px;
}

.infobox p {
    font-size: 20px;
    font-weight: 700;
    color: #00a3d9;
    line-height: 200%;
}

.infobox .man,
.infobox .woman {
    font-size: 40px;
    line-height: 123%;
}

.man span {
    font-size: 20px;
}

.woman span {
    font-size: 20px;
}

#info01,
#info06 {
    padding: 60px 30px;
}

#info07,
#info08,
#info09,
#info10 {
    padding: 50px 30px;
    height: 230px;
}

#info02,
#info03,
#info04 {
    /* padding: 40px 30px; */
    padding: 44px 30px;
}

#info05 {
    padding: 79px 30px;
}

#seido2 #info06 h2 {
    font-size: 60px;
}

#seido2 #info06 .anken span {
    font-size: 120px;
}

#seido2 #info07 h2,
#seido2 #info08 h2 {
    margin-bottom: 80px;
}

#seido2 #info07 .anken span {
    font-size: 120px;
}

#seido2 #info08 .anken span {
    font-size: 120px;
}

#seido2 #info06 .anken {
    margin: 50px 0 0 0;
    font-size: 30px;
}

#seido2 #info01 p {
    margin-bottom: 50px;
}

#seido2 #info01 {
    /* background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info01-1.png) bottom
        right / 30% no-repeat; */
    /* background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info01.png) no-repeat
        bottom right; */
}
#info01 {
    position: relative;
}
.data-info-01 {
    position: absolute;
    bottom: 16px;
    right: 16px;
    width: 30%;
}
.data-info-01 img {
    width: 100%;
}
#seido2 #info02 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info02.png) no-repeat
        bottom right;
}

#seido2 #info03 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info03.png) no-repeat
        bottom right;
}

#seido2 #info04 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info04.png) no-repeat
        bottom right;
}

#seido2 #info05 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info05.png) no-repeat
        bottom right;
}

#seido2 #info06 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info06.png) no-repeat
        center right;
}

#seido2 #info07 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info07.png) no-repeat
        center right;
}

#seido2 #info08 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info08.png) no-repeat
        center right;
}

#seido2 #info09 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info09.png) no-repeat
        center right;
}

#seido2 #info10 {
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2018/11/info10.png) no-repeat
        center right;
}

#seido2 .infobox h2 {
    color: #00a3d9;
    font-size: 29px;
}

#infog {
    margin-top: 100px;
}

#seido2 #info01 h2 {
    font-size: 60px;
    margin-bottom: 100px;
    margin-top: 20px;
}

#seido2 #info01 h2 em {
    font-size: 110px;
    font-weight: 900;
    font-style: normal;
}

#seido2 #info01 h2 span {
    font-size: 24px;
    color: #00a3d9;
    font-weight: 900;
    display: initial;
}

#seido2 #info02 p {
    padding-right: 60px;
}

#voice {
    margin-bottom: 100px;
}

#seido .col {
    padding-left: 20px;
    padding-right: 20px;
}

#seido2 #data .col {
    padding-left: 20px;
    padding-right: 20px;
    border-bottom: 1px dotted #cccccc;
    display: flex;
    justify-content: center;
    align-items: center;
}

#office iframe {
    display: block;
    margin: 20px auto 0 auto;
    max-width: 100%;
}

#entry {
    background-color: #dddddd;
    padding: 60px 0;
}

.white {
    background-color: #ffffff;
}

#white {
    padding: 50px;
}

.namecard {
    position: absolute;
    bottom: -5px;
    z-index: 100;
    line-height: 140%;
    right: 5px;
    font-size: 14px;
    background-color: #ffffff;
    width: 250px;
    padding: 5px;
    border: 1px solid #dddddd;
}

.namecard span {
    display: block;
    text-align: right;
    font-weight: 700;
    margin-right: 10px;
}

.container2 {
    max-width: 1180px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px;
    background-color: #ffffff;
    border: 1px solid #dddddd;
}

#prof .container2 {
    max-width: 1400px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px;
    background-color: #ffffff;
    border: 1px solid #dddddd;
}

.yurai p {
    padding-bottom: 40px;
}

.right-text {
    text-align: right;
    padding-top: 60px;
    padding-bottom: 30px;
}

#cp {
    border-top: 1px solid #666666;
    border-bottom: 1px solid #666666;
    padding: 100px;
    margin-bottom: 70px;
}

#section3 .whitebox .sec3text {
    font-size: 24px;
    color: #2b91e1;
    text-align: center;
    font-weight: 700;
}

#listtable table {
    width: 100%;
}

#listtable th {
    font-size: 24px;
    padding: 5px;
    text-align: center;
    font-weight: 700;
    background-color: #000000;
    color: #ffffff;
}

#listtable td {
    font-size: 18px;
    padding: 5px;
    text-align: center;
    font-weight: 500;
    background-color: #eeeeee;
    border-bottom: 1px solid#FFFFFF;
}

.greeting {
    padding-top: 100px 0;
}

.require {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #c33;
    padding: 1px 3px;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    border-radius: 3px;
    zoom: normal;
}

.any {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #71b55b;
    padding: 1px 3px;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    border-radius: 3px;
    zoom: normal;
}

.att {
    text-align: left;
    margin-bottom: 10px;
}

.relatedlink {
    display: table;
    padding: 10px;
    margin-top: 10px;
    border: 1px solid #cccccc;
    background-color: #eeeeee;
}

#faq {
    margin: 50px;
}

#faq dt {
    padding: 10px;
    margin-bottom: 0px;
    font-size: 18px;
    font-weight: 700;
}

#faq dt:first-letter {
    font-size: 27px;
    font-weight: 700;
    color: #b20000;
    display: inline-block;
    margin-right: 10px;
}

#faq dd:first-letter {
    font-size: 27px;
    font-weight: 700;
    color: #0085b2;
    display: inline-block;
    margin-right: 10px;
}

#faq dd {
    padding: 10px 10px 100px;
    margin-bottom: 10px;
    position: relative;
    border-bottom: 1px dotted #cccccc;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

#submit_button {
    margin: auto;
    text-align: center;
}

#submit_button input {
    background-color: #2ea5cf;
    width: 320px;
    padding: 15px 0;
    border: none;
    color: #ffffff;
    cursor: pointer;
    font-size: 18px;
}

#submit_button .back {
    background-color: #444444;
    width: 120px;
    padding: 15px 0;
    color: #ffffff;
    border: none;
    cursor: pointer;
    margin-left: 15px;
}

.bg-scale1 {
    position: relative;
    width: 100%;
    height: 400px;
}

.bg-scale1 a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.bg-scale2 {
    position: relative;
    width: 100%;
    height: 400px;
}

.bg-scale2 a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.clear {
    clear: both;
    display: block;
}

.clear2 {
    clear: both;
    display: block;
    height: 80px;
}

#top-section-blog .col,
#blog .col {
    margin-bottom: 40px;
}

.c-text {
    padding: 20px 100px;
}

.white {
    background-color: #ffffff;
}

#contract h3 {
    font-size: 15px;
    padding: 20px 0 5px 0;
    margin: 0;
}

.blogcontents img {
    max-width: 100%;
    height: auto;
}

#contract {
    margin-bottom: 100px;
}

#cform {
    padding: 20px;
}

#cform table {
    border-right: solid 1px #cccccc;
    width: 100%;
    margin-bottom: 50px;
}

#cform table th {
    position: relative;
    vertical-align: top;
    font-weight: normal;
    text-align: left;
    border-bottom: solid 1px #cccccc;
    border-top: solid 1px #cccccc;
    border-right: solid 1px #cccccc;
    border-left: solid 1px #cccccc;
    padding: 10px;
    width: 30%;
    background-color: #eeeeee;
}

#cform table td {
    border-bottom: solid 1px #cccccc;
    border-top: solid 1px #cccccc;
    padding: 10px;
}

#cform2 {
    padding: 20px;
}

#cform2 table {
    border-right: solid 1px #cccccc;
    width: 100%;
}

#cform2 table th {
    vertical-align: top;
    font-weight: bold;
    text-align: left;
    border-bottom: solid 1px #cccccc;
    border-top: solid 1px #cccccc;
    border-right: solid 1px #cccccc;
    border-left: solid 1px #cccccc;
    padding: 10px;
    width: 20%;
    background-color: #eeeeee;
}

#cform2 table td {
    border-bottom: solid 1px #cccccc;
    border-top: solid 1px #cccccc;
    padding: 10px;
}

#semiman table {
    width: 100%;
}

#semiman dl {
    width: 100%;
    border-bottom: 1px dotted #999999;
}

#semiman dt {
    display: block;
    width: 20%;
    font-weight: 900;
    clear: left;
    float: left;
}

#semiman dd {
    display: block;
    width: 80%;
    float: left;
}

#mainbnr {
    position: relative;
}

#maintitle {
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 170px;
    background-color: rgba(0, 0, 0, 0.7);
}

#maintitle h3 {
    font-size: 26px;
    color: #ffffff;
    font-weight: 700;
    margin: 60px 0 15px;
    padding: 0;
    text-align: center;
}

#semiman #day-s p {
    padding-bottom: 0;
    text-align: center;
}

#day-s #heldy {
    font-size: 16px;
    font-weight: 900;
    margin-top: 20px;
}

#day-s #heldm {
    font-size: 24px;
    font-weight: 900;
}

#day-s #heldm span {
    font-size: 14px;
}

#day-s #heldt {
    font-size: 16px;
    font-weight: 900;
}

#day-s {
    position: absolute;
    display: table;
    left: 50%;
    right: 0;
    bottom: 30px;
    width: 140px;
    height: 140px;
    background: #259bb4;
    border-radius: 70px 70px;
    border: 2px solid #fff;
    text-align: center;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    margin-left: -70px;
}

#semiman #maintitle h4 {
    font-size: 16px;
    color: #ffffff;
    font-weight: 700;
    margin: 0px;
    text-align: center;
}

#semiman #maintitle sub {
    display: inline-block;
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 0.3em 2.5em;
    margin-bottom: 10px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    background: #259bb4;
    border-radius: 3px;
    border: 2px solid #fff;
}

#semiman h4 {
    display: block;
    font-size: 20px;
    font-weight: 700;
    color: #259bb4;
    margin-top: 10px;
}

#semiman h5 {
    display: block;
    font-weight: 700;
    color: #259bb4;
    margin-bottom: 10px;
}

#semiman .seminar_table ol {
    margin-left: 25px;
    margin-bottom: 20px;
}

#semiman .seminar_table ol li {
    list-style-type: upper-roman;
}

.seminar_table th {
    vertical-align: top;
    font-weight: bold;
    text-align: left;
    border-bottom: solid 1px #ffffff;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    border-left: solid 1px #ffffff;
    padding: 10px;
    width: 25%;
    background-color: #e0edf0;
}

.seminar_table td {
    border-bottom: solid 1px #ffffff;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    padding: 10px;
    background-color: #f6f6f6;
}

.w30 {
    width: 30%;
}

#works table {
    border-right: solid 1px #e3e3e3;
    width: 100%;
    margin: 20px 0 10px;
}

#works table th {
    vertical-align: top;
    border-bottom: solid 1px #e3e3e3;
    border-top: solid 1px #e3e3e3;
    border-right: solid 1px #e3e3e3;
    border-left: solid 1px #e3e3e3;
    padding: 10px;
    width: 50%;
    text-align: center;
    font-weight: 700;
}

#works2 table {
    border-right: solid 1px #e3e3e3;
    width: 100%;
    margin: 20px 0 10px;
}

.maru li::before {
    content: "\f10c";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #b20000;
    font-size: 15px;
}

.sankaku li::before {
    content: "\f0d8";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #000000;
    font-size: 15px;
}

#works2 table th {
    vertical-align: top;
    border-bottom: solid 1px #e3e3e3;
    border-top: solid 1px #e3e3e3;
    border-right: solid 1px #e3e3e3;
    border-left: solid 1px #e3e3e3;
    padding: 10px;
    text-align: center;
    font-weight: 700;
}

#works2 table td {
    border-bottom: solid 1px #e3e3e3;
    border-top: solid 1px #e3e3e3;
    border-right: solid 1px #e3e3e3;
    border-left: solid 1px #e3e3e3;
    padding: 10px;
    text-align: center;
}

#works2 img {
    width: 100%;
    height: auto;
    padding: 10px 0;
}

.w20 {
    width: 20%;
}

.w35 {
    width: 40%;
}

.check p {
    font-size: 18px;
    margin-top: 10px;
    color: #0f568e;
    font-weight: 900;
}

.gbox {
    border: 1px solid #cccccc;
    background-color: #eeeeee;
    padding: 10px;
    border-radius: 5px;
    margin: 10px 0;
}

.grbox {
    border: 1px solid #ffffff;
    background-color: #73bc00;
    padding: 10px;
    color: #ffffff;
    text-align: center;
    border-radius: 5px;
    margin: 10px 0;
    font-size: 24px;
    font-weight: 700;
}

#section3 .whitebox .grbox2 {
    border: 1px solid #ffffff;
    background-color: #73bc00;
    padding: 10px;
    color: #ffffff;
    text-align: center;
    border-radius: 5px;
    margin: 50px 0 30px 0;
    font-size: 40px;
    font-weight: 700;
}

#lpmain .container #medilastsection h3 {
    font-size: 30px;
    font-weight: 700;
    color: #2263b9;
    line-height: 160%;
    border-left: solid 0px #2e98e5;
    text-align: center;
}

#medilastsection table {
    width: 100%;
}

#medilastsection th {
    background-color: #2b91e1;
    border-right: 1px solid #ffffff;
    color: #ffffff;
    padding: 10px;
    text-align: center;
    font-size: 26px;
    font-weight: 900;
}

#medilastsection td {
    text-align: center;
    border-right: 1px solid #ffffff;
}

#medilastsection tr {
    background-color: #cbe3f6;
    padding: 10px;
    font-size: 22px;
    text-align: center;
}

#medilastsection tr:nth-child(even) {
    background: #e6f2fb;
}

.blbox {
    border: 1px solid #ffffff;
    background-color: #022983;
    padding: 10px;
    color: #ffffff;
    text-align: center;
    border-radius: 5px;
    margin: 10px 0;
    font-size: 24px;
    font-weight: 700;
}

.hidden-pc {
    display: none;
}

.w100 img {
    width: 100%;
    height: auto;
}

.m20 {
    margin-top: 20px;
}

.m50 {
    margin-top: 50px;
}

.m100 {
    margin-top: 100px;
}

.w100 h3 {
    color: #155482;
    font-weight: 700;
    font-size: 23px;
    margin-bottom: 15px;
}

.w100 h4 {
    font-weight: 900;
    font-size: 20px;
    margin: 0 0 5px;
}

.check li::before {
    content: "\f00c";
    font-family: FontAwesome;
    padding-right: 0px;
    color: #b20000;
    font-size: 15px;
    position: absolute;
    left: -20px;
}

.check2 li {
    list-style-type: disc;
    margin-left: 20px;
}

#plus {
    padding-top: 20px;
}

#box2 {
    margin-top: 20px;
}

.check p::before {
    content: url(/wp/wp-content/themes/skeleton/images/check.png);
    margin-right: 10px;
    position: relative;
    top: 4px;
}

#check h3::before {
    content: url(/wp/wp-content/themes/skeleton/images/check.png);
    margin-right: 10px;
    position: relative;
    top: 4px;
}

.en {
    width: 70px;
    height: 70px;
    border-radius: 200px;
    color: #ffffff;
    text-align: center;
    background-color: #0f568e;

    font-weight: 500;
}

.en p {
    padding-top: 10px;
    text-align: center;
    font-size: 26px;
    margin-top: 15px;
    font-weight: 900;
}

.en p span {
    display: block;
    text-align: center;
    font-size: 13px;
    margin: 0px;
    padding-top: 10px;
    line-height: 10%;
    font-weight: 500;
}

.line-ttt h4 {
    position: relative;
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    margin: 60px 0 30px 0;
}

.line-ttt h4 span {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 4em;
    padding: 0 1em;
    background-color: #fff;
    text-align: left;
}

.line-ttt h4::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #ccc;
    background: -webkit-linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
    background: linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
}

#point .col {
    padding-left: 20px;
    padding-right: 20px;
}

#room h4 {
}

#works table td {
    border-bottom: solid 1px #e3e3e3;
    border-top: solid 1px #e3e3e3;
    border-right: solid 1px #e3e3e3;
    border-left: solid 1px #e3e3e3;
    padding: 10px;
    text-align: center;
}

/*汎用ボタンデザイン*/
.button {
    position: relative;
    z-index: 2;
    background-color: #fff;
    border: 2px solid #333;
    color: #333;
    line-height: 50px;
    overflow: hidden;
}

.button:hover {
    color: #fff;
}

.button::after {
    top: -100%;
    width: 100%;
    height: 100%;
}

.button:hover::after {
    top: 0;
    background-color: #333;
}

.button a::before,
.relatedlink a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

.button-l {
    position: relative;
    z-index: 2;
    background-color: #fff;
    border: 2px solid #333;
    color: #333;
    line-height: 50px;
    overflow: hidden;
}

.button-l:hover {
    color: #fff;
}

.button-l::after {
    top: -100%;
    width: 100%;
    height: 100%;
}

.button-l:hover::after {
    top: 0;
    background-color: #333;
}

.button-l a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

/*動く背景*/

.section-back1 {
    background-color: #eeeeee;
    height: 440px;
    width: 95%;
    position: absolute;
    top: 150px;
    z-index: 1;
}

input[type="text"] {
    padding: 10px 3px;
    margin: 0 5px;
    border: solid 1px #999999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}

input[type="email"] {
    padding: 10px 3px;
    margin: 0 5px;
    border: solid 1px #999999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}

select {
    margin: 0 5px;
    padding: 10px 3px;
    border: solid 1px #999999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}

textarea {
    margin: 0 5px;
    border: 0;
    padding: 3px;
    height: 250px;
    width: 90%;
    font-size: 14px;
    border: solid 1px #999999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}

input::placeholder,
textarea::placeholder {
    color: #bfbfbf;
}

/*動くタイトル*/

.ml14 {
    margin: auto;
}

.ml14 .text-wrapper {
    position: relative;
    display: inline-block;
    padding-top: 0.1em;
    padding-right: 0.05em;
    padding-bottom: 0.15em;
}

.ml14 .line {
    opacity: 0;
    position: absolute;
    left: 0;
    height: 2px;
    width: 100%;
    background-color: #000;
    transform-origin: 100% 100%;
    bottom: 0;
}

.ml14 .letter {
    display: inline-block;
    line-height: 1em;
}

/* slug-recruit */

body.slug-recruit #sec1 {
    margin-bottom: 0;
}

body.slug-recruit #sec2 {
    padding-top: 100px;
    margin-bottom: 0;
}

body.slug-recruit #voice {
    padding-top: 100px;
}

/*
  compornent

*/
.c-title01,
.second h3.c-title01 {
    font-size: 30px;
    margin-bottom: 20px;
    margin-top: 60px;
    padding: 0.25em 0.5em;
    color: #494949;
    border: none;
    border-left: solid 5px #2e98e5;
}

.c-title01::after,
.second h3.c-title01::after {
    content: none;
}

.c-title02 {
    font-size: 24px;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
    font-family: inherit;
}

.c-title02::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

.c-title03,
.maindetail h3.c-title03 {
    font-size: 30px;
    color: #003443;
    font-weight: 900;
    margin: auto;
    border-bottom: 5px solid #013543;
    padding: 10px 20px;
    display: table;
    margin-bottom: 10px;
    text-align: center;
}

.maindetail h3.c-title03::after {
    content: none;
}

.c-service-paragraph {
    padding: 0 10px 20px 10px;
}

.c-service-option {
    width: 30%;
    margin: 20px 10px;
}

.c-service-option img {
    width: 100%;
    height: auto;
    display: block;
}

.c-service-point {
    display: flex;
    align-items: baseline;
    padding-bottom: 10px;
}

.linebox h5.c-service-point__title,
.c-service-point__title {
    margin: 0;
    margin-right: 30px;
    height: auto;
    line-height: 1.5;
    display: flex;
    align-items: baseline;
}

.third strong.c-service-point__desc,
.c-service-point__desc {
    height: auto;
    line-height: 1.5;
}

/*
* 写真並び用
*
*/
.c-service-list {
    display: flex;
}

.c-service-item {
    width: 30%;
    margin-right: 20px;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
}

.c-service-item--quad {
    width: 24%;
    margin-right: 1%;
}

.c-service-item img {
    width: 100%;
    height: auto;
    display: block;
}

.c-schedule img {
    width: 100%;
    height: auto;
    display: block;
}

.c-service-img {
    width: 100%;
    height: auto;
    display: block;
}

.c-flow-list {
    display: flex;
    padding: 10px 0 20px 0;
}

.c-flow-item {
    width: 22%;
    margin-right: 4%;
    position: relative;
}

.c-flow-item--cluster {
    width: 48%;
}

.c-flow-item img {
    width: 100%;
    height: auto;
    display: block;
}

.c-flow-item__title {
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.c-flow-item:not(:last-child)::after {
    content: "";
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/03/study_arrow.png)
        no-repeat left center;
    background-size: contain;
    width: 12%;
    height: 100%;
    position: absolute;
    right: -15%;
    bottom: -10%;
    display: block;
}

.c-flow-item--cluster:not(:last-child)::after {
    height: 15%;
    right: -14%;
    bottom: 32%;
}

/*
  外部リンクマーク
*/
.c-link-external {
    position: relative;
    display: inline-block;
    width: 10px;
}

.c-link-external::before {
    width: 6px;
    height: 6px;
    border: solid 1px #000;
    position: absolute;
    right: -3px;
    top: -15px;
    content: "";
    border-color: inherit;
}

.c-link-external::after {
    width: 6px;
    height: 6px;
    position: absolute;
    right: 0px;
    top: -12px;
    content: "";
    border-left: solid 1px #000;
    border-bottom: solid 1px #000;
    border-color: inherit;
}

/*
  トップ動画

*/
.p-top-catch,
.p-top-catch__caption {
    position: relative;
}

.p-top-catch__overlay {
    width: 100%;
    height: 100%;
    background: #ffffff;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
    pointer-events: none;
}

/*
  テーマ
  Marketing theme

*/
.p-theme__wrap {
    width: 100%;
    background: #f5f5f5;
}

.container2.mb50.p-theme {
    margin-bottom: 0;
}

.p-theme h2 {
    font-family: inherit;
}

.p-theme__desc {
    padding-top: 10px;
}

.p-theme__list {
    display: flex;
    justify-content: space-between;
    padding-top: 10px;
}

.p-theme__item {
    width: 26.5%;
    margin-left: -3%;
}

.p-theme__item:nth-of-type(4n + 1) {
    margin-left: 0;
}

.p-theme__item img {
    width: 100%;
    height: auto;
    transition-duration: 0.3s;
}

.p-theme__item img:hover {
    transform: scale(1.1);
    transition-duration: 0.3s;
    opacity: 0.6;
}

.p-theme__contents-list {
    padding: 5px 10px;
}

.p-theme__contents-item::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #81cde4;
    font-size: 14px;
}

.p-theme__more {
    text-align: center;
    padding: 10px 0 20px 0;
}

/*
  テーマ下層ページ
*/
.container2.mb50.p-theme-content {
    margin-top: 0;
    margin-bottom: 0;
}

.p-theme-content .stbox {
    top: auto;
    bottom: 20px;
    height: 200px;
    pointer-events: none;
}

.p-theme-content__title h2 {
    font-size: 30px;
    color: #003443;
    font-weight: 900;
    margin: auto;
    border-bottom: 5px solid #013543;
    padding: 10px 20px;
    display: table;
    margin-bottom: 20px;
    text-align: center;
}

.p-theme-content__title .sl {
    font-family: inherit;
}

.p-theme-content__note {
    text-align: center;
    margin-bottom: 15px;
    font-size: 18px;
}

.p-theme-content__desc {
    font-size: 18px;
    margin-bottom: 4px;
}

.p-theme-content__item {
    cursor: pointer;
}

.p-theme-content-overlay {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    height: 100%;
    width: 100%;
    z-index: 9999;
    overflow: auto;
    box-sizing: border-box;
    display: none;
}

.p-theme-content-overlay__block {
    position: relative;
    max-width: 1180px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 30px;
    padding-bottom: 0;
    background-color: #ffffff;
    border: 1px solid #dddddd;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.p-theme-content-overlay__head {
    font-size: 24px;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
    font-family: inherit;
}

.p-theme-content-overlay__head::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

.p-theme-content-overlay__list {
    display: flex;
    flex-wrap: wrap;
}

.p-theme-content-overlay__item {
    width: 50%;
    margin-bottom: 30px;
    cursor: pointer;
}

.p-theme-content-overlay__link {
    display: flex;
}

.p-theme-content-overlay__link:hover {
    background: #eeeeee;
}

.p-theme-content-overlay__link:hover img {
    opacity: 0.7;
}

.p-theme-content-overlay__img {
    max-width: 45%;
}

.p-theme-content-overlay__img img {
    width: 100%;
    height: auto;
    display: block;
}

.p-theme-content-overlay__detail {
    padding: 5px 10px 0 20px;
    max-width: 55%;
    box-sizing: border-box;
    line-height: 1.7;
}

.p-theme-content-overlay__title {
    font-weight: bold;
}

.p-theme-content-overlay__title::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #006a93;
    font-size: 14px;
}

.p-theme-content-overlay__button {
    width: 70px;
    height: 70px;
    background: #0d3350;
    display: block;
    cursor: pointer;
    position: absolute;
    right: -1px;
    top: -1px;
    border: none;
    outline: none;
}

.p-theme-content-overlay__button:hover {
    /*opacity:0.7;*/
    background: #455867;
}

.p-theme-content-overlay__button::before,
.p-theme-content-overlay__button::after {
    content: "";
    width: 2px;
    height: 48px;
    background: #ffffff;
    display: block;
    position: absolute;
    top: 10px;
    left: 35px;
    transform: rotate(45deg);
}

.p-theme-content-overlay__button::after {
    transform: rotate(-45deg);
}

/*
  Englishページ
*/
.p-outline-english__cform-directors {
    overflow: auto;
    width: 100%;
}

.p-outline-english__cform-directors > dt {
    clear: both;
    float: left;
    width: 250px;
}

.p-outline-english__cform-directors > dd {
    float: left;
}

.container2.p-outline-english__greet {
    margin-bottom: 50px;
}

.p-outline-english__greet-title {
    font-weight: bold;
}

.p-outline-english__greet-ceo {
    text-align: right;
}

.p-outline-english__image-desc {
    text-align: center;
    font-weight: bold;
    line-height: 1.4;
}

.p-outline-english__sub-title {
    font-weight: bold;
    text-align: center;
    font-size: 24px;
    padding-top: 24px;
    padding-bottom: 20px;
    color: #003443;
}

.p-outline-english__sub-title--other {
    padding-bottom: 0;
}

.p-outline-english__footer-desc {
    text-align: center;
    font-size: 18px;
}

.p-outline-english__footer-button {
    font-size: 24px;
    text-align: center;
}

.p-outline-english__footer-button a {
    color: #0d3350;
}

/*
  ケーススタディ
*/
.p-case {
    margin-top: -50px;
}

#top-section2.p-case__service {
    padding-top: 50px;
}

.p-case__title {
    text-align: center;
}

.p-case__sub-title {
    font-weight: bold;
    padding-bottom: 20px;
    font-size: 24px;
    color: #000000;
}

.p-case__list {
    display: flex;
    flex-wrap: wrap;
}

.p-case__item {
    width: 24%;
    margin-right: calc(3.9% / 3);
    margin-bottom: 20px;
}

.p-case__item:nth-child(4n) {
    margin-right: 0;
}

.p-case__item-content {
    display: flex;
    flex-direction: column-reverse;
}

.p-case__item-link {
    display: block;
}

.p-case__item-image {
    min-height: 0%;
    padding-bottom: 10px;
}

.p-case__item-image img {
    width: 100%;
    height: auto;
    display: block;
}

.p-case__item-desc {
    font-weight: bold;
    min-height: 84px;
}

.p-case__item-title {
    text-align: right;
}

/*
  スタディ下層
*/
.second .container2 h2.p-study__title {
    border: none;
    border-left: solid 10px #15578c;
    line-height: 1.6;
    text-align: left;
    margin-left: 0;
    color: #000000;
    font-size: 24px;
}

.p-study__plan-desc {
    font-weight: bold;
    font-size: 20px;
}

.p-study__plan-title {
    font-size: 18px;
}

.p-study__plan-list {
    padding-bottom: 15px;
    font-size: 16px;
}

.p-study__plan-img-list {
    display: flex;
    justify-content: space-between;
    padding: 10px 0 20px 0;
}

.p-study__plan-img-list--study02,
.p-study__plan-img-list--study06 {
    width: 78%;
}

.p-study__plan-img-item {
    width: 22%;
    position: relative;
}

.p-study__plan-img-item--study02,
.p-study__plan-img-item--study06 {
    width: 30%;
}

.p-study__plan-img-title {
    text-align: center;
    font-weight: bold;
}

.p-study__plan-img-title--study02,
.p-study__plan-img-title--study03 {
    line-height: 1.4;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.p-study__plan-img-item:not(:last-child)::after {
    content: "";
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/03/study_arrow.png)
        no-repeat left center;
    background-size: contain;
    width: 12%;
    height: 100%;
    position: absolute;
    right: -15%;
    bottom: -6%;
    display: block;
}

.p-study__plan-img-item img {
    display: block;
    width: 100%;
    height: auto;
}

.p-study__plan-link {
    padding-bottom: 10px;
}

.p-study__plan-link a {
    color: #2e98e5;
    text-decoration: underline;
}

#top-section2.p-study__service {
    background: #f5f5f5;
    padding-top: 0;
}

.p-study__point-img-list {
    display: flex;
    justify-content: space-between;
    padding: 20px 30px 0 30px;
}

.p-study__point-img-item {
    width: 30%;
}

.p-study__point-img-item img {
    display: block;
    width: 100%;
    height: auto;
}

.p-study__point-img-title {
    text-align: center;
    font-weight: bold;
}

.second.p-study__others {
    padding-top: 0;
}

.second.p-study__others h3 {
    margin-top: 20px;
}

.p-case__list--others {
    justify-content: flex-start;
}

.p-case__item--others {
    margin-right: 1%;
}

/*
  リサーチ手法一覧

*/
.p-service__index {
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

.p-service__anchor {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}

/*
  トリレンマ
*/
.p-trilemma__compass-list {
    display: flex;
    justify-content: space-between;
    padding: 50px 0 20px 0;
}

.p-trilemma__compass-item {
    width: 48%;
}

.p-trilemma__compass-item img {
    width: 100%;
    height: auto;
}

.p-trilemma__compass-title {
    font-weight: bold;
    text-align: center;
    padding-bottom: 10px;
    max-width: 65%;
    margin: 0 auto;
}

.p-trilemma__persona {
    padding-top: 50px;
}

.p-trilemma__persona img {
    display: block;
    width: 100%;
    height: auto;
}

.p-trilemma__persona-wrap {
    display: flex;
    justify-content: space-between;
}

.p-trilemma__persona-image01 {
    width: 10%;
    min-width: 120px;
}

.p-trilemma__persona-image01 img {
    max-height: 300px;
    width: auto;
}

.p-trilemma__persona-summary {
    width: 40%;
    padding-top: 30px;
}

.p-trilemma__persona-image02 {
    width: 40%;
    min-width: 300px;
}

.p-trilemma__paragraph {
    padding: 10px 20px;
}

/*
  ショッパーリサーチ
*/
.p-shopper__maintext {
    padding: 0 10px 50px 10px;
    font-weight: bold;
}

.p-shopper__service-list {
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
}

.p-shopper__service-item {
    width: 24%;
}

.p-shopper__service-item img {
    width: 100%;
    height: auto;
    display: block;
}

.p-shopper__service-title {
    font-weight: bold;
    font-size: 18px;
    margin: 10px 0 5px 0;
}

.p-shopper__research-desc {
    padding: 0 10px;
}

.p-shopper__research-title {
    font-weight: bold;
    padding-left: 20px;
    margin-top: 20px;
    margin-bottom: 10px;
}

.p-shopper__research-list {
    display: flex;
    padding-left: 20px;
    padding-bottom: 30px;
}

.p-shopper__research-item {
    margin-right: 10px;
    width: 180px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    color: #ffffff;
    font-weight: bold;
}

.p-shopper__research-item--gms {
    background: #05215d;
}

.p-shopper__research-item--drag {
    background: #2a4e75;
}

.p-shopper__research-item--shopping {
    background: #4075b1;
}

.p-shopper__research-item--outlet {
    background: #a4c2e4;
}

.p-shopper__research-photo-list {
    display: flex;
    padding-top: 20px;
    padding-left: 20px;
}

.p-shopper__research-photo-item {
    width: 24%;
    margin-right: 10px;
}

.p-shopper__research-photo-item img {
    width: 100%;
    height: auto;
    display: block;
}

.p-shopper__along-desc {
    padding: 0 10px 20px 10px;
}

.p-shopper__along-img {
    padding-top: 20px;
    padding-left: 20px;
    width: 24%;
}

.p-shopper__along-img img {
    width: 100%;
    height: auto;
}

.p-shopper__buy-desc {
    padding: 0 10px 20px 10px;
}

.p-shopper__display-desc {
    padding: 0 10px 20px 10px;
}

.p-shopper__display-img {
    padding-top: 20px;
    padding-left: 20px;
    width: 24%;
}

.p-shopper__display-img img {
    width: 100%;
    height: auto;
}

/*
  U18
*/
.p-u18__graph-list {
    display: flex;
    justify-content: space-between;
    padding: 50px 0 20px 0;
}

.p-u18__graph-item {
    width: 48%;
}

.p-u18__graph-item img {
    width: 100%;
    height: auto;
}

.p-u18__graph-title {
    font-weight: bold;
    text-align: center;
    padding-bottom: 10px;
    margin: 0 auto;
}

.p-u18__graph-content {
    padding-top: 30px;
    width: 55%;
    margin: 0 auto;
}

.p-u18__graph-desc {
    padding-top: 20px;
}

.p-u18__usage-example {
    padding-top: 50px;
}

.p-u18__cluster-block {
    margin-bottom: 20px;
}

.p-u18__cluster img {
    width: 100%;
    height: auto;
}

.p-u18__cluster-title {
    background: #000000;
    color: #ffffff;
    font-weight: bold;
    font-size: 18px;
    padding: 10px 20px;
}

.p-u18__cluster-content {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
}

.p-u18__cluster-table {
    width: 71%;
    border-collapse: separate;
    border-spacing: 0 14px;
    table-layout: fixed;
}

.p-u18__cluster-th {
    background: #000000;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    width: 16%;
}

.p-u18__cluster-td {
    padding-left: 24px;
}

.p-u18__cluster-tag-list {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 20px 0 20px;
}

.p-u18__cluster-tag-item {
    background: #848484;
    min-width: 154px;
    height: 33px;
    line-height: 33px;
    color: #ffffff;
    font-size: 14px;
    font-weight: bold;
    border-radius: 0 6px 6px 0;
    position: relative;
    text-align: center;
    margin-right: 20px;
    margin-bottom: 10px;
}

.p-u18__cluster-tag-item::before {
    content: "";
    width: 33px;
    height: 3px;
    border-color: transparent #848484 transparent transparent;
    border-style: solid;
    border-width: 12px;
    border-top-width: 15px;
    border-bottom-width: 15px;
    position: absolute;
    left: -57px;
    top: 0;
    z-index: 1;
}

.p-u18__cluster-tag-item::after {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: #ffffff;
    position: absolute;
    left: 0px;
    top: 12px;
    z-index: 2;
}

.p-u18__cluster-summary-list {
    padding-bottom: 10px;
}

.p-u18__cluster-data-list {
    display: flex;
    justify-content: space-between;
}

.p-u18__cluster-data-item {
    width: 32%;
}

.p-u18__cluster-data-circle {
    padding: 10px 30px 0 30px;
    margin-top: 10%;
}

.p-u18__cluster-data-title {
    color: #ffffff;
    background: #848484;
    text-align: center;
    padding: 5px 10px;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 13px;
}

.p-u18__cluster-illust {
    width: 28%;
    position: relative;
    padding-top: 20px;
}

.p-u18__example-title {
    font-weight: bold;
    color: #2e98e5;
    margin-left: 10px;
    font-size: 18px;
}

.p-u18__example-desc {
    padding: 10px 30px 20px 30px;
}

.p-u18__schedule-desc {
    padding-left: 10px;
}

.p-u18__option-desc {
    padding-left: 10px;
}

.p-u18__schedule-img {
    width: 30%;
    margin: 20px 10px;
}

.p-u18__schedule-img img {
    width: 100%;
    height: auto;
    display: block;
}

/*
  Our Work　実績紹介
*/
.p-ourwork {
    margin-top: -50px;
}

.p-ourwork__block {
    margin-bottom: 20px;
}

.p-ourwork__desc {
    padding: 10px;
    padding-bottom: 20px;
}

.p-ourwork__icon-title {
    font-weight: bold;
    margin-bottom: 10px;
    margin-left: 10px;
}

.p-ourwork__icon-list {
    display: flex;
    flex-wrap: wrap;
    padding-left: 10px;
}

.p-ourwork__icon-item {
    width: calc((100% - 10px) / 9);
    box-sizing: border-box;
    text-align: center;
    font-weight: bold;
    padding-bottom: 10px;
    padding-right: 10px;
    font-size: 15px;
    line-height: 1.5;
}

.p-ourwork__icon-item img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0.4em;
}

.p-ourwork__process {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 50px;
}

.p-ourwork__process-title {
    color: #003443;
    font-size: 24px;
    line-height: 1.6;
    font-weight: bold;
    border-bottom: solid 3px #003443;
    position: relative;
    margin-top: 20px;
}

.p-ourwork__process-title::after {
    content: "";
    width: 15px;
    height: 15px;
    border-right: solid 3px #003443;
    border-top: solid 3px #003443;
    transform: rotate(45deg);
    position: absolute;
    bottom: -10px;
    right: 0;
}

.p-ourwork__process-list {
    display: flex;
    justify-content: space-between;
    padding-top: 20px;
}

.p-ourwork__process-item {
    width: 26.5%;
    margin-left: -3%;
}

.p-ourwork__process-item:nth-of-type(4n + 1) {
    margin-left: 0;
}

.p-ourwork__process-item img {
    width: 100%;
    height: auto;
}

.p-ourwork__process-graph {
    width: 70%;
    margin: 10px auto 0 auto;
}

.p-ourwork__process-note {
    text-align: right;
}

.p-ourwork__method-list {
    display: flex;
    justify-content: space-between;
    font-weight: bold;
}

.p-ourwork__method-item {
    width: 24%;
    text-align: center;
}

.p-ourwork__method-item img {
    width: 100%;
    height: auto;
    display: block;
}

.p-ourwork__method-title {
    text-align: center;
}

.p-ourwork__method-graph {
    width: 80%;
    margin: 10px auto 10px auto;
}

.p-ourwork__method-note {
    text-align: right;
}

/*
  郵送調査
*/
.p-postal__feature-content {
    display: flex;
    justify-content: space-between;
}

.p-postal__feature-list {
    width: 60%;
}

.p-postal__feature-map {
    width: 40%;
    position: relative;
    padding-left: 20px;
    box-sizing: border-box;
}

.p-postal__feature-map img {
    width: 100%;
    height: auto;
    display: block;
    position: absolute;
    top: -35%;
}

.p-postal__schedule {
    width: 100%;
}

.p-postal__schedule img {
    width: 100%;
    height: auto;
    display: block;
}

/*
  行動観察
*/
.p-ods img {
    display: block;
    width: 100%;
    height: auto;
}

a.p-ods__fastvideo-link {
    color: #2e98e5;
    text-decoration: underline;
}

.p-ods__util-others {
    padding-top: 20px;
}

.p-ods__util-list {
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
}

.p-ods__util-item {
    width: 49%;
}

.p-ods__feature-list {
    display: flex;
    justify-content: space-between;
    padding-top: 20px;
}

.p-ods__feature-item {
    width: 49%;
    position: relative;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
}

.p-ods__feature-item--person img {
    position: absolute;
    top: -10%;
}

.p-ods__example-list {
    display: flex;
    flex-wrap: wrap;
}

.p-ods__example-img {
    width: 20%;
    box-sizing: border-box;
    padding-right: 20px;
    padding-bottom: 20px;
}

.p-ods__example-desc {
    width: 80%;
    padding-bottom: 20px;
}

/*
  グローバルリサート（リアル）
*/
.p-real_research img {
    width: 100%;
    height: auto;
    display: block;
}

.p-real_research__example {
    display: flex;
}

.p-real_research__example-title {
    text-align: center;
    font-weight: bold;
    padding: 5px 0;
}

.p-real_research__example-list {
    display: flex;
    justify-content: space-between;
}

.p-real_research__example-item {
    width: 49%;
}

.p-real_research__example-place {
    width: 52%;
}

.p-real_research__example-before {
    width: 25.5%;
    margin-left: 40px;
}

.p-real_research__fgi-list {
    display: flex;
}

.p-real_research__fgi-item {
    width: 15%;
    margin-right: 10px;
}

/*
  sns分析
*/
.p-sns img {
    width: 100%;
    height: auto;
    display: block;
}

.maindetail h3.p-sns__title {
    font-weight: bold;
    font-size: 18px;
    margin: 40px 0 10px 0;
    color: #000000;
    padding: 0;
}

.maindetail h3.p-sns__title::after {
    content: none;
}

.p-sns__list {
    display: flex;
}

.p-sns__item {
    width: 30%;
    margin-right: 20px;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
}

.p-sns__icon-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.p-sns__icon-item {
    width: calc((100% - 40px) / 3);
    padding: 10px;
    box-sizing: border-box;
    background: #666666;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}

/*
  アグリリサーチ
*/
.p-agri img {
    width: 100%;
    height: auto;
    display: block;
}

.p-agri__list {
    display: flex;
}

.p-agri__item {
    width: 30%;
    margin-right: 20px;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
}

/*
  次世代スマートフォンリサーチ
*/
a.p-line__link {
    color: #2e98e5;
    text-decoration: underline;
    margin-top: 20px;
    display: inline-block;
}

/*
  DIYリサーチ
*/
.p-diy img {
    width: 100%;
    height: auto;
    display: block;
}

.p-diy__title {
    font-weight: bold;
    padding-left: 12px;
    text-indent: -14px;
    padding-bottom: 10px;
}

.p-diy__underline {
    text-decoration: underline;
}

.p-diy__list {
    display: flex;
    padding: 20px 0;
}

.p-diy__item {
    margin-right: 20px;
}

.p-diy__notes {
    display: block;
    text-align: center;
}

/*
  b2bリサーチ
*/
.p-b2b img {
    width: 100%;
    height: auto;
    display: block;
}

.p-b2b__title {
    font-weight: bold;
    padding-bottom: 20px;
    text-align: center;
    font-size: 24px;
}

.p-b2b__underline {
    text-decoration: underline;
}

.p-b2b_secne-img {
    padding-top: 20px;
}

/*
  アカデミックリサーチ
*/
.p-academic img {
    width: 100%;
    height: auto;
    display: block;
}

.p-academic__title-small {
    font-size: 70%;
}

.p-academic__example-title {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
    margin-left: 30px;
}

/*
  fastvideo log
*/
.p-fastvideo__scene-list {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 140px;
}

.p-fastvideo__method-merit {
    background: #d90000;
    color: #ffffff;
    font-weight: bold;
    vertical-align: top;
}

.p-fastvideo__method-merit li::before {
    color: #ffffff;
}

#works2 table td.p-fastvideo__method-photo {
    padding: 0;
}

#works2 .p-fastvideo__method-photo img {
    padding: 0;
    display: block;
}

.p-fastvideo__method-demerit {
    vertical-align: top;
}

.p-fastvideo__method-sub-title {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 15px;
}

.p-fastvideo__method-grapth-title {
    font-weight: bold;
    margin-bottom: 5px;
    padding-left: 10%;
}

/*
  街頭リサーチ
*/
.p-street__feature-note {
    text-decoration: underline;
    text-align: right;
}

.p-street__feature-list {
    padding-top: 20px;
    justify-content: space-between;
    display: flex;
}

.p-street__feature-item {
    width: 28%;
    padding-right: 7%;
    position: relative;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/04/equal.png) no-repeat
        right center;
    background-size: 18%;
}

.p-street__feature-item:first-child {
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/04/plus.png) no-repeat
        right center;
    background-size: 18%;
}

.p-street__feature-item:last-child {
    padding-right: 0;
    background: none;
}

/*
  興味反応クリッカー評価イメージ
*/
.p-clicker__main {
    padding-bottom: 20px;
}

.p-clicker__image-list {
    display: flex;
    justify-content: space-between;
}

.p-clicker__image-item {
    width: 45%;
}

.p-clicker__image-item:last-child {
    padding-left: 8%;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/03/study_arrow.png)
        no-repeat 0 40%;
    background-size: 10%;
}

.p-clicker__image-title {
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    padding-bottom: 10px;
}

.p-clicker__image-btn {
    width: 60%;
    margin: 10px auto;
}

.p-clicker__image-btn--hidden {
    visibility: hidden;
}

.p-clicker__image-color--forget {
    font-weight: bold;
    color: #0f72bd;
}

.p-clicker__image-color--positive {
    font-weight: bold;
    color: #c35b1f;
}

.p-clicker__image-color--negative {
    font-weight: bold;
    color: #19b1ed;
}

/*
  NIの強み
*/
a.p-strength__link {
    color: #2e98e5;
    text-decoration: underline;
    font-weight: bold;
}

/*
  外国人リサーチ
*/
.p-foreign__scene-title {
    font-size: 18px;
    font-weight: bold;
}

.p-foreign__scene-list {
    display: flex;
    padding-top: 10px;
}

.p-foreign__scene-item {
    width: 24%;
    padding: 5px 10px;
    box-sizing: border-box;
    background: #666666;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    margin-right: 1%;
}

/*
  多変量解析
*/
.p-multivariate__title {
    background: #666666;
    color: #ffffff;
    padding: 5px 10px;
    width: 180px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}

.p-multivariate__image {
    width: 80%;
    margin: 10px auto 20px auto;
    padding: 0 10px 20px 10px;
}

.p-multivariate__arrow {
    background: linear-gradient(225deg, rgba(255, 255, 255, 0), #ffffff 50%, #333333);
    display: block;
    transform: rotate(-45deg) skew(20deg, 20deg);
    margin: -20px auto 10px auto;
    height: 80px;
    width: 80px;
}

.p-multivariate__arrow--vertical {
    margin: auto 20px auto -10px;
    background: linear-gradient(225deg, rgba(255, 255, 255, 0), #ffffff 56%, #333333);
    transform: rotate(225deg) skew(20deg, 20deg);
}

.p-multivariate__arrow--blue {
    background: linear-gradient(225deg, rgba(255, 255, 255, 0), #ffffff 56%, #1e5eae);
}

.p-multivariate__ingredient {
    padding-bottom: 20px;
}

.p-multivariate__ingredient-paragraph {
    width: 55%;
    margin: 0 auto;
}

.p-multivariate__ingredient-paragraph:nth-of-type(2) {
    padding-bottom: 20px;
}

.p-multivariate__ingredient-list {
    display: flex;
    padding-bottom: 20px;
    position: relative;
}

.p-multivariate__ingredient-list:nth-of-type(2) {
    padding-bottom: 40px;
}

.p-multivariate__ingredient-title {
    padding-bottom: 10px;
    font-weight: bold;
}

.p-multivariate__ingredient-note {
    color: #003399;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    text-indent: -40px;
}

.p-multivariate__cluster-list {
    width: 80%;
    display: flex;
    margin: 0 auto;
}

.p-multivariate__cluster-item {
    padding: 20px 10px;
}

.p-multivariate__cluster-title {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
}

.p-multivariate__ingredient-example {
    padding-top: 40px;
}

/*
  テキストマイニング
*/
.p-textmining__merit-title {
    font-weight: bold;
    font-size: 26px;
    text-align: center;
    color: #000000;
    padding-top: 40px;
}

.p-textmining__merit-list {
    display: flex;
    width: 80%;
    margin: 0 auto;
    justify-content: space-between;
    padding: 20px 0 40px 0;
}

.p-textmining__merit-item {
    width: 32%;
    background: #333333;
    padding: 5px 0;
    font-weight: bold;
    color: #ffffff;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.p-textmining__demerit-title {
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    color: #000000;
}

.p-textmining__demerit-list {
    display: flex;
    width: 80%;
    margin: 0 auto;
    justify-content: space-between;
    padding: 20px 0 0 0;
}

.p-textmining__demerit-item {
    width: 32%;
    height: 66px;
    background: #999999;
    padding: 5px 10px;
    font-weight: bold;
    color: #ffffff;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.4;
}

.p-textmining__product-title {
    line-height: 1.5;
    text-align: center;
}

/*
  ニューロリサーチ
*/
.p-nuro__point-catch {
    background: #000000;
    color: #ffffff;
    padding: 20px;
    text-align: center;
    width: 65%;
    font-size: 22px;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 40px;
    box-sizing: border-box;
}

.p-nuro__point-title {
    width: 65%;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 10px;
}

.p-nuro__point-list {
    display: flex;
    justify-content: space-between;
    width: 65%;
}

.p-nuro__point-item {
    width: 32%;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    color: #ffffff;
}

.p-nuro__point-item--example01 {
    background: #404041;
}

.p-nuro__point-item--example02 {
    background: #5a5859;
}

.p-nuro__point-item--example03 {
    background: #7f7f7e;
}

.p-nuro__example-output {
    width: 41.5%;
}

/*
  知財リサーチ
*/
a.p-intel__link {
    color: #2e98e5;
    text-decoration: underline;
    font-weight: bold;
    word-break: break-all;
}

/*
  インターネットリサーチ
*/
.p-net__about-list {
    display: flex;
}

.p-net__about-item {
    width: 50%;
}

.p-net__feature-list {
    justify-content: center;
    padding-bottom: 60px;
}

.p-net__feature-item--qzoo {
    width: 100%;
    text-align: center;
}

.p-net__feature-item--panel {
    width: 150%;
    position: absolute;
    box-sizing: border-box;
    left: -25%;
    padding-top: 10px;
}

a.p-net__feature-link {
    color: #2e98e5;
    text-decoration: underline;
    font-weight: bold;
    word-break: break-all;
}

a.p-net__feature-link--line {
    color: #22af59;
}

.p-net__feature-control-list {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
}

.p-net__feature-control-item {
    width: 30%;
    position: relative;
    text-align: center;
    line-height: 40px;
    font-weight: bold;
}

.p-net__feature-control-item:nth-of-type(2n)::after {
    content: "";
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/03/study_arrow.png)
        no-repeat left center;
    background-size: contain;
    width: 12%;
    height: 100%;
    position: absolute;
    right: -15%;
    top: -6%;
    display: block;
}

.p-net__delivery-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: calc(100% - 65px);
}

.p-net__delivery-item {
    width: 48%;
}

.p-net__delicery-note {
    font-size: 10px;
    font-weight: normal;
    line-height: 1.2;
}

/*
  HUT
*/
.p-hut__feature-block {
    padding-bottom: 40px;
}

.p-hut__feature-box {
    border: 1px solid #666666;
}

.p-hut__feature-title {
    background-color: #666666;
    color: #ffffff;
    font-size: 20px;
    margin: 0;
    padding: 10px;
}

.p-hut__feature-list {
    padding: 15px;
}

.p-hut__feature-item {
    display: flex;
    padding-bottom: 20px;
}

.p-hut__feature-item-title {
    font-size: 16px;
    font-weight: 700;
    color: #155482;
    white-space: nowrap;
}

.p-hut__feature-point03 {
    width: 45%;
}

.p-hut__feature-point03-list {
    width: 100%;
}

.p-hut__feature-point03-item {
    color: #00a3d9;
    font-weight: bold;
    width: 50%;
}

.p-hut__feature-point03-graph {
    padding-top: 30px;
    width: 77%;
}

.p-hut__feature-diary {
    width: 60%;
}

a.p-hut__feature-link {
    color: #05215d;
    text-decoration: underline;
}

/*
  フィールドインタビュー
*/
.p-field__feature-title {
    font-weight: bold;
    padding-left: 20px;
    margin-top: 20px;
    margin-bottom: 10px;
}

.p-field__feature-list {
    display: flex;
    padding-left: 20px;
    padding-bottom: 30px;
}

.p-field__feature-item {
    margin-right: 10px;
    width: 25%;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    text-align: center;
    color: #ffffff;
    font-weight: bold;
}

.p-field__feature-item--depth01 {
    background: #05215d;
}

.p-field__feature-item--depth02 {
    background: #2a4e75;
}

.p-field__feature-item--depth03 {
    background: #4075b1;
}

.p-field__feature-item--depth04 {
    background: #a4c2e4;
}

/*
  fastclt
*/
.p-fastclt__exapmle-item {
    width: 50%;
}

/*
  ホームビジット
*/
.p-visit__example-desc {
    font-weight: bold;
    padding: 10px 0 20px 0;
    font-size: 20px;
}

.p-visit__example-list {
    flex-wrap: wrap;
}

.p-visit__example-list li {
    padding-bottom: 10px;
}

.p-visit__option-list {
    display: flex;
    justify-content: space-between;
    width: 80%;
    padding-bottom: 40px;
    padding-left: 10px;
}

.p-visit__option-item {
    width: 28%;
    text-align: center;
    font-weight: bold;
    text-decoration: underline;
    position: relative;
}

.p-visit__option-item img {
    padding-top: 10px;
}

.p-visit__option-item::before {
    content: "";
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2019/03/study_arrow.png)
        no-repeat left center;
    background-size: contain;
    width: 12%;
    height: 100%;
    position: absolute;
    left: -16%;
    bottom: -6%;
    display: block;
}

.p-visit__option-item:first-child {
    width: 32%;
}

.p-visit__option-item:first-child::before {
    content: none;
}

/*
  パンくずリスト
*/
.p-breadcrumb {
    position: relative;
    z-index: 1;
}

.p-breadcrumb__wrap {
    position: absolute;
    background: rgba(255, 255, 255, 0.8);
    background: rgba(230, 230, 230, 0.85);
    top: 0;
    left: 0;
    width: 100%;
}

.p-breadcrumb__list {
    display: flex;
    max-width: 1180px;
    margin: 0 auto;
}

.p-breadcrumb__item {
    max-width: 1045px;
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.p-breadcrumb__item a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.p-breadcrumb__item:not(:last-child)::after {
    content: ">";
    margin: 0 10px;
}

/*
  セミナー報告
*/
.p-report__title {
    font-size: 32px;
    font-weight: bold;
    margin: 20px auto;
    display: block;
}

.p-report__contents {
    padding: 20px;
    border: solid 1px #cccccc;
    display: flex;
}

.p-report__contents-list {
    width: 50%;
    padding-left: 20px;
    box-sizing: border-box;
}

#blogmain .p-report__contents-item {
    list-style: decimal;
    color: #259bb4;
    font-weight: bold;
}

a.p-report__contents-link {
    text-decoration: underline;
    font-weight: normal;
}

#semiman .p-report__note {
    width: 50%;
    box-sizing: border-box;
    padding: 20px;
    background: #f9f9f9;
    border: none;
}

#semiman .p-report__note-title {
    float: none;
    width: 100%;
}

#semiman .p-report__note-list {
    float: none;
    width: 100%;
}

.p-report__item {
    padding-bottom: 10px;
    padding-left: 14px;
    text-indent: -14px;
}

.p-report__item::before {
    content: "■";
    color: #259bb4;
}

.p-report__small {
    font-size: 14px;
}

/*
  お知らせ
*/
.p-info__wrap {
    max-width: 1180px;
    margin: 0 auto;
}

.p-info__list {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
}

.p-info__item {
    width: 32%;
    margin-right: 1.5%;
    margin-bottom: 10px;
    background: #ffffff;
    box-sizing: border-box;
    border: 1px solid #dddddd;
    padding: 10px;
    min-width: 200px;
}

.p-info__item:nth-of-type(3n) {
    margin-right: 0;
}

.p-info__archive {
    width: 100%;
}

.p-info__archive-list {
    display: flex;
    flex-wrap: wrap;
}

.p-info__archive-list li {
    width: 10%;
    padding-bottom: 10px;
}

.p-info__thumb {
    width: 100%;
    height: calc(100vw * (1 / 6.53));
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.p-info__thumb::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background: url(/commons/images/logo.png) no-repeat center center;
    background-size: 92px 34px;
    opacity: 0.3;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}

.p-info__thumb-img {
    width: 100%;
    height: 100%;
    background-repeat: none;
    background-position: center center;
    background-size: cover;
    position: relative;
    z-index: 2;
}

.p-info__bottom {
    padding-top: 10px;
    line-height: 1.4;
}

.p-info__date {
    display: flex;
    align-items: center;
}

.p-info__icon {
    display: inline-block;
    border-radius: 4px;
    background: #000000;
    padding: 4px 12px;
    color: #ffffff;
    font-size: 13px;
    line-height: 1;
    margin-left: 10px;
}

.p-info__title {
    padding: 5px 0;
    font-weight: bold;
}

/*
  セミナー
*/
.p-seminar {
    margin-bottom: 50px;
}

.p-seminar__list {
    display: flex;
    flex-wrap: wrap;
}

.p-seminar__item {
    width: 32%;
    margin-right: 1.5%;
    margin-bottom: 20px;
    background: #ffffff;
    box-sizing: border-box;
}

.p-seminar__item:nth-of-type(3n) {
    margin-right: 0;
}

.report_top .p-seminar__list {
    justify-content: space-between;
}

.report_top .p-seminar__item,
.report_archive .p-seminar__item {
    width: 48%;
    margin-right: 1.5%;
    margin-bottom: 20px;
    background: #ffffff;
    box-sizing: border-box;
}

.report_top .p-seminar__item:nth-of-type(2n) {
    margin-right: 1.5%;
}

.p-seminar__thumb {
    width: 100%;
    height: calc(100vw * (1 / 6.85));
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.p-seminar__thumb::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background: url(/commons/images/logo.png) no-repeat center center;
    background-size: 92px 34px;
    opacity: 0.3;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}

.p-seminar__thumb-img {
    width: 100%;
    height: 100%;
    background-repeat: none;
    background-position: center center;
    background-size: cover;
    position: relative;
    z-index: 2;
}

.p-seminar__bottom {
    padding-top: 10px;
    line-height: 1.4;
}

#past_seminar .p-seminar__date {
    align-items: center;
}

.p-seminar__date {
    display: flex;
    align-items: center;
}

.p-seminar__date::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
    color: #006a93;
    font-size: 14px;
}

.p-seminar__tag {
    display: inline-block;
    margin-left: 20px;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1;
    font-weight: bold;
}

.p-seminar__tag.recruiting {
    background-color: #155482;
    color: #fff;
}

.p-seminar__tag.end {
    background-color: #ccc;
}

.p-seminar__title {
    padding: 5px 0;
    font-weight: bold;
}

/* ページネーション/ 191113 */
.p-info__wrap > ul.page_nation,
div.wp-pagenavi {
    margin: 10px auto 20px auto;
    text-align: center;
}

.p-info__wrap > ul.page_nation li,
div.wp-pagenavi span,
div.wp-pagenavi a {
    display: inline;
    margin: 0 10px;
}

.p-info__wrap > ul.page_nation li a,
div.wp-pagenavi a {
    padding: 10px 15px;
    border: 1px solid #dddddd;
    text-decoration: none;
    background: #fff;
}

.p-info__wrap > ul.page_nation li span,
div.wp-pagenavi span {
    padding: 10px 15px;
    background: #000;
    border: 1px solid #000;
    color: #fff;
}

.p-info__wrap > ul.page_nation li a:hover,
div.wp-pagenavi a:hover {
}

/* 404ページ / 191128 */
.content_404 {
    width: 1280px;
    margin: 0 auto;
    padding: 80px 0;
}

.content_404 h1 {
    margin: 0 0 20px 0;
    font-size: 2rem;
}

.content_404 .text_404 {
    font-size: 40px;
    margin: 0 0 -10px 0;
}

.content_404 .text_small_404 {
    margin: 0 0 20px 0;
}

/* 200227 / 利用の流れ */
#bnr_seminer {
    position: absolute;
    top: 170px;
    right: 10px;
    z-index: 100;
}

#ni-academia-flow.container2 .flow_contents {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px 0 0 0;
}

#ni-academia-flow.container2 .flow_content {
    border: 1px solid #003443;
    border-radius: 50%;
    width: 250px;
    height: 250px;
    padding: 60px 30px;
    box-sizing: border-box;
}

#ni-academia-flow.container2 .flow_contents span {
    display: block;
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-left: 30px solid #003443;
    border-bottom: 20px solid transparent;
}

#ni-academia-flow.container2 .flow_content strong {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px solid #003443;
}

#ni-academia-flow.container2 strong.c-service-point__desc {
    padding: 30px 0 0px 0;
    text-align: left;
}

#ni-academia-flow.container2 ul {
    padding: 0 0 0 20px;
    list-style: disc;
}

#ni-academia-flow.container2 ol,
#ni-academia-terms ol {
    padding: 0 0 0 20px;
    list-style: decimal;
}

#ni-academia-flow.container2 li {
    margin: 5px 0;
}

#ni-academia-flow.container2 p,
#ni-academia-terms p {
    margin: 20px 0;
}

#ni-academia-terms table th,
#ni-academia-terms table {
    margin: 20px 0;
}

#ni-academia-terms table th,
#ni-academia-terms table td {
    border: 1px solid #003443;
    padding: 8px;
}

#ni-academia-terms table th {
    background: #003443;
    color: #fff;
    border-right: 1px solid #fff;
}

#ni-academia-terms table th:last-child {
    border-right: 1px solid #003443;
}

#ni-academia-terms dd p {
    margin: 0;
}

.ni-academia_button {
    position: relative;
    width: 60%;
    z-index: 2;
    background-color: #fff;
    margin: 10px auto 30px auto;
    padding: 20px 0;
    border: 2px solid #000080;
    color: #000080;
    line-height: 50px;
    overflow: hidden;
}

.ni-academia_button a {
    display: block;
    text-align: center;
    color: #000080;
}

.ni-academia_button a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

.ni-academia_button,
.ni-academia_button::before,
.ni-academia_button::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.ni-academia_button::before,
.ni-academia_button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.ni-academia_button::after {
    top: -100%;
    width: 100%;
    height: 100%;
}

.ni-academia_button:hover::after {
    top: 0;
    background-color: #000080;
}

.ni-academia_button:hover a {
    color: #fff;
}

.ni-academia_seminer_none {
    color: #555555;
    text-align: center;
    padding: 20px 0;
    max-width: 400px;
    margin: 50px auto 50px;
    font-weight: bold;
    border: 1px solid #ccc;
}

/* フレックス調整 / 200213 */
.justify-content-around {
    justify-content: space-around;
}

.mobile_image_full {
    display: block;
    width: auto;
    height: auto;
}

/* SDGsページ / 210118 */
.p-sdgs__icon-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 30px 60px;
}

.p-sdgs__icon-list .p-sdgs__icon-item {
    width: 140px;
    margin: 0 10px;
}

.p-sdgs__icon-list .p-sdgs__icon-item img {
    width: 100%;
    height: auto;
}

.p-sdgs__img img {
    display: block;
    width: 80%;
    height: auto;
    margin: 40px auto 0 auto;
}

.company_flex .col__md--4,
.company_flex .col__md--3 {
    margin: 0 0 20px 0;
}

.snip1445 h2.p-company-caption {
    margin: 90px 0 0 0;
}

.snip1445 h2.p-company-oher-caption {
    margin-top: 120px;
}

#bnr_sdgs {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 100;
    width: 300px;
}

#bnr_sdgs a,
#bnr_sdgs a img {
    display: block;
    width: 100%;
}

#bnr_sdgs a:hover {
    opacity: 0.7;
}

#bnr_sdgs_sp {
    width: 70%;
    margin: 0 auto;
    padding: 10px;
}

#bnr_sdgs_sp a,
#bnr_sdgs_sp a img {
    display: block;
    width: 100%;
}

/* 210622 / MAruketoフォーム */
.form_list div {
    text-align: center;
}

.form_list div h3. .form_list div p {
    text-align: left;
}

.form_list .button {
    width: 350px;
    margin: 20px auto;
}

.form_list .note {
    font-size: 14px;
}

.form_list .burron_flex {
    display: flex;
    justify-content: center;
    align-items: center;
}

.form_list .burron_flex .button {
    margin: 20px;
}

.form_list .burron_flex .tel a {
    font-size: 20px;
}

.form_list .burron_flex .tel a::before {
    content: "\f095";
    font-family: FontAwesome;
    padding-right: 9px;
}

.form_list .link_text a {
    text-decoration: underline;
}

.form_list .link_text a:hover {
    text-decoration: none;
}

.mktoForm {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    padding: 20px;
    max-width: 100%;
    box-sizing: border-box;
}

.mktoForm .mktoOffset,
.mktoForm .mktoClear {
    display: none;
}

.mktoForm .mktoFormRow {
    display: flex;
    width: 100%;
    border-bottom: solid 1px #cccccc;
    border-right: solid 1px #cccccc;
    border-left: solid 1px #cccccc;
}

.mktoForm .mktoFormRow:nth-child(2) {
    border-top: solid 1px #cccccc;
}

.mkto_privacy .mktoForm .mktoFormRow:nth-last-child(5) {
    position: absolute;
    left: 352px;
    bottom: 150px;
    width: calc(100% - 385px);
    z-index: 10;
}

.mktoForm .mktoFormRow:nth-child(6) .mktoFormCol {
    width: auto;
}

.mkto_seminer_entry .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol {
    width: auto;
}

.mkto_seminer_entry .mktoForm input[name="LastName"].mktoField,
.mkto_seminer_entry .mktoForm input[name="FirstName"].mktoField {
    margin: 10px 17px 40px 10px !important;
}

.mkto_seminer_entry .mktoForm .mktoFormRow:nth-child(5) {
    position: absolute;
    top: 195px;
    left: 352px;
    border: none;
}

#mktoForm_1113.mktoForm .mktoFormRow:nth-child(4) .mktoFormCol {
    width: auto;
}

.mktoForm .mktoFormCol {
    width: 100%;
}

.mktoForm .mktoFormCol.mktoFieldDescriptor {
    margin: 0 !important;
}

.mktoForm .mktoFieldWrap {
    display: flex;
    justify-content: flex-start;
    float: none !important;
    width: 100%;
}

.mktoForm label.mktoLabel {
    position: relative;
    width: 300px;
    padding: 10px;
    border-right: solid 1px #cccccc;
    background-color: #eeeeee;
    font-weight: normal !important;
    font-size: 16px;
}

.mktoForm label.mktoLabel#Lblpl_agree {
    padding: 10px 10px 235px 10px;
}

.mktoForm .mktoFieldWrap .mktoAsterix {
    position: absolute;
    right: 10px;
    top: 10px;
    float: inherit;
    display: block;
    background-color: #71b55b;
    padding: 1px 5px !important;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    border-radius: 3px;
    zoom: normal;
}

.mktoForm .mktoRequiredField .mktoAsterix {
    position: absolute;
    right: 10px;
    top: 10px;
    float: inherit;
    background-color: #c33;
    padding: 1px 5px !important;
    color: #fafafa;
    font-size: 13px;
    letter-spacing: 1px;
    border-radius: 3px;
    zoom: normal;
}

.mktoForm .mktoFormRow .mktoRequiredField strong {
    font-size: 16px;
    color: #555555;
    font-weight: normal;
    text-align: left;
    display: inline;
    padding: 0px;
}

.mktoForm .mktoFormRow .mktoRadioList,
.mktoForm .mktoFormRow .mktoCheckboxList {
    padding: 10px;
}

.mktoForm .mktoFormRow .mktoRadioList > input,
.mktoForm .mktoFormRow .mktoCheckboxList > input {
    margin: 3px 0 0 0;
}

.mktoForm input[type="text"],
.mktoForm input[type="url"],
.mktoForm input[type="email"],
.mktoForm input[type="tel"],
.mktoForm input[type="number"],
.mktoForm input[type="date"],
.mktoForm select.mktoField {
    width: 457px;
    margin: 10px !important;
    padding: 10px 3px !important;
    font-size: 13.333px;
    font-family: Arial;
}

.mktoForm textarea.mktoField {
    width: calc(90% - 342px);
    height: 250px;
    margin: 10px !important;
    padding: 10px 3px !important;
    font-size: 13.333px;
    font-family: Arial;
}

.mktoForm textarea.mktoField[name="Address"] {
    width: 457px;
    height: auto;
}

.mktoForm input[name="LastName"].mktoField,
.mktoForm input[name="FirstName"].mktoField {
    width: 215px;
    margin: 10px 17px 10px 10px !important;
}

.mktoForm .mktoFormRow .mktoCheckboxList {
    position: absolute;
    left: 325px;
    bottom: 0px;
}

.mktoForm input.mktoField.mktoInvalid,
.mktoForm textarea.mktoField.mktoInvalid,
.mktoForm select.mktoField.mktoInvalid,
.mktoForm .mktoLogicalField.mktoInvalid {
    border: 1px solid #aeb0b6 !important;
}

.mktoForm .mktoLogicalField.mktoInvalid.mktoCheckboxList {
    border: none !important;
}

.mktoForm #LblFirstName {
    display: none;
}

.mktoForm .mktoButtonRow {
    display: flex;
    width: 100%;
    text-align: center;
}

.mktoForm .mktoButtonRow span {
    margin: 20px auto 0 auto !important;
}

.mktoForm .mktoButtonRow .mktoButtonWrap.mktoButtonWrap .mktoButton {
    background: #2ea5cf;
    width: 320px;
    height: auto;
    padding: 15px 0;
    border: none;
    color: #ffffff;
    cursor: pointer;
    font-size: 18px;
}

.mktoForm .mktoButtonRow .mktoButtonWrap.mktoButtonWrap .mktoButton:hover {
    border: none;
}

.mktoForm .inlineframe span,
.mktoForm .inlineframe ul,
.mktoForm .inlineframe ol {
    font-size: 14px !important;
}

.mktoForm .inlineframe span strong,
.mktoForm .inlineframe span strong > span {
    font-size: 19px !important;
}

.mktoForm .inlineframe > span,
.mktoForm .inlineframe > ul,
.mktoForm .inlineframe > ol {
    display: block;
    width: calc(100% - 40px);
    margin: 0 auto;
}

/* フォーム修正 */
.form_table#cform table td.name {
    display: flex;
    flex-wrap: wrap;
    border-bottom: none;
}

.form_table#cform table td.name input {
    width: 215px;
    margin: 0 7px 0 5px;
}

.form_table#cform table td.name input[name="first_name"] {
    order: 1;
}

.form_table#cform table td.name input[name="last_name"] {
    order: 2;
}

.form_table#cform table td.name .error {
    order: 3;
    display: block;
    width: 100%;
}

#form .logbox ul {
    font-size: 16px;
    padding: 0 20px 0 40px;
    list-style: disc;
}

.button.center {
    display: block;
    margin: 0 auto;
}

.second .p-seminar .button.center {
    margin: 0 auto 40px auto;
}

.seminar-banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    max-width: 1180px;
    margin: 0 auto;
    margin: 60px auto 0 auto;
    gap: 20px;
}

.seminar-banner a {
    display: block;
    /* width: 40%; */
    width: calc((100% - 40px) / 3);
    max-width: 600px;
    transition: all 0.1s;
}

.seminar-banner_col3 a {
    width: 30%;
}

.seminar-banner a img {
    display: block;
    width: 100%;
    height: auto;
}

.seminar-banner a:hover img {
    opacity: 0.8;
    transition: all 0.1s;
}

/* 完了画面修正 */
#form.thanks_page p {
    margin: 0 0 20px 0;
    padding: 0;
}

/* 230405 / セミナーフォーム追加 */
.seminercontet {
    position: relative;
    align-items: flex-start;
    margin-bottom: 40px;
}

#seminerform,
#reportform {
    position: relative;
    padding-right: 0;
}

#seminerform h2,
#reportform h2 {
    font-size: 21px;
    font-weight: 900;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 20px;
}

#seminerform h2::after,
#reportform h2::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

#seminerform .note {
    font-size: 20px;
    color: #ff0000;
    line-height: 1.4;
    font-weight: bold;
}

#seminerform .mktoForm,
#reportform .mktoForm {
    padding: 0;
}

#seminerform .mktoForm .mktoFieldWrap,
#reportform .mktoForm .mktoFieldWrap {
    flex-wrap: wrap;
}

#seminerform .mktoForm .mktoGutter,
#reportform .mktoForm .mktoGutter {
    display: none;
}

#seminerform .mktoForm label.mktoLabel,
#reportform .mktoForm label.mktoLabel {
    width: 100%;
}

#seminerform .mktoForm input[type="text"],
#seminerform .mktoForm input[type="url"],
#seminerform .mktoForm input[type="email"],
#seminerform .mktoForm input[type="tel"],
#seminerform .mktoForm input[type="number"],
#seminerform .mktoForm input[type="date"],
#seminerform .mktoForm textarea.mktoField,
#seminerform .mktoForm select.mktoField,
#reportform .mktoForm input[type="text"],
#reportform .mktoForm input[type="url"],
#reportform .mktoForm input[type="email"],
#reportform .mktoForm input[type="tel"],
#reportform .mktoForm input[type="number"],
#reportform .mktoForm input[type="date"],
#reportform .mktoForm textarea.mktoField,
#reportform .mktoForm select.mktoField {
    width: 100%;
}

#seminerform .mktoForm input[type="checkbox"],
#reportform .mktoForm input[type="checkbox"] {
    margin: 4px 0 0 0;
}

#seminerform .mktoForm label.mktoLabel#Lblpl_agree,
#reportform .mktoForm label.mktoLabel#Lblpl_agree {
    padding: 10px;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4),
#reportform .mktoForm .mktoFormRow:nth-child(4) {
    position: relative;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol:first-child,
#reportform .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol:first-child {
    width: 100%;
}

#seminerform .mktoForm input[name="LastName"].mktoField,
#reportform .mktoForm input[name="LastName"].mktoField {
    width: 110px;
    margin: 10px !important;
}

#seminerform .mktoForm input[name="FirstName"].mktoField,
#reportform .mktoForm input[name="FirstName"].mktoField {
    width: 110px;
    margin: 0px !important;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4) input[name="LastName"].mktoField {
    margin: 10px 10px 5px 10px !important;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol:nth-child(2),
#reportform .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol:nth-child(2) {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 110px;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4) .mktoFormCol:nth-child(2) {
    bottom: 5px;
}

#seminerform .mktoForm .mktoFormRow:nth-child(4) {
    border-bottom: none;
}

#seminerform .mktoForm .mktoFormRow:nth-child(5) {
    padding: 0px 10px 10px 10px;
    font-size: 12px;
}

#seminerform .mktoForm .mktoFormRow:nth-last-child(5),
#reportform .mktoForm .mktoFormRow:nth-last-child(5) {
    left: 10px;
    bottom: 130px;
    width: calc(100% - 20px);
}

#seminerform .inlineframe,
#reportform .inlineframe {
    height: 150px;
}

#seminerform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > span,
#seminerform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > ul,
#seminerform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > ol,
#reportform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > span,
#reportform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > ul,
#reportform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe > ol {
    width: calc(100% - 20px);
}

#seminerform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe span strong,
#seminerform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe span strong > span,
#reportform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe span strong,
#reportform .mktoForm .mktoFormRow:nth-last-child(5) .inlineframe span strong > span {
    font-size: 16px !important;
}

#seminerform .mktoForm .mktoFormRow:nth-last-child(4) .mktoCheckboxList,
#reportform .mktoForm .mktoFormRow:nth-last-child(4) .mktoCheckboxList {
    padding: 180px 10px 10px 10px;
}

#seminerform .mktoForm .mktoFormRow .mktoCheckboxList,
#reportform .mktoForm .mktoFormRow .mktoCheckboxList {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    width: 100%;
    padding: 10px;
}

#seminerform .mktoForm .mktoButtonRow span,
#reportform .mktoForm .mktoButtonRow span {
    width: 100%;
}

#seminerform .mktoForm .mktoButtonWrap.mktoDownloadButton button.mktoButton,
#reportform .mktoForm .mktoButtonRow .mktoButtonWrap.mktoButtonWrap .mktoButton {
    background: #2ea5cf;
    width: 100%;
    height: auto;
    padding: 12px 0;
    border: none;
    color: #ffffff;
    cursor: pointer;
    font-size: 16px;
}

@media (max-width: 800px) {
    #bnr_seminer_sp {
        padding: 0 10px 10px 10px;
    }

    #bnr_seminer_sp img {
        width: 100%;
        height: auto;
    }

    #ni-academia-flow.container2 .flow_content {
        width: 90px;
        height: 90px;
        padding: 30px 10px;
    }

    #ni-academia-flow.container2 .flow_contents span {
        border-top: 8px solid transparent;
        border-left: 12px solid #003443;
        border-bottom: 8px solid transparent;
    }

    #ni-academia-flow.container2 .flow_content strong {
        font-size: 0.9rem;
        border: none;
        margin: 0;
        padding: 0;
    }

    #ni-academia-flow.container2 .flow_content p {
        display: none;
    }

    .ni-academia_seminer_none {
        margin: 25px 0;
    }
}

/* 用語集追加 / 201217 */
.glossary h3 {
    font-size: 21px;
    font-weight: 500;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
    margin-bottom: 30px;
}

.glossary h3::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

.glossary a {
    text-decoration: underline;
}

.glossary a:hover {
    text-decoration: none;
}

.glossary .center {
    text-align: center;
    margin: 0 auto;
}

.glossary .source {
    margin: 20px 0 0 0;
}

.glossary .contents_footer {
    padding-top: 30px;
    margin-top: 60px;
    margin-bottom: 10px;
    border-top: 1px solid #dddddd;
}

.glossary a.external_link::after {
    position: relative;
    content: "";
    display: inline-block;
    margin: 0 0 -3px 5px;
    width: 17px;
    height: 17px;
    background: url(https://www.n-info.co.jp/recruit/wp-content/uploads/2020/12/external_icon.png);
    background-size: contain;
    background-position: center;
}

#blogmain.glossary .glossary_list {
    padding: 50px 30px;
    padding-left: 60px;
}

#blogmain.glossary .glossary_list h2 {
    font-size: 24px;
    line-height: 150%;
    margin-bottom: 50px;
    text-align: center;
    color: #000;
}

#blogmain.glossary .glossary_list ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: -15px;
    margin-left: 0px;
}

#blogmain.glossary .glossary_list ul li {
    position: relative;
    padding: 0 0 0 15px;
    list-style: none;
    width: 32%;
    box-sizing: border-box;
    line-height: 150%;
    margin-top: 15px;
}

#blogmain.glossary .glossary_list ul li:not(:nth-child(3n)) {
    margin-right: 2%;
}

#blogmain.glossary .glossary_list ul li::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 12px;
    left: 0;
    width: 5px;
    height: 5px;
    background: #adadad;
    border-radius: 100%;
}

#blogmain.glossary h4 {
    font-size: 18px;
    font-weight: bold;
}

#blogmain.glossary p {
    margin-top: 20px;
}

#blogmain.glossary strong {
    font-weight: bold;
}

#blogmain.glossary ul,
#blogmain.glossary ol {
    margin-top: 20px;
    margin-left: 26px;
}

#blogmain.glossary ul li,
#blogmain.glossary ol li {
    margin-top: 10px;
}

#blogmain.glossary ul li p,
#blogmain.glossary ol li p {
    margin-top: 0px;
}

#blogmain.glossary ul li {
    list-style: disc;
}

#blogmain.glossary ol li {
    list-style: decimal;
}

#blogmain.glossary .table {
    width: 100%;
    overflow-x: auto;
}

#blogmain.glossary table {
    margin-top: 20px;
}

#blogmain.glossary table th,
#blogmain.glossary table td {
    margin-top: 20px;
    border: 1px solid #ccc;
    padding: 0.5em 1em;
    white-space: nowrap;
}

#blogmain.glossary table th {
    background-color: #eaeaea;
}

#blogmain.glossary .button {
    display: block;
    margin-top: 0;
}

.sp_br {
    display: none;
}

.report_tab {
    display: none;
}

/* 210824 / マルケトポップアップ表示 */
.maruketo_popup {
    position: fixed;
    top: 360px;
    right: 10px;
    z-index: 100;
}

.maruketo_popup a {
    display: block;
}

.maruketo_popup .maruketo_close {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -15px;
    right: -10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 18px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

/* 211109 / footerにsnsリンク追加 */
footer > .container {
    justify-content: space-between;
}

.footer_sns_link {
    margin: 10px 0 0 0;
}

.footer_sns_link li {
    width: auto;
    height: auto;
    margin: 0;
}

.footer_sns_link li a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0 0 20px 0;
    width: fit-content;
    overflow: hidden;
}

.footer_sns_link li a img {
    margin: 0 9px 0 0;
    width: 32px;
    height: auto;
}

/* 220204 / 料金表ページ作成 */
.price h2 {
    font-size: 26px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-weight: 500;
    margin-bottom: 30px;
    margin-top: 60px;
    padding: 0.25em 0.5em;
    color: #494949;
    border-left: solid 5px #2e98e5;
    font-weight: bold;
}

.price h3 {
    font-size: 26px;
    font-weight: bold;
    margin: 0 0 -40px 0;
    padding: 0 15px 0 15px;
}

.price .container2 {
    padding: 0 50px 50px;
}

.price > .flex > div {
    margin: 0 0 30px 0;
}

.price > .flex > div:last-child {
    margin: 0;
}

.price .price_list table,
#virtualshelf_price table,
.p-eyetracking__content table {
    border-collapse: collapse;
}

.price .price_list table th,
#virtualshelf_price table th,
.p-eyetracking__content table th {
    border: 1px solid #fff;
    padding: 7px 20px;
    background: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
}

.price .price_list table td,
#virtualshelf_price table td,
.p-eyetracking__content table td {
    border: 1px solid #fff;
    padding: 10px 20px;
    background: #fff;
    vertical-align: middle;
    font-weight: bold;
    line-height: 1.6;
}

.price .price_list table tr th:first-child {
    width: 25%;
}

.price .price_list table tr th:nth-child(2),
#virtualshelf_price table tr th:nth-child(2),
.p-eyetracking__content table tr th:nth-child(2) {
    min-width: 185px;
    width: 15%;
}

.price .price_list table tr th:last-child {
    width: 59%;
}

.price .price_list table td span {
    font-size: 12px;
}

.price .price_list table tr:nth-child(odd) td,
#virtualshelf_price table tr:nth-child(odd) td,
.p-eyetracking__content table tr:nth-child(odd) td {
    background: #f7f7f7;
}

.price .price_example > div {
    margin: 0 0 80px 0;
}

.price .price_example > div:last-child {
    margin: 0;
}

.price .price_example .price_content {
    margin: 60px 0 10px 0;
    padding: 0 15px;
    font-weight: bold;
    font-size: 18px;
}

.price .price_example .price_content span {
    font-size: 14px;
}

.price .price_example .price_total {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    border-top: 3px solid #0d3350;
    border-bottom: 3px solid #0d3350;
    margin: 0 0 20px 0;
    padding: 10px 15px;
    font-weight: bold;
    color: #2e98e5;
}

.price .price_example .price_total .price_total_first {
    font-size: 14px;
    line-height: 1.2;
}

.price .price_example .price_total .price_total_num {
    margin: 0 10px;
    font-size: 38px;
    line-height: 1;
}

.price .price_example .price_total .price_total_tax {
    font-size: 12px;
}

.price .price_example .price_content_table .title {
    padding: 7px 20px;
    background: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
}

.price .price_example .price_content_table > div {
    padding: 18px 20px;
    background: #f7f7f7;
}

.price .price_example .price_content_table > div ul {
    padding: 0 0 0 20px;
    list-style: disc;
}

.price .price_example .price_content_table > div li {
    font-size: 14px;
    line-height: 1.8;
    font-weight: bold;
    list-style: disc !important;
}

.price .price_example .price_content_table > div li span {
    font-size: 12px;
}

.price .price_example .flex {
    justify-content: space-between;
}

.price .price_example .flex > div {
    width: 48%;
}

.price .price_example .flex > div .price_content_table:nth-child(2) {
    margin: 20px 0 0 0;
}

.price .price_example .flex > div:nth-child(2) .price_content_table {
    height: calc((100% - 20px) / 2);
}

.price .price_example .flex > div:nth-child(2) .price_content_table div {
    box-sizing: border-box;
    height: calc(100% - 44px);
}

.price .price_example .button {
    display: block;
    margin: 30px auto 0 auto;
    width: 500px;
    height: 80px;
    border: 2px solid #2e98e5;
}

.price .price_example .button a {
    height: 80px;
    text-align: center;
    color: #fff;
    background: #2e98e5;
    font-size: 24px;
    line-height: 75px;
}

.price .price_example .button a:hover {
    background: #fff;
    color: #2e98e5;
}

/* 220707 / バーチャルシェリフ追加 */
.note {
    font-size: 14px;
}

a.underline {
    text-decoration: underline;
}

a.underline:hover {
    text-decoration: none;
}

.p-virtualshelf__about strong,
.p-virtualshelf__merit strong,
.p-virtualshelf__option strong,
.p-eyetracking__about strong,
.p-eyetracking__installation strong,
.p-eyetracking__service strong,
.p-eyetracking__point strong,
.p-eyetracking__comparison strong,
.p-eyetracking__content strong {
    display: inline;
    height: auto;
}

.p-virtualshelf__service .subcopy2 {
    display: flex;
    align-items: center;
}

.p-virtualshelf__service .subcopy2:nth-child(2)::before {
    content: "";
    display: block;
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2022/08/virtualshelf_service_icon_01.png)
        no-repeat center center;
    background-size: cover;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
}

.p-virtualshelf__service .subcopy2:nth-child(4)::before {
    content: "";
    display: block;
    background: url(https://www.n-info.co.jp/wp/wp-content/uploads/2022/08/virtualshelf_service_icon_02.png)
        no-repeat center center;
    background-size: cover;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
}

.p-virtualshelf__shelf h4 {
    font-size: 22px;
    font-weight: 700;
    color: #155482;
    padding-bottom: 0px;
    text-align: center;
}

#comparison .w25 {
    width: 25%;
}

#comparison .w33 {
    width: 33%;
}

#comparison tr th {
    border: 1px solid #fff;
    padding: 7px 20px;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}

#comparison tr td {
    position: relative;
    height: 110px;
    min-height: 110px;
    border: 1px solid #fff;
    padding: 10px 20px;
    background: #fff;
    vertical-align: middle;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
}

#comparison tr:nth-child(odd) td,
#comparison tr:nth-child(odd) th {
    background: #f7f7f7;
}

#comparison tr th:first-child {
    border: 1px solid #fff;
    padding: 7px 20px;
    background: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    vertical-align: middle;
}

#comparison tr:first-child th:first-child {
    background-color: transparent;
}

#comparison tr th:nth-child(2),
#comparison tr td:nth-child(2) {
    border-left: 2px solid #0d3350;
    border-right: 2px solid #0d3350;
    color: #0d3350;
}

#comparison tr:first-child th:nth-child(2) {
    border-top: 2px solid #0d3350;
}

#comparison tr:last-child td:nth-child(2) {
    border-bottom: 2px solid #0d3350;
}

#comparison .maru::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 110px;
    height: 110px;
    opacity: 0.3;
    background: url(/wp/wp-content/themes/skeleton/images/maru.png) no-repeat center center;
    background-size: cover;
}

#comparison .maru2::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 110px;
    height: 110px;
    opacity: 0.3;
    background: url(/wp/wp-content/themes/skeleton/images/maru2.png) no-repeat center center;
    background-size: cover;
}

#comparison .sankaku::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 110px;
    height: 110px;
    opacity: 0.3;
    background: url(/wp/wp-content/themes/skeleton/images/sankaku.png) no-repeat center center;
    background-size: cover;
}

#virtualshelf_price table tr th:first-child {
    width: 30%;
}

#virtualshelf_price table tr th:last-child {
    width: 49%;
}

#virtualshelf_price table tr:last-child td {
    font-size: 20px;
}

#virtualshelf_price table tr:last-child td:last-child {
    font-size: 14px;
}

#virtualshelf_price table td span {
    font-size: 16px;
}

#virtualshelf_price table tr :last-child td:nth-child(2) {
    font-size: 20px;
}

.text-right {
    text-align: right;
}

.img-center img {
    display: block;
    margin: 0 auto;
}

.font-red {
    color: #c00000;
}

.p-eyetracking__about h3 {
    padding: 10px 0;
    text-align: center;
    color: #fff;
}

.p-eyetracking__about .flex div:first-child h3 {
    background-color: #05215d;
}

.p-eyetracking__about .flex div:last-child h3 {
    background-color: #2a4e75;
}

.p-eyetracking__about .flex {
    margin: 20px auto;
}

.p-eyetracking__installation h3,
.p-eyetracking__comparison h3,
.p-eyetracking__content h3 {
    margin: 40px 0 20px 0;
}

.p-eyetracking__installation img {
    max-height: 400px;
}

.p-eyetracking__installation .flex p {
    text-align: center;
    font-weight: bold;
    font-size: 21px;
}

.p-eyetracking__service #comparison {
    width: 940px;
    margin: 20px 0 0 0;
}

.p-eyetracking__service #comparison table {
    width: 100%;
}

.p-eyetracking__service #comparison tr td {
    height: auto;
    min-height: 10px;
}

.p-eyetracking__service #comparison .flex {
    width: 940px;
}

.p-eyetracking__service #comparison .flex p {
    position: relative;
    width: 33.3%;
    margin: 30px 0 0 0;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}

.p-eyetracking__service #comparison .flex p::before {
    content: "";
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    border-top: 10px solid #ddd;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
}

.p-eyetracking__service #comparison .flex p:first-child:before {
    display: none;
}

.p-eyetracking__point .flex {
    align-items: center;
}

.p-eyetracking__point .flex div p {
    line-height: 1.4;
}

.p-eyetracking__point .flex div p .font-small {
    font-size: 13px;
}

.p-eyetracking__point .flex div:first-child,
.p-eyetracking__point .flex div:last-child {
    padding: 20px;
}

.p-eyetracking__point .flex div:first-child h3,
.p-eyetracking__point .flex div:last-child h3 {
    margin: 0 0 10px 0;
    text-align: center;
    font-weight: bold;
    font-size: 21px;
}

.p-eyetracking__point .flex div:first-child p,
.p-eyetracking__point .flex div:last-child p {
    text-align: center;
}

.p-eyetracking__point .flex div:first-child {
    background-color: #ddd;
    box-shadow: 0px 0px 6px rgb(0, 0, 0, 0.1);
}

.p-eyetracking__point .flex div:nth-child(2) {
    display: flex;
    justify-content: center;
    align-items: center;
}

.p-eyetracking__point .flex div:nth-child(2) p {
    font-weight: bold;
    font-size: 30px;
}

.p-eyetracking__point .flex div:last-child {
    background-color: #fff;
    box-shadow: 0px 0px 6px rgb(0, 0, 0, 0.1);
}

.p-eyetracking__comparison > .flex {
    flex-wrap: wrap;
}

.p-eyetracking__comparison > .flex .flex,
.p-eyetracking__comparison > .flex .arrow {
    width: 100%;
}

.p-eyetracking__comparison > .flex:last-child .flex img {
    max-height: 257px;
}

.p-eyetracking__comparison > .flex .arrow {
    margin: 0 0 20px 0;
}

.p-eyetracking__comparison > .flex .arrow li {
    position: relative;
    margin: 0 60px 0 0;
    padding: 15px 0;
    background-color: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}

.p-eyetracking__comparison > .flex .arrow li::after {
    content: "";
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    border-left: 20px solid #0d3350;
    border-top: 28px solid transparent;
    border-bottom: 28px solid transparent;
}

.p-eyetracking__comparison > .flex .images div:last-child {
    margin: 0 0 0 60px;
}

.p-eyetracking__comparison > .flex .images p {
    margin: 0 0 10px 0;
    line-height: 1.2;
}

.p-eyetracking__content h4 {
    text-align: center;
    font-size: 18px;
}

.p-eyetracking__content .title {
    margin: 0 0 20px 0;
    padding: 10px;
    color: #fff;
    background-color: #05215d;
    font-size: 18px;
    font-weight: bold;
}

.p-eyetracking__content .output > div {
    margin: 0 0 20px 0;
}

.p-eyetracking__content .arrow {
    margin: 0 0 20px 0;
}

.p-eyetracking__content .arrow p {
    width: 100%;
    margin: 0 0 10px 0;
    line-height: 1.4;
    text-align: center;
}

.p-eyetracking__content .arrow p:last-child {
    margin: 0;
}

.p-eyetracking__content .arrow > div {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 18%;
    margin: 0 20px 0 0;
    padding: 15px 10px 15px 40px;
    background-color: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    font-size: 16px;
}

.p-eyetracking__content .arrow > div::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    border-left: 40px solid #fff;
    border-top: 65px solid transparent;
    border-bottom: 65px solid transparent;
    z-index: 10;
}

.p-eyetracking__content .arrow > div::after {
    content: "";
    position: absolute;
    right: -40px;
    top: 50%;
    transform: translateY(-50%);
    border-left: 40px solid #0d3350;
    border-top: 65px solid transparent;
    border-bottom: 65px solid transparent;
    z-index: 11;
}

.p-eyetracking__content .price_text {
    font-size: 20px;
    font-weight: bold;
}

.p-eyetracking__content .price_text .num {
    font-size: 32px;
    color: #0d3350;
}

.p-eyetracking__content .price_note {
    margin: 20px 0 10px 0;
    font-size: 16px;
    font-weight: bold;
}

.p-eyetracking__content .price_note span {
    font-size: 14px;
    font-weight: normal;
}

/* パスワード保護ページ */
.container2 .maindetail {
    position: relative;
}

.container2 .maindetail .post_password_form {
    position: absolute;
    bottom: 0;
    left: 0;
}

.container2 .maindetail .post_password {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    margin: 10px 0 0 0;
}

.container2 .maindetail .post_password input[name="post_password"] {
    padding: 7px 3px;
    margin: 0 5px;
    border: solid 1px #999999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}

.container2 .maindetail .post_password input[name="Submit"] {
    display: block;
    text-align: center;
    text-decoration: none;
    position: relative;
    z-index: 2;
    margin: 0 0 0 10px;
    padding: 6px 20px;
    background-color: #fff;
    border: 2px solid #333;
    color: #333;
    overflow: hidden;
}

.container2 .maindetail .post_password input[name="Submit"]:hover {
    color: #fff;
    background-color: #333;
}

/* 221011 / 追従ボタン追加 */
.following_button {
    display: none;
    position: fixed;
    top: 150px;
    right: 0;
    z-index: 100;
    transition: all 0.6;
}

.following_button.fixed_button {
    display: block;
    transition: all 0.6;
}

.following_button.fixed_button.following_none {
    display: none;
}

.following_button img {
    width: auto;
    height: 50px;
    margin: 0 auto;
}

.following_button p {
    margin: 0 0 15px 0;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}

.following_button p a {
    position: relative;
    display: block;
    padding: 10px;
    font-weight: bold;
    font-size: 13px;
    color: #fff;
    text-align: center;
    line-height: 1.4;
}

.following_button p a:hover::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0.2;
}

.following_button p:first-child a {
    background-color: #0d3350;
}

.following_button p:nth-child(2) a {
    background-color: #006a93;
}

.following_button p:nth-child(3) a {
    background-color: #00a3d9;
}

.following_button p.niresearchacadaemy_fl_btn a {
    background-color: #d50000;
}

/* 230608 / セールス用注意分追加 */
.font_strong {
    margin: 10px 0;
    font-weight: bold;
    font-size: 17px;
}

/* 240419 / ランキング追加 */
#ranking {
    width: 100%;
    padding: 20px;
    margin: 0 0 50px 0;
    background-color: #ffffff;
    border: 1px solid #dddddd;
    box-sizing: border-box;
}

#ranking h4 {
    margin-bottom: 20px;
    margin-top: 20px;
    font-weight: bold;
    font-size: 18px;
}

#ranking .ranking-item a {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 15px 0;
}

#ranking .ranking-item a:hover {
    opacity: 0.7;
}

#ranking .ranking-item .p-seminar__thumb {
    width: 120px;
    height: 68px;
}

#ranking .ranking-item .p-seminar__bottom {
    width: 150px;
    padding: 0;
    font-size: 14px;
    font-weight: bold;
}

#ranking h3 {
    max-width: 1240px;
    margin: 0 auto 20px auto;
    font-size: 21px;
    font-weight: 500;
    position: relative;
    padding-bottom: 0.3em;
    color: #000000;
    border-bottom: 4px solid #dddddd;
}

#ranking h3::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 4px;
    background-color: #15578c;
}

#ranking .ranking-num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    margin: 0 5px 0 0;
    padding: 0;
    background: #f2f2f2;
    text-align: center;
    color: #000;
    font-weight: bold;
    font-size: 12px;
    box-sizing: border-box;
    line-height: 25px;
}

#ranking .ranking-num.num-01 {
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 10px 0 0 0;
    background: url(/wp/wp-content/themes/skeleton/images/crown_yellow.svg) no-repeat center center;
    background-size: contain;
    color: #000;
}

#ranking .ranking-num.num-02 {
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 10px 0 0 0;
    background: url(/wp/wp-content/themes/skeleton/images/crown_silver.svg) no-repeat center center;
    background-size: contain;
    color: #fff;
}

#ranking .ranking-num.num-03 {
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 10px 0 0 0;
    background: url(/wp/wp-content/themes/skeleton/images/crown_bronze.svg) no-repeat center center;
    background-size: contain;
    color: #fff;
}

#ranking .p-seminar__item {
    width: 95%;
}

/* 240419 / タグ追加 */
.report_top_flex,
.report_archive_flex {
    width: 1280px;
    max-width: 100%;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto;
}

.container2.p-seminar.report_top,
.container2.p-seminar.report_archive {
    max-width: 866px;
    width: 70%;
    margin: 0 0 50px 0;
}

.report-side {
    width: 28%;
}

.report-tag-list {
    width: 100%;
    padding: 20px;
    margin: 0 0 50px 0;
    background-color: #ffffff;
    border: 1px solid #dddddd;
    box-sizing: border-box;
}

.seminercontet .report-tag-list {
    width: 100%;
    margin-top: 30px;
}

.blogcontents .report-tag-list {
    width: 100%;
}

#blogmain .blogcontents {
    position: relative;
}

.report-tag-list h4 {
    margin-bottom: 20px;
    margin-top: 45px;
    font-weight: bold;
    font-size: 18px;
}

.blogcontents .report-tag-list h4,
.seminercontet .report-tag-list h4 {
    margin-top: 0px;
}

.cat-tags {
    display: flex;
    flex-wrap: wrap;
}

.cat-tags .cat-tag {
    margin: 0 10px 0 0;
}

.cat-tags .cat-tag a {
    display: inline-block;
    margin-top: 5px;
    padding: 0px 9px;
    border-radius: 5px;
    font-weight: bold;
    font-size: 14px;
    color: #000;
    line-height: 1.6;
    background-color: #f2f2f2;
}

.cat-tags .cat-tag a:hover {
    background-color: #000;
    color: #fff;
}

#semiman .cat-tags,
#info .cat-tags {
    margin-bottom: 20px;
}

#semiman .cat-tags .cat-tag a,
#info .cat-tags .cat-tag a {
    font-size: 21px;
}

/* 240604 / 役員紹介ページ追加 */
.leadership .flex {
    margin-bottom: 60px;
}

.leadership h3 {
    font-weight: bold;
}

.leadership .position {
    margin-left: 25px;
    font-size: 17px;
}

.button-outline {
    display: inline-block;
    text-align: center;
    position: relative;
    text-decoration: none;
    line-height: 54px;
    font-weight: 700;
    width: 130px;
    height: 40px;
    outline: none;
    margin-top: 10px;
    position: relative;
    z-index: 2;
    background-color: #fff;
    border: 2px solid #333;
    color: #333;
    line-height: 36px;
    overflow: hidden;
}

.button-outline::before,
.button-outline::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
}

.button-outline,
.button-outline::before,
.button-outline::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.button-outline:hover a {
    color: #fff;
}

.button-outline::after {
    top: -100%;
    width: 100%;
    height: 100%;
}

.button-outline:hover::after {
    top: 0;
    background-color: #333;
}

.button-outline a::before,
.relatedlink a::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

/* 240703 / ヒト試験サポートサービスページ追加 */
.box-content {
    margin-top: 20px;
    border: 1px solid #0d3350;
}

.box-content .box-title {
    margin-bottom: 20px;
    padding: 7px 0;
    background-color: #0d3350;
    color: #fff;
    font-weight: bold;
    font-size: 21px;
    text-align: center;
}

.box-content .box-text {
    margin: 30px 40px;
}

.box-content .box-text ul {
    margin-top: 10px;
    padding: 0 0 0 20px;
    list-style: disc;
}

/* 240717 / NIリサーチアカデミーティザーページ追加 */
.sp {
    display: none;
}

.niresearchacademy_teaser {
    background-color: #f5f5f5;
    overflow: hidden;
}

.niresearchacademy_teaser .marker {
    background: linear-gradient(transparent 75%, #81cde4 75%);
}

.niresearchacademy_teaser #mainimage {
    position: relative;
}

.niresearchacademy_teaser #mainimage .image {
    width: 100%;
    max-width: 2000px;
    height: 500px;
    margin: 0 auto;
    padding: 0 0 100px 0;
}

.niresearchacademy_teaser #mainimage .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.niresearchacademy_teaser #mainimage .text {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 500px;
    padding: 60px 40px;
    border: 1px solid #ccc;
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
    text-align: center;
    background-color: #fff;
}

.niresearchacademy_teaser #mainimage .text h1 {
    margin-bottom: 15px;
    font-size: 46px;
    text-align: center;
    font-weight: bold;
    line-height: 1;
    color: #000;
}

.niresearchacademy_teaser #mainimage .text p {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #000;
}

.niresearchacademy_teaser #read {
    padding: 100px 0;
}

.niresearchacademy_teaser #read h2 {
    position: relative;
    text-align: center;
    margin-bottom: 50px;
    font-family:
        "Noto Sans Japanese", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-size: 38px;
    line-height: 140%;
}

.niresearchacademy_teaser #read h2:before {
    position: absolute;
    bottom: -15px;
    left: calc(50% - 40px);
    width: 80px;
    height: 5px;
    content: "";
    border-radius: 1px;
    background: #0d3350;
}

.niresearchacademy_teaser #read .read-text {
    margin-bottom: 30px;
    font-size: 21px;
    font-weight: bold;
    text-align: center;
    color: #000;
}

.niresearchacademy_teaser #read .explanation {
    margin-bottom: 30px;
    font-size: 17px;
    text-align: center;
    font-weight: bold;
}

.niresearchacademy_teaser #read .slide {
    margin-bottom: 20px;
}

.niresearchacademy_teaser #read .slide .swiper-wrapper {
    transition-timing-function: linear;
}

.niresearchacademy_teaser #read .slide .swiper-slide {
    height: 14vw;
}

.niresearchacademy_teaser #read .slide .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.niresearchacademy_teaser #voice .flex {
    align-items: center;
}

.niresearchacademy_teaser #voice .flex .image img {
    width: 100%;
    height: auto;
}

.niresearchacademy_teaser #voice .flex .text p {
    font-size: 18px;
    font-weight: 700;
    color: #155482;
    line-height: 150%;
}

.niresearchacademy_teaser #voice .comment {
    margin: 15px auto 20px auto;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
}

.p-seminar .banner {
    margin: 20px auto;
}

.p-seminar .banner a {
    transition: all 0.3s;
}

.p-seminar .banner a:hover {
    opacity: 0.7;
    transition: all 0.3s;
}

.p-seminar .banner img {
    width: 100%;
    height: auto;
}

@media (min-width: 1380px) {
    .p-seminar__thumb {
        height: 208px;
    }

    .p-info__thumb {
        height: 204px;
    }
}

@media (max-width: 800px) {
    #blogmain.glossary .container2 {
        font-size: 15px;
    }

    #blogmain.glossary .glossary_list {
        padding: 20px;
    }

    #blogmain.glossary .glossary_list h2 {
        font-size: 18px;
        margin-bottom: 20px;
    }

    #blogmain.glossary .glossary_list ul {
        margin-top: -15px;
    }

    #blogmain.glossary .glossary_list ul li {
        width: 48%;
        font-size: 14px;
    }

    #blogmain.glossary .glossary_list ul li:first-child {
        margin-top: 15px;
    }

    #blogmain.glossary .glossary_list ul li:not(:nth-child(3n)) {
        margin-right: 0;
    }

    #blogmain.glossary .glossary_list ul li:not(:nth-child(2n)) {
        margin-right: 4%;
    }

    .glossary .contents_footer {
        margin-top: 40px;
        margin-bottom: 20px;
    }

    .mobile_image_full {
        width: 100%;
        height: auto;
    }

    /* SDGsページ / 210118 */
    .p-sdgs__icon-list {
        width: 95%;
        justify-content: space-between;
        margin: 0 auto;
        padding: 30px 0;
    }

    .p-sdgs__icon-list.justify-center {
        justify-content: center;
    }

    .p-sdgs__icon-list .p-sdgs__icon-item {
        width: 24%;
        margin: 0;
    }

    .p-sdgs__icon-list.justify-center .p-sdgs__icon-item {
        margin: 0 0.75%;
    }

    .p-sdgs__img img {
        width: 100%;
        margin: 20px auto 0 auto;
    }

    .snip1445 h2.p-company-oher-caption {
        margin-top: 100px;
    }

    .sp_br {
        display: block;
    }

    #seido2 .infobox h2 {
        line-height: 1.1;
    }

    .seminar-banner {
        margin: 40px auto 0 auto;
    }

    .seminar-banner a {
        width: 100%;
        max-width: 600px;
        margin: 0 0 10px 0;
    }

    .seminar-banner a:last-child {
        margin: 0;
    }

    .report_tab {
        display: flex;
        justify-content: flex-start;
    }

    .report_tab li {
        width: 100%;
        border-top: 1px solid #dddddd;
        border-left: 1px solid #dddddd;
        padding: 10px 5px;
        background: #fff;
        text-align: center;
    }

    .report_tab li:last-child {
        min-width: 142px;
        border-right: 1px solid #dddddd;
    }

    .report_tab li.active {
        background: #dddddd;
        color: #000;
    }

    #past_seminar,
    #column {
        display: none;
    }

    /* 221011 / 追従ボタン追加 */
    .following_button {
        display: flex;
        justify-content: space-around;
        width: 100%;
        top: auto;
        bottom: 5px;
        left: 0px;
        right: auto;
    }

    .following_button img {
        width: auto;
        height: 30px;
        margin: 0 0 5px 0;
    }

    .following_button p {
        width: 32%;
        margin: 0;
    }

    .following_button p a {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        box-sizing: border-box;
        padding: 7px 0;
        font-size: 11px;
        line-height: 1.2;
    }

    .following_button p a span {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }

    .scroll-back-to-top-wrapper.show {
        display: none;
    }

    .p-footer {
        padding: 0 0 75px 0;
    }

    /* 230608 / セールス用注意分追加 */
    .font_strong {
        font-weight: bold;
        font-size: 16px;
    }

    /* 240703 / ヒト試験サポートサービスページ追加 */
    .bgblue-title {
        font-size: 16px;
        border-radius: 10px;
    }

    .box-content .box-title {
        padding: 5px 0;
        font-size: 17px;
    }

    .box-content .box-text {
        margin: 20px;
    }

    .box-content .box-text ul li {
        font-size: 15px;
    }

    /* 240717 / NIリサーチアカデミーティザーページ追加 */
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .niresearchacademy_teaser #mainimage .image {
        height: 400px;
    }

    .niresearchacademy_teaser #mainimage .text {
        width: 85%;
        max-width: 400px;
        padding: 40px 20px;
        box-sizing: border-box;
    }

    .niresearchacademy_teaser #mainimage .text h1 {
        font-size: 28px;
    }

    .niresearchacademy_teaser #mainimage .text p {
        font-size: 16px;
    }

    .niresearchacademy_teaser #read {
        padding: 80px 0;
    }

    .niresearchacademy_teaser #read h2 {
        margin: 0 auto 50px auto;
        max-width: 95%;
        font-size: 24px;
    }

    .niresearchacademy_teaser #read .read-text {
        margin: 0 auto 30px auto;
        max-width: 95%;
        font-size: 16px;
    }

    .niresearchacademy_teaser #read .explanation {
        margin: 0 auto 30px auto;
        max-width: 95%;
        font-size: 14px;
    }

    .niresearchacademy_teaser #read .slide .swiper-slide {
        height: 29vw;
    }

    .niresearchacademy_teaser #voice .container2 {
        margin: 0 10px;
    }

    .niresearchacademy_teaser #voice .flex .image {
        width: 90%;
        max-width: 150px;
        margin: 20px auto 0 auto;
    }

    .niresearchacademy_teaser #voice .flex .text p {
        font-size: 14px;
    }

    .niresearchacademy_teaser #voice .comment {
        margin: 20px 0;
        font-size: 16px;
    }
}

/* 240920 fancybox用追加css */
a[data-fancybox] {
    display: block;
}

/* 240920 Wordpress配置設定 */
.aligncenter {
    display: block;
    margin: 0 auto;
}

.alignright {
    display: block;
    margin: 0 0 0 auto;
}

.alignleft {
    display: block;
    margin: 0 auto 0 0;
}

/* 240930 矢印アイコン */
span.arrow_icon::before {
    content: "\f04b";
    font-family: FontAwesome;
    padding-right: 9px;
}

/* 
20241121 データサイト改修
https://www.n-info.co.jp/recruit/data/
*/
#infog .grid.grid_3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 0 10px;
    width: 100%;
}

@media (max-width: 1200px) {
    #infog .grid.grid_3 {
        grid-template-columns: repeat(2, 1fr);
        grid-template-columns: repeat(1, 1fr);
        width: 100%;
        padding: 0;
    }
}

@media (max-width: 800px) {
    #infog .grid.grid_3 {
        grid-template-columns: repeat(1, 1fr);
        width: 100%;
    }
}

.griditem1 {
    grid-area: 1 / 1 / 3 / 4;
}

.griditem2 {
    grid-area: 1 / 3 / 2 / 4;
}

.griditem3 {
    grid-area: 2 / 3 / 3 / 4;
}

.griditem4 {
    grid-area: 2 / 2 / 3 / 3;
}

.griditem5 {
    grid-area: 2 / 3 / 3 / 4;
}

.griditem6 {
    grid-area: 2 / 2 / 3 / 3;
}

.griditem7 {
    grid-area: 2 / 1 / 3 / 2;
}

.griditem8 {
    grid-area: 1 / 1 / 2 / 2;
}

.griditem9 {
    grid-area: 1 / 2 / 2 / 3;
}

.griditem {
    border: 5px solid #00a3d9;
    padding: 30px;
}

@media (max-width: 1200px) {
    .griditem {
        padding: 20px 15px;
    }
}

.griditem .infobox {
    border: none;
    background: none;
    margin: 0;
}

.griditem h2 {
    color: #00a3d9;
    font-size: 29px;
    margin-bottom: 20px;
    margin-top: 0;
    line-height: 1.2;
}

.griditem .recruit_data {
    display: flex;
    align-items: center;
}

.griditem .recruit_data .data_text {
    width: 70%;
    flex-shrink: 0;
}

.griditem .recruit_data .data_text .data_value {
    font-size: 20px;
    margin: 0;
    line-height: 1.2;
}

.griditem .recruit_data .data_text .data_value span {
    font-size: 48px;
}

@media (max-width: 1200px) {
    .griditem .recruit_data .data_text .data_value span {
        font-size: 56px;
    }
}

.griditem .recruit_data .image {
    width: 30%;
    display: flex;
    align-items: end;
    justify-content: end;
}

.grid.grid02 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 15px;
    grid-template-rows: 250px auto;
    margin-top: 40px;
    width: 100%;
    padding: 0 10px;
}

@media (max-width: 1200px) {
    .grid.grid02 {
        padding: 0;
    }
}

.grid02 .griditem01 {
    grid-column: span 2 / span 2;
}

.grid02 .griditem02 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
}

.grid02 .griditem03 {
    grid-column: span 2 / span 2;
    grid-column-start: 5;
}

.grid02 .griditem04 {
    grid-column: span 3 / span 3;
    grid-row-start: 2;
}

.grid02 .griditem05 {
    grid-column: span 3 / span 3;
    grid-column-start: 4;
    grid-row-start: 2;
}

@media (max-width: 1200px) {
    .grid.grid02 {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        grid-template-rows: auto;
        gap: 15px;
    }

    .grid02 .griditem01 {
        grid-column: span 6 / span 6;
    }

    .grid02 .griditem02 {
        grid-column: span 6 / span 6;
        grid-row-start: 2;
    }

    .grid02 .griditem03 {
        grid-column: span 6 / span 6;
        grid-row-start: 3;
    }

    .grid02 .griditem04 {
        grid-column: span 6 / span 6;
        grid-row-start: 4;
    }

    .grid02 .griditem05 {
        grid-column: span 6 / span 6;
        grid-row-start: 5;
    }

    .grid02 .griditem04 .recruit_data,
    .grid02 .griditem05 .recruit_data {
        display: block;
    }

    .grid02 .griditem04 .recruit_data .data_text,
    .grid02 .griditem05 .recruit_data .data_text {
        width: 100%;
    }

    .grid02 .griditem04 .recruit_data .image,
    .grid02 .griditem05 .recruit_data .image {
        width: 100%;
        justify-content: center;
    }

    .grid02 .griditem04 .recruit_data .image img,
    .grid02 .griditem05 .recruit_data .image img {
        width: 40% !important;
    }

    .grid02 .griditem04 .data_value span,
    .grid02 .griditem05 .data_value span {
        font-size: 28px !important;
    }

    .grid02 .griditem04 .recruit_data .data_text .data_value,
    .grid02 .griditem05 .recruit_data .data_text .data_value {
        font-size: 19px;
    }
}

.grid02 .griditem04 .recruit_data .data_text .data_value span,
.grid02 .griditem05 .recruit_data .data_text .data_value span {
    margin: 0 0 0 10px;
}

#rec h4 {
    text-align: center;
    display: block;
    margin: auto;
    font-size: 22px !important;
    margin-top: 80px !important;
    color: #000;
    text-align: center;
}

#rec h4 span {
    display: block;
    font-size: 16px;
    margin-top: 10px;
    text-align: center;
}

#infog {
    margin-top: 40px;
}

.marker_yellow2 {
    background: linear-gradient(transparent 70%, #ffff66 0%);
}

/* グリッドレイアウト03 */
.grid03 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 15px 15px;
    grid-auto-flow: row;
    grid-template-areas:
        "gliditem01 gliditem01 gliditem01 gliditem01 griditem02 griditem02"
        "gliditem01 gliditem01 gliditem01 gliditem01 griditem03 griditem03";
}

.grid03 .gliditem01 {
    grid-area: gliditem01;
}

.grid03 .griditem02 {
    grid-area: griditem02;
}

.grid03 .griditem03 {
    grid-area: griditem03;
}

#infog .grid br {
    display: block;
}

#infog .grid br.sp {
    display: none;
}

@media (max-width: 800px) {
    #infog .grid br.sp {
        display: block;
    }
}

/* 20241107 NIリサーチアカデミー　アーカイブページ　 */
.niresearchacademy_category_header_pc {
    background: url(../../uploads/2024/11/niresearchacademy_mainimage_pc.jpg) no-repeat top center /
        cover;
}

.niresearchacademy_category_header_sp {
    background: url(../../uploads/2024/11/niresearchacademy_mainimage_sp.jpg) no-repeat top center /
        cover;
}

.niresearchacademy_content .niresearchacademy_movie {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.niresearchacademy_content .niresearchacademy_movie iframe {
    width: 100%;
    height: 100%;
}

.niresearchacademy_content .cat-tags .cat-tag {
    display: inline-block;
    margin-top: 5px;
    padding: 0px 9px;
    border-radius: 5px;
    font-weight: bold;
    font-size: 14px;
    color: #000;
    line-height: 1.6;
    background-color: #f2f2f2;
}

#semiman .niresearchacademy_passward_text {
    padding-bottom: 20px;
}

.niresearchacademy_category_readtext {
    margin-bottom: 40px;
}

.niresearchacademy_category_list .p-seminar__item {
    margin-right: 2%;
    margin-bottom: 4%;
    border: 1px solid #ddd;
}

.niresearchacademy_category_list .p-seminar__item a:hover {
    opacity: 0.8;
}

.niresearchacademy_category_list .p-seminar__item .p-seminar__text {
    padding: 10px 20px 20px 20px;
}

.niresearchacademy_category_list .p-seminar__item:nth-of-type(3n) {
    margin-right: 0;
}

.niresearchacademy_category_list .p-seminar__thumb::after {
    content: "";
    background-color: #000;
    background: url("../../uploads/2024/11/icon_reproduction.png") no-repeat center / contain;
    max-width: 70px;
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    z-index: 9;
}

#about-reserchacademy {
    background: url(../../uploads/2024/11/about-reserchacademy_bgpc.jpg) no-repeat top center;
    padding: 80px;
    height: 250px;
    background-size: cover;
}

#about-reserchacademy h2,
#about-reserchacademy h2 span {
    color: #ffffff;
    display: block;
    text-align: left;
}

#about-reserchacademy .copytext {
    display: block;
    width: 100%;
    margin-top: 20px;
    font-size: 18px;
    color: #fff;
}

.niresearchacademy_content .wp-pagenavi {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.niresearchacademy_content .wp-pagenavi .single_bottom_nav_next a:before {
    content: none !important;
}

.niresearchacademy_content .wp-pagenavi .single_bottom_nav_next a:after {
    content: "\f02b";
    font-family: FontAwesome;
    margin: 10px;
    position: relative;
    top: 0;
}

.niresearchacademy_content .wp-pagenavi .single_bottom_nav_prev,
.niresearchacademy_content .wp-pagenavi .single_bottom_nav_next {
    width: 140px;
}

@media (max-width: 800px) {
    #about-reserchacademy {
        background: url(../../uploads/2024/11/about-reserchacademy_bgpc.jpg) no-repeat top center;
        padding: 20px 0;
        height: 300px;
        background-size: cover;
        display: flex;
        align-items: center;
    }

    .niresearchacademy_category_list .p-seminar__thumb:before {
        width: 50px;
        height: 50px;
    }

    .niresearchacademy_category_list .p-seminar__item {
        margin-bottom: 40px;
    }

    .niresearchacademy_content .wp-pagenavi p a {
        margin: 0;
        display: block;
        padding: 10px 5px;
    }

    .niresearchacademy_content .wp-pagenavi .single_bottom_nav_back a {
        padding: 10px 10px;
    }

    .niresearchacademy_content .wp-pagenavi .single_bottom_nav_prev,
    .niresearchacademy_content .wp-pagenavi .single_bottom_nav_next {
        width: 80px;
    }

    .niresearchacademy_content {
        padding-top: 40px;
    }
}

/* 20250321_セミナー&自主調査サイドバーフォーム調整 */
#seminerform .sidebar_note,
#reportform .sidebar_note {
    margin-top: 20px;
}

#seminerform .sidebar_note p,
#reportform .sidebar_note p {
    font-size: 15px;
}

/* 20250411_調査レポートテーマ募集追加 */
/* https://www-n-info-co-jp/report/00000001/ */
.blogcontents .report-ctn-link {
    margin-top: 30px;
}

.blogcontents .report-ctn-link h4 {
    margin: 0 auto 20px;
    font-weight: bold;
    font-size: 18px;
}

.blogcontents .report-ctn-link .text-red {
    color: #c33;
}

/* 20250416_調査レポートテーマ募集追加 */
/* https://www-n-info-co-jp/report_top/ */
/* https://www-n-info-co-jp/report/seminar_report/ */
.report-side .report-ctn-link {
    padding: 20px;
}

.report-side .report-ctn-link h4 {
    margin: 20px auto 20px;
    font-weight: bold;
    font-size: 18px;
}

.report-side .report-ctn-link .text-red {
    color: #c33;
}

/* 20250711_フォーム修正 */
/* https://www.n-info.co.jp/seminar_entry_20250730 */
.slug-seminar-entry-20250730 .mkto_seminer_entry .mktoForm .mktoFormRow:nth-child(7) {
    position: absolute;
    top: 284px;
    left: 352px;
    border: none;
}

.slug-seminar-entry-20250730 .mkto_seminer_entry .mktoForm input[name="Email"].mktoField {
    margin: 10px 17px 40px 10px !important;
}

/* 20250711_フォーム修正 */
/* https://www.n-info.co.jp/seminar_entry_20250820 */
.slug-seminar-entry-20250820 .mkto_seminer_entry .mktoForm .mktoFormRow:nth-child(7) {
    position: absolute;
    top: 284px;
    left: 352px;
    border: none;
}

.slug-seminar-entry-20250820 .mkto_seminer_entry .mktoForm input[name="Email"].mktoField {
    margin: 10px 17px 40px 10px !important;
}

/* 20250808_フォーム修正 */
/* https://www.n-info.co.jp/seminar_entry_20250820arc */
.slug-seminar-entry-20250820arc .mkto_seminer_entry .mktoForm .mktoFormRow:nth-child(7) {
    position: absolute;
    top: 284px;
    left: 352px;
    border: none;
}

.slug-seminar-entry-20250820arc .mkto_seminer_entry .mktoForm input[name="Email"].mktoField {
    margin: 10px 17px 40px 10px !important;
}

/* 202509追加_自主調査ページ　Marketoフォーム修正 */
#reportform .mktoForm .mktoFormRow:nth-of-type(7) {
    position: absolute;
    top: 698px;
    left: 10px;
    box-sizing: border-box;
    z-index: 2;
    width: calc(100% - 20px);
    padding-top: 10px;
    border: none;
}

#reportform .mktoForm .mktoFormRow:nth-of-type(8) .mktoCheckboxList {
    padding: 175px 10px 10px 10px;
}

/* 202510追加_採用ページ */
#rec #seido h4 {
    font-size: 18px !important;
    font-weight: 900;
    margin-bottom: 7px;
    margin-top: 14px !important;
    color: #555555;
}
.add-footer-link {
    display: flex;
    gap: 16px;
    margin-top: 8px;
}
.add-footer-link li {
    width: revert;
    height: revert;
    margin: revert;
}
.add-footer-link li a {
    font-size: 15px;
    transition: opacity ease 0.3s;
}
.add-footer-link li a:hover {
    opacity: 0.6;
}

#localnavi {
    position: fixed;
    z-index: 870;
    right: 0;
    top: clamp(56px, 14.97vw, 59.4790286976px) !important ;
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    #localnavi {
        top: clamp(59.4790286976px, 7.74vw, 61.7395143488px) !important ;
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    #localnavi {
        top: clamp(61.7395143488px, 6.03vw, 64px) !important ;
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    #localnavi {
        top: 64px !important ;
    }
}
@media screen and (min-width: 1180px) {
    #localnavi {
        top: 120px !important ;
    }
}

.l-header {
    box-sizing: border-box;
}
.l-header input {
    display: none;
}
.l-header input:checked ~ .l-header__nav {
    left: 0 !important ;
}
.l-header input:checked ~ .l-header__bar .l-header__menu-icon {
    background-color: transparent;
    transform: rotate(180deg);
}
.l-header input:checked ~ .l-header__bar .l-header__menu-icon::before {
    top: 0;
    transform: rotate(45deg);
}
.l-header input:checked ~ .l-header__bar .l-header__menu-icon::after {
    bottom: 0;
    transform: rotate(-45deg);
}
.l-header__category-title {
    color: #000000 !important ;
}
@media screen and (max-width: 1179px) {
    .l-header {
        position: relative;
    }
    .l-header__bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 900;
        width: 100%;
        padding-left: 8px;
        background: rgb(255, 255, 255);
        box-shadow: 0 -12px 20px rgb(149, 170, 194);
    }
    .l-header__bar,
    .l-header-space-box {
        height: clamp(56px, 14.97vw, 59.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__bar,
    .l-header-space-box {
        height: clamp(59.4790286976px, 7.74vw, 61.7395143488px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__bar,
    .l-header-space-box {
        height: clamp(61.7395143488px, 6.03vw, 64px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__bar,
    .l-header-space-box {
        height: 64px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__logo {
        height: 70%;
    }
    .l-header__logo img {
        height: 100%;
    }
    .l-header__menu-button {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        aspect-ratio: 1/1;
        background: linear-gradient(90deg, rgb(32, 33, 34), rgb(69, 71, 73));
    }
    .l-header__menu-icon {
        position: relative;
        display: block;
        width: 40%;
        height: 1px;
        background-color: rgb(255, 255, 255);
        transition:
            background-color ease 0.4s,
            transform ease 0.6s;
    }
    .l-header__menu-icon::before,
    .l-header__menu-icon::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 100%;
        height: inherit;
        background-color: rgb(255, 255, 255);
        transition:
            top ease 0.4s,
            bottom ease 0.4s,
            transform ease 0.4s;
    }
    .l-header__menu-icon::before {
        top: -8px;
    }
    .l-header__menu-icon::after {
        bottom: -8px;
    }
    .l-header.active .l-header__menu-icon {
        background-color: transparent;
        transform: rotate(180deg);
    }
    .l-header.active .l-header__menu-icon::before {
        top: 0;
        transform: rotate(45deg);
    }
    .l-header.active .l-header__menu-icon::after {
        bottom: 0;
        transform: rotate(-45deg);
    }
    .l-header__nav {
        position: fixed;
        top: 0;
        left: 100%;
        z-index: 890;
        width: 100%;
        height: 100dvh;
        padding: min(6.6%, 48px);
        background-color: rgb(255, 255, 255);
        transition: left ease 0.6s;
        overflow: scroll;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    .l-header__nav::-webkit-scrollbar {
        display: none;
    }
    .l-header__nav {
        box-sizing: border-box;
        padding-top: clamp(80px, 21.39vw, 90.4370860927px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__nav {
        padding-top: clamp(90.4370860927px, 11.78vw, 97.2185430464px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__nav {
        padding-top: clamp(97.2185430464px, 9.49vw, 104px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__nav {
        padding-top: 104px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__nav {
        padding-bottom: clamp(64px, 17.11vw, 77.9161147903px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__nav {
        padding-bottom: clamp(77.9161147903px, 10.15vw, 86.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__nav {
        padding-bottom: clamp(86.9580573951px, 8.49vw, 96px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__nav {
        padding-bottom: 96px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header.active .l-header__nav {
        left: 0;
    }
    .l-header__category-title {
        position: relative;
        display: flex;
        align-items: center;
        border-top: rgb(130, 144, 160) solid 1px;
        font-weight: 600;
    }
    .l-header__category-title {
        font-size: clamp(16px, 4.28vw, 16.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__category-title {
        font-size: clamp(16.8697571744px, 2.2vw, 17.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__category-title {
        font-size: clamp(17.4348785872px, 1.7vw, 18px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__category-title {
        font-size: 18px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__category-title {
        height: clamp(40px, 10.7vw, 46.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__category-title {
        height: clamp(46.9580573951px, 6.11vw, 51.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__category-title {
        height: clamp(51.4790286976px, 5.03vw, 56px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__category-title {
        height: 56px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__category-title::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.3em;
        height: 1.3em;
        background-size: auto 60%;
        background-position: 80% center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_angle_black.svg);
        right: 0;
    }
    .l-header__category-title--accordion::before {
        background: revert;
        width: 0.8em;
        height: 2px;
        right: 0;
        background-color: rgb(32, 33, 34);
        transition: transform ease 0.4s;
    }
    .l-header__category-title--accordion::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        margin: auto 0;
        width: 0.8em;
        height: 2px;
        transform: rotate(-90deg);
        background-color: rgb(32, 33, 34);
        transition: transform ease 0.4s;
    }
    .l-header__category-title--accordion.active::before {
        transform: rotate(180deg);
    }
    .l-header__category-title--accordion.active::after {
        transform: rotate(0);
    }
    .l-header__category-item:last-child {
        border-bottom: rgb(130, 144, 160) solid 1px;
    }
    .l-header__content-list {
        max-height: 0;
        overflow: hidden;
        transition: max-height ease 0.4s;
    }
    .l-header__content-link {
        position: relative;
        display: flex;
        align-items: center;
        padding-left: 16px;
        border-top: rgb(130, 144, 160) solid 1px;
        background-color: rgb(246, 246, 246);
    }
    .l-header__content-link {
        font-size: clamp(14px, 3.74vw, 14.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__content-link {
        font-size: clamp(14.8697571744px, 1.94vw, 15.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__content-link {
        font-size: clamp(15.4348785872px, 1.51vw, 16px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__content-link {
        font-size: 16px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__content-link {
        height: clamp(40px, 10.7vw, 46.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__content-link {
        height: clamp(46.9580573951px, 6.11vw, 51.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__content-link {
        height: clamp(51.4790286976px, 5.03vw, 56px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__content-link {
        height: 56px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__content-link::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.3em;
        height: 1.3em;
        background-size: auto 60%;
        background-position: 80% center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_angle_black.svg);
    }
    .l-header__service-list {
        padding-top: clamp(8px, 2.14vw, 11.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-list {
        padding-top: clamp(11.4790286976px, 1.49vw, 13.7395143488px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-list {
        padding-top: clamp(13.7395143488px, 1.34vw, 16px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-list {
        padding-top: 16px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-list {
        padding-bottom: clamp(24px, 6.42vw, 30.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-list {
        padding-bottom: clamp(30.9580573951px, 4.03vw, 35.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-list {
        padding-bottom: clamp(35.4790286976px, 3.46vw, 40px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-list {
        padding-bottom: 40px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-title--beginner::before {
        background-color: unset;
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.3em;
        height: 1.3em;
        background-size: auto 60%;
        background-position: 80% center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_angle_white.svg);
    }
    .l-header__service-title--beginner::after {
        display: none;
    }
    .l-header__service-overview {
        line-height: 150%;
        margin-bottom: 1em;
    }
    .l-header__service-overview {
        font-size: clamp(14px, 3.74vw, 14.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-overview {
        font-size: clamp(14.8697571744px, 1.94vw, 15.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-overview {
        font-size: clamp(15.4348785872px, 1.51vw, 16px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-overview {
        font-size: 16px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-heading {
        display: flex;
        color: rgb(255, 255, 255);
        background-color: rgb(32, 33, 34);
        padding: 0.3em 16px;
        width: 100%;
    }
    .l-header__service-heading {
        font-size: clamp(14px, 3.74vw, 14.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-heading {
        font-size: clamp(14.8697571744px, 1.94vw, 15.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-heading {
        font-size: clamp(15.4348785872px, 1.51vw, 16px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-heading {
        font-size: 16px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-link {
        position: relative;
        display: flex;
        align-items: center;
        padding-left: 2.2em;
        text-decoration: underline;
    }
    .l-header__service-link {
        font-size: clamp(12px, 3.21vw, 12.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-link {
        font-size: clamp(12.8697571744px, 1.68vw, 13.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-link {
        font-size: clamp(13.4348785872px, 1.31vw, 14px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-link {
        font-size: 14px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-link {
        height: clamp(32px, 8.56vw, 38.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-link {
        height: clamp(38.9580573951px, 5.07vw, 43.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-link {
        height: clamp(43.4790286976px, 4.25vw, 48px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-link {
        height: 48px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-link::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.3em;
        height: 1.3em;
        background-size: auto 60%;
        background-position: 80% center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_angle_white.svg);
        right: unset;
        left: 0.5em;
        border-radius: 99em;
        background-position: 60% 55%;
        background-color: rgb(32, 33, 34);
    }
    .l-header__service-details {
        position: relative;
        display: inline-flex;
        align-items: center;
        padding: 0.5em 3em 0.5em 1em;
        margin-bottom: 2em;
        border: solid 1px rgb(32, 33, 34);
    }
    .l-header__service-details {
        font-size: clamp(14px, 3.74vw, 14.8697571744px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-details {
        font-size: clamp(14.8697571744px, 1.94vw, 15.4348785872px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-details {
        font-size: clamp(15.4348785872px, 1.51vw, 16px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-details {
        font-size: 16px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-details {
        min-height: clamp(40px, 10.7vw, 46.9580573951px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 768px) {
    .l-header__service-details {
        min-height: clamp(46.9580573951px, 6.11vw, 51.4790286976px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1024px) {
    .l-header__service-details {
        min-height: clamp(51.4790286976px, 5.03vw, 56px);
    }
}
@media screen and (max-width: 1179px) and (min-width: 1180px) {
    .l-header__service-details {
        min-height: 56px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__service-details::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.8em;
        height: 1.8em;
        background-size: 50%;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_arrow_white.svg);
        background-color: rgb(32, 33, 34);
        border-radius: 99em;
    }
    .l-header__service-details--question {
        padding: 0.5em 1em 0.5em 3em;
    }
    .l-header__service-details--question::before {
        content: "?";
        right: unset;
        left: 0.5em;
        background-image: none;
        display: flex;
        align-items: center;
        justify-content: center;
        color: rgb(255, 255, 255);
        font-size: 1em;
    }
    .l-header__sub-nav {
        display: flex;
        flex-direction: column;
        row-gap: 1em;
        margin-top: 2em;
    }
    .l-header__sub-nav-link {
        position: relative;
        display: flex;
        align-items: center;
        height: 24px;
        color: rgb(32, 33, 34);
        font-size: 16px;
        padding: 0em 1em 0em 2em;
        text-decoration: underline;
    }
}
@media screen and (max-width: 1179px) and (max-width: 1179px) {
    .l-header__sub-nav-link {
        display: inline-block;
        line-height: 24px;
    }
}
@media screen and (max-width: 1179px) {
    .l-header__sub-nav-link::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.8em;
        height: 1.8em;
        background-size: 50%;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_arrow_white.svg);
        background-color: rgb(32, 33, 34);
        border-radius: 99em;
        width: 1.5em;
        height: 1.5em;
        left: 0;
    }
}
.l-header__sub-nav-link--outlink {
    padding-right: 1.2em;
}
.l-header__sub-nav-link--outlink::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0.2em;
    width: 0.8em;
    height: 0.8em;
    background: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_outlink_black.svg)
        center/100% no-repeat;
}
@media screen and (min-width: 1180px) {
    .l-header__sub-nav-link--spnav-outlink {
        padding-right: 1em;
    }
}
.l-header__sub-nav-link--spnav-outlink::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0.2em;
    width: 0.8em;
    height: 0.8em;
    background: url(../icons/icon_outlink_black.svg) center/100% no-repeat;
}

@media screen and (min-width: 1180px) {
    .l-header-space-box {
        height: 120px;
    }
    .l-header {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 900;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        width: 100%;
        height: 120px;
        padding: 16px 48px 0 48px;
        background: rgb(255, 255, 255);
        box-shadow: 0 -12px 20px rgb(149, 170, 194);
    }
    .l-header__logo {
        display: flex;
        align-items: center;
        width: 166px;
        height: 64px;
        font-size: 12px;
    }
    .l-header__logo img {
        width: 100%;
    }
    .l-header__menu-button {
        display: none;
    }
    .l-header__nav {
        height: 100%;
    }
    .l-header__nav-inner {
        display: flex;
        justify-content: flex-end;
        flex-direction: column-reverse;
        row-gap: 16px;
        height: inherit;
    }
    .l-header__category-list {
        display: flex;
        justify-content: flex-end;
        height: 100%;
    }
    .l-header__category-item {
        position: relative;
        cursor: pointer;
        box-sizing: border-box;
    }
    .l-header__category-item:not(:first-child):not(:last-child) {
        margin-left: 16px;
    }
    .l-header__category-item::before {
        content: "";
        position: absolute;
        bottom: 24px;
        left: 0;
        width: 0%;
        height: 1px;
        background-color: rgb(69, 71, 73);
        transition: width ease 0.4s;
    }
}
@media screen and (min-width: 1180px) and (hover: hover) and (pointer: fine) {
    .l-header__category-item:hover::before,
    .l-header__category-item:focus::before {
        width: 100%;
    }
}
@media screen and (min-width: 1180px) {
    .l-header__category-item--cta {
        transition: transform ease 0.4s;
    }
    .l-header__category-item--cta::before {
        display: none;
    }
}
@media screen and (min-width: 1180px) and (hover: hover) and (pointer: fine) {
    .l-header__category-item--cta:hover,
    .l-header__category-item--cta:focus {
        transform: scale(0.96);
    }
    .l-header__category-item--cta:hover .l-header__category-title--contact::after,
    .l-header__category-item--cta:focus .l-header__category-title--contact::after {
        transform: translateX(-50%);
    }
}
@media screen and (min-width: 1180px) {
    .l-header__category-title {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        height: 48px;
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
    }
    .l-header__category-title--accordion {
        padding-right: 1.2em;
    }
    .l-header__category-title--accordion::before,
    .l-header__category-title--accordion::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        margin: auto 0;
        width: 0.8em;
        height: 2px;
        background-color: rgb(32, 33, 34);
        transition: transform ease 0.4s;
    }
    .l-header__category-title--accordion::after {
        transform: rotate(90deg);
    }
    .l-header__category-title--whitepaper,
    .l-header__category-title--contact {
        display: flex;
        align-items: center;
        width: 140px;
        color: rgb(255, 255, 255);
        font-weight: 500;
        padding: 0 16px;
        letter-spacing: 0.05em;
        font-size: 12px;
        overflow: hidden;
        color: #ffffff !important ;
        box-sizing: border-box;
    }
    .l-header__category-title--whitepaper::before,
    .l-header__category-title--contact::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.8em;
        height: 1.8em;
        background-size: 50%;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_arrow_white.svg);
    }
    .l-header__category-title--whitepaper {
        background: linear-gradient(90deg, rgb(32, 33, 34), rgb(69, 71, 73));
    }
    .l-header__category-title--contact {
        position: relative;
        z-index: 1;
        margin-left: 8px;
    }
    .l-header__category-title--contact::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        width: 200%;
        height: 100%;
        background: linear-gradient(90deg, rgb(253, 143, 0), rgb(255, 208, 98), rgb(253, 143, 0));
        transition: transform ease 0.4s;
    }
}
@media screen and (min-width: 1280px) {
    .l-header__category-title--whitepaper,
    .l-header__category-title--contact {
        width: 154px;
    }
    .l-header__category-title {
        font-size: 14px;
    }
    .l-header__category-item:not(:first-child):not(:last-child) {
        margin-left: 24px;
    }
}
@media screen and (min-width: 1180px) {
    .l-header__content-list {
        position: absolute;
        z-index: -1;
        top: 100%;
        left: 50%;
        transform: rotateX(90deg) translateX(-50%);
        transform-origin: top center;
        white-space: nowrap;
        color: rgb(255, 255, 255);
        background: linear-gradient(90deg, rgb(32, 33, 34), rgb(69, 71, 73));
        padding: 24px 32px;
        transition: opacity ease 0.4s 0.1s;
        opacity: 0;
    }
    .l-header__category-item .p-service-nav {
        transform: rotateX(90deg);
        transition: opacity ease 0.4s 0.1s;
        opacity: 0;
    }
    .l-header__category-item.active .l-header__content-list {
        top: 100%;
        transform: rotateX(0deg) translateX(-50%);
        opacity: 1;
        z-index: 1;
    }
    .l-header__category-item.active .p-service-nav {
        transform: rotateX(0);
        opacity: 1;
    }
    .l-header__category-item.active .l-header__category-title--accordion::before {
        transform: rotate(180deg);
    }
    .l-header__category-item.active .l-header__category-title--accordion::after {
        transform: rotate(0deg);
    }
    .l-header__content-link {
        position: relative;
        display: flex;
        align-items: center;
        height: 32px;
        font-size: 13px;
        padding-left: 16px;
        letter-spacing: 0.05em;
    }
    .l-header__content-link::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0.5em;
        bottom: 0;
        margin: auto 0;
        width: 1.3em;
        height: 1.3em;
        background-size: auto 60%;
        background-position: 80% center;
        background-repeat: no-repeat;
        background-image: url(https://www.n-info.co.jp/_core/wp-content/themes/wp-themes/assets/icons/icon_angle_white.svg);
        right: unset;
        left: -8px;
    }
    .l-header__content-link::after {
        content: "";
        position: absolute;
        bottom: 4px;
        left: 0;
        width: 0%;
        height: 1px;
        background-color: rgb(255, 255, 255);
        transition: width ease 0.4s;
    }
}
@media screen and (min-width: 1180px) and (hover: hover) and (pointer: fine) {
    .l-header__content-link:hover::after,
    .l-header__content-link:focus::after {
        width: 100%;
    }
}
@media screen and (min-width: 1180px) {
    .l-header__sub-nav {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        column-gap: 24px;
        height: 24px;
    }
    .l-header__sub-nav-item {
        position: relative;
    }
    .l-header__sub-nav-link {
        color: rgb(113, 114, 119);
        font-size: 12px;
        text-decoration: underline;
        transition: color ease 0.4s;
    }
}
@media screen and (min-width: 1180px) and (hover: hover) and (pointer: fine) {
    .l-header__sub-nav-link:hover,
    .l-header__sub-nav-link:focus {
        color: rgb(30, 82, 255);
    }
}
.l-footer {
    position: relative;
    color: rgb(255, 255, 255);
    background-color: rgb(32, 33, 34);
    overflow: hidden;
    color: #ffffff;
}
.l-footer__inner {
    padding-top: clamp(64px, 17.11vw, 77.9161147903px);
}
@media screen and (min-width: 768px) {
    .l-footer__inner {
        padding-top: clamp(77.9161147903px, 10.15vw, 86.9580573951px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__inner {
        padding-top: clamp(86.9580573951px, 8.49vw, 96px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__inner {
        padding-top: 96px;
    }
}
.l-footer__inner {
    padding-bottom: clamp(64px, 17.11vw, 77.9161147903px);
}
@media screen and (min-width: 768px) {
    .l-footer__inner {
        padding-bottom: clamp(77.9161147903px, 10.15vw, 86.9580573951px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__inner {
        padding-bottom: clamp(86.9580573951px, 8.49vw, 96px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__inner {
        padding-bottom: 96px;
    }
}
.l-footer__company-logo {
    display: block;
}
.l-footer__company-logo {
    width: clamp(160px, 42.78vw, 177.3951434879px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-logo {
        width: clamp(177.3951434879px, 23.1vw, 188.6975717439px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-logo {
        width: clamp(188.6975717439px, 18.43vw, 200px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-logo {
        width: 200px;
    }
}
.l-footer__company-logo {
    margin-bottom: clamp(40px, 10.7vw, 46.9580573951px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-logo {
        margin-bottom: clamp(46.9580573951px, 6.11vw, 51.4790286976px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-logo {
        margin-bottom: clamp(51.4790286976px, 5.03vw, 56px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-logo {
        margin-bottom: 56px;
    }
}
.l-footer__company-logo img {
    width: 100%;
}
.l-footer__company-name {
    font-size: 16px;
}
.l-footer__company-name {
    margin-bottom: clamp(16px, 4.28vw, 19.4790286976px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-name {
        margin-bottom: clamp(19.4790286976px, 2.54vw, 21.7395143488px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-name {
        margin-bottom: clamp(21.7395143488px, 2.12vw, 24px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-name {
        margin-bottom: 24px;
    }
}
.l-footer__company-address {
    display: flex;
    flex-direction: column;
    line-height: 180%;
    font-size: 14px;
}
.l-footer__company-address {
    margin-bottom: clamp(16px, 4.28vw, 19.4790286976px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-address {
        margin-bottom: clamp(19.4790286976px, 2.54vw, 21.7395143488px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-address {
        margin-bottom: clamp(21.7395143488px, 2.12vw, 24px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-address {
        margin-bottom: 24px;
    }
}
.l-footer__company-tel {
    display: flex;
    align-items: center;
    gap: 0.5em;
    font-family: "Roboto";
    font-weight: 500;
    letter-spacing: 0.1em;
}
.l-footer__company-tel {
    font-size: clamp(18px, 4.81vw, 19.7395143488px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-tel {
        font-size: clamp(19.7395143488px, 2.57vw, 20.8697571744px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-tel {
        font-size: clamp(20.8697571744px, 2.04vw, 22px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-tel {
        font-size: 22px;
    }
}
.l-footer__company-tel {
    margin-bottom: clamp(24px, 6.42vw, 27.4790286976px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-tel {
        margin-bottom: clamp(27.4790286976px, 3.58vw, 29.7395143488px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-tel {
        margin-bottom: clamp(29.7395143488px, 2.9vw, 32px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-tel {
        margin-bottom: 32px;
    }
}
.l-footer__company-tel img {
    width: 0.8em;
}
.l-footer__cta {
    display: flex;
    gap: 0.5em;
    width: min(100%, 200px);
}
@media screen and (max-width: 1179px) {
    .l-footer__cta {
        flex-direction: column;
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__cta {
        flex-direction: row;
        width: 376px;
    }
}
.l-footer__cta-button {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    padding: 0.5em 2em;
    height: 48px;
    transition: transform ease 0.4s;
    overflow: hidden;
}
.l-footer__cta-button::before {
    content: "";
}
.l-footer__cta-button:nth-child(1) {
    color: rgb(32, 33, 34);
    background: linear-gradient(90deg, rgb(209, 209, 209), rgb(255, 255, 255));
    font-weight: 600;
}
.l-footer__cta-button:nth-child(1)::before {
    position: absolute;
    top: 0;
    right: 0.5em;
    bottom: 0;
    margin: auto 0;
    width: 1.8em;
    height: 1.8em;
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../icons/icon_arrow_black.svg);
    right: 1em;
}
.l-footer__cta-button:nth-child(2) {
    color: rgb(255, 255, 255);
    font-weight: 400;
}
.l-footer__cta-button:nth-child(2)::before {
    position: absolute;
    top: 0;
    right: 0.5em;
    bottom: 0;
    margin: auto 0;
    width: 1.8em;
    height: 1.8em;
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../icons/icon_arrow_white.svg);
    right: 1em;
}
.l-footer__cta-button:nth-child(2)::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    transition: inherit;
    background: linear-gradient(90deg, rgb(253, 143, 0), rgb(255, 208, 98), rgb(253, 143, 0));
}
@media screen and (max-width: 1179px) {
    .l-footer__cta-button {
        width: 100%;
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__cta-button {
        flex: 1;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__cta-button:hover,
    .l-footer__cta-button:focus {
        transform: scale(0.96);
    }
    .l-footer__cta-button:hover:nth-child(2)::after,
    .l-footer__cta-button:focus:nth-child(2)::after {
        transform: translateX(-50%);
    }
}
@media screen and (max-width: 767px) {
    .l-footer__nav {
        padding-top: 40px;
    }
}
@media screen and (min-width: 768px) {
    .l-footer__nav {
        border-bottom: solid 1px rgb(69, 71, 73);
    }
}
@media screen and (min-width: 768px) {
    .l-footer__nav-inner {
        display: flex;
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 767px) {
    .l-footer__nav-category {
        padding: 1em 0;
        border-bottom: solid 1px rgb(69, 71, 73);
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .l-footer__nav-category {
        width: calc((100% - 24px) / 2);
        padding-bottom: 2em;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1179px) {
    .l-footer__nav-category {
        width: calc((100% - 24px) / 2);
        padding-bottom: 2em;
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__nav-category {
        width: calc((100% - 48px) / 3);
        padding-bottom: 2em;
    }
}
.l-footer__nav-heading {
    display: inline-block;
    font-weight: 500;
    margin-bottom: 0.6em;
}
.l-footer__nav-heading {
    font-size: clamp(14px, 3.74vw, 14.8697571744px);
}
@media screen and (min-width: 768px) {
    .l-footer__nav-heading {
        font-size: clamp(14.8697571744px, 1.94vw, 15.4348785872px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__nav-heading {
        font-size: clamp(15.4348785872px, 1.51vw, 16px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__nav-heading {
        font-size: 16px;
    }
}
.l-footer__nav-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.2em 2em;
}
.l-footer__nav-item {
    width: 100%;
}
.l-footer__nav-link {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 32px;
    font-size: 13px;
    color: rgb(146, 148, 158) !important;
}
@media screen and (max-width: 1179px) {
    .l-footer__nav-link {
        text-decoration: underline;
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__nav-link {
        transition: color ease 0.4s;
    }
    .l-footer__nav-link::before {
        content: "";
        position: absolute;
        bottom: 4px;
        left: 0;
        width: 0%;
        height: 1px;
        background: rgb(255, 255, 255);
        transition: width ease 0.4s;
    }
}
@media screen and (min-width: 1180px) and (hover: hover) and (pointer: fine) {
    .l-footer__nav-link:hover,
    .l-footer__nav-link:focus {
        color: rgb(255, 255, 255);
    }
    .l-footer__nav-link:hover::before,
    .l-footer__nav-link:focus::before {
        width: 20%;
    }
}
.l-footer__sub-nav {
    padding-top: 1em;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2em 2em;
}
@media screen and (min-width: 768px) {
    .l-footer__sub-nav {
        padding-top: 2em;
        flex-direction: row;
        flex-wrap: wrap;
    }
}
.l-footer__sub-nav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 100%;
    height: 32px;
    font-size: 12px;
    color: rgb(146, 148, 158) !important;
    transition: color ease 0.4s;
}
@media screen and (max-width: 1179px) {
    .l-footer__sub-nav-link {
        text-decoration: underline;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__sub-nav-link:hover,
    .l-footer__sub-nav-link:focus {
        color: rgb(255, 255, 255) !important;
    }
}
.l-footer__sub-nav-link--outlink {
    padding-right: 1.4em;
}
.l-footer__sub-nav-link--outlink::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
    width: 0.8em;
    height: 0.8em;
    background: url(../icons/icon_outlink_white.svg) center/100% no-repeat;
}
.l-footer__sns {
    display: flex;
    gap: 16px;
    padding-top: 40px;
}
.l-footer__sns-link {
    display: block;
    width: 36px;
    height: 36px;
    transition: transform ease 0.4s;
}
.l-footer__sns-link img {
    width: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__sns-link:hover,
    .l-footer__sns-link:focus {
        transform: scale(0.9);
    }
}
.l-footer__company-member {
    display: flex;
    column-gap: 8px;
}
@media screen and (max-width: 1023px) {
    .l-footer__company-member {
        padding-top: 24px;
    }
}
.l-footer__company-mark {
    display: inline-block;
}
.l-footer__company-mark {
    height: clamp(40px, 10.7vw, 43.4790286976px);
}
@media screen and (min-width: 768px) {
    .l-footer__company-mark {
        height: clamp(43.4790286976px, 5.66vw, 45.7395143488px);
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__company-mark {
        height: clamp(45.7395143488px, 4.47vw, 48px);
    }
}
@media screen and (min-width: 1180px) {
    .l-footer__company-mark {
        height: 48px;
    }
}
.l-footer__company-mark img {
    width: auto;
    height: 100%;
}
.l-footer__banner {
    display: block;
    width: min(60%, 376px);
}
@media screen and (max-width: 767px) {
    .l-footer__banner {
        padding-top: 40px;
    }
}
.l-footer__banner-item {
    width: 100%;
}
.l-footer__banner-item img {
    width: 100%;
}
.l-footer__copyright {
    display: inline-block;
    color: rgb(146, 148, 158);
    font-size: 11px;
}
@media screen and (max-width: 767px) {
    .l-footer__copyright {
        padding-top: 24px;
    }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
    .l-footer__inner {
        display: grid;
        grid-template-columns: 280px 48px auto;
        grid-template-rows: repeat(3, auto);
    }
    .l-footer__main-info {
        grid-column: 1/2;
        grid-row: 1/2;
    }
    .l-footer__nav {
        grid-column: 3/4;
        grid-row: 1/2;
    }
    .l-footer__sub-content {
        grid-column: 3/4;
        grid-row: 2/3;
    }
    .l-footer__banner {
        grid-column: 1/2;
        grid-row: 2/3;
    }
    .l-footer__copyright {
        margin-top: 40px;
        grid-column: 3/4;
        grid-row: 3/4;
    }
}
@media screen and (min-width: 1024px) {
    .l-footer__inner {
        display: grid;
        grid-template-columns: 376px auto min(60%, 640px);
        grid-template-rows: repeat(4, auto);
    }
    .l-footer__main-info {
        grid-column: 1/2;
        grid-row: 1/3;
    }
    .l-footer__nav {
        grid-column: 3/4;
        grid-row: 1/3;
    }
    .l-footer__sub-content {
        position: relative;
        grid-column: 3/4;
        grid-row: 3/4;
    }
    .l-footer__company-member {
        position: absolute;
        bottom: 0;
        right: 0;
    }
    .l-footer__banner {
        grid-column: 1/2;
        grid-row: 3/4;
    }
    .l-footer__copyright {
        grid-column: 3/4;
        grid-row: 3/4;
        margin-top: auto;
        margin-left: auto;
        transform: translateY(200%);
    }
}
.width-fix {
    margin-inline: auto;
    width: min(100vw - min(6.6vw, 48px) * 2, 1280px);
}
