@charset "utf-8";

/* -----------------------------------------
	common_style
----------------------------------------- */
.w554{width: 554px;}
.h100p{height: 100%;}
.indent03{
    text-indent: -2.6em !important;
    padding-left: 2.6em !important;
}
.m0auto{margin: 0 auto;}
.mRLAuto{margin-right: auto!important; margin-left: auto!important;}
.mr5p{margin-right: 5%;}
.fWrap{flex-wrap: wrap;}
sup{vertical-align: super; font-size: 1.1rem;}
.aiB{align-items: baseline;}

@media screen and (min-width: 751px) , print{
    .pc_mb0{margin-bottom: 0;}
    .pc_mr10{margin-right: 10px;}
}

@media screen and (max-width: 750px){
    .w554{width: 100%;}
    .sp_w300{width: 300px;}
    .sp_pdRL8{padding-right: 8px!important; padding-left: 8px!important;}
    .sp_pdRL10{padding-right: 10px!important; padding-left: 10px!important;}
    .sp_mRLAuto{margin-right: auto!important; margin-left: auto!important;}
    .sp_mb3p{margin-bottom: 3%!important;}
    .sp_font40vw{font-size: 4vw;}
    .sp_ta-c{text-align: center!important;}
    .sp_ta-l{text-align: left!important;}
    .sp_dispFlex{display: flex;}
    .sp_jcC{justify-content: center;}
    .sp_jcFs{justify-content: flex-start;}
    .sp_col3 {
        display: flex;
        flex-wrap: wrap;
    }
    .sp_col3 > * {
        width: 31.3%;
        margin-right: 3%;
        margin-bottom: 20px;
    }
    .sp_col3 > *:nth-child(3n){
        margin-right: 0;
    }
    .sp_col2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .sp_col2 > * {
        max-width: 460px;
        width: 48.5%;
        margin-bottom: 20px;
    }
}


/* -----------------------------------------
	index.html
----------------------------------------- */
.life_serviceTop .heading03{margin-bottom: 40px;}
.cardsBox_link > a {
    padding: 0;
}
.cardsBox_link .textBox{
    padding: 15px 25px 30px;
}
.cardsBox_link .cardsImg{
    background-color: #eeeeee;
    text-align: center;
}
.cardsBox_link .cardsTitle{
    margin-bottom: 10px;
    color: #008803;
    font-weight: bold;
    font-size: 1.8rem;
    text-align: center;
}

@media screen and (max-width: 750px){
    .life_serviceTop .heading03{margin-bottom: 7%;}
    .sp_mt5p{margin-top: 5%!important;}
	#mainVisual img {
        height: 32vw;
        object-fit: cover;
	}    
    .cardsBox_link .textBox{
        padding: 7% 7% 10%;
    }
    .cardsBox_link .cardsTitle{
        font-size: 1.6rem;
    }
}


/* -----------------------------------------
	hotel/
----------------------------------------- */
.w60{width: 60px;}
.wCalc{width: calc(100% - (60px + 10px));}


/* -----------------------------------------
	history
----------------------------------------- */
.history > table th,
.history > table td:first-of-type{
    vertical-align: top;
    padding-top: 20px;
    border-right: 1px solid #ddd;
}
.tab .btn02.active a{background-color: #008803; color: #fff;}
@media screen and (max-width: 750px){
    .history > table th,
    .history > table td:first-of-type{
        padding-top: 1%;
       border-right: 1px solid #ddd;
    }    
}

/* -----------------------------------------
	naviList
----------------------------------------- */
.linkList_heading{
    font-size: 1.8rem;
    font-weight: bold;
    color: #333333;
    margin-bottom: 10px;
}
#naviList ul{
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}
#naviList li{
    width: 50%;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
}
#naviList li a{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
    padding: 12px 10px;
    color: #333;
    text-decoration: none;
}
#naviList li:hover a,
#naviList .current a{ background-color: #e2f3e2;}

@media screen and (max-width: 750px){
    .linkList_heading {
        font-size: 1.8rem;
        margin-bottom: 4%;
        text-align: center;
    }
    #naviList ul{
        display: block;
    }
    #naviList li{
        width: 100%;
    }
    #naviList li a{
        padding: 7px 10px;
    }
}