/*------------------------------------------
タブアコーディオン
------------------------------------------*/
.wrap_tab {
position: relative;
width: 100%;
box-sizing: border-box;
padding: 5px 10px 10px;
margin-top: 5px;
}
/* タブ中身 */
.tab-container{
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;		
margin-bottom: 20px;
}
.tab-container > li {
color: #222;
display: flex;
justify-content: center;
align-items: center;
flex: 1;
flex-grow: 1;
height: 3em;
border: #222 1px solid;
text-align: center;
cursor: pointer;
transition: 0.5s all;
line-height: 1.2em;
background-color: #fff;
border-radius: 50px;
position: relative;
}
.tab-container > li a{
position: absolute;
top: 50%;
left: 0;
transform: translateY(-27%);
width: 100%;
height: 100%;
}
.tab-container > li::after {
content: "";
width: 9px;
height: 9px;
position: absolute;
top: -4px;
right: 11%;
/* transform: translateY(-50%); */
border-top: solid 1px #222;
border-right: solid 1px #222;
transform: rotate(135deg);
}
.tab-container > li.current::after{
border-top: solid 2px #fff;
border-right: solid 2px #fff;
}
.tab-container > li.tab.current {
color: #fff;
background-color: #5a79b6;
transition: 0.5s all;
}
.arrow {
position: relative;
display: inline-block;
color: #000;
vertical-align: middle;
text-decoration: none;
}
.arrow::after{
position: absolute;
top: 0;
bottom: 0;
right: 0;
margin: auto;
content: "";
vertical-align: middle;
}
.menu-container {
position: relative;
width: 100%;
padding: 0;
}
.menu-container > .menu-box {
margin-top: 1%;
}
.menu-container > .menu-box.current .content .col_4{
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
margin: 0 auto;
padding: 1% 0 2%;
}
.menu-container > .menu-box.current .content .col_4 li{
width: 100%;
margin-right: 0;
margin-bottom: 2%;
background: #FFF;
overflow: hidden;
border-radius: 5px;
}
.menu-container > .menu-box.current .content .col_4 li.mar-b {
margin-bottom: 0;
}
.menu-container > .menu-box.current .content .col_5 {
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
padding: 2% 0;
}
.menu-container > .menu-box.current .content .col_5 li {
position: relative;
margin: 0;
width: 95%;
}
.menu-container > .menu-box.current .content .col_5 li a{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 0;
/* margin: 2% auto 2%; */
/* padding: 4% 0 2%; */
flex-direction: row;
border: none;
background: #FFF;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__img{
width: 28%;
border-radius: 5px 0 0 5px;
overflow: hidden;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__tit{
width: 72%;
box-sizing: border-box;
padding: 0 2.5%;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__tit h3{
font-size: 1.1em;
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
text-align: start;
margin: 0 0 1%;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__tit p{
display: block;
text-align: start;
font-size: .95em;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__cir {
position: absolute;
content: '';
bottom: 1%;
right: 1%;
width: 2em;
height: 2em;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #f1696d;
}
.menu-container > .menu-box.current .content .col_5 li a .column-list__cir::after{
position: absolute;
content: '';
bottom: 35%;
right: 40%;
width: 5px;
height: 5px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.menu-container > .menu-box {
display: none;
padding: 10px 0 0;
}
.menu-box {
box-sizing: border-box;
padding: 30px 20px 20px;
}
.tab-container > li.tab:hover,
.tab-container > li.tab.current:hover{
opacity: 1;
}

.menu-container{
position: relative;
width: 100%;
padding: 0;
}
.menu-container > .menu-box{
display: none;
padding: 0 0 0;
border: none;
}
.menu-container > .menu-box.current{
display: block;
}
/* .tab-container > li:nth-child(3):after {
transform: rotate(45deg);
top: 1px;
right: 30px;
} */
.column-link  {
display: flex;
justify-content: center;
box-sizing: border-box;
padding-right: 4%;
}
.column-link a {
white-space: nowrap;
font-size: 1em;
}
.column-link a::before{
content:'▼';
font-size:0.8rem;
padding: 0 4% 0 0;
color: #ccc;
}
