<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

/* reset */
/*** The new CSS Reset - version 1.2.0 (last updated 23.7.2021) ***/
:where(:not(iframe,canvas,img,svg,video):not(svg*)){all:unset;display:revert}*,::after,::before{box-sizing:border-box}ol,ul{list-style:none}img{max-width:100%}table{border-collapse:collapse}textarea{white-space:revert}

@font-face {
  font-family: 'Ampersand';
  src: local('Times New Roman');
  unicode-range: U+0030-0039;
}

*{
    margin: 0;
    padding: 0;
    color: #fff;
    font-family: Ampersand, Georgia, 'Times New Roman', Times, serif;
    text-shadow: 0 0 2px #000;
}
img{
    width: 100%;
}
a,a:visited{
    text-decoration: none;
    color: inherit;
}
body{
    background-color: transparent;
}
section{
    position: relative;
}
p{
    line-height: 2;
}
.pd-show{
    display: none;
}
.sp-show{
    display: none;
}
input[type=submit],input[type=button] {
    -webkit-appearance: none;
    border-radius: 0;
  }
/* pad */
@media screen and (max-width: 1024px) {
    .pd-show{
        display: block;
    }
    .pd-hidden{
        display: none;
    }
}
/* sp */
@media screen and (max-width: 750px) {
    .sp-show{
        display: block;
    }
    .sp-hidden{
        display: none;
    }
    html{
        font-size: 14px;
    }
    table{
        border-collapse: collapse;
    }
}


/* バックグラウンド */
.background{
    position: fixed;
    width: 100%;
    height: 100vh;
    background-image: url(../image/fv-image.jpeg);
    background-size: cover;
    filter: brightness(0.7);
}

/* 画面下の黒い影 */
.bottom-shadow{
    position: fixed;
    bottom: -2px;
    left: 0;

    z-index: 1000;
    width: 100%;
    height: 80px;
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
	background-size: auto 100%;
	
    transform: translate3d(0,0,0);
    transition: 1s;
}

/* pcヘッダー */
header{
    position: fixed;
    width: 100%;
    z-index: 100;
}
.header-wrapper-pc{
    background: rgb(0,0,0);
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    padding: 40px;
}
ul.header-pc{
    display: flex;
    align-items: center;
}
.header-logo-wrapper{
    width: 130px;
}
ul.header-pc .nav-list{
    font-size: 14px;
    margin-left: 24px;
}

ul.header-pc .nav-list a{
	color: #fff;
}

/* メインコンテンツ */
main{
    position: relative;
    z-index: 1;
}
/* ファーストビュー */
.fv-wrapper{
    padding: 264px 40px 264px;
    position: relative;
}
/* .fv-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 50%;
    padding-top: 115vh;
    background-image: url(../image/banmen.png);
    background-size: contain;
    background-position: 0px -40px;
    background-size: 165%;
    filter: brightness(0.9);
    background-repeat: no-repeat;
} */
.fv-wrapper .logo-wrapper{
    width: 35%;
    margin: 0 auto;
    position: relative;
    z-index: 10;
    padding-right: 1.5%;
}
.fv-wrapper .logo-wrapper img{
    filter: drop-shadow(0 0 10px #000);
}
.fv-wrapper h1{
    font-size: 32px;
    text-align: left;
    margin-top: 16px;
    margin-left: 0px;
    position: relative;
    z-index: 10;
    text-align: center;
    padding-left: 0.7%;
}
.scroll-wrapper{
    position: fixed;
    z-index: 100;
    top: 50%;
    left: 40px;
    padding-top: 104px;
    transform: translateY(-50%);
}
.scroll-wrapper p.scroll {
    display: inline-block;
    position: relative;
    left: 0;
    bottom: 0;
    z-index: 2;
    padding: 10px 0px 110px;
    overflow: hidden;
    color: #fff;
    font-size: 14px;
    line-height: 1;
    letter-spacing: .2em;
    text-transform: uppercase;
    text-decoration: none;
    writing-mode: vertical-lr;
}
.scroll-wrapper p.scroll::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0.25px;
    height: 100px;
    background: #fff;
}
.scroll-wrapper p.scroll::after {
    animation: sdl 2s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
0% {
    opacity: 1;
    transform: scale(1, 0);
    transform-origin: 0 0;
}
30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
}
30.1%, 70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
}
100% {
    opacity: 0;
    transform: scale(1, 0);
    transform-origin: 0 100%;
}
}
.header-sp{
    display: none;
}
/* pad */
@media screen and (max-width: 1024px) {

}
/* sp */
@media screen and (max-width: 750px) {
    .fv-wrapper {
        padding: 240px 40px 152px;
    }
    .fv-wrapper h1{
        font-size: 18px;
    }
    ul.header-pc{
        display: none;
    }
    .header-sp{
        display: block;
    }
    .header-sp ul{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .scroll-wrapper{
        display: none;
    }
    .fv-wrapper .logo-wrapper{
        margin-left: 0;
        display: none;
    }
    .fv-wrapper h1{
        margin-left: 0;
        text-align: center;
    }
    .header-wrapper-pc {
        padding: 40px 24px;
    }
}
/* セクション共通 */
.main-wrapper section{
    padding: 116px 144px;
}
section h2{
    width: 25%;
    margin-bottom: 32px;
    font-size: 14px;
    color: #fff;
}
section h2 span{
    display: block;
    font-size: 32px;
    margin-bottom: 4px;
}
/* pad */
@media screen and (max-width: 1024px) {
    .main-wrapper section{
        padding: 116px 104px;
    }
}
/* sp */
@media screen and (max-width: 750px) {
    .main-wrapper section {
        padding: 56px 24px;
    }
    .contact-wrapper h2 {
        width: 100%;
    }
    section h2{
        width: 100%;
        margin-bottom: 24px;
    }
    .header-sp{
        position: relative;
        z-index: 100;
    }
}
/* 会社概要-COMPANY- */
section#Company{
    /* background: rgba(0,0,0,0.5);
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 64px, rgba(0,0,0,0.5) calc(100% - 64px), rgba(0,0,0,0) 100%); */
    background: transparent;
}
.company-wrapper{
    display: flex;
}
.company-wrapper table{
    width: 75%;
}

@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .company-wrapper table {
        font-size: 1.08942029vw;
    }
}
.company-wrapper tr{
    border-top: 1px solid rgba(255,255,255,0.25);
}
.company-wrapper tr th,.company-wrapper tr td{
    padding: 32px 0px;
    line-height: 2;
}
.company-wrapper th{
    text-align: left;
    width: 25%;
    color: #fff;
}
/* pad */
@media screen and (max-width: 1024px) {
    .company-wrapper{
        flex-flow: column;
    }
    .company-wrapper table {
        width: 100%;
    }
}
/* sp */
@media screen and (max-width: 750px) {
.company-wrapper tr{
    border: none;
}
.company-wrapper tr::before {
    display: block;
    content: '';
    position: relative;
    /* left: 0; */
    width: calc(100% - 40px);
    position: absolute;
    height: 1px;
    background-color: rgba(255,255,255,0.25);
    /* right: 0; */
}
}
/* アクセス-ACCESS- */
.access-wrapper{
    display: flex;
    margin-top: 0px;
}
.access-content-b{
    display: flex;
    width: 75%;
    flex-flow: column-reverse;
}
.access-wrapper .map{
    width: 100%;
    height: 360px;
    filter: brightness(0.8);
}

@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .access-txt {
        font-size: 1.08942029vw;
    }
	
}
.access-txt{
    margin-left: 0;
    width: 100%;
}
.access-txt tr{
    border-top: 1px solid rgba(255,255,255,0.25);
}
.access-txt th,.access-txt td{
    padding: 32px 0;
    vertical-align: top;
    line-height: 2;
}
.access-txt th{
    text-align: left;
    width: 25%;
    color: #fff;
}
.access-txt td{
}
/* pad */
@media screen and (max-width: 1024px) {
    .access-wrapper{
        flex-flow: column;
    }
    .access-content-b {
        flex-flow: column;
        width: 100%;
    }
    .access-wrapper .map{
        margin-bottom: 40px;
    }
}
/* sp */
@media screen and (max-width: 750px) {
	
	.access-wrapper{
		margin-top: 132px;
	}
    .access-txt tr{
        border-top: 0.5px solid rgba(255,255,255,0.25);
    }
    .access-wrapper tr::before{
        display: block;
        content: '';
        position: relative;
        /* left: 0; */
        width: calc(100% - 40px);
        position: absolute;
        height: 1px;
        background-color: rgba(255,255,255,0.25);
        /* right: 0;*/
    }
    .access-wrapper .map{
        height: 240px;
    }
}
/* メッセージ-MESSAGE- */
.message-wrapper{
    display: flex;
    flex-flow: column;
    text-align: center;
}
.message-wrapper h2{
    width: 100%;
}
.message-wrapper h3{
    font-size: 36px;
    margin-top: 32px;
    margin-bottom: 40px;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .message-wrapper h3{
        font-size: 2.608695652vw;
    }
}
.message-wrapper p{
    letter-spacing: 1px;
    font-size: 18px;
    line-height: 2.1;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .message-wrapper p {
        font-size: 1.304347826vw;
    }
}
/* 経営理念-PHILOSOPHY- */
.philosophy-wrapper{
    display: flex;
    margin-top: 116px;
    flex-flow: column;
    text-align: center;
}
.philosophy-wrapper h2{
    width: 100%;
}
.philosophy-wrapper h3{
    font-size: 36px;
    margin-bottom: 40px;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .philosophy-wrapper h3{
        font-size: 2.608695652vw;
    }
}
.philosophy-wrapper p{
    letter-spacing: 1px;
    font-size: 18px;
    line-height: 2.1;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .philosophy-wrapper p{
        font-size: 1.304347826vw;
    }
}
.p-cont{
    display: flex;
    width: 100%;
    margin-bottom: 80px;
    justify-content: space-around;
}
.p-block{
	position: relative;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    width: 240px;
    height: 240px;
    background-color: rgba(0,0,0,0.5);
    border: 1px solid rgba(255,255,255,0.5);
    border-radius: 50%;
    overflow: hidden;
}
.p-text{
    display: inline-block;
    font-size: 14px;
    margin-top: 4px;
}

/* pad */
@media screen and (max-width: 1024px) {
    .p-cont{
        flex-wrap: wrap;
    }
    .p-block{
        width: 192px;
        height: 192px;
    }
    .p-text{
        display: inline-block;
        font-size: 12px;
        margin-top: 4px;
    }
}
/* sp */
@media screen and (max-width: 750px) {
    .message-wrapper h3{
        font-size: 24px;
    }
    .message-wrapper p{
        font-size: 14px;
    }
    .philosophy-wrapper h3{
        font-size: 20px;
    }
    .p-block-cont{
        margin-bottom: 24px;
    }
    .p-block-cont:last-child{
        margin-bottom: 0;
    }
    .p-cont{
        margin-bottom: 40px;
    }
    .philosophy-wrapper p{
        font-size: 14px;
    }
}

/* 事業内容-SERVICE- */
section#Service{
    /* background: rgba(0,0,0,0.5);
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 64px, rgba(0,0,0,0.5) calc(100% - 64px), rgba(0,0,0,0) 100%); */
    background: transparent;
}
.service-wrapper{
    display: flex;
    flex-flow: column;
}
.service-wrapper h3{
    font-size: 24px;
    margin-bottom: 32px;
}

.service-content{
    width: 100%;
}
.service-list{
    display: flex;
    padding: 32px 0;
    border-top: 1px solid rgba(255,255,255,0.25);
}
.service-wrapper .service-content a{
    border-bottom: 0.25px solid #fff;
    color: rgba(255,255,255,0.75);
    font-size: 14px;
}
.service-wrapper .service-content a:hover,.service-wrapper .service-content a:focus,.service-wrapper .service-content a:active{
    border: none;
}
.service-txt {
    width: 55%;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .service-txt {
        font-size: 1.08942029vw;
    }
}

.service-image{
    width: 45%;
    padding-left: 80px;
}
/* pad */
@media screen and (max-width: 1024px) {

}
/* sp */
@media screen and (max-width: 750px) {
    .service-list{
        flex-flow: column-reverse;
    }
    .service-txt{
        width: 100%;
    }
    .service-image{
        width: 100%;
        padding: 0;
        margin-bottom: 24px;
    }
    .service-wrapper h3{
        margin-bottom: 24px;
        font-size: 24px;
    }
}
/* 採用情報-RECRUIT- */
.recruit-wrapper{
    display: flex;
}
.recruit-wrapper h2{
    width: 25%;
}
@media only screen and (min-width: 1024px) and (max-width: 1600px){
    .recruit-wrapper table {
        font-size: 1.08942029vw;
    }
}
.recruit-wrapper table{
    width: 75%;
    text-align: left;
}
.recruit-wrapper table tr{
    border-top: 1px solid rgba(255,255,255,0.25);
}

.recruit-wrapper table th,.recruit-wrapper table td{
    vertical-align: top;
    line-height: 2;
    padding: 32px 0;
}
.recruit-wrapper table th{
    width: 25%;
    color: #fff;
}
.recruit-wrapper table td{
    width: 75%;
}
/* pad */
@media screen and (max-width: 1024px) {
    .recruit-wrapper{
        flex-flow: column;
    }
    .recruit-wrapper table{
        width: 100%;
    }
}
/* sp */
@media screen and (max-width: 750px) {
    .recruit-wrapper table tr td, .recruit-wrapper table tr th{
        border-top: 0.25px solid rgba(255,255,255,0.25);
    }
    .recruit-wrapper tr::before {
        display: block;
        content: '';
        position: relative;
        /* left: 0; */
        width: calc(100% - 40px);
        position: absolute;
        height: 1px;
        background-color: rgba(255,255,255,0.25);
        /* right: 0; */
    }
}
/* お問い合わせ */
section#Contact{
    background-color: #000;
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 64px,  rgba(0,0,0,0.5) 100%);
}
.contact-wrapper{
    display: flex;
    color: #fff;
    background-color: transparent;
}
.contact-wrapper h2{
    width: 25%;
}
.contact-wrapper .form-wrapper{
    width: 75%;
}
.contact-wrapper form{
    margin-top: 40px;
}
.contact-wrapper .formTable{
    text-align: left;
    width: 100%;
}
.contact-wrapper th,.contact-wrapper td{
    padding: 4px 0;
    /* width: 100%;
    display: block; */
}
.contact-wrapper .must{
    color: red;
    padding-left: 4px;
}
.contact-wrapper th{
    width: 25%;
    font-weight: 400;
    font-size: 14px;
}
.contact-wrapper td input,
.contact-wrapper td textarea{
    width: 100%;
    appearance: none;
    background-color: transparent;
    border: none;
    border: none;
    background-color: rgba(8,30,51,0.8);
    padding: 4px 0 0 8px;
    height: 60px;
}
.contact-wrapper td textarea{
    height: 200px;
}
input[type="submit"]{
    width: 100%;
    text-align: center;
    color: #fff;
    padding: 15px 0;
    background-color: transparent;
    border: 0.25px solid #fff;
    margin-top: 40px;
    cursor: pointer;
    transition: 0.3s all;
}
.contact-wrapper input[type="submit"]:hover{
    background-color: #fff;
    color: #111;
    text-shadow: none;
}
/* pad */
@media screen and (max-width: 1024px) {
    .contact-wrapper{
        flex-flow: column;
    }
    .contact-wrapper .form-wrapper{
        width: 100%;
    }
}
/* sp */
@media screen and (max-width: 750px) {
    .contact-wrapper h2{
        width: 100%;
    }
    .contact-wrapper th, .contact-wrapper td{
        width: 100%;
        display: block;
    }
}
/* フッター */
footer{
    position: relative;
    z-index: 100;
    background-color: rgba(0,0,0,0.5);
    padding-bottom: 24px;
    padding-top: 24px;
    border-top: 0.25px solid rgba(255,255,255,0.25);
}
footer p {
    color: rgba(255,255,255,1);
    text-align: center;
    font-size: 14px;
}
/* pad */
@media screen and (max-width: 1024px) {

}
/* sp */
@media screen and (max-width: 750px) {
    
}
/* コンファーム */
div#formWrap{
    position: relative;
    z-index: 100;
    background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) calc(100% - 80px),  rgba(0,0,0,0) 100%);
    width: 100%;
    margin-bottom: 56px;
}
div#formWrap h4,div#formWrap h3{
    font-size: 18px;
    margin-bottom: 40px;
    text-align: left;
    line-height: 2;
}
div#formWrap p.confirm-dir{
    text-align: left;
    margin-bottom: 40px;
}
div#formWrap p.error_messe{
    padding: 16px 0;
    border-top: 0.25px solid rgba(255,255,255,0.25);
    font-size: 16px;
    color: #fff;
    text-align: left;
}
header.confirm-header{
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: rgba(0,0,0,0.5);
}
header.confirm-header .header-logo-wrapper{
    margin: 0 auto;
}
div#formWrap &gt; div{
    background-color: rgba(0,0,0,0.25);
    width: 75%;
    margin: 0 auto;
    padding: 64px 80px;
    border-radius: 24px;
}
div#formWrap input[type="button"],div#formWrap input[type="submit"]{
    font-size: 16px;
    appearance: none;
    background-color: transparent;
    border: 0.25px solid #fff;
    padding: 16px 40px;
    cursor: pointer;
    transition: 0.3s all;
}
div#formWrap input[type="button"]:hover,div#formWrap input[type="submit"]:hover{
    appearance: none;
    background-color: #fff;
    text-shadow: none;
    color: #111;
}
p.comit-button{
    display: flex;
    justify-content: center;
    margin-top: 40px;
}
p.comit-button input[type="submit"],p.comit-button input[type="button"]{
    width: auto;
    height: auto;
    font-size: 16px;
    appearance: none;
    background-color: transparent;
    border: 0.25px solid #fff;
    padding: 16px 40px;
    cursor: pointer;
    transition: 0.3s all;
    margin: 0;
}
p.comit-button input[type="submit"]{
    margin-right: 32px;
}
/* pad */
@media screen and (max-width: 1024px) {

}
/* sp */
@media screen and (max-width: 750px) {
	#formWrap{
		font-size: 14px;
	}
	input[type=submit],input[type=button],div#formWrap p.error_messe,div#formWrap input[type="button"], div#formWrap input[type="submit"]{
		font-size: 14px;
	}
    
}
/* サンクス */
.thanks{
    position: relative;
    z-index: 100;
    background:linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) calc(100% - 80px),  rgba(0,0,0,0) 100%);
}

.thanks a{
    text-decoration: underline;
}
.thanks a:hover{
    text-decoration: none;
    text-shadow: none;
}
/* pad */
@media screen and (max-width: 1024px) {

}
/* sp */
@media screen and (max-width: 750px) {
    div#formWrap &gt; div{
        padding: 0px 24px 64px;
        width: 100%;
    }
    div#formWrap input[type="button"]{
        height: auto;
    }
    .confirm-table th{
        color: rgba(255,255,255,0.75);
        padding-bottom: 8px!important;
    }
    .confirm-table td{
        padding-top: 10px!important;
    }
    p.comit-button{
        flex-flow: column;
    }
    .confirm-button input[type="submit"],.confirm-button input[type="button"]{
        width: 100%;
        margin: 0 0 16px 0!important;
        display: block;
    }
    .thanks{
        background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) calc(100% - 80px),  rgba(0,0,0,0) 100%);
    }
}

/* ハンバーガーメニュー */
@media screen and (max-width: 750px) {
    .humburger-menu{
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-color: #000;
    }
    .humburger-menu{
        padding: 120px 20px 0;
    }
    li.nav-list-sp a {
        display: block;
        border-top: 0.25px solid rgba(255,255,255,0.25);
        padding: 20px 0;
    }
    .hamburger {
        display : block;
        position: relative;
        right : 0px;
        top   : 0px;
        width : 24px;
        height: 20px;
        cursor: pointer;
        text-align: center;
      }
      .hamburger span {
        display : block;
        position: absolute;
        width   : 100%;
        height  : 1px ;
        left    : 0px;
        background : #fff;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
      }
      .hamburger span:nth-child(1) {
        top: 0px;
      }
      .hamburger span:nth-child(2) {
        top: calc(50% - 0.5px);
      }
      .hamburger span:nth-child(3) {
        top: calc(100% - 1px);
      }
    input[type=submit]:hover,input[type=button]:hover {
        opacity: 0.7;
        background-color: inherit;
        color: inherit;
    }
    td input, td textarea{
        font-size: 16px;
    }
}

#Company,#Access,#Service,#Recruit{
	font-weight: 500;
}</pre></body></html>