@charset "UTF-8";

#newsflash{
	display: none !important;
}
/* パーツのCSS---------------------------------------------- */

.clear:after{content: ".";display:block;height:0;font-size:0;clear: both;visibility:hidden;}
.clear {display: inline-block;} 
* html .clear {height: 1%;}
.clear {display:block;}
.img-half {
    zoom: 0.5;
    margin-left: auto;
    margin-right: auto;
}
.marker{
	background: linear-gradient(transparent 90%, #E9E124 20%);
	display: inline;
	padding: 0 3px;
	line-height: 1;
}
.text-pink{
	color: #F65474;
}

/* ====================================
共通　全体
==================================== */
#allcontents{
	color: #494b49;
}

/* ====================================
共通　タイトル装飾パーツ
==================================== */
.title-h2{
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 1.4;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	position: relative;
}
.title-h2 .point{
  font-size: 24px;
  color: #4e2f18;
}
.title-h2 .point b{
  font-size: 120%;
  color: #F65474;
  font-style: normal;
}
.title-h3{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 24px;
	line-height: 1.4;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	position: relative;
}
.lead-title-h2{
	text-align: center;
	font-size: 16px;
}
@media(max-width:768px) {
  .title-h2{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 24px;
  }
  .title-h2 .point{
  font-size: 20px;
  }
  .title-h3{
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 24px;
  }
 .lead-title-h2{
	text-align: left;
	font-size: 14px;
}
}


.btn-main{
	display: block;
	color: #4e2f18;
	background: #fcd100;
	border:2px solid #fcd100;
	text-align: center;
	border-radius: 4px;
	padding: 13px 5px;
	width: 100%;
	font-weight: bold;
	position: relative;
}
.btn-main:hover{
	text-decoration: none;
	color: #fff;
	background: #4e2f18;
}
.btn-main::before{
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0, -50%);
	content: "\f0da";
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	z-index: 2;
}
.line-seatspec{
	margin-top: 12px;
	display: block;
	font-size: 14px;
	text-align: center;
	width: 100%;
}
.link-seat{
	text-decoration: underline;
	font-size: 14px;
	background: none;
	padding: 0;
	cursor: pointer;
}
.link-seat:hover{
	text-decoration: none;
}
.wrap-line{
	margin:0 auto 24px;
	width: 100%;
	max-width: 400px;
}
.btn-line{
	background:#00b900;
	color:#fff;
	border:2px solid #00b900;
}
.btn-line:hover{
	text-decoration: none;
	color: #00b900;
	background: #fff;
}
.btn-schedule{
	background:none;
	margin-top: 16px;
	margin-bottom: 0px;
	outline: none !important;
	cursor: pointer;
    color: #007bff;
    font-size: 14px;
    line-height: 1.4;
}
.btn-schedule:hover{
	text-decoration: underline;
}
@media(max-width:768px) {
.btn-schedule{
	margin-top: 12px;
	margin-bottom: 6px;
}
}


/* 料金、販売ボタン関連のCSS---------------------------------------------- */
.rosen-list{
	margin-bottom: 40px;
}
/* 各プランの枠 */
.plan-tbl{
	width: 100%;
	background: #e0ecff;
	border-right: 2px solid #fff;
	margin-bottom: 2px;
}
.noclick .plan-tbl{
	background: #eee;
}
.plan-tbl td{
	padding: 10px;
	border-left: 2px solid #fff;
}
/* プラン名 */
td.plan-title{
	width:34%;
	font-size: 16px;
	font-weight: bold;
	position: relative;
	color: #333;
}
/* 各プランの料金 */
.plan-price{
	width:10%;
	color: #f30054;
	font-weight: bold;
	text-align: right;
}
.tour-tbl .plan-price{
	color: #756038;
	font-weight: normal;
	text-align: right;
}
.plan-price span{
	font-size: 190%;
	letter-spacing:0;
	color: #f30054;
	font-weight: bold;
}
.tour-tbl .plan-price span.max{
	font-size: 20px;
	margin-left: 5px;
}
.plan-price span:after{
	content: "円～";
	font-size: 12px;
}
.tour-tbl .plan-price span.max:after{
	content: "円";
	font-size: 12px;
}
.yenno .plan-price span:after{
	content: "円";
	font-size: 14px;
}
.price-sample{
	display: none;
	border:solid 1px #fff;
	/*background: #ffd475;*/
	text-align: center;
	font-size: 12px !important;
	font-weight: normal;
	padding: 3px 3px 1px 2px;
	margin:0 0 10px 0;
}
.price-sample span{
	font-size: 18px !important;
	font-weight: bold;
	color: #f30054;
}

/* 各プランの対象期間 */
td.plan-period{
	width:30%;
	color: #756038;
}
.plan-period span{
	font-weight: bold;
}
.plan-period ul{
	margin-top: 5px;
}
.plan-period li{
	float: left;
	margin-right: 5px;
	margin-bottom: 5px;
	padding: 2px 6px;
	border-radius: 3px;
	color: #fff;
	font-size: 12px;
}
.label-pink{
	color: #fff;
	background: #ef81a7;
	border-radius: 3px;
	padding: 2px 6px;
	margin-bottom: 5px;
	display: inline-block;
}
.label-gray{
	color: #fff;
	background: #9b9b9b;
	border-radius: 3px;
	padding: 2px 6px;
	margin-bottom: 5px;
	display: inline-block;
}
.label-gray-deep{
	color: #fff;
	background: #636363;
	border-radius: 3px;
	padding: 2px 6px;
	margin-bottom: 5px;
	display: inline-block;
}
.label-night{
	color: #fff;
	background: #8580e1;
	border-radius: 3px;
	padding: 2px 3px;
	margin-bottom: 5px;
	display: inline-block;
}
.label-day{
	color: #fff;
	background: #daad0f;
	border-radius: 3px;
	padding: 2px 3px;
	margin-bottom: 5px;
	display: inline-block;
}







/* ====================================
タイトル装飾
==================================== */
.title-box{
	background:#333;
	position: relative;
	color:#fff;
	font-weight: normal;
	font-size: 18px;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	padding: 12px;
}
.title-box:before{
	content: "";
    border: 8px solid transparent;
    border-top: 8px solid #333;
    position: absolute;
    left: 50%;
    bottom: -15px;
    margin-left: -8px;
    z-index: 1;
}
.title-icon{
	text-align: center;
	margin-bottom: 36px;
}
.title-icon img{
	zoom:0.4;
}
/*.title-icon span{
	color: #fff;
	font-size: 30px;
	text-align: center;
	display: inline-block;
	padding: 8px 24px;
	border:solid 4px #fff;
	border-radius:10px;
}*/




/* ====================================
メイン画像の部分
==================================== */
#Hero{
	margin-bottom: 20px;
}
.presale #Hero{
	margin-bottom: 0px;
}
#Hero h1{
	text-align: center;
}
#Hero h1 img{
	margin: 0 auto;
}
.hero-lead{
	text-align: center;
	font-weight: bold;
	padding: 0;
	margin-bottom: 12px;
}
.hero-lead span{
	color: #e43232;
	font-size: 130%;
	margin-right: 3px;
}
.hero-inner{
/*	background: url(/static/img/campaign/newslettersale/bg-main-6.jpg)  no-repeat center center;
	background-size: cover;
	padding: 10px;*/
}
.img-pc{
	zoom: 0.6;
}
.img-sp{
	display: none;
}
.copyright{
  font-size: 12px;
  float: none;
  color: #4e2f18;
}
@media(max-width:768px) {
  #Hero{
	margin-bottom: 12px;
  }
}
@media(max-width:577px) {
.hero-inner{
	padding: 0;
}
.img-sp{
	display: block;
}
.img-pc{
	display: none;
}
}


#Intro{
	padding: 0px 12px 24px;
	position: relative;
	overflow: hidden;
}
.intro-inner{
	/*background:url(/static/img/campaign/student/bg-bus.png) no-repeat bottom center;
	padding-bottom: 200px;*/
}
.moto #Intro{
	padding: 12px 12px 24px;
	position: relative;
	overflow: hidden;
}
.moto .intro-inner{
	background:url(/static/img/campaign/student/moto/bg-timesale.png) no-repeat top center;
	background-size: 50% auto;
	padding-bottom: 0px;
	padding-top: 24px;
}
.title-intro-h2{
	font-size: 22px;
    font-weight: bold;
    margin-bottom: 24px;
    line-height: 1.8;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    position: relative;
}
.title-intro-h2 span{
    background: linear-gradient(transparent 80%, #f2e654 80%);
    font-weight: bold;
}
.label-yellow{
	background: #f43d7d;
	color: #fff;
	display: inline-block;
	line-height: 1;
	padding: 6px 12px;
	font-size: 70%;
	border-radius: 4px;
	position: relative;
	top: -2px;
	margin-right: 6px;
	font-weight: normal;
}
.text-intro-link{
	text-align: center;
}
.text-intro-link a:after{
	content: "\f0a9";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	margin-left: 6px;
	position: relative;
	font-size: 80%;
	top: -1px;
}
@media(max-width:768px) {
#Intro{
	padding: 0px 0px 12px;
}
.moto #Intro{
	padding: 12px 0px 12px;
}
/*.intro-inner{
	background:url(/static/img/campaign/student/bg-bus-sp.png) no-repeat bottom center;
	background-size: contain;
	padding-bottom: 180px;
}*/
.moto .intro-inner{
	background:url(/static/img/campaign/student/moto/bg-timesale.png) no-repeat top center;
	background-size: 100% auto;
	padding-bottom: 0px;
	padding-top: 24px;
}
.title-intro-h2{
	font-size: 18px;
    margin-bottom: 12px;
}
.text-intro-link{
	font-size: 16px;
}
.text-intro-link a{
	display: block;
	margin-top: 12px;
}
}


/* ====================================
安心・安全なWILLERで行こう
==================================== */
#Message{
	background:#fafafa;
	padding: 84px 12px 48px;
	position: relative;
	overflow: hidden;
}
/*#Message:before{
	content: "";
    border: 180px solid transparent;
    border-top: 60px solid #4390e5;
    position: absolute;
    left: 50%;
    top: -20px;
    transform: translate(-50%, 0);
    z-index: 1;
}*/

.list-safetypoint{
	margin:24px auto 48px;
	max-width: 640px;
	width: 100%;
}
.list-safetypoint li{
	position: relative;
	font-size: 16px;
	padding-left: 24px;
}
.list-safetypoint li:before{
    content: "\f14a";
    font-family: "Font Awesome 5 Free";
    color: #F84D79;
    position: absolute;
    top: -1px;
    left: 0;
}
.list-safetypoint li + li{
	margin-top: 12px;
}
.btn-hajimete{
	width: 100%;
	max-width: 400px;
	margin:0 auto;
}

/* モーダル */
.modal-body table{
    width: 100%;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
.modal-body th {
    width: 30%;
    background: #eee;
    font-weight: bold;
}
.modal-body th.bg-pink{
	background: #fff1f6;
}
.modal-body th,
.modal-body td {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
.modal-header{
	background:#f43d7d;
	color: #fff;
}
.modal-header h3{
	font-size: 18px;
}
.btn-murasaki{
	text-align: center;
	margin-bottom: 15px;
}
.btn-murasaki a{
	display: inline-block;
	width: 100%;
	max-width: 320px;
	padding: 12px 15px;
	border:solid 1px #d5e4c0;
	border-radius: 100px;
	text-align: center;
	font-size: 14px;
	color: #fff;
	background:#ce80b7;
	position: relative;
}
.btn-murasaki a:hover{
	background:#fff;
	position: relative;
	border:solid 2px #ce80b7;
	color: #ce80b7;
	text-decoration: none;
}
/* [ Anshin ] */
/* __#Anshin */
.anshin-title { max-width: 200px; margin: 20px auto;}
.anshin-list .anshin-list-block .box-wrap { position: relative;}
.anshin-list .anshin-list-block .box-wrap .obi { display: block; position: absolute; top: 0; left: 0; width: 100%; padding: 5px; background: #BCD851; color: #fff; font-weight: bold; font-size: 16px; text-align: center;}
#schedule .anshin-list .anshin-list-block .box-wrap .obi { display: block; position: absolute; top: 0; left: 0; width: 100%; padding: 5px; border-radius: 0; background: #BCD851; color: #fff; font-weight: bold; font-size: 16px; text-align: center;}
.anshin-list .anshin-list-block .inner-title { margin: 20px auto 30px; text-align: center; }
.anshin-list .anshin-list-block .inner-title .illust { float: left; width: 60px; margin-right: 15px; }
.anshin-list .anshin-list-block .inner-title .lead { font-weight: bold; font-size: 16px; line-height: 1.6; text-align: left; }
.anshin-list .anshin-list-block .inner-text { font-weight: bold; font-size: 14px;}
.anshin-list .anshin-list-block p { font-size: 14px; }
.anshin-list .anshin-list-block .inner-lead { position: relative; margin-top: 36px; padding: 15px; border: 4px solid #E7E7E7; text-align: center;}
.anshin-list .anshin-list-block .inner-lead.balloon-anshin::before { position: absolute; top: -20px; left: -10px; width: 80px; height: 100%; background: url("/static/img/campaign/graduate/balloon-anshin.png") top / contain no-repeat; content: "";}
.anshin-list .anshin-list-block .inner-lead .lead-sub { display: block; margin-bottom: 10px; font-weight: bold; }
.anshin-list .anshin-list-block .inner-lead .price { font-weight: bold; }
.anshin-list .anshin-list-block .inner-lead .lead-voice {text-align: left;font-size: 16px; }
.anshin-list .anshin-list-block .inner-comment { margin-top: 10px; font-size: 11px; text-align: left; }
.anshin-about { display: block; margin-top: 30px; text-align: center; }

ul.flow-list { margin-top: 13px; text-align: left; }
ul.flow-list li { margin-top: 30px; padding-left: 70px; position: relative; }
ul.flow-list li:first-child { margin-top: 0; }
ul.flow-list li .icon-flow { display: block; position: absolute; top: 0; left: 0; width: 60px; padding: 6px 0; border: 2px solid #00B900; border-radius: 3em; color: #00B900; font-weight: bold; font-size: 13px; text-align: center;line-height: 1;}
.inner-comment { margin-top: 15px; font-size: 11px; text-align: left; }
@media all and (max-width: 320px) {
    /* __#Anshin */
    .anshin-list .anshin-list-block .inner-title .illust { width: 50px; margin-right: 15px; }
    .anshin-list .anshin-list-block .inner-title .lead { font-size: 15px; }}
@media all and (min-width: 768px) {
    /* __#Anshin */
    .anshin-title { position: relative; width: 500px; max-width: none; margin: 40px auto; text-align: center; }
    .anshin-title::before,
    .anshin-title::after { position: absolute; content: ""; }
    .anshin-title::before { top: 40px; left: 0; width: 45px; height: 45px; background: url("/campaign/graduate/img/title-decor-left.png") top / contain no-repeat;}
    .anshin-title::after { top: 30px; right: 0; width: 50px; height: 44px; background: url("/campaign/graduate/img/title-decor-right.png") top / contain no-repeat;}
    .anshin-title img { max-width: 300px;}
    .anshin-list .anshin-list-block .box-wrap { padding: 50px 20px 30px;}
    #schedule .anshin-list .anshin-list-block .box-wrap { padding: 40px 20px 30px;}
    .anshin-list .anshin-list-block .inner-title { padding-left: 5px; }
    .anshin-list .anshin-list-block .inner-lead { display: table; width: 100%; padding: 15px; }
    .anshin-list .anshin-list-block .inner-lead .lead-set { display: table-cell; vertical-align: middle;}
    .anshin-list .anshin-list-block .inner-comment { font-size: 12px; }
    .anshin-about { margin-top: 20px; text-align: right; }
    ul.flow-list li { margin-top: 15px; padding-top: 4px; line-height: 1.6; }}
@media all and (max-width: 991px) {
    /* __#Anshin */
    /*.anshin-list .anshin-list-block { margin-top: 30px;}*/
    .anshin-list .anshin-list-block:first-child { margin-top: 0;}}
.txt-anshin{
	font-size: 14px;
}
.box-wrap {
    padding: 30px 15px;
    border-radius: 4px;
    border:solid 2px #eee;
    margin-top: 24px;
}
.btn-close{
	background:#333;
	color: #fff;
	font-size: 14px;
	padding: 3px 10px;
	border-radius: 4px;
}
.youtube {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
.youtube iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
@media(max-width:768px) {
#Message{
	padding: 72px 0px 48px;
}

}




.wrap-white{
	background:#FBF8F3;
	padding: 36px 48px 36px;
	border-radius: 8px;
}
@media(max-width:768px) {
.wrap-white{
	padding: 24px 6px 24px;
}
}







/* ====================================
路線
==================================== */
#rosen{
	background:#ffe7ef;
	padding: 40px 10px 40px;
	position: relative;
	overflow: hidden;
}
#rosen:before{
	content: "";
    border: 60px solid transparent;
    border-top: 60px solid #fff;
    position: absolute;
    left: 50%;
    top: -30px;
    transform: translate(-50%, 0);
    z-index: 1;
}
.moto #rosen{
	background:#ED9744;
}
@media(max-width:768px) {
#rosen{
	padding: 40px 0px 40px;
}

}

/* 　路線API　 #rosen
================================================ */
 #rosen .inner { padding: 48px 16px; }
 #rosen .listBrand { margin: 40px -4px 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; text-align: center; }
 #rosen .txt { max-width: 356px; margin: 52px auto 0; padding-right: 1px; text-align: center; }
 #rosen .btn { display: block; width: 100%; max-width: 294px; margin: 36px auto 0; padding: 0; text-align: center; border: 0; }

#rosen .api-wrap .area p{font-size: 16px;}
#rosen .api-wrap .area p.time{font-size: 12px;}
@media all and (min-width: 768px) { #rosen .inner { max-width: 1170px; width: 100%; margin: auto; padding: 78px 0 50px; }
   #rosen .txt { width: 79.5%; max-width: 902px; margin: 95px auto 0; padding-right: 0; }
   #rosen .btn { width: 35%; max-width: 394px; margin: 37px auto 0; } }
/*   詳細ページ
================================================ */
#rosen .api-wrap .ajax_link_rewrite{position: relative;z-index: 2;}
/*#rosen .api-wrap .ajax_link_rewrite:empty { position: relative;top:15px; }
#rosen .api-wrap .ajax_link_rewrite:empty:before { content: "運行休止";display: block;text-align: center;font-weight: bold;font-size: 18px;color: red;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
#rosen .api-wrap .ajax_link_rewrite.add:empty:before { display: none;}*/
#rosen .api-wrap .ajax_link_rewrite.add + .add:before { display: none;}
#rosen .api-wrap .table { margin-bottom: 0;background: #fff;padding:15px;border-radius: 8px; }
#rosen .api-wrap .add thead { display: none; }
#rosen .api-wrap td,#rosen .api-wrap th{border-top: none;}
#rosen .api-wrap td:nth-child(2) { padding-top: 8px; text-align: right; font-size: 14px; letter-spacing: .08em;   color: #ff3838; }
#rosen .api-wrap td:nth-child(2) span { font-size: 22px; color: #F65474; font-weight: 700; }
#rosen .api-wrap .ico { display: none;}
#rosen .api-wrap .ico img { width: 18px;height: auto; }
#rosen .api-wrap .area { width: 100%; padding-left: 0px; padding-top: 6px; font-size: 16px; font-weight: 700; }
#rosen .api-wrap .area img { width: 16px; margin: 0 8px; vertical-align: middle; }
#rosen .api-wrap .time { margin-top: 3px; font-size: 12px; color: #666; }
#rosen .api-wrap .btns { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 10px; }
#rosen .api-wrap .btns .btn { width: 50%; max-width: none; margin: 0; padding: 0 5px; border: 0; white-space: normal; }
/*#rosen .api-wrap .btns .btn + .btn { margin-top: 10px; }*/
#rosen .api-wrap .btns .btn a { position: relative; display: block; padding: 6px; background: #fcd100; color: #4e2f18; border: 2px solid #fcd100; border-radius: 4px; font-size: 13px; font-weight: bold; text-align: center; }
#rosen .api-wrap .btns .btn a:hover { text-decoration: none; color: #fff; background: #4e2f18;}
#rosen .api-wrap .btns .btn a:after {position: absolute; top: 50%; right: 5px; transform: translate(0, -50%); content: "\f0da"; font-size: 14px; font-family: "Font Awesome 5 Free"; font-weight: 900; z-index: 2; }
#rosen .api-wrap .btns .btn.is_pink a { background: none; color: #4e2f18; border-color: #fc8200; }
#rosen .api-wrap .btns .btn.is_pink a:hover { opacity: .8; }
#rosen tr + tr { border-top: 1px dashed #ccc; }
@media all and (max-width: 767px) {  #rosen table,  #rosen tbody,  #rosen tr,  #rosen th,  #rosen td { display: block; border: 0; padding: 0; }
   #rosen thead { display: none; }
   #rosen tr { padding: 10px 0 10px; }
   #rosen .add { border-top: 1px solid #E7E7E7; }
   #rosen td:first-child { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; } }
   
@media all and (min-width: 768px) {  #rosen .copy { max-width: 882px; margin: -56px auto 65px; }
   #rosen .copy:before { left: 134px; width: 148px; height: 92px; margin-top: -16px; }
   #rosen .api-wrap thead th { padding: 27px 0 16px; font-size: 15px; text-align: center; font-weight: 500; border: 0; }
   #rosen .api-wrap thead th:nth-child(1) { width: 35.5%; }
   #rosen .api-wrap thead th:nth-child(2) { padding-right: 50px; text-align: right; }
   #rosen .api-wrap thead th:nth-child(3) { width: 27.8%; }
   #rosen .api-wrap table { width: 100%; }
   #rosen .api-wrap .ajax_link_rewrite:first-child table tbody tr:first-child td { border-top: 0; }
   #rosen .api-wrap td { padding: 10px 0; vertical-align: middle; font-size: 0;}
   #rosen .api-wrap td:nth-child(2) { padding-top: 22px; padding-right: 0px; color: #ff3838; width: 30%;}
   #rosen .api-wrap td:nth-child(3) { padding-left: 10px; width: 36%; }
   #rosen .api-wrap .ico { display: inline-block; width: 34px; vertical-align: middle; }
   #rosen .api-wrap .ico img { width: 14px; }
   #rosen .api-wrap .ico img + img { margin-left: 6px; }
   #rosen .api-wrap .area { display: inline-block; width: calc(100% - 68px); vertical-align: middle; font-size: 18px;padding-left: 20px;padding-top: 0; }
   #rosen .api-wrap .area img { margin: 0 10px; }
   #rosen .api-wrap .time { margin-top: 4px; font-size: 14px; }
   #rosen .api-wrap .btns { margin-top: 0; }
   /*#rosen .api-wrap .btns .btn { width: 100%; }*/
   /*#rosen .api-wrap .btns .btn + .btn { margin-top: 10px; }*/
   #rosen .api-wrap .btns .btn a { padding: 6px;}
   #rosen .api-wrap .btns .btn a:before { left: 16px; }
    }

@media all and (min-width: 1200px) {  
   #rosen .api-wrap .btns .btn + .btn { float: right; margin-top: 0; }
   #rosen .api-wrap td:nth-child(3) { padding-left: 5px; width: 30%; }
   }

#rosen .api-wrap td:nth-child(2) span.nomalprice,
#rosen .api-wrap td:nth-child(2) span.nomalprice > span{
	color: #666 !important;
	font-size: 18px;
}
#rosen .api-wrap td:nth-child(2) span.nomalprice > span{
	text-decoration: line-through;
}
.nomalprice:after{
	content: "\f0da" !important;
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	font-size: 22px !important;
	margin:0 8px;
	color: #F65474;
}


.box-sale{
}
.box-sale + .box-sale{
	padding-top: 60px;
}
.box-tdr,.box-usj,.box-fujiq,.box-nagashima{
	padding: 30px 20px 20px;
}
.box-tdr{
	border-radius: 8px;
	background: url(/tour/campaign/tdr/img/2019/bg-main.jpg) repeat-x top center;
	background-size: auto 100%;
}
.box-usj{
	border-radius: 8px;
	background: url(/static/img/usj/main-bg.jpg) top right;
	background-size: auto 100%;
}
.box-fujiq{
	border-radius: 8px;
	background: url(/tour/campaign/fujiq/img/bg_sky.png) repeat-x #287dc8;
}
.box-nagashima{
	border-radius: 8px;
	background: url(/tour/campaign/nagashima/img/bg-modelcourse.jpg) center center / cover no-repeat;
}

.text-saletime{
	display: block;
	border:solid 3px #ED9744;
	padding: 12px 12px;
	border-radius: 4px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	width: 100%;
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}
.student .text-saletime{
	display: block;
	border:solid 3px #4390e5;
	padding: 12px 12px;
	border-radius: 4px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	font-family: initial;
}
.text-saletime span{
	background:#ED9744;
	color: #fff;
	font-size: 80%;
	padding: 2px 12px;
	margin-right: 12px;
	border-radius: 2px;
	font-weight: normal;
	position: relative;
	top: -3px;
	font-family: initial;
}
.student .text-saletime span{
	background:#F65474;
}
.text-saletime small{
	margin-left: 3px;
	margin-right: 3px;
	font-size: 14px;
}
@media(max-width:768px) {
.box-tdr,.box-usj,.box-fujiq,.box-nagashima{
	padding: 20px 10px;
}
.text-saletime{
	padding: 6px 6px;
}
.text-saletime span{
	display: block;
	margin-bottom: 6px;
	margin-right: 0;
}
}



.wrap-commingsoon{
	text-align: center;
	padding: 24px 0;
}
.wrap-commingsoon b{
	font-size: 30px;
	letter-spacing:0;
	color: #4e2f18;
	font-weight: bold;
}




.ledText {
    overflow: hidden;
    position: relative;
    padding:5px 0;
    color: #e6f429;
    font-size: 24px;
    font-weight: bold;
    background: #222222;
	line-height: 1em;
	border-top: 4px solid #e6f429;
	border-bottom: 4px solid #e6f429;
}
p.ledText {
	font-family: initial;
}
.ledText:after {
    content: ' ';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(#0a0600 1px, transparent 0px), linear-gradient(0, #0a0600 1px, transparent 1px);
	background-image: -webkit-linear-gradient(#0a0600 1px, transparent 0px), -webkit-linear-gradient(0, #0a0600 1px, transparent 1px);
	background-size: 2px 2px;
}
.ledText span {
	display: inline-block;
	white-space: nowrap;
	padding-left: 100%;
	-webkit-animation-name: marquee;
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-duration: 25s;
	-moz-animation-name: marquee;
	-moz-animation-timing-function: linear;
	-moz-animation-iteration-count: infinite;
	-moz-animation-duration: 25s;
	animation-name: marquee;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-duration: 25s;
}
@-webkit-keyframes marquee {
  from   { -webkit-transform: translate(0%);}
  99%,to { -webkit-transform: translate(-100%);}
}
@-moz-keyframes marquee {
  from   { -moz-transform: translate(0%);}
  99%,to { -moz-transform: translate(-100%);}
}
@keyframes marquee {
  from   { transform: translate(0%);}
  99%,to { transform: translate(-100%);}
}
.realtimeuserscounter {
	display:inline-block;
}



.price-box{
	display: block;
	text-align: right;
}
.price-box .num{
    font-weight: bold;
    color: #ff3838;
    font-size: 24px;
}
.price-box .num.min:after{
    content: "～";
    font-size: 16px;
    margin:0 3px;
}
.price-box .num.max:after{
    content: "円";
    font-size: 12px;
}


.wrap-introbg{
	width: 100%;
	overflow: hidden;
	text-align: center;
	margin-top: 36px;
}
.wrap-introbg img{
	margin:0 auto;
    position: relative;
    left: 50%;
    top: 0px;
    transform: translate(-50%, 0);
}




.table-seat{
	font-size: 14px;
}
.table-seat th{
	width: 40%;
}
.table-seat td{
	width: 60%;
}


.label-news{
	background: #dc3545;
	color: #fff;
	color: #fff;
	border-radius: 4px;
	margin-right: 6px;
	display: inline-block;
	font-size: 80%;
	padding: 2px 8px;
	position: relative;
	top: -2px;
}
.alert-danger{
	background-color: #fff;
}


.list-rosenlink{
	width: 90%;
	margin: 0 auto;
}
.list-rosenlink li{
	display: block;
	float: left;
	width: 33.333%;
	font-size: 16px;
	text-align: center;
	padding: 6px;
}
@media(max-width:768px) {
.list-rosenlink {
	display: block;
	width: 100%;
	margin: 0 auto;
}
.list-rosenlink li {
	display: block;
	width: 50%;
	margin-bottom: 20px;
	padding: 0 3px;
	font-size: 14px;
}
}




.title-salestart{
	text-align: center;
	margin-bottom: 20px;
}
.title-salestart img{
	width: 100%;
	max-width: 100px;
}
.wrap-saleplan{
	width: 100%;
	max-width: 740px;
	margin: 0px auto 50px;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	padding: 10px;
	border: solid 4px #ffe7ef;
}
.list-saleplan{
	counter-reset:renban;
}
.list-saleplan li{
	font-size: 18px;
	font-weight: bold;
}
.list-saleplan li a{
	display: block;
	padding: 10px 30px 10px 50px;
	position: relative;
	color: #4e2f18;
}
.list-saleplan li + li a{
	border-top: 1px dashed #ccc;
}
.list-saleplan li a:hover{
	text-decoration: none;
	background: #ffe7ef;
}
.list-saleplan li b{
  font-size: 110%;
  margin:0;
  color: #F65474;
  font-style: normal;
}
.list-saleplan li a:before {
	counter-increment:renban;
	content:counter(renban) "";
	background: #f6c83f;
	color: #333;
	display: flex;
	width: 20px;
	height: 20px;
	font-size: 10px;
	justify-content: center;
	align-items: center;
	line-height: 1;
	position: absolute;
	top: 16px;
	left: 10px;
	border-radius: 100px;
}
.list-saleplan li a:after{
    content: "\f13a";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0, -50%);
    font-weight: bold;
    color: #f43d7d;
}
.title-saleplan{
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.4;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	display: flex;
	justify-content: center;
	color: #fff;
}
.box-bus .title-saleplan{
	color: #494b49;
}
.title-saleplan .icon-number{
	background: #f6c83f;
	color: #333;
	display: flex;
	width: 26px;
	height: 26px;
	font-size: 60%;
	justify-content: center;
	align-items: center;
	line-height: 1;
	border-radius: 100px;
	position: relative;
	top: 4px;
	margin-right: 10px;
}
.lead-saleplan{
	font-size: 16px;
	background: #fefff0;
	border-radius: 5px;
	padding: 10px 10px;
	color: #4e2f18;
	border: solid 3px #f6c83f;
	position: relative;
	z-index: 1;
}
/*.lead-saleplan:after {
    content: "";
    border: 15px solid transparent;
    border-top: 15px solid #f6c83f;
    position: absolute;
    left: 50%;
    bottom: -32px;
    transform: translate(-50%, 0);
    z-index: -1;
}*/
.lead-saleplan b{
	font-size: 110%;
	margin:0;
	color: #F65474;
	font-style: normal;
	display: block;
}
@media(max-width:768px) {
.list-saleplan li{
	font-size: 16px;
}
.list-saleplan li a{
	padding: 10px 30px 10px 40px;
}
.list-saleplan li a:after{
    right: 0px;
}
.list-saleplan li:before {
	top: 2px;
	left: 0;
}
.title-saleplan{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 15px;
	position: relative;
	display: block;
	padding-left: 36px;
}
.box-bus .title-saleplan{
	display: flex;
	padding-left: 0;
}
.title-saleplan .icon-number{
	width: 26px;
	height: 26px;
	font-size: 12px;
	position: absolute;
	top: 0;
	left: 0;
}
.box-bus .title-saleplan .icon-number{
	width: 26px;
	height: 26px;
	font-size: 12px;
	position: relative;
	top: auto;
	left: auto;
}
.lead-saleplan{
	font-size: 14px;
	text-align: left;
	padding: 10px 15px;
}
.lead-saleplan b{
  font-size: 120%;
  text-align: center;
  margin-bottom: 10px;
}
.box-bus .lead-saleplan b{
	font-size: 120%;
}
}


.table2{
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  padding: 15px;
}
.ul-depselect{
  display: flex;
}
.ul-depselect > li{
  padding: 0;
}
.ul-depselect + .ul-depselect{
  border-top: 1px dotted #ccc;
}
.li-dep-name{
  width: 25%;
  display: flex;
}
.li-dep-menu{
    width: 75%;
    border-left: dotted 1px #ccc;
}
.ul-depselectdetail{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    counter-reset: renban;
}
.ul-depselectdetail > li{
    width: 50%;
    text-align: right;
    border-right: dotted 1px #ccc;
}
.ul-depselectdetail > li a{
    padding: 12px 12px 10px 12px;
    display: block;
    position: relative;
}
.li-dep-name a,
.li-dep-name span{
  font-weight: bold;
  display: flex;
  align-items: center;
  padding: 12px;
  width: 100%;
}
.li-dep-name.list-area-navy span{
	color:#1a2975;
    background: #f5f7ff;
    border-left: 5px solid #1a2975;
}
.li-dep-name.list-area-orange span{
	color:#f68732;
    background: #fff8f3;
	border-left: 5px solid #f68732;
}
.li-dep-name.list-area-red span{
	color:#ef3c4d;
    background: #fff2f3;
    border-left: 5px solid #ef3c4d;
}
.li-dep-name.list-area-purple span{
	color:#9435b8;
	background: #fbf0ff;
	border-left: 5px solid #9435b8;
}
.li-dep-name.list-area-blue span{
	color:#4db8f0;
    background: #f5fcff;
	border-left: 5px solid #4db8f0;
}
.li-dep-name.list-area-green span{
	color:#66aa2f;
	background: #f9fff5;
	border-left: 5px solid #66aa2f;
}
.li-dep-name.list-area-lightgreen span{
	color:#9ba61d;
	background: #fefff2;
	border-left: 5px solid #9ba61d;
}

.plan-name {
    display: block;
    text-align: left;
    font-size: 14px;
    color: #333;
    padding-left: 14px;
    position: relative;
}
.ul-depselectdetail > li .plan-name:before {
    counter-increment: renban;
    content: counter(renban) ".";
    color: #666;
    position: absolute;
    top: 0;
    left: 0;
}
.li-dep-set + .li-dep-set{
    border-left: none;
}
.li-set .wrap-price .num{
    font-size: 18px;
    font-weight: bold;
    color: #F14482;
}
.li-set .wrap-price .num.min:after{
    content: "～";
    font-size: 12px;
    margin-right: 3px;
}
.li-set .wrap-price .num.onlybus:after{
    content: "円～";
    font-size: 12px;
    margin-right: 3px;
}
.li-set .wrap-price .num.max:after{
    content: "円";
    font-size: 12px;
}
.li-set a:hover{

  background:#ffe7ef;
  text-decoration: none;
}
.li-set a:hover .wrap-price .num,
.li-set a:hover .plan-name,
.li-set a:hover .plan-name:before{

  text-decoration: none;
}
.li-set a .wrap-price{
  display: inline-block;
}
@media (max-width: 767px) {
.table2{
	background: none;
	border-radius:0;
	padding: 0px;
}
.ul-depselect{
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}
.li-dep-name{
  width: 28%;
  display: flex;
}
.li-dep-menu{
    width: 72%;
}
/*.list-area-red + .li-dep-menu{
    background: #fff2f3;
}
.list-area-orange + .li-dep-menu{
    background: #fff8f3;
}
.list-area-green + .li-dep-menu{
    background: #f9fff5;
}
.list-area-lightgreen + .li-dep-menu{
    background: #fefff2;
}
.list-area-blue + .li-dep-menu{
    background: #f5fcff;
}
.list-area-navy + .li-dep-menu{
    background: #f5f7ff;
}*/
.ul-depselectdetail{
    background: #fff;
}
.ul-depselectdetail > li a{
  padding: 12px 24px 12px 12px;
}
.ul-depselectdetail > li{
    width: 100%;
    border-right: none;
}
.ul-depselectdetail > li{
    border-top: dotted 1px #ccc;
}
.ul-depselectdetail > li:first-child{
    border-top: none;
}
.li-dep-empty{
    display: none !important;
}
.ul-depselect + .ul-depselect{
  border-top: none;
  margin-top: 12px;
}
.ul-depselect > li.li-dep-name span{
  padding: 3px;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  display: flex;

  font-size: 16px;
  text-align: center;
}
.li-dep-name.list-area-navy span{
	color:#1a2975;
    background: #f5f7ff;
	border-left: none;
}
.li-dep-name.list-area-orange span{
	color:#f68732;
    background: #fff8f3;
	border-left: none;
}
.li-dep-name.list-area-red span{
	color:#ef3c4d;
    background: #fff2f3;
	border-left: none;
}
.li-dep-name.list-area-purple span{
	color:#9435b8;
	background: #fbf0ff;
	border-left: none;
}
.li-dep-name.list-area-blue span{
	color:#4db8f0;
    background: #f5fcff;
	border-left: none;
}
.li-dep-name.list-area-green span{
	color:#66aa2f;
	background: #f9fff5;
	border-left: none;
}
.li-dep-name.list-area-lightgreen span{
	color:#9ba61d;
	background: #fefff2;
	border-left: none;
}




.li-set a:after{
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translate(0, -50%);
  color: #F14482;
  font-size: 12px;
}
}


.btn-returnlist{
	text-align: center;
}
.btn-returnlist a{
	display: none;
}
@media (max-width: 767px) {
.m_fixed{
	left: 0;
	position: fixed;
	top: 0;
	z-index: 10;
	width: 100%;
}
.btn-returnlist.m_fixed a{
	display: block;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	padding: 15px 10px;
	border-radius: 0 0 4px 4px;
	position: relative;
}
.btn-returnlist.m_fixed a:before {
    content: "\f35b";
    font-size: 14px;
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    z-index: 2;
    color: #fff;
    margin-right: 5px;
}
.btn-returnlist.m_fixed a:after {
    content: "\f35b";
    font-size: 14px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    z-index: 2;
    margin-left: 5px;
}
.btn-returnlist a:hover{
	text-decoration: none;
	opacity: 0.5;
}
}


