@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Thasadith:ital,wght@0,400;0,700;1,400;1,700&display=swap");
html { scroll-behavior: smooth; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, p, blockquote, table, th, td { padding: 0; margin: 0; }

html, body { color: #000; font-weight: 500; background: #fff; }

body { font-family: "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

* html body { font-size: small; }

*:first-child + html body { font-size: small; }

img { border: 0; vertical-align: top; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 500; }

ul, dl, ol { text-indent: 0; }

li { list-style: none; }

i { font-style: normal; }

address, caption, cite, code, dfn, em, th, var { font-style: inherit; font-weight: inherit; }

b, strong { font-weight: bold; }

sup { vertical-align: text-top; }

sub { vertical-align: text-bottom; }

input, textarea, select, b { font-family: inherit; font-size: inherit; font-weight: inherit; }

* html input, * html textarea, * html select { font-size: 100%; }

*:first-child + html + input, *:first-child html + textarea, *:first-child + html select { font-size: 100%; }

table { width: 100%; table-layout: fixed; word-break: break-all; word-wrap: break-all; border-collapse: collapse; border-spacing: 0; font-size: inherit; }

th, td { text-align: left; vertical-align: top; }

caption { text-align: left; }

pre, code, kbd, samp, tt { font-family: monospace; }

* html pre, * html code, * html kbd, * html samp, * html tt { font-size: 100%; line-height: 100%; }

*:first-child + html pre, *:first-child html + code, *:first-child html + kbd, *:first-child + html + samp, *:first-child + html tt { font-size: 108%; line-height: 100%; }

input, select, textarea { font-size: 100%; font-family: Verdana, Helvetica, sans-serif; }

input.long, textarea.message { width: 100% !important; padding: 8px 8px; background: #fbfbfb; border: 1px solid #bbb; border-radius: 0.23em; }

textarea.message { width: 100%; height: 20rem !important; }

.fW100 { font-weight: 100; }

.fW200 { font-weight: 200; }

.fW300 { font-weight: 300; }

.fW400 { font-weight: 400; }

.fW500 { font-weight: 500; }

.fW600 { font-weight: 600; }

.fW700 { font-weight: 700; }

.fW800 { font-weight: 800; }

.fW900 { font-weight: 900; }

.ls0 { letter-spacing: 0; }

.ls05 { letter-spacing: 0.05em; }

.ls1 { letter-spacing: 0.1em; }

.ls2 { letter-spacing: 0.2em; }

.ls4 { letter-spacing: 0.4em; }

.lh0 { line-height: 0% !important; }

.lh100 { line-height: 100% !important; }

.lh110 { line-height: 110% !important; }

.lh120 { line-height: 120% !important; }

.lh130 { line-height: 130% !important; }

.lh140 { line-height: 140% !important; }

.lh150 { line-height: 150% !important; }

.lh160 { line-height: 160% !important; }

.lh170 { line-height: 170% !important; }

.lh180 { line-height: 180% !important; }

.lh190 { line-height: 190% !important; }

.lh200 { line-height: 200% !important; }

.lh220 { line-height: 220% !important; }

.lh240 { line-height: 240% !important; }

/* cf
========================================== */
.cf:after { visibility: hidden; display: block; content: ""; clear: both; }

* html .cf { zoom: 1; }

/* IE6 */
*:first-child + html .cf { zoom: 1; }

/* IE7 */
/* =======================================
	Structure CSS
========================================== */
* { -webkit-box-sizing: border-box; box-sizing: border-box; }

.center { text-align: center !important; vertical-align: middle; }

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

.left { text-align: left !important; }

.aligncenter { display: block; margin-left: auto; margin-right: auto; }

.alignright { display: block; margin-left: auto; margin-right: 0; }

.alignleft { display: block; margin-left: 0; margin-right: auto; }

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

.bold { font-weight: bold !important; }

.red { color: #ff610c !important; }

.blue { color: #2a457f !important; }

.white { color: #fff !important; }

.orange { color: #f88f03 !important; }

.float_l { float: left; }

.float_r { float: right; }

.rela { position: relative; }

.kome li { text-indent: -1em; padding-left: 1em; line-height: 140%; margin-bottom: 10px; }

.c_list li { position: relative; margin-left: 24px; line-height: 135%; margin-bottom: 10px; }

.c_list li:before { content: ""; width: 14px; height: 14px; position: absolute; background: linear-gradient(90deg, #ff5500, #ffd400); border-radius: 0.2em; top: 0.3em; left: -20px; }

.o_02 .head { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

.o_02 .sub { background: #333; color: #fff; margin-right: 10px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 0 10px; }

.o_02 .tag { width: 140px; display: inline-block; text-align: center; color: #fff; border-radius: 0.2em; font-size: 90%; margin-right: 15px; padding: 3px 0 1px; }

.o_02 .tag01 { background: #4bad12; }

.o_02 .tag02 { background: #2c4593; }

.c_c_c { position: absolute; top: 50%; left: 50%; -webkit-transform: translateY(-50%) translateX(-50%); transform: translateY(-50%) translateX(-50%); }

.c_y0_xc { position: absolute; top: 0%; left: 50%; -webkit-transform: translateY(0%) translateX(-50%); transform: translateY(0%) translateX(-50%); }

.c_yc_x0 { position: absolute; top: 50%; left: 0%; -webkit-transform: translateY(50%) translateX(0%); transform: translateY(50%) translateX(0%); }

/*flex
========================================== */
.flex { display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; }

.flex_nowrap { display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -ms-flex-wrap: nowrap; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }

.flex_wrap { display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex_space_between { -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }

.flex_center { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }

.flex_left { -webkit-box-pack: left; -webkit-justify-content: left; -ms-flex-pack: left; justify-content: left; }

.flex_right { -webkit-box-pack: right; -webkit-justify-content: right; -ms-flex-pack: right; justify-content: right; }

.flex_flex_end { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; }

.flex_row_reverse { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-flow: row-reverse; -ms-flex-flow: row-reverse; flex-flow: row-reverse; }

.align_items_c { -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }

.d_bl { display: block; }

.poev_none { pointer-events: none; }

.of_hidd { overflow: hidden; }

.of_auto { overflow: auto; }

.of_y { overflow-y: auto; }

.of_x_hidd { overflow-x: hidden; }

img { display: block; max-width: 100%; height: auto; -webkit-transition: 0.3s; transition: 0.3s; }

p, a { letter-spacing: 8%; }

figure { display: block; -webkit-margin-before: 0; margin-block-start: 0; -webkit-margin-after: 0; margin-block-end: 0; -webkit-margin-start: 0; margin-inline-start: 0; -webkit-margin-end: 0; margin-inline-end: 0; margin: 0; padding: 0; }

.w_4em { width: 4em; }

.w_45em { width: 4.5em; }

.w_5em { width: 5em; }

.w_6em { width: 6em; }

.w_7em { width: 7em; }

.w_8em { width: 8em; }

.w_9em { width: 9em; }

.f10 { font-size: 1rem !important; }

.f11 { font-size: 1.1rem !important; }

.f12 { font-size: 1.2rem !important; }

.f13 { font-size: 1.3rem !important; }

.f14 { font-size: 1.4rem !important; }

.f15 { font-size: 1.5rem !important; }

.f16 { font-size: 1.6rem !important; }

.f17 { font-size: 1.7rem !important; }

.f18 { font-size: 1.8rem !important; }

.f19 { font-size: 1.9rem !important; }

.f20 { font-size: 2rem !important; }

.f21 { font-size: 2.1rem !important; }

.f22 { font-size: 2.2rem !important; }

.f23 { font-size: 2.3rem !important; }

.f24 { font-size: 2.4rem !important; }

.f25 { font-size: 2.5rem !important; }

.f26 { font-size: 2.6rem !important; }

.f27 { font-size: 2.7rem !important; }

.f28 { font-size: 2.8rem !important; }

.f29 { font-size: 2.9rem !important; }

.f30 { font-size: 3rem !important; }

.f31 { font-size: 3.1rem !important; }

.f32 { font-size: 3.2rem !important; }

.f33 { font-size: 3.3rem !important; }

.f34 { font-size: 3.4rem !important; }

.f35 { font-size: 3.5em !important; }

.f36 { font-size: 3.6rem !important; }

.f37 { font-size: 3.7rem !important; }

.f38 { font-size: 3.8rem !important; }

.f39 { font-size: 3.9rem !important; }

.f40 { font-size: 4rem !important; }

.f_ps60 { font-size: 60% !important; }

.f_ps65 { font-size: 65% !important; }

.f_ps70 { font-size: 70% !important; }

.f_ps75 { font-size: 75% !important; }

.f_ps80 { font-size: 80% !important; }

.f_ps85 { font-size: 85% !important; }

.f_ps90 { font-size: 90% !important; }

.f_ps95 { font-size: 95% !important; }

.f_ps100 { font-size: 100% !important; }

.f_ps105 { font-size: 105% !important; }

.f_ps110 { font-size: 110% !important; }

.f_ps115 { font-size: 115% !important; }

.f_ps120 { font-size: 120% !important; }

.f_ps125 { font-size: 125% !important; }

.f_ps130 { font-size: 130% !important; }

.f_ps135 { font-size: 135% !important; }

.f_ps140 { font-size: 140% !important; }

.f_ps145 { font-size: 145% !important; }

.f_ps150 { font-size: 150% !important; }

.inner { max-width: 1200px !important; position: relative; width: 96%; margin: 0 auto; }

.h2Tit_inner { width: calc(100% - 50px); margin: auto; }

.inner_500 { max-width: 500px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_600 { max-width: 600px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_700 { max-width: 700px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_800 { max-width: 800px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_900 { max-width: 900px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_950 { max-width: 950px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1000 { max-width: 1000px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1100 { max-width: 1100px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1200 { max-width: 1200px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1210 { max-width: 1210px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1300 { max-width: 1300px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1400 { max-width: 1400px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1500 { max-width: 1500px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1600 { max-width: 1600px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1700 { max-width: 1700px !important; position: relative; width: 90%; margin: 0 auto; }

.inner_1800 { max-width: 1800px !important; position: relative; width: 90%; margin: 0 auto; }

/* =======================================
	margin / padding
========================================== */
/*! mb */
.mA0 { margin: 0px !important; }

.mA5 { margin: 5px !important; }

.mA10 { margin: 10px !important; }

.mA15 { margin: 15px !important; }

.mA20 { margin: 20px !important; }

.mA25 { margin: 25px !important; }

.mA30 { margin: 30px !important; }

.mA35 { margin: 35px !important; }

.mA40 { margin: 40px !important; }

.mA45 { margin: 45px !important; }

.mA50 { margin: 50px !important; }

.mA55 { margin: 55px !important; }

.mA60 { margin: 60px !important; }

.mA65 { margin: 65px !important; }

.mA70 { margin: 70px !important; }

.mA75 { margin: 75px !important; }

.mA80 { margin: 80px !important; }

.mA85 { margin: 85px !important; }

.mA90 { margin: 90px !important; }

.mA95 { margin: 95px !important; }

.mA100 { margin: 100px !important; }

.mA105 { margin: 105px !important; }

.mA110 { margin: 110px !important; }

.mA115 { margin: 115px !important; }

.mA120 { margin: 120px !important; }

.mA125 { margin: 125px !important; }

.mA130 { margin: 130px !important; }

.mA135 { margin: 135px !important; }

.mA140 { margin: 140px !important; }

.mA145 { margin: 145px !important; }

.mA150 { margin: 150px !important; }

.mT0 { margin-top: 0px !important; }

.mT5 { 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; }

.mT95 { margin-top: 95px !important; }

.mT100 { margin-top: 100px !important; }

.mT105 { margin-top: 105px !important; }

.mT110 { margin-top: 110px !important; }

.mT115 { margin-top: 115px !important; }

.mT120 { margin-top: 120px !important; }

.mT125 { margin-top: 125px !important; }

.mT130 { margin-top: 130px !important; }

.mT135 { margin-top: 135px !important; }

.mT140 { margin-top: 140px !important; }

.mT145 { margin-top: 145px !important; }

.mT150 { margin-top: 150px !important; }

.mB0 { margin-bottom: 0px !important; }

.mB5 { 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; }

.mB95 { margin-bottom: 95px !important; }

.mB100 { margin-bottom: 100px !important; }

.mB105 { margin-bottom: 105px !important; }

.mB110 { margin-bottom: 110px !important; }

.mB115 { margin-bottom: 115px !important; }

.mB120 { margin-bottom: 120px !important; }

.mB125 { margin-bottom: 125px !important; }

.mB130 { margin-bottom: 130px !important; }

.mB135 { margin-bottom: 135px !important; }

.mB140 { margin-bottom: 140px !important; }

.mB145 { margin-bottom: 145px !important; }

.mB150 { margin-bottom: 150px !important; }

.mL0 { margin-left: 0px !important; }

.mL5 { 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; }

.mL95 { margin-left: 95px !important; }

.mL100 { margin-left: 100px !important; }

.mL105 { margin-left: 105px !important; }

.mL110 { margin-left: 110px !important; }

.mL115 { margin-left: 115px !important; }

.mL120 { margin-left: 120px !important; }

.mL125 { margin-left: 125px !important; }

.mL130 { margin-left: 130px !important; }

.mL135 { margin-left: 135px !important; }

.mL140 { margin-left: 140px !important; }

.mL145 { margin-left: 145px !important; }

.mL150 { margin-left: 150px !important; }

.mR0 { margin-right: 0px !important; }

.mR5 { 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; }

.mR95 { margin-right: 95px !important; }

.mR100 { margin-right: 100px !important; }

.mR105 { margin-right: 105px !important; }

.mR110 { margin-right: 110px !important; }

.mR115 { margin-right: 115px !important; }

.mR120 { margin-right: 120px !important; }

.mR125 { margin-right: 125px !important; }

.mR130 { margin-right: 130px !important; }

.mR135 { margin-right: 135px !important; }

.mR140 { margin-right: 140px !important; }

.mR145 { margin-right: 145px !important; }

.mR150 { margin-right: 150px !important; }

.pB0 { padding-bottom: 0px !important; }

.pB5 { 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; }

.pB95 { padding-bottom: 95px !important; }

.pB100 { padding-bottom: 100px !important; }

.pB105 { padding-bottom: 105px !important; }

.pB110 { padding-bottom: 110px !important; }

.pB115 { padding-bottom: 115px !important; }

.pB120 { padding-bottom: 120px !important; }

.pB125 { padding-bottom: 125px !important; }

.pB130 { padding-bottom: 130px !important; }

.pB135 { padding-bottom: 135px !important; }

.pB140 { padding-bottom: 140px !important; }

.pB145 { padding-bottom: 145px !important; }

.pB150 { padding-bottom: 150px !important; }

.pT0 { padding-top: 0px !important; }

.pT5 { 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; }

.pT95 { padding-top: 95px !important; }

.pT100 { padding-top: 100px !important; }

.pT105 { padding-top: 105px !important; }

.pT110 { padding-top: 110px !important; }

.pT115 { padding-top: 115px !important; }

.pT120 { padding-top: 120px !important; }

.pT125 { padding-top: 125px !important; }

.pT130 { padding-top: 130px !important; }

.pT135 { padding-top: 135px !important; }

.pT140 { padding-top: 140px !important; }

.pT145 { padding-top: 145px !important; }

.pT150 { padding-top: 150px !important; }

.pL0 { padding-left: 0px !important; }

.pL5 { 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; }

.pL95 { padding-left: 95px !important; }

.pL100 { padding-left: 100px !important; }

.pL105 { padding-left: 105px !important; }

.pL110 { padding-left: 110px !important; }

.pL115 { padding-left: 115px !important; }

.pL120 { padding-left: 120px !important; }

.pL125 { padding-left: 125px !important; }

.pL130 { padding-left: 130px !important; }

.pL135 { padding-left: 135px !important; }

.pL140 { padding-left: 140px !important; }

.pL145 { padding-left: 145px !important; }

.pL150 { padding-left: 150px !important; }

.pR0 { padding-right: 0px !important; }

.pR5 { 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; }

.pR95 { padding-right: 95px !important; }

.pR100 { padding-right: 100px !important; }

.pR105 { padding-right: 105px !important; }

.pR110 { padding-right: 110px !important; }

.pR115 { padding-right: 115px !important; }

.pR120 { padding-right: 120px !important; }

.pR125 { padding-right: 125px !important; }

.pR130 { padding-right: 130px !important; }

.pR135 { padding-right: 135px !important; }

.pR140 { padding-right: 140px !important; }

.pR145 { padding-right: 145px !important; }

.pR150 { padding-right: 150px !important; }

.pA0 { padding: 0px !important; }

.pA5 { padding: 5px !important; }

.pA10 { padding: 10px !important; }

.pA15 { padding: 15px !important; }

.pA20 { padding: 20px !important; }

.pA25 { padding: 25px !important; }

.pA30 { padding: 30px !important; }

.pA35 { padding: 35px !important; }

.pA40 { padding: 40px !important; }

.pA45 { padding: 45px !important; }

.pA50 { padding: 50px !important; }

.pA55 { padding: 55px !important; }

.pA60 { padding: 60px !important; }

.pA65 { padding: 65px !important; }

.pA70 { padding: 70px !important; }

.pA75 { padding: 75px !important; }

.pA80 { padding: 80px !important; }

.pA85 { padding: 85px !important; }

.pA90 { padding: 90px !important; }

.pA95 { padding: 95px !important; }

.pA100 { padding: 100px !important; }

.pA105 { padding: 105px !important; }

.pA110 { padding: 110px !important; }

.pA115 { padding: 115px !important; }

.pA120 { padding: 120px !important; }

.pA125 { padding: 125px !important; }

.pA130 { padding: 130px !important; }

.pA135 { padding: 135px !important; }

.pA140 { padding: 140px !important; }

.pA145 { padding: 145px !important; }

.pA150 { padding: 150px !important; }

.mB1em { margin-bottom: 1em !important; }

/*! mb */
@media (max-width: 900px) and (min-width: 0px) { .mA0 { margin: 0% !important; }
  .mA5 { margin: 2.5% !important; }
  .mA10 { margin: 2.5% !important; }
  .mA15 { margin: 2.5% !important; }
  .mA20 { margin: 5% !important; }
  .mA25 { margin: 5% !important; }
  .mA30 { margin: 5% !important; }
  .mA35 { margin: 7.5% !important; }
  .mA40 { margin: 7.5% !important; }
  .mA45 { margin: 7.5% !important; }
  .mA50 { margin: 10% !important; }
  .mA55 { margin: 10% !important; }
  .mA60 { margin: 10% !important; }
  .mA65 { margin: 12.5% !important; }
  .mA70 { margin: 12.5% !important; }
  .mA75 { margin: 12.5% !important; }
  .mA80 { margin: 15% !important; }
  .mA85 { margin: 15% !important; }
  .mA90 { margin: 15% !important; }
  .mA95 { margin: 17.5% !important; }
  .mA100 { margin: 17.5% !important; }
  .mA105 { margin: 17.5% !important; }
  .mA110 { margin: 20% !important; }
  .mA115 { margin: 20% !important; }
  .mA120 { margin: 20% !important; }
  .mA125 { margin: 22.5% !important; }
  .mA130 { margin: 22.5% !important; }
  .mA135 { margin: 22.5% !important; }
  .mA140 { margin: 25% !important; }
  .mA145 { margin: 25% !important; }
  .mA150 { margin: 25% !important; }
  .mT10 { margin-top: 2.5% !important; }
  .mT15 { margin-top: 2.5% !important; }
  .mT20 { margin-top: 5% !important; }
  .mT25 { margin-top: 5% !important; }
  .mT30 { margin-top: 5% !important; }
  .mT35 { margin-top: 7.5% !important; }
  .mT40 { margin-top: 7.5% !important; }
  .mT45 { margin-top: 7.5% !important; }
  .mT50 { margin-top: 12% !important; }
  .mT55 { margin-top: 10% !important; }
  .mT60 { margin-top: 10% !important; }
  .mT65 { margin-top: 12.5% !important; }
  .mT70 { margin-top: 12.5% !important; }
  .mT75 { margin-top: 12.5% !important; }
  .mT80 { margin-top: 15% !important; }
  .mT85 { margin-top: 15% !important; }
  .mT90 { margin-top: 15% !important; }
  .mT95 { margin-top: 17.5% !important; }
  .mT100 { margin-top: 17.5% !important; }
  .mT105 { margin-top: 17.5% !important; }
  .mT110 { margin-top: 20% !important; }
  .mT115 { margin-top: 20% !important; }
  .mT120 { margin-top: 20% !important; }
  .mT125 { margin-top: 22.5% !important; }
  .mT130 { margin-top: 22.5% !important; }
  .mT135 { margin-top: 22.5% !important; }
  .mT140 { margin-top: 25% !important; }
  .mT145 { margin-top: 25% !important; }
  .mT150 { margin-top: 25% !important; }
  .mB0 { margin-bottom: 0% !important; }
  .mB5 { margin-bottom: 2.5% !important; }
  .mB10 { margin-bottom: 2.5% !important; }
  .mB15 { margin-bottom: 2.5% !important; }
  .mB20 { margin-bottom: 5% !important; }
  .mB25 { margin-bottom: 5% !important; }
  .mB30 { margin-bottom: 5% !important; }
  .mB35 { margin-bottom: 7.5% !important; }
  .mB40 { margin-bottom: 7.5% !important; }
  .mB45 { margin-bottom: 7.5% !important; }
  .mB50 { margin-bottom: 10% !important; }
  .mB55 { margin-bottom: 10% !important; }
  .mB60 { margin-bottom: 10% !important; }
  .mB65 { margin-bottom: 12.5% !important; }
  .mB70 { margin-bottom: 12.5% !important; }
  .mB75 { margin-bottom: 12.5% !important; }
  .mB80 { margin-bottom: 15% !important; }
  .mB85 { margin-bottom: 15% !important; }
  .mB90 { margin-bottom: 15% !important; }
  .mB95 { margin-bottom: 17.5% !important; }
  .mB100 { margin-bottom: 17.5% !important; }
  .mB105 { margin-bottom: 17.5% !important; }
  .mB110 { margin-bottom: 20% !important; }
  .mB115 { margin-bottom: 20% !important; }
  .mB120 { margin-bottom: 20% !important; }
  .mB125 { margin-bottom: 22.5% !important; }
  .mB130 { margin-bottom: 22.5% !important; }
  .mB135 { margin-bottom: 22.5% !important; }
  .mB140 { margin-bottom: 25% !important; }
  .mB145 { margin-bottom: 25% !important; }
  .mB150 { margin-bottom: 25% !important; }
  .mL0 { margin-left: 0% !important; }
  .mL5 { margin-left: 2.5% !important; }
  .mL10 { margin-left: 2.5% !important; }
  .mL15 { margin-left: 2.5% !important; }
  .mL20 { margin-left: 5% !important; }
  .mL25 { margin-left: 5% !important; }
  .mL30 { margin-left: 5% !important; }
  .mL35 { margin-left: 7.5% !important; }
  .mL40 { margin-left: 7.5% !important; }
  .mL45 { margin-left: 7.5% !important; }
  .mL50 { margin-left: 10% !important; }
  .mL55 { margin-left: 10% !important; }
  .mL60 { margin-left: 10% !important; }
  .mL65 { margin-left: 12.5% !important; }
  .mL70 { margin-left: 12.5% !important; }
  .mL75 { margin-left: 12.5% !important; }
  .mL80 { margin-left: 15% !important; }
  .mL85 { margin-left: 15% !important; }
  .mL90 { margin-left: 15% !important; }
  .mL95 { margin-left: 17.5% !important; }
  .mL100 { margin-left: 17.5% !important; }
  .mL105 { margin-left: 17.5% !important; }
  .mL110 { margin-left: 20% !important; }
  .mL115 { margin-left: 20% !important; }
  .mL120 { margin-left: 20% !important; }
  .mL125 { margin-left: 22.5% !important; }
  .mL130 { margin-left: 22.5% !important; }
  .mL135 { margin-left: 22.5% !important; }
  .mL140 { margin-left: 25% !important; }
  .mL145 { margin-left: 25% !important; }
  .mL150 { margin-left: 25% !important; }
  .mR0 { margin-right: 0% !important; }
  .mR5 { margin-right: 2.5% !important; }
  .mR10 { margin-right: 2.5% !important; }
  .mR15 { margin-right: 2.5% !important; }
  .mR20 { margin-right: 5% !important; }
  .mR25 { margin-right: 5% !important; }
  .mR30 { margin-right: 5% !important; }
  .mR35 { margin-right: 7.5% !important; }
  .mR40 { margin-right: 7.5% !important; }
  .mR45 { margin-right: 7.5% !important; }
  .mR50 { margin-right: 10% !important; }
  .mR55 { margin-right: 10% !important; }
  .mR60 { margin-right: 10% !important; }
  .mR65 { margin-right: 12.5% !important; }
  .mR70 { margin-right: 12.5% !important; }
  .mR75 { margin-right: 12.5% !important; }
  .mR80 { margin-right: 15% !important; }
  .mR85 { margin-right: 15% !important; }
  .mR90 { margin-right: 15% !important; }
  .mR95 { margin-right: 17.5% !important; }
  .mR100 { margin-right: 17.5% !important; }
  .mR105 { margin-right: 17.5% !important; }
  .mR110 { margin-right: 20% !important; }
  .mR115 { margin-right: 20% !important; }
  .mR120 { margin-right: 20% !important; }
  .mR125 { margin-right: 22.5% !important; }
  .mR130 { margin-right: 22.5% !important; }
  .mR135 { margin-right: 22.5% !important; }
  .mR140 { margin-right: 25% !important; }
  .mR145 { margin-right: 25% !important; }
  .mR150 { margin-right: 25% !important; }
  .pT0 { padding-top: 0% !important; }
  .pT5 { padding-top: 2.5% !important; }
  .pT10 { padding-top: 2.5% !important; }
  .pT15 { padding-top: 2.5% !important; }
  .pT20 { padding-top: 5% !important; }
  .pT25 { padding-top: 5% !important; }
  .pT30 { padding-top: 5% !important; }
  .pT35 { padding-top: 7.5% !important; }
  .pT40 { padding-top: 7.5% !important; }
  .pT45 { padding-top: 7.5% !important; }
  .pT50 { padding-top: 10% !important; }
  .pT55 { padding-top: 10% !important; }
  .pT60 { padding-top: 10% !important; }
  .pT65 { padding-top: 12.5% !important; }
  .pT70 { padding-top: 12.5% !important; }
  .pT75 { padding-top: 12.5% !important; }
  .pT80 { padding-top: 15% !important; }
  .pT85 { padding-top: 15% !important; }
  .pT90 { padding-top: 15% !important; }
  .pT95 { padding-top: 17.5% !important; }
  .pT100 { padding-top: 17.5% !important; }
  .pT105 { padding-top: 17.5% !important; }
  .pT110 { padding-top: 20% !important; }
  .pT115 { padding-top: 20% !important; }
  .pT120 { padding-top: 20% !important; }
  .pT125 { padding-top: 22.5% !important; }
  .pT130 { padding-top: 22.5% !important; }
  .pT135 { padding-top: 22.5% !important; }
  .pT140 { padding-top: 25% !important; }
  .pT145 { padding-top: 25% !important; }
  .pT150 { padding-top: 25% !important; }
  .pB0 { padding-bottom: 0% !important; }
  .pB5 { padding-bottom: 2.5% !important; }
  .pB10 { padding-bottom: 2.5% !important; }
  .pB15 { padding-bottom: 2.5% !important; }
  .pB20 { padding-bottom: 5% !important; }
  .pB25 { padding-bottom: 5% !important; }
  .pB30 { padding-bottom: 5% !important; }
  .pB35 { padding-bottom: 7.5% !important; }
  .pB40 { padding-bottom: 7.5% !important; }
  .pB45 { padding-bottom: 7.5% !important; }
  .pB50 { padding-bottom: 10% !important; }
  .pB55 { padding-bottom: 10% !important; }
  .pB60 { padding-bottom: 10% !important; }
  .pB65 { padding-bottom: 12.5% !important; }
  .pB70 { padding-bottom: 12.5% !important; }
  .pB75 { padding-bottom: 12.5% !important; }
  .pB80 { padding-bottom: 15% !important; }
  .pB85 { padding-bottom: 15% !important; }
  .pB90 { padding-bottom: 15% !important; }
  .pB95 { padding-bottom: 17.5% !important; }
  .pB100 { padding-bottom: 17.5% !important; }
  .pB105 { padding-bottom: 17.5% !important; }
  .pB110 { padding-bottom: 20% !important; }
  .pB115 { padding-bottom: 20% !important; }
  .pB120 { padding-bottom: 20% !important; }
  .pB125 { padding-bottom: 22.5% !important; }
  .pB130 { padding-bottom: 22.5% !important; }
  .pB135 { padding-bottom: 22.5% !important; }
  .pB140 { padding-bottom: 25% !important; }
  .pB145 { padding-bottom: 25% !important; }
  .pB150 { padding-bottom: 25% !important; }
  .pL0 { padding-left: 0% !important; }
  .pL5 { padding-left: 2.5% !important; }
  .pL10 { padding-left: 2.5% !important; }
  .pL15 { padding-left: 2.5% !important; }
  .pL20 { padding-left: 5% !important; }
  .pL25 { padding-left: 5% !important; }
  .pL30 { padding-left: 5% !important; }
  .pL35 { padding-left: 7.5% !important; }
  .pL40 { padding-left: 7.5% !important; }
  .pL45 { padding-left: 7.5% !important; }
  .pL50 { padding-left: 10% !important; }
  .pL55 { padding-left: 10% !important; }
  .pL60 { padding-left: 10% !important; }
  .pL65 { padding-left: 12.5% !important; }
  .pL70 { padding-left: 12.5% !important; }
  .pL75 { padding-left: 12.5% !important; }
  .pL80 { padding-left: 15% !important; }
  .pL85 { padding-left: 15% !important; }
  .pL90 { padding-left: 15% !important; }
  .pL95 { padding-left: 17.5% !important; }
  .pL100 { padding-left: 17.5% !important; }
  .pL105 { padding-left: 17.5% !important; }
  .pL110 { padding-left: 20% !important; }
  .pL115 { padding-left: 20% !important; }
  .pL120 { padding-left: 20% !important; }
  .pL125 { padding-left: 22.5% !important; }
  .pL130 { padding-left: 22.5% !important; }
  .pL135 { padding-left: 22.5% !important; }
  .pL140 { padding-left: 25% !important; }
  .pL145 { padding-left: 25% !important; }
  .pL150 { padding-left: 25% !important; }
  .pR0 { padding-right: 0% !important; }
  .pR5 { padding-right: 2.5% !important; }
  .pR10 { padding-right: 2.5% !important; }
  .pR15 { padding-right: 2.5% !important; }
  .pR20 { padding-right: 5% !important; }
  .pR25 { padding-right: 5% !important; }
  .pR30 { padding-right: 5% !important; }
  .pR35 { padding-right: 7.5% !important; }
  .pR40 { padding-right: 7.5% !important; }
  .pR45 { padding-right: 7.5% !important; }
  .pR50 { padding-right: 10% !important; }
  .pR55 { padding-right: 10% !important; }
  .pR60 { padding-right: 10% !important; }
  .pR65 { padding-right: 12.5% !important; }
  .pR70 { padding-right: 12.5% !important; }
  .pR75 { padding-right: 12.5% !important; }
  .pR80 { padding-right: 15% !important; }
  .pR85 { padding-right: 15% !important; }
  .pR90 { padding-right: 15% !important; }
  .pR95 { padding-right: 17.5% !important; }
  .pR100 { padding-right: 17.5% !important; }
  .pR105 { padding-right: 17.5% !important; }
  .pR110 { padding-right: 20% !important; }
  .pR115 { padding-right: 20% !important; }
  .pR120 { padding-right: 20% !important; }
  .pR125 { padding-right: 22.5% !important; }
  .pR130 { padding-right: 22.5% !important; }
  .pR135 { padding-right: 22.5% !important; }
  .pR140 { padding-right: 25% !important; }
  .pR145 { padding-right: 25% !important; }
  .pR150 { padding-right: 25% !important; }
  .pA0 { padding: 0% !important; }
  .pA5 { padding: 2.5% !important; }
  .pA10 { padding: 2.5% !important; }
  .pA15 { padding: 2.5% !important; }
  .pA20 { padding: 5% !important; }
  .pA25 { padding: 5% !important; }
  .pA30 { padding: 5% !important; }
  .pA35 { padding: 7.5% !important; }
  .pA40 { padding: 7.5% !important; }
  .pA45 { padding: 7.5% !important; }
  .pA50 { padding: 10% !important; }
  .pA55 { padding: 10% !important; }
  .pA60 { padding: 10% !important; }
  .pA65 { padding: 12.5% !important; }
  .pA70 { padding: 12.5% !important; }
  .pA75 { padding: 12.5% !important; }
  .pA80 { padding: 15% !important; }
  .pA85 { padding: 15% !important; }
  .pA90 { padding: 15% !important; }
  .pA95 { padding: 17.5% !important; }
  .pA100 { padding: 17.5% !important; }
  .pA105 { padding: 17.5% !important; }
  .pA110 { padding: 20% !important; }
  .pA115 { padding: 20% !important; }
  .pA120 { padding: 20% !important; }
  .pA125 { padding: 22.5% !important; }
  .pA130 { padding: 22.5% !important; }
  .pA135 { padding: 22.5% !important; }
  .pA140 { padding: 25% !important; }
  .pA145 { padding: 25% !important; }
  .pA150 { padding: 25% !important; } }
.z-in0 { z-index: 0; }

.z-in1 { z-index: 1; }

.z-in2 { z-index: 2; }

.z-in3 { z-index: 3; }

.z-in4 { z-index: 4; }

.z-in5 { z-index: 5; }

.z-in6 { z-index: 6; }

.z-in7 { z-index: 7; }

.z-in8 { z-index: 8; }

.z-in9 { z-index: 9; }

.z-in10 { z-index: 10; }

.visibility_hidden { visibility: hidden; }

.no_link { color: #9a9a9a !important; pointer-events: none !important; }

.po_ev_no { pointer-events: none !important; }

.reverse { flex-direction: row-reverse; }

.cl7_3, .cl4_6, .cl6_4, .cl3_7, .cl25, .cl33, .cl50, .cl50_max { display: flex; justify-content: space-between; }

@media (min-width: 901px) { .cl50_max > *, .cl50 > *, .cl33 > *, .cl25 > *, .cl3_7 > *, .cl7_3 > *, .cl4_6 > *, .cl6_4 > * { display: block; }
  .cl50_max > * { width: 50%; -webkit-box-sizing: border-box; box-sizing: border-box; margin-bottom: 4%; }
  .cl50 > * { width: 48%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl33 > * { width: 30%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl25 > * { width: 23%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl3_7 > *:nth-child(odd) { width: 30%; }
  .cl3_7 > *:nth-child(even) { width: 66%; }
  .cl7_3 > *:nth-child(odd) { width: 66%; }
  .cl7_3 > *:nth-child(even) { width: 30%; }
  .cl4_6 > *:nth-child(odd) { width: 40%; }
  .cl4_6 > *:nth-child(even) { width: 56%; }
  .cl6_4 > *:nth-child(odd) { width: 56%; }
  .cl6_4 > *:nth-child(even) { width: 40%; } }
@media (max-width: 900px) and (min-width: 0px) { .cl50_max, .cl50, .cl33, .cl25, .cl20, .cl3_7, .cl7_3, .cl4_6, .cl6_4 { flex-wrap: wrap; }
  .cl50_max > * { width: 100%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl50 > * { width: 100%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl33 > * { width: 48%; margin-bottom: 4%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .cl25 > *, .cl20 > * { width: 48%; margin-bottom: 4%; position: relative; }
  .cl3_7 > *, .cl7_3 > *, .cl4_6 > *, .cl6_4 > * { width: 100%; margin-bottom: 5%; } }
/* =========================================================
	★ 共通
========================================================= */
html { font-size: 62.5%; background: #fffdf6; }

body { position: relative; max-width: 100%; margin: 0 auto; padding: 0; color: #333; font-size: 1.6rem; line-height: 1.8; text-align: left; letter-spacing: 12%; font-weight: 400; font-family: "Zen Kaku Gothic Antique", sans-serif; background: #fffdf6; -webkit-box-sizing: border-box; box-sizing: border-box; }

object { pointer-events: none; }

.pc { display: block !important; }

.sp { display: none !important; }

a { color: #333; text-decoration: none; -webkit-transition: 0.3s; transition: 0.3s; }

a:hover { opacity: 0.7; }

p { letter-spacing: 12%; }

/* =========================================================
	★ フォントファミリー
========================================================= */
.mincho { font-family: "Zen Old Mincho", serif; }

.gothic { font-family: "Zen Kaku Gothic Antique", sans-serif; }

/* =========================================================
	★ LIST
========================================================= */
.disc { margin-left: 20px; list-style-type: disc; }

.disc > li { list-style-type: disc; }

.disc > li:not(:last-child) { padding-bottom: 5px; }

.decimal { margin-left: 20px; list-style-type: decimal; }

.decimal > li { list-style-type: decimal; }

.decimal > li:not(:last-child) { padding-bottom: 5px; }

/* =========================================================
	★ TO TOP
========================================================= */
#totop { width: 60px; height: 60px; background: rgba(0, 0, 0, 0.5); display: block; }

.totop_wrap { position: fixed; right: 0; bottom: 0; z-index: 2; display: none; }

.totop_wrap .icon-totop { display: block; width: 100%; text-align: center; }

.totop_wrap .icon-totop::before { font-size: 5rem; content: ""; width: 15px; height: 15px; border-top: 2px solid #fff; border-right: 2px solid #fff; margin: auto; -webkit-transition: 0.3s; transition: 0.3s; position: absolute; top: 55%; left: 50%; -webkit-transform: translateY(-50%) translateX(-50%) rotate(-45deg); transform: translateY(-50%) translateX(-50%) rotate(-45deg); }

#totop span { display: none; }

/* =========================================================
	★ mailform pro
========================================================= */
input::-webkit-input-placeholder { color: #a9a9a9; }

input:-ms-input-placeholder { color: #a9a9a9; }

input::-ms-input-placeholder { color: #a9a9a9; }

input::placeholder { color: #a9a9a9; }

input.short { width: 25%; }

input.middle { width: 50%; }

/* =========================================================
	★ お知らせ (投稿の本文用)
========================================================= */
#single-news img { height: auto !important; }
#single-news .aligncenter { text-align: center; margin: auto; }
#single-news .alignright { text-align: right; margin-right: 0; margin-left: auto; }
#single-news .txtArea h1 { font-size: 160%; }
#single-news .txtArea h2 { font-size: 150%; }
#single-news .txtArea h3 { font-size: 140%; }
#single-news .txtArea h4 { font-size: 130%; }
#single-news .txtArea h5 { font-size: 120%; }
#single-news .txtArea h6 { font-size: 110%; }

/* =========================================================
	共通パーツ
========================================================= */
.c_anchorLink { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.c_anchorLink a { position: relative; display: block; margin-bottom: 1em; color: #fff; font-weight: 700; text-align: center; background: #02362F; border-radius: 8px; }
.c_anchorLink a:after { content: ''; position: absolute; top: 0; bottom: 0; right: 20px; width: 9px; height: 9px; margin: auto; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: translateY(-2px) rotate(135deg); box-sizing: border-box; }

.c_CheckList { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: fit-content; max-width: 100%; margin: 0 auto; background: #fff; border: 2px solid #555; border-radius: 16px; }
.c_CheckList ul { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; gap: 20px; }
.c_CheckList li { position: relative; display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; line-height: 1.5em; }
.c_CheckList li:before { content: ""; flex-shrink: 0; display: inline-block; margin-top: calc((1.5em - 18px) / 2); margin-right: 16px; border: 2px solid #000; border-radius: 2px; }
.c_CheckList li:after { content: ""; position: absolute; left: 11px; top: calc((1.5em - 25px) / 2); border-right: 2px solid #000; border-bottom: 2px solid #000; transform: rotate(45deg); }

.c_Flow .Flow_Item { position: relative; background: #fff; border: 1px solid #333; }
.c_Flow .Flow_Item:after { content: ""; position: absolute; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 25px solid transparent; border-right: 25px solid transparent; border-top: 20px solid #02362F; z-index: 5; }
.c_Flow .Flow_Item:last-of-type { margin-bottom: 0; }
.c_Flow .Flow_Item:last-of-type:after { display: none; }
.c_Flow .Flow_Content { flex-grow: 1; position: relative; }
.c_Flow .Flow_Header { position: relative; }
.c_Flow .Flow_Free { position: absolute; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 50px; height: 50px; color: #fff; font-size: 14px; font-weight: bold; border-radius: 50%; background: #C43A3A; z-index: 10; }
.c_Flow .Flow_Free:after { content: ""; position: absolute; bottom: -2px; right: 2px; width: 0; height: 0; transform: rotate(-15deg); border-top: 12px solid #C43A3A; border-left: 12px solid transparent; }
.c_Flow h3 { font-weight: 700; line-height: 1.6em; }
.c_Flow .Flow_Num { letter-spacing: 8%; }
.c_Flow ul.Flow_tags { display: -webkit-flex; display: flex; gap: 10px; }
.c_Flow ul.Flow_tags li { color: #fff; font-size: 12px; line-height: 100%; border-radius: 2px; background: #02362F; }
.c_Flow .Flow_Notice { padding: 8px 15px; color: #555; font-size: 13px; background: #f0f0f0; }
.c_Flow img { object-fit: cover; aspect-ratio: 4 / 3; }
.c_Flow .btn02 { margin-left: auto; }

.bg_b { background: #A6D3FF; }

.bg_b { position: relative; z-index: 10; background: #DDD9C9; }

.bg_g { position: relative; z-index: 10; background: #02362F; }

.bg_g2 { position: relative; z-index: 10; background: #406A64; }

.bg_p { position: relative; z-index: 10; background: url(../img/bg.png) no-repeat top left/cover; }

.c_Flex2, .c_Flex3, .c_Flex4 { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.c_Flex2 .Img img, .c_Flex2 .Img_w img, .c_Flex3 .Img img, .c_Flex3 .Img_w img, .c_Flex4 .Img img, .c_Flex4 .Img_w img { width: 100%; }
.c_Flex2 .Img img + p, .c_Flex2 .Img_w img + p, .c_Flex3 .Img img + p, .c_Flex3 .Img_w img + p, .c_Flex4 .Img img + p, .c_Flex4 .Img_w img + p { margin-top: 1.5em; }

dl.c_Table, dl.c_Table2, dl.c_Table_w, dl.c_Table2_w { overflow: hidden; border-bottom: 1px solid #333; }
dl.c_Table dt, dl.c_Table2 dt, dl.c_Table_w dt, dl.c_Table2_w dt { clear: both; font-weight: 700; }
dl.c_Table dt, dl.c_Table dd, dl.c_Table2 dt, dl.c_Table2 dd, dl.c_Table_w dt, dl.c_Table_w dd, dl.c_Table2_w dt, dl.c_Table2_w dd { float: left; border-top: 1px solid #333; }

dl.c_Table2 dt, dl.c_Table2_w dt { font-weight: 500; }
dl.c_Table2 dt, dl.c_Table2 dd, dl.c_Table2_w dt, dl.c_Table2_w dd { padding: 1.5em 0; }

dl.c_Table_w, dl.c_Table2_w { border-bottom: 1px solid #fff; }
dl.c_Table_w dt, dl.c_Table_w dd, dl.c_Table2_w dt, dl.c_Table2_w dd { color: #fff; border-top: 1px solid #fff; }

.Btn_Insta, .btn01, .btn01_w, .btn02 { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; color: #333; font-weight: 400; line-height: 100%; letter-spacing: 8%; vertical-align: middle; border: 1px solid #333; }
.Btn_Insta:after, .btn01:after, .btn01_w:after, .btn02:after { content: ''; display: block; background: url(../img/yajirushi.svg) no-repeat center center/100% auto; }

.btn01, .btn01_w { font-family: "Thasadith", sans-serif; font-weight: 400; font-style: italic; }

.btn01_w { color: #fff; border: 1px solid #fff; }
.btn01_w:after { background: url(../img/yajirushi02.svg) no-repeat center center/100% auto; }

.Btn_Insta:before { content: ""; display: block; background: url(../img/Instagram.png) no-repeat center center/100% auto; }
.Btn_Insta .fa-instagram + span { flex: 1; position: relative; padding-right: 10px; line-height: 1.3em; text-align: center; }
.Btn_Insta .fa-instagram + span i { display: block; margin-top: 0.2em; font-size: 0.8em; }

.c_TextBox { border-radius: 2vw; border: 1px solid #333; background-color: rgba(255, 255, 255, 0.4); }

/* =========================================================
	見出し
========================================================= */
.c_Title, .c_Title_w, .c_Title_c, .c_Title_w_c { font-weight: 900; line-height: 100%; letter-spacing: 8%; font-family: "Thasadith", sans-serif; font-weight: 400; font-style: normal; }
.c_Title i, .c_Title_w i, .c_Title_c i, .c_Title_w_c i { line-height: 100%; letter-spacing: 12%; }

.c_Title20, .c_Title20_w, .c_Title24, .c_Title24_w, .c_Title28, .c_Title28_w, .c_Title32, .c_Title32_w { font-weight: 700; line-height: 1.5em; letter-spacing: 4%; }
.c_Title20 i, .c_Title20_w i, .c_Title24 i, .c_Title24_w i, .c_Title28 i, .c_Title28_w i, .c_Title32 i, .c_Title32_w i { display: block; margin-bottom: 0.3em; font-size: 0.7em; line-height: 100%; }

.c_Title_w, .c_Title_w_c, .c_Title20_w, .c_Title24_w, .c_Title28_w, .c_Title32_w { color: #fff !important; }

/* =========================================================
	ヘッダー
========================================================= */
#header { position: fixed; top: 0; z-index: 9999; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; width: 100%; color: #fff; background: transparent; transition: transform 0.3s ease, background-color 0.3s ease; }
#header.js_scrolled { background-color: rgba(2, 54, 47, 0.7); }
#header.js_hide { transform: translateY(-100%); background: transparent; transition: transform 0.3s ease, background-color 0s; }
#header p { line-height: 100%; letter-spacing: 10%; }
#header .Info { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
#header .Info .Tel { color: #fff; }
#header .Info .Tel > span { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; line-height: 100%; letter-spacing: 8%; vertical-align: middle; }
#header .Info .Tel > span:before { content: ""; display: block; margin-top: 5px; background: url(../img/tel.svg) no-repeat center center/auto 100%; }
#header .Info .Tel i { display: block; letter-spacing: 8%; }
#header .Info .Tenpo, #header .Info .Contact { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; color: #333; letter-spacing: 10%; background: #fff; border-radius: 3px; }
#header .Info .Tenpo:before { content: ""; display: block; background: url(../img/header_Tenpo.svg) no-repeat top 4px center/100% auto; }
#header .Info .Contact:before { content: ""; display: block; width: 18px; height: 13px; margin-right: 7px; background: url(../img/header_Contact.svg) no-repeat center center/100% auto; }
#header ul.head-nav a { display: block; letter-spacing: 10%; }
#header ul.head-nav li.hasSub { z-index: 100; }
#header ul.head-nav li.hasSub > a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
#header ul.head-nav li.hasSub > a:after { content: ""; display: block; background: url(../img/yajirushi04.svg) no-repeat top center/100% auto; }
#header ul.head-nav li.hasSub > ul a { white-space: nowrap; }

.Page-Title { overflow: hidden; position: relative; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.5) 40%, rgba(186, 186, 186, 0.2) 100%), url(../img/bg2.png) no-repeat center center/100% auto; }
.Page-Title h1 { color: #fff; font-weight: 700; line-height: 100%; text-align: center; letter-spacing: 14%; font-family: "Zen Old Mincho", serif; }

.Pankuzu, .Pankuzu_w { position: relative; z-index: 10; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; line-height: 100%; }
.Pankuzu li + li:before, .Pankuzu_w li + li:before { content: ">"; margin: 0 0.8em; }
.Pankuzu li:nth-child(1), .Pankuzu_w li:nth-child(1) { font-weight: bold; }

.Pankuzu_w { color: #fff; }
.Pankuzu_w a { color: #fff; }

/* =========================================================
	フッター
========================================================= */
.footInfo { position: relative; background: #02362f; }
.footInfo:before { content: ""; position: absolute; top: 0; right: 0; display: block; background: url(../img/footInfo_img01.jpg) no-repeat center right/cover; }
.footInfo h2 { color: #fff; }
.footInfo h2 i { letter-spacing: 14%; }
.footInfo p { color: #fff; letter-spacing: 12%; }
.footInfo a.Tel, .footInfo a.Mail { position: relative; z-index: 10; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; color: #fff; line-height: 100%; letter-spacing: 8%; pointer-events: auto !important; cursor: pointer !important; border: 0.5px solid #fff; }
.footInfo a.Tel i { display: block; line-height: 100%; letter-spacing: 8%; }
.footInfo a.Tel i span { display: inline-block; margin: 0 0 0 -5px; padding: 0 0 2px 0; font-size: 12px; }
.footInfo a.Tel:before { content: ""; display: block; margin-right: 11px; background: url(../img/tel.svg) no-repeat center center/auto 100%; }
.footInfo a.Mail:before { content: ""; display: block; width: 18px; height: 14px; margin-right: 12px; background: url(../img/mail.svg) no-repeat top left/100% auto; }
.footInfo .Map { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; }
.footInfo .Map > p { padding-bottom: 8px; background: url(../img/yajirushi03.svg) no-repeat left bottom 2px/100% auto; }
.footInfo .Map > div { text-align: center; }
.footInfo .Map img { height: auto; }
.footInfo .Map div span { display: inline-block; color: #fff; line-height: 100%; letter-spacing: 12%; text-underline-offset: 9px; text-decoration: underline; }

footer ul.Contents { max-width: 1235px; width: 90%; margin: 0 auto; }
footer ul.Contents > li:nth-child(1) { flex: 1; }
footer h1 + p { line-height: 1.7em; letter-spacing: 10%; }
footer p + p { margin-top: 2px; line-height: 1.5em; letter-spacing: 10%; }
footer a { white-space: nowrap; }
footer ul.LinkInsta { max-width: 1235px; width: 90%; margin: 0 auto; }
footer ul.LinkInsta a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; letter-spacing: 10%; }
footer ul.LinkInsta a:before { content: ""; display: block; background: url(../img/Instagram.png) no-repeat center center/100% auto; }
footer .copy { font-size: 12px; text-align: center; letter-spacing: 0; }

/* =========================================================
	トップ
========================================================= */
#top { overflow: hidden; }
#top .top_MainImage { position: relative; color: #fff; width: 100%; }
#top .top_MainImage .Slider { overflow: hidden; width: 100%; }
#top .top_MainImage .Slider img { width: 100%; height: auto; }
@keyframes zoomUp { 0% { transform: scale(1); }
  100% { transform: scale(1.15); } }
@keyframes zoomDown { 0% { transform: scale(1.15); }
  100% { transform: scale(1); } }
@keyframes downMove { 0% { transform: scale(1.1) translateX(-50px); }
  100% { transform: scale(1.1) translateX(0); } }
#top .top_MainImage .add-zoom-up { animation: zoomUp 10s linear 0s normal both; }
#top .top_MainImage .add-zoom-down { animation: zoomDown 10s linear 0s normal both; }
#top .top_MainImage .add-zoom-downMove { animation: downMove 10s infinite; }
@media (max-width: 1050px) { @keyframes downMove { 0% { transform: scale(1.4) translateX(-50px); }
    100% { transform: scale(1.4) translateX(0); } } }
#top .top_MainImage .Text { position: absolute; top: 0; left: 0; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 100%; height: 100%; }
#top .top_MainImage h2 { letter-spacing: 4% !important; text-align: center !important; }
#top .top_MainImage p { text-align: center; }
#top .top_News2 { display: none; }
#top .top_Strengths .inner_1200 ul ul li { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
#top .top_Strengths .inner_1200 ul ul li > span { font-weight: 400; font-style: italic; letter-spacing: 4%; font-family: "Thasadith", sans-serif; }
#top .top_Strengths .inner_1200 ul ul li > span + i { display: block; border-bottom: 1px solid #e9e8e4; }
#top .top_Strengths .inner_1200 ul ul h3 { line-height: 100%; }
#top .top_Strengths .inner_1200 ul ul h3 i { display: block; padding: 2px 0 3px 0; line-height: 100%; }
#top .top_Service { color: #fff; background: #02362f; }
#top .top_Service ul.top_Service_Title { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
@media (max-width: 1200px) { #top .top_Service ul.top_Service_Title { display: block; } }
#top .top_Service ul.top_Service_Link01 li { position: relative; }
#top .top_Service ul.top_Service_Link01 img { border: 0.77px solid #fff; }
#top .top_Service ul.top_Service_Link01 h3 { position: absolute; color: #fff; letter-spacing: 12%; }
#top .top_Service ul.top_Service_Link01 li:after { position: absolute; content: ""; display: block; background: #fff url(../img/yajirushi.svg) no-repeat center center/13.4px 7.66px; }
#top .top_Service > h3 { color: #fff; letter-spacing: 12%; background: #406a64; }
#top .top_Service ul.top_Service_Link02 li { position: relative; }
#top .top_Service ul.top_Service_Link02 img { max-width: 100%; border: 0.77px solid #fff; }
#top .top_Service ul.top_Service_Link02 h4 { position: absolute; color: #fff; line-height: 21.5px; letter-spacing: 12%; }
#top .top_Service ul.top_Service_Link02 li:after { position: absolute; content: ""; display: block; background: #fff url(../img/yajirushi.svg) no-repeat center center/8.93px 5.11px; }
#top .top_CaseStudies { background: url(../img/bg.png) no-repeat top left/cover; }
#top .top_CaseStudies .inner_1200 div p { letter-spacing: 12%; }
#top .top_Instagram { background: #ddd9c9; }
#top .top_Instagram h2 { -webkit-justify-content: center; justify-content: center; }
#top .top_Instagram h2 + p { letter-spacing: 12%; }
#top .top_Instagram ul li { position: relative; background: #fff; border-radius: 2px; border: 5px solid #fff; }
#top .top_Instagram ul li:after { position: absolute; content: ""; display: block; border: 1px solid #333; background: #fff url(../img/yajirushi.svg) no-repeat center center/14px 8px; }
#top .top_Instagram ul a { position: relative; }
#top .top_Instagram ul img { width: 100%; object-fit: cover; }
#top .top_Instagram ul h3 { position: absolute; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; color: #fff; font-size: 18px; font-weight: 700; letter-spacing: 12%; }
#top .top_Instagram ul h3 span { flex: 1; }
#top .top_Instagram ul h3:before { content: ""; display: block; background: url(../img/Instagram.svg) no-repeat top left/100% auto; }
#top .top_Instagram ul p { padding: 15px 10px 28px 15px; line-height: 2em; letter-spacing: 12%; }
#top .Top_footLink a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; color: #333; line-height: 100%; letter-spacing: 8%; border: 0.5px solid #333; }
#top .Top_footLink a:after { content: ""; display: block; background: url(../img/yajirushi.svg) no-repeat center center/100% auto; }

/* =========================================================
	選ばれる理由
========================================================= */
#strengths .Strengths_Contents .Title { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
#strengths .Strengths_Contents .Title span { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 2.8em; height: 2.8em; margin-right: 1em; color: #fff; font-weight: 700; font-style: italic; font-family: "Thasadith", sans-serif; background: #02362F; }
#strengths .Strengths_Contents .Title h2, #strengths .Strengths_Contents .Title h2 i { line-height: 100%; }
#strengths .Strengths_Contents p { line-height: 2.2em; }
#strengths .Strengths_Contents .Point { position: relative; border-radius: 15px; border: 1px solid #333; background-color: rgba(255, 255, 255, 0.2); }
#strengths .Strengths_Contents .Point:before { content: "POINT"; position: absolute; top: -25px; left: -15px; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 60px; height: 60px; color: #fff; font-size: 11px; font-weight: bold; letter-spacing: 0.05em; border-radius: 50%; background: #C43A3A; transform: rotate(-15deg); }
#strengths .Strengths_Contents .Point .c_Flex2 { -webkit-box-align: center; align-items: center; margin: 0 auto; }
#strengths .Strengths_Contents .btn02 { margin: 1.5em 0 0 auto; }
#strengths .Reason_02 .c_Title3 { letter-spacing: 4%; }
#strengths .Reason_03 .c_Flex3 li { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; }
#strengths .Reason_03 .c_Flex3 p { margin-top: auto; text-align: center; }
#strengths .Reason_03 .c_Flex3 img { margin: 0 auto 1em auto; }

/* =========================================================
	サービス
========================================================= */
#service { background: #DDD9C9; }
#service .Service_Link li { position: relative; padding: 15px 15px 40px 15px; background: #fff; }
#service .Service_Link li:after { position: absolute; content: ""; display: block; border: 1px solid #333; background: #fff url(../img/yajirushi.svg) no-repeat center center/14px 8px; }
#service .Service_Link img { object-fit: cover; aspect-ratio: 4 / 3; }
#service .Service_Link p { width: 93%; margin: 0 auto; line-height: 2.2em; }

#office #About img { object-fit: cover; aspect-ratio: 4 / 3; }
#office #About p { line-height: 2.2em; }

#interior .Interior_Contents img, #interior .interior_Contents2 img { object-fit: cover; aspect-ratio: 4 / 3; }
#interior .Interior_Contents p, #interior .interior_Contents2 p { line-height: 2.2em; }
#interior .Example > li .Img { width: 100%; margin: 0 !important; background: #fff; }
#interior .Example > li .Img img { width: 100%; height: 100%; object-fit: contain; }
#interior .Example h4 { margin-top: 0.5em; line-height: 1.3em; }
#interior .Example p { margin-top: 0.5em; line-height: 1.3em; }
#interior .Link { -webkit-box-align: end; align-items: flex-end; }
#interior .Link img { width: 100%; height: auto; aspect-ratio: auto; }
#interior .Link a { background-color: rgba(255, 255, 255, 0.3); }

#repair p { line-height: 2.2em; }
#repair .Nyami { width: 100%; max-width: 1000px; margin: 0 auto; }
#repair .Nyami .center-image { text-align: center; z-index: 1; }
#repair .Nyami .balloon { padding: 18px 28px; color: #333; line-height: 1.5; font-weight: bold; text-align: center; background: #fff; border-radius: 30px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05); white-space: nowrap; z-index: 2; }
#repair .Nyami .balloon:after { content: ''; position: absolute; border-style: solid; }
#repair .Msg { display: -webkit-flex; display: flex; gap: 30px; padding: 0 20px; }
#repair .Msg .msg-icon { overflow: hidden; width: 100px; height: 100px; background: #fff; border-radius: 50%; flex-shrink: 0; }
#repair .Msg .msg-icon img { object-fit: cover; aspect-ratio: 1 / 1; }
#repair .Msg .msg-content { display: flex; flex-direction: column; align-items: center; position: relative; flex-grow: 1; }
#repair .Msg span { margin-bottom: 8px; font-weight: 700; }
#repair .Msg .msg-bubble { position: relative; width: 100%; font-weight: 700; background: #fff; border-radius: 40px; }
#repair .Msg .msg-bubble:after { content: ""; position: absolute; display: block; width: 0; border-style: solid; z-index: 1; }
#repair #About img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
#repair .BeforeAfter { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; gap: 15px; }
#repair .BeforeAfter .box { position: relative; width: 100%; }
#repair .BeforeAfter span { position: absolute; top: 0px; left: 10px; font-weight: 700; }
#repair .BeforeAfter .arrow { width: 0; height: 0; }
#repair .Point .c_TextBox { background: #fff; }

#public p { line-height: 2.2em; }
#public #Strengths .c_Flex3 img { display: block; margin: 0 auto; object-fit: cover; aspect-ratio: 1 / 1; border-radius: 50%; }
#public #Casestudies h4 { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; }
#public #Casestudies h4 span { display: inline-block; width: 6em; padding: 0 10px; margin-right: 1.5em; color: #fff; font-size: 0.7em; text-align: center; background: #02362F; }
#public #Casestudies .c_TextBox span { display: inline-block; }
#public #Casestudies .slider, #public #Casestudies .slider2, #public #Casestudies .slider3, #public #Casestudies .slider4, #public #Casestudies .slider5, #public #Casestudies .slider6 { padding: 0 5px; }
#public #Casestudies .slick-track, #public #Casestudies .slick-img, #public #Casestudies .slick-slide, #public #Casestudies .slick-list, #public #Casestudies .draggable { margin-top: 0 !important; padding-top: 0 !important; height: auto !important; line-height: 0 !important; font-size: 0 !important; }
#public #Casestudies .slick-img img, #public #Casestudies .thumbnail-img img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
#public #Casestudies .thumbnail-img { cursor: pointer; margin: 0 5px; -webkit-transition: all .3s; transition: all .3s; }
#public #Casestudies .thumbnail-img:hover { opacity: 0.7; }

/* =========================================================
	会社案内
========================================================= */
#company #Access .Line { border-top: 1px solid #333; }
#company #Access p { line-height: 2em; }
#company #Access iframe { width: 100%; aspect-ratio: 4 / 2.3; }
#company #Access figure, #company #Access video { width: 100%; max-width: 600px; }
#company #Philosophy .Consider li { padding: 40px; background: #FFFDF6; }

/* =========================================================
	ESGの取り組み
========================================================= */
#esg p { line-height: 2em; }
#esg .Esg_Container { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-box-align: center; align-items: center; max-width: 800px; margin: 0 auto; }
#esg .Esg_Container .Esg_Row { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; width: 100%; }
#esg .Esg_Container .Esg_Row.bottom { margin-top: -8.5%; }
#esg .Esg_Container .Esg_Circle { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 51%; aspect-ratio: 1 / 1; padding: 4%; text-align: center; border-radius: 50%; }
#esg .Esg_Container .Esg_Circle.Environment { border-color: #F4F2EE; background-color: rgba(244, 242, 238, 0.9); }
#esg .Esg_Container .Esg_Circle.Social { margin-right: -1.5%; border-color: #DDD9C9; background-color: rgba(221, 217, 201, 0.9); }
#esg .Esg_Container .Esg_Circle.Governance { margin-left: -1.5%; border-color: #E8E5DC; background-color: rgba(232, 229, 220, 0.9); }
#esg .Esg_Container .Esg_Title { font-size: MIN(4vw, 38px); line-height: 100%; font-family: "Thasadith", sans-serif; font-weight: 900; font-style: normal; }
#esg .Esg_Container .Esg_Title span { font-size: 1.5em; }
#esg .Esg_Container .Esg_SubTitle { margin: 4% 0 2.5% 0; font-size: MIN(2.5vw, 18px); font-weight: 700; line-height: 100%; }
#esg .Esg_Container .Esg_Desc { margin-bottom: 4%; font-size: MIN(3vw, 22px); font-weight: 700; white-space: nowrap; font-family: "Zen Old Mincho", serif; }
#esg .Esg_Container .Esg_List { font-size: MIN(2vw, 15px); text-align: left; font-weight: 700; }
#esg .Esg_SDGs { padding: 40px; border-radius: 30px; background: #02362F; }
#esg .Esg_Contents .Header, #esg .Esg_Contents .Ico { display: -webkit-flex; display: flex; }
#esg .Esg_Contents .Header h3 { margin-right: 1em; font-weight: 900; line-height: 100%; letter-spacing: 4%; font-family: "Thasadith", sans-serif; font-weight: 900; font-style: normal; }
#esg .Esg_Contents .Header h3 i { display: block; font-weight: 700; line-height: 100%; }
#esg .Esg_Contents .Body img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
#esg .Esg_Contents .Body.c_Flex2 h4 { margin: 0 0 20px 0; }
#esg .Esg_Contents .Body.c_Flex4 h4 { margin: 20px 0; }

/* =========================================================
	オトノハコ
========================================================= */
#otonohako p { line-height: 2.2em; }
#otonohako #About .slider .slick-list { margin: 0 -10px; }
#otonohako #About .slider .slick-prev:before, #otonohako #About .slider .slick-next:before { content: "\25B2"; display: inline-block; width: 24px; height: 24px; line-height: 24px; color: #fff; font-size: 10px; text-align: center; border-radius: 50%; opacity: 1; }
#otonohako #About .slider .slick-prev:before { transform: rotate(-90deg); z-index: 10; }
#otonohako #About .slider .slick-next:before { transform: rotate(90deg); z-index: 10; }
#otonohako #Advantage .c_Flex3 img { display: block; margin: 0 auto; object-fit: cover; aspect-ratio: 1 / 1; border-radius: 50%; }

/* =========================================================
	ブログレイアウト：取扱商品・お知らせ・よくある質問
========================================================= */
#casestudies .c_anchorLink a:after, #news .c_anchorLink a:after { display: none; }

.NewsList li { margin-bottom: 50px; padding-bottom: 20px; border-bottom: 1px solid #333; }
.NewsList .Header { margin-bottom: 1.5em; }
.NewsList .Header div { display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; }
.NewsList .Header p { line-height: 100%; }
.NewsList .Header a:link, .NewsList .Header a:visited { padding: 3px; margin: 0 1em; color: #fff; text-align: center; background: #02362F; }
.NewsList .Header h2 { flex: 1; font-weight: 700; }
.NewsList .Contents img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; border: 1px solid #ddd; }
.NewsList .Contents p { margin-bottom: 20px; line-height: 2em; }
.NewsList .Contents .btn02 { margin: auto 0 0 auto; }

.Casestudies_List li { padding: 20px; background: #fff; border: 1px solid #333; }
.Casestudies_List img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; border: 1px solid #ddd; }
.Casestudies_List .Cat { display: inline-block; width: 120px; margin-top: 14px; padding: 3px 3px 4px 3px; color: #fff; font-size: 13px; text-align: center; background: #02362F; }
.Casestudies_List h2 { margin-top: 0.5em; }

#pager { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; margin-top: 3em; }
#pager a, #pager span { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; align-items: center; margin: 0 5px; color: #02362F; line-height: 100%; border: 1px solid #02362F; }
#pager a:hover, #pager span:hover { opacity: 1; color: #fff; background: #02362F; }
#pager span { color: #fff; background: #02362F; }
#pager .next, #pager .prev { border: none; font-weight: 700; }
#pager .next { margin-left: 0.5em; }
#pager .prev { margin-right: 0.5em; }

.Next_Links { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; border-top: 1px solid #02362F; }
.Next_Links a { display: inline-block; padding: 0.8em 1.5em; color: #fff; font-size: 0.9em; line-height: 100%; text-align: center; background: #02362F; }

.Casestudies_Detail .DayCat { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; margin-bottom: 1.5em; }
.Casestudies_Detail .DayCat a { display: inline-block; padding: 0.3em 2.5em; margin-left: 2em; color: #fff; text-align: center; background: #02362F; }
.Casestudies_Detail .Photo img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
.Casestudies_Detail .BeforeAfter { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; }
.Casestudies_Detail .BeforeAfter .box { position: relative; width: 100%; border: 1px solid #333; }
.Casestudies_Detail .BeforeAfter img { width: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
.Casestudies_Detail .BeforeAfter span { position: absolute; top: 0px; left: 0; width: 100%; padding: 0 0 5px 10px; color: #fff; font-weight: 700; background-color: rgba(0, 0, 0, 0.3); }
.Casestudies_Detail table { border-bottom: 1px solid #333; }
.Casestudies_Detail table tr { border-top: 1px solid #333; }
.Casestudies_Detail table th { width: 30%; padding: 10px 0; }
.Casestudies_Detail table td { width: 70%; padding: 10px 0; }
.Casestudies_Detail table h3, .Casestudies_Detail table p { line-height: 1.8em; }
.Casestudies_Detail table dd { float: left; width: 70%; }
.Casestudies_Detail .c_Flex2 li { border-bottom: 1px solid #333; }
.Casestudies_Detail .c_Flex2 p { padding: 20px 0; border-top: 1px solid #333; }

#single-casestudies .c_TextBox { background: url(../img/bg.png) no-repeat top left/cover; }
#single-casestudies .c_TextBox a { background-color: rgba(255, 255, 255, 0.3); }
#single-casestudies .Next_Links { border: none; }

#single-news .News_Detail .DayCat { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; margin-bottom: 1.5em; }
#single-news .News_Detail .DayCat a { display: inline-block; padding: 0.3em 2.5em; margin-left: 2em; color: #fff; text-align: center; background: #02362F; }
#single-news .News_Detail .Info_Contents { padding-top: 2.5em; border-top: 1px solid #02362F; }
#single-news .News_Detail .Info_Contents h1, #single-news .News_Detail .Info_Contents h2, #single-news .News_Detail .Info_Contents h3, #single-news .News_Detail .Info_Contents h4, #single-news .News_Detail .Info_Contents h5, #single-news .News_Detail .Info_Contents h6 { margin-bottom: 0.5em; font-weight: 700; }
#single-news .News_Detail .Info_Contents h1 { font-size: 160%; }
#single-news .News_Detail .Info_Contents h2 { font-size: 150%; }
#single-news .News_Detail .Info_Contents h3 { font-size: 140%; }
#single-news .News_Detail .Info_Contents h4 { font-size: 130%; }
#single-news .News_Detail .Info_Contents h5 { font-size: 120%; }
#single-news .News_Detail .Info_Contents h6 { font-size: 110%; }
#single-news .News_Detail .Info_Contents p { margin-bottom: 1em; }
#single-news .News_Detail .Info_Contents img { display: inline-block; margin-bottom: 1.5em; }
#single-news .News_Detail .Info_Contents img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
#single-news .News_Detail .Info_Contents img.alignright { display: block; margin-left: auto; }
#single-news .News_Detail .Info_Contents a { color: #0063b3; text-decoration: underline; }
#single-news .News_Detail .Info_Contents ul, #single-news .News_Detail .Info_Contents ol { margin: 0 0 1.5em 1.3em; }
#single-news .News_Detail .Info_Contents ul li { list-style-type: circle; }
#single-news .News_Detail .Info_Contents ol li { list-style-type: decimal; }

/* =========================================================
	プライバシーポリシー
========================================================= */
#privacy .c_w_Box a { text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; word-break: normal; }

/* =========================================================
	お問い合わせ
========================================================= */
#contact input[type="text"], #contact input[type="email"], #contact input[type="tel"], #contact input[type="file"], #contact textarea { width: 100%; margin: 0; font-weight: 400; box-shadow: none; border-radius: 0; background: #fff; border: 1px solid #909090; }
#contact input[type="file"] { border: none; padding: 0; }
#contact input[type="file"]::file-selector-button { margin-right: 10px; padding: 5px 20px; }
#contact .mfp_element_all { max-width: 100%; }
#contact #mfp_hidden input[type="submit"] { display: none !important; }
#contact .Contact_Tel { padding: 40px; border-radius: 30px; background: #DDD9C9; }
#contact .Contact_Tel a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; line-height: 100%; letter-spacing: 8%; font-weight: 900 !important; }
#contact .Contact_Tel a:before { content: ""; display: inline-block; margin-right: 0.2em; width: 1em; height: 1em; background: url(../img/ico_tel.svg) no-repeat center center/auto 100%; }
#contact .hissu, #contact .nini { display: inline-block; margin-right: 1em; padding: 5px 8px; color: #fff; font-size: 11px; font-weight: bold; line-height: 100%; border-radius: 5px; }
#contact .hissu { background: #d41c1c; }
#contact .nini { background: #bbb; }
#contact input[type="file"] { background: none !important; }
#contact .doui { padding-top: 2em; margin-bottom: 3em; }
#contact .doui #js-show-popup, #contact .doui a { cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
#contact .doui #js-show-popup:hover, #contact .doui a:hover { opacity: 0.7; }
#contact .doui .mfp_err { width: 25em; margin: 0 auto; }
#contact input[type="submit"] { margin: 0 auto; border: none; cursor: pointer; background: #DDD9C9; -webkit-transition: all .3s; transition: all .3s; }
#contact input[type="submit"]:hover { opacity: 0.7; }
#contact .mfp_err { color: #d41c1c; background-position: left center; }
#contact .popup { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 999999; display: none; }
#contact .popup-inner { position: absolute; left: 50%; top: 55%; transform: translate(-50%, -50%); background: #fff; padding: 80px 30px 30px 30px; max-width: 800px; width: 80%; max-height: 80vh; overflow-y: auto; box-sizing: border-box; }
#contact .popup-inner p { font-size: 15px; line-height: 1.8em; }
#contact .popup-inner a { text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; word-break: normal; }
#contact .close-btn { position: absolute; right: 15px; top: 15px; cursor: pointer; }
#contact #mfp_phase_confirm h4 { margin-bottom: 2.5em; text-align: center; }
#contact #mfp_phase_confirm #mfp_confirm_table th, #contact #mfp_phase_confirm #mfp_confirm_table td { border: none !important; }
#contact #mfp_phase_confirm #mfp_confirm_table th { font-weight: 700 !important; }
#contact #mfp_phase_confirm #mfp_confirm_table td { font-weight: 500 !important; }
#contact #mfp_phase_confirm .mfp_buttons { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; margin-top: 3em; }
#contact #mfp_phase_confirm .mfp_element_button { display: block; text-align: center; line-height: 100%; letter-spacing: 6%; vertical-align: middle; border: none; cursor: pointer; }
#contact #mfp_phase_confirm .mfp_element_button:hover { opacity: 0.7; }
#contact #mfp_phase_confirm #mfp_button_send { background: #DDD9C9; -webkit-transition: all .3s; transition: all .3s; }
#contact #mfp_phase_confirm #mfp_button_cancel { background: #bbb; margin-left: 1.5em; }
