/* ==== mob ==== */
@media screen and (max-width:767px){
body,th,td,input,select,textarea,button {font-size:12px; line-height:1.5;}
.inner {width:100%; padding:0 3%;}
.pc {display:none !important;}
.tab {display:none}
.mob {display:block !important;}
.pc_img {display:none !important;}
.mob_img {display:block !important;}

body,th,td,input,select,textarea,button {font-size:13px; line-height:20px;}

/* === Main === */
#wrap {position:relative; width:100%; max-width:1024px; min-width:auto; margin:0 auto; overflow:hidden;}

#header h1 {top:20px;}
#header h1 a img {width: 135px;}

.navi {position: fixed; top:0; left:0; width: 100%; height:100%; background:rgba(0,0,0,.5); z-index:999; display:none;}
.navi .navi_wrap {float: right; width: 65%; height:100%; background:#fff; display:block; position:relative; padding: 100px 3% 0;}
.navi .lnb h3 {font-size: 18px; line-height: 1; padding-bottom: 10px; width: 100%; font-weight: 600; margin-top: 30px;}
.navi .lnb h3:first-child {margin-top: 0;}
.navi .lnb h3 a {color: #111; display:block; width:100%; height:100%;}

.navi .lnb .sub_navi {margin-top: 20px; padding-left: 10px;}
.navi .lnb .sub_navi li {margin-bottom: 3px; font-size: 15px; margin-bottom: 15px; font-weight: 500;}
.navi .lnb .sub_navi li:last-child {margin-bottom: 0;}
.navi .lnb .sub_navi li a {color: #777;}

.navi_btn {display:block; position:absolute; top:25px; right:3%; width:26px; height:23px; cursor:pointer; transition:0.3s ease-in-out; z-index:9999;}
.navi_btn span {position:absolute; left:0; display:block; width:26px; height:3px; background:#fff;  transition:0.3s ease-in-out 0.2s;}
.navi_btn span.line01 {top:0;}
.navi_btn span.line02 {top:9px;}
.navi_btn span.line03 {top:18px;}
.navi_btn.on {transform:rotate(-45deg); transition:0.3s ease-in-out 0.2s; }
.navi_btn.on span {top:50%; margin-top:-2px; transition:0.3s ease-in-out;} 

#header .tel {right: 12%; top: 19px;}
#header .tel img {display: inline-block; margin-right: 5px; padding-top: 4px; width: 30px;}
#header .tel .txt span {font-size: 13px; margin-bottom: 3px;}
#header .tel .txt p {font-size: 24px; letter-spacing: 1.8px;}


#main_visual .mv_list li .inner span {font-size: 20px; margin-bottom: 25px;}
#main_visual .mv_list li .inner h2 {font-size: 35px; line-height: 55px;}

#main_visual .mv_list li .inner button {width: 220px; height: 50px; border-radius: 25px; margin-top: 40px;}
#main_visual .mv_list li .inner button a {padding: 0 25px; position: relative;}
#main_visual .mv_list li .inner button p {color: #fff; font-size: 16px; line-height: 50px;}
#main_visual .mv_list li .inner button img {position: absolute; right: 25px; top: 17px; width: 28px;}


#main_visual img.scroll {bottom: 30px; width: 45px;}

#main_visual .mv_list .slick-dots {bottom: 60px;}

#con2 {padding: 70px 0 80px;}
#con2 h2 {font-size: 26px; line-height: 38px; margin-bottom: 30px;}
#con2 .c2_list {display: block; margin-bottom: 40px;}
#con2 .c2_list li {width: 100%; padding: 30px; margin-bottom: 20px;}
#con2 .c2_list li:last-child {margin-bottom: 0;}
#con2 .c2_list li span {display: block; font-size: 20px; margin-bottom: 15px;}
#con2 .c2_list li p {font-size: 15px; line-height: 27px;}
#con2 .c2_list li p br {display: none;}
#con2 img.con2_img {width: 100%;}

#con2 button {width: 300px; height: 50px; border-radius: 25px; margin-top: 40px;}
#con2 button a {padding: 0 25px;}
#con2 button a p {font-size: 16px; line-height: 51px;}
#con2 button a img {right: 25px; top: 17px; width: 28px;}


#con3 {height: auto; padding: 70px 0;}
#con3 span {font-size: 18px; line-height: 1; margin-bottom: 20px;}
#con3 h2 {font-size: 36px; line-height: 1;}
#con3 > p {font-size: 16px; line-height: 30px; margin: 30px 0 45px;}

#con3 button {width: 240px; height: 50px; border-radius: 25px; margin: 0 auto;}
#con3 button a {padding: 0 25px;}
#con3 button a p {font-size: 16px; line-height: 51px;}
#con3 button a img {right: 25px; top: 17px; width: 28px;}


#footer {padding: 40px 0;}
#footer img.foot_logo {width: 140px; margin-bottom: 20px;}
#footer .txt p:first-child {font-size: 14px; line-height: 28px;}
#footer .txt p:first-child br {display: none;}
#footer .txt p:first-child span {margin: 0 6px;}
#footer .txt p.copyright {font-size: 14px; margin-top: 20px;}


/* === Sub === */
#sub_visual {height: 280px; padding-top: 120px;}

#sub_visual .loc li {margin-right: 25px; font-size: 14px;}
#sub_visual .loc li::after {right: -18px; top: 4px;}

#sub_visual h2 {font-size: 40px; margin-top: 30px;}


/* === Sub 01 === */
#greet_wrap {padding-top: 70px;}
#greet_wrap .inner > span {font-size: 16px; margin-bottom: 30px;}
#greet_wrap .inner > span::after {width: calc(100% - 90px); left: 90px; top: 7px;}
#greet_wrap .title h2 {font-size: 25px; line-height: 38px; margin-bottom: 20px;}
#greet_wrap .title .txt p {font-size: 16px; line-height: 28px; color: #454545; margin-bottom: 20px;}
#greet_wrap .title .txt p br {display: none;}

#greet_wrap .greet_bottom {padding: 60px 0 70px; margin-top: 60px;}
#greet_wrap .greet_bottom .g_list li {margin-bottom: 15px; padding: 25px; border-radius: 30px;}
#greet_wrap .greet_bottom .g_list li em {font-size: 18px;}
#greet_wrap .greet_bottom .g_list li p {font-size: 16px; line-height: 28px; margin-top: 15px;}

#greet_wrap .greet_bottom .inner > p {font-size: 16px; line-height: 28px; margin-top: 40px;}


#organ_wrap {padding: 60px 0 80px;}
#organ_wrap > .inner > img {margin-bottom: 40px;}


.organ_table {border-top: 2px solid #133379; width: 100%;}
.organ_table th {height: 45px; font-size: 14px;}
.organ_table td {height: 45px;font-size: 14px;}

.organ_table th.gray {font-size: 13px;}

#organ_wrap h4 {font-size: 25px; margin: 60px 0 30px;}

#after_wrap {padding: 60px 0 80px;}
#after_wrap h3 {font-size: 28px; margin: 60px 0 30px;}

#after_wrap .a_box {padding: 30px 3%;}
#after_wrap .a_box p {font-size: 16px; line-height: 30px;}

#after_wrap .a_list {display: flex; flex-wrap:wrap;}
#after_wrap .a_list li {width: 100%; margin-right: 0; padding: 25px; margin-top: 2%;}
#after_wrap .a_list li:nth-child(-n+2) {margin-top: 2%;}
#after_wrap .a_list li:first-child {margin-top: 0;}
#after_wrap .a_list li span {font-size: 20px; margin-bottom: 15px;}
#after_wrap .a_list li p {font-size: 16px; line-height: 30px;}

#after_wrap .a_compete .a_con {display: block; margin-bottom: 35px;}
#after_wrap .a_compete .a_con img {display: block; width: 100%;}
#after_wrap .a_compete .a_con .txt {width: 100%; padding-left: 0; margin-top: 30px;}
#after_wrap .a_compete .a_con .txt h4 {font-size: 23px; margin-bottom: 15px;}
#after_wrap .a_compete .a_con .txt p {font-size: 16px; line-height: 30px;}


/* === Sub 02 === */
#product_wrap {padding: 60px 0 80px;}
#product_wrap h3 {font-size: 28px; margin-bottom: 30px;}


.pd_table tr {border-bottom: 4px solid #fff;}
.pd_table th {font-size: 13px; padding: 15px 0; border-right: 4px solid #fff;}
.pd_table td {padding: 15px 10px; border-right: 4px solid #fff;}

.pd_table td.tit_01 {padding: 15px 0; font-size: 15px;}
.pd_table td.tit_02 {padding: 15px 0; font-size: 15px;}

.bullet li {font-size: 13px; line-height: 22px; margin-bottom: 15px; padding-left: 10px;}
.bullet li::before {width: 4px; height: 4px; top: 8px;}
.bullet li.point {color: #133379;}
.bullet li.point::before {top: 8px;}


.pd_table tr.price td {padding: 15px 0; font-size: 16px;}
.pd_table tr.price td span {font-size: 13px; margin-right: 0; display: block;}
.pd_table tr.price td p {display: block;}
.pd_table tr.price td p::after {width: 90px; height: 9px; left: 50%; top: 6px; transform: translateX(-50%);}
.pd_table tr.price td em {display: block; font-size: 13px; margin-top: 5px;}

.pd_table tr .point {align-items: flex-start;}
.pd_table tr .point img {width: 24px; margin-right: 10px;}


#product_wrap p.point_p {margin-top: 30px; font-size: 16px; line-height: 28px; padding-left: 20px;}
#product_wrap p.point_p::before {width: 11px; height: 14px; background: url(../images/sub/tri_big.png) no-repeat center center / cover; top: 5px;}


#pro_de_wrap {padding: 60px 0 80px;}
.pd_top {font-size: 0; margin-bottom: 40px;}
.pd_top img {display: block; width: 100%;}
.pd_top .title {display: block; width: 100%; margin-top: 30px;}
.pd_top .title h3 {font-size: 24px; line-height: 38px; padding-bottom: 15px; margin-bottom: 15px;}
.pd_top .title h3 br {display: none;}
.pd_top .title p {font-size: 16px; line-height: 28px;}

.pd_con {display: block;}
.pd_con > li {width: 100%; margin-right: 0; margin-top: 15px; padding: 30px 20px;}
.pd_con > li:nth-child(2n) {margin-right: 0;}
.pd_con > li:nth-child(-n+2) {margin-top: 15px;}
.pd_con > li:first-child {margin-top: 0;}
.pd_con > li:nth-child(2) {border: 0; background: #F7F7F7;}
.pd_con > li:nth-child(3) {border: 1px solid #ddd; background: none;}
.pd_con > li:nth-child(4) {border: 0; background: #F7F7F7;}

.pd_con > li h4 {font-size: 18px; margin-bottom: 20px;}
.pd_con > li h4 span {margin-right: 10px;}

.num_list li {margin-bottom: 10px;}
.num_list li em {margin-right: 10px; font-size: 14px; line-height: 22px; width: 22px; height: 22px; margin-top: 3px;}
.num_list li p {width: calc(100% - 32px); font-size: 14px; line-height: 26px; color: #454545;}

.pd_con > li .bullet li {margin-bottom: 10px; font-size: 14px;}

.pd_con > li:nth-child(2) .num_list {margin-top: 20px;}
.pd_con > li:nth-child(2) .num_list li {margin-bottom: 8px;}


/* === Sub 03 === */

#obituary_wrap {padding: 60px 0 80px;}
#obituary_wrap h3 {font-size: 26px; margin-bottom: 30px;}
#obituary_wrap .inner > p {font-size: 15px; margin-bottom: 10px;}

.ob_table {margin-bottom: 30px;}
.ob_table tr {border-bottom: 1px solid #ddd;}
.ob_table th {height: 50px; font-size: 13px;}
.ob_table td {height: 50px; font-size: 13px;}


ul.paging li{margin-right: 2px; margin-bottom: 2px;}
ul.paging li a {width: 30px; height: 30px; line-height: 30px; font-size: 12px;}
ul.paging li.on a {color:#fff; border: 0; background:#5B71A2;}


/* === Sub 04 === */

#online_consult {padding: 60px 0 80px;}
#online_consult .inner > p {font-size: 16px; line-height: 28px; margin-bottom: 15px;}


.contact_list li {float: none; width: 100%; padding: 15px 0;}
.contact_list li:first-child {margin-right: 0; border-bottom: 1px solid #ddd;}
.contact_list li:last-child {width: 100%; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd;}

.contact_list li span {float: left; width: 90px; line-height: 50px; font-size: 16px;}
.contact_list li input {float: left; width: calc(100% - 90px); height: 50px; border: 1px solid #ddd; padding-left: 15px;}
.contact_list li textarea {float: left; width: calc(100% - 90px); height: 250px; border: 1px solid #ddd; padding: 15px;}

.privacy {margin-top: 20px;}
.privacy textarea {height: 110px; padding: 15px; font-size: 13px; line-height: 24px;}
.privacy .checkbox {margin-top: 10px;}
.privacy .checkbox span {margin-left: 5px; font-size: 13px;}

#online_consult .submit_btn {margin-top: 40px; width: 280px; height: 50px; border-radius: 25px; font-size: 16px;}


#qna_wrap {padding: 60px 0 80px;}
#qna_wrap h3 {font-size: 28px; margin-bottom: 25px;}
#qna_wrap .inner > p {font-size: 16px; margin-bottom: 40px;}

.q_list li {margin-bottom: 15px;}
.q_list li .question {height: auto; border-radius: 25px; padding: 15px 20px; min-height: auto;}
.q_list li .question h4 {font-size: 16px; line-height: 28px;}

.q_list li .answer {padding: 30px 20px; border-radius: 25px; display: none; transition: 0.5s ease-in-out;}
.q_list li .answer span {font-size: 18px; margin-bottom: 10px;}
.q_list li .answer p {font-size: 15px; line-height: 28px; margin-bottom: 10px;}
.q_list li .answer p:last-child {margin-bottom: 0;}
.q_list li .answer p b {color: #133379;}

.q_list li.on .question {background: #133379;}
.q_list li.on .question h4 {color: #fff; font-weight: bold;}

.q_list li.on .answer {display: block;}





}
