/* wrap */
#wrap {position: relative;padding: 1em 0 10vw;background-image: url(/images/01/layoutbg.jpg);background-repeat: repeat-y;background-size: 100%;background-position: 50% 50%;}

/* sub_banner */
#sub_banner { position: relative; }
#sub_banner .banner_img { position: relative; display: block; z-index: 1; }
#sub_banner .banner_img:before {position: absolute;width: 100%;height: 100%;display: block;top: 0;left: 0;z-index: 2;content: "";background: linear-gradient(
0deg, rgb(255 255 255 / 0%), rgba(255 255 255 / 80%));}
#sub_banner .banner_img img {position: relative;width: 100%;height: 490px;}
#sub_banner .banner_txt {position: absolute;height: 100%;display: flex;flex-direction: column;justify-content: flex-end;align-items: center;top: 0;left: 50%;-webkit-transform: translateX(-50%);transform: translateX(-50%);z-index: 3;}
#sub_banner .banner_txt h1 {position: relative;padding-bottom: .3em;letter-spacing: .1em;text-align: center;color: #35431d;font-size: 27px;font-weight: 600;margin-top: 10px;}
#sub_banner .banner_txt h1:before{content:'';display: block;width: 1px;height: 70px;margin: 50px auto 10px;background: #35431d;opacity: .25;}
#sub_banner .banner_txt h2 {padding-top: 1.3em;line-height: 1;letter-spacing: .05em;text-align: center;text-transform: uppercase;background: linear-gradient(90deg, var(--primary), #d89f2c);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;color: transparent;font-weight: 800;font-size: max(4 * (1vw + 1vh) / 2, 30px);order: -1;}

/* sidebar_left */
.sidebar_left { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sidebar_left .breadcrumb { width: 100%; }

/* breadcrumb */
.breadcrumb {margin-bottom: 2em;display: flex;flex-wrap: wrap;align-items: center;justify-content: center;background: none;}
.breadcrumb .breadcrumb_item {margin: .2em 0;line-height: 1;font-weight: 400;color: var(--g_800);}
.breadcrumb .breadcrumb_item:before {margin: 0 1em;font-family: 'FontAwesome';font-weight: 300;color: var(--g_300);content: "‧";}
.breadcrumb .breadcrumb_item:first-child:before { margin: 0; content: ""; }
.breadcrumb .breadcrumb_item a { line-height: 1; font-weight: 300; color: var(--g_400); }
.breadcrumb .breadcrumb_item:last-child a { font-weight: 400; color: var(--g_800); }

/* aside */
aside .widget_title { margin-bottom: 1em; display: flex; }
aside .widget_title .icon_bar { margin-right: .5em; width: 1.3em; display: flex; flex-direction: column; }
aside .widget_title .icon_bar:before , aside .widget_title .icon_bar:after { margin-top: .2em; width: 100%; height: 1px; background: var(--g_600); display: block; content: ""; }
aside .widget_title .icon_bar:after { width: .8em; }
aside .widget_title font { text-transform: uppercase; line-height: 1; font-weight: 500; font-size: 1.1em; }
aside #category_nav >li { border-bottom: 1px var(--g_200) solid; }
aside #category_nav >li:last-child { border-bottom: 0; }
aside #category_nav li .h4 , aside #category_nav li .subULHead { position: relative; }
aside #category_nav li a {padding: .8em .5em;display: block;font-weight: 400;}
aside #category_nav li b[data-action="sideOpen"] { position: absolute; padding: .2em .8em; right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
aside #category_nav li .subUL , aside #category_nav li .sub2UL { margin: 0 0 .5em 1em; display: none; -webkit-transition: none; -moz-transition: none; transition: none; }
aside #category_nav li .sub2UL { margin: 0 .5em 0 0; padding: .5em; background: color-mix(in srgb, var(--g_100) 40%, white); }
aside #category_nav li .sub2ULHead a { padding: .1em .5em; color: var(--g_600); }
aside #category_nav li.action .h4 a { color: var(--primary); }
aside #category_nav li.action >.subUL , aside #category_nav li.action >.sub2UL { display: block; }

/* detail_box */
.detail_box * { font-size: initial; color: unset; vertical-align: baseline; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }

/* content_wrap */
#content_wrap .h2tit{color:#35431d;font-weight: 600;}
#content_wrap .time { font-size: .9em; color: var(--g_500); }
#content_wrap .more_btn { padding: 0 .2em; border-bottom: 2px var(--g_800) solid; font-weight: 500; }
#content_wrap .view_share { margin-top: 2em; padding: 1em 0; border: var(--g_100) solid; border-width: 1px 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
#content_wrap #community { display: flex; align-items: center; }
#content_wrap #community .title { margin-right: .5em; color: var(--g_400); }
#content_wrap #community >div { margin-left: .5em; height: 1.3em; }
#content_wrap #community >div .fb_iframe_widget { display: flex; }

/* list_style */
.list_style li { margin-bottom: 1em; display: flex; flex-wrap: wrap; align-items: stretch; border: 1px var(--g_100) solid; }
.list_style li .img_box { position: relative; width: 350px; }
.list_style li .img_box img { width: 100%; height: 100%; aspect-ratio: 3/2; }
.list_style li .img_box:before { position: absolute; border-top: 4px solid rgba(255, 255, 255, .6); border-bottom: 4px solid rgba(255, 255, 255, .6); top: 6px; right: 50%; bottom: 6px; left: 50%; content: ""; }
.list_style li .img_box:after { position: absolute; border-left: 4px solid rgba(255, 255, 255, .6); border-right: 4px solid rgba(255, 255, 255, .6); top: 50%; right: 6px; bottom: 50%; left: 6px; content: ""; }
.list_style li .info_box { padding: 2% 3%; width: 1%; flex: 1 1 auto; }
.list_style li .info_box h3 { margin: 0 0 .5em; }
.list_style li .info_box article { margin-bottom: .5em; height: 3.2em; font-size: .9em; color: var(--g_600); -webkit-line-clamp: 2; }

/* grid_style */
.grid_style { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 1.3em; }
.list_style.grid_style li { margin-bottom: 0; }
.list_style.grid_style li .img_box { width: 45%; }
.list_style.grid_style li .info_box { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }

/* news_list */
.news_list{display:grid;grid-template-columns: repeat(3, 1fr);gap: 40px;}
.news_list img{aspect-ratio:4/3;width: 100%;}
.news_list .info_box{margin-top:1em;display: grid;gap: 5px;}
.news_list .info_box .h3{-webkit-line-clamp:2;height: 63px;color: #35431d;font-size: 20px;}
.news_list .info_box article{font-size:15px;color: var(--g_500);-webkit-line-clamp: 2;height: auto;margin-top: 10px;}

/* faq_list */
#faq_list li {margin-bottom: 1em;border-bottom: 1px var(--g_100) solid;}
#faq_list li .title { display: flex; padding: 1em 1.5em; justify-content: space-between; align-items: stretch; }
#faq_list li .title .txt {margin-right: 2%;width: 1%;flex: 1 1 auto;font-weight: 500;font-size: 18px;display: flex;align-items: center;height: auto;gap: 10px;}
#faq_list li:hover .title .txt{color:var(--primary)}
#faq_list li .title .txt b{color: white;background:var(--primary);width: 40px;aspect-ratio: 1/1;display: inline-flex;border-radius: 50%;align-items: center;justify-content: center;font-weight: 400;}
#faq_list li .title .icon { position: relative; width: 2em; }
#faq_list li .title .icon:before , #faq_list li .title .icon:after { position: absolute; width: 40%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); content: ""; }
#faq_list li .title .icon:after { -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); }
#faq_list li .info {padding: 1em 4.5em 2em;}
#faq_list li.current .title .icon:after { -webkit-transform: translate(-50%, -50%) rotate(180deg); transform: translate(-50%, -50%) rotate(180deg); }
#faq_list li .info li{border:0;margin: 5px 0;}

/* pagenav */
#pagenav { margin-top: 2em; display: flex; justify-content: center; align-items: center; }
#pagenav >* { margin: 0 .2em; width: 35px; aspect-ratio: 1/1; display: flex; justify-content: center; align-items: center; border: 1px var(--g_200) solid; border-radius: 50%; }
#pagenav * { line-height: 1; color: var(--g_600); }
#pagenav strong { background: var(--primary); border-color: var(--primary); line-height: 1.7; color: white; }
#pagenav i { -webkit-transform: translateY(-.05em); transform: translateY(-.05em); }
#pagenav i.fa-angle-double-left:before { content: "\f104"; }
#pagenav i.fa-angle-double-right:before { content: "\f105"; }

/* newpagenav */
#newpagenav{margin-top: 70px;display: grid;grid-template-columns: repeat(2, 1fr);gap: 50px;position: relative;}
#newpagenav:before{content:'';position: absolute;left: 50%;width: 1px;height: 100%;background: #e3e3e3;}
#newpagenav p{margin:0;width: auto;}
#newpagenav a{margin:0;padding: 0;}
#newpagenav p a {margin: 15px 0 0;padding: 0;width: auto;height: auto;line-height: initial;font-size: 0;display: inline-flex;align-items: center;gap: 15px;}
#newpagenav p:last-child {text-align: end;}
#newpagenav i{width: 15px;font: normal normal normal 26px / 1 FontAwesome;}
#newpagenav font{-webkit-line-clamp:2;height: auto;font-size: 17px;max-width: max-content;font-weight: 400;}
#newpagenav a:hover font, #newpagenav a:hover i{color: #8f8c89;}
#newpagenav p:last-child font, #newpagenav p:last-child font span{text-align:end}
#newpagenav span{display:block;font-size: 17px;}


@media screen and (min-width: 1161px){
    aside .widget_title{display:none;}
	.sidebar_left aside {width: 250px;}
	.sidebar_left #content_wrap {margin-left: 3%;width: 1%;flex: 1 1 auto;}
	.list_style li:hover .img_box:before { left: 10px; right: 10px; }
	.list_style li:hover .img_box:after { top: 6px; bottom: 6px; }
	#search_list { grid-template-columns: repeat(3, 1fr); }
	#pagenav a:hover { background: var(--primary); border-color: var(--primary); color: white; }
	#pagenav a:hover * { color: white; }
}
@media screen and (max-width: 1160px){
	aside {margin-bottom: 2em;position: relative;}
	aside .widget_title {width: 250px;margin-bottom: 0;padding: .8em 1.5em;background: var(--primary);display: inline-flex;align-items: center;cursor: pointer;}
	aside .widget_title .icon_bar { margin-right: 0; height: 1.3em; border-bottom: 2px white solid; justify-content: space-evenly; -webkit-transform: translateY(-2px); transform: translateY(-2px); }
	aside .widget_title .icon_bar:before , aside .widget_title .icon_bar:after { margin-top: 0; height: 2px; background: white; }
	aside .widget_title font { font-size: 0; }
    aside #category_nav li a{padding: .8em;}
	aside .widget_title font:before {margin-left: .8em;letter-spacing: .12em;font-size: 16px;color: white;content: attr(data-name);font-weight: 400;}
	aside #category_nav { position: absolute; padding: .5em 0; width: 250px; background: white; box-shadow: 0 .2em 1em 0 rgba(0, 0, 0, .1); z-index: 5; left: 0; opacity: 0; visibility: hidden; -webkit-transform: translateY(50px); transform: translateY(50px); pointer-events: none; }
	aside[data-type="1"] #category_nav {opacity: 1;visibility: visible;-webkit-transform: translateY(0);transform: translateY(0);pointer-events: auto;margin-top: 0;padding: 0;}
	#content_wrap { max-width: 100%; width: 100%; }
}
@media screen and (max-width: 980px){
    #sub_banner .banner_img img{height: 420px;}
    .news_list{grid-template-columns: repeat(2, 1fr);}
	.grid_style { grid-template-columns: repeat(1, 1fr); }
	.list_style li .img_box , .list_style.grid_style li .img_box { width: 270px; }
}
@media screen and (max-width: 550px){
    #faq_list li .title{padding:1em}
    #faq_list li .info{padding: 1em 1.5em 2em;}
    .breadcrumb .breadcrumb_item{text-align:center;line-height: 1.4;}
    .breadcrumb .breadcrumb_item:before{margin:0 .5em}
    #wrap{padding-bottom: 35vw;}
    #sub_banner .banner_txt h1{font-size: 22px;}
    #sub_banner .banner_img img{height: 320px;}
    #sub_banner .banner_txt h1:before{height: 40px;margin-top: 10px;}
    .news_list{grid-template-columns: 1fr;}
	.list_style , .grid_style { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 3vw; }
	.list_style li { margin-bottom: 0; }
	.list_style li .img_box , .list_style.grid_style li .img_box { width: 100%; }
	.list_style li .img_box img { aspect-ratio: 4/3; }
	.list_style li .info_box { padding: 6%; }
}