@charset "UTF-8";
/* CSS Document */
/* font
=========================================== */
@font-face { /*NotoSansJP*/
font-family: 'NotoSansJP'; src: url("../fonts/font/NotoSansJP-Regular.ttf"); src: url("../fonts/font/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/font/NotoSansJP-Regular.woff") format("woff"), url("../fonts/font/NotoSansJP-Regular.ttf") format("truetype"); font-weight: 400; }
@font-face { /*NotoSansJPボールド*/
font-family: 'NotoSansJP'; src: url("../fonts/font/NotoSansJP-Bold.ttf"); src: url("../fonts/font/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/font/NotoSansJP-Bold.woff") format("woff"), url("../fonts/font/NotoSansJP-Bold.ttf") format("truetype"); font-weight: 700; }
/* Link
=========================================== */
a:link, a:visited { color: #000000; text-decoration: none; }

a:hover, a:active { color: #000000; text-decoration: underline; }

a { outline: none; transition: 0.3s; }

a img { transition: 0.3s; }

:focus { outline: none; }

/* LAYOUT
=========================================== */
body { overflow: hidden; width: 100%; }

.pc { display: none !important; }

.sp { display: block; }

body { color: #000000; background: #FFFFFF; font-size: 16px; line-height: 1.5; font-family: 'NotoSansJP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif; font-weight: 400; font-style: normal; word-break: break-all; }

img { width: 100%; height: auto; }

table { width: 100%; table-layout: fixed; }

h1, h2, h3, h4, h5, h6 { font-weight: 700; }

.wrap { position: relative; }

input, select { -webkit-appearance: auto; appearance: auto; }

/*共通設定*/
.btn01 { width: 100%; height: 70px; }

.btn01 a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 0 40px; box-sizing: border-box; background: #727171; border-radius: 5px; position: relative; }

.btn01 a::before { content: ""; display: block; width: 7px; height: 9px; background: url("../img/common/btn_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); z-index: 1; }

.btn01 a .btn-text { color: #FFFFFF; }

.btn01 a:hover { text-decoration: none; background: #004B9F; }

.btn02 { text-align: right; }

.btn02 a { display: inline-flex; justify-content: center; align-items: center; }

.btn02 a .arrow { display: inline-block; width: 30px; height: 30px; margin-left: 10px; position: relative; }

.btn02 a .arrow::before { content: ""; display: block; width: 100%; height: 100%; background: url("../img/common/btn_arrow_bg.png") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }

.btn02 a .arrow::after { content: ""; display: block; width: 7px; height: 9px; background: url("../img/common/btn_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; }

.btn02 a:hover .arrow::before { transform: translate(-50%, -50%) rotate(360deg); }

.btn02.shiro a { color: #fff; }

.btn02.shiro a .arrow::before { background: url("../img/common/btn_arrow_bg02.png") no-repeat center; background-size: contain; }

.btn02.shiro a .arrow::after { background: url("../img/common/btn_arrow02.svg") no-repeat center; background-size: contain; }

.title01 { text-align: center; margin-bottom: 30px; }

.title01 .en { display: block; font-size: 36px; color: #004B9F; line-height: 1.44; }

.title01 .ja { display: block; font-size: 13px; line-height: 1.46; font-weight: 400; }

.title01.shiro .en { color: #fff; }

.title02 { margin-bottom: 30px; }

.title02 .sub { display: inline-block; font-size: 13px; line-height: 1.46; padding: 0 16px; box-sizing: border-box; position: relative; }

.title02 .sub::before, .title02 .sub::after { content: ""; display: block; width: 11px; height: 11px; background: url("../img/common/title_bg.png") no-repeat center; background-size: contain; position: absolute; bottom: 3px; }

.title02 .sub::before { left: 0; }

.title02 .sub::after { right: 0; }

.title02 .title-text { display: block; font-size: 30px; line-height: 1.6; letter-spacing: 0.03em; margin-top: 10px; }

.title02.shiro .sub::before, .title02.shiro .sub::after { background: url("../img/common/title_bg_w.png") no-repeat center; background-size: contain; }

.title03 { font-size: 30px; line-height: 1.46; letter-spacing: 0.03em; margin-bottom: 30px; }

/*ウェブフォント*/
.normal { font-weight: 400; }

.bold { font-weight: 700; }

.common_text { line-height: 2; }

.tcenter { text-align: center; }

.tleft { text-align: left; }

.tright { text-align: right; }

/*色*/
.shiro { color: #fff; }

.kuro { color: #000000; }

.ao { color: #004B9F; }

.mt20 { margin-top: 20px; }

.flex { width: 100%; margin: 0; padding: 0; display: -webkit-box; display: -moz-box; display: -ms-box; display: -webkit-flexbox; display: -moz-flexbox; display: -ms-flexbox; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

/*header
---------------------------------------------------------------*/
#header { width: 100%; height: 80px; position: fixed; transition: 0.3s; left: 0; right: 0; top: 0; margin: auto; z-index: 100; }

#header .header_inner { height: 100%; justify-content: center; align-items: center; flex-wrap: nowrap; }

#header .header_inner .logo_box { width: auto; position: relative; z-index: 1; }

#header .header_inner .logo { width: 157px; }

#header .header_inner .logo a { display: block; width: 100%; }

#header .header_inner .right { display: none; }

.fixed #header { height: 50px; backdrop-filter: blur(10px) brightness(110%); -webkit-backdrop-filter: blur(10px) brightness(110%); background: rgba(255, 255, 255, 0.7); }

.fixed #header:has(.sp-nav-btn.opon) { backdrop-filter: none; -webkit-backdrop-filter: none; background: rgba(255, 255, 255, 0.9); }

/*gnav*/
.gnav { display: none; }

/* nav
=========================================== */
.sp-nav-btn { width: 20px; height: 16px; position: relative; z-index: 103; box-sizing: border-box; text-align: center; transition: 0.3s; position: absolute; top: 50%; right: 30px; transform: translateY(-50%); }

.sp-nav-btn > span { width: 100%; height: 1px; background: #000000; position: absolute; left: 0; transition: 0.3s; }

.sp-nav-btn .border01 { top: 0; }

.sp-nav-btn .border02 { top: 50%; transform: translateY(-50%); }

.sp-nav-btn .border03 { bottom: 0; }

.sp-nav-btn.opon > span { background: #FFFFFF; }

.sp-nav-btn.opon .border01 { transform: translate(-50%, -50%) rotateZ(45deg); top: 50%; left: 50%; }

.sp-nav-btn.opon .border02 { display: none; }

.sp-nav-btn.opon .border03 { transform: translate(-50%, 50%) rotateZ(-45deg); bottom: 50%; left: 50%; }

#overlay-nav { width: calc(100% - 75px); height: 100vh; background: rgba(0, 30, 62, 0.7); backdrop-filter: blur(10px) brightness(110%); -webkit-backdrop-filter: blur(10px) brightness(110%); position: fixed; top: 0; right: -100%; z-index: 100; transition: 0.3s; }

#overlay-nav.opon { right: 0; }

.sp-nav-list .navs-list { display: block; width: calc(100% - 75px); height: 100vh; padding: 80px 30px 57px; box-sizing: border-box; position: fixed; top: 0; right: -100%; z-index: 102; transition: 0.3s; overflow-x: hidden; overflow-y: auto; }

.sp-nav-list .navs-list.opon { right: 0; }

.sp-nav-list .navs-list > ul > li { border-bottom: 1px solid #BCBCBC; }

.sp-nav-list .navs-list > ul li a, .sp-nav-list .navs-list ul li .nav-midashi { display: block; padding: 23px 0 23px 25px; box-sizing: border-box; color: #FFFFFF; position: relative; }

.sp-nav-list .navs-list > ul li a::after, .sp-nav-list .navs-list ul li .nav-midashi::after { content: ""; display: block; width: 7px; height: 9px; background: url("../img/common/nav_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 10px; transform: translateY(-50%); transition: 0.3s; }

.sp-nav-list .navs-list ul li .nav-midashi::after { transform: translateY(-50%) rotate(90deg); }

.sp-nav-list .navs-list ul li .nav-midashi.on::after { transform: translateY(-50%) rotate(270deg); }

.sp-nav-list .navs-list .sp-nav li { border-top: 1px dashed #BCBCBC; }

.sp-nav-list .navs-list .sp-nav li a { padding-left: 45px; }

.sp-nav-list .navs-list .sp-nav li a::after { left: 30px; }

.sp-nav-list .navs-list .contact_btn { width: 100%; height: 70px; margin-bottom: 10px; }

.sp-nav-list .navs-list .contact_btn a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; border: 1px solid #BCBCBC; border-radius: 5px; }

.sp-nav-list .navs-list .contact_btn a .btn-text { font-size: 16px; padding-left: 28px; box-sizing: border-box; position: relative; color: #FFFFFF; }

.sp-nav-list .navs-list .contact_btn a .btn-text::before { content: ""; display: block; width: 21px; height: 14px; background: url("../img/common/icon_contact.png") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }

/* main */
/*-------------------------------------------*/
#main.home_main { width: 100%; position: relative; }

#main.home_main .waku { width: 100%; height: 600px; position: relative; }

#main.home_main .waku .main_bg { width: 100%; height: 260px; position: absolute; left: 0; }

#main.home_main .waku .main_bg.main_bg_left { background: url("../img/main/img_top.png") repeat-x center bottom; background-size: cover; top: 0; animation: mainBgLeft 50s linear infinite; }

@keyframes mainBgLeft { 0% { background-position: 0 0; }
  100% { background-position: -1900px 0; } }
#main.home_main .waku .main_bg.main_bg_right { background: url("../img/main/img_bottom.png") repeat-x center top; background-size: cover; bottom: 0; animation: mainBgRight 50s linear infinite; }

@keyframes mainBgRight { 0% { background-position: 0 0; }
  100% { background-position: 1900px 0; } }
#main.home_main .waku .main_title { font-size: 50px; line-height: 1.47; letter-spacing: 0.05em; white-space: nowrap; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; }

#main.home_main .waku .main_title::before { content: ""; display: block; width: 145px; height: 70px; background: url("../img/main/main_text.png") no-repeat center; background-size: contain; position: absolute; bottom: -31px; right: -31px; }

#main.home_main .main_news_box { width: 100%; padding: 0 5%; box-sizing: border-box; position: relative; }

#main.home_main .main_news_box::before { content: ""; display: block; width: 100%; height: 17.6vw; background: url("../img/main/news_bg_sp.png") no-repeat center bottom; background-size: cover; position: absolute; top: -17.5vw; left: 0; }

#main.home_main .main_news_box::after { content: ""; display: block; width: 98px; height: 100px; background: url("../img/main/circle.png") no-repeat center; background-size: contain; position: absolute; top: -44px; right: 50px; animation: 15s linear infinite rotation01; }

@keyframes rotation01 { 0% { transform: rotate(0); }
  100% { transform: rotate(-360deg); } }
#main.home_main .main_news_box .cnt { display: block; }

#main.home_main .main_news_box .cnt .title01 { display: inline-block; }

#main.home_main .main_news_box .cnt .main_news01 { margin-bottom: 20px; }

#main.home_main .main_news_box .cnt .main_news01 a { display: block; }

#main.home_main .main_news_box .cnt .main_news01 a .title { margin-top: 10px; font-weight: 400; line-height: 1.8; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; transition: 0.3s; }

/* 下層 main */
/*-------------------------------------------*/
#main.kasou { width: 100%; height: 300px; position: relative; margin-top: 80px; }

#main.kasou #video-bg { position: absolute; top: -80px; left: 0; width: 100%; height: 1400px; z-index: -1; pointer-events: none; opacity: 0.5; }

#main.kasou #video-bg::before { content: ""; display: block; width: 100%; height: 920px; background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0.86) 50%, rgba(255, 255, 255, 0) 100%); position: absolute; bottom: 0; left: 0; z-index: 1; }

#main.kasou #video-bg video { width: 100%; height: 100%; object-fit: cover; filter: drop-shadow(0px 0px rgba(0, 0, 0, 0)); outline: none; border: none; }

#main.kasou .wrap { width: 100%; height: 100%; padding: 0 5%; box-sizing: border-box; }

#main.kasou h1 { letter-spacing: 0.03em; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

#main.kasou h1 .en { display: block; font-size: 45px; color: #004B9F; white-space: nowrap; }

#main.kasou h1 .ja { display: block; line-height: 1.45; margin-top: 5px; white-space: nowrap; }

body.page-workatyamaki #main.kasou h1 .en { line-height: 1.22; }

/*パンくず*/
div#bread { width: 100%; }

div#bread .wrap { display: flex; align-items: center; width: 100%; padding: 0 5%; box-sizing: border-box; }

ul.bread-list { width: auto; justify-content: flex-start; white-space: nowrap; }

ul.bread-list li { font-size: 13px; line-height: 19px; }

ul.bread-list li.txt-limit { max-width: 145px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

ul.bread-list li a { text-decoration: none; }

ul.bread-list li a:hover { text-decoration: underline; }

ul.bread-list li::after { content: ""; display: inline-block; width: 6px; height: 8px; background: url("../img/common/bread_arrow.png") no-repeat center; background-size: contain; margin: 0 14px; }

ul.bread-list li:last-child::after { display: none; }

body.single-interview div#bread, body.single-news div#bread { margin-top: 100px; position: relative; }

body.single-interview div#bread #video-bg, body.single-news div#bread #video-bg { position: absolute; top: -100px; left: 0; width: 100%; height: 1400px; z-index: -1; pointer-events: none; opacity: 0.5; }

body.single-interview div#bread #video-bg::before, body.single-news div#bread #video-bg::before { content: ""; display: block; width: 100%; height: 920px; background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0.86) 50%, rgba(255, 255, 255, 0) 100%); position: absolute; bottom: 0; left: 0; z-index: 1; }

body.single-interview div#bread #video-bg video, body.single-news div#bread #video-bg video { width: 100%; height: 100%; object-fit: cover; filter: drop-shadow(0px 0px rgba(0, 0, 0, 0)); outline: none; border: none; }

/* TOPへ戻る・追従 */
/*-------------------------------------------*/
#fixed_trigger { position: absolute; left: 0; top: 50px; z-index: -100; }

/* CLEARFIX
=========================================== */
.cf:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; overflow: hidden; font-size: 0.1em; line-height: 0; }

.cf { min-height: 1px; }

* html .cf { height: 1px; /*¥*/ 	                 /*/ height: auto; overflow: hidden; /**/ }

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }

input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration { display: none; }

input[type="submit"]::focus, input[type="button"]::focus { outline-offset: -2px; }

/*ライトボックス設定*/
#fancybox-wrap { padding: 0 !important; width: 100% !important; left: 0 !important; }

div#fancybox-content { border: none; width: 92% !important; padding: 2%; margin: 2%; height: auto !important; }

div#fancybox-outer { background: none; }

#fancybox-close { position: absolute; top: 0 !important; right: 0 !important; }

section { position: relative; }

/* footer */
/*-------------------------------------------*/
#staff-img-sec { padding: 80px 5% 60px; }

#staff-img-sec .staff_box { margin-top: 0; }

#btn-sec { padding: 0 5% 80px; box-sizing: border-box; background: #FFFFFF; }

#btn-sec .btn_list { display: block; }

#btn-sec .btn_list .btn_box { width: 100%; aspect-ratio: 67 / 34; margin-bottom: 30px; }

#btn-sec .btn_list .btn_box:last-child { margin-bottom: 0; }

#btn-sec .btn_list .btn_box a { display: block; width: 100%; height: 100%; border-radius: 20px; overflow: hidden; position: relative; }

#btn-sec .btn_list .btn_box a::before { content: ""; display: block; width: 100%; height: 100%; background: #001E3E; opacity: 0.5; position: absolute; top: 0; left: 0; }

#btn-sec .btn_list .btn_box a .title01 { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; margin-bottom: 0; }

#btn-sec .btn_list .btn_box a .title01 .en { font-size: 26px; font-weight: 700; }

#btn-sec .btn_list .btn_box a .arrow { width: 44px; height: 50px; position: absolute; bottom: 0; right: 0; transition: 0.3s; z-index: 1; }

#btn-sec .btn_list .btn_box a .arrow::before { content: ""; display: block; width: 69px; height: 69px; background: url("../img/common/slide_arrow_bg.png") no-repeat center; background-size: contain; opacity: 0.8; position: absolute; top: 0; left: 0; }

#btn-sec .btn_list .btn_box a .arrow::after { content: ""; display: block; width: 13px; height: 18px; opacity: 1; background: url("../img/common/slide_arrow02.png") no-repeat center; background-size: contain; position: absolute; top: 20px; left: 23px; z-index: 1; filter: brightness(0) saturate(100%) invert(10%) sepia(92%) saturate(1106%) hue-rotate(185deg) brightness(95%) contrast(106%); }

#btn-sec .btn_list .btn_box.btn_box01 a { background: url("../img/top/btn_bg01.jpg") no-repeat center; background-size: cover; }

#btn-sec .btn_list .btn_box.btn_box02 a { background: url("../img/top/btn_bg02.jpg") no-repeat center; background-size: cover; }

#footer { display: block; background: #FFFFFF; }

#footer .footer_img { width: 100%; aspect-ratio: 5 / 4; background: url("../img/common/footer_img.png") no-repeat center; background-size: cover; }

#footer .footer_box { max-width: 500px; margin: 0 auto; padding: 80px 5%; box-sizing: border-box; }

#footer .footer_box .footer_text .text_box { text-align: center; margin-bottom: 80px; }

#footer .footer_box .footer_text .text_box .logo { display: inline-block; width: 248px; }

#footer .footer_box .footer_text .text_box .logo a { display: block; width: 100%; }

#footer .footer_box .footer_text .text_box .address-list { display: inline-block; margin-top: 30px; }

#footer .footer_box .footer_text .text_box .address-list li { font-size: 13px; margin-bottom: 16px; text-align: left; }

#footer .footer_box .footer_text .text_box .address-list li:last-child { margin-bottom: 0; }

#footer .footer_box .footer_text .text_box .btn01 { display: inline-block; max-width: 260px; height: 80px; margin-top: 50px; }

#footer .footer_box .footer_text .text_box .btn01 a::before { display: none; }

#footer .footer_box .footer_text .text_box .btn01 a .btn-text { padding-left: 28px; box-sizing: border-box; position: relative; }

#footer .footer_box .footer_text .text_box .btn01 a .btn-text::before { content: ""; display: block; width: 21px; height: 14px; background: url("../img/common/icon_contact.png") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }

#footer .footer_box .footer_text .navs-list { display: none; }

#footer .footer_box .footer_text .copyright { font-size: 13px; color: #BCBCBC; text-align: center; margin-top: 80px; }

/*parts
=========================================== */
.slider01 .slick-prev, .slider01 .slick-next { width: 162px; height: 162px; position: absolute; top: 50%; transform: translateY(-50%); transition: 0.3s; z-index: 1; }
.slider01 .slick-prev::before, .slider01 .slick-next::before { content: ""; display: block; width: 100%; height: 100%; background: url("../img/common/slide_arrow_bg.png") no-repeat center; background-size: contain; opacity: 0.7; position: absolute; top: 0; left: 0; transition: 0.3s; }
.slider01 .slick-prev::after, .slider01 .slick-next::after { content: ""; display: block; width: 21px; height: 30px; opacity: 1; background: url("../img/common/slide_arrow.png") no-repeat center; background-size: contain; position: absolute; top: 50%; transform: translateY(-50%); z-index: 1; }
.slider01 .slick-prev:focus:before, .slider01 .slick-next:focus:before { opacity: 0.7; }
.slider01 .slick-prev:hover:before, .slider01 .slick-next:hover:before { background: url("../img/common/slide_arrow_bg02.png") no-repeat center; background-size: contain; opacity: 1 !important; transform: rotate(180deg); }
.slider01 .slick-prev:hover::after, .slider01 .slick-next:hover::after { filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(191deg) brightness(101%) contrast(107%); }
.slider01 .slick-prev { left: -80px; }
.slider01 .slick-prev::after { right: 46px; transform: translateY(-50%) scale(-1, 1); }
.slider01 .slick-next { right: -80px; }
.slider01 .slick-next::after { left: 46px; }

.news-cate-list { width: auto; }
.news-cate-list li { padding: 3px 8px 5px; box-sizing: border-box; background: #BCBCBC; border-radius: 5px; font-size: 13px; line-height: 19px; color: #FFFFFF; white-space: nowrap; margin-right: 5px; }
.news-cate-list li:last-child { margin-right: 0; }

.staff_box { margin-top: 80px; text-align: center; }
.staff_box .midashi { display: inline-block; padding: 0 31px; box-sizing: border-box; font-size: 22px; line-height: 1.59; position: relative; margin-bottom: 30px; }
.staff_box .midashi::before, .staff_box .midashi::after { content: ""; display: block; width: 21px; height: 42px; background: url("../img/top/line.png") no-repeat center; background-size: contain; position: absolute; bottom: 5px; }
.staff_box .midashi::before { left: 0; transform: scale(-1, 1); }
.staff_box .midashi::after { right: 0; }
.staff_box .staff-list { max-width: 335px; margin: 0 auto; justify-content: center; }
.staff_box .staff-list .staff-img { height: 190px; position: relative; }
.staff_box .staff-list .staff-img .img01 { height: 220px; width: auto; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
.staff_box .staff-list .staff-img .img02 { display: none; }
.staff_box .staff-list .staff-img.staff-img01 { width: 60px; margin-right: 35px; }
.staff_box .staff-list .staff-img.staff-img02 { width: 57px; margin-right: 26px; }
.staff_box .staff-list .staff-img.staff-img03 { width: 67px; margin-right: 31px; }
.staff_box .staff-list .staff-img.staff-img04 { width: 59px; }
.staff_box .staff-list .staff-img.staff-img05 { width: 58px; margin-right: 28px; }
.staff_box .staff-list .staff-img.staff-img06 { width: 61px; margin-right: 28px; }
.staff_box .staff-list .staff-img.staff-img07 { width: 59px; }
.staff_box .staff-list .staff-img.staff-img05, .staff_box .staff-list .staff-img.staff-img06, .staff_box .staff-list .staff-img.staff-img07 { margin-top: -133px; }

#photo-gallery { width: 100%; margin-top: 80px; }
#photo-gallery .slick-dots { display: flex !important; justify-content: center; bottom: 0; }
#photo-gallery .slick-dots li { width: 10px; height: 10px; margin: 0 10px 0 0; }
#photo-gallery .slick-dots li:last-child { margin-right: 0; }
#photo-gallery .slick-dots li button { width: 10px; height: 10px; padding: 0; }
#photo-gallery .slick-dots li button::before { content: ''; width: 100%; height: 100%; opacity: 1; background: #ECECEC; border-radius: 50%; }
#photo-gallery .slick-dots li.slick-active button::before { opacity: 1; background: #727171; }
#photo-gallery .slick-list { overflow: visible; }
#photo-gallery .about01 { margin: 0 10px; }
#photo-gallery .about01:nth-child(2n+1) { margin-top: 40px; }
#photo-gallery .about01 .img { width: 100%; aspect-ratio: 59 / 80; border-radius: 20px; }
#photo-gallery .about01 p { margin-top: 20px; }

.fixed-anchor_box { display: none; }

.news01 a { display: block; width: 100%; }
.news01 a .cnt { display: block; }
.news01 a .cnt .img { width: 100%; aspect-ratio: 67 / 51; border: 1px solid #ECECEC; box-sizing: border-box; border-radius: 10px; overflow: hidden; position: relative; margin-bottom: 20px; }
.news01 a .cnt .img .in_img { width: 100%; height: 100%; }
.news01 a .cnt .info_box .info { align-items: center; margin-bottom: 20px; }
.news01 a .cnt .info_box .info .time { margin-right: 10px; }
.news01 a .cnt .info_box .title { font-size: 22px; line-height: 1.6; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.news01 a p.text { color: #727171; margin-top: 20px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 5; -webkit-box-orient: vertical; }

.wrap.twin div#two-side { margin-top: 80px; }
.wrap.twin div#two-side .side_box { margin-bottom: 20px; }
.wrap.twin div#two-side .side_box:last-child { margin-bottom: 0; }
.wrap.twin div#two-side .side_box .side-title { padding: 14px 0 12px; box-sizing: border-box; background: #376FAB; border-radius: 10px 10px 0 0; }
.wrap.twin div#two-side .side_box .side-link { padding: 0 20px 10px; box-sizing: border-box; border-radius: 0 0 10px 10px; background: #FFFFFF; border: 1px solid #DEDEDE; }
.wrap.twin div#two-side .side_box .side-link > li { border-bottom: 1px solid #DEDEDE; }
.wrap.twin div#two-side .side_box .side-link > li:last-child { border-bottom: 0; }
.wrap.twin div#two-side .side_box .side-link > li > a { display: block; padding: 18px 0 18px 15px; box-sizing: border-box; position: relative; }
.wrap.twin div#two-side .side_box .side-link > li > a::before { content: ""; display: block; width: 7px; height: 9px; background: url("../img/p11/side_arrow.svg"); position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
.wrap.twin div#two-side .side_box .side-link > li.on_cat > a { color: #004B9F; }
.wrap.twin div#two-side .side_box .side-news-list { padding: 0 20px 8px; box-sizing: border-box; border-radius: 0 0 10px 10px; background: #FFFFFF; border: 1px solid #DEDEDE; }
.wrap.twin div#two-side .side_box .side-news-list .side-news { border-bottom: 1px solid #DEDEDE; }
.wrap.twin div#two-side .side_box .side-news-list .side-news:last-child { border-bottom: 0; }
.wrap.twin div#two-side .side_box .side-news-list .side-news a { display: block; padding: 20px 0; box-sizing: border-box; }
.wrap.twin div#two-side .side_box .side-news-list .side-news a:hover { color: #004B9F; }
.wrap.twin div#two-side .side_box .side-news-list .side-news a .time { font-size: 13px; margin-bottom: 5px; }
.wrap.twin div#two-side .side_box .side-news-list .side-news a .title { font-size: 13px; font-weight: 400; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.wrap.twin div#two-side .side_box .side-inner { padding: 10px; box-sizing: border-box; border-radius: 0 0 10px 10px; background: #FFFFFF; border: 1px solid #DEDEDE; }
.wrap.twin div#two-side .side_box .side-inner select { width: 100%; height: 50px; padding: 13px 30px 13px 20px; box-sizing: border-box; font-size: 16px; line-height: 1.5; font-weight: 400; border: 0; font-family: 'NotoSansJP'; background: url("../img/p11/side_arrow02.svg") no-repeat center right 15px, #ECECEC; background-size: 9px; border-radius: 10px; -webkit-appearance: none; appearance: none; cursor: pointer; color: #000000 !important; }
.wrap.twin div#two-side .side_box .side-inner select option { color: #000000 !important; }
.wrap.twin div#two-side .side_box .side-inner select option:first-child { color: #000000 !important; }

.wp-pagenavi > span, .wp-pagenavi > a { display: inline-block; width: 34px; height: 34px; background: #FFFFFF; border-radius: 5px; border: 1px solid #000000; box-sizing: border-box; margin: 0 5px; text-decoration: none; font-size: 16px; font-weight: 400; color: #000000; line-height: 34px; transition: 0.3s; }

.wp-pagenavi { text-align: center; margin-top: 60px; position: relative; }
.wp-pagenavi a:hover, .wp-pagenavi span.current { background: #004B9F; border: 1px solid #004B9F; color: #FFFFFF; }
.wp-pagenavi a.page { position: relative; }
.wp-pagenavi span.extend { display: none; }
.wp-pagenavi span.pages { display: none; }
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink { position: relative; color: transparent; background: transparent; border: 0; width: 9px; }
.wp-pagenavi a.previouspostslink { margin-right: 15px; }
.wp-pagenavi a.nextpostslink { margin-left: 15px; }
.wp-pagenavi a.previouspostslink::before, .wp-pagenavi a.nextpostslink::before { content: ""; display: block; width: 100%; height: 19px; background: url("../img/p11/page_arrow01.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.wp-pagenavi a.previouspostslink::before { transform: translate(-50%, -50%) scale(-1, 1); }
.wp-pagenavi a.previouspostslink:hover::before, .wp-pagenavi a.nextpostslink:hover::before { filter: brightness(0) saturate(100%) invert(18%) sepia(94%) saturate(2696%) hue-rotate(194deg) brightness(97%) contrast(105%); }
.wp-pagenavi a.first, .wp-pagenavi a.last { position: relative; color: transparent; background: transparent; border: 0; width: 18px; }
.wp-pagenavi a.first { margin-left: 0; }
.wp-pagenavi a.last { margin-right: 0; }
.wp-pagenavi a.first::before, .wp-pagenavi a.last::before { content: ""; display: block; width: 100%; height: 19px; background: url("../img/p11/page_arrow02.svg") no-repeat center; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.wp-pagenavi a.first:hover::before, .wp-pagenavi a.last:hover::before { filter: brightness(0) saturate(100%) invert(18%) sepia(94%) saturate(2696%) hue-rotate(194deg) brightness(97%) contrast(105%); }
.wp-pagenavi a.first::before { transform: translate(-50%, -50%) scale(-1, 1); }

.post-navigation { margin-top: 60px; }

.post-navigation ul { justify-content: center; align-items: center; position: relative; }

.post-navigation ul li { padding-right: 14px; border-right: 1px solid #BCBCBC; margin-right: 14px; }
.post-navigation ul li:last-child { padding-right: 0; border-right: 0; margin-right: 0; }

.post-navigation ul > li a { display: block; font-size: 16px; font-weight: 400; line-height: 24px; color: #000000; position: relative; }
.post-navigation ul > li a:focus, .post-navigation ul > li a:hover { text-decoration: none; color: #004B9F; }
.post-navigation ul > li a:focus::before, .post-navigation ul > li a:hover::before { filter: brightness(0) saturate(100%) invert(18%) sepia(94%) saturate(2696%) hue-rotate(194deg) brightness(97%) contrast(105%); }
.post-navigation ul > li a::before { content: ""; display: block; width: 8px; height: 15px; background: url("../img/p11/page_arrow01.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; transform: translateY(-50%); }

.post-navigation ul > li.prev a { padding-left: 18px; }
.post-navigation ul > li.prev a::before { left: 0; transform: translateY(-50%) scale(-1, 1); }

.post-navigation ul > li.next a { padding-right: 18px; }
.post-navigation ul > li.next a::before { right: 0; }

.post-navigation ul > li.blog-back a::before { display: none; }

.post-navigation ul > li.kara { opacity: 0; pointer-events: none; }

/*TOPページ　p01
=========================================== */
body.home { overflow: visible; }
body.home section { overflow: hidden; }

#topbox01 { padding: 80px 5% 0; }
#topbox01 .cnt { display: block; }
#topbox01 .cnt .text_box { margin-bottom: 30px; }
#topbox01 .cnt .text_box .midashi { font-size: 26px; line-height: 1.65; letter-spacing: 0.03em; }
#topbox01 .cnt .img_box { width: 100%; aspect-ratio: 67 / 80; position: relative; }
#topbox01 .cnt .img_box img { width: 100vw; max-width: 100vw; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
#topbox01 .box { margin-top: 30px; position: relative; z-index: 1; }
#topbox01 .box .text_box { display: block; }
#topbox01 .box .text_box p { margin-bottom: 30px; }
#topbox01 .box .text_box p:last-child { margin-bottom: 0; }
#topbox01 .box .btn02 { margin-top: 20px; }
#topbox01 #photo-gallery { margin-top: 80px; }
#topbox01 #photo-gallery .slick-dots { display: none !important; }

.bg-waku { position: relative; }
.bg-waku #video-bg { position: sticky; top: 0; width: 100%; height: 0; z-index: -1; pointer-events: none; opacity: 0.5; }
.bg-waku #video-bg video { width: 100%; height: 100vh; object-fit: cover; filter: drop-shadow(0px 0px rgba(0, 0, 0, 0)); outline: none; border: none; }

#topbox02 { padding: 95px 5% 65px; position: relative; z-index: 1; }
#topbox02::before { content: ""; display: block; width: 100%; height: 400px; background: linear-gradient(180deg, white 0%, rgba(255, 255, 255, 0) 100%); position: absolute; top: -1px; left: 0; z-index: -1; }
#topbox02 .cnt .text_box { width: 100%; height: 440px; padding-top: 82px; box-sizing: border-box; position: relative; z-index: 1; margin-bottom: 65px; }
#topbox02 .cnt .text_box::before { content: ""; display: block; width: 510px; height: 510px; border-radius: 50%; background: rgba(255, 255, 255, 0.2); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); backdrop-filter: blur(10px) brightness(105%); -webkit-backdrop-filter: blur(10px) brightness(105%); z-index: -1; animation: 30s linear infinite rotation02; }
@keyframes rotation02 { 0% { transform: translate(-50%, -50%) rotate(0); }
  100% { transform: translate(-50%, -50%) rotate(360deg); } }
#topbox02 .cnt .text_box .bg-img { width: 440px; height: 440px; position: absolute; top: 0; left: 50%; transform: translateX(-50%); opacity: 0.55; animation: 30s linear infinite rotation03; }
@keyframes rotation03 { 0% { transform: translateX(-50%) rotate(0); }
  100% { transform: translateX(-50%) rotate(360deg); } }
#topbox02 .cnt .text_box .text_box_in { position: relative; z-index: 1; }
#topbox02 .cnt .text_box .text_box_in .title01 { position: relative; margin-bottom: 20px; }
#topbox02 .cnt .text_box .text_box_in .title01::before { content: ""; display: block; width: 46px; height: 23px; background: url("../img/top/at.png") no-repeat center; background-size: contain; position: absolute; top: 52px; left: 50%; transform: translateX(-50%); }
#topbox02 .cnt .text_box .text_box_in .title01 .en { color: #FFFFFF; }
#topbox02 .cnt .text_box .text_box_in .title01 .en:first-child { margin-bottom: 18px; }
#topbox02 .cnt .text_box .text_box_in p.common_text { line-height: 1.75; }
#topbox02 .cnt .text_box .text_box_in .btn02 { text-align: center; margin-top: 30px; }
#topbox02 .cnt .slider_box .work-slider .slick-list { overflow: visible; }
#topbox02 .cnt .slider_box .work-slider .work01 { width: 162px; margin-right: 30px; }
#topbox02 .cnt .slider_box .work-slider .work01 a { display: block; }
#topbox02 .cnt .slider_box .work-slider .work01 a img { margin-bottom: 10px; }
#topbox02 .cnt .slider_box .work-slider .work01 a .midashi { line-height: 26px; }
#topbox02 .cnt .slider_box .work-slider#work-slider02 { display: none; }

#topbox03 { padding: 65px 5% 40px; position: relative; }
#topbox03::before { content: ""; display: block; width: 100%; aspect-ratio: 376 / 843; background: url("../img/top/bg02_sp.png") no-repeat center top; background-size: cover; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); }
#topbox03 .title_box { margin-bottom: 30px; }
#topbox03 .interview_box { width: 100%; margin-bottom: 50px; }
#topbox03 #interview-slider-main { width: 100%; margin-bottom: 0; }
#topbox03 #interview-slider-main .slick-prev, #topbox03 #interview-slider-main .slick-next { width: 75px; height: 85px; top: auto; bottom: 120px; transform: translateY(0); overflow: hidden; }
#topbox03 #interview-slider-main .slick-prev::before, #topbox03 #interview-slider-main .slick-next::before { width: 117px; height: 117px; background: url("../img/common/slide_arrow_bg03.png") no-repeat center; background-size: contain; opacity: 0.6; }
#topbox03 #interview-slider-main .slick-prev::after, #topbox03 #interview-slider-main .slick-next::after { width: 19px; height: 28px; filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(191deg) brightness(101%) contrast(107%); top: 41px; transform: translateY(0); }
#topbox03 #interview-slider-main .slick-prev:hover:before, #topbox03 #interview-slider-main .slick-next:hover:before { background: url("../img/common/slide_arrow_bg03.png") no-repeat center; background-size: contain; }
#topbox03 #interview-slider-main .slick-prev { left: 0; border-bottom-left-radius: 20px; }
#topbox03 #interview-slider-main .slick-prev::before { left: auto; right: 0; }
#topbox03 #interview-slider-main .slick-prev::after { right: 45px; transform: scale(-1, 1); }
#topbox03 #interview-slider-main .slick-next { right: 0; border-bottom-right-radius: 20px; }
#topbox03 #interview-slider-main .slick-next::after { left: 45px; }
#topbox03 #interview-slider-main .top-interview01 { width: 100%; }
#topbox03 #interview-slider-main .top-interview01 a { display: block; width: 100%; padding-bottom: 120px; position: relative; }
#topbox03 #interview-slider-main .top-interview01 a .img { width: 100%; aspect-ratio: 47 / 62; border-radius: 20px; overflow: hidden; position: relative; }
#topbox03 #interview-slider-main .top-interview01 a .img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
#topbox03 #interview-slider-main .top-interview01 a .info_box { position: absolute; bottom: 0; left: 0; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .name { width: 118px; font-size: 60px; font-weight: 400; line-height: 1; color: #727171; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in { width: calc(100% - 118px); }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in .info-list01 { align-items: center; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in .info-list01 li { max-width: calc(50% - 20px); margin-right: 20px; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in .info-list01 li:last-child { max-width: 50%; margin-right: 0; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in .info-list01 li span.list-midashi { display: block; width: 55px; padding: 3px 0 5px; box-sizing: border-box; background: #004B9F; border-radius: 5px; font-size: 13px; line-height: 19px; margin-bottom: 5px; }
#topbox03 #interview-slider-main .top-interview01 a .info_box .box_in .info-list01 li span.list-text { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
#topbox03 #interview-slider-main .top-interview01 a .info-list02 { width: 100%; margin-top: 20px; }
#topbox03 #interview-slider-main .top-interview01 a .info-list02 li { font-size: 13px; line-height: 19px; padding-right: 10px; border-right: 1px solid #727171; margin-right: 10px; box-sizing: border-box; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
#topbox03 #interview-slider-main .top-interview01 a .info-list02 li:last-child { padding-right: 0; border-right: 0; margin-right: 0; }
#topbox03 #interview-slider-thum { display: none; }

#topbox04 { padding: 40px 5%; }
#topbox04 .link-list { display: block; }
#topbox04 .link-list .link { width: 100%; aspect-ratio: 67 / 48; margin-bottom: 20px; }
#topbox04 .link-list .link:last-child { margin-bottom: 0; }
#topbox04 .link-list .link a { display: block; width: 100%; height: 100%; border-radius: 20px; background-repeat: no-repeat; background-position: center; background-size: cover; position: relative; overflow: hidden; }
#topbox04 .link-list .link a .title01 { width: 100%; padding: 24px 0 20px; box-sizing: border-box; position: absolute; bottom: 0; left: 0; z-index: 1; margin-bottom: 0; }
#topbox04 .link-list .link a .title01::before { content: ""; display: block; width: 160.53vw; aspect-ratio: 301 / 142; background: rgba(0, 75, 159, 0.7); border-radius: 50%; position: absolute; top: 0; left: 50%; transform: translateX(-50%); transition: 0.3s; backdrop-filter: blur(5px) brightness(110%); -webkit-backdrop-filter: blur(5px) brightness(110%); }
#topbox04 .link-list .link a .title01 .en { font-size: 26px; color: #FFFFFF; font-weight: 700; position: relative; z-index: 1; }
#topbox04 .link-list .link a .title01 .ja { color: #FFFFFF; position: relative; z-index: 1; }
#topbox04 .link-list .link.link01 a { background-image: url("../img/top/link_bg01_sp.jpg"); }
#topbox04 .link-list .link.link02 a { background-image: url("../img/top/link_bg02_sp.jpg"); }
#topbox04 .link-list .link.link03 a { background-image: url("../img/top/link_bg03_sp.jpg"); }
#topbox04 .link-list .link.link04 a { background-image: url("../img/top/link_bg04_sp.jpg"); }

#topbox05 { padding: 40px 5% 60px; position: relative; z-index: 1; }
#topbox05::before { content: ""; display: block; width: 100%; height: 400px; background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0) 100%); position: absolute; bottom: -1px; left: 0; z-index: -1; }
#topbox05 .news_box { display: block; padding: 40px 30px; box-sizing: border-box; background: #FFFFFF; border-radius: 20px; }
#topbox05 .news_box .top-news-list .top-news01 { width: 100%; border-bottom: 1px solid #BCBCBC; }
#topbox05 .news_box .top-news-list .top-news01:first-child a { padding-top: 0; }
#topbox05 .news_box .top-news-list .top-news01:last-child { border-bottom: 0; }
#topbox05 .news_box .top-news-list .top-news01:last-child a { padding-bottom: 0; }
#topbox05 .news_box .top-news-list .top-news01 a { display: flex; flex-wrap: wrap; padding: 30px 0; box-sizing: border-box; }
#topbox05 .news_box .top-news-list .top-news01 a .time { width: 100px; line-height: 27px; }
#topbox05 .news_box .top-news-list .top-news01 a .news-cate-list { width: calc(100% - 100px); }
#topbox05 .news_box .top-news-list .top-news01 a .title { width: 100%; font-weight: 400; line-height: 28px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; margin-top: 10px; }
#topbox05 .news_box .btn02 { margin-top: 30px; }

/*山喜について　p02
=========================================== */
#p02box01 { padding: 80px 5% 40px; }
#p02box01 .cnt { display: block; margin-bottom: 80px; }
#p02box01 .bg_img01 { width: 100%; aspect-ratio: 67 / 80; position: relative; }
#p02box01 .bg_img01 .in_img { width: 100vw; height: 100%; background: url("../img/p02/img01.jpg") no-repeat center; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#p02box01 .text_box { margin-top: 30px; }
#p02box01 .text_box span { display: block; }

#p02box02 { padding: 40px 5% 50px; }
#p02box02 .title { font-size: 30px; line-height: 1.46; letter-spacing: 0.03em; margin-bottom: 30px; }
#p02box02 #photo-gallery { margin-top: 0; margin-bottom: 0; padding-bottom: 40px; }

#p02box03 { margin-top: 34.67vw; padding: 0 5% 40px; background: #004B9F; position: relative; }
#p02box03::before { content: ""; display: block; width: 100%; height: 34.67vw; background: url("../img/p02/bg01_sp.png") no-repeat center top; background-size: cover; position: absolute; top: -34.6vw; left: 0; }
#p02box03 .cnt01 { margin-bottom: 30px; }
#p02box03 .cnt01 .img01 { width: 100%; aspect-ratio: 335 / 238; border-radius: 20px; background: url("../img/p02/img02.jpg") no-repeat center; background-size: cover; }
#p02box03 .cnt02 { display: block; margin-top: 30px; }
#p02box03 .cnt02 .img02 { width: 100%; margin-bottom: 30px; }
#p02box03 .btn01 { margin-top: 60px; }
#p02box03 .btn01 a { background: transparent; border: 1px solid #FFFFFF; }

#p02box04 { padding: 40px 5% 100px; position: relative; }
#p02box04::before { content: ""; display: block; width: 100%; height: 100%; background: url("../img/p02/bg02_sp.png") no-repeat center top; background-size: cover; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
#p02box04::after { content: ""; display: block; width: 100%; height: 200px; background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0.7) 20%, rgba(255, 255, 255, 0.3) 45%, rgba(255, 255, 255, 0) 100%); position: absolute; bottom: -1px; left: 0; }
#p02box04 .vision_box { padding: 60px 30px 130px; box-sizing: border-box; border-radius: 20px; background: rgba(255, 255, 255, 0.75); backdrop-filter: blur(15px) brightness(120%); -webkit-backdrop-filter: blur(15px) brightness(120%); position: relative; z-index: 1; }
#p02box04 .vision_box .text_box p.common_text { margin-bottom: 30px; }
#p02box04 .vision_box .text_box p.common_text:last-child { margin-bottom: 0; }
#p02box04 .vision_box .box_img01 { width: 187px; position: absolute; bottom: -43px; left: -40px; }
#p02box04 .vision_box .box_img02 { width: 228px; position: absolute; bottom: -136px; right: -40px; }

#p02box05 { padding: 80px 5%; position: relative; }
#p02box05 .btn_box { width: 100%; height: 237px; margin-top: 40px; }
#p02box05 .btn_box a { display: block; width: 100%; height: 100%; border-radius: 20px; background: url("../img/p02/btn_bg01.jpg") no-repeat center; background-size: cover; overflow: hidden; position: relative; }
#p02box05 .btn_box a::before { content: ""; display: block; width: 100%; height: 100%; background: #001E3E; position: absolute; top: 0; left: 0; opacity: 0.5; }
#p02box05 .btn_box a .title01 { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; }
#p02box05 .btn_box a .title01 .en { font-size: 26px; font-weight: 700; }
#p02box05 .btn_box a .arrow { width: 44px; height: 50px; position: absolute; bottom: 0; right: 0; transition: 0.3s; z-index: 1; }
#p02box05 .btn_box a .arrow::before { content: ""; display: block; width: 69px; height: 69px; background: url("../img/common/slide_arrow_bg.png") no-repeat center; background-size: contain; opacity: 0.8; position: absolute; top: 0; left: 0; transition: 0.3s; }
#p02box05 .btn_box a .arrow::after { content: ""; display: block; width: 11px; height: 16px; opacity: 1; background: url("../img/common/slide_arrow02.png") no-repeat center; background-size: contain; position: absolute; top: 21px; left: 24px; z-index: 1; filter: brightness(0) saturate(100%) invert(10%) sepia(92%) saturate(1106%) hue-rotate(185deg) brightness(95%) contrast(106%); }

#img-list .img { width: 100%; aspect-ratio: 15 / 8; margin-bottom: 5px; }
#img-list .img.img01 { background: url("../img/p02/img04.jpg") no-repeat center; background-size: cover; }
#img-list .img.img02 { background: url("../img/p02/img05.jpg") no-repeat center; background-size: cover; }
#img-list .img.img03 { background: url("../img/p02/img06.jpg") no-repeat center; background-size: cover; margin-bottom: 0; }

/*働く環境　p03
=========================================== */
#p03box01 { padding: 80px 5% 50px; }
#p03box01 .cnt { display: block; margin-bottom: 80px; }
#p03box01 .bg_img01 { width: 100%; aspect-ratio: 67 / 80; position: relative; }
#p03box01 .bg_img01 .in_img { width: 100vw; height: 100%; background: url("../img/p03/img01.jpg") no-repeat center top; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#p03box01 .text_box { margin-top: 30px; }
#p03box01 .works-list { display: block; margin-top: 40px; }
#p03box01 .works-list .works00 { width: 100%; margin-bottom: 30px; }
#p03box01 .works-list .works00:last-child { margin-bottom: 0; }
#p03box01 .works-list .works00 .img { width: 100%; aspect-ratio: 335 / 254; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius: 20px; margin-bottom: 20px; }
#p03box01 .works-list .works00.works01 .img { background-image: url("../img/p03/img02.jpg"); }
#p03box01 .works-list .works00.works02 .img { background-image: url("../img/p03/img03.jpg"); }
#p03box01 .works-list .works00.works03 .img { background-image: url("../img/p03/img04.jpg"); }

#p03box02 { padding: 130px 5% 60px; background: url("../img/p03/bg01_sp.png") no-repeat center top; background-size: cover; }
#p03box02 .cnt01 { display: block; margin-bottom: 40px; }
#p03box02 .img-slider { width: 100%; height: 224px; position: relative; margin-bottom: 40px; }
#p03box02 .img-slider .slide-img { width: 100vw; height: 100%; background: url("../img/p03/slide-img.png") repeat-x center; background-size: cover; animation: imgSlide01 50s linear infinite; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
@keyframes imgSlide01 { 0% { background-position: 0 0; }
  100% { background-position: 2120px 0; } }
#p03box03 { padding: 80px 5%; /*タブ切り替えボタン*/ /*タブ切り替えボタン選択時とマウスオーバー時*/ /*選択されていないタブのコンテンツ非表示*/ /*選択されたタブのコンテンツ表示*/ }
#p03box03 .title02 { margin-bottom: 40px; }
#p03box03 .attempt_tab_list input[type="radio"] { display: none; }
#p03box03 .attempt_tab_list .tab_list { margin-bottom: 30px; }
#p03box03 .attempt_tab_list .tab_list div { display: inline-block; padding: 0 16px; box-sizing: border-box; border-right: 1px solid #DEDEDE; transition: 0.3s; }
#p03box03 .attempt_tab_list .tab_list div:first-child { padding-left: 0; }
#p03box03 .attempt_tab_list .tab_list div:last-child { padding-right: 0; border-right: 0; }
#p03box03 .attempt_tab_list .tab_list label { font-size: 18px; font-weight: 700; line-height: 26px; color: #DEDEDE; cursor: pointer; transition: 0.3s; position: relative; }
#p03box03 .attempt_tab_list .tab_list label::before { content: ""; width: 0; height: 3px; background: #004B9F; border-radius: 10px; position: absolute; bottom: -5px; left: 0; transition: 0.3s; }
#p03box03 .attempt_tab_list .tab_list label:hover { color: #004B9F; }
#p03box03 .attempt_tab_list .tab_list label:hover::before { width: 100%; }
#p03box03 input#tab01:checked ~ .tab_list .tab_btn01 label { color: #004B9F; }
#p03box03 input#tab01:checked ~ .tab_list .tab_btn01 label::before { width: 100%; }
#p03box03 input#tab02:checked ~ .tab_list .tab_btn02 label { color: #004B9F; }
#p03box03 input#tab02:checked ~ .tab_list .tab_btn02 label::before { width: 100%; }
#p03box03 input#tab03:checked ~ .tab_list .tab_btn03 label { color: #004B9F; }
#p03box03 input#tab03:checked ~ .tab_list .tab_btn03 label::before { width: 100%; }
#p03box03 input#tab04:checked ~ .tab_list .tab_btn04 label { color: #004B9F; }
#p03box03 input#tab04:checked ~ .tab_list .tab_btn04 label::before { width: 100%; }
#p03box03 .tab_box00 { box-sizing: border-box; height: 0; opacity: 0; -webkit-transition: opacity 600ms; transition: opacity 600ms; overflow-y: hidden; width: 100%; margin: 0 auto; }
#p03box03 #tab01:checked ~ .tab_box01 { height: auto; opacity: 1; overflow: initial; width: 100%; margin: 0 auto; }
#p03box03 #tab02:checked ~ .tab_box02 { height: auto; opacity: 1; overflow: initial; width: 100%; margin: 0 auto; }
#p03box03 #tab03:checked ~ .tab_box03 { height: auto; opacity: 1; overflow: initial; width: 100%; margin: 0 auto; }
#p03box03 #tab04:checked ~ .tab_box04 { height: auto; opacity: 1; overflow: initial; width: 100%; margin: 0 auto; }
#p03box03 .tab_box00_in { display: block; }
#p03box03 .tab_box00_in .img { width: 100%; margin-bottom: 20px; }
#p03box03 .tab_box00_in .info_box h3 { font-size: 26px; margin-bottom: 10px; }
#p03box03 .tab_box00_in .info_box .text01 { margin-bottom: 20px; }
#p03box03 .tab_box00_in .info_box .text_box p { margin-bottom: 30px; }
#p03box03 .tab_box00_in .info_box .text_box p:last-child { margin-bottom: 0; }

#p03box04 { padding: 60px 5%; background: #F2F6FA; }
#p03box04 .cnt { display: block; margin-bottom: 40px; }
#p03box04 .working-list { display: block; }
#p03box04 .working-list .working01 { width: 100%; background: #FFFFFF; padding: 30px 20px 20px; border: 1px solid #ECECEC; box-sizing: border-box; border-radius: 20px; margin-bottom: 20px; }
#p03box04 .working-list .working01:last-child { margin-bottom: 0; }
#p03box04 .working-list .working01:nth-child(3n) { margin-right: 0; }
#p03box04 .working-list .working01:last-child { margin-bottom: 0; }
#p03box04 .working-list .working01 .icon { height: 130px; text-align: center; margin-bottom: 30px; }
#p03box04 .working-list .working01 .icon img { width: auto; height: 100%; }
#p03box04 .working-list .working01 h3 { font-size: 18px; margin-bottom: 15px; }

/*インタビュー　p04
=========================================== */
.interview01 a { display: block; width: 100%; position: relative; }
.interview01 a .img { width: 100%; aspect-ratio: 335 / 447; border-radius: 20px; overflow: hidden; position: relative; }
.interview01 a .img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
.interview01 a .img .info_box { width: 100%; justify-content: center; align-items: flex-end; padding: 21px 0 17px; box-sizing: border-box; position: absolute; bottom: 0; left: 0; z-index: 1; }
.interview01 a .img .info_box::before { content: ""; display: block; width: 804px; height: 379px; background: rgba(0, 75, 159, 0.5); border-radius: 50%; position: absolute; top: 0; left: 50%; transform: translateX(-50%); transition: 0.3s; backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); z-index: -1; }
.interview01 a .img .info_box p { margin-right: 15px; }
.interview01 a .img .info_box p:last-child { margin-right: 0; }
.interview01 a .img .info_box .name { font-size: 13px; }
.interview01 a .img .info_box .name em { font-size: 22px; margin-right: 5px; }
.interview01 a .title { margin-top: 15px; font-size: 18px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.interview01 a .info-list { flex-wrap: nowrap; margin-top: 15px; }
.interview01 a .info-list li { display: inline-block; font-size: 13px; padding-right: 10px; border-right: 1px solid #727171; margin-right: 10px; box-sizing: border-box; }
.interview01 a .info-list li:last-child { padding-right: 0; border-right: 0; margin-right: 0; }
.interview01 a .info-list li.cate { white-space: nowrap; }

#p04box01 { padding: 60px 5% 0; }
#p04box01 .interview-all-list { display: block; margin-top: 40px; }
#p04box01 .interview-all-list .interview01 { margin-bottom: 40px; }
#p04box01 .interview-all-list .interview01:last-child { margin-bottom: 0; }

#interviewBox01 { padding-top: 60px; position: relative; }
#interviewBox01 .bg_img01 { width: 100%; aspect-ratio: 15 / 16; position: relative; }
#interviewBox01 .bg_img01 .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#interviewBox01 .main_info { width: 100%; padding: 30px 5%; box-sizing: border-box; background: rgba(0, 75, 159, 0.45); backdrop-filter: blur(5px) brightness(60%); -webkit-backdrop-filter: blur(5px) brightness(60%); color: #FFFFFF; }
#interviewBox01 .main_info .info_box { align-items: flex-end; }
#interviewBox01 .main_info .info_box p { margin-right: 15px; }
#interviewBox01 .main_info .info_box p:last-child { margin-right: 0; }
#interviewBox01 .main_info .info_box .name { font-size: 13px; }
#interviewBox01 .main_info .info_box .name em { font-size: 26px; margin-right: 5px; }
#interviewBox01 .main_info .title { margin-top: 10px; font-size: 22px; }
#interviewBox01 .main_info .info-list { flex-wrap: nowrap; margin-top: 20px; }
#interviewBox01 .main_info .info-list li { display: inline-block; padding-right: 10px; border-right: 1px solid #FFFFFF; margin-right: 10px; box-sizing: border-box; }
#interviewBox01 .main_info .info-list li:last-child { padding-right: 0; border-right: 0; margin-right: 0; }
#interviewBox01 .main_info .info-list li.cate { white-space: nowrap; }
#interviewBox01 .main_info .info-list02 { margin-top: 30px; }
#interviewBox01 .main_info .info-list02 li { margin-bottom: 20px; }
#interviewBox01 .main_info .info-list02 li:last-child { margin-bottom: 0; }
#interviewBox01 .main_info .info-list02 li span.midashi { display: inline-block; width: 68px; padding: 4px 0; box-sizing: border-box; background: #FFFFFF; border-radius: 5px; font-size: 13px; line-height: 19px; text-align: center; margin-right: 9px; }

#interviewBox02 { padding: 60px 5% 80px; }
#interviewBox02 .qa-list .qa01 { display: block; margin-bottom: 60px; }
#interviewBox02 .qa-list .qa01:last-child { margin-bottom: 0; }
#interviewBox02 .qa-list .qa01 .text_box { margin-bottom: 30px; }
#interviewBox02 .qa-list .qa01 .text_box h2 { font-size: 18px; padding: 0 0 23px 40px; box-sizing: border-box; border-bottom: 1px solid #BCBCBC; margin-bottom: 20px; position: relative; }
#interviewBox02 .qa-list .qa01 .text_box h2::before { content: ""; display: block; width: 30px; height: 30px; background: url("../img/p04/icon_q.png") no-repeat center; background-size: contain; position: absolute; top: -1px; left: 0; }
#interviewBox02 .qa-list .qa01 .img_box { width: 100%; aspect-ratio: 67 / 51; border-radius: 20px; }
#interviewBox02 .qa-list .qa01.qa02 .img-list { display: block; margin-top: 30px; }
#interviewBox02 .qa-list .qa01.qa02 .img-list .img_box { margin-bottom: 30px; }
#interviewBox02 .qa-list .qa01.qa02 .img-list .img_box:last-child { margin-bottom: 0; }

#interviewBox03 { background: #F2F6FA; }
#interviewBox03 .cnt { display: block; }
#interviewBox03 .cnt .img_box { width: 100%; aspect-ratio: 15 / 16; }
#interviewBox03 .cnt .text_box { padding: 50px 0 130px; box-sizing: border-box; position: relative; }
#interviewBox03 .cnt .text_box .box_in { padding: 0 5%; box-sizing: border-box; }
#interviewBox03 .cnt .text_box .btn01 { height: 80px; position: absolute; bottom: 0; left: 0; }
#interviewBox03 .cnt .text_box .btn01 a { border-radius: 0; }
#interviewBox03 .cnt .text_box .btn01 a::before { display: none; }
#interviewBox03 .cnt .text_box .btn01 a .btn-text { position: relative; padding-right: 30px; box-sizing: border-box; }
#interviewBox03 .cnt .text_box .btn01 a .btn-text::before { content: ""; display: block; width: 11px; height: 13px; background: url("../img/common/btn_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); z-index: 1; }

/*数字で知る　p05
=========================================== */
#p05box01 { padding: 60px 5% 0; }
#p05box01 .time { font-size: 13px; margin-bottom: 40px; }
#p05box01 .data-list { display: block; }
#p05box01 .data-list .data00 { width: 100%; padding: 30px 20px; box-sizing: border-box; background: #F2F6FA; border-radius: 20px; margin-bottom: 20px; }
#p05box01 .data-list .data00:last-child { margin-bottom: 0; }
#p05box01 .data-list .data00 h2 { font-size: 22px; }
#p05box01 .data-list .data00 .num { font-size: 30px; line-height: 1.45; font-weight: 700; text-align: center; }
#p05box01 .data-list .data00 .num em { font-size: 60px; }
#p05box01 .data-list .data00 .text01 { margin-top: 20px; }
#p05box01 .data-list .data01 .sub_num { font-size: 18px; }
#p05box01 .data-list .data02 .sub_num { display: flex; align-items: center; justify-content: center; font-size: 18px; margin-top: -15px; }
#p05box01 .data-list .data02 .sub_num::before, #p05box01 .data-list .data02 .sub_num::after { display: inline-block; font-size: 20px; font-weight: 400; }
#p05box01 .data-list .data02 .sub_num::before { content: "("; margin-right: 5px; }
#p05box01 .data-list .data02 .sub_num::after { content: ")"; margin-left: 5px; }
#p05box01 .data-list .data02 .sub_num em { font-size: 40px; margin: 0 5px 10px; }
#p05box01 .data-list .data04 .num .mini { display: inline-block; font-size: 18px; line-height: 1.3; margin-right: 5px; }
#p05box01 .data-list .data06 { position: relative; }
#p05box01 .data-list .data06 .graph_box { width: 100%; max-width: 300px; margin: 20px auto 0; position: relative; text-align: center; }
#p05box01 .data-list .data06 .graph_box img { width: 125px; }
#p05box01 .data-list .data06 .graph_box .graph_num { font-size: 12px; font-weight: 700; position: absolute; }
#p05box01 .data-list .data06 .graph_box .graph_num::before { content: ""; display: block; width: 1px; background: #000000; position: absolute; }
#p05box01 .data-list .data06 .graph_box .graph_num span { display: block; font-size: 13px; margin-top: -6px; }
#p05box01 .data-list .data06 .graph_box .graph_num span em { font-size: 28px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num01 { top: 12px; left: 14px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num01::before { height: 12px; bottom: -10px; left: 30px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num01::after { content: ""; display: block; width: 70px; height: 1px; background: #000000; position: absolute; bottom: -10px; left: 30px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num02 { bottom: -57px; left: 130px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num02::before { height: 13px; top: -12px; left: 50%; transform: translateX(-50%); }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num03 { top: 12px; right: 10px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num03::before { height: 12px; bottom: -10px; right: 40px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num03::after { content: ""; display: block; width: 70px; height: 1px; background: #000000; position: absolute; bottom: -10px; right: 40px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num04 { bottom: -40px; right: 70px; }
#p05box01 .data-list .data06 .graph_box .graph_num.graph_num04::before { height: 13px; top: -6px; left: -4px; transform: translateX(-50%) rotate(-36deg); }
#p05box01 .data-list .data06 .sub_text { font-size: 12px; line-height: 1.6; padding-left: 1em; text-indent: -1em; margin-top: 9px; }
#p05box01 .data-list .data07 { text-align: center; }
#p05box01 .data-list .data07 img { width: 200px; margin-top: 20px; }
#p05box01 .data-list .data07 .graph_box { max-width: 300px; margin: 20px auto 0; }
#p05box01 .data-list .data07 .graph_box .graph { align-items: center; margin-bottom: 2px; }
#p05box01 .data-list .data07 .graph_box .graph:last-child { margin-bottom: 0; }
#p05box01 .data-list .data07 .graph_box .graph .midashi { width: 115px; margin-right: 8px; }
#p05box01 .data-list .data07 .graph_box .graph .midashi span { display: inline-block; font-size: 12px; font-weight: 700; line-height: 1.45; margin-right: 3px; }
#p05box01 .data-list .data07 .graph_box .graph .midashi span:last-child { margin-right: 0; }
#p05box01 .data-list .data07 .graph_box .graph .midashi span em { font-size: 20px; }
#p05box01 .data-list .data07 .graph_box .graph .right { width: calc(100% - 123px); align-items: center; text-align: left; }
#p05box01 .data-list .data07 .graph_box .graph .right .bar { display: inline-block; height: 27px; background: #B9CDE3; }
#p05box01 .data-list .data07 .graph_box .graph .right .graph_num { display: inline-block; font-size: 12px; font-weight: 700; line-height: 1.45; margin-left: 6px; }
#p05box01 .data-list .data07 .graph_box .graph .right .graph_num em { font-size: 27px; }
#p05box01 .data-list .data10 .event-list01 { display: block; max-width: 300px; margin: 10px auto 0; text-align: center; }
#p05box01 .data-list .data10 .event-list01 .event { display: inline-flex; align-items: flex-end; width: 250px; padding: 5px 5px 15px 14px; box-sizing: border-box; border-bottom: 1px solid #BCBCBC; text-align: left; }
#p05box01 .data-list .data10 .event-list01 .event:first-child { padding-top: 0; }
#p05box01 .data-list .data10 .event-list01 .event:last-child { padding-bottom: 0; border-bottom: 0; }
#p05box01 .data-list .data10 .event-list01 .event .month { width: 55px; font-size: 18px; line-height: 1.45; margin-right: 10px; }
#p05box01 .data-list .data10 .event-list01 .event .month em { font-size: 30px; }
#p05box01 .data-list .data10 .event-list01 .event .naiyou { width: calc(100% - 65px); margin-bottom: 4px; }
#p05box01 .data-list .data10 .event-list01 .event .naiyou span { font-size: 18px; line-height: 1.44; }
#p05box01 .data-list .data11 .event-list02 { display: block; margin-top: 30px; }
#p05box01 .data-list .data11 .event-list02 .list:first-child .event:first-child { padding-top: 0; }
#p05box01 .data-list .data11 .event-list02 .list:last-child .event:last-child { padding-bottom: 0; border-bottom: 0; }
#p05box01 .data-list .data11 .event-list02 .list .event { padding: 30px 0; box-sizing: border-box; border-bottom: 1px solid #BCBCBC; }
#p05box01 .data-list .data11 .event-list02 .list .event .date { margin-bottom: 10px; }
#p05box01 .data-list .data11 .btn02 { margin-top: 30px; }
#p05box01 .data-list .data12 h2 { margin-bottom: 5px; }
#p05box01 .data-list .data12 .evaluation-list li { padding: 15px 5px 15px 33px; box-sizing: border-box; border-bottom: 1px solid #BCBCBC; font-weight: 700; position: relative; }
#p05box01 .data-list .data12 .evaluation-list li:last-child { border-bottom: 0; }
#p05box01 .data-list .data12 .evaluation-list li::before { content: ""; display: block; width: 15px; height: 15px; background: #004B9F; border-radius: 50%; position: absolute; top: 50%; left: 10px; transform: translateY(-50%); }
#p05box01 .data-list .data13 .data-text01 { font-size: 36px; line-height: 1.24; margin-bottom: 8px; }
#p05box01 .data-list .data13 .data-text02 { font-size: 17px; line-height: 1.45; }
#p05box01 .data-list .data13 .data-text02 .big { display: block; font-size: 18px; }
#p05box01 .data-list .data13 .data-text02 .big em { font-size: 24px; }
#p05box01 .data-list .data13 .text01 { margin-top: 10px; }

/*会社概要　p06
=========================================== */
#p06box01 { padding: 80px 5% 40px; }
#p06box01 .company-table tr { display: block; padding: 20px 0; border-bottom: 1px solid #BCBCBC; }
#p06box01 .company-table tr:first-child { padding-top: 0; }
#p06box01 .company-table tr:last-child { padding-bottom: 0; border-bottom: 0; }
#p06box01 .company-table tr th { display: block; margin-bottom: 10px; }
#p06box01 .company-table tr td { display: block; line-height: 2; }

#p06box02 { padding: 40px 5% 80px; }
#p06box02 .map_box { width: 100%; aspect-ratio: 67 / 80; position: relative; }
#p06box02 .map_box iframe { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#p06box02 .info_box { margin-top: 20px; }

#p06box03 { padding: 60px 5%; background: #F2F6FA; }
#p06box03 .waku .history-list { padding: 30px 20px; box-sizing: border-box; background: #FFFFFF; border-radius: 20px; }
#p06box03 .waku .history-list .history01 { display: block; padding-left: 31px; box-sizing: border-box; position: relative; margin-bottom: 20px; }
#p06box03 .waku .history-list .history01:last-child { margin-bottom: 0; }
#p06box03 .waku .history-list .history01:last-child::before { display: none; }
#p06box03 .waku .history-list .history01::before { content: ""; display: block; width: 1px; height: calc(100% + 20px); background: #BCBCBC; position: absolute; top: 4px; left: 8px; }
#p06box03 .waku .history-list .history01::after { content: ""; display: block; width: 16px; height: 16px; background: #004B9F; border-radius: 50%; position: absolute; top: 4px; left: 0; }
#p06box03 .waku .history-list .history01 .date { margin-bottom: 10px; font-weight: 700; }

#p06box04 { padding: 80px 5%; }
#p06box04 .certification-list .certification01 { display: block; margin-bottom: 50px; }
#p06box04 .certification-list .certification01:last-child { margin-bottom: 0; }
#p06box04 .certification-list .certification01 .img_box { width: 100%; max-width: 212px; margin: 0 auto 20px; }
#p06box04 .certification-list .certification01 .text_box h3 { font-size: 18px; margin-bottom: 15px; }
#p06box04 .certification-list .certification01 .text_box div.common_text a { text-decoration: underline; }

#p06box05 { padding: 60px 5%; background: #F2F6FA; }
#p06box05 .movie_box { width: 100%; aspect-ratio: 335 / 191; position: relative; margin-top: 40px; }
#p06box05 .movie_box iframe { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/*事業内容　p07
=========================================== */
#p07box01 { padding: 80px 5% 0; }
#p07box01 .cnt { display: block; margin-bottom: 80px; }
#p07box01 .bg_img01 { width: 100%; aspect-ratio: 67 / 80; position: relative; }
#p07box01 .bg_img01 .in_img { width: 100vw; height: 100%; background: url("../img/p07/img01.jpg") no-repeat center bottom; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

#p07box02 { padding: 80px 5% 40px; }
#p07box02 .cnt { display: block; margin-bottom: 40px; }
#p07box02 .cnt .img_box { width: 100%; aspect-ratio: 67 / 44; position: relative; margin: 50px 0; }
#p07box02 .cnt .img_box img { width: 100%; position: absolute; top: 0; left: 0; }
#p07box02 .industry-list { display: block; }
#p07box02 .industry-list .industry00 { margin-bottom: 30px; }
#p07box02 .industry-list .industry00 .img { width: 100%; aspect-ratio: 335 / 254; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius: 20px; }
#p07box02 .industry-list .industry00.industry01 .img { background-image: url("../img/p07/industry01.jpg"); }
#p07box02 .industry-list .industry00.industry02 .img { background-image: url("../img/p07/industry02.jpg"); }
#p07box02 .industry-list .industry00.industry03 { margin-bottom: 0; }
#p07box02 .industry-list .industry00.industry03 .img { background-image: url("../img/p07/industry03.jpg"); }

#p07box03 { padding: 40px 5% 80px; }
#p07box03 .bearing-list { display: block; margin-top: 40px; }
#p07box03 .bearing-list .bearing00 { margin-bottom: 30px; }
#p07box03 .bearing-list .bearing00 .img { width: 100%; aspect-ratio: 335 / 254; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius: 20px; }
#p07box03 .bearing-list .bearing00.bearing01 .img { background-image: url("../img/p07/bearing01.jpg"); }
#p07box03 .bearing-list .bearing00.bearing02 .img { background-image: url("../img/p07/bearing02.jpg"); }
#p07box03 .bearing-list .bearing00.bearing03 { margin-bottom: 0; }
#p07box03 .bearing-list .bearing00.bearing03 .img { background-image: url("../img/p07/bearing03.jpg"); }

#p07box04 { padding: 60px 5%; background: #F2F6FA; }
#p07box04 .equipment-list { margin-top: 40px; }
#p07box04 .equipment-list .equipment00 { width: calc(50% - 8px); margin: 30px 15px 0 0; }
#p07box04 .equipment-list .equipment00:nth-child(-n+2) { margin-top: 0; }
#p07box04 .equipment-list .equipment00:nth-child(2n) { margin-right: 0; }
#p07box04 .equipment-list .equipment00 .img { width: 100%; aspect-ratio: 1 / 1; border-radius: 10px; margin-bottom: 10px; overflow: hidden; position: relative; }
#p07box04 .equipment-list .equipment00 .img a { display: block; width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#p07box04 .equipment-list .equipment00 .img a:hover { transform: translate(-50%, -50%) scale(1.1); }
#p07box04 .equipment-list .equipment00 p { line-height: 1.6; }

#p07box05 { padding: 80px 5% 0; }
#p07box05 .quality-list { display: block; }
#p07box05 .quality-list .quality00 { display: block; }
#p07box05 .quality-list .quality00 .img { width: 100%; max-width: 212px; margin: 0 auto 30px; }

/*経営理念　p08
=========================================== */
body.page-policy .under-cont { padding-top: 80px; }
body.page-policy .under-cont > .bg_img01 { width: 100%; aspect-ratio: 15 / 16; position: relative; }
body.page-policy .under-cont > .bg_img01 .in_img { width: 100%; height: 100%; background: url("../img/p08/img01_sp.jpg") no-repeat right bottom; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

#p08box01 { padding: 80px 5% 40px; }
#p08box01 .policy-table tr { display: block; padding: 20px 0; border-bottom: 1px solid #BCBCBC; box-sizing: border-box; }
#p08box01 .policy-table tr:first-child { padding-top: 0; }
#p08box01 .policy-table tr:last-child { padding-bottom: 0; border-bottom: 0; }
#p08box01 .policy-table tr th { display: block; font-size: 18px; color: #004B9F; margin-bottom: 10px; }
#p08box01 .policy-table tr td { display: block; line-height: 2; }

#p08box02 { padding: 40px 5% 100px; }
#p08box02 .box { width: 100%; aspect-ratio: 67 / 84; background: url("../img/p08/box_bg_sp.png") no-repeat center; background-size: cover; border-radius: 20px; position: relative; }
#p08box02 .box .box-text { width: 100%; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
#p08box02 .box .box-text .title03 { margin-bottom: 10px; }
#p08box02 .box .box-text .text { font-size: 18px; line-height: 1.6; }

#p08box03 { margin-top: 34.67vw; padding: 0 5% 60px; background: #004B9F; position: relative; }
#p08box03::before { content: ""; display: block; width: 100%; height: 34.67vw; background: url("../img/p08/bg01_sp.png") no-repeat center top; background-size: cover; position: absolute; top: -34.6vw; left: 0; }
#p08box03 .cnt { display: block; margin-bottom: 40px; }
#p08box03 .cnt .text_box { margin-bottom: 30px; }
#p08box03 .cnt .text_box .midashi { font-size: 22px; line-height: 1.6; }
#p08box03 .cnt .img_box { width: 100%; max-width: 500px; margin: 0 auto; }
#p08box03 .message_box p { margin-bottom: 30px; }
#p08box03 .message_box p:last-child { margin-bottom: 0; }
#p08box03 .name { display: flex; justify-content: flex-end; align-items: center; margin-top: 26px; font-size: 13px; }
#p08box03 .name img { width: 90px; margin-left: 20px; }

#p08box04 { padding: 80px 5% 60px; position: relative; }
#p08box04::before { content: ""; display: block; width: 100%; height: 32%; background: #F2F6FA; position: absolute; bottom: 0; left: 0; z-index: -1; }
#p08box04 .csr_box { margin-bottom: 60px; }
#p08box04 .csr_box:last-child { margin-bottom: 0; }
#p08box04 .csr_box .csr-title { font-size: 22px; color: #004B9F; margin-bottom: 20px; }
#p08box04 .csr_box .cnt { display: block; margin-bottom: 30px; }
#p08box04 .csr_box .policy-list { display: block; }
#p08box04 .csr_box .policy-list .policy01 { padding: 30px 20px; box-sizing: border-box; background: #F2F6FA; border-radius: 20px; margin-bottom: 10px; }
#p08box04 .csr_box .policy-list .policy01:last-child { margin-bottom: 0; }
#p08box04 .csr_box .policy-list .policy01 h4 { font-size: 18px; margin-bottom: 15px; }
#p08box04 .csr_box .attempt-list { display: block; }
#p08box04 .csr_box .attempt-list .attempt01 { margin-bottom: 30px; }
#p08box04 .csr_box .attempt-list .attempt01:last-child { margin-bottom: 0; }
#p08box04 .csr_box .attempt-list .attempt01 .img { width: 100%; aspect-ratio: 335 / 254; border-radius: 20px; margin-bottom: 10px; }
#p08box04 .csr_box .csr-news-list { display: block; }
#p08box04 .csr_box .csr-news-list .csr-news00 { margin-bottom: 40px; }
#p08box04 .csr_box .csr-news-list .csr-news00:last-child { margin-bottom: 0; }
#p08box04 .csr_box .csr-news-list .csr-news00 a { display: block; width: 100%; }
#p08box04 .csr_box .csr-news-list .csr-news00 a .img { width: 100%; aspect-ratio: 67 / 51; border: 1px solid #ECECEC; box-sizing: border-box; border-radius: 10px; overflow: hidden; position: relative; margin-bottom: 15px; }
#p08box04 .csr_box .csr-news-list .csr-news00 a .img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
#p08box04 .csr_box .csr-news-list .csr-news00 a .info { margin-bottom: 15px; }
#p08box04 .csr_box .csr-news-list .csr-news00 a .info .time { margin-right: 10px; }
#p08box04 .csr_box .csr-news-list .csr-news00 a .title { font-size: 18px; line-height: 1.45; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
#p08box04 .csr_box .csr-news-list .csr-news00 a p.text { margin-top: 15px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }

/*募集要項　p09
=========================================== */
#p09box01 { padding: 60px 5% 0; }
#p09box01 .text01 { margin-bottom: 40px; }
#p09box01 .title03 { font-size: 22px; letter-spacing: 0; }
#p09box01 .list { display: block; }
#p09box01 .list .list_in { padding: 30px; box-sizing: border-box; background: #FFFFFF; border: 1px solid #ECECEC; border-radius: 20px; text-align: center; margin-bottom: 20px; }
#p09box01 .list .list_in:last-child { margin-bottom: 0; }
#p09box01 .list .list_in img { width: auto; height: 112px; }
#p09box01 .list .list_in p { margin-top: 20px; font-size: 18px; }
#p09box01 .list .list_in p .mini { display: block; font-size: 16px; }
#p09box01 .list .list_in.list_in02 { padding-top: 32px; }
#p09box01 .list .list_in.list_in02 img { height: 110px; }

#p09box02 { padding: 60px 5% 0; }
#p09box02 .recruitment_list .recruitment_box { margin-bottom: 20px; border-radius: 10px; border: 1px solid #BCBCBC; box-sizing: border-box; }
#p09box02 .recruitment_list .recruitment_box:last-child { margin-bottom: 0; }
#p09box02 .recruitment_list .recruitment_box .t_text { display: block; background: #BCBCBC; border-radius: 10px; padding: 20px 46px 20px 20px; box-sizing: border-box; cursor: pointer; transition: 0.3s; position: relative; }
#p09box02 .recruitment_list .recruitment_box .t_text::before { content: ""; display: block; width: 18px; height: 14px; background: url("../img/p09/arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); transition: 0.3s; }
#p09box02 .recruitment_list .recruitment_box .t_text .info { align-items: center; }
#p09box02 .recruitment_list .recruitment_box .t_text .info span { display: inline-block; padding: 4px 8px; box-sizing: border-box; border-radius: 5px; font-size: 13px; line-height: 19px; font-weight: 700; margin-right: 10px; transition: 0.3s; margin-bottom: 10px; }
#p09box02 .recruitment_list .recruitment_box .t_text .info span:last-child { margin-right: 0; }
#p09box02 .recruitment_list .recruitment_box .t_text .info span.status { background: #FFFFFF; color: #BCBCBC; }
#p09box02 .recruitment_list .recruitment_box .t_text .info span.type { border: 1px solid #FFFFFF; }
#p09box02 .recruitment_list .recruitment_box .t_text h3 { width: auto; font-size: 18px; line-height: 1.55; }
#p09box02 .recruitment_list .recruitment_box .t_text.on::before { transform: translateY(-50%) rotate(180deg); }
#p09box02 .recruitment_list .recruitment_box .c_text { display: none; padding: 30px 20px; box-sizing: border-box; }
#p09box02 .recruitment_list .recruitment_box .c_text .info-table tr { display: block; padding: 20px 0; border-bottom: 1px solid #BCBCBC; }
#p09box02 .recruitment_list .recruitment_box .c_text .info-table tr:first-child { padding-top: 0; }
#p09box02 .recruitment_list .recruitment_box .c_text .info-table tr:last-child { border-bottom: 0; padding-bottom: 0; }
#p09box02 .recruitment_list .recruitment_box .c_text .info-table tr th { display: block; margin-bottom: 10px; }
#p09box02 .recruitment_list .recruitment_box .c_text .info-table tr td { display: block; line-height: 2; }
#p09box02 .recruitment_list .recruitment_box.recruiting .t_text { background: #727171; }
#p09box02 .recruitment_list .recruitment_box.recruiting .t_text .info span.status { color: #727171; }
#p09box02 .recruitment_list .recruitment_box.recruiting .t_text.on { background: #004B9F; }
#p09box02 .recruitment_list .recruitment_box.recruiting .t_text.on .info span.status { color: #004B9F; }
#p09box02 .btn01 { margin-top: 60px; }

/*エントリー　p10
=========================================== */
#p10box01 { padding: 60px 5% 30px; }
#p10box01 .title03 { font-size: 22px; letter-spacing: 0; }
#p10box01 .list { width: 1100px; justify-content: space-between; }
#p10box01 .list .list_in { width: 245px; padding: 40px 30px 30px; box-sizing: border-box; background: #FFFFFF; border: 1px solid #ECECEC; border-radius: 20px; text-align: center; position: relative; }
#p10box01 .list .list_in:last-child::after { display: none; }
#p10box01 .list .list_in::after { content: ""; display: block; width: 14px; height: 34px; background: url("../img/p10/arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: -28px; transform: translateY(-50%); }
#p10box01 .list .list_in .num { display: inline-block; width: 60px; height: 60px; background: #F2F6FA; padding: 6px 19px; box-sizing: border-box; border-radius: 20px 0 60px; font-size: 22px; line-height: 32px; position: absolute; top: 0; left: 0; }
#p10box01 .list .list_in img { width: auto; height: 107px; }
#p10box01 .list .list_in p { margin-top: 20px; font-size: 18px; }
#p10box01 .text01 { margin-top: 20px; font-size: 13px; }

#p10box02 { padding-top: 30px; }
#p10box02 .waku { padding: 60px 5%; box-sizing: border-box; background: #F2F6FA; }
#p10box02 .waku .title03 { font-size: 22px; letter-spacing: 0; }
#p10box02 .waku .text01 { font-size: 13px; }
#p10box02 .waku .text-list li { font-size: 13px; padding-left: 1em; text-indent: -1em; }

/*お知らせ　p11
=========================================== */
#p11box01 { padding: 60px 5% 0; }
#p11box01 .news-all-list .news01 { padding-bottom: 40px; border-bottom: 1px solid #DEDEDE; margin-bottom: 40px; }
#p11box01 .news-all-list .news01:last-child { padding-bottom: 0; border-bottom: 0; margin-bottom: 0; }

#newsBox01 { padding: 60px 5% 0; }
#newsBox01 #two-main .info { align-items: center; margin-bottom: 20px; }
#newsBox01 #two-main .info .time { margin-right: 10px; }
#newsBox01 #two-main .title { font-size: 22px; margin-bottom: 30px; }
#newsBox01 #two-main .news-text { color: #727171; }
#newsBox01 #two-main .writer { color: #727171; margin-top: 40px; }

/*お問い合わせ　p12
=========================================== */
#p12box01 { padding: 60px 5% 0; }
#p12box01 .text01 { font-size: 13px; }
#p12box01 .text-list li { font-size: 13px; padding-left: 1em; text-indent: -1em; }

/*お問い合わせフォーム
=========================================== */
.form_box { margin-top: 40px; }

ul.contact-state { width: 100%; max-width: 400px; aspect-ratio: 335 / 62; position: relative; margin: 0 auto 40px; }
ul.contact-state li { width: 100%; height: 100%; }
ul.contact-state li span { display: none; }
ul.contact-state li.state01 { background: url("../img/p12/state01_sp.png") no-repeat center; background-size: contain; }
ul.contact-state li.state02 { background: url("../img/p12/state01_sp.png") no-repeat center; background-size: contain; position: absolute; left: 0; top: 0; }

.contactTBL { /*ご希望連絡方法*/ /*希望職種*/ /*生年月日*/ /*履歴書・職務経歴書添付*/ /*doui-check*/ /*送信ボタン*/ }
.contactTBL ::placeholder { color: #BCBCBC; }
.contactTBL tr { display: block; margin-bottom: 30px; }
.contactTBL tr:last-child { margin-bottom: 0; }
.contactTBL th, .contactTBL td { display: block; color: #000000; }
.contactTBL th { font-size: 18px; line-height: 26px; margin-bottom: 14px; }
.contactTBL th .hissu { display: inline-block; width: 40px; font-size: 13px; line-height: 19px; font-weight: 400; color: #FFFFFF; padding: 3px 0 5px; box-sizing: border-box; border-radius: 5px; background: #004B9F; text-align: center; margin-right: 10px; }
.contactTBL input.wpcf7-text, .contactTBL textarea.wpcf7-form-control.wpcf7-textarea, .contactTBL select.wpcf7-form-control.wpcf7-select, .contactTBL input.wpcf7-number { width: 100%; height: 60px; padding: 16px 20px 18px; box-sizing: border-box; background: #FFFFFF; border: 1px solid #DEDEDE; box-sizing: border-box; border-radius: 10px; font-family: 'NotoSansJP'; font-size: 18px; font-weight: 400; line-height: 26px; color: #000000; cursor: pointer; }
.contactTBL textarea.wpcf7-form-control.wpcf7-textarea { height: 240px; }
.contactTBL tr.koumoku .wpcf7-list-item { margin-left: 20px; }
.contactTBL tr.koumoku .wpcf7-list-item label { display: flex; align-items: center; cursor: pointer; }
.contactTBL tr.koumoku .wpcf7-list-item label span.wpcf7-list-item-label { position: relative; display: flex; align-items: center; cursor: pointer; font-size: 16px; }
.contactTBL tr.koumoku .wpcf7-list-item label span.wpcf7-list-item-label::before { display: block; content: ""; border-radius: 100%; background: #FFFFFF; border: 1px solid #DEDEDE; box-sizing: border-box; width: 20px; height: 20px; margin-right: 10px; }
.contactTBL tr.koumoku .wpcf7-list-item label span.wpcf7-list-item-label::after { display: none; position: absolute; content: ""; border-radius: 100%; width: 12px; height: 12px; background-color: #727171; left: 4px; top: 50%; transform: translateY(-50%); }
.contactTBL tr.koumoku .wpcf7-list-item label input[type="checkbox"] { opacity: 0; visibility: hidden; position: absolute; }
.contactTBL tr.koumoku .wpcf7-list-item label:has(input[type="checkbox"]:checked) span.wpcf7-list-item-label::after { display: block; }
.contactTBL tr.koumoku .wpcf7-list-item.first { margin-left: 0; }
.contactTBL tr.koumoku02 th { margin-bottom: 0; }
.contactTBL tr.koumoku02 .wpcf7-list-item { margin: 20px 20px 0 0; }
.contactTBL tr.koumoku02 .wpcf7-list-item label { display: flex; align-items: center; cursor: pointer; }
.contactTBL tr.koumoku02 .wpcf7-list-item label input[type="radio"] { width: 20px; height: 20px; background: #FFFFFF; border: 1px solid #DEDEDE; accent-color: #727171; margin-right: 10px; border-radius: 50%; cursor: pointer; }
.contactTBL tr.birthday_box td .box_in01 { display: flex; align-items: center; margin-bottom: 20px; }
.contactTBL tr.birthday_box td .box_in02 { display: flex; align-items: center; }
.contactTBL tr.birthday_box td input.wpcf7-number { width: 100px; padding-right: 10px; margin-right: 10px; }
.contactTBL tr.birthday_box td input.wpcf7-number.year { width: 200px; }
.contactTBL tr.birthday_box td input.wpcf7-number.day { margin-left: 20px; }
.contactTBL tr.file_box th .sub_text { display: block; font-size: 16px; font-weight: 400; line-height: 24px; margin-top: 5px; }
.contactTBL tr.file_box td .file-btn { margin-bottom: 30px; }
.contactTBL tr.file_box td .file-btn:last-child { margin-bottom: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler { border: none; border-radius: 0; margin-bottom: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container { padding: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner { width: auto; text-align: left; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner h3, .contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner span { display: none; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { display: block; content: "選択されていません"; color: #000000; margin-top: 10px; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn { display: inline-block; height: 60px; padding: 19px 44px 17px; box-sizing: border-box; background: #BCBCBC; border: 0; border-radius: 10px; font-size: 16px; font-weight: 400; line-height: 24px; color: #F5F5F5; transition: 0.3s; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn:hover { opacity: 0.7; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .dnd-upload-counter { display: none; }
.contactTBL .codedropz-upload-wrapper .wpcf7c-conf.wpcf7c-conf-hidden { display: none; }
.contactTBL .codedropz-upload-wrapper:has(.dnd-upload-status) .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { display: none; }
.contactTBL tr.doui-box td .wpcf7-list-item { margin: 0; }
.contactTBL tr.doui-box td .wpcf7-list-item label { display: flex; align-items: center; cursor: pointer; }
.contactTBL tr.doui-box td .wpcf7-list-item label input[type="radio"] { width: 20px; height: 20px; background: #FFFFFF; border: 1px solid #DEDEDE; accent-color: #727171; margin-right: 10px; border-radius: 50%; cursor: pointer; }
.contactTBL tr.doui-box td .doui-text { margin-top: 20px; padding-left: 30px; box-sizing: border-box; text-decoration: underline; }
.contactTBL tr.doui-box td .doui-text a { display: block; }
.contactTBL .contact-submit.flex { display: block; margin-top: 60px; }
.contactTBL .contact-submit.flex .btn01 input.wpcf7-form-control { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 0 30px; box-sizing: border-box; white-space: normal; border-radius: 5px; background-color: #727171; background-image: url("../img/common/btn_arrow.svg"); background-repeat: no-repeat; background-position: center right 20px; background-size: 7px; border: 1px solid #727171; cursor: pointer; transition: 0.3s; font-size: 16px; line-height: 1.5; color: #FFFFFF; appearance: none; -webkit-appearance: none; -moz-appearance: none; }
.contactTBL .contact-submit.flex .btn01 input.wpcf7-form-control:hover { text-decoration: none; background-color: #004B9F; border: 1px solid #004B9F; }
.contactTBL .contact-submit.flex .btn01:has(.wpcf7c-force-hide) { display: none; }
.contactTBL .contact-submit.flex .btn01.back { margin-top: 20px !important; }
.contactTBL .contact-submit.flex .btn01.back input.wpcf7-form-control { background-color: #FFFFFF; background-image: url("../img/p12/btn_arrow.svg"); background-position: center left 20px; color: #727171; }
.contactTBL .contact-submit.flex .btn01.back input.wpcf7-form-control:hover { background-color: #727171; color: #FFFFFF; background-image: url("../img/p12/btn_arrow02.svg"); border: 1px solid #727171; }
.contactTBL .contact-submit.flex .wpcf7c-elm-step2.mt20 { margin-top: 20px; text-align: center; }
.contactTBL .contact-submit.flex input.wpcf7-form-control:focus { outline: none; }

/*入力内容確認時にフォーム上部へスクロールするがナビゲーションが追従の場合フォームとナビゲーションが重なるのでそのためのオフセット設定*/
form.wpcf7-form { padding-top: 185px; margin-top: -185px; }

.wpcf7c-conf { background-color: #D4D4D4 !important; }

input:-webkit-autofill, input:-internal-autofill-selected { -webkit-appearance: none; -webkit-box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; }

.wpcf7 .ajax-loader { display: none !important; }

.wpcf7-spinner { display: none !important; }

/*Thanks・404
=========================================== */
#other { padding: 60px 5% 0; text-align: center; }
#other h2 { font-size: 24px; margin-bottom: 30px; }
#other p { position: relative; }
#other .btn01 { margin-top: 60px; }

/*プライバシーポリシー
=========================================== */
div#pageBox01 { padding: 60px 5% 0; line-height: 2; }

h2.pp-title01 { font-size: 24px; border-bottom: solid 2px; margin-bottom: 30px; padding-bottom: 10px; line-height: 1.5; }

h3.pp-title02 { font-size: 20px; position: relative; margin: 20px 0; padding-left: 10px; line-height: 1.5; }
h3.pp-title02::before { content: ""; width: 2px; height: 65%; background: #000; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; }

/*ウインドー幅ごと
=========================================== */
@media screen and (min-width: 0px) and (max-width: 374px) { #topbox01 .cnt .text_box .midashi { font-size: 6.93vw; }
  .staff_box .midashi { font-size: 5.87vw; }
  .staff_box .staff-list .staff-img { height: 50.67vw; }
  .staff_box .staff-list .staff-img .img01 { height: 58.67vw; }
  .staff_box .staff-list .staff-img.staff-img01 { width: 16vw; margin-right: 9.33vw; }
  .staff_box .staff-list .staff-img.staff-img02 { width: 15.2vw; margin-right: 6.93vw; }
  .staff_box .staff-list .staff-img.staff-img03 { width: 17.87vw; margin-right: 8.27vw; }
  .staff_box .staff-list .staff-img.staff-img04 { width: 15.73vw; }
  .staff_box .staff-list .staff-img.staff-img05 { width: 15.47vw; margin-right: 7.47vw; }
  .staff_box .staff-list .staff-img.staff-img06 { width: 16.27vw; margin-right: 7.47vw; }
  .staff_box .staff-list .staff-img.staff-img07 { width: 15.73vw; }
  .staff_box .staff-list .staff-img.staff-img05, .staff_box .staff-list .staff-img.staff-img06, .staff_box .staff-list .staff-img.staff-img07 { margin-top: -35.47vw; }
  .wp-pagenavi > span, .wp-pagenavi > a { width: 9.07vw; height: 9.07vw; margin: 0 1.33vw; font-size: 4.27vw; line-height: 9.07vw; }
  .wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink { width: 2.4vw; }
  .wp-pagenavi a.previouspostslink { margin-right: 4vw; }
  .wp-pagenavi a.nextpostslink { margin-left: 4vw; }
  .wp-pagenavi a.previouspostslink::before, .wp-pagenavi a.nextpostslink::before { height: 5.07vw; }
  .wp-pagenavi a.first, .wp-pagenavi a.last { width: 4.8vw; }
  .wp-pagenavi a.first::before, .wp-pagenavi a.last::before { height: 5.07vw; }
  .post-navigation ul li { padding-right: 3.73vw; margin-right: 3.73vw; }
  .post-navigation ul li:last-child { padding-right: 0; margin-right: 0; }
  .post-navigation ul > li a { font-size: 4.27vw; line-height: 1.5; }
  .post-navigation ul > li a::before { width: 2.13vw; height: 4vw; }
  .post-navigation ul > li.prev a { padding-left: 4.8vw; }
  .post-navigation ul > li.next a { padding-right: 4.8vw; }
  #p05box01 .data-list .data00 h2 { font-size: 5.87vw; }
  #p05box01 .data-list .data06 .graph_box img { width: 33.33vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num { font-size: 3.2vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num span { font-size: 3.47vw; margin-top: -1.6vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num span em { font-size: 7.47vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num01 { top: 3.2vw; left: 3.73vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num01::before { height: 3.2vw; bottom: -2.67vw; left: 8vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num01::after { width: 18.67vw; bottom: -2.67vw; left: 8vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num02 { bottom: -15.2vw; left: 34.67vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num02::before { height: 3.47vw; top: -3.2vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num03 { top: 3.2vw; right: 2.67vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num03::before { height: 3.2vw; bottom: -2.67vw; right: 10.67vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num03::after { width: 18.67vw; bottom: -2.67vw; right: 10.67vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num04 { bottom: -10.67vw; right: 18.67vw; }
  #p05box01 .data-list .data06 .graph_box .graph_num.graph_num04::before { height: 3.47vw; top: -1.6vw; left: -1.07vw; }
  #p05box01 .data-list .data06 .sub_text { font-size: 3.2vw; margin-top: 2.4vw; }
  #p05box01 .data-list .data07 .graph_box .graph .midashi { width: 30.67vw; margin-right: 1.5vw; }
  #p05box01 .data-list .data07 .graph_box .graph .midashi span { font-size: 3.2vw; margin-right: 0.5vw; }
  #p05box01 .data-list .data07 .graph_box .graph .midashi span:last-child { margin-right: 0; }
  #p05box01 .data-list .data07 .graph_box .graph .midashi span em { font-size: 4vw; }
  #p05box01 .data-list .data07 .graph_box .graph .right { width: calc(100% - 32.8vw); }
  #p05box01 .data-list .data07 .graph_box .graph .right .graph_num { font-size: 3.2vw; margin-left: 1vw; }
  #p05box01 .data-list .data07 .graph_box .graph .right .graph_num em { font-size: 4.6vw; }
  #p05box01 .data-list .data13 .data-text01 { font-size: 9.6vw; }
  #p05box01 .data-list .data13 .data-text02 { font-size: 4.53vw; }
  #p05box01 .data-list .data13 .data-text02 .big { font-size: 4.8vw; }
  #p05box01 .data-list .data13 .data-text02 .big em { font-size: 6.4vw; } }
@media screen and (min-width: 0px) and (max-width: 370px) { #p03box03 .attempt_tab_list .tab_list div { padding: 0 8px; } }
@media screen and (min-width: 0px) and (max-width: 350px) { ul.bread-list li.txt-limit { max-width: 125px; } }
/*safari用
=========================================== */
