@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap');


/* layout
---------------------------------------------------------- */
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, table, th, td, button, a, span {
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
ol ,
ul {
	list-style: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
html {
	font-size: 1rem;
	font-size: 10px;
	height: 100%;
}
body {
	color: #333333;
	font-family: 'Noto Sans JP',"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	background: #fff;
	font-size: 1.6rem;
	line-height: 1.5;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

@media (min-width: 767px) {
	body {
		position: relative;
		overflow-x: hidden;
	}
}


a {
	text-decoration: none;
	color: #333333;
	-webkit-transition: all 300ms 0s ease;
	transition: all 300ms 0s ease;
}
a:hover {
	opacity: 0.5;
}


.linkbox {
	cursor: pointer;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
main {
	overflow: hidden;
}



/*表示
----------------------------------------*/
/* PCだけ表示 */
.visible_pc {
	display: block !important;
}
/* SPだけ表示 */
.visible_sp {
	display: none !important;
}

/* PCだけ表示 */
.visible_pc_inline {
	display: inline !important;
}
/* SPだけ表示 */
.visible_sp_inline {
	display: none !important;
}

@media only screen and (max-width: 768px) {
	/* PCだけ表示 */
	.visible_pc {
		display: none !important;
	}
	/* SPだけ表示 */
	.visible_sp {
		display: block !important;
	}

	/* PCだけ表示 */
	.visible_pc_inline {
		display: none !important;
	}
	/* SPだけ表示 */
	.visible_sp_inline {
		display: inline !important;
	}
	/* SPだけ改行 */
	.sp_br {
		display: block;
	}

}



/* ヘッダー
----------------------------------------*/
.c-header {
    padding: 30px 0;
    background: #fff;
}
.c-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 20px;
}
.c-header-inner * {
    width: 100%;
}
.c-header-inner h1 {
    width: 36%;
    max-width: 540px;
}
.c-header-inner .c-header-contact {
    width: 45.53%;
    max-width: 683px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.c-header-inner .c-header-contact .c-header-tel {
    width: 48.31%;
    max-width: 330px;
}
.c-header-inner .c-header-contact .c-header-tel a {
    pointer-events: none;
}
.c-header-inner .c-header-contact .c-header-form {
    width: 46.85%;
    max-width: 320px;
}

.c-header__float {
    display: none;
}

@media only screen and (max-width: 768px) {
    .c-header {
        padding: calc(30 / 750 * 100vw) 0;
    }
    .c-header-inner {
        padding: 0 calc(40 / 750 * 100vw);
    }
    .c-header-inner h1 {
        width: calc(400 / 750 * 100vw);
    }
    .c-header-inner .c-header-contact {
        width: calc(250 / 750 * 100vw);
        max-width: inherit;
    }
    .c-header-inner .c-header-contact .c-header-tel {
        display: none;
    }
    
    .c-header-inner .c-header-contact .c-header-form {
        width: calc(250 / 750 * 100vw);
    }
    
    .c-header__float {
        display: block;
        background: rgba(0,0,0,0.6);
        position: fixed;
        bottom: 0;
        z-index: 1;
        width: 100%;
        padding: calc(40 / 750 * 100vw);
    }
    .c-header__float ul {
        display: flex;
        justify-content: space-between;
    }
    .c-header__float ul li {
        width: calc(320 / 750 * 100vw);
    }
    .c-header__float ul li a {
        display: block;
    }
}


/* フッター
----------------------------------------*/
.c-footer {
    padding: 80px 0 70px;
    background: #50505A;
}
.c-footer-inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.c-footer-contents01 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 75px;
}
.c-footer-contents01 * {
    width: 100%;
}
.c-footer-contents03 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 70px;
}
.c-footer-contents03 .map {
    width: 50%;
}
.c-footer-contents03 .map iframe {
    width: 100%;
}
.c-footer-contents03 .txt {
    width: 45%;
    color: #fff;
}
.c-footer-contents03 .txt p span {
    font-size: 1.8rem;
}
.c-footer-logo {
    width: 54%;
    max-width: 540px;
}
.c-footer-logo .txt-name {
    display: block;
    text-align: right;
    padding: 10px 0 0;
}
.c-footer-logo .txt-name img {
    width: 45%;
}
.c-footer-form {
    width: 32%;
    max-width: 320px;
}

.c-footer-nav {
    display: flex;
    justify-content: center;
    margin-bottom: 60px;
}
.c-footer-nav li {
    margin: 0 15px;
}
.c-footer-nav li > * {
    color: #fff;
    background: none;
    border: none;
    font-size: 1.6rem;
    transition: 0.3s;
}
.c-footer-nav li > *:hover {
    opacity: 0.5;
}
.c-footer-copy {
    font-size: 1.16rem;
    color: #fff;
    text-align: center;
}

@media only screen and (max-width: 768px) {
    .c-footer {
        padding: calc(115 / 750 * 100vw) 0 calc(200 / 750 * 100vw);
    }
    .c-footer-inner {
        padding: 0 calc(65 / 750 * 100vw);
    }

    .c-footer-contents01 {
        display: block;
        margin-bottom: calc(50 / 750 * 100vw);
    }
    
    .c-footer-contents03 {
        display: block;
        margin-bottom: calc(70 / 750 * 100vw);
    }
    .c-footer-contents03 .map {
        width: 100%;
        padding-top: 80%;
        margin-bottom: 10px;
    }
    .c-footer-contents03 .map iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
    }
    .c-footer-contents03 .txt {
        width: 100%;
    }
    .c-footer-contents03 .txt p {
        font-size: calc(14 / 375 * 100vw);
    }
    .c-footer-contents03 .txt p span {
        font-size: calc(16 / 375 * 100vw);
    }
    .c-footer-logo {
        width: 100%;
    }
    .c-footer-logo .txt-name {
        text-align: center;
        padding: 15px 0 0;
        line-height: 1;
    }
    .c-footer-logo .txt-name img {
        width: 55%;
    }
    .c-footer-form {
        width: calc(330 / 750 * 100vw);
        max-width: inherit;
    }
    
    .c-footer-contents02 {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: calc(55 / 750 * 100vw);
    }

    .c-footer-nav {
        display: block;
        margin: 0;
    }
    .c-footer-nav li {
        margin: 0;
    }
    .c-footer-nav li > * {
        font-size: calc(24 / 750 * 100vw);
    }
    .c-footer-nav li > *:hover {
        opacity: 1;
    }
    .c-footer-nav li + li {
        margin-top: calc(28 / 750 * 100vw);
    }
    .c-footer-copy {
        font-size: calc(20 / 750 * 100vw);
    }
}


/* コンテンツ
----------------------------------------*/
.c-page-lp__inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.c-page-lp .mincho {
    font-family: 'Noto Serif JP', sans-serif;
}

.c-page-lp .txt-center {
    text-align: center;
}

.c-page-lp__h2 {
    font-size: 3rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-align: center;
    margin-bottom: 25px;
    color: #50505a;
}
.c-page-lp__h2.mincho {
    font-weight: 600;
    letter-spacing: 0.2em;
    font-feature-settings: "palt";
}
.c-page-lp__h2 span {
    display: block;
    font-size: 2.1rem;
    letter-spacing: 0.14em;
}

@media screen and (max-width: 768px) {
    .c-page-lp__inner {
        padding: 0 calc(40 / 750 * 100vw);
    }

    .c-page-lp__h2 {
        font-size: calc(54 / 750 * 100vw);
        margin-bottom: calc(35 / 750 * 100vw);
        font-feature-settings: "palt";
    }
    .c-page-lp__h2 span {
        font-size: calc(34 / 750 * 100vw);
    }
}


/* c-page-lp__mainv
----------------------------------------*/
.c-page-lp__mainv {
    background: #E7EFE3;
}

.c-page-lp__mainv-inner {
    max-width: 1500px;
    margin: 0 auto;
}

.c-page-lp__mainv-inner figure {
    width: 100%;
}


.c-page-lp__mainv-inner .c-page-lp__mainv-contact {
    position: absolute;
    width: 29.4%;
    max-width: 442px;
    bottom: 12.1%;
    left: 12%;   
}


@media screen and (max-width: 768px) {
    .c-page-lp__mainv-inner .c-page-lp__mainv-contact {
        width: calc(542 / 750 * 100vw);
        max-width: inherit;
        bottom: calc(510 / 750 * 100vw);
        left: 50%;
        transform: translateX(-50%); 
    }

}


/* c-page-lp__about
----------------------------------------*/
.c-page-lp__about {
    background: linear-gradient(to top, #31AB61 , #70BC6E);
    padding: 60px 0 50px;
}

.c-page-lp__about .c-page-lp__h2 {
    color: #fff;
}
.c-page-lp__about p {
    color: #fff;
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 35px;
    letter-spacing: 0.12em;
    font-feature-settings: "palt";
}
.c-page-lp__about-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.c-page-lp__about-list li {
    width: 48.5%;
    background: linear-gradient(to left, #DEF1E5 0%, #fff, #DEF1E5 80%);
    color: #31AB61;
    font-size: 2rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 30px;
    padding: 15px 0 15px 60px;
    letter-spacing: 0.06em;
}
.c-page-lp__about-list li span {
    position: absolute;
    left: 0;
    top: 0;
    width: 60px;
    height: 100%;
    line-height: 60px;
    background: url("../img/bg-number.png") no-repeat;
    background-size: 100%;
    color: #fff;
    font-size: 2.1rem;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
}


@media screen and (max-width: 768px) {
    .c-page-lp__about {
        padding: calc(50 / 750 * 100vw) 0;
    }
    .c-page-lp__about p {
        font-size: calc(30 / 750 * 100vw);
        margin-bottom: calc(40 / 750 * 100vw);
    }
    .c-page-lp__about-list li {
        width: calc(320 / 750 * 100vw);
        font-size: calc(26 / 750 * 100vw);
        margin-bottom: calc(30 / 750 * 100vw);
        padding: calc(10 / 750 * 100vw) 0 calc(10 / 750 * 100vw) calc(60 / 750 * 100vw);
    }
    .c-page-lp__about-list li span {
        width: calc(60 / 750 * 100vw);
        line-height: calc(60 / 750 * 100vw);
        font-size: calc(28 / 750 * 100vw);
    }
}


/* c-page-lp__program
----------------------------------------*/
.c-page-lp__program {
    background: linear-gradient(to top, #C7D2DA , #ECEEF0);
    padding: 60px 0 80px;
}
.c-page-lp__program .c-page-lp__h2 {
    margin-bottom: 55px;
}
@media screen and (max-width: 768px) {
    .c-page-lp__program {
        padding: calc(60 / 750 * 100vw) 0 calc(70 / 750 * 100vw);
    }
    .c-page-lp__program .c-page-lp__h2 {
        margin-bottom: calc(30 / 750 * 100vw);
    }
    .c-page-lp__program figure {
        margin: 0 calc(-30 / 750 * 100vw) 0 calc(-60 / 750 * 100vw);
    }
}



/* c-page-lp__entrust
----------------------------------------*/
.c-page-lp__entrust {
    background: #f7f6f2;
    padding: 60px 0 80px;
}

.c-page-lp__entrust-contents {
    background: url("../img/bg-contents.png") repeat;
    background-size: 83px 96px;
}
.c-page-lp__entrust-contents .c-page-lp__inner {
    padding: 25px 20px;
}
.c-page-lp__entrust-contents .c-page-lp__entrust-txt {
    width: 66%;
    max-width: 660px;
}
.c-page-lp__entrust-contents .c-page-lp__entrust-txt p {
    font-size: 2rem;
    font-weight: 500;
    font-feature-settings: "palt";
    line-height: 1.7;
    letter-spacing: 0.06em;
}
.c-page-lp__entrust-contents .c-page-lp__entrust-txt p + p {
    margin-top: 30px;
}
.c-page-lp__entrust-contents figure {
    width: 39%;
    max-width: 390px;
    position: absolute;
    right: 0;
    bottom: 0;
}

@media screen and (max-width: 768px) {
    .c-page-lp__entrust {
        padding: calc(70 / 750 * 100vw) 0 calc(80 / 750 * 100vw);
    }

    .c-page-lp__entrust-contents .c-page-lp__inner {
        padding: calc(70 / 750 * 100vw) calc(40 / 750 * 100vw);
    }

    .c-page-lp__entrust-contents .c-page-lp__inner .c-page-lp__h2 {
        font-size: calc(68 / 750 * 100vw);
        letter-spacing: 0.04em;
    }
    .c-page-lp__entrust-contents .c-page-lp__entrust-txt {
        width: 100%;
        max-width: inherit;
    }
    .c-page-lp__entrust-contents .c-page-lp__entrust-txt p {
        font-size: calc(21 / 750 * 100vw);
        line-height: 2;
        letter-spacing: 0;
    }
    .c-page-lp__entrust-contents .c-page-lp__entrust-txt p + p {
        margin-top: calc(40 / 750 * 100vw);
    }
    .c-page-lp__entrust-contents figure {
        width: calc(406 / 750 * 100vw);
        max-width: inherit;
        right: calc(-25 / 750 * 100vw);
    }

}




/* c-page-lp__flow
----------------------------------------*/
.c-page-lp__flow {
    background: #e7efe3;
    padding: 70px 0;
}

.c-page-lp__flow-list {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 60px 0 35px;
}

.c-page-lp__flow-list-item {
    width: 344px;
    margin: 0 -6px;
}

.c-page-lp__flow-list + p {
    font-size: 2rem;
    line-height: 1.6;
    font-feature-settings: "palt";
    text-align: center;
}


@media screen and (max-width: 768px) {
    .c-page-lp__flow {
        padding: calc(70 / 750 * 100vw) 0;
    }

    .c-page-lp__flow-list {
        display: block;
        margin: calc(45 / 750 * 100vw) 0;
    }

    .c-page-lp__flow-list-item {
        width: calc(520 / 750 * 100vw);
        margin: 0 auto;
    }

    .c-page-lp__flow-list-item + .c-page-lp__flow-list-item {
        margin-top: calc(-45 / 750 * 100vw);
    }

    .c-page-lp__flow-list + p {
        font-size: calc(30 / 750 * 100vw);
    }
}




/* c-page-lp__contact
----------------------------------------*/
.c-page-lp__contact {
    background: #ffffee;
    padding: 50px 0;
    border-top: 14px solid #ffd600;
    border-bottom: 14px solid #ffd600;
}

.c-page-lp__contact .c-page-lp__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.c-page-lp__contact-item:first-child {
    width: 28.6%;
    max-width: 286px;
}
.c-page-lp__contact-item:last-child {
    width: 68.6%;
    max-width: 686px;
    margin-top: -13.3%;
}
.c-page-lp__contact-item .c-page-lp__contact-btn {
    margin-top: 20px;
}


@media screen and (max-width: 768px) {
    .c-page-lp__contact {
        padding: calc(70 / 750 * 100vw) 0;
        border-top: 7px solid #ffd600;
        border-bottom: 7px solid #ffd600;
    }

    .c-page-lp__contact .c-page-lp__inner {
        display: block;
    }

    .c-page-lp__contact-item:first-child {
        width: 100%;
        max-width: inherit;
    }
    .c-page-lp__contact-item:last-child {
        width: 100%;
        max-width: inherit;
        margin-top: 0;
    }
    .c-page-lp__contact-item .c-page-lp__contact-btn {
        margin-top: calc(25 / 750 * 100vw);
    }
}


/* c-page-lp__support
----------------------------------------*/
.c-page-lp__support {
    background: #f7f6f2;
    padding: 65px 0;
}

.c-page-lp__support-plan {
    display: flex;
    justify-content: space-between;
}
.c-page-lp__support-plan01 {
    width: 63%;
    max-width: 630px;
}
.c-page-lp__support-plan02 {
    width: 35%;
    max-width: 350px;
}

[class*="c-page-lp__support-plan0"] h3 {
    background: #31ab61;
    color: #fff;
    border-radius: 30px 30px 0 0;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 500;
    padding: 6px 0;
    margin-bottom: 6px;
}
.c-page-lp__support-plan02 h3 {
    background: #f1ae1c;
}

[class*="c-page-lp__support-plan0"] .bg-box {
    background: #fff;
    padding: 20px;
}

[class*="c-page-lp__support-plan0"] .b-tab-box > *,
[class*="c-page-lp__support-plan0"] .bg-box > * {
    font-size: 1.4rem;
}

[class*="c-page-lp__support-plan0"] .b-tab-box h4,
[class*="c-page-lp__support-plan0"] .bg-box h4  {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    background: #31ab61;
    color: #fff;
    border-radius: 30px;
    margin-top: 15px;
    margin-bottom: 10px;
    padding: 3px 0;
}
.c-page-lp__support-plan02 .bg-box h4  {
    background: #f1ae1c;
}

[class*="c-page-lp__support-plan0"] .b-tab-box h4:first-child,
[class*="c-page-lp__support-plan0"] .bg-box h4:first-child {
    margin-top: 0;
}
[class*="c-page-lp__support-plan0"] .b-tab-box .color-red,
[class*="c-page-lp__support-plan0"] .bg-box .color-red {
    color: #c74533;
}
[class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price,
[class*="c-page-lp__support-plan0"] .bg-box p.txt-price {
    font-size: 2.4rem;
    font-weight: bold;
    font-family: 'Noto Sans JP', sans-serif;
}
[class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price span,
[class*="c-page-lp__support-plan0"] .bg-box p.txt-price span {
    font-family: 'Oswald', sans-serif;
    font-size: 4.6rem;
    font-weight: 500;
}
[class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price span.txt-m,
[class*="c-page-lp__support-plan0"] .bg-box p.txt-price span.txt-m {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3rem;
    font-weight: bold;
}

[class*="c-page-lp__support-plan0"] .b-tab-box .ol-list,
[class*="c-page-lp__support-plan0"] .bg-box .ol-list {
    list-style: decimal;
    padding: 0 0 0 20px;
    font-size: 1.3rem;
    margin-bottom: 15px;
}
[class*="c-page-lp__support-plan0"] .b-tab-box .contents-center {
    max-width: 350px;
    margin: 20px auto;
}
[class*="c-page-lp__support-plan0"] .b-tab-box .contents-center .ol-list {
    font-size: 1.4rem;
}
[class*="c-page-lp__support-plan0"] .b-tab-box .txt-small,
[class*="c-page-lp__support-plan0"] .bg-box .txt-small {
    font-size: 1.3rem;
}

[class*="c-page-lp__support-plan0"] .b-tab-box .ul-asterisk,
[class*="c-page-lp__support-plan0"] .bg-box .ul-asterisk {
    margin-bottom: 15px;
}
[class*="c-page-lp__support-plan0"] .b-tab-box .ul-asterisk li,
[class*="c-page-lp__support-plan0"] .bg-box .ul-asterisk li {
    font-size: 1.3rem;
}



@media screen and (max-width: 768px) {
    .c-page-lp__support {
        padding: calc(70 / 750 * 100vw) 0;
    }

    .c-page-lp__support-plan {
        display: block;
    }
    .c-page-lp__support-plan01 {
        width: 100%;
        max-width: inherit;
        margin-bottom: calc(80 / 750 * 100vw);
    }
    .c-page-lp__support-plan02 {
        width: 100%;
        max-width: inherit;
    }

    [class*="c-page-lp__support-plan0"] h3 {
        border-radius: calc(50 / 750 * 100vw) calc(50 / 750 * 100vw) 0 0;
        font-size: calc(30 / 750 * 100vw);
        padding: calc(12 / 750 * 100vw) 0;
        margin-bottom: calc(12 / 750 * 100vw);
    }

    [class*="c-page-lp__support-plan0"] .bg-box {
        padding: calc(40 / 750 * 100vw);
    }

    [class*="c-page-lp__support-plan0"] .b-tab-box > *,
    [class*="c-page-lp__support-plan0"] .bg-box > * {
        font-size: calc(22 / 750 * 100vw);
    }

    [class*="c-page-lp__support-plan0"] .b-tab-box h4,
    [class*="c-page-lp__support-plan0"] .bg-box h4  {
        font-size: calc(22 / 750 * 100vw);
        border-radius: calc(50 / 750 * 100vw);
        margin-top: calc(30 / 750 * 100vw);
        margin-bottom: calc(20 / 750 * 100vw);
        padding: calc(6 / 750 * 100vw) 0;
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box h4.b-title-aco,
    [class*="c-page-lp__support-plan0"] .bg-box h4.b-title-aco {
        color: #31ab61;
        border: 2px solid #31ab61;
        font-size: calc(30 / 750 * 100vw);
        font-weight: 500;
        padding: 6px 0;
        background: -webkit-linear-gradient(right, #def1e5, #fff, #def1e5);
        background: -o-linear-gradient(right, #def1e5, #fff, #def1e5);
        background: linear-gradient(to left, #def1e5, #fff, #def1e5);
        cursor: pointer;
    }
    .c-page-lp__support-plan02 .bg-box h4.b-title-aco  {
        color: #f1ae1c;
        border-color: #f1ae1c;
        background: -webkit-linear-gradient(right, #fdf6e6, #fff, #fdf6e6);
        background: -o-linear-gradient(right, #fdf6e6, #fff, #fdf6e6);
        background: linear-gradient(to left, #fdf6e6, #fff, #fdf6e6);
    }
    .c-page-lp__support-plan01 h4.b-title-aco::before {
        content: "";
        position: absolute;
        background: url("../img/ico-aco01.svg") no-repeat;
        background-size: 100% 100%;
        width: calc(28 / 750 * 100vw);
        height: calc(14 / 750 * 100vw);
        right: calc(25 / 750 * 100vw);
        top: 55%;
        transform: translateY(-50%);
        transition: 0.3s;
    }
    .c-page-lp__support-plan02 h4.b-title-aco::before {
        content: "";
        position: absolute;
        background: url("../img/ico-aco02.svg") no-repeat;
        background-size: 100% 100%;
        width: calc(28 / 750 * 100vw);
        height: calc(14 / 750 * 100vw);
        right: calc(25 / 750 * 100vw);
        top: 55%;
        transform: translateY(-50%);
        transition: 0.3s;
    }
    .c-page-lp__support-plan01 h4.b-title-aco[data-open="true"]::before,
    .c-page-lp__support-plan02 h4.b-title-aco[data-open="true"]::before {
        top: 50%;
        transform: translateY(-50%) rotate(-180deg);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price,
    [class*="c-page-lp__support-plan0"] .bg-box p.txt-price {
        font-size: calc(70 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price span,
    [class*="c-page-lp__support-plan0"] .bg-box p.txt-price span {
        font-size: calc(84 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box p.txt-price span.txt-m,
    [class*="c-page-lp__support-plan0"] .bg-box p.txt-price span.txt-m {
        font-size: calc(58 / 750 * 100vw);
    }

    [class*="c-page-lp__support-plan0"] .b-tab-box .ol-list,
    [class*="c-page-lp__support-plan0"] .bg-box .ol-list {
        padding: 0 0 0 calc(24 / 750 * 100vw);
        font-size: calc(24 / 750 * 100vw);
        margin-bottom: calc(25 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box .contents-center {
        max-width: inherit;
        margin: 0 auto calc(30 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box .contents-center .ol-list {
        font-size: calc(24 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box .txt-small,
    [class*="c-page-lp__support-plan0"] .bg-box .txt-small {
        font-size: calc(24 / 750 * 100vw);
    }

    [class*="c-page-lp__support-plan0"] .b-tab-box .ul-asterisk,
    [class*="c-page-lp__support-plan0"] .bg-box .ul-asterisk {
        margin-bottom: calc(25 / 750 * 100vw);
    }
    [class*="c-page-lp__support-plan0"] .b-tab-box .ul-asterisk li,
    [class*="c-page-lp__support-plan0"] .bg-box .ul-asterisk li {
        font-size: calc(24 / 750 * 100vw);
    }
    
    [class*="c-page-lp__support-plan0"] .b-box-aco {
        display: none;
        padding: 0 3px;
    }
}


/* タブ
----------------------------------------*/
.b-tab-menu {
	display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.b-tab-menu li {
	width: 126px;
}
.b-tab-menu li a {
	display: block;
    background: #daf0d5;
    color: #50505a;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    padding: 9px 0;
}
.b-tab-menu li:nth-child(even) a {
    background: #edf4eb;
}

.b-tab-menu li.current a {
	background: #31ab61;
    color: #fff;
}
.b-tab-menu li a:hover {
	opacity: 1;
}
.b-tab-menu li.current a::before {
    content: "";
    position: absolute;
    box-sizing: border-box;
    width: 12px;
    height: 14px;
    border: 12px solid transparent;
    border-top: 12px solid #31ab61;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
}

.b-tab-box {
	display: none;
	background: #fff;
    padding: 20px;
}
.b-tab-box.default {
	display: block;
}

@media only screen and (max-width: 768px) {
	.b-tab-menu {
        margin-bottom: calc(40 / 750 * 100vw);
    }
    .b-tab-menu li {
        width: calc(134 / 750 * 100vw);
    }
    .b-tab-menu li a {
        font-size: calc(22 / 750 * 100vw);
        padding: calc(8 / 750 * 100vw) 0;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
    }
    .b-tab-menu li.current a::before {
        width: calc(16 / 750 * 100vw);
        height: calc(8 / 750 * 100vw);
        border: calc(16 / 750 * 100vw) solid transparent;
        border-top: calc(16 / 750 * 100vw) solid #31ab61;
        bottom: calc(-30 / 750 * 100vw);
    }

    .b-tab-box {
        padding: calc(40 / 750 * 100vw);
    }
}




/* c-page-lp__faq
----------------------------------------*/
.c-page-lp__faq {
    background: #e7efe3;
    padding: 70px 0 60px;
}
.c-page-lp__faq-list {
    background: #fff;
    padding: 15px 30px 20px;
    margin-bottom: 20px;
}
.c-page-lp__faq-ttl {
    font-size: 2.6rem;
    font-weight: 500;
    color: #31ab61;
    border-bottom: 1px solid #31ab61;
    padding-bottom: 5px;
    margin-bottom: 15px;
}
.c-page-lp__faq-ttl::before {
    content: "Q.";
    font-size: 3.8rem;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    margin-right: 12px;
}

@media screen and (max-width: 768px) {
    .c-page-lp__faq {
        padding: calc(60 / 750 * 100vw) 0 calc(50 / 750 * 100vw);
    }
    .c-page-lp__faq-list {
        padding: calc(15 / 750 * 100vw) calc(20 / 750 * 100vw) calc(25 / 750 * 100vw);
        margin-bottom: calc(30 / 750 * 100vw);
    }
    .c-page-lp__faq-ttl {
        font-size: calc(34 / 750 * 100vw);
        padding-bottom: calc(5 / 750 * 100vw);
        margin-bottom: calc(15 / 750 * 100vw);
    }
    .c-page-lp__faq-ttl::before {
        font-size: calc(43 / 750 * 100vw);
        margin-right: calc(12 / 750 * 100vw);
    }
    .c-page-lp__faq-txt {
        font-size: calc(28 / 750 * 100vw);
    }
}





/* c-pagetop
----------------------------------------*/
.c-pagetop {
    width: 82px;
	position: relative;
	right: 20px;
	bottom: 0;
	margin-top: 0;
	z-index: 10;
    overflow: hidden;
    cursor: pointer;
    transition: 0.3s;
    margin-bottom: 0;
	text-align: center;
	line-height: 0;
	padding: 15px 0 0;
}

.c-pagetop:hover {
	opacity: .6;
}

@media only screen and (max-width: 768px) {

	.c-pagetop {
		width: calc(80 / 750 * 100vw);
        right: calc(20 / 750 * 100vw);
	}
}







/* モーダル
----------------------------------------*/
/* モーダルを開くボタン */
.modal-open{
    display: inline-block;
    cursor: pointer;
}

/* モーダルと背景の指定 */
.modal{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0,0,0,50%);
    padding: 0 20px;
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    box-sizing: border-box;
    z-index: 10;
}

/* モーダルの擬似要素の指定 */
.modal:before{
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
    margin-left: -0.2em;
}

/* クラスが追加された時の指定 */
.modal.is-active{
    opacity: 1;
    visibility: visible;
}

/* モーダル内側の指定 */
.modal-container{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 85vw;
    max-width: 1300px;
    margin: 0 auto;
}

/* モーダルを閉じるボタンの指定 */
.modal-close{
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    right: 0;
    color: #fff;
    background: #000;
    cursor: pointer;
    padding: 5px 8px;
    box-sizing: border-box;
    border: 1px solid #fff;
    font-size: 1.2rem;
    z-index: 10;
}

/* モーダルのコンテンツ部分の指定 */
.modal-content{
    background: #fff;
    color: #50505a;
    line-height: 1.8;
    height: 80vh;
}
.modal-inner{
    overflow-y: auto;
    height: 100%;
    padding: 60px 45px 70px;
}
.modal-content h2 {
    font-size: 2.8rem;
    font-weight: 500;
    color: #1b2d63;
}
.modal-content h3 {
    font-size: 2.4rem;
    font-weight: 500;
    color: #1b2d63;
    text-align: left;
    border-bottom: 1px solid #1b2d63;
    padding-bottom: 3px;
    margin-bottom: 15px;
}
.modal-content p {
    text-align: left;
    font-size: 1.4rem;
    margin: 1em 0 2em;
}
.privacy-contact {
    border-left: 6px solid #1b2d63;
    padding-left: 20px;
}
.privacy-contact h3 {
    padding-bottom: 0;
    border-bottom: none;
}

.modal-content .b-table {
    text-align: left;
    
}
.modal-content .b-table table {
    border-spacing: 0;
    width: 100%;
}
.modal-content .b-table th {
    color: #1b2d63;
    font-size: 1.6rem;
    font-weight: 500;
    width: 137px;
    padding: 20px 0;
    border-bottom: 1px solid #c8c8c8;
}
.modal-content .b-table td {
    color: #1b2d63;
    font-size: 1.6rem;
    padding: 20px 0;
    border-bottom: 1px solid #c8c8c8;
}


@media screen and (max-width: 768px) {
    .modal{
        padding: 0;
    }
    .modal-container{
        width: 90%;
    }
    
    .modal-inner{
        padding: calc(60 / 750 * 100vw) calc(45 / 750 * 100vw) calc(70 / 750 * 100vw);
    }
    .modal-content h2 {
        font-size: calc(36 / 750 * 100vw);
        margin-bottom: calc(30 / 750 * 100vw);
    }
    .modal-content h3 {
        font-size: calc(32 / 750 * 100vw);
        margin-bottom: calc(20 / 750 * 100vw);
    }
    .modal-content p {
        font-size: calc(26 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) 0 calc(40 / 750 * 100vw);
    }
    .privacy-contact {
        border-left: 5px solid #1b2d63;
        padding-left: calc(30 / 750 * 100vw);
    }

    
    .modal-content .b-table table {
        display: block;
    }
    .modal-content .b-table th {
        display: block;
        font-size: calc(30 / 750 * 100vw);
        width: 100%;
        padding: 0 0 calc(10 / 750 * 100vw);
    }
    .modal-content .b-table td {
        display: block;
        width: 100%;
        font-size: calc(28 / 750 * 100vw);
        padding: calc(15 / 750 * 100vw) 0 calc(40 / 750 * 100vw);
        border-bottom: none;
    }
}



