/* lp */

.section_lp1 {}

.section_lp2 {}

.lp_page_head {}
.lp_page_head:before {}
.lp_page_head:after {}

.menu {}
.menu a {}
.menu a:hover {}

/* /com/plan.html */
.section_plan {}

.section_plan .page_head01 {
	font-size: 150%;
}

.plan_mv {
	position: relative;
	border-top: solid 16px #f5596c;
	margin-bottom: 2em;
}
.plan_mv_inner {
	position: absolute;
	width: 100%;
	left: 0;
	top: 45%;
	text-align: center;
	line-height: 1;
}
.plan_mv_head {
	
	display: inline-block;
	background: #f5596c;
	color: #fff;
	padding: 0.25em;

	font-size: 300%;
	font-weight: bold;
	vertical-align: middle;
	margin-bottom: 0.25em;
}
.plan_mv_head span {}
.plan_mv_head em {}

.plan_mv_copy {
	font-size: 200%;
}

.plan_mv_text {
	margin: 1em auto 0;
	padding: 1em;
	background-color: rgba(255,255,255,0.5);
	max-width: 75%;
	text-align: left;
	line-height: 1.7;
}

.plan_mv_bg img {
	width: 100%;
	height: auto;
}
@media screen and (max-width:767px) {
	
	.plan_mv_inner {
		top: 40%;
	}

	.plan_mv_head {
		font-size: 150%;
	}
	.plan_mv_copy {
		font-size: 100%;
	}
	.plan_mv_text {
		max-width:80%;
		padding: 0.25em 0.5em;
	}
}

.list_plan_model {
	margin: 0 -0.5em;
}
.list_plan_model > ul {}
.list_plan_model > ul > li {
	padding: 0 0.5em 1em;
}

.list_plan_model i {
	display: inline-block;
	background: #fff;
	color: #f5596c;
	vertical-align: middle;
	padding: 0.25em;
	margin-right: 0.5em;
}
.list_plan_model p {
	background: #f5596c;
	color: #fff;
	padding: 0.5em 0.25em;
	line-height: 1;
}
.list_plan_model figure {
	padding: 1.5em;
	border-top: none;
	border-right: solid 2px #f5596c;
	border-bottom: solid 2px #f5596c;
	border-left: solid 2px #f5596c;
}
.list_plan_model figure img {
	width: 100%;
	height: auto;
}
@media screen and (max-width:767px) {
	.list_plan_model i {
		display: block;
		margin-right: 0;
		margin-bottom: 0.5em;
		
		font-size: 80%;
	}
	.list_plan_model p {
		font-size: 80%;
		text-align: center;
	}
	.list_plan_model figure { padding: 0.25em; }
}

.plan_free {
	
	text-align: center;
	font-size: 150%;
}
.plan_free_text1 {
	
	border: solid 1px #ccc;
	margin-bottom: 1em;
	position: relative;
	display: inline-block;
	padding:0 1em;
}
.plan_free_text1:before {
	
	content: '\e92a';
	font-family: 'icomoon' !important;
	color: #666;
	
	position: absolute;
	left: 50%;
	bottom:-1.25em;
	margin-left: -0.5em;
	
	font-size: 300%;
}
.plan_free_text1 p {
	line-height: 1;
	padding: 0.5em;
	margin: 0;
}

.plan_free_text2 {}
.plan_free_text2 p {
	line-height: 1;
	font-weight: bold;
	font-size: 200%;
	display: inline-block;
	border-bottom: double 6px #F70000;
}
.plan_free_text2 em {
	color: #F70000;
}
.plan_free_big {
	font-size: 300%;
}
@media screen and (max-width:767px) {
	
	.plan_free_text2 em {
		display: block;
	}
	
	.plan_free_big {
		letter-spacing: -0.25ex;
	}
	.plan_free_text1 {
		margin-bottom: 3em;
	}
}

.list_plan_4merit {
	margin: 0 -0.5em;
}
.list_plan_4merit > ul {}
.list_plan_4merit > ul > li {
	padding: 0 0.5em 1em;
}

.list_plan_4merit i {
	display: inline-block;
	background: #fff;
	color: #f5596c;
	vertical-align: middle;
	padding: 0.25em;
	margin-right: 0.5em;
}
.list_plan_4merit p {
	background: #f5596c;
	color: #fff;
	padding: 0.5em 0.25em;
	line-height: 1;
}
.list_plan_4merit figure {
	padding: 1.5em;
	border-top: none;
	border-right: solid 2px #f5596c;
	border-bottom: solid 2px #f5596c;
	border-left: solid 2px #f5596c;
}
.list_plan_4merit figure img {
	width: 100%;
	height: auto;
}
@media screen and (max-width:767px) {
	
	.list_plan_4merit i {
		display: block;
		margin-right: 0;
		margin-bottom: 0.5em;
		
		font-size: 80%;
	}
	.list_plan_4merit p {
		font-size: 80%;
		text-align: center;
	}
	.list_plan_4merit figure { padding: 0.25em; }
}

.table_plan_different {}

.list_plan_func {}
.list_plan_func li {
	display: table;
	margin-bottom: 1em;
}
.list_plan_func_image {
	background: #f5596c;
	color: #fff;
	
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	padding: 1em 0;
	
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	line-height: 1;
	width: 7em;
}
.list_plan_func_image i {
	font-size: 500%;
}
.list_plan_func_text {
	display: table-cell;
	vertical-align: top;
	padding-left: 1em;
}
.list_plan_func_head {
	font-weight: bold;
	color:  #f5596c;
}

.section_plan .box_btn {
	margin: 0 0 2em;
}

@media screen and (max-width:767px) {
	.list_plan_func li {
		display: block;
	}
	.list_plan_func_image {
		display: block;
		width: auto;
	}
	.list_plan_func_text {
		display: block;
		padding-left: 0;
		height: 4em;
	}
	.list_plan_func_head {}
	.list_plan_func_head + p {
		font-size: 80%;
	}
}





.list_float_2col > ul { overflow: hidden;}
.list_float_2col > ul > li { width:50%; padding: 0 0.5em 1em; float: left;}

@media screen and (max-width:767px) {
	.list_float_2col > ul { }
	.list_float_2col > ul > li { width:100%; padding: 0 0.5em 1em; float: inherit;}
}


/*lp.html*/
#content {
    margin-bottom: 0;
}
section { padding: 5.0em 0; }

.lp_title {
    margin-bottom: 1.75em;
    font-size: 28px;
    background: linear-gradient(90deg, #006eff 0%, #00a5ff 40%, #00cdff 100%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
    display: inline-block;
}
.lp_title.white {
    color: #fff;
    background: none;
    -webkit-background-clip: inherit;
    background-clip: inherit;
    -webkit-text-fill-color: inherit;
    text-fill-color: inherit;
}

.lp_text01 {
    font-size: 20px;
    line-height: 1.8em;
    text-align: left;
}
.lp_text02 {
    font-size: 16px;
    line-height: 1.8em;
    text-align: left;
}
.red { color: #ff3636; }

.marker {
    background: linear-gradient(transparent 50%, #00ceff 50%);
}

.fs_l { font-size: 1.25em; }

@media screen and (max-width:767px) {
    section { padding: 3em 2.5vw; }
    
    .lp_title {
        font-size: 5.0vw;
        margin-bottom: 1.0em;
    }
    
    .lp_text01 {
        font-size: 15px;
        line-height: 1.6em;
    }
    .lp_text02 {
        font-size: 13px;
        line-height: 1.6em;
    }
    
}

#lp_mv_pt {
    color: #fff;
    background-image: url(../images/lp_mv_back.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
#lp_mv_pt .lay_lqd { position: relative; }
#lp_mv_pt .lay_lqd:before { content: none; }
#lp_mv_pt .lay_lqd:after {
    display: inline-block;
    width: 25vw;
    height: 16vw;
    background: url(../images/lp_mv_point.png) no-repeat;
    background-size: contain;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 0;
}
#lp_mv_pt .outer {
    width: fit-content;
    /* text-align: center; */
}
#lp_mv_pt .title {
    font-size: 30px;
}
#lp_mv_pt .subtitle {
    width: fit-content;
    margin: 10px 0 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#lp_mv_pt .subtitle h3 {
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 10px;
}
#lp_mv_pt .subtitle figure {
}
@media screen and (max-width:767px) {
    
    #lp_mv_pt .lay_lqd:after { content: none; }
    
    #lp_mv_pt .outer {}

    #lp_mv_pt .title {
        font-size: 22px;
        line-height: 1.6em;
    }

    #lp_mv_pt .subtitle {
        align-items: flex-start;
    }
    #lp_mv_pt .subtitle h3 {
        font-size: 15px;
        text-align: left;
    }
    #lp_mv_pt .subtitle figure {
        width: 70%;
    }
    
}



#lp_feature_pt {}
#lp_feature_pt .outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 3.0em 3.5em;
}
#lp_feature_pt .item {
    width: calc((100% - 3.5em) / 2);
    display: flex;
    justify-content: flex-start;
    gap: 0 1.5em;
}
#lp_feature_pt .item figure {
    width: 25%;
}
#lp_feature_pt .item figure img {
    width: 100%;
    height: auto;
}

#lp_feature_pt .item .inner {
    width: calc(100% - (25% + 1.5em));
}
#lp_feature_pt .item h3 {
    font-size: 22px;
    line-height: 1.4em;
    font-feature-settings: "palt";
    letter-spacing: 0.07em;
    margin-bottom: 10px;
}
@media screen and (max-width:767px) {
    #lp_feature_pt .outer {
        flex-direction: column;
        gap: 1.5em 0;
    }
    #lp_feature_pt .item {
        width: 100%;
        gap: 0 1.0em;
    }
    #lp_feature_pt .item h3 {
        font-size: 15px;
    }
}


#lp_plan_pt {
    color: #fff;
}
#lp_plan_pt .lp_text02 {
    text-align: center;
}

#lp_plan_pt .title {
    font-size: 32px;
    line-height: 1.6em;
    text-align: center;
    font-feature-settings: "palt";
    letter-spacing: 0.07em;
    margin-bottom: 30px;
}

#lp_plan_pt .merit_list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 3em;
}
#lp_plan_pt .merit_list li {
    font-size: 18px;
    list-style-type: none;
    padding: 0.5em 1.0em 0.5em 3.0em;
    background: #fff;
    vertical-align: middle;
    color: #445fb3;
    border-radius: 0 8px 8px 0;
    position: relative;
}
#lp_plan_pt .merit_list li::before{ 
    content: "";
    display: block;
    position: absolute;
    top: 29%;
    left: 0.75em;
    width: 1em;
    height: 0.5em;
    border-left: 3px solid #445fb3;
    border-bottom: 3px solid #445fb3;
    transform: rotate(-45deg);
}

#lp_plan_pt .campain {
    background: #fff;
    border: 2px solid #009aff;
    text-align: center;
    width: fit-content;
    padding: 1em 2em;
    margin: 30px auto 0;
    border-radius: 12px;
}
#lp_plan_pt .campain_title {
    color: #445fb3;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6em;
    padding: 0.25em 0;
}
#lp_plan_pt .campain .inner {
    padding: 0 0;
    color: #333;
}
#lp_plan_pt .campain_lead {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6em;
}
@media screen and (max-width:767px) {
    #lp_plan_pt .title {
        font-size: 4.75vw;
        margin-bottom: 20px;
    }
    #lp_plan_pt .merit_list {
        gap: 0 1.5em;
    }
    #lp_plan_pt .merit_list li {
        font-size: 3.75vw;
    }
    
    #lp_plan_pt .campain {
        width: 100%;
        padding: 1em 0.75em;
        margin: 20px auto 0;
    }
    #lp_plan_pt .campain_title {
        font-size: 4.5vw;
    }
    #lp_plan_pt .campain_lead {
        font-size: 3.75vw;
    }
}


#lp_flow_pt .list {
    counter-reset: number 0;           /* number のカウンタを 0 にセット */
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 3em 3em;
}
#lp_flow_pt .item {
	width: 30.5%;
	text-align: center;
	padding: 2.5em 1.5em;
	background: #fff;
	border: 2px solid #009aff;
	border-radius: 12px;
	position: relative;
}
#lp_flow_pt .item::after {
	content: "";
    border-left: 15px solid #dedddd;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
	
	position: absolute;
    top: 50%;
    right: -2em;
    transform: translateY(-50%);
}
#lp_flow_pt .item:last-child::after { content: none; }
#lp_flow_pt .item figure {
    width: 100%;
    height: 95px;
	display: flex;
    align-items: center;
    justify-content: center;
}
#lp_flow_pt .item .title {
    margin: 20px 0 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#lp_flow_pt .item .title::before {
    counter-increment: number 1;      /* number カウンタを増加 */
    content: "0" counter(number);      /* 表示形式を指定 */
    margin-right: 0.25em;
    color: #009aff;
    font-size: 46px;
    line-height: 1.0em;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}
#lp_flow_pt .item .title h3 {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.0em;
}

@media screen and (max-width:767px) {
    #lp_flow_pt .list {
        flex-direction: column;
        gap: 2.0em 0;
    }
    #lp_flow_pt .item {
        width: 100%;
        padding: 1.0em 1.0em;
    }
    #lp_flow_pt .item::after {
        border-top: 15px solid #dedddd;
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        top: inherit;
        bottom: -3.25em;
        left: 50%;
        right: inherit;
        transform: translateX(-50%);
    }

    #lp_flow_pt .item figure {
        width: 28%;
        height: auto;
        margin: 0 auto;
        display: block;
    }
    #lp_flow_pt .item figure img {
        width: 100%;
        height: auto;
        object-fit: contain;
        display: block;
    }
    
    #lp_flow_pt .item .title::before {
        font-size: 2.5em;
    }
    #lp_flow_pt .item .title h3 {
        font-size: 1.5em;
    }
}


#lp_faq_pt .outer {
	width: 50%;
	margin: 20px auto;
}
#lp_faq_pt .qa_q {
	display: flex;
	padding: 10px 0;
}
#lp_faq_pt  .qa_q span {
	font-size: 30px;
    font-family: "Hiragino Kaku Gothic W8";
	margin-right: 10px;
	line-height: 20px;
	color: #000;
}
#lp_faq_pt  .qa_q p {
	font-size: 18px;
	font-weight: bold;
	line-height: 28px;
}
#lp_faq_pt  .qa_a {
	display: flex;
	padding: 10px 0 10px 30px;
}
#lp_faq_pt  .qa_a span {
	font-size: 30px;
    font-family: "Hiragino Kaku Gothic W8";
	margin-right: 10px;
	line-height: 20px;
	color: #006eff;
}
@media screen and (max-width:767px) {
    #lp_faq_pt .outer {
        width: 100%;
    }
    #lp_faq_pt .qa_q p {
        font-size: 16px;
        line-height: 1.8em;
    }
    
}



.compare_tb {
	width: 90%;
    max-width: 1000px;
    margin: 30px auto 0;
}
.compare_tb tr th,
.compare_tb tr td {
    padding: 5px;
    background: #fff;
}
.compare_tb tr th {
    font-size: 18px;
    background: #eeeeee;
}
.compare_tb tr td {
	text-align: center;
	font-weight: bold;
	font-size: 15px;
    line-height: 1.75em;
	white-space: nowrap;
}
.compare_tb tr td:first-of-type { width: 180px; }
.compare_tb tr td:nth-of-type(2),
.compare_tb tr td:nth-of-type(3),
.compare_tb tr td:nth-of-type(4) {
    width: calc((100% - 180px) / 3);
}
.compare_tb tr .bk_blue {
	background-color: #009aff;
	color: #fff;
	font-size: 18px;
}
@media screen and (max-width:767px) {
    .sp_scroll{
        overflow: auto;　　　　/*tableをスクロールさせる*/
        white-space: nowrap;　　/*tableのセル内にある文字の折り返しを禁止*/
    }
    .sp_scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
         height: 5px;
    }
    .sp_scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
         background: #F1F1F1;
    }
    .sp_scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
         background: #BCBCBC;
    }
    
    .compare_tb tr th,
    .compare_tb tr td {  white-space: nowrap; }
    .compare_tb tr th {
        font-size: 14px;
    }
    .compare_tb tr td {
        font-size: 14px;
    }
    .compare_tb tr .bk_blue {
        font-size: 16px;
    }
}






