/* 無限ループ防止 */
.fixed-banner {display: none;}
.title_wrap {
	margin: 40px auto 20px;
}
.content-wrapper {
	padding: 20px 0;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

.webyoyaku_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap:25px;
}

.online_r p {
	font-size: 15px;
}
p.phone {
	margin-bottom: 10px;
	font-size: 16px;
}
.cancel {
	 font-size: 12px;
}
.linkwraps {
	margin-top: 5px;
}

/* キャンセルポリシーのテーブルスタイリング */
.canpoli table {
    width: 100%;
    margin: 15px 0;
    background: #fff;
}

.canpoli th {
    font-weight: bold;
    text-align: left;
    vertical-align: top;
    white-space: nowrap;
    width: 140px;
    letter-spacing: 0.5px;
}

.canpoli td {
    vertical-align: top;
}

.canpoli td p {
    margin-bottom: 12px;
    line-height: 1.6;
}

.canpoli td p:last-child {
    margin-bottom: 0;
}

/* 見出し部分の調整 */
.canpoli dt,
.canpoli dd{
    margin-bottom: 10px;
}


/* テーブル内の強調テキスト */
.canpoli td strong {
    color: #453022;
    font-weight: bold;
}

.mail_r {
	font-size:15px;
}
.mail_r dt {
	font-weight: bold;
	padding-bottom: 3px;
}

.mail_r dd .fs12 {
	line-height: 1.3;
	margin-top: 5px;
}

/* モバイル対応 */
@media (max-width: 768px) {
	.webyoyaku_wrap {
		flex-direction: column;
	}
	
	.canpoli {
		border-top: 1px dashed #ccc;
		border-bottom: 1px dashed #ccc;
		padding:  10px 0;
		margin-bottom: 20px;
	}

    .canpoli table {
        font-size: 13px;
    }
    
    .canpoli th {
        font-size: 13px;
        width: 100px;
    }
    
    .canpoli td {
        padding: 0px 0 10px 10px;
        font-size: 13px;
    }
    
    .canpoli td p {
        margin-bottom: 10px;
    }
}

/* 小さな画面でのテーブル表示改善 */
@media (max-width: 600px) {
    .canpoli table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .canpoli table, 
    .canpoli thead, 
    .canpoli tbody, 
    .canpoli th, 
    .canpoli td, 
    .canpoli tr {
        display: block;
    }
    
    .canpoli th {
        position: absolute;
        top: -9999px;
        left: -9999px;
		white-space:normal;
    }
    
    
    .canpoli td {
        border: none;
        position: relative;
        padding: 10px 0 10px 120px;
        white-space: normal;
    }
    
    .canpoli td:before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        top: 10px;
        width: 110px;
        padding-right: 10px;
        white-space: normal;
        font-weight: bold;
        color: #6b5c50;
        font-size: 12px;
    }
}

.rounded-link {
      display: inline-block;
      padding: 8px 12px;
      border-radius: 10px;
      color: white;
      text-decoration: none;
      font-weight: bold;
      position: relative;
      overflow: hidden;
      z-index: 1;
	  color: #ffffff;
	  background-color: #6b5c50; /* メインブラウン系に変更 */
	  transition: all 0.3s ease;
    }
    
    .rounded-link::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(135deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 50%, rgba(0,0,0,0.1) 100%);
      z-index: -1;
    }
.rounded-link:hover {
      color: #fff;
      background-color: #6B4E3D; /* ホバー時は少し濃いブラウンに */
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
	
/* iphone見え方改善 */
@media (max-width: 390px) {

.title_wrap h2 img {
	max-width: 200px;
}
.webyoyaku_wrap {
	font-size: 15px;
}
.canpoli th,
.canpoli td{
	width: 100%;
	display: block;
	padding: 0;
}

.canpoli th {
	position: relative;
	left: auto;
	top: auto;
	font-weight: bold;
	color: #6b5c50;
	font-size: 12px;
	padding-bottom: 3px;
	margin-bottom: 3px;
	border-bottom: 1px dotted #b5aea8;
}
.canpoli td {padding-bottom: 10px;}
.canpoli td:before {
        content: none;
        position: relative;
        left: auto;
        top: auto;
        padding-right: 10px;
}


}