@charset "utf-8";

/*h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
}*/
h1, h2, h3, h4, h5, h6 {
	/*margin-bottom: .5rem;*/
	line-height: 1.15;
}

body {
	padding: initial;
/*	background: #050505 url(img/bg.jpg) center top repeat;
	color: #333;*/
}

body {
    font-family: 'Zen Maru Gothic', sans-serif;
}
img {
	max-width: 100%;
	height: auto;
}

a {
	text-decoration: none;
}

@media (min-width: 1200px) {
section img{width: 100%;height: auto;}
}

/* sticky footer */
.site {
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	min-height: 100vh;
}
.main {
	flex: 1 0 auto;
  background-image: url(img/top_bg.jpg);
  background-position: center top;
  background-repeat: no-repeat; 
  background-size:100%;
}

/* パンくずリスト */

#topicpath{
margin : 0 auto;
padding : 6px 0;
width :100%;
text-align: center;
color:#fff;
background:#1eb9ee;}


#topicpath p{
margin : 0 auto;
padding : 0 10px;
max-width :1000px;
font-size : 12px;
line-height : 14px;
text-align: left;
}

#topicpath a{
color:#ff;
}

/* main */
.inner {
	margin: 1rem auto;
	text-align: center;
	padding: 0 1rem;
}
@media (min-width: 768px) {
	.inner {
		max-width: 1000px;
	}
}




.inner h2 {
  position: relative;
  display: inline-block;
  margin: 1rem 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  font-size: 1.6rem;
  background: #cd0080;
color:#fff;
border-radius: 8px;
}

.inner h2:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #cd0080;
}

.inner h2 span{font-size: 1.2rem;}


@media (max-width: 768px) {
.inner h2 {font-size: 1.2rem;}
.inner h2 span{font-size: 1rem;}
}




.title {
	font-size: 0;
}
section h2 {
	padding: 1rem;
	background-color: #000;
	color: #fff;
	font-size: 1rem;
	text-align: center;
}


.rinji{
margin: 1.5rem auto;
padding: 0;
border: 3px solid #ff0000;
box-sizing: border-box;
border-radius:10px;
max-width:920px;
background-color: #fff;
}
.rinji p{
margin: 0;
padding: .8rem;
font-size: 1.35rem;
color:#ff0000;
font-weight:bold;
}

@media (max-width: 768px) {
.rinji p{font-size: 1rem;}
.rinji .pc_on{display:none;}
}

p.chuui{
font-weight:bold;
color:#ff0000;
}



@media (min-width: 769px) {
.hotel{display:flex;}
}

/* schedule */

.schedule{
margin: 0 auto;
max-width:920px;
padding: .5rem 1rem;
border: 5px solid #ff0000;
border-radius:10px;
background-color: #fff;
text-align: left;
}

.inner span.red{color: #ef0000;}
.inner span.blue{color: #278dd8;}
.sm{font-size:0.9em;}




/* ご来店・ご入金に関するお願い */
.nyukin{
padding: .5rem 1rem;
border: 3px solid #000;
border-radius:10px;
background-color: #f2f2f2;
}
.nyukin h3{
padding: 0;
}

.nyukin p{
text-align: left;
font-weight:bold;
}

/* バスツアー実施に関する対応 */
.taiou{
text-align: left;
font-weight:bold;
}


/* footer */
.global-footer {
	background-color: #1eb9ee;
}
.copyright {
	margin: 0;
	padding: .5rem;
	color: #fff;
	font-size: .6875rem;
	text-align: center;
}




/*==============*/

/* PCでのテーブルスタイル */
.responsive-table-container {
    display: table;
    width: 100%;
    border-collapse: collapse;
}

.table-header {
    display: table-header-group;
}

.table-row {
    display: table-row-group;
}

.header-cell,
.row-cell {
    display: table-cell;
    border: 1px solid #595959;
    padding: 8px;
    text-align: left;
}

.header-cell {
    background: #f2f2f2;
    font-weight: bold;
}

.row-cell {
    background: #fff;
}

/* ここから修正箇所 */
.row-cell.header-cell {
    /* 1日目、2日目、3日目のセル */
    width: 1%; /* PC表示で幅を最小限に設定 */
    white-space: nowrap; /* 文字が折り返さないように */
}
/* ここまで修正箇所 */


/* スマホ表示 */
@media screen and (max-width: 768px) {
    .responsive-table-container {
        display: block;
    }

    .table-header {
        display: none;
    }

    .table-row {
        display: flex;
        flex-direction: column;
        margin-bottom: 20px;
        border: 1px solid #595959;
        padding: 10px;
    }

    .row-cell {
        display: block;
        border: none;
        padding: 0;
    }

    .row-cell.header-cell {
        /* スマホ表示では幅を自動調整 */
        width: auto;
        /* スマホでヘッダーセルを太字にしたい場合はここに追加 */
        font-weight: bold;
        margin-bottom: 10px; /* 内容との間に余白を追加 */
    }

    .row-item {
        display: flex;
        flex-direction: column;
        margin-bottom: 10px;
    }

    .item-content {
        line-height: 1.5;
    }
}