/* v20260916 */
@charset "utf-8";

/******************** ▼ Overrides added to 'reset.css' styles ▼ ********************/
:root{
	--main_pnk: #ef5350;
	--main_pnk_lt: #ffe5e7;
	--main_pnk_bg: #fff4f4;

	--must: var(--main_pnk);  /* フォーム「必須」 */

	--gry1: #f3f3f3;
	--gry2: #eee;
	--gry3: #ddd;
	--gry4: #ccc;

	--ui_focus_border: #64b5f6;
	--ui_accent-color: var(--main_pnk);

	/* UI color */
	--ui_red: #dc3545;
	--ui_ora: #fd7e14;
	--ui_yel: #ffc107;
	--ui_grn: #198754;
	--ui_blu: #0d6efd;

	/* UI light color */
	--uil_red: #fcebec;
	--uil_ora: #fff1e6;
	--uil_yel: #fff9e6;
	--uil_grn: #eaf6ef;
	--uil_blu: #eaf2ff;
}


*{ margin: 0; padding: 0; }
html{
	font-size: 100%; /* 100% = 16px = 1rem　⭐️rem指定の対象がルートである「html」となるためhtmlをセレクタとする */
	scroll-behavior: smooth;
}
html, body{ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; color: #333; line-height: 1.6; }
h1, h2, h3, h4, h5, h6{ font-size: inherit; font-weight: normal; }
ol, ul{ list-style: none; }

a, a:visited{ color: inherit; text-decoration: none; }
a:hover{ text-decoration: underline; }

address{ font-style: normal; }

table{ width: 100%; border-collapse: collapse; }
table th{ font-weight: normal; }

::placeholder{ color: #ccc; font-weight: 400; }

i.fa, i.fas, i.far, i.fab, i.fa-solid, i.fa-regular, i.fa-brands{ margin-right: 0.375em; } /* Font Awesome */
/******************** ▲ Overrides added to 'reset.css' styles ▲ ********************/

/*
font-size: 100% = 16px
 1px・・・0.625rem
 2px・・・0.125rem
 3px・・・0.1875rem
 4px・・・0.25rem
 5px・・・0.3125rem
 6px・・・0.375rem
 7px・・・0.4375rem
 8px・・・0.5rem
 9px・・・0.5625rem
10px・・・0.625rem
11px・・・0.6875rem
12px・・・0.75rem
13px・・・0.8125rem
14px・・・0.875rem
15px・・・0.9375rem
16px・・・1rem
17px・・・1.0625rem
18px・・・1.125rem
19px・・・1.1875rem
20px・・・1.25rem
21px・・・1.3125rem
22px・・・1.375rem
23px・・・1.4375rem
24px・・・1.5rem
25px・・・1.5625rem
26px・・・1.625rem
27px・・・1.6875rem
28px・・・1.75rem
29px・・・1.8125rem
30px・・・1.875rem
31px・・・1.9375rem
32px・・・2rem
33px・・・2.0625rem
34px・・・2.125rem
35px・・・2.1875rem
36px・・・2.25rem
37px・・・2.3125rem
38px・・・2.375rem
39px・・・2.4375rem
40px・・・2.5rem
41px・・・2.5625rem
42px・・・2.625rem
43px・・・2.6875rem
44px・・・2.75rem
45px・・・2.8125rem
46px・・・2.875rem
47px・・・2.9375rem
48px・・・3rem
49px・・・3.0625rem
50px・・・3.125rem
*/


/* ==================================================
	table
   ================================================== */
.tbl_style{}
.tbl_style caption{ text-align: left; }
.tbl_style th, .tbl_style td{ padding: 0.5rem 2rem; border: 1px solid #ccc; }
.tbl_style th{ width: 30%; background: var(--main_pnk_bg); }
.tbl_style td{}



/* ==================================================
	form
   ================================================== */
form .tbl_style th{ font-size: 1.125rem; }
form .tbl_style th span{ display: flex; justify-content: space-between; align-items: center; gap: 0.5rem; }
form .tbl_style th .must{ flex-shrink: 0; display: block; margin-left: auto; padding: 0.25rem 0.5rem; background: var(--must); border-radius: 3px; color: #fff; font-size: 0.75rem; line-height: 1; white-space: nowrap; }
form .must:after{ content: '必須'; }

form .inp_style{ width: 100%; padding: 0.5rem 1rem; border: 1px solid #ccc; border-radius: 4px; color: #333; font-size: 1.125rem; outline: 3px solid transparent; transition: background-color 0.3s ease, outline-color 0.3s ease; }
form .inp_style:focus{ border-color: transparent; outline: 3px solid var(--ui_focus_border);}
/*form .inp_style:read-only{ background: var(--gry2); cursor: not-allowed; } なぜかreadonlyとしていない<select>にも効いてしまうため下記に修正 */
form input.inp_style:read-only,
form textarea.inp_style:read-only{ background: var(--gry2); cursor: not-allowed; }
form textarea{ height: 200px; }

form .inp_style:disabled{ background: var(--gry4); cursor: not-allowed; opacity: 0.7; }

/* radio, checkbox, file */
form .inp_group{ padding: 0.25rem 0.5rem; font-size: 1.125rem; }
/*form .inp_group label{ display: flex; align-items: center; white-space: nowrap; }（20260921）radioやcheckboxで、テキストが長い場合は改行できず、tableのtdの幅が広がるため下記に修正 */
form .inp_group label{ display: flex; align-items: center; }
form .inp_group label input{ flex-shrink: 0; } /*（20260921）上記対策のため追加 */

/* radio, checkbox 追加の横並び設定 */
form .add_group_row{ display: flex; gap: 2rem; padding: 0.75rem 0; }

/* radio, checkbox 追加のborder設定 */
form .add_group_border{ padding: 0.5rem 1rem; border: 1px solid #ccc; border-radius: 4px; }

/* select 追加設定（selectには「inp_style」「add_sel_style」両方適用する） */
form .add_sel_style{
	appearance: none; /* ネイティブ矢印削除（Safari/Chrome） */
	-webkit-appearance: none;
	-moz-appearance: none;  /* Firefox */
	background: white url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='5'><polygon points='0,0 10,0 5,5' style='fill:%23999'/></svg>") no-repeat right 1rem center;
	background-size: 10px 5px;
}

/* radio, checkbox */
input[type="radio"],
input[type="checkbox"]{ margin-right: 5px; accent-color: var(--ui_accent-color); }
input[type="checkbox"]{ vertical-align: -2px; }

/* error text balloon */
.err_text, .err_text_sub{ display: none; width: fit-content; margin: -0.375rem 0 0 0.5rem; padding: 0.25rem 1rem; background: var(--ui_red); border-radius: 0.375rem; font-size: 0.75rem; color: var(--ui_yel); box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.35); cursor: pointer; position: relative; }
.err_text::before, .err_text_sub::before{ content: ''; position: absolute; bottom: 100%; left: 1rem; border-width: 0.375rem; border-style: solid; border-color: transparent transparent var(--ui_red) transparent; }

/* validation error */
.fm_field.is_error .inp_style,
.fm_field.is_error .inp_group,
.fm_field.is_error_sub .inp_style_sub,
.fm_field.is_error_sub .inp_group_sub{ background: var(--uil_yel) !important; } 	/* error bg */
.fm_field.is_error .err_text,
.fm_field.is_error_sub .err_text_sub{ display: block; } 							/* error text balloon */	

/* ⭐️住所対応（郵便番号 + 住所　フォーム2つあり）*/
/* error bg */
.fm_field.is_error_zip input[name="zip"],
.fm_field.is_error_address input[name="address"]{ background: var(--uil_yel) !important; }

/* error text balloon show*/
.fm_field.is_error_zip .err_text:nth-of-type(1),
.fm_field.is_error_address .err_text:nth-of-type(2){ display: block; }


/* server-side validation error */
.sv_vali_err{ margin: 1.5rem 0; padding: 1rem 1.25rem; background: #000; border-left: 0.75rem solid var(--ui_red); color: var(--ui_red); }
.sv_vali_err ul{ margin: 0; padding-left: 1rem; }
.sv_vali_err li{ margin: 0.25rem 0; }
.sv_vali_err li::before{ content: '■'; }
.sv_vali_err::before{ content: "【エラー】入力内容のご確認をお願いいたします。"; display: block; margin-bottom: 0.5rem; font-size: 1rem; font-weight: bold; }

/* zip mark */
.zip_mark{ margin-right: 5px; color: var(--ui_red); font-weight: bold; }



/* ==================================================
	button
   ================================================== */
.btn_style{ display: inline-flex; justify-content: center; align-items: center; gap: 6px; padding: 0.5rem 1rem; border: none; border-radius: 8px; color: #fff; font-size: 0.75rem; font-weight: bold; text-decoration: none !important; cursor: pointer; transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.1s ease; }
.btn_style:hover{ transform: translateY(1px); }
.btn_style:active{ box-shadow: none !important; transform: translateY(4px); }
.btn_style:focus-visible{ outline: 3px solid rgba(46,134,193,0.4); outline-offset: 2px; }
.btn_style:disabled{ background: #ccc; cursor: not-allowed; box-shadow: none; opacity: 0.7; }

/* 立体的ボタン（押し込み感） */
.btn_style.btn1{ background: var(--main_pnk); box-shadow: 0 4px #c62828; }
.btn_style.btn1:hover{ box-shadow: 0 2px #c62828; }

.btn_style.btn2{ background: #999; box-shadow: 0 3px #777; }
.btn_style.btn2:hover{ box-shadow: 0 2px #777; }



/* ==================================================
	flex
   ================================================== */
.flex{ display: flex; }

/* 横並び（デフォルト） */
.flex_row{ flex-direction: row; }

/* 縦並び */
.flex_column{ flex-direction: column; }

/* 横並び反転（右→左） */
.flex_row_reverse{ flex-direction: row-reverse; }

/* 縦並び反転（下→上） */
.flex_column_reverse{ flex-direction: column-reverse; }

/* 要素を中央揃え（横方向） */
.justify_center{ justify-content: center; }

/* 要素を左寄せ */
.justify_start{ justify-content: flex-start; }

/* 要素を右寄せ */
.justify_end{ justify-content: flex-end; }

/* 要素を等間隔に配置 */
.justify_between{ justify-content: space-between; }

/* 要素を均等に配置 */
.justify_around{ justify-content: space-around; }

/* 要素を均等に配置（間隔が均等） */
.justify_evenly{ justify-content: space-evenly; }

/* 縦方向の中央揃え */
.align_center{ align-items: center; }

/* 上寄せ */
.align_start{ align-items: flex-start; }

/* 下寄せ */
.align_end{ align-items: flex-end; }

/* アイテムを引き伸ばす */
.align_stretch{ align-items: stretch; }

/* 複数行で折り返す */
.flex_wrap{ flex-wrap: wrap; }

/* 折り返さない */
.flex_nowrap{ flex-wrap: nowrap; }

/* 個々のアイテムの成長縮小設定 */
.flex_grow{ flex-grow: 1; }

.flex_shrink0{ flex-shrink: 0; }

/* アイテムのサイズ指定 */
.flex_basis_auto{ flex-basis: auto; }

/* アイテムを中央に寄せる（justify + align両方） */
/*.flex_center{ display: flex; justify-content: center; align-items: center; }*/

.flex_center{ display: flex; justify-content: center; align-items: center; }
.flex_between_center{ display: flex; justify-content: space-between; align-items: center; }
.flex_column_center{ display: flex; flex-direction: column; justify-content: center; align-items: center; }
.flex_wrap_center{ display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }

.flex_left{ display: flex; justify-content: flex-start; align-items: center; }
.flex_right{ display: flex; justify-content: flex-end; align-items: center; }



/* ==================================================
	Utility
   ================================================== */
.none{ display: none !important; }

.tx_c{ text-align: center !important; }.tx_l{ text-align: left !important; }.tx_r{ text-align: right !important; }
.valign_top{ vertical-align: top !important; }.valign_mdl{ vertical-align: middle !important; }.valign_btm{ vertical-align: bottom !important; }

.tx_deco_none{ text-decoration: none !important; }

.underline{ text-decoration: underline !important; }
.underline:hover{ text-decoration: none !important; }

.tx_08{ font-size:  8px !important; }.tx_09{ font-size:  9px !important; }.tx_10{ font-size: 10px !important; }.tx_11{ font-size: 11px !important; }.tx_12{ font-size: 12px !important; }
.tx_13{ font-size: 13px !important; }.tx_14{ font-size: 14px !important; }.tx_15{ font-size: 15px !important; }.tx_16{ font-size: 16px !important; }.tx_17{ font-size: 17px !important; }
.tx_18{ font-size: 18px !important; }.tx_19{ font-size: 19px !important; }.tx_20{ font-size: 20px !important; }.tx_21{ font-size: 21px !important; }.tx_22{ font-size: 22px !important; }
.tx_23{ font-size: 23px !important; }.tx_24{ font-size: 24px !important; }.tx_25{ font-size: 25px !important; }.tx_26{ font-size: 26px !important; }.tx_27{ font-size: 27px !important; }
.tx_28{ font-size: 28px !important; }.tx_29{ font-size: 29px !important; }.tx_30{ font-size: 30px !important; }.tx_31{ font-size: 31px !important; }.tx_32{ font-size: 32px !important; }
.tx_33{ font-size: 33px !important; }.tx_34{ font-size: 34px !important; }.tx_35{ font-size: 35px !important; }.tx_36{ font-size: 36px !important; }.tx_37{ font-size: 37px !important; }

.tx_000{ color: #000000 !important; }.tx_333{ color: #333333 !important; }.tx_666{ color: #666666 !important; }.tx_777{ color: #777777 !important; }.tx_999{ color: #999999 !important; }
.tx_ccc{ color: #cccccc !important; }.tx_ddd{ color: #dddddd !important; }.tx_eee{ color: #eeeeee !important; }.tx_fff{ color: #ffffff !important; }
.tx_red{ color: var(--ui_red) !important; }.tx_ora{ color: var(--ui_ora) !important; }.tx_yel{ color: var(--ui_yel) !important; }.tx_grn{ color: var(--ui_grn) !important; }.tx_blu{ color: var(--ui_blu) !important; }

.tx_ind{ text-indent: 1rem !important; }
.tx_bld{ font-weight: bold !important; }

/* font-family・・・各第一優先はgoogleフォントをテスト中 */
.tx_kak{ font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important; }
.tx_min{ font-family: "Sawarabi Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important; }

.lh_11{ line-height: 1.1em !important; }.lh_12{ line-height: 1.2em !important; }.lh_13{ line-height: 1.3em !important; }.lh_14{ line-height: 1.4em !important; }.lh_15{ line-height: 1.5em !important; }
.lh_16{ line-height: 1.6em !important; }.lh_17{ line-height: 1.7em !important; }.lh_18{ line-height: 1.8em !important; }.lh_19{ line-height: 1.9em !important; }.lh_20{ line-height: 2.0em !important; }

.bg_fff{ background-color: #ffffff !important; }.bg_eee{ background-color: #eeeeee !important; }.bg_ddd{ background-color: #dddddd !important; }.bg_ccc{ background-color: #cccccc !important; }.bg_999{ background-color: #999999 !important; }
.bg_777{ background-color: #777777 !important; }.bg_555{ background-color: #555555 !important; }.bg_333{ background-color: #333333 !important; }.bg_111{ background-color: #111111 !important; }.bg_000{ background-color: #000000 !important; }
.bg_c3{ background-color: #c3c3c3 !important; }.bg_c5{ background-color: #c5c5c5 !important; }.bg_c7{ background-color: #c7c7c7 !important; }.bg_c9{ background-color: #c9c9c9 !important; }
.bg_f3f3f3{ background-color: #f3f3f3 !important; }.bg_f5f5f5{ background-color: #f5f5f5 !important; }.bg_f7f7f7{ background-color: #f7f7f7 !important; }.bg_f9f9f9{ background-color: #f9f9f9 !important; }

.bg_red{ background-color: var(--ui_red); }.bg_ora{ background-color: var(--ui_ora); }.bg_yel{ background-color: var(--ui_yel); }.bg_grn{ background-color: var(--ui_grn); }.bg_blu{ background-color: var(--ui_blu); }
.bgl_red{ background-color: var(--uil_red); }.bgl_ora{ background-color: var(--uil_ora); }.bgl_yel{ background-color: var(--uil_yel); }.bgl_grn{ background-color: var(--uil_grn); }.bgl_blu{ background-color: var(--uil_blu); }
.bg_ui_gld{ background-image: linear-gradient(to top left, #f7de05, #da8e00, #edac06, #f7de05, #ecb802, #daaf08, #b67b03) !important; }


/* UI box */
.box_red, .box_ora, .box_yel, .box_grn, .box_blu{ width: fit-content; padding: 1rem 2rem; }
.box_red{ background-color: var(--uil_red); border: 1px solid var(--ui_red); }
.box_ora{ background-color: var(--uil_ora); border: 1px solid var(--ui_ora); }
.box_yel{ background-color: var(--uil_yel); border: 1px solid var(--ui_yel); }
.box_grn{ background-color: var(--uil_grn); border: 1px solid var(--ui_grn); }
.box_blu{ background-color: var(--uil_blu); border: 1px solid var(--ui_blu); }


/* width */
.wid_05p{ width: 5% !important; }.wid_10p{ width: 10% !important; }.wid_15p{ width: 15% !important; }.wid_20p{ width: 20% !important; }.wid_25p{ width: 25% !important; }
.wid_30p{ width: 30% !important; }.wid_35p{ width: 35% !important; }.wid_40p{ width: 40% !important; }.wid_45p{ width: 45% !important; }.wid_50p{ width: 50% !important; }
.wid_55p{ width: 55% !important; }.wid_60p{ width: 60% !important; }.wid_65p{ width: 65% !important; }.wid_70p{ width: 70% !important; }.wid_75p{ width: 75% !important; }
.wid_80p{ width: 80% !important; }.wid_85p{ width: 85% !important; }.wid_90p{ width: 90% !important; }.wid_95p{ width: 95% !important; }.wid_100p{ width: 100% !important; }

.wid_10{ width: 10px !important; }.wid_20{ width: 20px !important; }.wid_30{ width: 30px !important; }.wid_40{ width: 40px !important; }.wid_50{ width: 50px !important; }
.wid_60{ width: 60px !important; }.wid_70{ width: 70px !important; }.wid_80{ width: 80px !important; }.wid_90{ width: 90px !important; }.wid_100{ width: 100px !important; }

.wid_110{ width: 110px !important; }.wid_120{ width: 120px !important; }.wid_130{ width: 130px !important; }.wid_140{ width: 140px !important; }.wid_150{ width: 150px !important; }
.wid_160{ width: 160px !important; }.wid_170{ width: 170px !important; }.wid_180{ width: 180px !important; }.wid_190{ width: 190px !important; }.wid_200{ width: 200px !important; }

.wid_210{ width: 210px !important; }.wid_220{ width: 220px !important; }.wid_230{ width: 230px !important; }.wid_240{ width: 240px !important; }.wid_250{ width: 250px !important; }
.wid_260{ width: 260px !important; }.wid_270{ width: 270px !important; }.wid_280{ width: 280px !important; }.wid_290{ width: 290px !important; }.wid_300{ width: 300px !important; }

.wid_310{ width: 310px !important; }.wid_320{ width: 320px !important; }.wid_330{ width: 330px !important; }.wid_340{ width: 340px !important; }.wid_350{ width: 350px !important; }
.wid_360{ width: 360px !important; }.wid_370{ width: 370px !important; }.wid_380{ width: 380px !important; }.wid_390{ width: 390px !important; }.wid_400{ width: 400px !important; }

.wid_410{ width: 410px !important; }.wid_420{ width: 420px !important; }.wid_430{ width: 430px !important; }.wid_440{ width: 440px !important; }.wid_450{ width: 450px !important; }
.wid_460{ width: 460px !important; }.wid_470{ width: 470px !important; }.wid_480{ width: 480px !important; }.wid_490{ width: 490px !important; }.wid_500{ width: 500px !important; }

.wid_max100p{ max-width: 100%; }

.ch_05{ width: 5ch !important; }.ch_07{ width: 7ch !important; }.ch_10{ width: 10ch !important; }.ch_15{ width: 15ch !important; }.ch_20{ width: 20ch !important; }.ch_25{ width: 25ch !important; }.ch_30{ width: 30ch !important; }
.ch_35{ width: 35ch !important; }.ch_40{ width: 40ch !important; }.ch_45{ width: 45ch !important; }.ch_50{ width: 50ch !important; }.ch_55{ width: 55ch !important; }.ch_60{ width: 60ch !important; }


/* height */
.hei_10{ height: 10px !important; }.hei_20{ height: 20px !important; }.hei_30{ height: 30px !important; }.hei_40{ height: 40px !important; }.hei_50{ height: 50px !important; }
.hei_60{ height: 60px !important; }.hei_70{ height: 70px !important; }.hei_80{ height: 80px !important; }.hei_90{ height: 90px !important; }.hei_100{ height: 100px !important; }
.hei_110{ height: 110px !important; }.hei_120{ height: 120px !important; }.hei_130{ height: 130px !important; }.hei_140{ height: 140px !important; }.hei_150{ height: 150px !important; }
.hei_160{ height: 160px !important; }.hei_170{ height: 170px !important; }.hei_180{ height: 180px !important; }.hei_190{ height: 190px !important; }.hei_200{ height: 200px !important; }
.hei_210{ height: 210px !important; }.hei_220{ height: 220px !important; }.hei_230{ height: 230px !important; }.hei_240{ height: 240px !important; }.hei_250{ height: 250px !important; }
.hei_260{ height: 260px !important; }.hei_270{ height: 270px !important; }.hei_280{ height: 280px !important; }.hei_290{ height: 290px !important; }.hei_300{ height: 300px !important; }
.hei_310{ height: 310px !important; }.hei_320{ height: 320px !important; }.hei_330{ height: 330px !important; }.hei_340{ height: 340px !important; }.hei_350{ height: 350px !important; }
.hei_360{ height: 360px !important; }.hei_370{ height: 370px !important; }.hei_380{ height: 380px !important; }.hei_390{ height: 390px !important; }.hei_400{ height: 400px !important; }
.hei_410{ height: 410px !important; }.hei_420{ height: 420px !important; }.hei_430{ height: 430px !important; }.hei_440{ height: 440px !important; }.hei_450{ height: 450px !important; }
.hei_460{ height: 460px !important; }.hei_470{ height: 470px !important; }.hei_480{ height: 480px !important; }.hei_490{ height: 490px !important; }.hei_500{ height: 500px !important; }


/* margin */
.mgn_auto{ margin-left: auto !important; margin-right: auto !important; }
.mgn01{ margin: 0.1rem !important; }.mgn02{ margin: 0.2rem !important; }.mgn03{ margin: 0.3rem !important; }.mgn04{ margin: 0.4rem !important; }.mgn05{ margin: 0.5rem !important; }.mgn06{ margin: 0.6rem !important; }.mgn07{ margin: 0.7rem !important; }.mgn08{ margin: 0.8rem !important; }.mgn09{ margin: 0.9rem !important; }.mgn10{ margin: 1rem !important; }
.mt01{ margin-top: 0.1rem !important; }.mt02{ margin-top: 0.2rem !important; }.mt03{ margin-top: 0.3rem !important; }.mt04{ margin-top: 0.4rem !important; }.mt05{ margin-top: 0.5rem !important; }.mt06{ margin-top: 0.6rem !important; }.mt07{ margin-top: 0.7rem !important; }.mt08{ margin-top: 0.8rem !important; }.mt09{ margin-top: 0.9rem !important; }
.mt10{ margin-top: 1rem !important; }.mt15{ margin-top: 1.5rem !important; }.mt20{ margin-top: 2rem !important; }.mt25{ margin-top: 2.5rem !important; }.mt30{ margin-top: 3rem !important; }.mt35{ margin-top: 3.5rem !important; }.mt40{ margin-top: 4rem !important; }.mt45{ margin-top: 4.5rem !important; }.mt50{ margin-top: 5rem !important; }
.mr01{ margin-right: 0.1rem !important; }.mr02{ margin-right: 0.2rem !important; }.mr03{ margin-right: 0.3rem !important; }.mr04{ margin-right: 0.4rem !important; }.mr05{ margin-right: 0.5rem !important; }.mr06{ margin-right: 0.6rem !important; }.mr07{ margin-right: 0.7rem !important; }.mr08{ margin-right: 0.8rem !important; }.mr09{ margin-right: 0.9rem !important; }
.mr10{ margin-right: 1rem !important; }.mr15{ margin-right: 1.5rem !important; }.mr20{ margin-right: 2rem !important; }.mr25{ margin-right: 2.5rem !important; }.mr30{ margin-right: 3rem !important; }.mr35{ margin-right: 3.5rem !important; }.mr40{ margin-right: 4rem !important; }.mr45{ margin-right: 4.5rem !important; }.mr50{ margin-right: 5rem !important; }
.mb01{ margin-bottom: 0.1rem !important; }.mb02{ margin-bottom: 0.2rem !important; }.mb03{ margin-bottom: 0.3rem !important; }.mb04{ margin-bottom: 0.4rem !important; }.mb05{ margin-bottom: 0.5rem !important; }.mb06{ margin-bottom: 0.6rem !important; }.mb07{ margin-bottom: 0.7rem !important; }.mb08{ margin-bottom: 0.8rem !important; }.mb09{ margin-bottom: 0.9rem !important; }
.mb10{ margin-bottom: 1rem !important; }.mb15{ margin-bottom: 1.5rem !important; }.mb20{ margin-bottom: 2rem !important; }.mb25{ margin-bottom: 2.5rem !important; }.mb30{ margin-bottom: 3rem !important; }.mb35{ margin-bottom: 3.5rem !important; }.mb40{ margin-bottom: 4rem !important; }.mb45{ margin-bottom: 4.5rem !important; }.mb50{ margin-bottom: 5rem !important; }
.ml01{ margin-left: 0.1rem !important; }.ml02{ margin-left: 0.2rem !important; }.ml03{ margin-left: 0.3rem !important; }.ml04{ margin-left: 0.4rem !important; }.ml05{ margin-left: 0.5rem !important; }.ml06{ margin-left: 0.6rem !important; }.ml07{ margin-left: 0.7rem !important; }.ml08{ margin-left: 0.8rem !important; }.ml09{ margin-left: 0.9rem !important; }
.ml10{ margin-left: 1rem !important; }.ml15{ margin-left: 1.5rem !important; }.ml20{ margin-left: 2rem !important; }.ml25{ margin-left: 2.5rem !important; }.ml30{ margin-left: 3rem !important; }.ml35{ margin-left: 3.5rem !important; }.ml40{ margin-left: 4rem !important; }.ml45{ margin-left: 4.5rem !important; }.ml50{ margin-left: 5rem !important; }


/* padding */
.pad01{ padding: 0.1rem !important; }.pad02{ padding: 0.2rem !important; }.pad03{ padding: 0.3rem !important; }.pad04{ padding: 0.4rem !important; }.pad05{ padding: 0.5rem !important; }.pad06{ padding: 0.6rem !important; }.pad07{ padding: 0.7rem !important; }.pad08{ padding: 0.8rem !important; }.pad09{ padding: 0.9rem !important; }.pad10{ padding: 1rem !important; }
.pt01{ padding-top: 0.1rem !important; }.pt02{ padding-top: 0.2rem !important; }.pt03{ padding-top: 0.3rem !important; }.pt04{ padding-top: 0.4rem !important; }.pt05{ padding-top: 0.5rem !important; }.pt06{ padding-top: 0.6rem !important; }.pt07{ padding-top: 0.7rem !important; }.pt08{ padding-top: 0.8rem !important; }.pt09{ padding-top: 0.9rem !important; }
.pt10{ padding-top: 1rem !important; }.pt15{ padding-top: 1.5rem !important; }.pt20{ padding-top: 2rem !important; }.pt25{ padding-top: 2.5rem !important; }.pt30{ padding-top: 3rem !important; }.pt35{ padding-top: 3.5rem !important; }.pt40{ padding-top: 4rem !important; }.pt45{ padding-top: 4.5rem !important; }.pt50{ padding-top: 5rem !important; }
.pr01{ padding-right: 0.1rem !important; }.pr02{ padding-right: 0.2rem !important; }.pr03{ padding-right: 0.3rem !important; }.pr04{ padding-right: 0.4rem !important; }.pr05{ padding-right: 0.5rem !important; }.pr06{ padding-right: 0.6rem !important; }.pr07{ padding-right: 0.7rem !important; }.pr08{ padding-right: 0.8rem !important; }.pr09{ padding-right: 0.9rem !important; }
.pr10{ padding-right: 1rem !important; }.pr15{ padding-right: 1.5rem !important; }.pr20{ padding-right: 2rem !important; }.pr25{ padding-right: 2.5rem !important; }.pr30{ padding-right: 3rem !important; }.pr35{ padding-right: 3.5rem !important; }.pr40{ padding-right: 4rem !important; }.pr45{ padding-right: 4.5rem !important; }.pr50{ padding-right: 5rem !important; }
.pb01{ padding-bottom: 0.1rem !important; }.pb02{ padding-bottom: 0.2rem !important; }.pb03{ padding-bottom: 0.3rem !important; }.pb04{ padding-bottom: 0.4rem !important; }.pb05{ padding-bottom: 0.5rem !important; }.pb06{ padding-bottom: 0.6rem !important; }.pb07{ padding-bottom: 0.7rem !important; }.pb08{ padding-bottom: 0.8rem !important; }.pb09{ padding-bottom: 0.9rem !important; }
.pb10{ padding-bottom: 1rem !important; }.pb15{ padding-bottom: 1.5rem !important; }.pb20{ padding-bottom: 2rem !important; }.pb25{ padding-bottom: 2.5rem !important; }.pb30{ padding-bottom: 3rem !important; }.pb35{ padding-bottom: 3.5rem !important; }.pb40{ padding-bottom: 4rem !important; }.pb45{ padding-bottom: 4.5rem !important; }.pb50{ padding-bottom: 5rem !important; }
.pl01{ padding-left: 0.1rem !important; }.pl02{ padding-left: 0.2rem !important; }.pl03{ padding-left: 0.3rem !important; }.pl04{ padding-left: 0.4rem !important; }.pl05{ padding-left: 0.5rem !important; }.pl06{ padding-left: 0.6rem !important; }.pl07{ padding-left: 0.7rem !important; }.pl08{ padding-left: 0.8rem !important; }.pl09{ padding-left: 0.9rem !important; }
.pl10{ padding-left: 1rem !important; }.pl15{ padding-left: 1.5rem !important; }.pl20{ padding-left: 2rem !important; }.pl25{ padding-left: 2.5rem !important; }.pl30{ padding-left: 3rem !important; }.pl35{ padding-left: 3.5rem !important; }.pl40{ padding-left: 4rem !important; }.pl45{ padding-left: 4.5rem !important; }.pl50{ padding-left: 5rem !important; }


/* in view fade effect */
.fade{ opacity: 0; transition: 1.5s ease; }
.fade.in_view{ opacity: 1; transition-delay: 0.2s; }

.fade_t{ opacity: 0; transform: translateY(20px); transition: 0.6s ease; }
.fade_t.in_view{ opacity: 1; transform: translateY(0); transition-delay: 0.2s; }

.fade_b{ opacity: 0; transform: translateY(-20px); transition: 0.6s ease; }
.fade_b.in_view{ opacity: 1; transform: translateY(0); transition-delay: 0.2s; }

.fade_r{ opacity: 0; transform: translateX(-20px); transition: 0.6s ease; }
.fade_r.in_view{ opacity: 1; transform: translateX(0); transition-delay: 0.2s; }

.fade_l{ opacity: 0; transform: translateX(20px); transition: 0.6s ease; }
.fade_l.in_view{ opacity: 1; transform: translateX(0); transition-delay: 0.2s; }

/* in view slide effect */
.slide_t{ transform: translateY(20px); transition: transform 0.6s ease; }
.slide_t.in_view{ transform: translateY(0); }

.slide_b{ transform: translateY(-20px); transition: transform 0.6s ease; }
.slide_b.in_view{ transform: translateY(0); }

.slide_r{ transform: translateX(-20px); transition: transform 0.6s ease; }
.slide_r.in_view{ transform: translateX(0); }

.slide_l{ transform: translateX(20px); transition: transform 0.6s ease; }
.slide_l.in_view{ transform: translateX(0); }

/* in view zoom effect */
.zoom_in{ opacity: 0; transform: scale(0.8); transition: 0.6s ease; }
.zoom_in.in_view{ opacity: 1; transform: scale(1); transition-delay: 0.2s; }

.zoom_out{ opacity: 0; transform: scale(1.2); transition: 0.6s ease; }
.zoom_out.in_view{ opacity: 1; transform: scale(1); transition-delay: 0.2s; }





@media (max-width: 480px) {
	/* table */
	.tbl_style{}
	.tbl_style th, .tbl_style td{ display: block; border: none; }
	.tbl_style th{ width: 100%; margin-top: 0.5rem; padding: 0.75rem 1rem; background: var(--main_pnk_lt); }
	.tbl_style td{ padding: 0.5rem 0; }

	/* form */
	form .tbl_style th{ font-size: 1.125rem; }
	form textarea{ height: 150px; }
}




