/* デフォルト */

article,
footer{
	overflow:hidden;
}

article{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:16px;
	line-height:1.4;
}


/* Bootstrapのガター幅を調整するための汎用CSS */
.row-0{ 
	margin-left:0px;
	margin-right:0px;
}
	
.row-0 >div{
	padding-right:0px;
	padding-left:0px;
}

.row-5{
	margin-left:-2.5px; 
	margin-right:-2.5px; 
}

.row-5 >div{
	padding-right:2.5px;  
	padding-left:2.5px; 
}

.row-10{
	margin-left:-5px; 
	margin-right:-5px;
}

.row-10 >div{
	padding-right:5px; 
	padding-left:5px;
}

.row-20{
	margin-left:-10px;
	margin-right:-10px;
}

.row-20 >div{
	padding-right:10px;
	padding-left:10px;
}

.row-30{
	margin-left:-15px;
	margin-right:-15px;
}

.row-30 >div{
	padding-right:15px;
	padding-left:15px;
}

.row-40{
	margin-left:-20px;
	margin-right:-20px;
}

.row-40 >div{
	padding-right:20px;
	padding-left:20px;
}

.row-50{
	margin-left:-25px;
	margin-right:-25px;
}

.row-50 >div{
	 padding-right:25px;
	 padding-left:25px
}


article section{
	padding-bottom:40px;
}

section.sct-foot{
	margin-top:40px;
	padding-bottom:0px;
}

article h2,
article h3{
	margin:0;
}

/* 
btn-style
*******************************/

a.btn.btn-default{
	color:#0993da;
	text-decoration:none !important;
	font-weight:bold;
}

a.btn.btn-default:hover{
	background:#f2f7fb;
	border-color:#bbd9f3;
}


.btn-m{
    display:block;
    width:80%;
    padding:15px;
    margin:5px auto 0px auto;
    font-weight:bold;
    font-size:18px;
    text-align:center;
    border:3px solid #fff;
    border-radius: 35px;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px; 
    box-shadow: 0 0 5px 0 #ccc;
    -webkit-box-shadow: 0 0 5px 0 #ccc;
      -moz-box-shadow: 0 0 5px 0 #ccc;
    text-decoration:none !important;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"ＭＳ Ｐゴシック",sans-serif;
    letter-spacing: 0.08em !important;
    color:#fff !important;
}

.btn-m:hover,
.btn-l:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}


.btn-l{
    display:block;
    padding:15px;
    margin:15px auto;
    font-weight:bold;
    font-size:22px;
    text-align:center;
    border:5px solid #fff;
    border-radius: 35px;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px; 
    box-shadow: 0 0 5px 0 #ccc;
    -webkit-box-shadow: 0 0 5px 0 #ccc;
      -moz-box-shadow: 0 0 5px 0 #ccc;
    text-decoration:none !important;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"ＭＳ Ｐゴシック",sans-serif;
    letter-spacing: 0.08em !important;
    color:#fff !important;
}

/* btn-color */

/* pink */

.pink {
    background:#ec647f;
    text-shadow:
    1px 2px 0px #e34963,
    1px 2px 0px #e34963;
}

/* blue */

.blue {
    background:#36b2d6;
    text-shadow:
    1px 2px 0px #3487ab,
    1px 2px 0px #3487ab;
}
/* green */

.green {
    background:#83c32f;
    text-shadow:
    1px 2px 0px #78994b,
    1px 2px 0px #78994b;
}


/* yellow */

.yellow {
    background:#e8b042;
    text-shadow:
    1px 2px 0px #d79932,
    1px 2px 0px #d79932;
}

/* gray */

.gray{
    background:#ddd;
    text-shadow:
    1px 2px 0px #ccc,
    1px 2px 0px #ccc;
}

/* white */

.white{
    background:#fff;
}

/* btn-size */

.w500 {
    width:500px;
}

.w400 {
    width:400px;
}

.w380 {
    width:380px;
}

.w350 {
    width:350px;
}

.w300 {
    width:300px;
}

.w200 {
    width:200px;
}

.w170 {
    width:170px;
}


.w150 {
    width:150px;
}

.w130 {
    width:130px;
}


.w100 {
    width:100px;
}

/* 
main
*******************************/

#main{
	position: relative;
	background:url(//cdn.willer.co.jp/wex/img/bg-main.jpg?20170203) no-repeat center center,#ccc;
	background-size:cover;
	height:350px;
}

#main h1{
	position: absolute;
	bottom:25px;
	left:0;
	font-size:46px;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
	color:#fff;
	text-shadow:1px 2px 1px #333;

}

#main h1 span{
	font-size:30px;
	padding:0 5px;
}


/* 
nav
*******************************/

#page-nav{
	padding:0;
}


#page-nav nav{
	background:#000;
	margin-bottom:30px;
	overflow:hidden;
}

#page-nav nav ul{
	margin-bottom:0 !important;
}

#page-nav nav li{
	float:left;
	border-left:1px solid #333;
	width:20%;
}

#page-nav nav li:last-child{
	border-right:1px solid #333;
}

#page-nav nav li a{
	font-size:16px;
	font-weight:bold;
	padding:20px;
	text-align:center;
	color:#fff;
	display:block;
	text-decoration:none;
	border-bottom:4px solid #ec647f;
}

#page-nav nav li a:hover{
	background:#ec647f;
}


/* 
pr-box
*******************************/

.pr{
	padding:40px 0;
	background:url(//cdn.willer.co.jp/wex/img/bg-pr.png?20170203) repeat-x bottom,#f8f4ee;
}

.pr-box{
	padding-bottom:0px;
	background:#fff;
}


.pr-box{
	border:1px solid #ddd;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	margin-bottom:20px;
}

.pr-box img{
	width:100%;
	height:auto;
	margin:5px 0;
}

.pr-box h2{
	color:#fff;
	background:#ec647f;
	font-size:24px;
	text-align:center;
	padding:15px 0;
}

.pr-box h2 span{
	padding:0 10px;
	font-size:30px;
}

.pr-box .pd5{
	padding:5px;
}

.pr-box .pd10{
	padding:10px;
}

.pr-box .pd20{
	padding:20px 0 0 20px;
}

.pr-box .price-line{
	display:block;
	margin-top:10px;
	padding-bottom:10px;
	text-align:center;
}

.pr-box .route-area{
	font-size:24px;
	font-weight:bold;
	margin-right:10px;
}

.pr-box .price-num{
	color:#ed0505;
	font-size:30px;
	font-weight:bold;
}

.pr-box .yen{
	color:#ed0505;
	font-size:20px;
	font-weight:bold;
}

.pr-box .pr-txt{
	font-size:20px;
	max-width:450px;
	margin:10px auto 30px auto;
	padding:10px 10px 10px 20px;
	border:2px dotted #e6dccc;
	background:#faf6ef;
}

.pr-box .pr-txt02{
	font-size:20px;
	color:#fff;
	max-width:450px;
	margin:0px auto 20px auto;
	padding:20px 10px 20px 20px;
	text-align:center;
	background:#bca68a;
}

.pr-box .pr-txt02 span{
	font-size:30px;
}

.txt-s{
	font-size:16px;
}

.txt-l{
	font-size:24px;
}

.pr-box .pr-txt i{
	color:#b13012;
}
.bg-reborn{
	background:#79c1d6 !important;
}
.bg-narita{
	background:#0795de !important;
}


/* 
title
*******************************/

h2.title01{
    font-size:26px;
    text-align:center;
    padding-bottom:10px;
    margin:30px 0 0px 0;
    border:none;
    line-height:1.4;
}


h2.title01:after {
    content: '';
    display: block;
    margin:25px auto;
    width: 40px;
    border-top: 3px solid #ec647f;
}

h2.title02 {
	font-size:26px;
    position: relative;
    display: inline-block;
    margin:0 0 30px 0;
    padding: 20px 0;
    width: auto;
    min-width: 100%;
    color: #fff;
    line-height: 1.3;
    text-align: center;
    z-index: 0;
}

h2.title02:after {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    margin-left: -20px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 20px 20px 0 20px;
}

/*
rosen
*******************************/

#rosen{
	background:#d5eff9;
	padding-top:0;
	padding-bottom:50px;
}

#rosen .rosen-map-txt{
	position: absolute;
	top:35px;
	left:15px;
	font-size:36px;
	font-weight:bold;
	line-height:1.1;
	font-style:italic;
	color:#f25783;
	text-shadow: 2px 2px 1px #fff,
	 -2px 2px 1px #fff, 
	 2px -2px 1px #fff, 
	 -2px -2px 1px #fff;
}

#rosen .rosen-map-txt span{
	font-size:56px;
	font-weight:bold;
	padding:0 2px;
}

#rosen h2.title02 {
    background: #f25783;
    margin-top:0;
}

#rosen h2.title02:after {
    border-color: #f25783 transparent transparent transparent;
}

.pdf-link{
	background:#fff;
	padding:7px 0px;
	margin:0 auto 15px auto;
	color: #0993da !important;
    text-decoration: none !important;
    font-weight: bold;
    border-radius: 4px;
    border: 1px solid transparent;
    border-color: #cccccc;
    display:block;
    width:79%;
}

.pdf-link:hover{
	background:#f2f7fb;
	border-color:#bbd9f3;
}

#rosen .pdf-link img{
	margin-top:-5px;
	margin-right:0px;
}

#rosen img{
	margin-top:20px;
	/*border:1px solid #9edaf1;
	border-radius: 5px;
	-webkit-border-radius: 5px;  
	-moz-border-radius: 5px;
	box-sizing: border-box !important;*/
}

#rosen .pdf-link{

}

#rosen .btn-m{
	margin-top:30px;
	width:500px;
}

/* 
service
*******************************/
/*
#service{
	padding-bottom:20px;
	background:#f4f4f4;
	border-top:1px solid #ddd;
	border-bottom:1px solid #ddd;
}*/

#service{
	width:100%;
	margin:0px 0 30px 0;
	background:url(//cdn.willer.co.jp/wex/img/bg-service.png) no-repeat center center;
	background-size:cover;
	padding:60px 0 60px;
	position: relative;
}

#service h2.title01 {
    color:#fff;
    margin-top:0px;
    margin-bottom:20px;
}

#service h2.title01:after {
    border-color: #fff;
}


#service p{
	padding-bottom:10px;
}

#service .card-heading{
	background:#f2e8e4;
	padding: 20px;
}

#service h3{
	font-size:18px !important;
}

#service a.btn{
	float:right;
}


#women h2.title02{
	background:#ff6666;
}

#women h2.title02:after {
    border-color: #ff6666 transparent transparent transparent;
}

.small-text{
	font-size:14px !important;
	padding:10px 0;
}

/*
voice
*******************************/

.voice-box{
	padding:30px;
	border:1px solid #eee;
	margin:20px 2px 0 2px;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px; 
	background:#fcfcfc;
}

.voice-text{
	padding:15px 10px 15px 90px;
	border-bottom:1px dotted #ccc;
	background:url(//cdn.willer.co.jp/seat/img/comment.png?20170203) no-repeat 0px 20px;
}

.voice-text:last-child{
	border:none;
}

.person{
	font-size:18px;
	margin-bottom:5px;
}

.person span.num{
	color:#da1915;
	padding-left:5px;
}

#voice i{
	color:#ffa800;
}

#voice .person span{
	font-weight:bold;
	padding-right:10px;
}

/* 
safety
*******************************/

#safety {
	background:#fbfbfb;
	/*background:#f1f7f9;*/
}

#safety h2.title02 {
    background: #0993da;
}

#safety h2.title02:after {
    border-color: #0993da transparent transparent transparent;
}

#safety .card-heading{
	background:#e8f3f8;
	padding: 20px;
}

#safety .card-body {
    padding: 15px 20px;
}

#safety .card-body p{
	line-height:1.5;
	margin-bottom:10px;
}

#safety .card-body ul{
	margin-left:30px;
	margin-bottom:15px;
}

#safety .card-body li{
	list-style-type: disc;
}

/*
#safety .panel-body img.thumb{
	width:100%;
	height:auto;
}
*/

#safety h3{
	font-size:18px !important;
}

#safety h3 span{
	font-size:16px;
}

#safety h3 .fa-circle{
	color:#3bc206;
}

#safety h4{
	margin-left:3px;
	margin-bottom:7px;
}


/*
#safety h3:before {
	content: "\f058";
	font-size:22px;
	font-family: FontAwesome;
	margin-right:10px;
	color:#3bc206;
}*/

#safety p{
	padding:5px 0;
}

#safety p + p{
	padding:0px 0 5px 0;
}

#safety img{
	margin:5px 0 10px 0;

}

#safety .system-img{
	margin-left:10px;

}

#safety .btn{
	font-size:18px;
	display:block;
	width:400px;
	padding:10px 30px;
	margin:20px auto 30px auto;
}

@media(min-width:1200px) {
/* PC大画面用 */


}

@media only screen and (min-width : 992px) and (max-width : 1119px) {
/* PC用 */



}

@media (min-width : 992px) {
/* PC用 */

	.mt20{
		margin-top:20px !important;
	}

	.mt40{
		margin-top:40px !important;
	}
	
}

@media(max-width:1200px) {
/*
	#safety img{
		width:100%;
	}
*/
}

@media (min-width : 768px) {
/* タブレット以上 */

	#page-nav nav{
		border-top:1px solid #361118;
	}

	#rosen li:nth-child(even){
		margin-right:0;
	}
	
	
	#safety .btn-m{
		width:300px;
	}
	
	.row-20{
		margin-left:-5px;
		margin-right:-5px;
	}

	.row-20 >div{
		padding-right:10px;
		padding-left:10px;
	}
	
}

@media screen and (min-width : 768px) and (max-width : 991px) {
/* タブレット用 */

	.container{
		width:100%;
		padding:10px;
	}
	
	.mt20{
		margin-top:10px !important;
	}

	.mt40{
		margin-top:20px !important;
	}
	
	/*
	main
	***********************/
	#main{
		padding-top:60px;
		height:200px;
	}
	
	#main h1{
		font-size:30px;
		bottom:13px;
	}

	#main h1 span{
		font-size:22px;
	}
	
	/*
	nav
	***********************/
	#page-nav .container{
		padding:0 5px;
	}

	#page-nav nav{
		background:#000;
		margin-bottom:0px;
		overflow:hidden;
	}

	#page-nav nav ul{
		width:100%;
		margin-bottom:0 !important;
	}

	#page-nav nav li{
		width:20%;
	}

	#page-nav nav li a{
		font-size:14px;
		padding: 15px;
	}

}

@media screen and (max-width:767px) {
/* スマホ用 */

	article{
		font-size:14px;
		line-height:1.4;
	}
	
	section{
		padding:0px 0;
	}
	
	.btn-m{
		width:90%;
		font-size:16px;
		padding:10px;
		margin-bottom:5px;
	}
	
	/*
	main
	***********************/
	#main{
		margin-bottom:0px;
		height:150px;
	}
	
	#main h1{
		font-size:16px;
		line-height:1.2;
		bottom:15px;
	}

	#main h1 span{
		font-size:14px;
		padding:0 2px;
	}
	
	

	/*
	disc
	***********************/
	
	#disc{
		padding:10px 0 20px;
	}
	
	#disc p{
		font-size:12px;
	}
	
	/* 
	nav
	*******************************/

	#page-nav{
		padding:0;
		margin-bottom:10px;
	}

	#page-nav .container{
		padding:0 0px;
	}

	#page-nav nav{
		background:#000;
		margin-bottom:0px;
		overflow:hidden;
	}

	#page-nav nav ul,
	#page-nav nav li,
	#page-nav nav li a{
		width:100%;
		margin-bottom:0;
	}

	#page-nav nav li{
		float:left;
		border:1px solid #666;
	}

	#page-nav nav li + li{
		border-top:none;
	}

	#page-nav nav li:last-child{
		border-bottom:1px solid #666;
	}



	#page-nav nav li a{
		font-size:14px;
		padding:10px 20px;
		text-align:left;
		color:#fff;
		display:block;
		text-decoration:none;
		border-left:4px solid #ec647f;
		border-bottom:none;
	}

	#page-nav nav li a:hover{
		background:#ec647f;
	}

	/* 
	title
	*******************************/

	h2.title01{
	    font-size:16px;
	    text-align:center;
	    margin:0px 0 0px 0;
	    padding-bottom:10px;
	    border:none;
	    line-height:1.4;
	}

	h2.title01:after{
		margin:15px auto;
	}

	h2.title02 {
		font-size:16px;
	    margin:20px 0 20px 0;
	    padding: 10px 0;
	}
	
	h2.title02:after{
		bottom:-12px;
	}

	/* 
	pr-box
	*******************************/


	
	.pr-box{
		padding:0px;
		margin:0px 0 20px 0;
	}


	.pr-box{
		border:1px solid #ccc;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}

	.pr-box img{
		width:100%;
		height:auto;
		margin:0 0 10px 0;
	}

	.pr-box h2{
		font-size:16px;
		color:#fff;
		text-align:center;
		padding:10px;
	}
	
	.pr-box h2.title01{
		margin-top:30px;
	}
	
	.pr-box h2 span{
		font-size:16px;
		padding:0;
	}

	.pr-box .pd5{
		padding:5px;
	}

	.pr-box .pd10{
		padding:10px;
	}

	.pr-box .pd20{
		padding:20px;
	}

	.pr-box .pr-txt{
		font-size:16px;
		margin:0px auto 10px auto;
	}
	
	.pr-box li{
		font-size:16px;
		padding:5px;
	}

	.pr-box .price-line{
		display:block;
		line-height:1.4;
		width:100%;
		margin:0 auto;
		padding-bottom: 5px;
	}
	
	.pr-box .price-line .ex{
		font-size:16px;
		font-weight:bold;
		text-align:left !important;
	}

	.pr-box .route-area{
		font-size:16px;
		line-height:1.3;
		font-weight:bold;
		margin-right:10px;
	}
	
	.txt-s{
		font-size:14px;
	}

	.pr-box .price-num{
		color:#ed0505;
		font-size:18px;
		font-weight:bold;
	}

	.pr-box .yen{
		color:#ed0505;
		font-size:14px;
		font-weight:bold;
	}
	
	/*
	rosen
	*****************/

	#rosen {
		padding-bottom:20px;
	}
	
	#rosen img{
		margin-top:0;
	}
	
	#rosen .rosen-map-txt{
		top:10px;
		left:5px;
		font-size:30px;
	}
	
	#rosen .rosen-map-txt span{
		font-size:40px;
		padding:0 2px;
	}
	
	#rosen ul{
		margin:15px 5px 0 5px;
	}

	#rosen li{
		margin-right:10px;
		width:48%;
	}

	#rosen li:nth-child(even){
		margin-right:0;
	}

	.pdf-link{
		font-size:12px;
		margin-top:15px;
		padding-right:5px;
		width: 88%;
	}
	
	.pdf-link img{
		width:30px;
		height:auto;
	}
	
	#rosen .btn-m{
		margin-top:10px;
		width:90%;
	}
	
	#service h2.title01 {
	    margin-top: 0px;
	    margin-bottom: 0px;
	}

	#women .img-fluid{
		margin-bottom:15px;
		width:100%;
	}
	
	.voice-box{
		padding:10px;
	}
	.voice-text{
		background-position:0px 0px;
		background-size:40px;
		padding:0px 0 10px 50px;
		margin-bottom:10px;
	}
	
	#voice .person span{
		font-size:14px;
	}
	
	/*
	safty
	*****************/
	

	
	#safety .btn{
		font-size: 12px;
		width:95%;
		margin: 10px auto 5px auto;
		padding:10px;
	}
	
	#safety h2.title02{
		margin-top:0;
	}
	
	#safety .btn-m{
		width:280px;
	}
	
	#safety h3 {
	    font-size: 14px;
	}
	
	#safety .panel-heading{
		padding:10px 10px 7px 10px;
	}
	
	#safety h3 span{
	    font-size: 10px;
	}

	.row-20{
		margin-left:0px;
		margin-right:0px;
	}

	.row-20 >div{
		padding-right:0px;
		padding-left:0px;
	}


}
