/* CSS Document */

@media (min-width:751px){
	/*#mv { background: url(../images/mv.jpg) center center no-repeat; background-size: cover; }
	#mv h2 { background: url(../images/ttl.png) center center no-repeat; }*/


	#p1 {
		display: none;
	}

/* common  */
	h3.ch3_3 { font-size: 42px; text-align: center; line-height: 1.1; position: relative; z-index: 10; margin-bottom: 15px; }
	h3.ch3_3 span { font-size: 22px; position: relative; display: inline-block; margin-right: 10px; }
	h3.ch3_3 span:before { content: "―"; padding-right: 5px; }
	h3.ch3_3 span:after { content: "―"; padding-left: 5px; }

	h4.ch4_3 { font-size: 22px; line-height: 0.8; margin: 20px 0; text-align: center; position: relative; }
	h4.ch4_3:before { content: ""; width: 100%; height: 1px; background: #3d4856; position: absolute;
		left: 0; top:50%; }
	h4.ch4_3 span { display: inline-block; font-size: 24px; letter-spacing: 2.4px; padding: 0 0.8em; background: #ffffff; position: relative;  }

	.b_radius_parents {
		text-align: center;
		margin-bottom: 40px;
	}
	.b_radius20 {
		display: inline-block;
		font-size: 20px;
		padding: 10px 25px;
		line-height: 1;
		border-radius: 20px;
		border: 1px solid #3D4856;
	}



/* #p2 */
	/*.punit .mainw { padding-top: 160px; margin-top: -50px; }*/
	.punit .w1200 { padding-top: 160px; margin-top: -50px; }
	.punit { position: relative; padding-bottom: 180px; }
	.punit:before { content: ""; width: 100%; height: 435px; position: absolute; z-index: -1; left: 0; top:80px;
		background: #edf1f7; }
	.punit h3.ch3_2,.punit .planimg { position: relative; }
	.punit .planimg { margin-bottom: 50px; }
	.punit .planprice { display: flex; border: #dbe3f1 35px solid; background: #ffffff; align-items:center;
		padding: 38px 0; margin-bottom: 110px; }
	.punit .planprice h4 { font-size: 42px; font-style: italic; width: 375px; text-align: center; }
	.punit .planprice .m_price { display: flex; align-items:center; }
	.punit .planprice .m_price .pricelabel { width: 150px; height: 40px; display: block; 
		text-align: center; background: #d1dbe8; line-height: 40px; margin-right: 20px; }
	.punit .planprice .m_price .priceinfo { color: #be4c37; font-size: 58px; font-style: italic;
		display: block; margin-right: 10px; }
	.punit .planprice .m_price .priceinfo span { font-size: 30px; }
	.punit .planprice .plantxt { font-size: 16px; border-top: #3d4856 1px dotted; margin-top: 15px;
		padding-top: 15px; }
	.punit .plist { display: flex; flex-wrap:wrap;/* justify-content:space-between;*/ }
	.punit .plist li { width: 235px; margin-right: 15px; margin-bottom: 25px; }
	.punit .plist li:nth-child(4n) { margin-right: 0; }
	.punit .plist li .img { border: #d1dbe8 1px solid; margin-bottom: 20px; }
	.punit .plist li p { text-align: center; font-size: 16px; }
	.punit .txtul { display: flex; }
	.punit .txtul li { padding-right: 60px; }
	.punit .txtul li:before { content: "●"; }

	.punit .plandetail h4.ch4_3  { margin-bottom: 55px; }
	.punit .plandetail h4.ch4_3 span { font-size: 30px; }

	.equipment { justify-content: center; margin-bottom: 90px; }
	.equipment .equipment_b { width: 585px; }
	.equipment .equipment_b:nth-child(odd) { margin-right: 15px; }
	.equipment .equipment_b:nth-child(even) { margin-left: 15px; }

	.plandetail h5 { text-align: center; font-size: 18px; margin-bottom: 50px; }
	.plandetail h5 span { border-bottom: 2px dotted #3D4856; padding-bottom: 10px; }
	.o_option { flex-wrap: wrap; margin-bottom: 100px; }
	.o_option li { width: 15.917%; margin-right: 0.75%; margin-bottom: 25px; }
	.o_option li:nth-child(6n); { margin-right: 0; }

	.o_cost { border-bottom: 1px solid #3D4856; align-items: center; padding-bottom: 25px; margin-bottom: 25px; }
	.o_cost dt { text-align: center; }
	.o_cost dt span { display: flex; width: 374px; height: 38px; align-items: center; justify-content: center;
	background: url(../images/bg_costmidashi.svg) center center no-repeat;
	background-size: contain; font-size: 19px; }
	.o_cost dd span { display: inline-block; text-indent: -1em; padding-left: 1em; margin-left: 1em; font-size: 20px; position: relative; }
	.o_cost:last-of-type {
		border-bottom: none;
	}
	.o_cost dd span::before { content: "●"; }

	.option { margin-top: 180px; }
	.op_ul { display: flex; justify-content:space-between; margin-bottom: 80px; }
	.op_ul li { width: 490px; }
	.op_ul li .img { margin-bottom: 15px; }
	.op_ul li p { line-height: 40px; font-size: 16px; }
	.op_ul li p span { display: inline-block; width: 150px; height: 40px; background: #dbe3f1;
		text-align: center; font-size: 18px; margin-right: 10px; }

	.punit .plist2 { display: flex; flex-wrap:wrap; }
	.punit .plist2 li { display: flex; align-items:center; width: 330px; margin-bottom: 40px; }
	/*.punit .plist2 li:nth-child(3n) { margin-right: 0; }*/
	.punit .plist2 li .img { margin-right: 30px; }
	.punit .plist2 li p { text-align: left; font-size: 16px; }



} /* End @media (min-width: 751px) */

/* ---------------------------------------------------------------------------------------------------- */

@media (min-width: 751px) and  (max-width:1245px){
	.punit .w1200 {
		width: 100%;
	}
}

/* ---------------------------------------------------------------------------------------------------- */

/* Start @media (max-width: 750px) */

@media (max-width:750px){
	#mv .img { background: url(../images/mv_standard_sp.jpg) center center no-repeat; background-size: cover; }
	/*#mv h2 { background: url(../images/ttl.png) center center no-repeat; background-size: auto 30vw; }*/
	/*.lead p { font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif; }
	p.lead { font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif; }*/


	h3.ch3_3 { font-size: 6vw; text-align: center; line-height: 1.1; position: relative; z-index: 10; margin-bottom: 4vw; }
	h3.ch3_3 span { font-size: 5vw; position: relative; display: inline-block; margin-right: 2vw; }
	h3.ch3_3 span:before { content: "―"; padding-right: 2vw; }
	h3.ch3_3 span:after { content: "―"; padding-left: 2vw; }


	h4.ch4_3 { font-size: 6vw; line-height: 0.8; margin: 4vw 0; text-align: center; position: relative; }
	h4.ch4_3:before { content: ""; width: 100%; height: 1px; background: #3d4856; position: absolute;
		left: 0; top:50%; }
	h4.ch4_3 span { display: inline-block; font-size: 5.6vw; letter-spacing: 0.2vw; padding: 0 0.8em; background: #ffffff; position: relative;  }

	.b_radius_parents {
		text-align: center;
		margin-bottom: 6vw;
	}
	.b_radius20 {
		display: inline-block;
		font-size: 4vw;
		padding: 1vw 6vw;
		line-height: 1;
		border-radius: 3vw;
		border: 1px solid #3D4856;
	}


	#p1 {
		display: none;
	}


/* #p2 */
	
	.punit .w1200 { width: 100%; padding-top: 26vw; margin-top: -8vw; }
	.punit { position: relative; padding-bottom: 20vw; }
	.punit:before { content: ""; width: 100%; height: 50vw; position: absolute; z-index: -1; left: 0; top:8vw;
		background: #edf1f7; }
	.punit h3.ch3_2,.punit .planimg { position: relative; }
	.punit .planimg { width: 100%; height: 50vw; margin-bottom: 8vw; }
	.punit .planimg img { width: auto; height: 50vw; max-width: 200%; margin-left: -14vw; }
	.punit .planimg { }
	.punit .planprice { border: #dbe3f1 6vw solid; background: #ffffff; width: 88vw; margin: 0 auto 10vw;
		padding: 5vw; }
	.punit .planprice h4 { font-size: 5.6vw; font-style: italic; text-align: center; margin-bottom: 2vw; }
	.punit .planprice .m_price { display: flex; align-items:center; }
	.punit .planprice .m_price .pricelabel { width: 19vw; height: 6vw; display: block; 
		text-align: center; background: #d1dbe8; line-height: 6vw; margin-right: 2vw; }
	.punit .planprice .m_price .priceinfo { color: #be4c37; font-size: 7vw; font-style: italic;
		display: block; margin-right: 1vw; }
	.punit .planprice .m_price .priceinfo span { font-size: 4vw; }
	.punit .planprice .plantxt { font-size: 3.7; border-top: #3d4856 1px dotted; margin-top: 4vw;
		padding-top: 4vw; }
	.punit .w1000 { width: 76vw; }
	.punit .plist { display: flex; flex-wrap:wrap;/* justify-content:space-between;*/  }
	.punit .plist li { width: 36vw; margin-right: 3vw; margin-bottom: 4vw; }
	.punit .plist li:nth-child(even) { margin-right: 0; }
	.punit .plist li .img { width: 100%;  margin-bottom: 4vw; }
	.punit .plist li .img img { border: #d1dbe8 1px solid; }
	.punit .plist li p { text-align: center; font-size: 3.7vw; }
	.punit .txtul {  }
	.punit .txtul li {  }
	.punit .txtul li:before { content: "●"; }

	.punit .plandetail { width: 88vw; margin: auto; }
	.punit .plandetail h4.ch4_3  { margin-bottom: 8vw; }
	.punit .plandetail h4.ch4_3 span { font-size: 5vw; }

	.equipment { margin-bottom: 8vw; }
	.equipment .equipment_b { margin-bottom: 4vw; }
	.equipment .equipment_b img { width: 100%; }
	/*.equipment .equipment_b:nth-child(odd) { margin-right: 15px; }
	.equipment .equipment_b:nth-child(even) { margin-right: 15px; }*/

	.plandetail h5 { text-align: center; font-size: 4vw; margin-bottom: 8vw; }
	.plandetail h5 span { border-bottom: 2px dotted #3D4856; padding-bottom: 4vw; }
	.o_option { display: flex; flex-wrap: wrap; margin-bottom: 10vw; }
	.o_option li { width: 32%; margin-right: 2%; margin-bottom: 2vw; }
	.o_option li:nth-child(3n) { margin-right: 0; }

	.o_cost { border-bottom: 1px solid #3D4856; align-items: center; padding-bottom: 4vw; margin-bottom: 4vw; }
	.o_cost dt { text-align: center; }
	.o_cost dt span { display: flex; width: 100%; height: 8vw; align-items: center; justify-content: center;
	background: url(../images/bg_costmidashi.svg) center center no-repeat;
	background-size: contain; font-size: 4vw; }
	.o_cost dd span { display: inline-block; text-indent: -1em; padding-left: 1em; margin-left: 1em; font-size: 4vw; line-height: 1.2; position: relative; }
	.o_cost:last-of-type {
		border-bottom: none;
	}
	.o_cost dd span::before { content: "●"; }



} /* End @media (max-width: 750px) */

