@charset "shift_JIS";
/* CSS Document */

/*基本*/
body, h1, h2, h3, h4, h5, h6, h7, p, ul, ol, li, dl, dt, dd, input, span, div{ 
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box; /* 過去の WebKit ベースブラウザ向け */
	-moz-box-sizing: border-box;	/* 過去の (Firefox <29) Gecko ベースブラウザ向け */
	box-sizing: border-box;
}

html,body{ height: 100%; }

body{
	font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 14px;
}
img{ vertical-align: top; }
table{ border-collapse: collapse; }
ul,li{list-style: none; }

input{
  outline: 0;
  border: none;
}

.clearfix:after{
	content: " ";
    display: block;
    clear: both;
	zoom: 1;
}

.mb_0{ margin-bottom: 0; }
.mb_10{ margin-bottom: 10px; }
.mb_20{ margin-bottom: 20px; }
.mb_30{ margin-bottom: 30px; }
.mb_40{ margin-bottom: 40px; }
.mt_0{ margin-top: 0; }
.mt_10{ margin-top: 10px; }
.mt_20{ margin-top: 20px; }
.mt_30{ margin-top: 30px; }
.mt_40{ margin-top: 40px; }
.ml_40{ margin-left: 40px; }

.pad_2p{
	padding:  0 2%;
	-webkit-box-sizing: border-box; /* 過去の WebKit ベースブラウザ向け */
	-moz-box-sizing: border-box; /* 過去の (Firefox <29) Gecko ベースブラウザ向け */
	box-sizing: border-box;
}
.pad_3p{
	padding:  0 3%;
	-webkit-box-sizing: border-box; /* 過去の WebKit ベースブラウザ向け */
	-moz-box-sizing: border-box; /* 過去の (Firefox <29) Gecko ベースブラウザ向け */
	box-sizing: border-box;
}
span.pad_3p{ display: inline-block; }

.f_left{ float: left; }
.f_right{ float: right; }
.t_center{ text-align: center; }
.t_left{ text-align: left; }
.t_inde{
	padding-left: 1em;
	text-indent: -1em;
}
.t_right{ text-align: right; }
.t_small{ font-size: 80%; }
.t_bold{ font-weight: bold; }
.d_block{ display: block; }

#area03 { margin:0 15px 20px 15px;}
#area03 p { margin-bottom:15px;}
#area03 h3 { font-size:18px;}
#area03 h3 span { display:block; padding:4px;}
#area03 h4 { font-weight:bold; margin:4px 0;}
#area03 ul { margin:4px 0;}
#area03 ul li { margin:6px 0; text-indent:-0.5em; padding-left:0.5em;}

#area03 .ge_txt {padding:5%;}

/*ページ全体*/
#t_wrap{
	margin: 0 auto;
	padding: 0 0 20px 0;
	-webkit-box-sizing: border-box; /* 過去の WebKit ベースブラウザ向け */
	-moz-box-sizing: border-box;	/* 過去の (Firefox <29) Gecko ベースブラウザ向け */
	box-sizing: border-box;
	text-align: center;
}

/*画像包括部*/
.img_complex{ margin: 0 auto; }
/*画像包括部　マージン追加*/
.img_margin{ margin-bottom: 20px; }

/*リンクボタン包括部*/
.t_btn_wrap{
	margin: 20px auto;
	text-align: center;
}
.t_btn_wrap a img{
	text-decoration: none;
	border: none;
}

/*リンクボタン注意事項*/
.t_btn_txt{
	margin: 5px auto;
	text-align: center;
}


.btn {
	width:85%;
	margin:0 auto 20px;
	text-align:center;
}

/*キャンペーン期間*/
.cam-date{
	text-align: center;
	font-weight: bold;
	margin: 1% auto;
}

/*詳細説明部*/
#t_descript{
	margin: 0 auto 20px auto;
	padding: 15px;
}

#t_descript .tbl_descript{ text-align: left; }

#t_descript .tbl_descript .descript_title{
	font-weight: bold;
	padding: 5px 10px;
}

#t_descript .tbl_descript td{ padding: 5px 10px; }

#t_descript .tbl_descript .td_left{
	vertical-align: top;
	padding: 5px 0 0 5px;
}

#t_descript .tbl_descript .td_item{ padding: 5px 0 0 0; }

/*詳細説明部　説明文右寄せ*/
.descript_right{ text-align: right; }

/*『お申し込みはこちら』ボタン下説明部*/
.appli_area .appli_txt {
	width: 90%;
	margin: 2% 5%;
	text-align: center;
}

/*中央アコーディオン部*/
.categoryList{}
.categoryList .acc_wrap {
	width: 90%;
	margin: 1% auto;
	text-align: center;
	padding: 2% 0;
}

/*中央アコーディオン部各項目ボタン部*/
/*#cate-menu1,*/
/*,#cate-menu4*/
#cate-menu2,
#cate-menu3,
#card-menu1,
#card-menu2,
#cate-menu_cs,
#syoki-menu2,
#syoki-menu3,
#card-point1,
#card-point2,
#card-point3,
#card-point4,
#card-point5
{ display: none; }	

.menu-plus{ background: url(../images_B_2030/PC_plus.png) no-repeat; }
.menu-plus.menuopen{ background-image: url(../images_B_2030/PC_minus.png); }
.menu-plus,.menuopen{
	background-position : right 0.7em bottom 50%;
	background-size: 7%;
}

.menu-plus.is-coupon{
	background: url(../images_B_2030/PC_ico01.png) no-repeat;
}
.menu-plus.is-card{
	background: url(../images_B_2030/PC_ico04.png) no-repeat;
}
.menu-plus.is-point{
	background: url(../images_B_2030/PC_ico02.png) no-repeat;
}
.menuopen.is-coupon{
	background: url(../images_B_2030/PC_ico01_close.png) no-repeat;
}
.menuopen.is-card{
	background: url(../images_B_2030/PC_ico04_close.png) no-repeat;
}
.menuopen.is-point{
	background: url(../images_B_2030/PC_ico02_close.png) no-repeat;
}
.menu-plus.is-coupon,.menuopen.is-coupon{
	background-position : right 4% bottom 50%;
	background-size: 7%;
}
.menu-plus.is-card,.menuopen.is-card{
	background-position : right 4% bottom 50%;
	background-size: 7%;
}
.menu-plus.is-point,.menuopen.is-point{
	background-position : right 0.7em bottom 50%;
	background-size: 7%;
}


/*中央アコーディオン部各項目詳細部*/
#cate-menu1,
#cate-menu2,
#cate-menu3,
#cate-menu4,
#card-menu1,
#card-menu2,
#cate-menu_cs{
	background-color: #FFF;
	text-align: left;
	margin: 4% auto;
}
#card-point1,
#card-point2,
#card-point3,
#card-point4,
#card-point5{
	background-color: #FFF;
	text-align: left;
	/* margin: 20px auto; */
}

.big_A.is-sec01>#cate-menu1{
	background-color: #E8FAFB;
}
.big_A.is-sec01>#cate-menu2{
	background-color: #E8FAFB;
}
.big_A.is-sec02>#cate-menu1{
	background-color: #FFEEE5;
}
.big_A.is-sec02>#cate-menu3{
	background-color: #FFEEE5;
}

#cate-menu1:after,
#cate-menu2:after,
#cate-menu3:after,
#cate-menu4:after,
#cate-menu_cs:after,
#card-menu1:after,
#card-menu2:after,
#syoki-menu1:after,
#syoki-menu2:after,
#card-point1:after,
#card-point2:after,
#card-point3:after,
#card-point4:after,
#card-point5:after{
	display: block;
	clear: both;
	content: "";
}

#cate-menu1 img,
#cate-menu2 img,
#cate-menu3 img,
#cate-menu4 img,
#card-menu1 img,
#card-menu2 img,
#syoki-menu1 img,
#syoki-menu2 img
{ margin: 2% 0; }

#cate-menu1 p,
#cate-menu2 p,
#cate-menu3 p,
#cate-menu4 p,
#card-menu1 p,
#card-menu2 p,
#syoki-menu1 p,
#syoki-menu2 p
{ line-height: 1.5em; }

.big_A {
	overflow: hidden;
    width: 100%;
    margin: 0 auto;
    text-align: center;
	padding: 0;
}
.big_A.is-sec01{
	background-color: #E8FAFB;
}

.big_A.is-sec02{
	background-color: #FFEEE5;
}

.A_PanelTab {
	margin: 0 auto;
	padding: 0 0 1% 0;
}
.letter_inner{
	width: 100%;
	margin: 0 auto;
	background-color: #5EAAE8;
	color: #FFF;
	font-size:150%;
}
.letter_inner.is-pink{
	background-color: #ffd6dd;
	color: #000;
}
.letter_img{
	padding: 0.4em 0 0.4em 0em;
}
.letter_img img{ width: 85%; vertical-align: middle;}

.A_PanelPoint{
	cursor: pointer;
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* Internet Explorer */
	-khtml-user-select: none; /* KHTML browsers (e.g. Konqueror) */
}

/*中央アコーディオン部各項目詳細部*/
#area01 { margin-bottom:15px; }

.categoryList div#cate-menu1,
.categoryList div#cate-menu2,
.categoryList div#cate-menu3,
.categoryList div#cate-menu4{
	background-color: #FFF;
	padding: 0 5% 5% 5%;
	text-align: left;
	margin-bottom: 2%;
}

.categoryList div#cate-menu2.is-bg_none{
	background: 0;
}

.categoryList div#cate-menu3.is-bg_none{
	background: 0;
}

.categoryList div#cate-menu4.is-bg_none{
	background: 0;
}


.categoryList div#cate-menu1:after,
.categoryList div#cate-menu2:after,
.categoryList div#cate-menu3:after,
.categoryList div#cate-menu4:after{
	display: block;
	clear: both;
	content: "";
}

.categoryList div#cate-menu1 img,
.categoryList div#cate-menu2 img,
.categoryList div#cate-menu3 img,
.categoryList div#cate-menu4 img{
	margin: 2% 0;
}
.categoryList div#cate-menu1 p,
.categoryList div#cate-menu2 p,
.categoryList div#cate-menu3 p,
.categoryList div#cate-menu4 p{
	line-height: 1.5em;
}
.categoryList div#cate-menu1 p,
.categoryList div#cate-menu2 p,
.categoryList div#cate-menu3 p,
.categoryList div#cate-menu4 p,
.categoryList div#cate-menu4 table,
.categoryList div#cate-menu4 ul li{
	font-size: 11px;
}
.categoryList div#cate-menu4 ul li{
	text-indent: -1em;
	padding-left: 1em;
}

.t-card_01 div.t-card_l{
	float: left;
	width: 63%;
}
.t-card_01 div.t-card_l img{ width: 60%; }
.t-card_01 div.t-card_r{
	float: left;
	width: 37%;
}
.t-card_01 div.t-card_r img{ width: 100%; }

/*詳細説明部*/
.t_descript{ margin: 20px auto; }
.t_descript_2{ margin: 0 auto 20px auto; }
.t_descript .tbl_descript,
.t_descript_2 .tbl_descript,
.appli_tbl{
	text-align: left;
}
.t_descript .tbl_descript th,
.t_descript_2 .tbl_descript th{
	font-weight: bold;
	text-align: left;
}
.t_descript .tbl_descript td,
.t_descript_2 .tbl_descript td,
.appli_tbl td{
	padding: 5px 10px;
}
.t_descript .tbl_descript .td_left,
.t_descript_2 .tbl_descript .td_left{
	vertical-align: top;
	padding: 5px 0 0 0;
}
.appli_tbl .td_left{
	vertical-align: top;
	padding: 5px 0 0 0;
	text-align: center;
	width: 3em;
}
.t_descript .tbl_descript .td_item,
.t_descript_2 .tbl_descript .td_item,
.appli_tbl .td_item{
	padding: 5px 0 0 0;
}

.new_ttl{
	background-color: #0D6FB8;
	margin: 6% auto 5% auto;
	padding: 2% 0 2% 4%;
	font-weight: bold;
	color: #FFF;
	text-align: left;
}
#t_descript .tbl_descript th{ font-weight: bold; }
.txt_bold{ color: #0D6FB8; }

/*フォントサイズ変更*/
.appli_tbl{ font-size: 80%; }

/*上部キャンペーン期間表示部*/
.cam-txt{
	font-size: 90%;
	text-align: center;
	margin-top: 1%;
}

/*『お申し込みはこちら』ボタン*/
.appli_area{ padding: 5% 0; }
.appli_area2{
	background-color: #f2f2f2;
	padding: 5% 0;
}
.appli_area2 .appli_txt{
	width: 90%;
	margin: 2% 5%;
	text-align: center;
}

/*『特典獲得までのステップ』部*/
.acquisition_title{
	background-color: #65D4CB;
	color: #FFF;
	font-size: 140%;
	font-weight: bold;
	text-align: center;
	padding: 10px 0;
}

.acquisition_area{
	background: url(../images_B_2030/sp_img_acquisit-back.png) repeat;
	padding: 20px 0;
	text-align: center;
}

.acquisition_area img{
	margin: 3% 0;
	text-align: center;
}
.acquisition_area p{
	text-align: left;
	padding: 0 5% 0 8%;
	text-indent: -1em;
}

/*各項目見出し*/
.itemheading{
	border: none;
	border-bottom: 1px dotted #CCC;
	text-align: left;
    width: 100%;
	margin: 4% auto;
	padding-bottom: 2%;
}

.left_ttl{
	background-color: #B6D9F6;			/*色を変更する際にはこちらを変更する事*/
    width: 1em;
    height: 3em;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-khtml-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	display:inline-block;
	vertical-align: middle;
}

.ttl_bold{
	width: 93%;
    font-weight: bold;
	display:inline-block;
	vertical-align: middle;
}

.categoryList div#cate-menu1 p.itemMatter,
.categoryList div#cate-menu2 p.itemMatter,
.categoryList div#cate-menu3 p.itemMatter,
.categoryList div#cate-menu4 p.itemMatter{
	font-size: 100%;
	padding: 0 0 1% 1.2em;
	text-align: left;
}

/*「マジカルクラブTカードJCBが選ばれるわけ」部*/
.cate2Block{ width: 100%; }
.cate2_left{
	width: 49%;
	margin-right: 1%;
	float: left;
} 
.cate2_right{
	width: 49%;
	margin-left: 1%;
	float: right;
} 
.cate2Block:after{
	display: block;
	clear: both;
	content: "";
}

/*「キャンペーン特典」テーブル部*/
.tp_tbl{
	width: 100%;
	box-sizing: border-box;
}
.tp_tbl,.tp_tbl tr{ border: 1px solid #999; }
.tp_tbl th,.tp_tbl td{ padding: 3%; }
.tp_tbl td{ width: 80%; }
.tp_tbl th{
	width: 20%;
	background-color: #f6f6f1;
	text-align: center;
}

.categoryList div#cate-menu4 p.attention_detail{
	color: #5EAAE8;
	font-weight: bold;
	font-size: 180%;
	margin-bottom: 1%;
}

/*フッター部*/
.ncs_footer{
	margin: 15px auto;
	text-align: center;
}
.ncs_footer a{ text-decoration: none; }
.ncs_footer .ncs_txt{
	font-size: 14px;
	font-weight: bold;
	color: #5F589C;
	margin-bottom: 0.25em;
}
.ncs_footer .ncs_url{
	font-size: 18px;
	font-weight: bold;
	color: #333;
	margin-top: 0.25em;
}

/*クーポンコード注意事項*/
ul.coupon_notes{
	margin-top: 0;
	list-style: none;
	font-size: 80%;
	float: right;
}
ul.coupon_notes li{
	text-align: left;
	padding-right: 2em;
	padding-left: 1em;
	text-indent: -1em;
}

/*キャンペーン詳細部新アコーディオン部各項目詳細部*/
.categoryList div#d_tails{ display: none; }	
.categoryList div#d_tails{
	background-color: #FFF;
	padding: 0 5% 5% 5%;
	text-align: left;
	margin-bottom: 2%;
}
.categoryList div#d_tails:after{
	display: block;
	clear: both;
	content: "";
}
.categoryList div#d_tails img{ margin: 2% 0; }
.categoryList div#d_tails p{ line-height: 1.5em; }
.categoryList div#d_tails table,.categoryList div#d_tails ul li{ font-size: 11px; }

/*キャンペーン詳細・アコーディオン部各項目ボタン部*/
#cate_d .letter_block{
	width: 92%;
	margin: 0 auto;
	text-align: center;
	background-color: #FFF;
	border: none;
	border: 1px solid #A4B3BF;		/*色を変更する際にはこちらを変更する事*/
	border-radius: 9px;
}
#cate_d .letter_inner{
	width: 100%;
	margin: 0.5% auto;
	background-color: #ffd6dd;		/*色を変更する際にはこちらを変更する事*/
	color: #000;
}
#cate_d .letter_img{
	color: #FFF;
	font-weight: bold;
	font-size: 16px;
	margin: 0;
padding: 0.8em  0;
}

/* 規約部用 */
.Contract_Top{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
	box-sizing: border-box;
	border: none;
	border-bottom: 2px solid #666;
}
.PmgL { margin-left: 21px; }
/* compStep */
ul.compStep { margin: 10px 0; }
.compStep li {
	float: left;
	box-sizing:border-box;
	/*list-style: none;*/
}
.compStep li img { margin-bottom: 10px; }
.compStep li p { padding-left:10px; }

/* 規約部アコーディオン */
.inqMethod02 {
	margin: 4% auto 0 auto;
	text-align: center;
}

.ttl01 {
    font-weight: 700;
    color: #262626;
    line-height: 1.3;
    padding-bottom: 13px;
}

/* -- sectionView -- */
.sectionView {
	margin: 5% 0;
    text-align: left;
    word-break: break-all;
    font-size: 11px;
}

.sectionView p { margin-bottom: 15px; }

.sectionView > :first-child,
.sectionView form > :first-child { margin-top: 0 !important;}
.sectionView > :last-child,
.sectionView form > :last-child { margin-bottom: 0 !important;}

.sectionView h3.direTtl01 span {
    font-size: 115.4%;
    font-weight: 700;
    padding-left: 20px;
    color: #357DA0;
}
.sectionView .direTtl03 {
    padding: 4px 10px 3px;
    background: #357DA0;
    text-shadow: none;
    font-weight: bold;
    font-size: 13px;
    color: #fff;
    margin-bottom: 10px;
}
.directTtl02 {
    font-size: 115.4%;
    font-weight: 700;
    line-height: 1.2;
    display: inline-block;
    padding: 0 5px;
    margin-bottom: 5px;
    border-left: 5px solid #FF7357;
}
.title06 {
    padding: 0 0 5px 0;
    font-size: 115.4%;
    font-weight: 700;
}
.direBtn { font-size: 20px; }
p.direBtn {
	margin: 0 auto;
	width: 12em;
}

/* 規約部アコーディオン */
.tglBox {
    display: none;
    background: #fff;
    border-top: 1px solid #CCC;
}
.noJS .tglBox {
    display: block;
    background-color: #fff;
    padding: 10px;
}
ul.tglList {
	margin: 0;
	padding: 0;
}
ul.tglList > li {
	border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
	list-style: none;
}
ul.tglList li.tgl01 { border-top: 1px solid #CCC; }
ul.tglList li > p { margin-bottom: 0; }
.tglBtn {
	margin: 0;
	padding: 2% 4%;
	box-sizing: border-box;
	font-weight: bold;
	color: #222;
	background: #eee;
	text-shadow: 0 1px 0 #FFF;
	background-image: -webkit-gradient(linear, left top, left bottom, from( #FFF ), to( #DADADA ));
	background-image: -webkit-linear-gradient( #FFF , #DADADA );
	background-image:    -moz-linear-gradient( #FFF , #DADADA );
	background-image:     -ms-linear-gradient( #FFF , #DADADA );
	background-image:      -o-linear-gradient( #FFF , #DADADA );
	background-image:         linear-gradient( #FFF , #DADADA );
}
.tglList .innersec ol li {
	background: none;
	padding: 1%;
    word-wrap: break-word;
}
ul.tglList > li > p span { 
	font-size: 14px;
    background: url(../images_B_2030/icon_plus_01.png) no-repeat right 50%;
    display: block;
    background-size: 1.4em;
	text-align: left;
    padding-right: 2em;
	box-sizing: border-box;
}
ul.tglList > li > p span.open { 
    background: url(../images_B_2030/icon_minus_01.png) no-repeat right 50%;
    display: block;

    background-size: 1.4em;
}

.sectionView .innersec01 {
	background-color: #fce8e4;
    padding: 15px;
    margin: 20px 15px;
	box-sizing: border-box;
}
ul.inlist01,ul.inlist02 { margin: 0; }
ul.inlist02 { padding: 0; }
ul.inlist01 li {
	list-style-type: disc;
	margin: 1% 2% 1% 5%;
}
ul.inlist02 li {
	list-style-type: none;
    padding-left: 1em;
    text-indent: -1em;
}
.listSec .innerContents {
	width: 523px;
	float: left;
	margin-left: 15px;
    height: 245px;
    overflow: auto;
}
.listSec .innerContents h1.title01 {
	font-size: 17px;
	margin-bottom: 10px;
}
.ver {
	margin-bottom: 5px;
	text-align: right;
}
.link01 a { padding-bottom: 5px; }
.innersec ul { margin-left: 0; }

/*rule*/
.sectionView .tglBox .titbar01 {
	position: relative;
    padding: 1% 4%;
    margin: 0 0 2% 0;
    box-sizing: border-box;
    background: #357DA0;
    text-shadow: none;
    font-weight: bold;
    font-size: 16px;
    color: #fff;
    text-align: left;
}

.tglBox .titbar02 {
    border-top: solid 3px #357DA0;
    border-bottom: solid 1px #e0e0e0;
    position: relative;
    margin: 0;
    padding: 1% 4%;
    background: #f5f5f5;
    text-shadow: none;
    font-weight: bold;
    font-size: 14px;
}

.tglBox .tit01 {
    position: relative;
    margin: 4% 0;
    padding-left: 3%;
    line-height: 1.3;
    font-weight: 700;
    font-size: 14px;
}

.info h3 { font-size: 1.1em; }

.ver {
    text-align: right;
    margin-top: 2%;
}

.content .linkArea{
    text-align: right;
    margin-right:5px;
}

.content .linkArea img.pdf{
    vertical-align: middle;
    padding-left: 0.3em;
}

.section01 .innersec {
	padding: 10px;
	box-sizing: border-box;
}

.pd10{
	padding: 10px;
	box-sizing: border-box;
}
.wrp { word-wrap: break-word; }
.tglList .innersec ol li {
	padding: 2% 0;
	box-sizing: border-box;
}

.alnR { text-align: right !important; }

/*規約部内　表*/
table.t_lules{
	padding: 1%;
    margin: 0 3%;
	box-sizing: border-box;
	border: 1px solid gray;
}
.t_lules tr{ background-color: #FFF;}
.t_lules td{
	padding: 1% 2%;
	border: 1px solid gray;
}
.t_lules td.lule_c{
	text-align: center;
	background-color: #CCF;
}
.t_lules td.lule_r{ text-align: right; }

/* table
----------------------------- */
.tbl01 {
	/*border-collapse: collapse;*/
	width: 97%;
    margin: 10px auto;
}
.tbl01 th, .tbl01 td {
	border: 1px solid #DDD;
	font-size: 12px;
	padding: 7px;
}
.tbl01 th {
	background-color: #f8f8f8;
	font-weight: 700;
	text-align: left;
}
.tbl01 td { vertical-align: middle; }

.tbl01.col1Tbl th,.tbl01.col1Tbl td{
	display: block;
	width: auto;
}
.tbl01.col1Tbl th,.tbl01.col1Tbl td{ border-bottom: none; }
.tbl01.col1Tbl{ border-bottom: solid 1px #DDD; }
.tbl01.col1Tbl{ table-layout: fixed; }


.letter_inner_k{ background-color: #FFFFFF;
	border-top: solid 2px #505050;
	border-bottom: solid 2px #505050; 
}

.letter_inner_k.is-bg_none{
	background: 0;
}

.letter_img_k{
	text-align: center;
	margin: 0.5%;
}


.spec {
    margin: 10px auto 0 auto;
    padding: 0;
    background: #FFF;
    width: 93%;
}



.spec_table {
    width: 100%;
    border: 1px solid #ccc;
    border-collapse: collapse;
    font-size: 14px;
    letter-spacing: 0;
}

.spec_table tr {
    border-bottom: 1px solid #ccc;
}

.spec_table th {
    width: 30%;
    padding: 15px 10px;
border-right: 1px solid #ccc;
    background: #f2f2f2;
    vertical-align:middle;
}

caption, th {
    text-align: left;
}

.spec_table td {
    width: 70%;
    padding: 15px 10px;
    text-align: left;
}

.kstk_waku {
text-align: left;
}
.kstk_txtBox01 {
border: solid 4px #eee;
padding: 8px;
}
.kstk_imgbox02 {
float: left;
margin-right: 10px;
}
.kstk_imgbox02_2 {
text-align: left;
}

.syoki-menu{
	padding: 0 10px;
}

.syoki-menu-list{
	background-color: #FAF4A2;
	text-align: left;
	padding: 16px 20px;
}

.syoki-menu-list.is-blue{
	background-color: #cce1fe;
}

.syoki-menu-list__item{
	line-height: 1.5em;
	list-style-type: none;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 12px;
}

.letter_img.is-bg{
	background-color: #9e0066;
}

.letter_img.is-sec01{
	background-color: #1FBCCA;
}

.letter_img.is-sec02{
	background-color: #e65000;
}

.txt_yellow{
	color: yellow;
}

.fs-20{
	font-size: 20px;
}

.syoki__inner{
	background-color: #FAF4A2;
	/* margin-bottom: -35px; */
	/* padding-bottom: 5px; */
	padding: 16px 0;
}

.syoki__inner.is-bg02{
	background-color: #cce1fe;
}

/* .c-toggle03 */
.c-toggle03{
	position: relative;
	padding: 0;
	overflow: hidden;
	width: 100%;
	max-width: 508px;
	margin: 0 auto 5px auto;
	text-align: left;
	z-index: 1;
}
.c-toggle03-trigger{
	position: relative;
	transition: all .3s;
}
.c-toggle03-trigger.menu-plus,
.c-toggle03-trigger.menuopen{
	background: 0;
}
.c-toggle03-trigger::before,
.c-toggle03-trigger::after{
	position: absolute;
	content: '';
	right: 16px;
	top: 50%;
	transform: translateY(-50%) rotate(0deg);
	width: 16px;
	height: 2px;
	background-color: #357DA0;
	z-index: 2;
}
.c-toggle03-trigger::before{
	transform: translateY(-50%) rotate(90deg);
	transition: all .3s;
}
.c-toggle03-trigger.menuopen::before{
	transform: translateY(-50%) rotate(0deg);
	transition: all .3s;
}


.c-head01{
	display: inline-block;
	font-weight: bold;
	font-size: 19px;
	text-align: center;
	/* margin: 0 24px;
	padding-top: 30px; */
	color: #222;
	background-image: linear-gradient(transparent 55%, #F3E43E 0%)
}

.c-head01.is-none{
	background: 0;
}

.c-head01.is-blue{
	/* margin: 0 40px; */
	background-image: linear-gradient(transparent 55%, #64A5FB 0%)
}

/* .c-head02 */
.c-head02__txt {
	position: relative;
	display: inline-block;
	padding: 0 55px;
	color: #11376b;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: .06em;
	font-weight: bold;
	margin: 0;
}
.c-head02__txt::before, .c-head02__txt::after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 2px;
	background-color: #11376b;
}
.c-head02__txt::before {
	left: 0;
}
.c-head02__txt::after {
	right: 0;
}


/* .c-table01 */
.c-table01 {
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-spacing: 0;
	width: 100%;
	color: #000;
	font-size: 12px;
	border-spacing: 0;
	border-collapse: collapse;
}
.c-table01 th {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background-color: #f2f2f2;
	text-align: center;
	/* width: 32%; */
	width: 29%;
	padding: 15px 4px;
	vertical-align: middle;
	font-size: 11px;
}
.c-table01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	text-align: left;
	padding: 8px;
	width: 68%;
}
.c-table01 .is-indent {
	padding-left: 4em;
	text-indent: -4em;
}
.c-table01 .is-indent2 {
	/* padding-left: 0.6em; */
}
.c-table01 .is-indent3 {
	/* padding-left: 1.6em; */
	padding-left: 1.3em;
}
.c-table01 .is-border-none {
	border-bottom: 0;
}
.c-table01 .is-link{
	font-weight: bold;
}



.letter_inner_k.is-bg01{
	border: 0;
	background-color: #FAF4A2;
	padding-bottom: 10px;
}

.letter_inner_k.is-bg02{
	border: 0;
	background-color: #cce1fe;
	padding-bottom: 10px;
}

.top-img{
	width: 86%;
	position: absolute;
	top: 20.2%;
	/* left: 50%;
	transform: translateX(-50%); */
	left: 7%;
}



.c-list01{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.c-list01__item{
	width: 48%;
	display: flex;
	flex-direction: column;
}
.c-list01__item:nth-child(2n){
	margin-left: 8px;
}
.c-list01__item:nth-child(2) .c-list01__wrap{
	flex-grow: 1;
}
.c-list01__inner{
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.c-list01__wrap{
	border: 1px solid #c8c8c8;
	border-radius: 12px;
	padding: 12px 6px;
	font-weight: bold;
	color: #565656;
	font-size: 11px;
	line-height: 1.5;
	text-align: center;
}
.c-list01__item-strong{
	color: #da6c6d;
}
.c-list01-child__item{
	margin-top: 6px;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 10px;
}
.is-relative{
	position: relative;
	width: 100%;
}

.is-indent{
	padding-left: 1em;
}

.fadeIn {
	animation-name: fadeInAnime;
	animation-fill-mode:backwards;
	animation-duration:3s;
	/* animation-iteration-count:infinite; */
	animation-timing-function:ease;
	animation-delay: 0.8s;
	animation-direction:normal;
	}
	
	/*アニメーション*/
	@keyframes fadeInAnime{
		0% {
			opacity: 0;
		}
	
		100% {
			opacity: 1;
		}
	}

.fadeUp {
	animation-name: fadeUpAnime;
	animation-duration:1s;
	animation-delay: 0.5s;
	animation-fill-mode:forwards;
	opacity:0;
	}

	@keyframes fadeUpAnime{
		from {
			opacity: 0;
		transform: translateY(100px);
		}
	
		to {
			opacity: 1;
		transform: translateY(0);
		}
	}

.fadeUpTrigger{
	opacity: 0;
}

.main-txtarea{
	margin: 6px 12px 28px;
}
.main-txt{
	color: #000;
	text-align: left;
	font-size: 11px;
	text-indent: -1em;
	padding-left: 1em;
}
.main-txt.is-big{
	font-size: 14px;
}
.main-txt__strong{
	font-weight: bold;
	text-decoration: underline;
}

.main-inner{
	padding-bottom: 1px;
	background-color: #fcd005;
	/* margin-bottom: 30px; */
}

.sub-image{
	position: relative;
}
.sub-image-btn{
	display: block;
	width: 70%;
	position: absolute;
	bottom: 0;
	right: 8px;
}

.main-content{
	margin: 24px 20px;
	padding: 24px 16px 1px;
	background-color: #fff;
}
.main-content-sec01{
	/* padding: 24px 0 24px; */
}
.main-content-sec01__head,
.main-content-sec02__head{
	margin: 0 -19px;
}

.main-content-sec01__btn-link {
	position: relative;
}
.main-content-sec01__btn-link::before{
	position: absolute;
	content: "";
	top: 32px;
	right: 20px;
	width: 29px;
	height: 29px;
	background: url(../images_B_2030/PC_ico01.png) no-repeat;
}
.main-content-sec01__wrapper{
	max-width: 508px;
}
.main-content-sec01-box{
	padding: 0;
	color: #000;
}
#cate-menu2.main-content-sec01-box{
	margin-top: 30px;
	font-size: 12px;
}
.main-content-sec01-box__head{
	background: #11376b;
	color: #fff;
	font-size: 16px;
	padding: 12px;
	letter-spacing: 0.08em;
}
.main-content-sec01-box__flame{
	padding: 12px;
	border: 1px dashed #333;
}
.main-content-sec01-box__flame-list{
	padding: 0 1em;
}
.main-content-sec01-box-order__item,
.main-content-sec01-box-list__item,
.main-content-sec01-box__flame-item{
	padding-left: 1em;
	text-indent: -1em;
}
.main-content-sec01-box-list__item.is-indent02{
	padding-left: 2em;
}
#cate-menu2 .main-content-sec01-box-order__img{
	display: block;
	margin: 10px auto 20px;
}
.card-point-sec{
	margin-bottom: 4px;
}
.card-point-sec__wrapper{
	background-color: #11376b;
}
.main-card__head{
	padding: 0 30px;
}
.card-point__head{
	padding: 0 30px 4px;
}
.card-point-sec-box{
	padding: 20px;
}

.card-point-sec-box-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.card-point-sec-box-list__txt{
	font-weight: bold;
	padding-left: 28px;
}
.card-point-sec-box-list__txt-span{
	display: inline-block;
}
.card-point-sec-box-list__item.is-dashed{
	padding-top: 20px;
	border-top: 2px dashed #357DA0;
}

.v-point{
	max-width: 267px;
	width: auto;
	margin: 0 auto 20px;
}
.v-point__txt{
	font-size: 10px;
}

.bottom-notice{
	padding: 20px 30px;
}

.card-about{
	padding: 20px;
}

/***追従するトップへ戻るボタン***/
.page-top__link {
	position: fixed;
	right: -12px;
	bottom: 150px;
	height: 20px;
	text-decoration: none;
	font-weight: bold;
	transform: rotate(90deg);
	font-size: 90%;
	line-height: 1.5rem;
	padding: 0 0 0 35px;
	border-top: solid 1px;
	width: auto;
	margin: 0;
	transition: all .3s;
}
.page-top__link::before {
	content: "";
	display: block;
	position: absolute;
	top: -1px;
	left: 0px;
	width: 15px;
	border-top: solid 1px;
	transform: rotate(35deg);
	transform-origin: left top;
}

a.page-top__link{
	/* color: #11376b; */
	color: #14a937;
}
/***トップへ戻るボタンここまで***/