@charset "utf-8";

div.img {
    width: 100%;
    height: auto;
    position: relative;
}
img {
    width: 100%;
    height: auto;
}
h3 {
    width: fit-content;
    margin: 100px auto 50px;
    text-align: center;
    font-size: 30px;
    letter-spacing: 0.1em;
    line-height: 1.38;
}
h4 {
    font-size: 24px;
    letter-spacing: 0.1em;
}
h5 {
    font-size: 20px;
    letter-spacing: 0.1em;
}
p {
    font-size: 16px;
    line-height: 1.666;
    letter-spacing: 0.1em;
}
i {
    font-style: normal;
}
h2 span,
h3 span,
h4 span,
h5 span,
p span {
    display: inline-block;
}
h3::after {
    content: "";
    display: block;
    border-bottom: 1px solid #AB722C;
    height: 1px;
    margin: 0 auto;
    padding: 30px 0 0 0;
}

small {
    display: block;
    font-size: 11px;
}
p.caption.bk {
    color: #000;
}
p.caption.out {
    right: 0;
    bottom: -1.5em;
}

h3.cTxt span {
    color: #AB722C;
}
div.cont.copy .box {
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.spOnly768 {
    display: none;
}
.spOnly500 {
    display: none;
}
.spOnly480 {
    display: none;
}
.only330 {
    display: inline-block;
}

@media screen and (max-width: 1024px) {
    h3 {
        margin: 100px auto 45px;
        font-size: 26px;
    }
    h3::after {
        padding: 25px 0 0 0;
    }
    h4 {
        font-size: 20px;
    }
    h5 {
        font-size: 18px;
    }
    p {
        font-size: 14px;
    }
}
@media screen and (max-width: 768px) {
    h3 {
        margin: 100px auto 40px;
        font-size: 24px;
    }
    h3::after {
        padding: 20px 0 0 0;
    }
    h4 {
        font-size: 18px;
    }
    h5 {
        font-size: 16px;
    }
    #care div.cont.copy .box {
        margin: 20px 0 0 0;
    }
    .spOnly768 {
        display: block;
    }
    .only768 {
        display: none;
    }
}
@media screen and (max-width: 500px) {
    .spOnly500 {
        display: inline-block;
    }
}
@media screen and (max-width: 480px) {
    h3 {
        font-size: clamp(22px, 5vw, 24px);
    }
    .spOnly480 {
        display: inline-block;
    }
}
@media screen and (max-width: 330px) {
    .only330 {
        display: none;
    }
}

/* mainVisual */
.mainVisual {
    margin: 0 !important;
    position: relative;
}
.mainVisual div.img::after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    margin: auto;
    background: rgba(0, 0, 0, 0.075);
}
.mainVisual .absCopy {
    width: 100%;
    margin: auto;
    text-align: center;
    position: absolute;
    bottom: 80px;
    z-index: 1;
}
.mainVisual .absCopy h2 span,
.mainVisual .absCopy p span {
    color: #fff;
}
.mainVisual .absCopy h2,
.mainVisual .absCopy p {
    color: #fff;
    text-shadow: 0 0 7px #000;
    /* text-stroke: 0.01rem rgb(0 0 0 / 50%);
    -webkit-text-stroke: 0.01rem rgb(0 0 0 / 50%); */
}
.mainVisual .absCopy h2 {
    margin: 0 0 15px 0;
    letter-spacing: 0.1em;
}
.mainVisual .absCopy p {
    font-size: 20px;
    letter-spacing: 0.05em;
}
.mainVisual p.caption {
    z-index: 1;
}
@media screen and (max-width: 1200px) {
    .mainVisual {
        margin: 80px 0 0 0 !important;
    }
}
@media screen and (max-width: 1024px) {
    .mainVisual .absCopy {
        bottom: 60px;
    }
    .mainVisual .absCopy h2 {
        font-size: 28px;
    }
    .mainVisual .absCopy p {
        font-size: 18px;
    }
}
@media screen and (max-width: 768px) {
    .mainVisual .absCopy {
        bottom: 50px;
    }
    .mainVisual .absCopy h2 {
        font-size: 26px;
    }
    .mainVisual .absCopy p {
        font-size: 16px;
    }
}
@media screen and (max-width: 600px) {
    .mainVisual {
        margin: 125px 0 0 0;
    }
    .mainVisual .absCopy {
        bottom: 40px;
    }
    .mainVisual .absCopy h2 {
        font-size: 24px;
    }
    .mainVisual .absCopy p {
        font-size: 14px;
    }
}
@media screen and (max-width: 480px) {
    .mainVisual div.img::after {
        content: "";
        display: none;
    }
    .mainVisual .absCopy {
        width: 90%;
        margin: 50px auto;
        position: relative;
        bottom: unset;
    }
    .mainVisual .absCopy h2 {
        font-size: 22px;
    }
    .mainVisual .absCopy h2 span,
    .mainVisual .absCopy p span {
        color: #000;
    }
    .mainVisual .absCopy h2,
    .mainVisual .absCopy p {
        color: #000;
        text-shadow: unset;
    }
}

div.tab {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
div.tab span {
    width: calc(100% / 3);
    height: 100px;
}
div.tab span {
    background: #d2cbc8;
    transition: all .5s ease-out;
}
div.tab span.current {
    background: #8e7e76;
}
div.tab span:nth-of-type(2) .btnGradient {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
}
div.tab span .btnGradient a {
    width: 100%;
    height: 100px;
    font-size: 20px;
    letter-spacing: 0.22em;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
div.tab span a {
    color: #8e7e76;
    transition: all .5s ease-out;
}
div.tab span.current a {
    color: #fff;
}
div.tab span:hover {
    background: #8e7e76;
}
div.tab span:hover a {
    color: #fff;
}
@media screen and (max-width: 1250px) {
    div.tab span {
        height: 80px;
    }
    div.tab span .btnGradient a {
        height: 80px;
        letter-spacing: 0.15em;
    }
}
@media screen and (max-width: 1000px) {
    div.tab span .btnGradient a {
        font-size: 18px;
    }
}
@media screen and (max-width: 768px) {
    div.tab {
        flex-direction: column;
    }
    div.tab span {
        width: 100%;
    }
    div.tab span:nth-of-type(2) .btnGradient {
        border-top: 1px solid #fff;
        border-right: unset;
        border-bottom: 1px solid #fff;
        border-left: unset;
        position: relative;
        z-index: 1;
    }
}
@media screen and (max-width: 550px) {
    div.tab span {
        height: 60px;
    }
    div.tab span .btnGradient a {
        height: 60px;
    }
}
@media screen and (max-width: 480px) {}

/* cont */
div.cont {
    width: 100%;
    max-width: 1200px;
    margin: 200px auto 0;
}
@media screen and (max-width: 1250px) {
    div.cont {
        max-width: 90%;
    }
}
@media screen and (max-width: 768px) {
    div.cont {
        margin: 100px auto 0;
    }
}

/* cont 01 */
#care div.cont01.copy .box .copy:nth-of-type(1) {
    width: 60%;
}
#care div.cont01.copy .box .copy:nth-of-type(1) > p {
    margin: 10px 0 0 0;
}
#care div.cont01.copy .box .copy:nth-of-type(2) {
    width: 35%;
}
#care div.cont01.copy .box .copy:nth-of-type(2) small {
    margin: 3em 0 0 0;
    display: block;
    font-size: 11px;
}
/* point */
#care div.cont01.copy .box:nth-child(3) {
    margin: 15px 0 0 0;
}
#care div.cont01.copy .box .point.copy:nth-of-type(1) {
    width: calc(60% - 2em);
    padding: 1em;
    display: block;
    background: #eee4db;
}
#care div.cont01.copy .box .point.copy:nth-of-type(1) h4 span {
    color: #840420;
}
#care div.cont01.copy .box .point.copy:nth-of-type(2) h4 {
    padding: 1rem 0 0 0;
}
#care div.cont01.copy .box .point.copy > p {
    font-size: 14px;
}
#care div.cont01.copy .box .point.copy:nth-of-type(1) > p,
#care div.cont01.copy .box .point.copy:nth-of-type(2) > p {
    margin: 10px 0 0 0;
}

@media screen and (max-width: 1250px) {}
@media screen and (max-width: 1024px) {
    #care div.cont01.copy .box .point.copy > p {
        font-size: 13px;
    }
}
@media screen and (max-width: 768px) {
    #care div.cont01.copy .box {
        flex-wrap: wrap;
    }
    #care div.cont01.copy .box .copy:nth-of-type(1) {
        width: 100%;
        margin: 0 0 15px 0;
        display: flex;
        flex-direction: column-reverse;
    }
    #care div.cont01.copy .box .copy:nth-of-type(1) > p {
        margin: 0 0 15px 0;
    }
    #care div.cont01.copy .box .copy:nth-of-type(2) small {
        margin: 1em 0 0 0;
    }
    #care div.cont01.copy .box .copy:nth-of-type(2) {
        width: 100%;
    }
    #care div.cont01.copy .box .point.copy:nth-of-type(1) {
        width: 100%;
        margin: 0 0 20px 0;
    }
    #care div.cont01.copy .box .point.copy:nth-of-type(2) h4 {
        padding: 0;
    }
    #care div.cont01.copy .box .point.copy:nth-of-type(2) img {
        max-width: 380px;
    }
}


/* cont 02 */
#care div.cont02.copy .box .copy:nth-of-type(1) {
    width: 65%;
}
#care div.cont02.copy .box .copy:nth-of-type(1) > p {
    margin: 15px 0 0 0;
}
#care div.cont02.copy .box .copy:nth-of-type(2) {
    width: 30%;
}
#care div.cont02.copy > small {
    margin: 0.5em 0 0 0;
    display: block;
    font-size: 11px;
}
#care div.cont02 .copy .fBox {
    margin: 30px 0 10px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#care div.cont02 .copy .fBox h4 span {
    font-size: 70%;
}

@media screen and (max-width: 1024px) {
    #care div.cont02.copy .box .copy:nth-of-type(1) {
        width: 60%;
    }
    #care div.cont02.copy .box .copy:nth-of-type(2) {
        width: 35%;
    }
}
@media screen and (max-width: 850px) {
    #care div.cont02 .copy .fBox {
        margin: 30px 0 10px 0;
        flex-direction: column;
        align-items: flex-start;
    }
}
@media screen and (max-width: 768px) {
    #care div.cont02.copy .box {
        flex-wrap: wrap;
    }
    #care div.cont02.copy .box .copy:nth-of-type(1) {
        width: 100%;
    }
    #care div.cont02.copy .box .copy:nth-of-type(2) {
        width: 100%;
        margin: 15px 0 0 0;
    }
    #care div.cont02.copy > small {
        margin: 1em 0 0 0;
    }
}
@media screen and (max-width: 500px) {
    #care div.cont02 .copy .fBox h4 span {
        vertical-align: text-top;
    }
}


/* cont 03 */
#care div.cont03.copy {
    margin: 200px auto 120px;
}
.cont03 .wrap {
    width: 100%;
}
.cont03 .wrap .clinicName {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.cont03 .wrap .clinicName span {
    padding: 1.25rem 0;
    text-align: center;
    font-size: 30px;
    letter-spacing: 0;
    line-height: 1;
}
.cont03 .wrap .clinicName span.categoryName {
    width: 34.0741%;
    color: #fff;
    background: #8e7e76;
}
.cont03 .wrap .clinicName span:not(.categoryName) {
    width: 65.9259%;
    background: #eee4db;
}
.cont03 .wrap .copy {
    margin: 10px 0;
}
.cont03 .wrap .copy h4 {
    margin: 0 0 5px 0;
    line-height: 1.5;
}
.cont03 .wrap .copy h4 span {
    font-weight: bold;
    color: #840420;
}
.cont03 .wrap .box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.cont03 .wrap .box .about,
.cont03 .wrap .box .targetUser {
    padding: 1rem;
}
.cont03 .wrap .box ul li {
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
}
.cont03 .wrap .box ul li span {
    margin: 0 0.25rem 0 0;
}
.cont03 .wrap .box .about {
    width: calc(38.2222% - 2rem);
    border: solid 1px #231815;
}
.cont03 .wrap .box .targetUser {
    width: calc(58.2444% - 2rem);
    background: #eee4db;
}
.cont03 .wrap .box .targetUser h5 {
    font-weight: bold;
    color: #840420;
}
.cont03 .wrap .clinicProfile .chairman {
    margin: 15px 0 0 0;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}
.cont03 .wrap .clinicProfile .chairman .img {
    width: 24.6582%;
    margin: 0 3.8485% 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.cont03 .wrap .clinicProfile .chairman .img > img {
    width: 54.795%;
}
.cont03 .wrap .clinicProfile .chairman .img .detail {
    width: 37.3924%;
}
.cont03 .wrap .clinicProfile .chairman .img .detail img.clinicLogo,
.cont03 .wrap .clinicProfile .chairman .img .detail img.qr {
    padding: 0;
}
.cont03 .wrap .clinicProfile .chairman .img .detail img.qr {
    margin: 22.4075% 0 0 0;
}
.cont03 .wrap .clinicProfile .chairman .copy {
    width: 31.5598%;
    margin: 0 2.541% 0 0;
}
.cont03 .wrap .clinicProfile .chairman .copy p {
    font-weight: bold;
    font-size: 23px;
    letter-spacing: 0;
}
.cont03 .wrap .clinicProfile .chairman .copy p span.name {
    margin: 0 0 0 1rem;
    font-size: 150%;
    font-weight: bold;
}
.cont03 .wrap .clinicProfile .chairman .copy p.Affiliation {
    font-size: 18px;
    line-height: 1.333;
}
.cont03 .wrap .clinicProfile .chairman p.explanation {
    width: 30.0537%;
    font-size: 18px;
}
/* btn */
.cont03 .wrap .clinicProfile a.link {
    width: 240px;
    height: 80px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    margin: 50px auto 0;
    border: 1px solid #473C39;
    font-size: 16px;
    letter-spacing: 0.1em;
    color: #473C39;
    transition: all .5s ease;
}
.cont03 .wrap .clinicProfile a.link span.arrow {
    position: relative;
    display: inline-block;
    color: #473C39;
    text-decoration: none;
    outline: none;
    width: 100%;
    transition: all .5s ease;
}
.cont03 .wrap .clinicProfile a.link .arrow::before {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    right: 50%;
    width: 68%;
    height: 1px;
    background: #473C39;
    transform: translateX(-50%);
    transition: all .5s ease;
}
.cont03 .wrap .clinicProfile a.link .arrow::after {
    content: '';
    position: absolute;
    bottom: -4px;
    right: 15%;
    width: 15px;
    height: 1px;
    background: #473C39;
    transform: rotate(45deg);
    transition: all .5s ease;
}
.cont03 .wrap .clinicProfile a.link:hover {
    color: #fff;
    background: #473C39;
}
.cont03 .wrap .clinicProfile a.link span.arrow {
    color: #fff;
}
.cont03 .wrap .clinicProfile a.link:hover span.arrow::after {
    content: '';
    background: #fff;
}
.cont03 .wrap .clinicProfile a.link:hover span.arrow::before {
    content: '';
    background: #fff;
}
@media screen and (max-width: 1250px) {
    .cont03 .wrap .clinicProfile .chairman .img {
        width: 26%;
        margin: 0 2% 0 0;
    }
    .cont03 .wrap .clinicProfile .chairman .copy {
        width: 36%;
        margin: 0 2% 0 0;
    }
    .cont03 .wrap .clinicProfile .chairman .copy p {
        font-size: clamp(20px, 1.84vw, 23px);
    }
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        width: 34%;
    }
    .cont03 .wrap .clinicProfile .chairman .copy p.Affiliation,
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        font-size: clamp(16px, 1.44vw, 18px);
    }
    .cont03 .wrap .clinicProfile a.link {
        height: 60px;
    }
}
@media screen and (max-width: 1024px) {
    .cont03 .wrap .clinicName span {
        font-size: clamp(24px, 2.93vw, 30px);
    }
    .cont03 .wrap .clinicProfile .chairman {
        flex-wrap: wrap;
    }
    .cont03 .wrap .clinicProfile .chairman .img {
        width: 35%;
        margin: 0 calc((100% * 0.35) * 0.1) 0 0;
    }
    .cont03 .wrap .clinicProfile .chairman .img > img {
        width: 60%;
    }
    .cont03 .wrap .clinicProfile .chairman .img .detail {
        width: 35%;
    }
    .cont03 .wrap .clinicProfile .chairman .copy {
        width: auto;
        margin: 0;
    }
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        width: 100%;
        margin: calc((100% * 0.35) * 0.1) 0 0 0;
    }
}
@media screen and (max-width: 850px) {
    div.cont.copy .box {
        flex-wrap: wrap;
    }
    .cont03 .wrap .box .about {
        width: calc(100% - 2rem);
    }
    .cont03 .wrap .box .targetUser {
        width: calc(100% - 2rem);
        margin: 0.75rem 0 0 0;
    }
}
@media screen and (max-width: 768px) {
    .cont03 .wrap .clinicName span.categoryName {
        width: 37%;
    }
    .cont03 .wrap .clinicName span:not(.categoryName) {
        width: 63%;
    }
    .cont03 .wrap .clinicName span {
        font-size: clamp(20px, 3.125vw, 24px);
    }
    .cont03 .wrap .clinicProfile .chairman .copy p {
        font-size: clamp(18px, 2.6vw, 20px);
    }
    .cont03 .wrap .clinicProfile .chairman .copy p.Affiliation,
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        font-size: clamp(14px, 2.08vw, 16px);
    }
}
@media screen and (max-width: 600px) {
    .cont03 .wrap .clinicName {
        flex-wrap: wrap;
    }
    .cont03 .wrap .clinicName span.categoryName {
        padding: 0.5rem 0;
    }
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        padding: 0;
    }
    .cont03 .wrap .clinicName span.categoryName,
    .cont03 .wrap .clinicName span:not(.categoryName) {
        width: 100%;
    }
    .cont03 .wrap .clinicName span.categoryName {
        font-size: clamp(16px, 3.333vw, 20px);
    }
    .cont03 .wrap .clinicProfile .chairman .img {
        width: 100%;
        margin: 0 0 calc((100%* 0.5)* 0.1) 0;
        justify-content: flex-start;
    }
    .cont03 .wrap .clinicProfile .chairman .img .detail {
        width: 25%;
        margin: 0 0 0 0;
    }
    .cont03 .wrap .clinicProfile .chairman .img > img {
        width: 70%;
        margin: 0 calc((100%* 0.5)* 0.1) 0 0;
    }
    .cont03 .wrap .clinicProfile .chairman .copy {
        width: 100%;
    }
    .cont03 .wrap .clinicProfile .chairman p.explanation {
        margin: calc((100% * 0.5) * 0.1) 0 0 0;
    }
}
@media screen and (max-width: 480px) {
    .cont03 .wrap .clinicProfile .chairman .copy p {
        font-size: clamp(16px, 3.75vw, 18px);
    }
}

/* SPACE *************************************************************************/
/* living */
#space .livingExp {
    width: 100%;
    max-width: 1200px;
    margin: 100px auto 0;
}
@media screen and (max-width: 1250px) {
    #space .livingExp {
        max-width: 90%;
    }
}
@media screen and (max-width: 600px) {
    #space .livingExp {
        max-width: 80%;
    }
}
@media screen and (max-width: 380px) {
    #space .livingExp {
        max-width: 90%;
    }
}

/* cont 01 */
#space div.cont01.copy {
    margin: 100px auto 0;
}
#space div.cont01.copy .box .copy {
    width: 60%;
}
#space div.cont01.copy .box .copy ul.facility {
    margin: 30px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#space div.cont01.copy .box .copy ul.facility li {
    width: calc((100% / 3) - 10px);
}
#space div.cont01.copy .box .copy ul.facility li h5.cTxt {
    margin: 5px 0;
    color: #840420;
}
#space div.cont01.copy .box .copy ul.facility li p {
    font-size: 14px;
}
#space div.cont01.copy .box .copy div.equipment {
    width: calc(100% - (0.625rem * 2) - 2px);
    padding: 0.625rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border: solid 1px #000;
}
#space div.cont01.copy .box .copy div.equipment p {
    width: 20%;
}
#space div.cont01.copy .box .copy div.equipment ul {
    width: 80%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#space div.cont01.copy .box .copy div.equipment ul li {
    width: 50%;
}
#space div.cont01.copy .box .copy p.cap {
    margin: 30px 0 0 0;
    font-size: 11px;
}

#space div.cont01.copy .box .img {
    width: 25%;
    margin: 0 auto;
}

@media screen and (max-width: 1250px) {
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment p,
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul li {
        font-size: 14px;
    }
    #space div.cont:nth-of-type(2).copy .box .img {
        width: 25.5%;
    }
    #space div.cont:nth-of-type(2).copy .box .img img {
        height: 100%;
    }    
}
@media screen and (max-width: 1024px) {
    #space div.cont:nth-of-type(2).copy .box .copy {
        width: 65%;
    }
    #space div.cont:nth-of-type(2).copy .box .copy ul.facility {
        margin: 20px 0;
    }
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment p,
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul li {
        font-size: 13px;
    }
    #space div.cont:nth-of-type(2).copy .box .copy p.cap {
        margin: 20px 0 0 0;
    }
    #space div.cont:nth-of-type(2).copy .box .copy ul.facility li p {
        font-size: 13px;
    }

    #space div.cont:nth-of-type(2).copy .box .img {
        width: 27.5%;
    }
}
@media screen and (max-width: 800px) {
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment p,
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul {
        width: 100%;
    }
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment p {
        margin: 0 0 5px 0;
    }
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul li {
        width: 50%;
    }
}
@media screen and (max-width: 768px) {
    #space div.cont:nth-of-type(2).copy .box {
        flex-direction: column;
    }
    #space div.cont:nth-of-type(2).copy .box .copy {
        width: 100%;
    }

    #space div.cont:nth-of-type(2).copy .box .img {
        width: 100%;
        margin: 50px auto 0;
    }
    #space div.cont:nth-of-type(2).copy .box .img img {
        width: 50%;
        margin: 0 auto;
    }
    #space div.cont:nth-of-type(2).copy .box .img p.cap {
        margin: 20px 0 0 0;
        font-size: 11px;
    }
}
@media screen and (max-width: 480px) {
    #space div.cont:nth-of-type(2).copy .box .copy ul.facility li {
        width: 100%;
        margin: 0 auto 20px;
    }
    #space div.cont:nth-of-type(2).copy .box .copy ul.facility li:last-child {
        margin: 0 auto;
    }
}
@media screen and (max-width: 420px) {
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul li {
        width: 100%;
        margin: 0 0 5px 0;
    }
    #space div.cont:nth-of-type(2).copy .box .copy div.equipment ul li:last-child {
        margin: 0;
    }

    #space div.cont:nth-of-type(2).copy .box .img {
        margin: 30px auto 0;
    }
}

/* cont 02 */
#space div.cont:nth-of-type(3).copy .imgWrap {
    width: 100%;
    margin: 50px 0 0 0;
    /* display: flex;
    justify-content: space-between; */
}
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox {
    /* width: 55%; */
    position: relative;
    display: flex;
    justify-content: space-between;
}
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox .img {
    width: 100%;
}
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox > .img:nth-of-type(1),
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox > .img:nth-of-type(2) {
    width: 39%;
}
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox .cFBox {
    width: 20.25%;
    display: flex;
    /* flex-wrap: wrap; */
    flex-direction: column;
    justify-content: space-between;
}
#space div.cont:nth-of-type(3).copy .imgWrap .imgBox .cFBox .img .caption span {
    color: #fff;
}
#space div.cont:nth-of-type(3).copy .imgWrap > .planImg {
    /* width: 40%; */
    margin: 30px 0 0 0;
    display: flex;
    justify-content: space-between;
}
#space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img {
    width: 48.5%;
}
#space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img p {
    font-size: 24px;
}
#space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img p i {
    margin: 0 0 0 0.625rem;
    font-size: 70%;
}
@media screen and (max-width: 1024px) {
    #space div.cont:nth-of-type(3).copy .imgWrap {
        margin: 30px 0 0 0;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img p {
        font-size: 20px;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img p i {
        margin: 0 0 0 0.225rem;
    }
}
@media screen and (max-width: 600px) {
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox {
        width: 100%;
        flex-wrap: wrap;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox > .img:nth-of-type(1) {
        margin: 0 0 10px 0;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox > .img:nth-of-type(1),
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox > .img:nth-of-type(2) {
        width: 100%;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox .cFBox {
        width: 100%;
        margin: 10px 0 0 0;
        flex-direction: row;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap .imgBox .cFBox .img {
        width: calc(50% - 5px);
    }
    #space div.cont:nth-of-type(3).copy .imgWrap > .planImg {
        flex-wrap: wrap;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img {
        width: 100%;
    }
    #space div.cont:nth-of-type(3).copy .imgWrap > .planImg .img:last-child {
        margin: 20px 0 0 0;
    }
}

/* cont 03 */
#space div.cont:nth-of-type(4).copy {
    margin: 200px auto 120px;
}
#space div.cont:nth-of-type(4).copy .box .copy:nth-of-type(1) {
    width: 30%;
}
#space div.cont:nth-of-type(4).copy .box .img:nth-of-type(2) {
    width: 68%;
}
@media screen and (max-width: 768px) {
    #space div.cont:nth-of-type(4).copy {
        margin: 100px auto;
    }
    #space div.cont:nth-of-type(4).copy .box {
        flex-direction: column-reverse;
    }
    #space div.cont:nth-of-type(4).copy .box .copy:nth-of-type(1) {
        width: 100%;
        margin: 10px 0 0 0;
    }
    #space div.cont:nth-of-type(4).copy .box .img:nth-of-type(2) {
        width: 100%;
    }
}


/* SERVICE ************************************************************************/
/* cont 01 */
#service div.cont:nth-of-type(2).copy .event {
    width: 55%;
    display: flex;
    flex-wrap: wrap;
    border: solid 1px #000;
    position: absolute;
    right: 0;
    bottom: 0;
}
#service div.cont:nth-of-type(2).copy .event h5 {
    width: 100%;
    padding: 0.5rem 0;
    text-align: center;
    font-size: 18px;
    border-bottom: solid 1px #000;
}
#service div.cont:nth-of-type(2).copy .event ul {
    width: calc((100% / 3) - (1rem + 2.75px));
    margin: 0.5rem 0;
    padding: 0 0.5rem;
    display: flex;
    flex-direction: column;
}
#service div.cont:nth-of-type(2).copy .event ul:nth-of-type(2) {
    border-right: dotted 4px #000;
    border-left: dotted 4px #000;
}
@media screen and (max-width: 1250px) {
    #service div.cont:nth-of-type(2).copy .event h5 {
        padding: 0.25rem 0;
        font-size: 16px;
    }
    #service div.cont:nth-of-type(2).copy .event p {
        font-size: 14px;
    }
    #service div.cont:nth-of-type(2).copy .event ul {
        width: calc((100% / 3) - (0.75rem + 0.75px));
        margin: 0.3125rem 0;
        padding: 0 0.3125rem;
    }
}
@media screen and (max-width: 1050px) {
    #service div.cont:nth-of-type(2).copy .event ul {
        width: auto;
        margin: 0.35rem 0;
        padding: 0 0.5rem;
    }
}
@media screen and (max-width: 1024px) {
    #service div.cont:nth-of-type(2).copy .event {
        width: 70%;
        margin: 30px auto 0;
        position: relative;
    }
    #service div.cont:nth-of-type(2).copy .event ul {
        width: calc((100% / 3) - (0.75rem + 0.75px));
        margin: 0.3125rem 0;
        padding: 0 0.3125rem;
    }
}
@media screen and (max-width: 900px) {
    #service div.cont:nth-of-type(2).copy .event {
        width: 100%;
        margin: 30px auto 0;
    }
}
@media screen and (max-width: 600px) {
    #service div.cont:nth-of-type(2).copy .event {
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(2).copy .event ul {
        width: 100%;
        margin: 0.5rem 0;
        padding: 0 0.5rem;
        flex-direction: row;
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(2).copy .event ul:nth-of-type(2) {
        margin: 0;
        padding: 0.5rem;
        border-top: dotted 2px #000;
        border-right: unset;
        border-bottom: dotted 2px #000;
        border-left: unset;
    }
    #service div.cont:nth-of-type(2).copy .event ul li:nth-of-type(-n + 2) {
        margin: 0 0.75rem 0 0;
    }
}
@media screen and (max-width: 480px) {
    #service div.cont:nth-of-type(2).copy .event {
        margin: 30px auto 0;
    }
}

#service div.cont:nth-of-type(2).copy .absBox {
    width: 100%;
    margin: 30px 0 0 0;
    position: relative;
}
#service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(1) {
    width: 54.135129%;
}
#service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(2) {
    width: 26.988074%;
    position: absolute;
    top: 7%;
    right: 17.5%;
}
#service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(3) {
    width: 30.366037%;
    position: absolute;
    top: 38%;
    right: 27%;
}
#service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(4) {
    width: 24.580782%;
    position: absolute;
    top: 38%;
    right: 1%;
}
#service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(5) {
    width: 41.25%;
    margin: 1.35% 0 0 0;
}
@media screen and (max-width: 1024px) {
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(2) {
        top: 9.082031vw;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(3) {
        top: 26.660156vw;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(4) {
        top: 26.660156vw;
    }
}
@media screen and (max-width: 600px) {
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(2) {
        top: 2vw;
        width: 38%;
        right: 5vw;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(3) {
        width: 38%;
        z-index: 2;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(4) {
        right: 0.5%;
    }
}
@media screen and (max-width: 480px) {
    #service div.cont:nth-of-type(2).copy .absBox {
        margin: 50px 0 0 0;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(1) {
        width: 85%;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(1) p.caption.left {
        top: 10px;
        bottom: unset;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(2) {
        top: -7vw;
        width: 40%;
        right: -5vw;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(3) {
        width: 55%;
        top: 54vw;
        right: -2.5vw;
        z-index: 2;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(4) {
        width: 47%;
        top: 42vw;
        right: unset;
        left: -5vw;
    }
    #service div.cont:nth-of-type(2).copy .absBox div.img:nth-of-type(5) {
        width: 60%;
        margin: 33% 0 0 0;
    }
}

/* cont 02 */
#service div.cont:nth-of-type(3).copy > p {
    margin: 0 0 30px 0;
}
#service div.cont:nth-of-type(3).copy .box div.img {
    width: calc((100% / 3) - 10px);
}
#service div.cont:nth-of-type(3).copy .box div.img::before {
    content: "";
    border-left: 0px solid transparent;
    border-right: 70px solid transparent;
    border-top: calc(tan(60deg)* 40px) solid #fff;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
#service div.cont:nth-of-type(3).copy .box div.img::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0;
    color: #000;
}
#service div.cont:nth-of-type(3).copy .box {
    position: relative;
}
#service div.cont:nth-of-type(3).copy .box div.img:nth-of-type(1):after {
    content: "朝";
}
#service div.cont:nth-of-type(3).copy .box div.img:nth-of-type(2):after {
    content: "昼";
}
#service div.cont:nth-of-type(3).copy .box div.img:nth-of-type(3):after {
    content: "夕";
}
@media screen and (max-width: 768px) {
    #service div.cont:nth-of-type(3).copy > p {
        margin: 0 0 30px 0;
    }
    #service div.cont:nth-of-type(3).copy .box div.img::before {
        border-right: 50px solid transparent;
        border-top: calc(tan(60deg)* 30px) solid #fff;
    }
    #service div.cont:nth-of-type(3).copy .box div.img::after {
        font-size: 20px;
    }
}
@media screen and (max-width: 600px) {
    #service div.cont:nth-of-type(3).copy .box {
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(3).copy .box div.img {
        width: 100%;
        margin: 0 0 30px 0;
    }
    #service div.cont:nth-of-type(3).copy .box div.img:nth-child(3) {
        margin: 0;
    }
    #service div.cont:nth-of-type(3).copy .box div.img::before {
        border-right: 70px solid transparent;
        border-top: calc(tan(60deg)* 40px) solid #fff;
    }
    #service div.cont:nth-of-type(3).copy .box div.img::after {
        font-size: 24px;
    }
}


/* cont 03 */
#service div.cont:nth-of-type(4).copy .box div.img,
#service div.cont:nth-of-type(4).copy .box div.copy {
    width: 48.5%;
}
#service div.cont:nth-of-type(4).copy .box div.copy h4.crTxt {
    margin: 0 0 30px 0;
}
#service div.cont:nth-of-type(4).copy .box div.copy h4.crTxt span {
    color: #840420;
}
#service div.cont:nth-of-type(4).copy .box div.copy p.point {
    margin: 30px 0 0 0;
    padding: 0.25rem 0.5rem;
    text-align: center;
    border-top: solid 1px #840420;
    border-bottom: solid 1px #840420;
    background: #eee4db;
}
#service div.cont:nth-of-type(4).copy div.copy p.point span {
    color: #840420;
}
@media screen and (max-width: 1024px) {
    #service div.cont:nth-of-type(4).copy .box {
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(4).copy .box div.img,
    #service div.cont:nth-of-type(4).copy .box div.copy {
        width: 100%;
    }
    #service div.cont:nth-of-type(4).copy .box div.copy {
        margin: 30px 0 0 0;
    }
    #service div.cont:nth-of-type(4).copy .box div.copy h4.crTxt {
        margin: 0 0 15px 0;
    }
    #service div.cont:nth-of-type(4).copy .box div.copy p.point {
        margin: 15px 0 0 0;
        font-size: 16px;
    }
}
@media screen and (max-width: 380px) {
    #service div.cont:nth-of-type(4).copy .box div.copy p.point {
        font-size: 15px;
    }
}


/* cont 04 */
#service div.cont:nth-of-type(5).copy {
    margin: 200px auto 120px;
}
#service div.cont:nth-of-type(5).copy h4 i {
    font-size: 70%;
    display: inline-block;
}
#service div.cont:nth-of-type(5).copy h4 span {
    color: #840420;
    font-weight: bold;
}

#service div.cont:nth-of-type(5).copy h4 {
    margin: 0 0 15px 0;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) {
    margin: 50px 0 0 0;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul {
    margin: 15px 0 50px 0;
    border-top: solid 3px #000;
    border-bottom: solid 3px #000;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li {
    display: flex;
    min-height: 60px;
    border-bottom: solid 1px #000;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li:last-child {
    border-bottom: unset;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li h5 {
    width: 20%;
    height: auto;
    padding: 0 0 0 1rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background: #eee4db;
}
#service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li p {
    width: 82%;
    padding: 0.25rem 1rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
@media screen and (max-width: 1250px) {
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li h5 {
        padding: 0 0 0 0.75rem;
        font-size: clamp(18px, 1.6vw, 20px);
    }
}
@media screen and (max-width: 1024px) {
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li h5 {
        font-size: clamp(16px, 1.757812vw, 18px);
    }
}
@media screen and (max-width: 900px) {
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li h5 {
        width: 25%;
    }
}
@media screen and (max-width: 768px) {
    #service div.cont:nth-of-type(5).copy {
        margin: 100px auto;
    }
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li {
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li h5 {
        width: 100%;
        padding: 0.25rem 0 0.25rem 0.75rem;
    }
    #service div.cont:nth-of-type(5).copy .copy:nth-child(3) ul li p {
        width: 100%;
        padding: 0.5rem 1rem;
    }
}
@media screen and (max-width: 400px) {
    #service div.cont:nth-of-type(5).copy h4 {
        margin: 0 0 5px 0;
    }
    #service div.cont:nth-of-type(5).copy h4 i {
        font-size: 65%;
        vertical-align: text-top;
    }
}

#service div.cont:nth-of-type(5).copy .box div.copy {
    width: 48.5%;
}
#service div.cont:nth-of-type(5).copy .box ul li {
    display: flex;
    border-bottom: solid 1px #000;
}
#service div.cont:nth-of-type(5).copy .box .copy.about ul li:first-child,
#service div.cont:nth-of-type(5).copy .box .copy.requirements ul li:first-child {
    border-top: solid 1px #000;
}
#service div.cont:nth-of-type(5).copy .box .copy.about ul li h5 {
    width: 20%;
    padding: 0.25rem 0.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    border-right: solid 1px #000;
}
#service div.cont:nth-of-type(5).copy .box .copy.about ul li p {
    width: 80%;
    padding: 0.25rem 0.5rem;
}
#service div.cont:nth-of-type(5).copy .box .copy.requirements ul li {
    padding: 0.38rem 0.5rem;
}
/* #service div.cont:nth-of-type(5).copy .box .copy.requirements ul li p {} */
#service div.cont:nth-of-type(5).copy .box .copy.requirements ul li p span {
    padding: 0 0.25rem 0 0;
}
@media screen and (max-width: 1024px) {
    #service div.cont:nth-of-type(5).copy .box .copy.about {
        margin: 0 0 50px 0;
    }
    #service div.cont:nth-of-type(5).copy .box .copy.about ul li h5 {
        width: 25%;
    }
    #service div.cont:nth-of-type(5).copy .box .copy.about ul li p {
        width: 75%;
    }
}
@media screen and (max-width: 850px) {
    #service div.cont:nth-of-type(5).copy .box {
        flex-wrap: wrap;
    }
    #service div.cont:nth-of-type(5).copy .box div.copy {
        width: 100%;
    }
}
@media screen and (max-width: 400px) {
    #service div.cont:nth-of-type(5).copy .box .copy.about ul li h5 {
        width: 28%;
        font-size: 14px;
    }
}


.captionWrap {
    margin: 0 auto 100px;
}