@charset "UTF-8";

@import url(../roof_radical/style.css);
@import url(../roof_hybrid/style.css);
@import url(../hybrid/style.css);

section#mv_wrap div.contest {
    position: relative;
    width: 100%;
    height: 240px;
    border-bottom: 1px solid rgb(193, 193, 193);
    background: none;
}

section#mv_wrap div.contest div.title_area {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

section#mv_wrap div.contest div.title_area h2 {
    margin-bottom: 16px;
    font-size: 45px;
    letter-spacing: 0.05em;
    color: rgb(51, 51, 51);
}

section#mv_wrap div.contest div.title_area p {
    font-weight: 500;
    color: rgb(187, 41, 41);
    font-size: 20px;
}

@media screen and (max-width: 1200px) {
    section#mv_wrap div.contest div.title_area h2 {
        font-size: calc(3.75vw);
        margin-bottom: 3px;
    }

    section#mv_wrap div.contest div.title_area p {
        font-size: calc(1.66667vw);
    }
}

@media only screen and (max-width: 767px) {
    section#mv_wrap div.contest div.title_area h2 {
        font-size: 25px;
        margin-bottom: 10px;
        line-height: 1;
    }

    section#mv_wrap div.contest div.title_area p {
        font-size: 13px;
    }
}

#mv_wrap .contest .title_area {
    margin-bottom: 40px;
}

#mv_wrap .contest .txt01 {
    text-align: center;
    width: 90%;
    margin: 0px auto;
    letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {
    section#mv_wrap div.contest {
        height: 120px;
    }

    #mv_wrap .contest .title_area {
        margin-bottom: 20px;
    }

    #mv_wrap .contest .txt01 {
        font-size: calc(2.4vw);
    }
}

.sttl {
    text-align: center;
    font-size: 45px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.35;
    margin-bottom: 80px;
}

.roof .sttl {
    padding: 0px 0px 0px;
}

.sttl span {
    position: relative;
}

.sttl span::before {
    content: "";
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    left: -1.8em;
}

@media only screen and (max-width: 767px) {
    .sttl {
        font-size: 25px;
        margin-bottom: 40px;
        margin-left: 1em;
        padding: 0px 0px 0px;
    }

    .roof .sttl {
        padding: 0px 0px 0px;
    }

    .sttl span {
    }

    .sttl span::before {
        top: 50%;
        transform: translateY(-50%);
        left: -1.8em;
    }

    .sttl span::after {
        left: 50%;
        bottom: -10px;
        width: 50px;
    }
}

.range .sttl span::before {
    content: "";
    display: inline-block;
    background: url("../../../images/menu/icon_range.png") 0% 0% / cover no-repeat;
    width: 66px;
    height: 47.34px;
    left: -2.1em;
    margin: 0px 30px 0px 0px;
}

@media only screen and (max-width: 767px) {
    .range .sttl span::before {
        width: 45px;
        height: 33px;
        left: -2.5em;
    }

}

.sec_intro {
    max-width: 1000px;
    margin: 0px auto 130px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 80px 0px 0px;
}

.sec_intro .img {
    width: 22.8%;
}

.sec_fukidashi {
    position: relative;
    width: 70%;
}

.sec_fukidashi .fukidashi {
    position: relative;
    display: inline-block;
    padding: 40px 0px 35px;
    background: rgb(255, 255, 255);
    border-radius: 15px;
    border: 2px solid rgb(220, 220, 220);
    z-index: 1;
    width: 100%;
}

.sec_fukidashi .fukidashi::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -20px;
    border-width: 20px 20px 20px 50px;
    border-style: solid;
    border-color: transparent transparent transparent rgb(220, 220, 220);
    border-image: initial;
}

.sec_fukidashi .fukidashi::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -18px;
    border-width: 18px 18px 18px 46px;
    border-style: solid;
    border-color: transparent transparent transparent rgb(255, 255, 255);
    border-image: initial;
}

.sec_fukidashi .fukidashi p {
    margin: 0px auto;
    padding: 0px;
    max-width: 575px;
    line-height: 1.777;
}

.sec_fukidashi .fukidashi .copy {
    font-size: 30px;
    font-weight: bold;
    color: rgb(187, 41, 41);
    margin: 0px auto 10px;
}

.sec_fukidashi .fukidashi_shadow {
    position: absolute;
    display: inline-block;
    padding: 40px 0px 35px;
    width: 100%;
    background: rgb(220, 220, 220);
    border-radius: 15px;
    z-index: 0;
    top: 8px;
    left: 8px;
    height: 100%;
}

.sec_fukidashi .fukidashi_shadow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -18px;
    border-width: 18px 18px 18px 40px;
    border-style: solid;
    border-color: transparent transparent transparent rgb(220, 220, 220);
    border-image: initial;
}

@media only screen and (max-width: 767px) {
    .sec_intro {
        margin: 0px 5% 60px;
        display: block;
        padding: 30px 0px 0px;
    }

    .sec_intro .img {
        width: 30%;
        margin: 0px auto;
    }

    .sec_fukidashi {
        width: auto;
        margin: 0px 0px 35px;
    }

    .sec_fukidashi .fukidashi {
        padding: 20px 0px 15px;
    }

    .sec_fukidashi .fukidashi::before {
        content: "";
        position: absolute;
        top: auto;
        left: 50%;
        margin-left: -20px;
        border-width: 20px;
        border-style: solid;
        border-color: rgb(220, 220, 220) transparent transparent;
        border-image: initial;
        bottom: -40px;
        margin-top: 0px;
    }

    .sec_fukidashi .fukidashi::after {
        content: "";
        position: absolute;
        top: auto;
        left: 50%;
        margin-left: -20px;
        border-width: 20px;
        border-style: solid;
        border-color: rgb(255, 255, 255) transparent transparent;
        border-image: initial;
        bottom: -35px;
        margin-top: 0px;
    }

    .sec_fukidashi .fukidashi .copy {
        font-size: 15px;
        margin: 0px 5% 10px;
    }

    .sec_fukidashi .fukidashi p {
        max-width: 100%;
        margin: 0px 5%;
    }

    .sec_fukidashi .fukidashi_shadow {
        padding: 20px 0px 15px;
        top: 4px;
        left: 4px;
    }

    .sec_fukidashi .fukidashi_shadow::before {
        display: none;
    }
}

.sec_flow {
    max-width: 980px;
    margin: 0px auto;
    padding: 0px 0px 250px;
}

.sec_flow .flow:first-child {
    align-items: flex-start;
}

.sec_flow .flow {
    display: flex;
    justify-content: space-between;
    position: relative;
    align-items: center;
}

.sec_flow .flow.last {
    padding: 45px 0px 0px;
}

.sec_flow .flow::before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 100%;
    background-color: rgb(187, 41, 41);
    position: absolute;
    top: -13px;
    left: 8.1632%;
    z-index: -1;
}

.sec_flow .flow:first-child::before {
    top: 50%;
}

.sec_flow .flow .sttl {
    width: 160px;
    height: 160px;
    border: 3px solid rgb(187, 41, 41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: rgb(187, 41, 41);
    font-weight: bold;
    font-size: 21px;
    background: rgb(255, 255, 255);
    margin: 0px;
    padding: 0px;
}

.sec_flow .flow .sttl span::before {
    display: none;
}

.sec_flow .flow .sttl span {
    font-size: 12px;
}

.sec_flow .flow .sttl.sttl1 {
    border: 3px solid rgb(255, 234, 230);
    background: rgb(255, 234, 230);
}

.sec_flow .flow .sttl.sttl2 {
    background: rgb(187, 41, 41);
    color: rgb(255, 255, 255);
}

.sec_flow .flow .sttl.sttl3 {
    color: rgb(255, 255, 255);
    background: linear-gradient(0deg, rgb(136, 0, 0) 0%, rgb(242, 96, 96) 100%);
    border: none;
}

.sec_flow .flow .content {
    width: 74.69%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgb(188, 106, 106);
    padding: 45px 0px;
}

.sec_flow .flow.last .content {
    border-bottom: none;
    padding: 0px;
}

.sec_flow .flow:first-child .content {
    padding: 45px 0px 65px;
}

.sec_flow .flow .content:first-child {
    padding-top: 20px;
}

.sec_flow .flow .content .img {
    width: 35.251%;
}

.sec_flow .flow .content .text {
    width: 55.327%;
}

.sec_flow .flow .content .text p.caption_flow {
    font-size: 10px;
    letter-spacing: 0.1em;
    line-height: 1.7;
    width: fit-content;
    margin: 30px 0 0 auto;
}

.sec_flow .flow .content .text span.caption {
    font-size: 12px;
    display: block;
    position: absolute;
    bottom: 45px;
    right: 0px;
}

.sec_flow .content .sec_point {
    background-color: rgb(255, 234, 230);
    width: 78%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    padding: 20px 0px;
}

.sec_flow .content .sec_point2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    padding: 0px;
    width: 100%;
}

.sec_flow .content .sec_point .st {
    position: absolute;
    border: 2px solid rgb(187, 41, 41);
    background-color: rgb(255, 255, 255);
    text-align: center;
    color: rgb(187, 41, 41);
    font-weight: bold;
    font-size: 12px;
    top: -10px;
    left: 20px;
    border-radius: 50px;
    max-width: 95px;
    width: 100%;
    padding: 3px 0px;
    font-family: "Jost", sans-serif;
}
.sec_flow .content .sec_point .st2 {
    position: absolute;
    background-color: #333;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    font-size: 12px;
    top: -10px;
    left: 20px;
    max-width: 95px;
    width: 100%;
    padding: 3px 0px;
    font-family: "Jost", sans-serif;
}
.sec_flow .content .sec_point .inn {
    max-width: 275px;
    margin: 0px auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sec_flow .content .sec_point2 .inn {
    max-width: 100%;
    width: 100%;
    margin: 0px auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sec_flow .content .sec_point .inn .copy {
    width: 48%;
    color: rgb(187, 41, 41);
    font-size: 20px;
    text-align: center;
    font-weight: bold;
}

.sec_flow .content .sec_point2 .inn .copy {
    width: 100%;
    text-align: left;
    margin: 0px 0px 10px;
}

.sec_flow .content .sec_point .inn .copy span {
    font-size: 15px;
    display: inline;
}

.sec_flow .content .sec_point .inn .img {
    width: 48%;
}

.sec_flow .content .sec_point2 .inn .img {
    width: 32%;
}

.sec_flow .content .sec_point .inn .caption {
    font-size: 10px;
    width: 100%;
    margin: 5px 0px 0px;
    text-align: right;
}

.sec_flow .content .sec_point2 .inn .text {
    width: 60.93%;
    margin: 0px 0px 0px 3%;
}

@media only screen and (max-width: 767px) {
    .sec_flow {
        margin: 0px 5%;
        padding: 0px 0px 40px;
    }

    .sec_flow .flow:first-child {
    }

    .sec_flow .flow {
        display: block;
    }

    .sec_flow .flow.last {
        padding: 0px;
    }

    .sec_flow .flow::before {
        content: "";
        width: 1px;
        height: 100%;
        background-color: rgb(187, 41, 41);
        position: absolute;
        top: 0px;
        left: 8.1632%;
        z-index: -1;
        display: none;
    }

    .sec_flow .flow:first-child::before {
    }

    .sec_flow .flow .sttl {
        width: auto;
        height: auto;
        border: 2px solid rgb(187, 41, 41);
        border-radius: 0px;
        display: flex;
        font-size: 16px;
        padding: 5px 5%;
    }

    .sec_flow .flow .sttl.sttl1 {
    }

    .sec_flow .flow .sttl.sttl2 {
    }

    .sec_flow .flow .sttl.sttl3 {
    }

    .sec_flow .flow .content {
        width: auto;
        border-bottom: none;
        padding: 20px 0px 40px;
        align-items: flex-start;
    }

    .sec_flow .flow.last .content {
        padding: 20px 0px 40px;
    }

    .sec_flow .flow.last .content .img {
        width: auto;
    }

    .sec_flow .flow .content.po {
        display: block;
    }

    .sec_flow .flow:first-child .content {
        padding: 10px 0px 40px;
    }

    .sec_flow .flow .content:first-child {
        padding-top: 20px;
    }

    .sec_flow .flow .content .img {
        width: 40%;
    }

    .sec_flow .flow:first-child .content .img {
        display:none;
    }

    .sec_flow .flow .content.po .img {
        width: auto;
        margin: 0px 0px 25px;
    }

    .sec_flow .flow .content .text {
        width: 55%;
    }

    .sec_flow .flow .content .text p.caption_flow {
        width: 100%;
        margin-top: 15px;
    }

    .sec_flow .flow:first-child .content .text {
        width: 100%;
    }

    .sec_flow .flow .content.po .text {
        width: auto;
    }

    .sec_flow .flow .content .text span.caption {
        font-size: 10px;
        position: static;
        margin: 5px 0px 0px;
        text-align: left;
    }

    .sec_flow .content .sec_point {
        width: auto;
        padding: 15px 0px;
    }

    .sec_flow .content .sec_point2 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        position: relative;
        padding: 0px;
        width: 100%;
    }

    .sec_flow .content .sec_point .st {
        font-size: 10px;
        max-width: 105px;
        padding: 2px 0px;
    }

    .sec_flow .content .sec_point .inn {
        max-width: 100%;
        margin: 0px 5%;
    }

    .sec_flow .content .sec_point2 .inn {
        display: block;
        padding: 30px 0px;
    }

    .sec_flow .content .sec_point .inn .copy {
        width: 48%;
        font-size: 16px;
    }

    .sec_flow .content .sec_point2 .inn .copy {
        width: 100%;
        text-align: left;
        margin: 0px 0px 10px;
    }

    .sec_flow .content .sec_point .inn .copy span {
        font-size: 15px;
    }

    .sec_flow .content .sec_point .inn .img {
        width: 48%;
        margin: 0px;
    }

    .sec_flow .content .sec_point2 .inn .img {
        width: auto;
        margin: 15px 0px 0px;
    }

    .sec_flow .content .sec_point .inn .caption {
    }

    .sec_flow .content .sec_point2 .inn .text {
        width: auto;
        margin: 0px;
    }
}



/*=======================================
　　ここから、プロモ追加分
=======================================*/

.sec_intro {
    width: 90%;
}

.sec_flow {
    width: 90%;
}

.wrap {
	width: 90%;
    max-width: 1120px;
    margin: 0px auto 120px;
}

.roof .sttl {
    padding: 0px 0px 0px 90px;
}

.flexBox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 80px;
}

.flexBox.flexReserve {
    flex-flow: row-reverse;
}

.toc_widget {
    padding: 70px 80px 50px;
	margin-bottom: 120px;
	width: 90%;
}

.toc_widget ul li {
    list-style: disc!important;
	padding: 0.2em 0 !important;
    text-indent: 0em;
}

@media only screen and (max-width: 767px){
	
	.wrap {
		margin: 0px auto 60px;
	}	
	
    .toc_widget {
        margin: 0 auto 60px;
        padding: 40px 30px 40px 50px;
    }	
	
	.roof .sttl {
		padding: 0px 0px 0px 0;
	}
	
	
}

@media only screen and (min-width: 768px) and (max-width: 1024px){
	.sec_fukidashi .fukidashi {
		padding: 40px 25px 35px;
	}
	
	.sttl {
		font-size: 4.5vw;
	}
	
	.sttl span {
		text-align: left;
		display: inline-block;
	}
	
	.range .sttl span::before {
		left: -2.5em;
	}
	
	.sp.tb {
		display: block!important;
	}
	
	.sec_bnr .inner {
		width: 90%;
	}
	
	
}


/*=======================================
　.sec_material
=======================================*/

.sec_material .flexBox .textArea {
	width: 48%;
}

.sec_material .flexBox .textArea h4 {
	font-size: 30px;
    font-weight: 700;
    color: var(--main_color);
    margin-bottom: 15px;
}

.sec_material .flexBox .photoArea {
	width: 48%;
}

.sec_material .subText {
	margin-bottom: 100px;
}

.sec_material .needTable {
	margin-bottom: 120px;
}

.sec_material .needTable p {
	margin-bottom: 20px;
}

.sec_material .needTable table {
	width: 100%;
}

.sec_material .needTable table,
.sec_material .needTable table th {
	border: 1px solid #707070;
}
.sec_material .needTable table td {
	border-right: 1px solid #707070;
	padding: 0 4%;
}
.sec_material .needTable table td,
.sec_material .needTable table th {
	letter-spacing: 0.05em;
	vertical-align: middle;
	padding: 15px 3%;
}
.sec_material .needTable table th {
	background: #F5F5F5;
	font-weight: 700;
	font-size: 15px;
}

.sec_material .needTable table td {
    font-weight: 400;
    font-size: 15px;
    border-bottom: 1px solid #707070;
}

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

	.sec_material .subText {
		margin-bottom: 50px;
		line-height: 1.8;
	}
	
	.flexBox {
		margin-bottom: 30px;
	}
	
	.flexBox.flexReserve {
		flex-wrap: wrap;
	}
	
	.sec_material .flexBox .textArea h4 {
		font-size: 24px;
		margin-bottom: 20px;
	}	
	
	.sec_material .flexBox .textArea {
		width: 100%;
		margin-bottom: 20px;
	}
	
	.sec_material .flexBox .photoArea {
		width: 100%;
	}	
	
	.sec_material .needTable {
		margin-bottom: 60px;
	}	
	
	.sec_material .needTable table td, .sec_material .needTable table th {
		display: block;
	}	
	
	.sec_material .needTable table {
		border: none;
		border-bottom: 1px solid #707070;
	}	
	
	.sec_material .needTable table td {
		border-right: 1px solid #707070;
		border-left: 1px solid #707070;
		border-bottom: none;
	}	
	
	
}

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

	#radical #paint01 h4,#radical #paint02 h4,#radical #paint03 h4 {
		flex-wrap: wrap;
		font-size: 4.8vw;
	}	
	
	#radical #paint01 h4,#radical #paint02 h4 span,#radical #paint03 h4 span {
		width: 100%;
		font-size: 4.8vw;
	}
	
	.sec_material .needTable table th {
		width: 30%;
	}
	
	
	
}


/*=======================================
　.sec_paint
=======================================*/

.sec_paint .sttl span::before {
    background: none;
}

.sec_paint .page_title .contest {
	position: relative;
	width: 100%;
	height: 240px;
}

.sec_paint .page_title .contest div.title_area {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
	width: 100%;
}

.sec_paint .page_title .contest div.title_area h2 {
	margin-bottom: 16px;
	font-size: 45px;
	letter-spacing: 0.05em;
}

.sec_paint .page_title .contest div.title_area p {
	font-weight: 500;
	color: #BB2929;
	font-size: 20px;
}

#radical h4:nth-of-type(1) {
    flex-wrap: wrap;
}


.sec_paint .page_title .contest .title_area {
	margin-bottom: 40px;
}

.sec_paint #radical #paint01 h5.copy {
    color: #EF6D16;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 40px;
	text-align: center;
}

#radical #paint01 .sec_intro,#radical #paint02 .sec_intro,#paint03 #fluorine .sec_intro {
    max-width: 1120px;
	padding: 0 0px 0px;
}

#radical #paint01 .sec_explanation .sec_column {
    align-items: flex-start;
}

#radical #paint01 .sec_explanation .column {
    margin: 0 0 0px;
}

#radical #paint02 .sec_column {
    gap: 0; 
	align-items: flex-start;
}

#radical #paint02 .sec_column {
    gap: 0; 
}

.sec_paint #radical #paint02 h5.copy {
    font-size: 30px;
    margin-bottom: 85px;
    text-align: center;
    font-weight: bold;
}

#radical #paint03 .inner {
    width: 100%;
}

#radical #paint03 #fluorine .sec_explanation .sec_column {
    align-items: flex-start;
}

#radical #paint03 .sec_explanation .intro {
	flex-wrap: wrap;
}

#radical #paint03 .sec_explanation .intro .text {
    width: 100%;
}

#paint03 #fluorine .sec_explanation .intro .img {
    width: auto;
}

#paint03 #fluorine .sec_explanation .column .sttl {
    padding: 0;
}

@media only screen and (max-width: 767px){
	
	.sec_paint .subText {
		line-height: 1.8;
	}
		
	.sec_paint .page_title .contest div.title_area h2 {
		font-size: 25px;
        margin-bottom: 10px;
        line-height: 1.4;
	}	

	.sec_paint .page_title .contest div.title_area p {
		font-size: 13px;
	}	
	
	.sec_paint .page_title .contest {
		height: 160px;
	}
	
	#radical #paint01 .sec_intro, #radical #paint02 .sec_intro, #paint03 #fluorine .sec_intro {
		width: 100%;
	}
	
	#radical .sec_feature .sttl {
        margin-left: 0;
    }	
	
	.sec_paint #radical #paint01 h5.copy {
		font-size: 22px;
	}	
	
	#radical #paint01 .sec_explanation .column {
		margin: 0 0 30px;
	}	
	
	#radical #paint01 .sec_infor .inner {
		width: 100%;
	}
	
	#inorganic {
        margin-bottom: 0;
    }
	
	.sec_paint #radical #paint02 h5.copy {
		font-size: 22px;
		margin-bottom: 40px;
	}	
	
	#fluorine .sec_explanation .intro .text .copy {
        text-align: left;
    }	
	
	

	
	
	
	
	
	
	
}

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









/*=======================================
　.sec_plan
=======================================*/

.sec_plan .sec_intro {
    max-width: 1120px;
	padding-top: 0;
}

.sec_plan .sec_intro h4.subTitle {
    font-size: 26px;
    line-height: 1.8;
    margin-bottom: 80px;
}

.sec_plan .sec_intro h4.subTitle .textBig {
    font-size: 42px;
}

.sec_plan .sec_intro h5.standard {
    font-size: 40px;
    margin-bottom: 30px;
    color: #ffffff;
    background: #e17a00;
    line-height: 1;
    padding: 10px 0 15px;
}

.sec_plan .sec_intro .planPrice {
	font-size: 26px;
	margin-bottom: 50px;
	font-weight: 600;
}

.sec_plan .sec_intro .planPrice .textBig {
	font-size: 60px;
	font-weight: 800;
}

.sec_plan .sec_intro .planPrice sup {
	font-size: 14px;
	vertical-align: super;
}

.sec_plan .sec_intro .annotation {
	font-size: 12px;
	line-height: 1.6;
	margin-bottom: 60px;
}

.sec_plan .sec_intro .annotation a {
	font-size: 12px;
	line-height: 1.6;
	text-decoration: underline;
}

.sec_plan .sec_intro .inner,.sec_plan .sec_intro .imgBox {
    width: 100%;
}

.sec_plan .sec_intro .imgBox h5 {
    font-size: 30px;
    margin-bottom: 50px;
    text-align: center;
    font-weight: bold;
}

.sec_plan .sec_intro .imgBox .img_cap {
    font-size: 14px;
    text-align: right;
}

@media only screen and (max-width: 767px){
	
    .sec_plan {
        margin-bottom: 60px;
    }	
	
	.sec_plan .sec_intro {
		margin: 0 auto;
	}	
	
    .sec_plan .sec_intro .content.inner {
        padding-top: 0;
    }
	
	.sec_plan .sec_intro h4.subTitle {
		font-size: 18px;
		line-height: 1.6;
		margin-bottom: 40px;
	}	

	.sec_plan .sec_intro h4.subTitle .textBig {
		font-size: 26px;
	}	
	
	.sec_plan .sec_intro h5.standard {
		font-size: 20px;
		margin-bottom: 10px;
		padding: 8px 0 10px;
	}	
	
	.sec_plan .sec_intro .planPrice {
		font-size: 18px;
		margin-bottom: 30px;
		line-height: 1.3;
	}	
	
	.sec_plan .sec_intro .planPrice .textBig {
		font-size: 38px;
	}	
	
	.sec_plan .sec_intro .content.inner .flex_area {
		margin-bottom: 40px;
	}
	
	.sec_intro .content.inner .flex_area .img_area img {
		margin-bottom: 20px;
	}
	
	.sec_plan .sec_intro .annotation {
		margin-bottom: 40px;
	}
	
	.sec_plan .sec_intro .imgBox .img_cap {
		font-size: 11px;
		text-align: left;
	}	
	
	.sec_bnr .inner {
		width: 90%;
	}	
	
}

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




/*=======================================
　.sec_voice
=======================================*/
.sec_voice h5 {
	background: #B62525;
    font-weight: 700;
    font-size: 24px;
    color: #fff;
    padding: 0.5em;
    text-align: center;
    margin-bottom: 40px;
}

.beforeAfter {
	margin-bottom: 45px;
}

.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 15px;
	vertical-align: middle;
	text-decoration: none;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.arrow::before {
    left: 10px;
    box-sizing: border-box;
    width: 50px;
    height: 50px;
    border: 25px solid transparent;
    border-left: 25px solid #b62525;
}

.arrow::after {
    left: -15px;
    width: 50px;
    height: 20px;
    border-left: 25px solid #b62525;
}

.beforeArea,.afterArea {
	position: relative;
}

.beforeArea {
    width: 38%;
}

.afterArea {
    width: 54%;
}

.beforeArea .text, .afterArea .text {
    background: #b62525;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 800;
    padding: 7px 20px 9px;
    font-size: 16px;
	letter-spacing: 1px;
}

@media only screen and (max-width: 767px){
	
	.sec_voice h5 {
		font-weight: 600;
		font-size: 18px;
		padding: 0.4em;
		margin-bottom: 25px;
	}	
	
	.beforeArea {
		width: 80%;
		margin: 0 auto 10px;
	}
	
	.beforeArea .text, .afterArea .text {
		padding: 5px 18px 7px;
		font-size: 14px;
	}	

	.arrow {
		width: 100%;
		padding: 20px 0;
		margin-bottom: 10px;
		text-align: center;
	}
	
	.arrow::before {
		left: 50%;
		top: 40px;
		transform: translateX(-50%);
		border-top: 25px solid #b62525;
		border-left: 25px solid transparent;
	}	
		
	.arrow::after {
		left: 50%;
		top: -20px;
		width: 0;
		transform: translateX(-50%);
		border-left: 20px solid #b62525;
	}	

	.afterArea {
		width: 100%;
	}	


	
	
	

	
	
}

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



/*=======================================
　SEO対策
=======================================*/


h3.bgRed {
    width: 100%;
    text-align: center;
    font-size: 40px;
    background: #b62525;
    color: #fff;
    padding: 20px 0;
    margin-bottom: 100px;
}

h3.bgRed span.small {
    font-size: 30px;
}

h3.bgRed span.wide {
    font-size: 60px;
}

.movei_wrap {
    margin-bottom: 180px;
}

.movei_wrap .text {
    text-align: center;
    margin-bottom: 100px;
}

.movei_wrap ul {
    justify-content: space-between;
}

.movei_wrap ul li {
    width: 48.5%;
}

.movei_wrap ul li .movie_area {
    width: 100%;
    margin-bottom: 10px;
}

.movei_wrap ul li .movie_title {
    text-align: center;
    font-weight: 600;
}

.faq_wrap .accordion {
    margin: 0 auto 50px;
}

.accordion {
	margin: 0 auto 200px;
}

.toggle {
	display: none;
}

.faq {
	position: relative;
	margin-bottom: 20px;
}

.faq:last-child {
	margin-bottom: 0;
}

.question,.anser {
	transform: translateZ(0);
	transition: all 0.3s;
}

.question {
    padding: 20px 0 20px 25px;
    display: block;
    color: #000;
    background: #F5F5F5;
}

.question p {
	padding-left: 40px;
	position: relative;
	line-height: 1.8;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 3px;
}

.question p:before {
	content:"Q";
    font-size: 27px;
    padding-right: 15px;
    color: #c30a01;
	font-family: "Noto Sans", sans-serif;
	font-weight: 700;
	position: absolute;
	top: -6px;
	left: 2px;
}

.anser a {
	text-decoration: underline;
}

.rightMark {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    background: #bb2929;
    width: 40px;
    height: 40px;
    border-radius: 50px;
}

.rightMark:after,.rightMark:before {
	content: "";
	position: absolute;
	right: 1.25rem;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 2px;
	height: 0.75rem;
	background-color: #fff;
	transition: all 0.3s;
}

.rightMark:after {
	transform: rotate(90deg);
}

.anser div {
	margin: 0;
	padding: 20px 25px;
	line-height: 1.8;
}

.anser div p {
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 3px;
	position: relative;
	padding-left: 40px;
}

.anser div p:before {
	content:"A";
    font-size: 27px;
    padding-right: 15px;
    color: #c30a01;
	font-family: "Noto Sans", sans-serif;
	font-weight: 700;
	position: absolute;
	top: -6px;
	left: 2px;
}

.faq_wrap .contact_area {
    background: #F5F5F5;
    width: 96%;
    max-width: 850px;
    margin: 0 auto 180px;
    padding: 60px 60px 60px;
    text-align: center;
}

.faq_wrap .contact_area .text {
    margin-bottom: 40px;
}

.faq_wrap .contact_area .btn01 {
    margin: 0 auto;
}



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

	h3.bgRed {
        font-size: 28px;
        padding: 0 0 15px;
        margin-bottom: 50px;
    }
	
	h3.bgRed.strengths_title {
        font-size: 20px;
    }
	
	h3.bgRed span.small {
		font-size: 15px;
	}	
	
	h3.bgRed span.wide {
		font-size: 28px;
	}	
    
    .movei_wrap {
        margin-bottom: 80px;
    }

    .movei_wrap .text {
        margin-bottom: 50px;
        font-size: 15px;
    }    
    
    .movei_wrap ul li {
        width: 100%;
        margin-bottom: 40px;
    }
    
    .accordion {
		margin: 0 auto 80px;
	}
	
	.question {
		padding: 10px 40px 10px 10px;
		
	}
	
	.question p {
		font-size: 16px;
		padding-left: 30px;
		letter-spacing: 2px;
	}
	
	.question p:before {
		font-size: 22px;
		top: -6px;
		left: 0;
	}

	.anser div {
		padding: 10px 10px;
	}
	
	.anser div p {
		font-size: 15px;
		padding-left: 30px;
		letter-spacing: 2px;
	}
	
	.anser div p:before {
		top: -5px;
		font-size: 22px;
	}	
	
    .faq_wrap .contact_area {
        width: 100%;
        margin: 0 auto 80px;
        padding: 30px 30px 30px;
    }    
    
    .faq_wrap .contact_area .text {
        margin-bottom: 30px;
    }
    

    .btn01 a {
        padding: 0 3em 0 1.5em;
        width: 100%;
    }    
    
    
    
    

}

