@charset "utf-8";

/* PC用 */
@media screen and (min-width: 561px) {

.maxoff-base {
    position: relative;
}
#main .maxoff-base h2 {
    margin-bottom: 0;
}
.toilet-top-maxoff {
    position: absolute;
    right: 10px;
    bottom: 10px;
}
.toilet-top-maxoff img {
    width: 100%;
    position: relative;
}
.toilet-top-maxoff .off-value {
    position: absolute;
    color: #fff;
    font-size: 2.5em;
    font-weight: bold;
    text-shadow: 1px 1px 2px #636363;
    bottom: 35px;
    right: 25px;
}
    .summary {
        display: inline-flex;
        margin-bottom: 10px;
    }
    .summary li.on {
        position: relative;
    }
    .summary a {
        position: absolute;
    }
    .summary li a {
        display: inline-block;
        background-image: url(/toilet/img/summary_btn.gif);
        width: 92px;
        height: 17px;
    }
    .summary.alauno li a:nth-of-type(1) {
        top: 8px;
        right: 8px;
    }
    .nav-head {
        background-color: #ededed;
        padding: 5px 5px 0 5px;
        border-radius: 5px 5px 0 0;
        margin-bottom: 10px;
    }
    .nav-head ul {
        display: flex;
        justify-content: space-between;
        border-top: 1px solid #d0d0d0;
        border-right: 1px solid #d0d0d0;
    }
    .nav-head ul li {
        width: 100%;
    }
    .nav-head ul li a {
        display: block;
        padding: 1em 0;
        font-weight: bold;
        border-left: 1px solid #d0d0d0;
        color: #333;
        text-decoration: none;
        background: #ededed;
        background: -moz-linear-gradient(top, #ededed 1%, #dcdcdc 100%);
        background: -webkit-linear-gradient(top, #ededed 1%, #dcdcdc 100%);
        background: linear-gradient(to bottom, #ededed 1%, #dcdcdc 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dcdcdc', GradientType=0);
    }
    .nav-head ul li a {
        text-align: center;
    }
    .nav-head .on a {
        background: #ffffff !important;
    }
    .function-container {
        width: 100%;
        padding: 2%;
        border: 1px solid #95a0ad;;
        box-sizing: border-box;
        border-radius: 0 0 5px 5px;
    }
    .function-container h3 {
        font-size: 1.1em;
        background-image: url(/toilet/img/main_h3_bg.gif);
        background-repeat: no-repeat;
        background-position: left bottom;
        padding: 0 0 .5em;
        margin: 3% 0 3%;
    }
    .line-up-list {
        width: 98%;
        margin: 1%;
        display: inline-flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .line-up-list li {
        position: relative;
        width: 47%;
        padding-left: 1em;
        color: #333;
        margin-bottom: 10px;
    }
    .line-up-list a {
        font-size: 15px;
    }
    .line-up-list li::before {
        content: '';
        position: absolute;
        left: 0;
        bottom: 3px;
        box-sizing: border-box;
        width: 10px;
        height: 10px;
        border: 8px solid transparent;
        border-left: 8px solid #2994c1;
    }
    .detail img, .thumbnail img {
        width: 100%;
        margin-bottom: 10px;
    }
    .common-list,
    .type-list {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
        margin: 0 auto 10px;
    }
    .common-list th,
    .type-list th {
        font-size: 13px;
        padding: 2.3% 1.1%;
        border-bottom: 1px solid #fff;
    }
    .common-list th,
    .type-list th {
        width: 30%;
    }
    .common-list th {
        background-color: #dff1f9;
    }
    .type-list th {
        background-color: #ECECEC;
    }
    .navi th {
        font-size: 1.1em;
        color: #fff;
    }
    .common-list .navi th {
        background-color: #64aaca;
    }
    .type-list .navi th {
        background-color: #99A1AA;
    }
    .type-list .navi span {
        display: block;
        font-size: 11px;
    }
    .common-list th span,
    .type-list th span {
        display: block;
        font-size: 11px;
        line-height: 1.3;
        padding-top: 5px;
    }
    .common-list td,
    .type-list td {
        color: #333;
        text-align: center;
        background-color: #fff;
        border: 1px #ededed solid;
        border-style: solid none solid none;
    }
    .common-list td {
        padding: 2% .5%;
    }
    .type-list td {
        padding: 2% 1%;
    }
    .common-list td {
        font-size: 10px;
    }
    .common-list td::first-line {
        font-size: 13px;
    }
    .navi td {
        background-color: #ededed;
    }
    h4.b-line {
        border-bottom: solid 3px #cdcdcd;
        position: relative;
        padding: 0 0 2px 2px;
        letter-spacing: 1px;
        font-size: 14px;
        margin-bottom: 10px;
    }
    h4.b-line:after {
        position: absolute;
        content: " ";
        display: block;
        border-bottom: solid 3px #2994c1;
        bottom: -3px;
        left: 0;
        width: 20%;
    }
    p img[src*="lineup_btn"] {
        padding: 2px 2px 0 2px;
        margin-bottom: -3px;
    }
    .seriese-lineup-box h4 ~ p {
        margin-bottom: 10px;
    }
    .flex-box {
        display: inline-flex;
    }
    .flex-box.lineup {
        width: 100%;
    }
    .flex-box.lineup img {
        align-self: flex-start;
    }
    .flex-box.lineup p {
        padding-left: 2%;
    }
    .enclosure {
        display: inline-block;
        font-weight: bold;
        padding: .5em 1em;
        margin-bottom: 10px;
    }
    .enclosure.start {
        color: #f33;
        border: 1px solid #f33;
    }
    .enclosure.end {
        color: #146ba3;
        border: 1px solid #146ba3;
    }
    .accordion-container {
        width: 100%;
        margin: 0 auto;
    }
    .accordion-title {
        color: #fff;
        cursor: pointer;
        font-size: 15px;
        line-height: 20px;
        margin: auto auto 10px;
        padding: 10px 20px 10px 35px;
        position: relative;
        text-align: center;
        width: fit-content;
    }
    .accordion-title::before, .accordion-title::after {
        content: "";
        position: absolute;
    }
    .accordion-title::before {
        content: '';
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #2994c1;
        border: none;
        box-sizing: border-box;
        border-radius: 20px;
        z-index: -1;
    }
    .accordion-title::after {
        width: .5em;
        height: .5em;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg) translateY(-50%);
        left: 10px;
        top: 45%;
    }
    .accordion-title:hover,
    .accordion-title:active,
    .accordion-title.open {
        color: #2d62a3;
    }
    .accordion-title:hover::after,
    .accordion-title:active::after,
    .accordion-title.open::after {
        border-color: #2d62a3;
    }
    .accordion-title:hover::before,
    .accordion-title:active::before {
        box-shadow: 0px 1px 5px silver;
        transition: .3s;
    }
    .accordion-title:hover::before,
    .accordion-title:active::before,
    .accordion-title.open::before {
        background-color: #fff;
        border: 1px solid #2d62a3;
    }
    .accordion-title.open::after {
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        left: 15px;
        top: 35%;
    }
    table.lineup-box {
        width: 100%;
        border-collapse: collapse;
        border:1px solid #c2c9cb;
        box-sizing: border-box;
        margin-bottom: 20px;
    }
    .lineup-box tr {
        border-bottom: 1px solid #c0c0c0;
        box-sizing: border-box;
    }
    .lineup-box th {
        text-align: center;
        border: solid 1px #99A1AA;
        background-color: #bec4c6;
        padding: 2% .5%;
    }
    .lineup-box th img {
        margin: 0 0 -2px 2px;
    }
    .lineup-box td:not(:first-of-type) {
        padding: 2% 1%;
        border-left: dotted 1px #99A1AA;
    }
    .lineup-box td.product {
        width: 33%;
        padding: 1% 1% 0;
    }
    .lineup-box td.product img {
        max-width: 60%;
        margin-bottom: 2px;
    }
    .lineup-box td:not(.item-td-1r) {
        text-align: center;
    }
    .lineup-box td.item-td-1r {
        text-align: right;
    }
    .lineup-box td.item-td-1r .sale {
        font-size: 1.1em;
    }
    td.price .price-s {
        font-size: 10px;
        text-decoration: line-through;
        line-height: 110%;
    }
    .lineup-box td:last-of-type {
        width: 28%;
        padding: 2% 0;
        background-color: #EFEFEF;
    }
    .lineup-box .btns a {
        display: block;
        width: fit-content;
        margin: auto;
    }
    .lineup-box .btns a:first-of-type {
        padding-bottom: 10px;
        margin-bottom: 10px;
        border-bottom: dotted 1px #99A1AA;
    }
    a#main-online-bnr1 {
        background: url(/toilet/img/main_online_bnr1.gif);
        width: 580px;
        height: 240px;
        display: block;
        text-indent: -9999px;
        text-decoration: none;
    }
    a#main-online-bnr1:hover {
        opacity: .8;
        outline-offset: -5px;
        outline: solid 5px #fe3333;
    }
    .detail {
        margin: 0 auto 20px;
    }
    .detail a, .thumbnail a {
        display: inline-block;
    }
    .detail img, .thumbnail img {
        width: 100%;
        margin-bottom: 10px;
    }
    .detail h4, .detail storong {
        display: inline-block;
        margin-bottom: 5px;
        letter-spacing: 1px;
        font-size: 14px;
        margin: 0 0 10px;
        font-weight: bold;
    }
    .detail h4 {
        width: 100%;
        border-left: solid 5px #2994c1;
        padding-left: 5px;
    }
    .detail storong {
        color: #0c68de;
    }
    .detail.flex_box {
        display: inline-flex;
        flex-wrap: wrap;
    }
    .detail.flex_box div:first-of-type {
        width: 50%;
        display: inline-block;
    }
    .detail.flex_box div:first-of-type img {
        width: 100%;
    }
    .detail.flex_box:not(.through) img {
        width: 50%;
        margin: 0;
        align-self: flex-start;
    }
    .detail.flex_box:not(.through) p {
        width: 46%;
        padding: 0 2%;
    }
    .item-list-btn {
        width: 100%;
    }
    .item-list-btn a {
        display: block;
        text-align: center;
    }
}

/* スマホ用 */
@media screen and (max-width: 560px) {
    a.bnr {
     display: block;
     width: 100%;
    }
    a.bnr img {
        width: 100%;
    }
    .maxoff-base {
        position: relative;
    }
    #main .maxoff-base h2 {
        margin-bottom: 0;
    }
    .toilet-top-maxoff {
        position: absolute;
        right: 0;
        bottom: 0;
    }
    #contents .toilet-top-maxoff img {
        width: 18vw;
        position: relative;
        right: 3px;
        bottom: 3px;
    }
    .toilet-top-maxoff .off-value {
        position: absolute;
        font-size: 7vw;
        bottom: 40%;
        right: 34%;
        font-weight: bold;
        text-shadow: 1px 1px 2px #636363;
        color: #fff;
    }
    .function-container {
        width: 96%;
        padding: 2%;
    }
    .line-up-list {
        width: 98%;
        margin: 1%;
        display: inline-flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .line-up-list li {
        position: relative;
        width: 45%;
        padding-left: 1em;
        color: #333;
        margin-bottom: 5px;
    }
    .line-up-list a {
        font-size: 15px;
    }
    .line-up-list li::before {
        content: '';
        position: absolute;
        left: 3px;
        bottom: 5px;
        box-sizing: border-box;
        width: 7px;
        height: 7px;
        border: 7px solid transparent;
        border-left: 7px solid #2994c1;
    }
    .summary {
        display: inline-flex;
        margin-bottom: 10px;
        flex-wrap: wrap;
        padding: 0;
        justify-content: space-around;
    }
    .summary li {
        line-height: 1;
    }
    .summary li:nth-of-type(odd) {
        width: 47.2%;
    }
    .summary li:nth-of-type(even) {
        width: 52.7%;
    }
    .summary li.on {
        position: relative;
    }
    #contents .summary img {
        width: 100%; 
    }
    .summary li a {
        position: absolute;
        display: inline-block;
        background-image: url(/toilet/img/summary_btn.gif);
        width: 90px;
        height: 17px;
        background-size: contain;
        background-repeat: no-repeat;
    }
    .summary.alauno li a {
        top: 2px;
        right: 2px;
    }
    .nav-head {
        border-radius: 5px 5px 0 0;
        margin-bottom: 3%;
    }
    .nav-head ul {
        display: flex;
    }
    .nav-head ul li {
        width: 33%;
        border: 1px #d0d0d0;
        border-style: solid solid solid none;
        background-color: #ededed;
    }
    .nav-head ul li a {
        display: block;
        width: 100%;
        padding: 10% 0;
        font-weight: bold;
        color: #333;
        text-decoration: none;
        font-size: 0.8em;
        text-align: center;
    }
    .nav-head .on a {
        background: #fff !important;
    }
    #main .function-container h3 {
        font-size: 1em;
        background-image: url(/toilet/img/main_h3_bg.gif);
        background-repeat: no-repeat;
        background-position: left bottom;
        padding: 0 0 .5em;
        font-size: .9em;
        line-height: 1.2;
        margin: 10% 0 5%;
    }
    #main .function-container h3:first-of-type {
        margin: 3% 0 5%;
    }
    #contents .thumbnail img {
        max-width: 100%;
    }
    #contents .common-list,
    #contents .type-list {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
        margin: 0 auto 10px;
    }
    #contents .common-list+.small-font,
    #contents .type-list+.small-font {
        color: #666;
        font-size: 10px;
        line-height: 1.7;
        margin: auto auto 20px;
        width: 98%;
    }
    .common-list th,
    .type-list th {
        font-size: 12px;
        padding: 2% 1.5%;
        border-bottom: 1px solid #fff;
    }
    .common-list th {
        width: 30%;
        background-color: #dff1f9;
    }
    .type-list th {
        width: 37%;
        height: 7vw;
        background-color: #ECECEC;
    }
    .navi th {
        font-size: 1.1em;
        letter-spacing: .5px;
        color: #fff;
    }
    .common-list .navi th {
        background-color: #64aaca;
    }
    .type-list .navi th {
        background-color: #99A1AA;
    }
    .type-list .navi span {
        display: none;
    }
    .common-list th span,
    .type-list th span {
        display: block;
        font-size: 10px;
        line-height: 1.2;
        padding-top: 5px;
    }
    .common-list td,
    .type-list td {
        color: #333;
        text-align: center;
        background-color: #fff;
        border: 1px #ededed solid;
        border-style: solid none solid none;
    }
    .common-list td {
        padding: 2% .5%;
    }
    .type-list td {
        padding: 2% 1%;
    }
    .common-list td {
        font-size: 10px;
    }
    .common-list td::first-line {
        font-size: 13px;
    }
    #contents .common-list td img {
        width: 90%;
    }
    .navi td {
        background-color: #ededed;
    }
    h4.b-line {
        border-bottom: solid 3px #cdcdcd;
        position: relative;
        padding: 0 0 2px 2px;
        letter-spacing: 1px;
        font-size: 14px;
    }
    h4.b-line:after {
        position: absolute;
        content: " ";
        display: block;
        border-bottom: solid 3px #2994c1;
        bottom: -3px;
        left: 0;
        width: 20%;
    }
    #contents p img[src*="lineup_btn"] {
        padding: 2px 2px 0 2px;
        margin-bottom: -3px;
        display: inline-block;
    }
    .seriese-lineup-box {
        width: 100%;
    }
    .seriese-lineup-box h4 ~ p {
        margin-bottom: 10px;
    }
    .flex-box.lineup {
        width: 100%;
        display: inline-flex;
        flex-direction: column;
        align-content: center;
    }
    #contents .flex-box.lineup img {
        max-width: 100%;
        align-self: center;
    }
    #contents .flex-box.lineup p {
        padding: 2% 4%;
        margin: 10px auto 0;
        width: 90%;
    }
    .enclosure {
        display: inline-block;
        font-weight: bold;
        padding: .5em 1em;
        margin-bottom: 5px;
    }
    .enclosure.start {
        color: #f33;
        border: 1px solid #f33;
    }
    .enclosure.end {
        color: #146ba3;
        border: 1px solid #146ba3;
    }
    .accordion-container {
        width: 100%;
        margin: 0 auto;
    }
    #contents .accordion-title {
        color: #fff;
        cursor: pointer;
        font-size: 15px;
        line-height: 20px;
        margin: auto auto 10px;
        padding: 10px 20px 10px 35px;
        position: relative;
        text-align: center;
        width: fit-content;
    }
    .accordion-title::before,
    .accordion-title::after {
        content: "";
        position: absolute;
    }
    .accordion-title::before {
        content: '';
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #2994c1;
        border: none;
        box-sizing: border-box;
        border-radius: 20px;
        z-index: -1;
    }
    .accordion-title::after {
        width: .5em;
        height: .5em;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg) translateY(-50%);
        left: 10px;
        top: 45%;
    }
    #contents .accordion-title:hover,
    #contents .accordion-title:active,
    #contents .accordion-title.open {
        color: #2d62a3;
    }
    .accordion-title:hover::after,
    .accordion-title.open::after {
        border-color: #2d62a3;
    }
    .accordion-title:hover::before,
    .accordion-title:active::before {
        box-shadow: 0px 1px 5px silver;
        transition: .3s;
    }
    .accordion-title:hover::before,
    .accordion-title:active::before,
    .accordion-title.open::before {
        background-color: #fff;
        border: 1px solid #2d62a3;
    }
    .accordion-title:active::after,
    .accordion-title.open::after {
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        left: 15px;
        top: 35%;
    }
    .accordion-title.open table {
        transition: all .3s ease-in-out;
    }
    #contents table.lineup-box {
        width: 100%;
        border-collapse: collapse;
        border: 1px solid #99A1AA;
        box-sizing: border-box;
        margin: 0 auto 20px;
        font-size: .8em;
    }
    table.lineup-box tr {
        border-bottom: 1px solid #99A1AA;
        box-sizing: border-box;
    }
    table.lineup-box th {
        text-align: center;
        border: solid 1px #99A1AA;
        background-color: #bec4c6;
        padding: 1%;
    }
    .lineup-box th img {
        margin: 0 0 -2px 2px;
    }
    .lineup-box td:not(:first-of-type) {
        padding: 2% 1%;
        border-left: dotted 1px #99A1AA;
    }
    .lineup-box td.product {
        width: 33%;
        padding: 1% 1% 0;
    }
    .lineup-box td.product img {
        max-width: 60%;
        margin-bottom: 2px;
    }
    .lineup-box td:not(.item-td-1r) {
        text-align: center;
    }
    .lineup-box td.item-td-1r {
        width: 35%;
        text-align: right;
        font-size: 10px;
    }
    .lineup-box td.item-td-1r .sale {
        font-size: 1.1em;
    }
    span.price-s {
        font-size: 10px;
        letter-spacing: -.5px;
        text-decoration: line-through;
        line-height: 110%;
    }
    .lineup-box td:last-of-type {
        width: 27%;
        padding: 4% 0;
        background-color: #EFEFEF;
    }
    .lineup-box .btns a {
        display: block;
        width: fit-content;
        margin: auto;
    }
    .lineup-box .btns a:first-of-type {
        padding-bottom: 10px;
        margin-bottom: 10px;
        border-bottom: dotted 1px #99A1AA;
    }
    a#main-online-bnr1 {
        background: url(/toilet/img/main_online_bnr1.gif);
        width: 100%;
        height: 41.5vw;
        background-repeat: no-repeat;
        background-size: cover;
        display: block;
        text-indent: -9999px;
        text-decoration: none;
    }
    a#main-online-bnr1:hover {
        opacity: .8;
        outline-offset: -5px;
        outline: solid 5px #fe3333;
    }
    .detail {
        margin: 0 auto 20px;
    }
    .detail a, .thumbnail a {
        display: inline-block;
    }
    .detail h4 {
        background-color: #2994c1;
        color: #fff !important;
        font-weight: normal !important;
        margin-bottom: 10px !important;
        font-size: 13px;
        letter-spacing: 1.3px;
        padding: 1%;
    }
    .detail.flex_box {
        display: inline-flex;
        flex-direction: column;
        width: 100%;
    }
    #contents .detail.flex_box img,
    #contents .detail img {
        display: block;
        width: 90% !important;
        margin: auto;
    }
    .item-list-btn {
        text-align: center;
    }
}