@charset "UTF-8";
/* ↓リセット↓ */
*,
*::before,
*::after {
margin: 0;
padding: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
scroll-behavior: smooth;
backface-visibility: hidden;
vertical-align: top;
}
button,
input[type="email"],
input[type="password"],
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="submit"],
input[type="button"],
input[type="date"],
input[type="search"],
textarea,
select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 0;
border: none;
outline: none;
background: transparent;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
img {
vertical-align: middle;
}
ul {
font-size: 0;
padding: 0;
}
ul li {
font-size: 13px;
}
/* ↑リセット↑ */





/* ↓共通↓ */
body {
font: 16px/150% "Hiragino Sans", YuGothic, "Yu Gothic medium",  Meiryo, sans-serif;
position: relative;
}
a {
transition: 0.3s;
}
a:hover {
opacity: 0.70;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
-moz-transition: 0.3s;
-webkit-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}
img {
display: block;
vertical-align: top;
}
article {
margin-bottom: 100px;
}
.btn-black {
display: block;
width: 200px;
text-align: center;
text-decoration: none;
background-color: rgba(50,50,50,1.00);
color: rgba(255,255,255,1.00);
font-size: 16px;
line-height: 30px;
padding: 0 15px;
margin: auto;
border-radius: 30px;
box-shadow: 2px 2px 4px rgba(0,0,0,0.30);
}
.btn-line-red {
display: inline-block;
background-color: rgba(255,255,255,1.00)!important;
border: 1px solid rgba(235,75,87,1.00);
color: rgba(50,50,50,1.00)!important;
padding: 0 15px;
margin: 2px;
font-size: 16px;
line-height: 24px;
text-decoration: none;
border-radius: 20px;
box-shadow: 2px 2px 4px rgba(0,0,0,0.30);
}
.btn-line-red:hover {
box-shadow: 4px 4px 6px rgba(0,0,0,0.30);
opacity: 1;
}
.youtube {
width: 100%;
aspect-ratio: 16 / 9;
margin-bottom: 50px;
}

.youtube iframe {
width: 100%;
height: 100%;
}



/* ヘッダー */
header {
display: table;
width: 100%;
}
header h1 {
display: table-cell;
padding: 5px 15px;
}
header h1 img {
width: 300px;
}


/* ナビゲーション */
nav {
display: table-cell;
}
nav ul {
text-align: right;
height: 100%;
margin: 0;
}
nav ul > li {
display: inline-block;
padding: 15px 20px;
position: relative;
}
nav ul li > a {
text-align: center;
display: block;
color: rgba(50,50,50,1.00);
text-decoration: none;
}
nav ul > li::after {
position: absolute;
width: 100%;
height: 10px;
bottom: 0;
left: 0;
right: 0;
content: "";
background-repeat: no-repeat;
background-position: center bottom 3px;
background-size: 7px auto;
}
.gijutsu nav ul > li:nth-child(1)::after,
.single-gijutsu nav ul > li:nth-child(1)::after,
.post-type-archive-gijutsu nav ul > li:nth-child(1)::after,
.setsubi nav ul > li:nth-child(2)::after,
.single-setsubi nav ul > li:nth-child(2)::after,
.post-type-archive-setsubi nav ul > li:nth-child(2)::after,
.seihin nav ul > li:nth-child(3)::after,
.single-seihin nav ul > li:nth-child(3)::after,
.post-type-archive-seihin nav ul > li:nth-child(3)::after,
.tax-seihin-cat nav ul > li:nth-child(3)::after,
.kiji nav ul > li:nth-child(4)::after,
.page-id-108 nav ul > li:nth-child(4)::after,
.single-post nav ul > li:nth-child(4)::after,
.category nav ul > li:nth-child(4)::after,
.date nav ul > li:nth-child(4)::after,
.recruit nav ul > li:nth-child(5)::after,
.page-id-29 nav ul > li:nth-child(5)::after,
.company nav ul > li:nth-child(6)::after,
.page-id-32 nav ul > li:nth-child(6)::after,
.page-id-35 nav ul > li:nth-child(6)::after,
.page-id-37 nav ul > li:nth-child(6)::after,
.page-id-39 nav ul > li:nth-child(6)::after,
.page-id-41 nav ul > li:nth-child(6)::after,
.page-id-44 nav ul > li:nth-child(6)::after,
.page-id-46 nav ul > li:nth-child(6)::after,
.page-id-112 nav ul > li:nth-child(6)::after,
.page-id-116 nav ul > li:nth-child(6)::after,
.page-id-118 nav ul > li:nth-child(6)::after,
.contact nav ul > li:nth-child(7)::after,
.page-id-53 nav ul > li:nth-child(7)::after {
background-image: url(../img/page-arrow.svg);
}
.page-id-32 nav ul > li:nth-child(6) ol li:nth-child(1),
.page-id-35 nav ul > li:nth-child(6) ol li:nth-child(2),
.page-id-37 nav ul > li:nth-child(6) ol li:nth-child(3),
.page-id-39 nav ul > li:nth-child(6) ol li:nth-child(4),
.page-id-41 nav ul > li:nth-child(6) ol li:nth-child(5),
.page-id-44 nav ul > li:nth-child(6) ol li:nth-child(6),
.page-id-46 nav ul > li:nth-child(6) ol li:nth-child(7),
.page-id-112 nav ul > li:nth-child(6) ol li:nth-child(8),
.page-id-116 nav ul > li:nth-child(6) ol li:nth-child(9),
.page-id-118 nav ul > li:nth-child(6) ol li:nth-child(10) {
color: rgba(235,75,85,1.00);
}





/* ===== PC用 hover ===== */
@media (hover: hover) and (pointer: fine) {
nav ul > li:hover ol {
opacity: 100;
z-index: 150;
pointer-events: auto;
}
}

/* ===== タッチ端末用 ===== */
nav ul > li.touch.open > ol {
opacity: 100;
pointer-events: auto;
}

nav ul li ol {
position: absolute;
margin: 0;
left: 0;
text-align: left;
margin: 0;
padding: 0;
background-color: rgba(255,255,255,0.95);
padding: 10px;
-webkit-box-shadow: 0px 0px 3px rgba(0,0,0,1.00);
box-shadow: 0px 0px 3px rgba(0,0,0,0.50);
border-radius: 5px;
z-index: 0;
list-style: disc;
opacity: 0;
transition: 0.3s;
pointer-events: none;
}
nav ul li ol li {
margin: 0 0 0 15px;
padding: 0;
color: rgba(200,200,200,1.00);
list-style: disc;
}
nav ul li ol li a {
display: block;
white-space: nowrap;
text-align: left;
}









@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
nav {
background-color: rgba(255,255,255,0.99);
box-shadow: 0px 0px rgba(0,0,0,1.00);
border-left: 2px solid rgba(0,0,0,0.50);
overflow: hidden;
}
nav ul {
padding: 0 0 0 20px;
}
nav ul li {
padding: 5px;
text-align: left;
}
nav ul li a {
text-align: left;
font-size: 16px;
}
nav ul li ol {
opacity: 100;
position: relative;
box-shadow: 0px 0px rgba(0,0,0,0.00);
padding: 0;
}
nav ul li ol a {
color: rgba(100,100,100,1.00);
}

nav ul > li::after {
position: absolute;
width: 10px;
height: 20px;
top: 8px;
bottom: auto;
left: -15px;
right: auto;
content: "";
background-repeat: no-repeat;
background-position: left center;
background-size: 7px auto;
transform: rotate(90deg);
}
nav ul > li > ol > li {
position: relative;
}
nav ul > li > ol > li::after {
position: absolute;
width: 10px;
height: 20px;
top: 4px;
bottom: auto;
left: -15px;
right: auto;
content: "";
background-repeat: no-repeat;
background-position: left center;
background-size: 7px auto;
transform: rotate(90deg);
}
.page-id-32 nav ul > li::after,
.page-id-35 nav ul > li::after,
.page-id-37 nav ul > li::after,
.page-id-39 nav ul > li::after,
.page-id-41 nav ul > li::after,
.page-id-44 nav ul > li::after,
.page-id-46 nav ul > li::after,
.page-id-112 nav ul > li::after,
.page-id-116 nav ul > li::after,
.page-id-118 nav ul > li::after {
display: none;
}
.page-id-32 nav ul > li > ol > li:nth-child(1)::after,
.page-id-35 nav ul > li > ol > li:nth-child(2)::after,
.page-id-37 nav ul > li > ol > li:nth-child(3)::after,
.page-id-39 nav ul > li > ol > li:nth-child(4)::after,
.page-id-41 nav ul > li > ol > li:nth-child(5)::after,
.page-id-44 nav ul > li > ol > li:nth-child(6)::after,
.page-id-46 nav ul > li > ol > li:nth-child(7)::after,
.page-id-112 nav ul > li > ol > li:nth-child(8)::after,
.page-id-116 nav ul > li > ol > li:nth-child(9)::after,
.page-id-118 nav ul > li > ol > li:nth-child(10)::after{
background-image: url(../img/page-arrow.svg);
}







.touch {
transition: 0.3s;
}

.touch:hover,
.touch.is-hover {
}

/*576以下（xs）*/}










.h2-title {
font-size: 50px;
line-height: 50px;
letter-spacing: 0.1em;
margin: 50px 50px 10px;
position: relative;
z-index: 100;
}
.h2-title span {
display: block;
font-size: 16px;
line-height: 30px;
margin-top: 5px;
color: rgba(235,75,85,1.00);
display: flex;
}
.h2-title span::after {
content: "";
flex: 1;
height: 3px;
background: rgba(88,88,88,1.00);
border-radius: 5px 0 0 5px;
margin: 13px -50px 0 5px;
}

.h2-title + p {
margin: 0 10px 30px 50px;
}
.h2-title + p b {
display: block;
font-size: 30px;
line-height: 40px;
}
.h2-title span b {
background: rgba(255,255,255,1.00);
margin: 0 -5px;
padding: 0 5px;
font-size: 16px;
border-radius: 0 0 15px 0;
font-weight: normal;
}


.h3-title span {
font-size: 35px;
display: flex;
align-items: center;
letter-spacing: 0.1em;
}
.h3-title span::after {
content: "";
flex: 1;
height: 30px;
background-image: url(../img/h3_title.svg);
background-repeat: no-repeat;
background-position: left top;
background-size: contain;
}

.h4-title {
font-size: 16px;
font-weight: bold;
padding: 5px 0;
margin: 0;
}
.h4-title span {
color: rgba(235,75,85,1.00);
}








.smt {
display: none;
}

hr {
margin: 50px auto;
}

.box-shadow {
padding: 15px;
border-radius: 10px;
display: block;
box-shadow: 0 0px 5px rgba(0,0,0,0.20);
background-color: rgba(245,245,245,1.00);
border: 2px solid rgba(255,255,255,1.00);
}
.box-shadow a {
display: block;
background-color: rgba(55,55,55,1.00);
color: rgba(255,255,255,1.00);
text-align: center;
margin-top: 15px;
padding: 5px;
text-decoration: none;
border-radius: 20px;
}





input[type="email"],
input[type="password"],
input[type="text"],
input[type="tel"],
textarea {
display: inline-block;
width: 100%;
background-color: rgba(240,240,240,1.00);
padding: 5px 10px;
border-radius: 5px;
}
input[type="text"]#zip_code {
width: 9em;
margin: 0 5px 0 0;
}
input[type="text"]#address01 {
width: calc(100% - 9em - 5px);
}
select {
background-color: rgba(240,240,240,1.00);
border-radius: 5px;
padding: 5px 10px;
margin: 5px 0;
}


@media (max-width: 1200px) {
.1200-992（lg）ーーーーーーーーーーーーーーー{}


.h2-title {
margin: 50px 15px 10px;
}
.h2-title span::after {
margin: 12px -15px 0 5px;
}
.h2-title + p {
margin: 0 10px 30px 20px;
}

/*1200-992（lg）*/}





@media (max-width: 992px) {
.992-768（md）ーーーーーーーーーーーーーーー{}
header h1 img {
width: 270px;
}


/*992-768（md）*/}

@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}
header h1,
nav,
nav ul {
display: block;
text-align: center;
}
/* スマホでクリックミスを防ぐ為 */
a:hover {
opacity: 1.00;
filter: alpha(opacity=100);
-ms-filter: "alpha( opacity=100 )";
}
/*768-576（sm）*/}

@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
body {
font: 16px/150% "Hiragino Sans", YuGothic, "Yu Gothic medium",  Meiryo, sans-serif;
}
.pc {
display: none;
}
.smt {
display: block;
}

header h1 {
padding: 10px 5px 0;
text-align: left;
}
.h2-title {
font-size: 30px;
line-height: 35px;
letter-spacing: 0em;
}
.h2-title span {
display: block;
font-size: 16px;
color: rgba(235,75,85,1.00);
display: flex;
}

.h3-title span {
font-size: 20px;
letter-spacing: 0em;
}
.h3-title span::after {
height: 20px;
}
.btn-line-red {
font-size: 13px;
}
/*576以下（xs）*/}


/* ↑共通↑ */










/* ↓ホーム↓ */

#mv {
margin-bottom: 0px;
}


/* タブ */
.tabs {
width: 100%;
margin: 20px auto 50px;
font-size: 0;
}
/* タブ ラジオボタン非表示 */
.tabs input[type="radio"] {
display: none;
}
/* タブ ラベル */
.tab-label {
display: inline-block;
width: calc(100% / 3);
}
.tab-label span {
display: block;
background-color: rgba(255,245,240,1.00);
width: 80%;
margin: auto;
cursor: pointer;
transition: 0.3s;
font-size: 16px;
text-align: center;
padding: 10px 0;
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
border-radius: 10px 10px 0 0;
font-size: 18px;
position: relative;
border: 2px solid rgba(255,255,255,1.00);
border-bottom: none;
}
.tab-label span big {
font-size: 30px;
font-weight: bold;
line-height: 40px;
display: block;
}
/* タブ ホバー */
.tab-label span:hover {
background: rgba(255,255,255,1.00);
}
/* タブ 選択中タブ */
.tabs input:checked + .tab-label span::after {
position: absolute;
content: "";
display: block;
width: 100%;
height: 10px;
background: rgba(250,250,250,1.00);
bottom: -5px;
z-index: 10;
}
.tabs input:checked + .tab-label span {
background: rgba(250,250,250,1.00);
}

/* タブ コンテンツ */
.tab-content {
display: none;
padding: 20px;
border: 2px solid rgba(255,255,255,1.00);
background: rgba(250,250,250,1.00);
border-radius: 10px;
position: relative;
}
.tab-content::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
display: block;
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
width: 100%;
height: 100%;
border-radius: 10px;
z-index: -1;
}

/* タブ 表示制御 */
#tab1:checked ~ #content1,
#tab2:checked ~ #content2,
#tab3:checked ~ #content3 {
display: block;
}
/* タブ 表示制御 */
.tab-content ul,
.ichiran-box ul{
display: flex;
flex-wrap: wrap;
}
.tab-content ul li,
.ichiran-box ul li{
list-style: none;
text-align: center;
padding: 15px;
}
.tab-content ul li a,
.ichiran-box ul li a{
text-decoration: none;
}

/* タブ 技術 */
.tab-gijutsu li {
width: calc(100% / 3);
}
.tab-gijutsu li a {
display: block;
box-shadow: 2px 2px 2px rgba(0,0,0,0.10);
border-radius: 10px;
overflow: hidden;
}
.tab-gijutsu li img {
display: block;
width: 100%;
height: auto;
border: 1px solid rgba(255,255,255,1.00);
border-bottom: none;
}
.tab-gijutsu li h4 {
font-size: 13px;
margin: 0;
padding: 0;
line-height: 18px;
padding: 4px;
color: rgba(255,255,255,1.00);
background-color: rgba(88,88,88,1.00);
}

/* タブ 設備 */
.tab-setsubi li {
width: calc(100% / 4);
}
.tab-setsubi li a {
display: block;
box-shadow: 2px 2px 2px rgba(0,0,0,0.10);
border-radius: 10px;
overflow: hidden;
}
.tab-setsubi li img {
width: 100%;
height: 100%;
aspect-ratio: 1.4 / 1;
object-fit: cover;
}
.tab-setsubi li a span {
display: block;
background-color: rgba(50,50,50,1.00);
color: rgba(255,255,255,1.00);
}

/* タブ 製品 */
.tab-seihin li {
width: calc(100% / 3);
}
.tab-seihin li a {
display: block;
}
.tab-seihin li img {
max-width: 100%;
margin-bottom: 5px;
box-shadow: 2px 2px 2px rgba(0,0,0,0.10);
border-radius: 10px;
}
.tab-seihin li a span {
display: inline-block;
background-color: rgba(88,88,88,1.00);
color: rgba(255,255,255,1.00);
border-radius: 30px;
padding: 0 15px;
line-height: 20px;
min-width: 150px;}

@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.tab-label span {
width: 80%;
font-size: 13px;
padding: 5px 0;
}
.tab-label span big {
font-size: 25px;
line-height: 30px;
}
/* タブ コンテンツ */
.tab-content {
padding: 5px;
}
/* タブ 表示制御 */
.tab-content ul li {
padding: 10px;
}
/* タブ 技術 */
.tab-gijutsu li {
width: calc(100% / 2);
}
.tab-gijutsu li img {
width: 100%;
border-radius:  0 0 5px 5px;
}
.tab-gijutsu li h4 {
font-size: 13px;
line-height: 18px;
}
/* タブ 設備 */
.tab-setsubi li {
width: calc(100% / 2);
margin: 12px 0;
}
/* タブ 製品 */
.tab-seihin li {
width: calc(100% / 2);
}
.tab-seihin li img {
max-width: 100%;
margin-bottom: 5px;
}
.tab-seihin li a span {
font-size: 13px;
padding: 0 10px;
min-width: 150px;
}
/*576以下（xs）*/}







/* 全て社内対応 */
#home-shanai {
text-align: center;
padding: 30px;
background-image: url(../img/bg-red-dot.png);
margin: 0 0 100px;
}
#home-shanai img {
display: block;
max-width: 800px;
margin: 0 auto 20px;
}
#home-shanai a {
display: inline-block;
background-color: rgba(55,55,55,1.00);
color: rgba(255,255,255,1.00);
border-radius: 100px;
font-size: 18px;
text-decoration: none;
padding: 10px 50px;
border: 1px solid rgba(255,255,255,0.90);
box-shadow: 0 0 5px rgba(0,0,0,0.20);
}
#home-shanai a big {
font-size: 30px;
line-height: 50px;
display: block;
}

@media (max-width: 992px) {
.992-768（md）ーーーーーーーーーーーーーーー{}

/*992-768（md）*/}



@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}
#home-shanai img {
max-width: 100%;
}
/*768-576（sm）*/}



@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#home-shanai {
padding: 20px 10px;
margin: 20px 0;
}
#home-shanai img {
max-width: 100%;
}
#home-shanai a {
font-size: 13px;
padding: 10px 20px;
width: 100%;
}
#home-shanai a big {
font-size: 18px;
line-height: 24px;
}
/*576以下（xs）*/}





/* ホーム グラフ */
#home-graph {
text-align: center;
padding: 40px;
}
#home-graph h2 {
font-size: 28px;
display: inline-block;
text-align: left;
margin: auto;
}
#home-graph img {
max-width: 600px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#home-graph {
padding: 15px;
}
#home-graph h2 {
font-size: 20px;
}
#home-graph img {
max-width: 100%;
}
/*576以下（xs）*/}




/* ホーム 豊富な実績 */
#home-jisseki {
text-align: center;
}
#home-jisseki ul{
background-color: rgba(240,240,240,1.00);
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
border: 2px solid rgba(255,255,255,1.00);
border-radius: 10px;
padding: 15px;
display: flex;
flex-wrap: wrap;
}

#home-jisseki ul li {
display: block;
width: calc(100% / 3);
padding: 5px;
}
#home-jisseki ul li a {
text-align: left;
text-decoration: none;
font-size: 20px;
color: rgba(50,50,50,1.00);
display: block;
line-height: 70px;
background-color: rgba(255,255,255,1.00);
border-radius: 5px;
text-align: center;
box-shadow: 2px 2px 2px rgba(0,0,0,0.10);
pointer-events: none;
}
#home-jisseki ul li img {
height: 50px;
display: block;
margin: 10px auto;
}
#home-jisseki ul li a span {
min-width: 220px;
text-align: left;
display: inline-block;
background-repeat: no-repeat;
background-position: 10px center;
background-size: 60px auto  ;
padding: 0 0 0 80px;
}
#home-jisseki ul li:nth-child(1) a span {
background-image: url(../img/jisseki01.png);
}
#home-jisseki ul li:nth-child(2) a span {
background-image: url(../img/jisseki02.png);
}
#home-jisseki ul li:nth-child(3) a span {
background-image: url(../img/jisseki03.png);
}
#home-jisseki ul li:nth-child(4) a span {
background-image: url(../img/jisseki04.png);
}
#home-jisseki ul li:nth-child(6) a span {
background-image: url(../img/jisseki05.png);
}
#home-jisseki ul li:nth-child(7) a span {
background-image: url(../img/jisseki06.png);
}
#home-jisseki ul li:nth-child(8) a span {
background-image: url(../img/jisseki07.png);
}
#home-jisseki ul li:nth-child(9) a span {
background-image: url(../img/jisseki08.png);
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#home-jisseki ul{
padding: 5px;
}
#home-jisseki ul li {
padding: 3px;
}
#home-jisseki ul li a {
line-height: 30px;
}
#home-jisseki ul li a span {
min-width: 100%;
text-align: center;
background-position: center top;
background-size: 50px auto;
padding:  40px 0 0 0px;
font-size: 13px;
white-space: nowrap;
}
/*576以下（xs）*/}
















/* ホーム ニュース */
#home-news {
background: linear-gradient(90deg,rgba(255, 255, 255, 1) 1%, rgba(245, 245, 245, 1) 100%);
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
margin: 50px 0;
padding: 30px 0;
border-top: 2px solid rgba(255,255,255,1.00);
border-bottom: 2px solid rgba(255,255,255,1.00);
}

#news-box {
display: flex;
flex-wrap: wrap;
padding: 0;
}
#news-box li {
width: calc(100% / 5);
box-sizing: border-box;
padding: 10px;
list-style: none;
}
#news-box li a {
display: block;
height: 100%;
background-color: rgba(255,255,255,1.00);
box-shadow: 2px 2px 2px rgba(0,0,0,0.10);
text-decoration: none;
color: rgba(50,50,50,1.00);
border-radius: 10px;
overflow: hidden;
}
#news-box li a .kiji-text {
padding: 0 0 5px;
}
#news-box li a img {
max-width: 100%;
height: auto;
}
#news-box li a p {
line-height: 18px;
padding: 0 10px 5px;
margin: 0;
}
#news-box li a p.kiji-days {
text-align: right;
font-size: 12px;
line-height: 20px;
padding: 0 10px;
margin: 0;
}
#news-box li a h4 {
font-size: 15px;
margin: 0;
line-height: 25px;
padding: 0 10px;
}




@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#home-news {
padding: 15px 0 30px;
}
#news-box li {
width: calc(100% / 2);
}
/*576以下（xs）*/}





/* ↑ホーム↑ */





















.ハンバーガーメニューーーーーーーーーーーーーーーーーー{}
@media (max-width: 576px) {
header nav {
pointer-events: none;
}
header nav ul {
border-radius: 10px;
margin: 50px 5px 0;
pointer-events: all;
}
header nav ul li {
display: block;
width: 100%;
margin-bottom: 5px;
}

#nav-toggle {
display: none;
position: fixed;
top: 5px;
right: 5px;
background-repeat: no-repeat;
background-size: cover;
background-color: rgba(255,255,255,1.00);
border-radius: 50%;
border: 1px solid rgba(235,75,85,1.00);
box-shadow: 0px 0px 3px rgba(0,0,0,0.50);
}
#nav-toggle div{
width: 40px;
height: 40px;
}
#nav-toggle > div {
position: relative;
width: 40px;
}
#nav-toggle span {
width: 70%;
height: 3px;
left: 0;
display: block;
background-color: rgba(230,0,27,1.00);
position: absolute;
-webkit-transition: .35s ease-in-out;
-moz-transition: .35s ease-in-out;
margin: 10px auto 0px 15%;
transition: .35s ease-in-out;
border-radius: 10px;
}
#nav-toggle span:nth-child(1) {
top: 0;
}
#nav-toggle span:nth-child(2) {
top: 8px;
}
#nav-toggle span:nth-child(3) {
top: 16px;
}
#overlay {
display: none;
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
}



#smt-nav {
position: fixed;
height: 100%;
width: 250px;
top: 0px;
right: -250px;
-webkit-transition: .35s ease-in-out;
transition: .35s ease-in-out;
overflow-y: scroll!important;
-webkit-overflow-scrolling: touch;
margin-top: 0px;
}
/* サブメニューは開けない */
#global-nav .sub-menu-head:after,
#global-nav .sub-menu-nav {
display: none;
}
#nav-toggle {
display: block;
}



/* nav open */
.open {
overflow: hidden;
}
.open #overlay {
display: block;
background-color: rgba(0,0,0,0.70);
}
.open #smt-nav  {
-webkit-transform: translate3d(-100%,0,0);
transform: translate3d(-100%,0,0);
}

/* #nav-toggle close */
.open #nav-toggle {
background-color: rgba(255,255,255,0.00);
}
.open #nav-toggle span:nth-child(1) {
top: 8px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
width: 0;
left: 50%;
}
.open #nav-toggle span:nth-child(3) {
top: 8px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* z-index */
#overlay {
z-index: 100;
}
#smt-nav {
z-index: 200;
}
#nav-toggle {
z-index: 300;
}
/*500*/}


















/* お問い合わせバナー */
#contact-banner  {
margin: 100px auto;
}
#contact-banner div {
display: block;
margin: auto;
max-width: 1100px;
border: 5px solid rgba(150,150,150,1.00);
border-radius: 10px;
text-align: center;
}
#contact-banner div h2 {
display: block;
font-size: 20px;
line-height: 40px;
color: rgba(55,55,55,1.00);
}
#contact-banner div ul {
display: flex;
flex-wrap: wrap;
}
#contact-banner div ul li {
list-style: none;
display: inline-block;
text-align: center;
width: 50%;
padding: 5px;
}
#contact-banner div ul li a {
display: block;
box-shadow: 0 0 5px rgba(0,0,0,0.20);
border-radius: 10px;
text-decoration: none;
width: 90%;
margin: auto;
height: 100%;
}
.contact-tel a {
background-color: rgba(250,250,250,1.00);
-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.20);
color: rgba(88,88,88,1.00);
border: 2px solid rgba(255,255,255,1.00);
pointer-events: none;
}
.contact-tel a big {
font-size: 40px;
line-height: 50px;
display: block;
font-weight: bold;
color: rgba(235,75,85,1.00);
}
.contact-form a {
background-color: rgba(88,88,88,1.00);
color: rgba(255,255,255,1.00);
position: relative;
border: 1px solid rgba(255,255,255,1.00);
}
.contact-form a span {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
display: block;
text-align: center;
font-size: 30px;
line-height: 30px;
height: 70px;
}
.contact-form a span img {
height: 30px;
display: block;
margin: 0 auto 10px;
}

@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}
#contact-banner  {
width: calc(100% - 20px);
}
#contact-banner div h2 {
font-size: 16px;
line-height: 21px;
border: 3px solid rgba(255,255,255,1.00);
border-radius: 8px 8px 0 0;
padding: 5px;
}
.contact-tel a big {
font-size: 30px;
line-height: 40px;
}
.contact-form a span {
position: relative;
padding: 10px;
height: auto;
font-size: 20px;
line-height: 30px;
}
/*768-576（sm）*/}

@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}

#contact-banner div ul {
display: block;
}
#contact-banner div h2 {
font-size: 16px;
line-height: 21px;
}
#contact-banner div ul li {
display: block;
width: 100%;
padding: 5px;
}
#contact-banner div ul li a {
width: 99%;
}
.contact-tel a {
pointer-events: all;
}
.contact-tel a big {
font-size: 30px;
line-height: 40px;
}
.contact-form a span {
position: relative;
padding: 10px;
height: auto;
font-size: 20px;
line-height: 30px;
}
/*576以下（xs）*/}









/* フッター */
footer {
padding-top: 15px;
border-top: 5px solid rgba(50,50,50,1.00);
}
footer h1 {
width: 300px;
margin: 0 auto 15px;
}
footer article {
max-width: 992px;
display: flex;
flex-wrap: wrap;
margin: auto;
padding: 0 10px;
}
footer article h2 {
color: rgba(88,88,88,1.00);
font-size: 23px;
}
footer article h2 a {
color: rgba(88,88,88,1.00);
text-decoration: none;
}

footer article section {
width: calc(100% / 3);
text-align: center;
margin: 10px 0;
padding: 5px;
border-right: 1px solid rgba(150,150,150,1.00);
}
footer article section:first-child {
border-left: 1px solid rgba(150,150,150,1.00);
} 
footer ul {
display: inline-block;
}
footer ul li {
list-style: none;
text-align: left;
}
footer ul li a {
color: rgba(50,50,50,1.00);
text-decoration: none;
}
#footer-bt .footer-bt-l {
text-align: center;
}
#footer-bt section {
width: calc(100% / 2);
}
#footer-bt section ul {
width: calc((100% - 60px) / 2);
}
.footer-bt-r ul {
width: 90%!important;
}
.footer-bt-r ul li {
width: 50%;
display: inline-block;
}
.footer-bt-r div {
display: block;
width: 94%;
margin: auto;
padding: 10px;
background-color: rgba(255,245,240,1.00);
border-radius: 10px;
}
.footer-bt-r div a {
color: rgba(50,50,50,1.00);
}
.footer-bt-r div table {
display: inline-block;
}
.footer-bt-r div table td {
text-align: left;
}
.footer-bt-r div table td p {
padding: 10px;;
margin: 0;
font-size: 13px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
footer article section:first-child {
border-left: none;
} 
footer article section {
width: calc(100% - 20px / 1);
border-right: none;
border-bottom: 1px solid rgba(150,150,150,1.00);
margin: auto;
padding: 20px 0 0;
}
#footer-bt section {
width: calc(100% / 1);
}
.footer-bt-r div {
margin-bottom: 20px;
}
#footer-up ul {
min-width: 300px;
}
#footer-bt section ul {
min-width: 300px;
}
/*576以下（xs）*/}




#footer-iso {
padding: 15px;
text-align: center;
margin-bottom: 10px;
}
#footer-iso ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: stretch;
margin: 0;
}
#footer-iso ul li:first-child {
border-left: 1px solid rgba(230,230,230,1.00);
}
#footer-iso ul li {
padding: 10px 20px;
border-right: 1px solid rgba(230,230,230,1.00);
list-style: none;
display: flex;  
align-items: center;   
}
#footer-iso ul li img {
width: 70%;
height: auto;
max-width: 80px;
max-height: 100px;
margin: auto;
}
#footer-iso ul li p {
font-size: 10px;
line-height: 15px;
}
@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}
#footer-iso {
padding: 10px;
}
#footer-iso ul li {
width: calc(100% / 6);
padding: 5px;
justify-content: center;
}
#footer-iso ul li div {
text-align: center;
}
#footer-iso ul li img {
width: 50px;
}
#footer-iso ul li p {
display: none;
}
/*768-576（sm）*/}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#footer-iso ul li img {
width: 40px;
}
/*576以下（xs）*/}






#footer-copy {
background-color: rgba(55,55,55,1.00);
margin: 0;
padding: 5px;
}
#footer-copy p {
text-align: center;
color: rgba(255,255,255,1.00);
margin: 0;
padding: 0;
font-size: 12px;
letter-spacing: 0.2em;
}







/* パンくずリスト */
.pankuzu {
display: block;
background-color: rgba(55,55,55,1.00);
margin-bottom: 50px;
}
.pankuzu ul {
margin: 0;
padding: 0 20px;
}
.pankuzu ul li {
display: inline-block;
color: rgba(240,240,240,1.00);
}
.pankuzu ul li a {
color: rgba(255,255,255,1.00);
text-decoration: none;
display: block;
}
.pankuzu ul li a::after {
content: "▶";
margin: 0 5px;
font-size: 10px;
}







/* 一覧ページ */
ul.sort-category li {
display: inline-block;
width: calc(100% / 3);
padding: 10px;
text-align: center;
}
ul.sort-category li a {
display: block;
border: 1px solid rgba(235,75,85,1.00);
border-radius: 30px;
padding: 15px 0;
line-height: 18px;
background-color: rgba(255,255,255,1.00);
color: rgba(55,55,55,1.00);
text-decoration: none;
-webkit-box-shadow: 5px 5px 5px rgba(0,0,0,1.00);
box-shadow: 5px 5px 5px rgba(0,0,0,0.10);
}

.term-seihin-cat01 ul.sort-category li:nth-child(1) a,
.term-seihin-cat02 ul.sort-category li:nth-child(2) a,
.term-seihin-cat03 ul.sort-category li:nth-child(3) a,
.term-seihin-cat04 ul.sort-category li:nth-child(4) a,
.term-seihin-cat05 ul.sort-category li:nth-child(5) a,
.term-seihin-cat06 ul.sort-category li:nth-child(6) a,
.term-seihin-cat07 ul.sort-category li:nth-child(7) a,
.term-seihin-cat08 ul.sort-category li:nth-child(8) a,
.term-seihin-cat09 ul.sort-category li:nth-child(9) a,
.term-seihin-cat10 ul.sort-category li:nth-child(10) a {
background-color: rgba(100,100,100,1.00);
color: rgba(255,255,255,1.00);
} 




@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
ul.sort-category li {
width: calc(100% / 2);
}
ul.sort-category li a {
border-radius: 30px;
padding: 15px 0;
line-height: 18px;
background-color: rgba(255,255,255,1.00);
color: rgba(55,55,55,1.00);
text-decoration: none;
-webkit-box-shadow: 5px 5px 5px rgba(0,0,0,1.00);
box-shadow: 5px 5px 5px rgba(0,0,0,0.10);
}
/*576以下（xs）*/}






/* 技術一覧 */
ul.ichiran-gijutsu li a img {
border-radius: 10px 10px 0 0;
}
ul.ichiran-gijutsu li h4 {
background: rgba(55,55,55,1.00);
color: rgba(255,255,255,1.00);
border-radius:  0 0 10px 10px;
line-height: 20px;
}
ul.ichiran-gijutsu li a {
color: rgba(50,50,50,1.00);
}
ul.ichiran-gijutsu li p {
margin: 0;
padding: 0 5px;
}
ul.ichiran-gijutsu li span {
display: inline-block;
margin: 1px 1px 1px;
background-color: rgba(100,100,100,1.00);
color: rgba(255,255,255,1.00);
font-size: 11px;
padding: 0 7px;
border-radius: 20px;
}
ul.ichiran-gijutsu li span a {
display: block;
}




/* 製品一覧 */
ul.ichiran-seihin li {
display: inline-block;
width: calc(100% / 5);
padding: 15px 10px;
text-align: center;
}
ul.ichiran-seihin li a {
display: block;
font-size: 0;
vertical-align: top;
line-height: 18px;
}
ul.ichiran-seihin li a img {
max-width: 100%;
height: auto;
border-radius: 5px;
}
ul.ichiran-seihin li a h4 {
font-size: 13px;
line-height: 20px;
color: rgba(50,50,50,1.00);
margin: 0;
white-space: normal;
overflow: hidden;
}
ul.ichiran-seihin li a span {
display: inline-block;
background-color: rgba(100,100,100,1.00);
color: rgba(255,255,255,1.00);
font-size: 11px;
padding: 0 7px;
margin: 1px 1px 1px;
border-radius: 20px;
}

ul.swiper-wrapper {
display: flex;
flex-wrap: wrap;
}
ul li.swiper-slide {
width: calc(100% / 5)!important;
}
ul li.swiper-slide img {
max-width: 100%;
}





/* 設備 */
.ichiran-setsubi {
display: flex;
flex-wrap: wrap;
}
.ichiran-setsubi h3 {
width: 100%;
}
.ichiran-setsubi > div {
width: calc(100% / 2);
padding: 10px;
}
.ichiran-setsubi > div img {
max-width: 100%;
border-radius: 5px;
}
.ichiran-setsubi .box-shadow {
height: 100%;
}


ul.single-setsubi li {
display: inline-block;
width: calc(100% / 3);
padding: 15px 10px;
text-align: center;
}
ul.single-setsubi li a {
display: block;
font-size: 0;
vertical-align: top;
line-height: 18px;
}
ul.single-setsubi li img {
max-width: 100%;
height: auto;
border-radius: 5px;
}
ul.single-setsubi li h4 {
font-size: 13px;
line-height: 20px;
color: rgba(50,50,50,1.00);
margin: 0;
white-space: normal;
overflow: hidden;
}
ul.single-setsubi li span {
display: inline-block;
background-color: rgba(100,100,100,1.00);
color: rgba(255,255,255,1.00);
font-size: 11px;
line-height: 19px;
padding: 1px 15px 0px;
margin: 1px 1px 1px;
border-radius: 20px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.ichiran-setsubi > div {
width: calc(100% / 1);
padding: 0 0 15px;
}
ul.single-setsubi li {
width: calc(100% / 2);
padding: 10px 5px;
}
ul.ichiran-seihin li {
width: calc(100% / 2);
}
/*576以下（xs）*/}









.table-style01 {
width: calc(100%);
border-top: 1px solid rgba(200,200,200,1.00);
border-left: 1px solid rgba(200,200,200,1.00);
border-right: 1px solid rgba(200,200,200,1.00);
margin: auto;
}
.table-style01 thead th{
background-color: rgba(88,88,88,1.00);
color: rgba(255,255,255,1.00);
white-space: nowrap;
}
.table-style01 th,
.table-style01 td {
padding: 10px;
border-bottom: 1px solid rgba(200,200,200,1.00);
font-size: 13px;
background-color: rgba(255,255,255,1.00);
font-weight: normal;
vertical-align: middle;
}
.table-style01 tbody th {
white-space: nowrap;
width: 15%;
}
.table-style01 tbody td span.line {
display: block;
border-left: 1px solid rgba(235,75,87,1.00);
padding: 0px 10px;
}
.table-style01 tbody th small {
font-size: 11px;
color: rgba(100,100,100,1.00);
}
.table-style01 tbody td {
padding: 10px 10px 10px 15px;
}
.table-style01 tbody td ul {
margin-left: 30px;
}
.table-style01 tbody td p {
margin: 0;
}
.th-center th,
.td-center td{
text-align: center;
}


/* 記事一覧 */
#kiji-ichiran #news-box li {
width: calc(100% / 4);
}
.kiji #news-box li {
width: calc(100% / 4);
}
#kiji-side {
background-color: rgba(250,250,250,1.00);
border: 2px solid rgba(255,255,255,1.00);
border-radius: 10px;
padding: 15px;
-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,1.00);
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
}
#kiji-side h4 {
font-size: 16px;
font-weight: bold;
}
#kiji-side ul {
padding-left: 20px;
}
#kiji-side ul li {
color: rgba(235,75,85,1.00);
}
#kiji-side ul a {
color: rgba(49,49,49,1.00);
}

#kiji-side .kiji-side-new {
list-style: none;
padding: 0;
}
#kiji-side .kiji-side-new li {
padding: 2px 0;
}
#kiji-side ul li a img {
width: 30px;
aspect-ratio: 1 / 1;
object-fit: cover;
margin-right: 5px;
}
p.kiji-days {
font-size: 12px;
}
p.kiji-category {
display: inline-block;
font-size: 13px;
line-height: 20px;
background-color: rgba(70,70,70,1.00);
border-radius: 20px;
color: rgba(255,255,255,1.00);
padding: 0 15px;
}
.kiji-eyecatch {
text-align: center;
}




@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}
.kiji #news-box li,
#kiji-ichiran #news-box li {
width: calc(100% / 3);
}
/*768-576（sm）*/}



@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.kiji #news-box li,
#kiji-ichiran #news-box li {
width: calc(100% / 2);
padding: 5px;
}
#kiji-ichiran #news-box li a {
border: 1px solid rgba(240,240,240,1.00);
}
#kiji-side {
width: calc(100% - 30px);
margin: 30px auto 15px;
}
/*576以下（xs）*/}










/* ページナビ */
#pagenavi {
width: 100%;
text-align: center;
margin: 50px 0px;
}
#pagenavi .current {
font-size: 15px;
line-height: 30px;
display: inline-block;
width: 30px;
height: 30px;
border-radius: 50%;
border: 1px solid rgba(235,75,85,1.00);
padding: 0;
margin: 0 5px;
text-align: center;
}
#pagenavi a {
font-size: 15px;
line-height: 30px;
color: rgba(255,255,255,1.00);
background-color: rgba(88,88,88,1.00);
display: inline-block;
width: 30px;
height: 30px;
border-radius: 50%;
padding: 0;
margin: 0 5px;
text-align: center;
text-decoration: none;
}
#pagenavi a.first,
#pagenavi a.last {
width: auto;
background-color: rgba(255,255,255,0.00);
color: rgba(8,74,149,1.00);
border-style: none;
}


.product-txt p {
padding: 5px;
}
.product-txt ul li {
display: inline-block;
width: calc(100% / 4);
padding: 5px;
}
.product-txt ul li img {
width: 100%;
height: 100%;
aspect-ratio: 1 / 1;
object-fit: cover;
}
.product-img .swiper-container-horizontal {
margin-top: -25px;
}
.product-img img {
width: 100%;
border-radius: 0 0 0 30px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.product-txt {
display: flex;
flex-direction: column;
}
.product-txt ul {
order: -1;
}
.product-img {
position: relative;
}
.product-img img {
z-index: -1;
}
/*576以下（xs）*/}












/* 関連投稿 */
.kanren {
margin: 100px auto;
}
.setsubi-kanren {
display: flex;
background-color: rgba(230,230,230,1.00);
border-radius: 15px;
padding: 10px;
margin: 10px;
}
.half-box {
width: 50%;
padding: 10px;
}
.half-box h4 {
font-size: 18px;
text-align: center;
}
.half-box:first-child {
border-right: 1px solid rgba(255,255,255,1.00);
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.setsubi-kanren {
display: block;
padding: 5px;
}
.half-box {
width: 100%!important;
padding: 10px 5px;
}
/*576以下（xs）*/}







/* 会社情報 */
.company-list li{
display: inline-block;
width: calc(100% / 3);
}
.company-list li a {
display: block;
text-align: center;
border: 1px solid rgba(200,200,200,1.00);
padding: 15px;
margin: 5px;
text-decoration: none;
}





/* お問い合わせ */
.form-table th small {
display: inline-block;
background-color: rgba(235,75,85,1.00);
color: rgba(255,255,255,1.00)!important;
border-radius: 5px;
padding: 0 5px;
margin: 2px 5px 0;
line-height: 20px;
}
button[type="submit"],
input[type="submit"] {
background-color: rgba(235,75,85,1.00);
color: rgba(255,255,255,1.00);
padding: 10px 30px;
display: block;
margin: 20px;
line-height: 20px;
font-size: 18px;
border-radius: 20px;
}
.form-table td label {
border: 1px solid rgba(100,100,100,1.00);
border-radius: 20px;
padding: 2px 10px;
margin: 2px;
line-height: 20px;
}
.form-table td label input[type="checkbox"]{
margin: 3px 5px 0 0;
}
.form-table td label input[type="radio"] {
margin: 3px 5px 0 0;
}
.wpcf7-response-output {
color: rgba(235,75,85,1.00);
border: none;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.form-table th,
.form-table td {
display: block;
width: 100%!important;
}
.form-table th {
background-color: rgba(180,180,180,1.00);
}
.form-table td span {
border-left: none!important;
padding: 0!important;
}
button,
input[type="email"],
input[type="password"],
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="submit"],
input[type="button"],
input[type="date"],
input[type="search"],
textarea,
select {
font-size: 16px;
}

/*576以下（xs）*/}






/* リクルート */
.recruit-flow {
display: block;
background: rgba(240,240,240,1.00);
border: 2px solid rgba(255,255,255,1.00);
border-radius: 10px;
padding: 10px;
-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,1.00);
box-shadow: 0px 0px 5px rgba(0,0,0,0.20);
}
.recruit-flow ul {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.recruit-flow li {
display: inline-block;
width: calc(100% / 4 - 10px);
text-align: center;
background-color: rgba(255,255,255,1.00);
margin: 5px;
padding: 40px 10px 20px;
border-radius: 5px;
display: flex;
align-items:center;
position: relative;
}
.recruit-flow li h4 {
font-size: 18px;
line-height: 30px;
font-weight: bold;
color: rgba(88,88,88,1.00);
position: absolute;
inset:0;
top: 5px;
vertical-align: bottom;
}
.recruit-flow li h4 big {
color: rgba(235,75,85,1.00);
margin: 0 5px 1px;
display: inline-block;
vertical-align: bottom;
}
.recruit-flow li span {
width: 100%;
}
.recruit-flow li span b {
font-size: 20px;
line-height: 30px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.recruit-flow li {
width: calc(100% / 1 - 10px);
}
/*576以下（xs）*/}







/* 方針 */
.houshin {
margin: 20px 0;
padding: 50px 70px;
}
.houshin li {
margin: 10px auto 30px;
list-style: none;
}
.houshin li h4 {
font-size: 18px;
}
.houshin li h4 big {
vertical-align: bottom;
color: rgba(235,75,85,1.00);
margin-right: 10px;
}

.houshin ol {
}
.houshin ol li {
list-style: decimal outside!important;
margin: 0;
padding: 5px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
.houshin {
padding: 10px 5px;
}
/*576以下（xs）*/}











/* 沿革 */
#history-list {
font-size: 13px;
width: 100%;
}

#history-list th span {
width: 100%;
text-align: center;
font-weight: normal;
background-color: rgba(100,100,100,1.00);
line-height: 18px;
padding: 3px 7px;
display: inline-block;
color: rgba(255,255,255,1.00);
border-radius: 20px;
margin-right: 10px;
white-space: nowrap;
}
#history-list th{
padding: 8px;
position: relative;
}
#history-list th::after {
content: "";
position: absolute;
height: 100%;
border-left: 10px solid rgba(200,200,200,1.00);
left: 0;
right: 0;
margin: auto;
width: 1px;
top: 10px;
z-index: -1;
}
#history-list tr:last-child th::after {
display: none;
}
#history-list td {
vertical-align: middle;
}
#history-list td p {
border-bottom: 1px solid rgba(200,200,200,1.00);
margin: 0;
vertical-align: top;
padding: 10px;
line-height: 18px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#history-list th{
padding: 8px 0;
position: relative;
}
/*576以下（xs）*/}








/* CSR */

#csr-list {
display:flex;
flex-wrap:wrap;
justify-content:center;
}
#csr-list li {
width: calc(100% / 4);
list-style: none;
padding: 5px;
}
#csr-list li h4 {
font-size: 18px;
text-align: center;
color: rgba(235,75,85,1.00);
}
#csr-list li span {
display: block;
background-color: rgba(255,255,255,1.00);
padding: 15px;
border-radius: 5px;
height: 100%;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#csr-list li {
width: calc(100% / 1);
}
/*576以下（xs）*/}




/* 工場ページ */

.tab-link {
padding: 0;
margin: 0!important;
}
.tab-link li {
display: inline-block;
background-color: rgba(255,255,255,1.00);
border: 1px solid rgba(100,100,100,1.00);
color: rgba(50,50,50,1.00);
line-height: 20px;
padding: 0 10px;
font-size: 13px;
line-height: 20px;
margin: 2px;
background-color: rgba(255,255,255,1.00);
border-radius: 20px;

}
.tab-link li a {
display: block;
margin: -1px -11px;
padding: 0 10px;
border: 1px solid rgba(235,75,85,1.00);
background-color: rgba(255,255,255,1.00)!important;
position: relative;
color: rgba(50,50,50,1.00);
}
.tab-link li a::after {
content: "";
display: block;
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
margin: auto;
box-shadow: 3px 3px 3px rgba(0,0,0,0.20);
border-radius: 20px;
}

.factory-img {
margin: 50px auto;
display:flex;
flex-wrap:wrap;
gap:5px;
}
.factory-img li {
width: calc(100% / 3 - 5px);
list-style: none;
text-align: center;
}

.map{
width:100%;
aspect-ratio:16/9;
}

.map iframe{
width:100%;
height:100%;
border:0;
}








/* 生産体制 */
.nayami-pic {
width: 400px;
max-width: calc(100% - 40px);
border-radius: 10px;
margin: 20px;
}
.arrow-under {
max-width: 80px;
}
#nayami .arrow-under + big {
display: block;
font-size: 30px;
font-weight: bold;
margin: 20px;
}
#nayami .box-shadow {
text-align: center;
display: flex;
flex-wrap: wrap;
padding: 30px;
}
#nayami .box-shadow h3 {
font-size: 30px;
color: rgba(235,75,85,1.00);
width: 100%;
}
#nayami .box-shadow div {
width: 50%;
display: inline-block;
padding: 10px;
}
#nayami .box-shadow div h4 {
font-size: 16px;
}
#nayami .box-shadow div img {
max-width: 100%;
height: auto;
border-radius: 10px;
margin-bottom: 10px;
}
#nayami .box-shadow div ul {
text-align: left;
display: inline-block;
padding: 0 20px;
color: rgba(235,75,85,1.00);
}
#nayami .box-shadow div p{
color: rgba(50,50,50,1.00);
margin: 0 0 10px;
line-height: 21px;
font-size: 16px;
}
@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}
#nayami .box-shadow div {
width: 100%;
}
/*576以下（xs）*/}









@media (min-width: 1200px) {
.1200以上（xl）ーーーーーーーーーーーーーーー{}

/*1200 以上（xl）*/}



@media (max-width: 1200px) {
.1200-992（lg）ーーーーーーーーーーーーーーー{}

/*1200-992（lg）*/}



@media (max-width: 992px) {
.992-768（md）ーーーーーーーーーーーーーーー{}

/*992-768（md）*/}



@media (max-width: 768px) {
.768-576（sm）ーーーーーーーーーーーーーーー{}

/*768-576（sm）*/}



@media (max-width: 576px) {
.576以下（xs）ーーーーーーーーーーーーーーー{}

/*576以下（xs）*/}