@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;500;700&display=swap");
.inner { width: 100%; max-width: 1040px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner { max-width: 88%; padding: 0; } }

.inner_w { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_w { max-width: 88%; padding: 0; } }

.inner_s { width: 100%; max-width: 970px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_s { max-width: 88%; padding: 0; } }

.inner_ss { width: 100%; max-width: 800px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_ss { max-width: 88%; padding: 0; } }

.inner-w { width: 100%; max-width: 1160px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner-w { max-width: 88%; padding: 0; } }

.inner { width: 100%; max-width: 940px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner { max-width: 88%; padding: 0; } }

body { background: url(../img/back/back01.png) no-repeat top left/29% auto; }
@media (max-width: 959px) { body { background: url(../img/back/back01.png) no-repeat top 6vw left -12vw/85% auto; } }

.PageTitle { margin-top: 130px; padding: 0 0 110px 0; background: url(../img/back/back07.png) no-repeat bottom -50px right/27% auto; }
@media (max-width: 959px) { .PageTitle { margin-top: 41vw; padding: 0 0 10vw 0; background: url(../img/back/back07.png) no-repeat bottom -15vw right -26vw/62% auto; background: none; } }
.PageTitle ul { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; }
@media (max-width: 959px) { .PageTitle ul { -webkit-flex-direction: column; flex-direction: column; } }
.PageTitle ul .Msg { display: none; width: 20px; margin-right: 95px; text-align: center; }
@media (max-width: 959px) { .PageTitle ul .Msg { display: block; width: 1em; margin-right: 6.5vw; } }
.PageTitle ul .Msg span { color: #0073FF; font-size: 15px; font-weight: 700; line-height: 100%; vertical-align: text-top; font-family: Noto Sans JP; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
@media (max-width: 959px) { .PageTitle ul .Msg span { font-size: 3.5vw; } }
.PageTitle ul .Msg:after { content: ""; display: block; width: 1px; height: 220px; margin: 30px auto 0 auto; background: #0073FF; }
@media (max-width: 959px) { .PageTitle ul .Msg:after { height: 22vw; margin: 7vw auto 0 auto; } }
.PageTitle ul li:nth-child(1) { width: 650px; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(1) { width: 100%; } }
@media (max-width: 959px) { .PageTitle ul li:nth-child(1) > div { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; margin-top: 22vw; } }
.PageTitle ul li:nth-child(1) img { display: none; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(1) img { display: block; width: 90%; margin: 10vw auto 0 auto; } }
.PageTitle ul li:nth-child(2) { position: relative; flex: 1; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(2) { display: none; } }
.PageTitle ul li:nth-child(2) img { position: absolute; top: 100px; left: -20px; max-width: 545px; width: 545px; margin: 0 auto; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(2) img { display: none; } }
.PageTitle h2 { margin-top: 10px; color: #202020; font-size: 42px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h2 { font-size: 6.5vw; text-align: center; } }
.PageTitle h2 i { display: flex; overflow: hidden; color: #0073FF; font-size: 20px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h2 i { -webkit-justify-content: center; justify-content: center; font-size: 4vw; margin-bottom: 3vw; } }
.PageTitle h2 i p { margin: 0; opacity: 0; animation: textanimation 1s forwards; }
.PageTitle h2 i p:nth-child(1) { animation-delay: 0.05s; }
.PageTitle h2 i p:nth-child(2) { animation-delay: 0.1s; }
.PageTitle h2 i p:nth-child(3) { animation-delay: 0.15s; }
.PageTitle h2 i p:nth-child(4) { animation-delay: 0.2s; }
.PageTitle h2 i p:nth-child(5) { animation-delay: 0.25s; }
.PageTitle h2 i p:nth-child(6) { animation-delay: 0.3s; }
.PageTitle h2 i p:nth-child(7) { animation-delay: 0.35s; }
.PageTitle h2 i p:nth-child(8) { animation-delay: 0.4s; }
.PageTitle h2 i p:nth-child(9) { animation-delay: 0.45s; }
.PageTitle h2 i p:nth-child(10) { animation-delay: 0.5s; }
.PageTitle h2 i p:nth-child(11) { animation-delay: 0.55s; }
.PageTitle h2 i p:nth-child(12) { animation-delay: 0.6s; }
.PageTitle h2 i p:nth-child(13) { animation-delay: 0.65s; }
.PageTitle h2 i p:nth-child(14) { animation-delay: 0.7s; }
.PageTitle h2 i p:nth-child(15) { animation-delay: 0.75s; }
@keyframes textanimation { 0% { opacity: 0; }
  100% { opacity: 1; } }
.PageTitle h3 { margin-top: 160px; color: #202020; font-size: 28px; font-weight: 700; line-height: 60px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h3 { margin-top: 0; font-size: 3.8vw; line-height: 1.8em; } }
.PageTitle h3 + p { margin-top: 30px; font-size: 16px; font-weight: 500; line-height: 36px; letter-spacing: 0.5px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h3 + p { margin: 5vw 0 0 0; font-size: 3.2vw; line-height: 2.1em; } }

.What-wecan { position: relative; width: 100%; max-width: 1160px; margin: 60px auto 170px auto; }
@media (max-width: 959px) { .What-wecan { width: 85%; margin: 0 auto 18vw auto; } }
.What-wecan > img { position: absolute; top: 8px; right: 90px; width: 56px; }
@media (max-width: 959px) { .What-wecan > img { display: none; } }
.What-wecan ul.Contents { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; -webkit-justify-content: space-between; justify-content: space-between; }
@media (max-width: 959px) { .What-wecan ul.Contents { -webkit-flex-direction: column; flex-direction: column; } }
.What-wecan ul.Contents li:nth-child(1) { width: 246px; }
@media (max-width: 959px) { .What-wecan ul.Contents li:nth-child(1) { width: 100%; } }
.What-wecan ul.Contents li:nth-child(1) h2 { display: none; }
@media (max-width: 959px) { .What-wecan ul.Contents li:nth-child(1) h2 { display: block; font-size: 5.4vw; font-weight: 700; line-height: 100%; text-align: center; font-family: Noto Sans JP; } }
.What-wecan ul.Contents li:nth-child(1) h2 i { display: block; margin-bottom: 0.8em; color: #0073FF; font-size: 3vw; font-weight: 700; font-family: Noto Sans JP; }
.What-wecan ul.Contents li:nth-child(1) .Tab { display: none; }
@media (max-width: 959px) { .What-wecan ul.Contents li:nth-child(1) .Tab { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; width: 90%; margin: 0 auto 6vw auto; } }
.What-wecan ul.Contents li:nth-child(1) .Tab > div { cursor: pointer; width: 32%; padding: 1em 0; color: #fff; font-size: 3vw; font-weight: 700; letter-spacing: 0; line-height: 1.5em; text-align: center; font-family: Noto Sans JP; background: #0073FF; border-radius: 1vw; border: 2px solid #0073FF; }
.What-wecan ul.Contents li:nth-child(1) .Tab > div + div { color: #0073FF; background: #fff; }
.What-wecan ul.Contents li:nth-child(1) .Tab span { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; align-items: center; height: 2.6em; text-align: center; }
@media (max-width: 959px) { .What-wecan ul.Contents li:nth-child(1) nav { display: none; } }
.What-wecan ul.Contents li:nth-child(1) nav div { cursor: pointer; display: block; width: 246px; padding: 3em 1em 3em 2em; font-size: 17px; font-weight: 700; letter-spacing: 0; font-family: Noto Sans JP; background: #F6F6F6; }
.What-wecan ul.Contents li:nth-child(1) nav div + div { margin: 0; border-top: 2px solid #fff; }
.What-wecan ul.Contents li:nth-child(1) nav .GoNo01 { color: #fff; background: #1B32A6; border-radius: 20px 20px 0 0; }
.What-wecan ul.Contents li:nth-child(1) nav .GoNo03 { border-radius: 0 0 20px 20px; }
.What-wecan ul.Contents li:nth-child(1) nav div:hover { color: #fff; background: #1B32A6; }
.What-wecan ul.Contents li:nth-child(2) { flex: 1; margin-left: 35px; }
@media (max-width: 959px) { .What-wecan ul.Contents li:nth-child(2) { width: 100%; margin: 0; } }
.What-wecan .Contents li > h2 { margin-bottom: 75px; font-size: 32px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan .Contents li > h2 { display: none; } }
.What-wecan .Contents li > h2 i { display: block; margin-bottom: 0.5em; color: #0073FF; font-size: 15px; font-weight: 700; font-family: Noto Sans JP; }
.What-wecan section + section { margin-top: 110px; }
@media (max-width: 959px) { .What-wecan section + section { margin-top: 0; } }
.What-wecan section#No02, .What-wecan section#No03 { display: none; }
.What-wecan section dl { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; -webkit-justify-content: space-between; justify-content: space-between; margin-bottom: 100px; }
@media (max-width: 959px) { .What-wecan section dl { -webkit-flex-direction: column; flex-direction: column; margin-bottom: 11vw; } }
.What-wecan section dl dt { width: 400px; }
@media (max-width: 959px) { .What-wecan section dl dt { width: 100%; } }
.What-wecan section dl dt img { width: 100%; border-radius: 15px; }
.What-wecan section dl dd { flex: 1; margin-left: 55px; }
@media (max-width: 959px) { .What-wecan section dl dd { width: 100%; margin: 0; padding: 5vw 0 0 0; } }
.What-wecan section dl h2 { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; margin-top: 50px; }
@media (max-width: 959px) { .What-wecan section dl h2 { margin-top: 2.5vw; } }
.What-wecan section dl h2:before { content: "01"; color: #EEEEEE; font-size: 80px; font-weight: 500; line-height: 80px; vertical-align: top; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section dl h2:before { font-size: 12.5vw; } }
.What-wecan section dl h2 span { display: inline-block; margin: 0.5em 0 0 -0.8em; color: #0022CC; font-size: 28px; font-weight: 700; line-height: 36px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section dl h2 span { font-size: 4vw; line-height: 1.3em; } }
.What-wecan section dl h2 + p { margin-top: 42px; font-size: 16px; font-weight: 500; line-height: 36px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section dl h2 + p { font-size: 3.2vw; line-height: 2.2em; margin-top: 7.5vw; } }
@media (max-width: 959px) { .What-wecan section#No01 dd { position: relative; } }
.What-wecan section#No01 dd .Img1 { display: none; }
@media (max-width: 959px) { .What-wecan section#No01 dd .Img1 { display: block; position: absolute; top: 2vw; right: 10vw; width: 9.5vw; } }
.What-wecan section#No01 dd .Img2 { display: none; }
@media (max-width: 959px) { .What-wecan section#No01 dd .Img2 { display: block; position: absolute; top: 7vw; right: 0; width: 11vw; } }
.What-wecan section#No02 dl h2:before { content: "02"; }
.What-wecan section#No03 dl h2:before { content: "03"; }
.What-wecan section .Point { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; width: 96%; padding: 30px 0 30px 0; border-top: 1px solid #222; }
@media (max-width: 959px) { .What-wecan section .Point { -webkit-flex-direction: column; flex-direction: column; padding: 10vw 0 10vw 3vw; } }
.What-wecan section .Point .Ico { width: 24%; text-align: center; }
@media (max-width: 959px) { .What-wecan section .Point .Ico { display: none; } }
.What-wecan section .Point .Ico .Ico01 { width: 90px; }
.What-wecan section .Point .Ico .Ico02 { width: 70px; }
.What-wecan section .Point .Ico .Ico03 { width: 66px; }
.What-wecan section .Point .Ico .Ico04 { width: 80px; }
.What-wecan section .Point .Ico .Ico05 { width: 66px; }
.What-wecan section .Point .Point_contents { width: 76%; }
@media (max-width: 959px) { .What-wecan section .Point .Point_contents { width: 100%; } }
.What-wecan section .Point h3 { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; margin-bottom: 0.8em; font-size: 22px; font-weight: 700; letter-spacing: 0%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Point h3 { display: block; margin-bottom: 1.7em; font-size: 4vw; } }
.What-wecan section .Point h3 i { margin-right: 1.7em; color: #0073FF; font-size: 15px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Point h3 i { display: block; font-size: 3vw; line-height: 100%; margin: 0 0 0.3em 0; } }
.What-wecan section .Point p { font-size: 16px; font-weight: 400; line-height: 34px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Point p { font-size: 3.2vw; line-height: 2.2em; letter-spacing: 0.2px; } }
@media (max-width: 959px) { .What-wecan section#No01 .Point h3 { padding-left: 20vw; background: url(../img/service/icon01.png) no-repeat center left/auto 100%; }
  .What-wecan section#No01 .Point + .Point h3 { padding-left: 20vw; background: url(../img/service/icon02.png) no-repeat center left 2vw/auto 100%; }
  .What-wecan section#No01 .Point + .Point + .Point h3 { padding-left: 20vw; background: url(../img/service/icon03.png) no-repeat center left 3vw/auto 100%; }
  .What-wecan section#No02 .Point h3 { padding-left: 20vw; background: url(../img/service/icon04.png) no-repeat center left 3vw/auto 100%; }
  .What-wecan section#No02 .Point + .Point h3 { padding-left: 20vw; background: url(../img/service/icon01.png) no-repeat center left/auto 100%; }
  .What-wecan section#No02 .Point + .Point + .Point h3 { padding-left: 20vw; background: url(../img/service/icon02.png) no-repeat center left 2vw/auto 100%; }
  .What-wecan section#No03 .Point h3 { padding-left: 20vw; background: url(../img/service/icon04.png) no-repeat center left 3vw/auto 100%; }
  .What-wecan section#No03 .Point + .Point h3 { padding-left: 20vw; background: url(../img/service/icon05.png) no-repeat center left 3vw/auto 100%; } }
.What-wecan section .p-last { border-bottom: 1px solid #222; }
.What-wecan section .Technology { padding: 0 70px 50px 70px; margin-top: 75px; border: 37px solid #F0F0F0; }
@media (max-width: 959px) { .What-wecan section .Technology { margin-top: 14vw; padding: 0 4vw 9vw 4.5vw; border: 5vw solid #F0F0F0; border-left: 4vw solid #F0F0F0; border-right: 4vw solid #F0F0F0; } }
.What-wecan section .Technology h2 { margin: -2.5em 0 3.2em 0; font-size: 22px; font-weight: 700; text-align: center; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Technology h2 { font-size: 5vw; margin: -2em 0 2.3em 0; } }
.What-wecan section .Technology h3 { margin-bottom: 0.5em; color: #0022CC; font-size: 20px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Technology h3 { font-size: 3.2vw; margin-bottom: 1em; } }
.What-wecan section .Technology p + h3 { margin-top: 2.2em; }
@media (max-width: 959px) { .What-wecan section .Technology p + h3 { margin-top: 3.5em; } }
.What-wecan section .Technology p { font-size: 16px; font-weight: 400; line-height: 34px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section .Technology p { font-size: 3vw; line-height: 2.2em; letter-spacing: 0; } }
.What-wecan section + p { margin-top: 80px; font-size: 16px; font-weight: 400; line-height: 34px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .What-wecan section + p { margin-top: 10vw; font-size: 3vw; line-height: 2.2em; } }
