@charset "UTF-8";

/*----------------------------------------------------
 Reset
----------------------------------------------------*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

ul[class], ol[class] {
    padding: 0;
}

body, h1, h2, h3, h4, p, ul[class], ol[class], li, figure, figcaption, blockquote, dl, dd {
    margin: 0;
}

body {
    min-height: 100vh;
    scroll-behavior: smooth;
    line-height: 1.7;
    -webkit-text-size-adjust: 100%;
}

ul[class], ol[class] {
    list-style: none;
}

img {
    max-width: 100%;
    display: block;
}

input, button, textarea, select {
    font: inherit;
}

/*----------------------------------------------------
 flex
----------------------------------------------------*/
.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-grow-0{flex-grow:0}.flex-grow{flex-grow:1}.flex-shrink-0{flex-shrink:0}.flex-shrink{flex-shrink:1}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.order-first{order:-9999}.order-last{order:9999}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-center{align-content:center}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}

@media (min-width: 768px) {
    .md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:flex-grow-0{flex-grow:0}.md\:flex-grow{flex-grow:1}.md\:flex-shrink-0{flex-shrink:0}.md\:flex-shrink{flex-shrink:1}.md\:order-1{order:1}.md\:order-2{order:2}.md\:order-3{order:3}.md\:order-4{order:4}.md\:order-5{order:5}.md\:order-6{order:6}.md\:order-7{order:7}.md\:order-8{order:8}.md\:order-9{order:9}.md\:order-10{order:10}.md\:order-11{order:11}.md\:order-12{order:12}.md\:order-first{order:-9999}.md\:order-last{order:9999}.md\:order-none{order:0}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-center{justify-content:center}.md\:justify-between{justify-content:space-between}.md\:justify-around{justify-content:space-around}.md\:justify-evenly{justify-content:space-evenly}.md\:items-start{align-items:flex-start}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:items-baseline{align-items:baseline}.md\:items-stretch{align-items:stretch}.md\:content-center{align-content:center}.md\:content-start{align-content:flex-start}.md\:content-end{align-content:flex-end}.md\:content-between{align-content:space-between}.md\:content-around{align-content:space-around}.md\:content-evenly{align-content:space-evenly}.md\:self-auto{align-self:auto}.md\:self-start{align-self:flex-start}.md\:self-end{align-self:flex-end}.md\:self-center{align-self:center}.md\:self-stretch{align-self:stretch}
}
@media (min-width: 1024px) {
    .lg\:block{display:block}.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:flex-wrap{flex-wrap:wrap}.lg\:flex-nowrap{flex-wrap:nowrap}.lg\:flex-grow-0{flex-grow:0}.lg\:flex-grow{flex-grow:1}.lg\:flex-shrink-0{flex-shrink:0}.lg\:flex-shrink{flex-shrink:1}.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:order-3{order:3}.lg\:order-4{order:4}.lg\:order-5{order:5}.lg\:order-6{order:6}.lg\:order-7{order:7}.lg\:order-8{order:8}.lg\:order-9{order:9}.lg\:order-10{order:10}.lg\:order-11{order:11}.lg\:order-12{order:12}.lg\:order-first{order:-9999}.lg\:order-last{order:9999}.lg\:order-none{order:0}.lg\:justify-start{justify-content:flex-start}.lg\:justify-end{justify-content:flex-end}.lg\:justify-center{justify-content:center}.lg\:justify-between{justify-content:space-between}.lg\:justify-around{justify-content:space-around}.lg\:justify-evenly{justify-content:space-evenly}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:items-baseline{align-items:baseline}.lg\:items-stretch{align-items:stretch}.lg\:content-center{align-content:center}.lg\:content-start{align-content:flex-start}.lg\:content-end{align-content:flex-end}.lg\:content-between{align-content:space-between}.lg\:content-around{align-content:space-around}.lg\:content-evenly{align-content:space-evenly}.lg\:self-auto{align-self:auto}.lg\:self-start{align-self:flex-start}.lg\:self-end{align-self:flex-end}.lg\:self-center{align-self:center}.lg\:self-stretch{align-self:stretch}
}
@media (min-width: 1280px) {
    .xl\:block{display:block}.xl\:flex{display:flex}.xl\:inline-flex{display:inline-flex}.xl\:flex-wrap{flex-wrap:wrap}.xl\:flex-nowrap{flex-wrap:nowrap}.xl\:flex-grow-0{flex-grow:0}.xl\:flex-grow{flex-grow:1}.xl\:flex-shrink-0{flex-shrink:0}.xl\:flex-shrink{flex-shrink:1}.xl\:order-1{order:1}.xl\:order-2{order:2}.xl\:order-3{order:3}.xl\:order-4{order:4}.xl\:order-5{order:5}.xl\:order-6{order:6}.xl\:order-7{order:7}.xl\:order-8{order:8}.xl\:order-9{order:9}.xl\:order-10{order:10}.xl\:order-11{order:11}.xl\:order-12{order:12}.xl\:order-first{order:-9999}.xl\:order-last{order:9999}.xl\:order-none{order:0}.xl\:justify-start{justify-content:flex-start}.xl\:justify-end{justify-content:flex-end}.xl\:justify-center{justify-content:center}.xl\:justify-between{justify-content:space-between}.xl\:justify-around{justify-content:space-around}.xl\:justify-evenly{justify-content:space-evenly}.xl\:items-start{align-items:flex-start}.xl\:items-end{align-items:flex-end}.xl\:items-center{align-items:center}.xl\:items-baseline{align-items:baseline}.xl\:items-stretch{align-items:stretch}.xl\:content-center{align-content:center}.xl\:content-start{align-content:flex-start}.xl\:content-end{align-content:flex-end}.xl\:content-between{align-content:space-between}.xl\:content-around{align-content:space-around}.xl\:content-evenly{align-content:space-evenly}.xl\:self-auto{align-self:auto}.xl\:self-start{align-self:flex-start}.xl\:self-end{align-self:flex-end}.xl\:self-center{align-self:center}.xl\:self-stretch{align-self:stretch}
}

/*----------------------------------------------------
 display
----------------------------------------------------*/
.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.hidden{display:none}.flex{display:flex}.inline-flex{display:inline-flex}

@media (min-width: 768px) {
    .md\:block{display:block}.md\:inline{display:inline}.md\:inline-block{display:inline-block}.md\:hidden{display:none}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}
}
@media (min-width: 1024px) {
    .lg\:block{display:block}.lg\:inline{display:inline}.lg\:inline-block{display:inline-block}.lg\:hidden{display:none}.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}
}
@media (min-width: 1280px) {
    .xl\:block{display:block}.xl\:inline{display:inline}.xl\:inline-block{display:inline-block}.xl\:hidden{display:none}.xl\:flex{display:flex}.xl\:inline-flex{display:inline-flex}
}

/*----------------------------------------------------
    Component
----------------------------------------------------*/
/* clearfix */
.clearfix {
    clear: both;
    zoom: 1;
}

.clearfix:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* rollover */
.rollover {
    animation: horizontalY 1s ease-in-out infinite alternate;
            transition: all 1s;
    -webkit-transition: all 1s;
}

.rollover:hover {
    animation: horizontalY 0.5s ease-in-out infinite alternate;
            transition: all 0.5s;
    -webkit-transition: all 0.5s;
    filter: alpha(opacity=70);
    opacity: 0.7;
}

/* innerlink */
.innerlink {
    display: block;
    height: 1px;
    position: relative;
    top: -60px;
}

/* pc/sp */
.pc {
    display: none;
}

.pc-i {
    display: none;
}

.sp {
    display: block;
}

.sp-i {
    display: inline;
}

@media (min-width: 768px) {
    .pc {
        display: block;
    }

    .pc-i {
        display: inline;
    }

    .sp,
    .sp-i {
        display: none;
    }
}

/*----------------------------------------------------
 header
----------------------------------------------------*/
.header {
    margin: 0 auto;
    max-width: 1100px;
    padding: 1rem;
    text-align: center;
}

.header-logo {
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 1.75rem;
    font-weight: normal;
}

@media (min-width: 768px) {
    .header {
        padding: 3rem 2rem .5rem;
    }
    .header-logo {
        font-size: 2rem;
    }
}
@media (min-width: 1024px) {
}
@media (min-width: 1280px) {
}

/*----------------------------------------------------
 main-visual
----------------------------------------------------*/
.main-visual {
    margin-bottom: 3rem;
}
.main-visual img {
    width: 100%;
}

@media (min-width: 768px) {
    .main-visual {
        margin-bottom: 6rem;
    }
}
@media (min-width: 1024px) {
}
@media (min-width: 1280px) {
}

/*----------------------------------------------------
 company
----------------------------------------------------*/
.company {
    margin: 0 auto 4rem;
    max-width: 850px;
    padding: 0 1rem;
}

.company-title {
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 1.5rem;
    margin-bottom: 3rem;
    text-align: center;
}

/* img */
.company-images {
    margin: 0 -0.5rem;
}
.company-images > div {
    padding: 0 .5rem 1rem;
    width: 50%;
}

@media (min-width: 768px) {
    .company {
        margin-bottom: 10rem;
        padding: 0 2rem;
    }
    
    .company-title {
        font-size: 2rem;
        margin-bottom: 6rem;
    }
    
    /* img */
    .company-images {
        margin: 0 -20px;
    }
    .company-images > div {
        padding: 0 20px;
        width: 33%;
    }
    .company-images > div img {
        width: 100%;
    }
}
@media (min-width: 1024px) {
    .company {
        margin-bottom: 12rem;
    }
    .company-images {
        margin: 0 -100px;
    }
}
@media (min-width: 1280px) {
}

/*----------------------------------------------------
 recruit
----------------------------------------------------*/
.recruit {
    margin: 0 auto 3rem;
    max-width: 850px;
    padding: 0 1rem;
}

.recruit-title {
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 1.5rem;
    margin-bottom: 3rem;
    text-align: center;
}

.recruit-catch {
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 1.75rem;
    margin-bottom: 3rem;
    text-align: center;
}

@media (min-width: 768px) {
    .recruit {
        margin-bottom: 10rem;
        padding: 0 2rem;
    }
    
    .recruit-title {
        font-size: 2rem;
        margin-bottom: 6rem;
    }
    
    .recruit-catch {
        font-size: 2.25rem;
        margin-bottom: 6rem;
    }
}
@media (min-width: 1024px) {
    .recruit-catch {
        font-size: 2.5rem;
        margin-left: -100px;
        margin-right: -100px;
    }
}
@media (min-width: 1280px) {
}
/*----------------------------------------------------
 table
----------------------------------------------------*/
.company table,
.recruit table {
    border-collapse: collapse;
    margin-bottom: 3rem;
    width: 100%;
}

.company tr th,
.company tr td,
.recruit tr th,
.recruit tr td {
    border-bottom: 1px solid #333;
}
.company tr + tr th,
.company tr + tr td,
.recruit tr + tr th,
.recruit tr + tr td {
    padding-top: 2rem;
}
.company th,
.recruit th {
    font-weight: normal;
    text-align: left;
    vertical-align: top;
    white-space: nowrap;
}
.company td,
.recruit td {
    padding-left: .5rem;
}

@media (min-width: 768px) {
    .company table,
    .recruit table {
        margin-bottom: 4rem;
    }
    
    .company tr th,
    .company tr td,
    .recruit tr th,
    .recruit tr td {
        font-size: 1.25rem;
    }

    .company tr + tr th,
    .company tr + tr td,
    .recruit tr + tr th,
    .recruit tr + tr td {
        padding-top: 3rem;
    }
    .company td,
    .recruit td {
        text-align: right;
    }
}
@media (min-width: 1024px) {
}
@media (min-width: 1280px) {
}

/*----------------------------------------------------
 contact
----------------------------------------------------*/
.contact {
    font-size: 1.125rem;
    margin: 0 auto 3rem;
    max-width: 850px;
    padding: 0 1rem;
}

.contact-in {
    border: 1px solid #333;
    padding: 1rem;
}

.contact-title {
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .contact {
        font-size: 1.25rem;
        margin-bottom: 10rem;
        padding: 0 2rem;
    }
    
    .contact-in {
        border: 1px solid #333;
        padding: 2rem;
    }
    
    .contact-title {
        margin-bottom: 1rem;
    }
}
@media (min-width: 1024px) {
}
@media (min-width: 1280px) {
}

/*----------------------------------------------------
 footer
----------------------------------------------------*/
.footer {
    background: #3F3F40;
    padding: 3rem 1rem;
}

.footer img {
    margin: 0 auto;
}

@media (min-width: 768px) {
    .footer {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}
@media (min-width: 1024px) {
    .footer {
        padding-top: 8rem;
        padding-bottom: 8rem;
    }
}
@media (min-width: 1280px) {
}