/* ------------------------

index only
1368px
@media (orientation: landscape) and (max-width: 1281px){
1024px
932px
480px

------------------------ */
#fv {
  /* background: #f3f3f3;*/
  padding-bottom: 5rem;
}

#fv h2 {
  background: #FFF;
  padding: 3% 2%;
  text-align: center;
  font-weight: 400;
  font-size: 28px;
  line-height: 180%;
  letter-spacing: 2px;
  opacity: 0;
}

#fv h2 strong {
  font-weight: 400;
  font-size: 50px;
}

#fv h2 strong span {
  color: #9100bb;
}

#fv video {
  max-width: 100%;
  height: 66vh;
  margin-bottom: 4rem;
  display: block;
  position: relative;
  margin: 0 auto 4rem;
}

#fv .formLink+p {
  text-align: center;
  width: 90%;
  margin: 0 auto;
  margin-top: 1rem;
  font-size: 18px;
}

#limited {
  background: url(../img/bg.png) no-repeat;
  background-size: cover;
  padding: 1.5rem 0 5rem;
}

#limited>* {
  max-width: 1000px;
  width: 90%;
  margin: 2rem auto 0;
}

#limited h3 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 600;
  line-height: 160%;
  text-indent: -34px;
  font-size: 28px;
}

#limited .strong {
  font-weight: 700;
  font-size: 36px;
  width: fit-content;
  margin: 3rem auto 0;
  position: relative;
}

#limited .strong span {
  color: #9100bb;
}

#limited .strong:after {
  content: "";
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  bottom: -20px;
  left: 0;
}

#problem {
  background: #f3f3f3;
  background-size: auto, cover;
  padding: 6rem 0 6rem;
}

@media screen and (min-width:1101px) {
  #fv h2 strong {
    line-height: 90%;
  }

  #problem .baloon section:nth-of-type(2),
  #problem .baloon section:nth-of-type(5) {
    transform: translateY(50px);
  }
}

#service {
  position: relative;
  z-index: 0;
}

#service:before {
  content: "";
  background: url(../img/problem_pic.png) no-repeat center;
  background-size: contain;
  width: 100%;
  height: 270px;
  display: block;
  position: absolute;
  top: -240px;

}

#service .title {
  background: linear-gradient(357deg, rgba(52, 0, 105, 1) 0%, rgba(0, 36, 96, 1) 100%);
  text-align: center;
  padding: 3rem 0 3rem;
  color: #FFF;

}

#service .title h3 {
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 1rem;
}

#service .title img {
  height: 90px;
  margin-top: -10px;
}

#service .title ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1100px;
  margin: 0 auto;
}

#service .title ul li {
  margin: 0 .25rem;
  position: relative;
}

#service .title ul li:after {
  content: url(../img/arrow.png);
  position: absolute;
  top: 20%;
  right: 15px;
  pointer-events: none;
  transition: .3s all;
}

#service .title ul li:hover:after {
  transform: translateY(5px)
}

#service .title ul li a {
  color: #FFF;
  display: block;
  background: rgba(255, 255, 255, 0.1);
  padding: .7rem 1rem;
  min-width: 200px;
  transition: .3s all;
  text-decoration: none;
}

#service .wrap {
  background: url(../img/circle_bg-min.png) repeat-y center top, #edf6fa;
  background-size: 130% auto, auto;
  padding: 5rem 0;
}

#service .wrap>section {
  max-width: 1000px;
  margin: 0 auto;
  padding: 3rem 0 1rem;
}

#service .wrap figcaption {
  font-size: 20px;
  margin-bottom: 1.5rem;
}

#service .wrap>section h5 {
  margin: 0rem auto 2rem;
  font-size: 24px;
  font-weight: normal;

}

#service .wrap figure {
  margin: 3rem auto 0;
  text-align: center;
}

#service .wrap h4.slide-right {
  color: #002769;
  font-size: 52px;
  font-weight: 400;
  letter-spacing: 2px;
}

#service .wrap .flex {
  display: flex;
  justify-content: space-between;
  margin-top: 3rem;

}

#service .wrap .flex li {
  width: 48%;
}

#service .wrap .flex li img {
  width: 100%;
}

#service .wrap .delay {
  animation-delay: 2s;
}

#generative-model figure {
  width: 90%;
}

#service figure img {
  width: 100%;
}

#background figure {
  width: 65%;
}

#service #comprehensive .flex {
  max-width: 840px;
  margin: 4rem auto;
  width: 88%;
}

#service #comprehensive+p {
  text-align: center;
  width: 90%;
  margin: 0 auto 1.5rem;
  font-size: 18px;
}


#failure {
  background: #f3f3f3;
  padding: 8rem 0 0;
}

#failure .baloon {
  font-size: 20px;
  margin-top: 4rem;
}

@media screen and (min-width:1px) {
  #failure .baloon section:nth-of-type(2) {
    transform: translateY(-50px);
  }
}

#failure .pic-title {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  margin: 2rem auto 3rem;
  padding-top: 240px;
  width: 90%;
  background: url("../img/failure_pic.png") no-repeat center top;
  background-size: auto 240px;
}

#failure .pic-title span {
  color: #9100bb;
  font-size: 40px;
}

#failure .pic-title+.txtArea {
  margin: 0 auto 7rem;
  font-size: 18px;
  text-align: center;
  width: 90%;
}

#failure .pic-title+.txtArea p {
  font-size: 18px;
}

#strengths {
  padding: 3rem 0 6rem;
  counter-reset: number 0;
  position: relative;
  z-index: 1;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1)10%);

}

#strengths:after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/line_bg-min.png) no-repeat top center;
  display: block;
  position: absolute;
  top: -150px;
  left: 0;
  z-index: -1;
}

#strengths .point {
  display: grid;
  max-width: 900px;
  width: 90%;
  margin: 3rem auto 0;
  grid-template-columns: 1fr 45%;
  grid-template-rows: repeat(2, auto);
  row-gap: 30px;
  column-gap: 30px;
}

#strengths .point img {
  width: 100%;
}

#strengths .point h5 {
  grid-column: 1/3;
  font-size: 26px;
  position: relative;
  padding-top: 5px;
}

#strengths .point h5:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  bottom: 0px;
  left: 0;

}

#strengths .point h5 span {
  font-size: 60%;
  position: relative;
  margin-right: 1.5rem;
  color: #002769;

}

#strengths .point h5 span:after {
  font-size: 320%;
  margin-left: 8px;
  font-weight: normal;
  counter-increment: number 1;
  /* number カウンタの増加数をセット */
  color: #002769;
  content: counter(number, decimal-leading-zero) " ";
  /* 表示形式を指定 */
}

#strengths .point h5 {
  clip-path: inset(0 100% 0 0);
  display: inline-block;
  transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  transition-property: clip-path;
  line-height: 1;
  height: 60px;
  margin-top: 15px;
  border-bottom: none;
}

#strengths .point h5.is-animated {
  clip-path: inset(0);
}

#strengths .formLink {
  margin-top: 8rem;
}

#flow {
  background: url(../img/circle_bg-min.png) repeat-y center top, #edf6fa;
  padding: 8rem 0;
}

#flow .container {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  max-width: 1100px;
  margin: 3rem auto 0;
  counter-reset: number 0;
}

#flow .container section {
  width: 20%;
  background: #f3f3f3;
  border-right: 1px solid #ffffff;
}

#flow .container section h6 {
  background: #002769;
  color: #FFF;
  text-align: center;
  position: relative;
  font-size: 16px;
}

#flow .container section h6 span {
  position: relative;
  width: 66px;
  height: 66px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 40px;
  border: 2px solid #002769;
  background: #FFF;
  color: #002769;
  line-height: 100%;
  font-size: 14px;
  margin-top: -60px;
  margin-bottom: 10px;
  margin-left: 31%;
}

#flow .container section h6 span:after {
  counter-increment: number 1;
  /* number カウンタの増加数をセット */
  content: counter(number, decimal-leading-zero) "\A";
  /* STEP 01 + 改行 */
  white-space: pre-wrap;
  /* 改行を適用 */
  color: #002769;
  left: calc(50% - 35px);
  text-align: center;
  /* テキストを中央揃えに */
  line-height: 1.2;
  /* 改行後のテキスト間隔を調整 */
  display: block;
  font-size: 24px;
}

#flow .container section>* {
  padding: 1.5rem 1rem;
}

#flow .container section .txtArea {
  font-size: 14px;
}

#price {
  padding: 7rem 0;
  background: #f3f3f3;
}

#price table {
  width: 90%;
  max-width: 700px;
  margin: 0 auto 5rem;
  background: none;
  border: none;
}

#price table tr {
  border-bottom: 1px solid #FFF;
  background: none;
}

#price table tr>* {
  padding: 2rem 1.5rem;
  text-align: left;
  font-weight: normal;
  font-size: 18px;
  background: none !important;
  color: #000 !important;
  border: none !important;
}

#price table th {
  width: 60%;
}

#price table+p {
  margin: 0 auto 2rem;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
}

#merit {
  background: url(../img/cost_bg.png) no-repeat center -15px;
  background-size: 100% auto;
}

#merit>* {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
}

#merit .service+p {
  text-align: center;
  font-size: 18px;
  margin-bottom: 1rem;
}

#merit .grid {
  display: grid;
  padding-top: 5rem;
  grid-template-columns: 1fr 340px;
  column-gap: 20px;
  align-items: center;
}

#merit .grid .txtArea p {
  font-size: 26px;
}

#merit .grid .txtArea p b {
  font-size: 32px;
  color: #9100bb;
}

#merit .grid img {
  width: 100%;
}

#merit .service .title-des {
  border-left: 4px solid #002769;
  padding: 8px 0 8px 2.5rem;
  margin-top: 3rem;
}

#merit .service .title-des h4 {
  font-size: 28px;
  font-weight: 600;
  color: #002769;
  margin-bottom: 1rem;
  line-height: 100%;
  border-bottom: none;
}

#merit .service .title-des p {
  letter-spacing: .12rem;
}

#merit .service dl {
  background: #f3f3f3;
  padding: 2rem 3rem;
  border-radius: 20px;
  margin: 2rem auto 7rem;
}

#merit .service dl:last-of-type {
  margin-bottom: 4rem;
}

#merit .service dl dt {
  font-weight: bold;
  color: #002769;
  font-size: 18px;
}

#merit .service dl dd b {
  display: block;
}

#merit .service dl dd {
  margin-top: 1rem;
  font-size: 16px;
}

#merit .service dl dd+dt {
  margin-top: 2rem;
}

#merit .service ul li {
  position: relative;
  padding-left: 8px;
}

#merit .service ul li:before {
  content: "・";
  position: absolute;
  left: -5px;
}

#case {
  margin-top: 5rem;
  padding: 5rem 8rem;
  background: linear-gradient(-45deg, #340069 0%, #340069 29%, #002460 100%);
  color: #FFF;
}

#case h3.title-en b {
  opacity: .1;
}

#case .detail {
  margin: 5rem auto 0;
  max-width: 1000px;
  width: 94%;
  text-align: center;
}

#case .detail h5 {
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  padding: 1.5rem;
  font-size: 18px;
  line-height: 180%;
  margin-bottom: 3rem;
}

#case figure img {
  width: 100%;
}

#case .title-en img {
  opacity: .1;
}

/* お客様の声（テキストのみ） */
.user-review {
  margin-top: -.75em;
  padding: 0 2em;
  color: #fff;
  text-align: left;
  letter-spacing: .05em;
}

.user-review__title {
  display: block;
  font-size: 18px !important;
  font-weight: bold;
}

.user-review__text {
  margin-top: 1em;
  line-height: 2;
}

.user-review__text p {
  padding-bottom: .75em;
  font-size: 18px !important;
  text-align: justify;
}

.user-review__text p:nth-last-of-type(1) {
  padding-bottom: 0;
}

@media screen and (max-width:1100px) {
  #fv h2 {
    font-size: 22px;
    line-height: 120%;
  }

  #fv h2 strong {
    font-size: 40px;
  }

  #fv video {
    margin-bottom: 2rem;
  }

  #fv .formLink+p {
    font-size: 18px;
  }

  #limited h3 {
    flex-wrap: wrap;
    justify-content: center;
    font-size: 24px;
    text-indent: 0;
  }

  #limited h3 img {
    width: 200px;
    margin-right: 2rem;
    margin-bottom: 2rem;
  }

  .txtArea p {
    font-size: 16px;
  }

  #limited {
    background: url(../img/bg.png) no-repeat bottom center, #dff6ff;
    background-size: auto 120%;
    padding: 1.5rem 0 3rem;
  }

  #limited .strong {
    font-size: 26px;
    width: 90%;
    line-height: 100%;
    margin-top: 1rem;
  }

  #limited .strong strong {
    display: block;
    position: relative;
    width: fit-content;
    margin: 0 auto;
  }

  #limited .strong strong:after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    background: #000;
  }

  #limited .strong:after {
    display: none;
  }

  #problem {
    padding-bottom: 280px;
  }

  #service:before {
    height: 250px;
    top: -220px;
  }

  #service .title {
    padding: 3rem 0;
  }

  #service .title ul li {
    margin: 0 .5rem 1rem;
  }

  #service .title h3 {
    font-size: 26px;
  }

  #service .title h3 img {
    width: 250px;
    display: block;
    margin: 0 auto;
  }

  #service .wrap>section {
    width: 90%;
    padding: 0 0 5rem;
  }

  #service .wrap>section o,
  g {
    max-width: 100%;
  }

  #service .wrap h4.slide-right {
    font-size: 40px;
  }

  #service .wrap>section h5 {
    font-size: 22px;
    margin-bottom: 1.5rem;
  }

  #service .wrap figure img.sp {
    display: block;
    margin: 0 auto;
  }

  #failure .baloon {
    margin-top: 0;
  }

  #failure .baloon>section {
    width: 55%;
    transform: translateX(-100px)
  }

  #failure .baloon>section:nth-of-type(even) {
    transform: translateX(100px)
  }

  #failure .pic-title {
    font-size: 28px;
    line-height: 130%;
  }

  #failure .pic-title {
    padding-top: 260px;
    background: url("../img/failure_pic.png") no-repeat center top;
    background-size: auto 240px;
  }

  #failure .pic-title span {
    font-size: 40px;
  }

  #failure .pic-title+.txtArea {
    margin-bottom: 3rem;
  }

  #failure .pic-title+.txtArea p {
    font-size: 20px;
  }

  #strengths:after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(../img/line_bg-min.png) no-repeat top left;
    background-size: 140% auto;
    display: block;
    position: absolute;
    top: -150px;
    left: 0;
    z-index: -1;
  }

  #strengths .point h5 span:after {
    font-size: 260%;
    padding-left: 8px;
  }

  #strengths .point h5 {
    font-size: 24px;
  }

  #strengths .point {
    grid-gap: 30px;
  }

  #flow .container section {
    width: 100%;
    margin-bottom: 1rem;
  }

  #flow {
    padding: 4rem 0;
  }

  #flow .container section h6 {
    padding: 1rem;
    text-align: left;
    width: 98%;
    margin-left: 2%;
    padding-left: 2.5rem;
    margin-bottom: 0;
  }

  #flow .title-simple {
    margin-bottom: 3rem;
  }

  #flow .container section h6 span {
    text-align: center;
    margin-left: 0;
    position: absolute;
    margin-top: 0;
    top: -5px;
    left: -35px;
  }

  #flow .container section .txtArea {
    padding: 1rem 1rem 1.5rem 3.5rem;
  }

  #price table th {
    width: auto;
  }

  #merit .grid {
    grid-template-columns: 1fr 240px;
  }

  #merit .grid .txtArea p {
    font-size: 20px;
  }

  #merit .grid .txtArea p b {
    font-size: 26px;
  }

  #merit .service .title-des h4 {
    line-height: 150%;
    font-size: 22px;
  }

  #case {
    padding: 4rem;
  }

  #case .detail h5 {
    padding: 1rem;
  }

  #case img {
    width: 100%;
    max-width: fit-content;
  }

  /* お客様の声（テキストのみ） */
  .user-review {
    margin-top: -.727vw;
    padding: 0 2.909vw;
  }

  .user-review__title {
    font-size: clamp(14px, 1.636vw, 18px) !important;
  }

  .user-review__text {
    margin-top: 1.454vw;
  }

  .user-review__text p {
    padding-bottom: 1.181vw;
    font-size: clamp(14px, 1.636vw, 18px) !important;
  }

}

@media screen and (max-width:480px) {
  main {
    margin-top: 60px;
  }

  #fv h2 {
    font-size: 20px;
  }

  #fv h2 strong {
    font-size: 32px;
  }

  #fv .formLink+p {
    font-size: 16px;
  }

  #limited h3 {
    font-size: 18px;
  }

  #limited h3 br {
    display: none;
  }

  .txtArea p {
    font-size: 15px;

  }

  #limited .strong {
    font-size: 24px;
    margin-top: 1rem;
  }

  #limited {
    background: url(../img/bg.png) no-repeat bottom center, #dff6ff;
    background-size: auto 90%;
    padding: 1.5rem 0 3rem;
  }

  #service .title h3 {
    margin: .5rem auto 1.2rem;
  }

  #service:before {
    content: "";
    background: url(../img/problem_pic.png) no-repeat center;
    background-size: contain;
    height: 160px;
    top: -140px;
  }

  #problem {
    padding-bottom: 170px;
    padding-top: 4rem;
  }

  #service .wrap {
    background: url(../img/circle_bg-min.png) repeat-y center top, #edf6fa;
    background-size: 200% auto, auto;
    padding: 2rem 0 3rem;
  }

  #service .title {
    padding: 2rem 0;
  }

  #service .title h3 {
    font-size: 18px;
  }

  #service .title h3 img {
    width: 160px;
    height: auto;
  }

  #service .title ul li {
    width: 49%;
    margin: 0 2% .5rem 0;
  }

  #service .title ul li:nth-of-type(2n) {
    margin-right: 0;
  }

  #service .title ul {
    width: 90%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start
  }

  #service .title ul li a {
    min-width: auto;
    padding: .5rem;
  }

  #service .wrap h4.slide-right {
    font-size: 24px;
  }

  #service .wrap>section h5 {
    font-size: 16px;
    margin: .5rem auto 1rem;
    font-weight: 500;
  }

  #service .wrap .flex {
    flex-wrap: wrap;
    margin-top: 1.5rem;
  }

  #service .wrap .flex li {
    width: 90%;
    margin: .5rem auto;
  }

  #service .wrap figure {
    margin-top: 1.5rem;
  }

  #service #comprehensive .flex {
    width: 100%;
    margin: 1rem auto;
  }

  #service #comprehensive .flex li {
    width: 48%;
  }

  #service .wrap>section {
    padding-bottom: 2rem;
  }

  #service #comprehensive+p {
    font-size: 16px;
  }

  #failure {
    padding: 4rem 0 0;
  }

  #failure .baloon>section {
    width: 80%;
    transform: translateX(-20px);
  }

  #failure .baloon>section:nth-of-type(even) {
    transform: translateX(20px);
  }

  #failure .pic-title {
    padding-top: 200px;
    background: url("../img/failure_pic.png") no-repeat center top;
    background-size: auto 180px;
    font-size: 19px;
    line-height: 180%;
  }

  #failure .pic-title span {
    font-size: 24px;
  }

  #failure .pic-title+.txtArea p {
    font-size: 17px;
  }

  #failure .pic-title+.txtArea {
    padding-bottom: 0rem;
    margin-bottom: 3rem;
  }

  #strengths .point {
    grid-template-columns: 100%;
    grid-template-rows: repeat(3, auto);
    column-gap: 0;
    margin-top: 2rem;
    row-gap: 1rem;
  }

  #strengths .point h5 {
    font-size: 17px;
    height: 40px;
    display: flex;
    height: auto;
    align-items: baseline;
    padding-bottom: .5rem;
    line-height: 150%;
  }

  #strengths .point h5 span {
    margin-right: .5rem;
    display: inline-block;
  }

  #strengths .point h5 span:after {
    font-size: 200%;
    padding-left: 0px;
    margin-left: 2px;
  }

  #strengths .point figure {
    grid-column: 1;
    grid-row: 3;
    margin-top: 1rem;
  }

  #strengths .point figure img {
    width: 80%;
    display: block;
    margin: 0 auto;
  }

  #strengths .formLink {
    margin-top: 3rem;
  }

  #flow .container section {
    width: 96%;
    margin-left: 4%;
  }

  #flow .container section h6 span {
    left: -25px;
  }

  #flow .container section h6 {
    padding-left: 3rem;
  }

  #flow .container section .txtArea {
    padding: 1rem 1rem 1.5rem 2.5rem;
  }

  #price {
    padding: 4rem 0;
  }

  #price table tr>* {
    font-size: 16px;
    padding: 1rem .5rem;
  }

  #price h5.title-simple {
    margin-bottom: 2rem;
  }

  #price table+p,
  #merit .service+p {
    font-size: 16px;
  }

  #price table {
    margin-bottom: 2rem;
  }

  #price table+p {
    margin-bottom: 1rem;
  }

  #merit {
    background: url(../img/cost_bg.png) no-repeat center -15px;
    background-size: 200% auto;
  }

  #merit .grid {
    padding-top: 3rem;
    grid-template-columns: 1fr 125px;
    column-gap: 15px;
  }

  #merit .grid .txtArea p {
    font-size: 15px;
    letter-spacing: 0;
  }

  #merit .grid .txtArea p b {
    font-size: 18px;
  }

  #merit .service .title-des {
    padding: 8px 0 8px 1.5rem;
  }

  #merit .service .title-des p,
  #merit .service dl dd {
    font-size: 14px;
  }

  #merit .service dl {
    padding: 1.5rem 2rem;
    margin-bottom: 3rem;
  }

  #case {
    margin-top: 3rem;
    padding: 2rem 1rem 4rem;
  }

  #case .detail {
    margin-top: 2rem;
    width: 96%;
  }

  #case .detail h5 {
    font-size: 16px;
    padding: .5rem;
  }

  #case .detail h5 {
    margin-bottom: 1rem;
  }

  /* お客様の声（テキストのみ） */
  .user-review {
    margin-top: 7vw;
    padding: 0;
  }

  .user-review__title {
    font-size: clamp(13px, 3.636vw, 16px) !important;
  }

  .user-review__text {
    margin-top: 4vw;
    line-height: 2;
  }

  .user-review__text p {
    padding-bottom: 2.083vw;
    font-size: clamp(13px, 3.636vw, 16px) !important;
  }

  #strengths:after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(../img/line_bg-min.png) no-repeat top left;
    background-size: 140% auto;
    display: block;
    position: absolute;
    top: -10px;
    left: 0;
    z-index: -1;
  }

  #fv video {
    height: auto;
  }
}

@media screen and (min-width:780px) and (max-width:1280px) and (orientation:landscape) {
  #fv h2 {
    font-size: 22px;
    padding: 3% 2% 1%;
  }

  #fv h2 strong {
    font-size: 36px;
  }

  .formLink a {
    font-size: 22px;
  }

  #fv video {
    margin-bottom: 2rem;
    height: 64vh;
  }

  #limited h3 img {
    height: 55px;
  }
}

@media screen and (max-width:1280px) and (orientation:portrait) {
  #fv video {
    margin-bottom: 2rem;
    height: auto;
  }
}


/* ------------------------

inquiry

------------------------ */
#container {
  border-top: none;
  padding: 4rem 0;
}

#container .content_title h2 {
  padding: 1rem 0;
  color: #000;
  background: none;
  font-size: 24px;
}

.content_form .input_unit .my_left.my_column {
  background: none;
}

form.myForm input[type="text"],
form.myForm input[type="password"] {
  border-radius: 0;
}

form.myForm .required .my_column.my_left label {
  position: relative;
  display: block;
}

form.myForm .required .my_column.my_left label:first-child:after {
  font-size: 14px;
  border-radius: 0;
  line-height: 18px;
  font-weight: normal;
  position: absolute;
  right: 0;
  background: #c10000;
}

.content_form .input_unit .my_left.my_column {
  width: 40%;
}

.content_form .input_unit .my_right.my_column {
  width: 60%;
}

form.myForm input[type="text"] {
  width: 100%;
}

form.myForm select,
form.myForm textarea {
  border-radius: 0;
}

.checkbox_frame {
  display: block !important;
  padding-top: 10px;
}

form.myForm input[type="submit"] {
  display: block;
  background: linear-gradient(357deg, rgba(52, 0, 105, 1) 0%, rgba(0, 36, 96, 1) 100%);
  padding: 1rem;
  width: 90%;
  max-width: 320px;
  text-align: center;
  border-radius: 70px;
  margin: 0 auto;
  font-size: 18px;
  color: #FFF;
  text-decoration: none;
  transition: .3s all;
  font-weight: 400;
  letter-spacing: .1rem;
}

@media screen and (max-width:480px) {
  #container .content_title h2 {
    font-size: 20px;
  }

  .content_form .input_unit .my_left.my_column,
  .content_form .input_unit .my_right.my_column {
    width: 100%;
  }

  .content_form .input_unit .my_left.my_column {
    padding-bottom: 0;
  }

  .content_form .input_unit .my_right.my_column {
    border-bottom: 1px solid #F3F3F3;
    padding-bottom: 20px;
    padding-top: 5px;
  }

  .content_form div.input_unit:first-of-type {
    border-top: none;
  }

  .content_form .input_unit.checkbox .my_right.my_column {
    margin-top: 8px;
  }

  .content_form .input_unit.checkbox .my_right.my_column {
    padding-bottom: 5px;
  }

  form.myForm .required .my_column.my_left label:first-child:after {
    position: relative;
    margin-left: 16px;
  }

  form.myForm .required .my_column.my_left label:first-child:after {
    top: -4px;
  }

  form.myForm div.submit {
    padding-bottom: 0px;
  }

  #merit .service .title-des h4 {
    font-size: 18px;
  }
}