@charset "Shift_JIS";

body {
 -webkit-text-size-adjust: 100%; /* iOS対策 */
 -ms-text-size-adjust: 100%; /* iOS対策 */
	background: #fff7f7;
	color: #666;
	font: 16px "メイリオ", "Meiryo", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
a:link,
a:visited,
a:active {
}
a:hover {
}
p {
 font-size: 16px;
 line-height: 160%;
 color: #333;
 margin: 0 .5em .8em;
}

/*-------------------------
　　汎用
--------------------------*/
.fSSS { font-size: 77% !important; }
.fSS  { font-size: 85% !important; }
.fS   { font-size: 93% !important; }
.fM   { font-size: 100% !important; }
.fL   { font-size: 116% !important; }
.fLL  { font-size: 124% !important; }
.fLLL { font-size: 139% !important; }

.mt0 { margin-top: 0px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt80 { margin-top: 80px !important; }

.mr0 { margin-right: 0px !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }

.mb0 { margin-bottom: 0px !important; }
.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; }

.ml0 { margin-left: 0px !important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml50 { margin-left: 50px !important; }

.tac { text-align: center; }
.tar { text-align: right; }
.tal { text-align: left; }

.fl {
 float: left;
}
.fr {
 float: right;
}

.fwb {
 font-weight: bold;
}

.ind {
 text-indent: -1em;
 margin: .2em 0 .1em 1em;
 line-height: 130%;
}
.price {
 
}
.vert {
 line-height: 120%;
}

.kome {
	margin-left: 2em;
	text-indent: -1.2em;
	line-height: 120%;
	font-size: 0.9em;
}
.kome:before {
	content: "※";
	margin-right: .2em;
  font-weight: bold;
}

.price {
 color: #e60000;
 font-family: 'arial black';
 letter-spacing: -0.05em;
}



.s_box {
 width: 80%;
 margin: 20px auto 30px;
 border: solid 1px #666;
 padding: .5em 1em;
}
.s_box p {
 margin: 0;
 padding: 0;
 line-height: 160%;
 font-size: 0.8em;
}



.mark {
 background: linear-gradient(transparent 60%, #bfff4e 60%);
}



/*-------------------------
　　基本設計
--------------------------*/
#header {
	padding: .8em 0 .3em;
	background: #fff;
	text-shadow: 1px 1px 2px #ccc;
}
#foot {
	background: #fc9fa6;
	padding: 1.5em 0 3em;
	color: #fff;
}
#topimg {
	background: #fcf9ea;
}
#topimg img {
 margin: 0 auto;
 width: 910px;
 display: block;
}
#cont {
	width: 840px;
	margin: 0px auto;
	overflow: hidden;
	background: #fff;
	min-height: 800px;
	padding: 40px 30px;
	padding-top: 48px;
}

#side {
	float: left;
	width: 220px;
	margin-left: 5px;
}
#main {
	width: 655px;
	float: right;
	min-height: 480px;
	box-shadow: 0 0 3px #888;
	margin-right: 5px;
	margin-top: 20px;
	margin-bottom: 20px;
}
.ank {
 margin-top:-48px;
 padding-top:48px;
 overflow: hidden;
}

.period {
 background: #f76d74;
 color: #fff;
 font-weight:bold;
 font-size: 18px;
 text-align: center;
 border: double 3px #fff;
 padding: .5em 0;
 border-radius: 8px;
}
.dot_box {
 border: dotted 3px #fd9f01;
 border-radius: 8px;
 width: 80%;
 margin: 5px auto;
 padding: .8em 0em .2em;
 text-align: center;
}


/*-------------------------
　　navi
--------------------------*/
#menu {
 background: #fc9fa6;
 background: -moz-linear-gradient(top, #fc9fa6 1%, #fc5361 100%);
 background: -webkit-linear-gradient(top, #fc9fa6 1%,#fc5361 100%);
 background: linear-gradient(to bottom, #fc9fa6 1%,#fc5361 100%);
 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fc9fa6', endColorstr='#fc5361',GradientType=0 );
}
#menu .nav {
 width: 900px;
 margin: 0px auto;
}
.nav {
 width: 100%;
 border-right: #fff 1px dotted;
 display: flex;
 height: 48px;
}
.nav li {
 width: calc(100% / 7);
 border-left: #fff 1px dotted;
 text-align: center;
}
.nav li a {
 display: block;
 color: #fff;
 font-weight: bold;
 font-size: .9em;
 text-decoration: none;
 line-height: 48px;
 text-shadow: -1px -1px 0 #cc6630;
}
.nav li a:hover {
 background: #ffc3a3;
 background: -moz-linear-gradient(top, #ffc3a3 1%, #ff8f54 100%);
 background: -webkit-linear-gradient(top, #ffc3a3 1%,#ff8f54 100%);
 background: linear-gradient(to bottom, #ffc3a3 1%,#ff8f54 100%);
 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc3a3', endColorstr='#ff8f54',GradientType=0 );
}

.fixed {
 position: fixed;
 top: 0px;
 width: 100%;
 z-index: 10000;
}




/*-------------------------
　　見出し設定
--------------------------*/
#header h1 {
 color: #666;
 text-align: center;
 font-weight: bold;
 font-size: 28px;
 margin-bottom: 8px;
}
#header p {
 font-weight: bold;
 color: #666;
 text-align: center;
 font-weight: bold;
}
h2 {
 background: #FED5D9;
 box-shadow: 0px 0px 0px 5px #FED5D9;
 border: dashed 1px #fff;
 padding: 0.5em 1em;
 color: #321E17;
 font-weight: bold;
 margin-bottom: 30px;
}
h2 span {
 font-size: 0.8em;
 margin-left: 1.5em;
}
h3 {
 background: linear-gradient(transparent 70%, #fee8ea 70%);
 padding: 0.5em 1em;
 color: #683e30;
 font-weight: bold;
 margin-bottom: 1em;
 margin-top: 2em;
}
h3 span {
 font-size: 0.8em;
 margin-left: 1.5em;
}

h4 {
 margin-top: 3em;
	clear: both;
	color: #630500;
	font-weight: 600;
	padding: 8px 12px;
	margin-bottom: 10px;
	font-size: 0.9em;
	background-color: #ffdbd9;
	background-image: -webkit-linear-gradient(-45deg, #fff 25%, transparent 25%, transparent 50%, #fff 50%, #fff 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #fff 25%, transparent 25%, transparent 50%, #fff 50%, #fff 75%, transparent 75%, transparent);
	background-size: 4px 4px;
	text-shadow: -1px 1px 0 rgba(255, 255, 255, 1);
}




/*-------------------------
　　table
--------------------------*/
table {
	border-collapse: collapse;
	border: solid 1px #c70017;
	width: 100%;
	margin-top: 2em;
	margin-bottom: .5em;
	border-right: none;
}
th {
	background: #fff4f6;
	color: #7E212C;
	font-weight: bold;
	text-align: center;
	border: solid 1px #c70017;
	padding: .6em 0;
	vertical-align: middle;
	font-size: 0.8em;
}
td {
	text-align: center;
	border: solid 1px #c70017;
	padding: .5em .3em;
	line-height: 1.4;
	vertical-align: middle;
	font-size: 0.9em;
	border-right: none;
}

td:last-child{
	border-right: solid 1px #c70017;
}

.w10 {
 width: 9%;
}
.w20 {
 width: 20%;
}



/*-------------------------
　　bus_list
--------------------------*/
.bus_list {
 margin: 10px 20px;
 line-height: 130%;
}
.bus_list dt {
 font-weight: bold;
 color: #262672;
 margin: 0;
}
.bus_list dd {
 margin-bottom: .8em;
 margin-left: 1.2em;
}
.u_bus {
 margin: 5px 20px 20px;
}
.u_bus li {
 display: inline-block;
 margin-right: .5em;
}
.u_bus li:after { 
 content:"/";
 margin-left: .8em;
}




/*-------------------------
　　list
--------------------------*/
.shusai {
 margin: 5px 20px 10px 20px;
}
.shusai li {
 display: inline-block;
 line-height: 180%;
 margin-right: 1em;
}

.o_list {
 list-style-type: decimal;
 margin-left: 40px;
}
.o_list li {
 line-height: 160%;
 margin-bottom: .5em;
}

.d_list {
 margin: 5px 20px;
 line-height: 160%;
}
.d_list dt {
 font-weight: bold;
 color: #604a3d;
 margin-top: .8em;
}
.d_list dd {
 margin-left: 28px;
}
.u_list {
 list-style-type: disc;
 margin-left: 40px;
}
.u_list li {
 line-height: 160%;
 margin-bottom: .5em;
}


dl,dt,dd {
	line-height: 130%;
	margin-left: 0.5em;
	margin-bottom: .8em;
}
dt,dd {
	font-size: 16px;
}



/* access */
.access {
 margin-top: 20px;
 margin-bottom: 40px;
 border-bottom: solid 1px #ccc;
}
.access dt {
 float: left;
 clear: left;
 width: 6em;
 border-top: solid 1px #ccc;
 line-height: 1.5;
 text-align: center;
 padding: .8em;
}
.access dd {
 margin-left: 7em;
 border-top: solid 1px #ccc;
 line-height: 1.5;
 padding: .8em .5em;
 margin-bottom: 0;
}


/* 横並びリスト用 */
.t_list {
}
.t_list dt {
	width: 8em;
	float: left;
	clear: left;
	text-align: right;
	padding: 2px;
	font-weight: 600;
	color: #604a3d;
 line-height: 180%;
}
.t_list dd {
	margin-left: 9.2em;
	padding: 2px;
 line-height: 180%;
}

.t_slist {
}
.t_slist dt {
	width: 4em;
	float: left;
	clear: left;
	text-align: right;
	padding: 2px;
	font-weight: 600;
	color: #604a3d;
 line-height: 180%;
}
.t_slist dd {
	margin-left: 5.2em;
	padding: 2px;
 line-height: 180%;
}

.obent {
 display: flex;
 flex-direction: row;
}
.item1 {
 width: 16em;
 display: inline-flex;
}
.item2 {
 display: inline-flex;
}




/* 横並び日付用 */
.t_day {
	border-bottom: dotted #ccc 1px;
}
.t_day dt {
	font-size: 0.8em;
	width: 10em;
	float: left;
	clear: left;
	text-align: center;
	padding: 8px 0 8px 0;
	font-weight: 600;
	color: #888;
	border-top: dotted #ccc 1px;
}
.t_day dd {
	border-top: dotted #ccc 1px;
	font-size: 0.8em;
	margin-left: 10.7em;
	padding: 8px 2px 8px 20px;
}




/*-------------------------
　　全体設定
--------------------------*/
#foot p {
	text-align: center;
	font-weight: 600;
	font-size: 0.6em;
	color: #fff;
	line-height: 180%;
}
section {
	margin: 5px 10px 60px;
}




/*-------------------------
　　工程表
--------------------------*/
.koutei {
 display: flex;
 font-size: 0.9em;
 line-height: 130%;
 margin: 10px 5px;
 align-items: center;
}
.koutei span {
 display: block;
 font-size: 0.8em;
}
.bar {
 background: url(../img/line_bar.png);
 height: 4px;
 width: 50px;
}
.bar2 {
 background: url(../img/line_bar.png);
 height: 4px;
 width: 160px;
}
.bar3 {
 background: url(../img/line_bar.png);
 height: 4px;
 width: 30px;
}
.s_ko {
 padding: 0 8px;
}

/*-------------------------
　　リンクボタン
--------------------------*/
#button a {
	font-size: 18px;
	display: block;
	width:450px;
	margin: 20px auto 50px auto;
	border-radius:8px;
	text-shadow: 1px -1px 0 #e73827;
	box-shadow: 1px 1px 3px #444;
	padding: .8em 0;
	text-decoration: none;
	border: double 3px #fff;
	font-weight: bold;
	text-align: center;
	background: rgb(255,159,25);
	background: -moz-linear-gradient(top,  rgba(255,159,25,1) 0%, rgba(255,71,5,1) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,159,25,1)), color-stop(100%,rgba(255,71,5,1)));
	background: -webkit-linear-gradient(top,  rgba(255,159,25,1) 0%,rgba(255,71,5,1) 100%);
	background: -o-linear-gradient(top,  rgba(255,159,25,1) 0%,rgba(255,71,5,1) 100%);
	background: -ms-linear-gradient(top,  rgba(255,159,25,1) 0%,rgba(255,71,5,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,159,25,1) 0%,rgba(255,71,5,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9f19', endColorstr='#ff4705',GradientType=0 );
	color: #fff;
	line-height: 120%;
}
#button a:hover {
	background: #ffff88;
	background: -moz-linear-gradient(top,  #ffff88 0%, #ffd000 100%);
	background: -webkit-linear-gradient(top,  #ffff88 0%,#ffd000 100%);
	background: linear-gradient(to bottom,  #ffff88 0%,#ffd000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff88', endColorstr='#ffd000',GradientType=0 );
	text-shadow: 1px 1px 0 #e73827;
}
#button span {
 display: block;
 font-size: 0.8em;
 font-weight: nomal;
}



/*-------------------------
　　totop
--------------------------*/
#back-top {
	position: fixed;
	bottom: 10px;
	right: 50px;
}
#back-top a {
	width: 50px;
	display: block;
	text-align: center;
	font: 10px/100% Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	text-decoration: none;
	color: #ff6619;
	-webkit-transition: 1s;
	-moz-transition: 1s;
	transition: 1s;
}
#back-top a:hover {
	color: #f76d74;
}
#back-top span {
 width: 50px;
 height: 50px;
 display: block;
 margin-bottom: 7px;
 background: #ff6619 url(../img/totop.png) no-repeat center center;
 -webkit-border-radius: 8px;
 -moz-border-radius: 8px;
 border-radius: 12px;
 -webkit-transition: 1s;
 -moz-transition: 1s;
 transition: 1s;
}
#back-top a:hover span {
	background-color: #f76d74;
}