@charset "utf-8";

/* ------------------------------------------------------- */
/* layout ------------------------------------------------ */
/* ------------------------------------------------------- */
/* base --------------------------------------------------*/
body{
	font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  sans-serif;
	font-size:0.9em;
	line-height:1.5em;
	color:#333;
	-webkit-text-size-adjust: none;
}
a{text-decoration: underline; color:#174ea0;}
a:hover {color:#00265e;}

/* ------------------------------------------------------- */
/* share ------------------------------------------------ */
/* ------------------------------------------------------- */
.dispinline{display:inline;}
.dispinb{display:inline-block;}
.dispb{display:block!important;}
.dispb{display:block!important;}
.disable {cursor:default;}
.mauto{margin-left:auto; margin-right:auto;}
.mb0{margin-bottom:0px!important;}
.mb1{margin-bottom:1px!important;}
.mb5{margin-bottom:5px!important;}
.mb10{margin-bottom:10px!important;}
.mb15{margin-bottom:15px!important;}
.mb20{margin-bottom:20px!important;}
.mb25{margin-bottom:25px!important;}
.mb30{margin-bottom:30px!important;}
.mb35{margin-bottom:35px!important;}
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb55 { margin-bottom: 55px; }
.mb60 { margin-bottom: 60px; }
.mb65 { margin-bottom: 65px; }
.mb70 { margin-bottom: 70px; }
.mb75 { margin-bottom: 75px; }
.mb80 { margin-bottom: 80px; }
.mb85 { margin-bottom: 85px; }
.mb90 { margin-bottom: 90px; }
.mb95 { margin-bottom: 95px; }
.mb100 { margin-bottom: 100px; }
.dpIn {display:inline;}
.dispb{display:block;}

/*flexBox1 左右50%*/
/*flexBox2 左4分の1*/
/*flexBox3 右4分の1*/
/*flexBox4 均等3つ並び*/
/*flexBox5 左3分の1*/
/*flexBox6 右3分の1*/
.flexBox1,
.flexBox2,
.flexBox3,
.flexBox4,
.flexBox5,
.flexBox6{
    display: flex;
    margin-bottom: 25px;
}
.flexBox1 > div:nth-of-type(1),
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(1),
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(1){
    margin-right: 25px;
}
.flexBox1 > div {width: calc((100% - 25px) / 2);}
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(2){
    width: calc((100% - 75px) /4);
}
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(2){
    width: calc((100% - 50px) /3);
}
.flexBox2 > div:nth-of-type(2),
.flexBox3 > div:nth-of-type(1){
    width: calc(100% - 25px - ((100% - 75px) /4));
}
.flexBox5 > div:nth-of-type(2),
.flexBox6 > div:nth-of-type(1){
    width: calc(100% - 25px - ((100% - 50px) /3));
}
.flexBox4 > div {
    width: calc((100% - 50px) / 3);
    margin-right: 24.9px;
}
.flexBox4 > div:nth-of-type(3) {margin-right: 0;}
@media only screen and (max-width:768px) {
    .flexBox1,
    .flexBox2,
    .flexBox3,
    .flexBox4,
	.flexBox5,
	.flexBox6{
        display: block;
    }
    .flexBox1 > div:nth-of-type(1),
    .flexBox2 > div:nth-of-type(1),
    .flexBox3 > div:nth-of-type(1),
    .flexBox4 > div,
	.flexBox5 > div:nth-of-type(1),
	.flexBox6 > div:nth-of-type(1){
        width: 100%;
        margin: 0 0 15px 0;
    }
    .flexBox1 > div:nth-of-type(2),
    .flexBox2 > div:nth-of-type(2),
    .flexBox3 > div:nth-of-type(2),
    .flexBox4 > div:nth-of-type(3),
	.flexBox5 > div:nth-of-type(2),
    .flexBox6 > div:nth-of-type(2){
        width: 100%;
        margin-bottom: 0;
    }
}

.va-top{vertical-align:top;}
.va-bottom{vertical-align:bottom;}
.va-middle{vertical-align:middle;}
.indent{text-indent:1em;}
.indent1{
    margin-left:1em;
    text-indent:-1em;
}
/*flexBox1 左右50%*/
/*flexBox2 左4分の1*/
/*flexBox3 右4分の1*/
/*flexBox4 均等3つ並び*/
/*flexBox5 左3分の1*/
/*flexBox6 右3分の1*/
.flexBox1,
.flexBox2,
.flexBox3,
.flexBox4,
.flexBox5,
.flexBox6{
    display: flex;
    margin-bottom: 25px;
}
.flexBox1 > div:nth-of-type(1),
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(1),
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(1){
    margin-right: 25px;
    box-sizing: border-box;
}
.flexBox1 > div {width: calc((100% - 25px) / 2);}
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(2){
    width: calc((100% - 75px) /4);
    box-sizing: border-box;
}
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(2){
    width: calc((100% - 50px) /3);
    box-sizing: border-box;
}
.flexBox2 > div:nth-of-type(2),
.flexBox3 > div:nth-of-type(1){
    width: calc(100% - 25px - ((100% - 75px) /4));
    box-sizing: border-box;
}
.flexBox5 > div:nth-of-type(2),
.flexBox6 > div:nth-of-type(1){
    width: calc(100% - 25px - ((100% - 50px) /3));
    box-sizing: border-box;
}
.flexBox4 > div {
    width: calc((100% - 50px) / 3);
    margin-right: 24.9px;
    box-sizing: border-box;
}
.flexBox4 > div:nth-of-type(3) {
    margin-right: 0;
    box-sizing: border-box;
}
@media only screen and (max-width:768px) {
    .flexBox1,
    .flexBox2,
    .flexBox3,
    .flexBox4,
	.flexBox5,
	.flexBox6{
        display: block;
    }
    .flexBox1 > div:nth-of-type(1),
    .flexBox2 > div:nth-of-type(1),
    .flexBox3 > div:nth-of-type(1),
    .flexBox4 > div,
	.flexBox5 > div:nth-of-type(1),
	.flexBox6 > div:nth-of-type(1){
        width: 100%;
        margin: 0 0 15px 0;
        box-sizing: border-box;
    }
    .flexBox1 > div:nth-of-type(2),
    .flexBox2 > div:nth-of-type(2),
    .flexBox3 > div:nth-of-type(2),
    .flexBox4 > div:nth-of-type(3),
	.flexBox5 > div:nth-of-type(2),
    .flexBox6 > div:nth-of-type(2){
        width: 100%;
        margin-bottom: 0;
        box-sizing: border-box;
    }
}
div.pagenate {
	margin-top: 15px;
}
.pagenate span, .pagenate a {
	padding: 2px 5px;
}
.pagenate span {
	border: 1px solid #DDD;
}

/*pagetop1　固定表示*/
.backtotop {
	clear:both;
    text-align:center;
	margin-top:10px;
    }
.backtotop a {
	display:block;
	width:180px;
	margin:0 auto;
	text-decoration:none;
	background:#ff5d14;
	padding:10px 15px;
	margin-bottom:15px;
	color:#fff;
	border-top:1px solid #ff8500;
	border-left:1px solid #ff8500;
	border-bottom:1px solid #ff1800;
	border-right:1px solid #ff1800;
	text-shadow: 1px 1px 0px rgba(202, 24, 0, 1);
}

/* font ---------------------------------------------------*/
.small1{font-size:0.9em;}
.big1{font-size:1.2em;line-height:1.5em}
.big2{font-size:1.6em;line-height:1.5em}
strong, .bold{font-weight:bold;}
.txt-right{text-align:right;}
.txt-center{text-align:center;}
.under-line{text-decoration:underline;}
.red{color:#FF0004;}
.blue{color: #06C;}
.orange{color: #fd9003;}
.font-family1 {font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;}

/* image -------------------------------------------------*/
img{ 
	max-width: 100%; 
	height: auto; 
	width /***/:auto; //IE8用 
}

img.img-center {
	margin-left:auto;
	margin-right:auto;
	display:block;
}
img.img-left{
     padding:0px 15px 10px 0px;
     float:left;
}
img.img-right{
     padding:0px 0px 10px 15px;
     float:right;
}
img.img-left-nsp {
     padding:0px 15px 10px 0px;
     float:left;
}

.spShopImg{
	width:140px;
	height:100px;
	float:right;
	margin-right:10px;
	}

.spWebreservationImg{
	width:140px;
	height:100px;
	margin-right:10px;
	}


/* float ----------------------------------------------*/
.float-left{float:left;}
.float-right{float:right;}

/* box -----------------------------------------------*/

.box1{
	padding:14px;
	margin-bottom:15px;
	border:1px solid #c5b8a9;
	}
.box2{
	background-color:#ecf4de;
	padding:15px;
	margin-bottom:15px;
	}
.box3 {
	background:#ffdee9;
	padding:30px 15px 15px 15px;
	margin-bottom:15px;
}
	
.float-l-box1 {
	float:left;
	padding-right:10px;
	margin-right:10px;
	border-right:2px dotted #ccc;
}
	
/* list ----------------------------------------------*/
ul.ul1 { margin-bottom:20px;}
.ul1 li{
	margin-bottom:8px;
	background:url(../images/contents/ul1.png) 0px 6px no-repeat;
	padding-left:17px;
}
.ol1 li{
	list-style-type:decimal;
	margin-left:20px;
	margin-bottom:8px;
    }
.ol1 li ul li{
	list-style-type:none;
}
.ol1 li ul.ul1 li{
	background:url(../images/contents/ul1.png) 0px 6px no-repeat;
	padding:0px 0px 0px 14px;
	margin:3px 0px 0px 0px;
}
.ul1 li ul li{
	background-image:none;
	list-style-type:disc;	
	padding-left:0px;
	margin:5px 0px 0px 19px;
	}

/*リスト4つ並び*/
ul.ul-fl1 li {
	width:25%;
	box-sizing:border-box;
	padding:0 3px;
	float:left;	
}
ul.ul-fl1 li img {
	max-width:100%;
	height:auto;
}

/*リスト2つ並び*/
ul.ul-fl2 li {
	width:50%;
	box-sizing:border-box;
	padding:0 3px;
	float:left;	
}
ul.ul-fl2 li:nth-child(odd) {
	clear:left;
}


/* dl ----------------------------------------------*/
dl.dl1{
	margin-bottom:20px;
	border:1px solid #ccc;
	padding:15px;
}
.dl1 dt{
	font-weight:bold;
	background:#f5f5f5;
	padding:2px 5px;
	margin-bottom:5px;
}
.dl1 dd{ margin-bottom:10px;}
.dl1 dd:last-child {margin-bottom:0;}

/* pagetitle navi ----------------------------------------------*/
.page-info {
	background:#fff;
	border-top:1px solid #d9cdbf;
	border-bottom:1px solid #d9cdbf;
	border-right:1px solid #d9cdbf;
	border-left:1px solid #d9cdbf;
	padding:15px 19px 10px 19px;
	box-sizing:border-box;
	margin-bottom:15px;
}
.page-info .navi {
	font-size:0.8em;
	line-height:1.35em;
	color:#6e6245;
	margin-bottom:3px;
}
.page-info .navi a {
	color:#6e6245;
	text-decoration:none;
}
.page-info h2 {
	font-size:1.6em;
	line-height:1.4em;
}



/* midashi ----------------------------------------------*/
h2{
	background:#174ea0;
	background: -webkit-linear-gradient(top, rgba(23,78,160,1) 0%,rgba(60,115,198,1) 100%);
	background: linear-gradient(to bottom, rgba(23,78,160,1) 0%,rgba(60,115,198,1) 100%); 	
	padding: 15px 20px;
	margin-bottom: 20px;
	font-size:1.4em;
	font-weight:bold;
	color:#ffffff;
}

h3{
	border-top:2px solid #ff8400;
	background:#fff1e5;
	background: -webkit-linear-gradient(top, rgba(255,241,229,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(255,241,229,1) 0%,rgba(255,255,255,0) 100%); 
	padding: 15px 15px;
	font-size:1.2em;
	font-weight:bold;
	margin-bottom: 5px;
}

h4{
	background: #ffffff;
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f2f2f2 100%); 
	background: linear-gradient(to bottom,  #ffffff 0%,#f2f2f2 100%); 
	border-bottom:2px solid #999;
	padding:5px;
	margin-bottom:10px;
	font-size:1em;
	font-weight:normal;
	color:#000000;
}

h5{
	border-bottom: 1px dotted #999999;
	margin-bottom: 15px;
	padding-bottom: 3px;
	font-weight: bold;
}

/* table ----------------------------------------------*/
.table1,.table1 td,.table1 th, .td1{ border:1px solid #ccc;}
.table1 {
    border-collapse: collapse;
    margin-bottom:20px;
}
.table1 th, .table1 td, .td1 {padding:3px 6px;}
.table1 th {
	background-color: #f5f5f5;
	text-align: left;
}
.tdw {background:#fff;}
.td1 {background:#eef8d2;}
.td2 {background:#e2f7fe;}