






@charset "utf-8";

/* +++++++++++++++++++++++++++++++

 style.css
 PC、タブレット用

+++++++++++++++++++++++++++++++ */
.local_header .mode_sp,
.footer_nav_sp { display: none; }

/*
コンテンツ見出し
-----------------------------------*/
.contents_head {
    height: 150px;
    padding: 80px 0 0 40px;
    background: #53a8b2 url(/tfc/images/img_tfc.jpg) no-repeat right bottom;
    background-size: auto 230px;
}
.contents_head .title {
    margin: 0 0 5px;
    color: /*#1e51a2;*/#ffffff;
    font-size: 28px;
    font-weight: 500;
}
.contents_head .title br { display: none; }
.contents_head p {
    margin: 0;
    font-size: 14px;
}
p.update {
    position: absolute;
    top: 20px;
    right: 20px;
    margin: 0;
}
	.local_header .name .sp{
		display:none
	}

/*
コンテンツサマリー
-----------------------------------*/
.contents_summary {
    max-width: 980px;
    margin: 20px auto 50px;
    font-size: 16px;
    text-align: center;
}

/*
記事ボックス
-----------------------------------*/
.box_article {
    width: 100%;
    max-width: 980px;
    margin: 0 auto 30px;
}

.box_article > section { margin-bottom: 30px; }
.box_article p,
.box_article > ul li,
.box_article > section li {
    margin: 10px 20px;
    font-size: 16px;
    line-height: 1.8;
}
.box_article .tags { margin-bottom: 20px; }
.box_article .tags li {
    margin: 0 3px 0 0;
}
.box_article .image { text-align: center; }

.box_article .image.box_lgray_texture {
    max-height: 400px;
    padding: 0;
    text-align: center;
}
.box_article .image.box_lgray_texture img { max-height: 400px; }
.box_article .txt_supplement { font-size: 14px; }

.box_article .image a { transition: 0.1s linear; }
.box_article .image a:hover {
    filter: alpha(opacity=60);
    opacity: 0.6;
}
.other-no {
	width: 80%;
	margin: 0 auto;
}
.other-no .button-wrap{
	width:100%;
	padding:0
}
.other-no .list_square{
	margin:0 0 20px
}


/*
見出し
-----------------------------------*/
.heading_contents01 {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}
.heading_contents01:after {
    display: block;
    width: 160px;
    height: 4px;
    margin: 15px auto 0;
    border-radius: 2px;
    background: #1e51a2;
    content: " ";
}
#pkz + .heading_contents01 { margin-top: 50px; }

.heading_contents02 {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 500;
    color: #1e51a2;
}
.subhead_contents {
    position: relative;
    margin: 20px 0 ;
    padding-left: 20px;
    font-size: 16px;
}
.box_article .sub_head01 {
    position: relative;
    margin: 20px 0 ;
    padding-left: 20px;
    font-size: 16px;
}
.box_article .sub_head01:before {
    position: absolute;
    top: 11px;
    left: 0;
    display: block;
    width: 13px;
    height: 3px;
    background: #333;
    content: " ";
}
.box_article .sub_head01:after {
    position: absolute;
    top: 11px;
    left: 8px;
    display: block;
    width: 5px;
    height: 3px;
    border-left: 2px solid #fff;
    background: #1e51a2;
    content: " ";
}

.title_contents { color: #1e51a2; }



/*
ボックス内1カラム構成
-----------------------------------*/
.box_single {
    width: 910px;
    margin: 0 auto 10px;
    padding: 15px 35px;
    border-radius: 3px;
    background: #fff;
}
.box_single .title {
    margin: 15px 0 20px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}

/*
ボックス内2カラム構成
-----------------------------------*/
.box_double {
    display: table;
    width: 980px;
    margin: 0 auto;
    padding: 0 20px;
    border-spacing: 0 10px;
}
.box_double .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
    width: 49%;
    padding: 15px 35px;
    border-radius: 3px;
    background: #fff;
    vertical-align: top;
}
.box_double .inner + .inner {
    position: relative;
    left: 2%;
}
.box_double .inner .title {
    margin: 15px 0 20px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}
.box_double .inner .title span {
    display: block;
    font-size: 15px;
    font-weight: 300;
}
.box_double .inner p { font-size: 15px; }


/*
囲みボックス
-----------------------------------*/
.box_enclosing {
    width: auto;
    max-width: 980px;
    margin: 20px auto;
    padding: 15px;
    border: 1px solid #d9d9d9;
}
.box_enclosing p {
    margin: 10px 0;
    font-size: 14px;
}
/*
約物つきリスト
-----------------------------------*/
.list_square_contents li {
    padding-left: 12px;
    background: url(/tfc/images/ico_square.png) no-repeat left 11px;
    background-size: 8px;
    font-weight: 500;
}
/*
その他テキスト
-----------------------------------*/
.txt_right { text-align: right; }
.txt_point { color: #f23524; }

/*
TFCトップ
-----------------------------------*/
.list_event .title { margin-bottom: 0; }
.contents_nav .box_single p {
    float: left;
    margin: 5px 20px 0 0 !important;
}
.contents_nav .box_single .box_button { float: right; }
.contents_nav .box_single .title + p,
.contents_nav .box_double .title + p {
    margin-bottom: 10px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
}
.contents_nav .box_double p + p {
    margin-top: 10px;
    font-size: 13px;
    text-align: center;
}

.contents_nav .box_double .title + p + .box_botton { margin-top: 40px; }

.box_gray {
    width: 980px;
    margin: 0 auto;
    padding: 10px;
}
.box_gray .box_double {
    width: 960px;
    padding: 0;
    text-align: center;
}

/* TFC通信 */
.box_newsletter {
    display: table;
    width: 980px;
    margin: 30px auto;
    padding: 10px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.box_newsletter div {
    display: table-cell;
    vertical-align: top;
}
.box_newsletter .summary {
    padding: 10px 20px 10px 10px;
    width: 210px;
}
.box_newsletter .title { font-size: 18px; }
.box_newsletter .title span {
    display: block;
    font-size: 13px;
    font-weight: 300;
}

.box_newsletter .latest {
    padding: 15px;
    background: #e6e6e6;
    font-size: 15px;
}
.box_newsletter .latest p:first-child {
    margin: 0 0 10px;
    font-weight: 500;
}
.box_newsletter .pdf {
    display: inline-block;
    margin-left: 10px;
    padding: 1px 10px;
    background: #333;
    color: #fff;
    font-size: 12px;
}
.box_newsletter li { margin-top: 5px; }

/*
半年積立コース
-----------------------------------*/
.box_bonus .table_block { margin: 30px 0 10px; }
.box_bonus .table_block th { font-size: 16px; }
.box_bonus .table_block td {
    width: 25%;
    font-size: 16px;
}
.box_bonus .table_block + p { margin-bottom: 30px; }
.box_bonus .table_block .bonus { color: #e64545; }
.box_bonus .image {
    width: 600px;
    margin: 20px auto;
}

/*
「お買い物カード」利用案内
-----------------------------------*/
.box_card section > .image {
    width: 300px;
    margin: 20px auto;
}

.box_card section > .image.cardimg {
    width: 700px;
}
.receipt {
    float: left;
    width: 210px;
    padding: 0 0 10px;
    background: #f5f5f5 url(/images/common/bg_texture_bk10.png) repeat left top;
    background-size: 3px;
}
.receipt .title {
    margin: 0 0 10px;
    padding: 5px 0;
    background: #d9d9d9;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
}
.comment { margin-left: 230px; }
.comment td {
    font-size: 16px;
    font-weight: bold;
}
.comment td:first-child {
    width: 20px;
    padding-right: 0;
    text-align: center;
}
.list_square{
	margin:0;
}
h6.sub-title {
	font-size: 19px;
	margin: 0;
	border-bottom: 1px solid;
	margin: 0 0 15px;
	padding: 0 0 5px 5px;
}
.box_store section { position: relative; }
.box_store .button {
    /* position: absolute; */
    /* top: 6px; */
    /* right: 5px; */
    padding: 21px 40px 16px 20px;
    border: none;
    background: #fff;
    color: #333;
    font-size: 16px;
    border: 2px solid;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 500px;
}
.box_store .button:hover {
    background: #333;
    color: #fff;
}
.box_store .button:after {
    right: 10px;
    background-position: -50px -100px;
}
.box_store .button:hover:after { background-position: -50px -150px; }

/*
優待施設のご案内
-----------------------------------*/
.box_guide {
    display: grid;
    grid-template-columns: 30% 1fr;
    align-items: center;
    width: 80%;
    margin: 30px auto;
    padding: 10px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.box_guide div {
    vertical-align: top;
}
.box_guide .download {
    padding: 10px 20px 10px 10px;
    width: 210px;
    text-align: center;
}
.box_guide .title { font-size: 18px; }

.box_guide .download .button {
    margin: 20px 0 5px;
    border-color: #1e51a2;
    background-color: #1e51a2;
}
.box_guide .download .button:hover {
    background: #fff;
    color: #1e51a2;
}
.box_facility .image div {
    display: inline-block;
    width: 300px;
    margin: 0 10px;
    text-align: center;
}
.button-wrap {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 20px;
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px;
}
	.box_store .button-wrap .button:last-of-type{
			color: #fff;
			background: #333;
	}
.box_store .button-wrap .button:last-of-type:hover{
	background: #000000;
}
	.box_store .button-wrap .button.button_next:last-of-type:after{
		background: url(/images/sp_common/sprite_arrow.png) no-repeat -50px -50px;
		background-size: 200px auto;
	}
/*
よくあるご質問
-----------------------------------*/
.box_faq dt {
    position: relative;
    padding: 15px 20px 0 40px;
    font-size: 16px;
    font-weight: 500;
}
.box_faq dt:before {
    position: absolute;
    top: 13px;
    left: 20px;
    font-size: 20px;
    font-weight: 500;
    content: "Q";
}
.box_faq dt:first-child { border-top: 1px solid #ccc; }

.box_faq dd {
    position: relative;
    margin: 0;
    padding: 0 20px 5px 40px;
    border-bottom: 1px solid #ccc;
}
.box_faq dd:before {
    position: absolute;
    top: 2px;
    left: 20px;
    color: #f23524;
    font-size: 20px;
    font-weight: 500;
    content: "A";
}
.box_faq dd p { margin: 20px 0; }

/*
TFC　フッター
-----------------------------------*/
footer.tfc { margin-top: 50px; }
.heding_footer {
    margin: -15px -15px 20px;
    padding: 15px;
    background: #1e51a2;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
}
footer.tfc .table_box {
    width: 550px;
    margin: 0 auto 20px;
}
.tel:before {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 5px;
    background: url(/images/common/sprite_icon.png) no-repeat -300px -100px;
    background-size: 500px auto; 
    vertical-align: -2px;
    content: " ";
}
footer.tfc p { margin: 10px 40px; }
footer.tfc .image {
    width: 300px;
    margin: 15px auto;
}

/*
優待チケット
-----------------------------------*/
.lead-block {
    margin: 46px 0 30px;
    padding: 0 20px;
}
.lead-block p {
    text-align: center;
    font-size: 1.2rem;
    margin: 0;
}
.lead-block ul.ank-wrap {
    margin: 27px auto 0;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px;
    font-size: 1.3rem;
    text-align: center;
    max-width: 900px;
}
.lead-block ul.ank-wrap li {
    font-weight: 600;
    background: #1e51a2;
    border-radius: 100vh;
    position:relative;
    font-size: 1.3rem;
    max-width: 100%;
    margin: 0;
}
.lead-block ul.ank-wrap li::before,.ticket-bt::before{
	content:"";
	display:block;
	width:7px;
	height:7px;
	border-top:2px solid;
	border-left:2px solid;
	color:#fff;
	position:absolute;
	top:50%;
	right:20px;
	transform:rotate(-135deg) translateY(50%) translateX(50%)
}
.lead-block ul.ank-wrap li:last-of-type a{
	font-size: 1.1rem;
	padding: 9px 30px 7px 15px;
}
.lead-block ul.ank-wrap li:last-of-type::before,.ticket-bt::before{
	transform: rotate(92deg) translateY(0%) translateX(-48%);
	background: #1e51a2;
	top: 30%;
	right: 27px;
	z-index: 100;
	width: 8px;
	height: 8px;
}
.ticket-bt {
    margin: 20px auto 0;
    text-align: center;
    max-width: 400px;
    font-size: 1.0rem;
    font-weight: 600;
    position: relative;
}

.ticket-bt a {
    padding: 10px 20px;
    background: #353535;
    color: #fff;
    border-radius: 100vh;
    display: block;
}
.ticket-bt::before{
	background:#333
}
.lead-block ul.ank-wrap li:last-of-type::after,.ticket-bt::after{
	content:"";
	display:block;
	width:2px;
	height: 14px;
	background:#fff;
	visibility:visible;
	position:absolute;
	top: 19%;
	right: 33px;
	transform: rotate(45deg);
	z-index: 10000;
}
.ticket-bt span {
    width: 15px;
    height: 15px;
    color: #fff;
    position: absolute;
    top: 50%;
    right: 21px;
    border: 2px solid;
    transform: translateY(-50%) translateX(-50%);
}
.lead-block ul.ank-wrap li:hover{
	background: #3c6ebc;
}
.lead-block ul.ank-wrap li a {
    padding: 7px 15px;
    display: block;
    color: #fff;
    background: transparent;
}
.lead-block ul.ank-wrap li a:hover{
	text-decoration:none
}
.ticket-box-wrap {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap:30px;
    padding: 0 31px;
    box-sizing: border-box;
    width: 100%;
}
.ticket-box-wrap .ticket-box {
    padding: 20px 30px 20px 31px;
    background: #f1f1f1;
    border-radius: 30px;
}
.ticket-box-wrap .ticket-box .info-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6%;
}
.ticket-box-wrap .ticket-box p{
    margin:0;
    font-size:1.5rem
}
.ticket-box-wrap .ticket-box .info-wrap .item-info {
    width: calc((100% - 6%) - 40%);
}
.ticket-box-wrap .ticket-box .info-wrap .imgbox {
    width: 40%;
}
.ticket-box-wrap .ticket-box .info-wrap .imgbox img{
	width:100%
}
.ticket-box-wrap .ticket-box .info-wrap::after {
    display: none;
}
.ticket-box-wrap .ticket-box .info-wrap p span{
    display:block;
    margin-bottom:10px;
    padding:5px 10px;
    border-left:5px solid;
    font-weight:600;
    line-height:1.2;
     font-size:1.0rem
}
.ticket-box-wrap .ticket-box .info-wrap p.name{
    font-size: 1.7rem;
    line-height: 1.5;
    font-weight: 600;
}
.ticket-box-wrap .ticket-box .info-wrap p.period{
    margin:20px 0 15px
}
.ticket-box-wrap .ticket-box .tfc-infowrap {
    margin: 20px 0 0;
    padding: 20px;
    background: #fff;
    border-radius: 30px;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p {
    font-size: 1.7rem;
    font-weight: 600;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p.tfc-price {
    font-size: 1.6rem;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p.tfc-period {
    margin: 15px 0;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p span {
    margin: 0 15px 0 0;
    padding: 5px 10px;
    background: #e6e6e6;
    font-size: 1.2rem;
    font-weight: 600;
    border-radius: 100vh;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p span.en {
    background: transparent;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 768px) {
	.ticket-box-wrap .ticket-box {
    padding: 20px 20px 20px 20px;
}
.ticket-box-wrap .ticket-box .info-wrap {
    flex-wrap:wrap;
    gap: 20px;
    flex-direction: column;
}
.ticket-box-wrap .ticket-box p{
    margin:0;
    font-size: 1.1rem;
}
.ticket-box-wrap .ticket-box .info-wrap .item-info {
    width: 100%;
}
.ticket-box-wrap .ticket-box .info-wrap .imgbox {
    width: 87%;
}
.ticket-box-wrap .ticket-box .info-wrap::after {
    display: none;
}
.ticket-box-wrap .ticket-box .info-wrap p span{
    margin-bottom: 1px;
}
.ticket-box-wrap .ticket-box .info-wrap p.name{
    font-size: 1.3rem;
}
.ticket-box-wrap .ticket-box .info-wrap p.period{
    margin: 11px 0 11px;
}
.ticket-box-wrap .ticket-box .tfc-infowrap {
    margin: 20px 0 0;
    padding: 20px;
    background: #fff;
    border-radius: 30px;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p {
    font-size: 1.4rem;
    text-align: center;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p.tfc-price {
    font-size: 1.6rem;
    text-align: center;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p.tfc-period {
    margin: 18px 0;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p span {
    margin: 0 0 4px;
    padding: 2px 10px;
    font-size: 1.0rem;
    display: block;
    text-align: center;
}
.ticket-box-wrap .ticket-box .tfc-infowrap p span.en {
    display: inline;
}
}


/*
ローカルヘッダー
-----------------------------------*/
#detail_info.toggle_pc_panel,
#local_information { max-width: 370px; }
#local_information .info:before {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 3px;
    background: url("/images/common/sprite_icon.png") no-repeat -50px 0;
    background-size: 250px auto; 
    vertical-align: -2px;
    content: " ";
}
#local_information .tel:before {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 5px;
    background-size: 500px auto; 
    background-position: -300px -100px;
}
#local_information .list_tel {
    margin: 0 0 15px;
    border-radius: 3px;
    background: #fff;
}
#local_information .list_tel li {
    padding: 10px;
    border-top: 1px solid #e6e6e6;
}
#local_information .list_tel li:first-child { border-top: none; }
#local_information .list_tel .tel { margin-top: 5px; }
#local_information .list_tel strong { font-size: 14px; }
#local_information .list_tel .tel strong { font-size: 16px; }
#local_information .list_tel li:last-child  > p { display: block; }

/*
メニュー
-----------------------------------*/
#nav .pdf:after {
    position: absolute;
    top: 20px;
    right: 10px;
    display: block;
    padding: 1px 10px;
    background: #333;
    color: #fff;
    font-size: 12px;
    content: "PDF";
}

/*
タブレット　差分
-----------------------------------*/
@media all and (max-width: 1279px) {
  .contents_nav { padding: 20px; }
  .box_double,
  .box_gray .box_double {
      width: 100%;
      padding: 0;
  }
  .box_single,
  .box_gray,
  .box_newsletter,
  .box_guide {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
  }
  .box_gray .box_double .button { width: 350px; }
  .box_gray .box_double .button_small { width: 200px; }


}
/*------------
2020.10 店舗
------------------------*/
.tenpo h5 span{
border:1px solid #c00;
background:#fff;
color:#c00;
padding:5px 30px;

}
.tenpo ul{
margin:0 0 0 50px;
font-size:16px;

}
.tenpo ul li{
list-style-type:disc;
padding-bottom:3px;
font-weight:500;
}
.tenpo ul ul{
margin-left:20px;
}
.tenpo ul ul li{
list-style-type:none;
}


@media screen and (max-width: 768px){
	/* +++++++++++++++++++++++++++++++

	 style.css
	 Smartphone用

	+++++++++++++++++++++++++++++++ */
	main .mode_pc { display: none; }
p.update{
	top:-20px;
	font-size:12px
}
	/*
	ローカルヘッダ
	-----------------------------------*/
	#detail_info p:first-child {
			margin-bottom: 10px;
			padding: 10px;
			background: #1e51a2;
			color :#fff;
			font-size: 15px;
			font-weight: 500;
			text-align: center;

	}
	.local_header .name {
			height: 37px;
			padding: 8px 84px 8px 10px;
			white-space: normal;
			line-height: 1.2;
	}
		.local_header .name .sp{
		display:block
	}
	.local_header .list_tel li {
			padding: 15px 10px 14px;
			background: #fff;
	}
	.local_header .list_tel li p {
			position: relative;
			display: block; 
	}
	.local_header .list_tel .tel:before {
			position: relative;
			top: 0;
			left: 0;
			display: inline-block;
			margin: 0 5px 0 0;
			vertical-align: middle;
	}

	/*
	コンテンツ見出し
	-----------------------------------*/
	.contents_head .title {
			margin: 0 0 10px;
			padding: 20px;
			background:  #53a8b2 url(/tfc/images/img_tfc.jpg) no-repeat right bottom;
			background-size: auto 100%;
			color: /*#1e51a2;*/#ffffff;
			font-size: 20px;
			font-weight: 500;
	}
	.contents_head p {
			margin: 0 10px;
			text-align: center;
	}
	/*
	コンテンツサマリー
	-----------------------------------*/
	.contents_summary {
			margin: 20px 10px;
			font-size: 16px;
	}


	/*
	記事ボックス
	-----------------------------------*/
	.box_article,
	.box_article > section {margin-bottom: 32px;}
	.box_article p,
	.box_article > ul li,
	.box_article > section li {
			margin: 10px;
			font-size: 15px;
			line-height: 1.8;
	}
	.box_article, .box_article > section dl{
		padding:0 20px;
		box-sizing:border-box
	}
	.box_article .tags { margin-bottom: 20px; }
	.box_article .tags li {
			margin: 0 0 0 5px;
			font-size: 13px;
	}
	.box_article .image { text-align: center; }
	.box_article .image.box_lgray_texture {
			max-height: 400px;
			padding: 0;
			text-align: center;
	}
	.box_article .image.box_lgray_texture img { max-height: 400px; }
	.box_article .txt_supplement { font-size: 14px; }

	/*
	見出し
	-----------------------------------*/
	.heading_contents01 {
			margin: 0 10px 20px;
			font-size: 18px;
			font-weight: 500;
			text-align: center;
	}
	.heading_contents01:after {
			display: block;
			width: 160px;
			height: 4px;
			margin: 15px auto 0;
			border-radius: 2px;
			background: #1e51a2;
			content: " ";
	}
	#pkz + .heading_contents01 {margin-top: 45px;}

	.heading_contents02 {
			margin: 0 10px 20px;
			font-size: 18px;
			font-weight: 500;
			color: #1e51a2;
			text-align: center;
	}
	.subhead_contents {
			margin: 0 10px 10px;
			color: #1e51a2;
			font-size: 16px;
			font-weight: 500;
	}
	.box_article .sub_head01 {
			position: relative;
			margin: 20px 0 ;
			padding-left: 20px;
			font-size: 16px;
	}
	.box_article .sub_head01:before {
			position: absolute;
			top: 11px;
			left: 0;
			display: block;
			width: 13px;
			height: 3px;
			background: #333;
			content: " ";
	}
	.box_article .sub_head01:after {
			position: absolute;
			top: 11px;
			left: 8px;
			display: block;
			width: 5px;
			height: 3px;
			border-left: 2px solid #fff;
			background: #1e51a2;
			content: " ";
	}

	.title_contents { color: #1e51a2; }

	/*
	ボックス内1カラム構成
	-----------------------------------*/
	.box_single {
			margin: 0 auto 10px;
			padding: 15px;
			border-radius: 3px;
			background: #fff;
	}
	.box_single .title {
			margin: 15px 0 20px;
			font-size: 18px;
			font-weight: 500;
			text-align: center;
	}
	/*
	ボックス内2カラム構成
	-----------------------------------*/
	.box_double .inner {
			margin: 10px 0;
			padding: 15px;
			border-radius: 3px;
			background: #fff;
			vertical-align: top;
	}

	.box_double .inner .title {
			margin: 15px 0 20px;
			font-size: 18px;
			font-weight: 500;
			text-align: center;
	}
	.box_double .inner .title span {
			display: block;
			font-size: 15px;
			font-weight: 300;
	}

	/*
	囲みボックス
	-----------------------------------*/
	.box_enclosing {
			margin: 10px 0;
			padding: 15px;
			border: 1px solid #d9d9d9;
	}
	.box_enclosing li { font-size: 12px; }
	.box_enclosing p {
			margin: 10px 0;
			font-size: 14px;
	}

	/*
	約物つきリスト
	-----------------------------------*/
	.list_square_contents li {
			padding-left: 12px;
			background: url(/tfc/images/ico_square.png) no-repeat left 11px;
			background-size: 8px;
			font-weight: 500;
	}
.box_bonus .table_block td{
	width:100%
}

	/*
	その他テキスト
	-----------------------------------*/
	.txt_right { text-align: right; }
	.txt_point { color: #f23524; }

	/*
	ブロック型リンク
	-----------------------------------*/
	.link_block li {
			margin: 15px 10px;
	}
	.link_block a {
			position: relative;
			display: block;
			padding: 20px 30px 19px 15px;
			border: 1px solid #e6e6e6;
			background: #e6e6e6;
			font-size: 16px;
			font-weight: 500;
			text-align: left;
	}

	.link_block .link_next:after { right: 20px; }

	/*
	TFC　トップ
	-----------------------------------*/
	.list_event { border-top: 1px solid #d9d9d9; }
	.contents_nav .box_single .title + p,
	.contents_nav .box_double .title + p {
			margin-bottom: 10px;
			font-size: 14px;
			font-weight: 500;
			line-height: 1.8;
			text-align: center;
	}
	.contents_nav .box_double p + p {
			margin-top: 10px;
			font-size: 12px;
			text-align: center;
	}
	.box_gray {
			margin: 0 auto;
			padding: 10px;
	}
	.box_gray .box_double {
			font-size: 13px;
			font-weight: 500;
			text-align: center;
	}

	/* TFC通信 */
	.box_newsletter,
	.box_guide {
			margin: 20px 0;
			padding: 10px;
			border-top: 1px solid #ccc;
			border-bottom: 1px solid #ccc;
	}
	.box_guide div{
		display:block
	}
	.box_newsletter .title {
		 font-size: 18px;
		 text-align: center;
	}
	.box_newsletter .title span {
			display: block;
			font-size: 13px;
			font-weight: 300;
	}
	.box_newsletter .title + p { font-size: 13px; }
	.box_newsletter div{
		display:block
	}
	.box_newsletter .summary{
		margin:0 auto;
		width:90%;
		text-align:center
	}
	.box_newsletter .latest {
			padding: 15px;
			background: #e6e6e6;
			font-size: 15px;
	}
	.box_newsletter .latest p:first-child {
			margin: 0 0 10px;
			font-weight: 500;
	}
	.box_newsletter .pdf {
			display: inline-block;
			margin-left: 10px;
			padding: 1px 10px;
			background: #333;
			color: #fff;
			font-size: 12px;
	}
	.box_guide{
		display:block
	}
	.box_guide .download {
			padding: 10px;
			text-align: center;
			width: 100%;
			display: grid;
			grid-template-columns: repeat(2,1fr);
	}
	.box_guide .title { font-size: 18px; }

	.box_guide .download .button {
			margin: 20px auto 5px;
			border-color: #1e51a2;
			background-color: #1e51a2;
	}

	/*
	半年積立コース
	-----------------------------------*/

	.box_bonus .table_block .bonus { color: #e64545; }
	.box_bonus .image {
			margin: 20px 10px;
	}

	/*
	「お買い物カード」利用案内
	-----------------------------------*/
	.box_card .image {
			max-width: 300px;
			margin: 20px auto;
	}
	.wrap:has(.receipt){
		display:flex;
		gap:10px;
	}
	.receipt {
			padding: 0 0 10px;
			background: #f5f5f5 url(/images/common/bg_texture_bk10.png) repeat left top;
			background-size: 3px;
			width: 37%;
			clear: both;
	}
	.comment{
		width:calc((100% - 37%));
		margin: 0;
	}
	.receipt .title {
			margin: 0 0 10px;
			padding: 5px 0;
			background: #d9d9d9;
			font-size: 14px;
			font-weight: 500;
			text-align: center;
	}

	.comment td {
			font-size: 16px;
			font-weight: bold;
	}
	.comment td:first-child {
			width: 20px;
			padding-right: 0;
			text-align: center;
	}
h6.sub-title{
	font-size:16px
}
	.other-no .list_square{
		margin:0 0 20px
	}
	.other-no .list_square li{
		margin-bottom:0 
	}
	.box_store section {position: relative;}
	.box_store .button-wrap .button{
		width: 100%;
	}
	.box_store .button {
			padding: 8px 30px 7px 10px;
			background: #fff;
			color: #333;
			font-size: 13px;
	}
	.box_store .button:after {
			right: 10px;
			background-position: -50px 0;
	}
	.box_store .box_lgray p { margin: 0 10px; }

	/*
	優待施設のご案内
	-----------------------------------*/
	.box_facility .image div {
			max-width: 300px;
			margin: 0 auto 20px;
			text-align: center;
	}

	/*
	よくあるご質問
	-----------------------------------*/
	.box_faq dt {
			position: relative;
			padding: 15px 20px 0 30px;
			font-size: 16px;
			font-weight: 500;
	}
	.box_faq dt:before {
			position: absolute;
			top: 13px;
			left: 10px;
			font-size: 20px;
			font-weight: 500;
			content: "Q";
	}
	.box_faq dt:first-child { border-top: 1px solid #ccc; }

	.box_faq dd {
			position: relative;
			margin: 0;
			padding: 0 20px 5px 30px;
			border-bottom: 1px solid #ccc;
	}
	.box_faq dd:before {
			position: absolute;
			top: 2px;
			left: 10px;
			color: #f23524;
			font-size: 20px;
			font-weight: 500;
			content: "A";
	}
	.box_faq dd p { margin: 10px 0; }

	/*
	ローカルメニュー
	-----------------------------------*/
	#nav .name {
			height: 37px;
			padding: 8px 10px;
			white-space: normal;
			line-height: 1.2;
	}
	#nav .nav_title {
			position: relative;
			margin: 0;
			color: #333;
	}
	#nav .nav_title:after {
			position: absolute;
			top: 50%;
			right: 20px;
			display: block;
			width: 16px;
			height: 10px;
			margin-top: -5px;
			background: url(/images/sp_common/sprite_arrow.png) no-repeat -100px 0;
			background-size: 200px auto;
			content: " ";
	}
	#nav .nav_title.opened:after { background-position: 0 0; }
	#nav .nav_title + ul { border-top: 1px solid #d9d9d9; }
	#nav .nav_title + ul a { background: #f2f2f2; }
	#nav .primary span { display: none ; }
	#nav .pdf { position: relative; }
	#nav .pdf:after {
			position: absolute;
			top: 10px;
			right: 10px;
			display: block;
			padding: 1px 10px;
			background: #333;
			color: #fff;
			font-size: 12px;
			content: "PDF";
	}
	#nav .primary li:last-child  { display: block; }


	/*
	TFC　フッター
	-----------------------------------*/
	.heding_footer {
			margin: -15px -15px 20px;
			padding: 15px;
			background: #1e51a2;
			color: #fff;
			font-size: 18px;
			font-weight: 500;
			text-align: center;
	}
	footer.tfc .image {
			max-width: 300px;
			margin: 15px auto;
	}

	/* スマホ用フッター */
	.footer_nav_sp {
			margin-bottom: 20px;
	}
	.footer_nav_sp .nav_title {
			display: block;
			padding: 15px;
			background: #e6e6e6;
	}
	.footer_nav_sp .nav_title + ul a {
			border-top: 1px solid #e6e6e6;
			background: #fff;
			font-weight: 300;
	}
	.footer_nav_sp .nav_title + ul :li:first-child a { border-top: none; }
	.footer_nav_sp .pdf:after {
			position: absolute;
			top: 17px;
			right: 10px;
			display: block;
			width: auto;
			margin: 0;
			padding: 1px 10px;
			background: #333;
			color: #fff;
			font-size: 12px;
			content: "PDF";
	}
    footer.tfc .table_box {
    width: 90%;
    margin: 0 auto 20px;
    }
	/*------------
	2020.10 店舗
	------------------------*/
	.tenpo h5 span{
	border:1px solid #c00;
	background:#fff;
	color:#c00;
	padding:5px 30px;

	}
	.tenpo ul{
	margin:0 0 0 20px;
	font-size:15px;

	}
	.tenpo ul li{
	list-style-type:disc;
	padding-bottom:3px;
	font-weight:500;
	}
	.tenpo ul ul{
	margin-left:20px;
	}
	.tenpo ul ul li{
	list-style-type:none;
	}
}



