@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond&display=swap');


/*---BG CSSリセット---*/

/*パンくずの両端欠け回避*/
.main-container > .breadcrumb-section > .container-fluid {
    background: #fff;
}
/*フッター直前の空白背景回避*/
#pickupArea {
    margin-bottom: 0;
}

#terra img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
#terra h1, #terra .h1, #terra h2, #terra .h2, #terra h3, #terra .h3, #terra h4, #terra .h4, #terra p, #terra dl,#terra table th, #terra .inner {
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small, .pickupLayout th, .pickupLayout td, .pickupLayout h1, .pickupLayout h2, .pickupLayout h3, .pickupLayout h4, .pickupLayout h5, .pickupLayout h6 {
    font-size: inherit;
    color: inherit;
    line-height: inherit;
}
#terra .section {
    padding: 0;
}
#terra a {
    text-decoration: none;
}
#terra a:hover {
    opacity: 0.7;
}



/*---LP共通----------------------------------------------------*/
#terra {
    font-size: clamp(14px, 1.875vw, 16px);/*320px, 800px, 1200px想定*/
    color: #111;
    position: relative;
}
#terra .section {
    padding: 60px 0;
    background: #fff;
    position: relative;
    z-index: 1;
}
#terra .small_txt {
    font-size: 0.75em;
}
#terra .center_txt {
    text-align: center;
}
#terra .left_txt {
    text-align: left;
}
#terra .right_txt {
    text-align: right;
}
#terra .mincho {
    font-family: "Cormorant Garamond", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif;
}

#terra .section h2 {
    text-align: center;
    font-size: 2em;
    margin-bottom: 60px;
}

#terra .pdp_link {
    padding: 5px;
    background: #e7e0d9;
    width: 100%;
    display: block;
    text-align: center;
    max-width: 165px;
    margin-left: auto;
    margin-right: auto;
}

#terra .list_style li {
    padding-left: 1em;
}
#terra .list_style li:before {
    content: "●";
    font-size: 0.5em;
    /*vertical-align: middle;*/
    margin-right: 0.75em;
    margin-left: -1.7em;
    color: #7e766f;
}
#terra .list_style li + li {
    margin-top: 0.5em;
}
#terra .list_style li.kome {
    margin-top: 15px !important;
}
#terra .list_style li.kome:before {
    content: "";
    display: none;
}

@media screen and (min-width:768px) {
    #terra .section {
        padding: /*90px*/7.03125vw 0;
    }
    #terra .pdp_link {
        padding: 8px;
    }
}

@media screen and (min-width:1280px) {
    #terra .section h2 {
        font-size: 3em;
        margin-bottom: 90px;
    }
}




/*---header---------------------------------------------------*/
#terra header {
    width: 100%;
    height: calc(100vh - 150px);
    height: calc(100lvh - 150px);/*iOS Safari用*/
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/tit_bg_sp.jpg') no-repeat center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
#terra header h1 {
    display: inline-block;
    max-width: 356px;
    height: auto;
}

@media screen and (min-width:768px) {
    #terra header {
        height: calc(100vh - 245px);
    }
    #terra header h1 {
        max-width: 60vw;
    }
}

@media screen and (min-width:1024px) {
    #terra header {
        background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/tit_bg_pc.jpg') no-repeat center;
        background-size: cover;
        justify-content: flex-end;
    }
    #terra header h1 {
        width: 50vw;
        text-align: center;
    }
    #terra header h1 > img {
        max-width: 400px;
        margin: 0 auto;
    }
}
@media screen and (min-width:1200px) {
    #terra header {
        height: calc(100vh - 296px);
    }
}





/*---nav---------------------------------------------------------------*/
#terra #newcolor_fix_button {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 24vw;
    height: auto;
    opacity: 0;
    z-index: 5;
    transition: all 0.6s;
}
#terra #newcolor_fix_button.nc-fixed {
    opacity: 100;
}
#terra #newcolor_fix_button a {
    display: block;
}
@media screen and (min-width:768px) {
    #terra #newcolor_fix_button {
        width: 15vw;
    }
}
@media screen and (min-width:1024px) {
    #terra #newcolor_fix_button {
        width: 12vw;
    }
}
@media screen and (min-width:1280px) {
    #terra #newcolor_fix_button {
        width: 10vw;
    }
}




/*---nav---------------------------------------------------------------*/
#terra #g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
	top:0;
    right: -120%;
	width:75%;
    height: 100vh;/*ナビの高さ*/
	background:rgba(126,118,111,0.9);
    /*動き*/
	transition: all 0.6s;
    box-shadow: 0 0 10px rgba(0,0,0,0.7);
}

/*アクティブクラスがついたら位置を0に*/
#terra #g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#terra #g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#terra #g-nav ul {
    /*ナビゲーション天地中央揃え*/
    padding: 120px 30px 30px;
}
/*リストのレイアウト設定*/
#terra #g-nav li{
	list-style: none;
}
#terra #g-nav li a{
	color: #fff;
	text-decoration: none;
	display: block;
    font-size: 1.5em;
    line-height: 2;
}

/*========= ボタンのためのCSS ===============*/
#terra .openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:70px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
    display: none;
}
	
/*×に変化*/	
#terra .openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    height: 3px;
	background-color: #fff;
  	width: 60%;
    box-shadow: 0 0 10px #000;
  }
#terra .openbtn span:nth-of-type(1) {
	top:13px;	
}
#terra .openbtn span:nth-of-type(2) {
	top:23px;
}
#terra .openbtn span:nth-of-type(3) {
	top:33px;
}
#terra .openbtn.active span {
    box-shadow: none;
}
#terra .openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}
#terra .openbtn.active span:nth-of-type(2) {
	opacity: 0;
}
#terra .openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

@media screen and (min-width:768px) {
    #terra .openbtn {
        display: none;
    }
    #terra #g-nav {
        position: static;
        width: 100%;
        box-shadow: none;
        background: #e7e0d9;
        height: auto;
    }
    #terra #g-nav ul {
        padding: /*45px*/3vw 0;
        display: flex;
        justify-content: center;
    }
    #terra #g-nav ul li {
        margin: 0 2em;
    }
    #terra #g-nav li a {
        color: inherit;
    }
    
    /*上部メニュー固定*/
    #terra #g-nav.nav-fixed {
        position: fixed;
        top: 79px;
        left: 0;
        box-shadow: 0 0 9px rgba(0,0,0,0.2);
    }
    #terra #g-nav.nav-fixed ul {
        padding: 10px 0;
    }
}
@media screen and (min-width:1024px) {
    /*上部メニュー固定*/
    #terra #g-nav.nav-fixed {
        top: 0;
    }
}




/*---intro-------------------------------------------------------------*/
#terra #intro {
    padding-left: 30px;
    padding-right: 30px;
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/intro_bg.jpg') no-repeat center;
    background-size: cover;
}
#terra #intro p {
    background: rgba(255,255,255,0.7);
    padding: 30px;
    display: block;
    line-height: 2;
}
#terra #intro p > .small_txt {
    display: inline-block;
    line-height: initial;
    letter-spacing: -0.05em;
}

@media screen and (min-width:768px) {
    #terra #intro p {
        text-align: center;
        max-width: 970px;
        margin: 0 auto;
    }
}




/*---product feature-----------------------------------------------*/
#terra #feature {
    padding-bottom: 120px;
}
#terra #feature .feature_detail {
    position: relative;
    margin-bottom: /*165px*/120px;
}
#terra #feature .feature_detail:last-child {
    margin-bottom: 0;
}
#terra #feature .feature_detail:after {
    content: "";
    display: block;
    width: calc(100vw - 30px);
    height: 100%;
    position: absolute;
    top: 30px;
    right: 0;
    background: #e7e0d9;
    z-index: -1;
}
#terra #feature .feature_detail .num {
    font-size: 10em;
    line-height: 1;
    color: #e7e0d9;
    display: block;
    position: absolute;
    top: -0.6em;
    left: 15px;
}
#terra #feature .feature_detail .f_img {
    width: calc(100vw - 30px);
}
#terra #feature .feature_detail .f_txt {
    padding: 0 30px 0 60px;
}
#terra #feature .feature_detail .f_txt h3 {
    color: #fff;
    font-size: 2em;
    margin: 0 0 30px -45px;
    padding-bottom: 20px;
    margin-top: calc(-20px - ((1em * 1.42857143)*3));
    width: calc(100vw - 30px);
    text-shadow: 0 0 20px rgba(0,0,0,.25);
}
#terra #feature .feature_detail .f_txt .detail {
    /*display: none;
    padding-bottom: 30px;*/
}
#terra #feature .feature_detail .f_txt .detail .img span {
    display: inline-block;
    width: 100%;
    margin-top: 1em;
}
#terra #feature .feature_detail .f_txt .feature_more {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #7e766f;
    position: absolute;
    bottom: -80px;
    right: -5px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
#terra #feature .feature_detail .f_txt .feature_more a {
    color: #fff;
    font-size: 21px;
    line-height: 1;
    padding-top: 0.25em;
}

/*even*/
#terra #feature .feature_detail:nth-of-type(even):after {
    right: auto;
    left: 0;
}
#terra #feature .feature_detail:nth-of-type(even) .num {
    left: auto;
    right: 15px;
    text-align: right;
}
#terra #feature .feature_detail:nth-of-type(even) .f_img {
    margin-left: 30px;
}
#terra #feature .feature_detail:nth-of-type(even) .f_txt {
    padding: 0 60px 0 30px;
}
#terra #feature .feature_detail:nth-of-type(even) .f_txt h3 {
    text-align: right;
    margin-left: -15px;
}
#terra #feature .feature_detail:nth-of-type(even) .f_txt .feature_more {
    right: auto;
    left: -5px;
}


@media screen and (min-width:768px) {
    #terra #feature {
        padding-bottom: 90px;
    }
    #terra #feature .feature_detail {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 60px;
    }
    #terra #feature .feature_detail:after {
        display: none;
    }
    #terra #feature .feature_detail .f_img {
        width: calc(100vw / 3);
    }
    #terra #feature .feature_detail .f_txt {
        width: calc((100vw / 3) * 2);
        padding: 60px 30px 0;
        position: relative;
        margin-bottom: 90px;
    }
    #terra #feature .feature_detail .f_txt:after {
        content: "";
        display: block;
        width: calc(100vw - 30px);
        height: 100%;
        position: absolute;
        top: 30px;
        right: 0;
        background: #e7e0d9;
        z-index: -1;
    }
    #terra #feature .feature_detail .f_txt h3 {
        margin: 0;
        text-shadow: none;
        color: inherit;
        padding: 0;
        width: 100%;
    }
    #terra #feature .feature_detail .f_txt .detail {
        margin-top: 30px;
        /*padding-bottom: 60px;*/
    }
    #terra #feature .feature_detail .f_txt .feature_more {
        right: 0;
    }
    
    /*even*/
    #terra #feature .feature_detail:nth-of-type(even) {
        flex-direction: row-reverse;
    }
    #terra #feature .feature_detail:nth-of-type(even) .f_img {
        margin: 0;
    }
    #terra #feature .feature_detail:nth-of-type(even) .f_txt:after {
        right: auto;
        left: 0;
    }
    #terra #feature .feature02 .f_txt h3, #terra #feature .feature_detail:nth-of-type(even) .f_txt h3 {
       margin: 0;
    }
    #terra #feature .feature_detail:nth-of-type(even) .f_txt {
        padding: 60px 30px 0;
    }
    #terra #feature .feature_detail:nth-of-type(even) .f_txt .feature_more {
        left: 0;
    }
}
@media screen and (min-width:768px) and (max-width:1279px) {
    #terra #feature .feature_detail .f_txt h3 {
        font-size: 3vw;
    }
}
@media screen and (min-width:1280px) {
    #terra #feature {
        padding-bottom: 120px;
    }
    #terra #feature .feature_detail {
        width: 1170px;
        margin: 0 auto 90px;
    }
    #terra #feature .feature_detail .num {
        left: -30px;
    }
    #terra #feature .feature_detail .f_img {
        width: 400px;
    }
    #terra #feature .feature_detail .f_txt {
        width: calc(100% - 430px);
        padding: 120px 0 0;
        margin-bottom: 120px;
    }
    #terra #feature .feature_detail .f_txt:after {
        width: 100vw;
        top: 60px;
        left: -370px;
    }
    #terra #feature .feature_detail .f_txt .detail {
        margin-top: 60px;
    }
    #terra #feature .feature_detail .f_txt .feature_more {
        bottom: -110px;
    }
    /*even*/
    #terra #feature .feature_detail:nth-of-type(even) .f_txt {
        padding: 120px 0 0;
    }
    #terra #feature .feature_detail:nth-of-type(even) .f_txt:after{
        right: -370px;
        left: auto;
    }
}


/*feature01*/
#terra #feature .feature01 .f_txt .detail .f01_d_01 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 15px;
    margin-bottom: 30px;
}
#terra #feature .feature01 .f_txt .detail .f01_d_01 p:last-child {
    grid-column: 1 / 3;
}
#terra #feature .feature01 .f_txt .detail .f01_d_02 ul li {
    margin-bottom: 30px;
}
#terra #feature .feature01 .f_txt .detail .f01_d_02 ul li h4 {
    text-align: center;
    padding: 5px;
    border: solid 1px #7e766f;
    margin-bottom: 1em;
}
#terra #feature .feature01 .f_txt .detail .f01_d_02 ul + .img {
    margin-bottom: 30px;
}

@media screen and (min-width:768px) {
    #terra #feature .feature01 .f_txt .detail .f01_d_01 {
        grid-template-columns: repeat(4,1fr);
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_01 p:last-child {
        grid-column: 3 / 5;
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_02 ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 15px;
    }
}

@media screen and (min-width:1280px) {
    #terra #feature .feature01 .f_txt .detail .f01_d_01 {
        grid-gap: 30px;
        align-items: center;
        margin-bottom: 60px;
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_01 .img:first-child {
        margin-right: -7.5px;
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_01 .img:nth-child(2) {
        margin-left: -7.5px;
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_02 ul + .img {
        margin-bottom: 60px;
    }
    #terra #feature .feature01 .f_txt .detail .f01_d_02 ul {
        grid-column-gap: 30px;
    }
}

/*feature02*/
#terra #feature .feature02 .f_txt h3 {
    margin-top: calc(-20px - ((1em * 1.42857143)*2));
}
#terra #feature .feature02 .f_txt .detail .f02_d_01 {
    margin-bottom: 30px;
}
#terra #feature .feature02 .f_txt .detail .f02_d_01 .img {
    margin-bottom: 15px;
}
#terra #feature .feature02 .f_txt .detail .f02_d_01 .img:nth-child(2) > img {
    width: 60%;
}
#terra #feature .feature02 .f_txt .detail .f02_d_02 ul li {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 15px;
    margin-bottom: 30px;
}
#terra #feature .feature02 .f_txt .detail .f02_d_02 ul li h4 {
    grid-column: 1 / 3;
    text-align: center;
    padding: 5px;
    border: solid 1px #7e766f;
    margin-bottom: 1em;
}

@media screen and (min-width:768px) {
    #terra #feature .feature02 .f_txt .detail .f02_d_01, #terra #feature .feature02 .f_txt .detail .f02_d_02 ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 15px;
        align-items: flex-end;
    }
    #terra #feature .feature02 .f_txt .detail .f02_d_01 p:last-child {
        grid-column: 1 / 3;
    }
}

@media screen and (min-width:1280px) {
    #terra #feature .feature02 .f_txt .detail .f02_d_01, #terra #feature .feature02 .f_txt .detail .f02_d_02 ul {
        grid-column-gap: 30px;
    }
    #terra #feature .feature02 .f_txt .detail .f02_d_01 {
        margin-bottom: 60px;
    }
}

/*feature03*/
#terra #feature .feature03 .f_txt .detail .f03_d_01 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px 15px;
}
#terra #feature .feature03 .f_txt .detail .f03_d_01 .img:first-child {
    grid-column: 1 / 3;
}
#terra #feature .feature03 .f_txt .detail .f03_d_01 .img:first-child span {
    width: 50%;
}
#terra #feature .feature03 .f_txt .detail .f03_d_01 p:last-child {
    grid-column: 1 / 3;
}

@media screen and (min-width:768px) {
    #terra #feature .feature03 .f_txt .detail .f03_d_01 {
        grid-template-columns: repeat(4, 1fr);
    }
    #terra #feature .feature03 .f_txt .detail .f03_d_01 p:last-child {
        grid-column: 1 / 5;
    }
}







/*---商品一覧はこちら-----------------------------------------------*/
#terra .item_list_link {
    text-align: center;
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/item_list_link_bg01.jpg') no-repeat center;
    background-size: cover;
    padding-left: 30px;
    padding-right: 30px;
}
#terra #lineup + .item_list_link {
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/item_list_link_bg02.jpg') no-repeat center;
    background-size: cover;
}
#terra .item_list_link:last-child {
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/item_list_link_bg03.jpg') no-repeat center;
    background-size: cover;
}
#terra .item_list_link > a {
    display: block;
    margin: 0 auto;
    background: rgba(255,255,255,0.8);
    width: 100%;
    max-width: 400px;
    font-size: 1.5em;
    padding: 10px;
}
#terra .item_list_link > a:after {
    margin-left: 10px;
    content: "\f0da";
    font-family: FontAwesome;
    display: inline-block;
    /*vertical-align: middle;*/
}






/*---lineup-----------------------------------------------*/
#terra #lineup {
    /*padding-left: 15px;
    padding-right: 15px;*/
}
#terra #lineup .lineup_detail {
    position: relative;
    z-index: 0;
    margin-bottom: 60px;
    padding-left: 15px;
    padding-right: 15px;
}
#terra #lineup .lineup_detail:last-child {
    margin-bottom: 0;
}
#terra #lineup .lineup_detail h3 {
    display: inline-block;
    margin-bottom: 15px;
    font-size: 1.75em;
    background: #fff;
    padding-right: 0.5em;
    position: relative;
    font-family: "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif;
}
#terra #lineup .lineup_detail h3:after {
    content: "";
    width: 100vw;
    height: 1px;
    background: #111;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: -1;
}
#terra #lineup .lineup_detail .item {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 15px;
    text-align: center;
    margin-bottom: 60px;
}
#terra #lineup .lineup_detail .item li h4 {
    font-weight: bold;
    margin-bottom: 15px;
}
#terra #lineup .lineup_detail .item li > .img {
    margin-bottom: 30px;
}
#terra #lineup .lineup_detail .item li > .img img {
    width: 90%;
    max-width: 220px;
}
/*#terra #lineup .lineup_detail .item li .pdp_link {
    padding: 5px;
    background: #e7e0d9;
    width: 100%;
    display: inline-block;
    text-align: center;
    max-width: 165px;
}*/
#terra #lineup .lineup_detail .item li .pdp_link + p {
    margin-top: 15px;
}
#terra #lineup .lineup_detail .item li .pdp_link + p > a {
    text-decoration: underline;
    font-weight: bold;
    font-size: 0.85em;
    white-space: nowrap;
}
#terra #lineup .list_style {
    padding-left: 15px;
    padding-right: 15px;
}
#terra #lineup .lineup_detail .newcolor_ban {
    text-align: center;
}
#terra #lineup .lineup_detail .newcolor_ban > p {
    color: #c966a0;
    font-size: 2.3333em;
}
#terra #lineup .lineup_detail .newcolor_ban > a {
    display: block;
}

@media screen and (min-width:768px) {
    #terra #lineup {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 30px;
        padding-left: 30px;
        padding-right: 30px;
    }
    #terra #lineup .lineup_detail {
        padding-left: 0;
        padding-right: 0;
    }
    #terra #lineup h2 {
        grid-column: 1 / 4;
    }
    #terra #lineup .list_style {
        padding: 0;
        grid-column: 1 / 4;
    }
}
@media screen and (min-width:1024px) {
    #terra #lineup {
        padding-left: calc((100% - 970px) / 2);
        padding-right: calc((100% - 970px) / 2);
    }
    #terra #lineup .lineup_detail h3 {
        font-size: 2em;
        margin-bottom: 60px;
    }
}


/*color01*/
#terra #lineup .color01 {
    background: url('/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/lineup/lineup_bg.jpg') no-repeat 150% 0%;
    background-size: 75vw auto;
}
#terra #lineup .color01 h3 + p {
    width: 50%;
    margin-bottom: 120px;
}
#terra #lineup .color01 h3 + p a {
    text-decoration: underline;
    font-weight: bold;
}
#terra #lineup .color01 h3 + p a:after {
    margin-left: 0.5em;
    content: "\f0da";
    font-family: FontAwesome;
    display: inline-block;
    /*vertical-align: middle;*/
}

@media screen and (min-width:768px) {
    #terra #lineup .color01 {
        grid-column: 1 / 4;
        background: url(/_ui/responsive/common/ui_assets/online/bg/pickup/terrabyessensity/img/lineup/lineup_bg.jpg) no-repeat top right;
        background-size: 50vw auto;
        padding: 0;
    }
    #terra #lineup .lineup_detail h3:after {
        width: calc(100vw - 60px);
    }
    #terra #lineup .color01 h3 + p {
        margin-bottom: 60px;
        width: 60%;
    }
    #terra #lineup .color01 .item {
        display: block;
        width: 60%;
    }
    #terra #lineup .color01 .item li {
        display: grid;
        grid-template-columns: 220px max-content;
        grid-template-rows: 1fr max-content max-content max-content;
        grid-column-gap: 15px;
        align-items: flex-end;
        margin-bottom: 30px;
    }
    #terra #lineup .color01 .item li:last-child {
        margin-bottom: 0;
    }
    #terra #lineup .color01 .item li .img {
        grid-column: 1 / 2;
        grid-row: 1 / 4;
        margin-bottom: 0;
    }
    #terra #lineup .color01 .item li > .img img {
        width: 220px;
    }
    #terra #lineup .color01 .item li h4 {
        text-align: left;
        grid-column: 2 / 3;
    }
    #terra #lineup .color01 .item li .pdp_link, #terra #lineup .color01 .item li .pdp_link + p {
        grid-column: 2 / 3;
    }
}

@media screen and (min-width:1024px) {
    #terra #lineup .color01 {
        background-size: 50% auto;
        margin-bottom: 90px;
    }
    #terra #lineup .color01 h3:after {
        width: 970px;
    }
    #terra #lineup .color01 h3 + p, #terra #lineup .color01 .item {
        width: 50%;
    }
    #terra #lineup .color01 .item li {
        grid-template-columns: 220px max-content;
        grid-column-gap: 30px;
        margin-bottom: 45px;
    }
    #terra #lineup .lineup_detail .newcolor_ban > p {
        font-size: 3em;
    }
}


/*color02*/
@media screen and (min-width:768px) {
    #terra #lineup .color02 {
        grid-column: /*1 / 2*/1 / 4;
    }
    #terra #lineup .color02 h3:after {
        width: /*calc((100% - (30px * 4)) / 3)*/calc(100vw - 60px);
    }
    #terra #lineup .color02 .item {
        grid-template-columns: /*1fr*/repeat(2, 1fr);
        grid-column-gap: 30px;
    }
}

@media screen and (min-width:1024px) {
    #terra #lineup .color02 {
        margin-bottom: 90px;
    }
    #terra #lineup .color02 h3:after {
        width: /*calc((970px - (30px * 2)) / 3)*/970px;
    }
}


/*support*/
@media screen and (min-width:768px) {
    #terra #lineup .support {
        grid-column: /*2 / 4*/1 / 4;
        padding: 0;
    }
    #terra #lineup .support h3:after {
        width: /*calc(((100vw - (30px * 4)) / 3)*2 + 30px)*/calc(100vw - 60px);
    }
    #terra #lineup .support .item {
        grid-column-gap: 30px;
    }
}

@media screen and (min-width:1024px) {
    #terra #lineup .support {
        margin-bottom: 90px;
    }
    #terra #lineup .support h3:after {
        width: /*calc(((970px - (30px * 2)) / 3) * 2 + 30px)*/970px;
    }
}


/*lineup_attention*/
@media screen and (min-width:768px) {
    #terra #lineup .lineup_attention {
        grid-column: 1 / 4;
    }
}






/*---new_color-----------------------------------------------*/
#terra #newcolor {
    padding-left: 15px;
    padding-right: 15px;
}
#terra #newcolor h2 {
    font-size: 1.75em;
    font-family: "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif;
    white-space: nowrap;
}
#terra #newcolor .newcolor_detail {
    margin-bottom: 60px;
}
#terra #newcolor .newcolor_detail:last-child {
    margin-bottom: 0;
}
#terra #newcolor .newcolor_detail h3 {
    font-size: 1.75em;
    font-family: "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif;
    position: relative;
    display: inline-block;
    background: #fff;
    padding-right: 0.5em;
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail h3:after {
    content: "";
    display: block;
    height: 1px;
    width: 100vw;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: -1;
    background: #111;
}
#terra #newcolor .newcolor_detail .inner:not(:last-child) {
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail .detail_section:not(:last-child) {
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail .detail_section h4 {
    width: 100%;
    padding: 5px;
    border: solid 1px #7e766f;
    text-align: center;
    margin-bottom: 15px;
}
#terra #newcolor .newcolor_detail .notes {
    margin-top: 15px;
}
#terra #newcolor .newcolor_detail .notes:not(:last-child) {
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail .sub_lead {
    font-size: 1.25em;
    margin-bottom: 30px;
}

#terra #newcolor .newcolor_detail .detail_section > p:not(:last-child) {
    margin-bottom: 30px;
}

#terra #newcolor .newcolor_detail .colorchart {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
#terra #newcolor .newcolor_detail .colorchart:not(:last-child) {
    margin-bottom: 15px;
}
#terra #newcolor .newcolor_detail .colorchart li {
    width: calc((100% - 30px) / 3);
    margin: 0 calc(15px / 2);
}
#terra #newcolor .newcolor_detail .colorchart li:first-child {
    margin-left: 0;
}
#terra #newcolor .newcolor_detail .colorchart li:nth-child(3n) {
    margin-right: 0;
}
#terra #newcolor .newcolor_detail .colorchart li > img {
    margin-bottom: 5px;
}
#terra #newcolor .newcolor_detail .colorchart .small_txt {
    display: block;
}
#terra #newcolor .newcolor_detail .colorchart li.old, #terra #newcolor .newcolor_detail .colorchart li.new {
    margin: 5px 0 0;
}
#terra #newcolor .newcolor_detail .colorchart li.new {
    width: calc(((100% - 30px) / 3) * 2 + 15px);
    margin-left: 15px;
}

#terra #newcolor .newcolor_detail .dye li:not(:last-child) {
    margin-bottom: 15px;
}

#terra #newcolor .newcolor_detail .topic_area {
    background: #e7e0d9;
    padding: 30px 15px;
}
#terra #newcolor .newcolor_detail .topic_area:not(:first-child) {
    margin-top: 30px;
}
#terra #newcolor .newcolor_detail .topic_area > h4 {
    font-size: 2.3333em;
    display: inline-block;
    position: relative;
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail .topic_area > h4:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #111;
}
#terra #newcolor .newcolor_detail .topic_area .pdp_link {
    background: #fff;
    max-width: 220px;
}

#terra #newcolor .newcolor_detail .color_sum {
    display: grid;
    grid-template-columns: 1fr max-content 1fr max-content 1fr;
    grid-gap: 0 5px;
}
#terra #newcolor .newcolor_detail .color_sum:not(:last-child) {
    margin-bottom: 15px;
}
#terra #newcolor .newcolor_detail .color_sum > p img {
    margin-bottom: 5px;
}
#terra #newcolor .newcolor_detail .color_sum > p .small_txt {
    display: block;
    color: #7e766f;
}
#terra #newcolor .newcolor_detail .color_sum > .sum img, #terra #newcolor .newcolor_detail .color_sum > .equal img {
    height: calc(100% - 1.42857143em - (0.75em * 1.42857143) - 5px);
}

#terra #newcolor .newcolor_detail .item_detail {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0 15px;
}
#terra #newcolor .newcolor_detail .item_detail:not(:last-child) {
    margin-bottom: 30px;
}
#terra #newcolor .newcolor_detail .item_detail .notes, #terra #newcolor .newcolor_detail .item_detail .colorchart, #terra #newcolor .newcolor_detail .item_detail > p {
    grid-column: 1/3;
}


@media screen and (min-width:768px) {
    #terra #newcolor {
        padding-left: 30px;
        padding-right: 30px;
    }
    
    #terra #newcolor .newcolor_detail h3:after {
        width: calc(100vw - 60px);
    }
    #terra #newcolor .newcolor_detail .inner {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 0 15px;
    }
    #terra #newcolor .newcolor_detail .inner:not(:last-child) {
        margin-bottom: 60px;
    }
    #terra #newcolor .newcolor_detail .inner > div {
        margin-bottom: 0 !important;
    }
    #terra #newcolor .newcolor_detail .detail_section:not(:last-child) {
        margin-bottom: 60px;
    }
    #terra #newcolor .newcolor_detail .colorchart:not(:last-child) {
        margin-bottom: 30px;
    }
    #terra #newcolor .newcolor_detail .colorchart li > img {
        margin-bottom: 15px;
    }
    #terra .newcolor_detail .list_style {
        display: grid;
        grid-template-columns: max-content max-content;
        grid-gap: 10px 30px;
        justify-content: center;
    }
    #terra .newcolor_detail .list_style li + li {
        margin: 0;
    }
    #terra #newcolor .newcolor_detail .dye {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 15px 30px;
    }
    #terra #newcolor .newcolor_detail .dye li {
        margin: 0 !important;
    }
    #terra #newcolor .newcolor_detail .topic_area {
        padding: 45px;
    }
    #terra #newcolor .newcolor_detail .topic_area:not(:first-child) {
        margin-top: 60px;
    }
    #terra #newcolor .newcolor_detail .topic_area > h4 {
        margin-bottom: 45px;
    }
    #terra #newcolor .newcolor_detail .notes:not(:last-child) {
        margin-bottom: 60px;
    }
    #terra #newcolor .newcolor_detail .inner.colorexpression {
        grid-template-columns: 62.353% auto;
        grid-gap: 0 30px;
        align-items: center;
    }
    #terra #newcolor .newcolor_detail .inner.img_with_txt {
        grid-gap: 15px 30px;
    }
    #terra #newcolor .newcolor_detail .inner.img_with_txt > .colorchart {
        grid-column: 1/2;
        grid-row: 1/4;
        margin: 0;
    }
    #terra #newcolor .newcolor_detail .inner.img_with_txt > p, #terra #newcolor .newcolor_detail .inner.img_with_txt > .list_style, #terra #newcolor .newcolor_detail .inner.img_with_txt > .notes {
        grid-column: 2/3;
        margin: 0;
    }
    #terra #newcolor .newcolor_detail .inner.img_with_txt > .list_style {
        display: block;
    }
    #terra #newcolor .newcolor_detail .topic_area .detail_section:not(:last-child) {
        margin-bottom: 30px;
    }
    #terra #newcolor .newcolor_detail .color_sum {
        grid-gap: 0 10px;
    }
    #terra #newcolor .newcolor_detail .pdp_link {
        width: 40%;
        max-width: 400px;
        padding: 15px;
    }
    #terra #newcolor .newcolor_detail .topic_area .pdp_link {
        max-width: 400px;
        width: calc((100% + (45px * 2)) * 0.4);
    }
    #terra #newcolor .newcolor_detail .sub_lead {
        margin-top: 15px;
    }
    #terra #newcolor .newcolor_detail .sub_lead + .notes {
        margin-bottom: 45px;
        text-align: center;
    }
    #terra #newcolor .newcolor_detail .inner .item_detail .list_style {
        display: block;
    }
    #terra #newcolor .newcolor_detail .inner .item_detail .notes {
        margin-bottom: 30px;
    }
}

@media screen and (min-width:1024px) {
    #terra #newcolor {
        padding-left: calc((100% - 970px) / 2);
        padding-right: calc((100% - 970px) / 2);
    }
    #terra #newcolor .newcolor_detail {
        margin-bottom: 90px;
    }
    #terra #newcolor .newcolor_detail h3:after {
        width: 970px;
    }
    #terra #newcolor .newcolor_detail .inner {
        grid-gap: 0 30px;
    }
    #terra #newcolor .newcolor_detail .topic_area {
        padding: 60px;
    }
    #terra #newcolor .newcolor_detail .topic_area > h4 {
        font-size: 3em;
        margin-bottom: 60px;
    }
    #terra #newcolor .newcolor_detail .sub_lead {
        margin-top: 30px;
        font-size: 1.5em;
    }
    #terra #newcolor .newcolor_detail .sub_lead + .notes {
        margin-bottom: 60px;
    }
}





/*---newcolor_list_link-----------------------------------------------*/
#terra #newcolor_list_link {
    /*padding-top: 90px;*/
    text-align: center;
    background: #e7e0d9;
}
#terra #newcolor_list_link a {
    display: block;
    padding: 10px;
    font-size: 1.5em;
    max-width: 400px;
    width: 84%;
    margin: 0 auto;
    background: /*#e7e0d9*/#fff;
}
#terra #newcolor_list_link a:after {
    margin-left: 10px;
    content: "\f0da";
    font-family: FontAwesome;
    display: inline-block;
    /*vertical-align: middle;*/
}

@media screen and (min-width:768px) {
    #terra #newcolor_list_link {
        /*padding-top: 120px;
        padding-bottom: 90px;*/
    }
}











/*---フェードイン-------------------------------------------*/
#terra .fadeIn {
  transform: translate3d(0, 20px, 0);
  transition: 1s;
  opacity: 0;
}

#terra .fadeIn.animated {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}









/**/