@charset "UTF-8";
/* ==================================================
	basic settings
================================================== */
h1, h2, h3, h4, h5, h6, p, li, pre, td, th, dt, dd { line-height: 1.6; }

/* basic line-height */
a { color: #004db6; }
a:link { text-decoration: underline; }
a:hover { text-decoration: none; }

/* code set
-------------------------------------------------- */
pre, code, kbd, samp, var, .font_mono { font-size: 1.3rem; line-height: 1.5; }
pre { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; padding: 10px; border: 1px solid #ddd; background-color: #f4f4f4; overflow-x: auto; }

/* ==================================================
	RWD layout settings
================================================== */
.show_sp, .show_pc { display: none !important; }
/* SP
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .show_sp { display: block !important; } }
/* ========== end △ */
/* PC
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .show_pc { display: block !important; } }
/* ========== end △ */
/* SPのみ非表示
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .sp_none { display: none !important; } }
/* ========== end △ */
/* 印刷時のみ非表示
-------------------------------------------------- */
/* ▽ PRINT layout ========== */
@media print { .print_none { display: none !important; } }
/* ========== end △ */
/* ==================================================
	layout
================================================== */
/* clearfix
-------------------------------------------------- */
.clearfix:after { clear: both; display: block; content: " "; height: 0px; visibility: hidden; }
.clearfix { display: block; }
* html .clearfix { height: 1%; }

/*■05.FLEX*/
.flex { display: -webkit-box; display: -ms-flexbox; display: flex; display: -webkit-flex; /* Safari */ display: -moz-flex; /* Firefox */ display: -ms-flex; /* IE */ }

/*justify-content*/
.flex_jus_start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-justify-content: flex-start; -moz-justify-content: flex-start; -ms-justify-content: flex-start; }
.flex_jus_end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; -webkit-justify-content: flex-end; -moz-justify-content: flex-end; -ms-justify-content: flex-end; }
.flex_jus_center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; }
.flex_jus_between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; -ms-justify-content: space-between; }
.flex_jus_around { -ms-flex-pack: distribute; justify-content: space-around; -webkit-justify-content: space-around; -moz-justify-content: space-around; -ms-justify-content: space-around; }
.flex_jus_ini { -webkit-box-pack: initial; -ms-flex-pack: initial; justify-content: initial; -webkit-justify-content: initial; -moz-justify-content: initial; -ms-justify-content: initial; }

/*align-items*/
.flex_align_item_start { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; -webkit-align-items: flex-start; -moz-align-items: flex-start; -ms-align-items: flex-start; }
.flex_align_item_end { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-align-items: flex-end; -moz-align-items: flex-end; -ms-align-items: flex-end; }
.flex_align_item_stretch { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; -webkit-align-items: stretch; -moz-align-items: stretch; -ms-align-items: stretch; }
.flex_align_item_baseline { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; -webkit-align-items: baseline; -moz-align-items: baseline; -ms-align-items: baseline; }
.flex_align_item_center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; }
.flex_align_item_ini { -webkit-box-align: initial; -ms-flex-align: initial; align-items: initial; -webkit-align-items: initial; -moz-align-items: initial; -ms-align-items: initial; }
.flex_container { -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.box-s_bb { box-sizing: border-box; }


/* float
-------------------------------------------------- */
.flr { float: right; }
.fll { float: left; }
.pull-left { float: left; }
.pull-right { float: right; }

/* overflow
-------------------------------------------------- */
.ofh { overflow: hidden; }

/* ==================================================
	width
================================================== */
.w10p { width: 10% !important; }
.w20p { width: 20% !important; }
.w25p { width: 25% !important; }
.w30p { width: 30% !important; }
.w40p { width: 40% !important; }
.w50p { width: 50% !important; }
.w60p { width: 60% !important; }
.w70p { width: 70% !important; }
.w80p { width: 80% !important; }
.w90p { width: 90% !important; }
.w100p { width: 100% !important; }
.w100p-cus { width: 100% !important; margin: 20px;}

/* width */
.w100 { -webkit-box-flex: 0; -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%; }
@media only screen and (min-width: 767px) {
  .w10 { -webkit-box-flex: 0; -ms-flex: 0 0 10%; flex: 0 0 10%; max-width: 10%; }
  .w20 { -webkit-box-flex: 0; -ms-flex: 0 0 20%; flex: 0 0 20%; max-width: 20%; }
  .w30 { -webkit-box-flex: 0; -ms-flex: 0 0 30%; flex: 0 0 30%; max-width: 30%; }
  .w33 { -webkit-box-flex: 0; -ms-flex: 0 0 33.333333%; flex: 0 0 33.333333%; max-width: 33.333333%; }
  .w40 { -webkit-box-flex: 0; -ms-flex: 0 0 40%; flex: 0 0 40%; max-width: 40%; }
  .w50 { -webkit-box-flex: 0; -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%; }
  .w60 { -webkit-box-flex: 0; -ms-flex: 0 0 60%; flex: 0 0 60%; max-width: 60%; }
  .w70 { -webkit-box-flex: 0; -ms-flex: 0 0 70%; flex: 0 0 70%; max-width: 70%; }
  .w80 { -webkit-box-flex: 0; -ms-flex: 0 0 80%; flex: 0 0 80%; max-width: 80%; }
  .w90 { -webkit-box-flex: 0; -ms-flex: 0 0 90%; flex: 0 0 90%; max-width: 90%; }
}

/*====================================================================================
	DISPLAY DEFAULT
====================================================================================*/
.dis_b { display: block; }
.dis_ib { display: inline-block; }

/*====================================================================================
	MARGIN DEFAULT
====================================================================================*/
/* margin */
.mat { margin: auto         !important; }
.m00 { margin: 0px         !important; }
.m05 { margin: 5px         !important; }
.m10 { margin: 10px         !important; }
.m15 { margin: 15px         !important; }
.m20 { margin: 20px         !important; }
.m25 { margin: 25px         !important; }
.m30 { margin: 30px         !important; }
.m35 { margin: 35px         !important; }
.m40 { margin: 40px         !important; }
.m45 { margin: 45px         !important; }
.m50 { margin: 50px         !important; }
.m55 { margin: 55px         !important; }
.m60 { margin: 60px         !important; }
.m65 { margin: 65px         !important; }
.m70 { margin: 70px         !important; }
.m75 { margin: 75px         !important; }
.m80 { margin: 80px         !important; }
.m85 { margin: 85px         !important; }
.m90 { margin: 90px         !important; }

.mt00 { margin-top: 0px     !important; }
.mt05 { margin-top: 5px     !important; }
.mt10 { margin-top: 10px     !important; }
.mt15 { margin-top: 15px     !important; }
.mt20 { margin-top: 20px     !important; }
.mt25 { margin-top: 25px     !important; }
.mt30 { margin-top: 30px     !important; }
.mt35 { margin-top: 35px     !important; }
.mt40 { margin-top: 40px     !important; }
.mt45 { margin-top: 45px     !important; }
.mt50 { margin-top: 50px     !important; }
.mt55 { margin-top: 55px     !important; }
.mt60 { margin-top: 60px     !important; }
.mt65 { margin-top: 65px     !important; }
.mt70 { margin-top: 70px     !important; }
.mt75 { margin-top: 75px     !important; }
.mt80 { margin-top: 80px     !important; }
.mt85 { margin-top: 85px     !important; }
.mt90 { margin-top: 90px     !important; }

.mr00 { margin-right: 0px   !important; }
.mr05 { margin-right: 5px   !important; }
.mr10 { margin-right: 10px   !important; }
.mr15 { margin-right: 15px   !important; }
.mr20 { margin-right: 20px   !important; }
.mr25 { margin-right: 25px   !important; }
.mr30 { margin-right: 30px   !important; }
.mr35 { margin-right: 35px   !important; }
.mr40 { margin-right: 40px   !important; }
.mr45 { margin-right: 45px   !important; }
.mr50 { margin-right: 50px   !important; }
.mr55 { margin-right: 55px   !important; }
.mr60 { margin-right: 60px   !important; }
.mr65 { margin-right: 65px   !important; }
.mr70 { margin-right: 70px   !important; }
.mr75 { margin-right: 75px   !important; }
.mr80 { margin-right: 80px   !important; }
.mr85 { margin-right: 85px   !important; }
.mr90 { margin-right: 90px   !important; }

.mr20_00 { margin-right: 0; }
@media print, screen and (min-width: 767px) { .mr20_00 { margin-right: 20px; } }


.mb00 { margin-bottom: 0px  !important; }
.mb05 { margin-bottom: 5px  !important; }
.mb10 { margin-bottom: 10px  !important; }
.mb15 { margin-bottom: 15px  !important; }
.mb20 { margin-bottom: 20px  !important; }
.mb25 { margin-bottom: 25px  !important; }
.mb30 { margin-bottom: 30px  !important; }
.mb35 { margin-bottom: 35px  !important; }
.mb40 { margin-bottom: 40px  !important; }
.mb45 { margin-bottom: 45px  !important; }
.mb50 { margin-bottom: 50px  !important; }
.mb55 { margin-bottom: 55px  !important; }
.mb60 { margin-bottom: 60px  !important; }
.mb65 { margin-bottom: 65px  !important; }
.mb70 { margin-bottom: 70px  !important; }
.mb75 { margin-bottom: 75px  !important; }
.mb80 { margin-bottom: 80px  !important; }
.mb85 { margin-bottom: 85px  !important; }
.mb90 { margin-bottom: 90px  !important; }
.mb30_15 { margin-bottom: 15px !important; }
.mb50_30 { margin-bottom: 30px !important; }
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .mb30_15 { margin-bottom: 30px !important; } }
/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .mb50_30 { margin-bottom: 50px !important; } }
/* ========== end △ */

.ml00 { margin-left: 0px    !important; }
.ml05 { margin-left: 5px    !important; }
.ml10 { margin-left: 10px    !important; }
.ml15 { margin-left: 15px    !important; }
.ml20 { margin-left: 20px    !important; }
.ml25 { margin-left: 25px    !important; }
.ml30 { margin-left: 30px    !important; }
.ml35 { margin-left: 35px    !important; }
.ml40 { margin-left: 40px    !important; }
.ml45 { margin-left: 45px    !important; }
.ml50 { margin-left: 50px    !important; }
.ml55 { margin-left: 55px    !important; }
.ml60 { margin-left: 60px    !important; }
.ml65 { margin-left: 65px    !important; }
.ml70 { margin-left: 70px    !important; }
.ml75 { margin-left: 75px    !important; }
.ml80 { margin-left: 80px    !important; }
.ml85 { margin-left: 85px    !important; }
.ml90 { margin-left: 90px    !important; }

/* padding */
.p00 { padding: 0px        !important; }
.p05 { padding: 5px        !important; }
.p10 { padding: 10px        !important; }
.p15 { padding: 15px        !important; }
.p20 { padding: 20px        !important; }
.p25 { padding: 25px        !important; }
.p30 { padding: 30px        !important; }
.p35 { padding: 35px        !important; }
.p40 { padding: 40px        !important; }
.p45 { padding: 45px        !important; }
.p50 { padding: 50px        !important; }
.p55 { padding: 55px        !important; }
.p60 { padding: 60px        !important; }
.p65 { padding: 65px        !important; }
.p70 { padding: 70px        !important; }
.p75 { padding: 75px        !important; }
.p80 { padding: 80px        !important; }
.p85 { padding: 85px        !important; }
.p90 { padding: 90px        !important; }

.pt00 { padding-top: 0px    !important; }
.pt05 { padding-top: 5px    !important; }
.pt10 { padding-top: 10px    !important; }
.pt15 { padding-top: 15px    !important; }
.pt20 { padding-top: 20px    !important; }
.pt25 { padding-top: 25px    !important; }
.pt30 { padding-top: 30px    !important; }
.pt35 { padding-top: 35px    !important; }
.pt40 { padding-top: 40px    !important; }
.pt45 { padding-top: 45px    !important; }
.pt50 { padding-top: 50px    !important; }
.pt55 { padding-top: 55px    !important; }
.pt60 { padding-top: 60px    !important; }
.pt65 { padding-top: 65px    !important; }
.pt70 { padding-top: 70px    !important; }
.pt75 { padding-top: 75px    !important; }
.pt80 { padding-top: 80px    !important; }
.pt85 { padding-top: 85px    !important; }
.pt90 { padding-top: 90px    !important; }

.pr00 { padding-right: 0px  !important; }
.pr05 { padding-right: 5px  !important; }
.pr10 { padding-right: 10px  !important; }
.pr15 { padding-right: 15px  !important; }
.pr20 { padding-right: 20px  !important; }
.pr25 { padding-right: 25px  !important; }
.pr30 { padding-right: 30px  !important; }
.pr35 { padding-right: 35px  !important; }
.pr40 { padding-right: 40px  !important; }
.pr45 { padding-right: 45px  !important; }
.pr50 { padding-right: 50px  !important; }
.pr55 { padding-right: 55px  !important; }
.pr60 { padding-right: 60px  !important; }
.pr65 { padding-right: 65px  !important; }
.pr70 { padding-right: 70px  !important; }
.pr75 { padding-right: 75px  !important; }
.pr80 { padding-right: 80px  !important; }
.pr85 { padding-right: 85px  !important; }
.pr90 { padding-right: 90px  !important; }

.pb00 { padding-bottom: 0px !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb45 { padding-bottom: 45px !important; }
.pb50 { padding-bottom: 50px !important; }
.pb55 { padding-bottom: 55px !important; }
.pb60 { padding-bottom: 60px !important; }
.pb65 { padding-bottom: 65px !important; }
.pb70 { padding-bottom: 70px !important; }
.pb75 { padding-bottom: 75px !important; }
.pb80 { padding-bottom: 80px !important; }
.pb85 { padding-bottom: 85px !important; }
.pb90 { padding-bottom: 90px !important; }

.pl00 { padding-left: 0px   !important; }
.pl05 { padding-left: 5px   !important; }
.pl10 { padding-left: 10px   !important; }
.pl15 { padding-left: 15px   !important; }
.pl20 { padding-left: 20px   !important; }
.pl25 { padding-left: 25px   !important; }
.pl30 { padding-left: 30px   !important; }
.pl35 { padding-left: 35px   !important; }
.pl40 { padding-left: 40px   !important; }
.pl45 { padding-left: 45px   !important; }
.pl50 { padding-left: 50px   !important; }
.pl55 { padding-left: 55px   !important; }
.pl60 { padding-left: 60px   !important; }
.pl65 { padding-left: 65px   !important; }
.pl70 { padding-left: 70px   !important; }
.pl75 { padding-left: 75px   !important; }
.pl80 { padding-left: 80px   !important; }
.pl85 { padding-left: 85px   !important; }
.pl90 { padding-left: 90px   !important; }
@media print, screen and (min-width: 767px) { .pl360 { padding-left: 360px !important; } }

/* ==================================================
	text
================================================== */
/* color
-------------------------------------------------- */
.color_red { color: #ff3b30 !important; }
.color_green { color: #4cd964 !important; }
.color_blue { color: #007aff !important; }

/* font
-------------------------------------------------- */
.f10 { font-size: 10px !important; }
.f11 { font-size: 11px !important; }
.f12 { font-size: 12px !important; }
.f13 { font-size: 13px !important; }
.f14 { font-size: 14px !important; }
.f15 { font-size: 15px !important; }
.f16 { font-size: 16px !important; }
.f17 { font-size: 17px !important; }
.f18 { font-size: 18px !important; }
.f19 { font-size: 19px !important; }
.f20 { font-size: 20px !important; }
.f21 { font-size: 21px !important; }
.f22 { font-size: 22px !important; }
.f23 { font-size: 23px !important; }
.f24 { font-size: 24px !important; }
.font14 { font-size: 14px; }
.font11 { font-size: 11px; }
.fs12 { font-size: 1.2rem; }
.fs13 { font-size: 1.3rem; }
.fs14 { font-size: 1.4rem; }
.fs16 { font-size: 1.6rem; }
.fs18 { font-size: 1.8rem; }
.fs20 { font-size: 2.0rem; }
.fs24 { font-size: 2.4rem; }

.text-normal { font-weight: normal; }
.text-bold { font-weight: bold; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.text-underline { text-decoration: underline; }
.text-none-underline { text-decoration: none !important; }
.add_font { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴシック ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.bold { font-weight: bold !important; }
.tac { text-align: center !important; }
.tar { text-align: right !important; }
.tal { text-align: left !important; }


/* font-family
-------------------------------------------------- */
.font_basic { font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"ＭＳ Ｐゴシック",sans-serif; }

/* text-decoration
-------------------------------------------------- */
a.tdn { text-decoration: none; }
a.tdn:hover { text-decoration: underline; }

/* vertical-align
-------------------------------------------------- */
.vat { vertical-align: top !important; }
.vam { vertical-align: middle !important; }
.vab { vertical-align: bottom !important; }

/* text-indent
-------------------------------------------------- */
.indent { display: block; padding-left: 1em !important; text-indent: -1em !important; }

/* scroll table text
-------------------------------------------------- */
.txt_scroll_x { margin: 15px 10px 5px 0; font-size: 1.4rem; font-weight: bold; text-align: center; }
.txt_scroll_x .fa { margin-right: 5px; color: #ff3b30; font-size: 2.4rem; vertical-align: middle; }

/* txt_mb_area
-------------------------------------------------- */
.txt_mb_area > * { margin-top: 20px; }
.txt_mb_area > *:first-child { margin-top: 0; }

/* ==================================================
	image
================================================== */
/* pic
-------------------------------------------------- */
.pic img { max-width: 100%; height: auto; }

/* hover fade
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) and (min-width: 767px) {
	.fadeout { -webkit-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
	.fadeout:hover { opacity: 0.6; }
}
/* ========== end △ */

/* icon zoom
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .ico_zoom a { display: block; position: relative; }
  .ico_zoom a:before { -webkit-box-sizing: border-box; box-sizing: border-box; content: "\f00e"; position: absolute; right: 10px; bottom: 10px; width: 30px; height: 30px; padding-top: 5px; background-color: #333; border-radius: 15px; color: #fff; font-size: 1.6rem; font-family: FontAwesome; text-align: center; } }
/* ========== end △ */

/* ==================================================
	list
================================================== */
/* indent
-------------------------------------------------- */
.list_indent li { padding-left: 1em; text-indent: -1em; }

/* list mark
-------------------------------------------------- */
.list_mark_disc > li { position: relative; padding-left: 1em; }
.list_mark_disc > li:first-child { margin-top: 0; }
.list_mark_disc > li::before { content: "・"; position: absolute; top: 0; left: 0; }

.list-mark { display: flex; display: -ms-flexbox; display: -webkit-flex; width: 100%; margin: 0 auto; -js-display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.list-mark > li { font-size: 16px; position: relative; width: 100%; padding-left: 20px; }
.list-mark > li:before { position: absolute; top: 0; left: 0; display: block; content: '◆'; color: #b2396e; }


/* ==================================================
	dl
================================================== */
/* basic
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .dl_style > dd { margin-left: 1em; } }

/* ========== end △ */
/* inline
-------------------------------------------------- */
.dl_inline dt, .dl_inline dd { display: inline-block; vertical-align: middle; }

/* table
-------------------------------------------------- */
.dl_table_style { border-top: 1px solid #ddd; border-left: 1px solid #ddd; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .dl_table_style { display: table; width: 100%; border-spacing: 0; word-wrap: break-word; word-break: break-all; }
  .dl_table_style > dl { display: table-row; }
  .dl_table_style > dl > dt, .dl_table_style > dl > dd { display: table-cell; vertical-align: top; } }

/* ========== end △ */
.dl_table_style > dl > dt, .dl_table_style > dl > dd { -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 10px; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .dl_table_style > dl > dt, .dl_table_style > dl > dd { border-top: none; } }

/* ========== end △ */
.dl_table_style > dl > dt { min-width: 120px; background-color: #f4f4f4; font-weight: normal; }
.dl_table_style > dl > dd { font-size: 1.3rem; }
.dl_table_style.dl_vam > dl > dt, .dl_table_style.dl_vam > dl > dd { vertical-align: middle; }

/* example
-------------------------------------------------- */
.dl_example { padding: 15px 0; border-top: 4px solid #007aff; border-bottom: 1px solid #007aff; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .dl_example { padding-left: 30px; border-top: none; border-bottom: none; border-left: 4px solid #007aff; } }

/* ========== end △ */
.dl_example > dt { font-size: 1.6rem; font-weight: bold; }
.dl_example > dd { padding-left: 10px; }

/* ==================================================
	table
================================================== */
/* default
-------------------------------------------------- */
.table_style caption { padding: 5px 0; background-color: #000; color: #fff; font-weight: bold; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .table_style caption { padding: 8px 0; font-size: 1.6rem; } }

/* ========== end △ */
.table_style th, .table_style td { padding: 3px 5px; border: 1px solid #ddd; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .table_style th, .table_style td { font-size: 1.2rem; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .table_style th, .table_style td { padding: 5px 10px; } }

/* ========== end △ */
.table_style th { background-color: #f4f4f4; font-weight: normal; }
.table_style td { padding: 10px; font-size: 1.3rem; }
.table_style thead th { font-weight: bold; text-align: center; }

/* SP scroll table
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .rwd_table_wrap { width: 100%; height: auto; overflow-x: auto; -webkit-overflow-scrolling: touch; } }

/* ========== end △ */
/* ==================================================
	box
================================================== */
.tips_box, .caution_box { padding: 15px; border-top: 5px solid; font-size: 1.3rem; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .tips_box, .caution_box { border-top: none; border-left: 5px solid; } }

/* ========== end △ */
.tips_box .ttl, .caution_box .ttl { margin-bottom: 10px; font-size: 1.6rem; font-weight: bold; }

/* tips
-------------------------------------------------- */
.tips_box { border-color: #ddd; background-color: #f4f4f4; }

/* caution
-------------------------------------------------- */
.caution_box { border-color: #ffd1d1; background-color: #fff1f1; }

/* quote
-------------------------------------------------- */
.quote_box blockquote { position: relative; margin-bottom: 10px; padding: 30px 5% 30px; background-color: #f4f4f4; line-height: 1.5; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .quote_box blockquote { padding: 20px 40px 20px; } }

/* ========== end △ */
.quote_box blockquote::before, .quote_box blockquote::after { position: absolute; color: #ccc; font-family: FontAwesome; font-size: 1.6rem; line-height: 1.0; }
.quote_box blockquote::before { content: "\f10d "; top: 10px; left: 10px; }
.quote_box blockquote::after { content: "\f10e "; right: 10px; bottom: 8px; }
.quote_box .source { font-size: 1.3rem; text-align: right; }

/* definition
-------------------------------------------------- */
.definition_box { padding: 10px 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .definition_box { padding-left: 30px; border-left: 4px solid #4cd964; } }

/* ========== end △ */
.definition_box .tit { margin-bottom: 10px; font-size: 1.6rem; font-weight: bold; }

/* comment
-------------------------------------------------- */
.comment_gon { display: block; padding: 8px 15px; border: 3px solid #ffe070; border-radius: 5px; background-color: #fff4cc; }
.comment_gon dt { font-weight: bold; }

/* ==================================================
	button
================================================== */
/* default
-------------------------------------------------- */
.btn_style { width: 60%; margin-right: auto; margin-left: auto; }
.btn_style a { display: block; padding: 15px 0; border-radius: 5px; background-color: #2a2a2a; color: #fff; font-size: 1.8rem; font-weight: bold; text-decoration: none; text-align: center; -webkit-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .btn_style a:hover { background-color: #f68787; } }

/* ========== end △ */
/* accordion
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .ac_btn_sp { position: relative; padding-right: 1em; }
  .ac_btn_sp::before { content: "\f0fe"; display: block; position: absolute; top: 50%; right: 0px; margin-top: -0.5em; font-family: FontAwesome; }
  .ac_btn_sp.open::before { content: "\f146"; } }

/* ========== end △ */
.ac_body_sp { display: none; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 767px) { .ac_body_sp { display: block !important; } }

/* ========== end △ */
.ac_body_sp.open { display: block; }
