/*共通シリーズ【基本部分】
-----------------------------------------------------------------------------------------------------------------------*/
body {
	width: 100%;
	margin: 0;
	padding: 0px;
	font-family: sans-serif;
	font-size: 14px;
	color: #484848;
	line-height: 100%;
}

img 						{margin: 0;	padding: 0;border: 0;}
h1, h2, h3, h4, h5, h6 		{font-style: normal;	font-weight: normal;font-size: 12px;margin: 0;padding: 0;}
p 							{font-style: normal;	font-weight: normal;margin: 0;padding: 0;}
ul, dl 						{margin: 0;padding: 0;font-style: normal;font-weight: normal;list-style-type: none;}
li, dd 						{list-style-type: none;white-space:nowrap;}
a:link, a:visited, a:active, a:hover {text-decoration: none;color:#f43691;}

/*クリアフィクス等共通項目
-----------------------------------------*/
.cf:after {
  content: "."; 
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.cf { min-height: 1px;}
*:first-child+html .cf { display: inline-block; }
* html .cf { height: 1%;}
.fl { display:block; float:left;}
.fr { display:block; float:right;}
.fn { float:none !important;}
.nb { border:none !important;}
.nbb { border-bottom:none !important;}
li.nb a { border:none !important;}
dd.nb a { border:none !important;}
.m0 { margin:0 !important;}
.p0 { padding:0 !important;}
.pl0 { padding-left:0px !important;}
.pb0 { padding-bottom:0px !important;}
.mb0 { margin-bottom:0px !important;}
.mp0 { margin:0 !important; padding:0 !important;}
.mt20	{margin-top:20px;}
.mb5	{margin-bottom:5px !important;}
.mb10	{margin-bottom:10px !important;}
.mb15	{margin-bottom:15px !important;}
.mb20	{margin-bottom:20px !important;}
.mb30	{margin-bottom:30px !important;}
.mb40	{margin-bottom:40px !important;}
.mb50	{margin-bottom:50px !important; padding-bottom:50px;	border-bottom:1px dotted #fff;}
.mb60	{margin-bottom:60px !important;}
.mr60	{margin-right:60px !important;}
.mr30	{margin-right:30px !important;}
.mr10	{margin-right:10px !important;}
.tac {text-align: center;}
.tar {text-align: right !important;}
.tal {text-align: left !important;}
.pt30 {padding-top: 30px !important;}
.pb20	{padding-bottom:20px;}
.lh17 {line-height: 170%;}
.vab {vertical-align:bottom;}
.cb		{clear:both;}
	

/*ベース
-----------------------------------------------------------------------------------------------------------------------*/
#index_body	{
	width:100%;
}
#srchBox2	{
	right:0;
}
.main p,.main td,.main div	{
	color:#000;
	line-height:170%;
	font-size:100%;
	font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
.main	{
	width:934px;
	display:block;
	margin:50px auto;	padding:0;
}
	.main h1	{
		font-size:14px;
		font-weight:bold;
		margin:0px 0px 10px 0px;
	}
	.p0	{margin:0px 0px 5px 0px;	padding:0;}
	.p1	{margin:0px 0px 15px 0px;	padding:0;}
	.p2	{margin:0px 0px 30px 0px;	padding:0;}
	.p3	{margin:0px 0px 50px 0px;	padding:0;}

	.spring_h2_1 {
		margin-bottom:20px;
	}
	
	.main h3 {
		margin-bottom:5px;
	}
	
	.spring_con {
		border:3px solid #ccc;
		padding:20px;
		margin-bottom:20px;
	}
	.spring_span1 {
		color:#006cad;
		font-weight:bold;
	}
	.spring_span2 {
		color:#006cad;
		font-size:140%;
		font-weight:bold;
		line-height:160%;
	}
	
	.spring_con2 {
		border:3px solid #f7b101;
		padding:20px;
		margin-bottom:50px;
	}


	.spring_h2_2 {
		border-top:2px solid #006cad;
		border-bottom:2px solid #006cad;
		padding-top:15px;
		padding-bottom:15px;
		margin-bottom:20px;
	}
	
	.spring_con3 {
		margin-bottom:50px;
	}
		.spring_con3 table	{
			width:800px;
			margin:0 auto;
			border-collapse: separate;
			border-spacing: 0px;
			border-top: 2px solid #CCC;
			border-left: 2px solid #BBB;
		}
		.spring_con3 td	{
			padding: 10px 20px;
			border-bottom: 2px solid #BBB;
			border-right: 2px solid #BBB;
		}
		.spring_con3_td1	{
			width:100px;
			font-weight:bold;
		}


	.spring_con4 {
		margin:0px 0px 50px 0px;
		padding:27px;
		border:3px solid #f7b101;
	}




.con3	{

}
	.con3_con_wrp	{
		margin-bottom:30px;	
		padding:0px;
	}
		.con3_con	{
			width:874px;
			margin:0;	padding:0;
		}
		.con3_con_con	{
			width:422px;
			margin:0;	padding:0;
		}
			.con3_con_con h3	{
				font-size:14px;
				font-weight:bold;
				margin:0px 0px 10px 0px;
			}
			.con3_con_con_l	{
				width:162px;	height:111px;
				margin:0;	padding:0;
			}
			.con3_con_con_r	{
				width:245px;	height:111px;
				margin:0;	padding:0;
			}
	


.con1	{
	width:934px;
	margin:0px 0px 30px 0px;	padding:0;
}
.con1 p {margin:0;padding:0;}
.con1 .main_text {
	position:absolute;
	top:540px;
	left:30px;
	line-height:190%;
}
.con1 .main_text span {
	background:#fef265;
}

.con_main {
	width:934px;
	margin:0px 0px 50px 0px;	
}
	.con_main_con	{
		width:450px;

	}
	.con_main_con h2 {
	margin-bottom:15px;
	position:relative;
	padding:7px 0px 7px 0px;
	font-size: 1.1em !important;
	font-weight:bold !important;
	text-align:center;
	color:#fff;
	background:#e57e8b;
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.2);
    background-image: -webkit-gradient(linear, left top, left bottom,
			from(			rgba(0, 0, 0, 0.0)), 
			color-stop(0.08, rgba(255, 255, 255, 0.5)),
			color-stop(0.12, rgba(255, 255, 255, 0.5)),
			color-stop(0.12, rgba(0, 0, 0, 0.0)),
			color-stop(0.88, rgba(0, 0, 0, 0.0)),
			color-stop(0.88, rgba(255, 255, 255, 0.5)),
			color-stop(0.92, rgba(255, 255, 255, 0.5)),
			color-stop(0.92, rgba(0, 0, 0, 0.0)),
			to(				rgba(0, 0, 0, 0.0))
			);
	background-image: -moz-linear-gradient(top,
			transparent 8%,
            rgba(255, 255, 255, 0.5) 8%,
            rgba(255, 255, 255, 0.5) 12%,
            transparent 12%,
            transparent 88%,
            rgba(255, 255, 255, 0.5) 88%,
            rgba(255, 255, 255, 0.5) 92%,
            transparent 92%	
			);
	background-image: -o-linear-gradient(top,
			transparent 8%,
            rgba(255, 255, 255, 0.5) 8%,
            rgba(255, 255, 255, 0.5) 12%,
            transparent 12%,
            transparent 88%,
            rgba(255, 255, 255, 0.5) 88%,
            rgba(255, 255, 255, 0.5) 92%,
            transparent 92%	
			);
	background-image: linear-gradient(to bottom,
			transparent 8%,
            rgba(255, 255, 255, 0.5) 8%,
            rgba(255, 255, 255, 0.5) 12%,
            transparent 12%,
            transparent 88%,
            rgba(255, 255, 255, 0.5) 88%,
            rgba(255, 255, 255, 0.5) 92%,
            transparent 92%	
			);
}

.spring_h2 {
		text-align:center;
		border-bottom:2px solid #e63178;
		color:#e63178 !important;
		margin:0px 0px 15px 0px;
		font-size:150%;
		font-weight:bold;
		padding: 0px 10px 10px 0px !important;
	}

.con2	{
	width:934px;
	margin:70px 0px 70px 0px;
	padding:0;
}

.con2 p {margin-bottom:20px;}



.con4	{
	width:934px;
	margin:0px 0px 70px 0px;	padding:0;
}
	.con4 h2	{margin:0px 0px 23px 0px;	padding:0;}
	.con4 table	{
			width:800px;
			margin:0 auto;
			border-collapse: separate;
			border-spacing: 0px;
			border-top: 1px solid #CCC;
			border-left: 1px solid #BBB;
		}
		.con4 td	{
			padding: 10px 20px;
			border-bottom: 1px solid #BBB;
			border-right: 1px solid #BBB;
		}
		.con4_td1	{
			width:100px;
			font-weight:bold;
		}


.new2018 {
}
.new2018 p {
	padding: 10px 50px 30px 50px;
	font-size:115%;
	line-height:170%;
}
.new2018 ul {
	margin: 10px 50px 10px 60px;
	font-size:115%;
}
.new2018 li {
	margin-bottom:15px;
	list-style-type:disc;
}
.new2018nohvas {
	display: flex;
	padding: 0px 15px;
	margin-top: -10px;
}
.new2018nohvas p {padding: 10px;}
.new2018nohvas p:nth-child(1) {width:260px;}
.new2018nohvas p:nth-child(2) {width:260px;}
.new2018nohvas p:nth-child(3) {width:380px;}


.box-spring2022-2,
.box-spring2022-3,
.box-spring2022-4,
.box-spring2022-5,
.box-spring2022-6 {
    padding: 1rem 0 2rem;
    font-size: 1rem !important;
}

.box-spring2022-2 h2 {
    margin: 0 0 1rem;
}

.dl-spring2022-2 {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    margin: 0 0 1rem;
    border: solid 2px #006CB6;
    border-radius: 4px;
    background-color: #006CB6;
    font-size: 1rem !important;
    color: #00306F;
}
.dl-spring2022-2 dt {
    flex: 0 0 120px;
    text-align: center;
}
.dl-spring2022-2 dt img {
    vertical-align: middle;
}
.dl-spring2022-2 dd {
    flex: 0 0 calc(934px - 120px - 4px - 2rem);
    margin: 0;
    padding: 1rem;
    background-color: #fff;
    white-space: normal;
}

.box-spring2022-2-sub1 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin: 0 0 1rem;
    padding: 1.25rem 0 0;
}
.dl-spring2022-2-sub1 {
    flex: 0 0 calc(934px / 2 - 1rem);
    position: relative;
    display: flex;
    flex-flow: column nowrap;
    margin: 0 0 .25rem;
    border: solid 2px #006CB6;
    border-radius: 4px;
    background-color: #006CB6;
    font-size: 1rem !important;
    color: #00306F;
}
.dl-spring2022-2-sub1::before {
    content: '';
    position: absolute;
    top: -32px;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 24px;
    height: 24px;
    background: url(/images/spring2022-arrow-1.png) no-repeat center center;
    
}
.dl-spring2022-2-sub1 dt {
    padding: .5rem 0;
    text-align: center;
}
.dl-spring2022-2-sub1 dt img {
    vertical-align: middle;
}
.dl-spring2022-2-sub1 dd {
    margin: 0;
    padding: 1rem;
    background-color: #fff;
    white-space: normal;
}

.box-spring2022-2-sub2 {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    
    margin: 0 0 1rem 134px;
    padding: 1rem;
    border: solid 2px #006CB6;
    border-radius: 4px;
}
.box-spring2022-2-sub2::before {
    content: '';
    position: absolute;
    top: -18px;
    right: 200px;
    transform: rotate(45deg) skew(10deg, 10deg);
    display: block;
    width: 2rem;
    height: 2rem;
    border-top: solid 2px #006CB6;
    border-left: solid 2px #006CB6;
    background-color: #fff;
}
.dl-spring2022-2-sub2-1,
.dl-spring2022-2-sub2-2 {
    flex: 0 0 auto;
    display: flex;
    flex-flow: column nowrap;
    margin: 0;
    font-size: 1rem !important;
    color: #00306F;
}
.dl-spring2022-2-sub2-1 {
    flex-basis: 340px;
}
.dl-spring2022-2-sub2-2 {
    flex-basis: 440px;
}
.dl-spring2022-2-sub2-1 dt,
.dl-spring2022-2-sub2-2 dt {
    position: relative;
    padding: 0;
    text-align: center;
}
.dl-spring2022-2-sub2-1 dt::before,
.dl-spring2022-2-sub2-2 dt::before {
    content: '';
    position: absolute;
    z-index: -1;
    bottom: 4px;
    left: 0;
    display: block;
    width: calc(100% - 1rem);
    height: 4px;
    margin: 0 auto;
    background-color: #FFF000;
}
.dl-spring2022-2-sub2-1 dt img,
.dl-spring2022-2-sub2-2 dt img {
    vertical-align: middle;
}
.dl-spring2022-2-sub2-1 dd,
.dl-spring2022-2-sub2-2 dd {
    margin: 0;
    padding: 1rem 1rem 0;
    white-space: normal;
    font-size: .875rem;
}
.dl-spring2022-2-sub2-1 dd img,
.dl-spring2022-2-sub2-2 dd img {
    display: block;
    width: 280px;
    margin: 0 auto 1rem;
}

.dl-spring2022-2-6 {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    border: solid 2px #006CB6;
    border-radius: 4px;
    font-size: 1rem !important;
}
.dl-spring2022-2-6::before {
    content: '';
    position: absolute;
    top: -325px;
    left: 0;
    display: block;
    width: 40px;
    height: 320px;
    background: url(/images/spring2022-arrow-2.png) no-repeat top left;
}

.dl-spring2022-2-6 dt {
    flex: 0 0 200px;
    text-align: center;
}
.dl-spring2022-2-6 dt img {
    vertical-align: middle;
}
.dl-spring2022-2-6 dd {
    flex: 0 0 calc(934px - 200px - 4px - 2rem);
    margin: 0;
    padding: 1rem;
    white-space: normal;
}

.box-spring2022-3 h2 {
    margin: 0;
    line-height: 1;
}
.box-spring2022-3 h3 {
    padding: 2rem 0 0;
    text-align: center;
}

.box-spring2022-3-sub {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 2px;
    background-color: #FDEFF2;
}

.box-spring2022-3-sub-1 {
    flex: 0 0 210px;
    margin: 1rem;
    vertical-align: middle;
}
.box-spring2022-3-sub-2 {
    flex: 1 0 auto;
    border-left: solid 2px #fff;
    padding: 1rem;
}
.box-spring2022-3-sub-3 {
    flex: 0 0 210px;
    margin: 1rem;
    vertical-align: middle;
}

.box-spring2022-4 h2 {
    background-color: #006CB6;
    text-align: center;
    line-height: 1;
}
.img-spring2022-4-1 {
    display: block;
    width: 500px;
    margin: 1rem auto;
}
.img-spring2022-4-2 {
    display: block;
    width: 934px;
    margin: 1rem auto;
}
.box-spring2022-4 table {
    width: 800px;
    margin: 0 auto;
    border-top: solid 2px #ccc;
    border-left: solid 2px #ccc;
    border-collapse: separate;
    border-spacing: 0;
}
.box-spring2022-4 table td{
    padding: .5rem 1rem;
    border-bottom: solid 2px #ccc;
    border-right: solid 2px #ccc;
}

.box-spring2022-6 {
}
.img-spring2022-6 {
    display: block;
    margin: 0 auto 1rem;
}
.box-spring2022-6-sub {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    width: 720px;
    margin: 0 auto;
    padding: 1rem 0;
}
.box-spring2022-6-sub a {
    display: block;
    line-height: 1;
}
.img-spring2022-6-contact {
    margin: 0;
    display: block;
}


/* 2025 */
.spring-2025 * {
    box-sizing: border-box;
    font-size: 1rem;
}

.spring-2025 h1 {
    margin: 0 0 1rem;
    text-align: center;
    font-size: 1rem;
    font-weight: normal;
}
.spring-2025 .mv {
    margin: 0 0 1rem;
}
.spring-2025 .mv img {
    display: block;
    margin: 0;
    padding: 0;
}

.box-btn-trial-spring-2025 {
    margin: 0 auto 2rem;
}
.txt-btn-trial-spring-2025 {
    display: block;
    margin: 0 auto .5rem;
}
.btn-trial-spring-2025 {
    display: block;
    width: 400px;
    height: auto;
    margin: 0 auto;
}

.box-spring2025 {
    margin: 0 auto 2rem;
}
.box-spring2025 h2 {
    margin: 0 auto 1.5rem;
}
.box-spring2025 h2 img {
    display: block;
}

.dl-spring2025-1 {
    width: 840px;
    margin: 0 auto 1.5rem;
}
.dl-spring2025-1 dt,
.dl-spring2025-1 dd {
    margin: 0;
    padding: 0;
}
.dl-spring2025-1 dt img,
.dl-spring2025-1 dd img {
    display: block;
    margin: 0;
    padding: 0;
}
.img-spring-2025-1-4 {
    display: block;
    width: 840px;
    margin: 2rem auto 0;
    padding: 0;
}

.dl-spring2025-2 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;

    width: 840px;
    margin: 0 auto;
}
.dl-spring2025-2 dt,
.dl-spring2025-2 dd {
    flex: 0 0 380px;
    margin: 0;
    padding: 0;
}
.dl-spring2025-2 dt:first-of-type {order: 1;}
.dl-spring2025-2 dt:nth-of-type(2) {order: 2;}
.dl-spring2025-2 dd:first-of-type {order: 3;}
.dl-spring2025-2 dd:nth-of-type(2) {order: 4;}


.dl-spring2025-2 dd img {
    display: block;
}
.dl-spring2025-2 dd p {
    padding: 1rem 0 0;
    white-space: normal;
    text-align: justify;
}



/*--- ORDERMADE ---*/
.box-spring-ordermade * {
    box-sizing: border-box;
}
.box-spring-ordermade {
    width: 840px;
    margin: 0 auto 2.5rem;
}
.spring-ordermade-title {
    
}
.box-spring-ordermade >img {
    display: block;
    margin: 0 auto 1rem;
}
.dl-spring-ordermade {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;

    width: 840px;
    margin: 0 auto;
}
.dl-spring-ordermade dt,
.dl-spring-ordermade dd {
    border-bottom: solid 3px #fff;
    font-weight: bold;
    height: 95px;
}
.dl-spring-ordermade dt {
    flex: 0 0 95px;
    padding: 0;
    text-align: center;
}
.dl-spring-ordermade dd {
    flex: 0 0 calc(100% - 95px - 3px);
    margin: 0;
    padding: 0;
    font-size: 1rem;
    white-space: normal;
}
.dl-spring-ordermade dd span {
    display: block;
    padding: 0 1.75rem;
    line-height: 98px;
}
.dl-spring-ordermade .p {
    background-color: #FCEEF4;
    color: #EA637B;
}
.dl-spring-ordermade .j {
    background-color: #EAF5FC;
    color: #00B4ED;
}
.dl-spring-ordermade .h {
    background-color: #EBF4EC;
    color: #20AD69;
}

/*--- JISHUSHITSU ---*/
.box-jishushitsu * {
	box-sizing: border-box;
}
.box-jishushitsu {
    width: 840px;
    margin: 0 auto 3.5rem;
    padding: 0;
    background: #fff url(https://spring.nohvas-juku.com/images/jishushitsu-img.png) bottom right no-repeat;
}
.box-jishushitsu p {
    width: 568px;
    padding: 1rem .5rem;
    text-align: justify;
    font-size: 1rem;
}

/*--- SPRING-SUMMARY ---*/
.box-spring-summary * {
    box-sizing: border-box;
}
.box-spring-summary >img {
    display: block;
}
.spring-summary-title {
    display: block;
    margin-bottom: 1rem;
}
.dl-spring-summary {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;

    width: 640px;
    margin: 1.5rem auto 3rem;
    padding: 0;
    border: solid 1px #ccc;
    border-top: none;

}
.dl-spring-summary >dt,
.dl-spring-summary >dd {
    margin: 0;
    padding: .75rem;
    border-top: solid 1px #ccc;
    text-align: center;
    font-size: 1rem;
}
.dl-spring-summary >dt {
    flex: 0 0 6rem;
    background-color: #eee;
}
.dl-spring-summary >dd {
    flex: 0 0 calc(100% - 6rem);
    text-align: left;
}



.ul-spring-summary-service {
    display: flex;
    flex-flow: row nowrap;

    list-style: none;
    margin-bottom: 0;
    padding: 0;
}
.ul-spring-summary-service > li {
        height: 2rem;
        line-height: 2rem;
        margin: .5rem 1rem .5rem 0;
        padding: 0 1rem;
        border: solid 1px #ccc;
        text-align: center;
}
.ul-spring-summary-note {
    list-style: none;

    width: 19rem;
    margin: .25rem 0 0 1rem;
}

.ul-spring-summary-note > li {
    position: relative;
    margin: 0;
    font-size: .75rem;
    &::before {
        content: '*';
        position: absolute;
        left: -1rem;
        display: inline-block;
        width: 1rem;
        text-align: center;
    }
}
.title-spring-summary-price {
    width: calc(16rem + 3px);
    height: 2rem;
    line-height: 2rem !important;
    margin: .5rem 0 0 1rem;
    border: solid 1px #ccc;
    border-bottom: none;
    background-color: #eee;
    text-align: center;
}
.dl-spring-summary-price {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;

    width: calc(16rem + 3px);
    margin: 0 0 1rem 1rem;
    border: solid 1px #ccc;
    border-top: none;
}

.dl-spring-summary-price > dt,
.dl-spring-summary-price > dd {
    flex: 0 0 8rem;
    height: 2rem;
    line-height: 2rem;
    margin: 0;
    padding: 0 1rem;
    border-top: solid 1px #ccc;
    text-align: center;
}
.dl-spring-summary-price > dt {
    border-right: solid 1px #ccc;
    background-color: #eee;
}
.dl-spring-summary-price > dd {
}



/*--- SPRING-CAMPAIGN ---*/
.box-spring-campaign * {
	box-sizing: border-box;
}
.box-spring-campaign {
	box-sizing: border-box;
    margin: 0 auto 3rem;
    text-align: center;
}

/*--- SPRING-CTA ---*/
.box-spring-cta * {
	box-sizing: border-box;    
}
.box-spring-cta-contact {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    
    width: 720px;
    margin: 1rem auto 3rem;
}
