.layout-container {
  position: relative;
  max-width: 1200px;
  margin: 3rem auto;
}
.visa-requirements{
    width: 90%; margin: auto; margin-top: 30px;
}
.visa-requirements li {
  border-bottom: 1px dotted #ccc;
  width: 90%;
  padding-bottom: 5px;
  margin-bottom: 5px;
}



/* 图片容器 */
.flag-image {
  width: 600px;
  height: 360px;
  margin-left: 200px;
  position: relative;
}



.absolute {
  position: absolute;
}

.flag-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}





/* 文字内容区 */
.content-box {
  position: absolute;
  left: 45%;
  /* 图片宽度+间距 */
  top: 100px;
  /* 与图片底部间距 */
  width: 54%;
  height: 360px;
  /* 低于图片高度 */
  padding: 40px;
  background: #fff;
}





/* 左边框*/
.content-left::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0%;
  width: 50px;
  height: 15px;
  background: #D73366;
}






/* 左边框*/
.content-left::after {
  content: '';
  position: absolute;
  top: 0%;
  left: 0;
  width: 15px;
  height: 50px;
  background: #D73366;
}






/* 右边框 */
.content-right::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0%;
  width: 30px;
  height: 15px;
  background: #D73366;
}






/* 右边框 */
.content-right::after {
  content: '';
  position: absolute;
  top: 0%;
  right: 0;
  width: 15px;
  height: 150px;
  background: #D73366;
}







.content-header {
  padding-left: 20px;
}





.title {
  font-size: 2.4rem;
  color: #1a1a1a;
  margin-bottom: 12px;
}





.subtitle {
  color: #999999;
}




.subtitle2 {
  color: #DC3C62;
}




.content-body {
  line-height: 1.8;
  color: #444;
}





.highlight-text {
  padding-left: 20px;
  margin: 5px 0;
  color: black;
  font-size: 17px;
}




.consult-button1 {
  position: absolute;
  bottom: 20px;
  left: 60px;
  background: linear-gradient(225deg, #D73366 0%, #D73366 100%);
  color: white;
  padding: 8px 10px 8px 40px;
  border-radius: 30px;
  font-weight: 600;
}




.consult-button {
  position: absolute;
  bottom: 20%;
  right: 6%;
  background: linear-gradient(220deg, #E3111C 0%, #D73366 100%);
  color: white;
  padding: 8px 10px 8px 40px;
  border-radius: 30px;
  font-weight: 600;
}

@media (max-width: 768px) {
  .consult-button {
    right: 2%;
    left: 2%;
    width: 96vw;
    min-width: 0;
    max-width: 100vw;
    bottom: 10%;
    padding: 8px 10px 8px 10px;
    font-size: 1rem;
    border-radius: 20px;
  }
}
.consult-button2 {
  position: absolute;
  bottom: 10%;
  left: 6%;
  background: linear-gradient(220deg, #E3111C 0%, #D73366 100%);
  color: white;
  padding: 8px 10px 8px 40px;
  border-radius: 30px;
  font-weight: 600;
}




.arrow-up-right {
  display: flex;
  align-items: center;
}





/* -----------------适用人群 */
.application {
  margin-top: 100px;
  background-image: url(/v2/img/event_japan/intro2x.png);
  background-repeat: no-repeat;
  background-size: cover;
  height: 450px;
}





.application .content {
  padding-top: 5rem;

  margin: auto 20%;
}





.application .content h1 {
  margin-left: 1rem;
}





.advantages {
  padding-top: 80px;
  background-position: center calc(100% - 20%);
  background-image: url(/v2/img/event_liam/map.png);
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-size: auto;
  height: 500px;
}





.advantages-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
}





.advantage-item {
  position: relative;
  padding-left: 70px;
  min-height: 120px;
}





.advantage-item .badge1 {
  background-image: url(/v2/img/event_liam/num1.png);
  background-size: contain;
  background-repeat: no-repeat;
  height: 60px;
}





.advantage-item .badge2 {
  background-image: url(/v2/img/event_liam/num2.png);
  background-size: contain;
  background-repeat: no-repeat;
  height: 60px;
}





.advantage-item .badge3 {
  background-image: url(/v2/img/event_liam/num3.png);
  background-size: contain;
  background-repeat: no-repeat;
  height: 60px;
}





.advantage-item .badge4 {
  background-image: url(/v2/img/event_liam/num4.png);
  background-size: contain;
  background-repeat: no-repeat;
  height: 60px;
}





.badge {
  position: absolute;
  left: 0;
  top: 0;
  width: 50px;
  height: 50px;
  background: #dc2626;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
}





.advantage-title {
  font-size: 1.2rem;
  color: #fff;
  margin-left: 100px;
  padding-top: 6px;
  font-weight: 600;
  margin-bottom: 1rem;
}





.advantage-content {
  margin-left: 100px;
  color: #444;
  line-height: 1.8;
  padding-right: 20px;
}





.highlight {
  color: #dc2626;
  font-weight: 500;
}





@media (max-width: 768px) {
  .advantages-grid {
    grid-template-columns: 1fr;
  }


}





.juan img {
  width: 400px;
  padding-left: 2rem;
  margin-top: 4rem;
}





.apply {
  margin-left: 20%;
}





/* 给每个条件项添加下划线 */
.condition-item {
  position: relative;
  padding-bottom: 0.5rem;
  /* 控制下划线间距 */
}





.condition-item::after {
  content: '';
  position: absolute;
  left: 0rem;
  /* 控制左边起始位置 */
  right: 0;
  bottom: 0;
  height: 1px;
  background-image: linear-gradient(to right, #000000 50%, transparent 50%);
  opacity: 26%;
  background-size: 8px 1px;
  /* 控制虚线间隔 */
  background-repeat: repeat-x;
}







.section-projects {
  align-items: baseline;
  text-align: center;
  width: 65%;
  margin: auto;

}





.section-projects__desc {
  font-family: PingFangSC, PingFang SC;
  font-weight: 600;
  font-size: 16px;
  color: #999999;
  line-height: 25px;
  font-style: normal;
}





.advantages-title {
  text-align: left;

  padding-left: 70px;
  margin-bottom: 30px;
}





.card {

  width: 1/3;
  margin: 0 10px;
}





.card-img {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
}





.recommend-degree {
  text-align: center;
  margin-bottom: 10px;
}





.field-title {
  text-align: center;
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 10px;
}





/* 为 li 元素添加伪元素前置 ★ */
.custom-list li::before {
  content: '★';
  color: inherit;
  font-size: 1.8rem;
  margin-right: 0.5rem;
}





.rect-with-triangle {
  position: relative;
  background-color: #CF282F;
  color: white;
  border-radius: 10px;
  display: inline-block;
}





.rect-with-triangle::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 7px 0;
  border-color: transparent #CF282F transparent transparent;
  transform: translateY(-50%);
}





.chooise-item span {
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  font-size: 20px;
  color: #000000;
  line-height: 20px;
  text-align: left;
  font-style: normal;
}





.chooise-item .num {
  font-family: AkkuratPro, AkkuratPro;
  font-weight: bold;
  font-size: 20px;
  color: #CF282F;
  line-height: 34px;
  text-align: left;
  margin-right: 5px;
  font-style: normal;
}





.shadow-underline-with-gap {
  display: inline-block;
  box-shadow: 0 -1px #CF282F inset;
  padding-bottom: 10px;
  text-decoration: none;
}





.list-disc {
  list-style: disc;
}





.advantage-session {
  background: linear-gradient(195deg, #5C79B7 0%, #2F4481 100%);
}





.advantage-list {

  margin: 0 auto;
}





.custom-icon {
  width: 70px;
  height: 70px;
  margin: 0 auto;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}





.border-right {
  border-right: 1px solid rgba(255, 255, 255, 0.18);
  /* 使用rgba设置白色边框并设置透明度为0.18 */
  height: 170px;
}





.border-right::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 50%;
  width: 1px;
  background-color: rgba(255, 255, 255, 0.18);
}





.process-session .border-dotted {
  border-bottom: 7px dotted red;
}





.custom-icon2 {
  width: 100px;
  height: 100px;
  margin: 0 auto;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 20px;
}





.process-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}





.process-step::after {
  content: "";
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 1px;
  background-color: #ccc;
  z-index: -1;
}





.process-step:last-of-type::after {
  display: none;
}





.process-step-number {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: bold;
  border: 1px solid #ccc;
  margin-top: 10px;
}





.process-session .advantage-list {

  align-items: normal;
}






.box {
  display: inline-block;
  position: relative;
}





.box:not(:first-child)::before {
  content: '';
  position: absolute;

  opacity: 0.9216;
  top: 50px;
  left: 2%;
  border-bottom: 7px dotted #D3D3D3;
  width: 30%;
  /* 连接线的宽度 */
  height: 1px;
  /* 连接线的高度，可以根据需要调整 */

}





.box:not(:last-child)::after {
  content: '';
  position: absolute;
  opacity: 0.9216;
  top: 50px;
  right: 2%;
  border-bottom: 7px dotted #D3D3D3;
  width: 30%;
  /* 连接线的宽度 */
  height: 1px;
  /* 连接线的高度，可以根据需要调整 */
}





.box-number {
  position: absolute;
  right: -14px;
  top: 10px;
  background-color: #000000;
  color: white;
  padding: 6px 4px;
  border-radius: 6px;
  display: inline-block;
  transform: rotate(45deg);
  line-height: 1;
  width: 30px;
  height: 30px;
  text-align: center;
  align-items: center;
}





.box-number span {
  display: inline-block;
  transform: rotate(-45deg);
}





.name-mobile-form button {
  background: linear-gradient(225deg, #E3111C 0%, #db3a5f 100%);
  color: white;
  font-weight: bold;
}





.input-wrapper {
  display: flex;
  align-items: center;
  padding: 0;
  /* 去除边距 */
  border-radius: 40px;
  background-color: white;

}





.input-wrapper label {
  background: linear-gradient( 225deg, #E3111C 0%, #db3a5f 100%);
  color: white;
  width: 6rem;
  text-align: center;
  margin: auto;
  padding: 5px 10px;
  line-height: 40px;
  border-radius: 40px;
  font-weight: bold;
  font-size: 1.2rem;
}





.input-wrapper input {
  flex: 1;
  height: 40px;
  border: none;
  background-color: transparent;
  outline: none;
  font-size: 1rem;
}





.icon_title {
  align-items: flex-start;
}





.right_icon {
  width: 30px;
}





.pl-desc {
  padding-left: 3rem;
  font-size: 16px;
  margin-top: 0.8rem;
  line-height: 20px;
}





.ka img {
  height: 300px;
}





.qua {
  width: 70%;
}





.img4 {
  height: 400px;
}





.application .line {
  color: #fff;
  opacity: 0.7;
  justify-content: center;
  margin-top: 10px;
  line-height: 20px;
  font-size: 20px;
}





.project-advantage-bar {

}



.upper-title2 {
    top: -2.5vw;
    width: 35%;
    left: 0;
    height: 5vw;
    bottom: 2.5vw;
    padding-right: 3vw;
    background: linear-gradient( 220deg, #D73366 0%, #D73366 100%);
    display: flex;
    
}


.upper-title {
    top: -5vw;
    width: 45%;
    right: 0;
    height: 5vw;
    bottom: 5vw;
    padding-left: 3vw;
    background: linear-gradient( 220deg, #D73366 0%, #D73366 100%);
    display: flex;
        align-items: center;
}




.left-title {
  right: 0;
    height: 18%;
    width: 15%;
    top: 50px;
    background: linear-gradient( 220deg, #D73366 0%, #D73366 100%);
}



.processh2::before{
background-image: url("/v2/img/event_japan/icon.png");
}
.bg-cover {
    background-size: cover;
}

.bg-center {
    background-position: center;
}


.h-1\/2 {
    height: 50%;
}

.z-99 {
    z-index: 99;
}

.left-1\/5 {
    left: 20%;
}

.top-15 {
    top: 60px;
}

.w-9\/10 {
    width: 90%;
}

.mx-auto {
    margin: auto;
}

.mt-8 {
    margin-top: 30px;
}
.bg-cover {
    background-size: cover;
}

.bg-center {
    background-position: center;
}



.h-1\/2 {
    height: 50%;
}

.z-99 {
    z-index: 99;
}

.left-1\/5 {
    left: 20%;
}

.to-transparent{
  margin-left: 10%;
  margin-top: 2%;
  width: 40%;
}
.processimg{
    padding-top: 100px; width:80%
}
.responsive-content{
    background-image: url(/v2/img/event_japan/card.png);
    background-size: cover;
    background-position: center;
    width: 50%;
    height: 50%;
    z-index: 99;
    left: 20%;
    position: absolute;
    top: 60px;
}

.text-title {
    font-weight: 600;
    font-size: 1.5vw;
    line-height: 2rem;
}
.mb-12{
    margin-bottom: 3rem;
}
.py-12 {
    padding-top: 3rem;
    padding-bottom: 5rem;
}
@media (max-width: 1600px) {
    .responsive-content {
        height: 60%;
    }
    .processimg{
        padding-top: 16%; width:80%
    }
    .visa-requirements{
        margin-top: 15px;
    }
    .py-12 {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}
@media (min-width: 1600px) and (max-width: 1900px) {
    .responsive-content {
        height: 55%;
    }
    .processimg{
        padding-top: 10%; width:80%
    }
    .visa-requirements{
        margin-top: 15px;
    }
    .py-12 {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}
