@charset "utf-8";

/* --------------------------------------------------
  Resetting default margin and padding
-------------------------------------------------- */

/* !HTML5 elements
---------------------------------------------------------- */
header,
footer,
nav,
section,
aside,
article {
  display: block;
}

/* !Resetin
---------------------------------------------------------- */
body,
div,
pre,
p,
blockquote,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
th,
td,
input,
a,
textarea,
select,
span,
nav,
section,
header {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  outline: 0;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
}

fieldset,
img {
  border: 0;
}

img {
  vertical-align: top;
  max-width: 100%;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

q:after,
q:before {
  content: '';
}

abbr,
acronym {
  border: 0;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

input,
textarea {
  -webkit-appearance: none;
  appearance: none;
}



/* !Clearfix
---------------------------------------------------------- */
.clearfix {
  display: block;
  min-height: 1%;
}

.clearfix:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

/* !Layout
---------------------------------------------------------- */
html {
  overflow-x: hidden;
}

body {
  font-family: "小塚ゴシック Pr6N", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Helvetica Neue", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  color: #000;
  font-feature-settings: "palt";
  -webkit-text-size-adjust: none;
}

@media print {

  html,
  html body {
    *zoom: 0.65;
  }
}

/* link
------------------------------------------------ */
a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
  -webkit-transition: all 0.3s !important;
  /* Chrome&Safari */
  -moz-transition: all 0.3s !important;
  /* Firefox */
  transition: all 0.3s !important;
}

/* !fs
------------------------------------------------ */
.visible-pc {
  display: block !important;
}

.visible-pad {
  display: block !important;
}

.visible-ts {
  display: none !important;
}

.show430 {
  display: none !important;
}

@media (max-width: 1024px) {
  .visible-pad {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .visible-pc {
    display: none !important;
  }

  .visible-ts {
    display: block !important;
  }
}

/* !fonts
------------------------------------------------ */
.fwb {
  font-weight: 700;
}

.vat {
  vertical-align: top !important;
}

.vam {
  vertical-align: middle !important;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.fw300 {
  font-weight: 300 !important;
}

.pt10 {
  padding-top: 10px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}


/* !fc
------------------------------------------------ */
.ffgrv {
  font-family: 'Great Vibes', cursive;
  -webkit-font-smoothing: antialiased;
}

/* wrapper
----------------------------------------------- */
#wrapper {}

@media (max-width: 1024px) {}

@media (max-width: 767px) {}

/* footer
----------------------------------------------- */
#footer {
  padding: 31px 0;
}

#footer .footzhu {
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.12em;
}

.menu-nav {
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
}

.menu-nav .menu-item {
  padding: 0 15px;
  font-size: 14px;
  color: #464646;
  border-left: 1px solid #d4d4d4;
}

.menu-nav .menu-item:last-child {
  border-right: 1px solid #d4d4d4;
}

.menu-nav .menu-item a:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  #footer {
    padding: 36px 0;
  }
}

@media (max-width: 767px) {
  #footer {
    padding: 25px 0;
  }

  #footer .footzhu {
    font-size: 10px;
  }

  .menu-nav {
    margin-bottom: 10px;
  }

  .menu-nav .menu-item {
    font-size: 14px;
  }
}

/* public
----------------------------------------------- */
.inner {
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.gradbox {
  position: relative;
  padding: 25px;
  background-image: linear-gradient(to right, #d6defe, #ffc1d0 20%, #ffe0ca 50%, #ffc1d0 80%, #d6defe);
}

.gradbox .gradinner {
  background-color: #fff;
}

.gradbox .gradheader {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 440px;
  height: 70px;
  padding: 15px;
  text-align: center;
  background-color: #fff;
  border: 1px solid #fcbbc4;
  transform: translate(-50%, 32%);
}

.gradbox .gradheader .tit {
  font-size: 26px;
  letter-spacing: 0.11em;
}

#index_2 .gradbox .gradheader .tit {
  font-size: 25px;
}

.btncta {
  display: inline-block;
  vertical-align: top;
  width: 84vw;
  max-width: 840px;
  height: 8.9vw;
  max-height: 89px;
  padding-top: clamp(10px, 2.2vw, 22px);
  font-size: clamp(16px, 2.8vw, 28px);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.02em;
  text-align: center;
  text-shadow: 2px 2px 7px rgba(0, 0, 0, .5);
  background: url(../img/top/bg_btn.png) no-repeat;
  background-size: contain;
}

.btncta:hover {
  opacity: .8;
}

.btncta .str {
  position: relative;
  color: #ffe500;
}

.btncta .str:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  display: block;
  width: 5px;
  height: 5px;
  background-color: #ffe500;
  box-shadow: 2px 2px 7px rgba(0, 0, 0, .5);
  border-radius: 3px;
  transform: translateX(-50%);
}

@media (max-width: 767px) {
  .gradbox {
    padding: 8px;
  }

  .gradbox .gradheader {
    width: 188px;
    height: 28px;
    padding: 4px 0 6px;
    transform: translate(-50%, 36%);
  }

  #index_2 .gradbox .gradheader .tit,
  .gradbox .gradheader .tit {
    font-size: 12px;
  }

  .btncta {
    width: 78.8vw;
    max-width: 295px;
    height: 53px;
    padding-top: 15px;
    font-size: 15px;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, .5);
    background: url(../img/top/bg_btn_sp.png) no-repeat;
    background-size: contain;
  }

  .btncta .str:before {
    top: -6px;
    width: 3px;
    height: 3px;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, .5);
  }
}

.pulicfirst {
  text-align: center;
}

.pulicfirst .firstsoft .txt {
  font-size: 40px;
  font-weight: 500;
  letter-spacing: 0.07em;
}

#index_2 .mvbox .pulicfirst .firstsoft {
  position: relative;
}

#index_2 .mvbox .pulicfirst .firstsoft::before,
#index_2 .mvbox .pulicfirst .firstsoft::after {
  content: "";
  display: inline-block;
  width: 28px;
  height: 42px;
  background: url(../img/top/ico_mv_tips.png) no-repeat;
  background-size: auto;
  background-size: contain;
}

#index_2 .mvbox .pulicfirst .firstsoft::after {
  transform: rotateY(180deg);
}

#index_2 .mvbox .pulicfirst .firstsoft .txt {
  font-size: 36px;
}

.pulicfirst .firstsoft .pic {
  vertical-align: bottom;
  margin: 0 10px;
}

.pulicfirst .firstbuild {
  margin-top: 20px;
  font-size: 38px;
  font-weight: 500;
  letter-spacing: 0.07em;
}

#index_2 .mvbox .pulicfirst .firstbuild .break {
  display: block;
}

.pulicfirst .firstbuild .lar {
  padding-bottom: 12px;
  font-size: 1.54em;
  background-image: linear-gradient(to bottom, transparent 4px, #fff197 4px);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: auto 25px;
}

.pulicfirst br {
  display: none;
}

.mvbox .pulicfirst.f02 br {
  display: block;
}

@media (max-width: 1024px) {
  .pulicfirst br {
    display: block;
  }

}

@media (max-width: 767px) {}


/* top
----------------------------------------------- */
.topmv {
  background: center url(../img/top/bg_mv.jpg) no-repeat;
}

#index_2 .topmv {
  background: center url(../img/top/bg_mv_index_2.jpg) no-repeat;
}

.topmv .mvbox {
  padding: 55px 0 0;
  color: #333;
}

#index_2 .topmv .mvbox {
  padding: 30px 0 0;
}

.topmv .mvhead {
  margin-bottom: 35px;
  text-align: center;
}

#index_2 .topmv .mvhead {
  margin-bottom: 20px;
}

.topmv .mvcon {
  box-shadow: 0 0 80px rgba(255, 255, 255, .5), 0 0 80px rgba(255, 255, 255, .5);
}

.topmv .mvcon .gradinner {
  padding: 44px 0 60px;
}

#index_2 .topmv .mvcon .gradinner {
  padding: 10px 0 40px;
}

.topmv .mvtip {
  position: relative;
  margin-bottom: 32px;
  text-align: center;
}

.topmv .mvtip:before,
.topmv .mvtip:after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 42px;
  background: url(../img/top/ico_mv_tips.png) no-repeat;
  background-size: contain;
}

.topmv .mvtip:after {
  transform: rotateY(180deg);
}

.topmv .mvtip .txt {
  display: inline-block;
  vertical-align: top;
  padding: 0 30px;
  font-size: 38px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.08em;
}

.topmv .mvtxt .txt,
.ctabox .ctatxt02 .txt {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin: 20px 0;
}

.ctabox .ctatxt02 .txt .lar {
  font-size: 34px;
}

.topcta .ctabox .ctatxt02 .txt .lar {
  font-size: 45px;
}

#cta04.topcta .ctabox .tips {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: 24px;
  line-height: 1.8;
  color: #f8769a;
}

#cta04.topcta .ctabox .tips:before,
#cta04.topcta .ctabox .tips:after {
  content: "";
  position: absolute;
  left: -45px;
  top: -15px;
  display: inline-block;
  width: 33px;
  height: 55px;
  background: url(../img/top/ico_start_tips.png) no-repeat;
  background-size: contain;
}

#cta04.topcta .ctabox .tips:after {
  left: auto;
  right: -45px;
  transform: rotateY(180deg);
}

.topcta .ctabox .hl {
  background-color: #fff197;
}

.topcta .ctabox .txt {
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-bottom: 1em;
}

.topmv .mvtip .txt .lit {
  font-size: 0.7632em;
}

.topmv .mvchara {
  display: flex;
  justify-content: center;
  column-gap: 34px;
  padding: 55px 0 50px;
}

#index_2 .topmv .mvchara {
  padding: 50px 0 45px;
}

.topmv .mvchara .charaitem {
  flex: none;
  position: relative;
  width: 152px;
  height: 152px;
  padding: 38px 10px;
  text-align: center;
  background-color: #ffd1ca;
  border-radius: 50%;
}

.topmv .mvchara .charaitem:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  display: block;
  width: 140px;
  height: 140px;
  border: 1px solid #fff;
  border-radius: 50%;
}

.topmv .mvchara .charaitem span {
  display: block;
  font-size: 30px;
  line-height: 1.3;
  color: #333;
}

@media (max-width: 1024px) {
  .topmv .mvbox {
    padding-top: 40px;
  }

  .topmv .mvhead {
    margin-bottom: 25px;
  }

  .topmv .mvcon .gradinner {
    padding: 33px 0 50px;
  }

  .topmv .mvtip .txt {
    padding: 0 24px;
    font-size: 32px;
  }

  .pulicfirst .firstsoft .txt {
    font-size: 36px;
  }

  .pulicfirst .firstsoft .pic {
    width: 350px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft .pic {
    width: 300px;
  }

  .topmv .mvtip {
    margin-bottom: 24px;
  }

  .topmv .mvtip:before,
  .topmv .mvtip:after {
    height: 36px;
  }

  .pulicfirst .firstbuild {
    margin-top: 15px;
    font-size: 35px;
  }

  #index_2 .mvbox .pulicfirst .firstbuild {
    font-size: 30px;

  }

  .pulicfirst .firstbuild .lar {
    padding-bottom: 8px;
  }

  .topmv .mvchara .charaitem {
    width: 114px;
    height: 114px;
    padding: 30px 8px;
  }

  .topmv .mvchara .charaitem:before {
    width: 102px;
    height: 102px;
  }

  .topmv .mvchara .charaitem span {
    font-size: 22px;
  }

  .pulicfirst .firstsoft:before,
  .pulicfirst .firstsoft:after {
    height: 36px;
  }
}

@media (max-width: 767px) {
  .topmv {
    background: center url(../img/top/bg_mv_sp.jpg) no-repeat;
    background-size: cover;
  }

  #index_2 .topmv {
    background: center url(../img/top/bg_mv_index_2_sp.jpg) no-repeat;
    background-size: cover;
  }

  #index_2 .topmv .mvbox,
  .topmv .mvbox {
    padding-top: 18px;
  }

  #index_2 .topmv .mvhead,
  .topmv .mvhead {
    margin-bottom: 8px;
  }

  .topmv .mvcon {
    box-shadow: 0 0 40px rgba(255, 255, 255, .25),
      0 0 40px rgba(255, 255, 255, .25);
    margin: 0 15px;
  }

  #index_2 .topmv .mvcon .gradinner,
  .topmv .mvcon .gradinner {
    padding: 15px 0 24px;
    ;
  }

  .topmv .mvtip {
    margin-bottom: 2px;
  }

  .topmv .mvtip .txt {
    font-size: 14px;
    padding: 0 6px;
  }

  .topmv .mvtip:before,
  .topmv .mvtip:after {
    width: 10px;
    height: 16px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft .txt {
    font-size: 16px;
  }

  .pulicfirst .firstsoft .txt {
    font-size: 18px;
  }

  .pulicfirst .firstsoft .pic {
    width: 50%;
    max-width: 233px;
    margin: 0;
  }

  #index_2 .mvbox .pulicfirst .firstsoft .pic {
    width: 50%;
    max-width: 233px;
    margin: 0;
  }

  #index_2 .mvbox .pulicfirst .firstbuild,
  .pulicfirst .firstbuild {
    margin-top: 2px;
    font-size: 16px;
    line-height: 1.2;
  }

  #index_2 .mvbox .pulicfirst .firstbuild .lar {
    padding-bottom: 0;
    background-image: linear-gradient(to bottom, transparent 14px, #fff197 14px);
    font-size: 23px;
    margin-bottom: 8px;
  }

  /* .pulicfirst .firstbuild .lar {
    padding-bottom: 0;
    background-image: linear-gradient(to bottom, transparent 14px, #fff197 14px);
    font-size: 17px;
    margin-bottom: 8px;
} */
  .topmv .mvtxt .txt,
  .ctabox .ctatxt02 .txt {
    font-size: 14px;
    line-height: 1.3;
  }

  .topmv .mvtxt .txt {
    margin: 10px 0;
  }

  #index_2 .topmv .mvchara,
  .topmv .mvchara {
    padding: 18px 0 24px;
    column-gap: 12px;
  }

  .topmv .mvchara .charaitem {
    width: 60px;
    height: 60px;
    padding: 16px 5px;
  }

  .topmv .mvchara .charaitem:before {
    top: 2px;
    left: 2px;
    width: 54px;
    height: 54px;
  }

  .topmv .mvchara .charaitem span {
    font-size: 12px;
    line-height: 1.2;
  }

  .topvoice .voicetxt {
    padding: 0 10px;
  }

  .topvoice .voicetxt .txt {
    font-size: 14px !important;
  }

  .toparticle .articlebd .txt.tips {
    font-size: 20px !important;
  }

  .articleh2box h2 {
    font-size: 17px !important;
  }

  .articleh2box p {
    font-size: 22px !important;
  }

  .article03 .articlebd .txt.txt02 {
    font-size: 18px !important;
  }

  .article03 .articlebd .txt span.sm {
    font-size: 14px !important;
  }

  .article03 .articlebd .txt.txt03 {
    font-size: 22px !important;
  }
}

.topcta {
  padding: 55px 0;
  background-image: linear-gradient(to right, #d6defe, #ffc1d0 20%, #ffe0ca 50%, #ffc1d0 80%, #d6defe);
}

.topcta .ctabox {
  position: relative;
  width: 100%;
  padding: 3px;
  border: 4px solid #fff;
  background-color: #fff;
  background-clip: content-box;
}

.topcta .ctatxt {
  position: relative;
  padding-top: 42px;
  text-align: center;
  color: #292929;
}

.topcta .ctatxt:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 21px;
  width: 82px;
  height: 22px;
  background: url(../img/top/ico_cta_tips.png) no-repeat;
  background-size: contain;
  transform: translateX(-40%);
}

.topcta .ctatxt .lar {
  font-size: 42px;
  letter-spacing: 0.12em;
}

#index_2 .topcta .ctatxt .lar {
  font-size: 32px;
  letter-spacing: 0.12em;
}

.topcta .ctatxt .mid {
  font-size: 25px;
  letter-spacing: 0.2em;

}

.topcta .ctabtn {
  padding: 15px 0 30px;
  text-align: center;
}

.topcta .ctabtn .tips {
  margin-top: 20px;
  padding: 0 10%;
  font-size: 14px;
  letter-spacing: 0.12em;
}

.topcta .ctaheader {
  position: absolute;
  left: 50%;
  top: 0;
  width: 440px;
  height: 70px;
  padding: 15px;
  text-align: center;
  background-color: #fff;
  border: 1px solid #fcbbc4;
  transform: translate(-50%, -53%);
}

.topcta .ctaheader .tit {
  font-size: 26px;
  letter-spacing: 0.11em;
}

.cta02 {
  padding: 115px 0 100px;
}

.cta02 .pulicfirst {
  padding: 65px 0 6px;
}

.cta02 .pulicfirst .firstsoft .txt {
  font-size: 35px;
}

.cta02 .pulicfirst .firstsoft .pic {
  width: 408px;
}

.cta02 .pulicfirst .firstbuild {
  font-size: 32px;
}

.cta02 .pulicfirst .firstbuild .lar {
  padding-bottom: 10px;
  background-size: auto 22px;
}

#cta04 {
  background-image: none;
}

#cta04.topcta .ctabox .txt {
  font-size: 25px;
}

#cta04.topcta .ctabox .tips {
  font-size: 43px;
  margin-bottom: 0.2em;
}

#cta04.topcta .ctabox .tips::before,
#cta04.topcta .ctabox .tips::after {
  top: 10px;
}

@media (max-width: 1024px) {
  .topcta .ctatxt .lar {
    font-size: 32px;
  }

  .topcta .ctatxt .mid {
    font-size: 18px;
  }

  .cta02 {
    padding: 85px 0 75px;
  }

  .cta02 .pulicfirst {
    padding: 60px 0 5px;
  }

  .cta02 .pulicfirst br {
    display: none;
  }

  .cta02 .pulicfirst .firstsoft .txt {
    font-size: 26px;
  }

  .cta02 .pulicfirst .firstsoft .pic {
    width: 306px;
  }

  .cta02 .pulicfirst .firstbuild {
    font-size: 24px;
  }
}

@media (max-width: 767px) {
  .topcta {
    padding: 30px 0 32px;
  }

  .topcta .ctabox {
    padding: 2px;
    border-width: 2px;
  }

  .topcta .ctatxt {
    padding-top: 27px;
  }

  .topcta .ctatxt:before {
    top: 16px;
    width: 43px;
    height: 12px;
  }

  #index_2 .topcta .ctatxt .lar,
  .topcta .ctatxt .lar {
    font-size: 23px;
    margin-bottom: 8px;
  }

  .topcta .ctatxt .mid {
    font-size: 13px;
    line-height: 1.3;
  }

  .topcta .ctabtn {
    padding: 5px 0 20px;
  }

  .topcta .ctaheader {
    width: 210px;
    height: 32px;
    padding: 5px 0 7px;
    transform: translate(-50%, -16px);
  }

  .topcta .ctaheader .tit {
    font-size: 14px;
  }

  .cta02 {
    padding: 36px 0 30px;
  }

  .cta02 .pulicfirst {
    padding: 28px 0 10px;
  }

  .cta02 .pulicfirst .firstsoft .txt {
    font-size: 14px;
  }

  .cta02 .pulicfirst .firstsoft .pic {
    width: 45.6vw;
    max-width: 170px;
  }

  .cta02 .pulicfirst .firstbuild {
    font-size: 14px;
  }

  .cta02 .pulicfirst .firstbuild .lar {
    padding-bottom: 4px;
    background-size: auto 20px;
  }

  .topcta .ctabtn .tips {
    font-size: 9px;
    margin-top: 5px;
  }

  .cta02 .ctabtn {
    padding-bottom: 13px;
  }
}

.topvoice {
  padding-bottom: 70px;
}

.topvoice .voiceheader {
  padding: 100px 80px 45px;
}

.topvoice .voicetip {
  margin-bottom: 12px;
  color: #292929;
  text-align: center;
}

.topvoice .voicetip .con {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding: 6px 22px;
  background-color: #f8f9ff;
  border: 2px solid #c5c9f9;
  border-radius: 3px;
}

.topvoice .voicetip .con:before {
  content: "";
  position: absolute;
  left: -45px;
  top: -40px;
  width: 51px;
  height: 61px;
  background: url(../img/top/ico_voice.png) no-repeat;
  background-size: contain;
}

.topvoice .voicetip .con:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -9px;
  width: 12px;
  height: 12px;
  background-color: #f8f9ff;
  border-left: 2px solid #c5c9f9;
  border-bottom: 2px solid #c5c9f9;
  border-radius: 3px;
  transform: translateX(-50%) scaleX(0.9) rotate(-45deg);
}

.topvoice .voicetip .txt {
  font-size: 25px;
  letter-spacing: 0.2em;
}

.topvoice .voiceheader .tit {
  font-size: 43px;
  letter-spacing: 0.12em;
  text-align: center;
  color: #434343;
}

.topvoice .voiceheader .tips {
  font-size: 16px;
  letter-spacing: 0.12em;
  text-align: center;
  color: #434343;
}

.topvoice .voicetxt {
  margin-top: 30px;
}

.topvoice .voicetxt .txt {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-bottom: 1em;
}

.topvoice .voicetxt .txt .red {
  color: red;
}

.voiceslick {
  position: relative;
  display: flex;
  overflow: hidden;
}

.voiceslick .slick-arrow {
  position: absolute;
  top: 118px;
  z-index: 2;

  display: block;
  width: 48px;
  height: 48px;
  padding: 0;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: #fff url(../img/top/ico_arrow.png) no-repeat 16px center;
  background-size: 14px 20px;
  border-radius: 50%;
  box-shadow: 1px 0 10px rgba(0, 0, 0, .1);
}

.voiceslick .slick-arrow.slick-prev {
  left: calc((100% - 1014px) * .5);
}

.voiceslick .slick-arrow.slick-next {
  right: calc((100% - 1014px) * .5);
  transform: rotateY(180deg);
}

.voiceslick .slick-list {
  padding: 0 calc((100% - 1014px) * .5);
}

.voiceslick .slickitem {
  padding: 0 27px;
}

.voiceslick .slickitem .pic {
  position: relative;
  width: 100%;
  background: #ddd;
  border-radius: 50%;
  overflow: hidden;
}

.voiceslick .slickitem .pic .info {
  position: absolute;
  left: 50%;
  bottom: 20px;
  font-size: 20px;
  letter-spacing: 0.22em;
  font-weight: 700;
  color: #333;
  text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff,
    0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
  transform: translateX(-50%);
  white-space: nowrap;
}

.voiceslick .slickitem .des {
  margin-top: 20px;
}

.voiceslick .slickitem .des .txt {
  font-size: 16px;
  line-height: 1.675;
  letter-spacing: -0.015em;
}

.voiceslick .slickitem .des .str {
  background-color: #fff197;

}

@media (max-width: 1024px) {
  .voiceslick .slick-list {
    padding: 0 15px;
  }

  .voiceslick .slickitem {
    padding: 0 15px;
  }

  .voiceslick .slick-arrow {
    top: calc(100vw / 6 - 44px);
  }

  .voiceslick .slick-arrow.slick-prev {
    left: 15px;
  }

  .voiceslick .slick-arrow.slick-next {
    right: 15px;
  }
}

@media (max-width: 767px) {
  .topvoice {
    padding-bottom: 40px;
  }

  .topvoice .voiceheader {
    padding: 42px 10px 20px;
  }

  .topvoice .voiceheader .tit {
    font-size: 23px;
  }

  .topvoice .voicetip .con {
    padding: 6px 20px;
    border-width: 1px;
  }

  .topvoice .voicetip {
    margin-bottom: 10px;
  }

  .topvoice .voicetip .con:before {
    left: -22px;
    top: -23px;
    width: 31px;
    height: 37px;
  }

  .topvoice .voicetip .con:after {
    border-width: 1px;
    border-radius: 1px;
    bottom: -6px;
    width: 10px;
    height: 10px;
  }

  .topvoice .voicetip .txt {
    display: block;
    font-size: 14px;
    line-height: 1.28;
  }

  .voiceslick .slick-list {
    padding: 0 8px;
  }

  .voiceslick .slickitem {
    padding: 0 8px;
  }

  .voiceslick .slick-arrow {

    top: calc(100vw / 6 - 25px);
    width: 28px;
    height: 28px;
    background-position: 9px center;
    background-size: 9px 12px;
  }

  .voiceslick .slick-arrow.slick-prev {
    left: 10px;
  }

  .voiceslick .slick-arrow.slick-next {
    right: 10px;
  }

  .voiceslick .slickitem .pic .info {
    bottom: 10px;
    font-size: 10px;
  }

  .voiceslick .slickitem .des .txt {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0;
  }

  .voiceslick .slickitem .des {
    margin-top: 9px;
  }

  .topvoice .voiceheader .tips {
    font-size: 14px;
  }
}

.topstart {
  padding: 90px 0 100px;
  background: #f3f2f8 url(../img/top/bg_strart.jpg) no-repeat center;
}

.topstart .startheader .pic {
  text-align: center;
}

.topstart .startheader .tit {
  padding: 10px 0 40px;
  font-size: 43px;
  letter-spacing: 0.12em;
  color: #434343;
  text-align: center;
}

.topstart .starthd {
  padding: 55px 0 45px;
  text-align: center;
}

.topstart .starthd .tit {
  display: inline;
  padding-bottom: 4px;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.68;
  border: 0;
  border-bottom-width: 9px;
  border-style: solid;
  border-image: url(../img/top/ico_border_org.png) 7 repeat;
}

.topstart .startbd {
  text-align: center;
}

.topstart .startbd .txt {
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-bottom: 1em;
}

.topstart .startbd .str {
  background-color: #fff197;
}

.topstart .startbd .tips {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: 24px;
  line-height: 1.8;
  color: #f8769a;
}

.topstart .startbd .tips:before,
.topstart .startbd .tips:after {
  content: "";
  position: absolute;
  left: -45px;
  top: -15px;
  display: inline-block;
  width: 33px;
  height: 55px;
  background: url(../img/top/ico_start_tips.png) no-repeat;
  background-size: contain;
}

.topstart .startbd .tips:after {
  left: auto;
  right: -45px;
  transform: rotateY(180deg);
}

@media (max-width: 1024px) {
  .topstart {
    padding: 65px 0 75px;
  }

  .topstart .startheader .tit {
    font-size: 32px;
  }

  .topstart .startheader .pic {
    padding: 0 6%;
  }

  .topstart .startbd .pic {
    padding: 0 10%;
  }
}

@media (max-width: 767px) {
  .topstart {
    padding: 36px 0 45px;
    background-size: cover;
  }

  .topstart .startheader .pic {
    padding: 0;
  }

  .topstart .startheader .tit {
    font-size: 23px;
    line-height: 1.38;
    padding: 5px 0 15px;
  }

  .topstart .starthd {
    padding: 33px 0 22px;
  }

  .topstart .starthd .tit {
    font-size: 18px;
    padding-bottom: 1px;
    border-bottom-width: 5px;
  }

  .topstart .startbd .txt {
    font-size: 14px;
  }

  .topstart .startbd .tips {
    font-size: 16px;
  }

  .topstart .startbd .tips:before,
  .topstart .startbd .tips:after {
    width: 15px;
    height: 25px;
    left: -15px;
    top: 0;
  }

  .topstart .startbd .tips:after {
    left: auto;
    right: -15px;
  }
}

.toppart {
  padding: 100px 0 100px;
  background-color: #fbedf2;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 25%, rgba(255, 255, 255, .2) 50%, transparent 75%, rgba(255, 255, 255, .2));
  background-size: 24px 24px;
}

.toppart .partheader {
  text-align: center;
  color: #292929;
  margin-bottom: 25px;
}

.toppart .partheader .tips {
  position: relative;
  display: inline-block;
  font-size: 25px;
  letter-spacing: 0.2em;
}

.toppart .partheader .tips:before,
.toppart .partheader .tips:after {
  content: "";
  display: inline-block;
  vertical-align: bottom;
  width: 22px;
  height: 38px;
  background: url(../img/top/ico_part_tips.png) no-repeat;
  background-size: contain;
  margin: 0 12px;
}

.toppart .partheader .tips:after {
  transform: rotateY(180deg);
}

.toppart .partheader .tit {
  font-size: 43px;
  letter-spacing: 0.12em;
  margin-top: 15px;
  color: #434343;
}

.toppart .partcon {
  padding: 48px 64px;
  background-color: #fff;
}

.toppart .partitem {
  position: relative;
  padding: 3px 0 3px 55px;
  margin-bottom: 20px;
  font-size: 22px;
  letter-spacing: 0.12em;
}

.toppart .partitem:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 39px;
  height: 39px;
  background: url(../img/top/ico_tick.png) no-repeat;
  background-size: contain;
}

.toppart .partitem:last-child {
  margin: 0;
}

@media (max-width: 1024px) {
  .toppart .partheader .tips {
    font-size: 20px;
  }

  .toppart .partheader .tit {
    font-size: 32px;
  }

}

@media (max-width: 767px) {
  .toppart {
    padding: 40px 0 48px;
    background-size: 12px 12px;
  }

  .toppart .partheader {
    margin-bottom: 15px;
  }

  .toppart .partheader .tips {
    font-size: 14px;
    letter-spacing: 0.1em;
    margin: 0 -10px;
  }

  .toppart .partheader .tips:before,
  .toppart .partheader .tips:after {
    width: 10px;
    height: 18px;
    margin: 0 3px 0 0;
  }

  .toppart .partheader .tips:after {
    margin: 0 0 0 3px;
  }

  .toppart .partheader .tit {
    font-size: 23px;
    margin-top: 5px;
  }

  .toppart .partcon {
    padding: 30px 15px;
  }

  .toppart .partitem {
    padding: 1px 0 1px 26px;
    font-size: 14px;
    margin-bottom: 15px;
  }

  .toppart .partitem:before {
    width: 20px;
    height: 20px;
  }

}

.toppart2 {
  padding: 60px 0 30px;
  background-color: #fbedf2;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 25%, rgba(255, 255, 255, .2) 50%, transparent 75%, rgba(255, 255, 255, .2));
  background-size: 24px 24px;
}

.toppart2 .partheader {
  text-align: center;
  color: #292929;
  margin-bottom: 25px;
}

.toppart2 .partheader .tips {
  position: relative;
  display: inline-block;
  font-size: 25px;
  letter-spacing: 0.2em;
}

.toppart2 .partheader .tips:before,
.toppart2 .partheader .tips:after {
  content: "";
  display: inline-block;
  vertical-align: bottom;
  width: 22px;
  height: 38px;
  background: url(../img/top/ico_part_tips.png) no-repeat;
  background-size: contain;
  margin: 0 12px;
}

.toppart2 .partheader .tips:after {
  transform: rotateY(180deg);
}

.toppart2 .partheader .tit {
  font-size: 43px;
  letter-spacing: 0.12em;
  margin-top: 15px;
  color: #434343;
}

.toppart2 .partcon {
  padding: 48px 64px;
  background-color: #fff;
}

.toppart2 .partitem {
  position: relative;
  padding: 3px 0 3px 55px;
  margin-bottom: 20px;
  font-size: 22px;
  letter-spacing: 0.12em;
}

.toppart2 .partitem:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 39px;
  height: 39px;
  background: url(../img/top/ico_tick.png) no-repeat;
  background-size: contain;
}

.toppart2 .partitem:last-child {
  margin: 0;
}

@media (max-width: 1024px) {
  .toppart2 .partheader .tips {
    font-size: 20px;
  }

  .toppart2 .partheader .tit {
    font-size: 32px;
  }

}

@media (max-width: 767px) {
  .toppart2 {
    padding: 30px 0 15px;
    background-size: 12px 12px;
  }

  .toppart2 .partheader {
    margin-bottom: 15px;
  }

  .toppart2 .partheader .tips {
    font-size: 14px;
    letter-spacing: 0.1em;
    margin: 0 -10px;
  }

  .toppart2 .partheader .tips:before,
  .toppart2 .partheader .tips:after {
    width: 10px;
    height: 18px;
    margin: 0 3px 0 0;
  }

  .toppart2 .partheader .tips:after {
    margin: 0 0 0 3px;
  }

  .toppart2 .partheader .tit {
    font-size: 23px;
    margin-top: 5px;
  }

  .toppart2 .partcon {
    padding: 30px 15px;
  }

  .toppart2 .partitem {
    padding: 1px 0 1px 26px;
    font-size: 14px;
    margin-bottom: 15px;
  }

  .toppart2 .partitem:before {
    width: 20px;
    height: 20px;
  }

}


.topworry {
  padding: 90px 0 100px;
  background: #dfe6ea url(../img/top/bg_worry.jpg) center bottom no-repeat;
}

.topworry .worrytit {
  font-size: 43px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 70px;
}

.topworry .worrycon {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: calc(100% - 620px);
  row-gap: 50px;
}

.topworry .worryitem {
  flex: none;
  position: relative;
  width: 310px;
  padding: 20px;
}

.topworry .worryitem .tit {
  font-size: 27px;
  line-height: 1.4;
  letter-spacing: 0.12em;
  color: #0f6a9c;
  text-align: center;
  text-shadow: 2px 2px 0 #fff;
  margin-bottom: 6px;
}

.topworry .worryitem .des {
  position: relative;
  padding: 5px 10px;
}

.topworry .worryitem .des:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, .8);
  filter: blur(6px);
}

.topworry .worryitem .txt {
  position: relative;
  font-size: 19px;
  letter-spacing: 0.06em;
  line-height: 1.7;
}

.topworry .decorate .ico-lt {
  position: absolute;
  left: 0;
  top: 0;
}

.topworry .decorate .ico-rb {
  position: absolute;
  right: 0;
  bottom: 0;
  transform: rotateZ(180deg);
  transform-origin: 0 0;
}

.topworry .decorate .ico-lt:before,
.topworry .decorate .ico-lt:after,
.topworry .decorate .ico-rb:before,
.topworry .decorate .ico-rb:after {
  content: "";
  position: absolute;
  background-color: #2d76b2;
}

.topworry .decorate .ico-lt:before,
.topworry .decorate .ico-rb:before {
  top: 7px;
  left: 0;
  width: 37px;
  height: 1px;
}

.topworry .decorate .ico-lt:after,
.topworry .decorate .ico-rb:after {
  top: 0;
  left: 7px;
  width: 1px;
  height: 37px;
}

.topworry .worryitem:nth-child(1) {
  transform: translateX(22%);
}

.topworry .worryitem:nth-child(2) {
  transform: translateX(-22%);
}

.topworry .worryitem:nth-child(3) {
  transform: translateX(-6.7%);
}

.topworry .worryitem:nth-child(4) {
  transform: translateX(6.7%);
}

.topworry .worryitem:nth-child(5) {
  transform: translateX(3%);
}

.topworry .worryitem:nth-child(6) {
  transform: translateX(-3%);
}

.topworry .worryitem:nth-child(7) {
  transform: translateX(16%);
}

.topworry .worryitem:nth-child(8) {
  transform: translateX(-16%);
}

@media (max-width: 1024px) {
  .topworry {
    padding: 65px 0 75px;
  }

  .topworry .worrytit {
    font-size: 32px;
    margin-bottom: 50px;
  }

  .topworry .worrycon {
    justify-content: center;
    column-gap: calc((100% - 620px) / 3);
    row-gap: 40px;
  }

  .topworry .worryitem {
    transform: none !important;
  }

  .topworry .worryitem .tit {
    font-size: 20px;
    text-shadow: 1px 1px 0 #fff;
  }

  .topworry .worryitem .txt {
    font-size: 16px;
  }
}

@media (max-width: 767px) {
  .topworry {
    padding: 40px 0 50px;
    background: #dfe6ea url(../img/top/bg_worry_sp.jpg) 0 bottom no-repeat;
    background-size: 100% auto;
  }

  .topworry .worrytit {
    font-size: 22px;
    line-height: 1.4;
    margin-bottom: 35px;
  }

  .topworry .worrycon {
    justify-content: space-between;
    row-gap: 23px;
  }

  .topworry .worryitem {
    width: 48%;
    padding: 5px;
  }

  .topworry .worryitem .tit {
    font-size: 16px;
    margin-bottom: 0;
  }

  .topworry .worryitem .txt {
    font-size: 14px;
  }

  .topworry .decorate .ico-lt {
    left: -4px;
    top: -4px;
    ;
  }

  .topworry .decorate .ico-rb {
    right: -4px;
    bottom: -4px;
  }

  .topworry .decorate .ico-lt:before,
  .topworry .decorate .ico-rb:before {
    top: 4px;
    width: 22px;
  }

  .topworry .decorate .ico-lt:after,
  .topworry .decorate .ico-rb:after {
    left: 4px;
    height: 22px;
  }

  .topworry .worryitem .des {
    padding: 5px 7px;
  }
}

.toparticle {
  padding: 100px 0;
  background-color: #e9edfa;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 25%, rgba(255, 255, 255, .2) 50%, transparent 75%, rgba(255, 255, 255, .2));
  background-size: 24px 24px;
}

.toparticle .articlebox {
  padding: 50px;
  background-color: #fff;
}

.toparticle .articlehd {
  text-align: center;
}

.toparticle .articlehd .tit {
  padding: 25px 0 40px;
  font-size: 43px;
  line-height: 1.4;
  color: #434343;
  letter-spacing: 0.12em;
}

.toparticle .articlehd .frs {
  font-size: 32px;
  letter-spacing: 0.12em;
}

.toparticle .articlebd {
  text-align: center;
  padding-bottom: 25px;
}

.toparticle .articlebd .pic {
  margin: 0 0 50px;
  border: 6px solid #ffd1ca;
  box-shadow: 14px 14px 0 #f0f0f0;
}

.toparticle .articlebd .txt {
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-bottom: 1em;
}

.toparticle .articlebd .txt:last-child {
  margin-bottom: 0;
}

.toparticle .articlebd .txt.tips {
  font-size: 35px;
  letter-spacing: 0.12em;
  line-height: 1.68;
  border: 0;
}

.toparticle .articlebd .str {
  background-color: #fff197;
}

.article02 {
  background-color: #fbedf2;
}

.article02 .articlebd .pic {
  margin-top: 40px;
}

.article02 .other {
  font-weight: 500;
  margin: 40px 0 25px;
}

.article02 .other .lar {
  font-size: 43px;
  color: #434343;
  letter-spacing: 0.12em;
}

.article02 .other .lit {
  font-size: 25px;
  color: #292929;
  letter-spacing: 0.2em;
  margin-top: 20px;
}

.article02 .articlehd {
  padding: 15px 0 40px;
}

.article02 .articlehd .tit02 {
  display: inline;
  padding-bottom: 4px;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.68;
  border: 0;
  border-bottom-width: 9px;
  border-style: solid;
  border-image: url(../img/top/ico_border_blu.png) 7 repeat;
}

.article03 {
  background-color: #fff1e7;
}

.article03 .articlehd .tit {
  font-weight: 500;
  color: #000;
  padding-bottom: 55px;
}

.article03 .articlehd .tit .str {
  background-color: #ded9f9;
}

.article03 .articlebd .pic {
  margin-top: 50px;
}

.article03 .articlebd .txt {
  margin-bottom: 1.5em;
}

.article03 .articlebd .txt.txt02 {
  font-size: 25px;
  font-weight: 500;
  margin-bottom: 20px;
}

.article03 .articlebd .txt span.sm {
  font-size: 20px;
}

.article03 .articlebd .txt.txt03 {
  font-size: 25px;
  font-weight: 500;
}


@media (max-width: 1024px) {
  .toparticle .articlehd .tit {
    font-size: 32px;
  }

  .article02 .other .lar {
    font-size: 32px;
  }

  .article02 .other .lit {
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .toparticle {
    padding: 45px 0;
    background-size: 12px 12px;
  }

  .toparticle .articlebox {
    padding: 30px 17px 0;
  }

  .toparticle .articlehd .tit {
    font-size: 20px;
    line-height: 1.5;
    padding: 0;
    margin-bottom: 15px;
  }

  .toparticle .articlebd .pic {
    border-width: 3px;
    box-shadow: 8px 6px 0 #f0f0f0;
    margin-bottom: 30px;
  }

  .toparticle .articlebd .txt {
    font-size: 14px;
  }

  .toparticle .articlebd {
    padding-bottom: 34px;
  }

  .article02 .articlehd {
    padding: 0;
    margin-bottom: 18px;
  }

  .article02 .articlehd .tit02 {
    font-size: 17px;
    padding-bottom: 1px;
    border-bottom-width: 5px;
  }

  .article02 .articlebd .pic {
    margin-top: 16px;
  }

  .article02 .other {
    margin: 18px 0 4px;
  }

  .article02 .other .lar {
    font-size: 24px;
  }

  .article02 .other .lit {
    font-size: 14px;
    margin-top: 6px;
  }

  .article03 .articlebd .pic {
    margin-top: 25px;
  }
}

.toppoint {
  padding: 110px 0;
  background: url(../img/top/bg_point.jpg) center no-repeat;
  background-size: cover;
}

.toppoint .pointbox {
  border: 75px solid #fff;
  border-image: url(../img/top/bg_point_box.png) 75 fill repeat;
}

.toppoint .pointheader {
  margin: -15px 0 35px;
  text-align: center;
}

.toppoint .pointheader .tips {
  position: relative;
  display: inline-block;
  font-size: 25px;
  letter-spacing: 0.2em;
  color: #292929;
}

.toppoint .pointheader .tips:before,
.toppoint .pointheader .tips:after {
  content: "";
  display: inline-block;
  vertical-align: bottom;
  width: 27px;
  height: 43px;
  background: url(../img/top/ico_point_tips.png) no-repeat;
  background-size: contain;
  margin: 0 12px;
}

.toppoint .pointheader .tips:after {
  transform: rotateY(180deg);
}

.toppoint .pointheader .tit {
  font-size: 43px;
  letter-spacing: 0.12em;
  margin-top: 15px;
  color: #434343;
}

.toppoint .pointheader .str {
  background-color: #fcdbd4;
}

.toppoint .pointcon {
  margin: 0 -28px -15px -8px;
}

.toppoint .pointlist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.toppoint .pointitem {
  position: relative;
  width: 48%;
  padding: 0 10px 0 25px;
  margin-bottom: 25px;
}

.toppoint .pointitem:before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  display: block;
  width: 14px;
  height: 14px;
  background-color: #f2be9f;
  border-radius: 50%;
}

.toppoint .pointitem:nth-child(5n + 1) {
  order: 1;
}

.toppoint .pointitem:nth-child(5n + 2) {
  order: 2;
}

.toppoint .pointitem:nth-child(5n + 3) {
  order: 3;
}

.toppoint .pointitem:nth-child(5n + 4) {
  order: 4;
}

.toppoint .pointitem:nth-child(5n) {
  order: 5;
  margin-bottom: 0;
}

.toppoint .pointitem:nth-child(5n + 3):before {
  background-color: #f2b6ab;
}

.toppoint .pointitem:nth-child(5n + 4):before,
.toppoint .pointitem:nth-child(5n):before {
  background-color: #f2aabd;
}

.toppoint .pointitem .txt {
  font-size: 22px;
  letter-spacing: 0.12em;
}

@media (max-width: 1024px) {
  .toppoint {
    padding: 85px 0;
  }

  .toppoint .pointbox {
    border-width: 60px;
  }

  .toppoint .pointheader .tips {
    font-size: 20px;
  }

  .toppoint .pointheader .tips:before,
  .toppoint .pointheader .tips:after {
    width: 20px;
    height: 32px;
  }

  .toppoint .pointheader .tit {
    font-size: 32px;
  }

  .toppoint .pointitem {
    margin-bottom: 20px;
  }

  .toppoint .pointitem .txt {
    font-size: 18px;
  }

  .toppoint .pointitem:before {
    top: 7px;
  }

}

@media (max-width: 767px) {
  .toppoint {
    padding: 46px 0;
    background: url(../img/top/bg_point_sp.jpg) center no-repeat;
    background-size: cover;
  }

  .toppoint .pointbox {
    border-width: 25px;
  }

  .toppoint .pointheader {
    margin: 8px 0 15px;
  }

  .toppoint .pointheader .tips {
    font-size: 14px;
  }

  .toppoint .pointheader .tips:before,
  .toppoint .pointheader .tips:after {
    width: 14px;
    height: 22px;
    margin: 0 8px;
  }

  .toppoint .pointheader .tit {
    font-size: 23px;
    margin-top: 5px;
  }

  .toppoint .pointcon {
    margin: 0;
  }

  .toppoint .pointitem {
    width: 100%;
    padding: 0 0 0 15px;
    margin-bottom: 15px !important;
    order: 0 !important;
  }

  .toppoint .pointitem:before {
    width: 7px;
    height: 7px;
    top: 6px;
    left: 3px;
  }

  .toppoint .pointitem .txt {
    font-size: 14px;
  }

  .toppoint .pointitem:nth-child(-n+5):before {
    background-color: #f2be9f;
  }

  .toppoint .pointitem:nth-child(n+6):before {
    background-color: #f2aabd;
  }
}


/* guize
----------------------------------------------- */
.guize {
  padding: 0px 0;
  overflow: hidden;
}

.guizemain {
  width: 50%;
  position: relative;
  margin-bottom: 100px;
}

.guizetop {
  border-bottom: 2px solid #ff8e4f;
  display: inline-block;
  padding-bottom: 5px;
}

.guizetop img {
  margin-bottom: 30px;
}

.guizetop p {
  font-size: 34px;
  letter-spacing: 0.11em;
  line-height: 1.2;
}

.guizebot li {
  padding-left: 30px;
  margin-top: 30px;
  position: relative;
  letter-spacing: 0.12em;
}

.guizebot li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 23px;
  height: 23px;
  background: #f2b0b3;
  border-radius: 50%;
}

.guizebot li p {
  font-size: 25px;
  margin-bottom: 10px;
}

.guizebot li span {
  font-size: 18px;
}

.guizeimg {
  position: absolute;
  right: calc(-100% + -70px);
  top: 0;
  width: calc(100% + 70px);
}

.guizeleft {
  margin-left: 50%;
}

.guizeleft .guizeimg {
  right: auto;
  left: calc(-100% + -110px);
}

.guize .guizemain:last-child .guizeimg {
  top: 20px;
}

.guize .guizemain:last-child {
  margin-bottom: 80px;
}

@media (max-width: 1024px) {
  .guize {
    padding: 80px 0;
  }

  .guizetop p {
    font-size: 25px;
  }

  .guizebot li p {
    font-size: 20px;
  }

  .guizebot li span {
    font-size: 14px;
  }

  .guizemain {
    margin-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .guize {
    padding: 40px 0;
  }

  .guizetop {
    border-bottom-width: 1px;
  }

  .guizetop p {
    font-size: 20px;
    letter-spacing: 0.1em;
  }

  .guizetop img {
    width: 117px;
    margin-bottom: 15px;
  }

  .guizemain {
    width: 90%;
    margin-bottom: 35px;
  }

  .guizeimg {
    width: 50%;
    right: calc(0% + -60px);
    top: -5px;
  }

  .guizeleft {
    margin-left: 0;
  }

  .guizebot li {
    margin-top: 15px;
    padding-left: 20px;
  }

  .guizebot li::before {
    width: 12px;
    height: 12px;
  }

  .guizebot li p {
    font-size: 15px;
  }

  .guizebot li span {
    font-size: 14px;
  }

  .guize .guizemain:last-child .guizeimg {
    top: -5px;
    z-index: -1;
  }

  .guizeleft .guizeimg {
    left: auto;
    right: calc(0% + -60px);
    z-index: -1;
  }

  .guize .guizemain:last-child .guizetop p {
    text-shadow: 1px 1px 10px #fff, -1px -1px 2px #fff, 1px 1px 10px #fff, -1px -1px 2px #fff, 1px 1px 10px #fff, -1px -1px 2px #fff;
  }
}

/* licai
----------------------------------------------- */
.licai {
  background: url(../img/common/licai_bj.jpg) no-repeat center top /auto 100%;
  padding: 90px 0;
}

.licaitop {
  margin-bottom: 50px;
}

.licaitopti {
  background: url(../img/top/icon_licaitopti.png) no-repeat left center /100% 100%;
  font-size: 25px;
  text-align: center;
  letter-spacing: 0.2em;
  height: 64px;
  line-height: 50px;
  margin: 0 auto 5px;
  width: 69%;
}

.licaitopti span {
  color: #ff8e4f;
  font-weight: 500;
}

.licaitopti em {
  color: #848391;
}

.licaitoptx {
  color: #434343;
  font-size: 43px;
  text-align: center;
}

.licaibot {
  display: flex;
  background: url(../img/top/icon_licaibot.png) no-repeat bottom center;
  padding-bottom: 70px;
}

.licaibotle ul {
  background: #ffeeeb;
  padding: 50px 0 70px 20px;
}

.licaibotri ul {
  background: #e6ebee;
  padding: 50px 20px 70px 0;
}

.licaibot ul {
  height: 580px;
}

.licaibot ul li {
  display: flex;
  border-bottom: 3px solid #fff;
  padding: 10px 0;
}

.licaibot ul li:last-child {
  border-bottom: none;
}

.licaibot ul li p {
  margin-left: 13px;
  font-size: 20px;
  letter-spacing: 0.12em;
  padding-top: 5px;
}

.licaibotle li {}

.licaibot .licaibotri li {
  padding-left: 20px;
}

.licaizhu p {
  color: #f46191;
  font-size: 43px;
  letter-spacing: 0.12em;
  text-align: center;
  padding-top: 15px;
}

@media (max-width: 1024px) {
  .licai {
    padding: 70px 0;
  }

  .licaitoptx {
    font-size: 38px;
  }

  .licaizhu p {
    font-size: 38px;
  }

  .licaibot ul li p {
    font-size: 15px;
  }

  .licaibot ul {
    height: 480px;
    padding-top: 30px;
  }
}

@media (max-width: 767px) {
  .dpc {
    display: none;
  }

  .licai {
    padding: 40px 0;
  }

  .licaitoptx {
    font-size: 23px;
  }

  .licaizhu p {
    font-size: 23px;
    padding-top: 10px;
  }

  .licaitopti {
    font-size: 14px;
    height: 35px;
    line-height: 30px;
    width: 80%;
    margin-bottom: 0;
  }

  .licaitop {
    margin-bottom: 5px;
  }

  .licaibot ul {
    padding-top: 20px;
    height: auto;
  }

  .licaibotle {
    background: #ffeeeb;
  }

  .licaibotle ul {
    padding: 20px 0 20px 9px;
  }

  .licaibotri ul {
    padding: 20px 9px 20px 0;
  }

  .licaibot ul li {
    padding: 8px 0;
  }

  .licaibot .licaibotri li {
    padding-left: 9px;
  }

  .licaibot {
    padding-bottom: 30px;
  }

  .licaibot ul li p {
    margin-left: 6px;
    font-size: 79%;
    padding-top: 2px;
    flex: 1;
  }

  .licaibot ul li span img {
    width: 20px;
    height: 20px;
  }
}

/* seminar2
----------------------------------------------- */
.seminar2 {
  padding: 80px 0 0px;
}

.seminartop {
  text-align: center;
  margin-bottom: 90px;
}

.seminartop p {
  font-size: 43px;
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}

.seminartop p::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 9px;
  background: url(../img/common/seminartop.png);
}

.articleh2box {
  text-align: center;
  color: #000;
  margin-bottom: 20px;
}

.articleh2box h2 {
  font-weight: 500;
  font-size: 25px;
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}

.articleh2box p {
  font-weight: 500;
  font-size: 30px;
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}

.articleh2box p.sm {
  font-size: 24px;
  font-weight: 300;
}


.seminarbot ul {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.seminarbot li {
  width: 33.3%;
  height: 320px;
  display: flex;
  align-items: center;
  border-radius: 50%;
  background: url(../img/common/seminarbot.png) no-repeat left center /100% 100%;
  margin-bottom: -40px;
}

.seminarbot li:nth-child(1) {
  position: absolute;
  left: 33%;
  top: -50px;
}

.seminarbot li:nth-child(3) {
  margin-left: 33.3%;
}

.seminarbot li:nth-child(4) {
  margin-left: 13.3%;
  margin-right: 30px;
}

.seminarbot li p {
  font-size: 25px;
  letter-spacing: 0.12em;
  width: 100%;
  text-align: center;
}

@media (max-width: 1024px) {
  .seminar {
    padding: 80px 0 100px;
  }

  .seminartop p {
    font-size: 38px;
  }

  .seminarbot li {
    height: 31.2vw;
  }

  .seminarbot li p {
    font-size: 23px;
  }
}

@media (max-width: 767px) {
  .seminar {
    padding: 40px 0 40px;
    background: url(../img/common/seminar_bj_sp.png) no-repeat center center /100% 100%;
  }

  .seminartop p::before {
    height: 5px;
  }

  .seminartop p {
    font-size: 23px;
    padding-bottom: 2px;
  }

  .seminartop p2 {
    font-size: 19px;
    padding-bottom: 2px;
  }

  .seminartop {
    margin-bottom: 20px;
  }

  .seminarbot li {
    width: 47%;
    height: 40vw;
    margin-bottom: 0;
  }

  .seminarbot li p {
    font-size: 14px;
  }

  .seminarbot li:nth-child(1) {
    position: relative;
    left: 0;
    top: 0;
    margin: 0 26.5% -10%;
  }

  .seminarbot li:nth-child(3) {
    margin-left: 6%;
  }

  .seminarbot li:nth-child(4) {
    margin-left: 0;
    margin-right: 6%;
  }
}


/* seminar
----------------------------------------------- */
.seminar {
  padding: 110px 0 130px;
  background: url(../img/common/seminar_bj.png) no-repeat center center /auto 100%;
}

.seminartop {
  text-align: center;
  margin-bottom: 90px;
}

.seminartop p {
  font-size: 43px;
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}

.seminartop h2 {
  font-size: 23px;
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}

.seminartop h2::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background: url(../img/common/seminartop.png);
}


.seminartop p::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 9px;
  background: url(../img/common/seminartop.png);
}

.seminarbot ul {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.seminarbot li {
  width: 33.3%;
  height: 320px;
  display: flex;
  align-items: center;
  border-radius: 50%;
  background: url(../img/common/seminarbot.png) no-repeat left center /100% 100%;
  margin-bottom: -40px;
}

.seminarbot li:nth-child(1) {
  position: absolute;
  left: 33%;
  top: -50px;
}

.seminarbot li:nth-child(3) {
  margin-left: 33.3%;
}

.seminarbot li:nth-child(4) {
  margin-left: 13.3%;
  margin-right: 30px;
}

.seminarbot li p {
  font-size: 25px;
  letter-spacing: 0.12em;
  width: 100%;
  text-align: center;
}

@media (max-width: 1024px) {
  .seminar {
    padding: 80px 0 100px;
  }

  .seminartop p {
    font-size: 38px;
  }

  .seminarbot li {
    height: 31.2vw;
  }

  .seminarbot li p {
    font-size: 23px;
  }
}

@media (max-width: 767px) {
  .seminar {
    padding: 40px 0 40px;
    background: url(../img/common/seminar_bj_sp.png) no-repeat center center /100% 100%;
  }

  .seminartop p::before {
    height: 5px;
  }

  .seminartop p {
    font-size: 23px;
    padding-bottom: 2px;
  }

  .seminartop h2 {
    font-size: 19px;
    padding-bottom: 2px;
  }

  .seminartop p2 {
    font-size: 19px;
    padding-bottom: 2px;
  }

  .seminartop {
    margin-bottom: 20px;
  }

  .seminarbot li {
    width: 47%;
    height: 40vw;
    margin-bottom: 0;
  }

  .seminarbot li p {
    font-size: 14px;
  }

  .seminarbot li:nth-child(1) {
    position: relative;
    left: 0;
    top: 0;
    margin: 0 26.5% -10%;
  }

  .seminarbot li:nth-child(3) {
    margin-left: 6%;
  }

  .seminarbot li:nth-child(4) {
    margin-left: 0;
    margin-right: 6%;
  }
}



/* canjia
----------------------------------------------- */
.canjia {
  padding: 100px 0;
}

.canjiatop {
  text-align: center;
  margin-bottom: 30px;
}

.canjiatopti {
  font-size: 25px;
  letter-spacing: 0.2em;
  display: inline-block;
  background: url(../img/top/icon_canjiatopti.png) no-repeat center 58% /100% 100%;
  background-size: contain;
  padding: 0 25px 30px;
  margin-bottom: 10px;
}

.canjiatopti span {
  color: #ff8e4f;
  font-size: 40px;
  letter-spacing: -0.04em;
}

.canjiatoptx {
  color: #434343;
  font-size: 43px;
}

.canjiabot ul {
  display: flex;
  column-gap: 9.5%;
}

.canjiabot li {
  width: 27%;
  position: relative;
}

.canjiabottop {
  text-align: center;
}

.canjiabottop p {
  font-size: 24px;
  letter-spacing: 0.11em;
  padding: 10px 0 20px;
  white-space: nowrap;
}

.canjiabotimg {
  margin-bottom: 20px;
}

.canjiabotdei p {
  font-size: 20px;
  letter-spacing: 0.12em;
  line-height: 1.7;
}

.canjiabotdei span {
  font-size: 14px;
  letter-spacing: 0.12em;
  display: inline-block;
  margin-top: 10px;
  line-height: 1.85;
}

.canjiabotdei a:hover {
  opacity: .8;
}

.sanjiao {
  position: absolute;
  right: -65px;
  top: 40%;
}

@media (max-width: 1024px) {
  .canjia {
    padding: 80px 0;
  }

  .canjiatoptx {
    font-size: 38px;
  }

  .canjiabottop p {
    font-size: 18px;
    padding: 10px 0 10px;
  }

  .canjiabotdei p {
    font-size: 18px;
  }

  .canjiabotdei span {
    font-size: 14px;
  }

  .canjiabottop>img {
    width: 55%;
  }

  .sanjiao {
    position: absolute;
    right: -27%;
    top: 20vw;
  }
}

@media (max-width: 767px) {
  .canjia {
    padding: 40px 0;
  }

  .canjiatoptx {
    font-size: 23px;
  }

  .canjiatopti {
    font-size: 14px;
    padding: 0 15px 18px;
    margin-bottom: 0;
  }

  .canjiatopti span {
    font-size: 22px;
  }

  .canjiabot ul {
    display: block;
  }

  .canjiabot li {
    width: 100%;
    display: flex;
    column-gap: 20px;

  }

  .canjiabot li:not(:last-child) {
    margin-bottom: 70px;
  }

  .canjiabottop {
    position: absolute;
    right: 0;
    top: -10px;
    text-align: left;
    width: 57%;
  }

  .canjiabottop p {
    font-size: 15px;
    padding: 0;
  }

  .canjiabotimg {
    flex: 1;
    margin-bottom: 0;
  }

  .canjiabotdei {
    flex: 1.5;
    padding-top: 60px;
  }

  .canjiabotdei p {
    font-size: 14px;
  }

  .canjiabotdei span {
    font-size: 10px;
    margin-top: 5px;
  }

  .sanjiao {
    left: calc(50% - 19px);
    top: inherit;
    bottom: -50px;
  }

  .canjiabottop>img {
    width: 95px;
    height: 40px;
  }

  .sanjiao img {
    width: 38px;
    height: 27px;
  }

  .canjiabot li:last-child .canjiabotimg {
    margin-bottom: 0;
  }
}


/* yantao
----------------------------------------------- */
.yantao {
  padding: 100px 0;
  background-color: #e9edfa;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 25%, rgba(255, 255, 255, .2) 50%, transparent 75%, rgba(255, 255, 255, .2));
  background-size: 24px 24px;
}

.yantaomain {
  background: #fff;
  padding: 60px 50px;
}

.yantaotop {
  margin-bottom: 50px;
}

.yantaotoptx {
  font-size: 25px;
  color: #292929;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 10px;
}

.yantaotoptx span {
  color: #f45e8e;
  font-size: 29px;
  font-weight: 500;
}

.yantaotoptx br {
  display: none;
}

.yantaotopti {
  color: #434343;
  font-size: 43px;
  text-align: center;
  position: relative;
  letter-spacing: 0.12em;
}

.yantaotopti::before {
  content: "";
  position: absolute;
  left: 0;
  top: 47%;
  width: 18%;
  height: 3px;
  background: #ffbed6;
}

.yantaotopti::after {
  content: "";
  position: absolute;
  right: 0;
  top: 47%;
  width: 18%;
  height: 3px;
  background: #ffbed6;
}

.yantaocen {
  display: flex;
  flex-direction: row-reverse;
  column-gap: 40px;
  margin-bottom: 45px;
}

.yantaoleft {
  flex: 1;
}

.yantaolefttop {
  margin-bottom: 40px;
}

.yantaoleftti {
  font-size: 25px;
  letter-spacing: 0.12em;
}

.yantaolefttx {
  font-size: 32px;
  letter-spacing: 0.12em;
}

.yantaolefttx span {
  font-size: 26px;
}

.yantaoleftbot p {
  font-size: 20px;
  letter-spacing: 0.12em;
  line-height: 1.7;
}

.yantaobot {
  border: 1px solid #ffbed6;
}

.yantaobot>p {
  font-size: 25px;
  letter-spacing: 0.12em;
  background: #ffbed6;
  display: inline-block;
  text-align: center;
  height: 58px;
  line-height: 58px;
  width: 315px;
  border-radius: 0 0 40px 0;
}

.yantaobot ul {
  padding: 30px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 40px);
}

.yantaobot li {
  font-size: 20px;
  letter-spacing: 0.12em;
}

.yantaobot li:nth-child(3n) {
  order: 2;
}

.yantaobot li:nth-child(3n-1) {
  order: 1;
}

@media (max-width: 1024px) {
  .yantao {
    padding: 80px 0;
  }

  .yantaotopti {
    font-size: 38px;
  }

  .yantaotoptx {
    font-size: 23px;
  }

  .yantaotopti::after,
  .yantaotopti::before {
    width: 13%;
  }

  .yantaomain {
    padding: 50px 30px;
  }

  .yantaobot ul {
    padding: 30px 20px;
    grid-template-rows: repeat(3, 30px);
  }

  .yantaoleftti {
    font-size: 23px;
  }

  .yantaocen {
    column-gap: 30px;
  }

  .yantaolefttx {
    font-size: 28px;
  }

  .yantaoleftbot p {
    font-size: 16px;
  }

  .yantaobot li {
    font-size: 16px;
    letter-spacing: 0.11em;
  }
}

@media (max-width: 767px) {
  .yantao {
    padding: 40px 0;
    background-size: 12px 12px;
  }

  .yantaotopti {
    font-size: 23px;
    letter-spacing: 0.1em;
  }

  .yantaotoptx br {
    display: block;
  }

  .yantaomain {
    padding: 30px 17px;
  }

  .yantaotoptx {
    font-size: 14px;
    margin-bottom: 5px;
  }

  .yantaotoptx span {
    font-size: 16px;
  }

  .yantaotopti::after,
  .yantaotopti::before {
    width: 7%;
  }

  .yantaotop {
    margin-bottom: 10px;
  }

  .yantaocen {
    display: block;
    margin-bottom: 30px;
  }

  .yantaoimg {
    margin-bottom: 20px;
    text-align: center;
  }

  .yantaoimg img {
    width: 154px;
    height: 192px;
  }

  .yantaoleftti {
    font-size: 15px;
  }

  .yantaolefttx {
    font-size: 17px;
  }

  .yantaolefttx span {
    font-size: 14px;
  }

  .yantaolefttop {
    margin-bottom: 10px;
    padding: 0 10px;
  }

  .yantaoleftbot p {
    font-size: 14px;
  }

  .yantaoleftbot {
    padding: 0 10px;
  }

  .yantaobot>p {
    font-size: 15px;
    width: 155px;
    height: 32px;
    line-height: 32px;
  }

  .yantaobot ul {
    display: block;
    padding: 10px 20px;
  }

  .yantaobot li {
    font-size: 14px;
    margin-bottom: 5px;
    order: 0 !important;
  }
}

/* huoyue
----------------------------------------------- */
.huoyue {
  padding: 100px 0;
  overflow: hidden;
  background-color: #fbedf2;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 25%, rgba(255, 255, 255, .2) 50%, transparent 75%, rgba(255, 255, 255, .2));
  background-size: 24px 24px;
}

.huoyuemain {
  background: #fff;
  padding: 60px 0 80px;
  position: relative;
  text-align: center;
}

.huoyuetitle {
  font-size: 43px;
  font-weight: 500;
  background: url(../img/common/huoyuetitle_bj.png) no-repeat bottom center/100% auto;
  letter-spacing: 0.12em;
  margin-bottom: 40px;
  display: inline-block;
  padding-bottom: 15px;
  color: #434343;
}

.huoyuetitle br {
  display: none;
}

.huoyuetxt {
  font-size: 20px;
  text-align: center;
  position: relative;
  line-height: 1.8;
  letter-spacing: 0.12em;
}

.huoyuetxt .str {
  background: #fff197;
}

.huoyueimgr {
  position: absolute;
  right: -410px;
  top: -150px;
}

.huoyueimgl {
  position: absolute;
  left: -265px;
  top: 170px;
}

.huoyueimgb {
  position: absolute;
  right: -200px;
  bottom: 140px;
}

.dsp {
  display: none;
}

@media (max-width: 1024px) {
  .huoyue {
    padding: 80px 0;
  }

  .huoyuetitle {
    font-size: 38px;
  }
}

@media (max-width: 767px) {
  .huoyue {
    padding: 40px 0;
    background-size: 12px 12px;
  }

  .dsp {
    display: block;
  }

  .huoyuemain {
    padding: 40px 0;
  }

  .huoyuetitle br {
    display: block;
  }

  .huoyuetitle {
    font-size: 23px;
    background: url(../img/common/huoyuetitle_bj_sp.png) no-repeat center center/100% auto;
    padding-bottom: 0;
    margin-bottom: 22px;
  }

  .huoyuetxt {
    font-size: 14px;
    line-height: 1.5;
  }

  .huoyueimgr {
    width: 90px;
    height: 120px;
    right: -25px;
    top: -10px;
  }

  .huoyueimgl {
    width: 90px;
    height: 105px;
    left: -25px;
    top: 45%;
  }

  .huoyueimgb {
    width: 80px;
    height: 90px;
    right: -25px;
    bottom: 30px;
  }
}


/* wenti
----------------------------------------------- */
.wenti {
  padding: 100px 0;
}

.wentititle {
  font-size: 43px;
  color: #434343;
  text-align: center;
  margin-bottom: 60px;
}

.wentimain li {
  border-bottom: 1px solid #c5c5c5;
  padding-bottom: 10px;
  margin-bottom: 40px;
}

.wentimain li:last-child {
  margin-bottom: 0;
  border-bottom: none;
}

.wentiimg {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}

.wentiimg img {
  margin-right: 30px;
}

.wentimain li .wentidt {
  cursor: pointer;
}

.wentimain li .wentibd {
  display: none;
  opacity: 0;
}

.wentimain li .wentidt.show+.wentibd {
  display: flex;
  animation: showimg 1s;
  animation-fill-mode: forwards;
}

@keyframes showimg {
  form {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.wentitoti {
  position: relative;
  font-size: 25px;
  letter-spacing: 0.12em;
  width: 100%;
  margin-right: 25px;
}

.wentitoti:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 31px;
  height: 19px;
  background: url(../img/common/icon_wenti03.png) no-repeat;
  background-size: contain;
  margin-top: -10px;
  transform: rotate(180deg);
  transition: transform 0.3s;
}

.wentimain li .wentidt.show .wentitoti:after {
  transform: rotate(360deg);
}


.wentiboti {
  font-size: 20px;
  letter-spacing: 0.1em;
}

@media (max-width: 1024px) {
  .wenti {
    padding: 80px 0;
  }

  .wentititle {
    font-size: 38px;
    margin-bottom: 40px;
  }

  .wentiimg {
    margin-bottom: 25px;
  }

  .wentitoti {
    font-size: 22px;
  }

  .wentiboti {
    font-size: 18px;
  }
}

@media (max-width: 767px) {
  .wenti {
    padding: 40px 0;
  }

  .wentititle {
    font-size: 23px;
    margin-bottom: 20px;
  }

  .wentitoti {
    font-size: 15px;
    margin-right: 0;
    padding: 6px 30px 0 0;
  }

  .wentitoti:after {
    width: 20px;
    height: 13px;
    top: 10px;
    margin-top: 0;
  }

  .wentiimg {
    margin-bottom: 15px;
    align-items: flex-start;
  }

  .wentiimg img {
    margin-right: 15px;
    width: 35px;
    height: 35px;
  }

  .wentiboti {
    font-size: 14px;
    padding-top: 5px;
  }

  .wentimain li {
    padding-bottom: 0;
    margin-bottom: 25px;
  }

}


/* tedian
----------------------------------------------- */
.tedian {
  background: url(../img/common/tedian_bj.png) no-repeat left center /100% 100%;
  padding: 100px 0;
}

.tedianmain {
  background: #fff;
  padding: 60px 45px;
}

.tediantop {
  margin-bottom: 20px;
}

.tediantopti {
  font-size: 43px;
  letter-spacing: 0.12em;
  background: url(../img/common/tediantopti_bj.png) no-repeat left center /100% auto;
  text-align: center;
  margin: 0 28px 30px;
  line-height: 85px;
  height: 89px;
  color: #434343;
}

.tediantoptx {
  font-size: 20px;
  letter-spacing: 0.12em;
}

.tediantoptx .str {
  background: #fff197;
}

.tediancen {
  background: #fff6f5;
  padding: 50px 40px;
  margin-bottom: 20px;
}

.tediancen li {
  display: flex;
  font-size: 25px;
  letter-spacing: 0.12em;
  margin-bottom: 20px;
}

.tediancen li:last-child {
  margin-bottom: 0;
}

.tedianbotti {
  font-size: 20px;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
}

.tedianbottx {
  font-size: 14px;
  letter-spacing: 0.12em;
}

@media (max-width: 1024px) {
  .tedian {
    padding: 80px 0;
  }

  .tediantopti {
    font-size: 35px;
  }

}

@media (max-width: 767px) {
  .tedian {
    background: url(../img/common/tedian_bj_sp.png) no-repeat left center /100% 100%;
    padding: 45px 0;
  }

  .tediantop {
    margin-bottom: 15px;
  }

  .tediantopti {
    font-size: 23px;
    margin: 0;
    line-height: 42px;
    height: 45px;
    margin-bottom: 15px;
    background-size: 100% 100%;
  }

  .tedianmain {
    padding: 30px 15px;
  }

  .tediantoptx {
    font-size: 14px;
  }

  .tediancen {
    padding: 25px 20px;
    margin-bottom: 15px;
  }

  .tediancen li {
    font-size: 14px;
    margin-bottom: 13px;
  }

  .tedianbotti {
    font-size: 11px;
  }

  .tedianbottx {
    font-size: 10px;
  }
}


/* richeng
----------------------------------------------- */
.mainbox {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.richeng {
  padding: 100px 0;
}

.richengtitle {
  font-size: 43px;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 75px;
  color: #434343;
}

.richengtop {
  background: url(../img/common/richengtop_bj.png) no-repeat left center /100% 100%;
  padding: 85px 0;
  margin-bottom: 50px;
}

.richengtop p {
  font-size: 28px;
  text-align: center;
  letter-spacing: 0.12em;
  line-height: 1;
}

.richengtop p:nth-child(1) {
  padding-bottom: 30px;
}

.richengmain {
  margin-bottom: 40px;
}

.richengmain li {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.richengmain li span {
  border: 2px solid #f3a0c6;
  font-size: 20px;
  width: 106px;
  text-align: center;
  height: 34px;
  line-height: 30px;
  margin-right: 15px;
}

.richengmain li p {
  font-size: 20px;
  letter-spacing: 0.12em;
}

.richengbot .storemap {
  width: 100%;
}

.richengbot .storemap iframe {
  height: 435px;
  width: 100%;
  background-color: #e5e3df;
}

.toparticle.toparticle01 .articlebox {
  position: relative;
}

.toparticle.toparticle01 .articlebox .triangle {
  position: absolute;
  content: "";
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
}

.triangle p {
  z-index: 1;
  position: relative;
}

.triangle p:after {
  z-index: -1;
  position: absolute;
  content: "";
  border-top: 160px solid #8497b0;
  border-left: 250px solid transparent;
  border-right: 250px solid transparent;
  top: -50%;
  left: 50%;
  transform: translateX(-47%);
  margin: 0 auto;
  width: 0;
  height: 0;
}

.toparticle.toparticle01 .articlebox .triangle .txt.tips {
  color: #fff;
  font-weight: 700;
  font-size: 35px;
  letter-spacing: 0.12em;
  line-height: 1.68;
  border: 0;
}

@media (max-width: 1024px) {
  .richeng {
    padding: 80px 0;
  }

  .richengtitle {
    font-size: 38px;
    margin-bottom: 55px;
  }

  #cta04.topcta .ctabox .tips {
    font-size: 34px;
  }
}

@media (max-width: 767px) {
  .richeng {
    padding: 40px 0;
  }

  .richengtitle {
    font-size: 22px;
    margin-bottom: 15px;
    letter-spacing: 0.1em;
  }

  .richengtop {
    padding: 44px 0;
    margin-bottom: 25px;
  }

  .richengtop p {
    font-size: 14px;
  }

  .richengtop p:nth-child(1) {
    padding-bottom: 15px;
  }

  .richengmain {
    margin-bottom: 20px;
  }

  .richengmain li {
    margin-bottom: 7px;
    align-items: flex-start;
  }

  .richengmain li span {
    font-size: 14px;
    width: 71px;
    height: 22px;
    line-height: 20px;
    border-width: 1px;
  }

  .richengmain li p {
    font-size: 14px;
    flex: 1;
    line-height: 22px;
  }

  .richengbot .storemap iframe {
    height: 150px;
  }
}

.fixedbox {
  display: none;
  transform: translateY(100%);
  transition: transform 0.3s;
}

@media (max-width: 767px) {
  #wrapper {
    overflow-x: hidden;
  }

  .banshow .fixedbox {
    transform: translateY(0%);
  }

  .fixedbox {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
  }

  .fixedbox .bannersp {
    padding: 10px 0;
    text-align: center;
    background-color: rgba(255, 255, 255, .85);
  }

  .topcta .ctabox .txt {
    font-size: 14px;
  }

  .topcta .ctabox .tips {
    font-size: 16px;
  }

  #cta04.topcta .ctabox .tips:before,
  #cta04.topcta .ctabox .tips:after {
    width: 15px !important;
    height: 25px !important;
    left: -15px !important;
    top: 0 !important;
  }

  #cta04.topcta .ctabox .tips:after {
    left: auto !important;
    right: -15px !important;
  }

  .topcta .ctabox .ctatxt02 .txt .lar{
    font-size: 26px;
    line-height: 1.5;
  }
  .ctabox .ctatxt02 .txt .lar {
    font-size: 23px;
    line-height: 1.5;
  }

  #cta04.topcta .ctabox .txt {
    font-size: 20px;
  }

  #cta04.topcta .ctabox .tips {
    font-size: 17px;
    margin-bottom: 0.5em;
  }

  .toparticle .articlehd .frs {
    font-size: 18px;
    line-height: 1.5;
    padding: 0;
    padding-top: 0px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft:before,
  #index_2 .mvbox .pulicfirst .firstsoft:after {
    width: 10px;
    height: 16px;
  }

  .triangle p:after {
    border-top: 76px solid #8497b0;
    border-left: 120px solid transparent;
    border-right: 120px solid transparent;
    top: -30%;
}
.toparticle.toparticle01 .articlebox .triangle{ bottom: -30px;}
.toparticle.toparticle01 .articlebox .triangle .txt.tips{
  font-size: 20px;
}
}
@media (max-width: 440px) {
  .topcta .ctabox .ctatxt02 .txt .lar{
    font-size: 22px;
  }
  #index_2 .topcta .ctatxt .lar,
  .topcta .ctatxt .lar {
    font-size: 20px;
  }
}
@media (max-width: 430px) {
  .show430 {
    display: block !important;
  }

  .topcta .ctabox .ctatxt02 .txt .lar{
    font-size: 17px;
  }
  #index_2 .topcta .ctatxt .lar,
  .topcta .ctatxt .lar {
    font-size: 16px;
  }

  .topmv .mvcon {
    margin: 0 10px;
  }

  .topmv .mvtxt .txt {
    padding: 0 0;
  }

  .ctabox .ctatxt02 .txt,
  .topmv .mvtip .txt {
    padding: 0 5px !important;
  }

  .topvoice .voicetxt {
    margin-top: 0;
  }

  #cta04 .topcta .ctabtn {
    padding-bottom: 0;
  }

  .article03 .articlebd .txt.txt03,
  .article03 .articlebd .txt.txt02 {
    font-size: 16px !important;
  }

  .ctabox .ctatxt02 .txt .lar {
    font-size: 16px;
  }

  .articleh2box p {
    font-size: 20px !important;
  }

  .pulicfirst .firstsoft .pic {
    width: 44%;
  }

  #index_2 .mvbox .pulicfirst .firstsoft .txt,
  .pulicfirst .firstsoft .txt {
    font-size: 12px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft {
    margin-bottom: 10px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft::before,
  #index_2 .mvbox .pulicfirst .firstsoft::after {
    width: 8px;
    margin-bottom: -5px;
  }

  #index_2 .mvbox .pulicfirst .firstsoft .pic {
    width: 49%;
  }
}

@media (max-width: 320px) {

  #index_2 .topmv .mvtxt .txt,
  #index_2 .ctabox .ctatxt02 .txt {
    font-size: 12px;
  }
}