@charset "UTF-8";

@import url('bootstrap.min.css');
@import url('style_set.css');
@import url('https://use.fontawesome.com/releases/v5.6.3/css/all.css');

@font-face {
    font-family: 'HelveticaNeue-boldItalic';
    src: url('HelveticaNeue.woff2');
}

/*WEBアイコン*/
@font-face {
    font-family: 'icomoon';
    src: url('fonts/icomoon.eot?z3qnt5');
    src: url('fonts/icomoon.eot?z3qnt5#iefix') format('embedded-opentype'),
        url('fonts/icomoon.ttf?z3qnt5') format('truetype'),
        url('fonts/icomoon.woff?z3qnt5') format('woff'),
        url('fonts/icomoon.svg?z3qnt5#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-plus-square-solid:after {
    content: "\e900";
}

.icon-plus-square-regular:after {
    content: "\e901";
}

.icon-plus-solid:after {
    content: "\e902";
}

.icon-minus-square-regular:after {
    content: "\e903";
}

.icon-minus-solid:after {
    content: "\e904";
}




body {
    background-color: #FFF;
    margin-top: 90px !important;
    padding: 0 !important;
    font-size: 16px;
    font-weight: 400;
    font-family: -apple-system, blinkMacSystemFont, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    color: #2F2F2F;

}

.mincho {
    font-family: "ヒラギノ明朝 ProN W3", 'Hiragino Mincho ProN', 'Yu Mincho', serif;
}

.gothic {
    font-family: -apple-system, blinkMacSystemFont, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

img {
    width: 100%;
}

a {
    color: #2E90D8;
}

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

ul li {
    list-style: none;
}

.list-on li {
    list-style: circle;
    margin-left: -0.5em;
}

.list-on ul {
    margin-bottom: 0 !important;
}

.list2-on li {
    list-style: decimal;
    margin-bottom: 5px;
}

.list2-on ul {
    margin-bottom: 0 !important;
}

.white {
    color: #fff;
}

p {
    margin: 0;
    padding: 0;
}

@media screen and (max-width:767px) {

    p {
        font-size: 15px
    }
}

/* TOPへ戻るボタン 
-------------------------------------------------------------------------*/
.page-top {
    position: fixed;
    z-index: 9999;
    bottom: 40px;
    right: 40px;
    padding: 10px 15px;
    background: #2E90D8;
    border: solid 3px #ffffff;
    -ms-filter: "alpha(opacity=80)";
    -moz-opacity: 0.85;
    -khtml-opacity: 0.85;
    opacity: 0.85;
    color: #FFF;
}

a:visited.page-top {
    color: #FFF;
}

a:hover.page-top {
    color: #FFF;
}

/* ナビバー 
-------------------------------------------------------------------------*/

/*FIXヘッダのズレを解消*/
#news_a,
#policy_a,
#recruit_a,
#contact_a {
    display: block;
    margin-top: -90px;
    padding-top: 90px;
}

#group_a,
#profile_a {
    display: block;
    margin-top: -120px;
    padding-top: 120px;
}

@media screen and (max-width:767px) {

    #news_a,
    #policy_a,
    #recruit_a,
    #contact_a {
        margin-top: -60px;
        padding-top: 60px;
    }

    #group_a,
    #profile_a {
        margin-top: -80px;
        padding-top: 80px;
    }
}

/*ナビバー*/
.navbar {
    padding: 0 0 0 0;
    font-weight: bold;
    font-size: 16px;
    background-color: rgba(0, 0, 0, 0) !important;
    height: 90px;
}

.nav_wrap {
    width: 100%;
    background-color: #2E2D2D;
}

.nav_wrap_sub {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}

.navbar li {
    padding: 0 13px;
    font-weight: 400;
    color: #FFF;
}

.navbar-toggler {
    margin: 10px;
}

.navbar-light .navbar-toggler {
    color: rgb(8, 109, 247);
    border-color: rgba(255, 255, 255, 0.97);
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.95)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar a {
    color: #FFF !important;
}

.navbar a:hover {
    color: #ffbe2c !important;
    text-decoration: none;
}

.top-logo {
    width: 250px;
    margin-top: 9px;
}

.top-photo {
    position: relative;
}



@media screen and (min-width:769px) {
    .navbar li:last-child {
        background-color: #2E90D8;
        margin-left: 15px;
        margin-right: 15px;
    }
}

@media screen and (max-width:767px) {
    body {
        background-color: #FFF;
        margin-top: 60px !important;
    }

    .navbar {
        height: auto;
    }

    .top-logo {
        width: 200px;
        margin-top: 0px;
    }

    .page-top {
        right: 0px;
        font-size: 0.8em;
        padding: 10px 10px;
    }
}

@media screen and (max-width:991px) {
    .navbar ul {
        background-color: rgb(16, 121, 198);
        text-align: center;
        border-bottom: solid 1px rgba(255, 255, 255, 0.67);
    }

    .navbar li {
        border-top: solid 1px rgba(255, 255, 255, 0.67);
        padding: 5px 50px;
    }

    .top-mainlogo {
        width: 70% !important;
        right: 15% !important;
        top: 42% !important;
    }
}

/* スライダー＆スライダー上タイトル 
-------------------------------------------------------------------------*/
.top-mainlogo {
    position: absolute;
    top: 40%;
    right: 25%;
    width: 50%;
    z-index: 2;
}

.top-mainlogo img {
    max-width: 100%;
}

.dot_under {
    position: relative;
    overflow: hidden;

    margin: 0 auto;

}

/*網画像用*/
.dot_top {
    background-image: url(../img/dot.png);
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 2;
}

/* 下階層共通
-------------------------------------------------------------------------*/
.h2_sub {
    font-size: 14px;
    margin-left: 4px;
    font-weight: 300;
    font-family: -apple-system, blinkMacSystemFont, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif !important;
}

#group h2,
#recruit h2,
#profile h2,
#contact h2 {
    font-size: 45px;
    font-weight: 800;
    font-family: "HelveticaNeue-boldItalic", "Segoe UI Bold Italic", "Yu Gothic", sans-serif;
    line-height: 30px;
    margin-bottom: 25px;
}

#policy h2 {
    font-size: 45px;
    font-weight: 800;
    font-family: "HelveticaNeue-boldItalic", "Segoe UI Bold Italic", "Yu Gothic", sans-serif;
    line-height: 30px;
    margin-bottom: 15px;
}

.top_sec {
    background-color: #2E90D8;
    height: 160px;
    color: #fff;
    text-align: center;
    padding-top: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.top_sec h2 {
    font-size: 40px;
    font-weight: 800;
    font-family: "HelveticaNeue-boldItalic", "Segoe UI Bold Italic", "Yu Gothic", sans-serif;
    line-height: 30px;
}

.contents_wrap {
    padding: 75px;
    background-color: #fff;
    margin: 0 auto 0;
    border-radius: 10px;
}

.contents_wrap p {
    line-height: 1.75em;
}

.h-blue {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2em;
    color: #fff;
    text-align: center;
    background-color: #284296;
    padding: 10px 20px 8px;
}

.h-wrap {
    margin-bottom: 40px;
    text-align: center;
}

.wrap {
    padding: 50px 15px 50px;
    background-color: #ECECEC;
    background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #F9F9F9), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, #F9F9F9), color-stop(.75, #F9F9F9), color-stop(.75, transparent), to(transparent));
    -webkit-background-size: 7px 7px;
}

.p-span p {
    margin-bottom: 15px;
}

.linkover {
    position: relative;
    z-index: 1;
    /* 必要であればリンク要素の重なりのベース順序指定 */
}

.linkover a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
    z-index: 2;
    /* 必要であればリンク要素の重なりのベース順序指定 */
}

@media screen and (max-width:767px) {
    #profile h2 {
        line-height: 1em;
    }

    .contents_wrap {
        padding: 25px
    }

    .h-blue {
        font-size: 20px;
        padding: 8px 10px 6px;
    }

    .h-wrap {
        margin-bottom: 1em;
        margin-top: 10px;
    }
}

@media screen and (max-width:991px) {
    /*.menu-left {height: 160px;}*/
}

/* ニュース
-------------------------------------------------------------------------*/
#news {
    color: #FFF;
}

#news h2 {
    font-size: 1.2em;
}

#news .title {
    background-color: #0068B4;
    text-align: center;
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#news .inner {
    padding: 15px 25px;
    background-color: black;
}

#news dl {
    font-size: 0.95em;
}

dl.topics {
    margin-bottom: 0;
}

@media screen and (min-width:768px) {
    dl.topics dt {
        width: 9em;
        float: left;
        clear: both;
        font-weight: 400;
    }

    dl.topics dd {
        padding: 0 0 0 2em;
        margin: 5px;
    }

    dl.news dt {
        width: 9em;
        float: left;
        clear: both;
        font-weight: 400;
    }

    dl.news dd {
        padding: 0 0 0 2em;
        margin: 15px 0;
        border-bottom: 1px dotted #999;
        padding-bottom: 15px;
    }
}

@media screen and (max-width:767px) {
    dl.topics dd {
        font-size: 0.9em;
        margin-left: 0em !important;
    }

    dl.topics dt {
        font-size: 0.9em;
        font-weight: 600;
    }

    dl.news dd {
        font-size: 0.9em;
        margin-left: 0em !important;
        border-bottom: 1px dotted #999;
        padding-bottom: 10px;
    }

    dl.news dt {
        font-size: 0.9em;
        font-weight: 600;
    }
}

/* ポリシー
-------------------------------------------------------------------------*/
#policy {
    background:
        url(../img/policy_bg02.png)center bottom /cover,
        url(../img/policy_bg01.png) center bottom no-repeat,
        url(../img/policy_bg03.png)25%,
        #2D429B;
    color: #fff;
}

#policy .inner {
    padding: 55px 0 175px 0;
}

#policy p {
    line-height: 1.6em;
    font-weight: 300;
}

@media screen and (max-width:767px) {
    #policy {
        background:
            url(../img/policy_bg02.png)center bottom /cover,
            url(../img/policy_bg01-sp.png) center bottom no-repeat,
            url(../img/policy_bg03.png)25%,
            #2D429B;
        color: #fff;
    }
}

/* グループ一覧
-------------------------------------------------------------------------*/
#group {
    background-color: #E8E9EC;
    padding: 20px 0 80px;
}

#group h2 {
    color: #284296;
    text-align: center;
}

.group_slide {
    margin: 10px;
}

.grp_btn_wrap {
    margin-top: 30px
}

.group_btn {
    display: inline-block;
    text-align: left;
    background-color: #fff;
    font-size: 1.2em;
    color: #284296;
    border: 1px solid #284296;
    font-weight: 500;
    padding: 15px 25px;
    position: relative;
    margin: 0 15px;
}

.group_btn:hover {
    background-color: #2D429B;
    color: #fff;
}

.group_slide p {
    text-align: center;
    color: #284296;
    font-weight: bold;
    margin-top: 10px;
    font-feature-settings: "palt";
}

.slide {
    position: relative;
    width: 80%;
    max-width: 990px;
    margin: 0 auto;
}

.slide2 {
    position: relative;
    width: 100%;
    margin: 0 auto -10px 0;
}

.slide .slider-arrow,
.slide2 .slider-arrow {
    position: absolute;
    top: 50%;
    width: 50px;
    margin-top: -50px;
    z-index: 10;
    cursor: pointer;
}

.slide .slider-prev,
.slide2 .slider-prev {
    left: -35px;
}

.slide .slider-next,
.slide2 .slider-next {
    right: -35px;
}

@media screen and (max-width:767px) {
    .grp_btn_wrap {
        margin-top: 5px
    }

    .group_btn {
        font-size: 16px;
        padding: 10px 12px;
        position: relative;
        margin: 0;
    }
}

@media screen and (max-width:480px) {
    .slide .slider-prev {
        left: -25px;
    }

    .slide .slider-next {
        right: -25px;
    }
}

.slide2 .slider-prev {
    left: 0px;
}

.slide2 .slider-next {
    right: 0px;
}
}

/*個別ページ（グループ一覧）
--------------------------*/
.cf:before,
.cf:after {
    content: "";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    zoom: 1;
}

#group_slider {
    max-width: 650px;
    margin: 3rem auto;
    text-align: center;
}

#featured_img img,
#thumb_img img {
    max-width: 100%;
}

#thumb_img {
    margin-top: 2%;
}

#thumb_img img {
    float: left;
    max-width: 32%;
    width: 32%;
    cursor: pointer;
    margin-right: 2%;
    border: 2px solid #eee;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#thumb_img img.active {
    border: 2px solid #cac6b8;
}

#thumb_img img:last-child {
    margin-right: 0;
}

.tepo_wrap {
    padding: 50px 40px 15px;
    background-color: #fff;
    margin: 0 auto 30px;
    border-radius: 10px;
}

@media screen and (max-width:767px) {
    .tepo_wrap {
        padding: 15px 0px 0px;
    }
}

/* 採用情報
-------------------------------------------------------------------------*/
#recruit .inner {
    background: url(../img/recruit_bg.png)center center /cover;
    color: #fff;
    padding: 60px 0 0
}

#recruit h2 {
    text-align: center;
    color: #fff;
}

#recruit .recruit_voice {
    max-width: 530px;
}

.voise_nav {
    text-align: center;
    margin: 0 !important;
    padding: 0 !important;
}

.voise_nav ul li {
    display: inline;
}

.voise_nav li {
    display: inline;
}

.recruit_voice_person {
    max-width: 400px;
}

.recruit_menu {
    background: url(../img/soft-pad.png);
    color: #fff;
    padding: 60px 0 55px;
    background-color: #2146aa;
}

.recruit_menu_wrap {
    background: url(../img/soft-pad.png);
    color: #fff;
    padding: 40px 0 30px;
    background-color: #2146aa;
}

#recruit h3 {
    text-align: center;
    padding: 15px 25px;
    background-color: #FFF;
    color: #284296;
    font-size: 1.3em;
}

#recruit h3 a {
    color: #284296;
}

#recruit h3:hover {
    background-color: #ffc914;
}

.rec_st01 {
    background: url(../img/recruit_st01.jpg)center center /cover;
    min-height: 480px;
}

.rec_st02 {
    background: url(../img/recruit_st03.jpg)center center /cover;
    min-height: 480px;
}

.rec_st_inner_r {
    padding: 25px 0 35px 35px;
}

.rec_st_inner_l {
    padding: 35px 35px 35px 0;
}

.rec_st_inner_r h4,
.rec_st_inner_l h4 {
    margin-bottom: 15px;
    line-height: 1.5em;
    color: #2E90D8
}

.rec_senpai {
    background: url(../img/recruit_bg.png)center center /cover;
    background-color: #284296;
    padding: 20px 20px 0 20px;
    border-radius: 15px;
    color: #fff;
    font-weight: 300
}

.rec_senpai img {
    max-width: 300px;
}

.rec_senpai_com {
    padding: 10px 15px 25px 15px;
}

.rec_senpai .date {
    font-size: 0.8em;
    margin-top: 4px;
    line-height: 1em;
}

.rec_senpai .name {
    font-weight: 400;
    font-size: 1.3em;
    border-bottom: 1px dotted #fff;
    padding-bottom: 5px;
    padding-left: 5px;
}

.rec_senpai .name2 {
    font-weight: 400;
    font-size: 1.3em;
    padding-bottom: 5px;
    padding-left: 5px;
}

.rec_senpai .rec_border {
    border-bottom: 1px dotted #fff;
    width: 100%;
}

.rec_senpai h4 {
    font-size: 1.3em;
    margin-top: 1em;
    margin-bottom: 10px;
}

.recruit_float_r {
    float: left;
    margin-bottom: 15px;
    width: 35%;
}

.recruit_float_r_main {
    width: 65%;
    float: right
}

.recruit_float_l {
    float: right;
    margin-bottom: 15px;
    width: 35%;
    text-align: right
}

.recruit_float_l_main {
    width: 65%;
    float: right
}

.rec_policy {
    font-weight: 600;
    font-size: 1.5em;
    background-color: #008ee6;
    color: #fff;
    padding: 12px 20px;
}


@media screen and (max-width: 991px) {

    .rec_st_inner_r,
    .rec_st_inner_l {
        padding: 25px 0;
        margin: 0 5px;
    }

    .rec_st01,
    .rec_st02 {
        margin: 0 5px;
    }

    .rec_senpai {
        padding: 0px;
    }

    .rec_senpai_photo {
        padding-top: 15px;
    }

    .recruit_float_r {
        width: 100%;
        text-align: center;
    }

    .recruit_float_r_main {
        width: 100%;
    }

    .recruit_float_l {
        width: 100%;
        text-align: center;
    }

    .recruit_float_l_main {
        width: 100%;
    }
}

/* 採用情報追加コンテンツ
-------------------------------------------------------------------------*/
#rec_Coment {
    text-align: center;
    margin-top: 55px
}

#rec_Coment p {
    font-size: 1.1em;
    line-height: 1.9;
    margin-bottom: 20px
}

#rec_Coment p.kyocho {
    font-size: 30px;
    font-weight: 600;
    text-align: center;
    color: #284296
}

#rec_Coment p.kyocho2 {
    font-size: 34px;
    line-height: 1.4;
    font-weight: 600;
    text-align: center;
    color: #f71072;
    margin-top: 35px
}

#rec_Coment ul {
    padding-left: 0;
    display: flex;
    margin: 55px 0 75px
}

#rec_Coment ul li {
    padding: 0 7px
}

.rec_list {
    padding-left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 50px 0 0
}

.rec_list li {
    border: 2px solid #284296;
    width: 100%;
    max-width: 880px;
    margin-bottom: 15px;
    text-align: center;
}

.rec_list li a {
    color: #284296;
    font-weight: 600;
    padding: 15px;
    display: block;
    font-size: 1.25rem;
    transition: all 0.3s ease;
}

.rec_list li a:before {
    content: "▶︎";
    margin-right: 8px
}

.rec_list li a:hover {
    background-color: #27a1fa;
    color: #fff;
}

.rec_list_wrap .rec_list li {
    background-color: #F9F9F9;
    width: 620px;
}

.part_tp {
    margin-top: 65px
}

.youkou_ttl {
    border: 1px solid #333;
    padding: 5px 25px;
    font-size: 22px;
    width: 260px;
    max-width: 100%;
    margin: 55px auto 35px
}

.rec_table {
    width: 100%;
    max-width: 800px;
}

.rec_table tr:last-child {
    border-bottom: none
}

.rec_table tr:first-child {
    border-top: none !important
}

.policy_block {
    margin-top: 65px;
    max-width: 920px;
    margin: 80px auto 55px
}

.policy_block h5 {
    text-align: center;
    margin-bottom: 45px;
    color: #284296;
}

.policy_block h5 span {
    font-size: 34px;
    font-weight: 600;
    border-bottom: dotted 4px #284296;
    padding: 0 15px 8px 15px;
    display: inline-block
}

.policy_block p {
    font-size: 1.1em !important;
    line-height: 1.9;
    margin-bottom: 1.5em
}

.policy_block p span {
    font-weight: 600;
    color: #ff6311
}

#ric_list_cont {
    margin-bottom: 60px
}


@media screen and (max-width: 767px) {
    .rec_table th {
        background-color: #f5f5f5
    }

    .rec_table tr:first-child {
        border-top: 1px dotted #333 !important
    }

    #rec_Coment {
        margin-top: 25px;
        text-align: left
    }

    #rec_Coment p {
        font-size: 15px;
        line-height: 1.75;
        margin-bottom: 15px
    }

    #rec_Coment p.kyocho {
        font-size: 18px;
        text-align: left;
    }

    #rec_Coment p.kyocho2 {
        font-size: 18px;
        line-height: 1.6;
        text-align: center;
        margin-top: 25px
    }

    #rec_Coment ul {
        margin: 25px 0 35px
    }

    #rec_Coment ul li {
        padding: 0 5px 0 0
    }

    #rec_Coment ul li:last-child {
        padding: 0
    }

    .rec_list {
        margin: 30px 0 0
    }

    .rec_list li a {
        padding: 8px;
        display: block;
        font-size: 1rem;
    }

    .part_tp {
        margin-top: 45px
    }

    .youkou_ttl {
        border: 1px solid #333;
        padding: 5px 25px;
        font-size: 22px;
        width: 260px;
        max-width: 100%;
        margin: 55px auto 35px
    }

    .rec_table {
        width: 100%;
        max-width: 800px;
    }

    .policy_block {
        margin: 30px auto 30px
    }

    .policy_block h5 {
        margin-bottom: 20px;
        color: #284296;
    }

    .policy_block h5 span {
        font-size: 20px;
        padding: 0 15px 8px 15px;
    }

    .policy_block p {
        font-size: 15px !important;
        line-height: 1.75;
        margin-bottom: 15px
    }

    .policy_block p span {
        font-weight: 600;
        color: #ff6311
    }

    #ric_list_cont {
        margin-bottom: 40px
    }

}


/*求人アコーディオン*/
.acd_wrap {
    margin-bottom: 15px
}

.acd-check {
    display: none;
}

.acd-label {
    background: #fff;
    border: 3px solid #284296;
    color: #284296;
    font-weight: 600;
    display: block;
    margin-bottom: 15px;
    padding: 18px 15px 20px;
    position: relative;
    font-size: 1.3rem;
    line-height: 1;
    max-width: 960px;
    margin: 0 auto
}

.acd-label:after {
    background: #00479d;
    box-sizing: border-box;
    content: '\e902';
    display: block;
    /*height: 52px;*/
    padding: 18px 20px 20px;
    position: absolute;
    right: 0;
    top: 0px;
    color: #fff;
}

.acd-content {
    /*オープンパネル*/
    border: 3px solid #284296;
    border-top: none;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    overflow: hidden;
    max-width: 960px;
    margin: 0 auto
}

.acd-check:checked + .acd-label:after {
    content: '\e904';
}

.acd-check:checked + .acd-label + .acd-content {
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    padding: 50px
}

@media screen and (max-width: 767px) {
    .acd-label {
        padding: 12px 10px 14px;
        font-size: 1.1rem;
        line-height: 1;
    }

    .acd-label:after {
        padding: 12px 15px 14px;
    }

    .acd-check:checked + .acd-label + .acd-content {
        height: auto;
        opacity: 1;
        padding: 10px;
        visibility: visible;
        padding: 20px 15px
    }
}

ul.dl-link {
    margin: 0 !important;
    display: flex;
    justify-content: center
}

ul.dl-link li {
    background-color: aqua
}

/*採用PDFダウンロード*/
@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";

.pdf_link {
    display: flex;
    justify-content: center
}

.pdf_link .btn,
.pdf_link a.btn,
.pdf_link button.btn {
    font-weight: 600;
    line-height: 1.1;
    position: relative;
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 1px;
    color: #212529;
    border-radius: 8px;
}

.pdf_link .btn-wrap {
    margin: 35px 10px 20px;
}

.pdf_link a.btn-c {
    font-size: 20px;
    position: relative;
    padding: 8px 10px 11px 10px;
    color: #fff;
    background: #e94919;
    -webkit-box-shadow: 0 5px 0 #d44114;
    box-shadow: 0 5px 0 #d44114;
    width: 285px
}

.pdf_link a.btn-c span {
    font-size: 15px;
    position: absolute;
    top: -12px;
    left: calc(50% - 125px);
    display: block;
    width: 250px;
    padding: 2px 0;
    color: #d44114;
    border: 2px solid #d44114;
    border-radius: 100vh;
    background: #fff;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.pdf_link a.btn-c span:before,
.pdf_link a.btn-c span:after {
    position: absolute;
    left: calc(50% - 10px);
    content: "";
}

.pdf_link a.btn-c span:before {
    bottom: -10px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #d44114 transparent transparent transparent;
}

.pdf_link a.btn-c span:after {
    bottom: -7px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.pdf_link a.btn-c i {
    margin-right: 6px;
}

.pdf_link a.btn-c:hover {
    -webkit-transform: translate(0, 3px);
    transform: translate(0, 3px);
    color: #fff;
    background: #eb5b30;
    -webkit-box-shadow: 0 2px 0 #d44114;
    box-shadow: 0 2px 0 #d44114;
}

@media screen and (max-width: 767px) {
    .pdf_link {
        flex-flow: column;
        align-items: center;
        margin-top: 30px
    }

    .pdf_link .btn-wrap {
        margin: 20px 0
    }
}

/* 会社概要
-------------------------------------------------------------------------*/
#profile {
    padding: 60px 0 10px;
}

#profile h2 {
    color: #284296;
    text-align: center;
}

@media screen and (min-width:768px) {
    dl.enkaku {}

    dl.enkaku dt {
        width: 7em;
        float: left;
        clear: both;
    }

    dl.enkaku dd {
        padding: 0 0 0 7em;
        margin: 5px;
    }

    .table-sp2 td {
        min-width: 650px;
    }
}

@media screen and (max-width:767px) {

    dl.enkaku dd {
        font-size: 0.9em;
        margin-left: 0em !important;
    }

    dl.enkaku dt {
        font-size: 0.9em;
        font-weight: 600;
    }
}


/* お問い合わせ
-------------------------------------------------------------------------*/
#contact {
    color: #fff;
    padding: 0;
}

#contact h2 {
    color: #fff;
    text-align: center;
}

#contact .blank {
    background: url(../img/contact_bg.svg)left top /cover;
    height: 180px;
}

#contact .inner {
    background-color: #284296;
    text-align: center;
    padding-bottom: 60px;
    margin-top: -1px;
}

#contact .rec-p {
    font-weight: 600;
    margin-bottom: 7px;
    color: yellow;
}

.btn-border {
    display: inline-block;
    background-color: #fff;
    font-size: 1.2em;
    color: #284296;
    text-decoration: none;
    font-weight: 500;
    padding: 15px 65px;
}

.btn-border:hover {
    background-color: #9ec34b;
    border-color: #cbe585;
    color: #FFF;
}

@media screen and (max-width:767px) {
    #contact .blank {
        height: 60px;
    }

    .btn-border {
        padding: 15px 25px;
    }
}

/* フッター
-------------------------------------------------------------------------*/
footer {
    background-color: #212121;
    color: #fff;
    padding: 8px 15px;
    font-weight: 300;
    font-size: 0.9em;
}

footer .privacy {
    float: left;
    text-align: right;
}

footer .copy {
    text-align: right;
}

footer a {
    color: #fff;
}

@media screen and (max-width:767px) {
    footer .privacy {
        float: none;
        text-align: left;
    }

    footer .copy {
        float: none;
        text-align: left;
    }
}


/* 個人情報保護方針 
-------------------------------------------------------------------------*/
.privasy-box h4 {
    border-left: 5px solid #2E90D8;
    padding-left: 10px;
    font-size: 20px;
}

.privasy-box p {
    margin-left: 1em;
    margin-bottom: 1.5em;
}

/* リンク 
-------------------------------------------------------------------------*/
#link h3 {
    font-size: 20px;
    border-bottom: solid 1px #284296;
    border-left: solid 5px #284296;
    padding-bottom: 8px;
    padding-left: 10px;
    margin-bottom: 20px;
}

#link ul {
    margin-bottom: 30px;
}

#link ul li {
    margin-bottom: 8px;
    list-style: circle;
    margin-bottom: 13px;
}

#link a {
    color: black;
}

#link a:hover {
    color: #2E90D8;
}

#link span {
    font-size: 0.8em;
    color: #ff7c37
}

/*テーブル共通
-------------------------------------------------------------------------*/

.table-sp {

    margin: 0 auto;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 1.05em !important;
    line-height: 1.6em
}

.table-sp th {
    text-align: left;
    padding: 15px;
    width: 25%;
    white-space: nowrap;
}

.table-sp td {
    text-align: left;
    padding: 15px;
}

.table-sp tr {
    border-bottom: 1px dotted #333;
}

.table-sp tr:first-child {
    border-top: 1px dotted #333;
}

@media screen and (max-width: 991px) {

    .table-sp,
    .table-sp tbody,
    .table-sp thead,
    .table-sp tr,
    .table-sp td,
    .table-sp th {
        display: block;
        text-align: left;
    }

    .table-sp th {}

    .table-sp {
        font-size: 1em !important;
    }

    .table-sp th {
        padding: 5px 10px;
        width: auto;
        border-bottom: 1px dotted #555555;
    }

    .table-sp td {
        border: none;
        padding: 10px;
    }
}

.iwaikin-form {
    text-align: center;
    margin-bottom: 30px
}

.iwaikin {
    font-weight: 600;
    color: #254fd6;
    display: inline-block;
    border-bottom: double 6px #fac987;
}

.iwaikin-form .iwaikin {
    color: #f41832
}
