.contents-block{
    margin: 3em auto;
}

/************************************
** specials
************************************/
.sp-txt{
        margin: 3em auto;
    text-align: center;
}
.sp-txt-p01{
        font-size: 2.5em;
}
.sp-txt-p02{
        font-size: 3em;
}
.sp-fv-tane{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.sp-fv-tane div{
    width: 15em;
    height: 15em;
    background-color: #ffffff;
    border-radius: 50%;
}
@media screen and (max-width: 749px){
    .sp-txt-p01{
        font-size: 1.3em;
    }
    .sp-txt-p02{
            font-size: 1.5em;
    }
    .sp-fv-tane div{
        width: 5em;
        height: 5em;
    }
}
/************************************
** about
************************************/
#about{
    margin-bottom: 10em;
}
#about .contents-block{
    border: double;
    padding: 2em;
}
.sp-about-txt h2{
    font-size: 1.4em;
    text-align: center;
}
.sp-about-txt p{
    margin: 1em auto 0;
}

@media screen and (max-width: 749px){
    #about{
    margin-bottom: 7em;
    }
    #about .contents-block{
        padding:0;
    }
    .sp-about-txt h2{
    font-size: 1.1em;
}
}
/************************************
** ancher
************************************/
#ancher .contents-box{
    margin: 1em;
    display: flex;
    justify-content: center;
}
#ancher .contents-box a{
    width: 30%;
    background-color: #ffffff;
    color: #000000;
    display: block;
    padding: 0.5em 1em;
    cursor: pointer;
    box-shadow: 4px 4px #887760;
    border-radius: 12px;
    text-align: center;
    border: 1px solid #000000;
    margin: auto 2em;
}
@media screen and (max-width: 1200px){
    #ancher .contents-box a{
        margin: 1em auto;
    }
}
@media screen and (max-width: 749px){
    #ancher .contents-box{
        display: block;
        padding: 0;
        margin: 0;
    }
    #ancher .contents-box a{
        width: auto;
    }
}


/************************************
** kinds
************************************/
#kinds{
        margin-top: 7em;
}
.kinds-leads{
        margin: 2em auto;
    width: 80%;
}
.kinds-block{
        margin: 5em auto;
}
.kinds-box{
        display: grid;
    grid-template-columns: 40% 1fr;
    align-items: center;
    margin: 3em auto;
}
.kinds-box-img img{
        border-radius: 50%;
}
.kinds-box-img-cap{
    text-align: center;
}
.kinds-box-txt{
        margin: auto 2em;
}
.kinds-box-txt h3{
    font-size: 1.2em;
    margin: 1em auto;
}
.kinds-box-txt p{
    margin: 2em auto;
}
.kinds-box-txt a{
    background-color: #cfcfcf;
    color: #000000;
    padding: 0.3em 2em;
    border-radius: 16px;
    display: block;
    width: 40%;
    text-align: center;
    margin: 2em auto;
}

.kind-box-owner{
    background-color: #ffffff;
        padding: 1em;
}
.kind-box-owner > p{
        font-size: 1.5em;
    text-align: center;
}


.toggle-btn {
  display: inline-block;
  padding: 10px 16px;
  font-size: 14px;
  border-radius: 6px;
  border: 1px solid #ccc;
  background: #f7f7f7;
  cursor: pointer;
  transition: all 0.2s ease;
}
.toggle-btn:hover {
  background: #eaeaea;
}
.toggle-btn.active {
  background: #ddd;
  border-color: #bbb;
}
.toggle-btn::after {
  content: "＋";
  margin-left: 8px;
}
.toggle-btn.active::after {
  content: "−";
}

@media screen and (max-width: 749px){

    #kinds .contents-block{
        margin: 3em auto;
    }
    .kinds-leads{
            width: 100%;
    }
    .kinds-box{
            flex-direction: column-reverse;
    display: flex;
    }
    .kinds-box-txt{
        margin: auto;
    }
}

/************************************
** entry
************************************/
#entry{
    margin-top: 7em;
}
#entry h2{
    margin: 0 auto 2em;
}
.label-wrap {
    position: relative;
    background: #fff;
}
/* 三角部分 */
.label-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    border-top: 90px solid #ea7f7f;
    border-right: 90px solid transparent;
}
/* 文字（斜めに配置） */
.label-text {
    position: absolute;
    top: 18px;
    left: 6px;
    color: #fff;
    transform: rotate(-45deg);
    font-weight: bold;
    pointer-events: none;
}

.entry-block{
    padding: 1em 4em;
}
.entry-box{
        display: grid;
    grid-template-columns: 40% 1fr;
    align-items: center;
    margin: 3em auto;
}
.entry-txt{
        margin: auto 2em;
}
.entry-txt h3{
    font-size: 1.2em;
    margin: 1em auto;
}
.entry-txt p{
    margin: 2em auto;
}
.entry-txt a{
    background-color: #2ca070;
    color: #ffffff;
    padding: 0.5em 2em;
    border-radius: 24px;
}
.entry-next{
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #666;
    margin: auto;
    margin: 2em auto;
}
.entry-bg{
        background-color: #e3c69c;
    padding: 2em;
    border-radius: 35px;
}
.entry-bg .entry-block:nth-child(1){
    margin-bottom: 2em;
}
.entry-bg .entry-block:nth-child(2){
    margin: 2em auto 0;
}
@media screen and (max-width: 749px){
    #entry{
    margin-top: 0;
    }
    #entry .contents-block{
            margin: 0 auto;
    }
    #entry .contents-box{
            padding: 0;
    }
    .entry-block{
        padding: 1em;
    }
    .entry-box{
            display: flex;
    flex-direction: column-reverse;
    margin: 1em auto;
    }
    .entry-bg{
        padding: 1em;
    }
    .entry-txt{
        margin: auto 1em;
    }
    .entry-txt h3{
    text-align: center;
    }
    .entry-txt a{
        display: block;
        text-align: center;
        margin: 2em auto;
    }
}

/************************************
** home
************************************/
#home{
        padding-top: 2em;
    margin-bottom: 15em;
}
#home a{
    background-color: #2ca070;
    color: #ffffff;
    padding: 1em 2em;
    border-radius: 24px;
    margin: auto;
    text-align: center;
    display: block;
    width: 50%;
}

@media screen and (max-width: 749px){
    #home a{
        width: auto;
    }
}