.hide_pc { display: none; }
.hide_sp { display: block; }
.flex {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.pos-r { position: relative; }
.pos-a { position: absolute; }
.article a:hover { text-decoration: none; }
h2 {
	margin: 30px 0 40px;
	text-align: center;
	font-size: 2.2rem;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.5;
}
.title {
	margin-top: 60px;
	margin-bottom: 120px;
}
.title h2 {
	text-align: center;
}
.title p {
	width: 90%;
	margin: 25px auto 45px;
	font-size: 1rem;
	line-height: 2.8;
}
.index{
padding-top: 50px;
}
.index .message {
	margin-bottom: 50px;
	text-align: center;
	font-size: 1.6rem;
	letter-spacing: 0.7em;
}
.concierge-list {
}
.concierge-list:after, .concierge-list:before {
	content: "";
	display: block;
	width: 49%;
	height: 0;
}
.concierge-list:before {
	order: 1;
}
.concierge-box {
    width: 100%;
    margin-bottom: 45px;
    cursor: pointer;
    padding: 20px 20px 5px;
    border-radius: 5px;
    border: 1px solid #000;}
.concierge-box .img-box {
	width: 25%;
}
.concierge-box .img-box img{
border-radius :5px;
}

.concierge-box .text-box {
	width: 67%;
}
.concierge-box img,
.concierge-box .mask,
.concierge-box p,
.concierge-box h4,
.concierge-box .small,
.concierge-box span {
	-webkit-transition: all 0.4s ease 0.2s;
	transition: all 0.4s ease 0.2s;
}
.concierge-box img{
/*border-radius: 10px;*/
}
/*
.concierge-box .mask {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	top: 0;
	left: 0;
	opacity: 1;
}*/
.concierge-box .caption {
	width: 92%;
	margin: 10px 0;
	color: #ffffff;
	font-size: 2.0rem;
	text-align: right;
}
.concierge-box h4 {
	margin: 0;
	font-size: 1.1rem;
	line-height: 1.5;
	margin-bottom: 10px;
    border-bottom: 1px solid #000;
}
.c_title{
font-size: 1.1rem;
    font-weight: bold;
border-bottom: 1px solid #000;
}

.concierge-box span {
    font-size: 0.8rem;
    line-height: 1.4;
    margin: 8px 0 5px;
}


.small {
	font-size: 0.8rem;
	line-height: 1.3rem;
}
.toggle-box {
	width: calc(100% - 26px);
	height: 0;
	max-height: 0;
	margin: 10 0 0;
	opacity: 0;
	-webkit-transition: all 0.1s ease;
	-moz-transition: all 0.1s ease;
	transition: all 0.1s ease;
}

.toggle-box span{
font-size: 1.1rem;
    font-weight: bold;
}
.open .toggle-box {
	height: auto;
	max-height: 1000px;
	padding: 5px 13px;

	opacity: 1;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}


@media screen and (min-width: 769px) {
	.concierge-box:hover img, .concierge-box .mask:hover {

	}
	.concierge-box:hover .mask {
		opacity: 0;
	}
}

@media screen and (max-width: 768px) {
	.hide_pc { display: block; }
	.hide_sp { display: none; }
	h2 {
		font-size: 1.6rem;
	}
	h2 span {
		font-size: 1.2rem;
	}
	.title {
		margin-top: 30px;
		margin-bottom: 90px;
	}
	.title .img-box {
		margin-bottom: 40px;
	}
	.title p {
		width: 100%;
		margin: 0 auto 45px;
		font-size: 1.0rem;
		line-height: 2.2;
	}
	.index .message {
		margin-bottom: 25px;
		font-size: 1.2rem;
		letter-spacing: 0.3em;
	}
	.concierge-box {
		width: 100%;
		margin-bottom: 25px;
		padding: 10px 10px 5px;
	}
	.concierge-box h4 {
		margin: 10px 0 5px;
		font-size: 0.9rem;
		font-weight: 600;
		line-height: 1.5;
	}
	.concierge-box p {
		font-size: 0.9rem;
		line-height: 1.4;
		margin: 15px 0 5px;
	}
	.concierge-box .caption {
		font-size: 2.0rem;
	}
.concierge-box .text-box {
	width: 63%;
}
.concierge-box .img-box{
width: 34%;
}
}
.c-col{
color:#757575;
    font-size: 0.8rem !important;
    font-weight: normal !important;
display: block;
    text-align: right;
}

.acc-btn{
  display:flex;
  align-items:center;
  justify-content:end;
  padding:0.3rem 0;
  border:none;
  color:#000;
  cursor:pointer;
  width: 95%;
margin-top: 55px!important;
}

/* 矢印アイコン（CSSで描画）
/*.acc-btn::after{
  content:"";
  display:inline-block;
  width:.5rem; 
  height:.5rem;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg); 
  transition:transform .25s ease;
  margin-left:.5rem; */
}

/* 開いた時に▲っぽくする */
/*.acc-btn.is-open::after,
.acc-btn[aria-expanded="true"]::after{
  transform:rotate(-135deg);*/
}

section.blk{
overflow: unset;
}

/*追加CSS*/
@media screen and (max-width: 768px) {
    .icon {
  max-width: 35px !important;
    }
.acc-btn{
width: 100%;
margin-top: 5px!important;
}
.small{
font-size: 0.75rem;
}
}




    .bg-col {
      position: relative;
      background-color: #f8f5f2;
    }

    .bg-col::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background-color: #f8f5f2;
  z-index: -1;
    }

.fade {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.5s, transform 1s;
}.fade.active {
	opacity: 1;
	transform: translateY(0px);
}

.icon {
  width: 30px!important;
  height: 30px!important;
  transition: transform 0.4s ease;
  margin-left: 10px;
  transition: opacity 0.2s ease;
  opacity: 1;
}
.icon.fade-out {
  opacity: 0;
}
/*.acc-btn[aria-expanded="true"] .icon {
  transform: rotate(180deg) scale(1.1);
}*/

.acc-content {
  display: none;
  transition: all 0.3s ease;
}
.mincho{font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.concierge-box{font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", 'Work Sans', sans-serif;}

.top_btn{
text-align: center;
    padding: 30px 0 80px;
}
:root{
  --btn-bg: #db530f;
  --btn-bg-hover: #dc692f;
  --btn-fg: #111;
  --arrow-size: 0.6em;     /* 矢印の縦横サイズ */
  --arrow-thickness: 2px;  /* 線の太さ */
  --arrow-gap: .55em;      /* 文字と矢印の間隔 */
}

/* ボタン */
a.btn{
  display: inline-block;
  padding: 1em 2.5em;
  background: var(--btn-bg);
  color: var(--btn-fg);
  text-decoration: none;
  border-radius: 6px;
  font-weight: 700;
  line-height: 1;
  transition: background .2s ease, transform .06s ease;
    font-size: 1.3rem;
    color: #fff;
}

/* ホバー */
a.btn:hover{
  background: var(--btn-bg-hover);
}

/* 右矢印（CSS描画：シェブロン） */
.btn-arrow{
  position: relative;
  padding-right: calc(1.2em + var(--arrow-size)); /* 右側に矢印ぶん余白 */
}
.btn-arrow::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 1.2em;
  width: var(--arrow-size);
  height: var(--arrow-size);
  /* “＞” 風に見える斜めの2本線 */
  border-top: var(--arrow-thickness) solid currentColor;
  border-right: var(--arrow-thickness) solid currentColor;
  transform: translateY(-50%) rotate(45deg);
  /* 文字との距離を自然に */
  margin-left: var(--arrow-gap);
  transition: transform .2s ease;
}

/* ホバーで矢印を少しスライド */
.btn-arrow:hover::after{
  transform: translateY(-50%) translateX(4px) rotate(45deg);
}

@media screen and (max-width: 768px) {
a.btn {
line-height: 1.8rem;
max-width: 80%;
padding: 1em 3em 1rem 2.5rem;
}
}
