@charset "UTF-8";



.container {
    width:950px;
    margin: 0 auto 38px;
}

.keyvisual {
    padding: 42px 0 28px;
    overflow:hidden;
}
.keyvisual img {
    visibility: top;
}

.keyvisual h1 {text-align: center; margin: 30px auto;
}
.keymain{border-radius: 6px;  margin: 90px auto 40px;padding: 20px 0;}
.keymain_icon{display: block; margin: -80px auto 0;}
.keymain ul{width: 790px; margin: 2em auto; padding: 0;}
.keymain li:first-child{margin-right: 38px; margin-left: 0;}
.keymain li p{margin-block:0.2em; font-size: 20px; font-feature-settings : "palt";}
small{font-size: 80%;}
small.small{font-size: 70%;}
.content {
    background: #fff;
    padding: 28px 28px 16px 26px;
    position: relative;
}
.content h1 {
    margin: 0;
    padding: 0;
    font-size: 10px;
    position: absolute;
    top: -20px;
}
.content p,
.content ul,
.content li,
.content dl,
.content dt,
.content dd {
    margin: 0;
    padding: 0;
}
.content .bnr_long {
    margin: 0 0 22px;
}
.content a:hover,.keymain a:hover {
    opacity:0.5;
}
.content ul {
    overflow:hidden;
}
.content li {
    width: 432px;
    float: left;
    list-style-type:none;
    margin-bottom:21px;
}
.content li:nth-child(2n) {
    margin-left: 26px;
}
.content li a {
    display:block;
    height: 100px;
    border: solid 1px #d2d2d2;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-decoration: none;
    background: url(../img/icon_arrow2.png) no-repeat 388px center;
    color: #4e5764;
}
.content .bnr_long a,.keymain a:hover,
.content li a {
    -webkit-transition: opacity 0.2s;
    -moz-transition: opacity 0.2s;
    -ms-transition: opacity 0.2s;
    -o-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
.content .photo {
    width: 116px;
    display:inline-block;
    vertical-align:middle;
}
.content dl {
    width: 250px;
    margin:0 0 0 17px;
    display:inline-block;
    vertical-align:middle;
}
.content dd {
    font-size: 11px;
    line-height: 1.4;
}

.news:has(ul) {
    margin-bottom: 120px;
}
.news h1 {
    color: #00A5A5;
    /* font-family: serif; */
    letter-spacing: 0.1em;
}
.news-list {
    padding: 0;
}
.news-list li {
    border-top: 1px solid #ccc;
    padding-block: 1.5em;
}
.news-list li span {
    font-weight: bold;
}
.news-list li p {
    margin: 0;
}