@charset "utf-8";
img {
 vertical-align: bottom;
}
header.top {
 margin: 0;
}
.top-catch {
 margin: 0;
}
.link-button.p3p5p {
 padding: 3% 0 5%;
}
.w386 {
 width: calc(100% - 2rem);
 margin: 0 auto;
}
.c18205 {
 color: #c18205;
}
.c324997 {
 color: #324997;
}
section img {
 width: 100%;
}
h2 {
 margin-bottom: 1rem;
}
.introduction {
 padding: 2%;
}
.for-border.lg {
 margin-bottom: 2%;
}
section.content .badge {
 padding: 0 2% .5rem;
 font-size: 150%;
 font-weight: bold;
 font-family: YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 line-height: 38px;
}
section.content .badge.c18205 {
 padding: 0 2%;
}
section.content .badge.c324997 {
 font-size: 140%;
}
.badge.border2s {
 border-bottom: 2px solid #ededed;
}
section.content .badge img {
 width: auto;
 margin-right: 1rem;
 max-height: 38px;
}
.flex-container.top-nav {
 flex-direction: row;
}
.flex-container {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 5%;
}
.accordion {
 width: 100%;
 display: flex;
 flex-direction: column;
 gap: 5px;
}
.accordion__menu {
 margin-bottom: 2%;
}
.accordion__button {
 appearance: none;
 text-align: inherit;
 width: 100%;
 border: 2px solid #63768d;
 background: none;
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: relative;
 cursor: pointer;
}
.accordion__button p {
 padding: 0 2% 0 2rem;
 font-size: 110%;
 text-align: justify;
 position: relative;
}
.accordion__button p:before {
 content: "";
 background: url(../images/question-mark32w.png) no-repeat 0 0 / contain;
 width: 1.4rem;
 height: 1.4rem;
 display: inline-block;
 position: absolute;
 left: 2%;
 top: 0;
}
.accordion__body {
 height: 0;
 background: rgba(200,234,237,.6);
 overflow: hidden;
 transition: all 0.5s;
}
.accordion__body p {
 padding: 1% 1% 1% 2rem;
 font-size: 93%;
 line-height: 1.4;
 position: relative;
}
.accordion__body p + p:last-child {
 padding-bottom: 1.5%;
}
.accordion__body p:first-child:before {
 content: "";
 background: url(../images/anserd-mark32w.png) no-repeat 0 0 / contain;
 width: 1.4rem;
 height: 1.4rem;
 display: inline-block;
 position: absolute;
 left: 2%;
 top: 7px;
}
.accordion__body .qas p:before {
 background: none;
}
.accordion__button .plus {
 width: 2.6rem;
 height: 3rem;
 background: #63768d;
 flex-shrink: 0;
}
.accordion__button .plus::before {
 content: "";
 width: 2px;
 height: 16px;
 background: #fff;
 position: absolute;
 right: 18px;
 top: 0;
 bottom: 0;
 margin: auto;
 transition: .6s ease;
}
.accordion__button .plus::after {
 content: "";
 width: 16px;
 height: 2px;
 background: #fff;
 position: absolute;
 right: 11px;
 top: 0;
 bottom: 0;
 margin: auto;
 transition: .6s ease;
}
.accordion__menu.open .accordion__button .plus::before {
 transform: rotate(90deg);/* 45 */
}
.accordion__menu.open .accordion__button .plus::after {
 transform: rotate(-180deg);/* -45 */
}
.accordion .button--close {
 display: none;
}
section.content .accordion p {
 margin-bottom: 0;
 padding: 0 2%;
 text-align: justify;
}
.item.accordion {
 margin-bottom: 3%;
}
.accordion button {
 width: 100%;
 height: auto;
 padding: 0;
 border: none;
 border-radius: 0;
 background: #fff;
 border: 2px solid #63768d;
 position: relative;
 cursor: pointer;
 display: flex;
 justify-content: space-between;
 align-items: center;
}
section.content .accordion button p {
 font-size: 110%;
}
.accordion .button .plus {
 width: 2.6rem;
 height: 3rem;
 background: #63768d;
 flex-shrink: 0;
}
.accordion .button .plus::before {
 content: "";
 width: 2px;
 height: 16px;
 background: #fff;
 position: absolute;
 right: 18px;
 top: 0;
 bottom: 0;
 margin: auto;
 transition: .6s ease;
}
.accordion .button .plus::after {
 content: "";
 width: 16px;
 height: 2px;
 background: #fff;
 position: absolute;
 right: 11px;
 top: 0;
 bottom: 0;
 margin: auto;
 transition: .6s ease;
}
.accordion-box {


 transition:.4s ease;
}
.accordion-box p {
 font-size: 98%;
}
.accordion .button.is-accordion--open .plus::before {
 transform: rotate(90deg);/* 45 */
}
.accordion .button.is-accordion--open .plus::after {
 transform: rotate(-180deg);/* -45 */
}
.accordion .button.is-accordion--open + .accordion-box {
 height: auto;
 opacity: 1;
 background: rgba(200,234,237,.5);
 display: flex;
 align-items: center;
}
.accordion .button.is-accordion--open + .accordion-box p {
 font-size: 98%;
 font-weight: normal;
 text-align: left;
}
.mb3p {
 margin-bottom: 3%;
}
.magnifying .accordion__button p {
 padding-left: 2rem;
 position: relative;
}
.magnifying .accordion__button p:before {
 width: 1rem;
 height: 1rem;
 display: inline-block;
 position: absolute;
 left: .5rem;
 top: 2px;
 content: "";
 background: url(../images/magnifying-glass32w.png) no-repeat 0 0 / contain;
}
.magnifying .accordion__body p {
 padding-left: 2rem;
 position: relative;
}
.magnifying .accordion__body p:before {
 width: 1rem;
 height: 1rem;
 display: inline-block;
 position: absolute;
 left: 2%;
 top: 7px;
 content: "";
 background: url(../images/square32w.png) no-repeat 0 0 / contain;
}
.magnifying .accordion__body p.answer {
 padding-top: 0;
 color: #f58164;
}
.magnifying .accordion__body p.answer:before {
 background: none;
}
.flex-container.qas {
 width: 90%;
}
.flex-container.qas p:first-child {
 background: #b3b3b3;
 border: 1px solid #4d4d4d;
}
@media screen and (min-width:800px) {
 header.top {
  margin: 0 auto;
 }
 .top-catch {
  margin: 0 auto;
 }
 section.international-certification,
 section.award-winner,
 section.conducting-inspection {
  max-width: calc(960px - 6%);
  margin: 0 auto 2%;
 }
 section.conducting-inspection {
  margin-bottom: 5%;
 }
 section.content .badge img {
  width: auto;
 }
 section.content .badge {
  font-size: 180%;
 }
 .flex-container {
  flex-direction: row;
 }
 .flex-container.reverse {
  flex-direction: row-reverse;
 }
 .zone.text .flex-container img {
  max-width: 332px;
 }
 .w386 {
  max-width: 386px;
 }
 .accordion__button p {
  padding-left: 3rem;
 }
 .accordion__button p:before {
  left: 1.2rem;
 }
 .accordion__text {
  padding: 1% 2% 1% 3rem;
 }
 .accordion__text:before {
  left: 1.2rem;
 }
 .accordion__body p {
  padding-left: 3rem;;
 }
 .accordion__body p:first-child:before {
  top: 10px;
 }
 .magnifying .accordion__body p {
  padding-left: 3rem;
 }
 .magnifying .accordion__button p:before {
  left: 1.2rem;
 }
 .magnifying .accordion__body p:before {
  left: 1.5rem;
  top: 12px;
 }
 .magnifying .accordion__button p {
  padding-left: 3rem;
 }
}