@charset "UTF-8";

.ePcView {
    display: none;
}

.eSpView {
    display: inherit;
}

html {
    overflow-x: hidden;
}

body {
    max-width: 100vw;
    overflow-x: hidden;
    min-width: unset;
}


#eHeader {

    height: 10vw;
}

#eHeadLogo {
    padding: 0 3vw;
}

#eHeadLogo img {
    width: auto;
    height: 3.8vw;
}

#eHeadMenu {
    width: 100%;
    position: fixed;
    top: 10vw;
    height: calc(100vh - 10vw);
    display: block;
    background-color: #000;
    padding: 10vw 5vw;
    opacity: 1;
    transition: all 0.3s;
    visibility: visible;
}

#eHeadMenu > div {
    display: block;
    min-width: unset;
    height: unset;
    font-size: 4vw;
    border: none;
    line-height: 2.2;
}

#eHeadMenu > div > a,
#eHeadMenu > div > label {
    height: auto;
    display: block;
    font-size: 4vw;
    background-color: #FFF;
    color: #000;
    margin-top: 2vw;
}
/*

#eHeadMenu > div > div {
    opacity: unset;
    display: block;
    position: static;
    transform: none;
    flex-wrap: wrap;
    justify-content: space-between;
    line-height: 0;
    overflow: hidden;
    visibility: hidden;
}
*/
#eHeadMenu > div > div {
    display: none;
    position: static;
    visibility: visible;
    transform: unset;
    opacity: 1;
}
#eHeadMenu > a:hover,
#eHeadMenu > div:hover {
    background-color: unset;
}


#eHeadMenu > div > div a {

    line-height: 2.2;
    margin-top: 1vw;
    background-color: #727171;
}


#eHeadMenu > div > label > span {
    display: none;
}
#eHeadMenu > div > input[type="checkbox"] {
    -webkit-appearance: none;
}

#eHeadMenu > div > input[type="checkbox"]:checked + div {
    visibility: visible;
    position: static;
}

#eHeadMenu > div > input[type="checkbox"]:checked + div a {
    line-height: 2.2;
    font-size: 4vw;

    opacity: 1;
    visibility: visible;
    margin-top: 1vw;
}


#eHeadButton {
    display: block;
    width: 10vw;
    height: 10vw;
    padding: 2vw;
    margin-right: 2vw;
}

#eHeadButton > label {

    height: 100%;
    width: 100%;
    display: block;
    position: relative;
}

#eHeadButton > label:before,
#eHeadButton > label:after,
#eHeadButton > label > span {
    height: 1px;
    width: 100%;
    position: absolute;
    content: '';
    display: block;
    background-color: #FFFFFF;
}

#eHeadButton > label > span {
    top: 50%;
}

#eHeadButton > label:before {
    top: 25%;
}

#eHeadButton > label:after {
    top: 76%;
}

#eMenuCheck {
    display: none;
}

#eMenuCheck:not(:checked) ~ #eHeadMenu {
    top: 20%;
    opacity: 0;
    visibility: hidden;
}

#eMainHead {
    padding-top: 10vw;
}

.eLazyLoadSP,
.eLazyLoadSP > * {
    visibility: visible !important;
    transform: unset !important;
    opacity: 1 !important;
}

#eTopConcept {
    padding: 8vw 0;
    margin-bottom: 10vw;
}

#eTopConcept h1 {
    font-size: 5.6vw;
    font-weight: 500;
    line-height: 1.8;
}

#eTopConcept p {
    text-align: left;
    padding: 0 6vw;
    font-size: 3.6vw;
}

#eTopConcept p br {
    display: none;
}

#eWorks h2 {
    margin-bottom: 5vw;
}

#eWorks h2 > img {
    height: 6vw;
}

#eWorks h2::after {
    font-size: 4vw;
    line-height: 3.2;
}

#eWorksSlide {
    margin-bottom: 6vw;
}

#eWorksSlide .swiper-slide {
    width: 64%;
}

#eWorksSlide .swiper-button-next,
#eWorksSlide .swiper-button-prev {
    width: 12vw;
    height: auto;
    top: 0;
    bottom: 0;
    font-size: 5vw;
    margin: 0;
}

#eWorksSlide .swiper-button-next:after, #eWorksSlide .swiper-button-prev:after {
    font-size: 8vw;
    opacity: 0.8;
}

#eWorksSlide .swiper-button-next {
    transform: translateX(320%);
    padding-right: 0;

}

#eWorksSlide .swiper-button-prev {
    transform: translateX(-320%);
    padding-left: 0;

}

#eWorksTitleSlide {
    width: auto;
    height: 6vw;
}

#eWorksTitleSlide .swiper-slide {
    font-size: 4vw;
    line-height: 6vw;
    height: 6vw;
}

#eTopWorks {
    margin-bottom: 15vw;
}

#eTopArchitect > h2 {
    display: none;
}

#eTopArchitectWrap {
    display: block;
    margin: 0 5vw;
}

#eTopArchitectWrap > div {
    width: 100%;
}

#eTopArchitectWrap > div:last-child {
    display: block;
}

#eTopArchitectWrap > div h2 {
    display: block;
    text-align: center;
    padding: 10vw 4vw 0vw;
}

#eTopArchitectWrap > div h2 img {
    height: 6vw;
}

#eTopArchitectWrap > div > p {
    padding: 5vw;
    font-size: 3.7vw;
}

#eTopArchitectWrap > div > p br {
    display: none;
}

#eTopArchitectWrap > div > h2::after {
    font-size: 4.4vw;
    line-height: 3.2;
    content: attr(title);
    display: block;
    text-align: center;
}

#eTopArchitectWrap > div > div {
    position: static;
    padding: 6vw 4vw 8vw;
    text-align: center;
}

.eCommonButton a {
    font-size: 3.8vw;
    line-height: 2.4;
    padding: 0 4em;
}

#eTopArchitect {
    margin-bottom: 15vw;
}

#eCommonFoot {
    margin-top: 15vw;
    padding: 10vw 6vw 15vw;
}

#eCommonFoot > p {
    text-align: left;
    font-size: 3.7vw;
    margin-bottom: 8vw;
}

#eCommonFoot > p br {
    display: none;
}

#eCommonFootLink {
    padding: 0 12vw;
}

#eCommonFootLink a {
    margin: 2.5vw 0;
    width: 100%;
    padding: 0;
}

#ePageConcept {
    text-align: center;
    padding: 10vw 5vw;
}

#ePageConcept h1 {
    font-size: 5vw;
    margin-bottom: 1em;
}

#ePageConcept p {
    font-size: 3.4vw;
    line-height: 2.2;
    text-align: left;
}

#ePageConcept p br {
    display: none;
}

#eWorksList > div > div {
    display: block;
}

#eWorksList > div > div > p {
    position: static;
    font-size: 3vw;
    padding: 4vw 0 5vw 6vw;
    line-height: 1.6;
    background: none;
}

#eWorksList > div.eWorksStyleSingle > div > p {
    text-align: center;
    padding-left: 0;
}

#eWorksList > div.eWorksStyleTripleSetRight > div > p {
    display: none;
}

.eWorksStyleTripleSetText {
    width: 100% !important;
}

#eWorksList > div.eWorksStyleTripleSetRight > div.eWorksStyleTripleSetText > p {
    display: block;
}

#eWorksList > div.eWorksStyleTripleLeft {
    display: block !important;
}

#eWorksList > div.eWorksStyleTripleLeft > div > p {
    text-align: center;
    padding-left: 0;
}


#eWorksList > div.eWorksStyleTripleRight {
    display: flex !important;
    flex-wrap: wrap;
}

#eWorksList > div.eWorksStyleTripleRight > div:nth-child(1) {
    width: 50%;
}

#eWorksList > div.eWorksStyleTripleRight > div:nth-child(2) {
    width: 50%;
}

#eWorksList > div.eWorksStyleTripleRight > div:nth-child(3) {
    width: 100%;
}

#eWorksList > div.eWorksStyleTripleRight > div:nth-child(3) p {
    text-align: center;
    padding-left: 0;
}

#eWorks3Twin > div:nth-child(1) {
    width: 40.2%;
}

#eWorks3Twin > div:nth-child(2) {
    width: 59.8%;
}

#eWorks3Twin > div:nth-child(2) p {
    padding-left: 16vw;
}

#eWorksList > div > div.eWorksStyleAltSingle {
    width: 100%;
}

#eWorksList > div > div.eWorksStyleAltSingle p {
    text-align: center;
    padding-left: 0;
}

#eWorksList > div#eWorks04Triple.eWorksStyleTripleLeft {
    display: flex !important;
    flex-wrap: wrap;
}

#eWorks04Triple > div:nth-child(1) {
    width: 50%;
    order: 1;
}

#eWorksList > #eWorks04Triple > div:nth-child(1) p {
    padding: 4vw 0 5vw 6vw;
    text-align: left;
}

#eWorksList > #eWorks04Triple > div:nth-child(3) p {
    padding: 4vw 0 5vw 2vw;
    text-align: left;
    white-space: nowrap;
}

#eWorks04Triple > div:nth-child(1) img {
    height: auto;
    object-fit: unset;
}

#eWorks04Triple > div:nth-child(2) {
    width: 100%;
    order: 3;

}

#eWorks04Triple > div:nth-child(3) {
    width: 50%;
    order: 2;

}

#eWorksList .eWorksStyleTwinSingle {
    display: block;
}

#eWorksList .eWorksStyleTwinSingle > div {
    width: 100%;
}

#eWorksList .eWorksStyleTwinSingle > div p {
    text-align: center;
    padding-left: 0;
}


#eWorksList .eWorksStyleTripleSetLeft > div p {
    display: none;
}

#eWorksList .eWorksStyleTripleSetLeft > div.eWorksStyleTripleSetText {
    width: 100%;
}

#eWorksList .eWorksStyleTripleSetLeft > div.eWorksStyleTripleSetText p {
    display: block;
}

#eArchitectList {
    padding: 4vw;
}

#eArchitectList > div {
    width: 100%;
    margin: 0 0 20vw;
}

#eArchitectList > div .eArchitectIntro {
    flex-direction: column-reverse;
}

#eArchitectList > div:nth-child(even) .eArchitectIntro {
    flex-direction: column-reverse;
}

#eArchitectList > div .eArchitectIntro > div {
    width: 100%;
}

#eArchitectList > div .eArchitectIntro > span {
    width: 100%;
}
.eArchitectIntro > div {
    padding: 4vw 5vw;
}
.eArchitectIntro > div span {
    font-size: 3.6vw;
    line-height: 1.5;
    margin-bottom:1em;
}
.eArchitectIntro > div > p {
    position: static;
    padding:0;
    font-size: 3.2vw;
}
.eArchitectIntro > div h3 {
    margin-bottom: 0.8em;
}
.eArchitectIntro > div h3 span {
    font-size: 6vw;
    border-bottom: 1px solid #EA5514;
    padding-bottom: 0.4em;
    margin-bottom: 0;
}
.eArchitectIntro > div h3 i {
    font-size: 3.6vw;
    margin-left: 2em;
}
.eArchitectIntro > div > div {
    font-size: 3.6vw;
    margin-bottom: 8vw;
}

.eArchitectNote {
    font-size: 4vw;
    text-align: left;
}
.eArchitectNote br {
    display: none;
}
.eArchitectCareer {
    display: block;
}
.eArchitectCareer > div {
    width: 100%;
    margin-bottom: 10vw;
}
.eArchitectCareer > div h4 {
    font-size: 4vw;
    line-height: 2.4;
}
.eArchitectCareer > div dl {
    font-size: 3.6vw;
}
.eArchitectCareer > div dl dt {
    width: 18%;
}
.eArchitectCareer > div dl dd {
    width: 82%;
}
.eArchitectCareer > div ul {
    font-size: 3.2vw;
}
#eTopConcept.eEnableBr p > br {
    display: inherit;
}

#eWorksList > #eWorks06Triple {
    display: flex !important;
    flex-wrap: wrap;
}

#eWorks06Triple > div:nth-child(1) {
width: 41.29%;
}
#eWorks06Triple > div:nth-child(2) {
width: 58.71%;
}
#eWorks06Triple > div:nth-child(3) {
width: 100%;
}

/* 受入時に追加 */
a:link, a:visited{
color:#ffffff;
}