@charset "utf-8";

@import url("setting.css");

a{ color:#352f2d; text-decoration:none; transition:0.2s all;}
a:hover{ color:#a31d1f; text-decoration: none;}
a:focus{ text-decoration: none;}

p{ line-height: 1.5em; }

main{ }

.container{ max-width: 1440px; padding: 0 20px; }
.container.w2{ max-width: 1031px; }
.container.w3{ max-width: 808px; }

/*** CNT ***/
.float_ul{ width: 120px; position: fixed; bottom: 50px; right: 20px; z-index: 10; }
.float_ul p{ text-indent: -9999px;}

section{ padding: 0px 0; position: relative; }

#s01 .lg{ display: block; }
#s01 .sm{ display: none; }

#s02{ padding: 100px 20px; background: url('../../img/bg-sec_02.png') center center no-repeat; background-size: cover; text-align: center; }
#s02 .join_wrap{ width: calc(100% - 40px); position: absolute; top: -3.02vw; text-align: center; display: none; }
#s02 .join_wrap img{ width: 15.6vw; }

#s03{ padding: 100px 20px; background: url('../../img/bg-sec_03.png') center center no-repeat; background-size: cover; text-align: center; }
#s03 .cap{ margin: 40px -20px; padding-bottom: 10px; background: url('../../img/pic-sec_03_02_bg.png') left bottom no-repeat; background-size: auto 66px; text-align: center; }
#s03 .cap img{ width: auto; max-height: 100%; }
#s03 .thumb{ margin: 50px auto; text-align: center; }
#s03 .thumb img{ max-width: 100%; height: auto; }
#s03 .thumb .lg{ display: inline-block; }
#s03 .thumb .md{ display: none; }
#s03 .thumb .sm{ display: none; }
#s03 .btn{ margin-top: -80px; text-align: center; }
#s03 .btn a{ margin: 0 20px; display: inline-block; }

#s04{ padding: 100px 20px; background: url('../../img/bg-sec_04.png') center center no-repeat; background-size: cover; text-align: center; }
#s04 img{ width: 100%; max-width: 1600px !important; }
#s04 img:first-child{ width: 300px; margin-bottom: 80px; }
#s04 .lg{ display: inline-block; }
#s04 .md{ display: none; }
#s04 .sm{ display: none; }

#s05 a{ position: absolute; bottom: 50px; right: 40px; }
#s05 .lg{ display: inline-block; }
#s05 .sm{ display: none; }

#s06{ padding: 100px 20px; background: url('../../img/bg-sec_06.png') center top no-repeat; background-size: cover; }
#s06 h2{ margin-bottom: 20px; color: #40220f; font-size: 3em; font-weight: 700; text-align: center; }
#s06 span{ width: 100%; max-width: 1600px; height: 945px; margin: 0 auto; display: flex; }
#s06 span:nth-child(2){ background: url('../../img/pic-sec_06_01.png') left center no-repeat; background-size: auto 100%; align-items: center; justify-content: flex-end; }
#s06 span:nth-child(3){ background: url('../../img/pic-sec_06_02.png') right center no-repeat; background-size: auto 100%; align-items: center; justify-content: flex-start; }
#s06 span .txt{ width: 50%; color: #40220f; display: flex; flex-wrap: wrap; }
#s06 span .txt .name{ width: 100%; font-size: 4em; font-weight: 700; }
#s06 span .txt .cnt{ width: 100%; font-size: 1.25em; text-align: justify; }
#s06 span:last-child .txt .name{ order: 2; text-align: right; }

#s07{ margin-bottom: -5px; }

#s08{ padding: 100px 20px; background: #cec6e2; text-align: center; }
#s08 img:first-child{ width: 300px; margin-bottom: 80px; }
#s08 .cnt{ max-width: 1600px; margin: 0 auto; padding: 50px; background: rgba(255, 255, 255, .25); border-radius: 50px; text-align: left; position: relative; }
#s08 .cnt .cap{ padding: 30px 30px; font-size: 2.5em; color: #40220f; font-weight: 700; background: url('../../img/pic-bg_cap.png') left center no-repeat; background-size: 150px auto; }
#s08 .cnt .star{ background: url('../../img/pic-sec_star.png') center center no-repeat; background-size: cover; }
#s08 .cnt .star.s1{ width: 70px; height: 70px; position: absolute; top: -20px; right: 80px; }
#s08 .cnt .star.s2{ width: 100px; height: 100px; position: absolute; top: 50%; right: 30px; }
#s08 .cnt .star.s3{ width: 50px; height: 50px; position: absolute; bottom: -20px; left: 300px; }
#s08 .cnt ol{ margin: 0 40px; font-size: 1.25em; }
#s08 .cnt ol li{ margin-bottom: 10px; }
#s08 .btn{ margin: 30px 0 0 0; }
#s08 .btn a{ display: block; }
#s08 .btn a img{ width: 400px; margin: 0; }
#s08 .btn span{ color: #444; font-size: 1.25em; line-height: 1.5em; display: block; }

footer{ padding: 40px 20px; color: #fff; background: #bd90c0; text-align: center; position: relative; }
.footer_wrap{ max-width: 1600px; margin: 0 auto; position: relative; }
.footer_wrap p{ margin-top: 30px; }

.v-container{ width: 100%; height: 0; margin: 0 auto; padding-bottom: 56.25%; position: relative; }
.v-container video{ width: 100%; height: 100%; position: absolute; top:0; left: 0;}
video{ width: 100%; height: auto; aspect-ratio: 16 / 9; }
/*** /CNT ***/

/*** CAPTCHA ***/
.captcha_wrap{ float: left; margin: 0px 32px 0 0px; }
.captcha_wrap2{ overflow: hidden; }
#captcha_code{ float: left; width: 100px; text-align: center; }

.refresh a{ float: left; width: 46px; height: 46px; margin-left: 5px; font-weight: 700; font-size: 1.8em; line-height: 1.45em; border: 1px solid #ccc; border-radius: 5px; display: inline-block; text-align: center; }
/*** /CAPTCHA ***/

/*** BTN ***/
.btn{ padding: 13px 30px 15px 30px; font-weight: 700; line-height: 1em; border-width: 1px; border-radius: 10px; }
.btn_wrap{ width: 100%; margin:30px 0 0 0; }

.btn-primary{ color: #fff; background: #595757; border-color: #595757; border-radius: 0; }
.btn-primary:hover, .btn-primary:focus{ color: #fff !important; background: #333 !important; border-color: #333 !important; }

.btn-warning{ color: #fff; background: #ffa618; border-color: #ffa618; }
.btn-warning:hover, .btn-warning:focus{ color: #ffa618 !important; background: #fff !important; border-color: #ffa618 !important; }

.btn-outline-primary{ color: #a31d1f; background: #fff; border-color: #a31d1f; }
.btn-outline-primary:hover, .btn-outline-primary:focus{ color: #fff !important; background: #a31d1f; border-color: #a31d1f; }

.btn-outline-light{ color: #fff; background: none; border-color: #fff; }
.btn-outline-light:hover, .btn-outline-light:focus{ color: #fff !important; background: #a31d1f; border-color: #a31d1f; }

#q_btn button:hover, #q_btn button:focus{ background: #a31d1f !important; border-color: #a31d1f !important;}

.btn_wrap.chk .btn{ margin: 5px 10px; }
/*** /BTN ***/

/*** COLOR ***/
.color01{ color: #a31d1f; }
.color02{ color: #ff6500; }
.color03{ color: #f5b65c; }
.color04{ color: #07387d; }
.color_note, .color_note a{ color: #a31d1f; }
.color_note a:hover{ text-decoration: underline; }

.border_red_r{ margin-right: 10px; padding-right: 10px; border-right: 2px solid #a31d1f; }
/*** /COLOR ***/

/*** FORM ***/
/*** /FORM ***/

/*** MARGIN PADDING ***/
.mt-0{ margin-top: 0; }
.mt-10{ margin-top: 10px; }
.mt-20{ margin-top: 20px; }
.mt-30{ margin-top: 30px; }
.mt-40{ margin-top: 40px; }
.mt-50{ margin-top: 50px; }

.mb-0{ margin-bottom: 0; }
.mb-10{ margin-bottom: 10px; }
.mb-20{ margin-bottom: 20px; }
.mb-30{ margin-bottom: 30px; }

.pl-0{ padding-left: 0; }
.pr-0{ padding-right: 0; }
/*** /MARGIN PADDING ***/

/*** POPOVER ***/
[data-bs-toggle="popover"]{ cursor: pointer; }
.popover{ padding:5px; border: 5px solid #ccc; border-radius: 10px; }
.popover-arrow{ display: none !important; }
/*** /POPOVER ***/

/*** MODAL ***/
.modal-header{ color: #fff; background: #bd90c0; border-radius: 0px; }
.modal-content{ border-radius: 0; }
.modal-body{ border-radius: 0;}
.modal-body input, .modal-body select{ margin: 0 0 10px 0 !important; border-radius: 0px; }
.modal-body article{ margin-bottom: 40px; }
.modal-body article:last-child{ margin-bottom: 0px; }
.modal-open{ padding-right: 0 !important; }
.modal { z-index: 1031 !important;}
.modal-backdrop { z-index: 1030 !important;}

#ulModal .btn-close{ padding: 10px; background-color: #bd90c0; border-radius: 0; position: absolute; top: 0; right: 0; }
#ulModal .modal-content{ background:#fff url('../../img/bg-modal.png') center top no-repeat; background-size: cover; border-radius: 0; }
#ulModal .modal-body{ background: url('../../img/bg-modal_border.png') center top 10px no-repeat; background-size: 95% auto; border-radius: 0;}

.modal-body.ul{ padding: 120px 30px 30px 30px; position: relative; }
.form_col{ max-width: 500px; margin: 10px auto; overflow: hidden; }
.form_col label{ float: left; width: 130px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; text-align-last: justify; }
.form_col label p{ width: 100%; margin-right: 20px; font-size: 1.25em; line-height: 1.45em; }
.form_col label span{ width: 100%; margin-right: 20px; font-size: .875em; font-weight: 400; line-height: 1em; }
.form_col:nth-child(1) label span{ letter-spacing: 23px; text-indent: 10px; }
.form_col:nth-child(2) label span{ letter-spacing: 23px; text-indent: 10px; }
.form_col:nth-child(3) label span{ letter-spacing: 4px; text-indent: 1px; }
.form_col:nth-child(4) label span{ letter-spacing: 11px; text-indent: 0px; }
.form_col:nth-child(5) label span{ letter-spacing: 9px; text-indent: 9px; }
.form_col:nth-child(6) label span{ letter-spacing: 4px; text-indent: 1px; }
.form_col:nth-child(7) label span{ letter-spacing: 8px; text-indent: 8px; }
.form_col input{ float: left; width: calc(100% - 130px); background: rgba(255, 255, 255, .5); border-radius: 10px; }
/*** /MODAL ***/


@media screen and (-webkit-min-device-pixel-ratio:0) { /* Chrome */
}

@media all and (-ms-high-contrast:none){ /* IE 11 */
     *::-ms-backdrop, .label_name{ }
}

@supports (display:-ms-grid) { /* Edge */
}