@media screen and (max-width: 750px) {
    .sp_hidden {
        display: none
    }
    .pc_hidden {
        display: inline
    }
    p {
        padding: 0;
        margin: 0;
    }
    /*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 {
        -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 !important;
        font-size: 12pt !important;
        line-height: 180% !important;
        text-align: left;
    }
    * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    img, iframe {
        vertical-align: bottom;
    }
    #wrap {
        background: #fff;
    }
    #ind img {
        width: auto;
        max-width: 100%;
    }
    .sec main {
        margin: 7% 5%;
        background: #fff;
        position: relative;
        z-index: 999;
    }
    .sec main img {
        width: auto;
        max-width: 100%;
    }
    .content_wrap {
        width: 90%;
        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%;
    }
    .table_basic th {
        background: #f0f0f0;
        padding: 12px 12px;
        font-weight: normal;
        text-align: left;
        display: block;
    }
    .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 {
        padding: 12px 12px;
        display: block;
        background: #fff;
    }
    .table_basic td input {
        width: 100%;
        border: 1px solid #ccc;
    }
    .table_basic td textarea {
        width: 100%;
        height: 120px;
        border: 1px solid #ccc;
    }
    /*----------------スクロールテーブル-----------*/
    .scrool_table table {
        display: block;
        overflow-x: scroll;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .table_scrool {
        border-collapse: separate;
        border-spacing: 1px;
        background: #ddd;
        border-style: none;
        width: 100%;
    }
    .table_scrool th {
        background-color: #f3f3f3;
        padding: 8px 7px;
        font-weight: normal;
        text-align: center;
    }
    .table_scrool td {
        background-color: #FFF;
        padding: 8px 7px;
        text-align: center;
    }
    .req-mark {
        font-size: 8pt;
        color: #D00003
    }
    .right {
        text-align: right;
    }
    .cen {
        text-align: center;
    }
    .sp_no {
        display: none
    }
    .h img {
        display: none;
    }
    /*----------------------------------------ヘッダ----------------------------------------*/
    #ind header {
        width: 100%;
        text-align: center;
    }
    #ind #logo {
        display: none;
    }
    #ind #logo img {
        display: none;
    }
    header .h_menu {
        display: none;
    }
    .sec header {
        width: 100%;
        position: relative;
        z-index: 2;
    }
    .sec #logo {
        background: url("../img/sec_logo_bg.png")no-repeat left top / 200px auto;
        min-height: 220px;
        padding: 15px 15px;
    }
    .sec #logo img {
        display: block;
        width: 80px;
    }
    .menu-btn {}
    /*----------------------------------------Ｇナビ----------------------------------------*/
    .gnav-wrapper {
        display: none;
    }
    .sp_navbox {}
    .sp_nav {
        position: fixed;
        bottom: 0;
        width: 100%;
        display: flex;
        background: #1e1e1e;
        z-index: 999999;
    }
    .sp_nav li {
        flex: 1;
        padding: 12px 0;
        text-align: center;
    }
    .sp_nav li + li {
        border-left: 1px solid #666;
    }
    .sp_nav li a {
        color: #fff;
        display: block;
    }
    .sp_nav li:nth-child(1) a:before {
        font-family: 'LigatureSymbols';
        content: "\E08a";
        line-height: 1;
        font-weight: normal;
        font-size: 19pt;
    }
    .sp_nav li:nth-child(2) a:before {
        font-family: 'LigatureSymbols';
        content: "\E08e";
        line-height: 1;
        font-weight: normal;
        font-size: 19pt;
    }
    .sp_nav li:nth-child(3) a:before {
        font-family: FontAwesome;
        content: "\f0c9";
        font-weight: normal;
        font-size: 16pt;
    }
    .sp_nav li a span {
        font-size: 11pt;
        line-height: 1.4;
        padding-top: 6px;
        display: block;
    }
    /*----------------------------------------フッタ----------------------------------------*/
    footer {
        background: #1e1e1e;
        text-align: center;
        padding: 4% 0;
        color: #fff;
        font-size: 11pt;
    }
    footer .inner {
        color: #fff;
    }
    footer .box {
        padding: 15px 0 20px;
    }
    footer div.box + div.box {
        text-align: center;
        border-top: 1px solid #515151;
        padding: 20px 4%;
    }
    footer .f_logo {
        padding-bottom: 5px;
    }
    footer .f_logo img{
        width: 130px;
    }
    footer .box span {
        display: block;
        font-size: 13pt;
        margin-bottom: 5px;
    }
    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;
        margin: 0 auto;
    }
    footer .box a:hover {
        background: #515151;
    }
    #footer_un {
        font-size: 11pt;
        padding: 10px 0;
    }
    #footer_un ol {
        display: none;
    }
    .copy {
        font-size: 11pt;
        text-align: center;
        padding: 10px 0 90px;
    }
    #topcontrol {
        position: fixed;
        bottom: 90px;
        right: 10px;
        background: #1e1e1e;
        z-index: 9999999;
        border-radius: 100px;
    }
    #topcontrol img {
        display: none;
        display: block;
        width: 50px;
        height: 50px;
    }
    /*----------------------------------------メインイメージＩＮＤＥＸ----------------------------------------*/
    #kv {
        width: 100%;
    }
    /*----------------------------------------index----------------------------------------*/
    #index01 {
        background: url("../img/index01_bg.png") no-repeat center top;
    }
    #index01 .inner {
        padding-top: 30px;
    }
    #index01 .inner .h2_cap {
        display: block;
        font-size: 40pt;
        line-height: 40pt;
        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: 15px;
    }
    #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: 12px 15px 15px;
        margin: 0px 0px 25px 0px;
        color: #fff;
        font-weight: 600;
        font-size: 13pt;
        line-height: 1.6;
        display: inline-block;
    }
    #index01 .pic {
        margin-bottom: 25px;
    }
    #index01 p span {
        display: block;
        text-align: right;
        padding-top: 20px;
    }
    #index02 {
        text-align: left;
        padding: 40px 5% 40px;
    }
    #index02 .box {
        padding: 0;
        margin-bottom: 40px;
    }
    #index02 .h2_cap {
        display: block;
        font-size: 40pt;
        line-height: 40pt;
        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: 15px;
    }
    #index02 h2 {
        background: rgb(65, 164, 195);
        background: linear-gradient(135deg, rgba(65, 164, 195, 1) 0%, rgba(19, 107, 173, 1) 100%);
        padding: 12px 15px 15px;
        margin: 0;
        color: #fff;
        font-weight: 600;
        font-size: 13pt;
        line-height: 1.6;
        display: inline-block;
    }
    #loopslider {
        margin: 0px auto;
        width: 100%;
        height: 325px;
        text-align: left;
        position: relative;
        overflow: hidden;
    }
    #loopslider ul {
        height: 325px;
        float: left;
        display: inline;
        overflow: hidden;
    }
    #loopslider ul li {
        width: 190px;
        height: 325px;
        float: left;
        display: inline;
        overflow: hidden;
        text-align: center;
    }
    #loopslider ul li img {
        width: 180px;
        height: 247px;
    }
    #loopslider ul li p {
        display: block;
        padding: 10px 10px 0;
        line-height: 1.4;
    }
    #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: 0 0;
    }
    #index03::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 280px;
        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 {
        position: relative;
        padding: 40px 0 40px;
        z-index: 2;
    }
    #index03 .h2_cap {
        display: block;
        font-size: 40pt;
        line-height: 40pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        color: #fff;
        margin-bottom: 15px;
    }
    #index03 h2 {
        background: #fff;
        padding: 12px 15px 15px;
        margin: 0;
        color: #156eae;
        font-weight: 600;
        font-size: 13pt;
        line-height: 13pt;
        display: inline-block;
    }
    #index03 ol {
        position: relative;
        background: #fff;
        padding: 5% 5%;
        z-index: 2;
    }
    #index03 ol li {
        width: 100%;
        margin-bottom: 30px;
    }
    #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: 10px;
        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 {
        background: #6eafe7 url("../img/index04_bg_sp.png") no-repeat center bottom / contain;
    }
    #index04 .inner {
        color: #fff;
        padding: 40px 0 210px;
    }
    #index04 .h2_cap {
        display: block;
        font-size: 40pt;
        line-height: 40pt;
        font-family: "Barlow Condensed", serif;
        font-weight: 600;
        font-style: normal;
        color: #fff;
        margin-bottom: 15px;
    }
    #index04 h2 {
        background: #fff;
        padding: 12px 15px 15px;
        margin: 0 0 25px 0;
        color: #226392;
        font-weight: 600;
        font-size: 13pt;
        line-height: 13pt;
        display: inline-block;
    }
    #index04 p {
        padding-bottom: 25px;
    }
    #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: 150px;
        width: 100%;
        position: relative;
        z-index: 1;
        margin: 0 auto;
        top: 0px;
        background: url("../img/sec_kv_sp.png") no-repeat center center / cover;
    }
    #kv_sec .inner a {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
        margin: auto;
    }
    #kv_sec .inner a img {
        display: block;
        width: 150px;
    }
    .sec .h_box {
        display: flex;
        align-items: center;
        margin-bottom: 30px;
    }
    .sec .h_box .h2_cap {
        display: block;
        font-size: 30pt;
        line-height: 30pt;
        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: 15px;
    }
    .sec .h_box h2 {
        margin: 0;
        color: #222;
        font-weight: 600;
        font-size: 14pt;
        line-height: 14pt;
        display: inline-block;
    }
    h3 {
        display: flex;
        align-items: center;
        font-weight: 600;
        font-size: 15pt;
        line-height: 1.6;
        letter-spacing: 1pt;
        margin-bottom: 20px;
        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: 10px;
    }
    .mbm {
        margin-bottom: 30px;
    }
    .mbl {
        margin-bottom: 30px;
    }
    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: 1em; /* 文章のスタート位置。li:beforeが入るスペースを確保*/
    }
    ol.check li {
        position: relative;
        padding: 5px 0 5px 0.4em;
    }
    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 {
        margin-bottom: 40px;
    }
    /*-----------------------------------------about---------------------------------------*/
    #about .box {}
    #about .box .pic {
        margin-bottom: 5px;
    }
    #about .box .txt {
        padding: 5% 0;
    }
    #about .box .txt div {
        font-size: 16pt;
        line-height: 1.7;
        margin-bottom: 30px;
        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: 25px;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    /*-----------------------------------------business---------------------------------------*/
    #business .box {
        margin-bottom: 5%;
    }
    #business .box .pic {}
    #business .box .txt {
        padding: 5% 0;
    }
    #business .box .txt .tit {
        display: flex;
        align-items: center;
        margin-bottom: 15px;
    }
    #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;
        padding: 5%;
        margin-bottom: 40px;
    }
    #archive .archive_nav li {
        width: 100%;
    }
    #archive .archive_nav li + li {
        margin-top: 5%;
    }
    #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_basic {
        border-collapse: separate;
        border-spacing: 1px;
        background: #ddd;
        border-style: none;
        width: 100%;
        margin: 0 auto;
    }
    #archive .table_scrool td a {
        display: block;
        color: #226392;
        border: 1px solid #226392;
        padding: 2px 10px;
        font-size: 11pt;
        width: 150px;
        margin: 10px auto 10px;
        text-align: center;
    }
    #archive .table_scrool td a:before {
        font-family: 'LigatureSymbols';
        content: "\E026";
        line-height: 1;
        margin-right: 5px;
        font-weight: 300;
        font-size: 14pt;
    }
    /*-----------------------------------------contact---------------------------------------*/
    #contact .table_basic th {
        text-align: left;
    }
    /*-----------------------------------------policy---------------------------------------*/
    #policy p.txt {
        padding: 0 0px 30px;
    }
    /*-----------------------------------------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;
    }
    #al1, #al2, #al3, #al4, #al5, #al6, #al7, #al8, #al9, #al10, #al11, #al12 {}
}