
body { margin: 0; padding: 0; font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-size: 16px; line-height: 1.5; color: black; font-smoothing: antialiased; -webkit-font-smoothing: antialiased;  }
@media only screen and (max-width: 473px) { body { font-size: 3.38266vw; } }
@media only screen and (max-width: 414px) { body { font-size: 14px; } }
@media only screen and (max-width: 375px) { body { font-size: 3.73333vw; } }
.js body { display: none; }
.js body.ready { display: block; }
html, body { height: 100%; }
#container { width: 100%; min-height: 100%; overflow: hidden; }
#contents { min-height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
main { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
.tr-reset { -webkit-text-size-adjust: 100%; }
.tr-reset div, .tr-reset span, .tr-reset applet, .tr-reset object, .tr-reset iframe, .tr-reset h1, .tr-reset h2, .tr-reset h3, .tr-reset h4, .tr-reset h5, .tr-reset h6, .tr-reset p, .tr-reset blockquote, .tr-reset pre, .tr-reset a, .tr-reset abbr, .tr-reset acronym, .tr-reset address, .tr-reset big, .tr-reset cite, .tr-reset code, .tr-reset del, .tr-reset dfn, .tr-reset em, .tr-reset img, .tr-reset ins, .tr-reset kbd, .tr-reset q, .tr-reset s, .tr-reset samp, .tr-reset small, .tr-reset strike, .tr-reset strong, .tr-reset sub, .tr-reset sup, .tr-reset tt, .tr-reset var, .tr-reset b, .tr-reset u, .tr-reset i, .tr-reset center, .tr-reset dl, .tr-reset dt, .tr-reset dd, .tr-reset ol, .tr-reset ul, .tr-reset li, .tr-reset fieldset, .tr-reset form, .tr-reset label, .tr-reset legend, .tr-reset table, .tr-reset caption, .tr-reset tbody, .tr-reset tfoot, .tr-reset thead, .tr-reset tr, .tr-reset th, .tr-reset td, .tr-reset article, .tr-reset aside, .tr-reset canvas, .tr-reset details, .tr-reset embed, .tr-reset figure, .tr-reset figcaption, .tr-reset footer, .tr-reset header, .tr-reset hgroup, .tr-reset menu, .tr-reset nav, .tr-reset output, .tr-reset ruby, .tr-reset section, .tr-reset summary, .tr-reset time, .tr-reset mark, .tr-reset audio, .tr-reset video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }
.tr-reset table { border-collapse: collapse; border-spacing: 0; }
.tr-reset caption, .tr-reset th, .tr-reset td { text-align: left; font-weight: normal; vertical-align: middle; }
.tr-reset q, .tr-reset blockquote { quotes: none; }
.tr-reset q:before, .tr-reset q:after, .tr-reset blockquote:before, .tr-reset blockquote:after { content: ""; content: none; }
.tr-reset a img { border: none; }
.tr-reset .ib { display: inline-block; }
.tr-reset .pad { padding: 0 2.5em; }
.tr-reset .inner {  max-width: 980px; padding: 0 2.5em; margin: auto; }
.tr-reset .column { max-width: 641px; margin: auto; }
.tr-reset img { max-width: 100%; vertical-align: bottom; }
.tr-reset .btn-basic { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; padding: 1.75em 1em 1.6875em; -webkit-box-sizing: border-box; box-sizing: border-box; color: white; background: #344d67; }
.tr-reset .btn-basic .label { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-weight: 300; }
.tr-reset .btn-basic img { max-width: 1.1875em; height: auto; margin-right: 0.625em; }
@media only screen and (max-width: 750px) { .tr-reset .pad, .tr-reset .inner { padding: 0 5.33333vw; } }
sup { position: relative; font-size: 0.5em !important; top: -0.5em; }
a { text-decoration: none; outline: none; -webkit-transition: opacity 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000); transition: opacity 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000); cursor: pointer; }
a:hover { opacity: 0.5; }
.anchor { position: absolute; left: 0; top: 0; z-index: 1000; visibility: hidden; }
.anchor#pagetop { top: 0; }
br.sp { display: none; }
@media only screen and (max-width: 750px) { br.sp { display: block; }
  br.pc { display: none; } }
#header { position: absolute; width: 100%; left: 0; top: 0; z-index: 2000;  }
#header .navigation-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; max-width: 1200px; margin: auto; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
#header .toyoshima-logo { width: 12.375em; margin-top: 1.4375em; margin-left: 2.5em; }
#header .toyoshima-logo svg { width: 100%; height: auto; }
#header .logo-svg { fill: #005b98; fill-rule: evenodd; }
#header #language-setting { display: -webkit-box; display: -ms-flexbox; display: flex; margin-right: 1.8125em; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#header #language-setting ul { display: -webkit-box; display: -ms-flexbox; display: flex; list-style: none; font-size: 0.875em; font-family: "Montserrat", sans-serif; font-weight: 400; line-height: 1; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#header #language-setting li { margin-top: 0.42857em; margin-left: 1.21429em; }
#header #language-setting a { display: inline-block; padding-bottom: 0.35714em; color: white; }
body.jp #language-setting .jp a, body.en #language-setting .en a, body.cn #language-setting .cn a { border-bottom: solid 1px white; }
@media only screen and (max-width: 750px) { #header .toyoshima-logo { width: 51.2%; margin-left: auto; margin-right: auto; } }
.top #header .logo-svg { fill: #fff; }
.top #main-section { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; height: 79.66667vw; max-height: 956px;  background: url("../images/main_bg@2x.jpg") black no-repeat center center; background-size: cover; overflow: hidden; font-size: 1em; color: white; }
.top #main-section .main-copy { position: relative; width: 38.6875em; max-width: 619px; z-index: 1; }
.top #main-section .main-copy p { font-size: 1.125em; font-weight: 300; text-align: center; margin-top: 1.44444em; }
.top #main-section .main-visual { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 0; overflow: hidden; background: #3b4a5c; }
.top #main-section .main-visual video { position: absolute; background: #3b4a5c; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: auto; height: auto; min-width: 100%; min-height: 100%; }
@media only screen and (max-width: 750px) and (orientation: portrait) { .top #main-section { height: calc( 100vh ); max-height: calc( 100vh ); min-height: calc( 100vh ); } }
@media only screen and (max-width: 750px) and (orientation: landscape) { .top #main-section { height: 79.66667vw; max-height: 79.66667vw; min-height: calc( 100vh ); } }
.top #intro-section { padding-top: 4.625em; padding-bottom: 4.75em; }
.top #intro-section article { max-width: 650px; margin: auto; font-size: 1em; font-weight: 300; line-height: 30/16; text-align: justify; word-break: break-all; }
.top #intro-section p + p { margin-top: 1.875em; }
@media only screen and (max-width: 750px) { .top #intro-section { padding-top: 1.71429em; padding-bottom: 1.85714em; } }
.top #selection-section .selection-bg { height: 65.30612vw; max-height: 640px; background: url("../images/selection_bg@2x.jpg") no-repeat center center; background-size: cover; }
.top #selection-section .selection-main { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 4.375em; }
.top #selection-section .selection-main > figure { width: 36.42857%; margin-top: -2.0625em; }
.top #selection-section .selection-main > div { width: 57.44898%; margin-top: 3.9375em; text-align: justify; word-break: break-all; }
.top #selection-section .selection-main h2 { font-weight: 700; }
.top #selection-section .selection-main h2 > span { display: block; }
.top #selection-section .selection-main h2 .en { font-size: 1.625em; text-align: left; }
.top #selection-section .selection-main h2 .ja { font-size: 2.375em; line-height: 1.36842; margin-top: 0.18421em; }
.top #selection-section .selection-main .body { margin-top: 1.25em; font-weight: 300; line-height: 2.25; }
.top #selection-section .selection-main p + p { margin-top: 2.25em; }
.top #selection-section .selection-art { border-top: solid 1px #7f7f7f; padding-top: 5.0625em; padding-bottom: 4.375em; }
.top #selection-section .selection-art h3 { width: 100%; font-size: 1.5625em; font-weight: 700; line-height: 1.64; }
.top #selection-section .selection-art p { font-size: 1em; font-weight: 300; line-height: 2.25; }
.top #selection-section .selection-art p + p { margin-top: 2.25em; }
.top #selection-section .selection-art small { font-size: 0.875em; }
.top #selection-section .selection-art1 .box, .top #selection-section .selection-art2 .box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.top #selection-section .selection-art1 .body, .top #selection-section .selection-art2 .body { width: 51.93878%; margin-top: 2.25em; text-align: justify; word-break: break-all; }
.top #selection-section .selection-art1 figure, .top #selection-section .selection-art2 figure { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-left: 1.25em; }
.top #selection-section .selection-art1 img { max-width: 18.5625em; }
.top #selection-section .selection-art1 ul { margin-top: 1.16667em; list-style: none; font-size: 0.75em; font-weight: 300; line-height: 2.16667; }
.top #selection-section .selection-art1 li { text-indent: -1em; padding-left: 1em; }
.top #selection-section .selection-art2 img { max-width: 18.5em; }
.top #selection-section .selection-art2 aside { width: 285px; margin: auto; margin-top: 1.375em; }
.top #selection-section .selection-art2 aside .btn-basic { width: 100%; }
.top #selection-section .selection-art2 dl { display: -webkit-box; display: -ms-flexbox; display: flex; margin-top: 2.58333em; font-size: 0.75em; font-weight: 300; line-height: 2.16667; }
.top #selection-section .selection-art2 dl dt { -ms-flex-negative: 0; flex-shrink: 0; }
.top #selection-section .selection-art2 dl dd { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
.top #selection-section .selection-art3 { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding-top: 4.4375em; }
.top #selection-section .selection-art3 .graph { width: 100%; max-width: 590px; margin: auto; margin-top: 3.375em; margin-bottom: 3em; }
.top #selection-section .selection-art3 h4 { max-width: 284px; margin: auto; }
.top #selection-section .selection-art3 .imgs { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; max-width: 590px; margin: auto; margin-top: 1.9375em; }
.top #selection-section .selection-art3 figure { width: 28.98305%; max-width: 171px; }
.top #selection-section .selection-art3 figcaption { margin-top: 1.42857em; font-size: 0.875em; font-weight: 400; line-height: 1.71429; text-align: justify; word-break: break-all; }
@media only screen and (max-width: 750px) { .top #selection-section .selection-main { display: block; margin-bottom: 2.5em; }
  .top #selection-section .selection-main > figure { width: 80%; margin-top: -30.29851%; }
  .top #selection-section .selection-main > div { width: auto; margin-top: 1.5em; }
  .top #selection-section .selection-main .body { line-height: 1.64286; }
  .top #selection-section .selection-main small { font-size: 0.85714em; }
  .top #selection-section .selection-art { padding-top: 2.71429em; padding-bottom: 2.35714em; }
  .top #selection-section .selection-art p { font-size: 0.85714em; line-height: 1.75; }
  .top #selection-section .selection-art1 h3, .top #selection-section .selection-art2 h3 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; margin-top: 1.875em; font-size: 1.14286em; }
  .top #selection-section .selection-art1 .body, .top #selection-section .selection-art2 .body { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; width: 100%; margin-top: 1em; }
  .top #selection-section .selection-art1 figure, .top #selection-section .selection-art2 figure { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; width: 100%; margin: auto; }
  .top #selection-section .selection-art2 aside { margin-top: 1.78571em; }
  .top #selection-section .selection-art3 { padding-top: 2.42857em; }
  .top #selection-section .selection-art3 .figcaption { line-height: 1.45455; } }
.top #polyester-section, .top #nylon-section, .top #acrylic-section { margin-bottom: 4.5625em; }
.top #polyester-section .bg-large-title, .top #nylon-section .bg-large-title, .top #acrylic-section .bg-large-title { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; max-width: 100%; height: 45.91837vw; max-height: 450px; overflow: hidden; }
.top #polyester-section h3, .top #nylon-section h3, .top #acrylic-section h3 { margin-bottom: 0.5em; font-size: 2.25em; font-weight: 700; line-height: 1.44444; text-align: center; }
.top #polyester-section .column, .top #nylon-section .column, .top #acrylic-section .column { margin-top: 3.5em; }
.top #polyester-section .column p, .top #nylon-section .column p, .top #acrylic-section .column p { font-size: 1em; font-weight: 300; line-height: 2.25; text-align: justify; word-break: break-all; }
@media only screen and (max-width: 750px) { .top #polyester-section, .top #nylon-section, .top #acrylic-section { margin-bottom: 2.875em; }
  .top #polyester-section h3, .top #nylon-section h3, .top #acrylic-section h3 { font-size: 1.57143em; line-height: 1.40909; }
  .top #polyester-section .column, .top #nylon-section .column, .top #acrylic-section .column { margin-top: 1.71429em; }
  .top #polyester-section .column p, .top #nylon-section .column p, .top #acrylic-section .column p { font-size: 1em; line-height: 1.64286; } }
.top #polyester-section .bg-large-title { background: url("../images/polyester_bg@2x.jpg") no-repeat center center; background-size: cover; }
.top #polyester-section .bg-large-title h2 { width: 86.93878%; max-width: 852px; margin: auto; }
.top #polyester-section .casestudy { margin-top: 3.0625em; }
.top #polyester-section .casestudy h4 { font-size: 1.5em; font-weight: 300; text-align: center; }
.top #polyester-section .casestudy .arts { width: 100%; max-width: 970px; margin-top: 4.1875em; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.top #polyester-section .casestudy .arts article { width: 31.13402%; max-width: 302px; font-size: 1em; line-height: 1.6875; }
.top #polyester-section .casestudy .arts h5 { font-weight: 700; text-align: center; }
.top #polyester-section .casestudy .arts p { margin-top: 0.6875em; font-weight: 400; text-align: justify; word-break: break-all; }
.top #polyester-section .casestudy .arts small { display: block; }
.top #polyester-section .casestudy .arts .p11 { font-size: clamp(10px, 0.6875em, 11px); }
.top #polyester-section .casestudy .arts .p10 { font-size: clamp(9px, 0.625em, 10px); }
@media only screen and (max-width: 750px) { .top #polyester-section .casestudy h4 { font-size: 1.14286em; }
  .top #polyester-section .casestudy .arts article { font-size: 1em; line-height: 1.41667; } }
.top #nylon-section .bg-large-title { background: url("../images/nylon_bg@2x.jpg") no-repeat center center; background-size: cover; }
.top #nylon-section .bg-large-title h2 { width: 51.42857%; max-width: 504px; margin: auto; }
.top #acrylic-section .bg-large-title { background: url("../images/acrylic_bg@2x.jpg") no-repeat center center; background-size: cover; }
.top #acrylic-section .bg-large-title h2 { width: 65.40816%; max-width: 641px; margin: auto; }
.top #acrylic-section .column p { letter-spacing: 0.02em; }
.top #projects-section { background: #376085 url("../images/projects_bg@2x.jpg") no-repeat center center; background-size: cover; color: white; padding-top: 9.8125em; padding-bottom: 15.375em; }
.top #projects-section .column { max-width: 659px; -webkit-transform: translateX(1em); transform: translateX(1em); }
.top #projects-section p { font-size: 1em; font-weight: 300; line-height: 2.125; text-align: justify; word-break: break-all; }
.top #projects-section p + p { margin-top: 2.125em; }
.top #projects-section .logo { width: 324px; margin: auto; margin-top: 2.8125em; }
.top #projects-section .logo img { width: 100%; height: auto; }
@media only screen and (max-width: 750px) { .top #projects-section { padding-top: 2.28571em; padding-bottom: 6.71429em; }
  .top #projects-section .column { -webkit-transform: translateX(0); transform: translateX(0); }
  .top #projects-section P { FONT-SIZE: 1em; line-height: 1.64286; } }
#contact-section { position: relative; padding-top: 6.375em; text-align: center; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
#contact-section h2 { font-family: "Montserrat", sans-serif; font-size: 3.25em; font-weight: 600; letter-spacing: 0.06em; line-height: 1; text-align: center; margin-bottom: 0.73077em; }
#contact-section p { font-size: 0.8125em; line-height: 1.92308; }
#contact-section address { margin-top: 1.84615em; }
#contact-section a { color: black; text-decoration: underline; }
@media only screen and (max-width: 750px) { #contact-section { padding-top: 2.14286em; } }
#footer { position: relative; background: black; color: white; margin-top: 5.5625em; padding-top: 5.6875em; padding-bottom: 7.8125em; }
#footer > .inner {  text-align: center; }
#footer h6 { max-width: 22.6875em; margin: auto; }
#footer aside { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-top: 3.375em; }
#footer aside a { display: block; width: 3.5625em; margin: 0 0.625em; }
#footer small { display: block; margin-top: 2.1em; font-family: "Inter", sans-serif; font-size: 0.625em; font-size: clamp(9px, 0.625em, 10px); font-weight: 400; }
@media only screen and (max-width: 750px) { #footer { margin-top: 3em; padding-top: 2.92857em; } }
#topagetop { position: fixed; bottom: 0; left: 50%; margin-left: 35.66667%; margin-bottom: 35.5px; z-index: 1000; width: 71px; height: 71px; background: #ebebeb; border: solid 1px #cccccc; -webkit-box-sizing: border-box; box-sizing: border-box; visibility: hidden; -webkit-transform: translateY(150%); transform: translateY(150%); -webkit-transition: visibility 0s linear 0.25s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); transition: visibility 0s linear 0.25s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); transition: transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000), visibility 0s linear 0.25s; transition: transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000), visibility 0s linear 0.25s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); }
#topagetop a { display: block; width: 100%; height: 100%; background: url("../images/arrow-topagetop.svg") white center center no-repeat; background-size: 21.12676% auto; }
#topagetop.active { visibility: visible; -webkit-transform: translateY(0%); transform: translateY(0%); -webkit-transition: visibility 0s linear 0s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); transition: visibility 0s linear 0s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); transition: transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000), visibility 0s linear 0s; transition: transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000), visibility 0s linear 0s, -webkit-transform 0.25s cubic-bezier(0.215, 0.610, 0.355, 1.000); }
#topagetop.abs { position: absolute; bottom: auto; top: 0; margin-top: -35.5px; margin-bottom: auto; }
@media only screen and (max-width: 750px) { #topagetop { margin-left: auto; left: auto; right: 30px; } }
@media only screen and (max-width: 552px) { #topagetop { right: 5.43478%; width: 12.86232vw; height: 12.86232vw; margin-bottom: 6.43116vw; }
  #topagetop.abs { margin-top: -6.43116vw; margin-bottom: auto; } }
.evidence main { padding-top: 8.6875em; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-weight: 300; }
.evidence main .wrap { max-width: 770px; margin: auto; }
.evidence main section + section { margin-top: 4.25em; }
.evidence main h2 { font-weight: 600; font-size: 1.375em; line-height: 1.45455; letter-spacing: -0.02em; text-align: center; }
.evidence main picture { display: block; margin-top: 2.125em; }
.evidence main ul { margin-top: 2.4375em; line-height: 2; letter-spacing: -0.02em; list-style: none; }
.evidence main ul li { text-indent: -1em; padding-left: 1em; text-align: justify; word-break: break-all; }
.evidence main p { margin-top: 2.4375em; line-height: 2; letter-spacing: -0.02em; text-align: justify; word-break: break-all; }
.evidence main cite { display: block; margin-top: 2.3125em; }
.evidence main cite dl { display: -webkit-box; display: -ms-flexbox; display: flex; font-size: 0.75em; line-height: 1.91667; letter-spacing: -0.02em; }
.evidence main cite dl dt { -ms-flex-negative: 0; flex-shrink: 0; }
.evidence main cite dl dd { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
@media only screen and (max-width: 750px) { .evidence main { padding-top: 7.85714em; }
  .evidence main section + section { margin-top: 1.9375em; }
  .evidence main h2 { font-size: 1em; }
  .evidence main picture { margin-top: 1.14286em; }
  .evidence main ul { margin-top: 1.25em; font-size: 0.85714em; }
  .evidence main cite { margin-top: 0.35714em; }
  .evidence main cite dl { font-size: clamp(10px, 0.78571em, 11px); } }
