@charset "utf-8";

/*
************************************************************************
* 各コース内のサービス内容
* @copyright Revolme Inc.
************************************************************************
*/

/* ################################################################################################ */
/* ## PC                         ################################################################## */
/* ################################################################################################ */


/*キッズと振袖の選択　料金ページのみ適用*/
.select-menu-kids-adult {
    display: none;
}
#page-price .select-menu-kids-adult {
    display: block;
}


.menu-adult .menu-kids-only {
    display: none;
}
.menu-kids .menu-adult-only {
    display: none;
}

.select-menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: -1em;
    margin-bottom: 1em;
}

.select-menu-name {
    padding: 1em;
    display: inline-block;
    font-size: 1.1em;
}
.select-menu button {
    width: calc(50% - 2em);
    margin: 1em;
    text-align: center;
    background-color: transparent;
    border:none;
    font-weight: bold;
}
.select-menu .course-service-line-select {
    width: 100%;
    left: 0;
    bottom: 0;
    margin: 0;
}
.select-menu-button .course-service-line hr {
    border-bottom: 2px solid #404040;
}
.select-menu-button.on .course-service-line hr {
    border-bottom: 2px solid #3885FF;
}
.select-menu-button:hover .course-service-line hr {
    border-bottom: 2px solid #3885FF;
}

.select-menu-button.on .course-service-line-select:after,
.select-menu-button:hover .course-service-line-select:after {
    content: "";
    display: block;
    height: 2em;
    width: 2em;
    margin: auto;
    margin-top: 0;
    left: 0;
    transform: rotate(-135deg);

    /*border: 2px solid transparent;*/

    border-top: 2px solid #3885FF;
    border-left: 2px solid #3885FF;



    transition-duration: 0.3s;
    transition-property: all;
    transition-timing-function: ease;
}
.select-menu .course-service-line-select:after {
    display: none;
}



.course-select {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 0 1em 0;
    padding: 0 25%;

}
.block-course-select {
    color: #fff;
    width: calc(33.3333% - 5em);
    margin: 0em 2.5em 1em 2.5em;
    text-align: center;
    border: none;
}

/*A〜Bコースの色設定*/
.block-course-select.on .course-name,
.block-course-select:hover .course-name {
    background-color: #FF9094;
    transition: background-color .3s linear;
}
.block-course-select.block-course-select-b.on .course-name,
.block-course-select.block-course-select-b:hover .course-name {
    background-color: #3983FF;
    transition: background-color .3s linear;
}
.block-course-select.block-course-select-c.on .course-name,
.block-course-select.block-course-select-c:hover .course-name {
    background-color: #FFCC56;
    transition: background-color .3s linear;
}





.course-name {
    padding: 0.5em 0;
    border-radius: 0.2em;
    background-color: #DBDBDB;
}
.course-name-alpah {
    display: block;
    font-size: 3em;
    line-height: 1;
}
.course-name-text {
    display: block;
    font-weight: bold;
}
.block-course-select .price {
    color: #DBDBDB;
    font-weight: bold;
    font-size: 1.4em;
}
.block-course-select.on .price,
.block-course-select:hover .price {
    color: #000000;
    transition: color .3s linear;
}
.block-course-select .recommend
{
	position:absolute;
	bottom:100%;
	left:50%;

	transform:translateX(-50%);

	max-width:none;
	width: 158px;
	height: 25px;
}


.menu-kids .price-kids,
.menu-adult .price-adult {
    display: block;
}
.menu-kids .price-adult,
.menu-adult .price-kids {
    display: none;
}

.menu-kids .service-05-adult {
    display: none;
}
.menu-adult .service-05 {
    display: none;
}



.course-service {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 1em -0.5em;
}
.course-service .service {
    width: calc(12.5% - 1em);
    margin: 1em 0.5em;
    text-align: center;
}
.course-service .service .text {
    display: block;
    font-size: 0.8em;
}
.course-service .service.off {
   opacity: 0.2;
}
.course-select {
    z-index: 1;
}
.course-service-line {
    margin-bottom: 1em;
}
.course-service-line hr {
    margin: 0;
    border-top: none;
    border-bottom: 1px solid #000000;
}
.course-service-line-select {
    height: 1em;
    width: calc(16.6666% - 1em);
    position: absolute;
    margin: 0 0.5em;
    left: 0;
    bottom: calc(1em - 1px);
    transition: left 0.6s cubic-bezier(0.98, 0.43, 0, 0.73);
}
.select-a .course-service-line-select {
    left: 25%;
}
.select-b .course-service-line-select {
    left: 41.66666%;
}
.select-c .course-service-line-select {
    left: 58.3333%;
}
.course-service-line-select:after {
    content: "";
    display: block;
    height: 2em;
    width: 2em;
    margin: auto;
    left: 0;
    transform: rotate(-135deg);
    border-top: 1px solid #000000;
    border-left: 1px solid #000000;
    margin-top: calc(1em - 1px);
    background-color: #fff;
}

.course-description .caption p {
    color: #404040;
}

/*A〜Cコース間サービス内容の非表示*/
.select-a .service-02,
.select-a .service-03,
.select-a .service-07,
.select-a .service-08,
.select-b .service-01,
.select-b .service-07,
.select-b .service-08,
.select-c .service-01 {
    opacity: 0.2;
}
.caption-c {
    opacity: 0.2;
}
.select-b .caption-b {
    opacity: 1.0;
}
.select-c .caption-c {
    opacity: 1.0;
}
.caption-a {
    opacity: 0.2;
}
.select-a .caption-a {
    opacity: 1.0;
}








/*お出かけ七五三用*/
.course-service.course-service-odekake {
    padding-top: 0;
    justify-content: center;
}
.course-select.course-select-odekake .block-course-select-odekake {
    width: calc(50%);
}
.course-select.course-select-odekake .block-course-select {
    cursor: default;
}
.course-select.course-select-odekake .block-course-select:hover .course-name {
    background-color: #DBDBDB;
}
.course-select.course-select-odekake .block-course-select .price,
.course-select.course-select-odekake .block-course-select:hover .price {
    color: #000;
}

.course-select.course-select-odekake .block-course-select-odekake .course-name,
.course-select.course-select-odekake .block-course-select-odekake:hover .course-name {
    background-color: #FFCB55;
    padding: 1.1em 1em;
}


.select-odekake .course-service-line-select {
    left: 50%;
}
.block-course-select-odekake.block-course-select .price.line-through,
.block-course-select-odekake.block-course-select:hover .price.line-through {
    text-decoration: line-through;
    color: #ff0000;
}
.block-course-select-odekake.block-course-select .price.line-through .text {
    color: #000;
}


/*各催事の個別対応*/
.service-special {
    display: none;
}


/*料金ページのみ*/
.service-special.service-price-page.service-category-price {
    display: block;
}
.service-special.service-price-page.service-category-price .price-page-only.inline {
    display: inline;
}

.service-special.service-price-page .price-page-only {
    display: none;
}


/*お宮*/
.service-special.service-omiya.service-omiya-faq {
    display: block;
}
.service-special.service-rental-omiya.service-omiya {
    display: block;
}
/*桃の節句*/
.service-special.service-hina-momo.service-momo {
    display: block;
}
/*端午の節句*/
.service-special.service-kabuto-tango.service-tango {
    display: block;
}
/*入園入学*/
.service-special.service-schoolbag.service-newnew {
    display: block;
}
/*マタニティ*/
.service-special.service-make-maternity.service-maternity {
    display: block;
}
.service-maternity .service-04 {
    opacity: 0.2;
}




/*セット商品バナー*/
.menu-adult .bnr-set {
    display: none;
}
.bnr-set {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: -1em;
    margin-top: 1em;
    margin-bottom: 1em;
}
.bnr-set-item {
    width: calc(50% - 2em);
    margin: 1em;
    text-align: center;
}
.bnr-set-item:hover {
    opacity: 0.8;
}



/* ################################################################################################ */
/* ## TAB                        ################################################################## */
/* ################################################################################################ */
@media screen and (max-width:1320px) {

}

/* ################################################################################################ */
/* ## スマホサイト用スタイル ###################################################################### */
/* ################################################################################################ */
@media screen and (max-width:640px) {
    .recommend img {
        width: 30vw;
        height: 4.6875vw;
    }
    .course-select {
        margin: 0.2em 0 1em 0;
        padding: 0%;
    }
    .block-course-select {
        width: calc(33.3333% - 3em);
        margin: 0 1.5em;
    }
	.block-course-select .recommend
	{
        width: 30vw;
        height: 4.6875vw;
	}
    .select-menu button {
        width: calc(50% - 2em);
        margin: 1em;
    }
    .select-menu-name {
        padding: 0.5em;
        font-size: 1.1em;
    }
    .select-menu-button.on .course-service-line-select:after,
    .select-menu-button:hover .course-service-line-select:after {
        height: 1em;
        width: 1em;
        /*margin-top: calc(0.5em - 1px);*/
        margin-top: 0.5em;
    }

    .course-service {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin: 1em -0.5em;
        padding-top: 1.5em;
    }
    .course-service .service {
        width: calc(33.3333% - 1em);
        margin: 0.5em;
    }
    .course-service .service .text {
        font-size: 0.91em;
    }
    .course-service-line {
        margin-bottom: 0;
    }
    .course-service-line-select {
        width: 33.3333%;
        margin: 0;
    }
    .course-service-line-select:after {
        height: 1em;
        width: 1em;
        margin-top: calc(1.5em - 1px);
    }
    .select-a .course-service-line-select {
        left: 0%;
    }
    .select-b .course-service-line-select {
        left: 33.33333%;
        margin: 0;
    }
    .select-c .course-service-line-select {
        left: 66.66666%;
    }

    /*セット商品バナー*/
    .bnr-set {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin: -1em;
        margin-top: 1em;
        margin-bottom: 1em;
    }
    .bnr-set-item {
        width: calc(100% - 0em);
        margin: 1em;
        text-align: center;
    }
}




/*Cコース商品アイコンの部分*/
.c-course-service.course-service {
    justify-content: center;
    padding-top: 0;
    margin: 0;
}
.button.c-course-item {
    margin: 1em auto 2em auto;
    max-width: 300px;
    width: 100%;
    border: 1px solid #3885FF;
    text-align: center;
    border-radius: 1em;
    padding: 1em 0;
}
.button.c-course-item a {
    color: #3885FF;
    font-weight: bold;
}
.popup.popup-course-c {
    padding-top: 1em;
    padding-bottom: 1em;
    background-image: url(../../img/service/c-course/bg.png);
    background-position: 50%;
    background-repeat: repeat;
}
.popup.popup-course-c .title {
    font-size: 1.4em;
    font-weight: bold;
}
.popup.popup-course-c .c-course-item {
    background-color: #fff;
}


@media screen and (max-width:640px) {
    .button.c-course-item {
        max-width: 640px;
        width: 70vw;
    }
    .popup.popup-course-c {

        margin-left: -3.90625vw;
        margin-right: -3.90625vw;
    }
}


