main {
    background-color: #F6F7E7;
    font-family: 'ヒラギノUD丸ゴ Std', 'Roboto', 'Noto Sans JP', 'Noto Sans Japanese', sans-serif;
}

.wrap {
    width: 980px;
    margin: 0 auto;
}

#main_visual {
    position: relative;
    width: 980px;
    margin: 0 auto;
}

h2 {
    position: absolute;
    display: inline-block;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    font-size: 46px;
    font-weight: bold;
    text-align: center;
    color: #707070;
    word-break: keep-all;
}

.arrows_we {
    width: 396.5px;
    margin: 0 auto;
    line-height: 0;
}

#whatIs {
    color: #707070;
    position: relative;
}

h3 {
    font-size: 36px;
    line-height: 1.55;
    text-align: center;
    font-weight: bold;
}

.main_txt {
    text-align: center;
    line-height: 1.5;
    font-size: 18px;
    letter-spacing: .35em;
    margin-top: 30px;
}

.family01 {
    width: 328px;
    margin: 50px auto;
}

.flex {
    display: flex;
}

.family02_box {
    position: relative;
    justify-content: space-between;
    align-items: center;
    padding: 0 55px 80px;
}

h4 {
    position: absolute;
    text-align: center;
    font-size: 24px;
    letter-spacing: 0.275em;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    word-break: keep-all;
    font-weight: bold;
}

.family02 {
    width: 298px;
}

.family02_box p {
    width: 264px;
    line-height: 1.78;
    font-size: 18px;
    margin-top: 20px;
}

.kodomokai {
    width: 190px;
}

.decoration {
    position: absolute;
}

.decoration01 {
    top: 6%;
    left: 12%;
    width: 70.6px;
}

.decoration01.right {
    left: auto;
    right: 12%;
    top: -2%;
}

.decoration02 {
    top: 24%;
    left: 4%;
    width: 74px;
}

.decoration03 {
    top: 41%;
    left: 11%;
    width: 106px;
}

.decoration04 {
    top: 32%;
    right: 8%;
    width: 51.5px;
}

.decoration05 {
    top: 51%;
    right: 13%;
    width: 101px;
}

.decoration06 {
    bottom: 27%;
    left: 0;
    width: 85.5px;
}

.decoration06.right {
    left: auto;
    right: 27%;
    bottom: 6%;
}

@media screen and (max-width: 750px) {
    .wrap {
        width: 94%;
    }
    #main_visual {
        width: 100%;
        padding-top: 9.7vw;
    }
    .main_img {
        position: relative;
        height: 61vw;
        overflow-x: hidden;
    }
    .main_img img {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        width: 113%;
    }
    h2 {
        top: 19.5%;
        font-size: 6vw;
    }
    .arrows_we {
        width: 51.7vw;
    }
    h3 {
        font-size: 4.95vw;
    }
    .main_txt {
        font-size: 3.13vw;
        margin-top: 5.87vw;
    }
    .family01 {
        width: 42%;
        margin: 7.82vw auto;
    }
    .family02_box {
        padding: 0 0 7.82vw;
    }
    .family02_box.flex {
        display: block;
    }
    h4 {
        position: static;
        font-size: 4.17vw;
        transform: unset;
    }
    .family02 {
        width: 38.85%;
        margin-left: 8.47vw;
    }
    .family02_box p {
        width: 60%;
        font-size: 3.13vw;
        margin: 3.26vw 2vw;
        line-height: 1.333;
    }
    .kodomokai {
        width: 24.77vw;
        position: absolute;
        right: 5%;
        top: 15%;
    }
    .decoration01 {
        top: 4%;
        left: -2%;
        width: 9.2vw;
    }
    .decoration01.right {
        left: auto;
        right: 0;
        top: 0;
    }
    .decoration02 {
        top: 36%;
        left: 0;
        width: 9.65vw;
    }
    .decoration03 {
        top: 46%;
        left: 6%;
        width: 13.82vw;
    }
    .decoration04 {
        top: 20%;
        right: 0;
        width: 6.71vw;
    }
    .decoration05 {
        top: 49%;
        right: 8%;
        width: 13.17vw;
    }
    .decoration06 {
        bottom: 36%;
        left: -3%;
        width: 11.15vw;
    }
    .decoration06.right {
        left: auto;
        right: 6%;
    }
}


/* schedule */

#schedule {
    position: relative;
    width: 980px;
    margin: 0 auto;
    padding: 60px 0;
}

#schedule .title {
    width: 903.5px;
    margin: 0 auto;
}

#schedule .tree_box {
    position: absolute;
    width: 197px;
    top: 215px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}

#schedule .tree {
    position: relative;
}

#schedule .leaves {
    position: absolute;
    background-color: #fff;
    border: 4.25px solid #FF6600;
    border-radius: 1em;
    padding: .5em .25em;
}

#schedule .leaves p {
    position: relative;
    font-size: 20px;
    line-height: 1.275;
    text-align: center;
}

#schedule .leaves p::after,
#schedule .leaves p::before {
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
}

#schedule .leaves p.left::after,
#schedule .leaves p.left::before {
    left: 100%;
}

#schedule .leaves p.right::after,
#schedule .leaves p.right::before {
    right: 100%;
}

#schedule .leaves p::after {
    border-top-width: 12px;
    border-bottom-width: 12px;
    border-left-width: 24px;
    border-right-width: 24px;
    margin-top: -12px;
}

#schedule .leaves p::before {
    border-top-width: 15px;
    border-bottom-width: 15px;
    border-left-width: 30px;
    border-right-width: 30px;
    margin-top: -15px;
}

#schedule .leaves p.left::after {
    border-left-color: #FFFFFF;
}

#schedule .leaves p.left::before {
    margin-left: 4.25px;
    border-left-color: #FF6600;
}

#schedule .leaves.leaf-1 p.left::before,
#schedule .leaves.leaf-3 p.left::before {
    margin-left: 4.25px;
    border-left-color: #55C0E5;
}

#schedule .leaves p.right::after {
    border-right-color: #FFFFFF;
}

#schedule .leaves p.right::before {
    margin-right: 4.25px;
    border-right-color: #FF6600;
}

#schedule .leaf-1 {
    top: 12.7%;
    left: -45%;
    border: 4.25px solid #55C0E5;
}

#schedule .leaf-2 {
    top: 25.3%;
    right: -55%;
}

#schedule .leaf-3 {
    top: 44.5%;
    left: -35%;
    border: 4.25px solid #55C0E5;
}

#schedule .leaf-4 {
    top: 57.6%;
    right: -46%;
}

#schedule .leaf-5 {
    top: 75.2%;
    right: -73%;
}

#schedule .leaf-6 {
    top: 85.6%;
    left: -25%;
}

.schedule_content {
    padding-top: 90px;
    justify-content: space-between;
}

.cont_left,
.cont_right {
    position: relative;
}

.schedule-01 {
    width: 269px;
}

.sch_tit {
    font-size: 20px;
    font-weight: bold;
    margin-top: 10px;
    line-height: 1.1;
}

.sch_tit sup {
    font-size: 60%;
    z-index: 3;
}

.sch_txt {
    font-size: 18px;
    line-height: 1.22;
}

.schedule-02 {
    width: 100%;
    margin-top: 45px;
}

.schedule-02 dt {
    align-items: flex-end;
}

.schedule-02 dt .sch_txt {
    margin-bottom: 54px;
    margin-left: 10px;
}

.deal {
    width: 146px;
}

.schedule-03 {
    width: 300px;
    margin-top: 25px;
}

.schedule-04 {
    width: 390px;
    margin-top: 30px;
}

.schedule-04 dd,
.schedule-05 dd {
    padding-left: 165px;
}

.schedule-04 .sch_tit {
    letter-spacing: -1px;
}

.schedule-05 {
    width: 390px;
    margin-top: 105px;
}

.schedule-06 {
    width: 230px;
    margin-top: 180px;
    margin-left: 110px;
    position: relative;
}

.schedule-06_note {
    position: absolute;
    right: 18%;
    top: 45%;
    z-index: 3;
}

.schedule-bg-left,
.schedule-bg-right,
.schedule-bg-right2 {
    position: absolute;
}

.schedule-bg-left {
    width: 138.55px;
    right: -3%;
    top: 13%;
}

.schedule-bg-right {
    width: 341.8px;
    left: 2%;
    top: -9%;
}

.schedule-bg-right2 {
    width: 341.8px;
    left: 2%;
    bottom: 9%;
}

@media screen and (max-width: 750px) {
    #schedule {
        width: 100%;
        padding: 9.13vw 0;
    }
    #schedule .title {
        width: 91.85%;
    }
    #schedule .tree_box {
        width: 25.68vw;
        top: 32.2vw;
    }
    #schedule .leaves {
        border: 0.55vw solid #FF6600;
    }
    #schedule .leaves p {
        font-size: 3.13vw;
        line-height: 1.167;
    }
    #schedule .leaves p::after {
        border-top-width: 1.56vw;
        border-bottom-width: 1.56vw;
        border-left-width: 3.13vw;
        border-right-width: 3.13vw;
        margin-top: -1.56vw;
    }
    #schedule .leaves p::before {
        border-top-width: 1.96vw;
        border-bottom-width: 1.96vw;
        border-left-width: 3.91vw;
        border-right-width: 3.91vw;
        margin-top: -1.96vw;
    }
    #schedule .leaves p.left::before {
        margin-left: 0.55vw;
    }
    #schedule .leaves p.right::before {
        margin-right: 0.55vw;
    }
    #schedule .leaf-1 {
        top: 10.8%;
        left: -60%;
        border: 0.55vw solid #55C0E5;
    }
    #schedule .leaf-2 {
        top: 17.6%;
        right: -70%;
    }
    #schedule .leaf-3 {
        top: 49.3%;
        left: -23%;
        border: 0.55vw solid #55C0E5;
    }
    #schedule .leaf-4 {
        top: 64.1%;
        right: -61%;
    }
    #schedule .leaf-5 {
        top: 75.2%;
        right: -88%;
    }
    #schedule .leaf-6 {
        top: 84.1%;
        left: -36%;
    }
    .schedule_content {
        padding-top: 14vw;
        padding-bottom: 14vw;
    }
    .schedule-01 {
        width: 35.07vw;
        margin-left: 4.5vw;
    }
    .sch_tit {
        font-size: 3.39vw;
        margin-top: 1.3vw;
    }
    .sch_txt {
        display: none;
    }
    .schedule-02 {
        margin-top: 16.95vw;
    }
    .deal {
        width: 19.04vw;
    }
    .schedule-03 {
        width: 39.11vw;
        margin-top: 3.91vw;
    }
    .schedule-04 {
        width: 41.33vw;
        margin-top: 14.73vw;
    }
    .schedule-04 dd,
    .schedule-05 dd {
        padding-left: 0;
    }
    .schedule-05 {
        width: 41.33vw;
        margin-top: 19.95vw;
    }
    .schedule-05 .sch_tit {
        font-size: 2.9vw;
        letter-spacing: -1px;
    }
    .schedule-06 {
        width: 29.99vw;
        margin-top: 45vw;
        margin-left: 3.91vw;
    }
    .schedule-06_note {
        right: 10%;
        top: 42%;
    }
    .schedule-bg-left {
        width: 45.06vw;
        right: -9%;
        top: -6%;
    }
    .schedule-bg-right {
        width: 37.68vw;
        left: 14%;
        top: -11.5%;
    }
    .schedule-bg-right2 {
        width: 37.68vw;
        left: 14%;
        bottom: -6%;
    }
}


/* junior_mode */

#junior_mode .contents_inner {
    border: 6px dotted #0099FF;
    border-radius: 2em;
    background-color: #fff;
    padding: 50px 40px;
    box-sizing: border-box;
}

#junior_mode h3 {
    color: #707070;
    margin-bottom: 40px;
}

.junior_bg {
    background-image: url(/product/phone/arrows/arrowswe_special/junior/images/junior_mode-bg.png);
    background-size: contain;
}

.jump_box {
    width: 370px;
}

.junior_box1 {
    width: 662.4px;
    padding-top: 25px;
    margin-left: 32px;
}

.jump_box dt {
    width: 77%;
    margin-bottom: 15px;
}

.jump_box dd {
    align-items: center;
    font-size: 18px;
    line-height: 1.22;
}

.ohana {
    width: 127.7px;
    margin-right: 5px;
}

.junior_mode-01 {
    width: 283.4px;
}

.junior_box2 {
    width: 581px;
    margin: 35px auto;
}

.junior_box3 {
    align-items: center;
    width: 457px;
    margin: 0 auto;
}

.junior_box3 p,
.junior_box4 p {
    font-size: 18px;
    line-height: 1.22;
}

.junior_box3 .ohana {
    transform: rotate(45deg);
}

.junior_box4 {
    align-items: center;
    width: 100%;
    margin-top: 45px;
}

.run {
    width: 208.6px;
}

.junior_bottom {
    width: 740.5px;
    align-items: center;
    margin: 0 auto;
}

.junior_bottom-left {
    width: 550px;
}

.junior_bottom-right {
    width: 186px;
}

.junior_mode_note {
    font-size: 14px;
    line-height: 1.57;
    margin-top: 20px;
}

@media screen and (max-width: 750px) {
    #junior_mode .contents_inner {
        padding: 5.22vw 3.26vw;
    }
    #junior_mode h3 {
        margin-bottom: 2.61vw;
    }
    .jump_box {
        width: 48.24vw;
    }
    .junior_box1 {
        width: 81vw;
        padding-top: 3.26vw;
        margin: 0 auto;
    }
    .jump_box dt {
        margin-bottom: 1.96vw;
    }
    .jump_box dd {
        font-size: 3.13vw;
        line-height: 1.167;
    }
    .ohana {
        width: 16.65vw;
        margin-right: 0.65vw;
    }
    .junior_mode-01 {
        width: 36.95vw;
    }
    .junior_box2 {
        width: 75.75vw;
        margin: 4.56vw auto;
    }
    .junior_box3 {
        width: 59.58vw;
        position: relative;
    }
    .junior_box3 p,
    .junior_box4 p {
        font-size: 3.13vw;
        line-height: 1.167;
    }
    .junior_box4 {
        margin-top: 5.87vw;
        position: relative;
        align-items: flex-end;
    }
    .junior_box4 p {
        margin-left: 3.91vw;
    }
    .run {
        width: 27.2vw;
    }
    .junior_bottom {
        width: 76vw;
        align-items: flex-end;
    }
    .junior_bottom-left {
        width: 54.71vw;
    }
    .junior_bottom-right {
        width: 24.25vw;
    }
    .ohana.sp-abso {
        position: absolute;
    }
    .junior_box3 .ohana.sp-abso {
        right: -25%;
        top: -5%;
    }
    .junior_box4 .ohana.sp-abso {
        right: 2%;
        top: -18%;
    }
    .junior_mode_note {
        font-size: 1.87vw;
        margin-top: 2.67vw;
    }
}

.phone_check {
    width: 748px;
    margin: 0 auto;
    justify-content: space-between;
    text-align: center;
    font-size: 18px;
    line-height: 1.444;
    color: #707070;
    margin-top: 15px;
    letter-spacing: .25em;
}

.boy,
.girl {
    width: 159.79px;
}

.tri {
    width: 58px;
    margin: 0 auto;
    margin-bottom: 20px;
}

.model_career_inner {
    background-color: #fff;
}

.model_career_box {
    margin-bottom: 0;
}

.special_link {
    display: block;
    position: relative;
    width: 500px;
    height: 80px;
    color: #fff;
    background-color: #707070;
    margin: 0 auto;
    font-size: 24px;
    line-height: 3.33;
    text-align: center;
    text-decoration: none;
    margin-bottom: 70px;
    font-weight: 400;
    margin-top: 50px;
}

.special_link::after {
    content: '';
    position: absolute;
    right: 20px;
    top: 50%;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    width: 12px;
    height: 12px;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 750px) {
    .phone_check {
        width: 100%;
        font-size: 3.13vw;
        line-height: 1.333;
        margin-top: 1.96vw;
        align-items: center;
        letter-spacing: .1em;
    }
    .boy,
    .girl {
        width: 18.6vw;
    }
    .tri {
        width: 7.56vw;
        margin-bottom: 2.61vw;
    }
    .special_link {
        width: 65.19vw;
        height: 10.43vw;
        font-size: 3.13vw;
        margin-bottom: 9.13vw;
        margin-top: 6.52vw;
    }
    .special_link::after {
        right: 2.61vw;
        width: 1.56vw;
        height: 1.56vw;
    }
}

.bg_yellow {
    background-color: #F6F7E7;
}