@charset "utf-8";

/*common*/
.mt10{margin-top: 10px !important;}
.mt20{margin-top: 20px !important;}
.mt30{margin-top: 30px !important;}
.mt40{margin-top: 40px !important;}
.mt50{margin-top: 50px !important;}
.mt60{margin-top: 60px !important;}
.mt70{margin-top: 70px !important;}
.mt80{margin-top: 80px !important;}
.mt90{margin-top: 90px !important;}
.mt100{margin-top: 100px !important;}
.mt110{margin-top: 110px !important;}
.mt120{margin-top: 120px !important;}
.mt130{margin-top: 130px !important;}
.mt140{margin-top: 140px !important;}
.mt150{margin-top: 150px !important;}
.pcmb50{margin-bottom: 50px !important;}
.page-kurasu .main_img:before {
    display: none;
}
dl {
    display: block;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    unicode-bidi: isolate;
}
h2,h3,h4,h5 {
    display: block;
    font-size: 1.17em;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    unicode-bidi: isolate;
}
.sp{
    display: none;
}
.pc{
    display: inline-block;
}
.sp-border{
    display: none;
}

.topick-path ul{
    display: flex;
    padding: 10px 0;
}
.topick-path ul li{
    margin-right: 1em;
}
.topick-path ul li::after{
    content: '>';
    margin-left: 1em;
}
.topick-path ul li:last-child:after{
    display: none;
}
.p-container__full{
    max-width: 1000px;
    padding: 0 0px;
}
.text-center{
    text-align: center;
}


.p-container__full__auto-margin-paragraph {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    clear: both;
    padding: 0 0px;
    font-size: 15px;
}
.p-container__full__auto-margin-paragraph p {
    margin-top: auto;
    margin-bottom: auto;
}
.p-container__full__auto-margin-paragraph a{
    transition: all .3s;
}

.flex-wrap{
    display: flex;
}
.p-title{
    text-align: center;
    margin: 50px 0;
}
.h3_border_style{
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 20px 0;
    font-size: 20px;
}
.h3_back_style{
    background-color: #faf5eb;
    padding: 10px;
    font-size: 24px;
}
.link_btn a{
    background: #faf5eb;
    display: block;
    max-width: 60%;
    margin:20px auto;
    text-align: center;
    padding: 20px;
    font-size: 18px;
    color: #b48c32;
    font-weight: bold;
    text-decoration: none;
}
.link_btn a:hover{
    background: #ffecc6;
}
.link_arrow span{
    position: relative;
    display: inline-block;
    margin-left: 30px;
}
.link_arrow span::before{
    content: '';
    background: url(../../img/iju/link_icon_b.svg);
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    font-weight: normal;
    position: absolute;
    top: calc(50% - 10px);
    left: -30px;
    background-size: contain;
}
/*.link_arrow span::before {
    content: '＞';
    position: absolute;
    top: 27px;
    margin-left: -28px;
    font-size: 10px;
    margin-right: 13px;
}*/
.link_txt_arrow{
    position: relative;
    padding-left: 20px;
    display: inline-block;
    
}
.link_txt_arrow::before{
    content: '';
    background: url(../../img/iju/link_icon.svg);
    width: 15px;
    height: 15px;
    position: absolute;
    background-size:contain;
    left:0px;
    top: calc(50% - 7px);

}

a.tellink{
    color: #00468c;
}
a[href*="tel:"]{
    text-decoration: none;
    pointer-events: none;
}
/*color*/
.text-blue{
    color: #00468c;
    display: inline-block;
}
.text-skyblue{
    color: #0096ff;
    display: inline-block;
}
/*main_img*/
.main_img h1{
    text-align: left;
    padding: 30px;
    position: absolute;
}
.main_img{
    width: 1000px;
    margin: auto;
    overflow: hidden;
}
.main_img nav{
    position: absolute;
    bottom: 0;
}
.main_img nav ul{
    display: flex;
    margin-top: 160px;
    overflow: hidden;
    border-bottom: 1px solid #000;
}

.main_img nav ul li a{
    transition: all .3s;
    position:relative;
    top:30px;
}
.main_img nav ul li a:hover{
    top:15px;
}
/*about-area*/
.about-area{
    margin-top: 80px;
}
.about-area_text {
    font-size: 18px;
}
.about_maparea{
    margin-top: 70px
}
.about_maparea .flex-wrap{
    gap:50px 50px;
}
.about_maparea.maparea02  .flex-wrap{
    gap:50px 10px;
}
.about_maparea_map{
    width: 70%;
}
.about_maparea_text{
    width: 30%;
}
.maparea02 .about_maparea_map{
    width: 55%;
}
.maparea02 .about_maparea_text{
    width: 45%;
}
.about_maparea_text dl{
    border-top: 1px solid #000;
    padding: 25px 0;
}
.about_maparea_text dl:last-child{
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    
}
.about_maparea_text dl dt{
    font-weight: bold;
}
.about_maparea_bus li{
    display: flex;
    margin-bottom: 5px;
}
.about_maparea_bus li .about_maparea_bus_city{
    display: block;
    width: 20%;
}
.about_maparea_bus li p::before{
    content: '▶';
    margin-right: 5px;
}



/*ability*/
.ability_area{
    margin-top: 100px;
}
.ability_area .flex-wrap{
    gap: 50px 50px;
    margin-bottom: 50px;
}
.ability_area .flex-wrap .ability_ph{
    width: 50%;
}
.ability_area .flex-wrap .ability_txt{
    width: 50%;
}
.ability_area .flex-wrap .ability_txt p{
    margin-top: 30px;
}
.ability_area .flex-wrap .ability_ph.box-r{
    order: 2;
}


/*story*/
.story_area{
    margin-top: 100px;
}
.story_area .flex-wrap{
    gap: 50px 50px;
    justify-content: space-around;
}
.story_area .story_box{
    width: 45%;
}
.story_box_catch{
    background: #faf05a;
    text-align: center;
    margin-bottom: 30px;
}
.story_box_catch p{
    font-size: 16px;
    padding: 10px 0;
}
.story_box_catch .story_ph img{
    width: 100%;
}


/*life*/
.life_area{
    margin-top: 100px;
}
.life_area .life_leed{
    font-size: 18px;
    margin: 20px 0;
}
.life_area .flex-wrap{
    gap: 40px 40px;
}
.life_box_area{
    margin-bottom: 20px;
}
.life_box_title{
    background: #faf05a;
    display: flex;
    align-items: center;
    width: 15%;
    justify-content: center;
    font-size: 24px;
    text-align: center;
    line-height: 1.5;
}
.life_box_title span{
    display: block;
    font-size: 12px;
}
.life_box_txt{
    width: 85%;
}
.life_box_contents{
    border-top: 1px solid #000;
    padding: 20px 0;
}
.life_box_contents.border-dotted {
    border-top: 1px dotted #000;
}



/*support*/
.support_leed{
    text-align: center;
}
.support_leed p{
    font-size: 18px
}
.support_area{
    margin-top: 100px;
}
.support_area .support_box.flex-wrap{
    gap: 50px 50px;
}
.support_contents{
    width: 60%;
}
.support_ph{
    width: 40%;
}
.support_contents_title{
    background: #faf05a;
    padding: 10px 0;
    text-align: center;
    font-size: 18px;
}
.support_txt{
    border-top: 1px dotted #000;
    padding: 30px 0;
}
.support_txt h5{
    font-size: 18px;
}
.support_ph_box{
    margin-bottom: 30px;
}
.support_ph_box p{
    margin-top: 5px;
}
.detail_box h4{
    background: #0096ff;
    display: flex;
    overflow: hidden;
    margin-bottom: 30px;
}
.detail_box h4 .back_yellow{
    background: #faf05a;
    display: inline-block;
    padding: 10px 100px;
    position: relative;
}
.detail_box h4 .back_yellow::after{
    content: '';
    width: 0;
    height: 0;
    border-left: 30px solid #faf05a;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    position: absolute;
    right: -29px;
    top:-3px;
}
.detail_box h4 .back_blue{
    display: flex;
    justify-content: center;
    color: #fff;
    margin: auto;
}
.detail_box{
    margin-bottom: 50px;
}
.detail_area_table{
    margin-top: 30px;
}
.detail_area_table ul{
    display: table;
    border-right: 1px solid #000;
    width: 100%;
}
.detail_area_table ul li{
    display:table-cell;
    border-top: 1px solid #000;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    text-align: center;
    padding: 10px;
    align-items: center;
    vertical-align: middle;
}
.detail_area_table.table_w20 ul li{
    width: 20%;
}
.td_back_yellow{
    background: #faf57d;
    width: 20%;
}





@media (max-width: 679px){
    .sp{
        display: block !important;
    }
    .pc{
        display: none !important;
    }
    .p-container__full__auto-margin-paragraph{
        padding: 0 20px;
        font-size: 14px;
    }
    .flex-wrap{
        flex-wrap: wrap;

    }
    a[href*="tel:"]{
        text-decoration: underline;
        pointer-events: auto;
      }
    .link_btn a {
        background: #faf5eb;
        display: block;
        max-width: 95%;
        margin: 20px auto;
        text-align: center;
        padding: 20px 0;
        font-size: 12px;
        color: #b48c32;
        font-weight: bold;
        text-decoration: none;
    }
    .p-title{
        margin: 30px 0 30px;
    }
    /*main_img*/
    .page-kurasu .main_img {
        display: block;
    }
    .main_img {
        width: 100%;
        background-size: cover;
        background-repeat: no-repeat;
        height: 40vh;
        background-position: center;

    }
    .main_img h1 {
        text-align: left;
        padding: 10px;
        width: 30%;
    }
    nav{
        margin-top: 10px;
    }
    nav li{
        width: 98%;
        margin:0 1% 5px 1%;
    }
    nav li img{
        width: 100%;
    }

    /*about*/
    .about-area_text {
        font-size: 13px;
    }
    .about_maparea_text{
        width: 100%;
    }
    .about_maparea_map{
        order: 2;
        width: 100%;
    }
    .about_maparea_text dl {
        padding: 10px 0;
    }

    .maparea02 .about_maparea_text {
        width: 100%;
    }
    .maparea02 .about_maparea_map {
        width: 100%;
    }
    .about_maparea_bus li{
        margin-bottom: 13px;
    }
    .about_maparea_bus li .about_maparea_bus_city {
        display: block;
        width: 30%;
    }
    .about_maparea_bus li p {
        width: 75%;
        line-height: 1.4;

    }
    .about_maparea {
        margin-top: 30px;
    }


/*ability_area*/
    .ability_area .flex-wrap .ability_ph {
        width: 100%;
    }
    .ability_area .flex-wrap .ability_txt {
        width: 100%;
    }
    .h3_border_style {
        font-size: 15px;
        padding: 15px 0;
    }
    .ability_area .flex-wrap .ability_ph.box-r {
        order: 1;
    }
    .ability_area .flex-wrap {
        gap: 0px 50px;
    }
    .ability_area .flex-wrap .ability_txt {
        width: 100%;
        order: 2;
    }
    .ability_area .flex-wrap .ability_txt p {
        margin-top: 10px;
    }

    /*story*/
    .story_area .story_box {
        width: 100%;
    }
    .story_box_catch {
        margin-bottom: 10px;
    }
    .story_box_catch p{
        font-size: 14px;
    }

    /*life*/
    .life_area .life_leed {
        font-size: 14px;
        margin: 20px 0;
    }
    .life_box_title {
        font-size: 16px;
        width: 100%;
        padding: 10px 0;
        border-top: 1px solid #000;
    }
    .life_box_title span {
        display: inline-block;
        font-size: 12px;
        margin-left: 10px;
    }
    .life_box_txt {
        width: 100%;
    }
    .life_area .flex-wrap {
        gap: 0px 40px;
    }
    
    /*support*/
    .h3_back_style {
        background-color: #faf5eb;
        padding: 10px;
        font-size: 16px;
    }
    .support_leed p {
        font-size: 14px;
    }
    .support_contents {
        width: 100%;
    }

    .support_contents_title {
        font-size: 16px;
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
    }
    .support_ph {
        width: 100%;
    }
    .support_area .support_box.flex-wrap{
        gap: 0px 0px;
    }

    /*detail*/
    .detail_box h4 {
        background: #0096ff;
        display: block;
    }
    .detail_box h4 .back_yellow {
        background: #faf05a;
        display: inline-block;
        padding: 5px 0px;
        position: relative;
        width: 100%;
        text-align: center;
        font-size: 14px;
    }
    .detail_box h4 .back_blue {
        display: block;
        font-size: 14px;
        padding: 15px 0px;
        text-align: center;
    }
    .detail_box h4 .back_yellow::after {
        content: '';
        width: 0;
        height: 0;
        border-left: 20px solid #faf05a;
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
        position: absolute;
        right: calc(50% - 10px);
        top: 17px;
        transform: rotate(90deg);
    }
    .detail_box .sp_h5{
        background: #faf57d;
        border: 1px solid #000;
        text-align: center;
        padding: 5px;
        margin-bottom: 5px;
        font-size: 14px;
    }
    

}