/*layout style*/
.container { padding: 144px 0 120px; box-sizing: border-box; }
.wrap { max-width: 1324px; margin: 0 auto; }
.ly-group { display: flex; justify-content: space-between; }
.ly-group > div { position: relative; }
.ly-group .ly-l { width: 232px; padding-top: 12px; box-sizing: border-box; }
.ly-group .ly-r { width: calc(100% - 336px); padding-top: 12px; box-sizing: border-box; }


/*header style*/
.header { position: fixed; top: 0; left: 0; right: 0; z-index: 100; width: 100%; background: #fff; }
.header .depth { display: none; box-shadow: 0 10px 12px 0 rgba(0, 0, 0, 0.2); box-sizing: border-box; }

.hd-top { height: 48px; background: #f6f6f6; }
.hd-top .inner { display: flex; justify-content: flex-end; align-items: center; max-width: 1324px; height: 100%; margin: 0 auto; }
.hd-top .hd-menu { display: flex; justify-content: flex-end; align-items: center; }
.hd-top .hd-menu a { position: relative; padding: 0 16px; box-sizing: border-box; font-size: 16px; font-weight: 400; color: #666; }
.hd-top .hd-menu a:last-child { padding-right: 0; }
.hd-top .hd-menu a:not(:last-child):after { content: ''; display: block; position: absolute; top: calc(50% - 7px); right: 0; width: 1px; height: 14px; background: #ddd; }

.hd { position: relative; height: 96px; border-bottom: 1px solid #eaeaea; box-sizing: border-box; background: #fff; }
.hd .inner { display: flex; justify-content: space-between; align-items: center; position: relative; max-width: 1324px; height: 100%; margin: 0 auto; padding: 0 40px; box-sizing: border-box; }
.hd .hd-logo { position: relative; z-index: 1; width: 232px; height: 40px; }
.hd .hd-logo a { display: block; }
.hd .hd-logo a img { width: 100%; }

.gnb { display: flex; justify-content: center; align-items: center; position: absolute; right: 0; transform: translateX(50px); height: 100%; }
.gnb li { width: 20%; width: 177px; height: 100%; }
.gnb a { display: flex; justify-content: center; align-items: center; height: 100%; font-size: 22px; font-weight: 400; color: #000; text-align: center; transition: .2s all ease-out; }
.gnb a span { display: flex; justify-content: center; align-items: center; position: relative; height: 100%; border-bottom: 4px solid transparent; box-sizing: border-box; transition: .2s all ease-out; }
.gnb li:hover a,.gnb li.active a span { border-color: #019392; font-weight: 700; color: #019392; }

.lnb { display: flex; justify-content: flex-end; transform: translateX(50px); max-width: 1324px; margin: 0 auto; background: url('../img/common/bg_header1.svg') left 40px no-repeat; }
.lnb li { position: relative; width: 20%; width: 177px; padding: 32px 0 52px; box-sizing: border-box; }
.lnb a { display: flex; justify-content: center; align-items: center; height: 40px; padding: 0 16px; box-sizing: border-box; font-size: 16px; font-weight: 400; color: #666; transition: .2s all ease-out; }
.lnb a:last-child { margin-bottom: 0; }
.lnb a:hover { font-weight: 700; color: #019392; text-decoration: underline; }

.hd .hd-hamburger { display: none; }


/*m-header style*/
.m-gnb { display: block; position: fixed; z-index: 99999; top: 0; right: -100%; width: 100%; height: 100%; background: #fff; }
.m-gnb-bg { display: none; position: fixed; z-index: 99998; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); }
.m-gnb .m-hd { display: flex; justify-content: space-between; align-items: center; position: relative; height: 68px; padding: 0 20px; box-sizing: border-box; border-bottom: 1px solid #dfdfdf; }
.m-gnb .m-hd .m-logo { width: 142px; height: 24px; }
.m-gnb .m-hd .m-logo img { width: 100%; }
.m-gnb .m-hd .m-gnb-close { display: block; width: 36px; height: 36px; border: none; background: url('../img/common/ico_hamburger1_close.svg') center center no-repeat; }

.m-gnb .m-hd-menu { display: flex; align-items: center; }
.m-gnb .m-hd-menu > a { display: flex; justify-content: center; align-items: center; width: 50%; height: 64px; background: #019392; font-size: 16px; font-weight: 400; color: #fff; }
.m-gnb .m-hd-menu > a img { margin-right: 4px; }

.list-m-gnb { height: calc(100% - 132px); padding: 40px 20px; box-sizing: border-box; background: #fff; overflow-y: scroll; }
.list-m-gnb li { margin-top: 24px; }
.list-m-gnb li:first-child { margin-top: 0; }
.list-m-gnb .menu { display: flex; align-items: center; position: relative; width: 100%; margin-bottom: 20px; background: url('../img/common/ico_arrow_hamburger1_bottom1.svg') right center no-repeat; font-size: 22px; font-weight: 700; color: #000; line-height: 32px; cursor: pointer; }
.list-m-gnb .menu.active { background-image: url('../img/common/ico_arrow_hamburger1_top1.svg'); }
.list-m-gnb .depth { display: none; }
.list-m-gnb .depth .menu2 { display: block; padding: 16px 0; border-top: 1px solid #eaeaea; box-sizing: border-box; font-size: 16px; font-weight: 400; color: #666; line-height: 24px; }


/*footer style*/
.footer { border-top: 1px solid #eaeaea; box-sizing: border-box; background: #f9f9f9; }

.ft .inner { max-width: 1324px; margin: 0 auto; padding: 40px 0; box-sizing: border-box; }
.ft .top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 48px; padding-bottom: 24px; border-bottom: 1px solid #eaeaea; box-sizing: border-box; }
.ft .fnb { display: flex; align-items: center; }
.ft .fnb a { margin-right: 28px; font-size: 18px; font-weight: 700; color: #000; }
.ft .fnb a:last-child { margin-right: 0; }

.ft .fnb2 { display: flex; justify-content: flex-end; align-items: center; }
.ft .fnb2 .ft-menu { display: flex; justify-content: flex-end; align-items: center; }
.ft .fnb2 .ft-menu a { margin-right: 28px; font-size: 16px; font-weight: 400; color: #000; }
.ft .fnb2 .ft-menu a:last-child { margin-right: 0; }
.ft .fnb2 .ft-menu a b { font-weight: 700; }

.ft .ft-site { position: relative; margin-left: 40px; }
.ft .ft-site .btn-site { display: flex; align-items: center; width: 182px; height: 40px; padding: 0 8px 0 16px; border: 1px solid #ddd; box-sizing: border-box; background: url('../img/common/ico_arrow_site1_bottom1.svg') calc(100% - 8px) center no-repeat #fff; font-size: 14px; font-weight: 400; color: #999; cursor: pointer; }
.ft .ft-site .btn-site.active { background-image: url('../img/common/ico_arrow_site1_top1.svg'); }
.ft .ft-site .list-site { display: none; position: absolute; top: 39px;	left: 0; right: 0; width: 100%; margin: 0 auto; padding: 16px; border: 1px solid #ddd; border-top: none; box-sizing: border-box; background: #fff;; }
.ft .ft-site .list-site a {	display: block; margin-bottom: 16px; font-size: 14px; font-weight: 400; color: #999; transition: .2s all ease-out; }
.ft .ft-site .list-site a:hover { color: #019392; }
.ft .ft-site .list-site a:last-child { margin-bottom: 0; }

.ft .ft-logo { width: 169px; margin-bottom: 40px; }

.ft .ft-info { display: flex; justify-content: space-between; }
.ft .ft-info .company-info .txt-group { display: flex; margin-bottom: 8px; }
.ft .ft-info .company-info .txt-group:last-child { margin-bottom: 0; }
.ft .ft-info .company-info .txt-group .tit { width: 118px; font-size: 16px; font-weight: 500; color: #000; line-height: 24px; }
.ft .ft-info .company-info .txt-group .txt { width: calc(100% - 118px); font-size: 16px; font-weight: 400; color: #666; line-height: 24px; }
.ft .ft-info .csc-info { text-align: right; }
.ft .ft-info .csc-info .tit { margin-bottom: 12px; font-size: 14px; font-weight: 700; color: #004753; line-height: 20px; }
.ft .ft-info .csc-info .txt-group .txt { font-size: 32px; font-weight: 700; color: #000; line-height: 44px; }
.ft .ft-info .csc-info .txt-group .txt2 { font-size: 14px; font-weight: 400; color: #959595; line-height: 20px; }

.ft .copyright { margin-top: 28px; font-size: 14px; font-weight: 400; color: #999; line-height: 20px; }

.ft .ft-btn-top { position: fixed; right: calc(50% - 660px); bottom: 40px; z-index: 99; transform: translateY(100px); width: 48px; height: 48px; border: none; background: url('../img/common/ico_arrow_top1.svg') center center no-repeat; background-size: cover; opacity: 0; visibility: hidden; transition: all 0.3s ease-in-out; }
.ft .ft-btn-top.on { transform: translateY(0); opacity: 1; visibility: visible; }


/*snb style*/
.snb .top { display: flex; justify-content: center; align-items: center; height: 144px; background: #019392; }
.snb .top .tit { font-size: 28px; font-weight: 700; color: #fff; text-align: center; }
.snb .menu-group { background: #fff; }
.snb .menu-group .box { height: 76px; border: 1px solid #dfdfdf; border-top: none; box-sizing: border-box; }
.snb .menu-group .box.active { border-color: #166977; background: url('../img/common/ico_arrow_snb1_right1.svg') right 20px center no-repeat #166977; }
.snb .menu-group .box .menu { display: flex; justify-content: space-between; align-items: center; height: 100%; padding: 24px 20px; box-sizing: border-box; font-size: 18px; font-weight: 400; color: #000; transition: .2s all ease-out; cursor: pointer; }
.snb .menu-group .box:hover .menu { color: #166977; }
.snb .menu-group .box.active .menu { font-weight: 700; color: #fff; }


/*m-snb style*/
.m-snb { display: none; align-items: center; position: relative; z-index: 10; height: 48px; margin-top: -48px; box-sizing: border-box; background: rgba(0, 0, 0, 0.4);; }
.m-snb .dropdown { position: relative; width: 100%; height: 100%; border-right: 1px solid rgba(229, 229, 229, 0.3); box-sizing: border-box; }
.m-snb .dropdown:last-child { border-right: none; }
.m-snb .dropdown .tit { display: flex; align-items: center; height: 100%; padding: 0 50px 0 20px; box-sizing: border-box; font-size: 14px; font-weight: 400; color: #fff; cursor: pointer; }
.m-snb .dropdown .tit.fold { background: url('../img/common/ico_arrow_snb1_bottom1.svg') right 12px center no-repeat; }
.m-snb .dropdown .tit.fold.active { background-image: url('../img/common/ico_arrow_snb1_top1.svg'); }
.m-snb .dropdown .tit .menu { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-snb .dropdown .list { display: none; position: absolute; left: -1px; width: calc(100% + 2px); padding: 5px 0; border: 1px solid #dfdfdf; border-top: none; box-sizing: border-box; background: #fff; }
.m-snb .dropdown .list a { display: flex; align-items: center; padding: 10px 20px; box-sizing: border-box; font-size: 14px; font-weight: 500; color: #333; }
.m-snb .dropdown .list a.disabled { display: none; }
.m-snb .dropdown .list.active { display: block; }
.m-snb-v1 .dropdown { width: 50%; }


/*sub visual style*/
.sub-visual { position: relative; z-index: 9; height: 15.625vw; min-height: 300px; overflow: hidden; }
.sub-visual .bg { height: 100%; background: url('../img/bg_visual1.png') center center no-repeat; background-size: cover; }
.sub-visual-v1 .bg { background-image: url('../img/bg_visual2.png'); }
.sub-visual-v2 .bg { background-image: url('../img/bg_visual3.png'); }
.sub-visual-v3 .bg { background-image: url('../img/bg_visual4.png'); }
.sub-visual-v4 .bg { background-image: url('../img/bg_visual1.png'); }
.sub-visual-v5 .bg { background-image: url('../img/bg_visual5.png'); }
.sub-visual-v6 .bg { background-image: url('../img/bg_visual6.png'); }
.sub-visual .tit-group { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(1); -webkit-transform: translate(-50%, -50%) scale(1); -moz-transform: translate(-50%, -50%) scale(1); -ms-transform: translate(-50%, -50%) scale(1); -o-transform: translate(-50%, -50%) scale(1); width: 100%; }
.sub-visual .tit-group .tit { font-size: 48px; font-weight: 700; color: #fff; text-align: center; }

/*breadcrumb style*/
.breadcrumb { display: flex; align-items: center; padding: 24px 0; box-sizing: border-box; }
.breadcrumb .inner { display: flex; justify-content: flex-end; align-items: center; width: 1324px; margin: 0 auto; }
.breadcrumb a { display: flex; align-items: center; position: relative; font-size: 14px; font-weight: 400; color: #666; }
.breadcrumb a:not(:last-child):after { content: ''; display: block; width: 20px; height: 20px; margin: 0 4px; background: url('../img/common/ico_arrow_breadcrumb1.svg') center center no-repeat; background-size: contain; }


@media only screen and (max-width: 1280px) {
	/*layout style*/
	.wrap { padding: 0; }
	.container { padding: 68px 0 80px; box-sizing: border-box; }
	.wrapper:before { display: none; }
	.ly-group { display: block; margin: 0; padding-top: 0; }
	.ly-group .ly-l,
	.ly-group .ly-r { width: 100%; }
	.ly-group .ly-l { padding-top: 0; }
	.ly-group .ly-r { padding: 40px 20px 0; box-sizing: border-box; overflow: hidden; }
	
	/*header style*/
	.header .depth { display: none; }
	.hd-top { display: none; }
	.hd { height: 68px; border-color: #dfdfdf; }
	.hd .inner { padding: 0 20px; box-sizing: border-box; }
	.hd .hd-logo { width: 142px; height: 24px; }
	.hd .hd-menu { display: none; }
	.hd .hd-hamburger { display: block; width: 36px; height: 36px; border: none; background: url('../img/common/ico_hamburger1.svg') center center no-repeat; }
	.gnb,
	.lnb { display: none; }
	
	/*footer style*/
	.ft .inner { padding: 40px 20px; box-sizing: border-box; }
	.ft .top { margin-bottom: 40px; }
	.ft .fnb { display: none; }
	.ft .fnb2 { display: block; width: 100%; }
	.ft .fnb2 .ft-menu { justify-content: space-between; }
	.ft .fnb2 .ft-menu a { margin-right: 0; }
	.ft .ft-site { margin-top: 16px; margin-left: 0; }
	.ft .ft-site .btn-site { width: 100%; }
	.ft .ft-info { display: block; }
	.ft .ft-info .company-info .txt-group .tit { width: 98px; font-size: 14px; line-height: 20px; }
	.ft .ft-info .company-info .txt-group .txt { width: calc(100% - 98px); font-size: 14px; line-height: 20px; }
	.ft .ft-info .csc-info { margin-top: 24px; padding: 24px 0; border-top: 1px solid #eaeaea; box-sizing: border-box; text-align: left; }
	.ft .ft-info .csc-info .tit { margin-bottom: 4px; }
	.ft .ft-info .csc-info .txt-group .txt { font-size: 24px;  line-height: 36px; }
	.ft .ft-info .csc-info .txt-group .txt2 br { display: none; }
	.ft .copyright { margin-top: 0; }
	.ft .ft-btn-top { right: 20px; bottom: 116px; transform: translateY(60px); width: 48px; height: 48px; }
	
	/*snb style*/
	.snb { display: none; }
	
	/*m-snb style*/
	.m-snb { display: flex; }
	
	/*sub visual style*/
	.sub-visual .bg { background-image: url('../img/bg_visual1_m.png'); }
	.sub-visual-v1 .bg { background-image: url('../img/bg_visual2_m.png'); }
	.sub-visual-v2 .bg { background-image: url('../img/bg_visual3_m.png'); }
	.sub-visual-v3 .bg { background-image: url('../img/bg_visual4_m.png'); }
	.sub-visual-v4 .bg { background-image: url('../img/bg_visual1_m.png'); }
	.sub-visual-v5 .bg { background-image: url('../img/bg_visual5_m.png'); }
	.sub-visual-v6 .bg { background-image: url('../img/bg_visual6_m.png'); }
	.sub-visual .tit-group { top: calc(50% - 24px); }
	.sub-visual .tit-group .tit { font-size: 28px; }

	/*breadcrumb style*/
	.breadcrumb { display: none; }
}


@media only screen and (max-width: 768px) {
	.sub-visual { height: 57.778vw; min-height: auto; }
}


@media only screen and (max-width: 360px) {
	.ft .fnb2 .ft-menu a { font-size: 4.444vw; }
}