@charset "utf-8";

.titlewrap {
	h1 {
        .txtclip {
            background: #0A964D;
            background: linear-gradient(to right bottom,#0A964D 0%,#89CB89 100%);
        }
	}
}

section {
    .wrap {
        .contents {
            h2 {
                &:first-letter {
                    color:#22AC37;
                }
            }
            h3 {
                font-size:2.8rem;
            }
            table {
                border-collapse:collapse;
                width:100%;
                tr {
                    border-bottom:1px solid #22AC37;
                }
                th,td {
                    font-size:1.6rem;
                    line-height:1.5;
                    font-weight:500;
                    text-align:left;
                    padding:.5em 1em;
                    vertical-align:middle;
                }
            }
        }
    }
}

#company {
    .wrap {
        .contents {
            .contents_inner {
                display:grid;
                grid-template-columns:38% 1fr;
                grid-column-gap:5%;
                .img {
                    img {
                        display:block;
                        border-radius:10px;
                    }
                    p {
                        text-align:center;
                        font-size:1.8rem;
                        line-height:1.5;
                        padding-top:.66em;
                    }
                }
                .detail {
                    p {
                        &:not(:last-child) {
                            margin-bottom:1em;
                        }
                    }
                }
            }
        }
    }
}

#about {
    .wrap {
        .contents {
            table {
                th,td {
                    &:first-child {
                        font-weight:600;
                        width:12em;
                        text-align:center;
                    }
                }
                td {
                    span {
                        display:inline-block;
                    }
                }
            }
        }
    }
}

#history {
    .wrap {
        .contents {
            table {
                th,td {
                    padding:1em;
                    &:first-child {
                        font-size:1.8rem;
                        font-weight:600;
                        width:10em;
                        padding:.5em 2em;
                        letter-spacing:.1em;
                        span {
                            font-size:2.8rem;
                        }
                    }
                    dl {
                        font-size:1.6rem;
                        display:grid;
                        grid-template-columns:4em 1fr;
                        align-items:center;
                        grid-row-gap:.66em;
                        dt,dd {
                            line-height:1.5;
                        }
                        dt {
                            font-weight:600;
                            span {
                                font-size:2.1rem;
                            }
                        }
                    }
                }
            }
        }
    }
}

#access {
    .wrap {
        .contents {
            .contents_inner {
                display:grid;
                grid-template-columns:repeat(2,1fr);
                grid-column-gap:5%;
                .detail {
                    p {
                        margin-bottom:3em;
                    }
                    dl {
                        background-color:rgba(34,172,55,.4);
                        padding:1.5em;
                        border-radius:10px;
                        dt,dd {
                            line-height:1.5;
                            color:#FFFFFF;
                        }
                        dt {
                            margin-bottom:1em;
                        }
                    }
                }
                .map {
                    display:grid;
                    grid-row-gap:10px;
                    align-content:start;
                     iframe {
                         display:block;
                         width:100%;
                         height:auto;
                         aspect-ratio:1.66;
                     }
                    a {
                        color:#22A058;
                        justify-self:end;
                    }
                }
            }
        }
    }
}

@media screen and (max-width:1200px){

}

@media screen and (max-width:1024px){
}

@media screen and (max-width:768px){

    section {
        .wrap {
            .contents {
                h3 {
                    font-size:1.8rem;
                }
                table {
                    border-collapse:collapse;
                    width:100%;
                    tr {
                        border-bottom:1px solid #22AC37;
                    }
                    th,td {
                        font-size:1.4rem;
                        padding:.5em;
                    }
                }
            }
        }
    }
    
    #company {
        .wrap {
            .contents {
                h2 {
                    margin-bottom:1.5em;
                }
                .contents_inner {
                    grid-template-columns:1fr;
                    .img {
                        order:1;
                        margin-bottom:20px;
                        img {
                            max-width:250px;
                            margin:0 auto;
                        }
                        p {
                            font-size:1.6rem;
                            padding-top:.5em;
                        }
                    }
                    .detail {
                        display:contents;
                        p {
                            order:2;
                        }
                    }
                }
            }
        }
    }
    
    #about {
        .wrap {
            .contents {
                table {
                    th,td {
                        &:first-child {
                            width:8em;
                        }
                    }
                }
            }
        }
    }
    
    #history {
        .wrap {
            .contents {
                table {
                    th,td {
                        padding:.5em;
                        &:first-child {
                            font-size:1.5rem;
                            width:6em;
                            padding:.5em;
                            span {
                                font-size:2.0rem;
                            }
                        }
                        dl {
                            font-size:1.4rem;
                            grid-template-columns:3.5em 1fr;
                            dt {
                                font-weight:600;
                                span {
                                    font-size:1.8rem;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    
    #access {
        .wrap {
            .contents {
                .contents_inner {
                    grid-template-columns:1fr;
                    grid-row-gap:30px;
                    .detail {
                        p {
                            margin-bottom:1.5em;
                        }
                        dl {
                            background-color:rgba(34,172,55,.4);
                            padding:1em;
                            dt,dd {
                                font-size:1.4rem;
                            }
                            dt {
                                margin-bottom:.66em;
                            }
                        }
                    }
                    .map {
                         iframe {
                             aspect-ratio:1.5;
                         }
                        a {
                            font-size:1.4rem;
                        }
                    }
                }
            }
        }
    }
    
}