@charset "UTF-8";

/* 共通部分 */
html {
    font-size: 100%;
}

body {
    font-family: Times, sans-serif;
    font-size: 16px;
    margin: 0;
    padding: 0;
    padding-top: 110px;
    background-color: #ffffff;
    color: #333;
}

/* ヘッダー全体を固定 */
.page-header {
    position: fixed; /* 画面上部に固定 */
    top: 0;
    left: 0;
    width: 100%; /* 横幅いっぱい */
    background-color: #ffffff; /* 背景色 */
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* padding: 10px 20px; */
    z-index: 1000; /* 他の要素より前面に表示 */
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); /* ヘッダーに影をつける */
}

/* ロゴのサイズ調整 */
.page-header .logo {
    width: 170px;
    height: auto;
}

.page-header .logo-name {
    width: 170px;
    height: auto;
    font-size: 35px;
    margin-left: 10px;
}

.page-header a {
    margin: 0;
    padding-right: 30px;
    margin-bottom: -4%;
}

/* サブヘッダーをヘッダーの下に固定 */
.sub-header {
    position: fixed;
    top: 80px; /* `page-header` の高さ分だけ下に配置 */
    left: 0;
    width: 100%;
    background-color: #000000;
    padding: 3px;
    z-index: 999; /* `page-header` の下に配置 */
}

/* ナビゲーションメニュー */
.nav-menu {
    display: flex;
    list-style: none;
    justify-content: center;
    margin: 0;
    padding: 0;
}

.nav-menu li a {
    display: inline;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 70px;
	padding: 0rem 4rem;
	border-right: 1px solid #ffffff;
	background: #090909;
	color: #fff;
	transition: 0.1s;
}

.nav-menu li a:hover {
    color: #ffffff;
	background: #a2a3a3;
    border-right: 1px solid #ffffff; 
}

.hero {
    text-align: center;
    /* background-image: url('pix/0524SE_04.jpg'); */
    margin-top: 100px;
}

.top-image {
    width: 860px;
    height: auto;
} 

.naturaural-top-image {
    width: 460px;
    height: 300px;
}

.sub-news {
    padding: 10px;
    margin: 0px;
    width: 65px;
    height: 210px;
    display: inline-block;
    text-align: justify;
    background-color: #000000;
}

.content-wrapper {
    display: flex;
    justify-content: center;
    align-items: stretch;
    margin-top: 0px;
  }

.news {
    /* padding: 10px;
    margin: 0px;
    width: 835px;
    height: 210px;
    display: inline-block;
    text-align: justify; */
    background-color: #000000;
    padding: 20px;
    width: 65%;
    box-sizing: border-box;
}

.news-natural {
    padding: 10px;
    margin: 0px;
    width: 700px;
    height: 210px;
    margin-top: 300px;
    margin-right: -500px;
    /* display: inline-block; */
    text-align: justify;
    background-color: #000000;
}

.sub-contact {
    padding: 10px;
    margin: 0px;
    width: 90px;
    display: border-box;
    text-align: justify;
    background-color: #777777;
}

.contact {
    /* padding: 10px;
    margin: 0px;
    width: 400px;
    height: 210px; */ 
    /* justify-content: center;    上下中央 */
    background-color: #777777;
    color: white;
    padding: 20px;
    width: 35%;
    box-sizing: border-box;
} 

.contact-natural {
    padding: 10px;
    margin: 0px;
    width: 310px;
    height: 210px;
    margin-top: 200px;
    /* display: inline-block; */
    text-align: justify;
    background-color: #000000;
} 

.news h2 {
    color: #CCCC66;
}

.news-natural h2 {
    color: #CCCC66;
}

.news a {
    color: #CCCC66;
    text-decoration: none;
}

.news-natural a {
    color: #CCCC66;
    text-decoration: none;
}

.news a:hover {
    color: #999933;
}

.news-natural a:hover {
    color: #999933;
}

.outer {
    margin-top: -20px;
    list-style-type: none;
}

.inner {
    margin-top: -4px;
    /* font-size: 13px;  */
    list-style-type: none;
}

.inner-natural {
    margin-top: -4px;
    /* font-size: 13px;  */
    color: #CCCC66;
    list-style-type: none;
}

.news ul li {
    margin: 15px 0;
}

.news-natural ul li {
    margin: 15px 0;
}

.older-link {
    /* display: inline-block; */
    /* margin-top: 10px; */
    color: #CCCC66;
    text-decoration: none;
}

.older-link:hover {
    color: #999933;
}

.letter {
    list-style-type: none;
    text-align: right;
    color: #ffffff;
}

.letter strong {
    color: #FFFF99;
}

.contact p {
    margin-top: -2px;
    text-align: right;
    color: #CCCC66;
}

.contact a {
    color: #CCCC66;
    text-decoration: none;
}

.contact a:hover {
    color: #999933;
}

.contact-natural h1{
    margin-top: -10px;
    margin-left: 100px;
    font-size: 45px;
    width: 220px;
    height: 40px;
    color: #ffffff;
}

.contact-natural p {
    margin-top: -10px;
    text-align: right;
    color: #CCCC66;
}

.contact-natural a {
    color: #CCCC66;
    text-decoration: none;
}

.contact-natural a:hover {
    color: #999933;
}

.zanden-mune {
    width: 100px;
    height: auto;
    margin-top: -50px;
}

/* Philosophy */
/* 基本スタイル */
body {
    margin: 0;
    padding: 0;
    background-color: #FFFFFF;
    color: #666666;
}

/* ヘッダー */
.paget {
    text-align: center;
    margin-top: 110px;
    margin-bottom: -15px;
}

title-image {
    width: 80%;
    max-width: 500px; 
    margin: 20px 0;
}

/* メインコンテンツ */
.container {
    max-width: 550px;
    margin: 0 auto;
    padding: 20px;
}

/* テキストレイアウト */
.philosophy-content {
    text-align: justify;
    line-height: 1.15;
    font-size: 16px;
}

.about-content {
    text-align: justify;
    line-height: 1.15;
    font-size: 16px;
    margin-top: 100px;
}

/* セクションタイトル */
.ptitle {
    text-align: center;
}

/* 署名 */
.signature {
    text-align: right;
    font-style: italic;
}

/* Products */
.style1 {
    font-size: xx-small; /* 文字を極小サイズにする */
    color: gray; /* 文字色を灰色にする */
}

/* メインコンテンツ */
.product-container {
    max-width: 910px;
    margin: 0 auto;
    margin-top: 105px;
    padding: 10px;
}

/* 商品リスト */
.product-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: 7%;
}

.product{
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
}

.minpro {
    background-color: #eeeeee;
    height: 60px;
    padding: 10px;
    margin-top: -2%;
}

.product img {
    width: 100%;
    max-width: 170px;
    height: auto;
    display: block; /* インラインスペースを消す */
    margin: auto; /* 画像自体を中央に */
    margin-top: -10%;
}

.product h2 {
    margin-top: -3%;
    text-align: center;
    font-size: 1rem;
    color: #696969;
}

.product p {
    margin-top: -5%;
    text-align: center;
    font-size: x-small;
}

.installations-container {
    max-width: 910px;
    margin: 0 auto;
    margin-top: 105px;
    padding: 10px;
}

.news-container {
    max-width: 910px;
    margin: 0 auto;
    margin-top: 20px;
    margin-left: 350px;
    padding: 10px;
}

.contact-container {
    max-width: 910px;
    margin: 0 auto;
    margin-top: 70px;
    margin-left: 530px;
    padding: 10px;
}

#contact{
    background-image: url(naturaural-pics/0524SE_04.jpg);
    min-height: 100vh;
}

#news{
    background-image: url(naturaural-pics/DSCF0050.jpg);
    min-height: 100vh;
}

#reviews{
    background-image: url(naturaural-pics/DSCF0039.jpg);
    min-height: 100vh;
}

.big-bg{
    /* background-size: cover;
    background-position: center top; */
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    width: 100vw;
    height: 100vh;
}

/* 商品リスト */
.naturalproducts-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(240px, 1fr));
    gap: 25px;
    justify-content: center;
    align-items: center;
    margin-top: 5%;
}

.naturalproducts{
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
}

.naturalproducts-minpro {
    background-color: #eeeeee;
    height: 100px;
    padding: 10px;
    margin-top: -10%;
}

.naturalproducts img {
    width: 100%;
    max-width: 100px;
    height: auto;
    display: block; /* インラインスペースを消す */
    margin: auto; /* 画像自体を中央に */
    margin-top: 0%;
}

.naturalproducts h2 {
    margin-top: -2%;
    text-align: center;
    font-size: 1rem;
    color: #696969;
}

.naturalproducts p {
    margin-top: -3%;
    text-align: center;
    font-size: x-small;
}

.installations-list {
    display: flex;
    flex-direction: column;
    gap: 50px;
    justify-content: center;
    align-items: center;
    margin-top: 5%;
}

.installations{
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
}

.installations-minpro {
    background-color: #eeeeee;
    height: 100px;
    padding: 10px;
    margin-top: -10%;
}

.installations img {
    width: 100%;
    max-width: 100px;
    height: auto;
    display: block; /* インラインスペースを消す */
    margin: auto; /* 画像自体を中央に */
    margin-top: 0%;
}

.backwhite img {
    width: 100%;
    max-width: 300px;
    height: 200px;
    display: block; /* インラインスペースを消す */
    margin: auto; /* 画像自体を中央に */
    margin-top: -10%;
}

.backwhite1 img {
    width: 100%;
    max-width: 300px;
    height: auto;
    display: block; /* インラインスペースを消す */
    margin: auto; /* 画像自体を中央に */
    margin-top: -10%;
}

.installations h2 {
    margin-top: -2%;
    text-align: center;
    font-size: 1rem;
    color: #696969;
}

.installations p {
    margin-top: -3%;
    text-align: center;
    font-size: x-small;
}

/* フッター */
footer {
    text-align: center;
    margin-top: -1.5%;
    font-size: 0.75rem;
    color: #666;
}

/* Reviews */
/* レイアウト管理 */
.reviews-container {
    display: flex;
    grid-template-columns: 120px auto;
    max-width: 1000px;
    margin: 0 auto;
    gap: 100px;
    padding: 20px;
}

.reviews-container1 {
    max-width: 100px;
    margin: 0 auto;
    gap: 100px;
    padding: 20px;
}

/* サイドバー */
.sidebar {
    margin-top: 60px; /* `page-header` の高さ分だけ下に配置 */
    background-color: #eeeeee;
    padding: 15px;
    position: fixed;
    width: 100px;
    height: 100vh;
    left: 0;
    /* top: 0; */
}

.sidebar h2 {
    color: #999900;
    font-size: 1.5rem;
    margin-left: -5px;
    margin-top: 115px;
}

.sidebar ul {
    list-style-type: none;
    padding: 0px;
}

.sidebar ul li {
    margin-bottom: 13px;
    margin-left: -6px;
}

/* 矢印アイコン */
.sidebar ul li img {
    width: 17px;
    height: 17px;
}

.sidebar ul li a {
    text-decoration: none;
    color: #333;
    font-size: 1rem;
    vertical-align: top;
}

.sidebar ul li a:hover {
    color: #bbccaa;
}

/* メインコンテンツ */
.content {
    margin-top: 80px;
    padding: 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 3つのセクションを均等配置 */
    justify-items: center;
}

.sml {
    display: flex;
    gap: 0px;
    justify-content: center;
}

.sml img {
    width: 0px;
    height: 0px;
}

.pics0{
    margin-top: 0px;
    margin-left: 45px; 
    border: solid 1px #000000;
}

.pics00{
    margin-top: 0px;
    margin-left: 185px; 
}

.pics1{
    margin-top: 0px;
    margin-left: 45px; 
}

.pics2{
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2列に分ける */
    gap: 4px;
    margin-top: 10px;
    margin-left: 45px; 
}

.pics2 img{
    border: solid 1px #000000;
}

.pics01 {
    border: solid 1px #000000;
    margin-left: 15px;
    margin-top: 0px;
}

.pics02 {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2列に分ける */
    gap: 4px;
    margin-top: 0px;
    margin-left: 170px; 
}

.pics3 {
    margin-top: 25px;
    margin-left: 45px;
    border: solid 1px #000000;
}

.pics4 {
    margin-top: 10px;
    margin-left: 45px;
    border: solid 1px #000000;
}

.pics5 {
    margin-top: 10px;
    margin-left: 45px;
}

.pics6 {
    margin-top: 25px;
    margin-left: 45px;
    border: solid 1px #000000;
}

.pics7 {
    margin-top: 10px;
    margin-left: 45px;
}

.main-pic img{
    position: relative;
    left: 200px;
    top: 10px;
}

.soundstage-back{
    background-color: #000000;
    width: 140px;
    height: 415px;
    margin-left: -60px;
    margin-top: -5px;
}

.soundstage-back img{
    margin-left: 30px;
    margin-top: 8px;
}

/* レビュー */
.review {
    background-color: #eeeeee;
    padding: 15px;
    margin-bottom: 30px;
    margin-top: -5px;
    margin-left: -220px;
    text-align: center;
    width: 400px;
    height: 845px;
}

.naturalreview {
    background-color: #000000;
    padding: 15px;
    /* margin-bottom: 30px; */
    margin-top: 300px;
    margin-left: -200px;
    text-align: center;
    width: 400px;
    height: 200px;
}

.review h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.naturalreview h2 {
    color: #ffffff;
    text-align: center;
    font-size: 40px;
    margin-top: 0px;
    margin-left: 0px;
}

.review h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
}

.review-1 {
    background-color: #eeeeee;
    padding: 15px;
    margin-bottom: 30px;
    margin-top: 20px;
    margin-left: -220px;
    text-align: center;
    width: 400px;
    height: 400px;
}

.review-1 h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.review-1 h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
}

.review-2 {
    background-color: #eeeeee;
    padding: 15px;
    margin-bottom: 30px;
    margin-top: -5px;
    margin-left: -330px;
    text-align: center;
    width: 520px;
    height: 385px;
}

.review-2 h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
    margin-top: -10px;
}

.review-3 {
    background-color: #eeeeee;
    padding: 15px;
    margin-bottom: 30px;
    margin-top: 20px;
    margin-left: -220px;
    text-align: center;
    width: 400px;
    height: 400px;
}

.review-3 h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.review-3 h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
}

.review-6moon {
    background-color: #eeeeee;
    padding: 15px;
    font-size: 1rem;
    text-align: left;
    margin-left: 10px;
    margin-top: -5px;
    width: 400px;
    height: 690px;
}

.review-6moon h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.review-6moon h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
}

.review-6moon1 {
    background-color: #eeeeee;
    padding: 15px;
    margin-bottom: 30px;
    margin-top: 20px;
    margin-left: 10px;
    text-align: center;
    width: 400px;
    height: 880px;
}

.review-6moon1 h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.review-6moon1 h4 {
    color: #000000;
    text-align: left;
    margin-left: -10px;
}

.review-image {
    float: right;
    margin-left: 20px;
    width: 120px;
    height: 80px;
    border: solid 1px #000000;
}

.review1 {
    font-size: 1rem;
    text-align: left;
    margin-left: -10px;
}

.reviewer{
    text-align: right;
    margin-right: -10px;
}

.reviewer i{
    font-style: italic;
    font-size: 1.0rem;
}

.reviewer a {
    font-size: 1.0rem;
    text-decoration: none;
    color: #888800;
    font-weight: bold;
}

.reviewer a:hover {
    color: #dadaa8;
}

.naturalreviewer{
    text-align: center;
    margin-right: -10px;
}

.naturalreviewer i{
    font-style: italic;
    font-size: 1.0rem;
}

.naturalreviewer a {
    font-size: 1.0rem;
    text-decoration: none;
    color: #888800;
    font-weight: bold;
}

.naturalreviewer a:hover {
    color: #dadaa8;
}

/*  */
/* レビューコンテナ */
.review-container {
    margin-top: 95px;
    width: 530px;
    height: 260px;
    padding: 20px;
    margin-left: -100px;
    background-color: #eeeeee;
}

.review-images {
    background-color: #000000;
    width: 140px;
    height: 300px;
    margin-left: 200px;
    margin-top: 95px;
}

.review-images img {
    max-width: 100%;
    margin-left: 30px;
    margin-top: 25px;
}

.review-text {
    padding: 15px;
    margin-top: -10px;
    margin-left: -20px;
    text-align: center;
}

.review-text h2 {
    color: #888800;
    text-align: left;
    margin-top: -10px;
    margin-left: -10px;
}

.review-text h4 {
    color: #666666;
    text-align: left;
    margin-left: -10px;
}

/*  */
/* レビューコンテナ */
.review-container1 {
    max-width: 670px;
    margin: 0 auto;
    margin-top: 80px;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    margin-right: 90px;
}

/* 画像エリア */
.review-images1 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.review-images1 img {
    width: 260px;
    margin-right: -5px;
    height: auto;
    margin-bottom: 10px;
    border: solid 1px #000000;
}

.review-text1 img {
    border: solid 1px #000000;
}

/* テキストエリア */
.review-text1 {
    flex: 2;
    padding: 0 20px;
}

.review-text1 h2 {
    color: #888800;
}

.review-text1 h4 {
    color: #000000;
}

@media (max-width: 1024px) {
    .page-header .logo { width: 130px; }
    .hero .top-image { max-width: 100%; }
    main { padding: 15px; }
    .news, .contact { max-width: 100%; margin: 15px 0; }
  }