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


#Design h2 {
    font-family: var(--fontOrp);
    color: var(--Color4);
    font-size: 3.125rem;
    line-height: 1;
}
.sec_main {
    width: 1000px;
    margin: auto;
    padding-top: 120px;
    padding-bottom: 80px;
    display: flex;
    justify-content: space-between;
}
.sec_main h2,
.main_txt {
    width: 480px;
}

/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

.sec_main {
    width: 90%;
    padding-top: 12vw;
    padding-bottom: 8vw;
}
.sec_main h2,
.main_txt {
    width: 48%;
}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

.sec_main {
    width: 90%;
    padding-top: 16vw;
    padding-bottom: 10vw;
    display: block;
}
.sec_main h2,
.main_txt {
    width: 100%;
}

.sp {
    display: inline-block;
}

}



/*　-----------------------　メインビジュアル　-----------------------　*/

#MainVisual {
    padding-top: 70px;
    position: relative;
}
#MainVisual figure {
    width: 100%;
    height: calc(100dvh - 70px);
    background-image: url(../images/design/main_des.jpg);
    background-position: top center;
    background-size: cover;
}
#MainVisual figure img {
    width: 100%;
    height: calc(100vh - 70px);
    mix-blend-mode: multiply;
}
#MainVisual .main_logo {
    width: 220px;
    height: 130px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 8vw;
    background-image: url(../images/design/logo_design.svg);
    background-size: auto 115px;
    background-position: top right;
    background-repeat: no-repeat;
}

/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

#MainVisual .main_logo {
    width: 25vw;
    position: absolute;
    top: 15%;
    right: 50%;
    transform: translateX(50%);
	background-position: center;
}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#MainVisual {
    padding-top: 70px;
    position: relative;
}
#MainVisual figure {
    width: 100%;
    height: calc(100dvh - 70px - 20vw);
    background-image: url(../images/design/main_des_sp.jpg);
}
#MainVisual figure img {
    width: 100%;
    height: calc(100dvh - 70px - 20vw);
    mix-blend-mode: multiply;
}
#MainVisual figure figcaption {
    bottom:1%;
}

}



/*　-----------------------　Sec01　-----------------------　*/
#sec01 {
    background-color: var(--Color7);
}
#sec01 .main_txt p {
    margin-top: 40px;
}

/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

#sec01 .main_txt p {
    margin-top: 4vw;
}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#sec01 .main_txt p {
    margin-top: 5vw;
}

}



/*　-----------------------　Sec02　-----------------------　*/
#sec02 .main_txt p {
    margin-top: 40px;
}

#sec02 {
    background-color: var(--Color6);
    color: var(--Color2);
}

#sec02 .sec_main {
    padding-top: 80px;
    display: block;
}
#sec02 .main_txt {
    width: 100%;
}

#sec02 .details {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}
#sec02 .details figure {
    display: block;
    width: 48%
}


/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {
#sec02 .main_txt p {
    margin-top: 4vw;
}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#sec02 .main_txt p {
    margin-top: 5vw;
}
#sec02 .sec_main h2 {
    position: static;
}
#sec02 .sec_main h2 > span {
    position: static;
}

}




/*　-----------------------　Sec03　-----------------------　*/

#sec03{
    background-color: var(--Color3);
    color: var(--Color2);
}
#sec03 h3 {
    color: var(--Color8);
    font-size: 2.5rem;
}
#sec03 .sec_main {
    padding-top: 80px;
    padding-bottom: 100px;
    display: block;
}
#sec03 .main_txt {
    width: 100%;
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}

#sec03 .main_txt p {
    width: 47.5%;
}

#sec03 .post   {font-size: 0.9rem;}
#sec03 .nameJP {font-size: 1.6rem;margin-top: 0.8em;}
#sec03 .nameEN {font-size: 1.1rem;}
#sec03 .nameJP small {font-size:70%;}


#sec03 .profile {
    display: flex;
}
#sec03 .profile div:first-of-type {
    width: 205px;
    margin-right: 32px;
}
#sec03 .profile img {
    width: 100%
}

/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

#sec03 .main_txt {
    margin-top: 4vw;
    display:block;
}

#sec03 .main_txt p {
    width: 100%;
    margin-top: 3vw;
}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#sec03 .profile {
    display:block;
}
#sec03 .profile div:first-of-type {
    width: 100%;
    margin-right:0;
}
#sec03 h3 {
    font-size: 2em;
}
}


/*　-----------------------　Sec04　-----------------------　*/
#sec04 {
    background-color: var(--Color7);
    padding-bottom: 60px;
}
#sec04 .main_txt p {
    margin-top: 40px;
}
#sec04 figure.fig_sikihai {
    width: 1000px;
    margin: auto;
}
#sec04 figure figcaption.lb_cap {
    bottom: -1.8em;
}

#sec04 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1000px;
    margin: 60px auto 0 auto;
}
#sec04 li {
    width: 220px;
    margin-bottom: 2em;
}
#sec04 .li_ttl {color:var(--Color4);letter-spacing:0;margin: 0.3em 0 0.5em 0;}
#sec04 .li_ttl small {font-size: 70%;}
#sec04 .li_txt {font-size: 72%;}
#sec04 .li_cap {font-size: 60%;margin-top: 0.3em;}


#sec04 .li_ttl.chotai { /*テキストに長体をかける*/
    white-space: nowrap;
    transform: scale(0.86, 1);
    transform-origin: top left;
}


/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

#sec04 figure.fig_sikihai,
#sec04 ul {width: 90%;}
#sec04 li {width: 48%;}

#sec04 .li_ttl.chotai {transform:none;white-space: normal;}


}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#sec04 .li_ttl {line-height: 1.2em;}

#sec04 .li_ttl.chotai { /*テキストに長体をかける*/
    transform: scale(0.95, 1);
}
}

@media screen and (min-width:768px) and ( max-width:1000px) {

#sec04 .kobetu-1 {
    letter-spacing: 0;
    font-size: clamp(1.2rem, 0.422rem + 1.6vw, 1.4rem);
}
}


/*　-----------------------　Sec05　-----------------------　*/

#sec05 {
    background-color: var(--Color6);
    color: var(--Color2);
}
#sec05 .sec_main {
    padding-top: 80px;
    display: block;
}
#sec05 h3 {
    letter-spacing: 0.4em;
}

#sec05 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1000px;
    margin: 30px auto 0 auto;
}
#sec05 li {
    width: 150px;
    margin-bottom: 2em;
}
#sec05 .li_ttl {letter-spacing: 0;}


#sec05 .cap {
    text-align: right;
    font-size: 0.6em;
}

/* ----------------------- */
/* 1000*/
/* ----------------------- */
@media screen and (max-width: 1000px) {

#sec05 ul {width: 90%;}
#sec05 li {width: 31%;}

}

/* ----------------------- */
/* sp */
/* ----------------------- */
@media screen and (max-width: 767px) {

#sec05 li {width: 48%;}

}




