@charset "UTF-8";

/*tabの形状*/
.tab{
  display: flex;
  flex-wrap: wrap;
}
.tab li a{
  display: block;
  background:#ddd;
  margin:0 2px;
  padding:10px 20px;
}
/*liにactiveクラスがついた時の形状*/
.tab li.active a{
  background:#1d9ed4;
  color:#fff;
}


/*エリアの表示非表示と形状*/
.area {
  display: none;/*はじめは非表示*/
  opacity: 0;/*透過0*/
}

/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
    display: block;/*表示*/
    animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards;
}


@keyframes displayAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}


/*.contents {
padding: 0;
}*/

/*---*/
.category-area{
margin: 20px 0 40px;}
.category-area ul{
display: flex;
align-items: stretch;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 20px;
}
.category-area ul::before,
.category-area ul::after{
content: "";
display: block;
width: calc((100% - 80px) / 4);
}
.category-area ul::before {
    order: 1;
}
.category-area li{
width: calc((100% - 80px) / 4);
margin-top: 20px;
box-sizing: border-box;
list-style-type: none;
}
.category-area li a{display: block;text-decoration: none;padding: 15px;width: 100%;line-height: 1.45;border-radius: 52px;font-size: .9375rem;}



/*---*/
.ocList_inner h2.headLine2 span{
margin-left:3px;
font-size: 1.625rem;
}
.ocList_list {
display: flex;
justify-content: space-between;
align-items: stretch;
flex-wrap: wrap;
}
.ocList_list::before,
.ocList_list::after{
content: "";
display: block;
width: calc((100% - 120px) / 4);
}
.ocList_list::before {
order: 1;
}
.ocList_item {
width: calc((100% - 120px) / 4);
margin: 20px 0;
box-sizing: border-box;
position: relative;
}
.ocList_itemInner {
display: flex;
flex-direction: column-reverse;
justify-content: flex-end;
height: 100%;
color: #333;
text-decoration: none;
overflow: hidden;
line-height: 1.45;
background-color: #fff;
border: 1px solid #e8e8e8;
border-radius: 12px;
box-shadow: 0 0 18px 5px rgba(125,125,125,.2);
}


a.ocList_itemInner {
        transition: .3s cubic-bezier(0,0,.26,1.32)
}
a.ocList_itemInner:focus,a.ocList_itemInner:hover {
        box-shadow: 0 0 0 0 transparent;
        transform: translateY(2px)!important
}
a.ocList_itemInner[disabled]:focus,a.ocList_itemInner[disabled]:hover {
    box-shadow: 0 0 0 0 transparent;
    transform: translateY(0)!important
}

a.ocList_itemInner:hover {
    opacity: 1
}

a.ocList_itemInner:hover .ocList_title {
    color: #1d9ed4;
    text-decoration: underline
}
.ocList_card {
    display: flex;
    flex-direction: column;
    padding: 14px 18px 16px;
    width: 100%;
    height: 100%;
}
.ocList_title {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}
.ocList_group p{
    margin: 10px 0;
    color: #7d7d7d;
    font-size: .75rem;
    line-height: 1.85;
}
.ocList_group-type02 p{
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
}
.ocList_figure {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: auto;
    text-align: center;
    aspect-ratio: 3/2;
    text-decoration: none;
    overflow: hidden;
    padding-top: calc(2/3*100%);
    width: 100%;
}
.ocList_figure img {
    max-height: 100%;
    object-fit: contain;
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    flex: 0 0 auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
    font-family: "object-fit: contain;";
}
.ocList_footer {
    margin: auto auto 0;
    margin-top: auto;
    align-content: flex-end;
  width: 100%;
  
}
.ocList_footer .ocList_btn{
text-decoration: none;
padding: 12px 18px;
border-radius: 52px;
line-height: 1;
background-color: #fdae14;
color:#fff;
font-size: .875rem;
text-align:center;
margin-bottom: 0;
}
.ocList_footer .ocList_btn-type02{
background-color: #1d9ed4;
}




@media screen and (max-width: 736px) {
.category-area{
margin:10px 0 20px;
}
.category-area ul{
margin:0;
}
.category-area ul::before,
.category-area ul::after{
width: calc((100% - 20px) / 3);
}

.category-area li{
width: calc((100% - 20px) / 3);
margin-top: 10px;
}
.category-area li a{
padding: 10px 5px;
}


/*---*/
.ocList_inner h2.headLine2{
line-height: 1.25;
}
.ocList_inner h2.headLine2 span{
font-size: 1.125rem;
margin-left: 0;
}
.ocList_list {
/*display: flex;
flex-direction: column;*/
}

.ocList_list::before,
.ocList_list::after{
width: calc((100% - 10px) / 2);
}
.ocList_item {
width: calc((100% - 10px) / 2);
margin: 10px 0 0;
}
.ocList_card{
padding: 12px 12px 14px;
}
.ocList_footer .ocList_btn{
padding: 8px;
}

}


/*---*/
.ocList_inner .gFooterCategory{
padding:0;
}
.ocList_inner .gFooterCategory_block>:not(:first-child) {
margin-left: 50px;
}
.ocList_inner .gFooterCategory_unit-area {
    width: 500px;
}
.ocList_inner .gFooterCategory_unit-field {
    width: 500px;
}

@media screen and (max-width: 736px) {
.ocList_inner .gFooterCategory_block>:not(:first-child) {
        margin: 24px 0 0;
    }
.ocList_inner .gFooterCategory_unit-area {
        width: 100%;
    }
.ocList_inner .gFooterCategory_unit-field {
        width: 100%;
    }
}

@media screen and (min-width: 1200px) {
.ocList_inner .gFooterCategory_unit-area {
        width: calc(5vw + 440px);
    }
.ocList_inner .gFooterCategory_unit-field {
        width: calc(5vw + 440px);
    }
}