@media (max-width: 870px) {
	/* common */
	.section_title {
		padding: 50px 20px;
	}
	.section_title h1.category_title,
	.section_title h1.category_title.guide {
		font-size: 27px;
	}
		.section_title .category_title {
		font-size: 27px;
	}
	.section_content {
		max-width: none;
		padding: 0 20px;
	}
	.section_content,
	.section_content.content_guide,
	.section_content.vision_mission,
	.section_content.service_list {
		width: auto;
	}
	.border_list_wrap,
	.section_other,
	.section_news__wrap {
		width: auto;
	}
		.menu__list {
		position: initial;
		transform: none;
		width: 100%;
		padding: 80px 10px 0 23px;
	}
	.menu__list a{
		display: flex;
		height: 45px;
		align-items: center;
		padding: auto;
	}

	/* search-box */
	.menu__list .search_box_form {
		position: relative;
		top: 0;
	}
	.search_box_form_sp .input-search-box {
		width: auto;
		position: relative;
		margin: 0 auto 18px;
	}
	.search_box_form_sp .input-search-box .submit-btn-box {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
		height: 100%;
	}
	.search_box_form_sp .input-search-box .submit-btn {
		position: absolute;
		display: block;
		width: 60px;
		height: 100%;
		background-image: url(/assets/img/search/icon_search.svg);
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: 20px;
		text-indent: -9999px;
	}
	.search_box_form_sp .input-search-box .input-box {
		display: block;
		width: 100%;
		font-size: 18px;
		font-weight: normal;
		padding: 10px 60px 10px 10px;
		height: 60px;
		outline: none;
		background-color: #4C4C4C;
	}
	/* menu */
	.material-icons.iconsize {
		font-size: 18px;
		vertical-align: text-bottom;
		vertical-align: middle;
		padding: 0 5px 3px;
	}
		.sp_menu_list_container{
		position: fixed;
		top: 165px;
		left: 20px;
		width: calc(100% - 20px);
		height: calc(100% - 165px);
	}
	.sp_menu_list {
		overflow-y: scroll;
		overflow-x: hidden;
		height: 100%;
		padding-left: 30px;
		padding-bottom: 30px;
	}
	.sp_groupheader_megamenu_input_checkbox {
		opacity: 0;
		appearance: none;
		position: absolute;
	}
	.sp_groupheader_megamenu_label {
		display: flex;
		align-items: center;
		position: relative;
		height: 45px;
		cursor: pointer;
	}
	.sp_groupheader_megamenu_list_container {
		padding-left: 1em;
		padding-bottom: .5em;
	}
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label+.sp_groupheader_megamenu_list_container{
		min-height: 45px;
	}
	.sp_groupheader_megamenu_input_checkbox:checked+.sp_groupheader_megamenu_label+.sp_groupheader_megamenu_list_container{
		min-height: 0;
		transition: .3s;
			padding-bottom: 0;
	}
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label+.sp_groupheader_megamenu_list_container .sp_groupheader_megamenu_list{
		opacity: 1;
	}
	.sp_groupheader_megamenu_input_checkbox:checked+.sp_groupheader_megamenu_label+.sp_groupheader_megamenu_list_container .sp_groupheader_megamenu_list{
		opacity: 0;
		display: none;
	}
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle{
		position: absolute;
		left: -28px;
		top: 0;
		width: 20px;
		height: 45px;
		transition: 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
	}
	.sp_groupheader_megamenu_input_checkbox:checked+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle{
		transform: rotate(180deg);
	}
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle:before,
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle:after{
		content: '';
		width: 12px;
		height: 1px;
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -6px;
		background-color: #fff;
	}
	.sp_groupheader_megamenu_input_checkbox+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle:after{
		transform: rotate(0deg);
	}
	.sp_groupheader_megamenu_input_checkbox:checked+.sp_groupheader_megamenu_label .sp_groupheader_megamenu_label_toggle:after{
		transform: rotate(90deg);
	}
	.menu__list .sp_groupheader_megamenu_link{
		height: 40px;
		font-size: 16px;
	}

	/* company */
	.section_head.company {
		min-height: 0;
		height: auto;
		padding: 20px;
	}
	.section_head.message .section_head__item {
		flex-direction: column;
	}
	.section_head.message .section_head__text {
		width: 100%;
		background-color: transparent;
	}
	.section_head.message .section_head__text .inner {
		position: static;
		width: 100%;
		transform: translate(0, 0);
	}
	.section_message__text {
		width: auto;
	}
		.access_address_wrapper {
		flex-wrap: wrap;
	}
	.access_address_container {
		width: 100%;
		margin-bottom: 30px;
	}

	/* list */
	.section_list {
		width: auto;
		margin-top: 0;
		margin-bottom: 50px;
		padding: 0 20px;
	}
	.list_wrap {
		display: flex;
		flex-direction: column;
	}
	.list_wrap:first-child {
		border-top: 0;
		padding-top: 0;
	}
	.list_title, .list_detail, .list_title_item {
		width: auto;
	}
	.list_title_item {
		margin-bottom: 20px;
	}
	.list_detail_item {
		text-align: center;
	}
	.item_col .list_detail_item {
		display: block;
	}
	.item_col .list_detail_item_btn a.btn {
		margin-top: 10px;
	}
	/* vision */
	.vision_content_wrap {
		display: block;
	}
	.vision_content {
		width: auto;
	}
	.vision_mission {
		padding: 0 20px;
	}
	.vision_mission .list_circle_wrap.col3 li {
		width: 30%;
		background: none;
	}
	.vision_mission .list_circle_wrap li:before {
		background: url(/assets/img/bg_gry_group.png);
	}
	.mission_content {
		display: block;
	}
	.mission_content_group.mission_detail {
		width: auto;
		padding: 0;
	}
	/* video */
	.select-video-box, .video-box, .video-box video {
		width: 100%;
	}
	.select-video-box, .video-box {
		padding: 0 20px;
	}
	/* history */
	.section_news.border_gray .section_news__item {
		display: block;
	}
	.section_news.border_gray.history .section_news__item .date, .section_news.border_gray.history .section_news__item .title {
		display: block;
		width: auto;
	}
	/* map */
	.map iframe {
		width: 100% !important;
	}
	/* business */
	.strength_wrap, .business_wrap {
		width: auto;
	}
	.list_circle_wrap ul {
		display: block;
	}
	.list_circle_wrap li {
		margin: 0;
	}
	.section_content.capability {
		padding: 0;
	}
	.ph_content_wrap .text_wrap {
		padding: 0 20px;
	}
	.ph_content_item {
		width: 100%;
	}
	.thum_content_wrap {
		display: block;
	}
	.ph_image_wrap {
		width: 80%;
	}
	.thum_content_wrap.col2 .thum_content, .thum_content_wrap.col3 .thum_content {
		width: 100%;
		margin-bottom: 35px;
	}
	.thum_content_wrap.col2 .thum_content:nth-child(even) {
		margin-left: 0;
	}
	/* news */
	.select_wrap.news_select {
		width: 100%;
	}
	.select_wrap.news_select select {
		width: 100%;
	}
	.paging_wrap {
		width: 100%;
	}
	.section_content.policy {
		width: 100%;
	}
	.switch_content {
		padding: 20px;
	}
	.switch_title {
		padding: 10px;
	}
	.switch_title_item {
		width: calc(100% - 30px);
		min-height: 30px;
		padding-left: 30px;
		font-size: 14px;
		text-align: center;
	}
	.switch_title_item:before {
		font-size: 28px;
	}
	.switch_title_item:before {
		width: 20px;
		top: 50%;
		transform: translate(0, -50%);
	}
	/* finance */
	.section_content.finance {
		width: 100%;
	}
	/*  */
	.section_news.ir.library {
		width: 100%;
		padding: 0 20px;
	}
	.section_other.bg_white .section_other__list {
		padding: 0 20px;
	}
	.section_other.bg_white .section_other__item {
		width: 100%;
		min-height: 200px;
	}
	section.menu_content {
		width: 100%;
		padding: 0 20px;
	}
	.menu_list {
		width: 33%;
	}
	.menu_list .menu_link {
		height: auto;
		padding-right: 30px;
	}
	.menu_list .menu_link:before {
		right: 27px;
		height: calc(100% - 20px);
	}
	.menu_list .menu_link:after {
		top: 50%;
		right: 10px;
		transform: rotate(135deg) translate(0, -50%);
	}
	.section_content.each_color {
		padding: 20px;
	}
	.section_list.top_no_border {
		margin-top: 20px;
	}
	h2.no_border.num_title:after {
		top: 0;
	}
	.service_list_item {
		width: 48%;
	}
	.service_list_link {
		width: 100%;
		height: 80px;
	}
	.service_list_link img {
		height: 9vw;
	}
	.service_list_link.logo_large img {
		height: 13vw;
	}
	.service_list_link.logo_middle img {
		height: 4vw;
	}
	.service_list_link.logo_small img {
		height: 4.5vw;
	}
	.service_list_link.logo_xsmall img {
		height: 3vw;
	}
	.service_content_footer_wrap.col2 {
		width: 100%;
		display: block;
		padding: 0 20px;
	}
	.service_content_footer_wrap.col2 .service_content_item {
		width: 100%;
	}
	.service_content_footer_wrap.col2 .service_content_item:first-child {
		padding-bottom: 20px;
	}
	.tel_list_text {
		font-size: 26px;
	}
	.tel_list_item {
		padding-left: 90px;
	}
	.tel_list_item:after {
		width: 20px;
		height: 32px;
	}
	.section_content.our_strength .strength_wrap {
		width: 100%;
	}
	.list_col_wrap {
		display: block;
	}
	.tab_switch_wrap {
		display: block;
	}
	.tab_switch_wrap h3.bg_yellow {
		display: block;
		width: 100%;
		margin-bottom: 10px;
		writing-mode: lr;
	}
	.tab_switch_content {
		width: 100%;
	}
	.tab_menu_content_wrap {
		margin-left: 0;
		padding: 20px;
	}
	.tab_menu_content_wrap.col2 {
		width: 100%;
	}
	.tab_menu_content_wrap.col2.active {
		display: block;
	}
	.tab_menu_content_wrap.col2 .tab_menu_content {
		width: 100%;
	}
	.tab_menu_content_wrap.col2 .tab_menu_content:first-child {
		padding-bottom: 10px;
	}
	.tab_menu_item {
		width: 24%;
		margin-left: 0;
	}
	.tab_menu_link {
		font-size: 16px;
	}
	.col2 .tab_content_image, .tab_content_image {
		width: 100px;
	}
	.tab_content_tags {
		padding-bottom: 10px;
	}
	.tab_content_tags .tag {
		display: inline-block;
		margin-bottom: 5px;
	}
	/* btns */
	.btn_large {
		width: 100%;
	}
	.btn .icon_window {
		padding: 20px 40px 20px 20px;
		font-size: 14px;
		line-height: 1.5;
	}
	.btn .icon_window:before {
		right: 10px;
	}
	.btn .icon_window:after {
		right: 35px;
	}
	.btn_readmore.btn_middle a, .btn_readmore.btn_large a {
		width: 100%;
	}
	.btn_toggle {
		width: 30px;
		height: 30px;
	}
	.btn_toggle.close:before {
		top: 50%;
		left: 50%;
		width: 13px;
		transform: translate(-50%, -50%);
	}
	.btn_toggle.close:after {
		top: 50%;
		left: 50%;
		height: 13px;
		transform: translate(-50%, -50%);
	}
	/* pdf */
	.section_pdf {
		width: calc(100% - 40px);
		margin: 0 20px 100px;
	}
	.wrap_pdf {
		display: block;
	}
	.pdf_text_item {
		padding: 0 0 20px;
	}
	.pdf_img_item {
		text-align: center;
	}
	/* kessan */
	.section_content.kessan-list .section_news__item a .title {
		width: auto;
	}
}