/* CSS Document */

footer{
    margin-top: 0;
}
/*#philosophy h2.sub{
}

#philosophy h2.sub::after{
    content: "";
    width: 50px;
    display: block;
    margin: auto;
    height: 1px;
    border-bottom: 1px solid #9A9A9A;
    margin-top: 30px;
}
*/
#philosophy .flex{
    text-align: left;
    padding-top: 20px;
}

#philosophy .flex h2{
    width: 25%;
    font-size: clamp(1.8rem, 1.215rem + 0.78vw, 2.3rem);
    font-family: var(--En-san);
    font-weight: normal;
    letter-spacing: 0.3rem;
    line-height: 1.8;
}

#philosophy .flex dl{
    width: 72%;
}

#philosophy .flex dl dt{
    font-size: clamp(1.8rem, 1.215rem + 0.78vw, 2.3rem);
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.8;
}

#philosophy .flex dl dt h3{
    font-family: var(--En-san);
    letter-spacing: 0.3rem;
    font-size: clamp(2rem, 1.215rem + 0.78vw, 2.5rem);
    border: none;
    margin-bottom: 0 !important;
}

#philosophy .flex dl dd{
    margin-bottom: 20px;
    line-height: 2.2;
}

#philosophy .flex dl dt:not(:nth-of-type(1)){
    border-bottom: 1px solid #222;
    padding-bottom: 10px;
    font-size: clamp(1.6rem, 1.215rem + 0.58vw, 1.8rem);
}

#philosophy .flex dl:nth-of-type(1) dd{
    margin-bottom: 40px;
}

#philosophy .flex:nth-of-type(2) dl dt{
    letter-spacing: 0.07rem
}



/*#philosophy .bg2{
    background: linear-gradient(to right,  #dfdfdf 0%,#dfdfdf 50%,#ebebeb 50%,#ebebeb 100%); 
}

#philosophy .bg2 p{
    max-width: 1200px;
    margin: auto;
}*/

#philosophy .bg{
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#dfdfdf+0,dfdfdf+50,ebebeb+51,ebebeb+100 */
    background: linear-gradient(to right,  #dfdfdf 0%,#dfdfdf 48.5%,#ebebeb 48.5%,#ebebeb 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    padding: 80px 0;
}

#philosophy .bg{
    position: relative;
}

#philosophy .bg::after{
    content: "";
    width: 6.5%;
    height: 100%;
    position: absolute;
    display: block;
    top: 0;
    left: 48.45%;
    background:linear-gradient(to bottom left, transparent 50%, #dfdfdf 50%) top left/ 100% 50% no-repeat,
    linear-gradient(to top left, transparent 50%, #dfdfdf 50%) bottom left / 100% 50% no-repeat;
}

#philosophy .bg.flex{
    justify-content: center;
    margin-top: 150px;
}

#philosophy .bg .box{
    width: 42%;
    text-align: center;
    margin-left: 6.5%
}

#philosophy .bg .inner{
    width: 95%;
    margin: auto;
}

#philosophy .bg .box p{
    width: 100%;
    font-size: clamp(1.55rem, 1.215rem + 0.78vw, 2rem);
    font-weight: bold;
    word-break: keep-all;
    overflow-wrap: anywhere;

}

#philosophy .bg .box p:after{
    content: "";
    width: 70px;
    display: block;
    margin: auto;
    height: 2px;
    border-bottom: 2px solid var(--base-color);
    margin-top: 25px;
}

#philosophy .bg .box p span{
    display: block;
    font-weight: normal;
    font-size: 1.5rem;
    margin-bottom: 20px;
}


#philosophy .bg .box img{
    margin: 65px auto 80px;
}

/*#philosophy .bg .box:nth-of-type(2) img{
    width: 85%;
    max-width: 480px;
}*/

#philosophy .bg.flex .text{
    width: 94%;
    max-width: 800px;
    position: relative;
    z-index: 1;
    word-break: keep-all;
    overflow-wrap: anywhere;
    text-align: center;
    /*font-size: clamp(1.55rem, 1.215rem + 0.78vw, 2rem);*/
}



@media only screen and (max-width: 580px) {  

#philosophy .spbr{
    display: block;
}
#philosophy h2.sub {
    margin-bottom: 80px;
}
#philosophy .flex {
    margin-bottom: 60px;
    padding-top: 0;
}
#philosophy .flex h2{
    width: 100%;
    font-size: 2.3rem;
    margin-bottom: 10px;
}



#philosophy .flex dl{
    width: 100%;
}

#philosophy .bg{
    padding: 50px 0;
}
#philosophy .bg.flex {
    margin-top: 60px;
}
#philosophy .bg .box{
    margin-left: 8%;
}
#philosophy .bg .box:nth-of-type(1){
    margin-left: 2%;
}



#philosophy .bg .box p span {
    margin-bottom: 5px;
    font-size: 1.3rem;
}
#philosophy .bg .box p:after {
    width: 50px;
    margin-top: 20px;
}
#philosophy .bg .inner{
    width: 98%;
}
#philosophy .bg .box p{
    line-height: 1.8
}
#philosophy .bg .box img {
    margin: 25px auto;
}
#philosophy .bg .box:nth-of-type(2) img {
    width: 85%;
}






}









