@charset "UTF-8";
/* ------------------------------ ヘッダー
------------------------------ */
.header .header-in { transition: all .5s; transform: translateY(-100%); }
@media screen and (max-width: 750px) { .header .header-in { transform: initial; } }
.header.is-sticky { background-color: transparent; }
.header.is-sticky .header-in { background-color: transparent; }
.header.is-fixed { position: fixed; background-color: #fff; }
@media screen and (max-width: 750px) { .header.is-fixed { position: sticky; } }
.header.is-fixed .header-in { background-color: #fff; }
.header.js-start .header-in { transform: translateY(0); }

.js-productnavopen .header.is-sticky { background-color: #fff; }

/* ==================================================================================================== コンテンツ
==================================================================================================== */
.mainimg-sec { position: relative; }
@media screen and (max-width: 750px) { .mainimg-sec { margin-bottom: 1.5em; } }
.mainimg-sec .mainimg-cover { position: absolute; top: 0; left: 0; z-index: 10; width: 100%; height: 100%; background: url("../img/home/mainimg_bg001.svg") no-repeat; background-size: cover; overflow: hidden; }
.mainimg-sec .mainimg-cover .mainimg-cover-logo { position: absolute; top: 50%; left: 50%; width: 22.1875%; transform: translate(-50%, -50%); animation-delay: 0.5s; animation-duration: 1s; }
.mainimg-sec .mainimg-cover .mainimg-cover-scene { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #d80012; animation-delay: 2s; }
.mainimg-sec .mainimg-cover .mainimg-cover-scene .mainimg-cover-copy { position: absolute; top: 50%; left: 50%; width: 35%; transform: translate(-50%, -50%); animation-delay: 3.5s; }
.mainimg-sec .mainimg-cover .mainimg-cover-scene .mainimg-cover-copy-bg { position: absolute; top: 50%; left: 50%; width: 73.25%; animation-delay: 3.5s; }

.product-sec { margin-bottom: 60px; padding: 50px 0 105px; background: url("../img/home/product_bg001.png") no-repeat right bottom; background-size: 29.25% auto; }
@media screen and (max-width: 750px) { .product-sec { margin-bottom: 10.6666666667%; padding: 0; background: url("../img/home/product_bg002.svg") no-repeat right top; background-size: 33.0666666667% auto; } }
.product-sec .product-heading { display: flex; align-items: center; margin-bottom: 40px; font-size: 1.7rem; font-weight: 400; }
@media screen and (max-width: 750px) { .product-sec .product-heading { display: block; margin-bottom: 1em; padding: 1.5em 0 2em; font-size: 1.8rem; line-height: 1.2; } }
.product-sec .product-heading span { margin-right: 0.5em; font-size: 9.0rem; font-weight: 600; font-style: italic; }
@media screen and (max-width: 750px) { .product-sec .product-heading span { display: block; margin-right: 0; font-size: 4.125rem; } }
.product-sec .product-list { display: flex; flex-wrap: wrap; }
.product-sec .product-list li { position: relative; width: 32.8125%; margin-right: 0.78125%; margin-bottom: 0.78125%; }
@media screen and (max-width: 750px) { .product-sec .product-list li { width: 49.3333333333%; margin-right: 1.3333333333%; margin-bottom: 1.3333333333%; }
  .product-sec .product-list li:nth-child(2n) { margin-right: 0; }
  .product-sec .product-list li:nth-child(3) { margin-right: 1.3333333333% !important; } }
.product-sec .product-list li:first-child a { color: #000; }
@media screen and (max-width: 750px) { .product-sec .product-list li:first-child a { color: #fff; } }
.product-sec .product-list li:nth-child(3n) { margin-right: 0; }
.product-sec .product-list li:last-child { margin-right: 0; }
.product-sec .product-list li a { display: block; position: relative; color: #fff; }
.product-sec .product-list li a:hover::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 4px; background-color: #d80012; }
.product-sec .product-list li .product-subheading { position: absolute; bottom: 0; left: 0; font-size: 2.0rem; line-height: 0.7; margin-bottom: 30px; margin-left: 15px; }
@media screen and (max-width: 750px) { .product-sec .product-list li .product-subheading { font-size: 1.95rem; margin-bottom: 20px; margin-left: 10px; } }
.product-sec .product-list li .product-subheading span { display: block; font-size: 4.4rem; font-weight: 700; }
@media screen and (max-width: 1300px) { .product-sec .product-list li .product-subheading span { font-size: 3.4rem; } }
@media screen and (max-width: 960px) { .product-sec .product-list li .product-subheading span { font-size: 2.4rem; } }
@media screen and (max-width: 750px) { .product-sec .product-list li .product-subheading span { font-size: 2.55rem; } }

.campaign-sec .cmn-list-top .heading, .brand-sec .cmn-list-top .heading, .function-sec .cmn-list-top .heading { font-size: 5.0rem; }
@media screen and (max-width: 750px) { .campaign-sec .cmn-list-top .heading, .brand-sec .cmn-list-top .heading, .function-sec .cmn-list-top .heading { font-size: 3rem; } }

.popular-sec .tabmenu { display: flex; flex-wrap: wrap; margin-bottom: 90px; border-bottom: 1px solid #999db1; }
@media screen and (max-width: 750px) { .popular-sec .tabmenu { margin-bottom: 40px; } }
.popular-sec .tabmenu li { position: relative; margin-right: 2em; padding-bottom: 10px; color: #535a60; cursor: pointer; }
@media screen and (max-width: 960px) { .popular-sec .tabmenu li { font-size: 1.5rem; } }
@media screen and (max-width: 750px) { .popular-sec .tabmenu li { margin-right: 1em; } }
.popular-sec .tabmenu li:last-child { margin-right: 0; }
.popular-sec .tabmenu li:hover::before, .popular-sec .tabmenu li.active::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 4px; background-color: #000; }
.popular-sec .cmn-product-list-con .cmn-product-list-swiper { max-width: 1340px; margin: 0 auto; padding: 0 30px; }
@media screen and (max-width: 750px) { .popular-sec .cmn-product-list-con .cmn-product-list-swiper { padding: 0 60px; } }
.popular-sec .cmn-product-list-con .swiper-slide { width: calc(33.33% - 70px); }
@media screen and (max-width: 750px) { .popular-sec .cmn-product-list-con .swiper-slide { width: calc(100% - 30px); } }
.popular-sec .cmn-product-list-con .swiper-button-disabled { display: none; }

.insta-sec { margin-bottom: 100px; }
@media screen and (max-width: 750px) { .insta-sec { margin-bottom: 10.6666666667%; } }
.insta-sec .insta-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 60px; }
@media screen and (max-width: 1300px) { .insta-sec .insta-top { display: block; } }
@media screen and (max-width: 960px) { .insta-sec .insta-top .heading { display: block; } }
@media screen and (max-width: 960px) { .insta-sec .insta-top .heading span { display: block; } }
.insta-sec .insta-top .insta-box { flex: 1; display: flex; align-items: center; justify-content: flex-end; }
@media screen and (max-width: 750px) { .insta-sec .insta-top .insta-box { display: block; margin-top: 10px; } }
.insta-sec .insta-top .insta-box .insta-btn { width: 100%; max-width: 240px; }
.insta-sec .insta-top .insta-box .insta-btn a { display: block; text-decoration: none; padding: 5px; border: 1px solid #535a60; background: url("../img/common/ico_arrow.svg") no-repeat right 20px center; background-size: 9px auto; font-size: 1.7rem; color: #535a60; text-align: center; border-radius: 2rem; }
.insta-sec .insta-list { display: flex; flex-wrap: wrap; }
.insta-sec .insta-list li { width: 24.21875%; margin-right: 0.78125%; margin-bottom: 0.78125%; }
.insta-sec .insta-powerd { margin-top: 10px; margin-right: 10px; font-size: 1.4rem; color: #999db1; text-align: right; }

.partner-sec { margin-bottom: 80px; background: linear-gradient(to right, #DF1715, #9E1F24); }
@media screen and (max-width: 750px) { .partner-sec { margin-bottom: 10.6666666667%; } }
.partner-sec .partner-in { padding-top: 65px; padding-bottom: 60px; }
.partner-sec .partner-fig { display: flex; }
.partner-sec .partner-fig li { width: calc(100% / 4); }
.partner-sec .partner-con { display: flex; align-items: flex-end; justify-content: space-between; max-width: 930px; margin: 0 auto; }
@media screen and (max-width: 960px) { .partner-sec .partner-con { display: block; max-width: 100%; } }
.partner-sec .partner-con .partner-box { max-width: 538px; margin-top: -90px; margin-right: 40px; padding: 65px 80px; background-color: #fff; }
@media screen and (max-width: 960px) { .partner-sec .partner-con .partner-box { width: 100%; margin: 40px auto; padding: 5em 3em; } }
.partner-sec .partner-con .partner-box .partner-icon { margin-bottom: 30px; }
@media screen and (max-width: 750px) { .partner-sec .partner-con .partner-box .partner-icon { width: 16em; margin-left: auto; margin-right: auto; } }
.partner-sec .partner-con .partner-box .partner-heading { margin-bottom: 20px; font-size: 3.2rem; font-weight: 700; }
@media screen and (max-width: 750px) { .partner-sec .partner-con .partner-box .partner-heading { font-size: 2.4rem; text-align: center; } }
.partner-sec .partner-con .partner-box .partner-txt { font-size: 2.4rem; font-weight: 700; }
@media screen and (max-width: 750px) { .partner-sec .partner-con .partner-box .partner-txt { font-size: 2.1rem; text-align: center; } }
.partner-sec .partner-con .partner-lead { flex: 1; margin-bottom: 75px; }
@media screen and (max-width: 960px) { .partner-sec .partner-con .partner-lead { margin-bottom: 0; } }
.partner-sec .partner-con .partner-lead a { display: block; text-decoration: none; padding-bottom: 20px; background: url("../img/common/ico_arrow_long_w.svg") no-repeat left bottom; background-size: 324px auto; font-weight: 700; color: #fff; }
@media screen and (max-width: 960px) { .partner-sec .partner-con .partner-lead a { display: flex; align-items: center; justify-content: center; background-position: center bottom; } }

.feature-sec { position: relative; margin-bottom: 230px; background-color: #edeff4; }
@media screen and (max-width: 960px) { .feature-sec { margin-bottom: 100px; padding-bottom: 60px; } }
@media screen and (max-width: 750px) { .feature-sec { margin-bottom: 10.6666666667%; padding-bottom: 0; } }
.feature-sec .feature-fig { position: absolute; top: 0; right: 0; width: 56.5%; margin-top: -1.25%; margin-right: 8.4375%; }
@media screen and (max-width: 960px) { .feature-sec .feature-fig { position: static; margin: 0 auto; } }
@media screen and (max-width: 750px) { .feature-sec .feature-fig { width: 70%; } }
.feature-sec .feature-in { position: relative; padding: 5.625% 0 24.0625%; }
@media screen and (max-width: 960px) { .feature-sec .feature-in { padding: 12% 0; } }
.feature-sec .feature-heading { margin-bottom: 30px; font-size: 3.1rem; font-weight: 700; }
@media screen and (max-width: 750px) { .feature-sec .feature-heading { margin-bottom: 15px; font-size: 3rem; text-align: center; } }
@media screen and (max-width: 750px) { .feature-sec .feature-txt { display: flex; justify-content: center; margin-top: 2em; } }
.feature-sec .feature-txt a { display: block; text-decoration: none; padding-bottom: 20px; background: url("../img/common/ico_arrow_long.svg") no-repeat left bottom; background-size: 324px auto; font-size: 2.4rem; font-weight: 700; line-height: 1.8; }
@media screen and (max-width: 750px) { .feature-sec .feature-txt a { padding-bottom: 15px; background-size: 100% auto; font-size: 2.1rem; } }

.home-news-sec { margin-bottom: 100px; }
@media screen and (max-width: 750px) { .home-news-sec { margin-bottom: 24%; } }
@media screen and (max-width: 750px) { .home-news-sec .inner { padding: 0; } }
.home-news-sec .news-top { padding-bottom: 20px; border-bottom: 1px solid #ebedf2; }
@media screen and (max-width: 750px) { .home-news-sec .news-top { padding: 0 4% 6.6666666667%; } }
.home-news-sec .news-list { width: 100%; max-width: 860px; margin: 0 auto 30px; }
@media screen and (max-width: 750px) { .home-news-sec .news-list { margin-bottom: 5.3333333333%; } }
.home-news-sec .news-list li { border-bottom: 1px solid #ebedf2; }
.home-news-sec .news-list li .news-list-item { display: flex; align-items: center; padding: 25px 0; }
@media screen and (max-width: 750px) { .home-news-sec .news-list li .news-list-item { display: block; padding: 4% 5.3333333333%; } }
.home-news-sec .news-list li a { text-decoration: none; }
.home-news-sec .news-list li a:hover .news-subheading { text-decoration: underline; }
.home-news-sec .news-list li .news-list-top { display: flex; align-items: center; width: 17em; }
@media screen and (max-width: 750px) { .home-news-sec .news-list li .news-list-top { width: 100%; justify-content: flex-start; margin-bottom: 2.6666666667%; } }
.home-news-sec .news-list li .news-date { width: 8em; padding-left: 1em; }
@media screen and (max-width: 750px) { .home-news-sec .news-list li .news-date { padding: 0; font-size: 1.65rem; } }
.home-news-sec .news-list li .news-cate { width: 8em; margin-right: 2em; padding: 5px 0; background-color: #edeff4; font-size: 1.5rem; text-align: center; line-height: 1; }
@media screen and (max-width: 750px) { .home-news-sec .news-list li .news-cate { font-size: 1.65rem; } }
.home-news-sec .news-list li .news-subheading { flex: 1; font-size: 1.8rem; font-weight: 400; }
.home-news-sec .news-btn { width: 100%; max-width: 240px; margin: 0 auto; }
.home-news-sec .news-btn a { display: block; text-decoration: none; padding: 5px; border: 1px solid #535a60; background: url("../img/common/ico_arrow.svg") no-repeat right 20px center; background-size: 9px auto; font-size: 1.7rem; color: #535a60; text-align: center; border-radius: 2rem; }

/*# sourceMappingURL=home.css.map */
