.main__wrapper {
    margin: 0px auto;
    flex-wrap: wrap;
    max-width: 1100px;
    padding: 0px 50px;
    font-size: 16px;
}
.main__title-wrapper {
    text-align: center;
}
.main__title {
    color: #509974;
    font-size: 22px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    margin: 50px 0px 35px;
    text-align: center;
}

.main__title--text {
    line-height: 2;
    letter-spacing: 1.5px;
    margin: 0px 0px 25px;
    font-size: 16px;
}
.main__photo-wrapper {
    display: flex;
    /* justify-content: space-between; */
    overflow: hidden;
    flex-wrap: wrap;
    gap:3.5%;
}
.main__photo {
    padding: 0px;
    text-align: center;
    width: 31%;
    max-width: 320px;
}
.main__photo img {
    max-width: 100%;
    height: auto;
}
.main__photo p {
    margin: 15px 0 5px 0;
}
/* 命の授業 external */
.external {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    flex-wrap: wrap;
}
.main__external-wrapper:nth-child(2) {
    margin-bottom: 15px;
}
.main__external-wrapper {
    max-width: 900px;
    display: flex;
    margin: 0px auto;
    align-items: flex-end;
}
.external-img {
    max-width: 100%;
    height: auto;
}
.external-img + p {
}
.main__external .photo-title {
    text-align: center;
    margin-top: 15px;
    margin-bottom: 5px;
}
.external-text {
    font-size: 14px;
    line-height: 2.2;
    letter-spacing: 1.5px;
    max-width: 550px;
    margin: 7px 0px 10px 30px;
}
.external-text.middle {
    margin-bottom: 30px;
}
.external__bottom-wrapper {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    flex-wrap: wrap;
    margin: 10px auto;
}
.external__bottom-wrapper .main__external {
    padding: 0px;
    text-align: center;
    width: 48%;
    max-width: 320px;
}

.main__external a {
    color: #509974;
    text-decoration: underline;
}
.main__photo__bottom {
    margin: 20px auto 50px;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.pdf-img {
    display: flex;
    width: 77%;
    justify-content: flex-start;
    margin-left: 5%;
}
.pdf-img img:nth-child(1) {
    width: 140px;
    height: auto;
    margin-right: 30px;
}
.pdf-img img:nth-child(2) {
    width: 320px;
    height: auto;
}

.pdf-link {
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
}
.pdf-link-warpper {
    display: flex;
    flex-direction: column;
    margin: 0px auto;
    list-style: none;
}

.pdf-link-title {
    font-size: 16px;
    font-weight: 500;
    display: flex;
    margin: 0px auto 20px;
}
.pdf-link-title::before,
.pdf-link-title::after {
    content: "";
    display: inline-block;
    margin: 10px 27px;
    height: 1px;
    text-shadow: none;
    background-color: #000000;
    width: 20px;
}

/* 技能実習 */
.main__photo-wrapper#intern{
    justify-content: center;
}
.main__photo-wrapper#intern .main__photo{
    width:48%;
}

/* 品質かわら版一覧< */
.js-load a {
    font-size: 16px;
    text-decoration: underline;
    color: #509974;
    cursor: pointer;
}

.pdf-link-warpper .js-load span {
    font-size: 13px;
}
.pdf-link-warpper > .js-load > p {
    font-size: 16px;
    min-width: 100px;
    margin: 0 20px 15px 0;
}
.js-load {
    display: none;
}
.js-load.active {
    display: flex;
    justify-content: flex-start;
}

.btn-wrap {
    position: relative;
    width: 100%;
    display: inline-block;
    text-align: center;
    margin: 30px auto;
}
.btn-wrap a {
    border: 1px solid #ddd;
    padding: 8px 13px 9px;
    font-size: 14px;
    text-align: center;
    text-decoration: none;
}
.btn-wrap a:hover {
    background: #599a79;
    color: #fff;
}
.btn-wrap a:hover i {
    color: #fff;
}

/* 年間目標 */
.annual-target {
    margin: 0 0 50px;
}
.main__table {
    border-collapse: collapse;
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.main__table tr {
    border-bottom: 1px solid #d7d7d7;
}
.main__table tr:first-child {
    border-top: 1px solid #d7d7d7;
}
.main__table th, 
.main__table td {
    padding: 8px 12px;
}
.main__table .center {
    text-align: center;
}
.main__table .nowrap {
    white-space: nowrap;
}

