@charset "utf-8";
/* sub page header */
.sub_page_header{position: relative; margin-top:var(--header_height); height: 700px; text-align: center; }
.sub_page_header .sub_top_bg{height: 100%; overflow: hidden;}
.sub_page_header .sub_top_bg figure{height: 100%;}
.sub_page_header .sub_top_bg figure img{height: 100%; object-fit: cover;}
.sub_page_header .sub_page_title{position: absolute; top:50%; left:50%; transform: translate(-50%, -50%); padding:0 5%; width: 100%;}
.sub_page_header .sub_page_title h2{font-size: 3.2rem; line-height: 1.25; font-weight: 700; color:#ffffff; text-transform: uppercase;}
.sub_page_header .sub_page_title h2 .page_title_sub{margin-top:8px;  display:block; font-size: 0.8em; font-weight: normal; }
.sub_page_header .sub_page_title .sub_page_title_desc{margin-top:20px; color: #ffffff; font-weight: 500;}
.sub_page_header .breadcrumb{margin-top:40px;}
.sub_page_header .breadcrumb .inner_wrap {justify-content: center;}
@media(max-width:1280px){   
  .sub_page_header {height: 600px;}
}
@media(max-width:1024px) { 
  .sub_page_header { height: calc(100vh - var(--header_height));}
}

.portfolio main,
.portfolio_view main,
.archive main,
.archive_view main,
.contact main{max-width: 1920px;} 

.md_view_body_con .img_wrap figure img{max-height: 100vh; object-fit: contain;}


/* --------------------------------------- */
/* sub contents, title */
.sub_page .page_contents{margin-top:200px;}
/* .sub_page .page_contents .wrap{max-width:1200px;} */
.sub_con + .sub_con{margin-top:200px;}
.sub_title_wrap{text-align: center; }
.sub_title_wrap .sub_title{text-transform: uppercase; font-size: 2.8rem; font-weight: 700; line-height: 1.25;}
.sub_title_wrap .sub_title > span{font-size: 0.8em; font-weight: normal;}
.sub_title_wrap .sub_title + p{margin-top:20px; }
.sub_title_wrap .sub_title ~ p{color: var(--black_4);}
.sub_title_wrap .sub_title + p ~ p{margin-top:1em;}
.sub_title_wrap + .sub_contents{margin-top:64px;}
@media(max-width:1280px){     
  .sub_title{font-size: 3.6rem;}
  .sub_title .small_title{font-size: 1.6rem; }
  .sub_title_wrap + .sub_contents {margin-top: 40px;}
}
@media(max-width:1024px) {   
  .sub_page .page_contents{margin-top:120px;}  
  .sub_con + .sub_con{margin-top:160px;}
  .sub_title{font-size: 3.2rem;}
  .sub_title .small_title{font-size: 1.5rem;}
  .sub_title_wrap + .sub_contents {margin-top: 48px;}
}
@media(max-width:768px) {  
  .sub_title{font-size: 2.8rem;}
  .sub_title_wrap + .sub_contents {margin-top: 40px;}
}
@media(max-width:540px) {
  .sub_page .page_contents {margin-top: 100px; }
  .sub_con + .sub_con{margin-top:120px;}
  .sub_title_wrap + .sub_contents {margin-top: 36px;}
}
@media(max-width:389px) {
  .sub_con + .sub_con{margin-top:100px;}
  .sub_title_wrap .sub_title{font-size: 2.4rem; line-height: 1.25;}
  .sub_title_wrap .sub_title + p {margin-top: 12px;}
}

/* --------------------------------------- */
/* sub page common */

.about{background-color: #000000;}
.about header .header_wrap { background-color: #ffffff;}
.about .sub_title_wrap .sub_title {color: #ffffff;}
.about .sub_title_wrap .sub_title ~ p {color: var(--white_d);}

/* about - intro*/
.intro .sub_title br{display: none;}
.intro .img_wrap figure{height: 520px;}
.intro .img_wrap figure img{height: 100%; object-fit: cover;}
@media(max-width:1600px) {
  .intro .img_wrap figure{height: 480px;}
}
@media(max-width:1280px) {
  .intro .img_wrap figure{height: 400px;}
}
@media(max-width:1024px) {
  .intro .img_wrap figure{height: 360px;}
}
@media(max-width:720px) {
  .intro .img_wrap figure{height: 320px;}
}
@media(max-width:540px) {
  .intro .sub_title br{display: block;}
  .intro .img_wrap figure{height: 192px;}
}

/*about - history */
.history .sub_title br{display: none;}
.history .sub_contents{display: flex; align-items: flex-start; gap: 0 165px; }
.history .sub_contents .img_wrap{position: sticky; top:var(--header_height);}
.history .sub_contents .img_wrap figure + figure{margin-top:10px;}
.history .sub_contents .img_wrap figure img{height: 100%; object-fit: cover;}
.history .text_wrap{flex-shrink: 0;}
.history_list .history_list_item {display: flex; gap:0 24px;}
.history_list .history_list_item + .history_list_item{margin-top:100px;}
/* .history_list .year{flex-shrink: 0; width:64px; font-size: 1.8rem; font-weight: 600; line-height: 1.25; } */
/* .history_list .year span{font-size: 0.8888em; font-weight: 400; color: var(--black_5); } */
/* .history_year_list li{font-size: 1.4rem; color: var(--black_4); line-height: 1.25;} */
.history_list .year{flex-shrink: 0; width:64px; font-size: 1.8rem; font-weight: 600; line-height: 1.25; color: var(--white_f); }
.history_list .year span{font-size: 0.8888em; font-weight: 400; color: var(--white_f); }
.history_year_list li{font-size: 1.4rem; color: var(--white_d); line-height: 1.25;}
.history_year_list li + li{margin-top:4px;}
.history_year_list li strong{font-weight: 500; }
.history_year_list.dot_list>li:before{top: 0.7em; background-color: var(--white_d);}

@media(max-width:1440px) {
  .history .sub_contents{gap: 0 80px; }
}
@media(max-width:1280px) {
  .history .sub_contents{gap: 0 80px; }
  .history_list .history_list_item {flex-direction: column; gap:8px;}
  .history_list .history_list_item + .history_list_item{margin-top:80px;}
}
@media(max-width:1024px) {
  .history .sub_contents{gap: 0 64px; }
  .history_list .history_list_item + .history_list_item{margin-top:72px;}
  .history .sub_contents .img_wrap figure{height:240px;}
}
@media(max-width:768px) {
  .history .sub_contents{gap: 0 48px; }
  .history_list .history_list_item + .history_list_item{margin-top:60px;}
  .history .sub_contents .img_wrap figure{height:160px;}
}
@media(max-width:540px) {
  .history .sub_title br{display: block;}
  .history .img_wrap{display: none;}
  .history .text_wrap {flex-shrink: 1;}
  .history_list .history_list_item {flex-direction: row; gap:40px;}
}
@media(max-width:389px) { 
  .history_list .history_list_item {gap:32px;}
    .history_list .history_list_item + .history_list_item{margin-top:40px;}
}

/* about - license */
.license_list{display: flex; justify-content: center; gap: 0 100px;}
.license_list .license_item{width:200px;}
.license_list .license_item .text_wrap{margin-top:12px; font-size: 1.4rem;}
/* .license_list .license_item .text_wrap .license_item_title{font-size: 2.4rem; font-weight: 600; line-height: 1.3; color: var(--black_3);}
.license_list .license_item .text_wrap .license_item_source{margin-top:4px;  color: var(--black_7);}
.license_list .license_item .text_wrap .license_item_num{margin-top:4px; color: var(--black_4);}
.license_list .license_item .text_wrap .license_item_date{color: var(--black_4);} */

.license_list .license_item .text_wrap .license_item_title{font-size: 2.4rem; font-weight: 600; line-height: 1.3; color: var(--white_f);}
.license_list .license_item .text_wrap .license_item_source{margin-top:4px;  color: var(--white_a);}
.license_list .license_item .text_wrap .license_item_num{margin-top:4px; color: var(--white_d);}
.license_list .license_item .text_wrap .license_item_date{color: var(--white_d);}
@media(max-width:1600px) {
  .license_list{ gap: 0 72px;}
}
@media(max-width:1440px) {
  .license_list{justify-content: flex-start; gap: 72px 64px; flex-wrap: wrap;}
  .license_list .license_item{width:calc((100% - (64px * 4)) / 5)}
  
}
@media(max-width:1280px) {
  .license_list{justify-content: flex-start; gap: 72px 48px;}
  .license_list .license_item{width:calc((100% - (48px * 3)) / 4)}  
  .license_list .license_item .text_wrap .license_item_title{font-size: 2.2rem;}
}
@media(max-width:1024px) {
  .license_list{justify-content: flex-start; gap: 64px 40px;}
  .license_list .license_item{width:calc((100% - (40px * 2)) / 3)}  

}
@media(max-width:768px) {
  .license_list{justify-content: flex-start; gap: 56px 32px;}
  .license_list .license_item{width:calc((100% - (32px * 2)) / 3)}
  .license_list .license_item .text_wrap{margin-top:8px;}
  .license_list .license_item .text_wrap .license_item_title{font-size: 2rem;}
}
@media(max-width:540px) {
  .license_list{justify-content: flex-start; gap: 40px 20px;}
  .license_list .license_item{width:calc((100% - (20px * 1)) / 2)}  
}
@media(max-width:389px) { 
    .license_list .license_item .text_wrap .license_item_title{font-size: 1.8rem;}
}

/* md_list - portfoli, archive */
.md_list_content .wrap{display: flex; align-items: flex-start; gap:0 20px;}
.md_list_category{position: sticky; top:var(--header_height); flex-shrink: 0; width:270px;}
.md_list_category .category_list_item + .category_list_item{margin-top:12px;}
.md_list_category .category_list_item a{display: inline-block; transition: color 0.2s;}
.md_list_category .category_list_item a:hover,
.md_list_category .category_list_item a.active{color:var(--main_color);}
.md_list_body{width:100%;}
.md_list_body .md_list{--list_gap:32px; display: flex; flex-wrap: wrap; gap:var(--list_gap);}
.md_list_body .md_list .md_list_item{width:calc((100% - (var(--list_gap) * 1)) / 2);}
.md_list_body .md_list .md_list_item .img_wrap {height: 426px;}
.md_list_body .md_list .md_list_item .img_wrap figure{height: 100%;}
.md_list_body .md_list .md_list_item .img_wrap figure img{height: 100%; object-fit: cover;}
.md_list_body .md_list .md_list_item .text_wrap{margin-top:4px; text-align: right;}
.md_list_body .md_list .md_list_item .text_wrap h4{font-size: 1.4rem; font-weight: 400; transition: color 0.2s;}
.md_list_body .md_list .md_list_item a:hover h4{color: var(--main_color);}
.md_list_body .pagenation{margin-top:80px;}
@media(max-width:1280px) {
  .md_list_category {width: 200px;}
  .md_list_body .md_list {--list_gap: 24px; gap:40px var(--list_gap);}
  .md_list_body .md_list .md_list_item .img_wrap {height: 320px;}
  .md_list_body .pagenation{margin-top:72px;}
}
@media(max-width:1024px) {
  .md_list_content .wrap{display: block;}
  .md_list_category{position: static; top:inherit; width: auto;}
  .md_list_category .category_list{display: flex; flex-wrap: wrap; gap:8px 12px;}  
  .mobile .md_list_category .category_list,
  .tablet .md_list_category .category_list {flex-wrap: nowrap; flex-shrink: 0; margin: 0 calc(var(--page_padding5) * -1); padding: 0 var(--page_padding5); overflow: scroll; -ms-overflow-style: none;  scrollbar-width: none;}
  .mobile .md_list_category .category_list::-webkit-scrollbar,
  .tablet .md_list_category .category_list::-webkit-scrollbar {display: none;}
  .md_list_category .category_list_item a{position: relative; padding:6px 12px; border:1px solid var(--white_c);}
  .md_list_category .category_list_item a.active{background-color:var(--main_black); border-color: var(--main_black); color: #ffffff;}

  .md_list_category .category_list_item + .category_list_item{margin-top:0;}
  .md_list_body{margin-top:20px;}
  .md_list_body .md_list {--list_gap: 16px; gap:40px var(--list_gap);}
  .md_list_body .md_list .md_list_item .img_wrap {height: 280px;}
  .md_list_body .pagenation{margin-top:64px;}
}
@media(max-width:540px) {
  .md_list_body .md_list {gap:32px 0;}
  .md_list_body .md_list .md_list_item{width:100%;}
  .md_list_body .md_list .md_list_item .img_wrap {height:auto;}
  .md_list_body .md_list .md_list_item .text_wrap h2 {font-size: 1.2rem;}
  .md_list_body .md_list .md_list_item .text_wrap h4 {font-size: 1.2rem;}
  .md_list_body .pagenation{margin-top:60px;}
}

/* archive */
/* search form */
.search_form .search_form_inner{display: flex; gap:0 4px; border-bottom: 1px solid var(--black_5);}
.search_form .search_form_inner .search_input{width:100%; padding: 0 0 8px; height: 48px; border-radius: 8px; background-color: var(--color_white); font-size: 1.125em; color: var(--color_black); }
.search_form .search_form_inner .search_btn{flex-shrink: 0;}
.list_counter{margin-top:8px; font-size: 1.4rem;}

.archive_view .md_view_body .md_view_body_con img{max-width: 100%;}



@media(max-width:1024px) {
  .archive_view .md_view_body {margin-top: 20px;}
}

@media(max-width:540px) {
  .archive_view .md_view_body {margin-top: 12px;}
  .list_counter{font-size: 1.2rem;}
}






.md_view_content .wrap{display: flex; align-items: flex-start; gap: 0 40px;}
.md_view_info{position: sticky; top:var(--header_height); flex-shrink: 0; width:395px;  font-size: 1.4rem;} 
.md_view_info h4{font-size: 2.8rem;}
.md_view_info .md_view_info_list{margin-top:32px; color: var(--black_4)}
.md_view_info .md_view_info_list .md_view_info_item{display: flex; gap: 10px; }
.md_view_info .md_view_info_list .md_view_info_item + .md_view_info_item{margin-top:4px;}
.md_view_info .md_view_info_list .md_view_info_item .md_view_info_label{flex-shrink: 0; width:180px; font-weight: 500;  color: var(--black_3)}
.md_view_info .md_view_info_desc{margin-top:20px;}
.md_view_info_md{margin-top:60px; padding-top:60px; border-top:1px solid var(--line_color); }
.md_view_info_md .logo_wrap figure{width:100px;}
.md_view_info_md .md_view_info_md_list{margin-top:16px; display: flex; flex-wrap: wrap; gap:4px 36px; color: var(--black_5)}
.md_view_info_md .md_view_info_md_list li{display: flex; gap: 0 12px;}
.md_view_info_md .md_view_info_md_list li.w_width{width:100%;} 
.md_view_body{width:100%;}
.md_view_body_con .img_wrap + .img_wrap{margin-top:10px;}

.view_content_footer{margin-top: 32px; display: flex; justify-content: space-between; align-items: center; gap:0 40px;  }
.view_content_footer .btn{display: flex; gap:12px; align-items: center; width:100%; max-width: 400px; font-size: 1.4rem; color: var(--black_8);}
.view_content_footer .btn.back_list{width:20px;}
.view_content_footer .btn.view_cont_btn_next{text-align: right; justify-content: flex-end;}
.view_content_footer .btn:hover,
.view_content_footer .btn:focus-visible{color:var(--main_color)}
@media(max-width:1280px) {
  .md_view_info {width: 280px;}
  .md_view_info .md_view_info_list .md_view_info_item {flex-direction: column; gap: 0;}
  .md_view_info .md_view_info_list .md_view_info_item + .md_view_info_item {margin-top: 8px;}
  .md_view_info_md {margin-top: 48px; padding-top: 48px;}
  .view_content_footer{margin-top:28px;}
}
@media(max-width:1024px) {
  .md_view_content .wrap {display: block;}
  .md_view_info {position: static; top:inherit; width: auto;}
  .md_view_info .md_view_info_list .md_view_info_item {flex-direction: row; gap: 10px;}
  .md_view_info_md {display: none;}
  .md_view_body{margin-top:40px;}
  .md_view_body_con .img_wrap + .img_wrap {margin-top: 8px;}
  .view_content_footer{margin-top:24px;}
}
@media(max-width:768px) {
  .view_content_footer .btn .view_cont_btn_text {display: none;}
  .view_content_footer .btn {width: auto; max-width: 100%;}
  .view_content_footer{margin-top:20px;}
}
@media(max-width:540px) {
  .md_view_info .md_view_info_list .md_view_info_item {flex-direction: column; gap: 0;}
  .md_view_body{margin-top:48px;}
  .md_view_body_con .img_wrap + .img_wrap {margin-top: 4px;}
  .view_content_footer{margin-top:10px;}
}

/* portfolio */




/* contact */
.contact_intro{position: relative;}
.required_dot{color: var(--main_color);}
.contact_intro .wrap{display: flex; gap: 40px; align-items: flex-start;}
.contact_intro .text_wrap{flex-shrink: 0; position: sticky; top: var(--header_height); width:415px;}
.contact_intro .text_wrap h3{font-size: 2.4rem; font-weight: 600; }
.contact_intro .text_wrap .text_desc{margin-top:12px; font-size: 1.4rem;}
.contact_form_title{display: flex; align-items: baseline; gap:8px;}
.contact_form_title h4{font-size: 1.8rem; font-weight: 500;}
.contact_form_title span{font-size: 1.4rem; color: #A58D77;}
.contact_intro .form_box{margin-top:28px; font-size: 1.4rem;}
.contact_intro .input_wrap{display: flex; align-items: center; overflow: hidden; border-bottom: 1px solid #555555;}
.contact_intro .input_wrap + .input_group,
.contact_intro .input_group + .input_wrap,
.contact_intro .input_wrap + .input_wrap{margin-top:32px;}
.contact_intro .input_group{display: flex; flex-wrap: wrap; gap:32px;}
.contact_intro .input_group .input_wrap{width:calc((100% - (32px * 1))/2);}
.contact_intro .input_group .input_wrap + .input_wrap{margin-top:0;}
.input_title{font-weight: 400;}
.contact_intro .input_wrap .input_title{flex-shrink: 0; width:100px;}
.contact_intro .input_wrap select,
.contact_intro .input_wrap input,
.contact_intro .input_wrap textarea{border:none; }
.contact_intro .input_wrap textarea{height:200px;}
.contact_intro .input_wrap:has(input[type="file"]){padding-bottom:32px}
.agree_wrap{margin-top:60px;}
.agree_wrap .agree_text_wrap{margin-top:20px;}
.agree_wrap .agree_text_wrap .number_list{margin-top:12px;}
.agree_wrap .agree_text_wrap .number_list li+li{margin-top:4px;}
.agree_wrap .agree_text_wrap .number_list + p{margin-top:12px;}
.agree_wrap .check_agree_wrap{margin-top:40px; display: flex; align-items: center; gap:8px 40px;}
.agree_wrap .check_radio input[type="radio"] + label:after {border-width: 0 0 2px 2px;}

.form_confirm_btns{margin-top:60px;}
.form_confirm_btns .btn{padding:12px 32px; border-color: var(--black_5); font-size: 1.6rem; }
.form_confirm_btns .btn:hover{background-color: var(--main_color); color: #ffffff; }


@media(max-width:1280px){
  .contact_intro .text_wrap{width:280px;}  
  .contact_intro .text_wrap .text_desc br{display: none;}
}
@media(max-width:1024px){
  .contact_intro .wrap{display: block;}
  .contact_intro .text_wrap{position: static; top:inherit; width:auto;}
  .contact_form {margin-top:48px;}  
}
@media(max-width:768px){
  .contact_intro .input_group {flex-direction: column;}
  .contact_intro .input_group .input_wrap {width: 100%;}
}
@media(max-width:540px){
  .contact_intro .input_wrap + .input_group,
  .contact_intro .input_group + .input_wrap,
  .contact_intro .input_wrap + .input_wrap{margin-top:20px;}
  .contact_intro .input_group{gap:20px;}
}

/* .privacy{color: var(--white_c);}
.privacy .privacy_innerwrap .container dl dt h4 {color: var(--white_f);}
.privacy .privacy_innerwrap .container dl dd p {color: var(--white_b);} */


