/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@300..900&family=Noto+Sans+JP&display=swap');
/*
.lato-regular {
    font-family: "Noto Sans JP", sans-serif;
    font-family: lato, sans-serif; 
    font-family: source-han-sans-japanese, sans-serif; 
    font-family: "Figtree", serif;
}
*/
:root{
    --main-color: #ad7b4b;
    --sub-color: #a3724a;
    --bg-color: #523413;
    --ultime-color: #911528;
    --page-gray: #eae9e7;
    --page-grade: linear-gradient(to bottom,  #c19168 0%,#ad7b4b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}


#ultime-wrap{
    font-size: clamp(1.4rem, 0.467rem + 3.11vw, 2.8rem);
    font-family: "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    list-style: none;
    text-align: center;
}

#ultime-wrap a{
    text-decoration: none;
}



/*--------------------------------------

共通

-----------------------------------------*/


#ultime-wrap h2, 
#ultime-wrap h3,
#ultime-wrap h4{
    font-family: source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

#ultime-wrap h2.comm_h2{
    font-size: clamp(2.5rem, 0.833rem + 5.26vw, 5rem);
    font-weight: 700;
    letter-spacing: 2px;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    color: var(--main-color);
}

#ultime-wrap h2.comm_h2 span{
    display: block;
    font-size: 60%;
}

#ultime-wrap sup{
    font-size: clamp(1.1rem, 0.9rem + 0.67vw, 1.4rem);
    vertical-align: text-top;
    margin: 0 3px;
}


#ultime-wrap img{
    max-width: 100%;
    vertical-align: bottom;
}

#ultime-wrap .comm_flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#ultime-wrap .comm_inner{
    width: 90%;
    margin: auto;
}

#ultime-wrap .comm_mt{
    margin-top: 80px;
}

#ultime-main .btn{
    background: var(--page-grade);
    border-radius: 10px;
    position: relative;
    text-align: center;
}

#ultime-main .btn a{
    color: #fff;
    font-size: clamp(1.2rem, 0.867rem + 0.511vw, 2rem);
    display: block;
    padding: 15px 0;
}

#ultime-main .btn a:after{
    content: "";
    background: url("../link-arrow.png") no-repeat;
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    right: 5%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#ultime-main .br{
    display: none;
}






#ultime-main{
    max-width: 800px;
    margin: auto;
    transition:.5s;
    background: #fff;
    box-shadow: 0 0 8px #444;
    position: relative;
    z-index: 9;
}


#ultime-main #ops{
    margin-bottom: 50px;
}

#ultime-main #ops .comm_flex{
    align-items: center;
    margin: 30px auto;
}

#ultime-main #ops .comm_flex h2{
    width: 65%;
    text-align: left;
}

#ultime-main #ops .comm_flex img{
    width: 30%;
}

#ultime-main #ops p{
    text-align: left;
    font-size: 16px;
}

#ultime-main #coice{
    background: #f7f7f7;
    padding: 2em 4%;
    box-sizing: border-box;
}

#ultime-main #coice h2{
    font-size: clamp(2.4rem, 1.833rem + 1.56vw, 3.5rem);
    margin-bottom: 30px;
}

#ultime-main #coice h2 span{
    font-size: 80%;
    display: block;
}

#ultime-main #coice li{
    width: 48%;
    max-width: 335px;
}

#ultime-main #coice li dt{
    background: var(--ultime-color);
    color: #fff;
    font-size: clamp(1.6rem, 0.967rem + 1.644vw, 2.8rem);
    line-height: 1.3;
    padding: 0.5em 0;
    border-radius: 25px 25px 0 0;
}

#ultime-main #coice li:nth-of-type(2) dt{
    background: var(--main-color);
    color: #fff;
}

#ultime-main #coice li dd{
    margin-top: -2px;
}

#ultime-main #coice li p{
    border: 2px solid var(--ultime-color);
    border-radius: 50px;
    background: #fff;
    margin-top: 20px;
    font-weight: 600;
    text-indent: -8px;
    font-size: clamp(1.2rem, 0.667rem + 1.78vw, 2rem);
}

#ultime-main #coice li p a{
    display: block;
    padding: 8px 0;
    color: var(--ultime-color);
    position: relative;
}

#ultime-main #coice li:nth-of-type(2) p{
    border: 2px solid var(--main-color);
}

#ultime-main #coice li:nth-of-type(2) p a{
    color: var(--main-color);
}

#ultime-main #coice li p a::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  width: 22px;
  height: 22px;
  margin: auto;
  border-radius: 20px;
  background-color: var(--ultime-color);
}
#ultime-main #coice li p a::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 25px;
  width: 0;
  height: 0;
  margin: auto;
  border-top: 6px solid transparent;
  border-right: 0 solid transparent;
  border-left: 9px solid #fff;
  border-bottom: 6px solid transparent;
  box-sizing: border-box;
}

#ultime-main #coice li:nth-of-type(2) p a::before {
  background-color: var(--main-color);
}


#ultime-main #intro{
    position: relative;
}

#ultime-main #intro h2{
    position: absolute;
    top: 8%;
    text-align: center;
    width: 96%;
    left: 2%;
    font-size: clamp(2rem, 0.667rem + 4.018vw, 5rem);
    color: var(--main-color);
}



#ultime-main .gray{
    background: #d9d9d9;
    margin-bottom: 0;
    padding: 40px 0 10px;
}


#ultime-main #visu{
    position: relative;
    text-align: center;
    color: #fff;
}

#ultime-main #visu dl{
    position: absolute;
    bottom: 50px;
    width: 90%;
    left: 5%;
}

#ultime-main #visu dl dt{
    font-size: clamp(3rem, 0.567rem + 3.78vw, 3.4rem);
    font-weight: bold;
    margin-bottom: 10px;
}


#ultime-main #about{
    background: #110601;
    padding-bottom: 60px;
    position: relative;
}


#ultime-main #about .inner{
    position: absolute;
    top: 30px;
    width: 90%;
    text-align: center;
    margin-left: 5%;
    color: #fff;
}

#ultime-main #about .inner h2{
    color: #fff;
}

#ultime-main #about .inner h3{
    font-size: clamp(1.8rem, 1.033rem + 1.56vw, 4.6rem);
    letter-spacing: 2px;
}

#ultime-main #about .inner h3 span{
    display: block;
    font-size: 80%;
}

#ultime-main #about .point{
    width: 90%;
    margin: 20px auto 0;
    color: var(--main-color);
}


#ultime-main #about .point li{
    width: 49%;
    margin-bottom: 2%;
    border: 2px solid;
    padding: 0.5em 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    font-size: clamp(1.2rem, 1rem + 0.95vw, 2.5rem);
    line-height: 1.4;
}

#ultime-main #birth{
    background: var(--page-gray);
    padding: 60px 5%;
    color: var(--main-color);
}

#ultime-main #birth h2{
    font-size: clamp(2.2rem, 1.216rem + 1.607vw, 4rem);
    margin-bottom: 20px;
}

#ultime-main #birth dd{
    text-align: left;
}

#ultime-main #birth dd span{
    display: block;
    font-size: 60%;
    color: #8a8a8a;
    margin-top: 15px;
}

#ultime-main #birth p{
    margin: 30px auto;
}




#ultime-main .lineup .comm_h2{
    color: var(--main-color);
    margin-bottom: 50px;
}

#ultime-main .lineup .thumb{
    justify-content: center;
}

#ultime-main .lineup .thumb dl{
    width: 30%;
    text-align: center;
    margin: 0 1.5% 7%;
}

#ultime-main .lineup .thumb dt h2{
    display: block;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    font-size: clamp(1rem, 0.87rem + 1.11vw, 2rem);
}


#ultime-main .lineup .thumb dt h2 span{
    display: block;
    letter-spacing: 2px;
    font-size: 110%;
}

#ultime-main .lineup .thumb dt h2 a{
    color: var(--main-color);
}
#ultime-main .lineup .thumb dt h2 span:after{
    content: "";
    width: 50px;
    height: 2px;
    border-bottom: 2px solid;
    display: block;
    margin: 5px auto 10px;
}

#ultime-main .lineup .thumb dd{
    margin-top: 10px;
    font-size: 70%;
    line-height: 1.4;
}

#ultime-main .lineup .thumb dd.btn{
    margin-bottom: 20px;
}

#ultime-main .lineup .thumb dd.text-link{
    margin-top: 10px;
    font-size: 14px;
    display: none; /*消す*/
}

#ultime-main .lineup .thumb dd.text-link a{
    color: var(--main-color);
    text-decoration: underline;
}






/*#ultime-main .lineup .block{
    background: #EAE9E7;
    padding: 50px 3%;
    text-align: center;
    margin-top: 80px;
    box-sizing: border-box;
}

#ultime-main .lineup .block  h2{
    margin-top: -90px;
}

#ultime-main .lineup .block .box{
    margin-bottom: 50px;
}

#ultime-main .lineup .block .box .midashi{
    width: 90%;
    margin: 20px auto 0;
    text-align: left;
    position: relative;
    font-weight: bold;
}

#ultime-main .lineup .block .box .image{
    margin: -30px auto 20px;
}


#ultime-main .lineup .block .box .btn{
    width: 90%;
    margin: 20px auto;
}

#ultime-main .lineup .block .box .btn a{
    padding: 25px 0;
}

#ultime-main .lineup .block .box p{
    font-size: 20px;
}

#ultime-main .lineup .block .box ul{
    width: 90%;
    margin: 15px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#ultime-main .lineup .block .box ul li.btn{
    width: 49%;
    margin: 0;
}
#ultime-main .lineup .block .box .btn a{
    font-size: 15px;
}




#ultime-main .lineup .new{
    text-align: center;
    width: 90%;
    margin: 50px auto -50px;
    font-weight: bold;
}

#ultime-main .lineup .new h3{
    color: var(--main-color);
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-size: 50px;
}

#ultime-main .lineup .new h3 span{
    display: block;
    font-size: 20px;
    margin: 20px auto;
}
#ultime-main .lineup .new dt{
    font-size: 24px;
}

#ultime-main .lineup .new dd{
    font-size: 32px;
}*/

#ultime-main #recommend{
    background: url("bg.jpg") no-repeat;
    background-size: cover;
    padding: 80px 0 50px;
    text-align: center;
}
#ultime-main #recommend h2.comm_h2{
    margin-bottom: 20px;
}

#ultime-main #recommend .midashi{
    border-top: 3px solid var(--main-color);
    border-bottom: 3px solid var(--main-color);
    padding: 30px 0;
    margin-top: 60px;
    font-weight: bold;
    font-size: clamp(1.8rem, 1.133rem + 2.022vw, 2.8rem);
}

#ultime-main #recommend .midashi h3{
    margin: -50px auto 20px;
    font-size: 22px;
}

#ultime-main #recommend .midashi h3 span{
    background: var(--main-color);
    color: #fff;
    padding: 5px 8%;
}

#ultime-main #recommend .comm_flex{
    margin: 60px auto 40px;
}

#ultime-main #recommend .comm_flex .block p{
    font-size: clamp(1.2rem, 0.933rem + 0.89vw, 1.6rem);
    margin-top: 20px;
}

#ultime-main #recommend .comm_flex .block:nth-of-type(1){
    width: 51%;
    position: relative;
}

#ultime-main #recommend .comm_flex .block:nth-of-type(1):after{
    content: "+";
    font-weight: 700;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    position: absolute;
    right: -5px;
    font-size: 60px;
    top: 45%;
    -webkit-transform: translateY(-48%);
    transform: translateY(-48%);
}

#ultime-main #recommend .comm_flex .block:nth-of-type(2){
    width: 49%;
}

#ultime-main #recommend .comm_flex .block .box:first-child{
    margin-bottom: 15px;
}

/*---------------シャントリ用--------------------*/
#ultime-main #recommend #sptr.comm_flex{
    padding-bottom: 30px;
}

#ultime-main #recommend #sptr.comm_flex .block{
    width: 50%;
}
#ultime-main #recommend #sptr.comm_flex .block:nth-of-type(1)::after{
    content: "";
}

#ultime-main #recommend .att{
    font-size: clamp(1.2rem, 0.933rem + 0.89vw, 1.6rem);
}



#ultime-main #nayami{
    text-align: center;
}

#ultime-main #nayami .bg{
    padding: 50px 0 10px;
    background: url("damage.jpg") no-repeat top #78797B;
}

#ultime-main #nayami .bg .midashi{
    font-size: clamp(2.8rem, 2rem + 2.67vw, 4rem);
    letter-spacing: 2px;
    color: #fff;
}

#ultime-main #nayami .bg .midashi span{
    font-size: 80%;
}

#ultime-main #nayami .bg ul{
    background: rgba(252,252,252,0.8);
    border-radius: 20px;
    width: 90%;
    margin: 20px auto;
    padding: 1em 1em;
    box-sizing: border-box;
}

#ultime-main #nayami .bg ul li{
    text-align: left;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    background: url("check.png") no-repeat 0 10px;
    background-size: 9%;
    padding-left: 1.8em;
}

/*#ultime-main #nayami .bg ul li:before{
    content: "";
    display: inline-block;
     width: 5%;
     margin-right: 3%;
     aspect-ratio:1/1;
     background-size: contain;
}*/

#ultime-main #nayami .bg ol{
    width: 90%;
    margin: 0 auto 40px;
}

#ultime-main #nayami .bg ol li{
    color: #fff;
    margin: 0 auto 10px;
    font-size: clamp(1.85rem, 1.03rem + 1.28vw, 3.2rem);
    background: rgba(35,24,21,0.6);
    padding: 5px 0;
}

#ultime-main #nayami .bg p{
    color: #fff;
}


#ultime-main #nayami .if{
    margin-top: 50px;
}

#ultime-main #nayami .if h3{
    color: var(--main-color);
    font-size: clamp(2rem, 1.3667rem + 1.278vw, 3rem);
    margin-bottom: 20px;
}

#ultime-main #nayami .if p{
    background: var(--main-color);
    color: #fff;
    padding: 5px 0;
    font-size: clamp(2.4rem, 1.8rem + 2vw, 3.3rem);
    position: relative;
    width: 96%;
    max-width: 500px;
    margin: 0 auto 20px;
}

#ultime-main #nayami .if p:nth-of-type(2){
    margin: 0 0 20px 10%;
}

#ultime-main #nayami .if p:before,
#ultime-main #nayami .if p:after{
	position: absolute;
	content: '';
	top: 0;
	width: 0;
	height: 0;
	border: none;
	z-index: 2;
}

#ultime-main #nayami .if p:before{
	left: 0px;
	top: 0;
	border-left: solid 55px #fff;
	border-bottom: solid 75px transparent;
}

#ultime-main #nayami .if p:after{
	right: 0px;
	border-right: solid 55px #fff;
	border-top: solid 75px transparent;
}

#ultime-main #nayami .if h4{
    color: var(--main-color);
    font-size: clamp(1.8rem, 1.4rem + 1.33vw, 2.4rem);
    margin: 20px auto 10px;
}

#ultime-main #nayami .if .att{
    font-size: clamp(1.0rem, 0.933rem + 0.89vw, 1.4rem);
    color: #808080;
}

#ultime-main #nayami .if img{
    margin-top: 30px;
}

#ultime-main #technology{
    background: #000615;
    padding: 50px 0;
}

#ultime-main #technology h2{
    color: #fff;
    width: 90%;
    margin: auto;
    text-align: center;
}

#ultime-main #technology .comm_inner{
    background: #fff;
    padding: 50px 5%;
    box-sizing: border-box;
    margin: 50px auto;
}

#ultime-main #technology .comm_inner h3{
    text-align: center;
    font-size: clamp(2.2rem, 1rem + 2.33vw, 4.2rem);
    border-bottom: 1px solid #000;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    padding-bottom: 15px;
    margin-bottom: 20px;
    font-weight: 700;
}

#ultime-main #technology .comm_inner h3 span{
    color: var(--main-color);
    font-size: 50%;
    display: block;
}

#ultime-main #technology .comm_inner img{
    margin: 15px 0;
}

#ultime-main #technology .comm_inner dl{
    margin-bottom: 30px;
}

#ultime-main #technology .comm_inner dt{
    background: linear-gradient(#fff 53%, #eab88b 47%);
    margin-bottom: 20px;
    font-size: 120%;
    font-weight: bold;
}

#ultime-main #technology .comm_inner dd{
    text-align: left;
}

#ultime-main #technology .comm_inner dd span{
    display: block;
    color: var(--main-color);
    margin-bottom: 5px;
}

#ultime-main #technology .comm_inner .block .box{
    width: 48%;
}

#ultime-main #technology .comm_inner li{
    font-size: 14px;
    color: #808080;
    margin-bottom: 2px;
    text-align: left;
}

#ultime-wrap #fragrance{
    background: url("bg.jpg") no-repeat;
    padding: 6%;
}

#ultime-wrap #fragrance img{
    margin-top: 30px;
}

#ultime-wrap #fragrance dl{
    margin-top: 50px;
}

#ultime-wrap #fragrance dd{
    text-align: left;
    margin-top: 20px;
}




#ultime-main #product{
    background: var(--bg-color);
    color: #fff;
    padding: 60px 0 5px;
    width: 100%;
    margin: 0 auto;
}

#ultime-main #product  h2{
    width: 90%;
    margin: auto;
    color: #fff;
}

#ultime-main #product .block{
    margin-bottom: 80px;
}

#ultime-main #product .block h3{
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin-top: 50px;
    padding: 20px 0;
    font-size: 120%;
}

#ultime-main #product .block .name{
    text-align: center;
    margin-top: 50px;
}
#ultime-main #product .block .name a{
    color: #fff;
}

#ultime-main #product .block .comm_flex{
    margin-top: 50px;
    align-items: center;
}

#ultime-main #product .block .comm_flex .img{
    width: 42%;
}

#ultime-main #product .block .comm_flex .text{
    width: 50%;
    line-height: 1.8;
    text-align: left;
    font-weight: normal;
    font-size: clamp(1.6rem, 1.067rem + 1.78vw, 2.4rem);
}

#ultime-main #product .block .comm_flex .text h4{
    font-size: clamp(1.85rem, 1.2rem + 1.67vw, 3.2rem);
    margin-bottom: 1em;
}

#ultime-main #product .block dl{
    margin: 30px auto;
    text-align: left;
}

#ultime-main #product .block dt{
    font-size: clamp(1.8rem, 1rem + 2.67vw, 3rem);
    margin-bottom: 10px;
}

#ultime-main #product .block dd{
    font-size: 90%;
}

/*#ultime-main #product .block ul{
    margin: 45px auto;
    padding: 25px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding-left: 3%;
    box-sizing: border-box;
}

#ultime-main #product .block ul li{
    background:url("../check.png") no-repeat 0 10px;
    padding-left: 35px;
    margin-bottom: 7px;
    width: 100% !important;
    text-align: left;
    box-sizing: border-box;
}

#ultime-main #product .block ul li span{
    font-size: 17px;
    vertical-align: middle;
}*/

#ultime-main #product .block p span{
    display: block;
    font-size: 20px;
    margin-top: 10px;
}

#ultime-main #product .block .howto{
    background: var(--sub-color);
    margin-top: 80px;
    padding: 30px 5% 40px;
}

#ultime-main #product .block .howto h5{
    text-align: center;
    font-size: clamp(2.8rem, 0.933rem + 3.56vw, 3.6rem);
    font-weight: 700;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    margin-top: -60px;
    letter-spacing: 2px;
}

#ultime-main #product .block ol.btn{
    display: flex;
    justify-content: space-between;
    background: none;
    margin-top: 20px;
    display: none; /*消す*/
}

#ultime-main #product .block ol.btn li{
    width: 48%;
    background: #fff;
    border-radius: 10px;
}

#ultime-main #product .block ol.btn li a{
    color:rgba(216,50,69,1);
    font-size: 17px;
    font-weight: bold;
}
#ultime-main #product .block ol.btn li a:after{
    background: none;
}


#ultime-main #product .block .component ol{
    margin: 20px auto;
}

#ultime-main #product .block .component ol li{
    width: 100% !important;
    text-align: left;
    font-size: 18px;
    line-height: 1.8;
}
#ultime-main #product .block .comm_flex.how{
    margin-top: 20px;
}

#ultime-main #product .block .component{
    background: #E7E9E4;
    margin: 60px auto 30px;
    padding: 30px 5%;
    color: #000;
}

#ultime-main #product .block .component .ttl{
    position: relative;
    margin-bottom: 15px;
    text-align: left;
}

#ultime-main #product .block .component .ttl:after{
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: 2px solid #000;
    left: 0;
    top: 50%;
    display: block;
    position: absolute;
}

#ultime-main #product .block .component .ttl span{
    background: #E7E9E4;
    padding-right: 10px;
    position: relative;
    z-index: 1;
    font-weight: bold;
}

#ultime-main #product .block .component p{
    margin-bottom: 40px;
    font-size: clamp(1.4rem, 1rem + 1.33vw, 2rem);
    text-align: left;
    font-weight: normal;
}

#ultime-main #product .block .btn a{
    padding: 30px 0;
    font-size: clamp(2rem, 1.6rem + 1.33vw, 2.6rem);
}

#ultime-main #product .comm_inner .title{
    text-align: center;
    font-size: 35px;
    font-weight: bold;
}

#ultime-main #product .comm_inner .title span{
    display: block;
    font-size: 26px;
}

#ultime-main #product .block .component#att{
    background: none;
    color: #fff;
    border: 1px solid #fff;
    box-sizing: border-box;
    text-align: left;
}

#ultime-main #product .block .component#att .ttl span{
    background: var(--bg-color);
}
#ultime-main #product .block .component#att .ttl:after{
    border-bottom: 2px solid #fff;
}




#ultime-main #voice{
    background: var(--page-gray);
    padding: 60px 0;
}

#ultime-main #voice h2{
    color: var(--main-color);
    margin-bottom: 80px;
}

#ultime-main #voice .block{
    background: #fff;
    padding: 40px 5%;
    position: relative;
    margin-bottom: 60px;
}

#ultime-main #voice .block:before{
    content: "";
    border-left: 2px solid var(--main-color);
    width: 2px;
    height: 70px;
    position: absolute;
    left: 10%;
    top: -30px;
}

#ultime-main #voice .block .comm_flex{
    align-items: center;
}

#ultime-main #voice .block .comm_flex .text{
    width: 73%;
    color: var(--main-color);
    text-align: left;
    font-size: clamp(1.8rem, 1.033rem + 1.62vw, 3rem);
    font-weight: bold;
}

#ultime-main #voice .block .comm_flex .text span{
    display: block;
    font-size: 70%;
    margin-top: 20px;
}

#ultime-main #voice .block .comm_flex .image{
    width: 26%;
}

#ultime-main #voice .block p{
    margin-top: 10px;
    text-align: left;
    line-height: 1.8;
}

#ultime-main #voice .att{
    font-size: 14px;
    color: #808080;
    text-align: center;
}


#ultime-main #stylist {
    background: #8c613e;
    color: #FFFFFF;
    text-align: center;
    padding: 50px 0;
	counter-reset: number;
    display: none;
}

#ultime-main #stylist .box {
    text-align: left;
    margin: 50px auto 80px;
}


#ultime-main #stylist .inner {
    width: 90%;
    margin: auto;
}

#ultime-main #stylist .flex_box {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

#ultime-main #stylist .sty_ttl img {
    width: 45%;
}


#ultime-main #stylist .sty_ttl p {
    font-size: clamp(1.6rem, 1.2rem + 1.33vw, 2.2rem);
    margin: 0.5em auto -0.5em;
}

#ultime-main #stylist dt {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 25px;
	counter-increment: number;
}

#ultime-main #stylist dt::before {
	content: counter(number , decimal-leading-zero);
    font-size: clamp(2.2rem, 1.8167rem + 2.11vw, 4.5rem);
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    margin-right: 5%;
    border-right: 2px solid;
    width: 12%;
    min-width: 42px;
}

#ultime-main #stylist dt p {
    width: 82%;
    display: flex;
    align-items: center;
    font-size: clamp(1.65rem, 0.867rem + 1.28vw, 3rem);
}

#ultime-main #stylist dd {
    margin: auto;
}

#ultime-main #stylist dd p {
    font-size: clamp(1.5rem, 1.167rem + 1.11vw, 2rem);
    margin: 30px auto;
    line-height: 1.8;
}

#ultime-main #stylist .box_r {
    width: 60%;
    /*margin-left: 5%;*/
}

#ultime-main #stylist .box_l {
    width: 32%;
}

#ultime-main #stylist .box_r_in {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 20px;
}

#ultime-main #stylist .box_r_in img {
    max-height: 100px;
}

#ultime-main #stylist .box_r_in p {
    margin-left: 5%;
    font-size: 70%;
    letter-spacing: 0.2em;
}

#ultime-main #stylist .box_r_in2 {
    border-bottom: 1px solid;
    border-top: 1px solid;
    padding: 0.5em;
}

#ultime-main #stylist .box_r_in2 span {
    font-size: 70%;
    display: block;
    margin-top: 5px;
}

#ultime-main #stylist .box:nth-of-type(even) .flex_box {
    flex-direction: row-reverse;
}

#ultime-main #stylist .re .box_r {
    margin-right: 5%;
    margin-left: 0;
}










#ultime-main #instagram{
    background: #000615;
    padding: 50px 0;
    text-align: center;
    color: #fff;
}

#ultime-main #instagram h2{
    margin-bottom: 50px;
}


#ultime-main #movie{
    background: url("../bg01.jpg") no-repeat;
    background-size: cover;
    text-align: center;
    padding: 50px 0;
    color: #fff;
}

#ultime-main #movie h2{
    margin-bottom: 50px;
}

#ultime-main #movie .movie{
    margin-bottom: 30px;
}



#ultime-main #product-list{
    background: url("bg01.jpg") no-repeat;
    background-size: cover;
    padding: 60px 0;
}

#ultime-main #product-list h2{
    text-align: center;
    margin-bottom: 50px;
}

#ultime-main #product-list .block{
    margin-bottom: 70px;
}

#ultime-main #product-list .block h3{
    color: var(--main-color);
    text-align: center;
    font-weight: 700;
    font-size: 35px;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    margin-bottom: 30px;
}

#ultime-main #product-list .block h3:after{
    content: "";
    width: 50px;
    height: 2px;
    border-bottom: 2px solid var(--main-color);
    display: block;
    margin: 20px auto;
    text-align: center;
}

#ultime-main #product-list .comm_flex{
    align-items: center;
}

#ultime-main #product-list .block .image{
    width: 36%;
}

#ultime-main #product-list .block .text{
    width: 58%;
    font-size: clamp(1.5rem, 1.3rem + 0.67vw, 1.8rem);
    text-align: left;
}

#ultime-main #product-list .block .text span{
    color: var(--main-color);
    border: 1px solid var(--main-color);
    font-size: 90%;
    padding: 2px 10px;
}


#ultime-main #product-list .block .text p{
    color: var(--main-color);
    margin: 15px auto;
    font-size: clamp(1.6rem, 1.2rem + 1.33vw, 2.2rem);
    font-weight: bold;
}


#ultime-main #faq{
    background: var(--main-color);
    color: #fff;
    padding: 60px 0 5px;
	counter-reset: number;
}

#ultime-main #faq h2.comm_h2{
    margin-bottom: 50px;
    color: #fff;
}


#ultime-main #faq dl{
    text-align: left;
    font-weight: normal;
}

#ultime-main #faq dt{
	counter-increment: number;
    font-family: "Figtree", source-han-sans-japanese, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    margin-bottom: 15px;
    font-size: clamp(1.8rem, 1.4rem + 1.33vw, 2.4rem);
    font-weight: bold;
}

#ultime-main #faq dt:before{
    content: "";
    border-top: 1px solid #fff;
    width: 100%;
    height: 1px;
    display: block;
    margin-bottom: -25px;
    font-size: 30px;
}

#ultime-main #faq dt p{
    margin-bottom: 5px;
    font-size: 30px;
}

#ultime-main #faq dt p span{
    background: var(--main-color);;
}

#ultime-main #faq dt p:after{
	content: counter(number)".";
    background: var(--main-color); 
    padding: 0 15px 0 5px;
}

#ultime-main #faq dd{
    margin-bottom: 70px;
    font-size: clamp(1.4rem, 1rem + 1.33vw, 2rem);
}

#ultime-main #faq dd p{
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 110%;
}
#ultime-main #faq dd span{
    font-size: 60%;
    display: block;
    margin-top: 5px;
}



@media only screen and (max-width: 640px) {  

#ultime-main #nayami .if p:nth-of-type(2) {
    margin-left: 6%;
}


#ultime-main #coice li p a::before {
    right: 5px;
    width: 14px;
    height: 14px;
}

#ultime-main #coice li p a::after {
    right: 9px;
    border-top: 4px solid transparent;
    border-left: 5px solid #fff;
    border-bottom: 4px solid transparent;
}


















}













@media only screen and (max-width: 540px) {
    #ultime-main br.br{
        display: block !important;
    }
    #ultime-main #intro dl {
      font-size: 1.75rem;
      width: 72%;
    }

    #ultime-main #intro span {
        text-indent: -10px;
    }

    #ultime-main #intro dd {
      margin-top: 5px;
      font-size: 15px;
    }

    #ultime-main #intro dd img{
        width: 80%;
        max-width: 400px;
    }
    #ultime-main #intro p {
      width: 26%;
    }
    #ultime-main #visu .upper {
      top: 30px;
    }
    #ultime-main #visu .upper h2 {
      font-size: 20px;
      margin-bottom: 10px;
    }
    #ultime-main #visu .upper p img{
        width: 46%;
        max-width: 300px;
    }
    #ultime-main #visu dl{
        bottom: 30px;
    }
    #ultime-main #about .inner h2{
      line-height: 1.5;
    }
    #ultime-main #about .inner h3 {
      line-height: 1.5;
    }
    #ultime-main #about .point {
      margin: -15px auto 0;
    }
    #ultime-main #about .point dl {
      margin: 30px auto 30px;
    }
    #ultime-main #about .point dl dt {
      font-size: 21px;
    }
    #ultime-main #about .point dl dd {
      font-size: 18px;
      text-align: left;
    }
    #ultime-main #about .point dl dd br{
        display: none;
    }

    #ultime-main .lineup .thumb dt h2 span {
      letter-spacing: 0.05rem;
    }
    #ultime-main .lineup .thumb dd.btn a {
      font-size: 14px;
      padding: 12px 0;
    }
    #ultime-main .lineup .thumb dd.btn a:after{
        background-size: 10px;
        width: 10px;
        height: 10px;
    }
    #ultime-main .lineup .thumb dd.text-link{
        font-size: 12px;
    }
    #ultime-main .lineup .block h2{
        margin-top: -80px;
    }
    #ultime-main .lineup .new h3{
        font-size: 3.6rem;
    }
    #ultime-main .lineup .new dt {
      font-size: 18px;
    }
    #ultime-main .lineup .new dd {
      font-size: 22px;
    }
    #ultime-main .lineup .block{
        padding-bottom: 15px;
    }
    #ultime-main .lineup .block .box .midashi{
        font-size: 20px;
    }
    #ultime-main .lineup .block .box p{
        font-size: 18px;
    }
    #ultime-main .lineup .block .box .btn a {
      padding: 20px 0;
    }
    #ultime-main .lineup .block .box ul li.btn{
        width: 100%;
        margin-bottom: 15px;
    }

    #ultime-main #recommend .midashi {
      padding: 20px 0;
    }
    #ultime-main #recommend .midashi h3 {
      font-size: 16px;
      margin-top: -35px;
    }
    /*#ultime-main #recommend .comm_flex .block {
      font-size: 14px;
    }*/
    #ultime-main #recommend .att {
      font-size: 14px;
    }
    #ultime-main #nayami .bg .midashi {
      font-size: 28px;
    }
    #ultime-main #nayami .bg .midashi span {
      font-size: 22px;
    }
    #ultime-main #nayami .bg li {
      margin: 0 auto 5px;
      font-size: inherit;
    }
    #ultime-main #nayami .if p {
      font-size: 20px;
      margin-bottom: 10px;
    }
    #ultime-main #nayami .if p::before {
      border-left: solid 37px #fff;
      border-bottom: solid 46px transparent;
    }
    #ultime-main #nayami .if p::after {
      border-right: solid 37px #fff;
      border-top: solid 46px transparent;
    }
    #ultime-main #technology .comm_inner .midashi {
      font-size: 19px;
    }
    #ultime-main #technology .comm_inner .midashi p {
      font-size: 22px;
    }
    #ultime-main #technology .comm_inner .midashi p br{
      display: none;
    }
    #ultime-main #product .block .name {
      font-size: 18px;
      margin-top: 30px;
    }
    #ultime-main #product .block .comm_flex {
      margin-top: 25px;
    }
    #ultime-main #product .block .comm_flex .text h4 {
      margin-bottom: 10px;
    }
    #ultime-main #product .block .comm_flex .text {
      font-size: 16px;
      line-height: 1.6;
    }
    #ultime-main #product .block .comm_flex.image .text{
        width: 52%;
    }
    #ultime-main #product .block .comm_flex .text span {
      font-size: 16px;
      margin-bottom: 10px;
    }
    #ultime-main #product .block .howto h5 {
      margin-top: -50px;
    }
    #ultime-main #product .block .btn a {
      padding: 20px 0;
    }
    #ultime-main #product .block .howto {
      margin-top: 60px;
      padding: 30px 5% 30px;
    }
    #ultime-main #product .comm_inner .title span {
      display: block;
      font-size: 19px;
    }
    #ultime-main #product .comm_inner .title {
      font-size: 25px;
    }
    #ultime-main #product .block ul {
      margin: 40px auto 30px;
    }
    #ultime-main #product .block ul li {
      background: url("../check.png") no-repeat 0 5px;
    }
    #ultime-main #product .block p span {
      font-size: 14px;
    }
    #ultime-main #product .block .howto center {
      font-size: 16px;
    }
    #ultime-main #product .block ol li{
      font-size: 14px;
    }
    #ultime-main #voice h2 {
      margin-bottom: 55px;
    }
    #ultime-main #voice .block::before {
      height: 60px;
      top: -40px;
    }
    #ultime-main #voice .block .comm_flex .text span {
      margin-top: 5px;
    }
    #ultime-main #product-list .block {
      margin-bottom: 50px;
    }
    #ultime-main #product-list .block h3 {
      font-size: 28px;
    }
    #ultime-main #product-list .block h3::after {
      margin: 10px auto;
    }
    #ultime-main #product-list .block .text {
      font-size: 16px;
    }
    #ultime-main #product-list .block .text span {
      font-size: 14px;
    }
    #ultime-main #product-list .block .text p {
      margin: 10px auto;
      font-size: 17px;
    }
    #ultime-main #product-list .block .text p br{
        display: none;
    }
    #ultime-main #faq dt{
        font-size: 2rem;
    }
    #ultime-main #faq dt p{
        font-size: 2.6rem;
    }
    #ultime-main #faq dd{
        font-size: 1.6rem;
    }
#ultime-main #product .block ol.btn li a{
    font-size: 1.15rem;
}

}














@media only screen and (max-width: 460px) {

#ultime-main .br{
    display: block !important;
}
    #ultime-main .yoyaku,
    #ultime-main .lineup .new h3 span{
        font-size: 16px;
    }
    
    #ultime-main #about .point li{
    font-size: 1.2rem;
    border-radius: 10px;
    border: 1px solid;
    }
    
    
#ultime-main #voice .block{
    padding-top: 25px;
}
    #ultime-main #voice .block .comm_flex .image {
      margin-left: -17%;
    }
    #ultime-main #voice .att {
      font-size: 14px;
      text-align: left;
    }
    #ultime-main #inbath{
        padding-bottom: 20px;
    }
    #ultime-main #inbath p {
        font-size: 1.6rem;
    }
#ultime-main .lineup .thumb dl:nth-of-type(4),
#ultime-main .lineup .thumb dl:nth-of-type(5){
    width: 34%;
}
#ultime-main .lineup .thumb dd.btn a {
    font-size: 13px;
}
#ultime-main .btn a::after {
  right: 2%;
}
#ultime-main .lineup .block .box .midashi {
  width: 95%;
}

#ultime-main .lineup .new h3 {
    font-size: 3rem;
}
#ultime-main .lineup .new dd {
    font-size: 24px;
}
#ultime-main #recommend p.text{
    text-align: left;
}
#ultime-main #recommend p.text br{
    display: none;
}

}








/*
サイド固定ボタン
-------------------------------------------------------------------------------*/
#fix_buy_btn_cate{
	z-index: 999999999999999;
    position: fixed;
}


#fix_buy_btn_cate a{
	/*background-color:#4A7E0A;*/
	background-color:#666;
	color:#FFF;
	font-size:14px;
	text-decoration:none;
	padding:20px 30px;
	border-radius:10px 10px 10px 10px;
	    opacity: 0.9;
		position:fixed;
	right:20px;
	bottom:50px;

}
	
@media only screen and (max-width:767px) { 

    #fix_buy_btn_cate{
        background-color:rgb(255,255,255,0.5);
    }


    #fix_buy_btn_cate a{
        font-size:12px;
        /*width:90%;*/
        width: 70%;
        padding:10px 0;
        border-radius:0px;
        position:fixed;
        /*right:0px;*/
        left:0px;
        bottom:0px;
        text-align:center;
        margin:0 5% 5px 5%;

    }
}


#ultime-main #stylist .kome {
	font-size: 14px;
}
	
	
	@media only screen and (max-width: 480px) {
    #ultime-wrap h2.comm_h2 span{
        letter-spacing: 1px;
    }
		#ultime-main #stylist {
    padding: 2em 0 3em;
}
		#ultime-main #stylist .sty_ttl p {
    font-size: 16px;
}
		#ultime-main #stylist dt img {
		width: 15%;
	}
		#ultime-main #stylist .box_r_in p {
    letter-spacing: normal;
}
		#ultime-main #stylist .box_r_in2 {
    font-size: 18px;
}
		#ultime-main #stylist .box_r_in2 span {
    font-size: 14px;
}
		#ultime-main #stylist .box_r_in {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		max-height: none;
	}
	
	#ultime-main #stylist .box_r_in img {
		max-height: 6em;
	}
		#ultime-main #stylist dd p {
    font-size: 16px;
    margin: 1.5em auto;
}
		#ultime-main #stylist .box {
    margin: 1.5em auto 3em;
}
		#ultime-main #stylist .kome {
	font-size: 14px;
    text-align: left;
}
	}






#ultime-main .mini30{
    text-align: center; 
    line-height: 1.6; 
    letter-spacing: 1px;
    font-size: 20px;
}

#ultime-main #product .block .mini30{
    margin-top: 30px;
}

#ultime-main #product .block .mini30 a{
    color: #fff;
}

@media only screen and (max-width: 560px) {  

#ultime-main .mini30{
    font-size: 16px;
}

}










