@charset "UTF-8";
/* Theme Name: sis Theme URI: http://www.satois.co.jp/ Description: 株式会社エス・アイ・エス 法人サイト用テーマ Author: maki@frog-eight.com Author URI: http: */
/* Style List * 1.Common 2.Home 3.Other 4.Responsive-iPad min-768px 5.Responsive-PC min-960px 6.Responsive-SP max-340px */
/* ---- 1.Common ---- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

html { font-size: 16px; }

body { line-height: 1; font-family: "source-han-sans-japanese",sans-serif; }

body .pure-g [class*="pure-u"] { font-family: "source-han-sans-japanese",sans-serif; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

nav ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after { content: ''; content: none; }

q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: text-top; background: transparent; color: #000; text-decoration: none; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #000; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

/* change border colour to suit your needs */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

p { color: #000000; text-align: left; white-space: normal; word-wrap: keep-all; line-height: 1.75; }

p b { background-color: rgba(0, 183, 238, 0.2); font-weight: 400; }

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

a { opacity: 1; vertical-align: bottom; -webkit-transition: 0.3s; transition: 0.3s; }

a:hover, a:active { opacity: 0.6; }

.cf:before { content: ""; display: table; }

.cf:after { content: ""; display: table; clear: both; }

.full { width: 100%; max-width: 100%; overflow: hidden; }

.bg-glay { background-color: rgba(27, 27, 27, 0.65); }

.pc { display: none; }

.sp { display: initial; }

.sdw-white { -webkit-box-shadow: 0px 0px 24px 2px #ffffff; box-shadow: 0px 0px 24px 2px #ffffff; }

footer { background-color: #193256; padding: 1rem 1rem 1.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; clear: both; }

footer small { color: #fffefe; font-size: 0.75rem; font-weight: 400; line-height: 1.5; text-align: center; }

footer ul.fnav { width: 100%; margin: 1rem 0 0; text-align: center; }

footer ul.fnav li { display: inline-block; margin: 0 1.5rem; }

footer ul.fnav li a { color: #ccc; font-size: 0.75rem; font-weight: 400; line-height: 1.5; }

header { position: fixed; top: 0; left: 0; min-height: 42px; z-index: 1000000; }

header h1.logo { width: 78px; height: 47.53px; position: fixed; top: 0; right: 0; z-index: 1000000; }

header nav.menu-wrap { width: 80%; position: relative; }

header nav.menu-wrap .btn-menu { width: 42px; height: 42px; position: fixed; z-index: 1000000; left: 0; top: 0; background-image: url("img/bg-menu-icon.svg"); background-position: 100% 0; background-repeat: no-repeat; background-size: 200%; }

header nav.menu-wrap .btn-menu:hover { opacity: 1; }

header nav.menu-wrap .btn-menu #menu-off { display: none; }

header nav.menu-wrap .btn-menu #menu-on { display: none; }

header nav.menu-wrap .btn-menu img { width: 24px; height: auto; margin-top: 8px; margin-left: 8px; }

header nav.menu-wrap .gnav { margin-top: 32px; margin-left: 36px; width: 312px; overflow-y: auto; height: 88vh; display: none; z-index: 200000000; position: relative; }

header nav.menu-wrap .gnav li { width: 145px; height: 144.9px; background-color: rgba(0, 53, 103, 0.95); border: 2px solid #fff; padding: 22px; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; float: left; }

header nav.menu-wrap .gnav li.menu-light { background-color: rgba(0, 89, 130, 0.95); }

header nav.menu-wrap .gnav li.menu-middle { width: 290px; height: 72.9px; text-align: left; padding: 8px 8px 8px 4px; -webkit-box-sizing: border-box; box-sizing: border-box; vertical-align: text-top; }

header nav.menu-wrap .gnav li.menu-middle a { display: block; position: relative; }

header nav.menu-wrap .gnav li.menu-middle a img { max-width: 40px; padding-top: 8px; padding-left: 55px; }

header nav.menu-wrap .gnav li.menu-middle a span { display: block; width: 80px; position: absolute; right: 55px; top: 20px; text-align: center; font-size: 12px; margin-top: 0; }

header nav.menu-wrap .gnav li.menu-small { height: 72.9px; text-align: left; padding: 8px 8px 8px 4px; vertical-align: text-top; }

header nav.menu-wrap .gnav li.menu-small a { display: block; position: relative; }

header nav.menu-wrap .gnav li.menu-small a img { max-width: 40px; padding-top: 8px; padding-left: 8px; }

header nav.menu-wrap .gnav li.menu-small a span { display: block; width: 80px; position: absolute; right: 0; top: 20px; text-align: center; font-size: 12px; margin-top: 0; }

header nav.menu-wrap .gnav li a { color: #fff; }

header nav.menu-wrap .gnav li ahover, header nav.menu-wrap .gnav li aactive { opacity: 0.6; cursor: pointer; }

header nav.menu-wrap .gnav li a img { max-width: 70%; max-height: 55%; height: auto; margin-bottom: 0.5rem; padding-left: 15%; padding-right: 15%; }

header nav.menu-wrap .gnav li a span { font-size: 0.8rem; display: inline-block; margin-top: 0.5rem; line-height: 1.3; }

/* ---- 2.Home ---- */
main section.main-visual { position: relative; z-index: 1; opacity: 0; }

main section.main-visual > section.basic-btn { position: absolute; left: 10%; bottom: 0; z-index: 999999; width: 78%; }

main section.main-visual > section.basic-btn a.btn { max-width: 280px; margin: 1rem 0.25rem 0 0.25rem; text-align: left; }

main section.main-visual > section.basic-btn .btn-entry { background-color: #638c0b; padding: 1rem 1rem 1rem; }

main section.main-visual > section.basic-btn .btn-career { padding: 1rem 1rem 1rem; }

main section.main-visual > section.basic-btn .btn-green { background-color: #205040; }

main section.main-visual > section.basic-btn .btn-blue { background-color: #193256; }

main section.main-visual > section.top-news { position: absolute; left: 10%; bottom: 1rem; width: 80%; text-align: left; color: #000; font-size: 0.8rem; z-index: 999999; background-color: rgba(255, 255, 255, 0.6); padding: 0.75rem 1.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 1.75; }

main section.main-visual > section.top-news p { display: inline; }

main section.main-visual > section.top-news p a { color: #005982; font-weight: bold; margin-right: 0.25rem; }

main section.main-visual h2 { position: absolute; top: 0; left: 0; width: 95%; text-align: center; color: #fff; font-size: 0.875rem; font-weight: 400; line-height: 1.5; padding: 80vh 2.5% 3rem 2.5%; z-index: 999999; -webkit-box-sizing: border-box; box-sizing: border-box; text-shadow: 0 1px 20px rgba(0, 0, 0, 0.8); }

main section.main-visual h2 p { text-align: center; color: #fff; font-size: 0.875rem; font-weight: 400; line-height: 1.5; }

main section.main-visual h2 p a { color: #fff; font-size: 0.875rem; font-weight: bold; line-height: 1.5; text-decoration: none; cursor: pointer; }

main section.main-visual .slide-wrap > div { position: relative; width: 1400px; height: 700px; }

main section.main-visual .slide-wrap > div .slide-text { position: absolute; width: 1400px; height: 700px; left: 0; top: -60px; width: 100%; z-index: 999999; }

main section.main-visual .slide-wrap > div .slide-text h1 { position: relative; text-align: center; color: #fff; width: 100%; padding: 30vh 1rem 3rem 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.7rem; font-weight: 400; line-height: 1.3; text-shadow: 0 1px 20px rgba(0, 0, 0, 0.8); }

main section.main-visual .slide-wrap > div .slide-image { position: absolute; width: 1400px; height: 700px; left: 0; top: 0; z-index: 100000; }

main section.main-visual .slide-wrap > div .slide-image::before { content: " "; display: block; position: absolute; left: 0; top: 0; z-index: 2000; background-color: rgba(0, 0, 0, 0.3); }

main section.main-visual .slide-wrap > div .slide-image img { position: relative; width: 100%; height: 100%; }

main section.main-visual.no-img { height: 170px; }

main section.main-visual.no-img h2 { display: none; }

main section.main-visual.no-img .slide-wrap > div .slide-image::before { background-color: rgba(25, 50, 86, 0.8); }

main section.main-visual.no-img .slide-wrap > div .slide-text { top: 0; }

main section.main-visual.no-img .slide-wrap > div .slide-text h1 { padding: 60px 1rem 3rem 1rem; }

main section.leading { width: 100%; background-color: rgba(25, 50, 86, 0.8); padding: 3rem 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; background-repeat: no-repeat; text-align: center; }

main section.leading a { display: block; width: 100%; max-width: 100%; margin: 0 auto; overflow: hidden; text-align: center; }

main section.leading h2 { color: #ffffff; font-size: 1.5rem; font-weight: 400; line-height: 1.333; margin-top: 0.5rem; margin-bottom: 2rem; width: 100%; text-align: center; }

main section.leading h2 i { font-size: 2rem; display: inline-block; margin-left: 1rem; margin-top: 1rem; position: relative; top: 0.2rem; }

main section.leading h2 span { display: inline-block; vertical-align: top; min-width: 90%; }

main section.leading p { width: 100%; color: #ffffff; font-size: 1rem; font-weight: 400; line-height: 1.333; margin-top: 3rem; text-align: center; padding: 0 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; }

main section.leading img { width: 220px; height: 220px; border-radius: 50%; }

main section.leading-left h2 { float: none; }

main section.leading-left p { float: none; }

main section.leading-left img { float: none; }

main section.leading-right h2 { float: none; }

main section.leading-right p { float: none; }

main section.leading-right img { float: none; }

main section.leading-operation { background-color: rgba(25, 50, 86, 0.8); background-image: url(img/bg-operation.png); background-position: 20% 96%; background-size: 90%; }

main section.leading-lineup { background-color: rgba(27, 27, 27, 0.8); background-image: url(img/bg-lineup.png); background-position: 0% 100%; background-size: 70%; }

main section.leading-development { background-color: rgba(32, 80, 64, 0.8); background-image: url(img/bg-development.png); background-position: 20% 85%; }

main section.first { background-color: #fff; text-align: center; }

main section.first h2 { border-radius: 50%; background-color: #295493; width: 268px; height: 268px; color: #ffffff; font-size: 1.8rem; font-weight: 400; text-align: center; padding: 7rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; }

main section.first img { padding-top: 2rem; }

main section.wrap.message { padding: 3rem 1rem; }

main section.wrap { max-width: 100%; padding: 3rem 0; }

main section.wrap p { padding: 0 0.5rem 0 1rem; }

main section img { width: 100%; }

main section.basic { padding: 3rem 0.5rem; display: table; }

main section.basic h2 { width: 125px; max-width: 33%; height: 125px; padding: 3.2rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; background-color: #193256; float: left; color: #fff; font-size: 1.25rem; font-weight: 400; border-radius: 58px; margin-right: 1rem; }

main section.basic h2.l2 { padding: 2.8rem 0; }

main section.basic h3 { width: 61%; float: left; text-align: center; margin-top: 1.2rem; margin-bottom: 2rem; font-size: 1.5rem; font-weight: 400; line-height: 1.3; text-align: left; }

main section.basic p { width: 100%; padding: 0 0.5rem 0 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; float: left; margin-bottom: 0.75rem; line-height: 1.5; margin-top: 1rem; }

main section.basic p a { color: #005982; font-weight: bold; margin-right: 0.25rem; }

main section.basic img { float: left; }

main section.basic-img { margin-bottom: 2rem; }

main section.basic-btn.page-bottom-btn { max-width: 900px; margin: 3rem auto; position: relative; padding: 0 2rem; text-align: center; }

main section.basic-btn.page-bottom-btn .btn.btn-recruit { display: inline-block; float: none; border-radius: 50%; border-width: 3px; border-color: #ffffff; border-style: solid; background-color: #638c0b; background-image: none; width: 214px; max-width: initial; min-width: initial; height: 214px; max-height: initial; min-height: initial; padding-top: 4rem; font-size: 2rem; margin-top: 1rem; }

main section.basic-btn.page-bottom-btn .btn-contact { margin-top: 1rem; width: 100%; }

main section.basic-btn.page-bottom-btn.sp { display: block; }

main section.basic-btn.sp { display: block; }

main section.basic-btn { text-align: center; margin-bottom: 2rem; padding: 0 0.5rem; }

main section.basic-btn .btn { display: inline-block; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 7px; border-width: 3px; border-color: #ffffff; border-style: solid; background-color: #0a1524; opacity: 0.8; width: 100%; min-width: 90%; min-height: 59px; padding: 1.25rem 1rem 1.25rem; line-height: 1.3; font-size: 0.9rem; color: #fff; background-image: url(img/icon-right.svg); background-repeat: no-repeat; background-position: right center; margin: 0 0 1.5rem 0; }

main section.basic-btn .btn:hover { opacity: 1; cursor: pointer; -webkit-transition: 0.4s; transition: 0.4s; }

main section.basic-btn .btn-contact { background-color: #193256; }

main section.basic-btn .btn-contact-dev { background-color: #205040; }

main section.basic-btn .btn-about { background-color: #0a1524; }

main section.basic-btn .btn-return { background-image: url(img/icon-left.svg); background-position: left center; }

main section.performance { padding: 1rem 1rem; max-width: 760px; margin: 0 auto; }

main section.performance > h2 { font-size: 2.25rem; font-weight: 400; line-height: 1.25; text-align: center; margin-bottom: 2rem; }

main section.performance > h2 > span { font-size: 1rem; font-weight: 400; line-height: 1.188; text-align: center; clear: both; padding-left: 0; margin-top: 1rem; display: block; }

main section.performance-content { background-color: #005982; padding: 3rem 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; color: #fff; margin-right: 30px; margin-bottom: 30px; float: left; }

main section.performance-content h2 { margin: 0 auto 3.8rem; font-weight: 400; text-align: center; }

main section.performance-content h2 .title { font-size: 2rem; margin-right: 0.5rem; }

main section.performance-content h2 .value { font-size: 1.5rem; }

main section.performance-content h2 .unit { font-size: 1rem; margin-left: 0.25rem; }

main section.performance-content p { color: #fff; font-size: 0.875rem; font-weight: 400; line-height: 1.5; text-align: center; }

main section.performance-content-l { width: 100%; height: auto; }

main section.performance-content-m { width: 100%; height: auto; }

main section.performance-content-s { width: 47%; height: auto; padding: 3rem 1rem 3rem; margin-right: 0; }

main section.performance-content-s:nth-of-type(4) { float: left; }

main section.performance-content-s:nth-of-type(5) { float: right; margin-right: 0; }

main section.performance-content-s.performance-content h2 span.title { display: block; margin-bottom: 0.5rem; font-size: 1.8rem; }

main section.performance-content-s .value { display: block; margin-bottom: 0.5rem; }

main section.dev-content.wrap { background-image: url(img/bg-section-bottom.png); background-position: -10% 0; background-repeat: no-repeat; }

main section.dev-content.wrap h2 { color: rgba(0, 0, 0, 0.5); font-size: 1.5rem; font-weight: 400; line-height: 1.25; text-align: center; margin: 0 0 3rem; }

main section.dev-content.wrap h3 { color: rgba(0, 0, 0, 0.65); font-size: 1.5rem; font-weight: 400; line-height: 1.25; text-align: center; margin: 0 0 2rem; }

main section.dev-content.wrap p { padding: 0 0.5rem 0 1rem; }

main .summary { background-image: url(img/bg-summary.jpg); background-position: 60% 0; background-repeat: no-repeat; background-size: cover; padding: 3rem 1rem; text-align: center; }

main .summary h2 { color: #ffffff; font-size: 2rem; font-weight: 400; line-height: 1.25; text-align: center; }

main .summary p { font-size: 1rem; color: #fff; text-align: center; font-weight: 400; margin: 1rem 0; }

main .summary .pure-g { margin-top: 5rem; margin-bottom: 5rem; }

main .summary .pure-g .pure-u-1 { margin-bottom: 2rem; }

main .summary .pure-g .pure-u-1 .image { display: inline-block; border-radius: 50%; background-color: #ffffff; width: 221px; height: 221px; -webkit-box-sizing: border-box; box-sizing: border-box; }

main .summary .pure-g .pure-u-1 .image.iso { padding-top: 2rem; }

main .summary .pure-g .pure-u-1 .image.rohs { padding-top: 5.5rem; }

main .summary .pure-g .pure-u-1 .image.ck { padding-top: 4.5rem; padding-left: 0.5rem; }

main .summary .pure-g h3 { color: #ffffff; font-size: 1.375rem; font-weight: 400; line-height: 1.5; margin: 2rem 0 1rem; }

main .summary .pure-g p { max-width: 240px; margin: 0 auto; font-weight: normal; margin-bottom: 1rem; }

main .lineup-content { padding: 3rem 0 0; }

main .lineup-content h2 { margin: 1rem 0 2rem; color: #ffffff; font-size: 1.5rem; font-weight: 400; line-height: 1.3; text-align: center; }

main .lineup-content article { position: relative; }

main .lineup-content img { max-width: 100%; }

main .lineup-content .pure-g { text-align: center; }

main .lineup-content .pure-u-1-2 { display: inline-block; width: 49%; padding: 1rem 0.5rem 3rem; -webkit-box-sizing: border-box; box-sizing: border-box; position: relative; margin-bottom: 6rem; }

main .lineup-content .pure-u-1-2 h3 { color: #ffffff; font-size: 0.875rem; font-weight: 400; line-height: 1.286; text-align: center; position: absolute; top: 85%; left: 0; text-align: center; width: 100%; }

main .lineup-content .pure-u-1-2 .popup { display: none; position: absolute; top: 0; left: 0; text-align: center; padding: 1.15rem; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; min-height: 100%; background-color: rgba(0, 0, 0, 0.8); }

main .lineup-content .pure-u-1-2 .popup:after { content: url(img/icon-close.png); display: inline-block; position: absolute; bottom: -50px; left: 50%; width: 44px; margin-left: -22px; opacity: 0.6; }

main .lineup-content .pure-u-1-2 .popup p { margin-bottom: 1rem; }

main .lineup-content .pure-u-1-2 .popup p a.btn-pdf { color: #fff; background-image: url(img/icon-pdf.svg); background-size: 0.8rem 0.8rem; background-position: 0 50%; background-repeat: no-repeat; line-height: 1rem; padding-left: 1rem; }

main .lineup-content .pure-u-1-2 .popup h4 { color: #ffffff; font-size: 0.875rem; font-weight: 400; line-height: 1.286; margin-bottom: 1rem; padding: 0.25rem 0; }

main .lineup-content .pure-u-1-2 .popup p { color: #ffffff; font-size: 0.8rem; font-weight: 400; line-height: 1.286; }

main .lineup-content .pure-u-1-2 .popup:hover { cursor: pointer; }

main .lineup-content .pure-u-1-2 .popup:hover .catalogue { display: none; position: fixed; top: 2rem; left: 1rem; z-index: 1000000; width: 288px; height: 400px; }

main .lineup-content .pure-u-1-2 .popup:hover .catalogue:after { content: url(img/icon-close.png); display: inline-block; position: absolute; bottom: -50px; left: 50%; width: 44px; margin-left: -22px; opacity: 0.6; background-color: rgba(27, 27, 27, 0.65); }

main .lineup-content .pure-u-1-2 .popup:hover .catalogue iframe { width: 100%; height: auto; }

svg { width: 28px; height: 28px; padding-left: 8px; padding-top: 8px; }

svg .cls-1 { fill: none; stroke: #fff; stroke-linecap: round; stroke-miterlimit: 10; stroke-width: 8.5px; }

main section.recruit-first { padding: 1rem 0; }

main section.recruit-first h2 { font-size: 1.5rem; font-weight: 400; color: black; line-height: 1.3; text-align: center; padding: 2rem 1rem 0; }

main section.recruit-first p { padding: 0 1rem; }

main section.recruit-first .basic-img { width: 100%; padding: 2rem 0 0; }

main section.recruit-first .basic-img .w33 { width: 100%; height: auto; padding: 0.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; }

.recruit-content .wrap { width: 1000px; max-width: 100%; margin: 0 auto; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; }

.recruit-content .wrap .btn-entry { background-color: #638c0b; padding: 1rem; }

.recruit-content .wrap .btn-sky { background-color: #0b7a8e; padding: 1rem; }

.recruit-content .wrap .btn-azuki { background-color: #8e0b3f; padding: 1rem; }

.recruit-content .wrap::before { content: url(img/bg-h2-recruit.png); position: relative; left: -140px; top: 3.5rem; width: 198px; height: 24px; }

.recruit-content .wrap h2 { padding: 1.2rem 0 0 4rem; font-size: 1.5rem; font-weight: 400; color: black; line-height: 1.3; text-align: left; }

.recruit-content .wrap .faq { margin: 2rem 0; line-height: 1.4; width: 80%; margin: 1rem auto; }

.recruit-content .wrap .faq > dt { position: relative; background-color: #00314d; border: 4px solid #00314d; border-radius: 8px; padding: 1rem; width: 90%; color: #fff; display: inline-block; margin-right: 2rem; margin-bottom: 1rem; vertical-align: top; }

.recruit-content .wrap .faq > dt:after, .recruit-content .wrap .faq > dt:before { right: 100%; top: 50%; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; }

.recruit-content .wrap .faq > dt:after { border-color: rgba(0, 49, 77, 0); border-right-color: #00314d; border-width: 16px; margin-top: -16px; }

.recruit-content .wrap .faq > dt:before { border-color: rgba(0, 49, 77, 0); border-right-color: #00314d; border-width: 16px; margin-top: -16px; }

.recruit-content .wrap .faq > dd { position: relative; background: #0063c8; border: 4px solid #0063c8; border-radius: 8px; padding: 1rem; width: 90%; color: #fff; display: inline-block; margin-bottom: 2rem; }

.recruit-content .wrap .faq > dd p { color: #fff; }

.recruit-content .wrap .faq > dd:after, .recruit-content .wrap .faq > dd:before { left: 100%; top: 50%; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; }

.recruit-content .wrap .faq > dd:after { border-color: rgba(0, 99, 200, 0); border-left-color: #0063c8; border-width: 16px; margin-top: -16px; }

.recruit-content .wrap .faq > dd:before { border-color: rgba(0, 99, 200, 0); border-left-color: #0063c8; border-width: 16px; margin-top: -16px; }

.recruit-content .wrap .category-menu, .recruit-content .wrap .entry-menu { text-align: center; margin-top: 1rem; }

.recruit-content .wrap .category-menu.w33 > li, .recruit-content .wrap .entry-menu.w33 > li { width: 360px; max-width: 96%; -webkit-box-sizing: border-box; box-sizing: border-box; }

.recruit-content .wrap .category-menu.w50 > li, .recruit-content .wrap .entry-menu.w50 > li { width: 360px; max-width: 96%; -webkit-box-sizing: border-box; box-sizing: border-box; }

.recruit-content .wrap .category-menu > li, .recruit-content .wrap .entry-menu > li { border-width: 3px; border-style: solid; border-radius: 7px; background-color: #b3b3b3; font-size: 1.25rem; color: white; line-height: 1.3; text-align: center; padding: 0.5rem; font-weight: 400; position: relative; background-image: url(img/icon-right.svg); background-repeat: no-repeat; background-position: 99% 0; display: inline-block; }

.recruit-content .wrap .category-menu > li:hover, .recruit-content .wrap .entry-menu > li:hover { cursor: pointer; opacity: 0.8; }

.recruit-content .wrap .category-menu > li.on, .recruit-content .wrap .entry-menu > li.on { background-image: url(img/icon-down.svg); background-color: #00314d; }

.recruit-content .wrap .entry-menu > li { background-color: #669bb4; }

.recruit-content .wrap .category-content, .recruit-content .wrap .entry-content { background-color: #00314d; margin: 0.75rem auto 2rem auto; width: 99%; }

.recruit-content .wrap .category-content .basic-btn, .recruit-content .wrap .entry-content .basic-btn { margin: 1rem 0; padding: 0; text-align: left; }

.recruit-content .wrap .category-content .basic-btn .btn, .recruit-content .wrap .entry-content .basic-btn .btn { margin: 0; }

.recruit-content .wrap .category-content > li, .recruit-content .wrap .entry-content > li { list-style: none; color: #fff; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; display: none; }

.recruit-content .wrap .category-content > li h3, .recruit-content .wrap .entry-content > li h3 { font-weight: 400; margin-bottom: 0.25rem; }

.recruit-content .wrap .category-content > li p, .recruit-content .wrap .entry-content > li p { color: #fff; margin-bottom: 1.25rem; padding-left: 1rem; }

.recruit-content .wrap .category-content > li a, .recruit-content .wrap .entry-content > li a { color: #fff; border-bottom: dashed #fff 1px; }

.recruit-content .wrap .category-content > li a.btn, .recruit-content .wrap .entry-content > li a.btn { color: #fff; border-bottom: solid #fff 3px; }

.recruit-content .wrap .category-content > li ul, .recruit-content .wrap .entry-content > li ul { margin-bottom: 1.25rem; }

.recruit-content .wrap .category-content > li > ul > li, .recruit-content .wrap .entry-content > li > ul > li { margin-left: 0; list-style-type: disc; list-style-position: outside; line-height: 1.5; }

.recruit-content .wrap .category-content > li > ol > li, .recruit-content .wrap .entry-content > li > ol > li { margin-left: 2rem; list-style-type: decimal; list-style-position: outside; line-height: 1.5; margin-bottom: 1rem; }

.recruit-content .wrap .category-content > li.on, .recruit-content .wrap .entry-content > li.on { display: block; }

.recruit-content .wrap .category-content > li { padding: 2rem 1rem; }

.recruit-content .wrap .category-content > li > ul > li { margin-left: 1.5rem; }

.recruit-content .wrap .entry-content { background-color: inherit; }

.recruit-content .wrap .entry-content .basic-btn { margin: 1rem 0; padding: 0; text-align: left; }

.recruit-content .wrap .entry-content .basic-btn .btn { margin: 0; }

.recruit-content .wrap .staff-menu li, .recruit-content .wrap .staff-menu article, .recruit-content .wrap .staff-content li, .recruit-content .wrap .staff-content article { list-style: none; clear: both; overflow: hidden; position: relative; max-width: 1000px; }

.recruit-content .wrap .staff-menu li a, .recruit-content .wrap .staff-menu article a, .recruit-content .wrap .staff-content li a, .recruit-content .wrap .staff-content article a { display: block; overflow: hidden; background-image: url(img/btn-more.svg); background-position: 90% 40%; background-repeat: no-repeat; background-size: 48px; padding: 2rem; }

.recruit-content .wrap .staff-menu li img, .recruit-content .wrap .staff-menu article img, .recruit-content .wrap .staff-content li img, .recruit-content .wrap .staff-content article img { max-width: 80%; height: auto; border-radius: 50%; vertical-align: middle; margin-right: 2rem; }

.recruit-content .wrap .staff-menu h3, .recruit-content .wrap .staff-content h3 { background-image: url(img/bg-h3-interview.svg); background-position: center 0; background-repeat: no-repeat; padding: 1rem 0 1.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; background-size: cover; color: #fff; font-weight: 400; font-size: 1.25rem; text-align: center; width: 100%; position: absolute; left: 0; top: 65vw; }

.recruit-content .wrap .staff-menu h4, .recruit-content .wrap .staff-content h4 { color: #000; font-weight: 400; font-size: 1.2rem; line-height: 1.4; display: inline-block; vertical-align: middle; text-align: center; width: 100%; margin-top: 2rem; }

.recruit-content .wrap .staff-content { position: absolute; left: 0; top: 0; background-color: #eee; width: 100%; }

.recruit-content .wrap .staff-content article { display: none; background-color: #eee; width: 100%; margin: 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 2rem; }

.recruit-content .wrap .staff-content article .modal-content { text-align: center; }

.recruit-content .wrap .staff-content article .modal-content img { margin-right: 0; }

.recruit-content .wrap .staff-content article p { margin-top: 2rem; }

.recruit-content .wrap .staff-content .close-btn { width: 100%; text-align: center; padding: 2rem 0 0; cursor: pointer; }

.recruit-content .wrap .staff-content .close-btn img { max-width: 80px; margin-right: 0; }

.company-content.wrap h2 { font-size: 2rem; font-weight: 400; color: black; line-height: 1.25; text-align: center; margin: 3rem 0; }

.company-content.wrap table { width: 90%; border-collapse: collapse; border-bottom: 1px solid #959595; margin: 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; }

.company-content.wrap table th, .company-content.wrap table td { display: block; padding: 0.75rem 1rem; border: 1px solid #959595; border-bottom: none; line-height: 1.4; }

.company-content.wrap table th { background-color: #f2f2f2; text-align: center; }

.company-content.wrap table td { color: #000; text-align: left; }

.company-content.wrap table td li { list-style-position: outside; list-style-type: disc; margin-left: 1.25rem; line-height: 1.4; }

.company-content.wrap table td div { margin-bottom: 1.5rem; }

.company-content.wrap table td div p { line-height: 1.2; margin: 0.75rem 0; }

.company-content.wrap table td h3 { background-image: url(img/bg-list.svg); background-size: auto; background-repeat: no-repeat; background-position: left 0.65rem; padding-left: 0.75rem; margin-bottom: 0.75rem; }

.contact-tel { width: 100%; text-align: center; }

.contact-tel .contact-tel-child { width: 90%; max-width: 420px; margin: 1rem 2%; padding: 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; border-width: 3px; border-color: #193256; border-style: solid; border-radius: 10px; }

.contact-tel .contact-tel-child h2 { font-size: 1.3rem; color: black; font-weight: bold; line-height: 1.4; text-align: center; }

.contact-tel .contact-tel-child p { font-weight: 400; font-size: 1rem; text-align: center; margin-bottom: 1.25rem; }

.contact-tel .contact-tel-child p.icon-tel { padding-left: 4rem; background-image: url(img/icon-telephone-mini.svg); background-position: left center; background-repeat: no-repeat; background-size: auto; display: inline-block; font-size: 1.6rem; margin-bottom: 0; }

.contact-tel .contact-tel-child .basic-btn { margin: 1rem 0 0 0; padding: 0; }

.contact-tel .contact-tel-child .btn { width: 92%; }

main section.wrap.contact-form { padding: 2rem 0; }

main section.wrap.contact-form h2 { font-size: 1.7rem; font-weight: 400; color: black; line-height: 1.25; text-align: center; margin-bottom: 3rem; }

main section.wrap.contact-form p { width: 90%; margin: 0 auto 1.5rem; }

main section.wrap.contact-form p .wpcf7c-btn-confirm, main section.wrap.contact-form p .wpcf7c-btn-back, main section.wrap.contact-form p .wpcf7-submit { display: inline-block; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 7px; border-width: 3px; border-color: #ffffff; border-style: solid; opacity: 0.8; width: 100%; min-width: initial; min-height: 59px; padding: 0.75rem 0; font-size: 0.9rem; color: #fff; background-image: url(img/icon-right.svg); background-repeat: no-repeat; background-position: 100% 50%; margin: 0 0 1.5rem 0; }

main section.wrap.contact-form p .wpcf7c-btn-confirm { background-color: #0a1524; }

main section.wrap.contact-form p .wpcf7c-btn-back { background-color: #5f8f9e; background-image: url(img/icon-left.svg); background-repeat: no-repeat; background-position: 0 50%; }

main section.wrap.contact-form p .wpcf7-submit { background-color: #183257; }

main section.wrap.contact-form p .wpcf7-submit:hover { cursor: pointer; opacity: 0.8; }

main section.wrap.contact-form table { width: 90%; border-collapse: collapse; margin: 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; }

main section.wrap.contact-form table th, main section.wrap.contact-form table td { display: block; padding: 0.75rem 0.25rem; line-height: 1.4; }

main section.wrap.contact-form table th { text-align: left; font-weight: 400; }

main section.wrap.contact-form table th .require { color: red; font-size: 0.8rem; margin-left: 0.75rem; }

main section.wrap.contact-form table th .any { color: #183257; font-size: 0.8rem; margin-left: 0.75rem; }

main section.wrap.contact-form table td { color: #000; text-align: left; border-bottom: 1px dashed #ededed; }

main section.wrap.contact-form table td a { color: #005982; font-weight: bold; margin-right: 0.25rem; }

main section.wrap.contact-form table td input.wpcf7-text, main section.wrap.contact-form table td textarea { max-width: 96%; width: 96%; border: 2px solid #193256; padding: 0.5rem; }

main section.wrap.contact-form table td span.wpcf7-list-item { display: block; margin-bottom: 0.5rem; }

main section.wrap.contact-form table td span.wpcf7-list-item input { margin-right: 0.5rem; vertical-align: middle; }

main section.wrap.contact-form table td span.wpcf7-list-item .wpcf7-list-item-label { vertical-align: middle; }

main section.wrap.contact-form table td .wpcf7c-btn-confirm, main section.wrap.contact-form table td .wpcf7c-btn-back, main section.wrap.contact-form table td .wpcf7-submit { display: inline-block; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 7px; border-width: 3px; border-color: #ffffff; border-style: solid; opacity: 0.8; width: 100%; min-width: initial; min-height: 59px; padding: 0.75rem 0; font-size: 0.9rem; color: #fff; background-image: url(img/icon-right.svg); background-repeat: no-repeat; background-position: 100% 50%; margin: 0 0 1.5rem 0; }

main section.wrap.contact-form table td .wpcf7c-btn-confirm { background-color: #0a1524; }

main section.wrap.contact-form table td .wpcf7c-btn-back { background-color: #5f8f9e; background-image: url(img/icon-left.svg); background-repeat: no-repeat; background-position: 0 50%; }

main section.wrap.contact-form table td .wpcf7-submit { background-color: #183257; max-width: 300px; }

main section.wrap.contact-form table td .wpcf7-submit:hover { cursor: pointer; opacity: 0.8; }

.recruit-first .recruit-content { padding-bottom: 3rem; }

.recruit-first .recruit-content article { max-width: 600px; margin: 1rem auto; border-bottom: 1px dashed #ccc; padding-bottom: 2rem; }

.recruit-first .recruit-content article time, .recruit-first .recruit-content article h3 { line-height: 1.5; font-weight: 400; }

.recruit-first .recruit-content article time { padding: 0 1rem; color: #777; font-size: 0.8rem; display: inline-block; margin-bottom: 0.25rem; }

.recruit-first .recruit-content article .placetag { background-color: #193256; color: #fff; font-size: 0.6rem; display: inline-block; margin: 0 0 0 1rem; padding: 0.25rem; border-radius: 4px; }

.recruit-first .recruit-content article .placetag.technology-center { background-color: #205040; }

.recruit-first .recruit-content article h3 { padding: 0 1rem 0 1rem; color: #000; font-size: 0.9rem; }

.recruit-first .recruit-content article p { line-height: 1.5; padding: 0 1rem; color: #333; font-size: 0.9rem; }

.recruit-first .recruit-content article a { line-height: 1.5; padding: 0; color: #193256; font-size: 0.9rem; font-weight: 600; }

/* ---- 3.Other ---- */
body .wpcf7c-conf { background-color: #f1f1f1; }

body div.wpcf7-response-output { padding: 0.5em 1em; }

body.page-template-custom-page main section.page-content { padding: 1rem; }

body.page-template-custom-page main section.page-content h1, body.page-template-custom-page main section.page-content h2, body.page-template-custom-page main section.page-content h3, body.page-template-custom-page main section.page-content h4, body.page-template-custom-page main section.page-content p, body.page-template-custom-page main section.page-content ul, body.page-template-custom-page main section.page-content ol { margin-bottom: 1.25rem; line-height: 1.3; }

body.page-template-custom-page main section.page-content h1 { font-size: 1.5rem; font-weight: bold; padding: 1rem 0; }

body.page-template-custom-page main section.page-content h2 { font-size: 1.3rem; font-weight: bold; padding: 0.8rem 0; }

body.page-template-custom-page main section.page-content h3 { font-size: 1.1rem; font-weight: bold; padding: 0.5rem 0; }

body.page-template-custom-page main section.page-content h4 { font-size: 1rem; font-weight: bold; padding: 0.3rem 0; }

body.page-template-custom-page main section.page-content p { font-size: 0.9rem; line-height: 1.5; }

body.page-template-custom-page main section.page-content ul li { list-style: disc; list-style-position: outside; margin-left: 1.5rem; line-height: 1.5; }

body.page-template-custom-page main section.page-content ol li { list-style: decimal; list-style-position: outside; margin-left: 1.5rem; line-height: 1.5; }

main section.wrap.whatsnew { padding: 3rem 1rem; }

main section.wrap.whatsnew p { margin-bottom: 1.5rem; font-size: 0.875rem; }

main section.wrap.whatsnew h2 { font-size: 1.25rem; margin: 0 0 2rem; padding: 0 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; color: #000; line-height: 1.5; }

main section.wrap.whatsnew hr { border: none; clear: both; }

main section.wrap.whatsnew img { max-width: 100%; display: block; margin-bottom: 2rem; }

main section.wrap.whatsnew ul { margin-left: 2rem; margin-bottom: 1.5rem; }

main section.wrap.whatsnew ol { margin-left: 2rem; margin-bottom: 1.5rem; }

main section.wrap.whatsnew li { line-height: 1.5; margin-bottom: 0.5rem; }

main section.wrap.whatsnew a { border-bottom: 1px solid #193256; background-color: #dff5ff; }

main section.wrap.whatsnew blockquote { position: relative; background-color: #eee; border-radius: 8px; padding: 0.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin-bottom: 1.5rem; }

main section.wrap.whatsnew blockquote:after { content: "\f10e"; font-family: FontAwesome; color: #ccc; position: absolute; right: 8px; top: 8px; }

main section.wrap.whatsnew blockquote:before { content: "\f10d"; font-family: FontAwesome; color: #ccc; }

main section.wrap.whatsnew .box { padding: 1rem; border: 2px solid #193256; }

main section.wrap.whatsnew .box h3 { font-size: 0.875rem; font-wait: normal; margin-bottom: 1rem; color: #193256; border-bottom: 1px solid #193256; padding-bottom: 0.5rem; }

main section.wrap.whatsnew .box p { padding: 0 0 1rem 0; font-size: 0.875rem; }

.alignleft { float: left; margin: 0 1rem 0.5rem 0; }

.aligncenter { margin-left: auto; margin-right: auto; }

.wp-caption { max-width: 100%; padding: 0 0.5rem 0 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; }

main section.wrap p.wp-caption-text { position: relative; background: #ffffff; border: 2px solid #193256; margin: 2rem auto 2rem; padding: 1rem; border-radius: 8px; }

.wp-caption-text:after, .wp-caption-text:before { bottom: 100%; left: 50%; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; }

.wp-caption-text:after { border-color: rgba(255, 255, 255, 0); border-bottom-color: #ffffff; border-width: 8px; margin-left: -8px; }

.wp-caption-text:before { border-color: rgba(25, 50, 86, 0); border-bottom-color: #193256; border-width: 11px; margin-left: -11px; }

.flexwrap { padding: 1rem; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.post-type-archive-whatsnew main a { width: 94%; margin: 3%; }

.post-type-archive-whatsnew article { width: 100%; padding: 1rem; border: 1px solid #eee; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: hidden; }

.post-type-archive-whatsnew article img { width: 30%; height: auto; float: left; margin-right: 1rem; margin-bottom: 0.5rem; }

.post-type-archive-whatsnew article p { font-size: 0.875rem; color: #333; clear: both; }

.post-type-archive-whatsnew article h2 { font-size: 1.125rem; margin-bottom: 1rem; line-height: 1.4; }

.post-type-archive-whatsnew article time { font-size: 0.875rem; color: #999; margin-bottom: 0.75rem; display: inline-block; float: right; }

.post-type-archive-whatsnew article span.infocat { font-size: 0.875rem; color: #fff; background-color: rgba(25, 50, 86, 0.8); padding: 0.125rem 0.5rem 0.25rem; border-radius: 8px; vertical-align: middle; margin-bottom: 0.5rem; display: inline-block; text-align: right; float: left; }

.pagination { padding: 1rem; overflow: hidden; }

.pagination .prev { display: block; width: 49%; text-align: left; }

.pagination .prev a { width: auto; border: 1px solid rgba(25, 50, 86, 0.8); padding: 0.25rem 0.5rem 0.5rem; border-radius: 8px; display: inline-block; }

.pagination .next { display: block; width: 49%; text-align: right; float: right; }

.pagination .next a { width: auto; border: 1px solid rgba(25, 50, 86, 0.8); padding: 0.25rem 0.5rem 0.5rem; border-radius: 8px; display: inline-block; }

/* ---- 4.Responsive-iPad min-768px ---- */
@media screen and (min-width: 768px) { .pc { display: inline-block; }
  .sp { display: none; }
  header .sp { display: inline-block; }
  header .pc { display: none; }
  main { margin-top: 0; }
  main section.main-visual .slide-wrap > div { width: 100%; }
  main section.main-visual .slide-wrap > div .slide-text { width: 100%; top: 0; }
  main section.main-visual .slide-wrap > div .slide-text h1 { padding: 14vh 1rem 3rem 1rem; }
  main section.main-visual .slide-wrap > div .slide-image { width: 100%; }
  main section.main-visual .slide-wrap > div .slide-image:before { content: " "; display: block; width: 100%; position: absolute; left: 0; top: 0; z-index: 2000; background-color: rgba(0, 0, 0, 0.3); }
  main section.main-visual .slide-wrap > div img { width: 100%; max-width: 100%; }
  main section.leading { padding: 2rem 3rem; }
  main section.leading img { width: 220px; max-width: 380px; max-height: 380px; border-radius: 50%; }
  main section.leading h2 { text-align: left; width: 53%; margin-top: 3rem; margin-bottom: 0; font-size: 1.35rem; }
  main section.leading h2 span { min-width: initial; vertical-align: baseline; }
  main section.leading p { width: 53%; text-align: left; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1rem; }
  main section.leading-left h2 { float: left; }
  main section.leading-left p { float: left; }
  main section.leading-left img { float: right; }
  main section.leading-right h2 { float: right; }
  main section.leading-right p { float: right; }
  main section.leading-right img { float: left; }
  main section.leading-operation { background-position: 20% 96%; background-size: auto; }
  main section.leading-lineup { background-position: 80% 70%; background-size: auto; }
  main section.leading-development { background-position: 20% 85%; background-size: auto; }
  main section.wrap { max-width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  main section.basic-img { text-align: center; margin-bottom: 2rem; }
  main section img { width: 100%; }
  main section img.w50 { max-width: 640px; width: 40%; margin-left: 1rem; margin-right: 1rem; margin-bottom: 1rem; }
  main section.basic { padding: 3rem 1rem; }
  main section.basic h2 { width: 240px; height: 240px; padding: 6.5rem 0; border-radius: 96px; margin-right: 2rem; font-size: 1.5rem; line-height: 1.2; }
  main section.basic h2.l2 { padding: 6.5rem 0; }
  main section.basic h2 br { display: none; }
  main section.basic h3 { font-size: 1.7rem; text-align: center; }
  main section.basic p { width: 100%; margin-top: 1rem; }
  main section.basic h3 + p { width: 62%; }
  main section.basic-btn.sp { display: none; }
  main section.basic-btn .btn { min-width: initial; max-width: 420px; min-height: 59px; padding: 1rem 1.5rem 1rem; margin: 0 1rem 2rem; font-size: 1rem; background-position: 99% center; }
  main section.basic-btn .btn-return { background-position: 0% center; }
  main section.basic-btn .btn-return.sp { display: none; }
  main section.basic-btn .btn-return br { display: none; }
  main section.basic-btn .btn.btn-recruit { min-width: 0; max-width: 100%; position: absolute; right: 3rem; margin-top: 0; }
  main section.basic-btn .btn.btn-recruit.sp { display: none; }
  main section.basic-btn .btn.btn-recruit br { display: inline; }
  main section.basic-btn.page-bottom-btn.sp { display: none; }
  main section.basic-btn.page-bottom-btn { margin: 0 auto 5rem; }
  main section.basic-btn.page-bottom-btn .btn-contact { width: 60%; }
  main section.performance { padding: 3rem 3rem; }
  main section.performance > h2 > span { padding-left: 2rem; margin-top: 0; display: inline; clear: both; }
  main section.performance section.performance-content { padding: 2.8rem; margin-right: 30px; margin-bottom: 30px; float: left; }
  main section.performance section.performance-content-l { width: 100%; height: auto; }
  main section.performance section.performance-content-m { width: 100%; height: auto; }
  main section.performance section.performance-content-s { width: 48.5%; height: auto; padding: 4.5rem 1rem 3rem; margin-right: 0; }
  main section.performance section.performance-content-s:nth-of-type(4) { float: left; }
  main section.performance section.performance-content-s:nth-of-type(5) { float: right; }
  main section.dev-content.wrap { background-position: 100% 0; padding-top: 2rem; margin: 3rem auto 1rem; }
  main section.dev-content.wrap .pure-u-1 { margin-bottom: 0; }
  main section.dev-content.wrap h2 { font-size: 2.25rem; }
  main .lineup-content .pure-u-md-1-5 { width: 19%; }
  main .lineup-content .pure-u-1-2 { padding: 1rem 0.5rem 4%; }
  main section.recruit-first { padding: 0; }
  main section.recruit-first h2 { font-size: 2rem; }
  main section.recruit-first .basic-img { padding: 2rem 0 0; }
  main section.recruit-first .basic-img .w33 { width: 32.9%; padding: 0.5rem; }
  main section.recruit-content .wrap .faq { width: 90%; margin: 0 auto; }
  main section.recruit-content .wrap .faq > dt { width: 33%; }
  main section.recruit-content .wrap .faq > dd { width: 47%; }
  main section.recruit-content .wrap::before { left: -120px; top: 3.5rem; }
  main section.recruit-content .wrap .category-menu.w33 > li, main section.recruit-content .wrap .entry-menu.w33 > li { width: 24.5%; max-width: 24.5%; margin: 0; }
  main section.recruit-content .wrap .category-menu.w50 > li, main section.recruit-content .wrap .entry-menu.w50 > li { width: 49.5%; max-width: 49.5%; }
  main section.recruit-content .wrap .category-menu > li, main section.recruit-content .wrap .entry-menu > li { font-size: 0.8rem; text-align: left; padding: 0.75rem; }
  main section.recruit-content .wrap h2 { padding: 1rem 0 2rem 6rem; text-align: left; }
  main section.recruit-content .wrap .staff-menu li, main section.recruit-content .wrap .staff-menu article, main section.recruit-content .wrap .staff-content li, main section.recruit-content .wrap .staff-content article { padding: 2rem; }
  main section.recruit-content .wrap .staff-menu li a, main section.recruit-content .wrap .staff-menu article a, main section.recruit-content .wrap .staff-content li a, main section.recruit-content .wrap .staff-content article a { background-position: 90% center; background-size: 48px 48px; text-align: left; padding: 0; }
  main section.recruit-content .wrap .staff-menu li img, main section.recruit-content .wrap .staff-menu article img, main section.recruit-content .wrap .staff-content li img, main section.recruit-content .wrap .staff-content article img { margin-right: 2rem; max-width: 40%; }
  main section.recruit-content .wrap .staff-menu h3, main section.recruit-content .wrap .staff-content h3 { padding: 1rem 0 1.5rem; font-size: 1.25rem; width: 62%; position: absolute; left: 30%; top: 4rem; background-size: cover; }
  main section.recruit-content .wrap .staff-menu h4, main section.recruit-content .wrap .staff-content h4 { font-size: 1.25rem; text-align: left; width: auto; }
  main section.recruit-content .wrap .staff-menu article .modal-content, main section.recruit-content .wrap .staff-content article .modal-content { text-align: left; }
  main section.recruit-content .wrap .staff-menu article .modal-content img, main section.recruit-content .wrap .staff-content article .modal-content img { margin-right: 2rem; }
  main section.recruit-content .wrap .staff-menu article .modal-content p, main section.recruit-content .wrap .staff-content article .modal-content p { margin-top: 2rem; }
  main section.recruit-content .wrap .staff-menu article .close-btn, main section.recruit-content .wrap .staff-content article .close-btn { padding: 2rem 0 0; }
  main section.recruit-content .wrap .staff-menu article .close-btn img, main section.recruit-content .wrap .staff-content article .close-btn img { max-width: 80px; }
  .company-content.wrap table th, .company-content.wrap table td { display: table-cell; }
  .contact-tel .contact-tel-child { width: 45%; margin: 3rem 2%; padding: 1rem; }
  .contact-tel .contact-tel-child h2 { font-size: 2.3vw; }
  .contact-tel .contact-tel-child p { font-size: 2vw; margin-bottom: 1.25rem; }
  .contact-tel .contact-tel-child p.icon-tel { padding-left: 9vw; font-size: 4vw; }
  main section.wrap.contact-form h2 { font-size: 2rem; margin-bottom: 3rem; }
  main section.wrap.contact-form p .wpcf7c-btn-confirm, main section.wrap.contact-form p .wpcf7c-btn-back, main section.wrap.contact-form p .wpcf7-submit { width: 49%; }
  main section.wrap.contact-form table { width: 90%; }
  main section.wrap.contact-form table th, main section.wrap.contact-form table td { display: table-cell; vertical-align: top; }
  main section.wrap.contact-form table th { border-bottom: 1px dashed #ededed; width: 30%; }
  main section.wrap.contact-form table td .wpcf7c-btn-confirm, main section.wrap.contact-form table td .wpcf7c-btn-back, main section.wrap.contact-form table td .wpcf7-submit { width: 49%; }
  main section.wrap.whatsnew { max-width: 70%; margin-left: auto; margin-right: auto; } }

/* ---- 4.Responsive-iPad min-769px ---- */
@media screen and (min-width: 769px) { .pc { display: inline-block; }
  .sp { display: none; }
  header .sp { display: none; }
  header .pc { display: inline-block; }
  header { background-color: #193256; }
  header nav.menu-wrap { width: 90%; margin-left: 16px; }
  header nav.menu-wrap .gnav { margin-top: 0; margin-left: 0; width: 100%; min-height: 36px; height: auto; border: none; overflow: hidden; display: none; z-index: 200000000; position: relative; max-width: 900px; padding: 16px 0 0; }
  header nav.menu-wrap .gnav li { width: auto; background-color: inherit; border: none; padding: 0; text-align: left; float: none; height: auto; text-align: left; display: inline-block; margin-right: 1rem; margin-bottom: 0.5rem; }
  header nav.menu-wrap .gnav li.sp { display: none; }
  header nav.menu-wrap .gnav li a { color: #fff; vertical-align: baseline; }
  header nav.menu-wrap .gnav li ahover, header nav.menu-wrap .gnav li aactive { opacity: 0.6; cursor: pointer; }
  header nav.menu-wrap .gnav li a img { display: none; }
  header nav.menu-wrap .gnav li a span { text-align: left; font-size: 0.9rem; margin-top: 0; position: static; top: 0; }
  header nav.menu-wrap .gnav li a span br { display: none; }
  header nav.menu-wrap .gnav li.menu-small, header nav.menu-wrap .gnav li.menu-light, header nav.menu-wrap .gnav li.menu-middle { background-color: inherit; padding: 0; height: auto; vertical-align: baseline; }
  header nav.menu-wrap .gnav li.menu-small a span, header nav.menu-wrap .gnav li.menu-light a span, header nav.menu-wrap .gnav li.menu-middle a span { display: inline; width: auto; position: static; text-align: right; font-size: 0.8rem; }
  header nav.menu-wrap .gnav li.menu-middle { width: auto; }
  main { margin-top: 36px; } }

/* ---- 5.Responsive-PC min-1000px ---- */
@media screen and (min-width: 1000px) { main section.main-visual .slide-wrap > div .slide-text h1 { font-size: 2.5rem; padding: 20vh 1rem 3rem 1rem; }
  main section.leading { padding: 3rem 3rem; }
  main section.leading a { max-width: 1000px; }
  main section.leading img { width: 380px; height: auto; }
  main section.wrap { max-width: 1000px; margin: 0 auto; }
  main section.wrap.first { padding-top: 2rem; }
  main section.wrap.first p { padding: 0 0.5rem 0 1rem; }
  main section.basic h3 { width: 72%; }
  main section.basic h3 + p { width: 72%; }
  section.performance { padding: 3rem 6rem; }
  section.performance-content { padding: 3.8rem 2rem; }
  .lineup-content .pure-u-1-2 { padding: 1rem 0.5rem 5%; }
  main section.recruit-content .wrap::before { left: -198px; }
  main section.recruit-content .wrap .faq { width: 100%; margin: 1rem auto; }
  main section.recruit-content .wrap .faq > dt { width: 36%; }
  main section.recruit-content .wrap .faq > dd { width: 50%; }
  main section.recruit-content .wrap .category-menu > li, main section.recruit-content .wrap .entry-menu > li { font-size: 0.9rem; padding: 0.7rem 1rem; text-align: center; }
  main section.recruit-content .wrap h2 { padding: 1.25rem 0 2rem 1.5rem; }
  main section.recruit-content .wrap .staff-menu h3, main section.recruit-content .wrap .staff-content h3 { padding: 1rem 0 1.5rem; font-size: 1.25rem; width: 62%; position: absolute; left: 25%; top: 8rem; background-size: cover; }
  main section.recruit-content .wrap .staff-menu h4, main section.recruit-content .wrap .staff-content h4 { font-size: 1.25rem; text-align: left; width: auto; }
  main section.recruit-content .wrap .staff-menu li a, main section.recruit-content .wrap .staff-content li a { background-position: 90% 60%; }
  main section.recruit-content .wrap .staff-content article p { margin-top: 2rem; }
  main section.recruit-content .wrap .staff-content .close-btn { padding: 2rem 0 0; }
  main section.recruit-content .wrap .staff-content .close-btn img { max-width: 80px; }
  .contact-tel .contact-tel-child { width: 45%; margin: 3rem 2%; padding: 1rem; }
  .contact-tel .contact-tel-child h2 { font-size: 1.4rem; }
  .contact-tel .contact-tel-child p { font-size: 1.2rem; margin-bottom: 1.25rem; }
  .contact-tel .contact-tel-child p.icon-tel { padding-left: 5.5rem; font-size: 2.5rem; }
  .contact-form p .wpcf7c-btn-confirm, .contact-form p .wpcf7c-btn-back, .contact-form p .wpcf7-submit { width: 45%; }
  .contact-form table td .wpcf7c-btn-confirm, .contact-form table td .wpcf7c-btn-back, .contact-form table td .wpcf7-submit { width: 45%; }
  .post-type-archive-whatsnew main a { width: 30%; margin: 1.5%; } }

/* ---- 5.Responsive-PC min-1000px ---- */
@media screen and (min-width: 1225px) { section.basic { max-width: 1400px; margin-left: auto; margin-right: auto; }
  section.performance { margin-left: auto; margin-right: auto; }
  main section.wrap.whatsnew { max-width: 800px; } }

/* ---- 6.Responsive-SP max-340px ---- */
@media screen and (max-width: 340px) { header nav.menu-wrap .gnav { margin-top: 16px; margin-left: 36px; width: 260px; }
  header nav.menu-wrap .gnav li { width: 130px; height: 119.9px; border: 2px solid #fff; padding: 16px; }
  header nav.menu-wrap .gnav li.menu-middle { width: 260px; height: 60px; padding: 2px 8px 8px 4px; }
  header nav.menu-wrap .gnav li.menu-small { height: 60px; padding: 8px 8px 8px 4px; }
  header nav.menu-wrap .gnav li.menu-small a img { max-width: 32px; padding-top: 8px; padding-left: 8px; }
  header nav.menu-wrap .gnav li.menu-small a span { width: 80px; right: -3px; top: 10px; font-size: 12px; }
  header nav.menu-wrap .gnav li a img { max-width: 70%; max-height: 55%; height: auto; margin-bottom: 0.5rem; padding-left: 15%; padding-right: 15%; }
  header nav.menu-wrap .gnav li a span { font-size: 0.7rem; margin-top: 0.5rem; } }
/*# sourceMappingURL=style.css.map */