/* カスタマイズ用CSS */

/* !Clearfix
---------------------------------------------------------- */
.clearfix {
    display: block;
    min-height: 1%;
}

.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

* html .clearfix {
    height: 1%;
    /*\*/
    /*/
	height: auto;
	overflow: hidden;
	/**/
}

.pc {
    display: block !important;
}

.sp {
    display: none !important;
}

@media screen and (max-width: 767px) {
    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }
}

/* !Layout
---------------------------------------------------------- */
/* html { 
	overflow-y: scroll;
	font-size: 62.5%;
} */
body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    -webkit-text-size-adjust: none;
    line-height: 1.5;
    color: #000;
}

.Roboto {
    font-family: 'Roboto', sans-serif;
}

.inner {
    max-width: 1540px;
    padding: 0 50px;
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
}

.mod-contact {
    background: #efefef;
    padding: 1rem 0;
    display: none;
}

.mod-contact .container {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    box-sizing: border-box;
}

.mod-contact .txt-desc {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.4;
}

.mod-contact .txt-freedial {
    margin-left: 1rem;
    max-width: 30%;
    min-width: 150px;
}

.mod-contact .txt-freedial a img {
    width: 100%;
}

@media (max-width: 767px) {
    .mod-contact {
        display: block;
    }
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .inner {
        max-width: 100%;
        padding: 0 20px;
    }
}

/*-----▼header-----*/
.ec-layoutRole__header {
    display: block;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 999;
    background: #fff;
}

.ec-headerRole {
    padding: 10px 0;
    font-size: 0;
    line-height: 1;
    max-width: none;
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
}

.ec-headerTitle .ec-headerTitle__title a {
    display: block;
    margin-bottom: 0;
    font-size: 0;
}

.ec-headerTitle .ec-headerTitle__title img {
    height: 35px;
    width: auto;
    max-width: none;
}

.ec-headerSearch__button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    padding: 0;
    width: 42px;
    height: 55px;
    font-size: 0.8rem;
    text-align: center;
    color: #444444;
    background: #fff;
    position: absolute;
    top: 0;
    left: 65px;
    z-index: 1000;
}

#search_button_sp{
    border: none;
    background: transparent;
    padding: 0;
}

.ec-headerNaviRole {
    padding: 0;
    display: block;
}

.ec-headerNavSP {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    padding: 0;
    width: 45px;
    height: 55px;
    font-size: 0.8rem;
    text-align: center;
    color: #444444;
    background: #fff;
    position: absolute;
    top: 0;
    left: auto;
    right: 13px;
    z-index: 1000;
}

.ec-headerSearch__button img,
.ec-headerNavSP img {
    height: 15px;
    display: block;
    margin-bottom: 4px;
}

.txt_red dt,
.txt_red dd{
    color: #C4271F !important;
}

.search_button{
    display: none;
}

.search_button button{
    border: 0;
    width: 120px;
    height: 50px;
    white-space: nowrap;
    z-index: 1;
    background: #C4271F;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 25px;
    margin-right: 0;
    margin-left: auto;
}

.search_button button span{
    margin-left: 6px;
    color: white;
}

.ec-headerNaviRole__nav .ec-headerNav:nth-child(1) {
    position: absolute;
    right: 57px;
    top: 0;
    z-index: 2;
}

.ec-headerNaviRole__nav .ec-headerNav:nth-child(2) {
    position: absolute;
    left: 15px;
    top: 0;
    z-index: 2;
}

.ec-headerNaviRole__nav .ec-headerNav a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 55px;
    height: 55px;
    font-size: 0.8rem;
    text-align: center;
    color: #444444;
    background: #fff;
}

.ec-headerNaviRole__nav .ec-headerNav a:hover {
    transition: all 0.5s;
    text-decoration: underline;
    text-decoration: none;
}

.ec-headerNav .ec-headerNav__itemLink {
    display: block;
    margin-right: 0;
    font-size: 0.8rem;
    color: #444444;
}

.ec-headerNav .ec-headerNav__item img {
    height: 15px;
    width: auto;
    display: block;
    margin-bottom: 4px;
}

.bg-load-overlay {
    display: none;
    opacity: 0;
    width: 0;
    height: 0;
}

@media only screen and (min-width: 768px) {
    .ec-layoutRole__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
        padding: 0 50px;
    }

    .ec-headerRole {
        padding: 11px 0;
        font-size: 0;
        line-height: 1;
        max-width: none;
        position: relative;
        display: block;
        width: auto;
        margin: 0;
    }

    .ec-headerTitle .ec-headerTitle__title a {
        font-size: 0;
    }

    .ec-headerTitle .ec-headerTitle__title img {
        height: 58px;
        width: 100%;
        max-width: 180px;
    }

    .ec-headerNaviRole {
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: flex-end;
        width: 51.04%;
    }

    .ec-headerSearch__button {
        display: none;
    }

    .ec-headerNaviRole .ec-headerNaviRole__nav {
        display: flex;
        align-items: center;
    }

    .ec-headerNaviRole__nav .ec-headerNav:nth-child(1),
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) {
        position: relative;
        left: 0;
        display: flex;
    }

    .ec-headerNavSP,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(1) a,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) a {
        width: auto;
        height: auto;
        text-align: center;
        color: #444444;
        background: #fff;
        margin-left: 30px;
    }

    .ec-headerNav .ec-headerNav__item img {
        height: 17px;
        margin-bottom: 0;
        margin-right: 10px;
    }

    .ec-headerNav .ec-headerNav__itemLink {
        font-size: 1.7rem;
        line-height: 1;
    }

    .ec-headerNaviRole__nav .ec-headerNav .ec-headerNav__itemLink {
        font-size: 1.1rem;
        white-space: nowrap;
    }

    .ec-headerNav__itemMenu{
        font-size: 1.1rem;
        white-space: nowrap;
        line-height: 1;
    }

    .ec-headerNaviRole__nav .ec-headerNav .ec-headerNav__item img {
        height: 45px;
        margin-bottom: 5px;
        margin-right: 0;
    }

    .ec-headerNavSP {
        /* width: 66px; */
        /* height: 80px; */
        width: auto;
        height: auto;
        font-size: 1.1rem;
        position: relative;
        left: auto;
        right: 0;
        /* padding-top: 10px; */
        margin-left: 30px;
    }

    .ec-headerNavSP img {
        height: 45px;
        margin-bottom: 5px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__left {
        width: 80%;
        max-width: 450px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__right {
        width: auto;
    }

    .ec-headerNaviRole .ec-headerNaviRole__search {
        display: block;
        margin-top: 0;
    }

    .ec-headerSearch .ec-headerSearch__category {
        float: left;
        width: 150px;
    }

    .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
        border-top-right-radius: inherit;
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px;
        background: #4E4E4E;
    }

    .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {
        top: 50%;
        right: 10px;
        border-left: 3px solid transparent;
        border-right: 3px solid transparent;
        border-top: 4px solid #fff;
        transform: translateY(-50%);
    }

    .ec-headerSearch .ec-headerSearch__category .ec-select select {
        max-width: 150px;
        height: 40px;
        padding: 8px 24px 8px 8px;
    }

    .ec-headerSearch .ec-headerSearch__keyword {
        float: none;
        width: auto;
        overflow: hidden;
        border: 1px solid #CCCCCC;
        border-radius: 25px;
    }

    .ec-headerSearch .ec-headerSearch__keyword input[type="search"] {
        width: 100%;
        height: 50px;
        font-size: 1.5rem;
    }

    .ec-headerSearch .ec-headerSearch__keywordBtn {
        border: 0;
        /* width: 50px; */
        width: 120px;
        height: 50px;
        position: absolute;
        right: 0;
        top: 0;
        transform: translateY(0);
        white-space: nowrap;
        z-index: 1;
        background: #C4271F;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 25px;
    }

    .ec-headerSearch .ec-headerSearch__keywordBtn span{
        margin-left: 6px;
        color: white;
    }

    .ec-headerSearch .ec-headerSearch__keyword .ec-icon {
        width: 16px;
        height: 16px;
        margin: 0;
        padding: 0;
        vertical-align: top;
        line-height: 0;
    }

    .ec-headerSearch .ec-headerSearch__keyword .ec-icon img {
        width: 16px;
        height: 16px;
    }

}

.ec-drawerRole {
    background: #fff;
    width: 250px;
    padding: 15px;
    left: auto;
    right: 0;
    transform: translateX(100%);
}

.ec-drawerRoleClose {
    border-radius: 0;
    padding: 10px;
    width: 40px;
    height: 40px;
    font-size: 0;
    background: none;
    top: 10px;
    left: auto;
    right: 270px;
}

.ec-overlayRole {
    z-index: 1000;
}

.have_curtain .ec-overlayRole {
    display: block;
    opacity: 1;
    background: rgba(0, 0, 0, 0.5);
    visibility: visible;
}

.ec-drawerRole .ec-headerLinkArea {
    background: none;
    margin-top: 30px;
}

.ec-drawerRole .ec-headerLinkArea .ec-headerLinkArea__heading {
    font-size: 1.4rem;
    color: #C4271F;
    font-weight: bold;
    line-height: 1.5;
    padding-left: 5px;
}

.ec-itemNav__nav li a {
    padding: 10px 20px 10px 5px;
    color: #000000;
    font-size: 1.2rem;
    line-height: 1.5;
    border-bottom: 1px solid #DDDDDD;
    background: url("../img/common/icon_link_right.svg") right 10px center no-repeat #fff;
}

.ec-itemNav__nav li a:hover {
    background: url("../img/common/icon_link_right.svg") right 10px center no-repeat #fafafa;
}

.ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {
    border-top: 0;
}

.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
    display: block;
    border-bottom: 0;
    padding: 0;
    font-size: 1rem;
    font-weight: normal;
    color: #000000;
    line-height: 1.5;
    margin-bottom: 8px;
}

@media only screen and (min-width: 768px) {
    .ec-drawerRoleClose {
        top: 15px;
        right: 540px;
    }

    .ec-drawerRoleClose.is_active {
        display: inline-block;
    }

    .ec-drawerRole {
        width: 500px;
        padding: 30px;
    }

    .ec-drawerRole.is_active {
        display: block;
    }

    .ec-itemNav__nav {
        display: block;
    }

    .ec-itemNav__nav li {
        float: none;
        width: 100%;
    }

    .ec-itemNav__nav li a {
        padding: 14px 20px 14px 10px;
        font-size: 1.6rem;
        text-align: left;
    }

    .ec-drawerRole .ec-headerLinkArea {
        margin-top: 60px;
    }

    .ec-drawerRole .ec-headerLinkArea .ec-headerLinkArea__heading {
        font-size: 1.8rem;
        padding-left: 10px;
    }

    .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
        font-size: 1.3rem;
        margin-bottom: 16px;
    }
}

/*-----▲header-----*/

/*-----▼footer-----*/

.ec-blockTopBtn {
    display: none !important;
}

.ec-footerRole {
    border-top: 0;
    margin-top: 0;
    background: #262626;
    padding-bottom: 60px;
}

.ec-footerTitle {
    padding: 45px 0 35px;
}

.ec-footerTitle .ec-footerTitle__logo {
    margin-bottom: 0;
}

.ec-footerTitle .ec-footerTitle__logo img {
    width: auto;
    max-width: none;
    height: 57px;
}

.ec-footerTel {
    border-top: 1px solid #EEEEEE;
    border-bottom: 1px solid #EEEEEE;
    text-align: center;
    padding: 40px 0 35px;
}

.ec-footerTel .ec-footerTel__link {
    margin-bottom: 15px;
}

.ec-footerTel .ec-footerTel__link img {
    width: auto;
    max-width: none;
    height: 21px;
}

.ec-footerTel .ec-footerTel__notes {
    font-size: 1rem;
    line-height: 1;
    color: #fff;
}

.ec-footerLogin .ec-footerLogin__notes {
    display: none;
}

.ec-footerLogin .ec-footerLogin__links {
    border-bottom: 1px solid #EEEEEE;
    background: #464646;
}

.ec-footerLogin .ec-footerLogin__links a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 60px;
    padding: 0 20px;
    font-size: 1.3rem;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    background: url("../img/common/icon_link_white.svg") right 20px center no-repeat;
    background-size: 5px auto;
}

.ec-footerNavi__item {
    border-bottom: 1px solid #EEEEEE;
    background: #464646;
}

.ec-footerNavi__item .ec-footerNavi__itemTitle {
    display: flex;
    align-items: center;
    width: 100%;
    height: 60px;
    padding: 0 20px;
    font-size: 1.3rem;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    background: url("../img/common/icon_down_white.svg") right 20px center no-repeat;
    background-size: 10px auto;
}

.ec-footerNavi__item .ec-footerNavi__itemTitle.is_active {
    background: url("../img/common/icon_up_white.svg") right 20px center no-repeat;
    background-size: 10px auto;
}

.ec-footerNavi__item .ec-footerNavi__link {
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}

.ec-footerNavi .ec-footerNavi__link a {
    border-bottom: 0;
    border-top: 1px solid #EEEEEE;
    text-align: left;
    padding: 15px 40px;
}

.ec-footerNavi .ec-footerNavi__link a img {
    width: 100%;
}

.ec-footerNavi .ec-footerNavi__linkBlank {
    display: inline-block;
    padding-right: 30px;
    background: url("../img/common/icon_blank.svg") right center no-repeat;
    background-size: 12px auto;
    margin-top: 5px;
}

.ec-footerTitle__copyright {
    background: #C4271F;
    text-align: center;
    font-size: 1rem;
    line-height: 2;
    padding: 15px 0;
    color: #fff;
}

@media only screen and (min-width: 768px) {
    .ec-blockTopBtn {
        display: block !important;
        opacity: 1 !important;
        position: relative;
        width: 100%;
        height: 76px;
        bottom: 0;
        right: 0;
        line-height: 1;
        background-color: #fff;
        margin-bottom: 40px;
    }

    .ec-footerRole {
        padding: 90px 0;
        position: relative;
        z-index: 100;
    }

    .ec-footerRole .ec-footerRole__inner {
        width: 100%;
        max-width: 1480px;
        display: flex;
        justify-content: space-between;
    }

    .ec-footerRole .ec-footerRole__inner:after {
        display: none;
    }

    .ec-footerRole .ec-footerArea {
        width: 293px;
    }

    .ec-footerTitle {
        padding: 0 0 40px;
    }

    .ec-footerTitle .ec-footerTitle__logo img {
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    .ec-footerTel {
        border-top: 1px solid #EEEEEE;
        border-bottom: 1px solid #EEEEEE;
        text-align: center;
        padding: 25px 0 30px;
        margin-bottom: 40px;
    }

    .ec-footerTel .ec-footerTel__link {
        margin-bottom: 20px;
    }

    .ec-footerTel .ec-footerTel__link a {
        pointer-events: none;
    }

    .ec-footerTel .ec-footerTel__link img {
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    .ec-footerTel .ec-footerTel__notes {
        font-size: 1.1rem;
    }

    .ec-footerLogin .ec-footerLogin__notes {
        display: block;
        color: #fff;
        text-align: center;
        font-size: 1.3rem;
        line-height: 1.5;
        margin-bottom: 15px;
    }

    .ec-footerLogin .ec-footerLogin__links {
        border-bottom: 0;
    }

    .ec-footerLogin .ec-footerLogin__links a {
        justify-content: center;
        font-size: 1.5rem;
        font-weight: normal;
        background: #262626;
        border: 1px solid #fff;
    }

    .ec-footerLogin .ec-footerLogin__links a:hover {
        opacity: .7;
        text-decoration: none;
    }

    .ec-footerLogin .ec-footerLogin__newMember {
        margin-bottom: 40px;
    }

    .ec-footerLogin .ec-footerLogin__newMember .ec-footerLogin__links a {
        background: #fff;
        color: #C4271F;
    }

    .ec-footerNavi {
        width: calc(100% - 400px);
        text-align: left;
        display: flex;
        justify-content: space-between;
    }

    .ec-footerNavi__item {
        border-bottom: 0;
        background: none;
        width: 23.4%;
    }

    .ec-footerNavi__item .ec-footerNavi__itemTitle {
        display: block;
        width: 100%;
        height: auto;
        padding: 0 0 20px;
        font-size: 1.5rem;
        line-height: 1.5;
        font-weight: bold;
        color: #fff;
        background: none;
        border-bottom: 2px solid #fff;
        pointer-events: none;
    }

    .ec-footerNavi__item .ec-footerNavi__itemTitle.is_active {
        background: none;
    }

    .ec-footerNavi__item .ec-footerNavi__link {
        display: block;
        padding-top: 20px;
    }

    .ec-footerNavi__item .ec-footerNavi__link .ec-footerNavi__linkItem {
        margin-top: 20px;
    }

    .ec-footerNavi .ec-footerNavi__link a {
        border-bottom: 0;
        border-top: 0;
        text-align: left;
        padding: 0;
        text-decoration: none;
        margin: 0;
    }

    .ec-footerNavi .ec-footerNavi__link:hover a {
        opacity: 1;
    }

    .ec-footerNavi .ec-footerNavi__link a:hover {
        text-decoration: underline;
    }

    .ec-footerNavi .ec-footerNavi__link a img {
        width: 100%;
    }

    .ec-footerNavi .ec-footerNavi__linkBlank {
        display: inline-block;
        padding-right: 40px;
        background: url("../img/common/icon_blank.svg") right center no-repeat;
        background-size: 16px auto;
        margin-top: 15px;
    }

    .ec-footerTitle__copyright {
        font-size: 1.4rem;
        line-height: 1.5;
        padding: 11px 0;
    }
}

/*-----▲footer-----*/

/*-----▼side-----*/
.ec-layoutRole .ec-layoutRole__left {
    display: none;
}

@media only screen and (min-width: 768px) {
    .ec-layoutRole .ec-layoutRole__left {
        display: block;
        position: fixed;
        width: 250px;
        left: 0;
        bottom: 0;
        height: calc(100vh - 80px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box;
        padding-top: 30px;
        z-index: 2;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
    }

    .ec-layoutRole .ec-layoutRole__left.is_stop {
        position: absolute;
    }

    .ec-layoutRole .ec-sideItem {
        margin-bottom: 40px;
    }

    .ec-layoutRole .ec-sideTitle {
        padding: 0 15px;
    }

    .ec-layoutRole .ec-sideTitle .ec-sideTitle__title {
        border-left: 8px solid #fff;
        padding-left: 10px;
        font-size: 2.2rem;
        font-weight: bold;
        line-height: 1.5;
    }

    .ec-layoutRole .ec-sideTitle .ec-sideTitle__title a {
        display: block;
        color: #000000;
    }

    .ec-layoutRole .ec-sideTitle .ec-title__bordrRed {
        border-left-color: #C4271F;
    }

    .ec-layoutRole .ec-sideTitle .ec-title__bordrGreen {
        border-left-color: #118915;
    }

    .ec-layoutRole .ec-sideTitle .ec-title__bordrGray {
        border-left-color: #747474;
    }

    .ec-layoutRole .ec-sideTitle .ec-title__bordrBlue {
        border-left-color: #0E66BF;
    }

    .ec-layoutRole .ec-sideTitle .ec-title__bordrBlack {
        border-left-color: #111;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav {
        height: auto;
        margin-top: 20px;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav>li>a {
        padding: 19px 30px 19px 20px;
        font-weight: normal;
        background: url("../img/common/icon_plus.svg") right 15px center no-repeat;
        background-size: 13px auto;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav>li>a.is_active {
        background: url("../img/common/icon_less.svg") right 15px center no-repeat;
        background-size: 13px auto;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav ul {
        position: relative;
        top: 0;
        left: 0;
        max-width: 100%;
        padding: 10px 0;
        background: #EFEFEF;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        max-height: 500px;
        display: none;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav li ul li {
        overflow: hidden;
        height: auto;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav li ul li a {
        border-bottom: 0;
        padding: 8px 26px;
        font-size: 1.4rem;
        line-height: 1.5;
        font-weight: normal;
        color: #000;
        text-align: left;
        background: none;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav li ul li a:hover {
        transition: all 0.5s;
        text-decoration: underline;
    }

    .ec-layoutRole .ec-sideItem .ec-itemNav__nav li ul li:first-child a {
        font-weight: bold;
    }
}

/*-----▲side-----*/
/*-----▼css中身-----*/
.ec-layoutRole__contents {
    padding-left: 250px;
    position: relative;
    max-width: none !important;
}

.ec-layoutRole {
    padding-top: 80px;
}

#page_homepage .ec-layoutRole .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_homepage .ec-sliderRole {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .ec-layoutRole {
        padding-top: 55px;
    }
#page_homepage .ec-layoutRole .ec-layoutRole__contents {
    margin-bottom: 30px;
}
}

.main_visual .slider-for {
    border: 1px solid #CCCCCC;
    box-sizing: border-box;
}

.main_visual .slider-nav {
    padding: 0 40px;
    box-sizing: border-box;
    margin: 30px 0 20px;
}

.main_visual .silderItem {
    margin: 0 10px;
    box-sizing: border-box;
    position: relative;
}

.main_visual .silderItem.slick-active:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: '';
    background: rgba(0, 0, 0, 0.5);
    transition: all 0.5s;
}

.main_visual .silderItem.slick-current:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: '';
    background: transparent;
    transition: all 0.5s;
}

.main_visual .main_image {
    display: flex;
    margin: 10px;
}

.main_visual .sub_image {
    display: flex;
    margin: 10px;
}

.main_visual .main_image p{
    width: 50%;
}

.main_visual .sub_image div{
    width: 25%;
}

.ec-searchRole {
    background-color: rgba(221, 126, 122, 0.1);
    padding: 30px 0 35px;
    box-sizing: border-box;
}

.ec-HdL {
    text-align: center;
}

.ec-HdL em {
    font-weight: bold;
    font-style: initial;
}

.ec-HdL span {
    display: block;
    color: #C4271F;
    font-size: 5rem;
    font-weight: bold;
    line-height: 1.34;
    letter-spacing: 0.1em;
}

.ec-HdL p {
    display: inline-block;
    color: #020202;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    position: relative;
    padding-bottom: 23px;
}

.ec-HdL p:before {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: #0A0A0A;
    width: 329px;
    height: 1px;
    content: '';
    text-align: center;
}

.product_page .ec-searchRole__list {
    padding-top: 40px;
}

.ec-searchRole__list {
    padding-bottom: 30px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 25px;
}

.ec-searchRole__list form {
    display: flex;
    align-items: center;
}

.ec-searchRole__itemSelect span {
    display: inline-block;
    border: 1px solid #CCCCCC;
    font-size: 1.8rem;
    color: #333333;
    height: 61px;
    line-height: 61px;
    width: 239px;
    z-index: 10;
    position: relative;
    background: url('../../../../html/user_data/assets/img/top/arrow_svg.svg')no-repeat right 17px center;
    background-size: 9px auto;
    background-color: #fff;
    box-sizing: border-box;
    border-radius: 4px;
}

.ec-searchRole__itemSelect select {
    width: 100%;
    border: 0;
    padding: 0 30px 0 18px;
    box-sizing: border-box;
    background: none;
    font-size: 1.8rem;
    color: #333333;
    height: 61px;
    line-height: 61px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.ec-searchRole__itemTxt {
    margin: 0 15px;
    width: 70%;
}

.ec-searchRole__itemTxt input[type=text] {
    display: inline-block;
    border: 1px solid #CCCCCC;
    height: 61px;
    line-height: 61px;
    width: 100%;
    background-color: #fff;
    padding: 0 20px;
    box-sizing: border-box;
    border-radius: 4px;
    font-size: 1.8rem;
}

.searchRole__itemTxt input::-webkit-input-placeholder {
    color: #888888;
    font-size: 1.8rem;
}

.searchRole__itemTxt input:-moz-placeholder {
    color: #888888;
    font-size: 1.8rem;
}

.searchRole__itemTxt input::-moz-placeholder {
    color: #888888;
    font-size: 1.8rem;
}

.searchRole__itemTxt input:-ms-input-placeholder {
    color: #888888;
    font-size: 1.8rem;
}

.ec-searchRole__itemSubmit input[type=submit] {
    display: inline-block;
    height: 61px;
    line-height: 63px;
    width: 133px;
    background: url('../../../../html/user_data/assets/img/common/icon_serch_white.svg')no-repeat left 34px center;
    background-color: #C4271F;
    border-radius: 4px;
    color: #fff;
    font-size: 1.9rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    border: 0;
    text-align: left;
    padding: 0 0 0 60px;
    box-sizing: border-box;
}

.ec-searchRole__itemTel {
    margin-left: 40px;
    width: 50%;
}

.ec-searchRole__itemTel img {
    width: 100%;
    max-width: 400px;
    min-width: 200px;
}

.ec-searchRole__tips {}

.ec-searchRole__tips p {
    font-size: 2.5rem;
    font-weight: bold;
    padding-bottom: 7px;
}

.ec-searchRole__tips_icon {}

.ec-searchRole__tips_icon a {
    margin: 10px 6px 0;
    border-radius: 30px;
    background-color: #F7D7D7;
    font-size: 2.3rem;
    padding: 0px 23px;
    box-sizing: border-box;
    display: inline-block;
    color: #C4271F;
}

.ec-searchRole__tips_icon a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}


.ec-pointRole {
    padding: 82px 0 0;
}

.ec-pointRole__list {
    padding: 43px 0 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ec-pointRole__box {
    margin: 0 0 70px 0;
    flex: 0 0 46.38%;
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(69, 69, 69, 0.16);
    padding: 45px 25px 30px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    position: relative;
}

.ec-pointRole__box dl {
    display: table;
    width: 100%;
    margin: 0;
}

.ec-pointRole__box dl dt,
.ec-pointRole__box dl dd {
    display: table-cell;
    vertical-align: middle;
}

.ec-pointRole__box dl dt {
    width: calc(100% - 210px);
}

.ec-pointRole__box dl dd {
    width: 210px;
    padding-left: 10px;
    box-sizing: border-box;
}

.ec-pointRole__box dl dd img {
    width: 100%;
}

.ec-pointRole__txt {
    font-size: 1.9rem;
    color: #020202;
    font-weight: bold;
    margin-bottom: 20px;
}

.ec-pointRole__sub {
    display: inline-block;
}

.ec-pointRole__sub img {
    width: 100%;
}

.ec-pointRole__box:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-top: 88px solid #C4271F;
    border-right: 88px solid transparent;
    content: '';
}

.ec-pointRole__box:after {
    position: absolute;
    left: 5px;
    top: 5px;
    width: 44px;
    height: 44px;
    color: #fff;
    font-weight: bold;
    font-size: 2.9rem;
    font-family: 'Roboto', sans-serif;
    content: '1';
    display: flex;
    align-items: center;
    justify-content: center;
}

.ec-pointRole__box.font02:after {
    content: '2';
}

.ec-pointRole__box.font03:after {
    content: '3';
}

.ec-pointRole__box.font04:after {
    content: '4';
}


.ec-lineupRole {
    padding: 112px 0 100px;
}

.tab_content {
    position: absolute;
    left: -200%;
    z-index: 1;
    margin-top: 52px;
    width: 100%;
    word-break: break-all;
}

.show {
    position: relative;
    left: 0;
    z-index: 2;
}

.tabWrap {
    margin-top: 50px;
}

.tabList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.tabCtrl p {
    flex: 0 0 20%;
}

.tabCtrl p a {
    display: block;
    text-align: center;
    color: #fff;
    background-color: #C1C1C1;
    padding: 29px 0;
    border-left: 1px solid #fff;
    box-sizing: border-box;
    transition: all 0.5s;
    text-decoration: none;
}

.tabCtrl p a.btnAcv {
    background-color: #C4271F;
}

.tabCtrl p a.color02.btnAcv {
    background-color: #008915;
}

.tabCtrl p a.color03.btnAcv {
    background-color: #747474;
}

.tabCtrl p a.color04.btnAcv {
    background-color: #0066be;
}

.tabCtrl p a.color05.btnAcv {
    background-color: #2b2b2b;
}

.tabItem dl {
    display: table;
    width: 100%;
    margin: 0;
}

.tabItem dl dt,
.tabItem dl dd {
    display: table-cell;
    vertical-align: middle;
}

.tabItem dl dt {
    width: 602px;
}

.tabItem dl dt img {
    width: 100%;
}

.tabItem dl dd {
    padding-left: 71px;
    box-sizing: border-box;
}


.tabSlider {
    width: 602px;
}


.tabItemSub {
    margin-bottom: 10px;
}

.tabItemSub span {
    color: #fff;
    background-color: #C4271F;
    display: inline-block;
    border-radius: 13px;
    position: relative;
    padding: 6px 17px;
    box-sizing: border-box;
    font-weight: bold;
}

.tabItemSub span:before {
    position: absolute;
    left: 10px;
    bottom: -11px;
    width: 0;
    height: 0;
    content: "";
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 16px solid #C4271F;
    transform: rotate(-16deg);
}

.tabItemSub01 span {
    background-color: #008915;
}

.tabItemSub01 span:before {
    border-top: 16px solid #008915;
}

.tabItemSub02 span {
    background-color: #747474;
}

.tabItemSub02 span:before {
    border-top: 16px solid #747474;
}

.tabItemSub03 span {
    background-color: #0066be;
}

.tabItemSub03 span:before {
    border-top: 16px solid #0066be;
}

.tabItemSub04 span {
    background-color: #2b2b2b;
}

.tabItemSub04 span:before {
    border-top: 16px solid #2b2b2b;
}



.tabItemTitle {
    color: #020202;
    font-weight: bold;
    font-size: 3.3rem;
    padding-bottom: 20px;
    position: relative;
}

.tabItemTitle:before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 30px;
    height: 2px;
    content: "";
    background-color: #CCCCCC;
}

.tabItemTxt {
    line-height: 1.625;
    font-size: 1.6rem;
    margin: 20px 0 43px;
}

.tabItemBtn {}

.tabItemBtn a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 289px;
    height: 62px;
    color: #C4271F;
    font-weight: bold;
    font-size: 1.7rem;
    border-radius: 5px;
    border: 1px solid #C4271F;
    letter-spacing: 0.07em;
    position: relative;
}

.tabItemBtn a:before {
    position: absolute;
    right: 24px;
    bottom: 0;
    top: 0;
    margin: auto;
    content: "";
    width: 7px;
    height: 7px;
    border-top: 1px solid #C4271F;
    border-right: 1px solid #C4271F;
    transform: rotate(45deg);
}

.tabItemBtn a:hover {
    transition: all 0.5s;
    text-decoration: none;
    color: #fff;
    background: #C4271F;
}

.tabItemBtn a:hover:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}

.tabItemBtnColor02 a {
    color: #008915;
    border: 1px solid #008915;
}

.tabItemBtnColor02 a:before {
    border-top: 1px solid #008915;
    border-right: 1px solid #008915;
}

.tabItemBtnColor02 a:hover {
    color: #fff;
    background: #008915;
}

.tabItemBtnColor03 a {
    color: #747474;
    border: 1px solid #747474;
}

.tabItemBtnColor03 a:before {
    border-top: 1px solid #747474;
    border-right: 1px solid #747474;
}

.tabItemBtnColor03 a:hover {
    color: #fff;
    background: #747474;
}

.tabItemBtnColor04 a {
    color: #0066be;
    border: 1px solid #0066be;
}

.tabItemBtnColor04 a:before {
    border-top: 1px solid #0066be;
    border-right: 1px solid #0066be;
}

.tabItemBtnColor04 a:hover {
    color: #fff;
    background: #0066be;
}

.tabItemBtnColor05 a {
    color: #2b2b2b;
    border: 1px solid #2b2b2b;
}

.tabItemBtnColor05 a:before {
    border-top: 1px solid #2b2b2b;
    border-right: 1px solid #2b2b2b;
}

.tabItemBtnColor05 a:hover {
    color: #fff;
    background: #2b2b2b;
}







.ec-lineupRole__list {
    margin: 48px 0 0 -17px;
}

.ec-lineupRole__list p {
    float: left;
    width: 16.66%;
    padding-left: 17px;
    box-sizing: border-box;
    margin: 0 0 17px 0;
}

.ec-lineupRole__list p span {
    display: block;
    border: 1px solid #DDDDDD;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 229px;
}

.ec-lineupRole__list p span img {
    width: 80%;
}

.ec-lineupRole__list p a {
    display: block;
}

.ec-lineupRole__list p a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}




.ec-rankingRole {
    background-color: #F4F4F4;
    padding: 62px 0 94px;
}

.ec-rankingRole__box {
    padding: 50px 0 0;
}

.ec-rankingRole__right {
    width: 100%;
}

.ec-rankingRole__left ul li img {
    width: 100%;
}

.ec-rankingRole__box ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ec-rankingRole__list a {
    display: block;
}

.ec-rankingRole__list a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-rankingRole__right ul {
    margin-left: -57px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ec-rankingRole__right ul li {
    float: left;
    width: 20%;
    padding-left: 57px;
    box-sizing: border-box;
    margin-bottom: 17px;
}

.ec-rankingRole__right ul li img {
    width: 100%;
}

.ec-rankingRole__img {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ec-rankingRole__icon {
    text-align: center;
    margin-bottom: 14px;
}

.ec-rankingRole__icon span {
    display: inline-block;
    background: url('../../../../html/user_data/assets/img/top/ranking_00.svg')no-repeat center bottom;
    color: #C4271F;
    font-size: 1.8rem;
    padding: 34px 22px 3px 22px;
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif;
    line-height: 1;
}

.ec-rankingRole__icon span.span01 {
    background: url('../../../../html/user_data/assets/img/top/ranking_01.svg')no-repeat center bottom;
    color: #fff;
}

.ec-rankingRole__icon span.span02 {
    background: url('../../../../html/user_data/assets/img/top/ranking_02.svg')no-repeat center bottom;
    color: #fff;
}

.ec-rankingRole__icon span.span03 {
    background: url('../../../../html/user_data/assets/img/top/ranking_03.svg')no-repeat center bottom;
    color: #fff;
}

.ec-rankingRole__sub {
    font-size: 1.6rem;
    padding: 10px 0 14px;
    text-align: center;
    color: #000;
}

.ec-rankingRole__price {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}

/* 2点セット */
.ec-2setRole {
    padding: 94px 0;
}

.ec-2setRole__title {
    text-align: center;
    color: #020202;
    font-size: 3rem;
    font-weight: bold;
}

.ec-2setRole__box {
    padding: 50px 0 0;
}

.ec-2setRole__right {
    width: 100%;
}

.ec-2setRole__left ul li img {
    width: 100%;
}

.ec-2setRole__box ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ec-2setRole__list {
    padding: 25px;
    border: 2px #f4f4f4 solid;
}

.ec-2setRole__list a {
    display: block;
}

.ec-2setRole__list a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-2setRole__right ul {
    margin-left: -57px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ec-2setRole__right ul li {
    float: left;
    width: 25%;
    padding-left: 57px;
    box-sizing: border-box;
    margin-bottom: 17px;
}

.ec-2setRole__right ul li img {
    width: 100%;
}

.ec-2setRole__img {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ec-2setRole__btn {
    font-size: 1.3rem;
    color: #C4271F;
    font-weight: bold;
    text-align: center;
    border: 1px #C4271F solid;
    border-radius: 20px;
    padding: 5px;
}

.ec-2setRole__icon {
    text-align: center;
    margin-bottom: 14px;
}

.ec-2setRole__icon span {
    display: inline-block;
    background: url('../../../../html/user_data/assets/img/top/ranking_00.svg')no-repeat center bottom;
    color: #C4271F;
    font-size: 1.8rem;
    padding: 34px 22px 3px 22px;
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif;
    line-height: 1;
}

.ec-2setRole__icon span.span01 {
    background: url('../../../../html/user_data/assets/img/top/ranking_01.svg')no-repeat center bottom;
    color: #fff;
}

.ec-2setRole__icon span.span02 {
    background: url('../../../../html/user_data/assets/img/top/ranking_02.svg')no-repeat center bottom;
    color: #fff;
}

.ec-2setRole__icon span.span03 {
    background: url('../../../../html/user_data/assets/img/top/ranking_03.svg')no-repeat center bottom;
    color: #fff;
}

.ec-2setRole__sub {
    font-size: 1.6rem;
    padding: 10px 0 0;
    text-align: center;
    color: #000;
}

.ec-2setRole__price {
    font-size: 1.6rem;
    padding: 0 0 10px;
    color: #C4271F;
    font-weight: bold;
    text-align: center;
}
/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-2setRole__title{
        font-size: 2rem;
    }
}
/* 2点セット */

/* トップ-マット */
.ec-matRole {
    padding: 40px 0 0;
}

.ec-matRole__title {
    text-align: center;
    color: #020202;
    font-size: 3rem;
    font-weight: bold;
}

.ec-matRole__box {
    padding: 50px 0 0;
}

.ec-matRole__right {
    width: 100%;
}

.ec-matRole__left ul li img {
    width: 100%;
}

.ec-matRole__box ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ec-matRole__list {
    padding: 25px;
    border: 2px #f4f4f4 solid;
}

.ec-matRole__list a {
    display: block;
}

.ec-matRole__list a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-matRole__right ul {
    margin-left: -57px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ec-matRole__right ul li {
    float: left;
    width: 25%;
    padding-left: 57px;
    box-sizing: border-box;
    margin-bottom: 17px;
}

.ec-matRole__right ul li img {
    width: 100%;
}

.ec-matRole__img {
    display: flex;
    align-items: center;
    justify-content: center;
}
/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-matRole__title{
        font-size: 2rem;
    }
}
/* トップ-マット */

.ec-newsTopRole {
    padding: 60px 0 0;
}

.ec-newsTopRole__main {
    float: none;
    width: 100%;
    max-width: 1037px;
    margin: 0 auto;
}

.ec-newsTopRole__side {
    overflow: hidden;
    padding-left: 41px;
    box-sizing: border-box;
}

.ec-newsTopRole__side a {
    display: block;
}

.ec-newsTopRole__side a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-Hdm {
    font-size: 3.8rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.ec-newsTopRole__item {
    border-top: 3px solid #000;
    border-bottom: 3px solid #000;
    margin-bottom: 64px;
}

.ec-newsTopRole__item dl {
    display: table;
    width: 100%;
    padding: 30px 0;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
    margin: 0;
}

.ec-newsTopRole__item dl:last-child {
    border-bottom: 0;
}

.ec-newsTopRole__item dl dt,
.ec-newsTopRole__item dl dd {
    display: table-cell;
    vertical-align: middle;
    font-weight: normal;
}

.ec-newsTopRole__item dl dt {
    width: 200px;
}

.ec-newsTopRole__item dl dt span.news {
    display: inline-block;
    border-radius: 10px;
    border: 1px solid #C4271F;
    box-sizing: border-box;
    color: #C4271F;
    font-size: 1.5rem;
    width: 69px;
    height: 26px;
    line-height: 26px;
    margin-right: 28px;
    text-align: center;
}

.ec-newsTopRole__item dl dt span.time {
    display: inline-block;
    box-sizing: border-box;
    color: #888888;
    font-size: 1.6rem;
}

.ec-newsTopRole__item dl dd {
    padding-left: 10px;
    box-sizing: border-box;
}

.ec-newsTopRole__item dl dd a {
    display: block;
    color: #020202;
    font-size: 1.6rem;
}

.ec-newsTopRole__img {
    margin-bottom: 30px;
}

.ec-newsTopRole__img a {
    display: block;
}

.ec-newsTopRole__img a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-newsTopRole__img img {
    width: 100%;
}

.ec-newsTopRole__pic {
    margin-bottom: 30px;
}

.ec-newsTopRole__pic img {
    width: 100%;
}

/* !top__________Page
---------------------------------------------------------- */

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .ec-layoutRole__contents {
        padding-left: 0;
    }

    .main_visual .slider-nav {
        padding: 0;
        margin: 0;
    }

    .main_visual .silderItem {
        margin: 0;
    }

    .ec-searchRole {
        background-color: #F4F4F4;
        padding: 20px 0 25px;
    }

    .ec-HdL em {
        color: #C4271F;
    }

    .ec-HdL span {
        color: #000;
        font-size: 2.8rem;
        line-height: 1.32;
        letter-spacing: 0;
    }

    .ec-HdL p {
        font-size: 1.1rem;
        padding-bottom: 17px;
    }

    .ec-HdL p:before {
        width: 203px;
    }

    .ec-HdL p.gray:after {
        display: none;
    }


    .ec-searchRole__list {
        padding-bottom: 20px;
        margin-bottom: 15px;
    }

    .ec-searchRole__list form {
        display: block;
    }

    .ec-searchRole__itemSelect span {
        font-size: 1.3rem;
        height: 45px;
        line-height: 45px;
        width: 100%;
        background: url('../../../../html/user_data/assets/img/top/arrow_svg.svg')no-repeat right 15px center;
        background-size: 10px auto;
        background-color: #fff;
    }

    .ec-searchRole__itemSelect select {
        padding: 0 25px 0 10px;
        font-size: 1.3rem;
        height: 45px;
        line-height: 45px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
    }

    .ec-searchRole__itemTxt {
        margin: 10px 0 18px;
        width: 100%;
    }

    .ec-searchRole__itemTxt input[type=text] {
        height: 45px;
        line-height: 45px;
        padding: 0 10px;
        font-size: 1.3rem;
    }

    .searchRole__itemTxt input::-webkit-input-placeholder {
        font-size: 1.3rem;
    }

    .searchRole__itemTxt input:-moz-placeholder {
        font-size: 1.3rem;
    }

    .searchRole__itemTxt input::-moz-placeholder {
        font-size: 1.3rem;
    }

    .searchRole__itemTxt input:-ms-input-placeholder {
        font-size: 1.3rem;
    }

    .ec-searchRole__itemSubmit {
        text-align: center;
    }

    .ec-searchRole__itemSubmit input[type=submit] {
        height: 41px;
        line-height: 41px;
        width: 157px;
        background: url('../../../../html/user_data/assets/img/common/icon_serch_white.svg')no-repeat left 50px center;
        background-size: 17px auto;
        background-color: #C4271F;
        font-size: 1.45rem;
        padding: 0 0 0 74px;
    }

    .ec-searchRole__itemTel {
        margin: 20px 0 0;
        text-align: center;
        width: 100%;
    }

    .ec-searchRole__itemTel img {
        width: 100%;
    }

    .ec-searchRole__tips p {
        font-size: 1.8rem;
    }

    .ec-searchRole__tips_icon {}

    .ec-searchRole__tips_icon a {
        margin: 5px 6px 0;
        border-radius: 20px;
        font-size: 1.5rem;
        padding: 2px 14px 3px;
    }

    .ec-searchRole__tips_icon a:hover {
        opacity: 1;
    }

    .ec-rankingRole__img img {
        width: 100%;
    }

    .ec-pointRole {
        padding: 50px 0 40px;
    }

    .ec-pointRole .inner {
        padding: 0;
    }

    .ec-pointRole__list {
        padding: 20px 0 0;
        display: block;
    }

    .ec-pointRole__box {
        margin: 10px 15px;
        padding: 10px 23px;
        display: block;
    }

    .ec-pointRole__box dl dt {
        width: calc(100% - 101px);
    }

    .ec-pointRole__box dl dd {
        width: 101px;
        padding-left: 15px;
    }

    .ec-pointRole__box dl dd img {
        height: 92px;
    }

    .ec-pointRole__txt {
        font-size: 1.2rem;
        margin-bottom: 8px;
    }

    .ec-pointRole__sub img {
        max-width: 143px;
    }

    .ec-pointRole__box:before {
        border-top: 44px solid #C4271F;
        border-right: 44px solid transparent;
    }

    .ec-pointRole__box:after {
        left: 5px;
        top: 5px;
        width: 22px;
        height: 22px;
        font-size: 1.4rem;
    }


    .ec-lineupRole {
        padding: 10px 0 50px;
    }

    .tab_content {
        margin-top: 30px;
        overflow: hidden;
    }

    .tabWrap {
        margin-top: 30px;
    }

    .tabCtrl {
        margin: 0 -20px;
        width: calc(100% + 40px);
    }

    .tabList {
        display: block;
        width: 100%;
        overflow: hidden;
    }

    .tabCtrl p {
        flex: 0;
        float: left;
        width: 33.33%;
        margin: 0;
        margin-bottom: 1px;
        border-left: 1px solid #fff;
    }

    .tabCtrl p:nth-child(1),
    .tabCtrl p:nth-child(2) {
        width: 50%;
    }

    .tabCtrl p a {
        padding: 9px 0;
        font-size: 1rem;
        border: 0;
    }

    .tabItem dl {
        display: block;
    }

    .tabItem dl dt,
    .tabItem dl dd {
        display: block;
    }

    .tabItem dl dt {
        width: 100%;
    }

    .tabItem dl dd {
        padding-left: 0;
        margin-top: 15px;
    }

    .tabSlider {
        width: 100%;
    }

    .tabItem dl dt img {
        height: 230px;
        object-fit: cover;
        width: auto;
    }

    .tabItemSub {
        margin-bottom: 5px;
    }

    .tabItemSub span {
        font-size: 1.2rem;
        padding: 3px 9px;
    }

    .tabItemSub span:before {
        left: 5px;
        bottom: -6px;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-top: 10px solid #C4271F;
    }

    .tabItemSub01 span:before {
        border-top: 10px solid #008915;
    }

    .tabItemSub02 span:before {
        border-top: 10px solid #747474;
    }

    .tabItemSub03 span:before {
        border-top: 10px solid #0066be;
    }

    .tabItemSub04 span:before {
        border-top: 10px solid #2b2b2b;
    }



    .tabItemTitle {
        font-size: 1.75rem;
        padding-bottom: 7px;
    }

    .tabItemTitle:before {
        display: none;
    }

    .tabItemTxt {
        line-height: 1.58;
        font-size: 1.2rem;
        margin: 0 0 20px;
    }

    .tabItemBtn a {
        max-width: 203px;
        height: 43px;
        font-size: 1.25rem;
    }

    .tabItemBtn a:before {
        right: 17px;
        width: 6px;
        height: 6px;
    }

    .ec-lineupRole__list {
        margin: 34px 0 0 -5px;
    }

    .ec-lineupRole__list p {
        width: 25%;
        padding-left: 5px;
        margin: 0 0 5px 0;
    }

    .ec-lineupRole__list p span {
        height: 80px;
    }

    .ec-lineupRole__list p span img {
        height: 50px;
        width: 50px;
    }

    .ec-rankingRole {
        padding: 45px 0;
    }

    .ec-rankingRole__box {
        display: block;
        padding: 30px 0 0;
    }

    .ec-rankingRole__right {
        float: none;
        width: 100%;
        margin-top: 15px;
    }

    .ec-rankingRole__right ul {
        margin-left: -20px;
    }

    .ec-rankingRole__right ul li {
        padding-left: 20px;
        margin-bottom: 15px;
        width: 50%;
    }

    .ec-rankingRole__list {
        position: relative;
    }

    .ec-rankingRole__icon {
        text-align: center;
        margin-bottom: 14px;
        position: absolute;
        left: 5px;
        top: 5px;
    }

    .ec-rankingRole__icon span {
        background: url('../../../../html/user_data/assets/img/top/ranking_00.svg')no-repeat center bottom;
        background-size: cover;
        font-size: 1rem;
        padding: 15px 14px 1px;
    }

    .ec-rankingRole__icon span.span01 {
        background: url('../../../../html/user_data/assets/img/top/ranking_01_sp.svg')no-repeat center center;
        background-size: cover;
        font-size: 1rem;
        padding: 21px 21px 5px;
    }

    .ec-rankingRole__icon span.span02 {
        background: url('../../../../html/user_data/assets/img/top/ranking_02.svg')no-repeat center bottom;
        background-size: cover;
    }

    .ec-rankingRole__icon span.span03 {
        background: url('../../../../html/user_data/assets/img/top/ranking_03.svg')no-repeat center bottom;
        background-size: cover;
    }

    .ec-rankingRole__sub {
        font-size: 1.2rem;
        padding: 5px 0 3px;
    }

    .ec-rankingRole__price {
        font-size: 1.1rem;
    }

    /* 2点セット */
    .ec-2setRole__img img {
        width: 100%;
    }

    .ec-2setRole {
        padding: 45px 0;
    }

    .ec-2setRole__box {
        display: block;
        padding: 30px 0 0;
    }

    .ec-2setRole__right {
        float: none;
        width: 100%;
        margin-top: 15px;
    }

    .ec-2setRole__right ul {
        margin-left: -20px;
    }

    .ec-2setRole__right ul li {
        padding-left: 20px;
        margin-bottom: 15px;
        width: 50%;
    }

    .ec-2setRole__list {
        position: relative;
    }

    .ec-2setRole__icon {
        text-align: center;
        margin-bottom: 14px;
        position: absolute;
        left: 5px;
        top: 5px;
    }

    .ec-2setRole__icon span {
        background: url('../../../../html/user_data/assets/img/top/ranking_00.svg')no-repeat center bottom;
        background-size: cover;
        font-size: 1rem;
        padding: 15px 14px 1px;
    }

    .ec-2setRole__icon span.span01 {
        background: url('../../../../html/user_data/assets/img/top/ranking_01_sp.svg')no-repeat center center;
        background-size: cover;
        font-size: 1rem;
        padding: 21px 21px 5px;
    }

    .ec-2setRole__icon span.span02 {
        background: url('../../../../html/user_data/assets/img/top/ranking_02.svg')no-repeat center bottom;
        background-size: cover;
    }

    .ec-2setRole__icon span.span03 {
        background: url('../../../../html/user_data/assets/img/top/ranking_03.svg')no-repeat center bottom;
        background-size: cover;
    }

    .ec-2setRole__sub {
        font-size: 1.2rem;
        padding: 5px 0 3px;
    }

    .ec-2setRole__price {
        font-size: 1.1rem;
    }

    /* 2点セット */

    /* トップ-マット */
    .ec-matRole__img img {
        width: 100%;
    }

    .ec-matRole {
        padding: 20px 0;
    }

    .ec-matRole__box {
        display: block;
        padding: 30px 0 0;
    }

    .ec-matRole__right {
        float: none;
        width: 100%;
        margin-top: 15px;
    }

    .ec-matRole__right ul {
        margin-left: -20px;
    }

    .ec-matRole__right ul li {
        padding-left: 20px;
        margin-bottom: 15px;
        width: 50%;
    }

    .ec-matRole__list {
        position: relative;
    }

    /* トップ-マット */

    .ec-newsTopRole {
        padding: 68px 0 0;
    }

    .ec-newsTopRole__main {
        float: none;
        width: 100%;
    }

    .ec-newsTopRole__side {
        padding: 0 0 10px 0;
    }

    .ec-Hdm {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .ec-newsTopRole__item {
        border-top: 1px solid #000;
        border-bottom: 0;
        margin-bottom: 30px;
        padding-top: 27px;
    }

    .ec-newsTopRole__item dl {
        display: block;
        padding: 15px 0;
        margin: 0;
    }

    .ec-newsTopRole__item dl dt,
    .ec-newsTopRole__item dl dd {
        display: block;
    }

    .ec-newsTopRole__item dl dt {
        width: 100%;
        overflow: hidden;
        margin-bottom: 9px;
    }

    .ec-newsTopRole__item dl dt span.news {
        border-radius: 14px;
        font-size: 0.85rem;
        width: 38px;
        height: 14px;
        line-height: 14px;
        margin-right: 0;
    }

    .ec-newsTopRole__item dl dt span.time {
        font-size: 1rem;
        float: left;
        margin-right: 12px;
        padding-top: 4px;
    }

    .ec-newsTopRole__item dl dd {
        padding-left: 0;
    }

    .ec-newsTopRole__item dl dd a {
        font-size: 1.2rem;
    }

    .ec-newsTopRole__img {
        margin-bottom: 10px;
    }

    .ec-newsTopRole__pic {
        margin-bottom: 28px;
    }


.main_visual .main_image,
    .main_visual .sub_image {
    display: block;
}

.main_visual .main_image p,
.main_visual .sub_image div{
    width: 100%;
}

}

/* !top__________Page
---------------------------------------------------------- */
/* !list__________Page
---------------------------------------------------------- */
.product_page .ec-layoutRole .ec-layoutRole__contents,
.other_page .ec-layoutRole .ec-layoutRole__contents,
.cart_page .ec-layoutRole .ec-layoutRole__contents{
    max-width: 100%;
    display: block;
}

.product_page .ec-sliderRole {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0;
}

.ec-teaserRole {
    padding-top: 70px;
}

.ec-teaserRole__title {
    text-align: center;
    font-size: 4.3rem;
    font-weight: bold;
    padding-bottom: 21px;
    position: relative;
}

.ec-teaserRole__title:before {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    background: #000000;
    width: 86px;
    height: 6px;
    content: '';
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {
    color: #666;
    width: 100%;
    padding: 40px 0 60px;
}

#breadcrumb ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#breadcrumb ul li a {
    color: #666;
}

#breadcrumb ul li:first-child a {
    text-transform: uppercase;
}

#breadcrumb ul li {
    display: inline-block;
    position: relative;
    padding-right: 40px;
    font-size: 1.6rem;
}

#breadcrumb ul li:before {
    position: absolute;
    right: 14px;
    top: 9px;
    z-index: 2;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
    transform: rotate(45deg);
}

#breadcrumb ul li:last-of-type {
    padding-right: 0;
}

#breadcrumb ul li:last-of-type:before {
    content: none;
}

#breadcrumb ul li a:hover {
    text-decoration: underline;
}


.ec-shopRole__title {
    text-align: center;
    border: 1px solid #C4271F;
    font-weight: bold;
    color: #C4271F;
    margin-bottom: 67px;
    padding: 14px 0;
}

.ec-shopRole__list a,
.ec-shopRole__list a:visited {
    /* display: block; */
    padding: 50px;
    box-sizing: border-box;
    background-color: #fff;
    position: relative;
    color: #020202;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.ec-shopRole__list .list_image{
    width: 30%;
    max-width: 250px;
    text-align: center;
    margin: auto;
}

.ec-shopRole__list .list_image img{
    width: calc(100% - 50px);
    margin-right: 50px;
}

.ec-shopRole__list .list_detail{
    width: 70%;
    margin: auto 0;
}

.ec-shopRole__item {
    border-bottom: 2px solid #EEEEEE;
}

.ec-shopRole__list a:before {
    position: absolute;
    right: 53px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 2;
    content: "";
    width: 7px;
    height: 7px;
    border-top: 1px solid #C4271F;
    border-right: 1px solid #C4271F;
    transform: rotate(45deg);
}

.ec-shopRole__list a:hover {
    transition: all 0.5s;
    text-decoration: none;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
}

.ec-shopRole__sub {
    font-weight: bold;
    font-size: 2.3rem;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.ec-shopRole__icon {
    min-height: calc(100% / 3);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.ec-shopRole__icon span {
    display: inline-block;
    color: #333333;
    font-size: 2.3rem;
    border-radius: 28px;
    background-color: #EEEEEE;
	padding: 10px 35px;
    box-sizing: border-box;
    margin-top: 5px;
    margin-right: 15px;
}

.ec-shopRole__price {
    font-weight: bold;
    font-size: 2.2rem;
    margin-top: 20px;
    color: #C4271F;
    display: flex;
    align-items: center;
}

.ec-imagesRole {
    text-align: center;
    padding: 50px 0 70px;
}

.ec-imagesRole p {
    margin-top: 30px;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .ec-teaserRole {
        padding-top: 30px;
    }

    .ec-teaserRole__title {
        font-size: 2.1rem;
        padding-bottom: 18px;
    }

    .ec-teaserRole__title:before {
        width: 40px;
        height: 3px;
    }

    #breadcrumb {
        padding: 20px 0;
    }

    #breadcrumb ul li {
        padding-right: 30px;
        font-size: 1.05rem;
    }

    #breadcrumb ul li:before {
        right: 9px;
        top: 7px;
        width: 5px;
        height: 5px;
    }

    .ec-shopRole__title {
        margin-bottom: 32px;
        padding: 10px 0;
        font-size: 1.15rem;
    }

    .ec-shopRole__list a {
        padding: 15px 10px 20px 0;
    }

    .ec-shopRole__item {
        border-bottom: 1px solid #EEEEEE;
    }

    .ec-shopRole__list a:before {
        right: 0;
    }

    .ec-shopRole__list a:hover {
        box-shadow: initial;
    }

    .ec-shopRole__sub {
        font-size: 1.3rem;
        margin-bottom: 5px;
    }

    .ec-shopRole__icon span {
        font-size: 1.3rem;
        border-radius: 20px;
	padding: 4px 26px;
        margin-right: 14px;
    }

    .ec-shopRole__price {
        font-size: 1.3rem;
        margin-top: 10px;
    }

    .ec-shopRole__list .list_image{
        margin: auto;
    }

    .ec-shopRole__list .list_image img{
        width: calc(100% - 20px);
        margin-right: 20px;
    }

    .ec-imagesRole {
        display: none;
    }

    .ec-shopRole {
        padding-bottom: 45px;
    }
}

/* !list__________Page
---------------------------------------------------------- */


/* !detail__________Page
---------------------------------------------------------- */

#page_product_detail .ec-productRole {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0;
}

#page_product_detail #breadcrumb {
    padding: 0 0 45px;
}

.ec-teaserRole__txt {
    text-align: left;
    font-size: 3rem;
    font-weight: bold;
    color: #020202;
    padding: 0 0 65px;
}

.ec-grid2 {
    justify-content: space-between;
    flex-wrap: wrap;
    padding-bottom: 80px;
}

.ec-grid2 .ec-grid2__left {
    width: 60%;
    /* width: 69.514%; */
}

.ec-grid2 .ec-grid2__right {
    width: 35%;
    position: relative;
    /* width: 25.616%; */
}

.item_visual img {
    width: 100%;
}

.ec-sliderItemRole {
    /* フロアマット商品詳細スライダー調整のため変更2022-09-06↓ */
	/* border: 1px solid #707070; */
    border: none;
	/* padding: 41px 185px 19px; */
    padding: 0px 100px 20px;
    box-sizing: border-box;
    margin-bottom: 54px;
}

.item_nav,
.nav-slider {
    padding: 28px 0 0;
}

.ec-sliderItemRole .item_nav,
.ec-sliderItemRole .nav-slider {
    display: flex;
    justify-content: center;
}

.ec-sliderItemRole .nav-slider img {
    width: 60px;
}

.ec-sliderItemRole .nav-slider>div {
    margin-bottom: 0;
    padding: 0 1rem;
    box-sizing: border-box;
}

#page_product_detail .fancybox-close,
#page_product_list .fancybox-close,
#page_product_farmland .fancybox-close,
#page_product_official .fancybox-close,
#page_product_rubber .fancybox-close {
    background: url('../../../../html/user_data/assets/img/products/floormat/icon_close.svg')no-repeat center center !important;
    top: 20px;
    right: 40px;
    transform: translateY(0);
    width: 28px;
    height: 28px;
    position: fixed;
}

#page_product_detail .fancybox-opened .fancybox-skin,
#page_product_list .fancybox-opened .fancybox-skin,
#page_product_farmland .fancybox-opened .fancybox-skin,
#page_product_official .fancybox-opened .fancybox-skin,
#page_product_rubber .fancybox-opened .fancybox-skin {
    -webkit-box-shadow: initial;
    -moz-box-shadow: initial;
    box-shadow: initial;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    /* padding: 0!important; */
}

#page_product_detail .fancybox-prev,
#page_product_list .fancybox-prev,
#page_product_farmland .fancybox-prev,
#page_product_official .fancybox-prev,
#page_product_rubber .fancybox-prev {
    left: -130px;
}

#page_product_detail .fancybox-next,
#page_product_list .fancybox-next,
#page_product_farmland .fancybox-next,
#page_product_official .fancybox-next,
#page_product_rubber .fancybox-next {
    right: -130px;
}

#page_product_detail .fancybox-nav,
#page_product_list .fancybox-nav,
#page_product_farmland .fancybox-nav,
#page_product_official .fancybox-nav,
#page_product_rubber .fancybox-nav {
    top: 50%;
    transform: translateY(-50%);
    bottom: unset;
}

#page_product_detail .fancybox-prev span,
#page_product_list .fancybox-prev span,
#page_product_farmland .fancybox-prev span,
#page_product_official .fancybox-prev span,
#page_product_rubber .fancybox-prev span {
    background: url("../img/products/floormat/arrow-circle-left-w.svg")!important;
    background-position: center !important;
    background-size: 100% !important;
    width: 85px;
    height: 85px;
    bottom: unset;
    top: 50%;
    margin-top: -85px;
}

#page_product_detail .fancybox-next span,
#page_product_list .fancybox-next span,
#page_product_farmland .fancybox-next span,
#page_product_official .fancybox-next span,
#page_product_rubber .fancybox-next span {
    background: url("../img/products/floormat/arrow-circle-right-w.svg")!important;
    background-position: center !important;
    background-size: 100% !important;
    width: 85px;
    height: 85px;
    bottom: unset;
    top: 50%;
    margin-top: -85px;
}

#page_product_detail .fancybox-overlay,
#page_product_list .fancybox-overlay,
#page_product_farmland .fancybox-overlay,
#page_product_official .fancybox-overlay,
#page_product_rubber .fancybox-overlay {
    background: rgba(0, 0, 0, 0.9);
}

.siderBox {
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.28);
    padding: 26px 27px 58px;
    box-sizing: border-box;
    color: #000;
}

.siderBox02 {
    padding: 34px 27px 32px;
    margin-top: 40px;
}

.siderBox dl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 0;
    margin: 0;
}
.siderBox dl:nth-child(3){
	/* border-top: 2px solid #CCCCCC; */
}
.siderBox dl:last-of-type{
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 10px;
	padding: 5px 0;
}
.siderBox dl:first-of-type{
	padding: 18px 0;
}

.siderBox dl dt {
    font-size: 1.5rem;
}

.siderBox dl dd span.price {
    font-size: 1.9rem;
    font-weight: bold;
    display: inline-block;
    margin-right: 10px;
    color: #C4271F;
}
.siderBox dl.dl_price_01 dt,
.siderBox dl.dl_price_02 dt{
	font-size: 1.6rem;
}
.dl_price_01{
    color: #000000 !important;
	padding: 5px 0 !important;
	font-size: 1.6rem !important;
}
.siderBox dl.dl_price_01 dd span.price,
.siderBox dl.dl_price_01 dd span.an{
    color: #000000 !important;
	font-size: 1.6rem !important;
}
.dl_price_02{
    color: #C4271F !important;
	padding: 5px 0 !important;
	font-size: 1.6rem !important;
    background: linear-gradient(transparent 60%, yellow 50%);
}
.siderBox dl.dl_price_02 dd span.price,
.siderBox dl.dl_price_02 dd span.an{
    color: #C4271F !important;
	font-size: 1.6rem !important;
}

.price_hide{
    font-size: 14px !important;
}

.siderBox dl dd span.an {
    font-size: 2rem;
    font-weight: bold;
}


.siderBox dl dd span.prices {
    font-size: 2.7rem;
    font-weight: bold;
    color: #C4271F;
    margin-right: 10px;
}

.siderBox dl dd span.ans {
    font-size: 2.9rem;
    font-weight: bold;
}

.siderBox dl dt span {
    font-size: 2rem;
    font-weight: bold;
}

.sliderNote {
    font-size: 1.2rem;
    color: #888888;
    margin-bottom: 40px;
}

.ec-productRole__select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}

.ec-productRole__select span {
    font-size: 1.6rem;
    font-weight: bold;
}

.ec-productRole__select select {
    width: 107px;
    height: 50px;
    border-radius: 5px;
    border: 1px solid #CCCCCC;
    padding: 9px 19px;
    box-sizing: border-box;
}

.ec-slider__btn {
    text-align: center;
    padding: 22px 0 27px;
    margin: 0;
}

.ec-slider__btn button[type=submit] {
    text-align: center;
    display: inline-block;
    height: 66px;
    line-height: 66px;
    width: 100%;
    background: url('../../../../html/user_data/assets/img/products/floormat/icon_car.svg')no-repeat left 28.125% center;
    background-size: 25px auto;
    background-color: #C4271F;
    border-radius: 33px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    border: 0;
    padding: 0 0 0 36px;
    box-sizing: border-box;
}

.btn_enable {
    background-color: gray !important;
    pointer-events: none;
    cursor: not-allowed !important;
}

.sliderLinks a {
    display: inline-block;
    color: #191919;
    font-size: 1.3rem;
    text-decoration: underline;
    margin-right: 40px;
}

.sliderLinks a:hover {
    transition: all 0.5s;
    text-decoration: none;
}

.sliderSyb {
    color: #020202;
    font-size: 1.7rem;
    font-weight: bold;
    border-bottom: 2px solid #000;
    padding-bottom: 17px;
}


.sliderRed {
    margin: 17px 0 21px;
    color: #C4271F;
    font-size: 1.2rem;
}

.sliderPrice {
    padding: 24px 60px;
    color: #020202;
    font-size: 2.2rem;
    font-weight: bold;
    box-sizing: border-box;
    background-color: #F7F7F7;
    text-align: center;
    margin-bottom: 27px;
}

.ec-slider__lock button[type=submit] {
    text-align: center;
    display: inline-block;
    height: 67px;
    line-height: 67px;
    width: 100%;
    background-color: #F8F013;
    border-radius: 28px;
    color: #C4271F;
    font-size: 1.6rem;
    font-weight: bold;
    border: 1px solid #C4271F;
}






.ec-detailBox__item {
    padding-bottom: 80px;
}

.ec-detailBox__title {
    border-bottom: 1px solid #000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 24px;
}

.ec-detailBox__title span.left {
    display: inline-block;
    color: #020202;
    font-size: 2.7rem;
    font-weight: bold;
    letter-spacing: 0.08em;
}

.ec-detailBox__title span.left em {
    display: inline-block;
    font-weight: bold;
    font-style: normal;
    color: #C4271F;
}

.ec-detailBox__title span.right {
    display: inline-block;
    color: #888888;
    font-size: 1.2rem;
}

.ec-detailBox__list dl {
    display: table;
    width: 100%;
    padding: 26px 0;
    border-bottom: 2px solid #CCCCCC;
    box-sizing: border-box;
    margin: 0;
}

.ec-line {
    border-top: 2px solid #CCCCCC;
    box-sizing: border-box;
}

.price_p{
    font-size: 20px;
    font-weight: bold;
}

.price_p_hide{
    font-size: 18px;
}

.ec-detailBox__list dl dt,
.ec-detailBox__list dl dd {
    display: table-cell;
    vertical-align: middle;
}

.ec-detailBox__list dl dt {
    width: 200px;
    color: #020202;
    font-weight: bold;
}

.ec-detailBox__list dl dd {
    padding-left: 11px;
    box-sizing: border-box;
    color: #020202;
    font-size: 1.5rem;
}

.ec-detailBox__img {
    padding: 5px 0 40px 0;
}

.ec-detailBox__img img {
    width: 100%;
}

.select_mat_box{
    padding-top: 10px;
    padding-bottom: 15px;
    font-size: 15px;
    font-weight: bold;
    color: #C4271F;
}
.select_mat_box.sp{
    text-align: center;
    color:#525263;
    padding-bottom: 10px;
    font-size: 1.15rem;
}
.mat_select_msg{
    padding-top: 15px;
    font-weight: bold;
    font-size: 16px;
}
.ec-detailBox__pic {
	padding: 25px 0 0;
}

.ec-detailBox__pic ul {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-left: -5px;
    text-align: left;
    overflow: hidden;
}

.ec-detailBox__pic ul li {
    display: inline-block;
    float: left;
    width: 20%;
    padding-left: 5px;
    box-sizing: border-box;
    margin-bottom: 36px;
}

.ec-detailBox__pic ul li p img {
    width: 100%;
    object-fit: cover;
}

.ec-detailBox__pic ul li p.txt {
    font-size: 1.1rem;
    font-weight: 500;
    margin-top: 7px;
}

.ec-detailBox__btn,
.ec-detailSeries__btn {
    text-align: center;
    margin-top: 15px;
}

.ec-detailSeries__btn a,
.ec-detailSeries__btn a:visited {
    border-radius: 35px;
    border: 1px solid #C4271F;
    color: #FFFFFF;
    background: #C4271F;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 403px;
    height: 50px;
    font-size: 1.5rem;
    font-weight: bold;
    text-decoration: none;
}

.ec-detailBox__btn a {
    border-radius: 24px;
    border: 1px solid #C4271F;
    color: #C4271F;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 403px;
    height: 63px;
    font-size: 1.7rem;
    font-weight: bold;
}

.ec-detailBox__btn a span {
    padding-left: 38px;
    box-sizing: border-box;
    background: url('../../../../html/user_data/assets/img/products/floormat/icon_serch.svg')no-repeat left center;
    background-size: 25px auto;
    display: inline-block;
    line-height: 63px;
    font-weight: bold;
}

.ec-detailSeries__btn a:hover,
.ec-detailBox__btn a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-detailImg {
    padding: 0 0 15px;
}

.ec-detailImg p {
    margin-bottom: 45px;
}

.ec-detailImg p img {
    width: auto;
}

#page_product_detail .ec-sliderItemRole .slideThumb {
    margin-bottom: 0;
    padding: 0 4px;
    box-sizing: border-box;
}

#page_product_detail .ec-sliderItemRole .slideThumb img {
    width: 100%;
}
/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    #page_product_detail #breadcrumb {
        padding: 0 0 35px;
        margin-top: -15px;
    }

    .ec-teaserRole__txt {
        font-size: 1.5rem;
        padding: 0 0 13px;
    }

    .ec-grid2 {
        display: block;
        padding-bottom: 56px;
    }

    .ec-grid2 .ec-grid2__left {
        width: 100%;
    }

    .ec-grid2 .ec-grid2__right {
        width: 100%;
    }

    .ec-sliderItemRole {
        border: 0;
        padding: 0;
        margin-bottom: 35px;
    }

    .item_nav {
        padding: 15px 0 0;
    }


    #page_product_detail .fancybox-close,
    #page_product_list .fancybox-close,
    #page_product_farmland .fancybox-close,
    #page_product_official .fancybox-close,
    #page_product_rubber .fancybox-close {
        top: 10px;
        right: 20px;
        width: 20px;
        height: 20px;
    }

    #page_product_detail .fancybox-prev,
    #page_product_farmland .fancybox-prev,
    #page_product_official .fancybox-prev,
    #page_product_rubber .fancybox-prev {
        left: -50px;
    }

    #page_product_detail .fancybox-next,
    #page_product_farmland .fancybox-next,
    #page_product_official .fancybox-next,
    #page_product_rubber .fancybox-next {
        right: -50px;
    }

    #page_product_detail .fancybox-prev span,
    #page_product_list .fancybox-prev span,
    #page_product_farmland .fancybox-prev span,
    #page_product_official .fancybox-prev span,
    #page_product_rubber .fancybox-prev span {
        background: url("../img/products/floormat/arrow-circle-left-w.svg")!important;
        background-position: center !important;
        background-size: 100% !important;
        width: 30px;
        height: 30px;
        bottom: unset;
        top: 50%;
        margin-top: -10px;
    }

    #page_product_detail .fancybox-next span,
    #page_product_list .fancybox-next span,
    #page_product_farmland .fancybox-next span,
    #page_product_official .fancybox-next span,
    #page_product_rubber .fancybox-next span {
        background: url("../img/products/floormat/arrow-circle-right-w.svg")!important;
        background-position: center !important;
        background-size: 100% !important;
        width: 30px;
        height: 30px;
        bottom: unset;
        top: 50%;
        margin-top: -10px;
    }

    .fancybox-inner img {
        width: 100%;
    }

    .siderBox {
        padding: 17px 25px 30px;
    }

    .siderBox02 {
        padding: 30px 25px;
        margin-top: 33px;
    }

    .siderBox dl {
        padding: 13px 0;
    }

    .siderBox dl dt {
        font-size: 1.25rem;
    }

    .siderBox dl dd span.price {
        font-size: 1.5rem;
        margin-right: 5px;
    }

    .siderBox dl dd span.an {
        font-size: 1.5rem;
    }


    .siderBox dl dd span.prices {
        font-size: 2.6rem;
        margin-right: 5px;
    }

    .siderBox dl dd span.ans {
        font-size: 2.65rem;
    }

    .siderBox dl dt span {
        font-size: 1.5rem;
    }

    .sliderNote {
        font-size: 1rem;
        margin-bottom: 25px;
    }


    .ec-productRole__select span {
        font-size: 1.6rem;
        font-weight: bold;
    }

    .ec-productRole__select select {
        width: 54px;
	/* height: 25px; */
        padding: 5px 10px;
    }

    .ec-slider__btn {
        padding: 26px 0 33px;
    }

    .ec-slider__btn button[type=submit] {
        height: 60px;
        line-height: 60px;
        background: url('../../../../html/user_data/assets/img/products/floormat/icon_car.svg')no-repeat left 77px center;
        background-size: 23px auto;
        background-color: #C4271F;
        border-radius: 30px;
        padding: 0;
    padding-left: 30px;
    }

    .sliderLinks a {
        font-size: 1.2rem;
        margin-right: 33px;
    }

    .sliderSyb {
        font-size: 1.75rem;
        padding-bottom: 12px;
    }


    .sliderRed {
        margin: 15px 0 17px;
        font-size: 1.3rem;
    }

    .sliderPrice {
        padding: 19px 45px;
        font-size: 2.15rem;
        margin-bottom: 24px;
    }

    .ec-slider__lock button[type=submit] {
        height: 60px;
        line-height: 60px;
        border-radius: 30px;
    }

    .sliderBlack {
        margin: 18px 0 30px;
        color: #020202;
        font-size: 1.4rem;
    }

    .sliderBlack span {
        color: #C4271F;
    }

    .ec-slider__locks button[type=submit] {
        background-color: #000000;
        color: #fff;
        border: 1px solid #000;
    }

    .sliderDl {
        padding: 5px 0 22px;
    }

    .sliderDl dl {
        display: table;
        width: 100%;
    }

    .sliderDl dl dt,
    .sliderDl dl dd {
        display: table-cell;
        vertical-align: middle;
    }

    .sliderDl dl dt {
        width: 120px;
    }

    .sliderDl dl dd {
        padding-left: 12px;
        box-sizing: border-box;
        font-size: 1.3rem;
    }

    .siderBox .sliderDl dl:first-child {
        border-bottom: 0;
    }

    .siderBox .sliderDl dl:nth-child(3) {
        border-top: 0;
    }

    .ec-detailBox__item {
        padding-bottom: 35px;
    }

    .ec-detailBox__title {
        padding-bottom: 7px;
    }

    .ec-detailBox__title span.left {
        font-size: 1.6rem;
    }

    .ec-detailBox__title span.right {
        display: none;
    }

    .ec-detailBox__list dl {
        display: block;
        padding: 10px 0;
        border-bottom: 1px solid #CCCCCC;
    }

    .ec-line {
        border-top: 1px solid #CCCCCC;
    }

    .ec-detailBox__list dl dt,
    .ec-detailBox__list dl dd {
        display: block;
    }

    .ec-detailBox__list dl dt {
        width: 100%;
        font-size: 1.15rem;
        margin-bottom: 10px;
    }

    .ec-detailBox__list dl dd {
        padding-left: 0;
        font-size: 1.15rem;
    }

    .ec-detailBox__img {
        padding: 30px 0;
    }
.select_mat_box{
    padding-top: 10px;
    padding-bottom: 15px;
    font-size: 15px;
    font-weight: bold;
    color: #C4271F;
}
.mat_select_msg{
    padding-top: 15px;
    font-weight: bold;
    font-size: 14px;
}
    .ec-detailBox__pic {
        padding: 30px 0 0;
    }

    .ec-detailBox__pic ul {
        margin-left: -8px;
    }

    .ec-detailBox__pic ul li {
        width: 33.33%;
        padding-left: 8px;
        margin-bottom: 15px;
    }

    .ec-detailBox__pic ul li p.txt {
        font-size: 1rem;
        margin-top: 5px;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
    }

    .ec-detailBox__btn {
        display: none;
    }

    .btn_farmland{
        display: block;
        width: 80%;
        margin: 20px auto 0px;
    }
    .btn_farmland a{
        font-size: 0.8em;
        height: 40px;
    }

    .ec-detailBox__list {
        padding: 15px 0 0;
    }

    .ec-detailImg {
        display: none;
    }

    .ec-detailBox__note {
        text-align: center;
        font-size: 1.2rem;
        font-weight: bold;
        color: #C4271F;
    }



}

.ec-shop {
    display: none;
}

@media screen and (max-width: 768px) {
    #ec-shop {
        display: block;
        margin-top: -70px;
        padding-top: 70px;
    }

    .ec-shop {
        display: block;
        position: fixed;
        transform: translateY(0);
        bottom: 0;
        width: 100%;
        left: 0;
        background: #EFEFEF;
        padding: 25px 20px 31px;
        box-sizing: border-box;
        transition: all 0.5s;
        z-index: 100;
    }

    .ec-shop.is_stop {
        transition: all 0.5s;
        transform: translateY(100%);
    }

    .ec-shop-sub {
        text-align: center;
        margin-bottom: 12px;
        font-size: 1.15rem;
    }
.ec-shop-sub.general{
    margin-bottom: 3px;
}
    .ec-shop-sub span {
        color: #C4271F;
        letter-spacing: 0.05em;
        font-weight: bold;
        vertical-align: middle;
        display: inline-block;
        margin-left: 7px;
    }
.ec-shop-sub.general span{
    color:#525263;
}
    .ec-shop-sub span em {
        font-size: 2.25rem;
        font-weight: bold;
        font-style: normal;
    }

    .ec-shop-links {
        text-align: center;
        display: block;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .ec-shop-links a {
        display: inline-flex;
        flex: 0 0 48%;
        font-size: 1.05rem;
        border-radius: 60px;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 33px;
        font-weight: bold;
        margin-top: 10px;
    }

    .ec-shop-links a.links01 {
        color: #C4271F;
        background-color: #fff;
        border: 1px solid #C4271F;
    }

    .ec-shop-links a.links01 span {
        display: inline-block;
        background: url('../../../../html/user_data/assets/img/products/floormat/icon_serch.svg')no-repeat left center;
        background-size: 13px auto;
        background-color: #fff;
        padding-left: 15px;
        box-sizing: border-box;
    }

    .ec-shop-links a.links02 {
        color: #fff;
        background-color: #C4271F;
        border: 1px solid #fff;
    }

    .ec-shop-links a.links02 span {
        display: inline-block;
        background: url('../../../../html/user_data/assets/img/products/floormat/icon_car.svg')no-repeat left center;
        background-size: 15px auto;
        background-color: #C4271F;
        padding-left: 20px;
        box-sizing: border-box;
    }

    .ec-shop-links a:hover {
        opacity: 0.8;
        transition: all 0.5s;
        text-decoration: none;
    }

}


/* !detail__________Page
---------------------------------------------------------- */

/* !sidevisor__________Page
---------------------------------------------------------- */

.ec-sidevisor {
    border: 0;
    padding: 0;
    margin-bottom: 42px;
    max-width: 100%;
}

.ec-sidevisor .item_nav {
    padding: 40px 0 0;
    justify-content: center;
}
/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .ec-sidevisor {
        margin-bottom: 20px;
    }

    .ec-sidevisor .item_nav {
        padding: 20px 0 0;
    }
}

/* !sidevisor__________Page---------------------------------------------------------- */

.colorRed {
    font-size: 1.4rem;
    color: #C4271F;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .colorRed {
        font-size: 1rem;
    }
}

/* !external__________Page
---------------------------------------------------------- */
.ec-externalBox {
    display: flex;
    align-items: center;
    padding: 37px 0 48px;
}

.ec-externalLeft {
    width: 35.3%;
}

.ec-externalRight {
    padding-left: 48px;
    box-sizing: border-box;
    font-size: 1.6rem;
    line-height: 1.8125;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-externalBox {
        display: block;
        padding: 20px 0;
    }

    .ec-externalLeft {
        width: 100%;
    }

    .ec-externalRight {
        padding-left: 0;
        margin-top: 20px;
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

/* !external__________Page
---------------------------------------------------------- */

/* !farmlandRole__________Page
---------------------------------------------------------- */
.ec-farmlandRole-img {
    text-align: center;
    margin-bottom: 80px;
}

.ec-farmlandRole-img img {
    width: 100%;
}

.ec-farmlandRole__item {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
    padding: 63px;
    box-sizing: border-box;
    margin: 95px 0 60px;
}

.ec-farmlandRole__item p {
    font-size: 2.5rem;
    font-weight: bold;
    border-bottom: 1px dotted #666666;
    padding: 20px 0;
}

.ec-farmlandRole__item p span.number {
    color: #C4271F;
    font-size: 2rem;
    font-weight: bold;
    display: inline-block;
}

.ec-farmlandRole__item p span.red {
    color: #fff;
    background: #C4271F;
    font-size: 3.5rem;
    font-weight: bold;
    display: inline-block;
    padding: 5px;
    box-sizing: border-box;
    margin: 0 5px;
}

.ec-farmlandRole__item p span.small {
    font-size: 1.8rem;
    font-weight: bold;
    display: inline-block;
}

.ec-farmlandRole .ec-detailBox__pic {
    padding: 20px 0 0;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-farmlandRole-img {
        margin-bottom: 40px;
    }

    .ec-farmlandRole__item {
        padding: 25px;
        margin: 40px 0;
    }

    .ec-farmlandRole__item p {
        font-size: 1.4rem;
        padding: 10px 0;
    }

    .ec-farmlandRole__item p span.number {
        font-size: 1.4rem;
    }

    .ec-farmlandRole__item p span.red {
        font-size: 1.6rem;
        margin-bottom: 5px;
    }

    .ec-farmlandRole__item p span.small {
        font-size: 1.2rem;
    }

    .ec-farmlandRole .ec-detailBox__pic {
        padding: 10px 0 0;
    }
}

/* !farmlandRole__________Page
---------------------------------------------------------- */

/* !official__________Page
---------------------------------------------------------- */

#page_product_list .ec-sliderItemRole .slideThumb {
    margin-bottom: 0;
    padding: 0 4px;
    box-sizing: border-box;
}

#page_product_list .ec-sliderItemRole .slideThumb img {
    width: 100%;
}

.ec-siderTxt {
    color: #0E66BF;
    font-weight: bold;
    font-size: 2.5rem;
    margin-top: 18px;
}

.item_nav_icon {
    position: relative;
}

.item_nav_icon:before {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 40px;
    height: 36px;
    content: "";
    background: url('../../../../html/user_data/assets/img/common/magnifier.svg')no-repeat center center;
}
/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-siderTxt {
        font-size: 1rem;
        margin-top: 10px;
    }
}

/* !official__________Page
---------------------------------------------------------- */

/* !sunshade__________Page
---------------------------------------------------------- */
.ec-sunshadeBox {
    padding: 0 0 10px;
}

.ec-sunshadeRole__img {
    text-align: center;
    width: 900px;
    height: 714px;
    margin: 0 auto;
}

.ec-sunshadeRole__img iframe {
    width: 100%;
    height: 100%;
}

.ec-sunshadeItem {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-top: 115px;
}

.ec-sunshadeLeft {
    width: 50%;
}

.ec-sunshadepic img {
    width: 100%;
}

.ec-sunshadeRight {
    width: 50%;
    display: flex;
    align-items: center;
    padding-left: 40px;
    box-sizing: border-box;
}

.ec-sunshade__Sub {
    font-weight: bold;
    font-size: 2.8rem;
    color: #118915;
    letter-spacing: 0.08em;
    border-bottom: 1px solid #CCCCCC;
    padding: 20px 0 30px;
    margin-bottom: 30px;
}

.ec-sunshade__txt {
    font-size: 1.8rem;
    color: #020202;
}

.ec-sunshade__txt p+p {
    margin: 25px 0 0;
}

.ec-sunshadeItem02 {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
}

.ec-sunshadeItem02 .ec-sunshadeRight {
    padding-left: 0;
    padding-right: 40px;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-sunshadeRole__img {
        width: 100%;
        height: 357px;
    }

    .ec-sunshadeBox {
        padding: 0 0 50px;
    }

    .ec-sunshadeItem {
        display: block;
        padding-top: 55px;
    }

    .ec-sunshadeLeft {
        width: 100%;
    }

    .ec-sunshadeRight {
        width: 100%;
        display: block;
        padding-left: 0;
        margin-top: 20px;
    }

    .ec-sunshade__Sub {
        font-size: 1.8rem;
        padding: 10px 0 15px;
        margin-bottom: 15px;
    }

    .ec-sunshade__txt {
        font-size: 1.4rem;
    }

    .ec-sunshade__txt p+p {
        margin: 10px 0 0;
    }

    .ec-sunshadeItem02 {
        display: block;
    }

    .ec-sunshadeItem02 .ec-sunshadeRight {
        padding-right: 0;
    }
}

/* !sunshade__________Page
---------------------------------------------------------- */


/* !mypage__________Page
---------------------------------------------------------- */


.ec-mypageRole__Box {
    padding: 0 0 110px;
}

.ec-mypageRole__Box__sub {
    border-bottom: 1px solid #000000;
    font-size: 2.8rem;
    font-weight: bold;
    letter-spacing: 0.08em;
    padding-bottom: 21px;
    color: #000000;
}

.ec-mypageRole__Box__txt {
    font-size: 1.8rem;
    margin: 40px 0 53px;
}

.ec-mypageRole__Box__btn {
    margin-bottom: 57px;
    text-align: center;
    color: #fff;
    font-size: 2.8rem;
    letter-spacing: 0.08em;
    font-weight: bold;
    background-color: #C4271F;
    border-radius: 59px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.28);
    padding: 29px 0;
}

.ec-mypageRole__Box__btn span {
    font-size: 4.2rem;
    font-weight: bold;
}


.ec-mypageRole__Box__item {
    margin-left: -68px;
}

.ec-mypageRole__Box__list {
    float: left;
    width: 33.33%;
    padding-left: 68px;
    box-sizing: border-box;
}

.ec-mypageRole__Box__full {
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(69, 69, 69, 0.16);
    padding: 45px 39px;
    box-sizing: border-box;
    min-height: 290px;
}

.ec-mypageRole__Box__title {
    text-align: center;
    color: #020202;
    font-size: 2rem;
    letter-spacing: 0.16em;
    font-weight: bold;
    background-color: #EAE331;
    padding: 19px 0;
}

.ec-mypageRole__Box__tet {
    font-size: 1.8rem;
    font-weight: bold;
    color: #020202;
    margin-top: 20px;
}

.ec-mypageRole__Box__tet span {
    color: #C4271F;
    font-size: 2.5rem;
    font-weight: bold;
}

.ec-mypageRole__note {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 2.28;
}

.ec-mypageRole__link {
    text-align: center;
    margin: 126px 0 147px;
}

.ec-mypageRole__link a {
    color: #C4271F;
    border: 1px solid #C4271F;
    background: #fff;
    font-weight: bold;
    font-size: 2.1rem;
    letter-spacing: 0.1em;
    border-radius: 40px;
    padding: 24px 134px;
    box-sizing: border-box;
    display: inline-block;
}

.ec-mypageRole__link a:hover {
    transition: all 0.5s;
    text-decoration: none;
    color: #fff;
    border: 1px solid #fff;
    background: #C4271F;
}

.ec-mypageRole__Box__txtrEd {
    color: #C4271F;
    font-weight: bold;
    font-size: 1.5rem;
    margin-top: -32px;
}

.ec-mypageRole__Box__gray {
    margin: 74px 0 0;
}


.ec-mypageRole {
    padding-left: 0;
    padding-right: 0;
}




/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-mypageRole__Box {
        padding: 0 0 55px;
    }

    .ec-mypageRole__Box__sub {
        font-size: 1.8rem;
        padding-bottom: 10px;
    }

    .ec-mypageRole__Box__txt {
        font-size: 1.4rem;
        margin: 20px 0 25px;
    }

    .ec-mypageRole__Box__btn {
        margin-bottom: 30px;
        font-size: 1.2rem;
        padding: 15px 0;
    }

    .ec-mypageRole__Box__btn span {
        font-size: 1.4rem;
    }


    .ec-mypageRole__Box__item {
        margin-left: 0;
    }

    .ec-mypageRole__Box__list {
        float: none;
        width: 100%;
        padding-left: 0;
        margin-top: 20px;
    }

    .ec-mypageRole__Box__full {
        padding: 23px 20px;
        min-height: auto;
    }

    .ec-mypageRole__Box__title {
        font-size: 1.4rem;
        padding: 10px 0;
    }

    .ec-mypageRole__Box__tet {
        font-size: 1.4rem;
        margin-top: 10px;
    }

    .ec-mypageRole__Box__tet span {
        font-size: 1.6rem;
    }

    .ec-mypageRole__note {
        line-height: 1.5;
    }

    .ec-mypageRole__link {
        margin: 60px 0;
    }

    .ec-mypageRole__link a {
        font-size: 1.4rem;
        padding: 12px 67px;
    }

    .ec-mypageRole__link a:hover {
        color: #C4271F;
        border: 1px solid #C4271F;
    }

    .ec-mypageRole__Box__txtrEd {
        font-size: 1.3rem;
        margin-top: 0;
    }

    .ec-mypageRole__Box__gray {
        margin: 37px 0 0;
    }

    .ec-mypageRole .ec-pointRole {
        margin: 0 -20px;
        width: calc(100% + 40px);
    }
}

/* !mypage__________Page
---------------------------------------------------------- */


/* !mypage_about_________Page
---------------------------------------------------------- */

.ec-myaboutRole {
    margin-top: 10px;
}

.ec-myaboutRole__left {
    float: left;
    width: 26%;
}

.ec-myaboutRole__right {
    overflow: hidden;
    padding-left: 67px;
    box-sizing: border-box;
}

.ec-myaboutRole__side__item {
    margin-bottom: 50px;
}

.ec-myaboutRole__side__item p {
    font-size: 2rem;
    padding-bottom: 16px;
    border-bottom: 1px solid #C4271F;
}

.ec-myaboutRole__side__item ul {
    margin: 0;
    padding: 0;
    list-style: none;
    margin-top: 17px;
}

.ec-myaboutRole__side__item ul li {
    font-size: 1.8rem;
}

.ec-myaboutRole__side__item ul li a {
    display: block;
    color: #999999;
    padding: 10px 0;
}

.ec-myaboutRole__side__btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 73px;
    color: #C4271F;
    font-size: 2rem;
    border: 1px solid #C4271F;
    letter-spacing: 0.07em;
}

.ec-myaboutRole__right {
    padding-top: 40px;
}

.ec-myaboutRole__box {
    padding: 0 0 74px;
}

.ec-myaboutRole__txtitem_info {
    font-size: 1.4rem;
    line-height: 1.85;
}

.ec-myaboutRole__txtitem_text {
    font-size: 1.2rem;
    line-height: 1.85;
    font-weight: bold;
    color: #C4271F;
}

.ec-myaboutRole__txtitem_link {
    margin-top: 80px;
}

.ec-myaboutRole__txtitem_link a {
    font-size: 1.4rem;
    text-decoration: underline;
    display: inline-block;
    color: #020202;
}


.ec-myaboutRole__sub {
    font-size: 2.9rem;
    font-weight: bold;
    letter-spacing: 0.08em;
    padding-bottom: 20px;
    border-bottom: 2px solid #000;

}

.ec-myaboutRole__list__title {
    margin: 44px 0;
    font-size: 2.3rem;
    font-weight: bold;
    letter-spacing: 0.08em;
    padding-left: 34px;
    border-left: 7px solid #C4271F;
}

.ec-myaboutRole__list__mess {
    margin: 21px 0 0;
    font-size: 1.4rem;
}

.ec-myaboutRole__note {
    margin-top: 55px;
}

.ec-myaboutRole__note_left {
    float: left;
    width: 50%;
}

.ec-myaboutRole__note_left img {
    width: auto;
}

.ec-myaboutRole__note_right {
    overflow: hidden;
    padding-left: 27px;
    box-sizing: border-box;
    font-size: 1.4rem;
    line-height: 1.85;
}

.ec-myaboutRole__list {
    margin-bottom: 85px;
}


/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-myaboutRole {
        margin-top: 5px;
    }

    .ec-myaboutRole__left {
        float: none;
        width: 100%;
    }

    .ec-myaboutRole__right {
        padding-left: 0;
        padding-top: 30px;
    }

    .ec-myaboutRole__side__item {
        margin-bottom: 25px;
    }

    .ec-myaboutRole__side__item p {
        font-size: 1.4rem;
        padding-bottom: 8px;
    }

    .ec-myaboutRole__side__item ul {
        margin-top: 8px;
    }

    .ec-myaboutRole__side__item ul li {
        font-size: 1.4rem;
    }

    .ec-myaboutRole__side__item ul li a {
        padding: 5px 0;
    }

    .ec-myaboutRole__side__btn a {
        height: 45px;
        color: #C4271F;
        font-size: 1.4rem;
    }

    .ec-myaboutRole__right {
        padding-top: 20px;
    }

    .ec-myaboutRole__box {
        padding: 0 0 35px;
    }

    .ec-myaboutRole__txtitem_info {
        font-size: 1.2rem;
    }

    .ec-myaboutRole__txtitem_text {
        font-size: 1rem;
    }

    .ec-myaboutRole__txtitem_link {
        margin-top: 40px;
    }

    .ec-myaboutRole__txtitem_link a {
        font-size: 1.2rem;
    }

    .ec-myaboutRole__list img {
        width: 100%;
    }

    .ec-myaboutRole__sub {
        font-size: 1.6rem;
        padding-bottom: 10px;
        border-bottom: 1px solid #000;

    }

    .ec-myaboutRole__list__title {
        margin: 22px 0;
        font-size: 1.4rem;
        padding-left: 17px;
        border-left: 4px solid #C4271F;
    }

    .ec-myaboutRole__list__mess {
        margin: 10px 0 0;
        font-size: 1.2rem;
    }

    .ec-myaboutRole__note {
        margin-top: 25px;
    }

    .ec-myaboutRole__note_left {
        float: none;
        width: 100%;
    }

    .ec-myaboutRole__note_right {
        padding-left: 0;
        margin-top: 13px;
        font-size: 1.2rem;
    }

    .ec-myaboutRole__list {
        margin-bottom: 40px;
    }

    .ec-myaboutRole__note_left img {
        width: 100%;
    }
}

/* !mypage_about_________Page
---------------------------------------------------------- */

/* !specially_________Page
---------------------------------------------------------- */
.ec-speciallyRole__box {
    padding-bottom: 20px;
}

.ec-speciallyRole__box dl {
    display: table;
    width: 100%;
    border-bottom: 1px dotted #666666;
    padding: 30px 0;
    margin: 0;
}

.ec-speciallyRole__box dl dt,
.ec-speciallyRole__box dl dd {
    display: table-cell;
}

.ec-speciallyRole__box dl dt {
    width: 260px;
    font-weight: bold;
    font-size: 1.6rem;
    color: #333;
}

.ec-speciallyRole__box dl dd {
    padding-left: 10px;
    box-sizing: border-box;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.5;
}

.ec-speciallyRole__box dl dd a {
    display: block;
    color: #333;
    text-decoration: underline;
}

.ec-speciallyRole__box dl dd p+p {
    margin-top: 20px;
}

.ec-speciallyRole__box dl dd a.tel {
    pointer-events: none;
    text-decoration: none;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-speciallyRole__box {
        padding-bottom: 30px;
    }

    .ec-speciallyRole__box dl {
        display: block;
        padding: 15px 0;
    }

    .ec-speciallyRole__box dl dt,
    .ec-speciallyRole__box dl dd {
        display: block;
    }

    .ec-speciallyRole__box dl dt {
        width: 100%;
        font-size: 1.4rem;
        padding-bottom: 15px;
    }

    .ec-speciallyRole__box dl dd {
        padding-left: 0;
        font-size: 1.4rem;
    }

    .ec-speciallyRole__box dl dd p+p {
        margin-top: 15px;
    }

    .ec-speciallyRole__box dl dd a.tel {
        pointer-events: initial;
    }



}


/* !specially_________Page
---------------------------------------------------------- */

/* !policy__________Page
---------------------------------------------------------- */
.ec-policyRole__box {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
}

.ec-policyRole__item {
    margin-bottom: 50px;
}

.ec-policyRole__item h2 {
    margin: 0 0 30px 0;
    font-weight: bold;
    color: #C4271F;
    font-size: 2.4rem;
    letter-spacing: 0.08em;
}

.ec-policyRole__item p {
    font-size: 1.4rem;
    line-height: 1.85;
}

.ec-policyRole__item p+p {
    margin-top: 30px;
}


/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-policyRole__box {
        padding-bottom: 30px;
    }

    .ec-policyRole__item {
        margin-bottom: 25px;
    }

    .ec-policyRole__item h2 {
        margin: 0 0 15px 0;
        font-size: 1.6rem;
    }

    .ec-policyRole__item p {
        font-size: 1.2rem;
        line-height: 1.5;
    }

    .ec-policyRole__item p+p {
        margin-top: 15px;
    }
}

/* !policy__________Page
---------------------------------------------------------- */

/* !sidemap__________Page
---------------------------------------------------------- */
.ec-sitemapRole {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
}

.sitemapRole__list {
    padding: 18px 0;
    border-bottom: 1px solid #CCCCCC;
}

.sitemapRole__list h2 {
    margin: 0 0 10px 0;
    font-size: 1.4rem;
}

.sitemapRole__list h2 a {
    display: inline-block;
    color: #111111;
    font-weight: bold;
    font-size: 1.4rem;
    text-decoration: underline;
}

.sitemapRole__list p a {
    display: inline-block;
    color: #111111;
    font-size: 1.4rem;
    text-decoration: underline;
    margin-right: 20px;
}

.sitemapRole__list a:hover {
    transition: all 0.5s;
    color: #C4271F;
}


/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    .ec-sitemapRole {
        margin-bottom: 20px;
    }

    .sitemapRole__list {
        padding: 10px 0;
    }

    .sitemapRole__list h2 {
        margin: 0 0 5px 0;
    }

    .sitemapRole__list p a {
        margin-right: 10px;
    }

    .sitemapRole__list a:hover {
        transition: all 0.5s;
        color: #C4271F;
    }
}

/* !sidemap__________Page
---------------------------------------------------------- */

/* !contact__________Page
---------------------------------------------------------- */
#page_contact .ec-layoutRole .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_contact .ec-contactRole {
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
    margin-bottom: 30px;
}

.ec-off1Grid .ec-off1Grid__cell {
    width: 100%;
    margin: 0 auto;
    max-width: 910px;
}

.ec-contactRole p {
    margin: 16px 0;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
}

.ec-blockBtn--action {
    padding: 0 10px;
    font-size: 16px;
    border-radius: 30px;
    background-color: #C4271F;
    border-color: #C4271F;
    height: 60px;
    line-height: 60px;
    margin-bottom: 30px;
    margin-top: 15px;
}

.ec-blockBtn--cancel {
    border-radius: 30px;
    color: #fff !important;
    margin-bottom: 30px;
}

.ec-cartRole__actions .ec-blockBtn--action {
    color: white !important;
}

.ec-modal-box .ec-inlineBtn--action {
    color: white !important;
}

#page_contact .ec-teaserRole__title {
    font-size: 4.3rem;
    color: #000;
}

.ec-zipInputHelp span {
    color: #D085A6;
}


/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
    #page_contact .ec-contactRole {
        margin-bottom: 15px;
    }

    .ec-contactRole p {
        margin: 8px 0;
        font-size: 1.6rem;
    }

    .ec-blockBtn--action {
        padding: 0 5px;
        font-size: 12px;
        height: 45px;
        line-height: 45px;
    }

    .ec-off1Grid {
        padding-bottom: 40px;
    }

    #page_contact .ec-teaserRole__title {
        font-size: 2.1rem;
    }
}

/* !contact__________Page
---------------------------------------------------------- */

.ec-grid2__right .preconnect {
    position: relative;
    top: 0;
}

.ec-grid2__right.js-stay .preconnect {
    position: fixed;
    top: 85px;
}

.ec-grid2__right.js-stop .preconnect {
    position: absolute;
    top: 100%;
    transform: translateY(-100%);
}

.ec-detailBox__pic label {
    cursor: pointer;
    display: block;
    transition: 0.2s;
    position: relative;
    margin: 0;
}

.ec-detailBox__pic label input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    margin: 0;
}

.ec-detailBox__pic label .img-thumb {
    position: relative;
}

.ec-detailBox__pic label:hover .img-thumb,
.ec-detailBox__pic label input[type="radio"]:checked+.img-thumb img {
    opacity: 0.3;
}

.ec-detailBox__pic label input[type="radio"]:checked+.img-thumb:before {
    background: url('../../../../html/user_data/assets/img/common/ico-select.png') no-repeat center/cover;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 42%;
    height: 45%;
    z-index: 2;
}

.img-thumb img {
    width: 100%;
}


.anchor {
    display: block;
    margin-top: -80px;
    padding-top: 80px;
}

.ec-slider__fullr {
    margin-bottom: 30px;
}

.ec-slider__fullr span {
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 13px;
}

.ec-slider__fullr select {
    width: 100%;
    font-size: 1.2rem;
    height: 43px;
    border-radius: 10px;
    border: 1px solid #CCCCCC;
    padding: 12px 20px;
    box-sizing: border-box;
}

.ec-infoRole {
    padding: 20px 50px 40px;
}

.ec-infoRole__item dl {
    display: flex;
    padding: 28px 0;
    margin: 0;
    cursor: pointer;
    align-items: center;
}

.ec-infoRole__item dl dt {
    width: 280px;
    flex-shrink: 0;
}

.ec-infoRole__item dl dd {
    padding-left: 6px;
    box-sizing: border-box;
}

.ec-infoRole__item dl dd p {
    display: block;
    color: #020202;
    font-size: 1.6rem;
}

.ec-infoRole__item dl dd p a {
    color: #020202;
    text-decoration: none;
}

.tabArea {
    display: flex;
    align-items: center;
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
    width: 100%;
}

.top_news_tit {
    width: 125px;
    flex-shrink: 0;
}

.top_news_list {
    width: calc(100% - 125px)
}

.tabBox {
    display: none;
    padding: 0 0 28px;
}




.ec-infoRole__icon {
    display: inline-block;
    color: #fff;
    background-color: #C4271F;
    font-size: 1.5rem;
    padding: 8px 13px;
    box-sizing: border-box;
    font-weight: normal;
}

.ec-infoRole__news {
    display: inline-block;
    color: #C4271F;
    border: 1px solid #C4271F;
    border-radius: 13px;
    background-color: #fff;
    font-size: 1.5rem;
    margin: 0 28px 0 40px;
    padding: 4px 18px;
    box-sizing: border-box;
    font-weight: normal;
}

.ec-infoRole__date {
    display: inline-block;
    color: #888888;
    font-size: 1.6rem;
    font-weight: normal;
}

#all {
    width: 100%;
    margin: 0 auto;
}

#wrapper_side {
    width: 100%;
    font-size: 18px;
    margin: 0 auto;
    border-top: #c41c14 6px none;
    border-right: #c41c14 6px solid;
    border-left: #c41c14 6px solid;
    border-bottom: #c41c14 6px solid;
    padding: 0 24px;
}

#ticker {
    padding: 0;
    height: 500px;
    overflow: hidden;
}

#ticker li {
    margin: 0;
    border: 0;
    list-style: none;
}

#ticker p {
    font-size: 1em;
    color: #c41c14;
    display: block;
    overflow: hidden;
}

#ticker a:link,
a:visited {
    color: #c41c14;
}

#order-list {
    border-collapse: collapse;
    border: 1px solid #666666;
    background: #f6f6f6;
}

.orderitem_data {
    border: 1px solid #666666;
}

#ticker .order {
    overflow: hidden;
    border-bottom: 1px dashed #666666;
    padding: 30px 0;

}

.iconbox {
    float: right;
    text-align: center;
    width: 100px;
    margin-left: 30px;
    overflow: hidden;
}

.nss_icon {
    width: 44px;
}


.news-text {
    padding-left: 3px;
    display: block;
}

.news-text:hover {
    text-decoration: none;
}

.news-text .news_detail {
    font-size: 2.5rem;
    color: black;
}

.banner {
    float: left;
    max-width: 100%;
    width: auto !important;
}

.float_clear {
    clear: both;
}

.data_no {
    text-align: center;
}

.data_time {
    text-align: center;
}

.data_order_id {
    text-align: center;
}

.data_addr {
    text-align: center;
}

.data_name {
    text-align: center;
}

.data_item {
    text-align: left;
}

.data_price {
    text-align: center;
}

.data_quantity {
    text-align: center;
}

.freedialIcon {
    display: flex;
    align-items: center;
    margin: 0 20px;
}

.freedialIcon span {
    font-weight: bold;
    font-size: 1.4rem;
    display: inline-block;
    line-height: 1.42;
    margin-right: 15px;
    white-space: nowrap;
}

.freedialIcon img {
    width: 235px;
}

@media screen and (max-width:1650px) {
    .ec-layoutRole__header {
        padding: 0 20px;
    }

    .ec-headerNav .ec-headerNav__itemLink {
        font-size: 1.1rem;
    }

    .ec-headerNaviRole__nav .ec-headerNav .ec-headerNav__itemLink {
        font-size: 1.1rem;
        white-space: nowrap;
    }

    .ec-headerNavSP,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(1) a,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) a {
        margin-left: 25px;
    }
    .ec-headerSearch .ec-headerSearch__keywordBtn {
        width: 50px;
    }

    .ec-headerSearch .ec-headerSearch__keywordBtn span{
        display: none;
    }

    .ec-headerNaviRole .ec-headerNaviRole__left {
        max-width: 350px;
    }

    .freedialIcon img {
        /* width: 180px; */
    }

    .freedialIcon span {
        /* font-size: 1.1rem;
        margin-right: 10px; */
    }

    .news-text .news_detail {
        font-size: 1.5rem;
    }

}

@media screen and (max-width:1240px) {
    .freedialIcon img {
        width: 180px;
    }

    .ec-headerTitle .ec-headerTitle__title img {
        max-width: 140px;
    }

    .freedialIcon span {
        margin-right: 5px;
        font-size: 1.1rem;
    }

    .ec-headerNavSP,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(1) a,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) a {
        margin-left: 15px;
    }

    .ec-headerSearch .ec-headerSearch__category {
        width: 100px;
    }

    .ec-headerNaviRole {
        width: 50%;
    }
}

@media screen and (max-width:1120px) {
    .freedialIcon img {
        width: 95px;
    }

    .freedialIcon span {
        margin-right: 2px;
        font-size: 0.8rem;
    }

    .ec-headerNavSP,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(1) a,
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) a {
        margin-left: 5px;
    }

    .ec-headerNavSP img,
    .ec-headerNaviRole__nav .ec-headerNav .ec-headerNav__item img {
        height: 25px;
    }

    .search_button button{
        width: 85px;
        height: 35px;
        line-height: 35px;
    }

    .search_button button span{
        font-size: 1rem;
    }

    .freedialIcon {
        margin: 0 5px;
    }

    .ec-headerNaviRole {
        width: 56%;
    }
}

@media screen and (max-width: 768px) {
    .ec-headerNaviRole__nav .ec-headerNav:nth-child(2) a {
        margin-left: -5px;
    }

    .ec-headerSearch__button img,
    .ec-headerNavSP img,
    .ec-headerNaviRole__nav .ec-headerNav .ec-headerNav__item img {
        height: 30px;
    }

    .ec-headerNavSP{
        font-size:1.1rem;
    }

    .ec-headerSearch__button{
        margin-left: -5px;
        font-size: 1.1rem;
        width: 55px;
    }
}

.ec-imagesRole {
    max-width: 1037px;
    margin: 0 auto;
}

.ec-addimg {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ec-addimg p {
    flex: 0 0 48%;
}

.ec-addimg a {
    display: block;
}

.ec-addimg a:hover {
    opacity: 0.8;
    transition: all 0.5s;
    text-decoration: none;
}

.ec-addimg img {
    width: 100%;
}

#ec-searchRole .ec-searchRole__list {
    border-bottom: 0;
    margin-bottom: 0;
}

#ec-searchRole {
    padding: 30px 0 40px;
}

.silderMess {
    font-size: 2.2rem;
    line-height: 1.5;
    color: #000;
    margin: 7px 0 17px;
}

.silderMess a {
    display: inline-block;
    text-decoration: underline;
    color: #C4271F;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    .ec-grid2__right.js-stay .preconnect {
        position: relative;
        top: 0;
    }

    .ec-grid2__right.js-stop .preconnect {
        position: relative;
        top: 0;
        transform: translateY(0);
    }

    .anchor {
        margin-top: -55px;
        padding-top: 55px;
    }

    .ec-layoutRole .ec-layoutRole__main {
        overflow: hidden;
    }


    .ec-infoRole {
        padding: 10px 0 20px;
    }

    .ec-infoRole__item dl {
        display: block;
        padding: 14px 0 0;
    }

    .ec-infoRole__item dl dt,
    .ec-infoRole__item dl dd {
        display: block;
    }

    .ec-infoRole__item dl dt {
        width: 100%;
    }

    .ec-infoRole__item dl dd {
        padding-left: 0;
        margin-top: 10px;
    }

    .ec-infoRole__item dl dd a {
        font-size: 1.3rem;
    }

    .ec-infoRole__icon {
        font-size: 1.2rem;
        padding: 4px 7px;
    }

    .ec-infoRole__news {
        font-size: 1.2rem;
        margin: 0 14px 0 0;
        padding: 2px 9px;
    }

    .ec-infoRole__date {
        font-size: 1.3rem;
    }

    .tabArea {
        display: block;
        padding: 10px;
    }

    .top_news_tit {
        width: 100%;
    }

    .top_news_tit span {
        width: 100%;
        text-align: center;
    }

    .top_news_list {
        width: 100%;
    }

    .tabBox {
        padding: 0 0 14px;
        text-align: left;
    }

    .freedialIcon {
        display: none;
    }


    #wrapper_side {
        font-size: 12px;
        border-top: #c41c14 3px none;
        border-right: #c41c14 3px solid;
        border-left: #c41c14 3px solid;
        border-bottom: #c41c14 3px solid;
        padding: 0 12px;
    }

    #ticker {
        height: 400px;
    }

    #ticker .order {
        padding: 15px 0;

    }

    .iconbox {
        margin-left: 10px;
    }

    .silderMess {
        font-size: 1.6rem;
        margin: 15px 0;
    }

    #ec-searchRole {
        padding: 46px 0 40px;
    }
}


.page_main_img_sub_list {
    display: flex;
    justify-content: space-between;
    /* margin: 40px -10px 0; */
    margin: 10px 0px 0;
}

.page_main_img_sub_list li {
    width: 100%;
    margin: 0 10px;
}

.page_main_img_sub_list_txt {
    text-align: center;
    color: #0E66BF;
    font-size: 2.5rem;
    margin-top: 20px;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .page_main_img_sub_list {
        display: flex;
        justify-content: space-between;
        margin: 20px -5px 0;
    }

    .page_main_img_sub_list li {
        width: 100%;
        margin: 0 5px;
    }

    .page_main_img_sub_list_txt {
        text-align: left;
        color: #0E66BF;
        font-size: 1rem;
        margin-top: 10px;
    }

    .item_nav_icon:before {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 20px;
        height: 18px;
        content: "";
        background: url('../../../../html/user_data/assets/img/common/magnifier.svg')no-repeat center center;
        background-size: 20px;
    }
}

.ec-category__title {
    border-left: 8px solid #fff;
    padding-left: 10px;
    display: inline-block;
}

.list-cat {
    border-left-color: #C4271F;
}

.list-cat-1 {
    border-left-color: #C4271F;
}

.list-cat-2 {
    border-left-color: #118915;
}

.list-cat-3 {
    border-left-color: #747474;
}

.list-cat-4 {
    border-left-color: #0E66BF;
}

.list-cat-5 {
    border-left-color: #111;
}

@media only screen and (min-width: 768px) {
    .ec-category__title {
        border-left-width: 16px;
    }

}

#page_shopping_login .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

@media only screen and (min-width: 768px) {
    #page_shopping_login .ec-layoutRole .ec-layoutRole__left {
        height: 100%;
        top: -10px;
        bottom: auto;
    }
}

#page_shopping_confirm .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_shopping_complete .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_mypage .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_mypage_change_complete .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

/* マイページ クレジットカード編集 */
#page_eccube_payment_lite4_mypage_credit_card_index .ec-layoutRole__contents {
    max-width: 100%;
    display: block;
}

#page_eccube_payment_lite4_mypage_credit_card_index .ec-layoutRole__main {
    max-width: 1540px;
    padding: 0 50px;
    box-sizing: border-box;
    margin: 0 auto;
}

@media only screen and (min-width: 768px) {
    #page_eccube_payment_lite4_mypage_credit_card_index .ec-layoutRole .ec-layoutRole__left {
        height: 570px;
        top: 80px;
        /* height: calc(100% - 746px); */
    }

    #page_eccube_payment_lite4_mypage_credit_card_index .ec-layoutRole .ec-layoutRole__left.is_stop {
        top: 0px;
    }
}

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

    /* マイページ クレジットカード編集 */
    #page_eccube_payment_lite4_mypage_credit_card_index .ec-layoutRole__main {
        max-width: 100%;
        padding: 0 20px;
    }
}

#page_mypage_change_complete .ec-layoutRole__main .ec-layoutRole__main {
    max-width: 1540px;
    padding: 0 50px;
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
}

#page_mypage_history .ec-layoutRole__main .ec-layoutRole__main {
    max-width: 1540px;
    padding: 0 50px;
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
}

#page_mypage_history .ec-inlineBtn {
    color: #525263 !important;
}

#page_mypage_history .ec-inlineBtn:hover {
    color: #C4271F !important;
}

@media only screen and (max-width: 768px) {
    #page_mypage_history .ec-layoutRole__main .ec-layoutRole__main {
        max-width: 100%;
        padding: 0 20px;
    }

    #page_mypage_change_complete .ec-layoutRole__main .ec-layoutRole__main {
        max-width: 100%;
        padding: 0 20px;
    }
}

#page_product_list .inner {
    padding-top: 60px;
}

@media only screen and (max-width: 768px) {
    #page_product_list .inner {
        padding-top: 30px !important;
    }
}

.ec-slider__fullr .wide_or_nomal {
    color: #C4271F;
    font-size: 13px;
    margin-top: 13px;
}

.sidevisor_type {
    color: #C4271F;
    margin-top: 15px;
}

@media only screen and (max-width: 768px) {
    .ec-slider__fullr .wide_or_nomal {
        font-size: 12px;
    }

    .sidevisor_type {
        font-size: 12px;
    }
}

.ec-mypageRole {
    padding-top: 70px;
}

.ec-role {
    padding-top: 70px;
}

.ec-modal .ec-role {
    padding-top: 0px;
}

#page_shopping #shopping_order_use_point {
    margin-top: 10px;
}

#page_shopping .ec-orderRole .ec-orderRole__summary {
    margin-top: 20px !important;
}

#page_shopping .ec-orderRole .ec-orderRole__summary .ec-totalBox {
    position: sticky;
    top: 120px;
}

#page_shopping_confirm .ec-orderRole .ec-orderRole__summary {
    margin-top: 20px !important;
}

#page_shopping_confirm .ec-orderRole .ec-orderRole__summary .ec-totalBox {
    position: sticky;
    top: 120px;
}

@media only screen and (max-width: 768px) {
    .ec-mypageRole {
        padding-top: 30px;
    }

    .ec-role {
        padding-top: 30px;
    }

    #page_shopping .ec-orderRole .ec-orderRole__summary .ec-totalBox {
        position: initial;
        top: auto;
    }

    #page_shopping_confirm .ec-orderRole .ec-orderRole__summary .ec-totalBox {
        position: initial;
        top: auto;
    }
}

#page_mypage_change_complete .ec-layoutRole .ec-layoutRole__left.is_stop {
    top: 0px;
    height: 100%;
}

/*-----▲css中身-----*/

/* TOP-店舗告知 */
.area-notice {
    padding: 0 50px 40px;
}

.area-notice .container {
    padding: 30px;
    color: #c4271f;
    border: 3px solid #c4271f;
    width: calc(100% - 100px);
    margin: 0 50px;
}

@media screen and (max-width: 767px) {
    .area-notice {
        padding: 0;
    }

    .area-notice .container {
        width: calc(100% - 40px);
        margin: 0 20px;
        font-size: .9em;
    }
}

/* 2021-12-17add */
.front_page .ec-2setRole__sub {
    font-weight: bold;
}

.front_page .ec-2setRole__price {
    font-size: 3rem;
    color: #000000;
}

.front_page .ec-2setRole__price span {
    font-size: 1.1rem;
    background-color: #C4271F;
    color: #ffffff;
    padding: 0px 7px 1px 7px;
    border-radius: 10px;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
    .front_page .ec-2setRole__price {
        font-size: 2rem;
    }

    .front_page .ec-2setRole__price span {
        vertical-align: initial;
    }
}

.product_page .ec-productRole__description {
    margin-bottom: 0px;
}

.product_page .ec-productRole__description a {
    display: inline-block;
    margin-bottom: 20px;
    font-size: 2.7rem;
    font-weight: bold;
    text-decoration: underline;
    color: #1CA3FC;
    text-decoration: underline;
}

.product_page .ec-productRole__description a:nth-child(1) {
    margin-top: 60px;
}

.product_page .ec-productRole__description a:nth-last-child(1) {
    margin-bottom: 0;
}

.product_page .ec-imagesRole {
    /* padding-top: 0px; */
}

.product_page .ec-imagesRole .ec-newsTopRole__img:nth-child(1) {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .product_page .ec-productRole__description a {
        font-size: 1.6rem;
    }

    .product_page .ec-productRole__description a:nth-child(1) {
        margin-top: 30px;
    }
}

/* カートページ送料メッセージ */
.delivery_msg{
    width: 100%;
    text-align: center;
    color: #DE5D50;
    margin-top: 10px;
}

/* product-detail-matスライダー */
#nav-slideshow.nav-slider {
    display: none !important;
}
#slideshow {
    position: relative;
}
#slideshow .slick-next{ 
    font-size: 0px;
    background: transparent;
    border: none;
    position: absolute;
    top: 50%;
    right: -90px;
    height: 75px;
    width: 75px;
}
#slideshow .slick-prev{
    font-size: 0px;
    background: transparent;
    border: none;
    position: absolute;
    top: 50%;
    left: -90px;
    height: 75px;
    width: 75px;
}
#slideshow .slick-next:before{
    background: url("../img/products/floormat/arrow-circle-right.svg") no-repeat center right;
    /* background-size: 25px; */
    background-size: 75px;
    z-index: 2;
    /* background: url(img/arrow_r.png);
    background-size: contain; */
  }
  #slideshow .slick-prev:before{
    background: url("../img/products/floormat/arrow-circle-left.svg") no-repeat center left;
    /* background-size: 25px; */
    background-size: 75px;
    z-index: 2;
    /* background: url(img/arrow_l.png);
    background-size: contain; */
  }
  #slideshow .slick-arrow:before{
    content:"";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity:1;
    vertical-align: middle;
  }


  @media screen and (max-width: 1000px) and (min-width:768px){
    .ec-sliderItemRole {
        padding: 0px 30px 10px;
    }

    #slideshow .slick-next{ 
        top: 50%;
        right: -40px;
        z-index: 100;
        height: 50px;
        width: 50px;
    }
    #slideshow .slick-prev{
        top: 50%;
        left: -40px;
        z-index: 100;
        height: 50px;
        width: 50px;
    }
    #slideshow .slick-next:before {
        background-size: 50px;
    }
    #slideshow .slick-prev:before {
        background-size: 50px;
    }

  }
@media screen and (max-width: 768px){
    #slideshow .slick-next{ 
        top: 50%;
        right: -10px;
        z-index: 100;
        height: 50px;
        width: 50px;
    }
    #slideshow .slick-prev{
        top: 50%;
        left: -10px;
        z-index: 100;
        height: 50px;
        width: 50px;
    }
    #slideshow .slick-next:before {
        background-size: 50px;
    }
    #slideshow .slick-prev:before {
        background-size: 50px;
    }
}

.fit_type{
    background-color:yellow !important;
}

.fancybox-skin{
    max-width: 80%;
    margin: 0 auto;
}

.fancybox-outer {
    max-width: 100%;
}

.fancybox-inner{
    margin: auto;
    max-width: 100%;
}

#page_help_guide img{
    max-width: 100%;
}

.side_bnr{
    padding-top: 5px;
}

/* AmazonPay レイアウト調整 */
/* ログイン */
#login_mypage .ec-grid2 {
    padding-bottom: 0px;
}

#login_mypage .div_AmazonLogin {
    margin: 15px 0;
}

#login_mypage .ec-login .ec-login__input {
    margin-bottom: 20px;
}

/* カート */
#form_cart .ec-blockBtn--cancel {
    margin-bottom: 15px;
}

#page_cart #AmazonBanner {
    margin-bottom: 35px;
    padding: 0 50px;
    text-align: center;
}

#page_cart #AmazonBanner img {
    width: 100%;
    max-width: 1037px;
}

#page_cart .ec-imagesRole {
    padding-bottom: 50px;
}

@media screen and (max-width: 768px) {
    #page_cart #AmazonBanner {
        display: none;
    }
}

/* TOPページ */
#page_homepage #AmazonBanner {
    margin-top: 30px;
    padding: 0 50px;
    text-align: center;
}

#page_homepage #AmazonBanner img {
    width: 100%;
    max-width: 1037px;
}

/* ご注文手続き */
#page_amazon_pay_shopping #amazon_pay__payment_descriptor .amazon_pay_amazonpaymentdescriptor_block img {
    max-width: 150px;
    padding: 15px;
}

#page_amazon_pay_shopping .amazon_customer_regist_v2 {
    display: none;
}

/* クーポン */
#coupon_box__cd {
    padding: 15px 0;
}

#coupon_box__cd dt {
    padding-top: 0px;
    margin: auto;
}

/* ブログ */
#page_cm_blog_page_detail .ec-productRole__description p {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

#page_cm_blog_page_detail .ec-productRole__description body {
    /* Font */
    /* Emoji fonts are added to visualise them nicely in Internet Explorer. */
    font-family: sans-serif, Arial, Verdana, "Trebuchet MS", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 12px;

    /* Text color */
    color: #333;

    /* Remove the background color to make it transparent. */
    background-color: #fff;

    margin: 20px;
}

#page_cm_blog_page_detail .ec-productRole__description {
    font-size: 15px;
}

#page_cm_blog_page_detail .ec-productRole__description .cke_editable {
    font-size: 15px;
    line-height: 1.6;

    /* Fix for missing scrollbars with RTL texts. (#10488) */
    word-wrap: break-word;
}

#page_cm_blog_page_detail .ec-productRole__description blockquote {
    font-style: italic;
    font-family: Georgia, Times, "Times New Roman", serif;
    padding: 2px 0;
    border-style: solid;
    border-color: #ccc;
    border-width: 0;
}

#page_cm_blog_page_detail .ec-productRole__description .cke_contents_ltr blockquote {
    padding-left: 20px;
    padding-right: 8px;
    border-left-width: 5px;
}

#page_cm_blog_page_detail .ec-productRole__description .cke_contents_rtl blockquote {
    padding-left: 8px;
    padding-right: 20px;
    border-right-width: 5px;
}

#page_cm_blog_page_detail .ec-productRole__description a {
    color: #0782C1;
}

#page_cm_blog_page_detail .ec-productRole__description ol,
#page_cm_blog_page_detail .ec-productRole__description ul,
#page_cm_blog_page_detail .ec-productRole__description dl {
    /* IE7: reset rtl list margin. (#7334) */
    *margin-right: 0px;
    /* Preserved spaces for list items with text direction different than the list. (#6249,#8049)*/
    padding: 0 40px;
}

#page_cm_blog_page_detail .ec-productRole__description h1,
#page_cm_blog_page_detail .ec-productRole__description h2,
#page_cm_blog_page_detail .ec-productRole__description h3,
#page_cm_blog_page_detail .ec-productRole__description h4,
#page_cm_blog_page_detail .ec-productRole__description h5,
#page_cm_blog_page_detail .ec-productRole__description h6 {
    font-weight: normal;
    line-height: 1.2;
}

#page_cm_blog_page_detail .ec-productRole__description h2 {
    display: block;
    font-size: 1.5em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

#page_cm_blog_page_detail .ec-productRole__description h3 {
    display: block;
    font-size: 1.5em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

#page_cm_blog_page_detail .ec-productRole__description hr {
    border: 0px;
    border-top: 1px solid #ccc;
}

#page_cm_blog_page_detail .ec-productRole__description img.right {
    border: 1px solid #ccc;
    float: right;
    margin-left: 15px;
    padding: 5px;
}

#page_cm_blog_page_detail .ec-productRole__description img.left {
    border: 1px solid #ccc;
    float: left;
    margin-right: 15px;
    padding: 5px;
}

#page_cm_blog_page_detail .ec-productRole__description pre {
    white-space: pre-wrap;
    /* CSS 2.1 */
    word-wrap: break-word;
    /* IE7 */
    -moz-tab-size: 4;
    tab-size: 4;
}

#page_cm_blog_page_detail .ec-productRole__description .marker {
    background-color: Yellow;
}

#page_cm_blog_page_detail .ec-productRole__description span[lang] {
    font-style: italic;
}

#page_cm_blog_page_detail .ec-productRole__description figure {
    text-align: center;
    outline: solid 1px #ccc;
    background: rgba(0, 0, 0, 0.05);
    padding: 10px;
    margin: 10px 20px;
    display: inline-block;
}

#page_cm_blog_page_detail .ec-productRole__description figure>figcaption {
    text-align: center;
    display: block;
    /* For IE8 */
}

#page_cm_blog_page_detail .ec-productRole__description a>img {
    padding: 1px;
    margin: 1px;
    border: none;
    outline: 1px solid #0782C1;
}

/* Widget Styles */
#page_cm_blog_page_detail .ec-productRole__description .code-featured {
    border: 5px solid red;
}

#page_cm_blog_page_detail .ec-productRole__description .math-featured {
    padding: 20px;
    box-shadow: 0 0 2px rgba(200, 0, 0, 1);
    background-color: rgba(255, 0, 0, 0.05);
    margin: 10px;
}

#page_cm_blog_page_detail .ec-productRole__description .image-clean {
    border: 0;
    background: none;
    padding: 0;
}

#page_cm_blog_page_detail .ec-productRole__description .image-clean>figcaption {
    font-size: .9em;
    text-align: right;
}

#page_cm_blog_page_detail .ec-productRole__description .image-grayscale {
    background-color: white;
    color: #666;
}

#page_cm_blog_page_detail .ec-productRole__description .image-grayscale img,
img.image-grayscale {
    filter: grayscale(100%);
}

#page_cm_blog_page_detail .ec-productRole__description .embed-240p {
    max-width: 426px;
    max-height: 240px;
    margin: 0 auto;
}

#page_cm_blog_page_detail .ec-productRole__description .embed-360p {
    max-width: 640px;
    max-height: 360px;
    margin: 0 auto;
}

#page_cm_blog_page_detail .ec-productRole__description .embed-480p {
    max-width: 854px;
    max-height: 480px;
    margin: 0 auto;
}

#page_cm_blog_page_detail .ec-productRole__description .embed-720p {
    max-width: 1280px;
    max-height: 720px;
    margin: 0 auto;
}

#page_cm_blog_page_detail .ec-productRole__description .embed-1080p {
    max-width: 1920px;
    max-height: 1080px;
    margin: 0 auto;
}

/* mat-series↓ */
/* #page_products_mat-series .ec-layoutRole__mainBottom div.inner {
    max-width: 1380px;
} */
.mat-series-wrap img {
    max-width: 100%;
}

.m-s-head {
    background-color: #960903;
    width: 100%;
    text-align: center;
    padding: 10px 60px 10px 60px;
}

.m-s-head-ttl {
    color: white;
    font-weight: bold;
    font-size: 30px;
    vertical-align: middle;
    margin-bottom: 0px;
    display: flex;
    align-items: center;
}

.m-s-head-ttl:before,
.m-s-head-ttl:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #ffffff;
}

.m-s-head-ttl:before {
    margin-right: 1rem;
}

.m-s-head-ttl:after {
    margin-left: 1rem;
}

.m-s-ttl {
    font-size: 60px;
    font-weight: bold;
    color: white;
}

.m-s-saidan {
    color: #B70000;
    font-weight: bold;
    /* font-size: 40px; */
    font-size: 48px;
    padding: 10px 20px;
    box-shadow: 2px 3px 3px #ececec;
    margin: 20px auto 30px;
    text-align: center;
    max-width: 600px;
    margin-top: 40px;
    margin-bottom: 50px;
}

.m-s-intro {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin-bottom: 60px;
    max-width: 1280px;
    margin: auto;
}

.m-s-intro div {
    /* width: 46%; */
    width: 43%;
    margin-bottom: 20px;
}

.m-s-intro img {
    width: 530px;
    max-width: 100%;
}

.m-s-intro-p1 {
    font-weight: bold;
    /* font-size: 34px; */
    font-size: 42px;
    color: #960903;
}

.m-s-intro-p2 {
    /* font-size: 24px; */
    /* font-size: 26px; */
    font-size: 32px;
    color: #555555;
    font-weight: 500;
}

.m-s-intro-p2 span {
    background: linear-gradient(transparent 70%, #fff749 60%);
}

.m-s-5link {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

.m-s-5link p {
    width: 33%;
    margin-bottom: 30px;
}

.m-s-tiser1 {
    width: 100%;
    margin-bottom: 60px;
}

.m-s-inner-padding {
    padding: 0 50px 0 50px;
}

.ud-shingo {
    font-family: "a-otf-ud-shin-go-pr6n", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.m-s-detail {
    display: flex;
    align-items: center;
    font-size: 32px;
    margin-bottom: 5px;
    background-color: #EDEDED;
    padding: 30px 50px;
    margin: auto;
    margin-bottom: 60px;
    max-width: 1130px;
}

.m-s-detail div {
    width: 100%;
}

.m-s-detail img {
    max-width: 250px;
    margin-right: 30px;
}

.m-s-detail .m-s-d-1 span {
    color: #C41C15;
}

.m-s-d-1 {
    color: #776659;
    margin-bottom: 10px;
    font-weight: bold;
}

.m-s-d-2 {
    font-size: 22px;
    color: #555555;
    margin-bottom: 20px;
}

.m-s-d-2 span {
    background: linear-gradient(transparent 70%, #fff749 60%);
}

.m-s-detail a {
    color: #3B3B3B;
    text-align: right;
    display: block;
    font-size: 22px;
    position: relative;
    padding-bottom: 5px;
    padding-right: 30px;
    text-decoration: none;
}

.m-s-detail a:hover {
    text-decoration: none;
}

.m-s-detail a img {
    position: absolute;
    right: 0px;
    bottom: -5px;
    margin: 0px;
    max-width: 400px;
}

.m-s-bg-ribon {
    text-align: center;
    font-size: 40px;
    font-weight: bold;
    background-image: url(../img/products/mat-series/ribon.png);
    color: white;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    padding: 20px 0;
    margin-bottom: 60px;
}

.m-s-flex4 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

.m-s-flex4 div {
    width: 24%;
    /* margin-bottom: 10px; */
    margin-bottom: 30px;
}

.m-s-flex4 figcaption {
    margin-top: 5px;
    color: #000000;
    /* font-size: 22px; */
    font-size: 24px;
    font-weight: bold;
    /* max-width: 230px; */
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}

.m-s-flex4 figcaption span {
    color: #C41C15;
    font-weight: bold;
    background: linear-gradient(transparent 70%, #fff749 60%);
}

.color-vari figcaption {
    margin-top: 5px;
    color: #5A5A5A;
    /* font-size: 18px; */
    font-size: 20px;
    font-weight: bold;
}

.color-vari figcaption {
    text-align: center;
}

.m-s-flex6.color-vari figcaption {
    text-align: left;
    font-size: 16px;
}

.m-s-15mm {
    font-size: 22px;
}

.m-s-flex6 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

.m-s-flex6 div {
    width: 16.66%;
    margin-bottom: 20px;
    padding: 0 10px 0 10px;
}

.m-s-lineup {
    margin-bottom: 60px;
}

.m-s-flex4 figcaption span.m-s-15mm {
    background: transparent;
}

#about {
    margin-top: -100px;
    padding-top: 100px;
}

@media screen and (max-width: 1470px) {
    .m-s-intro-p2 {
        font-size: 24px;
    }

    .m-s-flex4 figcaption {
        padding-left: 0px;
        font-size: 22px;
    }
}

@media screen and (max-width: 1430px) {
    .m-s-ttl {
        font-size: 40px;
        font-weight: bold;
        color: white;
    }

    .m-s-head-ttl {
        font-size: 20px;
    }

    .m-s-head {
        padding: 10px 20px 10px 20px;
    }

    .m-s-saidan {
        font-size: 28px;
    }

    .m-s-intro-p1 {
        font-size: 26px;
    }

    .m-s-flex4 figcaption {
        font-size: 20px;
        max-width: 200px;
        padding-left: 0px;
    }

    .m-s-detail {
        padding: 30px 30px;
    }

    .m-s-d-1 {
        font-size: 24px;
    }

    .m-s-detail img {
        max-width: 200px;
    }

    .m-s-d-2 {
        font-size: 18px;
    }

    .m-s-detail a {
        font-size: 18px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__left {
        max-width: 150px;
    }

    .search_area{
        display: none;
    }

    .search_button{
        display: block;
    }
}

@media screen and (max-width: 1180px) {
    .m-s-ttl {
        font-size: 32px;
    }

    .m-s-intro-p2 {
        font-size: 18px;
    }

    .m-s-intro-p1 {
        font-size: 20px;
    }

    .m-s-intro div {
        width: 46%;
    }

    .m-s-detail {
        font-size: 14px;
        padding: 30px 10px;
        /* flex-direction: column; */
        margin-bottom: 30px;
    }

    .m-s-detail img {
        max-width: 100%;
        margin-right: 10px;
        max-height: 150px;
    }

    .m-s-d-1 {
        margin-top: 10px;
        font-size: 18px;
    }

    .m-s-d-2 {
        font-size: 14px;
    }

    .m-s-detail a {
        padding-right: 10px;
        font-size: 14px;
        text-align: center;
    }

    .m-s-detail a img {
        bottom: -3px;
        max-width: 80%;
        right: 5%;
    }

    .m-s-bg-ribon {
        font-size: 24px;
    }

    .m-s-flex4 figcaption br {
        display: none;
    }
}

@media screen and (max-width: 950px) {
    .m-s-detail {
        font-size: 14px;
        padding: 30px 10px;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .m-s-detail img {
        max-width: 100%;
        margin-right: 0px;
        max-height: 150px;
    }

    .m-s-d-1 {
        margin-top: 10px;
        font-size: 18px;
    }

    .m-s-d-2 {
        font-size: 14px;
    }

    .m-s-detail a {
        padding-right: 10px;
        font-size: 14px;
        text-align: center;
    }

    .m-s-detail a img {
        bottom: -3px;
        max-width: 88%;
        right: 0px;
    }
}

@media screen and (max-width: 768px) {
    #about {
        margin-top: -55px;
        padding-top: 55px;
    }

    .m-s-ttl {
        font-size: 26px;
    }

    .m-s-head-ttl {
        font-size: 18px;
    }

    .m-s-saidan {
        font-size: 24px;
        margin-bottom: 40px;
        margin-top: 30px;
    }

    .m-s-intro-p1 {
        font-size: 16px;
    }

    .m-s-intro-p2 {
        font-size: 14px;
    }

    .m-s-intro {
        margin-bottom: 20px;
    }

    .m-s-5link {
        margin-bottom: 20px;
    }

    .m-s-5link p {
        width: 50%;
        margin-bottom: 20px;
    }

    .m-s-lineup {
        margin-bottom: 30px;
    }

    .m-s-tiser1 {
        margin-bottom: 30px;
    }

    .m-s-inner-padding {
        padding: 0 10px 0 10px;
    }

    .m-s-detail {
        font-size: 14px;
        padding: 30px 10px;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .m-s-detail img {
        max-width: 100%;
        margin-right: 0px;
        max-height: 150px;
    }

    .m-s-d-1 {
        margin-top: 15px;
        font-size: 18px;
    }

    .m-s-d-2 {
        font-size: 14px;
    }

    .m-s-detail a {
        padding-right: 10px;
        font-size: 14px;
        text-align: center;
    }

    .m-s-detail a img {
        bottom: -3px;
        max-width: 100%;
    }

    .m-s-detail div {
        max-width: 400px;
    }

    .m-s-bg-ribon {
        font-size: 18px;
        margin-bottom: 30px;
    }

    .m-s-flex4 {
        margin-bottom: 20px;
    }

    .m-s-flex4 div {
        width: 48%;
        margin-bottom: 15px;
    }

    .m-s-flex4 figcaption {
        margin-top: 0;
        font-size: 14px;
        max-width: 100%;
    }

    .m-s-flex6 {
        margin-bottom: 30px;
        justify-content: space-evenly;
    }

    .m-s-flex6 div {
        width: 33.33%;
        padding: 0 5px 0 5px;
        margin-bottom: 10px;
    }

    .m-s-flex6.color-vari figcaption {
        font-size: 11px;
    }

    .m-s-15mm {
        font-size: 18px;
    }

    .m-s-flex4 figcaption br {
        display: block;
    }

    .m-s-intro-p2 br {
        display: none;
    }
}

@media screen and (max-width: 422px) {
    .add-pb-m-s-intro-p1 {
        padding-bottom: 1.5em;
    }
}

.ec-borderedDefs dl.cs-email-magazine-info{
    padding: 0 0 20px;
    margin-top: -15px;
}

.ec-borderedDefs dl.cs-dl-border-bottom-none{
    border-bottom: none;
}

#page_cm_blog_page_detail .ec-productRole__description {
    line-height: 1.5;
}
#page_cm_blog_page_detail .ec-productRole__description p img {
    width: auto;
    height: auto;
    margin-top: 10px;
    margin-bottom: 10px;
}
#page_cm_blog_page_detail .ec-productRole__description h1 {
    font-weight: 600;
    padding: 1rem 2rem;
    border-left: 5px solid #c41c14;
    margin-top: 60px;
}
#page_cm_blog_page_detail .ec-productRole__description h2 {
    margin-top: 30px;
    border-bottom: 1px solid #000;
    padding-bottom: 13px;
}

/* top_block_banner -css */
.ec-topBanners {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin: 30px auto;
    box-sizing: border-box;
}

.ec-topBannerLink {
    display: block;
    width: 100%;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.ec-topBannerImg {
    width: 100%;
    height: auto;
    display: block;
}