.tri {
    position: absolute;
    left: var(--translateX);
    transform: translateX(calc(var(--translateX) * -1));
    bottom: calc(var(--triHeight)*-1 + var(--bottom));
    width: calc(100% + var(--triHeight));
    height: var(--triHeight);
    border-left: calc((var(--max-width) + 100vw)/2) solid rgba(0, 0, 0, 0);
    border-right: calc((var(--max-width) + 100vw)/2) solid rgba(0, 0, 0, 0);
    border-top: var(--triHeight) solid var(--background);
    z-index: 3
}

.tri:nth-child(2) {
    --background: white;
    --bottom: -3px;
    z-index: 2
}

.tri:nth-child(3) {
    --background: #BC2B2B;
    --bottom: -6px;
    z-index: 1
}

.horMain {
    white-space: nowrap;
    overflow: hidden
}

.horMain .horMaWrap {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    animation: slide-left 90s linear infinite
}

.horMain .horInner {
    display: inline-block
}

.horMain .horInner .horWrap {
    white-space: nowrap;
    overflow: hidden
}

.horMain .horItem {
    display: inline-block;
    padding: 15px;
    vertical-align: middle;
    outline: none
}

.horMain .horItem picture {
    font-size: initial;
    line-height: initial;
    display: block;
    height: 9.6vw;
    display: flex;
    align-items: center;
    justify-content: center
}

.horMain .horItem img {
    height: 32px;
    max-width: 100px;
    display: block
}

.hArea {
    background: #bc2b2b;
    position: relative;
    text-align: center;
    color: #fff
}

.hArea .hWrap {
    padding: 60px 0 30px
}

.hArea .hHead {
    font-size: 2.6rem;
    line-height: 4.6rem;
    letter-spacing: .81px;
    font-weight: 900;
    text-align: center;
    padding-bottom: 60px
}

.hArea .hRow:not(:last-child) {
    padding-bottom: 60px
}

.hArea .hRow .hThumbnail {
    max-width: 90px;
    margin: auto;
    position: relative
}

.hArea .hRow .hThumbnail .hQuesMark {
    position: absolute;
    width: var(--width-mark)
}

.hArea .hRow:first-child .hThumbnail .hQuesMark {
    left: calc(var(--width-mark)*-1);
    top: 5px
}

.hArea .hRow:nth-child(2) .hThumbnail .hQuesMark {
    right: calc(var(--width-mark)*-1);
    top: 10px
}

.hArea .hRow:last-child .hThumbnail .hQuesMark {
    left: calc(var(--width-mark)*-1 - 4px);
    bottom: 0
}

.hArea .hRow .hContent {
    font-size: 1.7rem;
    line-height: 2.8rem;
    font-weight: 900;
    padding-top: 10px
}

.sArea {
    padding-bottom: 80px
}

.sArea .uLine {
    position: relative;
    display: inline;
    background-color: #ff0
}

.sArea .dLine {
    position: relative;
    display: inline;
    background-image: radial-gradient(ellipse, #000 2px, #000 2px, rgba(0, 0, 0, 0) 2px);
    background-size: 24px 24px;
    background-position: 0px -10px;
    background-repeat: repeat-x
}

.sArea .sHead {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 4rem;
    padding-bottom: 10px
}

.sArea .sHead .uLine {
    letter-spacing: -2.6px
}

.sArea .sThumb {
    position: relative
}

.sArea .sThumb .sThumbWrap {
    position: relative
}

.sArea .sThumb .point_red {
    right: -12px;
    bottom: -34px;
    position: absolute;
    max-width: 155px
}

.sArea .sContent {
    font-size: 1.6rem;
    line-height: 3rem;
    font-weight: bold;
    padding-top: 20px
}

.sArea .sContent .sContentInner .sContent__item {
    padding-bottom: 20px;
    margin-bottom: 20px
}

.sArea .sContent .sContentInner .sContent__item:not(:last-child) {
    border-bottom: 1px solid #bc2b2b
}

.sArea .sContent .sContentInner .sContent__item_title {
    font-size: 1.8rem;
    line-height: 2.4rem;
    letter-spacing: .54px;
    font-weight: bold;
    padding-bottom: 10px;
    color: #bc2b2b
}

.sArea .sContent .sContentInner .sContent__item_cont {
    font-size: 1.4rem;
    line-height: 2.6rem;
    letter-spacing: -0.14px;
    font-weight: 500
}

.swiContainer .swi {
    width: 100%
}

.swiContainer .swiSlide {
    max-width: 218px;
    display: flex;
    flex-direction: column;
    height: auto
}

.swiContainer .swiTop {
    text-align: center;
    color: var(--color-swiTop);
    border-top-right-radius: 86px;
    border-top-left-radius: 86px;
    max-width: 172px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    line-height: 1rem;
    padding-bottom: 12px
}

.swiContainer .swiTop .swiText {
    padding-bottom: 10px;
    font-size: 1.2rem;
    line-height: 1.8rem;
    font-weight: bold
}

.swiContainer .swiTop .swiThumb {
    max-width: 124px;
    margin: auto
}

.swiContainer .swiTop .swiThumb img {
    display: inline-block;
    height: 100%;
    width: 100%
}

.swiContainer .swiTop .swiName {
    font-size: 1rem;
    font-weight: 500;
    padding-top: 6px
}

.swiContainer .swiTop .swiName img {
    display: inline-block;
    height: 100%;
    min-height: 25px
}

.swiContainer .swiBot {
    background-color: var(--background-swiBot);
    padding: 25px;
    border-radius: 13px;
    position: relative;
    height: 100%
}

.swiContainer .swiBot::before {
    content: "";
    display: block;
    width: 22px;
    height: 1px;
    border-left: 20px solid rgba(0, 0, 0, 0);
    border-right: 20px solid rgba(0, 0, 0, 0);
    border-bottom: 22px solid var(--background-swiBot);
    top: -6px;
    right: 0;
    left: 0;
    position: absolute;
    margin: auto
}

.swiContainer .swiBot .swiInfo {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #fff;
    display: flex;
    font-size: 1.4rem;
    line-height: 2rem;
    font-weight: bold
}

.swiContainer .swiBot .swiInfo__col:first-child {
    padding-left: 0;
    padding-right: 16px
}

.swiContainer .swiBot .swiInfo__col:last-child {
    padding-right: 0;
    padding-left: 16px
}

.swiContainer .swiBot .swiInfo__col.swiInfo__arr {
    width: 16px;
    position: relative;
    display: flex;
    align-items: center
}

.swiContainer .swiBot .swiInfo__col.swiInfo__arr::before,
.swiContainer .swiBot .swiInfo__col.swiInfo__arr::after {
    content: "";
    display: block;
    top: 0;
    bottom: 0;
    position: absolute;
    margin: auto
}

.swiContainer .swiBot .swiInfo__col.swiInfo__arr::before {
    width: 13px;
    height: 1px;
    background: #fff;
    left: 0
}

.swiContainer .swiBot .swiInfo__col.swiInfo__arr::after {
    right: 0;
    border: 1px solid #fff;
    border-width: 1px 1px 0 0;
    width: 7px;
    height: 7px;
    transform: rotate(45deg)
}

.swiContainer .swiBot .swiTitle {
    font-size: 1.4rem;
    line-height: 2.4rem;
    padding-bottom: 10px;
    font-weight: bold
}

.swiContainer .swiBot .swiCont {
    font-size: 1.2rem;
    line-height: 2.2rem;
    font-weight: 500
}

.swiContainer .swiScroll {
    text-align: center;
    color: #fff;
    padding-top: 5px
}

.swiContainer .swiScroll p:first-child {
    color: rgba(255, 134, 134, .2);
    font-size: 3.5rem;
    line-height: 3.5rem
}

.swiContainer .swiScroll p:last-child {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: bold;
    margin-top: -10px
}

.zHead {
    max-width: 335px;
    background: var(--background-zHead);
    color: var(--color-zHead);
    text-align: center;
    border: var(--border-zHead);
    padding: 20px 10px;
    margin: auto
}

.zHead.zHead_abs {
    top: -47px;
    right: 0;
    left: 0;
    position: absolute;
    z-index: 1
}

.zHead__small {
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1rem;
    padding-bottom: 10px
}

.zHead__big {
    font-size: 3rem;
    line-height: 3rem;
    font-weight: 900
}

.zHead__img {
    top: 10px;
    right: 0;
    left: 0;
    position: absolute
}

.zArea {
    background: #bc2b2b;
    position: relative;
    padding: 97px 0 80px;
    margin-bottom: 230px
}

.zArea .zHead_3 {
    color: #fff;
    margin-top: -37px
}

.zArea .zHead_3__small {
    font-size: 1.2rem;
    line-height: 1.7rem;
    font-weight: bold;
    padding-bottom: 20px
}

.zArea .zHead_3__big {
    padding-bottom: 30px;
    font-size: 2.8rem;
    line-height: 3.8rem;
    font-weight: bold
}

.zArea .zHead_3__cont {
    font-size: 1.4rem;
    line-height: 2.6rem;
    font-weight: 500;
    padding-bottom: 60px
}

.zArea .zRow {
    position: relative;
    color: var(--color-zRow)
}

.zArea .zRow:not(:last-child) {
    padding-bottom: 95px
}

.zArea .zRow__img {
    top: -20px;
    right: 0;
    left: 0;
    position: absolute;
    margin: auto;
    text-align: center
}

.zArea .zRow__img img {
    width: 100%
}

.zArea .zRow .zRowWrap {
    position: relative
}

.zArea .zRow .zNo {
    position: relative;
    margin-bottom: -15px
}

.zArea .zRow .zTitle {
    font-size: 2rem;
    line-height: 2.8rem;
    font-weight: bold;
    padding: 25px 0
}

.zArea .zRow .zCont {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2.6rem
}

.zArea.zAreaWhite {
    background: rgba(0, 0, 0, 0)
}

.zArea.zAreaWhite .zHead {
    --background-zHead: transparent;
    --color-zHead: #BC2B2B;
    --border-zHead: none
}

.zArea.zAreaWhite .zRow {
    --color-zRow: #BC2B2B
}

.zArea.zAreaWhite .swiContainer .swiSlide {
    height: auto;
    display: flex;
    flex-direction: column
}

.zArea.zAreaWhite .swiContainer .swiTop {
    --background-swiTop: transparent;
    --color-swiTop: #000;
    margin: auto
}

.zArea.zAreaWhite .swiContainer .swiBot {
    --background-swiBot: #BC2B2B;
    color: #fff;
    height: 100%
}

.zArea.zAreaWhite .swiContainer .swiScroll {
    color: #bc2b2b;
    padding-bottom: 17px;
    padding-top: 22px
}

.zArea.zAreaWhite .swiContainer .swiScroll p:first-child {
    background-image: url(../images/scroll_space.svg);
    background-repeat: repeat-x;
    background-size: auto 100%;
    height: 27px;
    background-position: -16%
}

.zArea.zAreaWhite .swiContainer .swiScroll p:last-child {
    margin-top: -22px
}

.zArea.zAreaWhiteFlex .swiContainer .swiBot {
    --background-swiBot: #BC2B2B;
    color: #fff
}

.zArea.zAreaWhiteFlex .swiContainer .swiBot::before {
    top: 0;
    right: initial;
    left: -15px;
    bottom: 0;
    margin: auto;
    transform: rotate(-90deg)
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide {
    max-width: 100%;
    margin-left: 0;
    display: flex;
    flex-direction: row
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide:not(:last-child) {
    padding-bottom: 65px
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide .swiTop {
    width: 30%;
    padding-right: 15px;
    --color-swiTop: #000
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide .swiTop .swiText {
    line-height: 1.9rem
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide .swiTop .swiThumb {
    max-width: 110px
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide .swiBot {
    width: 70%
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide:nth-child(even) .swiTop {
    order: 1;
    padding-right: 0;
    padding-left: 15px
}

.zArea.zAreaWhiteFlex .swiContainer .swiSlide:nth-child(even) .swiBot::before {
    top: 0;
    right: -15px;
    left: initial;
    bottom: 0;
    margin: auto;
    transform: rotate(90deg)
}

.zArea.zAreaHuman .swiSlide {
    height: auto;
    display: flex;
    flex-direction: column
}

.zArea.zAreaHuman .swiSlide .swiTop {
    margin-top: 0;
    margin-left: auto;
    margin-right: auto
}

.zArea.zAreaHuman .swiSlide .swiBot {
    height: 100%
}

.zArea.zAreaHumanWhite {
    background: rgba(0, 0, 0, 0)
}

.zArea.zAreaHumanWhite .zHead_3 {
    color: #191919
}

.zArea.zAreaHumanWhite .zHead_3__small {
    background: #bc2b2b;
    color: #fff
}

.zArea.zAreaHumanWhite .swiContainer .swiSlide .swiTop {
    --color-swiTop: #191919
}

.zArea.zAreaHumanWhite .swiContainer .swiSlide .swiBot {
    --background-swiBot: #BC2B2B;
    color: #fff
}

.pLArea {
    margin-bottom: 160px
}

.pLArea .pLRow {
    padding-bottom: 36px;
    text-align: center
}

.pLArea .pLRow .pLItem img {
    max-width: 100px
}

.pLArea .pLRow.horMain .pLItem {
    padding: 25px 15px
}

.pLArea .pLRow.horMain .pLItem picture {
    height: 5.6vw
}

.pLArea .pLRow.pLRow__mid {
    margin-left: var(--margin-space);
    margin-right: var(--margin-space)
}

.pLArea .pLRow.pLRow__mid .pLRow__wrap {
    width: 90%;
    margin: auto
}

.pLArea .pLRow .pLSmall {
    color: #bc2b2b;
    font-size: 1.4rem;
    font-weight: 500;
    padding-bottom: 15px
}

.pLArea .pLRow .pLBig {
    font-size: 2rem;
    line-height: 3.7rem;
    font-weight: bold;
    padding-bottom: 25px
}

.pLArea .pLRow .pLBig span {
    color: #bc2b2b;
    font-size: 3.4rem;
    font-weight: 900
}

.pLArea .pLRow .pLBig span:first-child {
    letter-spacing: .68px
}

.pLArea .pLCV {
    padding-top: 25px
}

.pLMoreInfo .pLMoreInfoWrap {
    display: flex;
    margin-left: -12px;
    margin-right: -12px
}

.pLMoreInfo__col {
    width: 33.33%;
    padding: 0 12px
}

.pLMoreInfo__col .pLMoreInfo__item {
    background: #bc2b2b;
    position: relative;
    color: #fff;
    padding: 8px;
    text-align: center;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 2.4rem;
    border-radius: 25px;
    letter-spacing: .96px
}

.pLMoreInfo__col .pLMoreInfo__item::before {
    content: "";
    display: block;
    width: 25px;
    border-left: 25px solid rgba(0, 0, 0, 0);
    border-right: 25px solid rgba(0, 0, 0, 0);
    border-top: 25px solid #bc2b2b;
    right: 0;
    bottom: -12px;
    left: 0;
    position: absolute;
    margin: auto;
    z-index: -1
}

.pLCV a {
    display: block;
    text-align: center;
    max-width: 335px;
    width: 100%;
    margin: auto
}

.mArea {
    margin: 30px 0 80px
}

.rArea {
    padding: 97px 0 5px;
    margin-bottom: 172px
}

.posArea {
    padding-bottom: 119px;
    background-color: rgba(0, 0, 0, 0)
}

.posArea .tri:nth-child(2) {
    --bottom: -4px
}

.posArea .tri:nth-child(3) {
    --bottom: -6px
}

.posArea .posHead {
    --padding-5: 5px;
    position: relative;
    border: 2px solid #191919;
    background: rgba(0, 0, 0, 0);
    color: #000
}

.posArea .posHead::before {
    content: "";
    background-color: #edff2b;
    display: block;
    width: calc(100% + var(--padding-5));
    max-width: 335px;
    height: calc(100% + var(--padding-5));
    position: absolute;
    top: var(--padding-5);
    right: var(--padding-5);
    z-index: -1
}

.posArea .posContainer .posContainer__head {
    text-align: center;
    color: #bc2b2b;
    padding: 0 5% 50px;
    line-height: 1rem;
    position: relative
}

.posArea .posContainer .posContainer__head .tri {
    --background: white
}

.posArea .posContainer .posContainer__head .tri:nth-child(2) {
    --background: #BC2B2B
}

.posArea .posContainer .posContainer__head_img {
    top: -35%;
    right: 0;
    left: 0;
    position: absolute;
    margin: auto;
    z-index: 2
}

.posArea .posContainer .posContainer__head_small {
    font-size: 1.3rem;
    font-weight: bold;
    padding-bottom: 20px;
    position: relative;
    z-index: 5
}

.posArea .posContainer .posContainer__head_big {
    font-weight: bold;
    font-size: 3.1rem;
    position: relative;
    z-index: 5
}

.posArea .posContainer .posContent {
    overflow: hidden
}

.posArea .posContainer .posContentRow {
    position: relative;
    color: #bc2b2b
}

.posArea .posContainer .posContentRow .tri {
    --background: white
}

.posArea .posContainer .posContentRow .tri:nth-child(2) {
    --background: #BC2B2B
}

.posArea .posContainer .posContentRow .tri:nth-child(3) {
    --background: white
}

.posArea .posContainer .posContentRow .posContent__container {
    position: relative
}

.posArea .posContainer .posContentRow .posContent__container .posContent__step {
    right: 0;
    bottom: -15px;
    left: 0;
    position: absolute;
    margin: auto;
    text-align: center
}

.posArea .posContainer .posContentRow .posContent__container .posContent__step img {
    width: 100%
}

.posArea .posContainer .posContentRow .posContent__container .posContent__thumb {
    position: relative
}

.posArea .posContainer .posContentRow .posContent__head {
    padding-bottom: 20px
}

.posArea .posContainer .posContentRow .posContent__head_big {
    padding-bottom: 20px;
    font-weight: bold;
    font-size: 3rem;
    line-height: 3rem
}

.posArea .posContainer .posContentRow .posContent__head_small {
    font-size: 1.8rem;
    line-height: 2.8rem;
    font-weight: 500
}

.posArea .posContainer .posContentRow .posContent__head_small span {
    font-size: 2.4rem;
    letter-spacing: 1.68px;
    font-weight: bold
}

.posArea .posContainer .posContentRow .posContent__thumb_text {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.1rem;
    letter-spacing: -0.48px;
    padding: 10px 5px;
    text-align: center;
    background: #bc2b2b;
    color: #fff
}

.posArea .posContainer .posContentRow .posContent__cont {
    padding-top: 26px
}

.posArea .posContainer .posContentRow .posContent__cont_title {
    font-size: 2.4rem;
    line-height: 2.4rem;
    font-weight: bold;
    color: #bc2b2b;
    padding-bottom: 20px
}

.posArea .posContainer .posContentRow .posContent__cont_c {
    font-size: 1.4rem;
    line-height: 2.6rem;
    font-weight: 500;
    color: #bc2b2b
}

.posArea .posContainer .posContentRow:nth-child(odd) {
    background: #bc2b2b;
    color: #fff
}

.posArea .posContainer .posContentRow:nth-child(odd) .tri {
    --background: #BC2B2B
}

.posArea .posContainer .posContentRow:nth-child(odd) .tri:nth-child(2) {
    --background: white
}

.posArea .posContainer .posContentRow:nth-child(odd) .tri:nth-child(3) {
    --background: #BC2B2B
}

.posArea .posContainer .posContentRow:nth-child(odd) .posContent__thumb_text {
    background: #fff;
    color: #bc2b2b
}

.posArea .posContainer .posContentRow:nth-child(odd) .posContent__cont_title {
    color: #fff
}

.posArea .posContainer .posContentRow:nth-child(odd) .posContent__cont_c {
    color: #fff
}

.posArea .posContainer .posContentRow .posContentRowWrap {
    padding: 130px 0 30px
}

.posArea .posContainer .posContentRow:last-child .posContent__container .posContent__step {
    bottom: initial;
    top: 0
}

.posArea .posContainer .posContentRow:last-child .posContent__container .posContent__step img {
    width: auto
}

.formArea .formIntro__wrap {
    position: relative
}

.formArea .formIntro {
    margin-bottom: 80px
}

.formArea .formIntro__head {
    padding-bottom: 15px
}

.formArea .formIntro__head_small {
    padding-bottom: 10px;
    font-size: 1.3rem;
    line-height: 1.8rem;
    font-weight: bold
}

.formArea .formIntro__head_big {
    font-size: 2.4rem;
    line-height: 2.4rem;
    font-weight: bold
}

.formArea .formIntro__thumb {
    padding-bottom: 15px;
    position: relative
}

.formArea .formIntro__thumb img {
    width: 100%
}

.formArea .formIntro__cont {
    font-size: 1.2rem;
    line-height: 2.2rem;
    font-weight: bold;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    bottom: -50px;
    position: absolute;
    width: 100%
}

.formArea .formIntro__cont p {
    max-width: 220px;
    width: 100%
}

.formArea .formIntro__cont .intro_circle {
    width: calc(100% - 220px);
    max-width: 130px
}

.formArea .formHead {
    max-width: 100%;
    --border-zHead: none;
    --background-zHead: #BC2B2B;
    --color-zHead: white;
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
    margin-bottom: 67px
}

.formArea .formWrap .formLabel {
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.6rem;
    padding-bottom: 10px
}

.formArea .formWrap .formInput {
    padding-bottom: 25px
}

.formArea .formWrap .formInput input,
.formArea .formWrap .formInput select {
    width: 100%;
    padding: 7px 5px;
    font-size: 1.6rem;
    line-height: 1.6rem;
    border: 1px solid #d9d9d9;
    outline: none;
    min-height: 40px
}

.formArea .formWrap .formInput select {
    background: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6.1018 8C5.02785 8 4.45387 9.2649 5.16108 10.0731L10.6829 16.3838C11.3801 17.1806 12.6197 17.1806 13.3169 16.3838L18.8388 10.0731C19.5459 9.2649 18.972 8 17.898 8H6.1018Z' fill='%23212121'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right .5rem center;
    border-radius: 2px;
    padding: .25rem 2rem .25rem .75rem
}

.formArea .formWrap .formInput.formInput__tel {
    display: flex;
    align-items: center
}

.formArea .formWrap .formInput.formInput__tel span {
    margin: -5px 5px 5px;
    font-size: 3rem;
    line-height: 1rem;
    color: #707070
}

.formArea .formWrap .formInput.formInput__tel input {
    width: 33.33%
}

.formArea .formWrap .formInput_radio {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 30px !important
}

.formArea .formWrap .formInput_radio label {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    cursor: pointer
}

.formArea .formWrap .formInput_radio input {
    width: 16px !important;
    height: 16px !important;
    border: 1px solid #000 !important;
    border-radius: 50% !important;
    outline: none !important;
    cursor: pointer !important
}

.formArea .formWrap .formInput_radio input:checked {
    background: #000 !important
}

.formArea .formWrap .formInput_radio input:disabled {
    background: #ccc !important
}

.formArea .formWrap .formInput_radio span {
    font-size: 16px !important;
    line-height: 16px !important
}

.formArea .formWrap .formCheck {
    display: flex;
    align-items: center;
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 500
}

.formArea .formWrap .formCheck .formCheck__text {
    margin-left: 5px
}

.formArea .formWrap .formCheck:not(:last-child) {
    padding-bottom: 15px
}

.formArea .formWrap .formCheck .mwform-checkbox-field-text {
    display: none
}

.formArea .formWrap .formCheck a {
    color: #bc2b2b;
    text-decoration: underline
}

.formArea .formWrap .formBtn {
    margin: 60px auto 80px
}

.formArea .formWrap .formBtn input {
    display: block;
    text-align: center;
    padding: 15px;
    font-weight: bold;
    font-size: 2.4rem;
    line-height: 2.4rem;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
    cursor: pointer;
    max-width: 200px;
    width: 100%;
    border-radius: 30px;
    margin: auto;
    pointer-events: none;
    background: #d9d9d9;
    color: #aaa
}

.formArea .formWrap .formBtn input:hover {
    opacity: .8
}

.formArea .formWrap .formBtn input.showBtn {
    background: #bc2b2b;
    color: #fff;
    pointer-events: visible
}

.oArea {
    margin-bottom: 0
}

.oArea .oWrap {
    background: #bc2b2b;
    color: #fff;
    padding: 50px
}

.oArea .oWrap .zHead {
    position: relative;
    top: initial;
    --color-zHead: white
}

.oArea .oWrap .oContainer {
    padding-top: 50px
}

.oArea .oWrap .oContainer .oInner .oItem:not(:last-child) {
    padding-bottom: 30px
}

.oArea .oWrap .oContainer .oInner .oItem .oItemWrap {
    display: flex;
    background: linear-gradient(to right, white 35%, rgba(255, 255, 255, 0) 0%);
    background-position: bottom;
    background-repeat: repeat-x;
    background-size: 7px 1px;
    padding-bottom: 5px
}

.oArea .oWrap .oContainer .oInner .oItem .oItemWrap .oItem__right {
    padding-left: 10px;
    border-left: 1px solid #fff
}

.infoArea .infoInner {
    display: flex;
    margin-left: -15px;
    margin-right: -15px
}

.infoArea .infoInner .infoItem {
    width: 50%;
    padding: 15px
}

.infoArea .infoInner .infoItem .infoItemCont__title {
    color: #bc2b2b;
    font-weight: bold
}

@media screen and (max-width: 900px)and (min-width: 768px) {
    .pLMoreInfo__col .pLMoreInfo__item {
        font-size: 2rem
    }
}

@media screen and (min-width: 768px) {
    .slideArea {
        position: relative
    }

    .slideArea .regBtn {
        right: 3%;
        bottom: 28px;
        position: fixed;
        max-width: 286px;
        width: 100%
    }

    .slideArea .regBtn a {
        border-radius: 10px;
        border: 2px solid #fff
    }

    .horMain .horItem picture {
        height: 3.4666666667vw
    }

    .hArea .hHead {
        font-size: 4.4rem
    }

    .hArea .hContainer {
        display: flex
    }

    .hArea .hContainer .hRow {
        width: 33.33%;
        padding: 0 20px
    }

    .sArea .sWrap {
        display: flex
    }

    .sArea .dLine {
        background-image: radial-gradient(ellipse, #000000 3px, #000000 3px, rgba(0, 0, 0, 0) 4px);
        background-size: 43px 43px;
        background-position: 0px -18px
    }

    .sArea .sContent {
        padding-top: 0;
        width: calc(100% - 442px);
        padding-left: 30px;
        font-size: 2rem;
        line-height: 4.4rem;
        letter-spacing: -0.6px
    }

    .sArea .sContent .sContentInner .sContent__item_title {
        font-size: 2.4rem;
        line-height: 3.3rem
    }

    .sArea .sContent .sContentInner .sContent__item_cont {
        font-size: 1.8rem;
        line-height: 3.8rem
    }

    .sArea .sThumb {
        max-width: 442px;
        width: 100%
    }

    .sArea .sThumb .point_red {
        left: -12px
    }

    .sArea .sHead {
        font-size: 4.4rem;
        line-height: 6.5rem;
        padding-bottom: 30px
    }

    .sArea .sHead .uLine {
        letter-spacing: -4.4px
    }

    .zHead {
        max-width: 1200px;
        width: 90%;
        --border-zHead: 4px solid #BC2B2B;
        padding: 25px 10px
    }

    .zHead__small {
        font-size: 2rem;
        line-height: 2rem;
        padding-bottom: 0
    }

    .zHead__big {
        font-size: 4.4rem;
        line-height: 6rem
    }

    .zHead__img {
        top: 18px
    }

    .zHead__img img {
        min-height: 92px
    }

    .zHead.zHead_abs {
        top: -69px
    }

    .swiContainer .swi {
        max-width: 1200px;
        width: 90%
    }

    .swiContainer .swiWrap {
        margin-left: -25px;
        margin-right: -25px
    }

    .swiContainer .swiSlide {
        max-width: initial;
        width: calc((100% + 50px)/3);
        padding: 0 25px
    }

    .swiContainer .swiSlide .swiTop .swiText {
        font-size: 1.6rem;
        line-height: 1.6rem
    }

    .swiContainer .swiSlide .swiTop .swiName {
        font-size: 1.4rem;
        line-height: 1.9rem
    }

    .swiContainer .swiSlide .swiBot .swiTitle {
        font-size: 1.6rem;
        line-height: 3.4rem;
        padding-bottom: 10px
    }

    .swiContainer .swiSlide .swiBot .swiCont {
        font-size: 1.4rem;
        line-height: 3rem
    }

    .zArea {
        padding: 163px 0 100px
    }

    .zArea .zRow {
        max-width: 1200px;
        width: 90%;
        margin: auto
    }

    .zArea .zRow .zRowWrap {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        width: 100%
    }

    .zArea .zRow .zNo {
        width: 100%;
        margin-bottom: 0
    }

    .zArea .zRow .zThumb {
        max-width: 400px;
        width: 100%
    }

    .zArea .zRow .zContent {
        width: calc(100% - 400px);
        padding-left: 6.5%
    }

    .zArea .zRow .zTitle {
        font-size: 2.6rem;
        line-height: 3.6rem;
        padding: 0 0 32px
    }

    .zArea .zRow .zCont {
        font-size: 1.8rem;
        line-height: 3.8rem
    }

    .zArea .zRow__img {
        top: 0;
        bottom: 0;
        left: calc(400px + 6.5%);
        display: flex;
        align-items: center
    }

    .zArea .zRow__img img {
        width: auto
    }

    .zArea .zRow:nth-child(even) .zThumb {
        order: 1
    }

    .zArea .zRow:nth-child(even) .zContent {
        padding-left: 0;
        padding-right: 6.5%
    }

    .zArea .zRow:nth-child(even) .zRow__img {
        left: 0
    }

    .zArea .zHead_3 {
        text-align: center;
        margin-top: 0
    }

    .zArea .zHead_3__small {
        background: #fff;
        color: #bc2b2b;
        display: inline-block;
        padding: 5px 27px;
        font-size: 1.4rem;
        line-height: 1.9rem;
        margin-bottom: 30px
    }

    .zArea .zHead_3__big {
        font-size: 4.4rem;
        line-height: 4.4rem;
        padding-bottom: 35px
    }

    .zArea .zHead_3__cont {
        font-size: 2rem;
        line-height: 2.7rem;
        padding-bottom: 70px
    }

    .zArea.zAreaWhite .zHead__img {
        top: -5px
    }

    .zArea.zAreaWhite .swiContainer .swiTop {
        margin-top: 0
    }

    .zArea.zAreaWhiteFlex .swiContainer .swi {
        width: 100%
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap {
        display: flex;
        padding-bottom: 65px
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide {
        display: flex;
        flex-direction: column
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide:not(:last-child) {
        padding-bottom: 0
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide .swiTop {
        width: auto;
        padding-right: 0;
        margin-top: 0;
        margin-left: auto;
        margin-right: auto
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide .swiBot {
        max-width: 100%;
        width: auto;
        height: 100%
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide .swiBot::before {
        top: -6px;
        right: 0;
        left: 0;
        transform: initial;
        bottom: initial
    }

    .zArea.zAreaWhiteFlex .swiContainer .swiWrap .swiSlide:nth-child(even) .swiTop {
        order: initial;
        padding-left: 0;
        margin-top: 0;
        margin-left: auto;
        margin-right: auto
    }

    .zArea.zAreaHuman {
        padding: 50px 0 100px
    }

    .zArea.zAreaHuman .swiContainer .swiWrap {
        margin-left: -17px;
        margin-right: -17px
    }

    .zArea.zAreaHuman .swiContainer .swiSlide {
        width: calc((100% + 34px)/3);
        padding: 35px 17px 0
    }

    .zArea.zAreaHuman .swiContainer .swiSlide .swiTop {
        padding-top: 35px
    }

    .zArea.zAreaHuman .swiContainer .swiSlide .swiTop .swiText {
        font-size: 1.4rem;
        line-height: 2.4rem;
        margin-top: -70px
    }

    .zArea.zAreaHuman .swiContainer .swiSlide .swiBot .swiTitle {
        padding-bottom: 10px;
        font-size: 1.4rem;
        line-height: 2.4rem
    }

    .zArea.zAreaHuman .swiContainer .swiSlide .swiBot .swiCont {
        font-size: 1.4rem;
        line-height: 2.6rem
    }

    .pLArea .pLRow .pLSmall {
        font-size: 2rem;
        line-height: 2rem
    }

    .pLArea .pLRow .pLBig {
        font-size: 3rem;
        line-height: 5.3rem;
        padding-bottom: 40px
    }

    .pLArea .pLRow .pLBig span {
        font-size: 4.9rem
    }

    .pLArea .pLRow.horMain .pLItem {
        padding: 40px 15px
    }

    .pLArea .pLRow.horMain .pLItem picture {
        height: 3.2vw
    }

    .posArea .posContainer .posContentRow .posContent__head_small span {
        font-size: 2.6rem
    }

    .formArea .formArWrap {
        max-width: 1200px;
        width: 90%;
        margin: auto
    }

    .formArea .formHead {
        max-width: 1200px;
        width: 90%;
        margin: 0 auto 67px;
        border-top-left-radius: 18px;
        border-top-right-radius: 18px
    }

    .formArea .formIntro__wrap,
    .formArea .formHead,
    .formArea .formWrap {
        width: 100%
    }

    .formArea .formIntro__wrap {
        position: relative
    }

    .formArea .formContainer {
        border: 1px solid #bc2b2b;
        border-radius: 19px
    }

    .formArea .formContainer .formWrap {
        padding: 0 10%
    }

    .formArea .formContainer .formWrap .formBtn {
        margin: 50px 0
    }

    .formArea .formIntro {
        padding-right: 0
    }

    .formArea .formIntro .mWrap {
        width: 100%
    }

    .formArea .formIntro .mImg {
        padding-right: 50px;
        max-width: 100%
    }

    .formArea .formIntro .mImg img {
        max-width: 500px;
        width: 100%
    }

    .formArea .formIntro .mCV a {
        max-width: 500px
    }

    .formArea .formIntro__head {
        padding-bottom: 30px
    }

    .formArea .formIntro__head_small {
        font-size: 1.6rem;
        line-height: 2.2rem;
        padding-bottom: 20px
    }

    .formArea .formIntro__head_big {
        font-size: 4.4rem;
        line-height: 4.4rem
    }

    .formArea .formIntro__thumb {
        padding-bottom: 30px
    }

    .formArea .formIntro__cont {
        font-size: 2rem;
        line-height: 3.5rem
    }

    .formArea .formIntro__cont p {
        max-width: 360px
    }

    .formArea .formIntro__cont .intro_circle {
        width: calc(100% - 360px);
        max-width: 230px
    }
}

@media screen and (min-width: 1100px) {
    .swiContainer .swiSlide .swiBot .swiTitle {
        font-size: 1.8rem
    }

    .zArea.zAreaWhite .swiContainer .swiSlide {
        width: calc((100% + 50px)/3)
    }

    .zArea.zAreaHuman .swiContainer .swiSlide {
        width: calc((100% + 34px)/4)
    }

    .formArea .formArWrap {
        display: flex;
        align-items: center
    }

    .formArea .formIntro {
        padding-right: 50px;
        width: calc(100% - 500px)
    }

    .formArea .formContainer {
        max-width: 555px;
        width: 100%
    }
}

@media screen and (min-width: 1200px) {
    .formArea .formIntro__thumb .intro_circle {
        max-width: 230px;
        bottom: -70px
    }
}

@media screen and (max-width: 767px) {
    .pLMoreInfo .pLMoreInfoWrap {
        flex-wrap: wrap;
        margin-left: -7px;
        margin-right: -7px
    }

    .pLMoreInfo__col {
        width: 50%;
        padding: 0 7px 15px
    }

    .pLMoreInfo__col:first-child {
        order: 1;
        width: 100%;
        max-width: 257px;
        padding-bottom: 0;
        margin: auto
    }

    .pLMoreInfo__col:last-child {
        order: -1
    }

    .pLMoreInfo__col .pLMoreInfo__item {
        font-size: 1.6rem;
        line-height: 1.6rem;
        letter-spacing: .46px
    }

    .pLMoreInfo__col .pLMoreInfo__item::before {
        bottom: -5px
    }

    .infoArea .infoInner {
        display: block;
        margin-left: 0;
        margin-right: 0
    }

    .infoArea .infoInner .infoItem {
        width: 100%
    }

    .oArea .oWrap .oContainer .oInner .oItem .oItemWrap {
        display: block
    }

    .oArea .oWrap .oContainer .oInner .oItem .oItemWrap .oItem__left {
        text-decoration: underline
    }

    .oArea .oWrap .oContainer .oInner .oItem .oItemWrap .oItem__right {
        padding-left: 0;
        border-left: none
    }
}

@media screen and (max-width: 374px) {
    .pLMoreInfo__col .pLMoreInfo__item {
        font-size: 1.3rem;
        line-height: 1.3rem;
        letter-spacing: 0
    }
}

.questionArea {
    padding: 60px 0px 60px 0px
}

.questionArea.common_width_375 {
    --max-width: 1200px
}

.questionArea .questionWrap {
    margin-bottom: 72px
}

.questionArea .questionHead {
    position: relative
}

.questionArea .questionHead .picture {
    display: flex;
    justify-content: center
}

.questionArea .questionTitle {
    position: absolute;
    top: 50px;
    width: 100%;
    text-align: center
}

.questionArea .questionTitle .qHead_big {
    font-size: 3rem;
    line-height: 3rem;
    font-weight: 900
}

.questionArea .contentWrap {
    margin-top: 35px
}

.questionArea .contentWrap .content {
    border: 1px solid #bc2b2b;
    border-radius: 5px;
    margin-bottom: 30px
}

.questionArea .contentWrap .content .contentHead {
    background-color: #bc2b2b;
    justify-content: space-between;
    display: flex;
    cursor: pointer;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
    align-items: center
}

.questionArea .contentWrap .content .contentHead p {
    color: #fff;
    font-size: 14px;
    line-height: 20px
}

.questionArea .contentWrap .qPadding {
    padding: 20px 15px 20px 15px
}

.questionArea .desContent {
    max-height: 0px;
    overflow: hidden;
    transition: max-height .2s ease-out
}

.questionArea .desContent p {
    font-size: 14px;
    line-height: 24px;
    padding: 20px 15px 20px 15px
}

.questionArea .iReadMore {
    margin-left: 28px;
    position: relative;
    width: 12px;
    height: 12px;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear
}

.questionArea .iReadMore span {
    top: 50%;
    right: 0;
    background: #fff;
    position: absolute;
    transition: all .3s;
    transform: rotate(0);
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear
}

.questionArea .iReadMore span:first-child {
    width: 12px;
    height: 2px
}

.questionArea .iReadMore span:last-child {
    height: 12px;
    width: 2px;
    top: 1px;
    right: 5px
}

.questionArea .active span:first-child {
    transform: rotate(180deg)
}

.questionArea .active span:last-child {
    transform: rotate(90deg)
}

@keyframes slide-left {
    0% {
        transform: translate3d(0, 0, 0)
    }

    100% {
        transform: translate3d(-50%, 0, 0)
    }
}

@keyframes top {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(90deg)
    }
}

@keyframes bottom {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(180deg)
    }
}

@media screen and (min-width: 768px) {
    .questionArea .questionHead .picture img {
        width: 26rem;
        height: 10.9rem
    }

    .questionArea .questionTitle {
        top: unset;
        bottom: 0px
    }

    .questionArea .questionTitle .qHead_big {
        color: #bc2b2b;
        font-size: 44px
    }

    .questionArea .contentWrap {
        margin-top: 45px
    }

    .posArea .common_width_375 {
        --max-width: 1200px;
        margin: auto
    }

    .posArea .posContainer .posContainer__head_small {
        font-size: 2rem;
        line-height: 2.7rem;
        font-weight: 600
    }

    .posArea .posContainer .posContainer__head_big {
        font-size: 4.4rem;
        line-height: 2rem
    }

    .posArea .posContentRow:last-child .posContent__step img {
        max-width: 50rem !important;
        width: 50rem !important
    }

    .posArea .posContentRowWrap {
        display: flex;
        padding: 130px 0 0 !important
    }

    .posArea .posContentRowWrap .sp_block {
        display: none !important
    }

    .posArea .posContentRowWrap .posContent__thumb {
        width: 50%;
        display: flex;
        flex-direction: row-reverse;
        align-content: center;
        padding-right: 7rem
    }

    .posArea .posContentRowWrap .posContent__thumb .posContent__thumb_img {
        max-width: 23rem;
        width: 100%
    }

    .posArea .posContentRowWrap .posContent__container {
        width: 50%
    }

    .posArea .posContentRowWrap .posContent__container .posContent__step {
        max-width: 28rem;
        right: unset !important;
        bottom: unset !important;
        top: 50% !important;
        transform: translate(0, -50%)
    }

    .posArea .posContentRowWrap .posContent__container .posContent__head_big {
        padding-bottom: unset;
        font-size: 3.2rem;
        line-height: 5rem;
        letter-spacing: -1.32px
    }

    .posArea .posContentRowWrap .posContent__container .posContent__head {
        display: flex;
        flex-direction: column-reverse;
        padding-bottom: 1.6rem
    }

    .posArea .posContentRowWrap .posContent__container .posContent__head .posContent__head_small {
        padding-bottom: .4rem;
        font-size: 2rem;
        letter-spacing: -0.6px
    }

    .posArea .posContentRowWrap .posContent__container .posContent__cont {
        padding-top: unset
    }

    .posArea .posContentRowWrap .posContent__container .posContent__cont .posContent__cont_c {
        font-size: 1.4rem;
        line-height: 2.8rem
    }
}

@media screen and (min-width: 1100px) {
    .posArea .posContentRowWrap .posContent__container .posContent__head_big {
        font-size: 4.4rem;
        line-height: 6rem
    }
}

@keyframes slide-left {
    0% {
        transform: translate3d(0, 0, 0)
    }

    100% {
        transform: translate3d(-50%, 0, 0)
    }
}

@keyframes top {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(90deg)
    }
}

@keyframes bottom {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(180deg)
    }
}
/*# sourceMappingURL=maps/participle.css.map */
