@charset "UTF-8";
/* transition */
body { font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN',"ヒラギノ角ゴ ProN W3","游ゴシック Medium", "Yu Gothic Medium" ,'YuGothic',"游ゴシック",'Meiryo',"メイリオ",'MS PGothic',"ＭＳ Ｐゴシック",sans-serif; font-size: 16px; line-height: 1.8; color: #000; overflow-x: hidden; }

* { box-sizing: border-box; }

:root { scroll-behavior: auto; }

img { max-width: 100%; vertical-align: bottom; }

a, a:hover, a:focus { text-decoration: none; color: inherit; }

a { -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; -webkit-backface-visibility: hidden; backface-visibility: hidden; }

a:hover { color: #000; }

a:hover > img { opacity: 0.6; }

a > img { -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }

a:not([href]):not(.ui-corner-all) { pointer-events: none; }

a:not([href]):after { content: none !important; }

h1, h2, h3, h4, .h4, h5, .h5, h6, .h6, p, ul, ol, li, dl, dt, th, td, a { font-weight: 200; margin: 0; padding: 0; line-height: inherit; font-size: inherit; }

ul, li { list-style: none; }

p, li { line-height: 1.6; }

button { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

.content_fade { visibility: hidden; }

.flex-img { flex-shrink: 0; }

/*======================
	parts
======================*/
.archive_kv { position: relative; height: 36vw; max-height: 360px; min-height: 280px; background: url(../../images/archive_kv.png) right top no-repeat; background-size: auto 100%; background-color: #F2F1F0; }
.archive_kv .page_ttl { font-size: 40px; }
.archive_kv .page_ttl span { font-size: 15px; }
.archive_kv .page_subttl { color: #34426A; position: relative; margin-top: 24px; padding-top: 24px; }
.archive_kv .page_subttl:before { content: ""; height: 3px; width: 40px; background: #34426A; position: absolute; top: 0; left: 0; }

.page_kv_ttl { padding: 70px 60px 0; height: 100%; display: flex; flex-flow: column; justify-content: center; }

.home_kv + .page_kv_ttl { width: 60%; position: absolute; top: 0; left: 0; pointer-events: none; background: url(../../images/bg_kv.png) left top no-repeat; }

.page_ttl { font-family: "Marcellus", serif; letter-spacing: 0.05em; font-size: 56px; line-height: 1.3; }
.page_ttl span { display: block; font-family: "Shippori Mincho", serif; font-size: 16px; }

.section_ttl { font-family: "Marcellus", serif; letter-spacing: 0.05em; font-size: 40px; line-height: 1.3; }
.section_ttl span { display: block; font-family: "Shippori Mincho", serif; font-size: 15px; }
.section_ttl.section_ttl--min { font-size: 32px; }

.section_subttl { font-family: "Shippori Mincho", serif; font-size: 24px; }

.content_link { display: inline-block; font-size: 14px; line-height: 1.8; border-bottom: 1px solid #BEB9B4; padding: 0 50px 10px 0; position: relative; min-width: 100px; }
.content_link:before { position: absolute; bottom: -1px; left: 0; content: ''; width: 16px; height: 1px; background: #000; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.content_link:after { content: "→"; font-family: "Roboto Condensed", serif; color: #BEB9B4; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #BEB9B4; position: absolute; top: 3px; right: 0; -webkit-transition: 0.3s; -moz-transition: 0.3s; transition: 0.3s; }
.content_link:hover:before { width: 100%; }
.content_link:hover:after { background: #BEB9B4; color: #fff; }
.content_link.content_link--white { color: #fff; border-bottom: 1px solid #777; }
.content_link.content_link--white:before { background: #fff; }
.content_link.content_link--white:after { color: #fff; border: 1px solid #fff; }
.content_link.content_link--white:hover:after { background: #fff; color: #333; }
.content_link.content_link--view { font-size: 16px; font-family: "Roboto Condensed", serif; }

.link_bgblue { display: inline-block; color: #fff; font-size: 16px; font-weight: 300; background: #34426A; border: 1px solid #34426A; padding: .7em 50px .7em 50px; position: relative; text-align: center; min-width: 320px; }
.link_bgblue:after { content: "→"; font-family: "Roboto Condensed", serif; color: #fff; background: #34426A; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #fff; position: absolute; top: 50%; right: 24px; transform: translateY(-50%); }
.link_bgblue:focus { color: #fff; }
.link_bgblue:hover { color: #34426A; background: #fff; }
.link_bgblue.link_bgblue--dl:after { content: "↓"; font-family: 'Noto Sans JP'; color: #fff; width: 20px; height: 16px; text-align: center; font-size: 11px; border-width: 0 0 1px; background: transparent; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; line-height: 1; position: absolute; top: 50%; right: 24px; transform: translateY(-50%); transition: 0.2s; }
.link_bgblue.link_bgblue--dl:hover:after { color: #34426A; border-color: #34426A; }

.link_blank { background: url(../../images/ico_blank.svg) right center no-repeat; padding-right: 16px; }

.breadcrumbs { font-size: 13px; line-height: 1.4; padding-top: 2em; color: #BEB9B4; font-weight: 300; }
.breadcrumbs a { color: #BEB9B4; text-decoration: underline; }
.breadcrumbs a:hover { color: #000; }
.breadcrumbs .arrow { font-size: 12px; }

.text_white { color: #fff; }

.text_red { color: #C8151C; }

.bg_white { background-color: #fff !important; }

.text_small { font-size: 12px; }

.font_mincho { font-family: "Shippori Mincho", serif; }

section { padding-top: 100px; }

.section_bdr { padding-top: 100px; margin-top: 100px; border-top: 1px solid #34426A; }

.section_bdr_btm { padding-bottom: 100px; border-bottom: 1px solid #34426A; }

.section_subbdr { padding-top: 66px; margin-top: 66px; border-top: 1px solid #BEB9B4; }

/*======================
	header
======================*/
header { width: 100%; position: fixed; z-index: 1000; position: fixed; top: 0; left: 0; padding: 8px 8px 0; }
header:before { position: fixed; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.4); content: ""; pointer-events: none; opacity: 0; width: 100%; height: 100%; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; }

.header_logo { display: flex; align-items: center; }
.header_logo a { line-height: 1; }
.header_logo p { font-size: 10px; font-family: "Shippori Mincho", serif; line-height: 1.2; margin-left: 1.5em; }

.header_inner { height: 60px; background: #fff; box-shadow: 0 0 8px rgba(0, 0, 0, 0.25); padding: 0 20px 0 30px; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; position: relative; }
.header_inner .header_top { display: flex; align-items: center; justify-content: space-between; }

.header_right { display: flex; align-items: center; height: 60px; }

.headmenu { display: flex; height: 100%; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; }
.headmenu a { font-family: "Shippori Mincho", serif; }
.headmenu > li { position: relative; display: flex; align-items: center; }
.headmenu > li > a { display: flex; align-items: center; justify-content: center; font-size: 13px; margin: 0 1em; position: relative; }
.headmenu > li > a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; transform: scale(0, 0); transform-origin: left; }
.headmenu > li.link_contact a { color: #fff; font-weight: bold; background: #34426A; border: 1px solid #34426A; height: 40px; width: 160px; margin: 0 1em; }
.headmenu > li.link_contact a:hover { color: #34426A; background: #fff; }
.headmenu > li:hover > a:before { transform: scale(1, 1); }
.headmenu .headmenu_child { display: none; position: absolute; top: 58px; width: 280px; background: #FFF; z-index: -10; padding: 24px 20px; }
.headmenu .headmenu_child li a { font-size: 13px; display: block; margin-top: .3em; line-height: 1.8; position: relative; }
.headmenu .headmenu_child li a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; transform: scale(0, 0); transform-origin: left; }
.headmenu .headmenu_child li a:hover:before { transform: scale(1, 1); }
.headmenu .headmenu_child li:first-child a { font-size: 16px; border-bottom: 1px solid #BEB9B4; padding-bottom: .3em; margin: 0 0 1em; position: relative; }
.headmenu .headmenu_child li:first-child a:after { content: "→"; font-family: "Roboto Condensed", serif; color: #BEB9B4; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #BEB9B4; position: absolute; top: 7px; right: 0; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; }
.headmenu .headmenu_child li:first-child a:hover:after { background: #BEB9B4; color: #fff; }

.link_sns, .link_contact { line-height: 1; }
.link_sns > a:before, .link_contact > a:before { content: none !important; }

.link_sns a { width: 20px; }

/*ハンバーガーボタン*/
.allmenu_btn { width: 40px; height: 40px; cursor: pointer; position: relative; }
.allmenu_btn span { display: block; width: 20px; height: 2px; background: #000; position: absolute; left: 10px; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.allmenu_btn span:first-child { top: 12px; }
.allmenu_btn span:nth-child(2) { top: 19px; }
.allmenu_btn span:last-child { bottom: 12px; }

.allmenu_wrap { opacity: 0; pointer-events: none; }

.allmenu { opacity: 0; pointer-events: none; width: 100%; padding: 1em; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; transition: all 0.2s ease-out; overflow: auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.allmenu .link_sns, .allmenu .link_contact { margin-right: 26px; }
.allmenu a { font-family: "Shippori Mincho", serif; }

.allmenu_section { width: 18%; }
.allmenu_section a { display: block; margin-top: .5em; position: relative; font-size: 13px; }
.allmenu_section a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; transform: scale(0, 0); transform-origin: left; }
.allmenu_section a:hover:before { transform: scale(1, 1); }
.allmenu_section .allmenu_top a { display: block; font-size: 16px; border-bottom: 1px solid #BEB9B4; padding-bottom: .3em; margin: 0 0 1.5em; position: relative; }
.allmenu_section .allmenu_top a:after { content: "→"; font-family: "Roboto Condensed", serif; color: #BEB9B4; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #BEB9B4; position: absolute; top: 7px; right: 0; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; }
.allmenu_section .allmenu_top a:hover:after { background: #BEB9B4; color: #fff; }

.allmenu_open .allmenu_btn span:first-child { -webkit-transform: translateY(7px) rotate(-45deg); -ms-transform: translateY(7px) rotate(-45deg); transform: translateY(7px) rotate(-45deg); }
.allmenu_open .allmenu_btn span:nth-child(2) { opacity: 0; }
.allmenu_open .allmenu_btn span:last-child { -webkit-transform: translateY(-7px) rotate(45deg); -ms-transform: translateY(-7px) rotate(45deg); transform: translateY(-7px) rotate(45deg); }
.allmenu_open .header_inner { height: 570px; }
.allmenu_open .headmenu { opacity: 0; pointer-events: none; }
.allmenu_open .allmenu_wrap { opacity: 1; pointer-events: auto; }
.allmenu_open .allmenu { opacity: 1; pointer-events: auto; transition-delay: .4s; }
.allmenu_open header:before { opacity: 1; }

.allmenu_toggle { position: relative; }

.allmenu_spmenu { display: none; }

/*======================
	front-page
======================*/
.home_kv_wrap { padding: 0; }

.home_kv_cont { position: relative; }

.home_kv { height: 100vh; min-height: 560px; }
.home_kv li { background-position: top center; background-repeat: no-repeat; background-size: cover; height: 100%; }
.home_kv .slick-list, .home_kv .slick-track { height: 100%; }

.home_kv_img { height: 100%; overflow: hidden; position: relative; }
.home_kv_img img { height: 100%; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; /*IE*/ }
.home_kv_img:after { content: ""; position: absolute; background: rgba(0, 0, 0, 0.5); width: 100%; height: 100%; top: 0; left: 0; }

.home_kv_ttl { width: 100%; z-index: 20; position: absolute; bottom: 56px; padding: 0 60px; }
.home_kv_ttl p, .home_kv_ttl a { color: #fff; }
.home_kv_ttl a:hover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60); opacity: 0.6; }

.slick-dots { width: auto; bottom: 24px; left: 60px; }
.slick-dots li { width: 60px; height: 10px; margin: 0 8px 0 0; }
.slick-dots li button { width: 60px; height: 2px; padding: 0; background: rgba(255, 255, 255, 0.5); }
.slick-dots li button:before { content: none; }
.slick-dots li.slick-active button { background: #fff; }

.slick-dotted.slick-slider { margin-bottom: 0; }

@keyframes kvzoom { 0% { transform: scale(1.1); }
  100% { transform: scale(1); } }
.add-animation .home_kv_img { animation: kvzoom 10s linear 0s normal both; }

.home_kv_text { width: 100%; padding: 0 60px; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; }
.home_kv_text h1 { font-family: "Shippori Mincho", serif; font-size: 24px; }
.home_kv_text p { font-family: "Marcellus", serif; letter-spacing: 0.05em; font-size: 56px; line-height: 1.4; margin-top: .3em; }

.one-view { position: absolute; height: calc(100vh - 16px); min-height: 560px; width: 1em; display: flex; justify-content: center; overflow: hidden; right: 60px; top: 0; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; line-height: 1; pointer-events: none; }

.scroll-arrow { position: absolute; bottom: 0; }
.scroll-arrow p { color: #fff; line-height: 1; font-size: 10px; }
.scroll-arrow p span { position: absolute; bottom: 30px; }
.scroll-arrow p:after { position: absolute; bottom: 0; right: 50%; content: ''; border-right: 1px solid #fff; width: 1px; animation: border_anim 2s infinite ease-in-out; }
.scroll-arrow div { display: block; width: 10px; height: 10px; position: relative; }
.scroll-arrow div:after { content: ''; display: block; margin: 0; padding: 0; width: 8px; height: 8px; border-top: 1px solid #fff; border-right: 1px solid #fff; -moz-transform: rotate(135deg); -webkit-transform: rotate(135deg); -o-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); position: absolute; left: 0.5px; bottom: 1px; }
.scroll-arrow :root { scroll-behavior: auto; }

/* animation */
@keyframes border_anim { 0% { transform: translateY(-24px); height: 0px; }
  50% { transform: translateY(0px); height: 24px; }
  100% { transform: translateY(24px); height: 24px; } }
.works_list { display: flex; flex-wrap: wrap; }
.works_list .works_list_img { position: relative; overflow: hidden; }
.works_list .works_list_img img { width: 100%; height: 30vw; max-height: 400px; display: block; object-fit: cover; font-family: 'object-fit: cover;'; /*IE*/ }
.works_list .works_list_img:hover .works_mask, .works_list .works_list_img:hover .works_view_text { opacity: 1; }
.works_list .works_mask, .works_list .works_view_text { opacity: 0; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; text-align: center; }
.works_list .works_mask { width: 100%; height: 100%; mix-blend-mode: multiply; background-color: rgba(52, 66, 106, 0.7); position: absolute; top: 0; left: 0; }
.works_list .works_view_text { font-family: "Open Sans", sans-serif; color: #fff; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.works_list .works_list_text .content_link { width: 100%; word-break: break-word; }
.works_list .works_list_text .content_link:after { top: 12px; }
.works_list .works_list_text .content_link .new { font-size: 10px; color: #fff; background: #34426A; border-radius: 20px; width: 32px; height: 32px; display: inline-block; line-height: 32px; text-align: center; position: absolute; right: 30px; top: 5px; }

.works_list_tag { font-size: 14px; }
.works_list_tag a { display: inline-block; }
.works_list_tag a:hover { color: #34426A; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }

.works_list--home { justify-content: space-between; margin-top: 30px; }
.works_list--home li { width: 50%; padding-bottom: 40px; }
.works_list--home li:nth-child(odd) { border-right: 1px solid #BEB9B4; padding-right: 2%; }
.works_list--home li:nth-child(even) { padding-left: 2%; }
.works_list--home .works_list_text { padding: 10px 60px; }
.works_list--home .works_list_text .content_link { font-size: 24px; padding-right: 80px; }

.works_archive { margin-left: -3%; margin-bottom: 30px; }
.works_archive li { width: 22%; margin-left: 3%; margin-bottom: 30px; }
.works_archive .works_list_img img { height: 180px; }
.works_archive .works_list_text { padding: 10px 0; }
.works_archive .works_list_text .content_link { font-size: 16px; padding-right: 36px; }
.works_archive .works_list_text .content_link:after { top: 7px; }
.works_archive .works_list_tag a { font-size: 13px; }
.works_archive .works_view_text { font-size: 13px; }

.works_tag_all { background: #F2F1F0; padding: 20px 0; }
.works_tag_all .tag_all_ttl { font-family: "Marcellus", serif; letter-spacing: 0.05em; }
.works_tag_all a { border-bottom: 1px solid #000; margin: 0 20px; font-size: 14px; }
.works_tag_all a:hover { opacity: .6; border-bottom: 1px solid #34426A; }
.works_tag_all a.link_blank { border: 0; }

.home_philosophy { background: url(../../images/bg_white_l.png) left bottom no-repeat, url(../../images/bg_white_r.png) right top no-repeat; background-size: 500px; padding-bottom: 80px; }
.home_philosophy h3, .home_philosophy p { font-family: "Shippori Mincho", serif; letter-spacing: .1em; }
.home_philosophy h3 { font-size: 40px; }
.home_philosophy h3 span { display: block; font-family: "Marcellus", serif; letter-spacing: 0.05em; color: #BEB9B4; font-size: 24px; }
.home_philosophy p { line-height: 2.3; }

.home_about { display: flex; align-items: center; height: 500px; background: url(../../images/bg_home_about.jpg) center no-repeat; background-size: cover; }
.home_about .section_ttl { font-size: 56px; }

.news_list li { border-bottom: 1px solid #BEB9B4; }
.news_list li:first-child { border-top: 1px solid #BEB9B4; }
.news_list li a { display: flex; width: 100%; padding: 1.4em 0; position: relative; }
.news_list li a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; transform: scale(0, 0); transform-origin: left; }
.news_list li a:hover:before { transform: scale(1, 1); }
.news_list .news_list_time, .news_list .news_list_ttl { line-height: 20px; }
.news_list .news_list_time { width: 92px; color: #BEB9B4; font-size: 13px; }
.news_list .news_list_ttl { width: calc(100% - 92px); font-size: 15px; }

.media_list { display: flex; flex-wrap: wrap; }
.media_list li { width: 29%; margin-left: 6.5%; }
.media_list li:nth-child(3n+1) { margin-left: 0; }
.media_list .media_list_time { color: #BEB9B4; font-size: 13px; }
.media_list .media_list_ttl { font-size: 15px; }
.media_list .media_list_img { width: 100%; aspect-ratio: 7 / 5; overflow: hidden; }
.media_list .media_list_img img { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; /*IE*/ -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.media_list a:hover .media_list_img img { transform: scale(1.1); }

.home_business_wrap { height: 500px; padding-top: 40px; background: url(../../images/bg_blue_l.png) left bottom no-repeat, url(../../images/bg_blue_r.png) right top no-repeat, #34426A; background-size: 500px; }

.home_business_list { margin-top: -190px; }
.home_business_list li + li { margin-top: 60px; }
.home_business_list .business_list_img { overflow: hidden; }
.home_business_list .business_list_img img { -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.home_business_list a:hover .business_list_img img { transform: scale(1.1); }
.home_business_list .no_link a { pointer-events: none; }
.home_business_list .no_link a:hover .business_list_img img { transform: scale(1); }
.home_business_list .no_link .business_list_text .content_link:hover:before { width: 16px; }
.home_business_list .no_link .business_list_text .content_link:after { content: none; }
.home_business_list .business_list_text { max-width: 320px; width: 92%; font-size: 15px; }
.home_business_list .business_list_text .content_link { font-size: 24px; width: 100%; }
.home_business_list .business_list_text .content_link span { font-size: 18px; display: block; }
.home_business_list .business_list_text .content_link:after { top: 12px; }

.home_column_wrap { background: #F4F1E3; padding: 40px 0 80px; }

.column_list { display: flex; flex-wrap: wrap; margin-top: 40px; }
.column_list li { position: relative; width: 18%; margin-left: 2%; }
.column_list li:nth-child(5n+1) { margin-left: 0; }

.home_column_list li { width: 22%; margin-left: 4%; margin-top: 40px; }
.home_column_list li:first-child { margin-left: 0; }

.column_list_img { width: 100%; aspect-ratio: 1 / 1; overflow: hidden; }
.column_list_img img { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; /*IE*/ -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }

.column_list_link { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 10; }
.column_list_link:hover + .column_list_img img { transform: scale(1.1); }

.column_list_ttl { font-size: 14px; }

.column_list_tag { color: #fff; font-size: 13px; line-height: 1; padding: 3px .5em; margin: 8px 8px 0 0; background: #34426A; border: 1px solid #34426A; position: relative; z-index: 20; }
.column_list_tag:hover { color: #34426A; background: #fff; }

.home_other { padding-bottom: 100px; }

.home_other_list { display: flex; justify-content: space-between; margin-top: 60px; }
.home_other_list li { width: 32.5%; }
.home_other_list .home_other_img { position: relative; overflow: hidden; }
.home_other_list .home_other_img img { width: 100%; height: 32vw; max-height: 270px; display: block; object-fit: cover; font-family: 'object-fit: cover;'; /*IE*/ -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.home_other_list .home_other_img:hover img { transform: scale(1.1); }
.home_other_list .home_other_img .other_mask { width: 100%; height: 100%; mix-blend-mode: multiply; background-color: rgba(0, 0, 0, 0.4); position: absolute; top: 0; left: 0; }
.home_other_list .home_other_img .other_view_text { font-family: "Marcellus", serif; letter-spacing: 0.05em; color: #fff; font-size: 20px; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/*======================
	works
======================*/
.works_kv .home_kv_img:after, .company_kv .home_kv_img:after { background: #f2f1f0; background: -moz-linear-gradient(90deg, #f2f1f0 0%, #f2f1f0 38%, rgba(243, 242, 241, 0) 60%, rgba(255, 255, 255, 0) 100%); background: -webkit-linear-gradient(90deg, #f2f1f0 0%, #f2f1f0 38%, rgba(243, 242, 241, 0) 60%, rgba(255, 255, 255, 0) 100%); background: linear-gradient(90deg, #f2f1f0 0%, #f2f1f0 38%, rgba(243, 242, 241, 0) 60%, rgba(255, 255, 255, 0) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f2f1f0",endColorstr="#ffffff",GradientType=1); }
.works_kv .home_kv_ttl, .company_kv .home_kv_ttl { text-align: right; }
.works_kv .slick-dots, .company_kv .slick-dots { left: auto; right: 60px; }

.pnavi { display: flex; justify-content: center; }
.pnavi > * { color: #BEB9B4; font-size: 14px; line-height: 1; padding: 0 10px; font-weight: 200; border-left: 1px solid #BEB9B4; }
.pnavi > *:first-child { border-left: none; }
.pnavi .page-numbers.current, .pnavi a.page-numbers:hover { color: #BEB9B4; font-weight: 400; }

.page_kvnone { padding-top: 160px; }

.single_ttl { font-size: 32px; }

.single_tag { font-size: 15px; }

.works_ttl { font-family: "Shippori Mincho", serif; font-size: 32px; }

.worls_text { font-family: "Shippori Mincho", serif; }

.works_voice { font-family: "Shippori Mincho", serif; border: 1px solid #707070; padding: 40px; position: relative; }

.works_voice_ttl { font-size: 20px; line-height: 1; background: #fff; padding: 0 1em; position: absolute; top: -.5em; left: 50%; transform: translateX(-50%); }

.slide_works { margin-top: 80px; }
.slide_works .slide_works_main, .slide_works .slide_works_thumb { opacity: 0; transition: 0.3s; position: relative; }
.slide_works .slide_works_main.slick-initialized, .slide_works .slide_works_thumb.slick-initialized { opacity: 1; }
.slide_works .slide_works_main.thumbnail-img, .slide_works .slide_works_thumb.thumbnail-img { margin-bottom: 0; }
.slide_works .slide_works_main img, .slide_works .slide_works_thumb img { width: auto; height: 100%; margin: auto; }
.slide_works .slide_works_main .slick-list .thumbnail-img img, .slide_works .slide_works_thumb .slick-list .thumbnail-img img { width: auto; object-fit: cover; }
.slide_works .slide_works_main .slidePrev, .slide_works .slide_works_main .slideNext, .slide_works .slide_works_thumb .slidePrev, .slide_works .slide_works_thumb .slideNext { display: block; width: 80px; height: 100%; cursor: pointer; -webkit-transition: 0.4s; transition: 0.4s; position: absolute; top: 0; z-index: 100; }
.slide_works .slide_works_main .slidePrev:after, .slide_works .slide_works_main .slideNext:after, .slide_works .slide_works_thumb .slidePrev:after, .slide_works .slide_works_thumb .slideNext:after { content: ''; display: block; margin: 0; padding: 0; width: 20px; height: 20px; border-top: 2px solid #000; border-right: 2px solid #000; position: absolute; top: 50%; }
.slide_works .slide_works_main .slidePrev:hover, .slide_works .slide_works_main .slideNext:hover, .slide_works .slide_works_thumb .slidePrev:hover, .slide_works .slide_works_thumb .slideNext:hover { opacity: .5; }
.slide_works .slide_works_main .slidePrev, .slide_works .slide_works_thumb .slidePrev { left: 0; }
.slide_works .slide_works_main .slidePrev:after, .slide_works .slide_works_thumb .slidePrev:after { left: 5px; transform: translateY(-50%) rotate(-135deg); }
.slide_works .slide_works_main .slideNext, .slide_works .slide_works_thumb .slideNext { right: 0; }
.slide_works .slide_works_main .slideNext:after, .slide_works .slide_works_thumb .slideNext:after { right: 5px; transform: translateY(-50%) rotate(45deg); }
.slide_works .slide_works_main { height: 600px; overflow: hidden; }
.slide_works .slide_works_main .slick-list { width: calc(100% - 160px); margin: 0 80px; height: 100%; object-fit: contain; }
.slide_works .slide_works_main .slick-list * { width: 100%; height: 100%; object-fit: contain; }
.slide_works .slide_works_thumb { height: 150px; margin-top: 48px; padding: 0; }
.slide_works .slide_works_thumb .slick-list, .slide_works .slide_works_thumb .slick-list * { width: calc(100% - 160px); height: 100%; object-fit: contain; }
.slide_works .slide_works_thumb .slick-list { margin: 0 80px; padding: 0 !important; }
.slide_works .slide_works_thumb .slick-list .thumbnail-img { width: auto !important; opacity: 0.5; margin: 0 4px; cursor: pointer; }
.slide_works .slide_works_thumb .slick-list .thumbnail-img.slick-current { opacity: 1; }

.content_table { width: 100%; }
.content_table tr:last-child th, .content_table tr:last-child td { border-bottom: 1px solid #BEB9B4; }
.content_table th, .content_table td { vertical-align: baseline; font-size: 14px; border-top: 1px solid #BEB9B4; padding: 1em 0; }
.content_table th { width: 130px; font-weight: normal; }
.content_table td { width: calc(100% - 130px); }

.works_free * { margin-bottom: 1.5em; }
.works_free a { text-decoration: underline; }
.works_free a:hover { color: #34426A; opacity: .6; }

.youtube { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/*======================
	media
======================*/
.media_archive li { margin-bottom: 48px; }

/*======================
	column
======================*/
.column_list_time { color: #BEB9B4; font-size: 13px; }

.column_archive li { margin-bottom: 48px; }

.single_column .single_text { font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN',"ヒラギノ角ゴ ProN W3"; }
.single_column .single_text picture { display: block; width: 80%; margin: 3em auto; }

/*======================
	service
======================*/
.company_kv { height: 100vh; min-height: 560px; }
.company_kv li { background-position: top center; background-repeat: no-repeat; background-size: cover; height: 100%; }
.company_kv + .page_kv_ttl { width: 60%; position: absolute; top: 0; left: 0; background: url(../../images/bg_kv.png) left top no-repeat; }
.company_kv + .page_kv_ttl p { font-family: "Shippori Mincho", serif; }

.company_ttl { font-family: "Shippori Mincho", serif; font-size: 40px; line-height: 1.6; letter-spacing: .1em; }
.company_ttl span { font-family: "Marcellus", serif; letter-spacing: 0.05em; color: #BEB9B4; font-size: 24px; display: block; }
.company_ttl + p { font-family: "Shippori Mincho", serif; line-height: 2.4; }

.company_service { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 60px; }
.company_service > div { flex: 1 1 calc(49% - 16px); background: #F4F1E3; padding: 80px; }
.company_service h3 { font-size: 20px; }

.company_reason > div { display: flex; border-top: 1px solid #BEB9B4; padding: 40px 0; align-items: flex-start; }

.company_reason_ttl { display: flex; align-items: center; width: 400px; padding-right: 1em; }
.company_reason_ttl h3 { font-size: 20px; margin-left: 1.5em; }
.company_reason_ttl + p { width: calc(100% - 400px); }

.ico_mov_border { width: 28px; height: 28px; position: relative; overflow: hidden; transform: rotate(-45deg) scale(1.001); backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.ico_mov_border span { position: absolute; width: 28px; height: 4px; background-color: #34426A; transform-origin: center; z-index: 1; box-shadow: 0 0 0 2px #F4F1E3; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.ico_mov_border span:nth-child(1) { top: 0; }
.ico_mov_border span:nth-child(2) { top: 8px; }
.ico_mov_border span:nth-child(3) { top: 16px; }
.ico_mov_border span:nth-child(4) { top: 24px; }
.ico_mov_border .mask { position: absolute; height: 6px; background-color: #F4F1E3; width: 0; animation: expandContract 3s infinite; animation-timing-function: ease-in-out; animation-delay: 0s; transform-origin: center; transform: rotate(0deg); z-index: 2; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.ico_mov_border .mask:nth-child(5) { top: 0; animation-delay: 0s; }
.ico_mov_border .mask:nth-child(6) { top: 7px; animation-delay: 0.1s; }
.ico_mov_border .mask:nth-child(7) { top: 15px; animation-delay: 0.2s; }
.ico_mov_border .mask:nth-child(8) { top: 23px; animation-delay: 0.3s; }

.ico_mov_border--gray span { box-shadow: 0 0 0 2px #F2F1F0; }
.ico_mov_border--gray .mask { background-color: #F2F1F0; }

@keyframes expandContract { 0% { width: 0; left: 0; }
  25% { width: 28px; left: 0; }
  25.01% { width: 28px; left: auto; right: 0; }
  50% { width: 0; right: 0; }
  100% { width: 0; right: 0; } }
.ico_mov_square { width: 20px; height: 20px; background-color: #34426A; margin-left: 4px; transform: rotate(45deg); animation: rotateSquare 2s ease-in-out infinite; }

@keyframes rotateSquare { 0%, 50% { transform: rotate(45deg); }
  100% { transform: rotate(225deg); } }
/*======================
	company
======================*/
.company_table { width: 100%; border-bottom: 1px solid #BEB9B4; }
.company_table th, .company_table td { font-size: 14px; vertical-align: baseline; border-top: 1px solid #BEB9B4; padding: 2.2em 0; }
.company_table th { width: 170px; font-weight: 400; }
.company_table td { width: calc(100% - 170px); }
.company_table td span { font-weight: 400; }

.table_map .table_map_add { width: 260px; }
.table_map .table_map_iframe { width: calc(100% - 260px); }
.table_map .table_map_iframe iframe { width: 100%; height: 300px; }

.company_message { background: url(../../images/bg_white_l2.png) left bottom 40px no-repeat; background-size: 500px; }

.company_message_text { line-height: 2.4; }

/*======================
	society
======================*/
.society_pagelink { display: flex; flex-wrap: wrap; margin-left: -1%; }
.society_pagelink a { display: block; width: 24%; aspect-ratio: 1 / 1; margin-left: 1%; margin-bottom: 10px; padding: 30px; background: #F2F1F0; border: 1px solid #F2F1F0; }
.society_pagelink a:hover { border-color: #BEB9B4; }
.society_pagelink a p { font-size: 20px; position: relative; }

.society_activities { border-top: 1px solid #BEB9B4; }
.society_activities h3 { font-size: 20px; }

.society_activities_list { display: flex; flex-wrap: wrap; margin-left: -1%; }
.society_activities_list .btn-primary { width: 24%; color: #000; font-weight: 200; margin-left: 1%; margin-bottom: 10px; padding: 24px 24px 76px; background: #F2F1F0; position: relative; border: 1px solid #fff; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.society_activities_list .btn-primary:after { content: ""; position: absolute; width: 92px; height: 5px; background-color: #fff; bottom: 27px; right: -17px; transform: rotate(-45deg); }
.society_activities_list .btn-primary .btn-primary_arrow { font-family: "Roboto Condensed", serif; color: #000; background: transparent; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #000; position: absolute; bottom: 24px; left: 24px; }
.society_activities_list .btn-primary:hover { border-color: #BEB9B4; }
.society_activities_list .btn-primary:focus { box-shadow: none; }

.society_modal { padding-right: 0 !important; }
.society_modal li { background: url(../../images/ico_check.svg) top 2px left no-repeat; padding-left: 40px; margin: 12px 0; }
.society_modal .modal-header { border-bottom: 0; padding: 24px; }
.society_modal .btn-close { filter: invert(1) grayscale(100%) brightness(0%) !important; opacity: 1 !important; }
.society_modal .btn-close:focus { box-shadow: none; }
.society_modal .modal-dialog { transform: none !important; width: 800px; max-width: 95%; }
.society_modal .modal-content { border: none !important; border-radius: 0 !important; box-shadow: none !important; }
.society_modal .modal-body { display: flex; justify-content: center; padding: 20px 3em 80px; }
.society_modal .modal-body ul { width: 600px; max-width: 100%; }
.society_modal .modal-backdrop { background-color: rgba(0, 0, 0, 0.1) !important; }
.society_modal .modal-backdrop.show { opacity: 1 !important; }

body.modal-open { overflow: auto !important; padding-right: 0 !important; }

/*======================
	single
======================*/
.page_single { padding-top: 160px; }

.single_date { color: #BEB9B4; font-size: 14px; }

.single_ttl_mincho { font-family: "Shippori Mincho", serif; }

.single_summary { border-bottom: 1px solid #34426A; }
.single_summary h2 { display: flex; align-items: center; font-size: 20px; letter-spacing: .1em; }
.single_summary h2:before, .single_summary h2:after { content: ""; height: 1px; flex-grow: 1; background: #34426A; }
.single_summary h2:before { margin-right: 1rem; }
.single_summary h2:after { margin-left: 1rem; }
.single_summary p { padding: 2em; }

.single_text { font-family: "Shippori Mincho", serif; }
.single_text section { padding-top: 80px; }
.single_text h2, .single_text h3, .single_text h4 { margin-top: 2.5em; margin-bottom: 1.5em; }
.single_text h2 { font-size: 24px; border-bottom: 1px solid #34426A; margin-top: 1.5em; padding-bottom: .4em; }
.single_text h3 { font-size: 20px; border-left: 8px solid #34426A; padding-left: 1em; }
.single_text h4 { font-weight: 500; color: #34426A; margin-bottom: .5em; }
.single_text p, .single_text li { line-height: 1.8; }
.single_text p, .single_text ul { margin-bottom: 1em; }
.single_text a { text-decoration: underline; color: #34426A; }
.single_text a:hover { opacity: 0.6; }
.single_text hr { border-bottom: 1px solid #34426A; margin: 3em 0; }
.single_text table, .single_text th, .single_text td { border: 1px solid #333; }
.single_text table p, .single_text th p, .single_text td p { margin: 0; padding: .5em; }
.single_text img { width: 100%; height: auto; }
.single_text img.wp-image-3218 { width: auto; }
.single_text .main_img { margin-top: 100px; }
.single_text .column_section { background: #F2F1F0; padding: 2em; }
.single_text .column_section h3 { margin: 0; padding: 0; border: 0; }
.single_text .column_section a { color: #000000; text-decoration: none; }

.cta_dl { margin: 60px 0 0; }
.cta_dl h3 { color: #303F64; font-size: 24px; line-height: 1.5; font-weight: 500; margin: 0; padding: 60px 1em 70px; border-left: none; background: #F4F1E3 url(../../images/bg_column_cta.png) right top no-repeat; background-size: auto 100%; }
.cta_dl p { margin-top: -27px; }
.cta_dl a { color: #fff; text-decoration: none; }
.cta_dl a:hover { opacity: 1; }

.author_c_top { margin: 60px 0 0; padding: 24px; background: #F2F1F0; }
.author_c_top h3 { color: #303F64; font-size: 24px; font-weight: 500; }

.author_c { background: #F2F1F0; padding: 24px; border-top: 1px solid #34426A; }
.author_c .ttl { font-size: 15px; font-weight: normal; }
.author_c .thumb { width: 170px; }
.author_c .thumb img { width: 100%; height: auto; }
.author_c .flex { margin-top: 1em; }
.author_c .text { width: calc(100% - 206px); font-size: 14px; }
.author_c .name { display: block; }

.single_pager a { display: block; line-height: 1.6; position: relative; }
.single_pager a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; transform: scale(0, 0); transform-origin: left; }
.single_pager a:hover:before { transform: scale(1, 1); }

/*======================
	contact
======================*/
.contact_banner { margin-top: 100px; justify-content: space-between; }
.contact_banner > p { width: 32%; }
.contact_banner .link_bgblue { display: flex; flex-flow: column; align-items: center; justify-content: center; height: 80px; width: 100%; min-width: 0; }

.page_form { background: url(../../images/archive_kv.png) right top no-repeat; background-size: auto 480px; background-color: #F2F1F0; padding: 170px 0 100px; }
.page_form section { padding-top: 0; }

.box_white { background: #fff; padding: 100px; }
.box_white .text_small { font-size: 10px; display: block; }
.box_white a { text-decoration: underline; font-weight: 400; }
.box_white a:hover { opacity: 0.6; }
.box_white .wpcf7-list-item { font-size: 14px; font-weight: 400; line-height: 2; margin: 0 1em 0 0; }
.box_white .link_bgblue { margin: auto; padding: 0; }
.box_white .link_bgblue input[type="submit"] { width: 320px; color: #fff; border: 0; background: #34426A; padding: .7em 50px .7em 50px; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.box_white .link_bgblue input[type="submit"]:hover { color: #34426A; background: #fff; }
.box_white .link_bgblue input[type="submit"]:disabled { color: #fff; background: #747c8f; }
.box_white .link_bgblue input[type="submit"]:disabled:hover { color: #fff; background: #747c8f; }
.box_white .link_bgblue input[type="submit"].wpcf7c-btn-back, .box_white .link_bgblue input[type="submit"].wpcf7c-elm-step2 { width: 240px; }
.box_white .link_bgblue input[type="submit"].wpcf7c-btn-back { margin-right: 40px; }
.box_white .link_bgblue .wpcf7-spinner { display: none; }

.contact_table input[type="text"], .contact_table input[type="email"], .contact_table input[type="tel"], .contact_table input[type="checkbox"], .contact_table textarea { font-size: 14px; font-weight: 400; border: 1px solid #BEB9B4; padding: 10px; }
.contact_table input[type="text"], .contact_table input[type="email"], .contact_table input[type="tel"], .contact_table textarea { width: 100%; }
.contact_table textarea { height: 240px; }
.contact_table th, .contact_table td { font-size: 14px; font-weight: 400; vertical-align: middle; padding-bottom: 40px; }
.contact_table th { width: 240px; }
.contact_table td { width: calc(100% - 240px); }
.contact_table .req { color: #C8151C; font-size: 14px; }

.form_list .clr { display: table; width: 100%; }
.form_list .col { display: table-cell; }
.form_list .col.span_3, .form_list .col.span_9 { font-size: 14px; font-weight: 400; vertical-align: middle; padding-bottom: 40px; vertical-align: top; }
.form_list .col.span_3 { width: 240px; padding-top: 10px; }
.form_list .col.span_3.required:after { color: #C8151C; content: "*"; display: inline-block; }
.form_list .col.span_9 { width: calc(100% - 240px); }
.form_list input[type="text"], .form_list input[type="email"], .form_list input[type="tel"], .form_list input[type="checkbox"], .form_list textarea { font-size: 14px; font-weight: 400; border: 1px solid #BEB9B4; padding: 10px; }
.form_list input[type="text"], .form_list input[type="email"], .form_list input[type="tel"], .form_list textarea { width: 100%; }
.form_list textarea { height: 240px; }
.form_list .f_comb { font-size: 10px; font-weight: 400; }

.span_8.policy { width: 600px; max-width: 100%; margin: auto; }
.span_8.policy > h2, .span_8.policy .policy_check { text-align: center; font-size: 14px; }
.span_8.policy > h2 { background: #34426A; color: #fff; font-weight: 400; padding: .2em; letter-spacing: .05em; }
.span_8.policy .policy_check { padding: 1em 0; }
.span_8.policy .policy_check label { cursor: pointer; }
.span_8.policy .policy_html { overflow-y: scroll; border: 1px solid #BEB9B4; height: 200px; padding: 20px; font-size: 13px; }
.span_8.policy .policy_html h1 { font-size: 16px; }
.span_8.policy .policy_html h2, .span_8.policy .policy_html h3 { font-weight: 500; }
.span_8.policy .policy_html .mt-5 { margin-top: 1em !important; }
.span_8.policy .policy_html .mt-4 { margin-top: .5em !important; }
.span_8.policy .privacy_info { border-width: 1px 0 0 0; padding: 1em 0 0; }

.row.submit_btn { margin: 40px auto 0; width: 320px; position: relative; }
.row.submit_btn:after { content: "→"; font-family: "Roboto Condensed", serif; color: #fff; background: #34426A; font-size: 14px; text-align: center; height: 20px; width: 20px; line-height: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; border: 1px solid #fff; position: absolute; top: 50%; right: 24px; transform: translateY(-50%); }
.row.submit_btn input[type="submit"] { width: 320px; color: #fff; font-size: 16px; font-weight: 300; background: #34426A; border: 1px solid #34426A; padding: .7em 50px .7em 50px; padding: .7em 50px .7em 50px; -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
.row.submit_btn input[type="submit"]:hover { color: #34426A; background: #fff; }

article.resp { margin-top: 3em; }

/*======================
	privacy
======================*/
.page_privacy { background: #F2F1F0; }
.page_privacy h2, .page_privacy h3 { font-weight: 500; }
.page_privacy h2 { font-size: 18px; }
.page_privacy p { line-height: 2; }

.privacy_info { border: 1px solid #BEB9B4; padding: 24px; }

/*======================
	footer
======================*/
footer { background: #F4F1E3; padding: 40px 0; }

.footer_contact { padding-bottom: 80px; border-bottom: 1px solid #6D6D6F; }
.footer_contact h2 { font-family: "Shippori Mincho", serif; font-size: 24px; background: url(../../images/ico_contact.svg) top center no-repeat; padding-top: 66px; }
.footer_contact .link_bgblue { font-size: 18px; padding: .8em 50px .8em 50px; }

.foot_company { margin-top: 80px; }
.foot_company h2 { display: inline-block; font-size: 13px; font-family: "Shippori Mincho", serif; }
.foot_company h2 span { display: block; text-align: right; }

.foot_nav { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 80px; font-family: "Shippori Mincho", serif; }
.foot_nav > div { padding: 0 40px; }
.foot_nav li { font-size: 13px; }
.foot_nav li a { display: block; line-height: 1.6; position: relative; padding: .4em 3em .4em 16px; }
.foot_nav li a:before { position: absolute; bottom: -1px; left: 0%; content: ''; width: 100%; height: 1px; background: #000; -webkit-transition: 0.2s; -moz-transition: 0.2s; transition: 0.2s; transform: scale(0, 0); transform-origin: left; }
.foot_nav li a:after { content: ''; display: block; margin: 0; padding: 0; width: 7px; height: 7px; border-top: 1px solid #000; border-right: 1px solid #000; -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; left: 0; top: 0; bottom: 0; margin: auto; }
.foot_nav li a:hover:before { transform: scale(1, 1); }
.foot_nav li.foot_nav_top { font-size: 16px; border-bottom: 1px solid #000; margin-bottom: .8em; }
.foot_nav li.foot_nav_top a { padding: 0 0 .5em; }
.foot_nav li.foot_nav_top a:after { content: none; }
.foot_nav li.foot_nav_top a:hover { color: #34426A; }
.foot_nav .foot_nav_sub p, .foot_nav .foot_nav_sub a { font-size: 15px; }
.foot_nav .foot_nav_sub li ul { margin: .5em 0; padding-left: 1em; }
.foot_nav .foot_nav_sub li ul a { font-size: 13px; padding-top: .3em; }

.foot_copy { color: #BEB9B4; font-size: 12px; }
