html {
  scroll-behavior: smooth;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
}

body.is-fixed {
  overflow: hidden;
}

li {
  list-style: none;
}

ul {
  padding-left: 0;
}

div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

p, li, span, dt, dd, a, h1, h2, h3, h4, h5 {
  color: #071A4D;
  font-size: 3.2vw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a {
  text-decoration: none;
}

a.link {
  text-decoration: underline;
  color: #013BB7;
}

img {
  width: 100%;
  height: auto;
}

button {
  border: none;
  padding: 0;
  text-align: left;
}

#purpose, #service, #reason, #flow {
  scroll-margin-top: 16vw;
}

.onlyPc {
  display: none !important;
}

.onlyWide {
  display: none !important;
}

.sectionInner {
  width: 93.33333vw;
  margin-left: auto;
  margin-right: auto;
}

.sectionTitle {
  color: #164D77;
  font-size: 4vw;
  font-weight: 700;
  font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
  text-align: center;
  margin-bottom: 4.26667vw;
}

.blkTitle {
  color: #164D77;
  font-size: 6.4vw;
}

header {
  background: #fff;
  position: sticky;
  top: 0;
  z-index: 1000;
}

header .headerInn {
  padding: 4vw;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

header .headerInn .headerLogo {
  position: relative;
  z-index: 1001;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  margin-right: 16vw;
}

header .headerInn .headerLogo img {
  width: 22.93333vw;
  max-width: 134px;
}

header .headerInn .headerLink {
  position: absolute;
  right: 16vw;
}

header .headerInn .headerLink ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

header .headerInn .headerLink ul li {
  border: 2px solid #003BB3;
  border-radius: 0.8vw;
  width: 21.06667vw;
}

header .headerInn .headerLink ul li a {
  font-size: 2.66667vw;
  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;
  height: 6.93333vw;
  position: relative;
  padding-left: 2.4vw;
}

header .headerInn .headerLink ul li a span {
  position: relative;
  font-size: 2.66667vw;
}

header .headerInn .headerLink ul li a span:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

header .headerInn .headerLink ul li:first-child {
  margin-right: 1.33333vw;
}

header .headerInn .headerLink ul li:first-child a {
  color: #003BB3;
}

header .headerInn .headerLink ul li:first-child a span {
  color: #013BB7;
}

header .headerInn .headerLink ul li:first-child a span:before {
  background: url(/dist/img/occs/iconDocument.webp) no-repeat;
  background-size: contain;
  width: 2.93333vw;
  height: 3.73333vw;
  left: -4vw;
}

header .headerInn .headerLink ul li:last-child {
  background: #003BB3;
}

header .headerInn .headerLink ul li:last-child a {
  color: #fff;
}

header .headerInn .headerLink ul li:last-child a span {
  color: #fff;
}

header .headerInn .headerLink ul li:last-child a span:before {
  content: "";
  background: url(/dist/img/occs/iconMail.webp) no-repeat;
  background-size: cover;
  width: 3.73333vw;
  height: 2.93333vw;
  left: -4.8vw;
}

header .headerInn .menuBlk {
  position: absolute;
  top: 50%;
  right: 4vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1001;
}

header .headerInn .hamburger {
  position: relative;
  right: 0;
  width: 7.46667vw;
  height: 5.33333vw;
  border: none;
  background: none;
  cursor: pointer;
}

header .headerInn .hamburger span {
  position: absolute;
  left: 0;
  width: 7.46667vw;
  height: 0.8vw;
  background: #000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

header .headerInn .hamburger span:nth-child(1) {
  top: 0;
}

header .headerInn .hamburger span:nth-child(2) {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

header .headerInn .hamburger span:nth-child(3) {
  bottom: 0;
}

header .headerInn .hamburger.is-open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 2.13333vw;
}

header .headerInn .hamburger.is-open span:nth-child(2) {
  opacity: 0;
}

header .headerInn .hamburger.is-open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  bottom: 2.13333vw;
}

header .headerInn nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(255, 255, 255, 0.95);
  z-index: 999;
  overflow-y: auto;
  margin: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 10.66667vw;
  padding-top: 5.33333vw;
}

header .headerInn nav ul {
  padding: 10.66667vw 5.33333vw;
}

header .headerInn nav ul li:nth-child(n+2) {
  margin-top: 5.33333vw;
}

header .headerInn nav ul li a {
  font-size: 4.26667vw;
  display: block;
}

header .headerInn nav ul li a span {
  display: block;
  font-size: 2.66667vw;
}

.mvArea {
  position: relative;
  background: #F0F6FD;
  margin-bottom: 26.66667vw;
}

.mvArea .sectionInner {
  padding-top: 4.53333vw;
  padding-bottom: 21.33333vw;
}

.mvArea .sectionInner .mvTxt {
  position: relative;
  z-index: 2;
}

.mvArea .sectionInner .mvTxt p.catch {
  background: #013BB7;
  color: #fff;
  border-radius: 1.6vw;
  text-align: center;
  padding: 1.33333vw 0.53333vw;
  margin-bottom: 5.33333vw;
  letter-spacing: -0.02em;
}

.mvArea .sectionInner .mvTxt p.subTtl {
  font-size: 6.66667vw;
}

.mvArea .sectionInner .mvTxt h1 {
  font-size: 13.33333vw;
  line-height: 1.1;
  letter-spacing: 0.02em;
  font-weight: 700;
  color: #013BB7;
  text-wrap: initial;
  position: relative;
  z-index: 1;
  margin-bottom: 8vw;
}

.mvArea .sectionInner .mvTxt h1:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5.33333vw;
  background: url(/dist/img/occs/bgMv.webp) no-repeat;
  background-size: cover;
  width: 65.33333vw;
  height: 10.13333vw;
  z-index: -1;
}

.mvArea .sectionInner .mvTxt h1 span {
  color: #071A4D;
  font-size: 10.66667vw;
}

.mvArea .sectionInner .mvTxt .mvLead {
  margin: 5.33333vw 0;
  letter-spacing: -0.03em;
  line-height: 1.6;
}

.mvArea .sectionInner .mvTxt .feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 4vw;
  gap: 4.26667vw;
}

.mvArea .sectionInner .mvTxt .feature li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 45.06667vw;
  border: 1px solid #013BB7;
  border-radius: 1.06667vw;
  background: #fff;
  font-size: 2.53333vw;
  padding: 3.2vw 0.53333vw 3.2vw 11.73333vw;
  position: relative;
  letter-spacing: -0.04em;
}

.mvArea .sectionInner .mvTxt .feature li:before {
  content: "";
  position: absolute;
  left: 1.06667vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 9.33333vw;
  height: 9.33333vw;
}

.mvArea .sectionInner .mvTxt .feature li span {
  font-size: 3.73333vw;
}

.mvArea .sectionInner .mvTxt .feature li:first-child:before {
  background: url(/dist/img/occs/iconFeature01.webp) no-repeat;
  background-size: cover;
}

.mvArea .sectionInner .mvTxt .feature li:first-child span {
  color: #E70854;
}

.mvArea .sectionInner .mvTxt .feature li:last-child:before {
  background: url(/dist/img/occs/iconFeature02.webp) no-repeat;
  background-size: cover;
}

.mvArea .sectionInner .mvTxt .feature li:last-child span {
  color: #013BB7;
  display: block;
}

.mvArea .sectionInner .mvTxt .mvLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.26667vw;
}

.mvArea .sectionInner .mvTxt .mvLink li {
  width: 45.06667vw;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.mvArea .sectionInner .mvTxt .mvLink li a {
  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;
  border: 1px solid #013BB7;
  border-radius: 2.93333vw;
  padding: 2.66667vw 0;
  font-size: 2.93333vw;
  position: relative;
  letter-spacing: -0.08em;
}

.mvArea .sectionInner .mvTxt .mvLink li a span {
  position: relative;
}

.mvArea .sectionInner .mvTxt .mvLink li a span:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.mvArea .sectionInner .mvTxt .mvLink li:first-child a {
  background: #013BB7;
  padding-left: 1.33333vw;
}

.mvArea .sectionInner .mvTxt .mvLink li:first-child a span {
  color: #fff;
}

.mvArea .sectionInner .mvTxt .mvLink li:first-child a span:before {
  content: "";
  background: url(/dist/img/occs/iconMvLink01.webp) no-repeat;
  background-size: cover;
  width: 5.33333vw;
  height: 5.06667vw;
  left: -8vw;
}

.mvArea .sectionInner .mvTxt .mvLink li:last-child a {
  background: #fff;
  color: #013BB7;
  padding-left: 4vw;
}

.mvArea .sectionInner .mvTxt .mvLink li:last-child a span {
  color: #013BB7;
}

.mvArea .sectionInner .mvTxt .mvLink li:last-child a span:before {
  content: "";
  background: url(/dist/img/occs/iconDocument.webp) no-repeat;
  background-size: cover;
  width: 4.26667vw;
  height: 5.33333vw;
  left: -5.33333vw;
}

.mvArea .sectionInner .mv {
  width: 84vw;
  margin: 0 auto 4vw;
  max-width: 630px;
}

.mvArea .sectionInner .pointImg {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -18.13333vw;
  width: 89.33333vw;
}

.purposeArea {
  padding-bottom: 9.33333vw;
}

.purposeArea .sectionInner .purposeList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.purposeArea .sectionInner .purposeList li {
  width: 44vw;
  margin-right: 3.46667vw;
  margin-bottom: 3.46667vw;
  padding: 29.33333vw 0.8vw 5.33333vw;
  border: 2px solid #F4F6F9;
  border-radius: 1.06667vw;
  position: relative;
}

.purposeArea .sectionInner .purposeList li:before {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 8vw;
  background-repeat: no-repeat;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(2n) {
  margin-right: 0;
}

.purposeArea .sectionInner .purposeList li p {
  text-align: center;
  letter-spacing: -0.05em;
}

.purposeArea .sectionInner .purposeList li p.purpose {
  margin-bottom: 4.53333vw;
  font-size: 3.73333vw;
}

.purposeArea .sectionInner .purposeList li p.purpose + p {
  line-height: 2;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(1) {
  background: #FAFBFA;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(1):before {
  background: url(/dist/img/occs/iconPurpose01.webp) no-repeat;
  background-size: contain;
  width: 18.66667vw;
  height: 13.33333vw;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(1) .purpose {
  color: #008635;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(2) {
  background: #FEFCF9;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(2):before {
  background: url(/dist/img/occs/iconPurpose02.webp) no-repeat;
  background-size: contain;
  width: 13.86667vw;
  height: 14.93333vw;
  top: 7.46667vw;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(2) .purpose {
  letter-spacing: -0.15em;
  color: #FC810E;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(3) {
  background: #FAFCFF;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(3):before {
  background: url(/dist/img/occs/iconPurpose03.webp) no-repeat;
  background-size: contain;
  width: 13.06667vw;
  height: 18.4vw;
  left: calc(50% + 10px);
  top: 5.33333vw;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(3) .purpose {
  color: #1E45B9;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(4) {
  background: #FCFBFE;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(4):before {
  background: url(/dist/img/occs/iconPurpose04.webp) no-repeat;
  background-size: contain;
  width: 15.46667vw;
  height: 13.6vw;
}

.purposeArea .sectionInner .purposeList li:nth-of-type(4) .purpose {
  color: #6B17AA;
}

.purposeArea .sectionInner .purposeList li:last-child {
  background: #FCFDFF;
  margin-right: 0;
}

.purposeArea .sectionInner .purposeList li:last-child:before {
  background: url(/dist/img/occs/iconPurpose05.webp) no-repeat;
  background-size: contain;
  width: 14.4vw;
  height: 13.06667vw;
}

.purposeArea .sectionInner .purposeList li:last-child .purpose {
  color: #07879C;
}

.serviceArea {
  padding: 6.66667vw 0;
  background: #F9FBFF;
}

.serviceArea .sectionInner p {
  text-align: center;
}

.serviceArea .sectionInner .serviceLead {
  font-size: 5.33333vw;
  margin-bottom: 1.33333vw;
}

.serviceArea .sectionInner .serviceLead span {
  font-size: 5.33333vw;
  color: #013BB7;
}

.serviceArea .sectionInner .note {
  margin-bottom: 10.66667vw;
}

.serviceArea .sectionInner .serviceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.serviceArea .sectionInner .serviceList li {
  width: 34.66667vw;
  margin-bottom: 8vw;
}

.serviceArea .sectionInner .serviceList li:nth-of-type(2n) {
  margin-right: 0;
}

.serviceArea .sectionInner .serviceList li img {
  margin-bottom: 2.66667vw;
}

.serviceArea .sectionInner .serviceList li img + p {
  font-size: 3.46667vw;
  font-weight: 700;
  letter-spacing: -0.05em;
}

.serviceArea .sectionInner .serviceList + p {
  font-weight: 300;
  text-align: left;
}

.serviceArea .sectionInner .serviceList + p a {
  font-size: 3.46667vw;
}

.reasonArea {
  padding: 8vw 0 5.33333vw;
}

.reasonArea .sectionInner .reasonList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.reasonArea .sectionInner .reasonList li {
  width: 44vw;
  margin-right: 5.33333vw;
  margin-bottom: 5.33333vw;
  padding: 22.66667vw 0.8vw 5.33333vw;
  border: 2px solid #F4F6F9;
  border-radius: 1.6vw;
  position: relative;
}

.reasonArea .sectionInner .reasonList li:before {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 5.33333vw;
  background-repeat: no-repeat;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(2n) {
  margin-right: 0;
}

.reasonArea .sectionInner .reasonList li p {
  text-align: center;
  letter-spacing: -0.05em;
}

.reasonArea .sectionInner .reasonList li p.reason {
  margin-bottom: 4vw;
  font-size: 3.73333vw;
}

.reasonArea .sectionInner .reasonList li p.reason + p {
  line-height: 2;
  font-weight: 500;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(1):before {
  background: url(/dist/img/occs/iconReason01.webp) no-repeat;
  background-size: contain;
  width: 12.53333vw;
  height: 10.4vw;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(1) .reason {
  color: #008635;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(2):before {
  background: url(/dist/img/occs/iconReason02.webp) no-repeat;
  background-size: contain;
  width: 14.4vw;
  height: 13.6vw;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(2) .reason {
  letter-spacing: -0.15em;
  color: #D13975;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(3):before {
  background: url(/dist/img/occs/iconReason03.webp) no-repeat;
  background-size: contain;
  width: 14.4vw;
  height: 12.26667vw;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(3) .reason {
  color: #001AA3;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(4):before {
  background: url(/dist/img/occs/iconReason04.webp) no-repeat;
  background-size: contain;
  width: 13.6vw;
  height: 12.53333vw;
}

.reasonArea .sectionInner .reasonList li:nth-of-type(4) .reason {
  color: #661F99;
}

.reasonArea .sectionInner .reasonList li:last-child {
  margin-right: 0;
}

.reasonArea .sectionInner .reasonList li:last-child:before {
  background: url(/dist/img/occs/iconReason05.webp) no-repeat;
  background-size: contain;
  width: 12.8vw;
  height: 9.06667vw;
}

.reasonArea .sectionInner .reasonList li:last-child .reason {
  color: #FA9002;
}

.flowArea {
  padding: 8vw 0 5.33333vw;
}

.flowArea .sectionInner .sectionTitle {
  margin-bottom: 9.33333vw;
}

.flowArea .sectionInner .flowList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 88vw;
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
}

.flowArea .sectionInner .flowList li {
  width: 42.66667vw;
  max-width: 177px;
  margin-bottom: 8vw;
}

.flowArea .sectionInner .flowList li:first-child img {
  width: 40vw;
}

.flowArea .sectionInner .flowList li:nth-of-type(2) img {
  width: 33.86667vw;
}

.flowArea .sectionInner .flowList li:nth-of-type(3) img {
  width: 36.8vw;
}

.flowArea .sectionInner .flowList li:nth-of-type(4) img {
  width: 39.46667vw;
}

.flowArea .sectionInner .flowList li:nth-of-type(2n) {
  margin-right: 0;
}

.flowArea .sectionInner .flowList li:last-child img {
  width: 25.86667vw;
}

.flowArea .sectionInner .flowList li .img {
  margin-bottom: 4vw;
}

.flowArea .sectionInner .flowList li p {
  letter-spacing: -0.05em;
  line-height: 2;
  font-size: 3.2vw;
  margin-left: 4vw;
}

.linkArea {
  margin-bottom: 13.33333vw;
}

.linkArea .sectionInner {
  padding: 5.33333vw 1.33333vw 5.33333vw 22.66667vw;
  border: 1px solid #F3F5F8;
  border-radius: 1.06667vw;
  background: #FBFBFD;
  position: relative;
  overflow: hidden;
}

.linkArea .sectionInner:before {
  content: "";
  position: absolute;
  left: 1.33333vw;
  bottom: 0;
  width: 23.73333vw;
  height: 52.53333vw;
  background: url(/dist/img/occs/bgLink.webp) no-repeat;
  background-size: contain;
}

.linkArea .sectionInner .txt {
  margin-bottom: 5.33333vw;
}

.linkArea .sectionInner .txt .lead {
  text-align: center;
  font-size: 4vw;
  font-weight: 700;
  margin-bottom: 2.66667vw;
}

.linkArea .sectionInner .txt .lead + p {
  margin-left: 9.33333vw;
  line-height: 1.75;
  font-weight: 300;
}

.linkArea .sectionInner .link {
  margin-left: 4vw;
}

.linkArea .sectionInner .link li {
  width: 61.33333vw;
  max-width: 328px;
}

.linkArea .sectionInner .link li a {
  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;
  border: 1px solid #013BB7;
  border-radius: 5.33333vw;
  padding: 2.66667vw 0;
  font-size: 2.93333vw;
  position: relative;
  letter-spacing: -0.0075em;
}

.linkArea .sectionInner .link li a span {
  position: relative;
  font-size: 3.2vw;
}

.linkArea .sectionInner .link li a span:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.linkArea .sectionInner .link li:first-child {
  margin-bottom: 3.2vw;
}

.linkArea .sectionInner .link li:first-child a {
  background: #013BB7;
  padding-left: 1.33333vw;
}

.linkArea .sectionInner .link li:first-child a span {
  color: #fff;
}

.linkArea .sectionInner .link li:first-child a span:before {
  background: url(/dist/img/occs/iconMvLink01.webp) no-repeat;
  background-size: contain;
  width: 5.33333vw;
  height: 5.06667vw;
  left: -6.66667vw;
}

.linkArea .sectionInner .link li:last-child a {
  background: #fff;
  color: #013BB7;
  padding-left: 4vw;
}

.linkArea .sectionInner .link li:last-child a span:before {
  content: "";
  background: url(/dist/img/occs/iconDocument.webp) no-repeat;
  background-size: cover;
  width: 4.26667vw;
  height: 5.33333vw;
  left: -5.33333vw;
}

footer {
  background: #F9FBFF;
}

footer .sectionInner {
  padding: 6.66667vw 5.33333vw;
}

footer .sectionInner .footerLogo {
  width: 41.86667vw;
  margin: 0 auto 6.93333vw;
  max-width: 185px;
}

footer .sectionInner .corporate {
  margin-bottom: 6.66667vw;
}

footer .sectionInner .corporate .name {
  font-size: 4vw;
  font-weight: 700;
  margin-bottom: 2.66667vw;
}

footer .sectionInner .corporate .address {
  font-size: 3.73333vw;
  font-weight: 300;
}

footer .sectionInner .information .phone {
  font-size: 4vw;
  margin-bottom: 2.66667vw;
  padding-left: 7.46667vw;
  position: relative;
}

footer .sectionInner .information .phone span {
  font-size: 2.93333vw;
}

footer .sectionInner .information .phone:before {
  content: "";
  position: absolute;
  left: 0.53333vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.73333vw;
  height: 6.66667vw;
  background: url(/dist/img/occs/iconPhone.webp) no-repeat;
  background-size: contain;
}

footer .sectionInner .information .mail {
  font-size: 4.26667vw;
  padding-left: 8vw;
  position: relative;
}

footer .sectionInner .information .mail:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 6.13333vw;
  height: 4.8vw;
  background: url(/dist/img/occs/iconMailBl.webp) no-repeat;
  background-size: contain;
}

@media screen and (min-width: 768px) {
  p, li, span, dt, dd, a, h1, h2, h3, h4, h5 {
    font-size: clamp(11px, calc(14 / 1920 * 100vw), 14px);
  }
  a:hover {
    opacity: .7;
  }
  .onlySp {
    display: none !important;
  }
  .onlyPc {
    display: block !important;
  }
  .sectionInner {
    max-width: 1040px;
    width: calc(1040 / 1600 * 100vw);
  }
  .sectionTitle {
    font-size: clamp(18px, calc(24 / 1920 * 100vw), 24px);
    margin-bottom: calc(25 / 1600 * 100vw);
  }
  .blkTitle {
    font-size: clamp(30px, calc(40 / 1920 * 100vw), 50px);
  }
  header .headerInn .headerLink {
    right: 0;
  }
  header .headerInn .headerLink ul li {
    border-width: 2px;
    border-radius: 6px;
    width: 90px;
  }
  header .headerInn .headerLink ul li:first-child {
    margin-right: 10px;
  }
  .mvArea .sectionInner {
    padding-top: calc(25 / 1600 * 100vw);
    padding-bottom: calc(80 / 1600 * 100vw);
    position: relative;
    z-index: 1;
  }
  .mvArea .sectionInner .mvTxt p.subTtl {
    font-size: clamp(15px, calc(30 / 1920 * 100vw), 30px);
    margin-bottom: 0;
  }
  .mvArea .sectionInner .mvTxt h1 {
    margin-bottom: 25px;
    font-size: clamp(25px, calc(60 / 1920 * 100vw), 60px);
    margin-top: 0;
  }
  .mvArea .sectionInner .mvTxt h1 span {
    font-size: 48px;
  }
  .mvArea .sectionInner .mvTxt .mvLead {
    margin: calc(36 / 1920 * 100vw) 0 calc(20 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt .feature li span {
    font-size: clamp(12px, calc(18 / 1920 * 100vw), 18px);
  }
  .mvArea .sectionInner .mvTxt .mvLink li {
    width: 48%;
    max-width: 214px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li a {
    border-radius: 22px;
    font-size: clamp(9px, calc(14 / 1920 * 100vw), 14px);
    padding: calc(10 / 1600 * 100vw) calc(5 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt .mvLink li:first-child a {
    padding-left: 10px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li:last-child a {
    padding-left: calc(30 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .purposeArea .sectionInner .purposeList li {
    padding: calc(130 / 1600 * 100vw) calc(3 / 1600 * 100vw) calc(30 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:before {
    top: calc(35 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li {
    width: 19%;
    margin-right: 1.25%;
    margin-bottom: 0;
    border-radius: 8px;
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(2n) {
    margin-right: 1.25%;
  }
  .purposeArea .sectionInner .purposeList li:last-child {
    margin-right: 0;
  }
  .purposeArea .sectionInner .purposeList li p.purpose {
    font-size: clamp(10px, calc(16 / 1920 * 100vw), 16px);
    margin-bottom: calc(20 / 1600 * 100vw);
  }
  .serviceArea .sectionInner .serviceLead {
    margin-bottom: calc(10 / 1600 * 100vw);
  }
  .serviceArea .sectionInner .note {
    font-size: clamp(14px, calc(16 / 1920 * 100vw), 16px);
    margin-bottom: calc(15 / 1600 * 100vw);
  }
  .serviceArea .sectionInner .serviceList {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .serviceArea .sectionInner .serviceList li {
    width: 15%;
    margin-right: 2%;
    margin-bottom: 0;
  }
  .serviceArea .sectionInner .serviceList li:nth-of-type(2n) {
    margin-right: 2%;
  }
  .serviceArea .sectionInner .serviceList li:last-child {
    margin-right: 0;
  }
  .serviceArea .sectionInner .serviceList li img {
    margin-bottom: calc(15 / 1600 * 100vw);
  }
  .serviceArea .sectionInner .serviceList li img + p {
    font-size: clamp(14px, calc(16 / 1920 * 100vw), 16px);
  }
  .serviceArea .sectionInner .serviceList + p {
    text-align: center;
  }
  .serviceArea .sectionInner .serviceList + p a {
    font-size: clamp(14px, calc(16 / 1920 * 100vw), 16px);
  }
  .reasonArea .sectionInner .reasonList {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .reasonArea .sectionInner .reasonList li {
    padding: calc(105 / 1600 * 100vw) calc(3 / 1600 * 100vw) calc(30 / 1600 * 100vw);
    width: 19%;
    margin-right: 1.25%;
    margin-bottom: 0;
    border-radius: 8px;
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(2n) {
    margin-right: 1.25%;
  }
  .reasonArea .sectionInner .reasonList li:last-child {
    margin-right: 0;
  }
  .reasonArea .sectionInner .reasonList li p.reason {
    font-size: clamp(10px, calc(16 / 1920 * 100vw), 16px);
    margin-bottom: calc(20 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    width: auto;
  }
  .flowArea .sectionInner .flowList li {
    width: 18%;
    margin-right: 2.25%;
    margin-bottom: 0;
    border-radius: 8px;
  }
  .flowArea .sectionInner .flowList li:nth-of-type(2n) {
    margin-right: 1.25%;
  }
  .flowArea .sectionInner .flowList li:last-child {
    margin-right: 0;
  }
  .flowArea .sectionInner .flowList li p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .linkArea {
    margin-bottom: 45px;
  }
  .linkArea .sectionInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 8px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .linkArea .sectionInner .txt {
    margin-bottom: 0;
    width: calc(482 / 1600 * 100vw);
    text-align: center;
  }
  .linkArea .sectionInner .txt .lead {
    text-align: left;
  }
  .linkArea .sectionInner .txt .lead + p {
    margin-left: 0;
  }
  .linkArea .sectionInner .link {
    width: calc(328 / 1600 * 100vw);
    margin-left: 0;
  }
  .linkArea .sectionInner .link li:first-child a {
    padding-left: 10px;
  }
  .linkArea .sectionInner .link li:last-child a {
    padding-left: calc(30 / 1600 * 100vw);
  }
  footer .sectionInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  footer .sectionInner .footerLogo {
    margin: 0;
  }
  footer .sectionInner .corporate {
    margin-bottom: 0;
    border-right: 1px solid #EBEFF6;
  }
  footer .sectionInner .corporate .address {
    line-height: 1.7;
  }
}

@media screen and (min-width: 1180px) {
  #purpose, #service, #reason, #flow {
    scroll-margin-top: 90px;
  }
  .onlySpWide {
    display: block !important;
  }
  .onlyWide {
    display: block !important;
  }
  .sectionInner {
    width: 1040px;
  }
  .sectionTitle {
    margin-bottom: 25px;
  }
  header .headerInn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 17px 20px;
    margin: 0 auto;
    max-width: 1050px;
  }
  header .headerInn .headerLogo {
    width: auto;
    margin-right: 40px;
  }
  header .headerInn .headerLink ul li {
    width: 110px;
  }
  header .headerInn .headerLink ul li a {
    font-size: 12px;
    height: 38px;
    padding-left: 16px;
  }
  header .headerInn .headerLink ul li a span {
    font-size: 12px;
  }
  header .headerInn .headerLink ul li:first-child a span:before {
    left: -25px;
    width: 25px;
    height: 24px;
  }
  header .headerInn .headerLink ul li:last-child a span:before {
    left: -30px;
    width: 21px;
    height: 16px;
  }
  header .headerInn .hamburger {
    display: none;
  }
  header .headerInn nav {
    display: block;
    width: auto;
    margin: 0;
    position: static;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  header .headerInn nav ul {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
  }
  header .headerInn nav ul li:last-child {
    margin-right: 0;
  }
  header .headerInn nav ul li:nth-child(n+2) {
    margin-top: 0;
  }
  header .headerInn nav ul li a {
    font-size: 14px;
  }
  header .headerInn nav ul li a span {
    display: none;
  }
  .mvArea {
    margin-bottom: 130px;
  }
  .mvArea .sectionInner {
    padding-top: 25px;
    padding-bottom: 60px;
  }
  .mvArea .sectionInner .mvTxt {
    max-width: 440px;
  }
  .mvArea .sectionInner .mvTxt p.catch {
    border-radius: 6px;
    padding: 5px;
    margin-bottom: 25px;
    max-width: 380px;
    font-size: 14px;
  }
  .mvArea .sectionInner .mvTxt p.subTtl {
    font-size: 30px;
  }
  .mvArea .sectionInner .mvTxt h1:after {
    width: 292px;
    height: 45px;
    bottom: -25px;
  }
  .mvArea .sectionInner .mvTxt h1 {
    font-size: 60px;
  }
  .mvArea .sectionInner .mvTxt .mvLead {
    margin-top: 36px;
    margin-bottom: 20px;
  }
  .mvArea .sectionInner .mvTxt .feature {
    margin-bottom: 20px;
    gap: 10px;
  }
  .mvArea .sectionInner .mvTxt .feature li:before {
    width: 50px;
    height: 50px;
    left: 4px;
  }
  .mvArea .sectionInner .mvTxt .feature li {
    width: 214px;
    padding: 15px 5px 15px 60px;
    font-size: 12px;
    border-radius: 8px;
  }
  .mvArea .sectionInner .mvTxt .feature li span {
    font-size: 18px;
  }
  .mvArea .sectionInner .mvTxt .mvLink {
    gap: 10px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li a {
    padding: 10px 5px;
    font-size: 14px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li a span {
    font-size: 14px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li:first-child a span:before {
    left: -35px;
    width: 25px;
    height: 24px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li:last-child a span:before {
    left: -25px;
    width: 20px;
    height: 25px;
  }
  .mvArea .sectionInner .mvTxt .mvLink li:last-child a span {
    font-size: 14px;
  }
  .mvArea .sectionInner .mv {
    width: 630px;
    position: absolute;
    right: 0;
    top: 0;
  }
  .mvArea .sectionInner .pointImg {
    bottom: -60px;
    width: 804px;
  }
  .purposeArea {
    padding-bottom: 75px;
  }
  .purposeArea .sectionInner .purposeList li {
    padding: 130px 10px 30px;
  }
  .purposeArea .sectionInner .purposeList li p.purpose {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .purposeArea .sectionInner .purposeList li p.purpose + p {
    font-size: 14px;
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(1):before {
    width: 83px;
    height: 59px;
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(2):before {
    width: 61px;
    height: 67px;
    top: 30px;
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(3):before {
    width: 58px;
    height: 82px;
    top: 20px;
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(4):before {
    width: 69px;
    height: 60px;
  }
  .purposeArea .sectionInner .purposeList li:last-child:before {
    width: 64px;
    height: 58px;
  }
  .serviceArea {
    padding: 35px 0;
  }
  .serviceArea .sectionInner .serviceLead {
    font-size: 28px;
  }
  .serviceArea .sectionInner .serviceLead span {
    font-size: 28px;
  }
  .serviceArea .sectionInner .serviceList {
    margin-bottom: 25px;
  }
  .serviceArea .sectionInner .serviceList + p {
    font-size: 16px;
  }
  .serviceArea .sectionInner .serviceList + p a {
    font-size: 16px;
  }
  .reasonArea {
    padding: 50px 0;
  }
  .reasonArea .sectionInner .reasonList li:before {
    top: 30px;
  }
  .reasonArea .sectionInner .reasonList li {
    padding: 105px 10px 30px;
  }
  .reasonArea .sectionInner .reasonList li p.reason {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .reasonArea .sectionInner .reasonList li p.reason + p {
    font-size: 14px;
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(1):before {
    width: 59px;
    height: 49px;
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(2):before {
    width: 66px;
    height: 64px;
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(3):before {
    width: 66px;
    height: 57px;
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(4):before {
    width: 64px;
    height: 60px;
  }
  .reasonArea .sectionInner .reasonList li:last-child:before {
    width: 61px;
    height: 43px;
  }
  .flowArea {
    padding: 50px 0;
  }
  .flowArea .sectionInner .sectionTitle {
    margin-bottom: 30px;
  }
  .flowArea .sectionInner .flowList li:first-child img {
    width: 169px;
  }
  .flowArea .sectionInner .flowList li:nth-of-type(2) img {
    width: 141px;
  }
  .flowArea .sectionInner .flowList li:nth-of-type(3) img {
    width: 173px;
  }
  .flowArea .sectionInner .flowList li:nth-of-type(4) img {
    width: 187px;
  }
  .flowArea .sectionInner .flowList li:last-child img {
    width: 121px;
  }
  .flowArea .sectionInner .flowList li .img {
    margin-bottom: 20px;
    min-height: 89px;
  }
  .flowArea .sectionInner .flowList li p {
    font-size: 14px;
    margin-left: 0;
  }
  .linkArea .sectionInner:before {
    left: 45px;
    width: 113px;
    height: 251px;
    bottom: -70px;
  }
  .linkArea .sectionInner {
    padding: 35px 35px 35px 188px;
  }
  .linkArea .sectionInner .txt {
    width: 482px;
  }
  .linkArea .sectionInner .txt .lead {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .linkArea .sectionInner .link {
    width: 328px;
  }
  .linkArea .sectionInner .link li a {
    font-size: 16px;
    padding: 17px 5px;
    border-radius: 28px;
  }
  .linkArea .sectionInner .link li a span {
    font-size: 16px;
  }
  .linkArea .sectionInner .link li:first-child {
    margin-bottom: 15px;
  }
  .linkArea .sectionInner .link li:first-child a span:before {
    left: -35px;
    width: 25px;
    height: 24px;
  }
  .linkArea .sectionInner .link li:last-child a span:before {
    left: -25px;
    width: 20px;
    height: 25px;
  }
  footer .sectionInner {
    padding: 35px;
  }
  footer .sectionInner .footerLogo {
    margin-right: 40px;
  }
  footer .sectionInner .corporate {
    padding-right: 45px;
    margin-right: 40px;
  }
  footer .sectionInner .corporate .name {
    font-size: 16px;
    margin-bottom: 15px;
  }
  footer .sectionInner .corporate .address {
    font-size: 14px;
  }
  footer .sectionInner .information .phone {
    font-size: 15px;
    padding-left: 35px;
    margin-bottom: 15px;
  }
  footer .sectionInner .information .phone span {
    font-size: 14px;
  }
  footer .sectionInner .information .phone:before {
    width: 18px;
    height: 30px;
    left: 2px;
  }
  footer .sectionInner .information .mail {
    font-size: 18px;
    padding-left: 35px;
  }
  footer .sectionInner .information .mail:before {
    width: 25px;
    height: 20px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1179px) {
  .onlySpWide {
    display: none !important;
  }
  .onlyWide {
    display: none !important;
  }
  header .headerInn {
    padding: 17px 20px;
  }
  header .headerInn .headerLogo img {
    width: calc(134 / 768 * 100vw);
  }
  header .headerInn .headerLink {
    right: 13.33333vw;
  }
  header .headerInn .headerLink ul li a {
    height: calc(60 / 1600 * 100vw);
    padding-left: calc(14 / 1600 * 100vw);
    font-size: calc(14 / 1600 * 100vw);
  }
  header .headerInn .headerLink ul li a span {
    font-size: clamp(10px, calc(12 / 1920 * 100vw), 12px);
  }
  header .headerInn .headerLink ul li:first-child a span:before {
    left: calc(-25 / 1600 * 100vw);
    width: calc(25 / 1600 * 100vw);
    height: calc(24 / 1600 * 100vw);
  }
  header .headerInn .headerLink ul li:last-child a span:before {
    left: calc(-30 / 1600 * 100vw);
    width: calc(21 / 1600 * 100vw);
    height: calc(16 / 1600 * 100vw);
  }
  header .headerInn .menuBlk {
    right: calc(30 / 1600 * 100vw);
  }
  header .headerInn .hamburger {
    width: 55px;
    height: 40px;
  }
  header .headerInn .hamburger span {
    width: 55px;
    height: 4px;
  }
  header .headerInn .hamburger.is-open span {
    width: 55px;
  }
  header .headerInn .hamburger.is-open span:nth-child(1) {
    top: 20px;
  }
  header .headerInn .hamburger.is-open span:nth-child(3) {
    bottom: 15px;
  }
  header .headerInn nav {
    margin: calc(30 / 768 * 100vw) 0;
    padding-top: 10.66667vw;
    margin-top: 0;
  }
  header .headerInn nav ul {
    padding: 17px 20px;
  }
  header .headerInn nav ul li:nth-child(n+2) {
    margin-top: calc(20 / 768 * 100vw);
  }
  header .headerInn nav ul li a {
    font-size: calc(20 / 768 * 100vw);
  }
  header .headerInn nav ul li a span {
    font-size: calc(14 / 768 * 100vw);
  }
  .mvArea {
    margin-bottom: calc(130 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt {
    width: calc(500 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt p.catch {
    padding: calc(5 / 1600 * 100vw);
    margin-bottom: calc(25 / 1600 * 100vw);
    font-size: clamp(9px, calc(14 / 1920 * 100vw), 14px);
    border-radius: calc(6 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt h1:after {
    background-size: calc(292 / 1600 * 100vw);
    bottom: -10px;
    width: calc(292 / 1600 * 100vw);
    height: calc(45 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt h1 {
    margin-bottom: calc(30 / 1920 * 100vw);
  }
  .mvArea .sectionInner .mvTxt h1 span {
    font-size: clamp(18px, calc(48 / 1920 * 100vw), 48px);
  }
  .mvArea .sectionInner .mvTxt .feature {
    margin-bottom: calc(20 / 1600 * 100vw);
    gap: calc(10 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt .feature li:before {
    width: calc(28 / 1600 * 100vw);
    height: calc(28 / 1600 * 100vw);
    left: 4px;
  }
  .mvArea .sectionInner .mvTxt .feature li {
    width: 48%;
    padding: calc(35 / 1600 * 100vw) 0;
    border-radius: 8px;
    padding: calc(5 / 1600 * 100vw) calc(5 / 1600 * 100vw) calc(5 / 1600 * 100vw) calc(37 / 1600 * 100vw);
    font-size: clamp(8px, calc(12 / 1920 * 100vw), 12px);
  }
  .mvArea .sectionInner .mvTxt .mvLink {
    gap: calc(10 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt .mvLink li a span {
    font-size: clamp(9px, calc(14 / 1920 * 100vw), 14px);
  }
  .mvArea .sectionInner .mvTxt .mvLink li:first-child a span:before {
    left: calc(-30 / 1600 * 100vw);
    width: calc(25 / 1600 * 100vw);
    height: calc(24 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mvTxt .mvLink li:last-child a span:before {
    left: calc(-30 / 1600 * 100vw);
    width: calc(20 / 1600 * 100vw);
    height: calc(25 / 1600 * 100vw);
  }
  .mvArea .sectionInner .mv {
    width: calc(540 / 1600 * 100vw);
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
  }
  .mvArea .sectionInner .pointImg {
    bottom: calc(-55 / 1600 * 100vw);
    width: calc(804 / 1600 * 100vw);
    max-width: 804px;
  }
  .purposeArea {
    padding-bottom: calc(75 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(1):before {
    width: calc(83 / 1600 * 100vw);
    height: calc(59 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(2):before {
    width: calc(61 / 1600 * 100vw);
    height: calc(67 / 1600 * 100vw);
    top: calc(30 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(3):before {
    width: calc(58 / 1600 * 100vw);
    height: calc(82 / 1600 * 100vw);
    top: calc(20 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:nth-of-type(4):before {
    width: calc(69 / 1600 * 100vw);
    height: calc(60 / 1600 * 100vw);
  }
  .purposeArea .sectionInner .purposeList li:last-child:before {
    width: calc(64 / 1600 * 100vw);
    height: calc(58 / 1600 * 100vw);
  }
  .serviceArea {
    padding: calc(35 / 1600 * 100vw) 0;
  }
  .serviceArea .sectionInner .serviceLead {
    font-size: clamp(18px, calc(28 / 1920 * 100vw), 28px);
  }
  .serviceArea .sectionInner .serviceLead span {
    font-size: clamp(20px, calc(28 / 1920 * 100vw), 28px);
    letter-spacing: -0.05em;
  }
  .serviceArea .sectionInner .serviceList {
    margin-bottom: calc(25 / 1600 * 100vw);
  }
  .serviceArea .sectionInner .serviceList + p {
    font-size: clamp(14px, calc(16 / 1920 * 100vw), 16px);
  }
  .reasonArea {
    padding: calc(50 / 1600 * 100vw) 0;
  }
  .reasonArea .sectionInner .reasonList li:before {
    top: calc(35 / 1600 * 100vw);
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(1):before {
    width: calc(59 / 1600 * 100vw);
    height: calc(49 / 1600 * 100vw);
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(2):before {
    width: calc(66 / 1600 * 100vw);
    height: calc(64 / 1600 * 100vw);
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(3):before {
    width: calc(66 / 1600 * 100vw);
    height: calc(57 / 1600 * 100vw);
  }
  .reasonArea .sectionInner .reasonList li:nth-of-type(4):before {
    width: calc(64 / 1600 * 100vw);
    height: calc(59 / 1590 * 100vw);
  }
  .reasonArea .sectionInner .reasonList li:last-child:before {
    width: calc(61 / 1600 * 100vw);
    height: calc(43 / 1600 * 100vw);
  }
  .flowArea {
    padding: calc(50 / 1600 * 100vw) 0;
  }
  .flowArea .sectionInner .sectionTitle {
    margin-bottom: calc(30 / 1600 * 100vw) 0;
  }
  .flowArea .sectionInner .flowList li:first-child img {
    width: calc(169 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li:nth-of-type(2) img {
    width: calc(141 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li:nth-of-type(3) img {
    width: calc(173 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li:nth-of-type(4) img {
    width: calc(187 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li:last-child img {
    width: calc(121 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li .img {
    margin-bottom: calc(15 / 1600 * 100vw);
    min-height: calc(89 / 1600 * 100vw);
  }
  .flowArea .sectionInner .flowList li p {
    font-size: clamp(10px, calc(14 / 1920 * 100vw), 14px);
    margin-left: 0;
  }
  .linkArea {
    margin-bottom: calc(45 / 1600 * 100vw);
  }
  .linkArea .sectionInner:before {
    left: calc(44 / 1600 * 100vw);
    width: calc(113 / 1600 * 100vw);
    height: calc(251 / 1600 * 100vw);
    bottom: calc(-100 / 1600 * 100vw);
  }
  .linkArea .sectionInner {
    padding: calc(35 / 1600 * 100vw) calc(35 / 1600 * 100vw) calc(35 / 1600 * 100vw) calc(188 / 1600 * 100vw);
  }
  .linkArea .sectionInner .txt .lead {
    font-size: clamp(12px, calc(18 / 1920 * 100vw), 18px);
    margin-bottom: calc(10 / 1600 * 100vw);
  }
  .linkArea .sectionInner .link li {
    width: calc(328 / 1600 * 100vw);
  }
  .linkArea .sectionInner .link li a {
    border-radius: 22px;
    font-size: clamp(9px, calc(16 / 1920 * 100vw), 16px);
    padding: calc(13 / 1600 * 100vw) calc(5 / 1600 * 100vw);
  }
  .linkArea .sectionInner .link li a span {
    font-size: clamp(9px, calc(16 / 1920 * 100vw), 16px);
  }
  .linkArea .sectionInner .link li:first-child {
    margin-bottom: calc(15 / 1600 * 100vw);
  }
  .linkArea .sectionInner .link li:first-child a span:before {
    left: calc(-35 / 1600 * 100vw);
    width: calc(25 / 1600 * 100vw);
    height: calc(24 / 1600 * 100vw);
  }
  .linkArea .sectionInner .link li:last-child a span:before {
    left: calc(-30 / 1600 * 100vw);
    width: calc(20 / 1600 * 100vw);
    height: calc(24 / 1600 * 100vw);
  }
  footer .sectionInner {
    padding: calc(35 / 1600 * 100vw) calc(30 / 1600 * 100vw);
  }
  footer .sectionInner .footerLogo {
    width: calc(185 / 1600 * 100vw);
    margin-right: calc(40 / 1600 * 100vw);
  }
  footer .sectionInner .corporate {
    padding-right: calc(45 / 1600 * 100vw);
    margin-right: calc(40 / 1600 * 100vw);
  }
  footer .sectionInner .corporate .name {
    font-size: clamp(12px, calc(16 / 1920 * 100vw), 16px);
    margin-bottom: calc(15 / 1600 * 100vw);
  }
  footer .sectionInner .corporate .address {
    font-size: clamp(11px, calc(14 / 1920 * 100vw), 14px);
  }
  footer .sectionInner .information .phone {
    font-size: clamp(12px, calc(15 / 1920 * 100vw), 15px);
    padding-left: calc(36 / 1600 * 100vw);
    margin-bottom: calc(15 / 1600 * 100vw);
  }
  footer .sectionInner .information .phone span {
    font-size: clamp(12px, calc(14 / 1920 * 100vw), 14px);
  }
  footer .sectionInner .information .phone:before {
    width: calc(18 / 1600 * 100vw);
    height: calc(30 / 1600 * 100vw);
    left: calc(2 / 1600 * 100vw);
  }
  footer .sectionInner .information .mail {
    font-size: clamp(12px, calc(18 / 1920 * 100vw), 18px);
    padding-left: calc(35 / 1600 * 100vw);
  }
  footer .sectionInner .information .mail:before {
    width: calc(25 / 1600 * 100vw);
    height: calc(20 / 1600 * 100vw);
  }
}
