/* 蜈ｱ騾夲ｼ�PC/SP�� */
.block-seminar-calendar .yellow{
    color: #333 !important;
    background-color: #FFF7B2;
}
.block-seminar-calendar .pink{
    color: #333 !important;
    background-color: #FFEEF6;
}
.block-seminar-calendar .green{
    color: #333 !important;
    background-color: #E9FFD6;
}
section.p-calendar{
    background: #fff;
}
/* PC */
html[data-browse-mode="P"] .block-seminar-calendar{
    width: 1120px;
    margin: 0 auto;
    padding: 46px 0 100px;
}
html[data-browse-mode="P"] .block-seminar-calendar > h3{
    font-size: 30px;
    text-align: center;
    padding: 0;
    margin: 70px auto 42px;
}
html[data-browse-mode="P"] .block-seminar-calendar > ul{
    margin-bottom: 46px;
}
html[data-browse-mode="P"] .block-seminar-calendar > ul > li{
    font-size: 14px;
    line-height: 24px;
    padding-left: 1em;
    text-indent: -1em;
}
html[data-browse-mode="P"] .block-seminar-calendar--nav{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 21.5px;
}
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-prev,
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-next{
    width: 30px;
    height: 30px;
    display: block;
    color: transparent;
    -webkit-appearance: none;
    outline: none;
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-prev:hover,
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-next:hover{
    opacity: 0.7;
}
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-prev{
    background: url(../../../img/usr/freepage/calender/prev.png) no-repeat;
    background-size: 100% 100%;
}
html[data-browse-mode="P"] .block-seminar-calendar--nav .button-next{
    background: url(../../../img/usr/freepage/calender/next.png) no-repeat;
    background-size: 100% 100%;
}
html[data-browse-mode="P"] .block-seminar-calendar .month{
    margin: 0 90px;
}
html[data-browse-mode="P"] .block-seminar-calendar .month li{
    font-size: 20px;
    line-height: 29px;
    font-weight: bold;
    text-align: center;
    display: none;
}
html[data-browse-mode="P"] .block-seminar-calendar .month li.active{
    display: block;
}

html[data-browse-mode="P"] .block-seminar-calendar--table{
    display: none;
    border-collapse: collapse;
    border: 1px solid #D2D2D2;
    background-color: #fff;
}
html[data-browse-mode="P"] .block-seminar-calendar--table.active{
    display: table;
}
html[data-browse-mode="P"] .block-seminar-calendar--table th{
    width: 160px;
    height: 30px;
    font-size: 17px;
    line-height: 30px;
    letter-spacing: 0.04em;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #D2D2D2;
}
html[data-browse-mode="P"] .block-seminar-calendar--table tr:nth-child(1) th{
    height: 41px;
    font-size: 20px;
}
html[data-browse-mode="P"] .block-seminar-calendar--table tr th:nth-child(1),
html[data-browse-mode="P"] .block-seminar-calendar--table tr td:nth-child(1){
    color: #FF0000;
}
html[data-browse-mode="P"] .block-seminar-calendar--table tr th:nth-child(7),
html[data-browse-mode="P"] .block-seminar-calendar--table tr td:nth-child(7){
    color: #2054FF;
}
html[data-browse-mode="P"] .block-seminar-calendar--table td{
    width: 160px;
    height: 218px;
    border: 1px solid #D2D2D2;
    padding: 2px 0;
    vertical-align: top;
}
html[data-browse-mode="P"] .block-seminar-calendar--table td > div + div{
    margin-top: 2px;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .date,
html[data-browse-mode="P"] .block-seminar-calendar--table .place{
    display: none;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item{
    height: 107px;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item.instalive_block{
    height: auto;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item > a{
    width: 100%;
    height: 107px;
    padding: 5px 0 12px 7px;
    box-sizing: border-box;
    display: block;
    position: relative;
    transition: 0.3s;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item.instalive_block {
    width: 100%;
    height: auto;
    padding: 5px 0 12px 7px;
    box-sizing: border-box;
    display: block;
    position: relative;
    transition: 0.3s;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item a:hover{
    text-decoration: none;
    opacity: 0.7;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .item a:after{
    content: "";
    width: 8px;
    height: 13px;
    display: block;
    position: absolute;
    right: -12px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../../../img/usr/freepage/calender/icon_link.png);
    background-repeat: no-repeat;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .yellow a{
    border-right: 16px solid #F7EA8F;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .pink a{
    border-right: 16px solid #F7DCE9;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .green a{
    border-right: 16px solid #D4F2BA;
}
html[data-browse-mode="P"] .block-seminar-calendar--table img{
    width: 25px;
    height: 25px;
    margin-right: 8px;
    display: inline-block;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .time{
    font-size: 14px;
    line-height: 25px;
    display: inline-block;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .class{
    font-size: 14px;
    line-height: 20px;
    margin: 4px 0 0;
    display: block;
    font-weight: bold;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .course-type{
    font-size: 14px;
    line-height: 20px;
    margin: 3px 0 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .course-type.line_3{
    -webkit-line-clamp: 3;
    font-size: 14px;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .course-type.line_3 a {
    text-decoration: none !important;
    padding-right: 0px !important;
}
html[data-browse-mode="P"] .block-seminar-calendar--table .course-name{
    font-size: 12px;
    line-height: 17px;
    margin: 1px 0 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
html[data-browse-mode="P"] .block-seminar-calendar--info{
    margin-top: 23px;
    width: 100%;
    display: flex;
    justify-content: flex-end;
}
html[data-browse-mode="P"] .block-seminar-calendar--info .class-type{
    display: inline-block;
    width: 126px;
    height: 32px;
    font-size: 13px;
    line-height: 30px;
    border: 1px solid #D2D2D2;
    margin-left: 10px;
    padding: 0;
    text-align: center;
    font-weight: bold;
}
html[data-browse-mode="P"] .block-seminar-calendar--info .status-list{
    display: flex;
    margin-left: 15px;
}
html[data-browse-mode="P"] .block-seminar-calendar--info .status-list li{
    display: flex;
    align-items: center;
    font-size: 14px;
}
html[data-browse-mode="P"] .block-seminar-calendar--info .status-list li + li{
    margin-left: 10px;
}
html[data-browse-mode="P"] .block-seminar-calendar--info .status-list li img{
    margin-right: 8px;
}
/* SP */
html[data-browse-mode="S"] .block-seminar-calendar{
    width: calc(350 / 375 * 100vw);
    margin: 0 auto;
    padding: 30px 0 35px;
}
html[data-browse-mode="S"] .block-seminar-calendar > h3{
    font-size: 20px;
    line-height: 29px;
    text-align: center;
    font-weight: normal;
    padding: 0;
    margin: 0 0 13px;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar > h3{
        font-size: calc(20 / 375 * 100vw);
        line-height: calc(29 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar > ul{
    width: calc(348 / 375 * 100vw);
    margin: 0 auto 30px;
}
html[data-browse-mode="S"] .block-seminar-calendar > ul > li{
    font-size: 12px;
    line-height: 17px;
    padding-left: 1em;
    text-indent: -1em;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar > ul > li{
        font-size: calc(12 / 375 * 100vw);
        line-height: calc(17 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--nav{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 13px;
}
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-prev,
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-next{
    width: calc(30 / 375 * 100vw);
    max-width: 30px;
    height: calc(30 / 375 * 100vw);
    max-height: 30px;
    display: block;
    color: transparent;
    -webkit-appearance: none;
    outline: none;
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-prev:hover,
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-next:hover{
    opacity: 0.7;
}
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-prev{
    background: url(../../../img/usr/freepage/calender/sp/prev.png) no-repeat;
    background-size: 100% 100%;
}
html[data-browse-mode="S"] .block-seminar-calendar--nav .button-next{
    background: url(../../../img/usr/freepage/calender/sp/next.png) no-repeat;
    background-size: 100% 100%;
}
html[data-browse-mode="S"] .block-seminar-calendar .month li{
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
    text-align: center;
    display: none;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar .month li{
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(24 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar .month li.active{
    display: block;
}
html[data-browse-mode="S"] .block-seminar-calendar--table,
html[data-browse-mode="S"] .block-seminar-calendar--table th{
    display: none;
}
html[data-browse-mode="S"] .block-seminar-calendar--table.active,
html[data-browse-mode="S"] .block-seminar-calendar--table tbody,
html[data-browse-mode="S"] .block-seminar-calendar--table tr,
html[data-browse-mode="S"] .block-seminar-calendar--table td{
    display: block;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .item{
    height: calc(98 / 375 *100vw);
    max-height: 98px;
    margin-bottom: 5px;
    border: 1px solid #D2D2D2;
    overflow: hidden;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .item > a{
    width: 100%;
    height: calc(98 / 375 *100vw);
    max-height: 98px;
    box-sizing: border-box;
    padding-left: 46px;
    display: block;
    position: relative;
    transition: 0.3s;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .item.instalive_block {
    width: 100%;
    height: calc(98 / 375 *100vw);
    max-height: 98px;
    box-sizing: border-box;
    padding-left: 46px;
    display: block;
    position: relative;
    transition: 0.3s;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .item a:hover{
    text-decoration: none;
    opacity: 0.7;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .item a:after{
    content: "";
    width: 8px;
    height: 13px;
    display: block;
    position: absolute;
    right: -15px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../../../img/usr/freepage/calender/sp/icon_link.png);
    background-size: 8px auto;
    background-repeat: no-repeat;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .item a:after{
        right: calc(0px - 15 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--table .yellow a{
    border-right: 22px solid #F7EA8F;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .pink a{
    border-right: 22px solid #F7DCE9;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .green a{
    border-right: 22px solid #D4F2BA;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .yellow a{
        border-right: calc(22 / 375 * 100vw) solid #F7EA8F;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--table .pink a{
        border-right: calc(22 / 375 * 100vw) solid #F7DCE9;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--table .green a{
        border-right: calc(22 / 375 * 100vw) solid #D4F2BA;
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--table img{
    width: calc(25 / 375 * 100vw);
    max-width: 25px;
    height: calc(25 / 375 * 100vw);
    max-height: 25px;
    display: inline-block;
    position: absolute;
    top: 8px;
    left: 8px;
}
@media screen and (max-width: 374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table img{
        top: calc(8 / 375 * 100vw);
        left: calc(8 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--table .date,
html[data-browse-mode="S"] .block-seminar-calendar--table .time{
    font-size: 12px;
    line-height: 17px;
    letter-spacing: 0.04em;
    display: inline-block;
    margin-top: 10px;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .date,
    html[data-browse-mode="S"] .block-seminar-calendar--table .time{
        font-size: calc(12 / 375 * 100vw);
        line-height: calc(17 / 375 * 100vw);
        margin-top: calc(10 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--table .class{
    font-size: 14px;
    line-height: 20px;
    margin: 2px 0 3px;
    display: block;
    font-weight: bold;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .class{
        font-size: calc(14 / 375 * 100vw);
        line-height: calc(20 / 375 * 100vw);
        margin: calc(2 / 375 * 100vw) 0 calc(3 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--table .course{
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    font-size: 12px;
    line-height: 17px;
    width: calc(260 / 375 * 100vw);
    position: relative;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .course-type,
html[data-browse-mode="S"] .block-seminar-calendar--table .course-name{
    font-size: 12px;
    line-height: 17px;
    display: inline;
}
html[data-browse-mode="S"] .block-seminar-calendar--table .place{
    font-size: 12px;
    line-height: 17px;
    display: block;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .course,
    html[data-browse-mode="S"] .block-seminar-calendar--table .course-type,
    html[data-browse-mode="S"] .block-seminar-calendar--table .course-name,
    html[data-browse-mode="S"] .block-seminar-calendar--table .place{
        font-size: calc(12 / 375 * 100vw);
        line-height: calc(17 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--info{
    margin: 15px auto 0;
    width: 100%;
    /* max-width: 350px; */
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
html[data-browse-mode="S"] .block-seminar-calendar--info .class-type{
    display: inline-block;
    width: calc(115 / 375 * 100vw);
    /* max-width: 115px; */
    height: calc(32 / 375 * 100vw);
    max-height: 32px;
    font-size: 13px;
    line-height: 30px;
    border: 1px solid #D2D2D2;
    padding: 0;
    text-align: center;
    font-weight: bold;
    letter-spacing: -0.1em;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--info .class-type{
        font-size: calc(13 / 375 * 100vw);
        line-height: calc(30 / 375 * 100vw);
    }
}
html[data-browse-mode="S"] .block-seminar-calendar--info .status-list{
    display: flex;
    width: 100%;
    /* max-width: 350px; */
    margin: 15px auto 0;
}
html[data-browse-mode="S"] .block-seminar-calendar--info .status-list li{
    width: 25%;
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 17px !important;
    padding-right: 0;
    box-sizing: border-box;
    letter-spacing: -0.1em;
}
html[data-browse-mode="S"] .block-seminar-calendar--info .status-list li img{
    width: calc(20 / 375 * 100vw);
    max-width: 20px;
    margin-right: 6px;
}
@media screen and (max-width:374px) {
    html[data-browse-mode="S"] .block-seminar-calendar--info .status-list li{
        font-size: calc(12 / 375 * 100vw);
        line-height: calc(17 / 375 * 100vw) !important;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--info .status-list li img{
        margin-right: calc(6 / 375 * 100vw);
    }
}

@media screen and (min-width:768px) {
    html[data-browse-mode="P"] .block-seminar-calendar--table .item.instalive_block a:after {
      display: none;
    }
    html[data-browse-mode="P"] .block-seminar-calendar--table .item.instalive_block a {
      border-right: unset;
      padding-right: 16px;
    }
    .gray {
      background-color: #f3f3f3;
    }
    html[data-browse-mode="P"] .block-seminar-calendar--table .instalive_title {
      display: flex;
      align-items: center;
    }
    .course_right {
      text-align: right;
      text-decoration: none;
    }
  } 
  @media screen and (max-width:767px) {
    html[data-browse-mode="S"] .block-seminar-calendar--table .item.instalive_block > a:after {
      display: none;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--table .item.instalive_block > a {
      border-right: unset;
      padding-right: 22px;
    }
    .gray {
      background-color: #f3f3f3;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--table .instalive_title {
      display: flex;
      align-items: center;
    }
    html[data-browse-mode="S"] .block-seminar-calendar--table .instalive_title img {
      position: relative;
      top: 0;
      left: 0;
      margin-right:3%;
    }
    .course_right {
      position: absolute;
      bottom: 5%;
      right: 3%;
      text-decoration: none;
    }
    .line_3 a {
        text-decoration: none !important;
    }
  }