@charset "UTF-8";
/********************************************************************************

page-company.css　企業情報用css

********************************************************************************/

/*============================================================
 common
*============================================================*/
#page-company #main-contents {
    padding-bottom: 24px;

}

/*============================================================
 ページヘッダー
*============================================================*/
#page-company #page-header::before {
    background-image: url(../images/company/page-header-bg.jpg);
}
#page-company .page-header-deco .deco01 {
    fill: #3CEFAF;
}
#page-company .page-header-deco .deco02 {
    fill: #B998FF;
}

/*============================================================
 セクション共通
*============================================================*/
#page-company .card-list {
    gap: 32px;
}
#page-company .card-list .item {
    display: block;
    width: 272px;
}
#page-company .card-list .item .image {
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 8px;
}
#page-company .card-list .item .image img {
    width: 100%;
}
#page-company .card-list .item .info {
    letter-spacing: 0.04em;
}
#page-company .card-list .item .info .name {
}
#page-company .card-list .item .info .name-en {
    font-size: 12px;
    line-height: 100%;
    color: var(--common-color-note);
}
#page-company .card-list .item .info .name-post {
    font-size: 12px;
    line-height: 100%;
    margin-top: 8px;
}

#page-company .parts-modal-content .parts-modal-header {
	padding-right: 24px;
	margin-bottom: 5px;
}
#page-company .parts-modal-content .parts-modal-header .parts-boxes {
	gap: 0 16px;
}
#page-company .parts-modal-content .parts-modal-header .name {
	width: fit-content;
	font-weight: 700;
	font-size: 24px;
	line-height: 160%;
}
#page-company .parts-modal-content .parts-modal-header .meta {
	width: fit-content;
	font-size: 12px;
	line-height: 100%;
	letter-spacing: 0.04em;
}
#page-company .parts-modal-content .parts-modal-header .meta .name-en {
	color: var(--common-color-note);
}
#page-company .parts-modal-content .parts-modal-header .meta .post {
	margin-top: 8px;
}
#page-company .parts-modal-content .parts-modal-body {
    height: calc(100% - 38px - 40px - 32px);
    overflow-y: auto;
}
#page-company .parts-modal-content .parts-modal-body .lead {
	letter-spacing: 0.04em;
	margin-bottom: 40px;
}
#page-company .parts-modal-content .parts-modal-body .parts-modal-close-btn {
	width: 224px;
	margin: 0 auto;
}


/*============================================================
 企業情報
*============================================================*/
#page-company #sec-info {
    margin-bottom: 84px;
}
#page-company #sec-info .logo {
    text-align: center;
    margin-bottom: 64px;
}
#page-company #sec-info .parts-table .row:first-child {
    padding-top: 0;
}
#page-company #sec-info .parts-table .row.addr  {
    margin: 8px 0;
}

#page-company #sec-info .parts-btn{
  width: 100%;
}

/*============================================================
  組織図
*============================================================*/
#page-company #sec-organizational {
  margin-bottom: 84px;
}

#page-company #sec-organizational a.cmn_btn_b{
  padding: 11px 20px;
  text-align: center;
}


/*============================================================
 役員紹介
*============================================================*/
#page-company #sec-officer {
    margin-bottom: 84px;
}
/* #page-company #sec-officer .block-scroll-fade-item {
    padding: 36px 0 0 0;
    background-image: url(../images/company/officer-bg.svg);
    background-repeat: no-repeat;
    background-position: top left calc(50vw + (var(--inner-max-width) / 2) - 72px);
    background-size: 200px auto;
} */
#page-company #sec-officer .block-scroll-fade-item {
    overflow-x: clip;
    padding-top: 36px;
    overflow: hidden;
}
#page-company #sec-officer .card-list {
    position: relative;
}
#page-company #sec-officer .card-list::before {
    content: "";
    display: block;
    width: 200px;
    aspect-ratio: 1 / 1;
    background-image: url(../images/company/officer-bg.svg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
    position: absolute;
    top: -126px;
    right: -100px;
    z-index: -1;
}


#page-company #sec-officer .post{
  margin: 15px 0 25px;
  line-height: 1.8;
}


/*============================================================
 社外取締役
*============================================================*/
#page-company #sec-outside_director {
  margin-bottom: 84px;
}

/*============================================================
 監査役
*============================================================*/
#page-company #sec-auditor {
  margin-bottom: 84px;
}


/*============================================================
 アドバイザー
*============================================================*/
#page-company #sec-advisor {
    margin-bottom: 84px;
}
/* #page-company #sec-advisor .block-scroll-fade-item {
    background-image: url(../images/company/advisor-bg.svg);
    background-repeat: no-repeat;
    background-position: top 60px left calc(50vw + 377px);
    background-size: 192px auto;
} */
#page-company #sec-advisor .block-scroll-fade-item {
    overflow-x: clip;
}
#page-company #sec-advisor .card-list {
    position: relative;
}
#page-company #sec-advisor .card-list::before {
    content: "";
    display: block;
    width: 192px;
    height: 356px;
    background-image: url(../images/company/advisor-bg.svg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
    position: absolute;
    top: -32px;
    right: -104px;
    z-index: -1;
}


/*============================================================
 株主
*============================================================*/
#page-company #sec-shareholder {
    margin-bottom: 120px;
}
#page-company #sec-shareholder .card-list {
    gap: 32px;
}

/*============================================================
 沿革
*============================================================*/
#page-company #sec-history {
    margin-bottom: 96px;
    --inner-max-width: var(--common-inner-max-width-narrow);
}
#page-company #sec-history .block-scroll-fade-item {
    min-height: 967px;
    padding: 20px 0 0 0;
    background-image: url(../images/company/history-bg2.png);
    background-repeat: no-repeat;
    background-position: 40% 50%;
    background-size: 1760px auto;
}
#page-company #sec-history .inner {
    position: relative;
}
#page-company #sec-history .catch {
    font-weight: 700;
    font-size: 88px;
    line-height: 100%;
    letter-spacing: 0.02em;
    color: var(--common-color-background3);
    mix-blend-mode: difference;
    transform: rotate(-6.77deg);
    position: absolute;
    top: 300px;
    left: 2px;
}
#page-company #sec-history .info {
    max-width: 536px;
    margin: 0 0 0 auto;
}
#page-company #sec-history .info .parts-table .row {
    display: block;
    letter-spacing: 0.04em;
}
#page-company #sec-history .info .parts-table .row:last-child {
    border-bottom: none;
}
#page-company #sec-history .info .parts-table .row dt {
    font-size: 14px;
    line-height: 100%;
    color: var(--common-color-note);
    margin-bottom: 8px;
}

/*============================================================
 Office Gallery
*============================================================*/
#page-company #sec-gallery {
}
#page-company #sec-gallery .gallery {
    width: 960px;
    margin: 0 auto;
    gap: 16px;
}
#page-company #sec-gallery .gallery .item {
    width: 472px;
}
#page-company #sec-gallery .gallery .item img {
    width: 100%;
    border-radius: 24px;
}
#page-company #sec-gallery .gallery .item-title {
    background-image: url(../images/company/gallery-bg-01.svg), url(../images/company/gallery-bg-02.svg);
    background-repeat: no-repeat;
    background-position: top 16px left 16px, bottom -52px right;
    background-size: 32px, 104px;
}
#page-company #sec-gallery .gallery .item-title .sec-title {
    font-style: italic;
    font-weight: 600;
    font-size: 52px;
    line-height: 120%;
    letter-spacing: 0.04em;
    text-align: center;
    margin-top: 83px;
}
#page-company #sec-gallery .gallery .item-info {
    padding: 10px 24px;
}
#page-company #sec-gallery .gallery .item .addr {
    letter-spacing: 0.04em;
    margin-bottom: 8px;
}
#page-company #sec-gallery .gallery .item .block-googlemap {
    letter-spacing: 0.04em;
	padding-bottom: 10px;
}

#page-company #sec-gallery .gallery .item-info .br {
    padding: 10px 24px;
}

/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 Tablet
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/
@media screen and (max-width: 1099px) {
    /*============================================================
     セクション共通
    *============================================================*/
    #page-company .card-list .item {
        width: calc((100% - 32px * 2) / 3);
    }
    
    /*============================================================
     役員紹介
    *============================================================*/
    /* #page-company #sec-officer .block-scroll-fade-item {
        background-position: top left calc(50vw + (var(--inner-max-width) / 2) - 136px);
    }
    @media screen and (max-width: 1007px) {
        #page-company #sec-officer .block-scroll-fade-item {
            background-position: top right -64px;
        }
    } */
    #page-company #sec-officer .card-list::before {
        right: -64px;
    }

    /*============================================================
     アドバイザー
    *============================================================*/
    /* #page-company #sec-advisor .block-scroll-fade-item {
        background-position: top 60px left calc(50vw + (var(--inner-max-width) / 2) - 124px);;
    } */
    #page-company #sec-advisor .card-list::before {
        right: -72px;
    }

    /*============================================================
     株主
    *============================================================*/
    #page-company #sec-shareholder {
        margin-bottom: 84px;
    }
    
    /*============================================================
     沿革
    *============================================================*/
    #page-company #sec-history {
        margin-bottom: 60px;
    }
    #page-company #sec-history .block-scroll-fade-item {
        min-height: unset;
        padding: 564px 0 310px 0;
        background-image: url(../images/company/sp-history-bg-01-2.png), url(../images/company/sp-history-bg-02-2.png);
        background-position: top left calc(50vw - 480px + 16px), bottom left calc(50vw + 130px);
        background-size: 480px auto, 310px auto;
        position: relative;
    }
    #page-company #sec-history .inner {
        position: static;
    }
    #page-company #sec-history .catch {
        top: 38px;
        left: calc(50vw - 480px + 16px + 250px);
        font-size: 64px;
    }
    #page-company #sec-history .info {
        max-width: 100%;
    }
        
    /*============================================================
     Office Gallery
    *============================================================*/
    @media screen and (max-width: 1007px) {
        #page-company #sec-gallery .gallery {
            width: 100%;
            padding: 0 var(--inner-padding);
            max-width: var(--inner-max-width);
        }
        #page-company #sec-gallery .gallery .item {
            width: 100%;
        }
        #page-company #sec-gallery .gallery .item-title .sec-title {
            margin: 143px 0;
        }
        #page-company #sec-gallery .gallery .item-info {
            padding: 30px 24px;
            text-align: center;
        }
        #page-company #sec-gallery .gallery .item .addr br {
            display: none;
        }
    }
    
}



/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 SP
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/
@media screen and (max-width: 767px) {
    /*============================================================
     ページヘッダー
    *============================================================*/
    #page-company #page-header::before {
        background-image: url(../images/company/sp-page-header-bg.jpg);
    }
    
    /*============================================================
     セクション共通
    *============================================================*/
    #page-company .card-list .item {
        width: calc((100% - 32px) / 2);
    }
    
    /*============================================================
     企業情報
    *============================================================*/
    #page-company #sec-info .logo img {
        height: 64px;

    }

    /*============================================================
     役員紹介
    *============================================================*/
    /* #page-company #sec-officer .block-scroll-fade-item {
        padding: 24px 0 0 0;
        background-position: top left calc(50vw + (var(--inner-max-width) / 2) - 24px - 48px);
        background-size: 140px auto;
    }
    @media screen and (max-width: 607px) {
        #page-company #sec-officer .block-scroll-fade-item {
            background-position: top right -70px;
        }
    } */
    #page-company #sec-officer .card-list::before {
        width: 140px;
        top: -114px;
        right: -70px;
    }
	
	#page-company #sec-officer .post{
		font-size:12px
	}

    /*============================================================
     アドバイザー
    *============================================================*/
    #page-company #sec-advisor .card-list::before {
        top: unset;
        bottom: -80px;
        right: -12px;
    }
    
    /*============================================================
     沿革
    *============================================================*/
    #page-company #sec-history {
        margin-bottom: 0;
    }
    #page-company #sec-history .block-scroll-fade-item {
		background-image: url(../images/company/sp-history-bg-01-2.png);
        background-position: top left calc(50vw - 480px + 32px);
        background-size: 480px auto, 310px auto;
        position: relative;
		padding-bottom: 80px;
    }
    #page-company #sec-history .inner {
        position: static;
    }
    #page-company #sec-history .catch {
        top: 38px;
        left: calc(50vw - 480px + 16px + 250px);
    }
    #page-company #sec-history .info {
        max-width: 100%;
    }
    @media screen and (max-width: 607px) {
        #page-company #sec-history .block-scroll-fade-item {
            background-position: top left -154px, bottom left calc(50vw - 32px);
        }
        #page-company #sec-history .catch {
            left: calc(-154px + 250px);
        }
    }

    /*============================================================
     Office Gallery
    *============================================================*/
    #page-company #sec-gallery .gallery .item-title .sec-title {
        font-size: 36px;
        margin: 60px 0;
    }
    #page-company #sec-gallery .gallery .item-info {
        padding: 24px;
        text-align: left;
    }

}
