@charset "UTF-8";


:root { 
    --green03: #d3e7b6;
}

/* 【767px】PSDがこのサイズ 16px = 1.6rem */
@media only screen and (max-width: 767px) {
    html {
        width: 100%;
        font-size: calc(100vw / 767 * 10);
    }
    .sp-only {
        display: block !important;
    }
    .pc-only {
        display: none !important;
    }

    .wrapper-top {
        max-width: 100%;
    }

    /* header
    -------------------------------------------------------------------------------*/
    .header {
        height: 6.2rem;
    }

    .header-logo {
        max-width: 41.6rem;
    }

    /* fv
    -------------------------------------------------------------------------------*/
    .fv {
        height: 54rem;
    }

    .fv-ttl {
        font-size: 5.2rem;
    }

    .fv-read {
        padding: 1.2rem 2.6rem;
        font-size: 2.7rem;
    }

    .fv-readM {
        font-size: 3.4rem;
    }

    .fv-att {
        font-size: 1.4rem;
    }

    /* 共通（component）
    -------------------------------------------------------------------------------*/
    .com-link {
        margin-top: 0;
        padding-top: 0;
    }

    .com-cta {
        margin: 3rem 0 1rem;
    }

    .com-pri {
        gap: 0.8rem;
        font-size: 4.2rem;
        font-weight: 700;
    }

    .com-ttl {
        margin-bottom: 1.5rem;
        padding-bottom: 1rem;
        font-size: 3.6rem;
        font-weight: 700;
        font-feature-settings: "palt";
    }

    .com-catch {
        margin-bottom: 1rem;
        font-size: 3rem;
        font-weight: 700;
        letter-spacing: 0.03em;
        white-space: nowrap;
        line-height: 1.5;
    }

    .com-txt {
        margin-bottom: 0.6rem;
        font-weight: 700;
    }

    .com-origin {
        padding: 0.7rem 2.5rem 0.6rem;
        border: 0.2rem solid var(--red01);
        font-size: 3rem;
    }

    .com-opt{
        font-size: 4rem;
    }

    .com-opt sub{
        font-size: 2.4rem;
    }

    .com-opt-ttl{
        font-size: 3.6rem;
    }

    .com-new {
        width: 10rem;
        height: 4.7rem;
        font-size: 3rem;
    }

    .com-pri02 {
        height: 15.6rem;
        font-weight: 600;
        line-height: 1.2;
    }

    .com-ttl02 {
        font-weight: 600;
    }

    /* sec01
    -------------------------------------------------------------------------------*/
    .sec01 {
        padding: 2.8rem 1.8rem 2.4rem 2.2rem;
    }

    .sec01-ttl {
        margin-bottom: 2rem;
        padding: 1.4rem;
        font-size: 5.3rem;
    }

    .sec01-priceList {
        gap: 3.8rem;
    }

    .priceList-ttl {
        margin-bottom: 1.4rem;
        font-size: 2.4rem;
    }

    /* 税抜 */
    .taxout {
        margin-bottom: 2rem;
        font-size: 9rem;
    }

    .taxout-num {
        margin-right: -2.9rem;
        font-size: 11.2rem;
    }

    .taxout-comma {
        font-size: 8.1rem;
    }

    .taxout-yen {
        font-size: 4.4rem;
    }

    /* 税込 */
    .taxin {
        line-height: 0.8;
    }

    .taxin-paren {
        font-size: 5.5rem;
    }

    .taxin-num {
        margin-right: -1.7rem;
        margin-left: 0.8rem;
        font-size: 7.8rem;
    }

    .taxin-label {
        font-size: 2.1rem;
    }

    .taxin-comma {
        font-size: 5.7rem;
    }

    .taxin-sub {
        margin-right: -1.3rem;
        font-size: 5.6rem;
    }

    .taxin-yen {
        font-size: 2.8rem;
    }

    .taxin-set {
        margin-bottom: -1rem;
        gap: 1rem;
    }

    /* 画像一覧 */
    .sec01-product {
        gap: 7.5rem;
    }

    .sec01-productLink {
        gap: 0;
    }

    .sec01-productInner {
        min-width: 16rem;
        gap: 0.5rem;
    }

    .sec01-productImg {
        max-width: 18.8rem;
    }

    .productInner-new {
        padding: 0.4rem 0.5rem;
        font-size: 1.6rem;
    }

    .productInner-origin {
        width: 11.2rem;
        height: 2.6rem;
        padding-top: 0.2rem;
        border: 0.2rem solid var(--red01);
        font-size: 1.6rem;
    }

    .productInner-ttl {
        font-size: 3rem;
        white-space: nowrap;
    }

    .productInner-hikari {
        font-size: 2rem;
    }

    .sec01-product > li:nth-of-type(4) .productInner-ttl {
        font-size: 3.4rem;
    }

    .productInner-x {
        font-size: 5rem;
    }

    .productInner-warm {
        font-size: 2.3rem;
    }

    .productInner-w {
        margin-top: 0.2rem;
        margin-bottom: -0.15rem;
        font-size: 1rem;
    }

    /* sec02
    -------------------------------------------------------------------------------*/
    .sec02-itemTtl{
        font-size: 2.6rem;  
    }
    .sec02-itemBody{
        font-size: 1.6rem;
    }
    .sec02-itemAtt{
        font-size: 1.2rem;
    }

    /* sec03
    -------------------------------------------------------------------------------*/
    .sec03 {
        gap: 2.5rem;
        padding: 1rem 0.6rem 1.6rem;
    }

    .sec03-ttl {
        height: 7.8rem;
        font-size: 2.3rem;
        line-height: 1.35;
        font-feature-settings: "palt";
    }

    .sec03-img {
        height: 16.2rem;
    }

    /* sec04
    -------------------------------------------------------------------------------*/
    .sec04 {
        padding: 1.2rem 1.2rem 0;
    }

    /* キッチン */
    .icon-watow {
        margin: 0 0 -2.6rem 0;
        max-width: 10.9rem;
    }

   /* オリジナル洗面台 */
    .sec04-flex-wash {
        padding: 0 1.2rem 3rem 0;
    }

    .sec04-pri {
        font-weight: 600;
        gap: 0;
    }

    .sec04-priSP {
        /* 文字圧縮（細長にする） */
        transform: scaleX(0.85);
        transform-origin: left center;
        margin-right: -9rem;
        font-size: 5rem;
    }

    .sec04-ttl {
        font-weight: 600;
        font-feature-settings: "palt" 0;
    }

    .sec04-ttl-wash {
        gap: 1.6rem;
        padding-bottom: 1.6rem;
    }

    .sec04-txt-wash {
        white-space: nowrap;
        letter-spacing: 0.03em;
    }

    .sec04-catch-wash {
        margin-bottom: 1.4rem;
    }

    .sec04-img05 {
        max-width: 45.6rem;
    }

    .wash-att {
        text-align: left;
        line-height: 1.5;
    }

    /* バスルーム */
    .sec04-ttl-bath {
        padding-bottom: 1.8rem;
    }

    .sec04-catch-bath01 {
        margin-bottom: 2rem;
    }

    .sec04-catch-bath02 {
        margin-top: 1rem;
        margin-bottom: 1.2rem;
    }

    .sec04-catch-bath03 {
        margin-left: 0.4rem;
    }

    .sec04-txt-bath {
        margin-left: 0.4rem;
    }

    /* sec05
    -------------------------------------------------------------------------------*/
    .sec05 {
        padding: 2.4rem 2.1rem 0;
    }

    .sec05-pri-sub {
        margin-left: -0.8rem;
        font-size: 3rem;
    }

    .sec05-txt {
        margin-bottom: 2rem;
    }

    /* sec06    -------------------------------------------------------------------------------*/
    .sec06 {
        padding: 0.9rem 2rem 0;
    }

    .sec06-pri {
        padding-left: 1.5rem;
        font-size: 5rem;
    }

    .sec06-lead {
        width: 100vw;
        margin-bottom: 2rem;
        font-size: 2.8rem;

        /* 中央に */
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }

    .sec06-leadS {
        font-size: 2.3rem;
    }

    .sec06-leadX {
        font-size: 3.3rem;
    }

    .sec06-img01 {
        max-width: 49.1rem;
        margin-inline: auto;
    }

    .sec06-txt {
        margin-top: 1rem;
        margin-bottom: 2rem;
    }

    .sec06-list {
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: 1.3rem;
    }

    .sec06-list > li {
        padding-left: 1rem;
        font-size: 1.6rem;
        font-weight: 600;
        line-height: 1.3;
    }

    .sec06-listTxt > b {
        font-size: 2.2rem;
    }

    .sec06-list > li:nth-of-type(-n+6) {
        grid-column: span 1;
        min-height: 7rem;
    }

    .sec06-list > li:nth-of-type(n+7) {
        grid-column: span 1;
        min-height: 10rem;
    }

    .sec06-list > li:nth-of-type(n+9) {
        min-height: 7rem;
    }

    .sec06-listTxt > sup {
        font-size: 2rem;
    }

    .sec06-att01 {
        margin-bottom: 3rem;
        font-size: 1.58rem;
    }

    .sec06-wrap {
        flex-direction: column;
    }

    .sec06-innerTtl {
        font-size: 2.4rem;
        font-weight: 700;
    }

    .sec06-innerTxt {
        font-size: 1.67rem;
        font-weight: 600;
        line-height: 1.5;
    }

    .sec06-img02 {
        max-width: 57.3rem;
        margin-inline: auto;
    }

    .sec06-innerAtt {
        margin: 2rem 0 2rem auto;
        font-size: 1.2rem;
        font-weight: 600;
        line-height: 1.5;
    }

    .sec06-att02 {
        margin: 2rem 0 3rem;
        font-size: 1.4rem;
    }

    .sec06-att03 {
        font-size: 1.4rem;
        font-weight: 600;
        margin-bottom: 5.5rem;
    }

    /* sec07
    -------------------------------------------------------------------------------*/

    .sec07-txt-opt-ttl{
        font-size: 2.2rem;
    }

    .sec07-txt-opt-txt{
        font-size: 1.6rem;
        font-weight: normal;
    }

    .sec07-txt-opt-att{
        font-size: 1.3rem;
        margin-bottom: 3rem;
    }

    .sec07-img01{
        width: 23rem;
    }

    .sec07-img03 {
        max-width: 100%;
    }

    .sec07-img07{
        width: 44.2rem;
    }

    .sec07-img08{
        width: 33.5rem;
    }

    .sec07-img13{
        width: 32.6rem;
    }

    .sec07-img15{
        width: 42.5rem;
    }

    /* 天日干しと比較 */
    .sec07-dryCompare{
        margin-top: 2rem;
    }

    .sec07-dryCompare-body{
        font-size: 1rem;
    }

    .sec07-dryCompare-side:nth-of-type(1) {
        padding: 2rem 1rem 2rem 1.8rem;
    }
    
    .sec07-dryCompare-side:nth-of-type(3) {
        padding: 2rem  1.8rem 2rem 1rem;
    }

    .sec07-dryCompare-center picture {
        max-width: 17rem;
    }

    .sec07-dryCompare-center img {
        max-width: 17rem;
        max-height: 100%;
    }

    /* sec08
    -------------------------------------------------------------------------------*/
    .sec08 {
        padding: 2.6rem 1.6rem 0;
    }

    .sec08-pri {
        justify-content: left;
        padding-left: 2rem;
        font-size: 5rem;
        line-height: 1.2;
    }

    .sec08-pri > span {
        transform: none;
        transform-origin: initial;
        margin-right: 0;
    }

    .sec08-lead {
        margin-bottom: 1.5rem;
        letter-spacing: 0.05em;
        line-height: 1.4;
    }

    .sec08-att {
        margin-top: 3rem;
        margin-bottom: 3rem;
        font-size: 1.6rem;
        line-height: 1.3;
    }

    .sec08-img02-plusSP {
        padding-inline: 0;
    }

    .sec08-ttl {
        font-size: 5rem;
    }

    .sec08-catch {
        margin-left: 0;
        margin-bottom: 2rem;
        font-size: 2.6rem;
        line-height: 1.4;
        white-space: wrap;
    }

    .sec08-inner {
        margin-left: 0;
        margin-bottom: 0;
        flex-direction: column;
        gap: 3.3rem;
    }

    .sec08-img03 {
        max-width: 100%;
    }

    .sec08-txt {
        line-height: 1.8;
        letter-spacing: 0.02em;
    }

    .sec08-list > li {
        padding-block: 1.7rem;
        padding-left: 0;
        gap: 1.8rem 2rem;
    }

    .sec08-list > li:nth-of-type(1) {
        grid-template-columns: 31rem auto;
        grid-template-rows: 5.4rem 19rem;
    }

    .sec08-listTtl {
        color: var(--black);
        background-color: var(--green03);
        font-weight: 700;
        z-index: 2;
    }

    .sec08-listTxt {
        font-size: 2rem;
        line-height: 1.4;
    }

    .sec08-img04 {
        max-width: 40rem;
    }

    .sec08-list > li:nth-of-type(2) {
        position: relative;
        grid-template-columns: 48rem;
        grid-template-rows: 5.4rem auto;
        z-index: 1;
    }

    .sec08-img05 {
        position: absolute;
        top: 3.2rem;
        right: 0;
        grid-column: 1 / 3 !important;
        max-width: 39.2rem;
        z-index: 0;
    }

    .sec08-list > li:nth-of-type(2) .sec08-listTxt-L {
        font-size: 2.2rem;
        font-weight: 900;
        letter-spacing: 0.1rem;
    }

    .sec08-list > li:nth-of-type(2) .sec08-listTxt-M {
        margin: 0 0 1.5rem 0.4rem;
        line-height: 1.5;
    }

    .sec08-list > li:nth-of-type(3) {
        grid-template-columns: 45.1rem auto;
        grid-template-rows: 5.4rem auto;
        gap: 2.2rem 3.4rem;
    }

    .sec08-img06 {
        max-width: 28.8rem;
        margin: -0.5rem -2.4rem 0 auto;
    }

    /* sec09
    -------------------------------------------------------------------------------*/
    .sec09 {
        padding: 1.5rem 2.1rem 0 0.7rem;
    }

    .sec09-ttl {
        margin-bottom: 2.2rem;
        font-weight: 600;
    }

    /* sec10
    -------------------------------------------------------------------------------*/
    .sec10 {
        padding: 1.5rem 1rem 0;
    }

    .sec10-pri {
        height: 14.4rem;
    }

    .sec10-ttl {
        margin-left: 0.8rem;
    }

    /* note
    -------------------------------------------------------------------------------*/
    .note-txt {
        padding-bottom: 0;
    }

    /* ctaFollow（手前追従ボタン）
    -------------------------------------------------------------------------------*/
    #ctaFollow {
        display: block !important;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 999;
    }

    /* floatBnr（右上追従ボタン）
    -------------------------------------------------------------------------------*/
    #floatBnr {
        display: none;
    }

    /* Microsoft Edgeのみ
    -------------------------------------------------------------------------------*/
    .isEdge .taxout-num {
        margin-right: -2.2rem;
    }
    .isEdge .taxin-num {
        margin-right: -1.5rem;
    }
    .isEdge .taxin-set {
        margin-bottom: 0;
    }

    /* Androidのみ
    -------------------------------------------------------------------------------*/
    .isAndroid .taxout-num {
        margin-right: -2.5rem;
    }
    .isAndroid .taxin-num {
        margin-right: -1.5rem;
    }
    .isAndroid .taxin-sub {
        margin-right: -0.5rem;
    }
    .isAndroid .productInner-x {
        margin-top: -1.2rem;
        margin-bottom: -1rem;
    }
    .isAndroid .sec05-pri-sub {
        margin-bottom: 0;
    }
    .isAndroid .sec05-leadX {
        line-height: 0.8;
    }
}