@charset "utf-8"; /* CSS Document */
/*--------------------------------------
　Main Index
---------------------------------------*/
/*------------
index_PC
------------*/
body {
    background: none;
}

#contents {
}

.forTab {
    position: relative;
    z-index: 1;
}

.index {
}

footer {
}

.areaInner {
    width: 1000px;
}

/*--------------------------------------
　Header_PC
---------------------------------------*/
#header {
    position: absolute;
}

#header h1 {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
}

/*------------
mainVis_PC
------------*/
#mainVis {
    position: relative;
    padding: 48px 0 0;
}

#mainVisArea {
    position: relative;
    padding: 0 0 60px;
}

#mainVisArea::before {
    content: "";
    position: absolute;
    /*z-index: -2;*/
    z-index: 1;
    bottom: 0;
    left: calc(51% + 440px);
    width: 315px;
    height: 690px;
    background: url("./img/man_index.png") 0 0 no-repeat;
    background-size: contain;
}

#mainVisArea::after {
    content: "";
    position: absolute;
    /*z-index: -2;*/
    z-index: 1;
    bottom: 0;
    left: calc(37% - 610px);
    width: 315px;
    height: 653px;
    background: url("./img/woman_index.png") 0 0 no-repeat;
    background-size: contain;
}

#mainVis .book {
    width: 542px;
    height: 381px;
    margin: 0 auto 30px;
    padding: 60px 0 0;
    background: url("./img/book.png") 0 0 no-repeat;
    background-size: 542px auto;
    text-align: center;
}

#mainVis .sttl {
    margin: 0 80px 20px;
    padding: 0 0 15px;
    background: url(./img/dotline_r.png) 0 100% repeat-x;
    background-size: auto 3px;
    font-size: 2.2rem;
    color: #f8b62d;
}

#mainVis h2 {
    padding: 0 60px;
    font-size: 4.6rem;
    line-height: 1.5;
}

#mainVis .catch {
    margin: 0 0 40px;
    text-align: center;
}

#mainVis .catch div {
    margin: 0 0 10px;
}

#mainVis p {
    padding: 0 150px;
}

#mainVisArea .adv1 {
    position: relative;
    margin: 60px 90px 0;
}

#mainVisArea .adv1 .txtArea {
    width: 465px;
    float: left;
}

#mainVisArea .adv1 p {
    margin: 15px 0;
}

/*------------
contents_PC
------------*/
#contents {
    padding: 0 0 0;
    overflow-x: hidden;
}

#contents::before {
    width: 0;
    height: 0;
    background: none;
    border: none;
}

#contents::after {
    width: 0;
    height: 0;
    background: none;
    border: none;
}

/*------------
indexSect_PC
------------*/
.indexSect {
    position: relative;
    padding-top: 100px;
}

.indexSect .sectTtl {
    position: relative;
    margin: 0 0 45px;
    padding: 0 50px 30px;
    font-size: 4.6rem;
    text-align: center;
    line-height: 1.5;
    font-weight: 700;
}

.indexSect .sectTtl::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 12px;
}

.indexSect .sectTtl a {
    display: inline-block;
    padding: 0 40px;
    background: url(./img/arrow_base.svg) 100% 50% no-repeat;
    background-size: 27px auto;
}

.indexSect .intro {
    padding: 0 50px 30px;
}

.indexSect .ulBox, .indexSect .liBox {
    position: relative;
	margin-top:30px;
}

.indexSect .box2, .indexSect .box3, .indexSect .box4 {
    display: flex;
    flex-wrap: wrap;
}

.indexSect .box2 a, .indexSect .box3 a, .indexSect .box4 a {
    height: 100%;
}

.indexSect .box2 .liBox {
    width: calc((100% - 36px) / 2);
    margin: 0 36px 35px 0;
}

.indexSect .box2 .liBox:nth-child(2n) {
    margin: 0 0 35px 0;
}

.indexSect .box3 .liBox {
    width: calc((100% - 71px) / 3);
    margin: 0 35px 35px 0;
}

.indexSect .box3 .liBox:nth-child(3n) {
    margin: 0 0 35px 0;
}

.indexSect .box4 .liBox {
    width: calc((100% - 60px) / 4);
    margin: 0 20px 20px 0;
}

.indexSect .box4 .liBox:nth-child(4n) {
    margin: 0 0 20px 0;
}

/*------------
sect101_PC
------------*/
#sect101 {
    padding: 80px 0 0;
}

#sect101::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 620px;
    background: url("./img/sect101_vis.jpg") calc(50% - 300px) 40px no-repeat #fbfaf6;
}

#sect101::after {
    content: "";
    position: absolute;
    top: 620px;
    left: 0;
    width: 100%;
    height: 180px;
    background: url("./img/tri4.svg") 50% 0 no-repeat;
    z-index: -1;
}

#sect101 .headArea {
    width: 510px;
    margin: 0 0 50px 490px;
}

#sect101 .headArea .sectTtl {
    margin: 0 0 20px;
    font-size: 4.6rem;
    text-align: center;
}

#sect101 .headArea p {
    padding: 0 20px;
}

#sect101 .mainArea {
    padding: 0 180px 83px;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    position: relative;
}

#sect101 .mainArea::before {
    content: "";
    position: absolute;
    /* z-index: -2; */
    z-index: 1;
    bottom: 0;
    left: calc(50% + 350px);
    width: 300px;
    height: 255px;
    background: url(./img/sect101_vis_ill.png) 0 0 no-repeat;
    background-size: contain;
}

#sect101 .mainArea .sttl {
    margin: 0 0 10px;
}

#sect101 .mainArea .sttl::before {
    /* content: ""; */
    position: absolute;
    top: -30px;
    left: -90px;
    width: 107px;
    height: 75px;
    background: url(./img/check.svg) 0 0 no-repeat;
    background-size: 107px auto;
}

#sect101 .mainArea ul {
    margin: 0;
    padding: 0;
}

#sect101 .fuki {
    position: relative;
    z-index: 2;
    width: 590px;
    margin: 0 auto 70px;
    padding: 30px 40px;
    background: #62789f;
    border-radius: 10px;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    font-size: 4.2rem;
    line-height: 1.5;
    text-align: center;
    color: #fff;
}

#sect101 .fuki::before {
    content: "";
    position: absolute;
    z-index: -2;
    bottom: -25px;
    left: 0;
    width: 100%;
    height: 30px;
    background: url(./img/tri3.svg) 50% 0 no-repeat;
    background-size: 42px auto;
}

/*------------
sect102_PC
------------*/
#sect102 {
    padding: 0 0 80px;
}

#sect102 .matome {
    margin: 50px 0;
}

#sect102 .matome .boxWrap {
    padding: 60px 50px 20px;
}

#sect102 .matome .imgArea2 {
    width: 140px;
    float: right;
}

#sect102 .matome .imgArea2 .flame {
    position: relative;
    width: 85px;
    margin: 0 auto 12px;
}

#sect102 .matome .txt {
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.6;
}

#sect102 .matome .txtArea {
    width: 740px;
    float: left;
}

#sect102 .mdlTtl {
    margin: 0;
    font-size: 3.6rem;
    text-align: center;
}

#sect102 .adv1 {
    margin: 40px 0 0;
}

#sect102 .adv1 .headArea {
    margin: 0 0 -20px 20px;
}

#sect102 .adv1 .boxWrap {
    padding: 45px 25px 8px 50px;
    border-radius: 10px 10px 0 0;
}

#sect102 .orgBox {
    padding: 40px 40px 70px;
    background: #f8b62d;
    border-radius: 0 0 14px 14px;
}

#sect102 .orgBox .inner {
    padding: 30px 40px;
    background: #fff;
    border-radius: 10px;
}

#sect102 .qa {
    margin: 0 0 40px;
}

#sect102 .qst {
    position: relative;
    width: 520px;
    margin: 0 0 30px 140px;
    padding: 20px;
    background: #f8b62d;
    border-radius: 10px;
    font-size: 2.4rem;
    color: #fff;
}

#sect102 .qst:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-right: 20px solid #f8b62d;
}

#sect102 .qst:after {
    content: "";
    position: absolute;
    bottom: -30px;
    left: -100px;
    width: 80px;
    height: 110px;
    background: url("./img/sect102_qst.png") 0 0 no-repeat;
}

#sect102 .ans {
    position: relative;
}

#sect102 .ans .txtArea {
    position: relative;
    width: 660px;
    padding: 20px 40px 40px;
    background: #fff9f2;
    border-radius: 10px;
}

#sect102 .ans .txtArea:before {
    content: "";
    position: absolute;
    top: 60px;
    right: -40px;
    margin-top: -20px;
    border: 20px solid transparent;
    border-left: 30px solid #fff9f2;
}

#sect102 .ans .imgArea {
    position: absolute;
    top: 0;
    right: -180px;
    width: 130px;
}

#sect102 .ans .flame {
    position: relative;
    width: 130px;
    border-radius: 50%;
    margin: 0 auto 10px;
    overflow: hidden;
}

#sect102 .ans .phCap {
    text-align: center;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    line-height: 1.5;
    font-size: 1.3rem;
}

#sect102 .ans .phCap .fontL {
    font-size: 1.6rem;
}

#sect102 .ans .catch {
    margin: 0;
    padding: 8px 20px;
}

#sect102 .ans .catch::before {
    content: "";
    position: absolute;
    top: 0;
    left: -25px;
    width: 35px;
    height: 28px;
    background: url(./img/quote1.svg) 0 0 no-repeat;
    background-size: 35px auto;
}

#sect102 .ans .catch::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -25px;
    width: 35px;
    height: 28px;
    background: url(./img/quote2.svg) 0 0 no-repeat;
    background-size: 35px auto;
}

#sect102 .ans .txt_bold {
    color: #f86b2d;
}

#sect102 .ansAcc {
    position: relative;
}

#sect102 .ansAcc .sttl {
    margin: 0;
    padding: 12px 30px 14px;
    background: #fff;
    border-radius: 20px / 50%;
    box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
    font-size: 1.8rem;
    line-height: 1.2;
    font-weight: 400;
}

.sttl.tglMenu {
    position: relative;
}

#sect102 .ansAcc .sttl.tglMenu::before {
    content: "";
    position: absolute;
    top: 6px;
    right: -16px;
    width: 44px;
    height: 60px;
    background: url(./img/sect303_finger.svg) 0 0 no-repeat;
    background-size: 44px auto;
}

#sect102 .ansAcc .sttl::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: calc(50% - 8px);
    right: 15px;
    width: 16px;
    height: 16px;
    background: url(./img/plus.svg) 0 50% no-repeat;
    background-size: 16px auto;
}

#sect102 .ansAcc .sttl.open::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: calc(50% - 8px);
    right: 15px;
    width: 16px;
    height: 16px;
    background: url(./img/minus.svg) 0 50% no-repeat;
    background-size: 17px auto;
}

#sect102 .ansAcc .sttl::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: 4px;
    right: 4px;
    width: 40px;
    height: 40px;
    background: #f9efde;
    border-radius: 100%;
}

#sect102 .ansAcc .accChild {
    margin: -20px 0 0;
    padding: 40px 30px 25px;
    background: url(./img/pt_c.jpg) 0 0 repeat;
    background-size: 128px auto;
    border-radius: 0 0 10px 10px;
    line-height: 1.8;
}

#sect102 .botCopy {
    text-align: center;
    line-height: 2.5;
}

#sect102 .btnArea {
    padding: 10px 0;
    text-align: center;
}

#sect102 .btnArea .leftArea, #sect102 .btnArea .rightArea {
    display: inline-block;
    margin: 0 16px;
    vertical-align: top;
}

#sect102 .btnArea .btn-web a, #sect102 .btnArea .btn-internal a {
    width: 340px;
}

#sect102 .btnArea .caption {
    margin: 10px 0 0;
    line-height: 1.8;
}

#sect102 .btnArea .btn-internal a {
    background: #06c755;
}

#sect102 .orgBox2 {
    padding: 0 40px 40px;
    background: #f8b62d;
    border-radius: 14px;
}

#sect102 .orgBox2 .inner {
    padding: 25px 40px 40px;
    background: #fff;
    border-radius: 10px;
}

#sect102 .boxTtl {
    position: relative;
    top: -25px;
    margin: 0;
    font-size: 3.6rem;
    text-align: center;
    color: #fff;
    line-height: 1.3;
}

#sect102 .boxTtl span {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding: 0 20px;
    background: #f8b62d;
}

#sect102 .boxTtl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 3px;
    background: #fff;
}

#sect102 .boxSttl {
    margin: 0 0 30px;
    font-size: 2.4rem;
    text-align: center;
}

#sect102 .box2 {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 4rem;
}

#sect102 .box2::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 1px) ;
    width: 2px;
    height: 100%;
    background: #2f2f2f;
}

#sect102 .box2 .liBox {
    width: calc((100% - 80px) / 2);
    margin: 0 80px 0 0;
}

#sect102 .box2 .liBox:nth-child(2n) {
    margin: 0 0 0 0;
}

#sect102 .box2 .sttl {
    margin: 0 0 20px;
    padding: 5px 50px 8px 20px;
    background: #e8eaed;
    border-radius: 10px;
    font-size: 1.8rem;
}

#sect102 .box2 .sttl::before {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    right: 20px;
    width: 60px;
    height: 9px;
    background: url("./img/eng_tr.svg") 100% 0 no-repeat;
    background-size: auto 9px;
}

#sect102 .box2 .liBox:nth-child(2n) .sttl {
    background: #f8b62d;
    color: #fff;
}

#sect102 .box2 .liBox:nth-child(2n) .sttl::before {
    width: 70px;
    height: 9px;
    background: url("./img/eng_rs.svg") 100% 0 no-repeat;
    background-size: auto 9px;
}

#sect102 .box2 .flame {
    margin: 0 0 20px;
}

#sect102 .box2 .catch {
    display: flex;
    align-items: center;
}

#sect102 .liBox p:last-of-type {
    margin: 15px 0 0;
}

/*------------
sect02_PC
------------*/
#sect02 {
    background: url(./img/pt_b.jpg) 0 0 repeat;
    background-size: 15rem auto;
}

#sect02 .sectTtl::before {
    background: url("./img/eng_wr.svg") 50% 100% no-repeat;
    background-size: auto 12px;
}

#sect02 .ttlHead {
    position: relative;
    text-align: center;
}

#sect02 .ttlHead .inner {
    position: relative;
    display: inline-block;
    padding: 0 65px;
    font-size: 2.4rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    line-height: 1.5;
}

#sect02 .ttlHead .inner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 55px;
    height: 60px;
    background: url("./img/sect02_deco_l.png") 0 0 no-repeat;
}

#sect02 .ttlHead .inner::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 55px;
    height: 60px;
    background: url("./img/sect02_deco_r.png") 0 0 no-repeat;
}

#sect02 .ulBox {
    padding: 0 40px;
}

#sect02 .liBox {
    width: calc((100% - 110px) / 3);
    margin: 0 55px 0 0;
    background: url("./img/sect02_fuki.svg") 50% 0 no-repeat;
    background-size: 231px auto;
}

#sect02 .liBox:nth-child(3n) {
    margin: 0 0 0;
}

#sect02 .liBox.ill01::before {
    content: "";
    position: absolute;
    top: 212px;
    left: 0;
    width: 100%;
    height: 241px;
    background: url("./img/sect02_ill01.png") 50% 0 no-repeat;
}

#sect02 .liBox.ill02::before {
    content: "";
    position: absolute;
    top: 212px;
    left: 0;
    width: 301px;
    height: 241px;
    background: url("./img/sect02_ill02.png") 50% 0 no-repeat;
}

#sect02 .liBox.ill03::before {
    content: "";
    position: absolute;
    top: 212px;
    left: 0;
    width: 100%;
    height: 241px;
    background: url("./img/sect02_ill03.png") 50% 0 no-repeat;
}

#sect02 .liBox h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 231px;
    height: 150px;
    margin: 0 auto 295px;
    padding: 30px 0;
    font-size: 2.0rem;
    text-align: center;
}

#sect02 .liBox a {
    width: 100%;
    padding: 16px 50px;
}

/*------------
sect03_PC
------------*/
#sect03 {
    padding: 100px 0 50px;
}

#sect03 .introArea {
    margin: 0 0 80px;
}

#sect03 .introArea .sectTtl {
    width: 480px;
    float: left;
    position: relative;
    font-size: 4.6rem;
    text-align: center;
    line-height: 1.3;
}

#sect03 .sectTtl .fontBl {
    display: block;
}

#sect03 .introArea .ulBox {
    width: 480px;
    float: right;
}

#sect03 .introArea .liBox {
    margin: 0 0 14px;
}

#sect03 .introArea a {
    display: inline-block;
    padding: 0 18px 0 0;
    background: url("./img/arrow_down.svg") 100% calc(50% + 2px) no-repeat;
    background-size: 13px auto;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
}

#sect03 .introArea .flame {
    display: inline-block;
    width: 48px;
    margin: 0 6px 0 0;
}

#sect03 .miniSect {
    padding: 0 0 80px;
}

#sect03 .ttlArea {
    position: relative;
    margin: 0 0 25px;
    width: 770px;
    padding: 20px 20px 20px 0;
    background: #62789f;
    font-size: 3.0rem;
    color: #fff;
}

#sect03 .ttlArea::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: -50vw;
    width: 51vw;
    height: 100%;
    background: #62789f;
}

#sect03 .ttlArea::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: -48px;
    width: 50px;
    height: 100%;
    background: #62789f;
    border-radius: 0 100% 100% 0%/0 50% 50% 0;
}

#sect03 .ttlArea .flame {
    position: relative;
    top: 5px;
    display: inline-block;
    width: 69px;
}

#sect03 .ttlArea h3 {
    display: inline-block;
}

#sect301 .liBox {
    background: #fff7e5;
    border-radius: 10px;
    padding: 0 15px 30px;
}

#sect301 .liBox h4 {
    position: relative;
    top: -20px;
    text-align: center;
    font-size: 2.4rem;
    color: #ffffff;
    padding: 6px 18px 8px;
    background: #f8b62d;
    border-radius: 10px;
    width: 70%;
    margin: auto;
}

#sect301 .liBox .flame {
    margin: 0 0 20px;
}

#sect301 .liBox .sttl {
    margin: 0 0 10px;
    text-align: center;
    font-size: 1.6rem;
}

#sect301 .liBox .sttl_height {
    margin-bottom: 1.5rem;
}

#sect301 .liBox .sttl_height p {
}

#sect301 .liBox ul {
    margin: 0;
    padding: 0;
}

#sect301 .liBox p {
    margin: 0 0 15px;
}

#sect302 .ulBox {
    padding: 10px 0;
    text-align: center;
}

#sect302 .liBox {
    display: inline-block;
    width: 410px;
    margin: 0 20px;
    padding: 20px 20px 20px 65px;
    border: 2px solid #f8b62d;
    border-radius: 10px;
    text-align: left;
}

#sect302 .liBox::before {
    content: "1";
    position: absolute;
    top: calc(50% - 21px);
    left: 12px;
    width: 42px;
    height: 42px;
    padding: 4px 0 0;
    box-sizing: border-box;
    border-radius: 100%;
    background: #f8b62d;
    text-align: center;
    color: #fff;
}

#sect302 .liBox:nth-child(2)::before {
    content: "2";
}

#sect302 .intro {
    padding: 0 50px;
}

#sect303 .ulBox1 .liBox {
    background: #fff7e5;
    border-radius: 10px;
    padding: 25px 40px 0;
}

#sect303 .liBox h4 {
    margin: 0 0 20px;
    text-align: center;
    font-size: 2.8rem;
    color: #ff9c00;
}

#sect303 .liBox .sttl {
    font-size: 1.7rem;
}

#sect303 .ulBox1 .liBox .flame {
    width: 335px;
    margin: 0 auto 25px;
}

#sect303 .liBox .btn-internal {
    margin: 0 0 -40px;
}

#sect303 .liBox .btn-internal a {
    width: 100%;
    padding: 10px 50px 10px;
    background: #62789f;
}

#sect303 .liBox:nth-child(2) a {
    background: #ffcc00;
    color: #2f2f2f;
}

#sect303 .liBox:nth-child(2) a::before {
    width: 0;
    height: 0;
    background: none;
    border: none;
}

#sect303 .liBox:nth-child(2) a::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 0;
    width: 44px;
    height: 60px;
    background: url("./img/sect303_finger.svg") 0 0 no-repeat;
    background-size: 44px auto;
}

#sect303 .adv1 {
    position: relative;
    margin: 0 0 50px;
    padding: 80px 0 0;
}

#sect303 .adv1::before {
    top: 67px;
}

#sect303 .adv1::after {
    content: "";
    position: absolute;
    top: 10px;
    right: 230px;
    width: 51px;
    height: 50px;
    background: url("./img/sect303_arrow.svg") 0 0 no-repeat;
    background-size: 51px auto;
}

#sect303 .adv1 .headArea {
    position: relative;
    top: -20px;
    margin: 0 0 0;
}

#sect303 .adv1 .headArea .headTag {
    position: absolute;
    top: 0;
    left: -20px;
}

#sect303 .adv1 .headArea .sttl {
    width: 100%;
    margin: 0;
    text-align: center;
}

#sect303 .adv1 .boxWrap {
    padding: 0 25px 30px 50px;
}

#sect303 .adv1 .imgArea {
    margin: -70px 0 0;
}

#sect303 .tab {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}

#sect303 .tab div {
    display: flex;
    justify-content: flex-start;
    position: relative;
    top: 4px;
    float: none;
    width: calc((100% - 4px) / 2);
    margin: 0 4px 0 0;
    padding: 20px 20px 15px 80px;
    background: #62789f;
    border-radius: 14px 14px 0 0;
    cursor: pointer;
    font-size: 2.0rem;
    line-height: 1.4;
    color: #fff;
}

#sect303 .tab div::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 17px;
    width: 52px;
    height: 45px;
    background: url(./img/sect303_tab_icon01.svg) 0 0 no-repeat;
    background-size: 52px auto;
}

#sect303 .tab div:nth-child(2) {
    margin: 0 0 0 0;
    background: #f8b62d;
}

#sect303 .tab div:nth-child(2)::before {
    top: 13px;
    left: 25px;
    width: 45px;
    height: 45px;
    background: url(./img/sect303_tab_icon02.svg) 0 0 no-repeat;
    background-size: 45px auto;
}

#sect303 .tab div.select {
    top: 0;
}

#sect303 .tab div > span {
    display: flex;
    align-items: center;
    justify-content: center;
}

#sect303 .content .hide {
    display: none;
}

#sect303 .tabCnt {
    padding: 40px 40px 40px;
    background: #62789f;
    border-radius: 0 0 14px 14px;
}

#sect303 .tabCnt:nth-child(2) {
    background: #f8b62d;
}

#sect303 .content .inner {
    padding: 25px 40px 40px;
    background: #fff;
    border-radius: 10px;
}

#sect303 .content .box3 {
    margin: 30px 0 30px;
}

#sect303 .content .box2 {
    margin: 40px 0 50px;
}

#sect303 .content .box3 .liBox {
    width: calc((100% - 20px) / 3);
    margin: 0 10px 0 0;
    background: url(./img/dotline_r.png) 0 13px repeat-x;
    background-size: auto 3px;
    border-radius: 0;
    padding: 0 5px;
}

#sect303 .content .box3 .liBox:nth-child(3n) {
    margin: 0;
}

#sect303 .content .box2 .liBox {
    width: calc((100% - 30px) / 2);
    margin: 0 30px 0 0;
    padding: 0 10px;
    background: url(./img/dotline_r.png) 0 13px repeat-x;
    background-size: auto 3px;
}

#sect303 .content .box2 .liBox:nth-child(2n) {
    margin: 0 0 0;
}

#sect303 .content .headTag {
    position: relative;
    left: -10px;
    width: 9rem;
    margin: 0 0 8px;
    padding: 6px 18px 8px;
    background: #62789f;
    border-radius: 10px;
    text-align: center;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    color: #fff;
}

#sect303 .tabCnt:nth-child(2) .headTag {
    background: #f8b62d;
}

#sect303 .content .sttl {
    margin: 0 0 16px;
    font-size: 2.0rem;
}

#sect303 .content .box2 .sttl {
    margin: 0 0 -5px;
}

#sect303 .content .box3 img {
    border-radius: 10px;
}

#sect303 .content .ywBox {
    padding: 15px 30px 20px;
    background: #fff9e8;
    border-radius: 10px;
}

#sect303 .content .ywBox .catch {
    margin: 0 0 5px;
    font-size: 1.7rem;
    color: #f8b62d;
    text-align: center;
}

#sect303 .content .ywBox ul {
    margin: 0;
    padding: 0;
}

#sect303 .content .fuki {
    position: relative;
    width: 660px;
    margin: 0 0 20px;
    padding: 20px 40px 20px;
    background: #fff9e8;
    border-radius: 10px;
}

#sect303 .content .fuki:before {
    content: "";
    position: absolute;
    top: 60px;
    right: -40px;
    margin-top: -20px;
    border: 20px solid transparent;
    border-left: 30px solid #fff9e8;
}

#sect303 .content .fuki .imgArea {
    position: absolute;
    top: 0;
    right: -180px;
    width: 130px;
}

#sect303 .content .fuki .flame {
    position: relative;
    width: 130px;
    border-radius: 50%;
    margin: 0 auto 10px;
    overflow: hidden;
}

#sect303 .content .fuki .phCap {
    text-align: center;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    line-height: 1.5;
    font-size: 1.3rem;
}

#sect303 .content .fuki .phCap .fontL {
    font-size: 1.6rem;
}

#sect303 .content .fuki .catch {
    margin: 0;
    padding: 8px 20px;
}

#sect303 .content .fuki .catch::before {
    content: "";
    position: absolute;
    top: 0;
    left: -25px;
    width: 35px;
    height: 28px;
    background: url(./img/quote1.svg) 0 0 no-repeat;
    background-size: 35px auto;
}

#sect303 .content .fuki .catch::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -25px;
    width: 35px;
    height: 28px;
    background: url(./img/quote2.svg) 0 0 no-repeat;
    background-size: 35px auto;
}

#sect303 .content .btnArea {
    padding: 10px 0;
    text-align: center;
}

#sect303 .content .btnArea .leftArea, #sect303 .content .btnArea .rightArea {
    display: inline-block;
    margin: 0 16px;
    vertical-align: top;
}

#sect303 .content .btnArea .btn-web a, #sect303 .content .btnArea .btn-internal a {
    width: 340px;
}

#sect303 .content .btnArea .btn-internal a {
    background: #06c755;
}

/*------------
sect04_PC
------------*/
#sect04 {
    background: #fff7e5;
}

#sect04 .sectTtl::before {
    background: url(./img/eng_col.svg) 50% 100% no-repeat;
    background-size: auto 12px;
}

#sect04 .fuki {
    position: absolute;
    top: 0;
    left: 55px;
    transform: rotate(-15deg);
    width: 145px;
    height: 160px;
    padding: 30px 0 0;
    background: url("./img/sect04_fuki.png") 0 0 no-repeat;
    background-size: 145px auto;
    color: #fff;
    text-align: center;
    font-size: 2.0rem;
}

#sect04 .box1 .liBox {
    margin: 0 0 35px;
}

#sect04 .liBox a {
    padding: 25px 40px 30px;
    background: #fff;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

#sect04 .liBox a:hover {
    opacity: .7;
    color: #2f2f2f;
}

#sect04 .liBox a::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70px;
    height: 70px;
    background: url("./img/tri2.svg") 0 0 no-repeat;
    background-size: 70px auto;
    border-radius: 0 0 10px 0;
}

#sect04 .liBox a::after {
    content: "";
    position: absolute;
    bottom: 16px;
    right: 11px;
    width: 16px;
    height: 15px;
    background: url(./img/arrow_base_wt.svg) 100% 100% no-repeat;
    background-size: 16px auto;
}

#sect04 .liBox h3 {
    display: flex;
}

#sect04 .liBox h3 span {
    display: flex;
    align-items: center;
    padding: 0 0 0 60px;
    background: url("./img/sect04_icon.svg") 0 50% no-repeat;
    background-size: 45px auto;
    font-size: 2.4rem;
}

/*------------
sect05_PC
------------*/
#sect05 {
}

#sect05 .sectTtl::before {
    background: url(./img/eng_ex.svg) 50% 100% no-repeat;
    background-size: auto 12px;
}

#sect05 .ttlHead {
    margin: 0 0 10px;
    font-size: 2.4rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    text-align: center;
}

#sect05 .ttlHead .box {
    display: inline-block;
    margin: 0 0 15px;
    padding: 3px 20px 6px;
    background: #f8b62d;
    border-radius: 10px;
    line-height: 1;
    font-size: 1.8rem;
    color: #fff;
}

#sect05 .ttlHead .txt {
    line-height: 1;
}

#sect05 .ttlHead .txt div {
    position: relative;
    display: inline-block;
    padding: 0 0 16px;
    background: url(./img/dotline_r.png) 0 100% repeat-x;
    background-size: auto 3px;
    line-height: 1;
}

#sect05 .ttlHead .txt div::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: -54px;
    width: 53px;
    height: 50px;
    background: url(./img/pen.svg) 0 0 no-repeat;
    background-size: 53px auto;
}

#sect05 .liBox .tag {
    position: absolute;
    z-index: 1;
    top: -14px;
    left: calc(50% - 50px);
    width: 100px;
    height: 42px;
    padding: 5px 0 0;
    background: url(./img/sect05_tag.svg) 0 0 no-repeat;
    background-size: 100px auto;
    font-size: 1.6rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    color: #fff;
}

#sect05 .liBox a {
    position: relative;
    padding: 40px 20px 30px;
    background: #f5f5f5;
    border-radius: 10px;
}

#sect05 .liBox a::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70px;
    height: 70px;
    background: url("./img/tri2.svg") 0 0 no-repeat;
    background-size: 70px auto;
    border-radius: 0 0 10px 0;
}

#sect05 .liBox a::after {
    content: "";
    position: absolute;
    bottom: 16px;
    right: 11px;
    width: 16px;
    height: 15px;
    background: url(./img/arrow_base_wt.svg) 100% 100% no-repeat;
    background-size: 16px auto;
}

#sect05 .liBox a:hover {
    opacity: .7;
    color: #2f2f2f;
}

#sect05 .liBox a:hover img {
    opacity: 1;
}

#sect05 .liBox .sttl {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 20px;
    font-size: 2.4rem;
    text-align: center;
}

#sect05 .liBox .sttl .fontS {
    display: block;
}

#sect05 .liBox .imgArea {
    margin: 0 0 15px;
    display: none;
}

#sect05 .liBox .imgArea img {
    border-radius: 10px;
}

/*------------
sect055
------------*/
#sect55 {
    margin: -70px 0 0;
    padding: 0 0 70px;
}

#sect55 p {
    padding: 0 50px;
}

/*------------
sect06_PC
------------*/
#sect06 {
    position: relative;
    margin: 0;
    padding: 80px 0 65px;
}

#sect06::before {
    content: "";
    position: absolute;
    top: -10px;
    right: auto;
    left: calc(50% + 370px);
    width: 123px;
    height: 20px;
    background: url(./img/eng_ad.svg) 100% 0 no-repeat;
    background-size: 123px auto;
}

/*  End_PC */
@media screen and (max-width: 480px) {
    /*--------------------------------------t
　Main Index
---------------------------------------*//*------------
index_SP
------------*/body {
        font-size:1.5em;
    }

    #header {
        z-index: 10;
    }

    .index {
        padding: 0 0 70px;
        background: none;
    }

    .catch {
        font-size: 1.8rem;
    }

    .areaInner {
        width: auto;
        margin: 0;
    }

    .index .catch, .index .sttl {
        font-size: 1.8rem;
    }

    /*------------
Header_SP
------------*/
    #header {
        position: static;
        height: 200px;
        background: url("./img/index_vis_sp.jpg") center top no-repeat;
        background-size: 100%;
    }

    #header h1 {
        font-family: "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
    }

    /*------------
mainVis_SP
------------*/
    #mainVis {
        position: relative;
        padding: 0 0 0;
    }

    #mainVisArea {
        position: relative;
        padding: 0 0 40px;
    }

    #mainVisArea::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #mainVisArea::after {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #mainVis .book {
        width: 333px;
        height: 222px;
        margin: -30px auto 30px;
        padding: 20px 0 0;
        background: url("./img/book.png") 0 0 no-repeat;
        background-size: 333px auto;
        text-align: center;
    }

    #mainVis .sttl {
        margin: 0 25% 10px;
        padding: 0 0 10px;
        background: url(./img/dotline_r.png) 0 100% repeat-x;
        background-size: auto 3px;
        font-size: 1.8rem;
        color: #f8b62d;
    }

    #mainVis h2 {
        padding: 0 20px;
        font-size: 2.9rem;
        line-height: 1.3;
    }

    #mainVis .catch {
        margin: 0 3% 20px;
        text-align: center;
    }

    #mainVis .catch div {
        margin: 0 0 25px;
    }

    #mainVis p {
        padding: 0 5%;
    }

    #mainVisArea .adv1 {
        position: relative;
        margin: 30px 3% 0;
    }

    #mainVisArea .adv1 .boxWrap {
        padding: 70px 5% 0;
    }

    #mainVisArea .adv1 .txtArea {
        width: auto;
        float: none;
    }

    #mainVisArea .adv1 p {
        margin: 15px 0 25px;
    }

    /*------------
mainVis_SP
------------*/
    #mainVis {
    }

    /*------------
contents_SP
------------*/
    #contents {
        padding: 0 0 0;
    }

    footer {
        position: relative;
        z-index: 0;
    }

    /*------------
indexSect_SP
------------*/
    .indexSect {
        padding: 45px 0 45px;
    }

    .indexSect .sectTtl {
        margin: 0 0 20px;
        padding: 0 5% 25px;
        font-size: 2.5rem;
    }

    .indexSect .sectTtl::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 10px;
    }

    .indexSect .sectTtl a {
        display: inline-block;
        padding: 0 8%;
        background: url(./img/arrow_base.svg) 100% 50% no-repeat;
        background-size: 19px auto;
    }

    .indexSect .intro {
        margin: 0 5% 20px;
        padding: 0 0;
    }

    .indexSect .box2, .indexSect .box3, .indexSect .box4 {
        display: block;
        padding: 0 3%;
    }

    .indexSect .liBox {
    }

    .indexSect .box2 .liBox {
        width: auto;
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox:nth-child(2n) {
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox {
        width: 100%;
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox:nth-child(2n) {
        margin: 0 0 20px;
    }

    .indexSect .box3 .liBox {
        width: 100%;
        margin: 0 0 20px;
    }

    .indexSect .box3 .liBox:nth-child(3n) {
        margin: 0 0 20px;
    }

    /*------------
sect101_SP
------------*/
    #sect101 {
        padding: 50px 0 0;
    }

    #sect101::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 700px;
        background: url("./img/sect101_vis.jpg") -50px 200px no-repeat #fbfaf6;
        background-size: 225px auto;
    }

    #sect101::after {
        content: "";
        position: absolute;
        top: 700px;
        left: 0;
        width: 100%;
        height: 180px;
        background: url("./img/tri4.svg") 50% 0 no-repeat;
        background-size: 100% auto;
    }

    #sect101 .headArea {
        width: auto;
        margin: 0 0 40px;
    }

    #sect101 .headArea .sectTtl {
        margin: 0 5% 20px;
        font-size: 2.5rem;
        text-align: center;
    }

    #sect101 .headArea p {
        padding: 0 5% 0 40%;
        line-height: 1.9;
    }

    #sect101 .mainArea {
        padding: 0 5% 30px;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
    }

    #sect101 .mainArea .sttl {
        margin: 0 0 10px 0;
    }

    #sect101 .mainArea .sttl::before {
        /* content: ""; */
        position: absolute;
        top: -24px;
        left: -64px;
        width: 80px;
        height: 60px;
        background: url(./img/check.svg) 0 0 no-repeat;
        background-size: 80px auto;
    }

    #sect101 .mainArea ul {
        margin: 0;
        padding: 0;
    }

    #sect101 .fuki {
        position: relative;
        z-index: 2;
        width: auto;
        margin: 0 9% 40px;
        padding: 15px 5%;
        background: #62789f;
        border-radius: 10px;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        font-size: 2.3rem;
        line-height: 1.5;
        text-align: center;
        color: #fff;
    }

    #sect101 .fuki::before {
        content: "";
        position: absolute;
        z-index: -2;
        bottom: -15px;
        left: 0;
        width: 100%;
        height: 15px;
        background: url(./img/tri3.svg) 50% 0 no-repeat;
        background-size: 21px auto;
    }

    /*------------
sect102_SP
------------*/
    #sect102 {
        padding: 0 0 40px;
    }

    #sect102 .matome {
        margin: 25px 3%;
    }

    #sect102 .matome .boxWrap {
        padding: 40px 5% 10px;
    }

    #sect102 .matome .imgArea2 {
        margin: 0 0 20px;
        width: auto;
        float: none;
    }

    #sect102 .matome .imgArea2 .flame {
        position: relative;
        width: 85px;
        margin: 0 auto 12px;
    }

    #sect102 .matome .txt {
        text-align: center;
        font-size: 1.6rem;
        line-height: 1.6;
    }

    #sect102 .matome .txtArea {
        width: auto;
        float: none;
    }

    #sect102 .mdlTtl {
        margin: 0;
        font-size: 2.1rem;
        text-align: center;
    }

    #sect102 .adv1 {
        margin: 20px 3% 0;
    }

    #sect102 .adv1 .headArea {
        margin: 0 0 -25px 3%;
    }

    #sect102 .adv1::before {
        top: 8px;
    }

    #sect102 .adv1 .boxWrap {
        padding: 30px 5% 20px;
        border-radius: 10px 10px 0 0;
    }

    #sect102 .adv1 .imgArea {
        margin: 0 0 20px;
    }

    #sect102 .orgBox {
        margin: 0 3%;
        padding: 2px 2px 45px;
        background: #f8b62d;
        border-radius: 0 0 8px 8px;
    }

    #sect102 .orgBox .inner {
        padding: 25px 3% 10px;
        background: #fff;
        border-radius: 10px;
    }

    #sect102 .qa {
        margin: 0 0 20px;
    }

    #sect102 .qst {
        position: relative;
        width: auto;
        margin: 0 0 10px 20%;
        padding: 10px 5%;
        background: #f8b62d;
        border-radius: 5px;
        font-size: 1.6rem;
        color: #fff;
    }

    #sect102 .qst:before {
        content: "";
        position: absolute;
        top: 50%;
        left: -20px;
        margin-top: -10px;
        border: 10px solid transparent;
        border-right: 15px solid #f8b62d;
    }

    #sect102 .qst:after {
        content: "";
        position: absolute;
        bottom: -10px;
        left: -55px;
        width: 45px;
        height: 75px;
        background: url("./img/sect102_qst_sp.png") 0 100% no-repeat;
        background-size: 45px auto;
    }

    #sect102 .ans {
        position: relative;
    }

    #sect102 .ans .txtArea {
        position: relative;
        width: auto;
        padding: 10px 5% 20px;
        background: #fff9f2;
        border-radius: 5px;
    }

    #sect102 .ans .txtArea:before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect102 .ans .imgArea {
        position: static;
        width: 65px;
        float: right;
        margin: 10px 0 0 5%;
    }

    #sect102 .ans .flame {
        position: relative;
        width: 65px;
        border-radius: 50%;
        margin: 0 auto 5px;
        overflow: hidden;
    }

    #sect102 .ans .phCap {
        text-align: center;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        line-height: 1.3;
        font-size: 1.1rem;
    }

    #sect102 .ans .phCap .fontL {
        font-size: 1.2rem;
    }

    #sect102 .ans .catch {
        margin: 0;
        padding: 8px 8%;
    }

    #sect102 .ans .catch::before {
        content: "";
        position: absolute;
        top: 10px;
        left: -5px;
        width: 18px;
        height: 14px;
        background: url(./img/quote1.svg) 0 0 no-repeat;
        background-size: 18px auto;
    }

    #sect102 .ans .catch::after {
        content: "";
        position: absolute;
        bottom: 10px;
        right: -5px;
        width: 18px;
        height: 14px;
        background: url(./img/quote2.svg) 0 0 no-repeat;
        background-size: 18px auto;
    }

    #sect102 .ans p {
        margin: 5px 0 15px;
        line-height: 1.8;
    }

    #sect102 .ans .txt_bold {
        color: #f86b2d;
    }

    #sect102 .ansAcc {
        position: relative;
    }

    #sect102 .ansAcc .sttl {
        margin: 0;
        padding: 12px 20% 14px 8%;
        background: #fff;
        border-radius: 30px / 50%;
        box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
        font-size: 1.6rem;
        line-height: 1.2;
    }

    #sect102 .ansAcc .sttl.tglMenu::before {
        top: 21px;
        right: -16px;
        background-size: 30px auto;
    }

    #sect102 .ansAcc .sttl::before {
        content: "";
        position: absolute;
        z-index: 1;
        top: calc(50% - 6px);
        right: 17px;
        width: 12px;
        height: 12px;
        background: url(./img/plus.svg) 0 50% no-repeat;
        background-size: 12px auto;
    }

    #sect102 .ansAcc .sttl.open::before {
        content: "";
        position: absolute;
        z-index: 1;
        top: calc(50% - 6px);
        right: 17px;
        width: 12px;
        height: 12px;
        background: url(./img/minus.svg) 0 50% no-repeat;
        background-size: 12px auto;
    }

    #sect102 .ansAcc .sttl::after {
        content: "";
        position: absolute;
        z-index: 0;
        top: calc(50% - 15px);
        right: 9px;
        width: 30px;
        height: 30px;
        background: #f9efde;
        border-radius: 100%;
    }

    #sect102 .ansAcc .accChild {
        margin: -20px 0 0;
        padding: 30px 5% 20px;
        background: url(./img/pt_c.jpg) 0 0 repeat;
        background-size: 128px auto;
        border-radius: 0 0 5px 5px;
        font-size: 1.4rem;
        line-height: 1.8;
    }

    #sect102 .botCopy {
        text-align: left;
        line-height: 1.9;
    }

    #sect102 .btnArea {
        padding: 0 0;
        text-align: center;
    }

    #sect102 .btnArea .leftArea, #sect102 .btnArea .rightArea {
        display: block;
        margin: 0;
        vertical-align: top;
    }

    #sect102 .btnArea .btn-web, #sect102 .btnArea .btn-tel, #sect102 .btnArea .btn-internal {
        width: 95%;
    }

    #sect102 .btnArea .btn-web a, #sect102 .btnArea .btn-internal a {
        width: auto;
    }

    #sect102 .btnArea .caption {
        margin: -10px 0;
        line-height: 1.8;
    }

    #sect102 .btnArea .btn-internal a {
        background: #06c755;
    }

    #sect102 .orgBox2 {
        margin: 0 3%;
        padding: 10px 2px 2px;
        background: #f8b62d;
        border-radius: 11px;
    }

    #sect102 .orgBox2 .inner {
        padding: 28px 3% 20px;
        background: #fff;
        border-radius: 10px;
    }

    #sect102 .boxTtl {
        position: relative;
        top: -25px;
        margin: 0;
        font-size: 2.3rem;
        text-align: center;
        color: #fff;
        line-height: 1.3;
    }

    #sect102 .boxTtl span {
        position: relative;
        z-index: 1;
        display: inline-block;
        padding: 0 3%;
        background: #f8b62d;
    }

    #sect102 .boxTtl::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0%;
        width: 100%;
        height: 2px;
        background: #fff;
    }

    #sect102 .boxSttl {
        margin: 0 0 20px;
        font-size: 2.0rem;
        text-align: center;
    }

    #sect102 .box2 {
        position: relative;
        display: block;
    }

    #sect102 .box2::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect102 .box2 .liBox {
        position: relative;
        width: auto;
        margin: 0 0 0;
        padding: 10px 3% 25px;
    }

    #sect102 .box2 .liBox::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 4.5rem;
        background: #e8eaed;
        border-radius: 6px;
    }

    #sect102 .box2 .liBox:nth-child(2n) {
        margin: 10px 0 0;
    }

    #sect102 .box2 .liBox:nth-child(2n)::before {
        background: #facc6c;
    }

    #sect102 .box2 .sttl {
        position: relative;
        z-index: 1;
        width: 30%;
        margin: 0 0 10px;
        padding: 0 0 8px;
        background: none;
        font-size: 1.6rem;
        text-align: center;
    }

    #sect102 .box2 .sttl::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect102 .box2 .liBox:nth-child(2n) .sttl {
        background: none;
        color: #fff;
    }

    #sect102 .box2 .liBox:nth-child(2n) .sttl::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect102 .box2 .flame {
        position: relative;
        z-index: 1;
        margin: 0 0 20px;
    }

    #sect102 .box2 .catch {
        position: relative;
        z-index: 1;
        display: block;
    }

    #sect102 .liBox p {
        position: relative;
        z-index: 1;
    }

    #sect102 .liBox p:last-of-type {
        margin: 15px 0 0;
    }

    /*------------
sect02_SP
------------*/
    #sect02 {
        padding: 45px 0 20px;
        background: url(./img/pt_b.jpg) 0 0 repeat;
    }

    #sect02 .sectTtl::before {
        background: url("./img/eng_wr.svg") 50% 100% no-repeat;
        background-size: auto 10px;
    }

    #sect02 .ttlHead {
        position: relative;
        text-align: center;
    }

    #sect02 .ttlHead .inner {
        position: relative;
        display: inline-block;
        padding: 0 12%;
        font-size: 1.8rem;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        line-height: 1.5;
    }

    #sect02 .ttlHead .inner::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 43px;
        height: 60px;
        background: url("./img/sect02_deco_l.png") 0 0 no-repeat;
        background-size: 43px auto;
    }

    #sect02 .ttlHead .inner::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 43px;
        height: 60px;
        background: url("./img/sect02_deco_r.png") 0 0 no-repeat;
        background-size: 43px auto;
    }

    #sect02 .ulBox {
        padding: 0 5%;
    }

    #sect02 .liBox {
        width: auto;
        margin: 0 0 30px;
        background: url("./img/sect02_fuki.svg") 50% 0 no-repeat;
        background-size: 231px auto;
    }

    #sect02 .liBox:nth-child(3n) {
        margin: 0 0 30px;
    }

    #sect02 .liBox.ill01::before {
        content: "";
        position: absolute;
        top: 140px;
        left: 0;
        width: 100%;
        height: 130px;
        background: url("./img/sect02_ill01.png") 45% 0 no-repeat;
        background-size: 135px;
    }

    #sect02 .liBox.ill02::before {
        content: "";
        position: absolute;
        top: 140px;
        left: 0;
        width: 100%;
        height: 130px;
        background: url("./img/sect02_ill02.png") 50% 0 no-repeat;
        background-size: 200px;
    }

    #sect02 .liBox.ill03::before {
        content: "";
        position: absolute;
        top: 140px;
        left: 0;
        width: 100%;
        height: 130px;
        background: url("./img/sect02_ill03.png") 50% 0 no-repeat;
        background-size: 130px;
    }

    #sect02 .liBox h3 {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 231px;
        height: 150px;
        margin: 0 auto 117px;
        padding: 30px 0;
        font-size: 2.0rem;
        text-align: center;
    }

    #sect02 .liBox a {
        width: 100%;
        padding: 16px 50px;
    }

    /*------------
sect03_SP
------------*/
    #sect03 {
        padding: 45px 0 45px;
    }

    #sect03 .introArea {
        margin: 0 5% 20px;
    }

    #sect03 .introArea .sectTtl {
        width: auto;
        float: none;
        position: relative;
        margin: 0 0 20px;
        font-size: 2.5rem;
        text-align: center;
        line-height: 1.3;
    }

    #sect03 .sectTtl .fontBl {
        display: block;
    }

    #sect03 .introArea .ulBox {
        width: auto;
        float: none;
    }

    #sect03 .introArea .liBox {
        margin: 0 0 15px 15%;
    }

    #sect03 .introArea a {
        position: relative;
        display: inline;
        padding: 0 5% 0 0;
        background: url("./img/arrow_down.svg") 100% calc(50% + 2px) no-repeat;
        background-size: 11px auto;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        font-size: 1.5rem;
        line-height: 1.2;
    }

    #sect03 .introArea .flame {
        position: absolute;
        left: -50px;
        display: block;
        width: 43px;
        margin: 0 0 0;
    }

    #sect03 .miniSect {
        padding: 0 0 20px;
    }

    #sect03 .ttlArea {
        display: flex;
        align-items: center;
        width: auto;
        min-height: 73px;
        margin: 10px 5% 20px;
        padding: 10px 5% 12px 0;
        background: none;
        font-size: 2.3rem;
    }

    #sect03 .ttlArea::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: -6%;
        width: calc(100% - 30px + 6%);
        height: 100%;
        background: #62789f;
    }

    #sect03 .ttlArea::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        width: 32px;
        height: 100%;
        background: #62789f;
        border-radius: 0 100% 100% 0%/0 50% 50% 0;
    }

    #sect03 .ttlArea .flame {
        position: absolute;
        top: calc(50% - 22px) ;
        left: -3px;
        display: block;
        width: 58px;
    }

    #sect03 .ttlArea h3 {
        display: block;
        padding: 0 0 0 20%;
    }

    #sect301 .ulBox {
        margin: 40px 0 0;
    }

    #sect301 .liBox {
        margin: 0 0 30px;
        background: #fff7e5;
        border-radius: 6px;
        padding: 0 3% 30px;
    }

    #sect301 .liBox h4 {
        position: relative;
        top: -15px;
        margin: 0 0 -5px;
        text-align: center;
        font-size: 2.2rem;
        /* color: #ff9c00; */
    }

    #sect301 .liBox .flame {
        margin: 30px 0;
    }

    #sect301 .liBox .sttl {
        margin: 0 0 10px;
        text-align: center;
        font-size: 1.8rem;
    }

    #sect301 .liBox ul {
        margin: 0;
        padding: 0;
    }

    #sect301 .liBox p {
        margin: 0 0 10px;
    }

    #sect302 .ulBox {
        padding: 0 0 5px;
        text-align: center;
    }

    #sect302 .liBox {
        display: block;
        width: auto;
        margin: 0 5% 10px;
        padding: 16px 3% 16px 12%;
        border: 2px solid #f8b62d;
        border-radius: 6px;
        text-align: left;
        font-size: 1.7rem;
    }

    #sect302 .liBox::before {
        content: "1";
        position: absolute;
        top: calc(50% - 15px);
        left: 8px;
        width: 30px;
        height: 30px;
        padding: 2px 0 0;
        box-sizing: border-box;
        border-radius: 100%;
        background: #f8b62d;
        text-align: center;
        color: #fff;
    }

    #sect302 .liBox:nth-child(2)::before {
        content: "2";
    }

    #sect302 .intro {
        padding: 0 0;
    }

    #sect303 .ulBox1 .liBox {
        margin: 0 0 50px;
        background: #fff7e5;
        border-radius: 6px;
        padding: 25px 5% 0;
    }

    #sect303 .liBox h4 {
        margin: 0 0 20px;
        text-align: center;
        font-size: 2.2rem;
        color: #ff9c00;
    }

    #sect303 .liBox .sttl {
        font-size: 1.6rem;
    }

    #sect303 .ulBox1 .liBox .flame {
        width: 90%;
        margin: 0 5% 15px;
    }

    #sect303 .liBox p {
        margin: 15px 0 -30px;
    }

    #sect303 .liBox .btn-internal {
        position: relative;
        bottom: -30px;
        width: auto;
        margin: 0 0 0;
    }

    #sect303 .liBox .btn-internal a {
        width: 100%;
        padding: .6em 12% .8em;
        background: #62789f;
    }

    #sect303 .liBox:nth-child(2) a {
        background: #ffcc00;
        color: #2f2f2f;
    }

    #sect303 .liBox:nth-child(2) a::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect303 .liBox:nth-child(2) a::after {
        content: "";
        position: absolute;
        top: 20px;
        right: 0;
        width: 40px;
        height: 60px;
        background: url("./img/sect303_finger.svg") 0 0 no-repeat;
        background-size: 40px auto;
    }

    #sect303 .adv1 {
        position: relative;
        margin: 0 3% 50px;
        padding: 70px 0 0;
    }

    #sect303 .adv1::before {
        top: 61px;
    }

    #sect303 .adv1::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        width: 100%;
        height: 50px;
        background: url("./img/sect303_arrow.svg") 50% 0 no-repeat;
        background-size: 51px auto;
    }

    #sect303 .adv1 .headArea {
        position: relative;
        top: -20px;
        width: 100%;
        margin: 0 0 0;
    }

    #sect303 .adv1 .headArea .headTag {
        position: absolute;
        top: 0;
        left: 0px;
    }

    #sect303 .adv1 .headArea .sttl {
        width: 100%;
        padding: 50px 0 60px;
        text-align: center;
    }

    #sect303 .adv1 .boxWrap {
        padding: 0 5% 5px;
    }

    #sect303 .adv1 .imgArea {
        margin: -70px 0 20px;
    }

    #sect303 .tabArea {
        padding: 0 3%;
    }

    #sect303 .tab {
        overflow: hidden;
        display: flex;
        flex-wrap: wrap;
        margin: 0 0 -1px;
    }

    #sect303 .tab div {
        display: flex;
        justify-content: flex-start;
        position: relative;
        top: 4px;
        float: none;
        width: calc((100% - 2px) / 2);
        margin: 0 2px 0 0;
        padding: 15px 3% 15px 15%;
        background: #62789f;
        border-radius: 6px 6px 0 0;
        cursor: pointer;
        line-height: 1.4;
        color: #fff;
    }

    #sect303 .tab .catch {
        margin: 0;
        font-size: 1.6rem;
    }

    #sect303 .tab div::before {
        content: "";
        position: absolute;
        top: 13px;
        left: 10px;
        width: 35px;
        height: 30px;
        background: url(./img/sect303_tab_icon01.svg) 0 0 no-repeat;
        background-size: 35px auto;
    }

    #sect303 .tab div:nth-child(2) {
        margin: 0 0 0 0;
        background: #f8b62d;
    }

    #sect303 .tab div:nth-child(2)::before {
        top: 13px;
        left: 12px;
        width: 30px;
        height: 28px;
        background: url(./img/sect303_tab_icon02.svg) 0 0 no-repeat;
        background-size: 30px auto;
    }

    #sect303 .tab div.select {
        top: 0;
    }

    #sect303 .tab div > span {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #sect303 .content .hide {
        display: none;
    }

    #sect303 .tabCnt {
        padding: 15px 4% 15px;
        background: #62789f;
        border-radius: 0 0 14px 14px;
    }

    #sect303 .tabCnt:nth-child(2) {
        background: #f8b62d;
    }

    #sect303 .content .inner {
        padding: 10px 3% 10px;
        background: #fff;
        border-radius: 10px;
    }

    #sect303 .content .box3 {
        display: block;
        margin: 20px 0;
        padding: 0;
    }

    #sect303 .content .box2 {
        display: block;
        margin: 20px 0 30px;
        padding: 0;
    }

    #sect303 .content .box3 .liBox {
        width: auto;
        margin: 0 0 20px;
        background: url(./img/dotline_r.png) 0 13px repeat-x;
        background-size: auto 3px;
        border-radius: 0;
        padding: 0;
    }

    #sect303 .content .box3 .liBox:nth-child(3n) {
        margin: 0;
    }

    #sect303 .content .box2 .liBox {
        width: auto;
        margin: 0 0 20px;
        background: url(./img/dotline_r.png) 0 13px repeat-x;
        background-size: auto 3px;
        padding: 0;
    }

    #sect303 .content .box2 .liBox:nth-child(2n) {
        margin: 0 0 0;
    }

    #sect303 .content .headTag {
        position: relative;
        left: 0;
        width: 8rem;
        margin: 0 0 8px;
        padding: 4px 2% 6px;
        background: #62789f;
        border-radius: 6px;
        text-align: center;
        line-height: 1;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        color: #fff;
    }

    #sect303 .tabCnt:nth-child(2) .headTag {
        background: #f8b62d;
    }

    #sect303 .content .sttl {
        margin: 0 0 16px;
        font-size: 2.0rem;
        text-align: left;
    }

    #sect303 .content .box2 .sttl {
        margin: 0 0 -5px;
    }

    #sect303 .content .box3 img {
        border-radius: 6px;
    }

    #sect303 .content .liBox p {
        margin: 15px 0;
    }

    #sect303 .content .ywBox {
        padding: 15px 5% 20px;
        background: #fff9e8;
        border-radius: 6px;
    }

    #sect303 .content .ywBox .catch {
        margin: 0 0 5px;
        font-size: 1.7rem;
        color: #f8b62d;
        text-align: center;
    }

    #sect303 .content .ywBox ul {
        margin: 0;
        padding: 0;
    }

    #sect303 .content .fuki {
        position: relative;
        width: auto;
        margin: 0 0 20px;
        padding: 10px 5% 10px;
        background: #fff9e8;
        border-radius: 6px;
    }

    #sect303 .content .fuki:before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect303 .content .fuki .imgArea {
        position: static;
        width: 65px;
        float: right;
        margin: 10px 0 0 5%;
    }

    #sect303 .content .fuki .flame {
        position: relative;
        width: 65px;
        border-radius: 50%;
        margin: 0 auto 5px;
        overflow: hidden;
    }

    #sect303 .content .fuki .phCap {
        text-align: center;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        line-height: 1.3;
        font-size: 1.1rem;
    }

    #sect303 .content .fuki .phCap .fontL {
        font-size: 1.2rem;
    }

    #sect303 .content .fuki .catch {
        margin: 0;
        padding: 8px 8%;
    }

    #sect303 .content .fuki .catch::before {
        content: "";
        position: absolute;
        top: 10px;
        left: -5px;
        width: 18px;
        height: 14px;
        background: url(./img/quote1.svg) 0 0 no-repeat;
        background-size: 18px auto;
    }

    #sect303 .content .fuki .catch::after {
        content: "";
        position: absolute;
        bottom: 10px;
        right: -5px;
        width: 18px;
        height: 14px;
        background: url(./img/quote2.svg) 0 0 no-repeat;
        background-size: 18px auto;
    }

    #sect303 .content .fuki p {
        margin: 5px 0 15px;
        line-height: 1.8;
    }

    #sect303 .content .btnArea {
        padding: 0 0;
        text-align: center;
    }

    #sect303 .content .btnArea .leftArea, #sect303 .content .btnArea .rightArea {
        display: block;
        margin: 0;
        vertical-align: top;
    }

    #sect303 .content .btnArea .btn-web, #sect303 .content .btnArea .btn-tel, #sect303 .content .btnArea .btn-internal {
        width: 95%;
    }

    #sect303 .content .btnArea .btn-web a, #sect303 .content .btnArea .btn-internal a {
        width: auto;
    }

    #sect303 .content .btnArea .btn-internal a {
        background: #06c755;
    }

    /*------------
sect04_SP
------------*/
    #sect04 {
        background: #fff7e5;
    }

    #sect04 .sectTtl::before {
        background: url(./img/eng_col.svg) 50% 100% no-repeat;
        background-size: auto 10px;
    }

    #sect04 .fuki {
        position: absolute;
        top: -60px;
        left: 10px;
        transform: rotate(-15deg);
        width: 100px;
        height: 100px;
        padding: 22px 0 0;
        background: url("./img/sect04_fuki.png") 0 0 no-repeat;
        background-size: 100px auto;
        color: #fff;
        text-align: center;
        font-size: 1.3rem;
    }

    #sect04 .sectTtl {
        margin: 0 0 30px;
    }

    #sect04 .box1 .liBox {
        margin: 0 3% 20px;
    }

    #sect04 .liBox a {
        padding: 25px 5% 20px;
        background: #fff;
        border-radius: 6px;
        box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    }

    #sect04 .liBox a:hover {
        opacity: 1;
        color: #2f2f2f;
    }

    #sect04 .liBox a::before {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 52px;
        height: 52px;
        background: url(./img/tri2.svg) 0 0 no-repeat;
        background-size: 52px auto;
        border-radius: 0 0 6px 0;
    }

    #sect04 .liBox a::after {
        content: "";
        position: absolute;
        bottom: 12px;
        right: 5px;
        width: 16px;
        height: 15px;
        background: url(./img/arrow_base_wt.svg) 100% 100% no-repeat;
        background-size: 16px auto;
    }

    #sect04 .liBox h3 {
        display: flex;
    }

    #sect04 .liBox h3 span {
        display: flex;
        align-items: center;
        padding: 0 0 0 17%;
        background: url("./img/sect04_icon.svg") 5px 0 no-repeat;
        background-size: 33px auto;
        font-size: 2.0rem;
    }

    /*------------
sect05_SP
------------*/
    #sect05 {
        padding: 45px 0 1px;
    }

    #sect05 .sectTtl {
        margin: 0 0 50px;
    }

    #sect05 .sectTtl::before {
        height: 12px;
        background: url(./img/eng_ex.svg) 50% 100% no-repeat;
        background-size: auto 12px;
    }

    #sect05 .ttlHead {
        margin: 0 5% 10px;
        font-size: 1.8rem;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        text-align: center;
    }

    #sect05 .ttlHead .box {
        display: inline-block;
        margin: 0 0 10px;
        padding: 2px 3% 4px;
        background: #f8b62d;
        border-radius: 5px;
        line-height: 1;
        font-size: 1.5rem;
        color: #fff;
    }

    #sect05 .ttlHead .txt {
        line-height: 1;
    }

    #sect05 .ttlHead .txt div {
        position: relative;
        display: inline-block;
        padding: 0 0 16px;
        background: url(./img/dotline_r.png) 0 100% repeat-x;
        background-size: auto 3px;
        line-height: 1.3;
    }

    #sect05 .ttlHead .txt div::before {
        content: "";
        position: absolute;
        bottom: 0;
        right: -54px;
        width: 45px;
        height: 40px;
        background: url(./img/pen.svg) 0 0 no-repeat;
        background-size: 45px auto;
    }

    #sect05 .liBox .tag {
        position: absolute;
        z-index: 1;
        top: -14px;
        left: calc(50% - 40px);
        width: 80px;
        height: 40px;
        padding: 4px 0 0;
        background: url(./img/sect05_tag.svg) 0 0 no-repeat;
        background-size: 80px auto;
        font-size: 1.3rem;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 700;
        line-height: 1;
        text-align: center;
        color: #fff;
    }

    #sect05 .liBox {
        margin: 0 0 30px;
    }

    #sect05 .liBox a {
        position: relative;
        padding: 30px 5% 18px;
        background: #f5f5f5;
        border-radius: 6px;
        text-decoration: none;
    }

    #sect05 .liBox a::before {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 52px;
        height: 52px;
        background: url("./img/tri2.svg") 0 0 no-repeat;
        background-size: 52px auto;
        border-radius: 0 0 6px 0;
    }

    #sect05 .liBox a::after {
        content: "";
        position: absolute;
        bottom: 12px;
        right: 5px;
        width: 16px;
        height: 15px;
        background: url(./img/arrow_base_wt.svg) 100% 100% no-repeat;
        background-size: 16px auto;
    }

    #sect05 .liBox a:hover {
        opacity: 1;
        color: #2f2f2f;
    }

    #sect05 .liBox a:hover img {
        opacity: 1;
    }

    #sect05 .liBox .sttl {
        display: block;
        margin: 0 0 20px;
        font-size: 2.2rem;
        text-align: center;
    }

    #sect05 .liBox .sttl .fontS {
        display: block;
        font-size: 1.8rem;
    }

    #sect05 .liBox .imgArea {
        margin: 0 0 10px;
    }

    #sect05 .liBox .imgArea img {
        border-radius: 5px;
    }

    #sect05 .liBox p {
        padding: 0;
    }

    /*------------
sect055
------------*/
    #sect55 {
        margin: 0 0 0;
        padding: 0 0 10px;
    }

    #sect55 p {
        padding: 0 5%;
    }

    /*------------
sect06_SP
------------*/
    #sect06 {
        position: relative;
        margin: 50px 0;
        padding: 0 5% 10px;
    }

    #sect06::before {
        content: "";
        position: absolute;
        top: -8px;
        right: 5%;
        left: auto;
        width: 90px;
        height: 20px;
        background: url(./img/eng_ad.svg) 100% 0 no-repeat;
        background-size: 90px auto;
    }

    /*  End_SP */
}
