m/* reset */
/*body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	box-sizing: border-box;
    font-weight: normal;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}




input, select {
    vertical-align:middle;
}

:root {
--red: #C7161D;
--brown: #572E12;
--brown_20:rgba(87,46,18,0.20);
--beige: #FDEBC7;
	--beige_50:rgba(253,235,199,0.50);
	--beige_20:rgba(253,235,199,0.20);

}


body{
  /*font-family: 'M PLUS 1p', sans-serif;*/
	font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
    -webkit-text-size-adjust: 100%;
    line-height: 1.6;
    font-size: 100%;
    color: #212121;
    background-color: #ffffff;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
body{
font-size:82%;
}
}
/* -------------end------------- */


ol, ul{
    list-style:none;
}
fieldset, img{
     border:0;
}

caption, th{
    text-align: left;
}
address, caption, cite, code, dfn, em, strong, th, var{
    font-style: normal; 
    font-weight: normal;
}

hr{
	display:none;
}

html {
	margin-bottom:1px;
	height:100%;
}

* {
    box-sizing: border-box;
}

/* line style　------------------------------*/
/* -----------------------------------------*/

a img{
	border-style:none;
}

a:hover {
opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/* link style ------------------------------*/
/* -----------------------------------------*/
a:link {
	color: #212121;
	text-decoration: none;	
}
a:visited {  color: #212121;
	text-decoration: none;	}


a:active {
	color: #ccc;
	text-decoration: none; 
}

.link_line{
	text-decoration: underline;
}

img, video, object {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border: none;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

a:active, a:focus,input:active, input:focus{outline:0;}

img{
	width: 100%;
	height: auto;
}

iframe {
    vertical-align: bottom;
}

/* ========================================

    ■ Header■ Keyv

======================================== */
.keyv_outside{
    background-image: url("../img/main_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom: 3px solid #912E69;
}

#keyv {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.keyv_copy {
    position: absolute;
    width: 100%;
    top: 30%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    font-size: 480%;
    text-align: center;
    font-weight: 800;
    line-height: 1.2;
	color: #912E56;
}

.keyv_title {
  position: absolute;
  width: 100%;
  top: 8%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  text-align: center;
  font-size: 150%;
  font-weight: 700;
	
}
.main_tokuten {
  position: absolute;
  width: 20%;
  top: 32%;
  right: 0;
}

/* フェードイン＋スライドアップ */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate(-50%, 20%) scale(0.98);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

#keyv_text {
  animation: fadeInUp 1s ease-out forwards;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px) {
  .keyv_copy {
    position: absolute;
    width: 100%;
    top: 35%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    font-size: 300%;
  }
  .main_tokuten {
    position: absolute;
    width: 25%;
    top: 45%;
    right: 5%;
  }
}
/* -------------end------------- */


.wrapper{
	background-image: url(../img/wrapper_bg.png);
	background-position: center top;
	background-repeat: repeat;
}



/* ========================================

    ■ common_item

======================================== */
.contents{width: 98%;
max-width: 1100px;
margin-left: auto;
margin-right: auto;
word-wrap: break-word;
overflow-wrap: break-word;}

.con2_contents{max-width: 1100px;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.contents{width: 90%;}
}
/* -------------end------------- */



/* ========================================

    ■ con1

======================================== */

.con1_outside{
	padding-top: 70px;
	background-image: url(../img/con1_bg_upper.png),url("../img/con1_bg_bottom.png");
	background-position: left -50px top -50px,right -250px bottom 0px;
	background-repeat: no-repeat;
	background-size: 50% auto;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con1_outside{
    padding-top: 30px;
    padding-bottom: 30px;
    }
}
/* -------------end------------- */

.con1_title{font-weight: 800;
text-align: center;
font-size: 250%;
color: #912E56;
margin-bottom: 50px;
line-height: 1.4;}

.wide_flex_box{
    display: flex;
    justify-content: space-between;
    align-items: center;
   }

.wide_flex_box >li:first-child{
width: 50%;
max-width: 450px;
margin-right: 0;
margin-left: auto;
padding-right: 50px;
box-sizing: border-box;
}

.wide_flex_box >li:last-child{
    width: 50%;}

.wide_flex_box >li:last-child img{border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;}

.con1_txt{font-size: 138%;
	line-height: 2.0;
text-decoration: underline;       /* 下線をつける */
  text-underline-offset: 8px;       /* 下線と文字の間隔 */
  text-decoration-thickness: 1px;   /* 下線の太さ */
	text-decoration-color: #cccccc;       /* 赤色にする */
	text-decoration-style: dashed;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
	
.con1_title{
font-size: 172%;
margin-bottom: 20px;}
	
	
.wide_flex_box{
    flex-wrap: wrap;
	margin-bottom: 30px;}


.wide_flex_box >li:first-child{
    padding-right: 0px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

.wide_flex_box >li:last-child{
    width: 95%;
    margin-right: 0;
    margin-left: auto;}
	
.con1_txt{font-size: 125%;
text-align: center;}
	
}
/* -------------end------------- */

.con1_flex_box{display: flex;
justify-content: space-between;
align-items: center;}

.con1_flex_box li:first-child{width: 30%;}
.con1_flex_box li:last-child{width: 65%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con1_flex_box{flex-wrap: wrap;
flex-direction:column-reverse;}

.con1_flex_box li:first-child{width: 50%;
	margin-left: auto;
	margin-right: auto;
}
.con1_flex_box li:last-child{width: 100%;
	margin-bottom: 20px;}
	
	.con1_flex_box li:first-child img{
	text-align: center;}
}
/* -------------end------------- */

/* ========================================

    ■ con2

======================================== */

.con2_outside{
padding-top: 70px;
padding-bottom: 70px;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con2_outside{
    padding-top: 30px;
    padding-bottom: 30px;
    }
}
/* -------------end------------- */

.con2_merit_title_wrap{text-align: center;}

.con2_merit_title{
color: #332662;
font-size: 200%;
margin-bottom: 20px;
font-weight: 700;
	position: relative;
    display: inline-block;
    padding: 0 80px;
}

.con2_merit_title_kojin{
color: #B55B70;}

.con2_merit_title:before,
.con2_merit_title:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 70px;
    height: 2px;
    background-color: #332662;
}

.con2_merit_title_kojin:before,
.con2_merit_title_kojin:after {
    background-color: #B55B70;
}

.con2_merit_title:before {
    left: 0;
}

.con2_merit_title:after {
    right: 0;
}

.con2_merit_sub{text-align: center;
font-size: 118%;
margin-bottom: 20px;
}

.con2_merit_sub > span{
background-color: #B55B70;
font-size: 125%;
	padding: 3px 20px;
	color: #fff;
border-radius: 9999px;
}

.con2_headline{

font-size: 125%;
margin-bottom: 20px;
	background-color: rgba(51,38,98,0.30);
width: 50%;
margin-left: auto;
margin-right: auto;
text-align: center;
padding-top: 3px;
padding-bottom: 3px;
	border-radius: 6px;
	font-weight: 500;
}

.con2_headline_kojin{
background-color: rgba(181,91,112,0.10);
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con2_merit_title{
font-size: 138%;
margin-bottom: 10px;
padding: 0 15px;
}

.con2_merit_title:before,
.con2_merit_title:after {
width: 10px;}

.con2_headline{
font-size: 119%;
width: 100%;}
}
/* -------------end------------- */


.con2_flex {
  display: flex;
  justify-content: center; /* 中央寄せ */
  gap: 2%; /* li同士の間隔 */
  margin-bottom: 50px;
  flex-wrap: wrap; /* 折り返し対応 */
}

.con2_flex_event{
  margin-bottom: 0px;
}

.con2_flex li {
  text-align: center;
  font-size: 100%;
  border-radius: 5px;
  box-sizing: border-box;
flex: 0 1 calc(24% - 2%); /* 4つ並べる目安、gap分を引く */
}

/* ▼スマホ（767px以下）のときは2列表示に変更 */
@media (max-width: 767px) {
.con2_flex {
  margin-bottom: 20px;
}
.con2_flex_event{
  margin-bottom: 0px;
}
	
  .con2_flex li {
    flex: 0 1 calc(50% - 2%); /* gap分を引いてちょうど良い幅に */
  }
	
 .con2_flex li:nth-child(-n+2) {
margin-bottom: 20px;
  }
	
	.con2_flex_event li:nth-child(-n+2) {
margin-bottom: 0px;
  }
}



.con2_flex li img{
margin-bottom: 10px;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con2_flex_kojin li:last-child{
	margin-bottom: 20px;
  }
}
/* -------------end------------- */

.tb_plan {
	border-spacing: 0;
	border-collapse:collapse;
	width: 100%;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #CCC;
	border-right-color: #CCC;
	margin-bottom: 10px;}

.tb_plan th {
	vertical-align: middle;
padding: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;

	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #CCC;
	background-color: rgba(51,38,98,0.10);
	text-align: center;
	
}

.tb_plan_kojin th {
background-color: rgba(181,91,112,0.10);}

.tb_plan td {
	vertical-align: middle;
padding: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #CCC;
	
}

.tb_plan td.plan_name {text-align: center;
	width: 15%;
	font-size: 124%;
}

.tb_plan td.plan_price {text-align: center;
	width: 13%;
	font-size: 124%;
}

.lantern{font-weight: 700;
font-size: 113%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.tb_plan th {
padding: 5px;
	
}

.tb_plan_kojin th {
background-color: rgba(181,91,112,0.10);}

.tb_plan td {
padding: 5px;
	
}

.tb_plan td.plan_name {text-align: center;

	font-size: 100%;
	min-width: 7em;
	box-sizing: border-box;
}

.tb_plan td.plan_price {text-align: center;
	width: 13%;
font-size: 100%;
	min-width: 6em;
}
}
/* -------------end------------- */


/* ========================================

   テーブルのスクロール共通

======================================== */

.table-scroll{
  overflow: auto; /*スクロールさせる*/
  white-space: nowrap; /*文字の折り返しを禁止*/
  /*今回の設置を分かりやすくするためワザと狭い幅を指定。本来は不必要な指定です。*/
	margin-bottom: 30px;
}
/* 以下、スクロールバーを追加 */
.table-scroll::-webkit-scrollbar{　　
 height: 5px;
}
.table-scroll::-webkit-scrollbar-track{
 background: #333;
}
.table-scroll::-webkit-scrollbar-thumb {
 background: #999;
}


/* ========================================

   .bt_btn

======================================== */

.btn_flex_box{display: flex;
justify-content: space-between;}

.btn_flex_box li{width: 48%;}

/* ul 内の li が1つだけの場合は中央揃え */
.btn_flex_box:has(li:only-child) {
  justify-content: center;
}

/* li が1つの場合は幅も少し調整（必要に応じて） */
.btn_flex_box:has(li:only-child) li {
    width: 48%; /* または max-width: 48%; など */
}

.bt_btn {
	background-color: var(--red);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 125%;
  font-weight: 700;
	border-radius: 6px;
}
.bt_btn a {
	color: var(--beige);
	display: block;
}
.bt_btn:hover {
	-webkit-transform: translateY(-5px);
	-ms-transform: translateY(-5px);
	transform: translateY(-5px);
}

.bt_btn a::after {
  font-family: "Font Awesome 6 Free"; /* FA6の場合 */
  font-weight: 900; /* Solidアイコンを使用 */
  content: "\f105"; /* 右矢印アイコン（fa-angle-right） */
  display: inline-block;
  margin-left: 0.5em;
  transition: transform 0.3s;
}

.bt_btn:hover a::after {
  transform: translateX(5px); /* ホバー時に矢印を右へ動かす */
}


.bt_btn_c {
	background-color: #332662;
	
}

.bt_btn_p {
	background-color: #B55B70;
	
}

.bt_btn_c a,
.bt_btn_p a{
	color: #ffffff;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px) {
.btn_flex_box{flex-wrap: wrap;}

.btn_flex_box li{width: 100%;}

.btn_flex_box li:first-child{margin-bottom: 20px;}

/* li が1つの場合は幅も少し調整（必要に応じて） */
.btn_flex_box:has(li:only-child) li {
    width: 100%; /* または max-width: 48%; など */
}
	
.bt_btn {
	width: 100%;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 113%;
}
}
/* -------------end------------- */



/* タブ------------------------------*/
/* ---------------------------------------------------- */

.tab_area{
overflow:hidden;
max-width: 1100px;
margin: 0 auto;
display: flex;
justify-content: space-between;
}

.tab_area li{
    /*Tabの装飾*/
    cursor: pointer;
width : 50%;
    box-sizing: border-box;
}



.tab_area li:last-child{
border-right: none;
}

.all_area {
overflow: hidden;
}

.hide{display:none;}

.tab_area li {
    text-align: center;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 125%;
    font-weight: 500;
    color: #ffffff;
    flex: 1; /* 横幅均等 */
    border-top-left-radius: 8px;  /* 左上角丸 */
    border-top-right-radius: 8px; /* 右上角丸 */
}

/* 法人スポンサー */
#tab1 {
    background-color: #A8A0B8;/* 通常色：グレー寄り */
}

#tab1.select {
    background-color: #332662; /* アクティブ色（変更なし） */
}

/* 個人スポンサー */
#tab2 {
    background-color: #D9BFC4; /* 通常色：グレー寄りピンク */
}

#tab2.select {
    background-color: #B55B70; /* アクティブ色（変更なし） */
}

.content_area{
padding: 50px;
background-color: rgba(255,255,255,0.60);}
    
/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.tab_area li{
padding-top: 15px;
padding-bottom: 15px;
display: flex;
 justify-content: center;
align-items: center;}
	
.content_area{
padding: 20px;}
 
}
/* -------------end------------- */


/* ========================================

    ■ footer

======================================== */
.footer_outside {
  padding-top: 20px;
  padding-bottom: 80px;
/*  background-color: #912E69;
  color: #ffffff;*/
}
.footer_flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  font-size: 88%;
}
.footer_flex li:first-child {
  width: 45%;
}
.footer_flex li:last-child {
  width: 45%;
}
.footer_flex a {
  color: #212121f;
}
.footer_c_name {
  font-size: 188%;
  font-weight: 700;
}

.add {
 font-size: 70%;
 text-align: center;
}



/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.footer_flex {
flex-wrap: wrap;
}
.footer_flex li:first-child {
  width: 100%;
	margin-bottom: 20px;
}
.footer_flex li:last-child {
  width: 100%;
}
}
/* -------------end------------- */


/* PC向けレイアウトの指定：481px以上では固定レイアウト */
.miniimage {
    display: none;
}  /* miniを非表示 */
.bigimage {
    display: block;
    line-height: 0px;
} /* bigを表示 */

@media screen and (max-width: 480px) {
.miniimage {
    display: block;
    line-height: 0px;
} /* miniを表示 */
.bigimage {
    display: none;
}   /* bigを非表示 */
}

/*  PCのみに表示するメニュー*/
.only_smt { display: none; }  /* miniを非表示 */
.only_pc  { display: block; 
} /* bigを表示 */
	
/*  スマホのみに表示するメニュー*/
@media only screen and (max-width: 768px) {
.only_smt {
	display: block;
	
} /* miniを表示 */
.only_pc  { display: none; }   /* bigを非表示 */
}


    
/* ====================================================
　pagetop
==================================================== */


/***追従するトップへ戻るボタン***/
.pagetop {
    position: fixed;
    right: 5px;
    bottom: 20px;
    height: 150px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    font-size: 90%;
    line-height: 1.5rem;
    
    padding: 0 0 0 135px;
    border-top: solid 1px;
    border-color: #912E56;
	z-index: 9999999999;
}
.pagetop::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    border-color: #912E56;
    transform: rotate(35deg);
    transform-origin: left top;
}

.pagetop {
	color: #912E56!important;
}

.pagetop a:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px) {
.pagetop {
     height: 70px;
   
    padding: 0 0 0 70px;
	bottom: 100px;
    
}

}
/* -------------end------------- */
/***トップへ戻るボタンここまで***/

/* ====================================================
　page_btm_fixed
==================================================== */
#page_btm_fixed{
  position: fixed;
z-index: 999999999;
background-color: rgba(255,255,255,1.00);
width: 100%;}


.page_btm_fixed_flex{display: flex;
justify-content: center;
	width: 90%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 10px;
	padding-bottom: 10px;
	gap: 2%; /* ← ここを追加！ */
}

.page_btm_fixed_flex li{
width: 49%;
text-align: center;
box-sizing: border-box;
border-radius: 6px;
text-align: center;
line-height: 1.4;
 display: flex;
 align-items: center;
justify-content: center;
}

.page_btm_fixed_flex li:first-child{
background-color:#332662;

}

.page_btm_fixed_flex li:last-child{
background-color: #B55B70;

}


.page_btm_fixed_flex li a{
    padding-top: 15px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 15px;
    display: block;
	color: #fff;
	font-weight: 700;
    font-size: 113%;
}

.page_btm_fixed_flex li a::after {
  font-family: "Font Awesome 6 Free"; /* FA6の場合 */
  font-weight: 900; /* Solidアイコンを使用 */
  content: "\f105"; /* 右矢印アイコン（fa-angle-right） */
  display: inline-block;
  margin-left: 0.5em;
}




/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.page_btm_fixed_flex li a{
    padding-top: 10px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 10px;
    font-size: 88%;
}
}
/* -------------end------------- */

.revival_wrap{padding: 20px;
border: 2px solid #912E69;
margin-bottom: 30px;}


.revival_flex{display: flex;
justify-content: space-between;
flex-wrap: wrap;}

.revival_flex li{width: 49%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.revival_flex li{width: 100%;}
.revival_flex li:first-child{margin-bottom: 10px;}

}
/* -------------end------------- */

.con2_inner {
  position: relative; /* 子要素のabsolute配置の基準にする */
  padding: 50px;
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.5);
  margin-bottom: 50px;
}

.con2_sub_lead{text-align: center;
margin-bottom: 30px;
font-size: 150%;
font-weight: 700;}


.con2_sub_lead > span{font-size: 75%;
font-weight: 400;}


	
/* 小さい画面用の設定-------------- */
	@media (max-width:767px) {

	  .con2_sub_lead {
	    text-align: left;
	    font-size: 125%;
	  }

	  .con2_inner {
	    padding: 20px;
		  padding-top: 30px;
	    margin-bottom: 30px;
	  }
	 
	}
	/* -------------end------------- */
/*.con2_tour_flex ---------------*/
.con2_tour_flex {
  display: flex;
  justify-content: space-between;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 2px solid #cccccc;
}

.con2_tour_flex li:first-child {
  width: 40%;}

.con2_tour_flex li:last-child {
  width: 58%;}

.con2_tour_name{font-size: 125%;
margin-bottom: 10px;}


.con2_tour_dl dt {
	clear: left;
	float: left;
	width: 5em;
}

.con2_tour_dl dd {
	padding-left: 6em;
	margin-bottom: 3px;
	padding-bottom: 3px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;
}

/* con2_tour_flex小さい画面用の設定-------------- */
@media (max-width:767px){
.con2_tour_flex {
flex-wrap: wrap;}

.con2_tour_flex li:first-child {
  width: 100%;
margin-bottom: 10px;}

.con2_tour_flex li:last-child {
  width: 100%;}
}
/* -------------end------------- */

.con2_schedule_txt{text-align: center;
font-size: 107%;
margin-bottom: 10px;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.con2_schedule_txt{text-align: left;}
}
/* -------------end------------- */
.bt_tour_wrap {text-align: right;}
.bt_tour {
	background-color: var(--red);
	padding: 10px;
	display: inline-block;
text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 113%;
	border-radius: 6px;
}
.bt_tour a {
	color: var(--beige);
	display: block;
}
.bt_tour:hover {
	-webkit-transform: translateY(-5px);
	-ms-transform: translateY(-5px);
	transform: translateY(-5px);
}

.bt_tour_later {
	background-color: #cccccc;
	padding: 10px;
	display: inline-block;
text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 113%;
	border-radius: 6px;
}

/* shop_linkを右揃え */
.shop_link {
    text-align: right;
    margin-bottom: 30px; 
}

/* a要素内の右矢印 */
.shop_link a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    font-weight: 500;
}

.shop_link a::after {
    content: "\f105"; /* Font Awesome 右矢印 */
    font-family: "Font Awesome 5 Free"; /* または "Font Awesome 6 Free" */
    font-weight: 900; /* Solidの場合 */
    margin-left: 0.5em; /* テキストとの間隔 */
    display: inline-block;
}


