@charset="UTF=8"
    
/*-------メッセージ-------*/
.contheader__container--company {
    border-bottom: solid 6px #2e6c86;
    border-bottom: solid 6px var(--company-color-2);
}
.contheader__container {
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    background-image: url(../img/company-top.jpg);
    border-bottom: solid 6px #2e6c86;
    border-bottom: solid 6px var(--company-color-2);
}

.contheader__container--service {
    background-image: url(../img/service-top.jpg);
    background-position: center;
    border-bottom: solid 6px #3a7aa7;
    border-bottom: solid 6px var(--service-color-2);
}
.contheader__container--contact{
    background-image: url(../img/contact-top.jpg);
    background-position: center;
    border-bottom: solid 6px #3a7aa7;
    border-bottom: solid 6px var(--service-color-2);
}

.contheader__title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 290px;
    padding-top: 75px;
	 text-decoration: none !important;
	 box-sizing: content-box;
}
@media (max-width: 799px){
.contheader__title { height: auto; padding: 12% 0 6%;}
}

.contheader__title div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.contheader__title__text--en {
    text-align: center;
    font-family: 'Dosis', sans-serif;
    font-size: 40px;
    letter-spacing: 0.5em;
    margin-left: 0.5em;
}
@media (max-width: 799px){
.contheader__title__text--en { font-size: 7.5vw; letter-spacing: 0.2em;}
}

.contheader__title__text {
    margin: 10px 0 0 0;
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 0 0 0.5em #000;
	font-family: "Dosis", sans-serif;
	font-weight: bold;
}

.contheader__title__text--ja {
    margin-top: 10px;
    text-align: center;
    font-size: 18px;
    font-weight: 300;
    letter-spacing: 0.5em;
    margin-left: 0.5em;
	font-family: "Dosis", sans-serif;
	font-weight: bold;
}
@media (max-width: 799px){
.contheader__title__text--ja { font-size: 4vw; line-height: 1.5em; margin: 0;}
}

.contheader__menu__list--company {
    background-color: rgba(121, 185, 212, 0.6);
    background-color: rgba(var(--company-color-5-rgb), 0.6);
}

.contheader__menu__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
    padding: 3px 0;
    list-style: none;
}

.contheader__menu__list li {
    line-height: 34px;
    margin-top: auto;
    margin-bottom: auto;
}

.contheader__menu__list a {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    letter-spacing: 0.3em;
    margin: 3px 1.2em;
}

.contheader__menu__list a::before {
    font-family: 'FontAwesome';
    content: '\f0da';
    margin-right: 0.6em;
    opacity: 0.5;
    speak: none;
}

.contheader__menu__list a:hover {
    opacity: 0.7;
}


/*---------共通部分---------*/

.content-box {
    padding-top: 10px;
    padding-bottom: 40px;
    font-size: 14px;
    line-height: 1.8;
}


.page__title {
    text-align: center;
    color: #989898;
    margin-bottom: 30px;
}

.__width {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    padding-left: 15px;
    padding-right: 15px;
}

/*---------会社概要---------*/

/*
.seclist

使用例
<section class="seclist">
    <div class="seclist__row">
        <h5 class="seclist__title">項目名</h5>
        <p class="seclist__text">内容</div>

    <div class="seclist__row">
        <h5 class="seclist__title">項目名</h5>
        <ul class="seclist__text">
            <p>内容</p>
            <li>リスト１</li>
            <li>リスト２</li>
        </ul></div>
</section>

以下のオプションを組み合わせ可能
.seclist--comhis ：沿革用にカスタム
.seclist__text--link：テキスト内リンク
*/

.seclist-box{
    background: #fffbfe;
    margin-bottom: 30px;
}

.seclist {
    width: 90vw;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    /*内容の文字色*/
    color: var(--fontdef-color);
    color: rgba(34, 34, 34, 0.75);
    /*2px × 2pxのドットで間隔が8pxの点線をbottomに表示*/
    background-image: -webkit-linear-gradient(left, rgb(211, 211, 211), rgb(211, 211, 211) 2px, transparent 2px, transparent 10px);
    background-image: -moz-linear-gradient(left, rgb(211, 211, 211), rgb(211, 211, 211) 2px, transparent 2px, transparent 10px);
    background-image: -o-linear-gradient(left, rgb(211, 211, 211), rgb(211, 211, 211) 2px, transparent 2px, transparent 10px);
    background-image: linear-gradient(to right, rgb(211, 211, 211), rgb(211, 211, 211) 2px, transparent 2px, transparent 10px);
    background-image: var(--dotted-line);
    -webkit-background-size: 10px 2px;
    -moz-background-size: 10px 2px;
    -o-background-size: 10px 2px;
    background-size: 10px 2px;
    background-position: bottom;
    background-repeat: repeat-x;
}

.seclist__row {
    width: 100;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1.4em 0;
    border-bottom: 3px dotted #bababa;
}

.seclist__title {
    /*フォント*/
    letter-spacing: 0.5em;
    font-weight: bold;
    /*配置*/
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 250px;
    -moz-box-flex: 0;
    -ms-flex: 0 0 250px;
    flex: 0 0 250px;
    margin: 0 1em 0 40px;
}

.seclist__title::before {
    /*項目タイトルの前にアイコンを表示*/
    content: '\f111';
    font-family: 'FontAwesome';
    margin-right: 0.3em;
    opacity: 0.2;
    speak: none;
}

.seclist__text {
    /*フォント*/
    letter-spacing: 0.2em;
    margin-left: 0.2em;
    /*配置*/
    margin: 0 1em 0 0;
}

.seclist ul {
    /*リストの頭を他のテキストと合わせる*/
    padding-left: 1.5em;
    list-style: circle;
}

.seclist ol {
    /*リストの頭を他のテキストと合わせる*/
    padding-left: 2em;
}

.seclist__text li {
    list-style: none;
    margin-left: -1.5em;
}

.seclist__text li:before {
    /*項目タイトルの前にアイコンを表示*/
    content: "・";
    margin-right: 0.1em;
    opacity: 0.7;
    speak: none;
}

.seclist__text p {
    /*リスト内のnot箇条書き要素の頭を、他のテキストと合わせる*/
    margin-left: -1.5em;
}

.seclist__text p:first-child {
    /*リスト内のnot箇条書き要素のtopを揃える*/
    margin-top: 0;
}

.seclist__text--link {
    /*テキスト*/
    color: #393939;
    color: var(--gray-color);
    vertical-align: baseline;
}

.seclist__text--link:hover {
    color: #dbb151;
    color: var(--others-color-4);
    border-bottom: dashed 1.2px #dbb151;
    border-bottom: dashed 1.2px var(--others-color-4);
    opacity: 0.7;
}

@media (max-width: 799px) {
    /*スマホ・タブレット用*/
    .seclist__title {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 25vw;
        -moz-box-flex: 0;
        -ms-flex: 0 0 25vw;
        flex: 0 0 25vw;
        margin-left: 15px;
    }
}


/* .seclist--comhis：沿革用にカスタム
-------------------------------------*/

.seclist--comhis .double {
    /*同年で2つ目以降の時は点線表示しない*/
    background-image: none;
}

.seclist--comhis .double > .seclist__title::before {
    /*同年で2つ目以降の時はタイトル表示しない*/
    display: none;
}

.seclist--comhis .seclist__title {
    /*サイズ*/
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 180px;
    -moz-box-flex: 0;
    -ms-flex: 0 0 180px;
    flex: 0 0 180px;
    /*フォント*/
    letter-spacing: 0.1em;
    /*配置*/
    margin-left: 0 0 0 20px;
}

.seclist--comhis .seclist__month {
    /*--月--*/
    /*サイズ*/
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 3em;
    -moz-box-flex: 0;
    -ms-flex: 0 0 3em;
    flex: 0 0 3em;
    /*配意*/
    margin: 0 20px 0 0;
    /*フォント*/
    letter-spacing: 0.1em;
    font-weight: bold;
    text-align: right;
}

.seclist--comhis .seclist__text {
    margin-left: 2em;
}

@media (max-width: 499px) {
    /*スマホ用*/
    .seclist--comhis .seclist__row {
        /*左詰で段落ち設定*/
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -moz-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
    .seclist--comhis .seclist__title {
        /*タイトルの幅を狭く*/
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 14em;
        -moz-box-flex: 0;
        -ms-flex: 0 0 14em;
        flex: 0 0 14em;
        margin: 0 0 0 5px;
    }
    .seclist--comhis .seclist__month,
    .seclist--comhis .seclist__text {
        /*頭を揃える*/
        margin-left: 5px;
    }
    .seclist--comhis .seclist__text {
        /*段落ちするように幅を広く設定*/
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 90vw;
        -moz-box-flex: 0;
        -ms-flex: 0 0 90vw;
        flex: 0 0 90vw;
        padding-top: 10px;
    }
    .seclist--comhis .double > .seclist__title::before {
        /*タイトル表示復活*/
        display: inline;
    }
    .seclist--comhis .double> .seclist__title::after {
        content: "同年";
    }
    .seclist--comhis .double> .seclist__title {
        /*"同年"に合わせて狭く*/
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 5em;
        -moz-box-flex: 0;
        -ms-flex: 0 0 5em;
        flex: 0 0 5em;
    }
}

.seclist__text--imp--reccareer {
    /*強調テキスト*/
    color: #35989d;
    color: var(--recruit-color-3);
}


/*------------ここからサービス-----------------*/

.sertop__message,
.sertop__service > .inner {
    width: 90vw;
    max-width: 1200px;
    color: #7c7c7c;
}

.sertop__message__body__copy,
.sertop__service__body__copy {
    /*フォント*/
    font-size: 1.5em;
    letter-spacing: 0.2em;
    text-align: left;
    font-weight: normal;
    /*ベース*/
    padding: 0 0 10px 0;
    margin: 10px 0 30px 0;
    border-bottom: 3px dotted #ccc;
}

.sertop__message__img {
    /*--画像--*/
    background-image: url(../img/service-img.jpg);
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.sertop__service {
    margin: 60px 0;
}

.sertop__service > .inner {
    margin: 0 auto;
}

.sertop__service__img {
    /*--画像--*/
    background-image: url(../img/service-img2.jpg);
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.sertop__menumessage {
    /*リンクメニュー上メッセージ*/
    width: 100vw;
    max-width: 100%;
    margin: 0 auto 10px auto;
    /*ベース*/
    padding: 0 0 0.5em 0;
}

.sertop__menumessage__icon {
    width: 100%;
    text-align: center;
    margin: 0.5em auto 10px auto;
    /*フォント*/
    font-size: 4rem;
    color: lightgray;
    opacity: 0.5;
}

.service__icon {
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    width: 90px;
    height: 90px;
    margin: 10px auto 0 auto;
}

.sertop__title {
    text-align: center;
    color: gray;
    margin: 40px 0 20px 0;
}

/*------------レスポンシブ-----------------*/

@media (max-width: 799px){
.__width {
    max-width: 90vw;
    padding: 0;
}
    
    .contheader__menu__list a {
        font-size: 11.2px;
    }
    .message-txt{
        font-size: 11.4px;
    }
    
    .seclist__text{
        font-size: 11.4px;
    }

.page__copy {
    font-size: 14.4px;
}


.comacc__title {
    text-align: center;
    margin-left: 0.3em;
    font-size: 17.6px;
}

.comacc__body__row--address {
    display: block;
}
    
.comacc__body__row__btn {
    margin: 1em 0;
}

    .comacc__body__row{
        font-size: 11.4px;
    }
    
    .sertop__message,.sertop__service {
        max-width: 90vw;
        margin-left: auto;
        margin-right: auto;
    }
    .sertop__service > .inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
        -moz-box-orient: vertical;
        -moz-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
    .sertop__service__bgd {
        display: none;
    }
    .sertop__message__img,
    .sertop__service__img {
        /*横長表示*/
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        max-width: 100%;
        width: 90vw;
        height: 60vw;
        margin-top: 20px;
        margin-bottom: -20px;
    }
    
    .sertop__message__body__copy{
        font-size: 16px;
    }
    .sertop__message__body__copy > br {
        display: none;
    }
    .service__example__body {
        display: block;
        max-width: 100%;
    }
    .service__example__body > div {
        height: 150px;
        margin: -30px auto 20px auto;
    }
    .service__example__body > ul {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
    

}

@media (min-width: 500px) and (max-width: 799px) {
    /*タブレット用*/
    .sertop__message__img,
    .sertop__service__img {
        height: 250px;
    }
}

@media (min-width: 800px) {
    /*大きな画面*/
    .sertop__message,
    .sertop__service > .inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
        -webkit-align-items: stretch;
        -moz-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .sertop__message {
        margin-top: -20px;
    }
    .sertop__service > .inner {
        margin-top: 40px;
    }
    .sertop__service {
        position: relative;
    }
    .sertop__service__bgd {
        z-index: -1;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 20px;
        right: 0;
        background-color: rgb(229, 229, 229);
        background-color: #f0f0ff;
    }
    .sertop__service__body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -moz-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 600px;
        padding: 40px 20px 40px 20px;
    }
    .sertop__service__img {
        width: 100%;
        min-width: 100px;
        height: auto;
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 40%;
        -moz-box-flex: 1;
        -ms-flex: 1 1 40%;
        flex: 1 1 40%;
        /*配置*/
        margin: 50px 30px -30px 0;
    }
    .sertop__message__body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -moz-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 600px;
        padding: 20px 0 10px 60px;
    }
    .sertop__message__img {
        width: 100%;
        min-width: 100px;
        height: auto;
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 40%;
        -moz-box-flex: 1;
        -ms-flex: 1 1 40%;
        flex: 1 1 40%;
        /*配置*/
        margin: 70px 0 0 30px;
    }
    .sertop__message__body__text {
        margin: 1em 0 0 0;
    }
    .sertop__service__body__text {
        margin: 0;
    }
}



/*サービス詳細_200325*/
#service_list ul{ max-width: 1200px; margin: 0 auto;}
#service_list ul li{ margin: 40px auto;}
#service_list dl{ display: flex; justify-content: center; flex-direction: row;}
#service_list ul li:nth-child(2n) dl{ flex-direction: row-reverse;}
#service_list dl dt{ width: 50%; display: flex; justify-content: center; flex-direction: column;}
#service_list dl dd{ width: 50%; padding: 0 40px; box-sizing: border-box;}
#service_list dl dd img{ border-radius: 20px;}
#service_list dl dt h3{ font-size: 2.25em; letter-spacing: 0.1em; line-height: 1.5em; margin-bottom:20px; color: #7c7c7c; border-bottom: 2px dotted #7c7c7c;}
#service_list dl dt p{ font-size: 1.5em; line-height: 1.5em; color: #7c7c7c;}
@media (max-width: 799px){
#service_list ul{ max-width:94%; width: 94%;}
#service_list ul li{ margin:3% auto 12%;}
#service_list ul li:last-child{ margin-bottom: 0;}
#service_list dl{ display:block;}
#service_list dl dt{ width:100%; display:block; margin-bottom: 3%;}
#service_list dl dd{ width:100%; padding:0;}
#service_list dl dd img{ border-radius:3vw;}
#service_list dl dt h3{ font-size:5vw; margin-bottom:3%;}
#service_list dl dt p{ font-size:3.5vw;}
}

