@charset "UTF-8";

.contact-content .others-content-01 .input-area input[type=text],
.contact-content .others-content-01 .input-area textarea,
.contact-content .others-content-01 .input-area .input-confirm,
.contact-content .others-content-01 .button-area button[type=submit] { font-weight:400; font-family:"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.contact-content .others-content-01 .input-area input[type=text] *,
.contact-content .others-content-01 .input-area textarea *,
.contact-content .others-content-01 .input-area .input-confirm *,
.contact-content .others-content-01 .button-area button[type=submit] * { font-weight:400; font-family:"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.contact-content .others-content-01 .content-01 .en { font-weight:300; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.contact-content .others-content-01 .content-01 .en * { font-weight:300; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.about-content .others-content-01 .items-01 .sub-01 { font-weight:600; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.about-content .others-content-01 .items-01 .sub-01 * { font-weight:600; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.others-content-wrap { width:100%; min-height:700px;}
.others-content-wrap .others-content-01 { opacity:0;}
.others-content-wrap .others-content-01.set { opacity:1; transition:opacity 1000ms;}
.others-content-wrap.set { height:100vh;}
.others-content-wrap.set .others-content-01 { height:100%; display:flex; justify-content:center; flex-direction:column;}
.others-content-wrap.set>.copyright { position:absolute; left:50%; bottom:0; transform:translateX(-50%);}
.others-content-wrap>.copyright { width:calc(100% - 98px); margin-right:auto; margin-left:auto; padding-bottom:25px; display:none;}
.content-area-01 { width:100%; padding-top:87px; padding-bottom:87px;}
.about-content .others-content-01 { width:755px; margin-right:auto; margin-left:auto;}
.about-content .others-content-01 .content-area-01 { display:flex; justify-content:center;}
.about-content .others-content-01 .content-01 { padding-top:75px; width:200px;}
.about-content .others-content-01 .content-01 figure { width:100%; overflow:hidden;}
.about-content .others-content-01 .content-01 img { width:100%; float:left;}
.about-content .others-content-01 .content-02 { font-size:12px; position:relative; padding-top:75px;}
.about-content .others-content-01 .name-01 { position:absolute; left:0; top:0; font-size:20px; width:100%; line-height:1.3; letter-spacing:.5em;}
.about-content .others-content-01 .history-items { line-height:1.5; width:100%;}
.about-content .others-content-01 .history-items * { line-height:1.5;}
.about-content .others-content-01 .history-items .item { display:flex; justify-content:space-between;}
.about-content .others-content-01 .history-items .item+.item { margin-top:.4em;}
.about-content .others-content-01 .history-items .date { width:3em; font-style:normal;}
.about-content .others-content-01 .history-items .history { width:calc(100% - 3.5em);}
.about-content .others-content-01 .items-01 { width:100%; padding-top:35px;}
.about-content .others-content-01 .items-01 .sub-01 { display:block; width:100%; line-height:1.5; letter-spacing:.03em;}
.about-content .others-content-01 .items-01 .item { line-height:1.8333; width:100%; margin-top:1em; letter-spacing:.03em;}
.contact-content .others-content-01 { width:600px; margin-right:auto; margin-left:auto;}
.contact-content .others-content-01 .content-01 { width:100%;}
.contact-content .others-content-01 .content-01 .en { padding-bottom:3.3333%; width:100%; letter-spacing:.03em; display:block; font-size:24px; line-height:1.2; color:#aaa;}
.contact-content .others-content-01 .content-01 .jp { width:calc(100% + 1.5em); text-align:justify; text-justify:inter-ideograph; word-break:break-all; line-height:1.8333; letter-spacing:.03em; font-size:12px;}
.contact-content .others-content-01 .content-01 .sub-01 { display:block; width:100%; line-height:1.6; letter-spacing:.03em; font-size:20px;}
.contact-content .others-content-01 .content-01 .sub-01+.jp { padding-top:3.3333%;}
.contact-content .others-content-01 .content-01 .required { font-size:1.4em; line-height:0; position:relative; margin-right:.25em; top:.25em;}
.contact-content .others-content-01 .content-01.center-layout { text-align:center;}
.contact-content .others-content-01 .content-01.center-layout .jp { width:100%; text-align:center;}
.contact-content .others-content-01 .content-01 .contact-info { width:100%; padding-top:3.3333%; display:flex; justify-content:center; font-size:14px;}
.contact-content .others-content-01 .content-01 .contact-info>p { letter-spacing:.03em; line-height:1.5;}
.contact-content .others-content-01 .content-01 .link-01 { text-align:center; width:100%; padding-top:5.3333%; display:flex; justify-content:center; font-size:16px;}
.contact-content .others-content-01 .content-01 .link-01 a { border-radius:.4em; padding-top:.2em; padding-right:1em; padding-bottom:.35em; padding-left:1em; min-height:3em; background-color:#f0f0f0; border-width:1.4px; border-style:solid; border-color:#e2e2e2; display:flex; justify-content:center; align-items:center; line-height:1.6; transition:opacity 400ms;}
.contact-content .others-content-01 .content-01 .link-01 a:active { opacity:.6;}
.contact-content .others-content-01 .content-02 { width:100%; padding-top:55px;}
.contact-content .others-content-01 .global-error-message { margin-top:1em; letter-spacing:.03em; padding-right:.3em; padding-bottom:.13em; padding-left:.5em; background-color:#000; color:#fff; font-size:12px; width:100%; line-height:1.6; text-align:center; width:100%;}
.contact-content .others-content-01 .input-area { width:100%; font-size:14px; overflow:hidden; border-color:gray; border-style:solid; border-bottom-width:1.4px;}
.contact-content .others-content-01 .input-area+.input-area { margin-top:1em;}
.contact-content .others-content-01 .input-area .label { width:100%; line-height:1.5; overflow:hidden; clear:both;}
.contact-content .others-content-01 .input-area .label label,
.contact-content .others-content-01 .input-area .label strong { float:left; display:block; font-size:12px; line-height:1.5; letter-spacing:.05em;}
.contact-content .others-content-01 .input-area .label label { width:100%;}
.contact-content .others-content-01 .input-area .label.required label::after,
.contact-content .others-content-01 .input-area .label.required strong::after { content:"*"; font-size:1.4em; display:inline-block; position:relative; margin-left:.3em; top:.22em; line-height:0;}
.contact-content .others-content-01 .input-area input[type=text],
.contact-content .others-content-01 .input-area textarea { font-size:14px; width:100%; float:left; border:none; letter-spacing:.03em;}
.contact-content .others-content-01 .input-area input[type=text] { height:3.2143em; padding-bottom:.13em;}
.contact-content .others-content-01 .input-area input[type=text]:-webkit-autofill,
.contact-content .others-content-01 .input-area input[type=text]:-webkit-autofill:hover,
.contact-content .others-content-01 .input-area input[type=text]:-webkit-autofill:focus { -webkit-text-fill-color:#000; box-shadow:0 0 0 1000px #fff inset; background-color:#fff !important;}
.contact-content .others-content-01 .input-area input[type=text]:focus { background:#fff;}
.contact-content .others-content-01 .input-area textarea { line-height:1.4; height:10em; padding-bottom:.9em; overflow:scroll; -ms-overflow-style:none; scrollbar-width:none;}
.contact-content .others-content-01 .input-area textarea::-webkit-scrollbar { display:none;}
.contact-content .others-content-01 .input-area .input-confirm { font-size:14px; display:flex; align-items:center; min-height:3.2143em; width:100%; letter-spacing:.03em; padding-top:.7em; padding-bottom:.7em; text-align:justify; text-justify:inter-ideograph; word-break:break-all;}
.contact-content .others-content-01 .input-area .error-message { letter-spacing:.03em; margin-top:.2em; padding-right:.3em; padding-bottom:.13em; padding-left:.5em; background-color:#000; color:#fff; font-size:12px; width:100%; line-height:1.6; display:block;}
.contact-content .others-content-01 .button-area { width:100%; display:flex; justify-content:center; font-size:12px; line-height:1.3; padding-top:30px;}
.contact-content .others-content-01 .button-area * { line-height:1.3;}
.contact-content .others-content-01 .button-area button[type=submit] { transition:background-color 400ms,border-color 400ms; background-color:rgba(240,240,240,0); width:6.6667em; height:6.6667em; border-color:#707070; border-style:solid; border-width:1.4px; border-radius:6.6667em; display:block; position:relative; overflow:hidden;}
.contact-content .others-content-01 .button-area button[type=submit] strong { display:flex; justify-content:center; align-items:center; width:100%; height:100%; padding-top:.15em; position:absolute; left:0; top:0;}
.contact-content .others-content-01 .button-area button[type=submit].type-01 strong { padding-top:0; padding-bottom:.1em;}
.contact-content .others-content-01 .button-area .button-01+.button-01 { margin-left:1em;}

@media (min-width:900.1px) {
.others-content-wrap .global-menu { opacity:0; transition:opacity 400ms;}
.others-content-wrap .global-menu.a { opacity:1;}
}

@media (max-width:1525px) {
.about-content .others-content-01 { margin-left:25.2459%;}
}

@media (max-width:1370px) {
.contact-content .others-content-01 { margin-left:28.1022%;}
}

@media (max-width:1220px) {
.about-content .others-content-01 { width:61.8852%;}
}

@media (max-width:1200px) {
.about-content .others-content-01 { margin-left:303px;}
}

@media (max-width:1100px) {
.about-content .others-content-01 { margin-left:27.5455%; width:61.8852%;}
.about-content .others-content-01 .content-01 { width:29.3799%;}
.contact-content .others-content-01 { margin-left:28.0909%;}
}

@media (max-width:1096px) {
.content-area-01 { padding-top:70px; padding-bottom:70px;}
}

@media (max-width:1040px) {
.about-content .others-content-01 .content-01 { flex-shrink:1; margin-right:5.9904%;}
}

@media (max-width:900px) {
.others-content-wrap.set .others-content-01 { display:block;}
.others-content-wrap>.copyright { display:block;}
.content-area-01 { padding-top:170px; padding-bottom:50px;}
.about-content .others-content-01 { max-width:450px; width:76.7442%; margin-right:auto; margin-left:auto;}
.about-content .others-content-01 .content-area-01 { width:calc(100% + 1em); display:block; padding-bottom:85px;}
.about-content .others-content-01 .content-01 { width:42.4242%; padding-top:0;}
.about-content .others-content-01 .content-02 { width:100%; padding-top:0;}
.about-content .others-content-01 .name-01 { position:relative; left:auto; top:auto;}
.about-content .others-content-01 .history-items { padding-top:35px;}
.contact-content .others-content-01 { width:58.8419%;}
.contact-content .others-content-01 { max-width:450px; width:76.7442%; margin-right:auto; margin-left:auto;}
.contact-content .others-content-01 .content-01 .jp { width:100%;}
.contact-content .others-content-01 .content-02 { padding-top:50px;}
}

@media (max-width:570px) {
.about-content .others-content-01 .content-area-01 { width:100%;}
}

@media (max-width:450px) {
.contact-content .others-content-01 .content-01 .jp { line-height:1.7;}
}

@media (max-width:430px) {
.others-content-wrap>.copyright { max-width:330px; width:90%;}
.content-area-01 { padding-top:51.5152%; padding-bottom:21.2121%;}
.about-content .others-content-01 { max-width:330px; width:90%;}
.about-content .others-content-01 .content-area-01 { padding-bottom:25.7576%;}
.contact-content .others-content-01 { max-width:330px; width:90%;}
.contact-content .others-content-01 .content-02 { padding-top:15.1515%;}
.contact-content .others-content-01 .input-area .label label,
.contact-content .others-content-01 .input-area .label strong { font-size:10px;}
.contact-content .others-content-01 .input-area textarea { height:12.1429em;}
.contact-content .others-content-01 .button-area { padding-top:9.0909%;}
.contact-content .others-content-01 .button-area button[type=submit] { width:75px; height:75px;}
}

@media (max-width:400px) {
.contact-content .others-content-01 .content-01 .jp { line-height:1.6;}
}

@media (max-width:320px) {
.contact-content .others-content-01 .content-01 .jp,
.contact-content .others-content-01 .global-error-message,
.contact-content .others-content-01 .input-area .error-message,
.contact-content .others-content-01 .button-area { font-size:11px;}
.contact-content .others-content-01 .content-01 .contact-info,
.contact-content .others-content-01 .input-area,
.contact-content .others-content-01 .input-area input[type=text],
.contact-content .others-content-01 .input-area textarea,
.contact-content .others-content-01 .input-area .input-confirm { font-size:12px;}
.contact-content .others-content-01 .content-01 .link-01 { font-size:12px;}
.contact-content .others-content-01 .content-01 .sub-01 { font-size:14px;}
.contact-content .others-content-01 .content-01 .en { font-size:18px;}
}

@media (min-width:320.1px) and (max-width:900px) {
.contact-content .others-content-01 .content-01 .jp,
.contact-content .others-content-01 .global-error-message,
.contact-content .others-content-01 .input-area .error-message,
.contact-content .others-content-01 .button-area { font-size:calc(11px + (1vw - 3.2px) * .1724);}
.contact-content .others-content-01 .content-01 .contact-info,
.contact-content .others-content-01 .input-area,
.contact-content .others-content-01 .input-area input[type=text],
.contact-content .others-content-01 .input-area textarea,
.contact-content .others-content-01 .input-area .input-confirm { font-size:calc(12px + (1vw - 3.2px) * .3448);}
.contact-content .others-content-01 .content-01 .link-01 { font-size:calc(12px + (1vw - 3.2px) * .6897);}
.contact-content .others-content-01 .content-01 .sub-01 { font-size:calc(14px + (1vw - 3.2px) * 1.0345);}
.contact-content .others-content-01 .content-01 .en { font-size:calc(18px + (1vw - 3.2px) * 1.0345);}
}

@media (hover:hover) and (pointer:fine) {
.contact-content .others-content-01 .content-01 .link-01 a:hover { opacity:.6;}
.contact-content .others-content-01 .button-area button[type=submit]:hover { background-color:#f0f0f0; border-color:#e2e2e2;}
}