@charset "UTF-8";
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");
h1, h2, h3, h4, h5 { line-height: 1.1em; }

* { box-sizing: border-box; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, figure, p, blockquote, th, td { margin: 0; padding: 0; font-size: 100%; }

h1, h2, h3, h4, h5 { line-height: 1.1em; }

.clear { clear: both; }

li { list-style-type: none; }

input, button, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

a { transition: .3s; }

a:hover { opacity: .7; }

@media screen and (max-width: 767px) { a:hover { opacity: 1; } }

* html .clearfix { height: 1%; }

body { font: 16px/1.8 "游ゴシック", "Yu Gothic", YuGothic, sans-serif; vertical-align: baseline; font-style: normal; letter-spacing: normal; color: #3E3333; }

a:link { color: #3E3333; text-decoration: none; }

a:visited { color: #3E3333; text-decoration: none; opacity: 0.7; }

a:hover { color: #3E3333; text-decoration: none; }

a img { border: none; }

.mobile, .mobiles { display: none; }

.header { height: 130px; position: relative; z-index: 50; }

@media screen and (max-width: 1023px) { .header { position: fixed; top: 0; height: 80px; width: 100%; } }

.header .logo { position: relative; z-index: 50; }

.header .logo img { width: 141px; height: auto; }

.header.--black #h-navi ul a { color: #3E3333; }

.header.--black .is-active#h-navi ul a { color: #fff; }

.header.--black .header-btn span { background: #3E3333; }

.header.--black .is-active.header-btn span { background: #fff; }

.header-inner { padding-left: 20px; padding-right: 20px; max-width: 1330px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; height: inherit; }

@media screen and (max-width: 1023px) { .header-inner { padding-left: 15px; padding-right: 15px; } }

#h-navi { height: inherit; }

#h-navi nav { height: inherit; }

#h-navi ul { height: inherit; display: flex; justify-content: right; flex-wrap: nowrap; }

#h-navi ul li { height: inherit; font-family: "Roboto"; font-weight: 400; font-size: 20px; letter-spacing: 0.06em; }

#h-navi ul a { height: inherit; display: flex; align-items: center; padding: 0 13px; }

#h-navi ul a:link, #h-navi ul a:visited, #h-navi ul a:hover { color: #FFFFFF; text-decoration: none; }

@media screen and (max-width: 1023px) { #h-navi { display: none; height: 100%; min-height: 100vh; width: 100%; position: fixed; top: 0; left: 0; z-index: 10; }
  #h-navi ul { width: 100%; background: #fff; padding-top: 96px; padding-bottom: 318px; padding-left: 15px; padding-right: 15px; overflow-y: auto; background: #3E3333; flex-direction: column; align-items: center; }
  #h-navi ul li { height: initial; }
  #h-navi ul a { height: initial; display: block; padding: 10px 0; } }

.page-packaging #h-navi ul a:link, .page-packaging #h-navi a:visited, .page-packaging #h-navi a:hover { color: #3E3333; }

@media screen and (max-width: 1023px) { .page-packaging #h-navi ul a:link, .page-packaging #h-navi a:visited, .page-packaging #h-navi a:hover { color: #FFFFFF; } }

.header-btn { display: none; border: none; background: none; }

@media screen and (max-width: 1023px) { .header-btn { display: block; position: absolute; right: 0; top: 0; padding-left: 10px; padding-right: 10px; height: inherit; width: 46px; z-index: 10; }
  .header-btn span { display: block; width: 100%; height: 1px; background: #fff; transition: .3s; }
  .header-btn span:nth-child(2) { margin: 6px 0; }
  .header-btn.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .header-btn.is-active span:nth-child(2) { opacity: 0; }
  .header-btn.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } }

.main { margin-top: -130px; }

@media screen and (max-width: 1023px) { .main { margin-top: -80px; } }

.page-template-page-3 .page-header { height: 280px; background: #F8F8F8; }

.page-template-page-3 .page-header h1 { color: #FFFFFF; letter-spacing: 0.3em; position: absolute; top: 150px; font-size: 40px; font-weight: 400; font-family: "Roboto"; }

.page-contactus .page-header { background: url(/assets/img/contact_mv.jpg) no-repeat center center; background-size: cover; }

.page-privacy-policy .page-header { background: url(/assets/img/privacy-policy_mv.jpg) no-repeat center center; background-size: cover; }

.btn { text-align: center; width: 90%; max-width: 490px; margin: 0 auto; }

.btn a { background: #3E3333; border: 2px solid #3E3333; color: #FFFFFF; font-size: 1.0rem; width: 490px; text-align: center; display: inline-block; margin: 1.0rem auto; padding: 0.8em 0; position: relative; z-index: 1; overflow: hidden; transition: .3s; }

.btn a:before { content: ""; width: 100%; position: absolute; top: 0; right: -60px; z-index: -1; border-right: 60px solid transparent; border-bottom: 60px solid #FFF; transform: translateX(-100%); transition: transform ease 0.3s; }

.btn a:link, .btn a:visited, .btn a:hover { text-decoration: none; }

.btn a:hover { color: #3E3333; }

.btn a:hover::before { transform: translateX(0); }

@media screen and (max-width: 1023px) { .btn { width: 90%; margin: 0 auto; }
  .btn a { width: 100%; } }

.content { max-width: 1194px; width: 96%; margin: 0 auto; }

.content2 { width: 90%; max-width: 1480px; margin: 0 auto; }

.inner { width: 100%; max-width: 1330px; padding-left: 20px; padding-right: 20px; margin: 0 auto; }

.inner-3 { width: 100%; max-width: 880px; padding-left: 20px; padding-right: 20px; margin: 74px auto; }

.pageheader { height: 756px; background: linear-gradient(232deg, #f397dc, #9d7bf3); background-size: 400% 400%; position: absolute; top: 0; width: 100%; }

.pageheader h2 { font-family: "Roboto"; font-size: 2.0rem; font-weight: 600; letter-spacing: 0.01em; margin: 300px 10% 0; }

.pageheader h2 span { font-weight: 300; }

.pageheader p { margin: 2.0rem 10% 0; font-size: 1.2rem; }

.block-a { padding: 148px 0; }

.img-right { float: right; margin: 0 0 0 1.8rem; max-width: 40%; }

.img-right img { max-width: 100%; height: auto; }

@media screen and (max-width: 680px) { .img-right { float: none; max-width: 80%; margin: 0 0 2rem 0; } }

.img-left { float: left; margin: 0 1.8rem 0 0; max-width: 40%; }

.img-left img { max-width: 100%; height: auto; }

.category-navi { padding: 0 0 326px; }

.category-navi h2 { font-size: 42px; font-family: "Roboto"; letter-spacing: 0.03em; font-weight: 500; margin: 0 0 2rem 0; }

.category-navi ul { display: flex; justify-content: space-between; flex-wrap: nowrap; }

.category-navi ul li { width: 33%; text-align: center; }

.category-navi ul li a { line-height: 2.5; }

.category-navi ul li .imgbox { overflow: hidden; display: block; }

.category-navi ul li img { filter: saturate(50%); transition: transform ease 0.3s; width: 100%; height: 100%; aspect-ratio: 400 / 225; object-fit: cover; display: block; }

.category-navi ul li img:hover { filter: saturate(100%); transform: scale(1.3); }

.category-navi .block-contact { margin-top: 67px; }

@media screen and (max-width: 767px) { .category-navi { padding-bottom: 150px; }
  .category-navi h2 { font-size: 30px; }
  .category-navi ul { display: grid; grid-template-columns: repeat(2, 1fr); }
  .category-navi ul li { width: 100%; }
  .category-navi ul li a { font-size: 14px; } }

footer { background: #3E3333; padding: 3.0rem 0; text-align: center; }

footer a:link, footer a:visited, footer a:hover { color: #FFFFFF; text-decoration: none; }

footer nav ul { display: flex; justify-content: space-around; font-size: 0.9rem; }

footer .copyright { font-size: 0.8rem; color: #FFFFFF; margin: 0 auto; margin-top: calc(225 / 1600 * 100vw); }

@media screen and (max-width: 767px) { footer nav ul { flex-wrap: wrap; gap: 10px; }
  footer .copyright { font-size: 10px; } }

@media screen and (max-width: 480px) { img { max-width: 100%; height: auto; display: block; }
  .mobile { display: block; }
  #mainv { overflow: hidden; }
  #mainv h1.logo img { width: 160px; height: auto; }
  #mainv h2 { top: calc(50vh - 4.0rem); font-size: 28px; }
  #mainv .contact-link { top: calc(50vh + 0.0rem); } }

@media screen and (max-width: 320px) { .mobiles { display: block; }
  #hero h2 { font-size: 36px; } }

#mainv { width: 100%; height: 80vh; background-repeat: no-repeat; background-position: center top; background-size: cover; color: #FFFFFF; }

#mainv h2 { position: relative; top: calc(40vh - 2.0rem); font-family: "Roboto"; font-size: 36px; text-align: center; font-weight: 300; letter-spacing: 0.1em; }

#mainv h2 span { background: rgba(0, 0, 0, 0.8); padding: 0 0.4em; }

#mainv .contact-link { position: relative; top: calc(50vh + 2.0rem); font-family: "Roboto"; font-size: 28px; text-align: center; }

#mainv .contact-link a:link, #mainv .contact-link a:hover, #mainv .contact-link a:visited { color: #FFFFFF; text-decoration: none; }

#herobgvideo { position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: -1; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; background: url(/assets/img/hero_01.jpg); }

#top-aboutus { background: url(/assets/img/about_mv.jpg) no-repeat; background-size: cover; height: 600px; position: relative; margin-bottom: 256px; }

#top-aboutus h2 { color: #FFFFFF; font-size: 1.6rem; font-weight: 400; font-family: "Roboto"; position: absolute; left: 0; }

#top-aboutus h2 span { background: #3E3333; padding: 0.6em 6em; }

#top-aboutus .btn { position: absolute; bottom: 60px; left: 50%; transform: translateX(-50%); }

@media screen and (max-width: 1023px) { #top-aboutus h2 span { padding: 0.6em 2em; } }

@media screen and (max-width: 680px) { #top-aboutus { background: url(/assets/img/about_mv.jpg) no-repeat right center; } }

.page-mv { position: relative; max-height: 756px; min-height: 500px; padding-top: 216px; padding-bottom: 345px; }

.page-mv::before { content: ""; width: 50%; height: 100%; display: block; position: absolute; left: 0; top: 0; background: rgba(88, 88, 88, 0.55); mix-blend-mode: color-burn; }

.page-mv.--multiply::before { mix-blend-mode: multiply; }

.page-mv.--box::before { background: rgba(88, 88, 88, 0.76); mix-blend-mode: multiply; }

.page-mv figure { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: -1; }

.page-mv figure img { width: 100%; height: 100%; aspect-ratio: 1600 / 756; object-fit: cover; }

.page-mv .page-mv__content { max-width: 528px; position: relative; background: rgba(62, 51, 51, 0.6); padding: 2.0rem; }

.page-mv .page-mv__content h1 { font-family: "Roboto"; font-weight: 500; font-size: 48px; color: #fff; white-space: nowrap; letter-spacing: 0.06em; }

.page-mv .page-mv__content h1 span { font-weight: 300; }

.page-mv .page-mv__content p { margin-top: 23px; font-size: 16px; line-height: calc(29 / 20); color: #fff; }

.page-mv.--about h1 { color: #FFFFFF; }

.page-mv.--about .page-mv__content p { color: #FFFFFF; }

@media screen and (max-width: 1023px) { .page-mv { padding-bottom: 300px; max-height: 100vh; }
  .page-mv::before { width: 100%; }
  .page-mv figure img { aspect-ratio: 375 / 500; }
  .page-mv .page-mv__content { width: 100%; }
  .page-mv .page-mv__content h1 { font-size: 35px; }
  .page-mv .page-mv__content p { font-size: 16px; } }

.section01 { padding: 153px 0 279px; position: relative; }

.section01.--multiply::before { position: absolute; top: 0; left: 0; content: ""; display: block; width: 100%; height: 100%; background: rgba(100, 89, 72, 0.76); mix-blend-mode: multiply; }

.section01 .box { position: relative; padding: 63px 50px 89px 0; background: rgba(62, 51, 51, 0.6); max-width: 1080px; }

.section01 .box::before { content: ""; background: rgba(62, 51, 51, 0.6); width: calc(84 / 1600 * 100%); left: calc(-84 / 1600 * 100%); height: 100%; position: absolute; top: 0; }

.section01 .box h2 { color: #fff; font-size: 57px; font-family: "Roboto"; }

.section01 .box p { color: #fff; font-size: 20px; font-weight: 500; margin-top: 33px; line-height: 2.0em; /*max-width: 845px;*/ }

.section01 .box ul { color: #fff; }

.section01 .box ul li { list-style: disc; margin: 1.2em auto 1.4em 1.2em; line-height: 1.4em; }

.section01 figure { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: -1; }

.section01 figure img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1600 / 1015; }

.section01.--about .box::before { width: 100%; left: -100%; }

@media screen and (max-width: 800px) { .section01 .box h2 { font-size: 35px; }
  .section01 .box p { font-size: 16px; } }

@media screen and (max-width: 767px) { .section01 { padding-top: 60px; padding-bottom: 60px; }
  .section01 .box { padding: 50px 20px 50px 0; }
  .section01 .box h2 { font-size: 35px; }
  .section01 .box p { font-size: 16px; } }

.company { padding-top: 247px; padding-bottom: 135px; }

.company h2 { position: relative; font-size: 20px; font-weight: 500; padding-left: 10px; }

.company h2::before { content: attr(data-en); font-size: 42px; font-weight: 700; font-family: "Roboto"; line-height: calc(55 / 42); text-transform: uppercase; position: absolute; left: 0; top: -60px; }

.company .table { padding-left: 30px; margin-top: 135px; }

.company .table dt { min-width: 112px; font-size: 16px; font-weight: 500; line-height: calc(24 / 16); }

.company .table dd { font-size: 16px; font-weight: 400; line-height: calc(24 / 16); }

.company .table-wrap { display: flex; column-gap: calc(158 / 1600 * 100%); }

.company .table-wrap + .table-wrap { margin-top: 38px; }

.company .block-contact { margin-top: 135px; }

@media screen and (max-width: 767px) { .company { padding-top: 150px; }
  .company h2 { font-size: 18px; }
  .company h2::before { font-size: 30px; top: -40px; }
  .company .table { padding: 0; margin-top: 60px; }
  .company .table dt { font-size: 14px; }
  .company .table dd { font-size: 14px; }
  .company .table-wrap { column-gap: 25px; }
  .company .block-contact { margin-top: 60px; } }

.gallery { padding-top: 33px; padding-bottom: 253px; }

.gallery .gallery-inner { width: 100%; max-width: 1600px; margin-left: auto; margin-right: auto; padding-left: calc(50 / 1600 * 100%); padding-right: calc(50 / 1600 * 100%); }

.gallery .box { display: grid; grid-template-columns: repeat(3, 1fr); row-gap: calc(20 / 1600 * 100%); }

.gallery .item img { width: 100%; height: 100%; aspect-ratio: 494 / 349; object-fit: cover; }

@media screen and (max-width: 767px) { .gallery { padding-bottom: 150px; } }

@media screen and (max-width: 480px) { .gallery .box { grid-template-columns: repeat(2, 1fr); } }

.page-fragrance .strong-point { background: linear-gradient(#f2f5e9, #ebd8d8); padding: 140px 0; color: #3E3333; }

.page-fragrance .strong-point .img-right { width: 500px; margin: 0 0 0 3rem; }

.page-fragrance .strong-point h2 { font-size: 2.0rem; margin: 0 0 1rem 0; }

.page-fragrance .strong-point h3 { font-size: 1.6rem; margin: 0 0 2rem 0; }

.page-fragrance .strong-point h4 { font-size: 1.2rem; margin: 0 0 1rem 0; font-weight: bold; }

.page-fragrance .strong-point p { font-size: 1.1rem; margin: 0 0 1.2em 0; }

@media screen and (max-width: 680px) { .page-fragrance .strong-point .img-right { width: 100%; margin: 0 auto 3rem; text-align: center; } }

@media screen and (max-width: 480px) { .page-fragrance .strong-point h2 { font-size: 1.4rem; }
  .page-fragrance .strong-point h3 { font-size: 1.3rem; }
  .page-fragrance .strong-point h4 { font-size: 1.1rem; }
  .page-fragrance .strong-point p { font-size: 1.0rem; } }

.page-fragrance .showroom { background: linear-gradient(#211E1E, #0D0808); padding: 140px 0; color: #FFFFFF; }

.page-fragrance .showroom .photo-box { position: relative; min-height: 600px; width: 600px; float: right; margin: 0 0 0 3%; }

.page-fragrance .showroom .photo-box::after { clear: both; display: block; content: ""; }

.page-fragrance .showroom .photo-box .photo1, .page-fragrance .showroom .photo-box .photo2 { position: absolute; top: 0; right: 0; width: 400px; }

.page-fragrance .showroom .photo-box .photo1 img, .page-fragrance .showroom .photo-box .photo2 img { width: 100%; height: auto; }

.page-fragrance .showroom .photo-box .photo1 { position: absolute; top: 0; right: 0; }

.page-fragrance .showroom .photo-box .photo2 { position: absolute; top: 200px; right: 300px; }

.page-showroom .showroom-cont2 h3 { font-size: 1.4rem; margin: 0.4rem 0 1rem 0; }

.page-showroom .showroom-cont2 p { margin: 0 0 3rem 0; }

.page-showroom .strong-point { background: url(/assets/img/showroom_bg2.jpg) no-repeat right center, linear-gradient(to bottom, #e0dcdb, #ebebed); background-size: auto 100%; }

.page-showroom .strong-point .inner { padding: 120px 0; }

.page-showroom .strong-point .inner .box { width: 700px; }

.page-showroom .strong-point2 { display: grid; grid-template-columns: 20% 2fr 1fr; column-gap: 0; position: relative; margin: 0 0 100px 0; }

.page-showroom .strong-point2::after { content: ""; background: #FAD7D7; grid-column: 3 / 4; }

.page-showroom .strong-point2 .box { background: url(/assets/img/showroom1.jpg) no-repeat; background-size: cover; }

.page-showroom .strong-point2 .inner { padding: 120px 0; background: #FAD7D7; padding: 120px 3rem; }

@media screen and (max-width: 800px) { .page-showroom .strong-point .inner { padding: 120px 0; }
  .page-showroom .strong-point .inner .box { width: 90%; margin: 0 auto; }
  .page-showroom .strong-point2 { grid-template-columns: 2fr; } }

.wpcf7 { margin: 3.0rem auto; }

.wpcf7 table { margin: 2.0rem auto; }

.wpcf7 table th, .wpcf7 table td { padding: 0.4rem; vertical-align: top; }

.wpcf7 table th { text-align: right; letter-spacing: 0.3em; font-weight: normal; }

.wpcf7 input, .wpcf7 .input[type="url"], .wpcf7 .input[type="email"], .wpcf7 .input[type="tel"], .wpcf7 textarea { border: 1px solid #CCC8C8; padding: 0.4em; max-width: 90%; width: 28.0em; }

.wpcf7 input[type="submit"] { background: #3E3333; border: 2px solid #3E3333; color: #FFFFFF; font-size: 1.0rem; text-align: center; display: inline-block; margin: 1.0rem 0; padding: 0.8em 0; position: relative; z-index: 1; overflow: hidden; transition: .3s; }

.wpcf7 input[type="submit"]:before { content: ""; width: 100%; position: absolute; top: 0; right: -60px; z-index: -1; border-right: 60px solid transparent; border-bottom: 60px solid #FFF; transform: translateX(-100%); transition: transform ease 0.3s; }

.wpcf7 input[type="submit"]:hover { color: #3E3333; }

.wpcf7 input[type="submit"]:hover::before { transform: translateX(0); }

.wpcf7 .require { color: #F52F9A; font-size: 0.86em; }

.wpcf7 .form-caution { font-size: 0.8rem; }

.wpcf7 span.wpcf7-not-valid-tip { display: none; }

.wpcf7 .focus01::placeholder { color: #F8F8F8; }

.wpcf7 .formError .formErrorContent { background: #F52F9A; border: none; border-radius: inherit; box-shadow: none; }

.wpcf7 .formError .formErrorArrow div { background: #F52F9A; box-shadow: none; }

.privacy-policy ol { font-size: 0.9rem; }

.privacy-policy ol li { margin: 0 0 2rem 0; }

/*# sourceMappingURL=base.map */