@charset "UTF-8";

/* ---------------------------------------------
 Reset
--------------------------------------------- */
/* @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;900&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&display=swap'); */
html,
body {
  margin: 0 auto;
  padding: 0;
}

html *,
body * {
  box-sizing: border-box;
}

p {
  margin: 0px;
}

body {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  color: #000;
  overflow-wrap: break-word;
  background: #fff;
}

a {
  color: #000;
  text-decoration: none;
}

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

.btn {
  transition: 0.5s;
  cursor: pointer;
}

.btn:hover {
  transform: scale(1.02, 1.02);
}

body {
  position: relative;
}

.header {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  padding: 50px 77px;
  z-index: 3;
}

.header-body {
  display: flex;
  width: 100%;
  max-width: 1763px;
  margin: 0 auto;
  justify-content: space-between;
}

.header-btn {
  display: flex;
  gap: 20px;
  position: fixed;
  right: 77px;
}

.contact-btn {
  width: 391.2926px;
}

.phone-btn {
  width: 372.161px;
}

.header-logo {
  width: 309.2716px;
}

/* ====================================sec01======================== */
.hero {
  display: flex;
}

.sec01 {
  position: relative;
  padding-top: 70px;
  padding-bottom: 100px;
}

.sec01::before {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #0bbbec;
  opacity: 0.1;
  left: 0;
  top: 0;
  z-index: -1;
  content: "";
}

.sec01::after {
  background: url(../img/sec01/bg.png);
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 890px;
}

.sec01-title {
  font-weight: 700;
  font-size: 50px;
  letter-spacing: 0.1em;
  line-height: 87.5px;
  text-align: center;
  position: relative;
  width: fit-content;
}

.sec01-title p {
  position: relative;
  z-index: 2;
}

.sec01-title p::before {
  /* position: absolute;
  z-index: -1;
  left: 50%;
  transform: translate(-50%, -40%);
  top: 40%;
  content: "Digital Posting";
  color: #fff;   
  font-family: 'Jost', sans-serif;
  font-weight: 500; 
  font-size: 131.18px;
  transform: translate(0.75,0.75); */
}

.sec01-title::before {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -40%);
  top: 40%;
  content: "";
  background: 50% no-repeat url(../img/sec01/en-title.png);
  width: 683.6416px;
  z-index: 1;
  background-size: cover;
  height: 101.6167px;
}

.sec01 .sec-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

.sec01-txt {
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 35px;
  text-align: center;
}

.sec01-txt span {
  background: #0052ff;
  color: #fff;
  border-radius: 7.261px;
  padding: 0px 15px;
  margin-right: 5px;
  font-size: 23px;
  letter-spacing: 0.1em;
  padding-bottom: 1.5px;
}

.sec01-title-group {
  margin-bottom: 40px;
}

.cta {
  background: 50% no-repeat url(../img/cta/bg.png);
  background-size: cover;
  padding: 130px 20px;
}

.cta-group {
  display: flex;
  gap: 97px;
  justify-content: center;
}

.cta-group .contact-btn {
  width: 448.7002px;
  position: relative;
}

.cta-group .phone-btn {
  width: 426.7618px;
  position: relative;
}

.cta-group p {
  text-align: center;
  margin-bottom: 20px;
  letter-spacing: 0.05em;
  font-size: 25px;
  font-weight: 600;
}

.sec01-img {
  display: flex;
  margin-top: 30px;
}

.sec02 {
  padding: 150px 20px;
  position: relative;
}

.sec02::before {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #CCCDD9;
  opacity: 0.3;
  z-index: -1;
  content: "";
}

.sec02 .sec-body {
  max-width: 1200px;
  width: 100%;
  ;
  margin: 0 auto;
}

.sec02-title-en {
  /* background: linear-gradient(90deg, #0052ff 45%, #227fbc 55%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-family: 'Jost', sans-serif;
  font-weight: 500; 
  font-size: 131.18px;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 20px;
  line-height: 96.18px; */
  display: flex;
  justify-content: center;
}

.sec02-title-en img {
  width: 342.6665px;
}

.sec02-title {
  text-align: center;
  font-size: 30px;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #666666;
}

.sec02-content {
  margin-top: 60px;
}

.sec02-circle-group {
  display: flex;
  gap: 35px;
  justify-content: center;
  width: 100%;
}

.circle-item {
  position: relative;
  width: 237.4858px;
  height: 237.4858px;
  border-radius: 50%;
  z-index: 0;
}

.circle-item::before {
  content: '';
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border-radius: 50%;
  background: linear-gradient(90deg, #205DFF 0%, #3D8AC8 100%);
  z-index: -1;
}

.circle-item-body {
  width: 100%;
  height: 100%;
  background: white;
  position: relative;
  z-index: 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 21.09px;
  letter-spacing: 0.08em;
  font-weight: 700;
  line-height: 31.08px;
  flex-direction: column;
  color: #333333;
}

.circle-item-flex {
  display: flex;
  align-items: center;
}

.circle-item-body p {
  font-size: calc(21.09px * 1.75);
  color: #f55150;
  line-height: calc(29px * 1.75);
}

.circle-item02 .circle-item-body p {
  font-size: calc(20.42px * 1.75);
  line-height: calc(29px * 1.75);
}

.circle-item03 .circle-item-body p {
  font-size: calc(20.42px * 1.75);
  line-height: calc(29px * 1.75);
}

.circle-item04 .circle-item-body {
  font-size: 20.42px;
  line-height: 30.14px;
}

.circle-item04 .circle-item-body p {
  font-size: calc(20.42px * 1.75);
  line-height: calc(27px * 1.75);
}

/* .circle-item-body p span{
  color: #f55150;
  font-size:175%;
} */
.circle-item-body::after {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #CCCDD9;
  opacity: 0.3;
  border-radius: 50%;
  content: "";
  z-index: -1;
}

.sec02-txt {
  margin-top: 40px;
  font-size: 30px;
  letter-spacing: 0.05em;
  line-height: 52.5px;
  text-align: center;
  font-weight: 500;
}

.sec02-txt p+p {
  margin-top: 10px;
}

.sec02-txt span {
  background: #FFFFFF;
  border-radius: 9.323px;
  color: #e95750;
  padding: 0px 18px;
  margin-right: 8px;
  padding-bottom: 2px;
  font-weight: 700;
}

.sec02-txt span.comma-sp {
  margin-right: -10px;
  padding: 0;
}

.sec02-txt span.sec02-txt-fist {
  padding-left: 60px;
  position: relative;
}

.sec02-txt-fist::before {
  content: "";
  width: 29.56px;
  height: 56.7491px;
  background: 50% no-repeat url(../img/sec02/icon-txt.png);
  background-size: cover;
  position: absolute;
  left: 25px;
  top: -20px;
}

.sec02-ex {
  width: 100%;
  background: linear-gradient(90deg, #205DFF 0%, #3D8AC8 100%);
  padding: 3px;
  margin: 30px auto 30px auto;
}

.sec02-ex-content {
  width: 100%;
  height: 100%;
  background: #fff;
  position: relative;
  padding: 30px;
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-style: normal;
}

.sec02-ex-circle p {
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 65.68px;
  letter-spacing: 0.05em;
  color: #fff;
  transform: scale(0.75, 0.75);
}

.sec02-ex-content::before {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #CCCDD9;
  opacity: 0.3;
  content: "";
}

.ex-img,
.sec-ex-txt-group {
  position: relative;
  z-index: 2;
}

.sec-ex-title {
  font-size: 25px;
  letter-spacing: 0.05em;
  line-height: 43px;
  font-weight: 700;
}

.sec-ex-txt {
  font-size: 17px;
  letter-spacing: 0.05em;
  line-height: 30px;
  margin-top: 15px;
  font-weight: 400;
}

.ex-img {
  width: 425.7429px;
}

/* .ex-img,
.sec-ex-txt-group{
  position: relative;
  z-index: 2;
} */
.sec02-ex-circle {
  position: absolute;
  left: -3px;
  top: calc(-125.2863px / 2);
  width: 125.2863px;
  height: 125.2863px;
  border-radius: 50%;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(90deg, #205DFF 0%, #3D8AC8 100%);
}

/* .sec02-ex-circle img {
  width: 63.2021px;
} */
.sec02-icon-tile {
  font-size: 20px;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: center;
  align-items: end;
  position: relative;
  width: 100%;
  font-weight: 500;
}

.sec02-icon-tile::after,
.sec02-icon-tile::before {
  background: 100% no-repeat url(../img/sec02/icon-title.svg);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 17.8309px;
  width: 10.0556px;
}

.sec02-icon-tile::after {
  /* margin-left: 10px; */
}

.sec02-icon-tile::before {
  margin-right: 10px;
  transform: scaleY(-1);
}

.sec02-icon-group {
  margin-top: 45px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 45px 7px;
  flex-wrap: wrap;
}

.sec02-icon-item-bg {
  background: #fff;
  opacity: 0.6;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: 10.63px;
  z-index: -1;
}

.sec02-icon-item {
  position: relative;
  padding: 0px 17px;
  width: 193.6998px;
  height: 266.4556px;
  border-radius: 10.63px;
  text-align: center;
}

.sec02 .icon-img {
  width: 117.6443px;
  height: 117.6443px;
  transform: translateY(-15px);
}

.sec02 .icon-title {
  font-size: 20px;
  letter-spacing: 0.08em;
  color: #0052ff;
  margin-top: -10px;
  font-weight: 700;
}

.item04 .icon-title {
  margin: -10px -7px 0px -7px;
}

.icon-title-mg {
  margin: 0 -8px;
}

.sec02 .icon-txt {
  display: flex;
  margin-top: 5px;
  gap: 5px;
}

.sec02 .icon-txt:first-child {
  margin-top: 10px;
}

.sec02 .icon-txt img {
  width: 14.6904px;
  height: 16.6904px;
  padding-top: 2px;
}

.icon-txt p {
  line-height: 19.75px;
  font-size: 13px;
  letter-spacing: 0.05em;
  text-align: left;
  font-weight: 500;
}

.sec02-icon-item06 .icon-txt p {
  line-height: 16px;
}

.icon-txt p span {
  color: #e95750;
}

.icon-txt p span.comma-sp {
  color: #000;
}

.sec02 .item03 .icon-img {
  width: 128.9776px;
  height: 117.6443px;
}

.sec03 {
  padding: 100px 20px;
  position: relative;
}

.sec03::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -30px;
  width: 26.5063px;
  height: 42.8179px;
  background: 100% no-repeat url(../img/sec03/arrow.svg);
  background-size: contain;
  content: "";
}

.sec03 .sec-body {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.sec03-title {
  text-align: center;
}

.sec03 .sec03-title img {
  width: 445.6533px;
  margin: 0 auto;
}

.sec03-title-sub {
  font-size: 30px;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: center;
  margin-top: 20px;
  font-weight: 500;
}

.sec03-title-sub p {
  border: 1px solid #e62234;
  border-radius: 9.32px;
  padding: 0 10px 0px 70px;
  position: relative;
  color: #e95750;
  margin-right: 10px;
  font-weight: 700;
  padding-bottom: 2px;
}

.sec03-title-sub p span {
  font-family: "acumin-variable", sans-serif;
  font-variation-settings: "slnt" 0, "wdth" 100, "wght" 700;
}

.sec03-title-sub p::before {
  background: 50% no-repeat url(../img/sec03/icon-title.png);
  background-size: cover;
  display: inline-block;
  height: 45.021px;
  width: 45.7201px;
  content: "";
  margin-right: 5px;
  position: absolute;
  top: -10px;
  left: 10px;
}

.sec03-content {
  display: flex;
  width: 100%;
  margin-top: 30px;
}

.sec03-item01,
.sec03-item02 {
  width: 50%;
  padding: 30px 0px 0px 0px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sec03-item-title {
  width: 206.1228px;
  height: 47.0814px;
  background: linear-gradient(90deg, #2260ff 0%, #3d8ac9 100%);
  color: #fff;
  font-size: 30px;
  letter-spacing: 0.05em;
  border-radius: 23.54px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 8px;
  margin: 0 auto 25px auto;
  font-weight: 500;
}

.sec03-item01 img {
  width: 553.6277px;
}

.sec03-item02 {
  position: relative;
}

.sec03-item02::before {
  background: #0bbbec;
  opacity: 0.1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  content: "";
}

.sec03-item02 img {
  width: 394.735px;
  margin: 0 auto;
}

.sec03-item02-txt p {
  font-size: 17px;
  line-height: 30px;
  letter-spacing: 0.05em;
}

.sec03-item02-txt {
  margin-top: 30px;
}

.sec04 {
  padding: 100px 20px;
  position: relative;
}

.sec04-note-body::before,
.sec04::before {
  background: #0bbbec;
  opacity: 0.1;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  left: 0;
  top: 0;
  content: "";
}

.sec04-title {
  position: relative;
}

/* .sec04-title::before{
    position: absolute;
    left: 50%;
    transform: translate(-50%, -40%);
    top: 40%;
    z-index: -1;
    font-family: 'Jost', sans-serif;
    font-weight: 500;
    font-style: normal;
    content: "Introduction Image";
    font-size: 131.18px;
    letter-spacing: 0.05em;
} */
.sec04-title p {
  font-size: 50px;
  letter-spacing: 0.1em;
  text-align: center;
  position: relative;
  font-weight: 700;
}

.sec04-title p::before {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -40%);
  top: 40%;
  content: "";
  background: 50% no-repeat url(../img/sec04/title.png);
  width: 887.8037px;
  z-index: -1;
  background-size: cover;
  height: 99.7607px;
}

.sec04-item-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1023.36px;
  width: 100%;
  margin: 0 auto;
  gap: 25px 0px;
}

.sec04-item {
  width: 299px;
}

.sec04-item-img {
  height: 298.8888px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: end;
}

.sec04-item-title p {
  font-size: 23px;
  letter-spacing: 0.1em;
  background: #0052ff;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 7.26px;
  width: 285px;
  height: 34.3364px;
  font-weight: 500;
}

.sec04-item-txt p {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 26px;
}

.sec04-item-title {
  margin-top: 25px;
}

.sec04-item-txt {
  margin-top: 18px;
}

.item01 .sec04-item-img img {
  width: 258.8453px;
}

.item02 .sec04-item-img img {
  width: 297.6677px;
}

.item06 .sec04-item-img img {
  width: 252.2721px;
}

.item06 .sec04-item-img {
  height: 320.4285px;
}

.sec04-item-img img {
  height: auto;
}

.sec04-note {
  max-width: 1023.3583px;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #2260ff 0%, #3d8ac9 100%);
  padding: 2.5641px;
  border-radius: 15.515px;
  margin: 60px auto 0px auto;
  padding: 2.56px;
}

.sec04-note-body {
  width: 100%;
  background: #fff;
  z-index: 2;
  position: relative;
  border-radius: 13px;
}

.sec04-note-txt p.sec04-note01 {
  color: #f55150;
  font-size: 29.91px;
  line-height: 38.23px;
  letter-spacing: 0.08em;
  position: relative;
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
  font-weight: 700;
}

.sec04-note-txt p.sec04-note01::before {
  background: 50% no-repeat url(../img/sec04/icon-note.png);
  background-size: cover;
  content: "";
  display: inline-block;
  height: 11.2207px;
  width: 12.7992px;
}

.sec04-note-txt {
  padding: 40px 0px;
  text-align: center;
}

.sec04-note-txt .sec04-note02 {
  font-size: 21.37px;
  letter-spacing: 0.1em;
  line-height: 22.22px;
}

.sec04-note-txt .sec04-note02 span {
  letter-spacing: -10px;
}

.sec04-item06,
.sec04-item04,
.sec04-item03 {
  position: relative;
}

.sec04 .sec-body {
  max-width: 1200px;
  margin: 0 auto;
}

.sec04-item03::before {
  background: 50% no-repeat url(../img/sec04/icon1.png);
  background-size: cover;
  content: "";
  display: inline-block;
  height: 93.2328px;
  width: 42.1428px;
  position: absolute;
  top: 37%;
  transform: translateY(-37%);
  left: -40px;
}

.sec04-item04::before {
  background: 50% no-repeat url(../img/sec04/icon2.png);
  background-size: cover;
  content: "";
  display: inline-block;
  height: 93.2328px;
  width: 64.2143px;
  position: absolute;
  top: 10%;
  transform: translateY(-10%);
  right: -40px;
}

.sec04-item06::before {
  background: 50% no-repeat url(../img/sec04/icon3.png);
  background-size: cover;
  content: "";
  display: inline-block;
  height: 93.2328px;
  width: 64.2143px;
  position: absolute;
  top: 63%;
  transform: translateY(-63%);
  left: -68px;
}

.sec05 {
  padding: 185px 0px 200px 0px;
  /* background: 100% no-repeat url(../img/sec05/bg.png);
  background-size: cover; */
  /* background-image: url(../img/sec05/bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; */
  position: relative;
}

/* .sec05::before{
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 1336.9759px;
   background: 100% no-repeat url(../img/sec05/bg.png);
  background-size: cover; 
  top: 0;
  left: 0;
  content: "";
} */
.sec05-bg {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 50%;
  left: 0;
}

.sec05-bg01 {
  top: 0;
}

.sec05-bg.sec05-bg02 {
  top: 50%;
}

/* .sec05::before{
  position: absolute;
  z-index: -1;
  width: 100%;
  left: 0;
  background: 100% no-repeat url(../img/sec05/bg.png);
  background-size: cover;
  content: "";
  height: 100%;
  top: 0;
} */
.sec05-title-en {
  /* background: linear-gradient(90deg, #0052ff 45%, #227fbc 55%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; 
  background-clip: text;
  color: transparent;
  font-family: 'Jost', sans-serif;
  font-weight: 500; 
  font-size: 131.18px;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 20px;
  line-height: 96.18px; */
  display: flex;
  justify-content: center;
}

.sec05-title-en {
  background: linear-gradient(90deg, #0052ff 45%, #227fbc 55%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-size: 131.18px;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 10px;
  line-height: 96.18px;
  /* transform: scale(0.75, 0.75); */
}

.sec05-title-en img {
  width: 321.9072px;
}

.sec02 .sec05-title-en img {
  width: 342.6665px;
}

.flow .sec05-title-en img {
  width: 207.9805px;
}

.contact .sec05-title-en img {
  width: 352.8018px;
}

.sec05-title {
  font-size: 30px;
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: 700;
  color: #666666;
}

.sec05-item {
  position: relative;
  min-height: 404.4711px;
  max-width: 1446.5801px;
  width: 100%;
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 45px;
}

.sec05-item04,
.sec05-item03,
.sec05-item02 {
  margin-top: 80px;
}

.sec05-item::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url(../img/sec05/item-bg.png) 50% no-repeat;
  background-size: contain;
}

.sec05-item03 .sec05-item::before,
.sec05-item01 .sec05-item::before {
  transform: rotate(180deg);
}

.sec05-item-group .sec05-item04,
.sec05-item-group .sec05-item02 {
  display: flex;
  justify-content: end;
}

.sec05-item03 .sec05-item {
  padding-right: 30px;
  gap: 0;
}

.sec05-item03 .sec05-item-img {
  padding-right: 17px;
}

.sec05-item04 .sec05-item,
.sec05-item02 .sec05-item {
  justify-content: flex-start;
  padding-left: 140px;
}

.sec05-item::after {
  position: absolute;
  color: #0bbbec;
  opacity: 0.1;
  font-size: 131.18px;
  letter-spacing: 0.05em;
  font-family: 'Jost', sans-serif;
  top: -105px;
  font-weight: 500;
  transform: scale(0.75, 0.75);
}

.sec05-item03 .sec05-item::after {
  content: "Hybrid";
  right: -34px;
}

.sec05-item01 .sec05-item::after {
  content: "Targeting";
  right: -74px;
}

.sec05-item02 .sec05-item::after {
  content: "Experience";
  left: -85px;
  top: -85px;
}

.sec05-item04 .sec05-item::after {
  content: "Support";
  left: -80px;
  top: -80px;
}

.sec05-item04 .sec05-item-left {
  padding-left: 40px;
}

.sec05-item-group {
  margin-top: 90px;
}

.sec05-item-title-group {
  display: flex;
}

.sec05-item04 .sec05-item-num {
  margin-right: 25px;
}

.sec05-item03 .sec05-item-num {
  margin-right: 20px;
}

.sec05-item-num {
  font-family: "Jost", sans-serif;
  font-weight: 300;
  font-style: normal;
  letter-spacing: 0.05em;
  font-size: 69.03px;
  color: #fff;
  line-height: 55px;
  margin-right: 35px;
  /* transform: scale(0.75, 0.75); */
  line-height: 33px;
}

.sec05-item-num img {
  width: 45.8711px;
}

.sec05-item02 .sec05-item-num img {
  width: 56.1221px;
}

.sec05-item03 .sec05-item-num img {
  width: 55.8633px;
}

.sec05-item04 .sec05-item-num img {
  width: 58.1411px;
}

.sec05-item-title {
  font-size: 30px;
  letter-spacing: 0.05em;
  line-height: 44px;
  color: #fff;
  font-weight: 700;
}

.sec05-item-txt {
  font-size: 17px;
  letter-spacing: 0.05em;
  line-height: 33px;
  color: #fff;
  margin-top: 20px;
}

.sec05-item-left {
  width: 499.3643px;
}

.sec05-item02 .sec05-item-left {
  width: 481.0898px;
  margin-left: 70px;
}

.sec05-item03 .sec05-item-left {
  width: 606.87px;
}

.sec05-item-img img {
  position: relative;
  z-index: 2;
}

.sec05-item01 .sec05-item-img img {
  width: 559.4778px;
  transform: translateX(5px);
}

.sec05-item03 .sec05-item-img img {
  width: 470.1195px;
}

.sec05-item02 .sec05-item-img img {
  width: 338.1077px;
}

.sec05-item04 .sec05-item-img img {
  width: 375.1645px;
}

.sec06 {
  padding: 100px 20px;
  margin-top: -100px;
  position: relative;
}

.sec06::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -30px;
  width: 26.5063px;
  height: 42.8179px;
  background: 100% no-repeat url(../img/sec03/arrow.svg);
  background-size: contain;
  content: "";
}

.sec06 .sec-body {
  max-width: 1200px;
  margin: 0 auto;
}

.sec06-title p {
  font-size: 50px;
  letter-spacing: 0.1em;
  position: relative;
  z-index: 2;
  text-align: center;
  font-weight: 700;
}

.sec06-title p::before {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -10px);
  top: -14px;
  content: "";
  background: 50% no-repeat url(../img/sec06/title.png);
  width: 400.9082px;
  z-index: -1;
  background-size: cover;
  height: 82.6426px;
}

.sec06-title-sub {
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 35px;
  text-align: center;
  font-weight: 500;
}

.sec06-title-sub span {
  color: #F55150;
}

.sec06-title-sub span.comma-sp {
  color: #000;
}

.sec06-title {
  margin-bottom: 40px;
}

.sec06-content {
  margin-top: 80px;
}

.offLine-title {
  font-size: 30px;
  letter-spacing: 0.05em;
  color: #fff;
  background: transparent linear-gradient(90deg, #0052FF 0%, #227FBC 100%) 0% 0% no-repeat padding-box;
  width: 100%;
  height: 59.575px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 31px;
}

.offLine-body {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 19px;
  position: relative;
  padding: 50px 0px;
  flex-wrap: wrap;
}

.sec06-offLine02 .offLine-body {
  gap: 30px;
}

.offLine-body::before {
  background: #0bbbec;
  opacity: 0.1;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  left: 0;
  content: "";
}

.offLine-item {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 207.2076px;
  height: 119.2013px;
  background: #ffffff;
  border-radius: 8.27px;
}

.sec06-offLine02 .offLine-item {
  width: 545.5305px;
  height: 123.3795px;
  gap: 15px;
}

.offLine-item img {
  width: 48.0917px;
}

.offLine-item02 img {
  width: 65.1435px;
}

.offLine-item03 img {
  width: 54.6189px;
}

.offLine-item04 img {
  width: 77.7809px;
}

.offLine-item05 img {
  width: 69.2655px;
}

.offLine-item07 img {
  width: 74.9385px;
}

.offLine-item08 img {
  width: 82.9175px;
}

.offLine-item p {
  font-size: 20px;
  line-height: 25px;
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: 600;
}

.offLine-img {
  margin: 20px 0px 30px 0px;
}

.flow {
  padding: 100px 20px 80px 20px;
  position: relative;
  overflow: hidden;
}

.flow::after {
  background: 50% no-repeat url(../img/flow/bg.png);
  background-size: cover;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 885.9125px;
  top: 0;
}

.flow .sec-body {
  max-width: 1200px;
  margin: 0 auto;
}

.flow-title-en {
  background: linear-gradient(90deg, #0052ff 45%, #227fbc 55%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-size: 131.18px;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 20px;
  line-height: 96.18px;
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

.flow-title-en img {
  width: 207.9805px;
}

.flow-title {
  font-size: 30px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #666666;
  font-weight: 700;
}

.flow-img {
  margin-top: 85px;
  display: flex;
  justify-content: center;
  width: 100%;
}

.flow .flow-img img {
  width: 1165.0654px;
  margin: 0 auto;
}

.faq {
  padding: 100px 20px;
  position: relative;
}

.faq::before {
  background: #cccdd9;
  opacity: 0.3;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
}

.faq .sec-body {
  max-width: 1200px;
  margin: 0 auto;
}

.faq-title p {
  font-size: 50px;
  letter-spacing: 0.1em;
  position: relative;
  z-index: 2;
  text-align: center;
  font-weight: 700;
}

.faq-title p::before {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -10px);
  top: -10px;
  content: "";
  background: 100% no-repeat url(../img/faq/title.png);
  width: 185.749px;
  z-index: -1;
  background-size: contain;
  height: 106.9434px;
}

.faq .faq-title p::before {
  top: -20px;
}

.faq-title-sub {
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 35px;
  text-align: center;
  margin-top: 40px;
  font-weight: 500;
}

.faq-item {
  margin-top: 40px;
}

.faq-item:first-child {
  margin-top: 65px;
}

.faq-head-group {
  display: flex;
  gap: 5px;
  align-items: center;
}

.faq-head {
  padding-bottom: 20px;
  border-bottom: 1px solid #424242;
  position: relative;
  cursor: pointer;
}

.faq-answer {
  display: none;
}

.faq-item .faq-head::before {
  opacity: 1;
  z-index: 1;
  background-image: url(../img/faq/open.png);
  background-size: contain;
  width: 25.702px;
  height: 11.2148px;
}

.faq-item .faq-head::after {
  opacity: 0;
  z-index: 2;
  background-image: url(../img/faq/close.png);
  background-size: contain;
  width: 21px;
  height: 21px;
}

.faq-item .faq-head::after {
  top: calc(50% - 20px);
}

.faq-item .faq-head::before {
  top: calc(50% - 10px);
}

.faq-item .faq-head::after,
.faq-item .faq-head::before {
  content: "";
  position: absolute;
  right: 0;
  transition: background-image 0.3s ease, opacity 0.3s ease;
}

.faq-item.active .faq-head::after {
  opacity: 1;
}

.faq-item.active .faq-head::before {
  opacity: 0;
}

.faq-answer-a,
.faq-head-q {
  background: linear-gradient(90deg, #0052ff 45%, #227fbc 55%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  font-size: 50px;
  letter-spacing: 0.05em;
  line-height: 40px;
  transform: scale(0.75, 0.75);
}

.faq-head-txt {
  color: #424242;
  font-size: 25px;
  letter-spacing: 0.05em;
  font-weight: 700;
}

/* .faq-head-group{
  position: relative;
}
.faq-head-group::before{
  background: 100% no-repeat url(../img/faq/q.png);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 27.0752px;
  width: 36.2627px;
  margin-right: 20px;
} */
.faq-answer-txt {
  font-size: 20px;
  line-height: 35px;
  letter-spacing: 0.05em;
}

/* .faq-answer-group::before{
  background: 100% no-repeat url(../img/faq/a.png);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 27.75px;
  width: 32.0996px;
  margin-right: 20px;
} */
.faq-answer-group {
  display: flex;
  margin-top: 20px;
  gap: 5px;
  align-items: center;
}

.contact {
  padding: 100px 20px;
}

form#c_form {
  max-width: 1200px;
  width: 100%;
  margin: 55px auto 0px auto;
  border-radius: 33.96px;
  box-shadow: 0px 0px 8px rgb(192, 210, 209);
  padding: 90px 78.5px;
}

.title-input {
  font-size: 25px;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
  font-weight: 500;
}

.title-input span {
  color: #ef0304;
  padding-left: 8px;
}

.form-item {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
}

.form-item.form-item-checkbox {
  margin-top: 75px;
}

textarea,
input {
  border: 1px solid #000;
  border-radius: 9.1px;
  padding: 0px 22px;
  color: #000;
  font-size: 25px;
  letter-spacing: 0.05em;
  line-height: 68px;
  box-sizing: border-box;
  font-weight: 500;
}

input {
  height: 68px;
}

input::placeholder {
  color: #cacaca;
  font-size: 25px;
  letter-spacing: 0.05em;
  line-height: normal;
  font-weight: 500;
}

input:focus {
  outline: none;
  border: 1px solid #000;
}

.radio-group {
  display: flex;
  gap: 50px;
}

.radio-group label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 25px;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.radio-group label span {
  line-height: 25px;
}

input[type="submit"] {
  background: #e95750;
  color: #fff;
  font-size: calc(43.07px * 0.75);
  letter-spacing: 0.1em;
  width: 475.3748px;
  height: 80.8692px;
  text-align: center;
  position: relative;
  border: none;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 9px;
  border-radius: 0;
}

.btn-submit {
  width: fit-content;
  position: relative;
}

.btn-submit::after {
  position: absolute;
  top: calc(50% + 7px);
  transform: translateY(calc(-50% - 7px));
  right: 20px;
  content: "";
  width: 13px;
  height: 24px;
  background: 50% no-repeat url(../img/form/arrow.png);
  background-size: cover;
}

.btn-sub {
  margin: 95px auto 0px auto;
  width: 475.3748px;
}

.form-note {
  font-size: 21.06px;
  letter-spacing: 0.05em;
  margin-top: 15px;
  font-weight: 500;
}

.footer {
  position: relative;
  padding: 105px 0px;
  background: rgba(0, 0, 0, 0.7);
}

/* .footer::before{
  background: #000;
  opacity: 0.7;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  content: "";
} */
.footer-body {
  max-width: 1500px;
  width: calc(100% - 100px);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: end;
}

.footer-logo {
  width: 300px;
}

.footer-left {
  width: calc(100% - 500px);
}

.footer-left01 {
  color: #fff;
  letter-spacing: 0.1em;
  position: relative;
  padding-bottom: 20px;
  margin-top: 30px;
  font-size: 17px;
  line-height: 1.6;
  color: #fff;
}

.footer-left01::before {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #fff;
  width: 50%;
  height: 1px;
  content: "";
}

.footer-left02 {
  padding-top: 20px;
  letter-spacing: 0.1em;
  font-size: 17px;
  line-height: 1.6;
  color: #fff;
}

.footer-phone img {
  width: 400px;
  display: block;
}

.footer-btn {
  width: 100%;
  height: auto;
  /* background: #e95750;
  border-radius: 57.5px;
  color: #fff;
  font-size: 42.41px;
  letter-spacing: 0.05em;
  font-family: "a-otf-gothic-mb101-pr6n", sans-serif;
  font-style: normal;
  font-weight: 300; */
}

.footer-btn img {
  display: block;
}

.copyright {
  text-align: center;
  font-size: 18px;
  color: #fff;
  margin: 20px 0px 0px 0px;
  letter-spacing: 0.1em; /* ← 文字間を広げる */
}

.footer-right {
  width: 475px;
  display: flex;
  flex-direction: column;
}

.thanks {
  position: relative;
  padding-top: 300px;
}

.thanks::before {
  background: #0bbbec;
  opacity: 0.1;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  left: 0;
  top: 0;
  content: "";
}

/* .thanks::after{
  background: center no-repeat url(../img/thanks/bg.png);
  background-size: contain;
  opacity: 0.1;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 0;
  left: 0;
  bottom: 0;
} */
.thanks-body {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.thanks-title {
  display: flex;
  justify-content: center;
}

.thanks-title p {
  width: fit-content;
  font-size: 65px;
  letter-spacing: 0.1em;
  line-height: 105px;
  font-weight: 500;
}

.thanks-txt p {
  font-size: 21.77px;
  line-height: 40px;
  letter-spacing: 0.1em;
}

.thanks-txt p+p {
  margin-top: 50px;
}

.top-back {
  text-align: center;
  font-size: 21.77px;
  letter-spacing: 0.1em;
  margin: 90px 0px 50px 0px;
}

.thanks-txt {
  margin-top: 100px;
}

.thanks-bg {
  display: flex;
}

.error {
  color: #ef0304;
}

.is-sp {
  display: none;
}

.offLine-img {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 20px 0px 10px;
}

.offLine-img03,
.offLine-img01 {
  width: 285.6499px;
  text-align: center;
}

.offLine-img01 img {
  width: 195.3479px;
  margin: 0 auto;
}

.offLine-img03 img {
  width: 243.3156px;
  margin: 0 auto;
}

.offLine-img02 {
  display: flex;
  align-items: center;
  gap: 20px;
}

img.offLine-arrow02 {
  transform: rotate(180deg);
}

.offLine-arrow02,
.offLine-arrow01 {
  width: 45.8442px;
  height: 24.0242px;
  margin-top: 10px;
}

.offLine-logo {
  width: calc(436.9801px / 1920px * 100vw);
}

.offLine-img-title {
  font-size: 23px;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #fff;
  background: #0052ff;
  width: 285.6499px;
  height: 34.3364px;
  border-radius: 7.26px;
  margin-top: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 2px;
}

.offLine-img03 div,
.offLine-img01 div {
  height: 225.5683px;
  display: flex;
  align-items: end;
  justify-content: center;
}

.flow-img {
  display: flex;
}

.flow-item {
  width: 20%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.flow-item05::before,
.flow-item02::before,
.flow-item03::before,
.flow-item04::before,
.flow-item02::after,
.flow-item03::after,
.flow-item04::after,
.flow-item01::after {
  content: "";
  position: absolute;
  top: 40px;
  width: calc(50% - 20px);
  border-top: 10px dotted #2563eb;
  border-left: unset;
  border-bottom: unset;
  border-right: unset;
}

.flow-item02::after,
.flow-item03::after,
.flow-item04::after,
.flow-item01::after {
  left: calc(50% + 11px);
}

.flow-item05::before,
.flow-item02::before,
.flow-item03::before,
.flow-item04::before {
  left: 0%;
}

.flow-txt {
  margin-top: 5px;
}

.flow-num {
  background: transparent linear-gradient(90deg, #0052FF 0%, #227FBC 100%) 0% 0% no-repeat padding-box;
  width: 88px;
  height: 88px;
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  border-radius: 50%;
  font-size: 50px;
  letter-spacing: 0.05em;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 88px;
  position: relative;
  z-index: 2;
}

.flow-num p {
  transform: scale(0.75, 0.75);
}

.flow .flow-img img {
  width: 103.2154px;
  height: 75.4652px;
}

.flow-img-icon {
  margin-top: 15px;
  height: 114.5349px;
  display: flex;
  align-items: center;
}

.flow-txt p {
  font-weight: 700;
  font-size: 30px;
  letter-spacing: 0.05em;
  color: #424242;
}

.flow .flow-img .flow-item02 img {
  width: 103.7586px;
  height: 114.5349px;
}

.flow .flow-img .flow-item03 img {
  width: 88.0081px;
  height: 108.1632px;
}

.flow .flow-img .flow-item04 img {
  width: 120.1572px;
  height: 101.7569px;
}

.flow .flow-img .flow-item05 img {
  width: 96.6939px;
  height: 96.6939px;
}

.footer-phone2 {
  padding-left: 70px;
}

.comma-footer {
  padding: 0px 8px;
}

.comma-pc {
  margin-right: -5px;
}

.sec04-item-txt p {
  padding-right: 10px;
}

.scale {
  margin-left: -15px;
}

.colon {
  padding: 0px 2px;
}

input[type="radio"] {
  width: 20px;
  height: 20px;
  padding: 0;
}

@media screen and (min-width:901px) and (max-width:1300px) {
  .header-btn {
    right: 40px;
  }

  .sec02-icon-group {
    justify-content: center;
  }

  .cta-group {
    gap: 40px;
  }

  .sec03-item01 img {
    width: 100%;
  }

  .sec06-offLine02 .offLine-item {
    width: 48%;
  }

  .sec06-offLine02 .offLine-body {
    padding: 50px 30px;
  }
}

@media screen and (max-width:900px) {
  textarea {
    font-size: 15.85px;
  }

  .colon {
    padding: 0px 2px;
  }

  .scale {
    margin-left: -10px;
  }

  .sec04-item-txt p {
    padding-right: 0px;
  }

  .comma-pc {
    margin-right: 0px;
  }

  .is-pc {
    display: none;
  }

  .is-sp {
    display: block;
  }

  header.header {
    padding: 16px 15px 0px 15px;
  }

  .header-logo {
    width: 206.4623px;
  }

  .hero {
    position: relative;
  }

  .sec-header-btn {
    position: fixed;
    width: 100%;
    left: 0;
    bottom: 0px;
    display: flex;
    z-index: 999;
  }

  .sec-header-btn a {
    width: 50%;
    display: flex;
  }

  .sec01-title {
    letter-spacing: 0;
    font-size: 25px;
    line-height: 43.75px;
  }

  .sec01-title::before {
    width: 100%;
    background: 100% no-repeat url(../img/sec01/en-title.png);
    background-size: contain;
  }

  .sec01-txt {
    font-size: 17px;
    letter-spacing: 0.05em;
    line-height: 29.75px;
  }

  .sec01-txt {
    font-size: 17px;
    letter-spacing: 0.05em;
    line-height: 29.75px;
  }

  .sec01-txt span {
    font-size: 20px;
    padding: 0 10px 2px 10px;
  }

  section.sec01 {
    padding-top: 0;
  }

  .sec01-title-group {
    margin-bottom: 25px;
  }

  .sec01-img {
    margin-top: 20px;
  }

  section.cta {
    padding: 80px 0px;
    background: 50% no-repeat url(../img/cta/bg-sp.png);
    background-size: cover;
  }

  .cta-group {
    flex-wrap: wrap;
    gap: 30px;
    max-width: 325px;
    margin: 0 auto;
  }

  .cta-group .contact-btn {
    width: 100%;
  }

  .cta-group .phone-btn {
    width: 100%;
  }

  .cta-group p {
    margin-bottom: 10px;
    font-size: 20px;
  }

  .sec02-title-en {
    /* font-size: 84.65px;
    line-height: 65px; */
    margin-bottom: 15px;
  }

  .sec02-title-en img {
    width: 221.1299px;
  }

  .sec02-title {
    font-size: 20px;
  }

  .circle-item {
    width: 149.2484px;
    height: 149.2484px;
  }

  .sec02 .sec-body {
    max-width: 325px;
    margin: 0 auto;
  }

  .sec02-circle-group {
    flex-wrap: wrap;
    gap: 22px;
  }

  .sec02-content {
    margin-top: 27px;
  }

  section.sec02 {
    padding: 70px 0px;
  }

  .sec02-txt span {
    font-size: 19px;
    border-radius: 5.83px;
    margin-right: 0px;
    padding: 0 10px;
    padding-bottom: 3px;
  }

  .sec02-txt span.sec02-txt02 {
    margin-right: 3px;
  }

  .sec02-txt span.comma-sp {
    padding: 0;
    margin-right: 0;
  }

  .sec02-txt p+p {
    margin-top: 0px;
  }

  .sec02-txt {
    font-size: 19px;
    line-height: 33.25px;
  }

  .sec02-txt span.sec02-txt-fist {
    padding-left: 40px;
  }

  .sec02-txt-fist::before {
    width: 18.4862px;
    height: 35.486px;
    top: -12px;
    left: 18px;
  }

  .sec02-ex-content {
    flex-wrap: wrap;
    padding: 45px 17px;
    gap: 15px;
  }

  .sec-ex-title {
    font-size: 20px;
    line-height: 30px;
    margin-right: -10px;
  }

  .sec02-ex-circle {
    width: 75.2644px;
    height: 75.2644px;
    top: calc(-75.2644px / 2);
  }

  .sec02-ex-circle p {
    font-size: 47.16px;
  }

  img.ex-img {
    width: 100%;
    max-width: 425.7429px;
    ;
  }

  p.sec-ex-txt {
    padding-right: 5px;
  }

  .comma-sp {
    letter-spacing: -5px;
  }

  p.sec02-icon-tile {
    font-size: 17px;
    line-height: 26px;
    text-align: center;
  }

  .sec02-icon-tile::after,
  .sec02-icon-tile::before {
    height: 23.7889px;
    width: 8.0556px;
    margin-bottom: 7px;
  }

  .sec02-icon-item {
    width: 157px;
    height: 220.718px;
    padding: 0 8px;
    border-radius: 8.8px;
  }

  .sec02 .icon-img {
    width: 97.4503px;
    height: 97.4503px;
  }

  .sec02 .icon-title {
    font-size: 17px;
    margin: -10px -10px 0 -10px;
  }

  .icon-txt p {
    font-size: 12px;
    line-height: 16.36px;
  }

  .sec02 .icon-txt img {
    width: 12.1688px;
    padding-top: 2px;
    height: 14.1688px;
  }

  .sec02 .item03 .icon-img {
    width: 106.8382px;
    height: 97.4503px;
  }

  .sec02-icon-group {
    gap: 25px 5px;
  }

  .sec02-icon-item .comma-sp {
    color: #000;
  }

  .sec02 .icon-txt,
  .sec02 .icon-txt:first-child {
    margin-top: 5px;
  }

  section.sec03 {
    padding: 50px 0px;
  }

  .sec03 .sec-body {
    max-width: 325px;
    margin: 0 auto;
  }

  .sec03 .sec03-title img {
    width: 100%;
  }

  .sec03-title-sub {
    flex-wrap: wrap;
    gap: 8px;
    font-size: 18px;
    margin-top: 10px;
  }

  .sec03-title-sub p::before {
    width: 28.6987px;
    height: 28.6987px;
    background-size: contain;
    top: -6px;
    left: 6px;
  }

  .sec03-title-sub p {
    font-size: 18.83px;
    padding: 0 7px 2px 40px;
    margin-right: 0px;
    border-radius: 5.852px;
  }

  .sec03-content {
    flex-wrap: wrap;
    margin-top: 20px;
  }

  .sec03-item02 {
    width: 100%;
    order: 0;
    padding: 30px 0px 35px 0px;
  }

  .sec03-item01 {
    width: 100%;
    order: 1;
  }

  p.sec03-item-title {
    font-size: 17.45px;
    width: 129.0993px;
    height: 29.4882px;
    border-radius: 14.744px;
    margin: 0 auto 17px auto;
  }

  .sec03-item02 img {
    width: 247.2319px;
  }

  .sec03-item02-txt p {
    font-size: 13px;
    line-height: 18.79px;
  }

  .sec03-item02-txt {
    margin-top: 12px;
  }

  .sec03-item01 .sec03-item-title {
    width: 119.9138px;
    height: 27.3901px;
    border-radius: 13.695px;
  }

  .sec03-item01 img {
    width: 100%;
  }

  .sec03::after {
    width: 17.1751px;
    height: 27.7444px;
    bottom: -20px;
  }

  .sec04 {
    padding: 70px 0px 50px 0px;
  }

  .sec04-title p {
    font-size: 25px;
  }

  .sec04-title p::before {
    background: 100% no-repeat url(../img/sec04/title-sp.png);
    background-size: contain;
    width: 335.291px;
    height: 113.0244px;
    top: 6px;
  }

  .item01 .sec04-item-img img {
    width: 137.5591px;
  }

  .sec04-item {
    width: 158.1906px;
  }

  .sec04-item-title p {
    font-size: 17px;
    width: 151.8039px;
    height: 29.2383px;
  }

  .sec04-item-txt p {
    font-size: 12px;
    line-height: 20px;
  }

  .item02 .sec04-item-img img {
    width: 158.1906px;
  }

  .sec04-item-img {
    height: 158.8396px;
  }

  .item06 .sec04-item-img img {
    width: 158.1906px;
  }

  .item06 .sec04-item-img {
    height: 158.8396px;
  }

  .sec04 .sec-body {
    max-width: 325px;
    margin: 0 auto;
  }

  .sec04-item04::before,
  .sec04-item06::before,
  .sec04-item03::before {
    content: unset;
  }

  .sec04-item-group {
    gap: 0px;
  }

  .sec04-item-title {
    margin-top: 10px;
  }

  .sec04-item-txt {
    margin-top: 10px;
  }

  .item01.sec04-item03 .sec04-item-img,
  .item06.sec04-item04 .sec04-item-img {
    height: 142.8396px;
  }

  .item06.sec04-item05 .sec04-item-img,
  .item06.sec04-item06 .sec04-item-img {
    height: 200.929px;
  }

  .sec04-item06 .sec04-item-title p {
    font-size: 14.02px;
    letter-spacing: 0;
  }

  .sec04-item06 .sec04-item-txt p span {
    margin-right: -3px;
    margin-left: -3px;
  }

  .sec04-note {
    width: 100%;
    margin-top: 35px;
  }

  .sec04-note-txt p.sec04-note01 {
    font-size: 24px;
    line-height: 35px;
  }

  .sec04-note-txt {
    padding: 30px 15px 40px 15px;
  }

  .sec04-note-txt .sec04-note02 {
    font-size: 17px;
    line-height: 25px;
    text-align: left;
  }

  .sec04-note-txt p.sec04-note01::before {
    height: 13.166px;
    width: 13.166px;
    position: absolute;
    left: 0;
    top: -6px;
    background-size: contain;
  }

  .sec05-title-en {
    font-size: 84.65px;
    line-height: 63px;
    margin-bottom: 10px;
    /* background: linear-gradient(90deg, #0052ff 40%, #227fbc 60%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text; */
  }

  .sec05-title-en img {
    width: 207.7324px;
  }

  .sec05-title {
    font-size: 20px;
    letter-spacing: 0.1em;
  }

  section.sec05 {
    padding: 60px 0px 267px 0px;
  }

  .sec05-item {
    width: 349.2038px;
    height: 208.7775px;
    min-height: 100%;
  }

  .sec05-item01 .sec05-item-img img {
    width: 259.6816px;
  }

  .sec05-item {
    flex-wrap: wrap;
    padding: 15px 10px 0px 20px;
    align-items: unset;
  }

  .sec05-item-left {
    width: 100%;
  }

  .sec05-item::before {
    content: unset;
  }

  .sec05-item03 .sec05-item,
  .sec05-item01 .sec05-item {
    background: url(../img/sec05/item-bg-sp01.png) 50% no-repeat;
    background-size: contain;
  }

  .sec05-item04 .sec05-item,
  .sec05-item02 .sec05-item {
    background: url(../img/sec05/item-bg-sp.png) 50% no-repeat;
    background-size: contain;
    padding: 15px 10px 0px 20px;
    height: 223.3013px;
  }

  .sec05-item-title {
    font-size: 20px;
    line-height: 25px;
  }

  .sec05-item-txt {
    font-size: 15px;
    line-height: 25px;
    margin-top: 10px;
  }

  .sec05-item-img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }

  .sec05-item::after {
    font-size: 61.26px;
    top: -52px;
  }

  .sec05-item-num {
    margin-right: 15px;
    margin-left: 0;
    line-height: unset;
    font-size: unset;
    letter-spacing: unset;
    padding-top: 2px;
  }

  .sec05-item01 .sec05-item-img {
    position: absolute;
    bottom: -130px;
  }

  .sec05-item-txt span.comma-sp {
    letter-spacing: 0px;
    margin-left: -3px;
    margin-right: -3px;
  }

  .sec05-item-group {
    margin-top: 32px;
  }

  .sec05-item02 .sec05-item-img img {
    width: 225.7264px;
  }

  .sec05-item02 {
    margin-top: 160px;
  }

  .sec05-item02 .sec05-item-img {
    bottom: -250px;
  }

  .sec05-item02 .sec05-item-left {
    width: 100%;
    margin-left: 0;
  }

  .sec05-item02 .sec05-item::after {
    top: -55px;
    left: 42px;
  }

  .sec05-item03 .sec05-item-img img {
    width: 225.7263px;
  }

  .sec05-item03 {
    margin-top: 274px;
    padding-right: 25px;
  }

  .sec05-item03 .sec05-item {
    padding: 15px 10px 0px 20px;
  }

  .sec05-item03 .sec05-item-img {
    padding-right: 0;
    bottom: -138px;
  }

  .sec05-item04 .sec05-item-img img {
    width: 225.7264px;
  }

  .sec05-item04 {
    margin-top: 170px;
    padding-left: 25px;
  }

  .sec05-item04 .sec05-item-left {
    padding-left: 0;
  }

  .sec05-item04 .sec05-item-img {
    bottom: -210px;
  }

  .sec05-item04 .sec05-item::after {
    left: unset;
    top: -54px;
    right: -8px;
  }

  .sec05-item01 {
    position: relative;
    padding-right: 25px;
  }

  .sec05-item-group .sec05-item02 {
    padding-left: 25px;
  }

  .sec05-bg.sec05-bg01.is-sp {
    top: -55px;
  }

  .sec05-bg.sec05-bg02 {
    top: 48%;
  }

  .sec05-bg {
    height: 260.4593px;
  }

  .sec05-bg.sec05-bg03.is-sp {
    bottom: -28px;
  }

  .sec06-title p {
    font-size: 25px;
    line-height: 35px;
    margin: 0 -3px;
  }

  p.sec06-title-sub {
    font-size: 17px;
    line-height: 29.75px;
  }

  .sec06-title-sub span.comma-sp {
    color: #000;
    letter-spacing: -7px;
  }

  .offLine-title {
    font-size: 20px;
    height: 38px;
    line-height: 20px;
    padding-bottom: 1px;
  }

  .offLine-body {
    flex-wrap: wrap;
    padding: 20px 14px;
    gap: 12px;
    justify-content: space-between;
  }

  .offLine-item {
    width: 140.7146px;
    height: auto;
    border-radius: 6px;
    flex-direction: column;
    justify-content: left;
    gap: 12px;
    padding: 20px 0px;
  }

  .offLine-item p {
    letter-spacing: 0.025em;
  }

  .offLine-item img {
    width: 33.4638px;
  }

  .sec06-title p::before {
    width: 236.2627px;
    height: 48.7021px;
  }

  section.sec06 {
    padding: 70px 0px 50px 0px;
    max-width: 325px;
    margin: 0 auto;
  }

  .sec06-content {
    margin-top: 25px;
  }

  .sec06-offLine02 .offLine-item {
    width: 140.7146px;
    height: auto;
  }

  .sec06-offLine02 .offLine-body {
    flex-wrap: wrap;
    gap: 12px;
  }

  .offLine-item.offLine-item08 img {
    width: 47.983px;
  }

  .offLine-item.offLine-item07 img {
    width: 43.3657px;
  }

  .offLine-item.offLine-item02 img {
    width: 50.4789px;
  }

  .offLine-item.offLine-item03 img {
    width: 40.5056px;
  }

  .offLine-item.offLine-item04 img {
    width: 46.2123px;
  }

  .offLine-item.offLine-item05 img {
    width: 36.2793px;
  }

  .sec06::after {
    width: 17.1751px;
    height: 27.7444px;
    top: -25px;
  }

  .offLine-img {
    flex-wrap: wrap;
    padding: 0;
    margin-top: 0px;
  }

  .offLine-img02 {
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
    width: 100%;
  }

  img.offLine-logo {
    width: 285.1668px;
  }

  .offLine-img01 img {
    width: 112.0008px;
  }

  p.offLine-img-title {
    width: 161.5714px;
    height: 34.3364px;
  }

  .offLine-img01 .offLine-img-title {
    margin-top: 45px;
  }

  .offLine-img03 div,
  .offLine-img01 div {
    height: unset;
  }

  .offLine-img03,
  .offLine-img01 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  img.offLine-arrow02,
  img.offLine-arrow01 {
    width: 25.6875px;
    height: 13.4613px;
    margin-top: 0;
  }

  img.offLine-arrow01 {
    transform: rotate(90deg);
  }

  img.offLine-arrow02 {
    transform: rotate(270deg);
  }

  .offLine-img03 img {
    width: 112.0008px;
  }

  .flow-item {
    width: 100%;
  }

  .flow-img {
    flex-wrap: wrap;
    margin-top: 30px;
  }

  .flow-num {
    width: 57.4164px;
    height: 57.4164px;
    font-size: 32.63px;
  }

  .flow-item {
    display: flex;
    flex-direction: row;
    padding-top: 40px;
  }

  .flow-item:first-child {
    padding-top: 0px;
  }

  .flow .flow-img img {
    width: 78.5297px;
    height: 57.4164px;
  }

  .flow-txt p {
    font-size: 20px;
  }

  .flow .flow-img .flow-item02 img {
    width: 57.4164px;
    height: 52.0142px;
  }

  .flow .flow-img .flow-item03 img {
    width: 46.7174px;
    height: 57.4164px;
  }

  .flow .flow-img .flow-item04 img {
    width: 67.7987px;
    height: 57.4164px;
  }

  .flow .flow-img .flow-item05 img {
    width: 57.4164px;
    height: 57.4164px;
  }

  .flow-item05::before,
  .flow-item02::before,
  .flow-item03::before,
  .flow-item04::before,
  .flow-item02::after,
  .flow-item03::after,
  .flow-item04::after,
  .flow-item01::after {
    transform: translateX(-50%);
    width: 14px;
    height: calc(46% - 7px);
    border-right: 10px dotted #2563eb;
    border-top: unset;
    content: unset;
  }

  .flow-item02::after,
  .flow-item03::after,
  .flow-item04::after,
  .flow-item01::after {
    content: unset;
  }

  .flow-item05::before,
  .flow-item02::before,
  .flow-item03::before,
  .flow-item04::before {
    left: calc(57.4164px/2 - 7px);
    top: 0;
  }

  .flow-img {
    position: relative;
  }

  .flow-img::before {
    background: 50% no-repeat url(../img/flow/circle.png);
    background-size: cover;
    position: absolute;
    z-index: -1;
    width: 7px;
    height: 100%;
    top: 0;
    left: 24px;
    content: "";
  }

  .flow-img-icon {
    height: auto;
    width: 78.5297px;
    margin: 0px 17px 0px 15px;
  }

  .flow-title {
    font-size: 20px;
  }

  .flow::after {
    height: calc(173.0298px / 375px * 100vw);
    bottom: 0;
    top: unset;
  }

  .flow .sec-body {
    max-width: 325px;
    margin: 0 auto;
  }

  p.flow-title-en {
    /* font-size: 84.65px;
    line-height: 75px; */
    margin-bottom: 15px;
  }

  .flow-title-en img {
    width: 134.2129px;
  }

  .flow {
    padding: 70px 0px 110px 0px;
  }

  .faq-title p {
    font-size: 25px;
  }

  p.faq-title-sub {
    font-size: 17px;
    margin-top: 25px;
    line-height: 29.75px;
  }

  .faq {
    padding: 70px 0px 50px 0px;
  }

  .faq .sec-body {
    max-width: 325px;
    margin: 0 auto;
  }

  p.faq-head-txt {
    line-height: 23px;
    font-size: 17px;
    padding-right: 70px;
  }

  .faq-answer-group .faq-answer-txt {
    font-size: 15px;
    line-height: 26.25px;
  }

  .faq-item {
    margin-top: 30px;
  }

  .faq-title p::before {
    width: 119.0879px;
    top: -27px;
    transform: translate(-50%, -27px);
  }

  .faq-answer-group::before,
  .faq-head-group::before {
    /* width: 21.7559px;
    height: 16.2451px; */
    margin-right: 5px;
  }

  .faq-item .faq-head::after {
    top: calc(50% - 20px);
  }

  .faq-answer-a,
  .faq-head-q {
    font-size: 30PX;
    line-height: 25px;
  }

  .faq-head-group {
    gap: 0px;
    align-items: flex-start;
  }

  .faq-answer-group {
    gap: 0px;
    align-items: flex-start;
  }

  .sec06-title {
    margin-bottom: 25px;
  }

  .flow-title-group {
    margin-bottom: 25px;
  }

  .contact {
    padding: 70px 0px 50px 0px;
  }

  form#c_form {
    max-width: 325px;
    width: 100%;
    padding: 50px 25px;
    border-radius: 9.063px;
  }

  .radio-group {
    flex-direction: column;
    gap: 10px;
  }

  .radio-group label,
  p.title-input {
    font-size: 17px;
  }

  input {
    height: 42px;
    font-size: 15.85px;
  }

  input[type="checkbox"] {
    width: 21px;
    height: 21px;
  }

  .radio-group label {
    gap: 5px;
  }

  input::placeholder {
    color: #cacaca;
    font-size: 15.85px;
  }

  textarea,
  input {
    border-radius: 2.34px;
  }

  .form-item.form-item-checkbox {
    margin-top: 30PX;
  }

  .form-item {
    margin-top: 25px;
  }

  .form-note {
    font-size: 15px;
    margin: 15px -12px 0 0px;
  }

  .btn-submit {
    width: 100%;
  }

  /* input.submit.btn {
    font-size: 24.27px;
    height: 53.89px;
    width: 100%;
  } */
  input.submit.btn {
    font-size: calc(24.27px * 0.75);
    height: 53.89px;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 53.89px;
    padding-top: 2px;
  }

  .btn-submit::after {
    width: 6.7912px;
    height: 12.1146px;
  }

  .btn-sub {
    margin: 40px auto 0px auto;
    width: 100%;
  }

  .footer-body {
    margin: 0 auto;
    width: calc(100% - 40px);
    flex-wrap: wrap;
  }

  .footer {
    padding: 85px 0px 90px;
  }

  .footer-right,
  .footer-left {
    width: 100%;
  }

  .footer-right {
    align-items: center;
  }

  img.footer-logo {
    width: 275px;
  }

  .footer-left01 {
    font-size: 15px;
    margin-top: 35px;
    line-height: 1.6;
    padding-bottom: 20px;
  }

  .footer-phone img {
    width: 326.1421px;
  }

  .footer-btn {
    width: 326.1453px;
    height: 77.3334px;
  }

  p.copyright {
    font-size: 12px;
    margin-top: 20px;
    text-align: center;
    display: block;
    width: 100%;
  }

  .footer-left01::before {
    width: 100%;
  }

  .footer-phone2 {
    padding-left: 0px;
  }

  .footer-left02 {
    font-size: 15px;
    line-height: 1.6;
    padding-top: 20px;
  }

  .comma-footer {
    padding: 0px;
  }

  .thanks-title p {
    font-size: 25px;
    line-height: 35px;
    font-weight: 700;
  }

  .thanks-txt p {
    font-size: 15px;
    line-height: 25px;
  }

  .top-back {
    font-size: 15px;
    margin: 50px 0px 50px 0px;
  }

  .thanks-body {
    max-width: 325px;
  }

  section.thanks {
    padding-top: 150px;
  }

  .thanks-txt {
    margin-top: 30px;
  }

  .thanks-txt p+p {
    margin-top: 20px;
  }

  .circle-item-body p span {
    font-size: 22.28px;
  }

  .sec05-item01 .sec05-item::after {
    right: -38px;
  }

  .sec05-item03 .sec05-item::after {
    right: -22px;
  }

  .faq-item:first-child {
    margin-top: 40px;
  }

  .circle-item-body.is-pc {
    display: none;
  }

  .circle-item-body,
  .circle-item-body.is-sp {
    display: flex;
    font-size: 17px;
    line-height: 23px;
  }

  .circle-item-body p {
    font-size: calc(13.25px * 1.7);
    line-height: calc(21px * 1.7);
  }

  .circle-item02 .circle-item-body p {
    font-size: calc(12.83px * 1.75);
    line-height: calc(22.6px * 1.75);
  }

  .circle-item03 .circle-item-body p {
    font-size: calc(12.83px * 1.75);
    line-height: calc(17.94px * 1.75);
  }

  .circle-item04 .circle-item-body p {
    font-size: calc(12.83px * 1.75);
    line-height: calc(18.94px * 1.75);
  }

  .circle-item04 .circle-item-body {
    font-size: 17px;
    line-height: 18.94px;
  }

  .title-input span {
    padding-left: 5px;
  }

  .radio-group label span {
    line-height: 17px;
  }

  .footer-logo {
    height: auto;
    margin: 0 auto 0 0;
  }

  .sec02 .sec05-title-en img {
    width: 221.1299px;
  }

  .flow .sec05-title-en img {
    width: 134.2129px;
  }

  .contact .sec05-title-en img {
    width: 227.6689px;
  }

  .sec05-item-num img {
    width: 19.9346px;
  }

  .sec05-item02 .sec05-item-num img {
    width: 24.3896px;
  }

  .sec05-item03 .sec05-item-num img {
    width: 24.2773px;
  }

  .sec05-item04 .sec05-item-num img {
    width: 25.2666px;
  }

  .sec05-item04 .sec05-item-num {
    margin-right: 10px;
  }

  .sec05-item03 .sec05-item-num {
    margin-right: 15px;
  }

  .sec01::after {
    content: unset;
  }

  section.sec01 {
    padding-bottom: 0;
  }

  input[type="checkbox"] {
    padding: 0;
    border-radius: 2.642px;
    width: 21px;
    height: 21px;
  }
}

.sec01-txt span.sec01-txt-pt-sp {
  padding-top: 2px;
  background: unset;
  color: unset;
  border-radius: unset;
  padding: 0;
  margin-right: unset;
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 35px;
}

@media screen and (max-width:900px) {
  .sec01-txt-pt-sp {
    padding-top: 5px;
  }
}

@media screen and (max-width: 1000px) {
  .footer-right {
    width: 100%;
    align-items: flex-start;
    margin-top: 25px;
  }
}

@media screen and (max-width:900px) {

  /* SPではフッターのボタンを非表示（電話・CTA） */
  .footer-right .footer-phone,
  .footer-right .footer-btn {
    display: none;
  }
}

@media screen and (max-width: 1000px) {
  .sec-header-btn.is-hidden-by-cta {
    display: none !important;
  }


  
}



