@media screen and (min-width: 751px) {
    @charset "utf-8";
    .sp_hidden {
        display: inline
    }
    .pc_hidden {
        display: none
    }
    /*font-face*/
    @font-face {
        font-family: 'condenseicon';
        src: url('../font/CONDENSEicon.ttf') format('truetype'), url('../font/CONDENSEicon.otf') format('opentype'), url('../font/CONDENSEicon.woff') format('woff');
    }
    @font-face {
        font-family: 'LigatureSymbols';
        src: url('../font/LigatureSymbols-2.11.eot');
        src: url('../font/LigatureSymbols-2.11.eot?#iefix') format('embedded-opentype'), url('../font/LigatureSymbols-2.11.woff') format('woff'), url('../font/LigatureSymbols-2.11.ttf') format('truetype'), url('../font/LigatureSymbols-2.11.svg#LigatureSymbols') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    body {
        min-width: 1200px;
        -webkit-text-size-adjust: none;
        font-family: 'Noto Sans JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        color: #000;
        font-size: 12.5pt;
        font-weight: 400;
        line-height: 1.8;
        letter-spacing: 1.7px;
    }
    body#ind{
        background:
            url("../img/bg01.png") no-repeat right 0px top 0px,
            url("../img/bg2.png") no-repeat right 0px top 1300px;
    }
    * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    p {
        padding: 0;
        margin: 0;
    }
    a {
        transition: all 0.5s ease 0s;
    }
    img, iframe {
        vertical-align: bottom;
    }
    img {
        -webkit- backface-visibility: hidden;
    }
    * {
        margin: 0;
        padding: 0;
    }
    .switch {
        visibility: hidden;
    }
    a:hover img {
        transition: all 0.1s ease; /*0.5秒かけて要素を変化させる*/
        opacity: 0.7; /*要素の透明度を指定*/
        filter: alpha(opacity=70); /*ie6、7の透明度指定*/
        /*ちなみにie8の透明度指定はこれ→ -ms-filter: "alpha(opacity=70)";*/
    }
    .nav-wrap {
        display: none;
    }
    #wrap {
        overflow: hidden;
    }
    #m-menu {
        display: none;
    }
    #ind main {
        padding: 130px 0 0;
    }
    .sec main {
        margin: 0px auto 0px;
        width: 1200px;
        padding: 100px 0;
        background: #fff;
    }
    .sec main img {
        width: auto;
        max-width: 100%;
    }
    .content_wrap {
        width: 1200px;
        margin: 0 auto;
    }
    ol {
        margin: 0;
        padding: 0;
    }
    ul {
        margin: 0;
        padding: 0;
    }
    ol.un {
        padding-bottom: 20px;
    }
    ol.un li {
        margin-left: 1.5em;
    }
    .table_basic {
        border-collapse: separate;
        border-spacing: 1px;
        background: #ddd;
        border-style: none;
        width:100%;
        margin: 0 auto;
    }
    .table_basic th {
        background: #f3f3f3;
        padding: 20px 20px;
        font-weight: normal;
        text-align:center;
        width: 20%;
        position: relative;
    }
    .table_basic th span{
        background: #ca5252;
        color: #fff;
        border-radius: 100px;
        display: inline-block;
        padding: 5px 15px;
        font-size: 10pt;
        line-height: 1;
        position: absolute;
        right: 20px;
    }
    .table_basic td {
        background: #FFF;
        padding: 20px 20px;
    }
    .table_basic td textarea {
        height: 200px;
        width: 100%;
    }
    .table_basic td input.input {
        width: 100%;
    }
    .table_basic td input.radio {
        margin-right: 5px;
    }
    .req-mark {
        font-size: 8pt;
        color: #D00003
    }
    .right {
        text-align: right;
    }
    .cen {
        text-align: center;
    }
    .pc_no {
        display: none
    }
    .h img {
        display: block;
    }
    /*----------------------------------------ヘッダ----------------------------------------*/
    header {
        width: 100%;
        position: absolute;
        z-index: 99999;
    }
    #ind #logo {
        display: none;
    }
    .sp_nav {
        display: none;
    }
    /*----------------------------------------Ｇナビ----------------------------------------*/
    .gnav-wrapper {
        position: relative;
        text-align: center;
        margin: 0px auto;
        padding-top: 20px;
        max-width: 1200px;
        min-width: 1200px;
    }
    .gnav-wrapper .gnav {
        display: flex;
        justify-content: center;
    }
    .gnav-wrapper .gnav li {
    }
    .gnav li + li {
        border-left: 1px solid rgba(255,255,255,0.3);;
    }
    .gnav li a {
        display: block;
        padding: 5px 30px;
        color: #fff;
        font-size: 12.5pt;
        font-weight: 500;
    }
    .gnav > li:hover .megamenu {
        max-height: 9999px;
        opacity: 1;
        padding: 0px 0;
    }
    .megamenu {
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        width: 100%;
        position: absolute;
        top: 81px;
        left: 0;
        transition: all .5s ease-in;
        z-index: 999;
        background-color: rgba(9, 51, 95, 0.7);
    }
    .megamenu-inner {
        width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
        text-align: left;
        padding: 5px 10px 18px;
        display: flex;
        flex-wrap: wrap;
    }
    .megamenu-inner li {
        width: calc(100% / 3 - 20px) !important;
        padding: 0;
        margin: 0 10px;
    }
    .megamenu-inner li + li {
        border-left: none;
    }
    .megamenu-inner li a {
        color: #fff;
        text-align: center;
        border: none;
        display: block;
        padding: 15px 10px;
        background-color: rgba(9, 51, 95, 0.7);
        transition: 0.4s;
        border: 1px solid #7498b2;
    }
    .megamenu-inner li a:hover {
        text-decoration: none;
        background: #7498b2;
        border: 1px solid #7498b2;
        color: #fff;
    }
    /*----------------------------------------フッタ----------------------------------------*/
    footer {
        background: #1e1e1e;
        text-align: center;
        padding: 40px 0;
        color: #fff;
        font-size: 11pt;
    }
    footer .inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #fff;
    }
    footer .box {
        width: 25%;
        padding: 15px 0;
    }
    footer div.box + div.box {
        text-align: left;
        border-left: 1px solid #515151;
        padding: 15px 50px;
        width: 37.5%;
    }
    footer .f_logo {
        padding-bottom: 20px;
    }
    footer .box span {
        display: block;
        font-size: 14pt;
        margin-bottom: 10px;
    }
    footer .box .add {
        display: block;
        margin-bottom: 15px;
    }
    footer .box a {
        border: 1px solid #515151;
        display: inline-block;
        padding: 6px 30px;
        color: #fff;
        text-align: center;
    }
    footer .box a:hover {
        background: #515151;
    }
    #footer_un {
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 11pt;
        padding: 20px 0;
    }
    #footer_un ol {
        display: flex;
    }
    #footer_un ol li + li {
        border-left: 1px solid #666;
    }
    #footer_un ol li a {
        color: #000;
        display: block;
        padding: 0 10px;
    }
    .copy {}
    #topcontrol {
        position: fixed;
        bottom: 15px;
        right: 15px;
        background: #1e1e1e;
        border-radius: 100px;
    }
    #topcontrol img {
        display: block;
        width: 60px;
        height: 60px;
    }
    /*----------------------------------------メインイメージＩＮＤＥＸ----------------------------------------*/
    #kv{
        background: url("../img/kv1.webp")no-repeat center top;
        height: 800px;
        width: 100%;
        position: relative;
    }
    #kv .inner{
        height: 800px;
        width: 1200px;
        margin: 0 auto;
        display: flex;
        align-items: center;
    }
    #kv .inner .kv_logo {
        padding-left: 60px;
        
    }
    
    #slides {
        display: none;
    }
    /*----------------------------------------index----------------------------------------*/
    #index01 {
        background: url("../img/index01_bg.png") no-repeat center top;
        min-height: 590px;
    }
    #index01 .inner {
        padding-left: 375px;
        padding-top: 10px;
    }
    #index01 .inner .h2_cap {
        display: block;
        font-size: 70pt;
        line-height: 70pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        background: linear-gradient(90deg, #41a4c3 0%, #136bad 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        margin-bottom: 25px;
    }
    #index01 .inner h2 {
        background: rgb(65, 164, 195);
        background: linear-gradient(135deg, rgba(65, 164, 195, 1) 0%, rgba(19, 107, 173, 1) 100%);
        padding: 16px 30px 18px 30px;
        margin: 0px 0px 50px 0px;
        color: #fff;
        font-weight: 600;
        font-size: 18pt;
        line-height: 18pt;
        display: inline-block;
    }
    #index01 p span {
        display: block;
        text-align: right;
        padding-top: 30px;
    }
    #index02 {
        text-align: left;
        padding: 140px 0 130px;
    }
    #index02 .box {
        display: flex;
        align-items: center;
        padding-left: 30px;
        margin-bottom: 50px;
    }
    #index02 .h2_cap {
        display: block;
        font-size: 70pt;
        line-height: 70pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        background: linear-gradient(90deg, #41a4c3 0%, #136bad 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        margin-right: 25px;
    }
    #index02 h2 {
        background: rgb(65, 164, 195);
        background: linear-gradient(135deg, rgba(65, 164, 195, 1) 0%, rgba(19, 107, 173, 1) 100%);
        padding: 16px 30px 18px 30px;
        margin: 0;
        color: #fff;
        font-weight: 600;
        font-size: 18pt;
        line-height: 18pt;
        display: inline-block;
    }
    #loopslider {
        margin: 0px auto;
        width: 100%;
        height: 500px;
        text-align: left;
        position: relative;
        overflow: hidden;
    }
    #loopslider ul {
        height: 430px;
        float: left;
        display: inline;
        overflow: hidden;
    }
    #loopslider ul li {
        width: 315px;
        height: 430px;
        float: left;
        display: inline;
        overflow: hidden;
        text-align: center;
    }
    #loopslider ul li img {
        width: 275px;
        height: 387px;
    }
    #loopslider ul li p {
        display: block;
        padding-top: 10px;
    }
    #index02 div.btn {
        text-align: center;
    }
    #index02 div.btn a {
        border: 1px solid #226392;
        display: inline-block;
        padding: 12px 20px 15px 25px;
        color: #226392;
        width: 250px;
        text-align:left;
        background:  url("../img/arrow_blue.png")no-repeat top 24px right 20px;
    }
    #index02 div.btn a:hover {
        border: 1px solid #226392;
        background:#226392 url("../img/arrow_white.png")no-repeat top 24px right 20px;
        color: #fff;
    }
    #index03 {
        position: relative;
        text-align: center;
        padding-bottom: 80px;
    }
    #index03::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 374px;
        background: rgb(65, 164, 195);
        background: linear-gradient(135deg, rgba(65, 164, 195, 1) 0%, rgba(19, 107, 173, 1) 100%);
        z-index: -1;
    }
    #index03 .box {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 88px 0 88px;
    }
    #index03 .h2_cap {
        display: block;
        font-size: 70pt;
        line-height: 70pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        color: #fff;
        margin-right: 25px;
    }
    #index03 h2 {
        background: #fff;
        padding: 16px 30px 18px 30px;
        margin: 0;
        color: #156eae;
        font-weight: 600;
        font-size: 18pt;
        line-height: 18pt;
        display: inline-block;
    }
    #index03 ol {
        background: #fff;
        padding: 45px 50px;
        display: flex;
        justify-content:space-between;
        flex-wrap: wrap;
        gap: 50px;
    }
    #index03 ol li {
        width:525px;
    }
    #index03 ol li div {
        position: relative;
    }
    #index03 ol li div p {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
        margin: auto;
        color: #fff;
        font-size: 12pt;
        line-height: 12pt;
        font-weight: 800;
        letter-spacing: 1pt;
        padding-bottom: 20px;
        z-index: 99999;
    }
    #index03 ol li div p span {
        display: block;
        color: #fff;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        font-size: 48pt;
        line-height: 48pt;
        padding-bottom: 10px;
    }
    #index03 ol li p.tit {
        display: block;
        padding-top: 15px;
    }
    #index04 {
        min-height: 550px;
        background: url("../img/index04_bg.png")no-repeat center top;
    }
    #index04 .inner {
        color: #fff;
        padding-top: 40px;
    }
    #index04 .h2_cap {
        display: block;
        font-size: 70pt;
        line-height: 70pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        color: #fff;
        margin-bottom: 25px;
    }
    #index04 h2 {
        background: #fff;
        padding: 16px 30px 18px 30px;
        margin: 0 0 40px 0;
        color: #226392;
        font-weight: 600;
        font-size: 18pt;
        line-height: 18pt;
        display: inline-block;
    }
    #index04 p {
        padding-bottom: 30px;
    }
    #index04 div.btn {}
    #index04 div.btn a {
        border: 1px solid #fff;
        display: inline-block;
        padding: 12px 20px 15px 25px;
        color: #fff;
        width: 250px;
        text-align:left;
        background:  url("../img/arrow_white.png")no-repeat top 24px right 20px;
    }
    #index04 div.btn a:hover {
        border: 1px solid #fff;
        color: #226392;
        background:#fff url("../img/arrow_blue.png")no-repeat top 24px right 20px;
    }
    /*----------------------------------------セカンド共通----------------------------------------*/
    #kv_sec {
        height: 300px;
        width: 100%;
        position:relative;
        z-index:1;
        margin: 0 auto;
        top: 0px;
        background: url("../img/sec_kv.png")no-repeat center top;
    }
    #kv_sec .inner a{
        display:inline-block;
        padding: 135px 0 0 50px;
    }
    .sec .h_box {
        display: flex;
        align-items: center;
        margin-bottom: 50px;
    }
    .sec .h_box .h2_cap {
        display: block;
        font-size: 70pt;
        line-height: 70pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        background: linear-gradient(90deg, #41a4c3 0%, #136bad 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        margin-right: 25px;
    }
    .sec .h_box h2 {
        margin: 0;
        color: #222;
        font-weight: 600;
        font-size: 16pt;
        line-height: 16pt;
        display: inline-block;
    }
    
    h3 {
        display: flex;
        align-items: center;
        font-weight: 600;
        font-size: 17pt;
        line-height: 17pt;
        letter-spacing: 1.5pt;
        margin-bottom: 40px;
        background-size: auto auto;
        background-color: rgba(255, 255, 255, 1);
        background-image: repeating-linear-gradient(-45deg, transparent, transparent 5px, rgba(239, 239, 239, 1) 5px, rgba(239, 239, 239, 1) 10px );
    }
    h3 span{
        background: #fff;
        padding: 0 15px 0 0;
    }
    .mbs {
        margin-bottom: 20px !important;
    }
    .mbm {
        margin-bottom: 50px !important;
    }
    .mbl {
        margin-bottom: 70px !important;
    }
    .sec-wrap {
        padding: 0 20px;
    }
    ol.num {}
    ol.num li {
        padding: 0 0 5px;
        margin-left: 2em;
        list-style-type: decimal;
    }
    ol.disc {}
    ol.disc li {
        padding: 0 0 5px;
        margin-left: 2em;
        list-style-type: disc;
    }
    ol.check {
        padding-left: 1.5em; /* 文章のスタート位置。li:beforeが入るスペースを確保*/
    }
    ol.check li {
        position: relative;
        padding: 7px 0 7px 0.7em;
        border-bottom: 1px dotted #ddd;
    }
    ol.check li:before {
        font-family: FontAwesome;
        content: "\f058";
        position: absolute;
        left: -1em; /* アイコンのスタート位置。左揃えの場合 ul のpadding-leftと同じ値 */
        color: #ccc;
    }
    div.sec_btn {
        text-align: center;
    }
    div.sec_btn a {
        border: 1px solid #226392;
        display: inline-block;
        padding: 12px 20px 15px 25px;
        color: #226392;
        width: 250px;
        text-align:left;
        background:  url("../img/arrow_blue.png")no-repeat top 24px right 20px;
    }
    div.sec_btn a:hover {
        border: 1px solid #226392;
        background:#226392 url("../img/arrow_white.png")no-repeat top 24px right 20px;
        color: #fff;
    }
    /*-----------------------------------------company---------------------------------------*/
    #company .t_img{
        position:relative;
        margin-top: -80px;
    }
    /*-----------------------------------------about---------------------------------------*/
    #about .box{
        display: flex;
        justify-content: space-between;
        width: 100%;
    }
    #about .box .pic{
        background: url("../img/about_pic_pc.png") no-repeat center bottom / cover;
        width:300px;
    }
    #about .box .pic img{
        display: none;
    }
    #about .box .txt{
        width: calc(100% - 350px);
        padding:30px 0;
    }
    #about .box .txt div{
        font-size: 20pt;
        margin-bottom: 40px;
        color: #226392;
        font-weight: 600;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #about .box .txt p{
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #about .box .txt p span{
        display: block;
        text-align: right;
        padding-top: 20px;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    /*-----------------------------------------business---------------------------------------*/
    #business .box{
        display:flex;
        align-items: center;
    }
    #business .box .pic{
        width: 50%;
    }
    #business .box .txt{
        width: 50%;
        padding: 0 50px;
    }
    #business .box .txt .tit{
        display: flex;
        align-items: center;
        margin-bottom: 30px;
    }
    #business .box .txt .tit .num{
        display: block;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        font-size: 48pt;
        line-height: 48pt;
        padding-right: 15px;
    }
    #business .box .txt .tit .tits{
        padding-left: 15px;
        border-left: 1px solid #ddd;
    }
    #business .box .txt .tit .tits span{
        display:block;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        font-size: 19pt;
        line-height: 19pt;
    }
    #business .odd{
        flex-direction: row-reverse;
    }
    /*-----------------------------------------archive---------------------------------------*/
    #archive .archive_nav{
        background: #2884b7;
        display: flex;
        justify-content: space-between;
        padding: 20px;
        margin-bottom: 50px;
        gap: 20px;
    }
    #archive .archive_nav li{
        width: calc((100% - 40px) / 3);
    }
    #archive .archive_nav li a{
        display: block;
        text-align: center;
        color: #fff;
        border: 1px solid #fff;
        padding: 10px;
    }
    #archive .archive_nav li a.on{
        background: #136bad;
    }
    #archive .archive_nav li a:hover{
        background: #136bad;
    }
    #archive .table_scrool {
        border-collapse: separate;
        border-spacing: 1px;
        background: #ddd;
        border-style: none;
        width:100%;
        margin: 0 auto;
    }
    #archive .table_scrool th {
        background: #f3f3f3;
        padding: 20px 20px;
        font-weight: normal;
        text-align:center;
        width: 20%;
        position: relative;
    }
    #archive .table_scrool td {
        background: #FFF;
        padding: 20px 10px;
        text-align: center;
    }
    #archive .table_scrool td a{
        display:block;
        color: #226392;
        border: 1px solid #226392;
        padding: 2px 10px;
        font-size: 11pt;
        width: 150px;
        margin: 10px auto 0;
    }
    #archive .table_scrool td a:before {
        font-family: 'LigatureSymbols';
        content: "\E026";
        line-height: 1;
        margin-right: 5px;
        font-weight: 300;
        font-size: 14pt;
    }
    #archive .table_scrool td a:hover{
        background: #226392;
        color: #fff;
    }
    /*-----------------------------------------contact---------------------------------------*/
    #contact .table_basic th {
        text-align:left;
        width:30%;
    }
    /*-----------------------------------------recruit---------------------------------------*/
    #recruit .table_basic th.r-form {
        text-align:left;
        width:30%;
    }
    /*-----------------------------------------policy---------------------------------------*/
    #policy p.txt {
        padding: 0 0px 80px;
    }
    /*-----------------------------------------sitemap---------------------------------------*/
    #sitemap .box {
    }
    #sitemap ol {
        border-top: 1px dotted #ccc;
    }
    #sitemap ol li {
        padding-left: 25px;
        border-bottom: 1px dotted #ccc;
    }
    #sitemap ol li.no, #sitemap ol li.sub {
        border-bottom: 1px solid #fff;
    }
    #sitemap ol li.no a {
        padding: 12px 0 0;
    }
    #sitemap ol li a {
        color: #222;
        display: block;
        padding: 12px 0;
    }
    #sitemap ol li.sub a{
         padding-left: 10px;
    }
    #sitemap ol li.sub a:before {
        content: "├";
        display: inline-block;
        margin-right: .6em;
    }
    #sitemap ol li.sub_end a:before {
        content: "└";
        display: inline-block;
        margin-right: .6em;
    }
    #sitemap ol li.sub_end a {
        padding-bottom: 12px;
        padding-left: 10px;
    }
    /*-----------------------------------------anker link---------------------------------------*/
    #al1, #al2, #al3, #al4, #al5, #al6, #al7, #al8, #al9, #al10, #al11, #al12, #al13, #al14 {
        display: block;
    }
}