.scale img { -moz-transition: -moz-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1); -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1); -o-transition: -o-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1); -ms-transition: -ms-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1); }

.scale img:hover { -webkit-transform: scale(1.05); -moz-transform: scale(1.05); -o-transform: scale(1.05); -ms-transform: scale(1.05); transform: scale(1.05); }

.bnrWrap .cmn_inner01 .bnrArea { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .bnrWrap .cmn_inner01 .bnrArea { margin-top: 90px; } }

.company_subnav { margin: 45px 0 0; position: relative; padding: 0 25px; }
@media print, screen and (min-width: 769px) { .company_subnav { margin-top: 90px; } }
.company_subnav ul { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; }
@media print, screen and (min-width: 769px) { .company_subnav ul { margin: 0 auto; max-width: 1100px; } }
.company_subnav ul > li { width: 50%; padding-bottom: 10px; }
.company_subnav ul > li:nth-child(odd) { padding-right: 5px; }
@media print, screen and (min-width: 769px) { .company_subnav ul > li:nth-child(odd) { padding-right: 0; } }
.company_subnav ul > li:nth-child(even) { padding-left: 5px; }
@media print, screen and (min-width: 769px) { .company_subnav ul > li:nth-child(even) { padding-left: 0; } }
@media print, screen and (min-width: 769px) { .company_subnav ul > li { width: 31.9%; padding-bottom: 15px; } }

.index01 .cmn_block-type01 { margin-top: 20px; }
@media print, screen and (min-width: 769px) { .index01 .cmn_block-type01 { margin-top: 30px; } }
@media print, screen and (min-width: 769px) { .index01 .txtArea { width: 780px; } }
@media print, screen and (min-width: 769px) { .index01 .photoArea { width: 250px; }
  .index01 .photoArea img { width: 250px; } }
.index01 .photoArea figcaption { margin-top: 1em; text-align: center; }
.index01 .photoArea figcaption span { display: block; line-height: 1.66; }
.index01 .photoArea figcaption span:first-child { margin-top: 1.5em; font-size: 10px; font-size: 1rem; }
@media print, screen and (min-width: 769px) { .index01 .photoArea figcaption span:first-child { font-size: 12px; font-size: 1.2rem; } }
@media print, screen and (min-width: 769px) { .index01 .photoArea figcaption span:nth-child(2) { letter-spacing: 0; } }
.index01-photo001 { max-width: 200px; height: auto; }
.index01-block02 { margin: 45px 0 0; text-align: center; }
@media print, screen and (min-width: 769px) { .index01-block02 { margin-top: 80px; } }
.index01-block02 img { margin: 0 auto; max-width: 306px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .index01-block02 img { max-width: 960px; } }

.philosophy01-txt01 { font-size: 16px; font-size: 1.6rem; font-weight: 500; letter-spacing: 0.1em; line-height: 1.842; text-align: center; white-space: nowrap; }
@media print, screen and (min-width: 375px) { .philosophy01-txt01 { font-size: 19px; font-size: 1.9rem; } }
@media print, screen and (min-width: 769px) { .philosophy01-txt01 { font-size: 30px; font-size: 3rem; } }
.philosophy01 .philosophy01_sub01 { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub01-block { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; } }
.philosophy01 .philosophy01_sub01-block > div { margin-top: 15px; border: #d1d1d1 solid 1px; padding: 35px 25px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub01-block > div { width: 32%; } }
.philosophy01 .philosophy01_sub01-txt01 span { display: block; text-align: center; }
.philosophy01 .philosophy01_sub01-txt01 span:nth-child(1) { font-size: 27px; font-size: 2.7rem; font-weight: 500; letter-spacing: 0.225em; text-indent: 0.225em; line-height: 1; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub01-txt01 span:nth-child(1) { font-size: 30px; font-size: 3rem; letter-spacing: 0.45em; text-indent: 0.45em; } }
.philosophy01 .philosophy01_sub01-txt01 span:nth-child(2) { margin-top: 0.5em; font-size: 10px; font-size: 1rem; font-weight: 500; letter-spacing: 0.35em; text-indent: 0.35em; line-height: 1; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub01-txt01 span:nth-child(2) { margin-top: 1em; font-size: 12px; font-size: 1.2rem; letter-spacing: 0.4em; text-indent: 0.4em; } }
.philosophy01 .philosophy01_sub01-txt02 { margin-top: 1em; font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.83; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub01-txt02 { margin-top: 1.5em; font-size: 14px; font-size: 1.4rem; letter-spacing: 0.16em; } }
.philosophy01 .philosophy01_sub02 { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub02 { margin-top: 90px; } }
.philosophy01 .philosophy01_sub02 .cmn_ttl-type02 { padding-bottom: 15px; border-bottom: #d1d1d1 solid 1px; }
.philosophy01 .philosophy01_sub02-picArea { margin-top: 40px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub02-picArea { margin-top: 85px; } }
.philosophy01 .philosophy01_sub02-picArea img { max-width: 375px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub02-picArea img { max-width: 804px; } }
.philosophy01 .philosophy01_sub02-txtArea { margin-top: 40px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub02-txtArea { margin-top: 75px; } }
.philosophy01 .philosophy01_sub02-txt01 { font-size: 11px; font-size: 1.1rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.92; }
@media print, screen and (min-width: 375px) { .philosophy01 .philosophy01_sub02-txt01 { font-size: 13px; font-size: 1.3rem; } }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub02-txt01 { font-size: 18px; font-size: 1.8rem; line-height: 2.66; } }
.philosophy01 .philosophy01_sub03 { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03 { margin-top: 90px; } }
.philosophy01 .philosophy01_sub03 .cmn_ttl-type02 { padding-bottom: 15px; border-bottom: #d1d1d1 solid 1px; }
.philosophy01 .philosophy01_sub03-picArea { margin-top: 40px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03-picArea { margin-top: 60px; } }
.philosophy01 .philosophy01_sub03-picArea img { max-width: 150px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03-picArea img { max-width: 300px; } }
.philosophy01 .philosophy01_sub03-txtArea { margin-top: 40px; text-align: left; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03-txtArea { margin-top: 60px; } }
.philosophy01 .philosophy01_sub03-txt01 { font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.83; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03-txt01 { font-size: 14px; font-size: 1.4rem; line-height: 2.28; } }
.philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic01 { display: inline-block; width: 15px; height: 1em; position: relative; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic01 { width: 17px; } }
.philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic01 img { position: absolute; left: 1px; top: 50%; width: 10px; height: 21px; -moz-transform: translate(0, -50%); -o-transform: translate(0, -50%); -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%); }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic01 img { width: 12px; height: 24px; } }
.philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic02 { display: inline-block; width: 30px; height: 1em; position: relative; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic02 { width: 32px; } }
.philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic02 img { position: absolute; left: 1px; top: 50%; width: 25px; height: 19px; -moz-transform: translate(0, -50%); -o-transform: translate(0, -50%); -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%); }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub03 .philosophy01_sub03-txtPic02 img { width: 28px; height: 22px; } }
.philosophy01 .philosophy01_sub04 { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub04 { margin-top: 90px; } }
.philosophy01 .philosophy01_sub04 .cmn_ttl-type02 { padding-bottom: 15px; border-bottom: #d1d1d1 solid 1px; }
.philosophy01 .philosophy01_sub04-picArea { margin-top: 30px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub04-picArea { margin-top: 90px; } }
.philosophy01 .philosophy01_sub04-picArea img { max-width: 370px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub04-picArea img { max-width: 848px; } }
.philosophy01 .philosophy01_sub04-txtArea { margin-top: 35 px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub04-txtArea { margin-top: 75px; } }
.philosophy01 .philosophy01_sub04-txt01 { font-size: 13px; font-size: 1.3rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.92; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub04-txt01 { font-size: 18px; font-size: 1.8rem; letter-spacing: 0.16em; line-height: 2.5; } }
.philosophy01 .philosophy01_sub05 { margin-top: 45px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05 { margin-top: 123px; } }
.philosophy01 .philosophy01_sub05 .cmn_ttl-type02 { padding-bottom: 15px; border-bottom: #d1d1d1 solid 1px; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-block { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; } }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-block > div { width: 508px; } }
.philosophy01 .philosophy01_sub05-picArea { margin-top: 30px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-picArea { margin-top: 90px; height: 272px; } }
.philosophy01 .philosophy01_sub05 .philosophy01_sub05-pic01 { max-width: 140px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05 .philosophy01_sub05-pic01 { margin-top: 27px; max-width: 241px; } }
.philosophy01 .philosophy01_sub05 .philosophy01_sub05-pic02 { max-width: 115px; width: 100%; height: auto; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05 .philosophy01_sub05-pic02 { max-width: 196px; } }
.philosophy01 .philosophy01_sub05-txtArea { margin-top: 20 px; text-align: center; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-txtArea { margin-top: 50px; } }
.philosophy01 .philosophy01_sub05-txt0102Wrap { margin: 0 auto; width: 260px; }
.philosophy01 .philosophy01_sub05-txt01 { margin-top: 35px; display: block; font-size: 14px; font-size: 1.4rem; font-weight: 700; letter-spacing: 0.04em; line-height: 1.2; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-txt01 { font-size: 20px; font-size: 2rem; letter-spacing: 0.08em; line-height: 1.2; } }
.philosophy01 .philosophy01_sub05-txt02 { margin-top: 1em; padding-top: 1em; border-top: #d1d1d1 solid 1px; display: block; font-size: 11px; font-size: 1.1rem; font-weight: 500; letter-spacing: 0.04em; line-height: 1.2; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-txt02 { font-size: 14px; font-size: 1.4rem; letter-spacing: 0.08em; line-height: 1.2; } }
.philosophy01 .philosophy01_sub05-txt03 { margin-top: 25px; font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.8; text-align: left; }
@media print, screen and (min-width: 769px) { .philosophy01 .philosophy01_sub05-txt03 { font-size: 14px; font-size: 1.4rem; letter-spacing: 0.16em; line-height: 2.2; } }

.profile01_block01 { text-align: center; }
.profile01_block01-pict01 { margin: 40px auto 0; width: 266px; height: 33px; }
@media print, screen and (min-width: 769px) { .profile01_block01-pict01 { margin: 80px auto 0; width: 625px; height: 78px; } }
.profile01_block01-txt01 { margin-top: 1em; font-size: 13px; font-size: 1.3rem; font-weight: 500; letter-spacing: 0.08em; line-height: 1.8; }
@media print, screen and (min-width: 769px) { .profile01_block01-txt01 { font-size: 20px; font-size: 2rem; letter-spacing: 0.16em; } }
.profile01_block01-txt02 { margin-top: 0; font-size: 11px; font-size: 1.1rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.8; }
@media print, screen and (min-width: 769px) { .profile01_block01-txt02 { font-size: 14px; font-size: 1.4rem; letter-spacing: 0.16em; } }
.profile01_block02, .profile01_block03, .profile01_block04 { margin-top: 50px; }
@media print, screen and (min-width: 769px) { .profile01_block02, .profile01_block03, .profile01_block04 { margin-top: 90px; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; } }
@media print, screen and (min-width: 769px) and (min-width: 769px) { .profile01_block02 > div:first-child, .profile01_block03 > div:first-child, .profile01_block04 > div:first-child { width: 400px; text-align: right; } }
@media print, screen and (min-width: 769px) and (min-width: 769px) { .profile01_block02 > div:nth-child(2), .profile01_block03 > div:nth-child(2), .profile01_block04 > div:nth-child(2) { padding-top: 10px; width: 630px; text-align: left; } }

.profile01_block02-txt01, .profile01_block03-txt01, .profile01_block04-txt01 { font-size: 14px; font-size: 1.4rem; font-weight: 500; letter-spacing: 0.08em; line-height: 1.57; }
@media print, screen and (min-width: 769px) { .profile01_block02-txt01, .profile01_block03-txt01, .profile01_block04-txt01 { font-size: 18px; font-size: 1.8rem; font-weight: 500; letter-spacing: 0.16em; } }
.profile01_block02-txt01 small, .profile01_block03-txt01 small, .profile01_block04-txt01 small { font-size: 11px; font-size: 1.1rem; font-weight: 400; }
@media print, screen and (min-width: 769px) { .profile01_block02-txt01 small, .profile01_block03-txt01 small, .profile01_block04-txt01 small { font-size: 14px; font-size: 1.4rem; } }
.profile01_block02-logo { margin-bottom: 20px; text-align: center; border-bottom: #d1d1d1 solid 1px; padding-bottom: 20px; }
@media print, screen and (min-width: 769px) { .profile01_block02-logo { border-bottom: none; } }
.profile01_block02-logo img { margin: 0 auto; width: 181px; height: 29px; }
.profile01_block03-logo { margin-bottom: 20px; text-align: center; border-bottom: #d1d1d1 solid 1px; padding-bottom: 20px; }
@media print, screen and (min-width: 769px) { .profile01_block03-logo { border-bottom: none; } }
.profile01_block03-logo img { margin: 0 auto; width: 181px; height: 29px; }
@media print, screen and (min-width: 769px) { .profile01_block04 { margin-top: 75px; } }
@media print, screen and (min-width: 769px) { .profile01_block04 > div:nth-child(2) { padding-top: 0; } }
.profile01_block04-txt01 { margin-bottom: 20px; text-align: center; border-bottom: #d1d1d1 solid 1px; padding-bottom: 14px; font-size: 19px; font-size: 1.9rem; font-weight: 900; letter-spacing: 0; line-height: 1; }
@media print, screen and (min-width: 769px) { .profile01_block04-txt01 { margin-bottom: 0; padding-top: 0.2em; border-bottom: none; font-size: 18px; font-size: 1.8rem; } }
.profile01_block04-txt01 img { margin: 0 auto; width: 181px; height: 29px; }
.profile01_block04 .cmn_list-type01, .profile01_block04 .list-disc03 { margin-top: 0 !important; }
@media print, screen and (min-width: 769px) { .profile01 .cmn_list-type01 { margin-top: 0.5em; } }
.profile01 .list-disc03 { margin-top: 0.5em; }
@media print, screen and (min-width: 769px) { .profile01 .list-disc03 { display: inline-block; padding-right: 2em; } }

.profile01_table { margin: 60px 0 0; width: 100%; }
.profile01_table th { width: 90px; }
@media print, screen and (min-width: 769px) { .profile01_table th { width: 250px; } }

.profile_btn-map { margin: 0.4em 0; display: inline-block; vertical-align: middle; border: #d1d1d1 solid 2px; padding: 0 1em 0 2em; background: #fff; color: #000; text-decoration: none; transition: opacity 0.2s ease-out; }
.profile_btn-map:hover { opacity: 0.7; text-decoration: none; }
@media print, screen and (min-width: 769px) { .profile_btn-map { margin: 0; line-height: 1; padding: 0.3em 1em 0.2em 2em; vertical-align: 1px; } }
.profile_btn-map img { display: inline-block; vertical-align: -3px; width: 14px; height: 14px; }
@media print, screen and (min-width: 769px) { .profile_btn-map img { vertical-align: -2px; } }

.profile02-photoArea { margin-top: 25px; text-align: center; }
@media print, screen and (min-width: 769px) { .profile02-photoArea { margin-top: 60px; } }
.profile02-photoArea img { margin: 0 auto; max-width: 923px; }

.history01_block01 { margin-top: 35px; }
@media print, screen and (min-width: 769px) { .history01_block01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; } }
@media print, screen and (min-width: 769px) { .history01_block01-txtArea { width: 780px; } }
@media print, screen and (min-width: 769px) { .history01_block01-photoArea { width: 250px; } }
.history01_photoBox { margin-top: 35px; text-align: center; }
@media print, screen and (min-width: 769px) { .history01_photoBox { margin-top: 0; } }
.history01_photoBox figcaption { margin-top: 1em; font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.05em; line-height: 1.66; }
.history01_photoBox + figure { margin-top: 35px; }
.history01_photoBox img { width: 100%; height: auto; }
.history01_table td:first-child { display: none; }
@media print, screen and (min-width: 769px) { .history01_table td:first-child { display: table-cell; vertical-align: bottom; color: #00a6cb; font-size: 14px; font-size: 1.4rem; font-weight: 700; letter-spacing: 0.16em; line-height: 2.2; } }
.history01_table th, .history01_table td { font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.66; }
@media print, screen and (min-width: 769px) { .history01_table th, .history01_table td { font-size: 14px; font-size: 1.4rem; letter-spacing: 0.16em; line-height: 2.2; } }
.history01_table th { width: 110px; white-space: nowrap; text-align: center; }
.history01 .history01_table-year { width: 50px; padding-left: 0; white-space: nowrap; }

.factory-logoArea01, .factory-logoArea02, .factory-logoArea03 { margin: 40px 0 0; padding-bottom: 20px; border-bottom: #d1d1d1 solid 1px; }

.factory-logoArea01 img { width: 181px; height: 29px; }
.factory-logoArea01 + .subsection { margin-top: 0 !important; }
@media print, screen and (min-width: 769px) { .factory-logoArea01 + .subsection { margin-top: 10px !important; } }

.factory-logoArea02 { margin-top: 75px !important; }
@media print, screen and (min-width: 769px) { .factory-logoArea02 { margin-top: 100px !important; } }
.factory-logoArea02 img { width: 181px; height: 29px; }
.factory-logoArea02 + .subsection { margin-top: 0 !important; }
@media print, screen and (min-width: 769px) { .factory-logoArea02 + .subsection { margin-top: 10px !important; } }

.factory-logoArea03 { margin-top: 75px !important; font-size: 19px; font-size: 1.9rem; font-weight: 900; letter-spacing: 0; line-height: 1; }
@media print, screen and (min-width: 769px) { .factory-logoArea03 { margin-top: 100px !important; } }
.factory-logoArea03 + .subsection { margin-top: 0 !important; }
@media print, screen and (min-width: 769px) { .factory-logoArea03 + .subsection { margin-top: 10px !important; } }

.factory01 .cmn_ttl-type02 { padding-left: 0; }
.factory01 .cmn_ttl-type02::before { display: none; }
.factory01 .subsection { margin-top: 50px; }
@media print, screen and (min-width: 769px) { .factory01 .subsection { margin-top: 100px; } }
@media print, screen and (min-width: 769px) { .factory01_block { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; /* Safari */ justify-content: space-between; -webkit-flex-wrap: wrap; /* Safari */ flex-wrap: wrap; -webkit-align-content: stretch; /* Safari */ align-content: stretch; } }
.factory01_block .txtArea { margin-top: 20px; }
@media print, screen and (min-width: 769px) { .factory01_block .txtArea { width: 520px; } }
.factory01_block .photoArea { margin-top: 25px; }
@media print, screen and (min-width: 769px) { .factory01_block .photoArea { width: 550px; } }

.factory-table th { white-space: nowrap; width: 20%; font-weight: 400; padding-right: 1em; }
.factory-table th, .factory-table td { font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.05em; line-height: 1.66; }
@media print, screen and (min-width: 769px) { .factory-table th, .factory-table td { font-size: 14px; font-size: 1.4rem; line-height: 2; } }
.factory-table th a, .factory-table td a { color: #000; }

.factory-btnArea { margin-top: 20px; }

.facilities01 .cmn_ttl-type02 { padding-left: 0; }
.facilities01 .cmn_ttl-type02::before { display: none; }
.facilities01 .cmn_boxList-type01 p { margin-top: 0.5em; font-size: 10px; font-size: 1rem; line-height: 1.55; font-weight: 500; }
@media print, screen and (min-width: 769px) { .facilities01 .cmn_boxList-type01 p { font-size: 12px; font-size: 1.2rem; } }
.facilities01 .cmn_boxList-type01 .photo { margin-bottom: 10px; width: 100%; height: auto; }
.facilities01 .subsection + .subsection { margin-top: 40px; }
@media print, screen and (min-width: 769px) { .facilities01 .subsection + .subsection { margin-top: 70px; } }

.facilities-table { margin-top: 15px; width: 100%; }
.facilities-table + .facilities-table { margin-top: 25px; }
.facilities-table thead th { background: #eee; padding: 9px 10px; color: #00a6cb; font-size: 12px; font-size: 1.2rem; font-weight: 700; letter-spacing: 0.08em; line-height: 1.45; vertical-align: middle; }
@media print, screen and (min-width: 769px) { .facilities-table thead th { letter-spacing: 0.16em; } }
.facilities-table tbody th, .facilities-table tbody td { padding: 16px 10px 2px 10px; border-bottom: #d1d1d1 solid 1px; vertical-align: middle; }
.facilities-table tbody th { text-align: left; font-size: 10px; font-size: 1rem; font-weight: 700; letter-spacing: 0.03em; line-height: 1.45; color: #666; }
@media print, screen and (min-width: 769px) { .facilities-table tbody th { font-weight: 400; font-size: 12px; font-size: 1.2rem; letter-spacing: 0.16em; } }
.facilities-table tbody td { text-align: right; font-size: 12px; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.08em; line-height: 1.45; }
@media print, screen and (min-width: 769px) { .facilities-table tbody td { letter-spacing: 0.16em; } }

.pc-visible .facilities-table { border-top: #d1d1d1 solid 1px; border-left: #d1d1d1 solid 1px; }
.pc-visible .facilities-table thead th:first-child { background: #fff; color: #666; text-align: left; font-weight: 400; }
.pc-visible .facilities-table thead th { padding: 30px 20px; text-align: center; }
.pc-visible .facilities-table th, .pc-visible .facilities-table td { border-right: #d1d1d1 solid 1px; border-bottom: #d1d1d1 solid 1px; }
.pc-visible .facilities-table tbody th, .pc-visible .facilities-table tbody td { padding: 12px 20px; }
.pc-visible .facilities-table tbody td { padding: 12px 5px; text-align: center; }
.pc-visible .txt-mark01, .pc-visible .txt-mark02, .pc-visible .txt-mark03 { font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; }

.facilities01-sub02 .pc-visible .facilities-table { width: 100%; }
.facilities01-sub02 .pc-visible .facilities-table tbody th { width: 23%; }
.facilities01-sub02 .pc-visible .facilities-table tbody td { width: 11%; }

.facilities01-sub04 .pc-visible .facilities-table { width: 56%; }
.facilities01-sub04 .pc-visible .facilities-table tbody th { width: 40%; }
.facilities01-sub04 .pc-visible .facilities-table tbody td { width: 20%; }

.facilities01-sub06 .pc-visible .facilities-table { width: 80%; }
.facilities01-sub06 .pc-visible .facilities-table tbody th { width: 27.5%; }
.facilities01-sub06 .pc-visible .facilities-table tbody td { width: 14.5%; }
