

* {
	border-sizing:border-box;
	border-collapse:collapse;
    font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic Medium", sans-serif;
}

html {
  overflow-y: scroll;
  overflow-x: hidden;
scroll-behavior:smooth;
}

body {
    margin:0 auto;
    padding:0;
    overflow-x: hidden;
}
#toppage{
    background: #f2f5f1;
}


.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0;
}
a{
    text-decoration:none;
}

.img-responsive {
    display: inline-block;
    height: auto;
    max-width: 100%;
    margin:0 auto;
    vertical-align:top;
}

div:after,
ul:after {
 content: "";
display: block;
 clear: both;
}

ul{
 list-style: none;
 margin: 0px;
 padding: 0px;
    box-sizing: border-box;
}

li,dt,dd{
    box-sizing: border-box;
}

a img {
    transition: opacity 0.2s linear;
}
a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}


/*汎用*/

.pc { display: block !important; }
.sp { display: none !important; }
@media only screen and (max-width: 992px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
.pc2 { display: block !important; }
.sp2 { display: none !important; }
@media only screen and (max-width: 768px) {
.pc2 { display: none !important; }
.sp2 { display: block !important; }
}
.pc3 { display: inline-block !important; }
.sp3 { display: none !important; }
@media only screen and (max-width: 568px) {
.pc3 { display: none !important; }
.sp3 { display: inline-block !important; }
}

.ggmap {
position: relative;
/*padding-bottom: 66.7%;*/
    padding-bottom: 26.67%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

@media only screen and (max-width: 768px) {
.ggmap {
padding-bottom: 100%;
}
}

/*grandHeader*/

.grandHeaderOuter{
    background-color:#3ab483;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
    padding: 5px 10px;
}
.grandHeaderInner{
    max-width: 1000px;
    margin: 0 auto;
}
.grandHeaderInner h1{
    color:#fff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 1px;
    margin:0;
    padding:0 80px 0 0;
}
@media only screen and (max-width: 768px) {
.grandHeaderInner h1{
    font-size: 14px;
    letter-spacing: 0px;
}
}

/*header*/

header{
    position:relative;
    z-index:20;
    padding:0 15px;

}
.headerInner{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0;
}
.headerLogo{
    width:200px;
    padding: 17px 10px;
    box-sizing: border-box;
}
.headerLogo a h1{
    margin:0;
    padding:0;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
}
.headerMenu{
    width:calc(100% - 200px);
}

@media only screen and (max-width: 768px) {
.headerInner{
    padding: 0 70px 0 0;
    min-height: 70px;
}
.headerLogo{
    width:calc(100%);
    min-height: 70px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
}



/**/

.headerMenu {}
.headerMenu .menu{}
.headerMenu .menu ul{
    display: flex;
    justify-content: right;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 0px;
    max-width: 100%;
}
.headerMenu .menu ul li{
    padding: 0;
    position:relative;
}
.headerMenu .menu ul li a{
    color:#534741;
    padding: 0 10px;
    transition: all 0.2s linear;
    position: relative;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    font-family: "Noto Sans JP","Yu Gothic Medium", sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 45px;
}


.headerMenu .menu ul li a:hover {
    text-decoration:none;
}
.headerMenu .menu ul li a::after {
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%)  scale(0, 1);
    -webkit- transform: translateX(-50%)  scale(0, 1);
    content: '';
    width: 38px;
    height: 4px;
    border-radius:5px;
    background: #ed92aa;
    transform-origin: left top;
    transition: transform .3s;
}
.current01 .headerMenu .menu ul li:nth-child(1) a::after,
.current02 .headerMenu .menu ul li:nth-child(2) a::after,
.current03 .headerMenu .menu ul li:nth-child(3) a::after,
.current04 .headerMenu .menu ul li:nth-child(4) a::after,
.current05 .headerMenu .menu ul li:nth-child(5) a::after,
.current06 .headerMenu .menu ul li:nth-child(6) a::after,
.current07 .headerMenu .menu ul li:nth-child(7) a::after,
.current08 .headerMenu .menu ul li:nth-child(8) a::after,
.headerMenu .menu ul li a:hover::after {
    transform: translateX(-50%)  scale(1, 1);
    -webkit- transform: translateX(-50%)  scale(1, 1);
}
@media only screen and (max-width: 768px) {
.headerMenu .menu ul li{
    padding: 0 5px;
    position:relative;
    width:calc(100%);
    margin: 0 0 1px;
}
.headerMenu .menu ul li a{
    padding: 5px 15px;
    font-size: 14px;
}
/*
.headerMenu .menu ul li a::after {
    transform: translateX(-50%)  scale(1, 1);
    -webkit- transform: translateX(-50%)  scale(1, 1);
}*/
}
@media only screen and (max-width: 578px) {

}



/**/
.menu-btn {
    position: absolute;
    top: -8px;
    right: 0px;
    display: flex;
    height: 70px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    background: #fff;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 37px;
    border-radius: 3px;
    background-color: #534741;
    position: absolute;
    transition: all 0.2s linear;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}
.menu-btn img {
    position:relative;
    bottom:-20px;
}
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*???j?…?[?I?[?v?“???I?^?n’†?I?u?d“§???E?・?e*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}
#menu-btn-check {
    display: none;
}

.menu-content {
    width: 100%;
    height: 100vh;
    position: fixed;
    padding: 64px 0 0;
    top: 0;
    right: -100%;
    z-index: 999;
    background-color: rgb(58 180 131 / 60%);
    transition: all 0.5s;
}
#menu-btn-check:checked ~ .menu-content {
    right: 0;
}

.textM ,
.textC {
    position: absolute;
    bottom: 12px;
}
.textM {
    opacity:1;
    transition: all 0.2s linear;
}
#menu-btn-check:checked ~ .menu-btn .textM {
    opacity:0;
}
.textC {
    opacity:0;
    transition: all 0.2s linear;
}
#menu-btn-check:checked ~ .menu-btn .textC {
    opacity:1;
}
.menu-content ul {
    padding: 44px 24px 16px;
    margin:0;
}
.menu-content ul li {
    list-style: none;
    background:#fff;
    width:calc(100%);
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color:#534741;
    text-decoration: none;
    padding: 9px 15px 10px 5px;
    position: relative;
}
.menu-content ul li a:hover {

}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #534741;
    border-right: solid 2px #534741;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    bottom: 18px;
}
.menu-content #searchSect {
    margin: 0 auto;
    width: 100%;
    text-align: center;
}
.menu-content .searchIcon{
    display:none;
}


/*base*/
.baseLink a{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:100%;
    max-width:377px;
    height:65px;
    background-color:#3ab483;
    color:#fff;
    text-decoration:none;
    position:relative;
    transition: all 0.2s linear;
    margin:15px auto;
    border:2px solid #3ab483;
    box-shadow: 0 5px #7e9379;
    border-radius:100px;
    font-size:16px;
    top:0;
}
.baseLink a:hover{
    color:#fff;
    text-decoration:none;
    opacity:0.8;
    top:5px;
    box-shadow: 0 0px #7e9379;
}
.baseLink a::after{
    background-image:url(images/svg/item_arrow_w.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:10px;
    height:15px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    right:15px;
}
.typeMap{}
.typeMap a{
    max-width: 530px;
    height: 60px;
    padding: 0 0 0 70px;
    box-sizing: border-box;
}
.typeMap a:before{
    background-image:url(images/svg/icon_map_pc.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:180px;
    height:50px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:5px;
}
.typeMap a br{
    display:none;
}
.baseImage{
    text-align:center;
}

@media only screen and (max-width: 768px) {
.typeMap a{
    padding: 0 0 0 10vw;
    line-height: 1.2em;
    text-align: center;
}
.typeMap a:before{
        background-image: url(images/svg/icon_map_sp.svg);
        width: 20vw;
        height: 7vw;
        left: 0px;
        background-size: contain;
        background-repeat: no-repeat;
}
}
@media only screen and (max-width: 468px) {
.typeMap a br{
    display:block;
}
}


/*mainimage*/

.mainimageOuter{
    max-width:1200px;
    margin: 0 auto;
    padding:0 35px;
    box-sizing: border-box;
    position:relative;
    z-index:10;
}
.mainimageOuter:before {
    content: "";
    width: 100%;
    max-width: 1200px;
    min-height: 500px;
    height: 100%;
    display: block;
    background-image: url(images/svg/bg_topmain.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    z-index: 5;
    top: -90px;
    left: 0;
}
.mainimageInner{
    max-width:1000px;
    margin: 0 auto;
    z-index: 15;
    position:relative;
}
.mainimageInner:after{
    content: "";
    width: calc(100% + 180px);
    max-width: 1180px;
    max-height: 210px;
    height: 100%;
    display: block;
    background-image: url(images/svg/mainimage-deco_pc.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    z-index: 20;
    left: -90px;
    bottom: 0;
}


.scrolldown{
    position:absolute;
    left:2px;
    bottom:1%;
    animation: arrowmove 1s ease-in-out infinite;
}
@keyframes arrowmove{
    0%{bottom:1%;}
    50%{bottom:3%;}
    100%{bottom:1%;}
}

@media only screen and (max-width: 768px) {
.mainimageInner:after{
    width: calc(100% + 90px);
    background-image: url(images/svg/mainimage-deco_sp.svg);
    left: -45px;
    bottom: -100px;
    max-height: 140px;
}
}

/*news*/

.newsOuter{
    background-image:url(images/bg_news.jpg);
    background-position:top center;
    background-size:cover;
    padding: 50px 0 100px;
}
.newsInner{
    padding:15px;
}
.newsInner dl{
    max-width:827px;
    margin:0 auto;
    background-color:#3ab483;
    border-radius:8px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.newsInner dl dt{
    width:200px;
    margin:0;
    padding: 0 10px;
    box-sizing: border-box;
}
.newsInner dl dt .newsHead{
    text-align:center;
}
.newsInner dl dt .newsHead h2{
    color:#fff;
    font-size:16px;
    line-height: 15px;
    margin: 0;
}
.newsInner dl dt .newsHead span{
    font-size:16px;
    line-height: 16px;
    font-weight:bold;
}
.newsInner dl dd{
    background-color:#fff;
    width:calc(100% - 200px);
    margin:0;
    padding:10px;
    box-sizing: border-box;
}
.newsInner dl dd ul{}
.newsInner dl dd ul li{
    border-bottom:1px dashed #ccc;
}
.newsInner dl dd ul li:last-child{
    border-bottom:none;
}
.newsInner dl dd ul li a{
    color:#333;
    display: block;
    padding: 10px;
    background-color:#fff;
    transition: all 0.2s linear;
}
.newsInner dl dd ul li a:hover{
    background-color:#f1f1f1;
    text-decoration:none;
}
@media only screen and (max-width: 768px) {
.newsInner dl dt{
    width:calc(100%);
    padding:10px;
}
.newsInner dl dd{
    width:calc(100%);
    border-radius: 0 0 8px 8px;
}

}


/*topabout*/

.topAboutOuter{}
.topAboutInner{
    display: flex;
    flex-wrap: wrap;
    max-width:1200px;
    margin:0 auto;
}

.prefTitle{
    text-align:center;
    position:relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.prefTitle:after{
    background-image:url(images/svg/item_pref.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:200px;
    height:160px;
    position:absolute;
    z-index:5;
}
.prefTitle h2{
    text-align:center;
    position:relative;
    z-index:10;
    font-size:23px;
}
.topAboutTitle{
    width:calc(100%);
}

.topAboutText{
    width: calc(50%);
    padding: 50px 50px 0 100px;
    box-sizing: border-box;
}
.topAboutText h3{
    font-size:30px;
    line-height:52px;
    padding:0 0 20px;
}
.topAboutText p{
    font-size:16px;
    line-height:36px;
    margin:0 0 50px;
}

.topAboutImage{
    width: calc(50% + 70px);
    margin: 0 0 0 -70px;
}

@media only screen and (max-width: 1120px) {
.topAboutImage{
    width: calc(50% + 20px);
    margin: 0 0 0 -20px;
}
}
@media only screen and (max-width: 992px) {
.topAboutText{
    width: calc(100%);
    padding: 20px;
}
.topAboutText h3{
    font-size:24px;
    line-height:32px;
    padding:0 0 20px;
}
.topAboutText h3 br{
    display:none;
}
.topAboutImage{
    width: calc(100%);
    margin: 0;
}
}

/*search*/

.searchOuter{
    max-width:1200px;
    padding:50px 15px;
    margin:0 auto;
    box-sizing: border-box;
    position: relative;
    z-index: 5;
    background-color:#f3f3d0;
}
.searchOuter:after{
    background-image:url(images/svg/bg_search.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    right:0;
    z-index: 8;
}
.searchOuter h2{
    font-size: 20px;
    width: 100%;
    text-align: center;
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 20px 0;
}

.searchInner{
    padding: 5px 10px;
    background-color:#fff;
    max-width: 900px;
    margin: 0 auto;
}
.searchInner:before{
    background-image:url(images/svg/item_owl.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:220px;
    height:130px;
    position:absolute;
    top:-30px;
    left:0;
    z-index: 15;
}
.searchInner:after{
    background-image:url(images/svg/item_bird.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:170px;
    height:140px;
    position:absolute;
    right:5%;
    bottom:-30px;
    z-index: 15;
}

.searchBox select{
    font-size: 14px;
    margin: 0 6px;
    padding: 5px 15px;
    color: #534741;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 5px;
    border-color: #3ab483;
}


.searchBox select{
    font-size: 14px;
    margin: 0 6px;
    padding: 5px 15px;
    color: #534741;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 5px;
    border-color: #3ab483;
}
.searchBox {
    width:calc(100%);
    background-color:#f8f8f8;
    max-width: 768px;
    margin: 0 auto;
    border: 1px solid #e8e8e8;
    padding: 10px 8% 5px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    position: relative;
    z-index: 20;
}
.searchBox dl{
    display: flex;
    flex-wrap: wrap;
    width:calc(100%);
    margin:0;
    padding:5px;
    box-sizing: border-box;
}
.searchBox dl:nth-child(1){
    width:calc(30%);
}
.searchBox dl:nth-child(2){
    width:calc(70%);
}
.searchBox dl:nth-child(3),
.searchBox dl:nth-child(4){
    border-top:1px solid #e8e8e8;
}
.searchBox dl dt{
    width:calc(6em);
}
.searchBox dl dt h3{
    margin:0;
    text-align: right;
    padding: 5px;
    font-size: 14px;
}
.searchBox dl dd{
    width:calc(100% - 6em);
    margin:0;
}

.searchBox dl dd ul{
    display: flex;
    flex-wrap: wrap;
}
.searchBox dl dd ul li{
    width: calc(100% / 12);
    padding: 2px 1px;
}
.searchtypeCategory dd ul li:nth-child(1){width:calc(20%)!important;}
.searchtypeCategory dd ul li:nth-child(2){width:calc(30%)!important;}
.searchtypeCategory dd ul li:nth-child(3){width:calc(50%)!important;}

.searchBox dl dd ul li input[type="checkbox"]{
    display:none;
}
.searchBox dl dd ul li label{
    position:relative;
    padding:0 0 0 25px;
}
.searchBox dl dd ul li label::before {
    content: "";
    display:block;
    position: absolute;
    border:1px solid #3ab483;
    border-radius:5px;
    background-color:#fff;
    width:20px;
    height:20px;
    left: 0px;
    display: block;
    color:#fff;
    z-index:5;
    font-size: 1.5em;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    transition: all 0.1s linear;
}
.searchBox dl dd ul li label::after {
    font-family: "Font Awesome 5 free";
    content: "\f00c";    
    font-weight:bold;
    position: absolute;
    left: 5px;
    display: block;
    color:#fff;
    z-index:10;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    font-size: 0.7em;
    transition: all 0.1s linear;
}
.searchBox dl dd ul li input[type="checkbox"]:checked + label::before {
    background-color: #3ab483;
}
.searchBox dl dd ul li input[type="checkbox"]:checked + label::after {
    color: #fff;
}


.topSearchBox dl:nth-child(1){
    width:calc(100%);
}
.topSearchBox dl:nth-child(2){
    width:calc(100%);
}
.topSearchBox dl dd ul li{
    width: calc(100% / 6);
    padding: 2px 1px;
}


.searchSubmit{
    position:relative;
    transition: all 0.2s linear;
    max-width:377px;
    margin:0 auto;
    z-index:20;
}
.searchSubmit:hover{
    opacity:0.8;
}
.searchSubmit::after{
    background-image:url(images/svg/item_arrow_w.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:10px;
    height:15px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    right:15px;
    transition: all 0.2s linear;
}
.searchSubmit:hover::after{
    margin-top:5px;
}
.searchSubmit input[type=submit]{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:100%;
    max-width:377px;
    height:65px;
    background-color:#3ab483;
    color:#fff;
    text-decoration:none;
    position:relative;
    transition: all 0.2s linear;
    margin:15px auto;
    border:2px solid #3ab483;
    box-shadow: 0 5px #7e9379;
    border-radius:100px;
    font-size:16px;
    top:0;
    -webkit-appearance: none;
}
.searchSubmit input[type=submit]:hover{
    color:#fff;
    text-decoration:none;
    opacity:0.8;
    top:5px;
    box-shadow: 0 0px #7e9379;
}


@media only screen and (max-width: 678px) {
.searchInner:before{
    width:110px;
    height:65px;
    top:-15px;
}
.searchInner:after{
    width:85px;
    height:70px;
    right:2.5%;
    bottom:-15px;
}
.searchBox {
    padding: 5px 10px 5px;
}
.searchBox dl dt{
    width:calc(100%);
}
.searchBox dl dt h3{
    text-align:center;
}
.searchBox dl dd{
    width:calc(100%);
    text-align: center;
}
.searchBox dl dd ul li{
    text-align: left;
}
.searchtypeCategory dd ul li:nth-child(1){width:calc(40%)!important;}
.searchtypeCategory dd ul li:nth-child(2){width:calc(60%)!important;}
.searchtypeCategory dd ul li:nth-child(3){width:calc(100%)!important;}
}
@media only screen and (max-width: 568px) {
.searchBox select {
    width:calc(100%);
    margin: 0;
}
.searchBox dl {
    padding: 10px 0;
}
.searchBox dl:nth-child(1), .searchBox dl:nth-child(2) {
    padding:0 5px 10px;
}
.searchBox dl dd ul li{
    width:calc(100% / 4);
    padding: 5px;
}
}

/*pickup*/

.pickupOuter{
    padding:0 15px 220px;
    position:relative;
    width: 100%;
    max-width: 1200px;
    margin:0 auto;
    box-sizing: border-box;
}
.pickupOuter:before {
    background-image: url(images/svg/item_pickup_pc.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 100%;
    max-width: 1200px;
    height: 220px;
    position: absolute;
    z-index: 5;
    bottom:0;
}
.pickupInner{
    max-width:calc(1000px);
    margin:0 auto;
    position:relative;
    z-index:10;
}
.pickupHead{
    padding:80px 0;
}
.pickupHead:before {
    background-image: url(images/svg/item_deco-leaf_pc.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 100%;
    max-width: 990px;
    height: 50px;
    position: absolute;
    z-index: 5;
}

.pickupHead h2{
    text-align:center;
    font-size:23px;
    color:#000;
    margin: 0;
}

.pickupList{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.pickupList .pickupItem{
    width:calc(31%);
    margin: 1% 1% 30px;
    position:relative;
    
}
.pickupList .pickupItem a{
    background-color: #fff;
    display: block;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0 1px 15px #999;
    color:#000;
    transition: all 0.2s ease-out;
    position:relative;
    bottom:0;
}
.pickupList .pickupItem a:hover{
    bottom:10px;
    background-color: #bbe1d0;
}

.pickupStatus{}
.pickupStatus span{
    border:1px solid #3ab483;
    border-radius:3px;
    font-size:13px;
    display:inline-block;
    padding: 0 10px;
    background-color: #fff;
}

.area1{background-color:#e78339!important; border-color:#e78339!important; color: #fff;}
.area2{background-color:#dd5045!important; border-color:#dd5045!important; color: #fff;}
.area3{background-color:#4fb1ba!important; border-color:#4fb1ba!important; color: #fff;}
.area4{background-color:#4faa42!important; border-color:#4faa42!important; color: #fff;}
.area5{background-color:#859d2d!important; border-color:#859d2d!important; color: #fff;}
.area6{background-color:#8d63a0!important; border-color:#8d63a0!important; color: #fff;}
.area7{background-color:#4c95ca!important; border-color:#4c95ca!important; color: #fff;}

.pickupList .pickupItem a .pickupImage{
    overflow:hidden;
    position:relative;
    display:block;
    background-position:center;
    background-size:cover;
    transition: all 0.3s ease-out;
    z-index:1;
    margin: 0 0 10px;
}

.pickupList .pickupItem a .pickupText{}
.pickupList .pickupItem a .pickupText h3{
    color:#534741;
    font-size:16px;
}
.pickupList .pickupItem a .pickupText p{
    color:#333;
    font-size:14px;
    line-height:24px;
    margin: 0;
}

@media only screen and (max-width: 992px) {
.pickupOuter {
    padding: 0 15px 15%;
}
.pickupOuter:before {
    background-size: contain;
    background-repeat:no-repeat;
    background-position:bottom center;
}
.pickupList .pickupItem a::before{
    background-color: #3ab483;
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    border-radius:30px;
    position: absolute;
    right: 15px;
    bottom:15px;
    z-index:5;
}
.pickupList .pickupItem a::after {
    background-image: url(images/svg/item_arrow_w.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 10px;
    height: 15px;
    position: absolute;
    right: 24px;
    bottom: 23px;
    z-index:8;
}
.pickupList .pickupItem a .pickupText {
    padding: 0 40px 0 0;
}
}
@media only screen and (max-width: 768px) {
.pickupOuter {
    padding: 0 15px 20%;
}
.pickupOuter:before {
    background-image: url(images/svg/item_pickup_sp.svg);
}
.pickupHead{
    padding: 100px 0;
}
.pickupHead:before {
    background-image: url(images/svg/item_deco-leaf_sp.svg);
    width: 100%;
    max-width: 320px;
    height: 250px;
}
.pickupList .pickupItem{
    width:calc(96%);
    margin: 1% 2% 30px;
}
}

/*footer*/

footer{
    margin: 0 auto;
    border-top: 1px solid #f1f1f1;
    background-color:#fff;
}
.footerInner{
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    padding:0 15px 15px;
}

.footerInfo{
    text-align: center;
    margin: 0 auto;
    padding:60px 0;
}
.footerInfo dl{
    margin: 10px auto 0;
}
.footerInfo dl dt{
    padding: 0 0 10px;
}
.footerInfo dl dt p{
    margin: 0 0 5px;
    font-size: 14px;
}
.footerInfo dl dd{
    margin:0;
    padding:0;
    font-size: 12px;
    font-weight: 600;
    line-height:24px;
}
.footerInfo dl dd span{
    font-size:16px;
}
.footerEnd{
    width:calc(100%);
    text-align:center;
    font-size:11px;
}
@media only screen and (max-width: 992px) {
.footerInner {
    padding: 0 15px 100px;
}
.footerInfo{
    width:calc(100%);
    text-align:center;
    padding: 20px 0;
}
.footerInfo dl dt {
    padding: 20px 0 15px;
}
.footerMenu{
    width:calc(100%);
}
.footerMenu ul li{
    width:calc(100% / 2);
}
.footerMenu ul li a::after {
  transform: scale(1, 1);
}
.footerEnd{
    text-align:center;
    padding:20px 0 0;
}
}


/*totop*/

.active {
    opacity: 1!important;
    visibility: visible!important;
}
.totop {
    max-width:180px;
    position: fixed;
    bottom: 15px;
    width: auto;
    right: 15px;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s linear;
    background-image:url(images/btn_totop1.png);
    background-size:cover;
}



/*subpage*/

.subpageOuter{
    padding: 30px 15px 50px;
}
.subpageInner{
    max-width:1000px;
    margin:0 auto;
}
.type750{
    max-width:750px;
}

.breadcramb{
    max-width:1000px;
    margin:0 auto;
}
.breadcramb ul{
    display: flex;
    flex-wrap: wrap;
}
.breadcramb ul li{
    font-size:14px;
    padding:6px 5px 4px;
}
.breadcramb ul li a{
    margin: 0 2em 0 0;
    position:relative;
    color:#333;
}
.breadcramb ul li a:after{
    font-family: "Font Awesome 5 free";
    content: "\f054";
    font-weight : 900;
    position: absolute;
    top:50%;
    right: -1.5em;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}
.breadcramb ul li p{
    margin:0;
}
.subHeaderOuter{
    background-color:#f5f7f4;
}
.subHeaderInner h2{
    text-align: center;
    font-size:24px;
    font-weight: 600;
    margin:0;
    padding: 15px;
}

.baseTitle{}
.baseTitle h3{
    text-align: center;
    font-size:21px;
    margin:0;
    padding: 15px;
}


/*searchlist*/

.searchBoxOuter{}
.searchBoxInner{
    padding:0 15px;
}
.searchBoxInner .searchBox{
    width: calc(100%);
    max-width:1000px;
    padding: 10px 10px 5px 10px;
    box-sizing: border-box;
}
.searchSubmitOuter{
    width: calc(30%);
    text-align: center;
    position: absolute;
    bottom: 12px;
    right: 12px;
}
.searchSubmit .searchSubmit{
    width:calc(100%);
}
.searchSubmitOuter .searchSubmit input[type=submit]{
    max-width:377px;
    height: 30px;
    margin: 0px auto;
    font-size: 14px;
}

.fpc{display:flex!important;}
.fsp{display:none!important;}


@media only screen and (max-width: 992px) {

.fpc{display:none!important;}
.fsp{display:flex!important;}

.searchBoxInner .searchBox{
    width: calc(100%);
    padding: 10px;
    z-index: 15;
}
.searchBoxInner .searchBox:before{
    display:none;
}
.searchSubmitOuter{
    border-top:1px solid #e8e8e8;
    width: calc(100%);
    position:relative;
    right: auto;
    top: auto;
    bottom: auto;
    padding: 10px 0 5px;
}
.subSearchBox{}
.subSearchBox .searchtypeArea,
.subSearchBox .searchtypeCategory,
.subSearchBox .searchtypeMonth,
.subSearchBox .searchtypeGrade{
    width:calc(50%)!important;
}
}
@media only screen and (max-width: 678px) {
.subSearchBox dl dt {
    width: calc(6em)!important;
}
.subSearchBox dl dd {
    width: calc(100% - 6em)!important;
    text-align: left!important;
}
.subSearchBox dl dt h3 {
    text-align: right!important;
}
}
@media only screen and (max-width: 578px) {
.subSearchBox .searchtypeArea,
.subSearchBox .searchtypeCategory,
.subSearchBox .searchtypeMonth,
.subSearchBox .searchtypeGrade{
    width:calc(100%)!important;
    padding: 0!important;
}
}


.searchListOuter{
    border-top:1px solid #000;
    margin:30px auto 0;
}
.searchListInner{
    max-width:1000px;
    margin:0px auto 0;
    padding: 0 15px;
}

.condType{
    padding: 0 0 5px;
}
.condType dl{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 0 -26px;
    padding: 0 130px 0 0;
}
.condType dl dt{
    margin:0;
    padding:0 10px;
    font-size:16px;
    color:#fff;
    background-color:#989898;
    border-radius:3px;
}
.condType dl dd{
    margin:0;
    padding:0 10px;
    font-size:14px;
}
.condType p{
    text-align:right;
    margin: 0;
}
@media only screen and (max-width: 678px) {
.condType dl{
    margin: 0;
    padding: 0;
}
}

.searchListMain{
    overflow: auto;
    white-space: nowrap;
}
.searchListMain table{
    border:2px solid #42ab80;
    border-radius:5px;
    border-collapse: separate;
    border-spacing: 0px;
    width:calc(100%);
}
.searchListMain table thead{
    background-color:#3ab483;
    color:#fff;
}
.searchListMain table thead tr{}
.searchListMain table thead tr th{
    position:relative;
    padding: 10px;
}
.searchListMain table thead tr th:after{
    background-color:#fff;
    content:"";
    display:block;
    width:1px;
    height:80%;
    position:absolute;
    top:10%;
    right:0;
}
.searchListMain table thead tr th:last-child::after{
    display:none;
}
.searchListMain table tbody{}
.searchListMain table tbody tr{}
.searchListMain table tbody tr:last-child{
    border-radius:0 0 5px 5px;
}
.searchListMain table tbody tr:nth-child(odd) {background-color:#ffffff;}
.searchListMain table tbody tr:nth-child(even){background-color:#e7ece5;}
.searchListMain table tbody tr td{
    text-align:center;
    border-right:1px dashed #42ab80;
    padding: 10px;
    font-size:14px;
}
.searchListMain table tbody tr td:nth-child(1),
.searchListMain table tbody tr td:nth-child(2){
    text-align:left;
    white-space: normal;
}

.searchListMain table tbody tr td:last-child{
    border-right:none;
}
.searchListMain table tbody tr td:nth-child(1) span{
    width: 52px;
    display: inline-block;
    text-align: center;
    padding: 1px 0;
    margin: 0 8px 0 0;
    color:#fff;
    border-radius: 3px;
}
.searchListMain table tbody tr td:nth-child(2) a{
    border: 1px solid #3ab483;
    border-radius: 5px;
    padding: 10px 40px 10px 10px;
    display: block;
    background: #fff;
    color: #000;
    position:relative;
}
.searchListMain table tbody tr td:nth-child(2) a::before{
    background-color: #3ab483;
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius:30px;
    position: absolute;
    right: 8px;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    z-index:5;
}
.searchListMain table tbody tr td:nth-child(2) a::after {
    background-image: url(images/svg/item_arrow_w.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 6px;
    height: 10px;
    position: absolute;
    right: 15px;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    z-index:8;
}
@media only screen and (max-width: 992px) {
.searchListMain table thead{
    display:none;
}
.searchListMain table tbody tr {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 5px 5px;
}
.searchListMain table tbody tr td{
    border-right:none;
    padding: 0px 5px 5px;
    box-sizing: border-box;
    position:relative;
}
.searchListMain table tbody tr td:nth-child(1),
.searchListMain table tbody tr td:nth-child(2){
    width:calc(100%);
}
.searchListMain table tbody tr td:nth-child(3),
.searchListMain table tbody tr td:nth-child(4),
.searchListMain table tbody tr td:nth-child(5){
    width:calc(33%);
    font-size:13px;
}
.searchListMain table tbody tr td:nth-child(3)::after,
.searchListMain table tbody tr td:nth-child(4)::after{
    background-color:#999;
    content:"";
    display:block;
    position:absolute;
    top:5%;
    right:0;
    width:1px;
    height:80%;
    transform: rotate(30deg);
}
}

.searchListCaution{}
.searchListCaution p{
    font-size:14px;
}

.basePager{
    padding:30px 0 100px;
}
.basePager ul{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.basePager ul li{
    font-size:18px;
    line-height:18px;
    font-family:'メイリオ', 'Meiryo', sans-serif;
    font-weight:bold;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding:5px;
}
.basePager ul li p,
.basePager ul li a{
    border:1px solid #534741;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:36px;
    height:36px;
    text-align:center;
    border-radius: 100px;
    transition: all 0.2s linear;
}
.basePager ul li p{
    background-color:#534741;
    color:#fff;
    margin: 0;
}
.basePager ul li a{
    background-color:#fff;
    color:#534741;
}
.basePager ul li a:hover{
    border:1px solid #89c4a5;
    background-color:#89c4a5;
    color:#fff;
}
.basePager ul li span{}



/*searchDetail*/

.searchDetailOuter{}
.searchDetailInner{
    max-width:750px;
    margin:0 auto;
    padding:0 15px;
}

.searchDetailHead{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding:5px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    margin: 20px 0 15px;
}
.searchDetailHead h3{
    margin: 5px 0;
    padding: 5px 20px;
    font-size:27px;
    line-height:27px;
    border-left:6px solid #3ab483;
}
.searchDetailHead span{
    margin: 5px 0;
    padding: 5px 20px;
    font-size:20px;
    line-height:20px;
    border-left: 1px solid #000;
}

.searchDetailInner .pickupStatus{
    margin:0 0 10px;
}

.searchDetailImage{
    text-align:center;
}
.searchDetailText{}
.searchDetailText p{
    font-size:16px;
    line-height:36px;
}

.searchDetailInfo{
    border-bottom:1px solid #000;
}
.searchDetailInfo h4{
    padding: 5px 10px 4px;
    border-radius: 4px;
    font-size: 16px;
}
.searchDetailInfo dl{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.searchDetailInfo dl dt{
    padding: 5px 10px 4px;
    border-radius: 4px;
    background-color:#dadada;
    width:100px;
    text-align:center;
}
.searchDetailInfo dl dd{
    margin:0;
    padding:0 15px;
    width:calc(100% - 100px);
}

.searchDetailArea{
    background-color:#f5f7f4;
    padding:15px 30px;
    margin:15px 0 0;
}
.searchDetailArea dl{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    border-bottom:1px solid #000;
}
.searchDetailArea dl dt{
    margin:0;
    padding:0 15px;
    width: 150px;
}
.searchDetailArea dl dd{
    margin:0;
    padding:0 0 0 30px;
    width: calc(100% - 150px);
}

.searchDetailContact{
    border: 1px solid #3ab483;
    background-color: #fff;
    padding: 15px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto;
}
.searchDetailContact p{
    width: calc(100%);
    max-width: 300px;
    margin: 0 auto 15px;
    border-bottom: 1px solid #3ab483;
    padding: 0 0 5px;
}
.searchDetailContact a{
    position: relative;
    font-size: 31px;
    line-height: 30px;
    font-weight: 900;
    color: #000;
    padding: 0 0 0px 30px;
    border-bottom: 1px solid #000;
    pointer-events: none;
}
.searchDetailContact a:before{
    background-image:url(images/svg/icon_phone.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:28px;
    height:28px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:0px;
}

.searchDetailMap{
    text-align:center;
    padding:30px 0;
}


@media only screen and (max-width: 768px) {
.searchDetailHead h3{
    font-size:21px;
    line-height:21px;
}
.searchDetailHead span{
    font-size:16px;
    line-height:16px;
}
.searchDetailText p{
    font-size:14px;
    line-height:28px;
}
.searchDetailArea{
    padding:15px;
}
.searchDetailArea dl dt{
    width: 100%;
}
.searchDetailArea dl dd{
    font-size:14px;
    line-height:18px;
    padding:0 0 10px 30px;
    width: 100%;
}
.searchDetailContact p{
    font-size:14px;
}
.searchDetailContact a{
    font-size: 24px;
    line-height: 23px;
    pointer-events: auto;
}
}


/*newsBase*/

.newsBase{
    min-height: 500px;
    border-top: 1px solid #ccc;
    padding: 30px 15px 50px;
    box-sizing: border-box;
    line-height: 1.8em;
    background: rgb(255 255 255 / 75%);
}


/**/
.kankyouzeiMovie{}
.kankyouzeiMovie p{
    font-size: 14px;
    margin: 0;
    padding: 5px 0;
}
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.kankyouzeiLink{}
.kankyouzeiLink p{
    text-align: center;
    margin: 0 0 -10px;
    padding: 0;
    font-size: 14px;
}
.kankyouzeiLink .baseLink a{
    background-color:#fff;
    color:#3ab483;
}
.kankyouzeiLink .baseLink a:before{
    background-image:url(images/svg/icon_upright.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:16px;
    height:16px;
    margin:0 5px 0 0;
}
.kankyouzeiLink a:after{
    display:none;
}

/*life*/

.lifeLinkList{
    display: flex;
    flex-wrap: wrap;
}
.lifeLinkList ul{
    width:calc(50%);
    padding:15px;
    box-sizing: border-box;
}
.lifeLinkList ul li{}
.lifeLinkList ul li a{
    color: #3ab483;
    font-weight: 500;
    padding: 4px 0;
    display: inline-block;
    text-decoration: underline;
}

.lifeMovieList{
    display: flex;
    flex-wrap: wrap;
}
.lifeMovieList .lifeMovieBox{
    width:calc(50%);
    padding:15px;
    box-sizing: border-box;
}
.lifeMovieList .lifeMovieBox h3{
    border-bottom: 4px solid #3ab483;
    font-size: 18px;
    padding: 0 0 5px;
}
.lifeMovieList .lifeMovieBox p{
    font-size: 14px;
    line-height:23px;
}
@media only screen and (max-width: 768px) {
.lifeLinkList ul{
    width:calc(100%);
    margin:0;
    padding:0 15px;
}
.lifeMovieList .lifeMovieBox{
    width:calc(100%);
}
}

/*example*/


.accordion{
    width: 100%;
    margin: 5px auto 50px;
    padding: 0 15px;
    box-sizing: border-box;
}
/*-----------------------アコーディオン*/
/*question*/
.hidden_box {
    margin: 0;
    padding: 0;
    position:relative;
}
.hidden_box:after{

}

/*ボタン装飾*/
.hidden_box label {
    padding: 0px 60px 0px 15px;
    min-height: 67px;
    display: flex;
    justify-content: left;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    font-weight: bold;
    background: #fff;
    cursor: pointer;
    transition: .5s;
    text-align: center;
    position: relative;
    font-size: 100%;
    color: #fff;
    border: none;
    border-radius: 8px;
    background-color: #3ab483;
}
.typeMS label {
    background-color: #f6a73b;
}
.hidden_box label h3,
.hidden_box label h4{
    margin:0;
    width: 100%;
}


/*answer*/
.hidden_show{
    position:relative;
    text-align:left;
    background-color:#fff;
    padding: 10px 15px 18px 75px;
    margin:0 0 20px;
}





/*アイコンを表示(+)*/
.hidden_box label:after {
    color:#fff;
    content: "＋";
    display: inline-block;
    font-size:2.0em;
    transition: 0.2s;
    position:absolute;
    right: 18px;
    /*top: 8px;*/
    z-index: 15;
}

/*ボタンホバー時*/
.hidden_box label:hover {
    color:#fff;
    opacity:0.8;
}

/*アイコンを切り替え(-)*/
.hidden_box input:checked ~ label:after {
    content: "－";
     -ms-transform: rotate(180deg);
     -webkit-transform: rotate(180deg);
     transform: rotate(180deg);
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 0 0;
    height: auto;
    opacity: 1;
}
.accordionInner{
    padding:15px;
}
@media only screen and (max-width: 768px) {
.accordion{
    padding: 0;
}
.accordionInner{
    padding:15px 0;
}
}


.exampleTable{
    background: #f5f7f4;
    padding: 15px;
    overflow: auto;
    white-space: nowrap;
}
.exampleTable table{
    position:relative;
    font-size:14px;
    width:calc(100%);
}
.exampleTable table:before,
.exampleTable table:after{
    background-color:#f5f7f4;
    content:"";
    display:block;
    width:4px;
    height:100%;
    position:absolute;
    top:0%;
}
.exampleTable table:before{left:-2px;}
.exampleTable table:after {right:-2px;}
.exampleTable table thead{}
.exampleTable table thead tr{}
.exampleTable table thead tr th{
    position:relative;
    padding: 10px;
    border: 1px solid #000;
    border-bottom: none;
    text-align:center;
}
.exampleTable table tbody{}
.exampleTable table tbody tr{}
.exampleTable table tbody tr td{
    position:relative;
    padding: 10px;
    border: 1px solid #000;
    text-align: center;
}
.exampleTable table tbody tr td a{
    color:#000;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding:0 20px
}
.exampleTable table tbody tr td a:before,
.exampleTable table tbody tr td a:after{
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:15px;
    height:18px;
    position:absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.exampleTable table tbody tr td a:before{
    background-image:url(images/svg/icon_arrow-listhead.svg);
    margin-right:5px;
    left:8px;
}
.exampleTable table tbody tr td a:after{
    background-image:url(images/svg/icon_pdf.svg);
    margin-left:5px;
    right:5px
}

.telCaution {
    position: relative;
    padding: 5px 30px;
    margin: 0 0 10px;
    font-size: 0.8em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.telCaution span{
    font-weight:bold;
}
.telCaution::before,
.telCaution::after {
  position: absolute;
  top: 0;
  content: '';
  width: 50px;
  height: 100%;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.telCaution::before {
  left: 0;
  border-left: 2px solid #555;
}
.telCaution::after {
  right: 0;
  border-right: 2px solid #555;
}

.balloon{
    position:relative;
    border:1px solid #3ab483;
    padding: 15px 15px 15px 40px;
    margin:20px 0;
    border-radius: 12px;
}
.balloon:before{
    background-image:url(images/svg/icon_caution.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:20px;
    height:20px;
    position: absolute;
    top: 17px;
    left: 13px;
}

#privacy{
    padding: 50px 0 0;
}
#privacy h3{
    border-bottom: 1px solid #3ab483;
    max-width: 300px;
    margin: 0 auto 50px;
}
#policy{
    padding: 0 0 500px;
}


/*voice*/


.voiceSearchBox .searchBox dl dd{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.voiceSearchBox .searchBox dl dd ul {
    width: 100%;
}
.voiceSearchBox .searchtypeCategory {
    width: calc(50%)!important;
}
.voiceSearchBox .searchtypeCategory dd ul li:nth-child(1){width:calc(33%)!important;}
.voiceSearchBox .searchtypeCategory dd ul li:nth-child(2){width:calc(33%)!important;}
.voiceSearchBox .searchtypeCategory dd ul li:nth-child(3){width:calc(33%)!important;}
.voiceSearchBox .searchSubmitOuter {
    width: calc(20%);
}
@media only screen and (max-width: 992px) {
.voiceSearchBox .searchSubmitOuter {
    width: calc(100%);
}
}
@media only screen and (max-width: 568px) {
.voiceSearchBox .searchtypeCategory {
    width: calc(100%)!important;
}
}


.voiceListMain{
}

.voiceListBlock{
    border:1px solid #49b78f;
    padding: 20px 20px 30px;
    margin:30px 0;
}

.voiceListTitle{}
.voiceListTitle h4{
    margin: 15px 0 0;
    font-size: 21px;
    line-height: 18px;
}
.voiceListTitle h4 span{
    width: 52px;
    display: inline-block;
    text-align: center;
    padding: 1px 0;
    margin: -2px 8px 0 0;
    color: #fff;
    border-radius: 3px;
    font-size:14px;
    position: relative;
    top: -2px;
    font-weight: normal;
}

.voiceBox{
    border: 1px solid #9fa0a0;
    max-width: 900px;
    margin: 15px auto 0;
    border-radius: 15px;
    padding: 15px;
    box-sizing: border-box;
}
.voiceBox h5{
    position:relative;
    padding:0 0 0 40px;
    margin:0 0 10px;
    font-size:18px;
}
.voiceBox h5:before{
    background-image:url(images/svg/icon_school.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width: 35px;
    height: 27px;
    position: absolute;
    top: 0px;
    left:0;
}
.voiceBox .voiceBoxText{
    font-size:16px;
    line-height: 1.8em;
}
.voiceBox .voiceBoxText em{
    font-size:19px;
    font-weight:bold;
    font-style: normal;
    background:linear-gradient(transparent 60%, #ffcccc 60%);
}
.voiceBox .voiceBoxComment{
    display: -webkit-box;
}
.voiceBox .voiceBoxComment dl{
    margin:0;
    padding:0;
    display: flex;
    flex-wrap: wrap;
}
.voiceBox .voiceBoxComment dl dt{
    position:relative;
    margin:0;
    padding:0;
    width: 180px;
    text-align: center;
}
.voiceBox .voiceBoxComment dl dt h6{
    position:relative;
    margin:0;
    padding:5px 10px;
    background-color:#f1f4f0;
}
.voiceBox .voiceBoxComment dl dd{
    margin:0;
    padding: 5px 10px;
    width:calc(100% - 180px);
    font-size:15px;
}

.voiceBox .voiceBoxImages{
    display: flex;
    flex-wrap: wrap;
}
.voiceBox .voiceBoxImages ul{
    display: flex;
    flex-wrap: wrap;
    margin:20px 0 0;
    width: 100%;
}
.voiceBox .voiceBoxImages ul li{
    width:calc(100% / 3);
    padding:10px;
    box-sizing: border-box;
}
.voiceBox .voiceBoxImages ul li a{
    display:block;
    position: relative;
    overflow: hidden;
    padding-top: 60%;
}
.voiceBox .voiceBoxImages ul li a img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.voiceBox .voiceBoxImages p{
    width: 100%;
    text-align: center;
    margin: 0;
}

.voiceListLinks{}
.voiceListLinks h5{
    text-align: center;
    font-size: 18px;
    padding: 0 0 10px;
    margin: 30px 0 20px;
    border-bottom: 1px solid #9fa0a0;
}
.voiceListLinks ul{}
.voiceListLinks ul li{
    padding: 5px 0;
}
.voiceListLinks ul li a{
    border: 1px solid #3ab483;
    border-radius: 5px;
    padding: 10px 40px 10px 10px;
    display: block;
    background: #fff;
    color: #000;
    position:relative;
    max-width: 850px;
    margin: 0 auto;
}
.voiceListLinks ul li a::before{
    background-color: #3ab483;
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius:30px;
    position: absolute;
    right: 8px;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    z-index:5;
}
.voiceListLinks ul li a::after {
    background-image: url(images/svg/item_arrow_w.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 6px;
    height: 10px;
    position: absolute;
    right: 15px;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    z-index:8;
}


@media only screen and (max-width: 992px) {
.voiceBox .voiceBoxComment dl dt{
    width: 100%;
}
.voiceBox .voiceBoxComment dl dd{
    width:calc(100%);
}
}


.searchDetailVoiceOuter{
    margin:100px 0;
}
.searchDetailVoiceInner{}
.searchDetailVoiceTitle{}
.searchDetailVoiceTitle h4{}
.searchDetailVoiceTitle h4 dl{
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin:0;
    padding:0;
}
.searchDetailVoiceTitle h4 dl dt{
    width:calc(180px);
    margin:0;
    padding:0;
}
.searchDetailVoiceTitle h4 dl dd{
    width:calc(100% - 180px);
    margin:0;
    padding: 10px 0 0;
}
@media only screen and (max-width: 992px) {
.searchDetailVoiceTitle h4 dl dd{
    width:calc(100%);
}
}


/*youtube*/

.youtubeOuter{}
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
#youtube_wrap {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}
.youtube_modal {
  display: block;
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-top: 56.25%;
}
.youtube_modal iframe,
.youtube_modal a,
.eventBanner .youtube_modal img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
}


/*modal*/
.eventFrame{
    position: fixed;
    bottom: 0px;
	width:100%;
	z-index:9900;
	pointer-events:none;
}
.eventBanner{
    position: fixed;
    bottom: 0px;
	width:100%;
	z-index: 9910;
    padding: 80px 15px 30px;
	pointer-events:auto;
	    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.eventBanner .youtubeOuter{
    width: 375px;
    margin: 10px;
}
/*
.eventBanner a{
    margin: 0;
    display: inline-block;
    position: relative;
}*/
.eventBanner #youtube_wrap {
    max-width:375px;
    width:calc(100%);
    opacity:1;
    z-index: 1000;
    position: relative;
}
.eventBanner .youtube_modal {
    padding-top: 66.6666667%;
}
.eventBanner .fieldcheckBanner{
    width: 375px;
    margin: 10px;
    opacity:1;
    z-index: 1000;
    position: relative;
}

.eventBanner a:hover img{
    opacity:1;
}

.button2{
    width: 100%;
    height: 100%;
    background: #4e4e4ead;
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 0;
    cursor: pointer;
    border: none;
    z-index: 100;
}
.button{
    width: 60px;
    height: 60px;
    background: #ed92aa;
    position: absolute;
    top: 0px;
    right: 0px;
    cursor: pointer;
    border: none;
    z-index: 1000;
}
.button:before,
.button:after{
    content: "";
    display: block;
    width: 32px;
    height: 3px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 10px;
}
.button:before{transform: translate(-50%,-50%) rotate(45deg);}
.button:after {transform: translate(-50%,-50%) rotate(-45deg);}


.checklistBase{
    background-color:#F3F3D0;
    text-align:center;
    margin: 50px 0;
    padding: 50px 15px;
}
.checklistBase .baseLink.pdfDLbig{
    padding:30px 0 0;
}
.checklistBase .baseLink.pdfDLbig a{
    max-width: 577px;
}
.checklistBase .baseLink.pdfDLbig a:before{
    background-image:url(images/svg/icon_pdf_big.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:50px;
    height:50px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:90px;
}
@media only screen and (max-width: 678px) {
.checklistBase .baseLink.pdfDLbig a{
    padding-left:50px;
    padding-right:50px;
    line-height:1.1em;
    box-sizing: border-box;
}
.checklistBase .baseLink.pdfDLbig a:before{
    width:35px;
    height:35px;
    left:15px;
}
}
