@charset "utf-8";

@import url('reset.css');
@import url('swiper.min.css');
@import url('layout.css');

@media (min-width: 1024px) {
	
}

@media (max-width: 1023px) and (min-width: 768px) {

}

@media (max-width: 1700px) {
	#header.active .total_nav{z-index: 100;visibility: visible}
	#header.active .lnb_area{right: -1px;}
	.total_nav{display: block;position: fixed;width: 100%;height: 100%;top:0;left:0;background:rgba(0,0,0,.3);z-index: -1;visibility: hidden}
	.lnb_area{position: fixed;right:-100%;top:0;width: 70%;height: 100%;background: #fff; z-index: 100;overflow-y: auto;transition: right 0.3s;}
	#lnb{position: relative;top:auto;right:auto;padding-top: 120px}
	#lnb > li{display: block;margin-bottom: 5px;}
	#lnb > li > a{color: #272829 !important;padding: 16px 40px;text-align: left;display: block;height: auto;font-weight: 500}
	#lnb > li.on > a,
	#lnb > li > a:hover{background: none}
	#lnb > li.on > a:before,
	#lnb > li > a:hover:before{display: none}
	#header.opa #lnb > li > a:hover{color: #135da9 !important}
	.hamberger{display: block;}
	#header .hamberger.show .btn_total:before, 
	#header .hamberger.show .btn_total:after{background-color: #135da9 !important}
	/*
	.total_nav .lang{display: block;padding-top: 58px;padding-left: 40px;position: relative; top:auto;left:auto;right:auto}
	#header .btn_lang{color: #929292 !important;border-bottom: 1px solid #929292 !important;}
	*/
	.lang_nav{top:58px;left:40px;right:auto}
	.history_list{display: block}
	.history_list > li{padding: 20px 0;display: flex;width: 100%}
	.history_list .month{position: relative;top:auto;left:auto;padding-left: 40px}
	.history_list > li:nth-child(even) .month{top: auto;}
	.history_list > li:nth-child(even) .year:before{top: auto;bottom: auto}
	.history_list .year{width: 140px;flex-shrink: 0;margin-right: 20px} 
	.history_list .year:before{display: none}
	.history_list .month:before{display: block;content: '';width: 1px;height: 100%;background-color: #292929;position: absolute;top: 0;left:0;}
	.history_area.history02 .resp_inner,
	.history_area.history04 .resp_inner{display: flex;justify-content: end}
	.history_area.history04{border-bottom: 0}
}

@media (max-width: 1300px) {
	.message_section .tit01{font-size: 20px;}
	.message_section .tit02{font-size: 38px}
	
	.exp_list dl{padding: 25px 30px}
	.exp_list dd{line-height: 1.4}
	
	.do_section01 .tit{font-size: 38px}
	.do_section01 .cont{padding-left: 25px}
	.do_section01 .row.reverse .cont{padding-right: 25px}
	.do_section02 .tit{font-size: 30px}
}

@media (max-width: 1023px) {
	:root {
	  --headerH: 72px;
	}
	
	#header .head{padding: 0 20px}
	#header .logo > a{width: 141px;height: 26px;}
	.hamberger{display: block;right:18px;}
	.hamberger .btn_total{width: 28px;height:1px;margin-left: -14px;}
	#lnb{padding-top: 75px;}
	#lnb > li > a{font-size: 18px;padding: 16px 20px;}
	/*.total_nav .lang{padding-top: 30px;padding-left: 20px;}*/
	.lang_nav{top:22px;left:20px;}
	
	.message_section .resp_inner{display: block;}
	.message_section .resp_inner .col{width: 100%;height: auto}
	.message_section .resp_inner .col.img{height: 0;padding-bottom: 47.916%}
	.message_section .resp_inner .cont{display: block;padding-bottom: 60px;padding-right: 0;}
	.message_section .resp_inner .img img{width: calc(100% + 20px);height: 100%;right: -20px;left:auto}
	
	.contact_section .resp_inner{display: block;height: auto;overflow: hidden}
	.contact_section .resp_inner .col.location{margin: 0 -20px}
	.contact_section .resp_inner .col.location .map_area{height: 390px}
	.contact_section .tit01.mo{text-align: center;margin-bottom: 20px;display: block !important;}
	.contact_section .tit01.pc{display: none !important;}
	.contact_section .resp_inner .col.cont{padding-top: 30px;width: 100%}
	.contact_section .resp_inner .col.cont .addr .item.active:before{left: 50%}
	
	.message_area .president{padding-top: 15px;font-size: 16px;line-height: 1.35}
	.message_area .name{margin-bottom: 4px}
	.message_area .cont{padding-left: 25px}
	
	.exp_list{flex-wrap: wrap;}
	.exp_list > li{flex: 1 1 40%;}
	.exp_list dl{padding: 37px 40px;}
	.exp_list .title01{margin-bottom: 10px}
	
	#footer .resp_inner{justify-content: start;height: auto;padding-top: 40px;padding-bottom: 80px}
	.btn_top{position: absolute;bottom: 20px;right: 20px;width: 50px;height: 50px;background-size: 14px auto;}
	
	.org_count{flex-wrap: wrap;gap: 20px;}
	.org_count > li{flex: 1 1 calc(50% - 20px);width: calc(50% - 20px);}
	
	.do_section01 .row{margin-bottom: 50px;}
	.do_section01 .tit{font-size: 28px;margin-bottom: 25px;}
	.do_section01 .cont{font-size: 16px}
	.do_section02{font-size: 16px}
	.do_section02 .tit{font-size: 24px;margin-bottom: 25px;}
	
	.contact_info > .item{width: 50%}
	.contact_info > .item:nth-child(3n+1){border-left: 0}
	.contact_info > .item:nth-child(2n+1){border-left: 1px solid #1b1b1b}
	
	.history_info{display: block;padding-top: 10px;padding-bottom: 50px;}
	.history_info .img{width: 100%;text-align: center}
	.history_info .cont{padding-left: 0;padding-top: 50px}
}

@media (max-width: 767px) {
	html, body{font-size: 15px;}
	
	.pc,
	.pc.inline{display: none;}
	.mo{display: block;}
	.mo.inline{display: inline;}
	
	colgroup.pc,
	col.pc,
	th.pc,
	td.pc{display: none}
	
	#header .btn_lang{font-size: 15px}
	
	.main_visual .swiper-slide{height: 560px}
	.main_visual .tit{font-size: 32px}
	.main_visual p{font-size: 16px}
	.main_visual .swiper-option{bottom: 66px}
	.main_visual .swiper-option .swiper-pagination-progressbar{width: 140px}
	.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{height: 4px;}
	
	.message_section{padding: 40px 0}
	.message_section .resp_inner .cont{display: block;padding-bottom: 40px;padding-right: 0;}
	.message_section .tit01{font-size: 17px;margin-bottom: 18px;}
	.message_section .tit02{font-size: 26px;margin-bottom: 18px;}
	.message_section p{font-size: 15px}
	.message_section .resp_inner .col.img{height: 230px}
	.message_section .resp_inner .img img{height: 100%}
	
	.contact_section{padding: 50px 0}
	.contact_section .resp_inner .col.location iframe{height: 320px}
	.contact_section .tit01.mo{font-size: 24px;margin-bottom: 20px}
	.contact_section .resp_inner .col.cont{padding-top: 30px;font-size: 15px}
	.contact_section .tit02{font-size: 18px;margin-bottom: 10px;}
	.contact_section .resp_inner .col.cont p{line-height: 1.5}
	.contact_section .resp_inner .col.cont .addr,
	.contact_section .tit03{font-size: 15px}
	.contact_section .resp_inner .col.cont .addr .item{margin-top: 15px}
	.contact_section .resp_inner .col.cont .addr .item.active{margin-bottom: 38px}
	
	.message_area{display: block;padding-top: 40px;padding-bottom: 40px;line-height: 1.45;font-size: 16px}
	.message_area .img{width: 100%;text-align: center}
	.message_area .cont{padding-left: 0;}
	.message_area .cont p{margin-bottom: 18px;}
	.message_area .president{text-align: right;padding-top: 20px;}
	
	.sub_visual{height: 140px;background-size: auto 100%;}
	.sub_visual#no07{height: 100px;}
	.subtitle{font-size: 20px}
	.title01{font-size: 16px;margin-bottom: 15px;}
	
	.vission_section01{padding-top: 40px}
	.vission_section01 .resp_inner{display: block;}
	.vission_section01 .col{width: 100%}
	.vission_section01 .card_box{padding: 20px;min-height: 170px;}
	.vission_section01 .card_box p{line-height: 1.3;}
	.vission_section01 .info_list{padding: 30px 20px 10px}
	.vission_section01 .info_list li{margin-bottom: 20px;font-size: 16px}
	.vission_section01 .info_list .icn{width: 70px;height: 70px;margin-right: 15px}
	.vission_section01 .info_list .icn.strategy01 img{width: 22px}
	.vission_section01 .info_list .icn.strategy02 img{width: 30px}
	.vission_section01 .info_list .icn.strategy03 img{width: 27px}
	.vission_section01 .info_list .icn.capabilty01 img{width: 28px}
	.vission_section01 .info_list .icn.capabilty02 img{width: 29px}
	.vission_section01 .info_list .icn.capabilty03 img{width: 29px}
	.vission_section01 .info_list .icn.capabilty04 img{width: 30px}
	
	.vission_section02{padding-top: 50px;padding-bottom: 45px;}
	.exp_list > li{flex: 1 1 100%;}
	
	#footer .resp_inner{display: block;text-align: center;padding-top: 35px;padding-bottom: 90px}
	#footer .copy{margin-top: 15px;font-size: 14px}
	#footer .logo img{height: 30px}
	.btn_top{left: 50%;transform:translateX(-50%);right: auto;bottom: 25px;width: 45px;height: 45px;}
	
	.organization_section01{padding: 50px 20px 54px}
	.organization_section03{padding: 50px 0 52px;}
	
	.org_count{margin-bottom: 40px;}
	.org_count > li{min-height: 315px;}
	.org_count .tit{font-size: 17px}
	.org_count .cnt{font-size: 65px}
	.org_count p{font-size: 14px}
	
	.list_type01 > li{padding: 20px 0;}
	.list_type01 .no{width: 70px;font-size: 30px;vertical-align: top;}
	.list_type01 .tit{font-size: 18px;margin-bottom: 10px;}
	
	.do_section01{padding-top: 50px;padding-bottom: 10px}
	.do_section01 .row{display: block;margin-bottom: 30px;}
	.do_section01 .col{width: 100%}
	.do_section01 .img{text-align: center;margin-bottom: 25px}
	.do_section01 .cont{padding-left: 0}
	.do_section01 .tit{font-size: 24px;margin-bottom: 15px;}
	.do_section02{display: block;border-top: 3px solid #000;padding-top: 10px}
	.do_section02 .col{width: 100%;border-right:0;padding: 30px 0 20px;border-bottom: 1px solid #000}
	.do_section02 .col:last-child{padding-left: 0}
	.do_section02 .tit{font-size: 20px;margin-bottom: 15px;}
	.do_section02 p{margin-bottom: 10px}
	
	.achievements_area{padding-top: 40px;padding-bottom: 15px;}
	.achievements_list > li{margin-bottom: 25px}
	.achievements_list .tit{margin-bottom: 15px;padding-bottom: 8px;font-size: 21px;border-bottom-width: 2px}
	
	.contact_map{height: 300px}
	.contact_info{padding-top: 40px;padding-bottom: 20px}
	.contact_info > .item,
	.contact_info > .item:nth-child(2n+1),
	.contact_info > .item:nth-child(3n+1){width: 100%;border-left: 0;border-right: 0}
	.contact_info > .item{padding: 30px 20px;margin-bottom: 20px;min-height: 120px;border-top: 1px solid #1b1b1b;border-bottom: 1px solid #1b1b1b;font-size: 15px}
	.contact_info .tit{font-size: 17px;margin-bottom: 10px;}
	.contact_info p{line-height: 1.45}
	.contact_both{display: block;}
	.contact_both .col{width: 100%}
	.contact_both .contact_info{padding-top: 30px;padding-bottom: 30px}
	.contact_both .contact_map{height: 270px;margin-left: -20px;margin-right: -20px}
	
	.history_area{padding: 50px 0;background-size: auto 138px;}
	.history_area.history02 .resp_inner,
	.history_area.history04 .resp_inner{display: block}
	.history_list > li{display: block;padding: 0;margin-bottom: 28px}
	.history_list > li:last-child{margin-bottom: 0}
	.history_list .month{padding-left: 0}
	.history_list .month dd{white-space: normal;}
	.history_list .year{font-size: 28px;margin-bottom: 2px}
	.history_list .month:before{display: none}
	.history_list .month dt{font-size: 18px}
	
	.history_info .cont{padding-top: 20px}
	.history_info .tit{font-size: 24px;margin-bottom: 15px;}
	.history_info .point{font-size: 18px;margin-bottom: 15px;}
	.history_info .txt{margin-bottom: 15px}
}

@media (max-width: 480px){
	.org_count{display: block;}
	.org_count > li{width: 100%;margin-bottom: 20px;min-height: 275px;}
	.org_count > li:last-child{margin-bottom: 0}
	
	.do_section01 .tit{font-size: 20px;}
	
	.contact_info > .item{font-size: 15px;padding: 20px 15px;min-height: 100px;margin-bottom: 15px;}
	.contact_info .tit{font-size: 16px;margin-bottom: 6px;}
}

@media (max-width: 360px) {

}
