@charset "utf-8";
/* CSS Document */



/* 追加
------------------------------------------------------------*/
.fb_timeline{text-align:center;margin:0 auto 10px;}
.indent-1 {padding-left:1em;text-indent:-1em;}
.indent-2 {padding-left:2em;text-indent:-2em;}
.indent-15 {padding-left:1.5em;text-indent:-1.5em;}
.fade{display:none;}
.banner_img{text-align:center;margin:0 auto;clear:both;}
.banner_img img{border-radius:20px;}
br.pcbr{display:block;}
br.spbr{display:none;}
.text_box{text-align:justify;padding:0;}
.text_box p{margin-bottom:1.5em;}
.text_box ul,.text_box ol{margin-left:1em;list-style-position: outside;}
.text_box ul li{list-style:none;margin-bottom:0.5em;position: relative;padding: 0 0 0 1.5em;}
.text_box li::before {
  content: "\f054";
  font-family: FontAwesome;
font-weight: 400;
padding-right:5px;
color:#F8B500;
position: absolute;
left: 0.5em;
}
.text_box_w{background:#fff;text-align:justify;padding:1em 2em;margin:20px auto 50px;}
.text_box_w img{width:200px;margin-top:5px;}
.text_box_w li > p{font-weight:400;margin-left:1em;}

.sptel{display:none;}
.twoblock{display:flex;flex-wrap:wrap;justify-content:space-between;}
.block_area{width:49%;}


.marker{background: linear-gradient(transparent 70%, #fff7fa 70%);padding:0 2em 0;}
.marker2{color:#317091;font-weight:700;}
.marker-space{letter-spacing:-0.5em;}
.pagetop {display: none;position: fixed;bottom: 50px;right:5%;width:66px;z-index:100;}
.pagetop a {display: block;}
.pagetop img{width:100%;}
.sp_btn{display:none;}

.slides img{width:100%;}
.head_img{position: relative;margin-bottom:30px;}
.head_img img{width:100%;}
.head_title{position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);font-size:30px;color:#317091;font-family: dnp-shuei-mincho-pr6n, sans-serif;font-weight: 700;font-style: normal;background:rgba(255,255,255,0.9);z-index:9999;min-height:80px;display:flex;justify-content:center;align-items:center;letter-spacing:0.3em;width:40%;line-height:1;}

h2.title{font-size:26px;text-align:center;margin:50px auto 0;}
h2.title_sub{font-size:20px;text-align:center;color:#c7b299;font-family: "futura-pt", sans-serif;font-weight: 400;font-style: normal;margin-bottom:50px;}
h2.title_sub_w{font-size:20px;text-align:center;color:#fff;font-family: "futura-pt", sans-serif;font-weight: 400;font-style: normal;margin-bottom:10px;}
h3.title{font-family: "ryo-gothic-plusn", sans-serif;font-weight: 500;font-style: normal;font-size:24px;display:flex;align-items:center;justify-content:center;width:100%;margin:80px auto 40px;}
h3.title::before{content:"";width:110px;flex:none;height:2px;background:#c7b299;margin:0 10px 0 0;}
h3.title::after{content:"";width:110px;flex:none;height:2px;background:#c7b299;margin:0 0 0 10px;}


/*back
------------------------------------------------------------*/
.pnavi{text-align:center;font-size:16px;margin-top:20px;}



/*TOP
------------------------------------------------------------*/
.top-about { position:relative; padding:0px 20px 60px; background:#050505; overflow:hidden; }
.top-about::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at center, rgba(255,255,255,.035) 0%, rgba(255,255,255,0) 62%); }
.top-about::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(201,157,61,.04) 0%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 80%, rgba(201,157,61,.03) 100%); }
.top-about__inner { position:relative; z-index:2; width:min(100%, 1000px); margin:0 auto; text-align:center; }
.top-about__title { margin:0; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-weight:700; line-height:1.45; letter-spacing:.06em; }
.top-about__title span { display:block; color:#fff; font-size:clamp(40px, 3.2vw, 62px); }
.top-about__title::after { content:""; display:block; width:140px; height:2px; margin:34px auto 0; background:linear-gradient(90deg, rgba(201,157,61,0), rgba(201,157,61,1), rgba(201,157,61,0)); }
.top-about__text { margin:56px 0 0; }
.top-about__text p { margin:0 0 1em; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(18px, 1vw, 22px); line-height:2.15; letter-spacing:.06em; text-align:left; }
@media (max-width: 768px) {
.top-about { padding:90px 20px; }
.top-about__inner { width:100%; }
.top-about__title span { font-size:clamp(28px, 7.5vw, 42px); line-height:1.4; }
.top-about__title::after { width:100px; margin:24px auto 0; }
.top-about__text { margin:38px 0 0; }
.top-about__text p { font-size:16px; line-height:2; margin:0 0 18px; }
}

.top-products { position:relative; padding:100px 20px 90px; background:#050505; border-top:1px solid rgba(201,157,61,.22); border-bottom:1px solid rgba(201,157,61,.22); overflow:hidden; }
.top-products::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at center, rgba(201,157,61,.06) 0%, rgba(0,0,0,0) 58%); }
.top-products__inner { position:relative; z-index:2; width:min(100%, 1200px); margin:0 auto; }
.section-title { display:flex; align-items:center; justify-content:center; gap:28px; margin:0 0 42px; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-weight:700; font-size:clamp(28px, 2vw, 38px); line-height:1.4; letter-spacing:.18em; text-align:center; }
.section-title::before { content:""; width:64px; height:1px; background:linear-gradient(90deg, rgba(201,157,61,0), rgba(201,157,61,1)); }
.section-title::after { content:""; width:64px; height:1px; background:linear-gradient(90deg, rgba(201,157,61,1), rgba(201,157,61,0)); }
.top-products__list { display:grid; grid-template-columns:repeat(6, 1fr); gap:15px; }
.product-card { display:block; padding:10px 10px 18px; background:rgba(255,255,255,.035); border:1px solid rgba(201,157,61,.38); text-decoration:none; transition:.3s; }
.product-card:hover { transform:translateY(-5px); border-color:rgba(201,157,61,.85); background:rgba(201,157,61,.08); }
.product-card__img { position:relative; aspect-ratio:4 / 3; overflow:hidden; background:#111; }
.product-card__img img { display:block; width:100%; height:100%; object-fit:cover; transition:.4s; }
.product-card:hover .product-card__img img { transform:scale(1.06); }
.product-card__name { margin:16px 0 0; color:#d7b65b; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(18px, 1.2vw, 24px); font-weight:700; line-height:1.4; letter-spacing:.12em; text-align:center; }
.top-products__note { margin:28px 0 0; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:17px; line-height:1.8; letter-spacing:.08em; text-align:center; }
@media (max-width: 1024px) {
.top-products__list { grid-template-columns:repeat(3, 1fr); gap:20px; }
}
@media (max-width: 768px) {
.top-products { padding:80px 20px 70px; }
.section-title { gap:16px; margin:0 0 32px; font-size:24px; letter-spacing:.12em; }
.section-title::before, .section-title::after { width:38px; }
.top-products__list { grid-template-columns:repeat(2, 1fr); gap:16px; }
.product-card { padding:8px 8px 14px; }
.product-card__name { margin:12px 0 0; font-size:18px; }
.top-products__note { margin:24px auto 0; font-size:15px; text-align:left; }
}

.top-quality { position:relative; padding:90px 20px 100px; background:#050505; overflow:hidden; }
.top-quality::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at center, rgba(201,157,61,.055) 0%, rgba(0,0,0,0) 58%); }
.top-quality__inner { position:relative; z-index:2; width:min(100%, 1200px); margin:0 auto; }
.top-quality__list { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.quality-card { display:grid; grid-template-columns:86px 1fr; align-items:center; gap:22px; min-height:128px; padding:26px 30px; background:rgba(255,255,255,.025); border:1px solid rgba(201,157,61,.45); }
.quality-card__icon { display:flex; align-items:center; justify-content:center; color:#d7b65b; font-size:54px; line-height:1; }
.quality-card__body { min-width:0; }
.quality-card__title { margin:0 0 10px; color:#d7b65b; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(22px, 1.35vw, 24px); font-weight:700; line-height:1.35; letter-spacing:.08em; }
.quality-card__text { margin:0; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:15px; line-height:1.85; letter-spacing:.04em; }
@media (max-width: 1024px) {
.top-quality__list { grid-template-columns:1fr; gap:18px; }
.quality-card { width:min(100%, 720px); margin:0 auto; }
}
@media (max-width: 768px) {
.top-quality { padding:75px 20px 80px; }
.quality-card { grid-template-columns:64px 1fr; gap:16px; min-height:auto; padding:22px 18px; }
.quality-card__icon { font-size:42px; }
.quality-card__title { font-size:21px; }
.quality-card__text { font-size:14px; line-height:1.75; }
}

/*会社概要
------------------------------------------------------------*/
.page-company { position:relative; padding:180px 20px 120px; background:#050505; overflow:hidden; }
.page-company::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 10%, rgba(201,157,61,.08) 0%, rgba(0,0,0,0) 48%); }
.page-company__inner { position:relative; z-index:2; width:min(100%, 1000px); margin:0 auto; }
.page-heading { margin:0 0 90px; text-align:center; }
.page-heading__en { margin:0 0 14px; color:#c89d3d; font-size:14px; line-height:1.5; letter-spacing:.22em; }
.page-heading__ja { margin:0; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(34px, 2.60vw, 50px);  font-weight:700; line-height:1.4; letter-spacing:.14em; }
.page-heading__ja::after { content:""; display:block; width:120px; height:2px; margin:28px auto 0; background:linear-gradient(90deg, rgba(201,157,61,0), rgba(201,157,61,1), rgba(201,157,61,0)); }
.company-intro { margin:0 0 100px; }
.company-section-title { display:flex; align-items:center; justify-content:center; gap:24px; margin:0 0 46px; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(28px, 2vw, 40px); font-weight:700; line-height:1.4; letter-spacing:.12em; text-align:center; }
.company-section-title::before { content:""; width:54px; height:1px; background:linear-gradient(90deg, rgba(201,157,61,0), rgba(201,157,61,1)); }
.company-section-title::after { content:""; width:54px; height:1px; background:linear-gradient(90deg, rgba(201,157,61,1), rgba(201,157,61,0)); }
.company-intro__text { width:min(100%, 860px); margin:0 auto; }
.company-intro__text p { margin:0 0 22px; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:18px; line-height:2.15; letter-spacing:.06em; }
.company-profile { margin:0 0 100px;; }
.company-table { width:100%; border-collapse:collapse; border-top:1px solid rgba(201,157,61,.42); font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; }
.company-table tr { border-bottom:1px solid rgba(201,157,61,.28); }
.company-table th { width:220px; padding:28px 30px; color:#c89d3d; font-size:18px; font-weight:700; line-height:1.7; letter-spacing:.08em; text-align:left; vertical-align:top; background:rgba(201,157,61,.045); }
.company-table td { padding:28px 30px; color:#fff; font-size:18px; line-height:1.9; letter-spacing:.05em; vertical-align:top; }
.company-table td a { color:#fff; text-decoration:none; }
.company-table td a:hover { color:#c89d3d; }
@media (max-width: 768px) {
.page-company { padding:130px 20px 85px; }
.page-heading { margin:0 0 60px; }
.page-heading__en { font-size:12px; }
.page-heading__ja { font-size:34px; }
.page-heading__ja::after { width:90px; margin:22px auto 0; }
.company-intro { margin:0 0 75px; }
.company-section-title { gap:14px; margin:0 0 32px; font-size:26px; }
.company-section-title::before, .company-section-title::after { width:34px; }
.company-intro__text p { margin:0 0 18px; font-size:16px; line-height:2; }
.company-table, .company-table tbody, .company-table tr, .company-table th, .company-table td { display:block; width:100%; }
.company-table th { padding:18px 18px 8px; font-size:16px; background:transparent; }
.company-table td { padding:0 18px 20px; font-size:16px; line-height:1.8; }
}

/*事業案内
------------------------------------------------------------*/
.page-business { position:relative; padding:180px 20px 120px; background:#050505; overflow:hidden; }
.page-business::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 10%, rgba(201,157,61,.08) 0%, rgba(0,0,0,0) 48%); }
.page-business__inner { position:relative; z-index:2; width:min(100%, 1200px); margin:0 auto; }
.business-lead { width:min(100%, 1000px); margin:0 auto 70px; text-align:center; }
.business-lead__main { margin:0; color:#c89d3d; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(28px, 2vw, 44px); font-weight:700; line-height:1.55; letter-spacing:.08em; }
.business-lead__sub { margin:22px 0 0; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:18px; line-height:2; letter-spacing:.06em; }
.business-service { display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; margin:0 0 100px; }
.business-card { position:relative; min-height:260px; padding:42px 30px 34px; background:rgba(255,255,255,.035); border:1px solid rgba(201,157,61,.38); overflow:hidden; }
.business-card::before { content:""; position:absolute; top:-60px; right:-50px; width:150px; height:150px; border:1px solid rgba(201,157,61,.22); border-radius:50%; }
.business-card__num { margin:0 0 24px; color:rgba(201,157,61,.45); font-family:Georgia,serif; font-size:46px; line-height:1; letter-spacing:.06em; }
.business-card__title { margin:0 0 18px; color:#d7b65b; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(22px, 1.35vw, 28px); font-weight:700; line-height:1.45; letter-spacing:.08em; }
.business-card__text { margin:0; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:16px; line-height:1.9; letter-spacing:.05em; }
.business-detail { width:min(100%, 900px); margin:0 auto; }
.business-detail__text { margin:0; }
.business-detail__text p { margin:0 0 22px; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:18px; line-height:2.15; letter-spacing:.06em; }
@media (max-width: 1024px) {
.business-service { grid-template-columns:1fr; width:min(100%, 720px); margin:0 auto 80px; }
}
@media (max-width: 768px) {
.page-business { padding:130px 20px 85px; }
.business-lead { margin:0 auto 50px; text-align:left; }
.business-lead__main { font-size:26px; line-height:1.55; }
.business-lead__sub { margin:16px 0 0; font-size:16px; line-height:1.9; }
.business-service { gap:18px; margin:0 auto 70px; }
.business-card { min-height:auto; padding:30px 22px; }
.business-card__num { margin:0 0 18px; font-size:38px; }
.business-card__title { font-size:21px; }
.business-card__text { font-size:15px; }
.business-detail__text p { margin:0 0 18px; font-size:16px; line-height:2; }
}


/*取扱い商品
------------------------------------------------------------*/
.page-products { position:relative; padding:180px 20px 120px; background:#050505; overflow:hidden; }
.page-products::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 10%, rgba(201,157,61,.08) 0%, rgba(0,0,0,0) 48%); }
.page-products__inner { position:relative; z-index:2; width:min(100%, 1200px); margin:0 auto; }
.page-products__lead { width:min(100%, 1000px); margin:0 auto 60px; color:#fff; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:18px; line-height:2; letter-spacing:.06em; text-align:center; }
.products-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:30px; }
.products-card { display:block; padding:12px 12px 20px; background:rgba(255,255,255,.035); border:1px solid rgba(201,157,61,.38); transition:.3s; }
.products-card:hover { transform:translateY(-5px); border-color:rgba(201,157,61,.85); background:rgba(201,157,61,.08); }
.products-card__img { position:relative; aspect-ratio:4 / 3; overflow:hidden; background:#111; }
.products-card__img img { display:block; width:100%; height:100%; object-fit:cover; transition:.4s; }
.products-card:hover .products-card__img img { transform:scale(1.06); }
.products-card__name { margin:18px 0 0; color:#d7b65b; font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif; font-size:clamp(20px, 1.35vw, 28px); font-weight:700; line-height:1.4; letter-spacing:.12em; text-align:center; }
@media (max-width: 1024px) {
.products-grid { grid-template-columns:repeat(2, 1fr); gap:22px; }
}
@media (max-width: 768px) {
.page-products { padding:130px 20px 85px; }
.page-products__lead { margin:0 auto 40px; font-size:16px; line-height:1.9; text-align:left; }
.products-grid { grid-template-columns:repeat(2, 1fr); gap:16px; }
.products-card { padding:8px 8px 14px; }
.products-card__name { margin:12px 0 0; font-size:18px; }
}



@media screen and (max-width:767px) {
br.pcbr{display:none;}
br.spbr{display:block;}
}