﻿@charset "utf-8";

/* layout
------------------------------------------------------- */
a{color: #e96c7e;}
a:hover{color: #79c6f6;}

body{
    font-size: 16px;
    font-weight: 500;
}

#container{padding-top: 110px;}
#mainCnt{padding-bottom: 120px;}

header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 1180px;
    z-index: 50;
}

#mainHead{
    height: 110px;
    background-color: #fff;
    box-shadow: 0 0 3px #ccc;
}

#mainHead .pageTtl{
    float: none;
    line-height: 1.5;
    padding: 3px 0 4px;
    background-color: #fff3f1;
    color: #e96c7e;
    font-size: 12px;
    font-weight: bold;
}

#mainHead .pageTtl > span{
    display: block;
    width: 1140px;
    margin: 0 auto;
    padding: 0 10px;
}

#logo{
    position: relative;
    display: inline-block;
    top: 12px;
    left: 0;
    height: 60px;
    transition: all ease-in-out .2s;
}

#logo img{height: 100%;}

#headNav .reserveBtn{
    position: absolute;
    top: 15px;
    right: 10px;
    padding: 4px;
    background-color: #b8ddf3;
}

#headNav .reserveBtn > span{
    display: inline-block;
    padding: 7px 20px;
    background-color: #73b6df;
    color: #fff;
    font-size: 18px;
}

.wrapper{padding: 0 10px;}

.mvArea{
    max-width: none;
    margin-bottom: 50px;
}

@media only screen and (max-width:640px){
    body{
        min-width: 360px;
        font-size: 14px;
    }

    #container{padding-top: 80px;}

    header{
        min-width: 360px;
    }

    #mainHead{
        height: 80px;
    }

    #mainHead .pageTtl{
        padding: 3px 0;
        font-size: 11px;
        letter-spacing: 0;
    }

    #mainHead .pageTtl > span{
        width: 100%;
    }

    #logo{
        top: 8px;
        height: 40px;
    }

    #headNav .reserveBtn{
        top: 10px;
        padding: 3px;
    }

    #headNav .reserveBtn > span{
        padding: 5px 15px;
        font-size: 14px;
    }

    .wrapper{padding: 0 20px;}

    header .wrapper{
        padding: 0 10px !important;
    }

    .mvArea{margin-bottom: 30px;}
}

/* module
------------------------------------------------------- */
.bR_5{border-radius: 5px;}
.lH18{line-height: 1.8;}

.wrap800{
    width: 800px;
    margin: 0 auto;
}

.fFamilyZM{
    font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
    color: #444;
}

.bgPinkWrap,
.bgYellowWrap,
.bgLightBlueWrap{padding: 55px 0 70px;}

.bgPinkWrap{background-color: #fff7f6;}
.bgYellowWrap{background-color: #fcf9f1;}
.bgLightBlueWrap{background-color: #e9f6ff;}

@media only screen and (max-width:640px){
    .wrap800{width: auto;}

    .bgPinkWrap,
    .bgYellowWrap,
    .bgLightBlueWrap{padding: 35px 0px;}
}

/* style
------------------------------------------------------- */
.fCPink {color: #e96c7e !important;}

.cmnTtl_1 > span {
    font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
    color: #444;
}

.cmnTtl_1 > span::after{border-color: #f28796;}

/*
.cmnTtl_1 > span::after{border-color: #f28796;animation: discScale 2s infinite normal none;}*/

@keyframes discScale{
    0%{border-width: 9px;}
    50%{border-width: 8px;}
    100%{border-width: 9px;}
}

.cmnTtl_1.dottedNone > span{padding-bottom: 0;}
.cmnTtl_1.dottedNone > span::after{display: none;}

.sampleClm li img{border-radius: 5px;}

.flowLst > li::after{border-left-color: #f28796;}
.flowLst .num{background-color: #f28796;}
.flowLst .txtArea .ttl{color: #e96c7e;}

.bgTbl th{background-color: #e9f6ff;}

.arrowTxtBtn{
	display: inline-block;
	position: relative;
	margin-top: 20px;
	padding-right: 20px;
	color: #e96c7e;
	font-weight: bold;
}

.arrowTxtBtn::after{
	display: block;
	position: absolute;
	content: "";
	top: 7px;
	right: 0;
	width: 0;
    height: 0;
    border-style: solid;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
 	border-left: 10px solid #f28796;
  	border-right: 0;
	transition: all .2s;
}

.arrowTxtBtn:hover::after{border-left-color: #73b6df;}

/* introArea
------------------------------------------------------- */
.introTtl{
    font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
    margin-bottom: 50px;
    font-size: 28px;
    text-align: center;
}

.shiftIntroArea{
    position: relative;
    margin-bottom: 100px;
}

.shiftIntroClm{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-bottom: 40px;
}

.shiftIntroClm .txtArea{
    width: 580px;
}

.shiftIntroClm .imgArea{
    position: relative;
    width: 460px;
    margin-left: 100px;
    z-index: 1;
}

.shiftIntroClm .imgArea::before{
    content: "";
    display: block;
    position: absolute;
    bottom: -40px;
    left: -50px;
    width: 160px;
    height: 160px;
    border-radius: 5px;
    background-color: #e9f6ff;
    z-index: -1;
}

@media only screen and (max-width:640px){
    .introTtl{
        margin-bottom: 20px;
        font-size: 18px
    }

    .shiftIntroArea{
        margin-bottom: 80px;
        padding-top: 8px;
    }

    .shiftIntroClm{
        display: block;
        padding-bottom: 0;
    }

    .shiftIntroClm .txtArea{
        width: 100%;
    }

    .shiftIntroClm .imgArea{
        width: calc(100% - 20px);
        margin: 50px 0 0 auto;
    }

    .shiftIntroClm .imgArea::before{
        top: -30px;
        bottom: auto;
        left: -30px;
        width: 120px;
        height: 120px;
    }
}

.busAnimation{
    display:inline-block;
    position: absolute;
    right: 50%;
    bottom: -100px;
    margin-right: -470px;
    animation: topBusRunning 4s ease forwards , topBusWaiting .2s normal infinite;
    z-index: 5;
}

.busAnimation img{width: 156px;}

@keyframes topBusRunning{
    0%{margin-right: -1000px;}
    100%{margin-right: -470px;}
}

@keyframes topBusWaiting{
    0%{bottom: -100px;}
    100%{bottom: -99px;}
}
    
@keyframes topBusRunning_sp{
    0%{margin-right: -250px;}
    100%{margin-right: -120px;}
}
    
@keyframes topBusWaiting_sp{
    0%{bottom: -74px;}
    100%{bottom: -75px;}
}
    
@media only screen and (max-width:640px){
    .busAnimation{
        bottom: -74px;
        margin-right: -140px;
        animation: topBusRunning_sp 4s ease forwards , topBusWaiting_sp .2s normal infinite;
    }
    
    .busAnimation img{ width: 98px;}
}

.flagArea{
    position: absolute;
    width: 270px;
    height: 120px;
    top: -40px;
    left: -75px;
    background: url("../images/pashamaru/img_flag_rope.png") no-repeat top left / 270px 120px;
}

.flagArea.highL{
    left: auto;
    right: -75px;
    transform: rotateY(-180deg);
}

.flagArea > span{
    position: absolute;
    width: 36px;
}

.flagArea .img_1{
    top: 12px;
    left: 241px;
    transform: rotate(-39deg);
}

.flagArea .img_2{
    top: 36px;
    left: 207px;
    transform: rotate(-33deg);
}

.flagArea .img_3{
    top: 56px;
    left: 173px;
    transform: rotate(-30deg);
}

.flagArea .img_4{
    top: 72px;
    left: 137px;
    transform: rotate(-24deg);
}

.flagArea .img_5{
    top: 87px;
    left: 99px;
    transform: rotate(-18deg);
}

.flagArea .img_6{
    top: 99px;
    left: 60px;
    transform: rotate(-15deg);
}

.flagArea .img_7{
    top: 109px;
    left: 21px;
    transform: rotate(-12deg);
}

.flagArea > span img{
    width: 100%;
    animation: wavingFlag 10s linear infinite;
    transform-origin: top;
}

.flagArea .img_2 img{animation-delay: .4s;}
.flagArea .img_3 img{animation-delay: .8s;}
.flagArea .img_4 img{animation-delay: 1.2s;}
.flagArea .img_5 img{animation-delay: 1.6s;}
.flagArea .img_6 img{animation-delay: 2s;}
.flagArea .img_7 img{animation-delay: 2.4s;}

@keyframes wavingFlag{
    0%{transform: rotateX(0);}
    10%{transform: rotateX(-60deg);}
    35%{transform: rotateX(55deg);}
    60% {transform: rotateX(-58deg);}
    80% {transform: rotateX(58deg);}
    100% {transform: rotateX(0);}
}

@media only screen and (max-width:640px){
    .flagArea{
        width: 135px;
        height: 60px;
        top: -20px;
        left: calc(50% - 225px);
        background-size: 135px 60px;
    }

    .flagArea.highL{
        right: calc(50% - 225px);
    }

    .flagArea > span{
        width: 18px;
    }

    .flagArea .img_1{
        top: 4px;
        left: 119px;
    }

    .flagArea .img_2{
        top: 16px;
        left: 102px;
    }

    .flagArea .img_3{
        top: 26px;
        left: 85px;
    }

    .flagArea .img_4{
        top: 33px;
        left: 68px;
    }

    .flagArea .img_5{
        top: 41px;
        left: 49px;
    }

    .flagArea .img_6{
        top: 47px;
        left: 29px;
    }

    .flagArea .img_7{
        top: 51px;
        left: 10px;
    }
}

.bgGlass{
    position: relative;
    padding: 50px 0;
    background: url(../images/pashamaru/bg_glass_pattern.jpg) repeat top center / 500px 500px;
    box-sizing: border-box;
}

.bgGlass::before,
.bgGlass::after{
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    width: 100%;
    min-width: 1340px;
    transform: translateX(-50%);
}

.bgGlass::before{
    top: -18px;
    height: 40px;
    background: url(../images/pashamaru/bg_glass_top.png) no-repeat top center / 100% 40px;
}

.bgGlass::after{
    bottom: -44px;
    height: 60px;
    background: url(../images/pashamaru/bg_glass_bottom.png) no-repeat bottom center / 100% 60px;
}

@media only screen and (max-width:640px){
    .bgGlass{padding: 30px 0 25px;}

    .bgGlass::before{min-width: 1140px;}

    .bgGlass::after{
        bottom: -32px;
        min-width: 570px;
        height: 40px;
        background-size: 100% 40px;
        
    }
}

.comparisonArea th.other,
.comparisonArea th.own{
    color: #fff;
    font-size: 20px;
    text-align: center;
}

.comparisonArea th.other{background-color: #bbb;}
.comparisonArea th.own{background-color: #f28796;}

.comparisonArea td.other,
.comparisonArea td.own{font-size: 32px;}

.comparisonArea td.own{
    color: #e96c7e;
    font-weight: bold;
}

.comparisonArea td .tax{
    margin-left: 4px;
    font-size: 20px;
}

.comparisonArea td .small{
    margin-right: 4px;
    font-size: 20px;
}

.bdrNoneTbl{width:100%;}

.bdrNoneTbl{
   border-collapse: separate;
   border-spacing: 3px;
}

.bdrNoneTbl th,
.bdrNoneTbl td{
    padding: 10px;
    word-break: break-all;
    line-height: 1.5;
    vertical-align: top;
    box-sizing: border-box;
}

.bdrNoneTbl th{
    width: 25%;
    font-weight: 500;
    background-color: #f28796;
    color: #fff;
}

.bdrNoneTbl td{
    background-color: #fff;
}

@media only screen and (max-width:640px){
    .comparisonArea th.other,
    .comparisonArea th.own{
        font-size: 16px;
    }

    .comparisonArea td.other,
    .comparisonArea td.own{font-size: 24px;}
    
    .comparisonArea td .tax{
        margin-left: 3px;
        font-size: 16px;
    }

    .comparisonArea td .small{
        margin-right: 3px;
        font-size: 16px;
    }

    .bdrNoneTbl.row th,
    .bdrNoneTbl.row td{
        display:block;
        width:100%;
        padding: 5px;
        box-sizing:border-box;
    }

    .bdrNoneTbl.row th{
        border-bottom:none;
        font-weight: 700;
    }

    .bdrNoneTbl.row td{padding-top: 0;}
}


.bdrCnt{
    padding: 30px;
    border: 2px solid #f28796;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #fff;
}

.bdrCnt.pRLWide{padding: 30px 60px;}

.numPointLst > li{
    margin-top: 30px;
}

.numPointLst > li:first-child{margin-top: 0;}

.numPointLst .ttlArea{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.numPointLst .ttlArea .num{
    position: relative;
    width: 44px;
    height: 44px;
    line-height: 44px;
    border-radius: 50%;
    box-sizing: border-box;
    background-color: #f28796;
    color: #fff;
    font-size: 20px;
    text-align: center;
}

.numPointLst .ttlArea .num::after{
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 6px);
    right: -15px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left: 10px solid #f28796;
    box-sizing: border-box;
}

.numPointLst .ttlArea .ttl{
    width: calc(100% - 62px);
    color: #e96c7e;
    font-size: 20px;
    font-weight: bold;
}

.numPointLst .txtArea{
    margin-top: 10px;
}

@media only screen and (max-width:640px){
    .bdrCnt{
        padding: 20px 15px;
    }

    .bdrCnt.pRLWide{padding: 20px;}

    .numPointLst > li{
        margin-top: 20px;
    }

    .numPointLst .ttlArea .num{
        width: 36px;
        height: 36px;
        line-height: 36px;
        font-size: 16px;
    }

    .numPointLst .ttlArea .num::after{
        top: calc(50% - 5px);
        right: -12px;
        border-width: 5px;
        border-left-width: 8px;
    }

    .numPointLst .ttlArea .ttl{
        width: calc(100% - 50px);
        font-size: 16px;
    }

    .numPointLst .txtArea{
        margin-top: 8px;
    }
}

/* joinFlowLst
------------------------------------------------------- */
.joinFlowLst{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: -50px;
}

.joinFlowLst > li{
    position: relative;
    width: 250px;
    margin: 60px 0 0 80px;
    padding: 45px 10px 15px;
    border: 2px dashed #73b6df;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #fff;
}

.joinFlowLst > li:nth-child(3n-2){margin-left: 0;}

.joinFlowLst > li::before{
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: -62px;
    width: 24px;
    height: 24px;
    border-top: solid 5px #73b6df;
    border-right: solid 5px #73b6df;
    transform: translateY(-50%) rotate(45deg);
}

.joinFlowLst > li:nth-child(3n-2)::before{display: none;}

.joinFlowLst .num{
    position: absolute;
    top: -14px;
    left: -10px;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #73b6df;
    color: #fff;
    padding: 0 20px 4px;
    font-size: 18px;
    text-align: center;
}

.joinFlowLst .num .large{
    margin-left: 5px;
    font-size: 26px;
    font-weight: bold;
}

.joinFlowLst .icon{
    width: 70px;
    margin: 0 auto 20px;
}

.joinFlowLst .txtArea{
    min-height: 60px;
    text-align: center;
}

@media only screen and (max-width:640px){
    .joinFlowLst{
        display: block;
        margin-top: -38px;
    }

    .joinFlowLst > li{
        margin: 70px auto 0;
        padding: 35px 10px 10px;
    }

    .joinFlowLst > li:nth-child(3n-2){margin-left: auto;}

    .joinFlowLst > li::before{
        top: -59px;
        left: 50%;
        transform: translateX(-50%) rotate(135deg);
    }

    .joinFlowLst > li:nth-child(3n-2)::before{display: block;}
    .joinFlowLst > li:first-child::before{display: none;}

    .joinFlowLst .num{
        font-size: 16px;
    }

    .joinFlowLst .num .large{
        font-size: 24px;
    }

    .joinFlowLst .icon{
        margin-bottom: 12px;
    }

    .joinFlowLst .txtArea{
        min-height: 50px;
    }
}


/* planSelectLst
------------------------------------------------------- */
.planSelectLst{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: -40px;
}

.planSelectLst > li{
    width: 460px;
    margin: 40px 0 0 40px;
    border: 1px solid #73b6df;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #fff;
    overflow: hidden;
}

.planSelectLst > li:nth-child(2n-1){margin-left: 0;}

.planSelectLst .txtArea{
    padding: 15px 25px;
}

.planSelectLst .ttl{
    padding: 7px 5px;
    background-color: #73b6df;
    color: #fff;
    font-size: 20px;
    text-align: center;
}

.planSelectLst .mainTxt{
    text-align: center;
}

.planSelectLst .price{
    color: #e96c7e;
    font-size: 42px;
    font-weight: bold;
    text-align: center;    
}

.planSelectLst .price .yen{
    margin-left: 2px;
    font-size: 24px;
}

.planSelectLst .price .tax{
    margin-left: 2px;
    font-size: 18px;
}

.planSelectLst .data{
    margin-top: 5px;
    padding: 5px 0;
    background-color: #e9f6ff;
    text-align: center;
}

.planSelectLst .data .appeal{
    margin-left: 8px;
    font-size: 22px;
    font-weight: bold;
}

.planSelectLst .detailTxt{
    min-height: 64px;
    margin-top: 15px;
    font-size: 14px;
}

.planSelectLst .bdrTop{
    margin-top: 15px;
    padding-top: 15px;
    border-top: dashed 2px #aaa;
}

.setLstArea{
    padding: 10px 15px 12px;
    background: #fcf9f1;
}

.setLstArea .setLstTtl{
    margin-bottom: 3px;
    font-size: 14px;
    font-weight: bold;
}

.setLstArea .setLst{
    font-size: 14px;
}

.setLstArea .setLst > li{
    margin-top: 2px;
    padding-left: 20px;
    background: url("../images/pashamaru/icon_checkmark_pink.png") no-repeat top 3px left / 15px;
}

.setLstArea .setLst > li:first-child{margin-top: 0;}

@media only screen and (max-width:640px){
    .planSelectLst{
        display: block;
        margin-top: -10px;
    }

    .planSelectLst > li{
        width: 100%;
        margin: 30px 0 0;
    }

    .planSelectLst .txtArea{
        padding: 15px;
    }

    .planSelectLst .ttl{
        font-size: 18px;
    }

    .planSelectLst .price{
        font-size: 32px;
    }

    .planSelectLst .price .yen{
        margin-left: 2px;
        font-size: 20px;
    }

    .planSelectLst .price .tax{
        margin-left: 2px;
        font-size: 14px;
    }

    .planSelectLst .data{
        margin-top: 5px;
        padding: 5px 0;
    }

    .planSelectLst .data .appeal{
        margin-left: 5px;
        font-size: 18px;
    }

    .planSelectLst .detailTxt{
        min-height: auto;
        margin-top: 12px;
        font-size: 13px;
    }

    .setLstArea{
        padding: 10px 12px 12px;
    }
}

.addPriceArea{
    width: 960px;
    margin: 40px auto 0;
    border-radius: 5px;
    border: 2px dashed #f28796;
    box-sizing: border-box;
    background-color: #fff;
}

.addPriceArea .inner{
    padding: 15px 30px;
}

.addPriceArea .addPriceTtl{
    width: calc(100% + 4px);
    margin-top: -2px;
    margin-left: -2px;
    padding: 8px 30px;
    border-radius: 5px 5px 0 0;
    box-sizing: border-box;
    background-color: #f28796;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
}

@media only screen and (max-width:640px){
    .addPriceArea{
        width: 100%;
        margin-top: 30px;
    }

    .addPriceArea .inner{
        padding: 15px;
    }

    .addPriceArea .addPriceTtl{
        padding: 8px 15px;
        font-size: 16px;
    }
}


/* flowClmLst
------------------------------------------------------- */
.flowClmLst > li{
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 80px;
    padding: 35px;
    border: 1px solid #73b6df;
    border-radius: 5px;
    background-color: #fff;
}

.flowClmLst > li:first-child{margin-top: 0;}

.flowClmLst > li::before{
    content: "";
    display: block;
    position: absolute;
    top: -62px;
    left: 50%;
    width: 24px;
    height: 24px;
    border-bottom: 5px solid #73b6df;
    border-right: 5px solid #73b6df;
    transform: translateX(-50%) rotate(45deg);
}

.flowClmLst > li:first-child::before{display: none;}

.flowClmLst .txtArea{
    width: 600px;
}

.flowClmLst .txtArea .ttl{
    margin-bottom: 10px;
    color: #444;
    font-size: 28px;
    font-weight: bold;
}

.flowClmLst .txtArea .ttl > span{
    display: inline-block;
    vertical-align: baseline;
}

.flowClmLst .txtArea .ttl .num{
    font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
    margin-right: 15px;
    font-size: 54px;
    color: #5ab3e9;
    letter-spacing: 3px;
}

.flowClmLst .imgArea{
    width: 420px;
}

.flowClmLst .imgArea img{
    width: 100%;
    border-radius: 5px;
}

@media only screen and (max-width:640px){
    .flowClmLst > li{
        margin-top: 60px;
        padding: 10px 20px 20px;
    }

    .flowClmLst > li::before{
        top: -52px;
    }

    .flowClmLst .txtArea{
        width: 100%;
    }

    .flowClmLst .txtArea .ttl{
        margin-bottom: 5px;
        font-size: 18px;
    }

    .flowClmLst .txtArea .ttl .num{
        margin-right: 10px;
        font-size: 32px;
        letter-spacing: 2px;
    }

    .flowClmLst .imgArea{
        width: 100%;
        max-width: 420px;
        margin: 10px auto 0;
    }
}


/* itemLst
------------------------------------------------------- */
.itemLst{
    display: flex;
    flex-wrap: wrap;
    margin-top: -40px;
}

.itemLst > li{
    width: 360px;
    margin: 40px 0 0 30px;
    box-sizing: border-box;
    text-align: center;
}

.itemLst > li:nth-child(3n-2){margin-left: 0;}

.itemLst > li img{
    width: 100%;
    border-radius: 5px;
}

.itemLst > li .txtArea{
    margin-top: 15px;
}

.itemLst > li .txtArea .name{
    font-size: 18px;
    font-weight: bold;
}

.itemLst > li .price{
    color: #e96c7e;
    margin-top: 3px;
    font-size: 18px;
    font-weight: bold;
}

@media only screen and (max-width:640px){
    .itemLst{
        display: block;
        margin-top: -15px;
    }

    .itemLst > li{
        width: 100%;
        margin: 35px 0 0;
    }

    .itemLst > li .txtArea{
        margin-top: 12px;
    }

    .itemLst > li .txtArea .name{
        font-size: 16px;
    }

    .itemLst > li .price{
        color: #e96c7e;
        margin-top: 3px;
        font-size: 18px;
        font-weight: bold;
    }
}


/* faq 
------------------------------------------------------- */
.faqArea dl{
    margin-bottom: 15px;
    border: 1px solid #ccc;
    background-color: #fff;
    border-radius: 5px;
}

.faqArea dt{
    background:url("../images/pashamaru/icon_faq_question.png") no-repeat top 8px left 10px / 34px;
    transition: all 0.3s;
}

.faqArea dt p{
    display:block;
    line-height: 1.6;
    background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAQMAAAC2MCouAAAABlBMVEWZmZn///+D7jMZAAAAF0lEQVQI12MgHdiQT/7//x+TpMRMkgEAzjkQpdsFHGcAAAAASUVORK5CYII=) right 10px top 15px / 20px no-repeat;
    margin-bottom: 0;
    padding:15px 40px 15px 55px;
    transition: all 0.3s;
}

.faqArea dt p.open{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRF////mZmZjlBKsgAAACNJREFUeNpiYCQSMIwqHFU4pBUy4ACDSeFoFI4qHJYKAQIMANj2BeEsU3zKAAAAAElFTkSuQmCC);}

.faqArea dt p:hover{
    color: #66add6;
    cursor: pointer;
}

.faqArea dd{
    display:block;
    line-height: 1.6;
    background:url("../images/pashamaru/icon_faq_answer.png") no-repeat top 10px left 10px / 34px;
    margin-bottom: 0;
    padding: 15px 40px 15px 55px;
}

@media only screen and (max-width:640px){
    .faqArea dt{
        background-position:top 8px left 6px;
        background-size: 28px;
    }

    .faqArea dt p{
        background-position:top 11px right 6px;
        background-size: 20px;
        padding: 10px 32px 10px 42px;
    }

    .faqArea dd{
        background-position:top 8px left 6px;
        background-size: 28px;
        padding: 10px 32px 10px 42px;
    }
}

/* customerVoise
------------------------------------------------------- */
.customerVoiseLst{
    display: flex;
    flex-wrap: wrap;
}

.customerVoiseLst > li{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 550px;
    margin: 30px 0 0 30px;
    padding: 15px 20px;
    border: solid 1px #f28796;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #fff;
}

.customerVoiseLst > li:nth-child(2n-1){margin-left: 0;}

.customerVoiseLst .iconArea{width: 72px;}
.customerVoiseLst .iconArea img{width: 100%;}

.customerVoiseLst .txtArea{
    width: calc(100% - 90px);
}

.customerVoiseLst .txtArea .ttl{
    margin-bottom: 10px;
    padding-bottom: 6px;
    border-bottom: dashed 2px #f28796;
    font-weight: bold;
}

.customerVoiseLst .txtArea .txt{
    min-height: 84px;
    padding: 10px 15px;
    font-size: 14px;
    box-sizing: border-box;
    background-color: #fff7f6;
}

@media only screen and (max-width:640px){
    .customerVoiseLst{
        display: block;
    }

    .customerVoiseLst > li{
        width: 100%;
        margin: 15px 0 0;
        padding: 12px 15px;
    }

    .customerVoiseLst .iconArea{width: 60px;}

    .customerVoiseLst .txtArea{width: calc(100% - 70px);}

    .customerVoiseLst .txtArea .txt{min-height: auto;}
}

/* event-list
------------------------------------------------------- */
.lstCmnTtl_1,
.lstCmnTtl_2,
.lstCmnTtl_3{color: #e96c7e;}

.lstCmnTtl_3{border-bottom-color: #f28796;}

.anchorLinks li a{background-color: #f28796;}
.anchorLinks li > a::after{border-top-color: #f28796;}
.anchorLinks li a:hover{background-color: #79c6f6;}
.anchorLinks li a:hover::after{border-top-color:  #79c6f6;}


/* eventDetailLst
------------------------------------------------------- */

.eventDetailLst{
    padding: 10px;
    background-color: #dfe7ed;
}

.eventDetailLst li{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 10px;
    padding: 20px;
    background-color: #fff;
}

.eventDetailLst li:first-child{margin-top: 0;}

.eventDetailLst .pickup{
    position: relative;
    top: -6px;
    left: -20px;
    width: 100%;
    min-width: 290px;
    margin-bottom: 6px;
}

.eventDetailLst .pickup > span{
    position: relative;
    display: inline-block;
    padding: 9px 12px 9px 54px;
    border: 1px dashed #e96c7e;
    background-color: #fff7f6;
    color: #e96c7e;
    font-weight: bold;
    text-align: left;
}

.eventDetailLst .pickup > span::before,
.eventDetailLst .pickup > span::after{
    content: "";
    display: block;
    position: absolute;
}

.eventDetailLst .pickup > span::before{
    top: -1px;
    left: -1px;
    width: 46px;
    height: calc(100% + 2px);
    background-color: #e96c7e;
}

.eventDetailLst .pickup > span::after{
    top: 50%;
    left: 3px;
    width: 40px;
    height: 40px;
    background: no-repeat top left / 100% auto;
    transform: translateY(-50%);
}

.eventDetailLst .pickup.shrine > span::after{background-image:  url("../images/pashamaru/icon_event-detail_shrine.png");}
.eventDetailLst .pickup.park > span::after{background-image:  url("../images/pashamaru/icon_event-detail_park.png");}

.eventDetailLst li .area{
    min-width: 78px;
    min-height: 30px;
    line-height: 30px;
    margin-right: 25px;
    border-radius: 15px;
    background-color: #73b6df;
    color: #fff;
    font-size: 18px;
    text-align: center;
}

.eventDetailLst li .date{
    min-width: 130px;
    margin-right: 15px;
    font-size: 22px;
    font-weight: bold;
}

.eventDetailLst li .time{
    min-width: 120px;
    font-size: 20px;
}

.eventDetailLst li .placeName,
.eventDetailLst li .placeAddress,
.eventDetailLst li .placeDetail{width: 100%;}

.eventDetailLst li .placeName{
    margin-top: 6px;
    font-size: 22px;
}

.eventDetailLst li .facilityLink{
    font-size: 16px;
}

.eventDetailLst li .placeAddress{
    margin-top: 6px;
    font-size: 14px;
}

.eventDetailLst li .placeDetail{
    font-size: 14px;
}

.eventDetailLst li .linkArea{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 12px;
}

.eventDetailLst li .linkArea > a{
    display: inline-block;
    position: relative;
    padding: 3px 28px 4px 15px;
    border-radius: 5px;
    box-sizing: border-box;
    color: #fff;
    transition: color .2s, border .2s, background .2s;
}

.eventDetailLst li .linkArea .map{
    border: 1px solid #e2b02b;
    color: #e2b02b;
}

.eventDetailLst li .linkArea .map:hover{
    border: 1px solid #79c6f6;
    color: #79c6f6;
}

.eventDetailLst li .linkArea .reserve{
    margin-left: 15px;
    background-color: #f28796;
    color: #fff;
}

.eventDetailLst li .linkArea .reserve:hover{background-color: #79c6f6;}

.eventDetailLst li .linkArea > a::after{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8px;
    border-color: transparent;
    transition: all .2s;
}

.eventDetailLst li .linkArea .map::after{border-left-color: #e2b02b;}
.eventDetailLst li .linkArea .reserve::after{border-left-color: #fff;}

.eventDetailLst li .linkArea .map:hover::after{border-left-color: #79c6f6;}

@media only screen and (max-width:640px){
    .eventDetailLst .pickup{
        top: -8px;
        margin-bottom: 4px;
    }

    .eventDetailLst .pickup > span{
        padding: 6px 10px 6px 40px;
        font-size: 13px;
    }

    .eventDetailLst .pickup > span::before{
        width: 36px;
    }

    .eventDetailLst .pickup > span::after{
        width: 30px;
        height: 30px;
    }

    .eventDetailLst li .area{
        min-width: 56px;
        min-height: 24px;
        line-height: 24px;
        margin-right: 10px;
        font-size: 14px;
    }

    .eventDetailLst li .date{
        width: calc(100% - 66px);
        min-width: auto;
        margin-right: 0;
        font-size: 16px;
    }

    .eventDetailLst li .time{
        min-width: auto;
        margin-top: 3px;
        font-size: 16px;
    }

    .eventDetailLst li .placeName{
        margin-top: 3px;
        font-size: 18px;
    }

    .eventDetailLst li .facilityLink{
        font-size: 14px;
    }

    .eventDetailLst li .placeAddress{
        margin-top: 5px;
        font-size: 12px;
    }

    .eventDetailLst li .placeDetail{
        font-size: 12px;
    }

    .eventDetailLst li .linkArea{
        margin-top: 10px;
    }
}

/* reserve
------------------------------------------------------- */

.kidsphoto.pashamaru.day-calendar .mtssb-timetable-date{background-color: #f28796;}

.kidsphoto.pashamaru.day-calendar .mtssb-timetable-link .day-left{background-color: #fff1f0;}


/* EOF */
