@charset "UTF-8";
/* CSS Document */


.box-text2 p {
    letter-spacing: 0em;
}

.box-text3 {
    margin-bottom: 20px;
}


/* layout-listwrap */

.layout-listwrap ul {
    min-width: 100%;
}

.layout-listwrap2 ul {
    min-width: 40%;
}

/* contents02 */

.contents02 .lc03-wrap .layout-contents03:not(:last-child) {
    margin-bottom: 40px;
}


/* contents03 */

.contents03 {
    background-image: none;
    padding-top: 0px;
}

.contents03 .lc02-inner .box:not(:last-child) {
    margin-bottom: 30px;
}

.contents03 .lc02-inner h6 {
    font-family: var(--sub-font);
    font-weight: var(--base-weight2);
    color: var(--color-sub3);
    font-size: 25px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    margin-bottom: 7px;
    padding-left: 20px;
    position: relative;
}

.contents03 .lc02-inner h6::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 14px;
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--color-sub3);
}

.contents03 .layout-contents02-bl .lc02-inner h6 {
    color: var(--color-sub4);
}

.contents03 .layout-contents02-bl .lc02-inner h6::before {
    background-color: var(--color-sub4);
}

.contents03 .layout-contents02-bs .lc02-inner h6 {
    color: var(--color-sub6);
}

.contents03 .layout-contents02-bs .lc02-inner h6::before {
    background-color: var(--color-sub6);
}

.contents03 .layout-contents02-or .lc02-inner h6 {
    color: var(--color-sub7);
}

.contents03 .layout-contents02-or .lc02-inner h6::before {
    background-color: var(--color-sub7);
}

section.contents03 div.midashi03 {
    margin-bottom: 15px;
}

.contents03 .layout-contents02 .midashi03 h4 {
    font-size: 22px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}


/* layout01 */

.layout01 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

.layout01 ul li a {
    font-family: var(--sub-font);
    font-weight: var(--base-weight2);
    color: var(--color-main);
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: 0.05em;
    display: inline-block;
    min-width: 340px;
    padding: 18px 20px;
    text-align: center;
    border-style: solid;
    border-color: var(--color-main);
    border-width: 2px;
    border-radius: 60px;
    background-color: #FFF;
    position: relative;
}


.contents02 .layout01 ul li a {
    min-width: 260px;
}

.layout01a ul li a {
    min-width: 300px;
}

.layout01 ul li a:hover {
    opacity: 1;
}

.layout01 ul li a::before {
    content: "";
    position: absolute;
    right: 20px;
    top: 0px;
    display: block;
    background-image: url("../common/images/link-arrow01.svg");
    background-position: right center;
    background-repeat: no-repeat;
    background-size: auto 15px;
    width: 33px;
    height: 100%;
    transition: .5s;
}

.contents02 .layout01 ul li a::before {
    display: none;
}

.layout01 ul li a:hover::before {
    right: 15px;
}

/* layout02 */

.layout02 .box-title {
    padding: 15px 0px 25px;
}

.layout02 .box-title h4 {
    font-family: var(--sub-font);
    font-weight: var(--base-weight2);
    color: var(--color-main);
    font-size: 34px;
    line-height: 1.4;
    letter-spacing: 0.15em;
    display: flex;
    align-items: center;
}

.layout02 .box-title h4::before,
.layout02 .box-title h4::after {
    content: "";
    height: 1px;
    flex-grow: 1;
    border-top-style: dotted;
    border-color: var(--color-main);
    border-width: 4px;
}

.layout02 .box-title h4::before {
    margin-right: 30px;
}

.layout02 .box-title h4::after {
    margin-left: 30px;
}

.sp-view {
    display: none;
}
