@charset "UTF-8";
/* mixin
------------------------------*/
html, body, 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; vertical-align: baseline; font-weight: 100; font-style: normal; font-family: "小塚ゴシック Pr6N", "Kozuka Gothic Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; }

body { padding: 0; font-size: 16px; line-height: 1.5em; font-family: "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; color: #474747; }

@media (max-width: 750px) { body { font-size: 14px; line-height: 1.5em; -webkit-text-size-adjust: 100%; }
  img { width: 100%; } }
/* 背景高さ調整 */
div, p, dl, article, section { min-height: 1px; /*min-height: 1em;*/ }

/*\*/
* html div { height: 1em; }

div { display: block; }

/* clearfix
------------------------------*/
.clearfix:after { clear: both; height: 0; visibility: hidden; display: block; content: "."; }

.clearfix { display: inline-block; }

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }

/* End hide from IE-mac */
.clearfix { display: block; }

/* clear */
.clear { clear: both; }

/* 共通設定など */
p, ul { display: block; }

p { margin-bottom: 20px; }

img { line-height: 0; margin: 0; padding: 0; vertical-align: bottom; }

.R { text-align: right; }

.L { text-align: left; }

.C { text-align: center !important; }

.fl { float: left; }

.fr { float: right; }

li { list-style: none; }

h1, h2, h3 { font-weight: lighter; line-height: 1.2em; letter-spacing: 0.01em; }

a { color: #474747; text-decoration: none; }

a:hover { text-decoration: underline; }

a:hover img { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; }

/*PC・スマホ切り替え*/
.smp { display: none !important; }

.pc { display: block; }

@media (max-width: 750px) { .smp { display: block !important; }
  .pc { display: none !important; } }
/*header*/
header { width: 100%; position: fixed; z-index: 999999; margin-top: -132px; background-color: rgba(255, 255, 255, 0.95); }
header .in { padding: 0; }
header #logo { float: left; margin-top: 58px; display: block; }
header #logo img { margin-bottom: 20px; }
header nav { float: right; padding: 70px 0 0; }
header nav li { float: left; padding: 5px 22px; font-size: 16px; font-weight: 400; letter-spacing: 4px; border-left: 1px solid #58504d; height: 30px; box-sizing: border-box; }
header nav li:last-of-type { border-right: 1px solid #58504d; padding-top: 0; }
header nav li img { width: 180px; margin-top: -8px; }

.header { position: fixed; width: 100%; }

.header .in { margin: 0 auto; width: 1200px; }

.header a { display: block; }

.header .header-logo { float: left; width: 300px; }

.header .header-nav { float: right; width: 600px; }

.header .header-nav li { float: left; width: 120px; text-align: center; }

/* スクロール後のヘッダー */
.header.fix nav { padding-top: 40px; }

.header.fix #logo { margin-top: 28px; }

.header.fix a { display: block; }

#main { margin-top: 132px; }
#main img.smp { display: none; }

.slider { margin: 0 auto; width: 100%; }
.slider img { height: auto; width: 100%; }
@media (max-width: 750px) { .slider img { width: 70vw; } }

.headlink { float: right; width: 293px; line-height: 0; }
.headlink li { border-right: 1px solid #c7e6ea; border-bottom: 1px solid #c7e6ea; width: 145px; display: table-cell; *display: inline; *zoom: 1; }
.headlink li a { border-left: 1px solid #c7e6ea; display: block; }
.headlink li img { vertical-align: top; }

/* headerスマホ */
@media (max-width: 750px) { header.smp { padding: 22px 0 0 0; overflow: hidden; }
  header.smp .logo { width: 40%; display: block; margin: 0 auto; }
  header.smp #nav { padding-top: 20px; font-size: 2.8vw; }
  header.smp #nav li { width: calc(100% / 6); box-sizing: border-box; float: left; border: 1px solid #bcbbbc; border-right: none; padding: 5px 0; text-align: center; font-weight: 400; }
  header.smp #nav li a { text-decoration: none; }
  header.smp #nav li:last-of-type { border-right: 1px solid #bcbbbc; background: #d1000e; }
  header.smp #nav li:last-of-type a { color: white; } }
/* スクロール後のヘッダー */
@media (max-width: 750px) { .header.fix { background: white; padding: 0; transition: all 0.5s; }
  .header.fix .logo { display: none; transition: all 0.5s; }
  .header.fix #nav { padding-top: 0; transition: all 0.5s; }
  .header.fix #nav li { padding: 10px 0; transition: all 0.5s; } }
/*共通*/
.in { width: 1080px; margin: 0 auto; text-align: center; padding: 50px 0; }
@media (max-width: 750px) { .in { padding: 30px 0; } }
.in h1 { font-size: 22px; width: 250px; margin: 0 auto; border-bottom: 2px solid #bcbbbc; padding-bottom: 10px; font-weight: 400; letter-spacing: 4px; }
@media (max-width: 750px) { .in h1 { font-size: 18px; letter-spacing: 2px; padding-bottom: 8px; width: 200px; } }
.in .ttl { padding-top: 8px; margin: 0 auto 15px; font-weight: 400; letter-spacing: 2px; font-size: 13px; }
@media (max-width: 750px) { .in .ttl { font-size: 10px; padding-top: 5px; margin-bottom: 20px; } }

@media (max-width: 750px) { .in { width: 100%; } }
/*bnr*/
.bnr { background: #fbfbf7; }
@media (max-width: 750px) { .bnr { background: none; }
  .bnr.bnr2 { background: #fbfbf7; padding-top: 10px; }
  .bnr.bnr2 .in2 { padding-bottom: 40px; } }
.bnr .in { width: 600px; padding: 50px 0 0; }
@media (max-width: 750px) { .bnr .in { width: 100%; padding-top: 20px; } }
.bnr .in h1 { width: 350px; border: none; margin-bottom: 30px; }
@media (max-width: 750px) { .bnr .in h1 { width: 100%; font-size: 14px; margin-bottom: 10px; } }
.bnr .in2 { width: 600px; padding: 0 0 55px; margin: 0 auto; }
@media (max-width: 750px) { .bnr .in2 { width: 100%; margin: 10px 0 0; padding-bottom: 30px; } }
.bnr .bnr_btn { position: relative; text-align: center; }
.bnr .bnr_btn i:first-of-type { border-top: 1px solid #58504d; -webkit-transform: rotate(45deg); transform: rotate(45deg); width: 30px; height: 8px; left: calc(22% - 30px); top: calc(50% - 8px); margin-top: -4px; position: absolute; }
.bnr .bnr_btn i:last-of-type { border-top: 1px solid #58504d; -webkit-transform: rotate(45deg); transform: rotate(45deg); width: 30px; height: 8px; right: calc(22% - 24px); top: calc(50% + 14px); margin-top: -4px; position: absolute; }
@media (max-width: 750px) { .bnr .bnr_btn i { display: none; } }
.bnr .bnr_btn span { z-index: 2; display: inline-block; text-align: left; }
@media (max-width: 750px) { .bnr .bnr_btn span { margin-bottom: 10px; } }
.bnr .bnr_btn span:before { position: absolute; top: 50%; left: 0; z-index: 1; content: ''; display: block; width: 22%; height: 1px; background-color: #58504d; }
@media (max-width: 750px) { .bnr .bnr_btn span:before { display: none; } }
.bnr .bnr_btn span:after { position: absolute; top: 50%; right: 0; z-index: 1; content: ''; display: block; width: 22%; height: 1px; background-color: #58504d; }
@media (max-width: 750px) { .bnr .bnr_btn span:after { display: none; } }
.bnr a:first-of-type { background: #d1000e; padding: 22px 50px; border-radius: 12px; color: white; font-size: 20px; font-weight: 400; letter-spacing: 4px; text-decoration: none; }
@media (max-width: 750px) { .bnr a:first-of-type { font-size: 13px; padding: 8px 20px; border-radius: 6px; letter-spacing: 2px; float: left; } }
.bnr a:first-of-type img { width: 20px; vertical-align: text-top; }
@media (max-width: 750px) { .bnr a:first-of-type img { vertical-align: text-bottom; width: 13px; } }
.bnr a:last-of-type img { vertical-align: middle; margin-left: 30px; }
@media (max-width: 750px) { .bnr a:last-of-type img { width: 150px; margin-left: 5vw; border-bottom: 1px solid #bcbbbc; } }
@media (max-width: 750px) and (max-width: 350px) { .bnr a:last-of-type img { margin-left: 3vw; } }

.bnr .txt { position: relative; width: 520px; margin: 0 auto; }
@media (max-width: 750px) { .bnr .txt { width: 90vw; } }
.bnr .txt .ttl { border: solid 1px #231815; font-size: 14px; font-weight: 100; text-align: left; margin: 25px 0 0 20px; padding: 30px 20px 30px 200px; box-sizing: border-box; }
@media (max-width: 750px) { .bnr .txt .ttl { padding: 10px 2vw 10px 135px; margin: 0; font-size: 11px; } }
.bnr .txt .book { position: absolute; left: -12px; top: -6px; }
@media (max-width: 750px) { .bnr .txt .book { width: 135px; left: -2vw; } }

/*voice*/
.voice { background: #eff2f4; }
@media (max-width: 750px) { .voice .in { padding-bottom: 0; } }
.voice .box ul { display: flex; justify-content: center; }
.voice .box ul li { text-align: left; padding-left: 30px; }
@media (max-width: 750px) { .voice .box ul li { padding: 0 15vw; } }
.voice .box ul li:last-child { margin-right: 0; }
.voice .box ul li span { display: inline-block; width: 301px; position: relative; height: 410px; }
@media (max-width: 750px) { .voice .box ul li span { width: 70vw; height: auto; margin-bottom: 10px; } }
.voice .box ul li span.line { text-align: center; height: auto; }
@media (max-width: 750px) { .voice .box ul li span.line { margin-bottom: 30px; } }
.voice .box ul li span.line:before, .voice .box ul li span.line:after { position: absolute; top: 50%; z-index: 1; content: ''; display: block; width: 30%; height: 2px; background-color: #bcbbbc; }
.voice .box ul li span.line:before { left: 0; }
.voice .box ul li span.line:after { right: 0; }
.voice .box ul li span h2 { font-size: 16px; }
.voice .box ul li span img { margin-bottom: 25px; }
.voice .box ul li span p { margin: 5px 0; font-size: 13px; }
.voice .box ul li span i { font-size: 13px; line-height: 1; }
.voice .box ul li b { color: white; display: inline-block; font-size: 10px; width: 57px; margin: 0 auto; line-height: 60px; border-radius: 50%; height: 60px; letter-spacing: 3px; padding-left: 3px; }
.voice .box ul li b.red { background: #e74c4a; }
.voice .box ul li b.green { background: #14b566; }
.voice .box ul li b.blue { background: #0a8c96; padding-top: 18px; line-height: 1.2; height: 42px; }

/*president*/
.president { background: #f8f7f3; }
@media (max-width: 750px) { .president { background: url("../image/president_bg_sp.jpg"); height: 164vw; background-size: cover; } }
@media (max-width: 750px) { .president .in { padding-top: 10vw; }
  .president .in .ttl { margin-bottom: 0; } }
.president .box { position: relative; height: 220px; margin-top: 60px; }
.president .box .first { text-align: left; position: absolute; left: 120px; }
@media (max-width: 750px) { .president .box .first { left: 0; } }
.president .box .first h2 { letter-spacing: 4px; line-height: 1.8; font-weight: 400; }
.president .box .first p { letter-spacing: 2px; line-height: 1.8; font-size: 14px; margin: 14px 0 0 5px; }
.president .box img { position: absolute; top: -18px; left: 710px; z-index: 1; }
@media (max-width: 750px) { .president .box img { top: 0; left: 0; width: 65%; right: 0; margin: 0; } }
.president .box i { position: absolute; bottom: -410px; left: 760px; z-index: 1; font-size: 13px; }
@media (max-width: 750px) { .president .box i { left: 0; bottom: 0; } }
.president .box2 { background: #f8ef6f; position: relative; width: 70%; height: 365px; float: right; }
.president .box2 img { left: -135px; top: 40px; position: absolute; }
@media (max-width: 750px) { .president .box { margin-top: 0; position: relative; }
  .president .box img { top: -40px; }
  .president .box3 { position: relative; }
  .president .box3 img { position: absolute; width: 250px; right: 0; margin: 0; z-index: 1; top: -20px; }
  .president .box3 .txt { text-align: left; position: absolute; background: rgba(255, 255, 255, 0.85); top: 20px; z-index: 2; padding: 6vw; margin: auto; left: 0; right: 0; width: 80vw; }
  .president .box3 .txt h2 { font-size: 5vw; font-weight: 400; letter-spacing: 3px; margin-bottom: 10px; line-height: 1.4; }
  .president .box3 .txt p { font-size: 3vw; margin-bottom: 10px; line-height: 1.8; } }
@media (max-width: 750px) and (max-width: 350px) { .president .box3 .txt p { line-height: 1.6; } }
@media (max-width: 750px) { .president .box3 .txt i { font-size: 2.5vw; font-weight: 400; }
  .president .bx { height: 160px; width: 100vw; right: 0; z-index: 0; position: absolute; top: 85vw; }
  .president .bx img { position: absolute; top: 0; right: 0; width: 90vw; } }
@media (max-width: 750px) and (max-width: 350px) { .president .bx img { right: 0; } }

/*career*/
.career { background: #f8f7f3; clear: right; padding-top: 93px; margin-top: -93px; }
@media (max-width: 750px) { .career { padding-top: 43px; margin-top: -43px; } }
@media (max-width: 750px) { .career { background: none; } }
.career .in h1 { width: 350px; }
@media (max-width: 750px) { .career .in h1 { width: 250px; } }
.career .box { margin-top: 50px; }
@media (max-width: 750px) { .career .box { margin-top: 0; } }
.career .box div { display: flex; justify-content: center; }
@media (max-width: 750px) { .career .box div { display: block; } }
.career .box div:nth-child(even) { flex-direction: row-reverse; }
.career .box div div { width: 501px; height: 426px; }
@media (max-width: 750px) { .career .box div div { width: auto; height: auto; padding: 0 3vw; } }
.career .box div div.sub { position: relative; }
.career .box div div.sub h2 span { position: absolute; top: calc(50% - 16px); right: 0; left: 0; margin: auto; font-size: 16px; font-weight: 400; background: rgba(255, 255, 255, 0.8); width: max-content; padding: 8px 10px; letter-spacing: 2px; }
.career .box div div.sub h2 span .kome { margin: 0; vertical-align: super; font-size: 2vw; }
.career .box div div.sub h2.sec span:first-of-type { top: calc(50% - 32px); }
.career .box div div.sub h2.sec span:last-of-type { top: calc(50%); }
.career .box div div.bx { background: white; display: block; box-sizing: border-box; position: relative; }
.career .box div div.bx div { position: absolute; top: 0; bottom: 0; right: 0; left: 0; margin: auto; }
.career .box div div.bx h2 { font-size: 22px; line-height: 1.6; letter-spacing: 4px; }
.career .box div div.bx span { margin: 13px 0 18px; font-size: 12px; display: inline-block; }
.career .box div div.bx span.kome { margin: 0; vertical-align: top; }
.career .box div div.bx p { font-size: 14px; letter-spacing: 1px; line-height: 1.8; }
@media (max-width: 750px) { .career .box div div.bx p { font-size: 3.5vw; letter-spacing: 0; line-height: 1.8; margin: 0; } }
.career .box div div.bx i { font-size: 11px; position: absolute; left: 10px; bottom: 5px; }
@media (max-width: 750px) { .career .box div div.bx i { top: -20px; font-size: 2.8vw; left: 4vw; } }
.career .box div div.bx1 { padding: 90px 80px; }
.career .box div div.bx2 { padding: 80px; }
.career .box div div.bx3 { padding: 70px 40px; }
.career .box div div.bx4 { padding: 52px 60px; }
.career .box div div.bx5 { padding: 70px 80px; }
.career .box div div.bx6 { padding: 65px 30px; }
@media (max-width: 750px) { .career .box div div.bx1, .career .box div div.bx2, .career .box div div.bx3, .career .box div div.bx5, .career .box div div.bx6 { padding: 20px 0 0; }
  .career .box div div.bx4 { padding: 20px 0; } }
.career .box div div.gray { background: #e0e6e9; position: relative; }
@media (max-width: 750px) { .career .box div div.gray { margin: 20px 3vw 0; } }
.career .box div div.gray img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; height: 370px; box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.4); }
@media (max-width: 750px) { .career .box div div.gray img { position: static; height: auto; width: 50vw; margin: -6px 0 24px; } }

.back { background: #f8f7f3; height: 365px; }
@media (max-width: 750px) { .back { background: none; } }

/*courses*/
.courses { background: #f8f7f3; padding-top: 93px; margin-top: -93px; }
@media (max-width: 750px) { .courses { padding-top: 23px; margin-top: -33px; } }
@media (max-width: 750px) { .courses { background: none; }
  .courses .in { padding: 50px 0 0; } }
.courses h1 { width: 350px; }
@media (max-width: 750px) { .courses h1 { width: 250px; } }
.courses .box .bx { background: url("../image/courses2.jpg"); background-size: cover; display: flex; height: 272px; width: 1080px; margin: 30px auto 10px; }
@media (max-width: 750px) { .courses .box .bx { width: 100%; display: block; } }
.courses .box .bx div { display: block; width: 270px; color: white; padding: 50px 0; }
.courses .box .bx div h2 { font-size: 13px; border-bottom: 1px solid white; width: 60%; height: 60px; margin: 0 auto 10px; }
.courses .box .bx div h2 b { font-size: 26px; letter-spacing: 4px; line-height: 2.4; display: block; }
.courses .box .bx div p { font-size: 13px; letter-spacing: 2px; line-height: 1.4; }
.courses .box .bx div p:nth-of-type(2) { font-size: 13px; letter-spacing: 2px; line-height: 1.8; }
.courses .box .bx div:nth-child(2) h2 b, .courses .box .bx div:nth-child(3) h2 b { line-height: 1; margin-bottom: -8px; }
.courses .box .bx div:last-child h2 { width: 75%; }
.courses .box .bx div:last-child h2 b { letter-spacing: -1px; }
.courses .box2 .bx { position: relative; }
.courses .box2 .bx .top { float: left; }
.courses .box2 .bx_top { position: absolute; right: 0; top: 0; background: white; height: 475px; width: 410px; padding: 50px 60px; box-sizing: border-box; }
@media (max-width: 750px) { .courses .box2 .bx_top { position: unset; height: 300px; width: 100%; } }
.courses .box2 .bx_top h2 { letter-spacing: 10px; font-size: 30px; font-weight: 400; padding-bottom: 15px; }
.courses .box2 .bx_top h3 { font-size: 14px; line-height: 1.8; font-weight: 400; letter-spacing: 2px; margin: 30px auto 10px; }
.courses .box2 .bx_top p { padding: 30px 0; text-align: left; font-size: 14px; line-height: 1.8; letter-spacing: 2px; }
.courses .box2 .bx_top .ttl { padding: 10px 0 0; font-weight: 400; font-size: 16px; line-height: 1.8; text-align: center; }
.courses .box2 .bx_mid { padding: 45px 35px; box-sizing: border-box; }
@media (max-width: 750px) { .courses .box2 .bx_mid { padding: 5px 5vw 25px; margin: 0 3vw; }
  .courses .box2 .bx_mid.smp { padding: 20px 0 15px; } }
.courses .box2 .bx_mid h2 { font-weight: 400; font-size: 22px; letter-spacing: 4px; margin-bottom: 30px; line-height: 1.6; }
@media (max-width: 750px) { .courses .box2 .bx_mid h2 { font-size: 18px; margin-bottom: 20px; position: relative; }
  .courses .box2 .bx_mid h2 b { font-size: 22px; font-weight: 400; vertical-align: text-bottom; } }
@media (max-width: 750px) and (max-width: 750px) { .courses .box2 .bx_mid h2 b { font-size: 7vw; } }

.courses .box2 .bx_mid h2 img { padding: 0 50px; }
@media (max-width: 750px) { .courses .box2 .bx_mid h2 img { width: 10vw; }
  .courses .box2 .bx_mid h2 img:first-of-type { padding: 0 5vw 0 0; }
  .courses .box2 .bx_mid h2 img:last-of-type { padding: 0 0 0 5vw; } }
.courses .box2 .bx_mid h2 span { font-size: 13px; position: absolute; left: -95px; bottom: -12px; letter-spacing: 0; right: 0; }
@media (max-width: 750px) { .courses .box2 .bx_mid h2 span { font-size: 3.5vw; } }
.courses .box2 .bx_mid p { margin: 10px auto; font-size: 14px; letter-spacing: 2px; }
@media (max-width: 750px) { .courses .box2 .bx_mid p { font-size: 3.5vw; letter-spacing: 0; } }
.courses .box2 .bx_mid .point { display: flex; margin-top: 60px; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point { display: block; margin-top: 0; } }
.courses .box2 .bx_mid .point li { display: block; width: 350px; border-right: 1px solid #837d7a; padding: 35px 30px 0; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point li { width: 100%; border: none; padding: 0; } }
.courses .box2 .bx_mid .point li:first-child { border-left: 1px solid #837d7a; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point li:first-child { border: none; } }
.courses .box2 .bx_mid .point li h3 { font-size: 16px; font-weight: 400; letter-spacing: 2px; line-height: 1.4; margin-bottom: 20px; position: relative; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point li h3 { text-align: left; margin: 25px 0 15px 60px; } }
.courses .box2 .bx_mid .point li h3 img { position: absolute; top: -60px; right: 0; left: 0; margin: 0 auto; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point li h3 img { width: 50px; right: unset; top: 0; left: -60px; } }
.courses .box2 .bx_mid .point li p { text-align: left; font-size: 13px; }
@media (max-width: 750px) { .courses .box2 .bx_mid .point li p { font-size: 3.5vw; } }
.courses .box2 .bx_ttl { background: white; }
.courses .box2 .icon_all { background: white; display: flex; padding: 60px 60px 20px; }
@media (max-width: 750px) { .courses .box2 .icon_all { display: block; background: none; } }
.courses .box2 .icon_all .graph img { width: 100%; }
@media (max-width: 750px) { .courses .box2 .icon_all .graph img { width: 80%; margin: 20px auto 40px; padding-left: 30px; } }
.courses .box2 .icon_all .c_icon { display: flex; width: 450px; flex-wrap: wrap; margin-top: 10px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon { width: 100%; border-top: dashed 1px #231815; padding: 20px 0 0; box-sizing: border-box; justify-content: space-between; } }
.courses .box2 .icon_all .c_icon li { width: 107px; height: 140px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon li { width: 20vw; height: auto; } }
.courses .box2 .icon_all .c_icon li img { height: 66px; margin: 0 auto 8px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon li img { height: auto; width: 60px; margin: 0 auto 8px; } }
.courses .box2 .icon_all .c_icon p { font-size: 12px; letter-spacing: 1px; line-height: 1.4; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon p { font-size: 10px; } }
.courses .box2 .icon_all .c_icon2 { margin-top: 10px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon2 { display: flex; margin-top: 0; border-bottom: dashed 1px #231815; } }
.courses .box2 .icon_all .c_icon2 li { width: 187px; height: 140px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon2 li { height: auto; } }
.courses .box2 .icon_all .c_icon2 li img { height: 66px; margin-bottom: 8px; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon2 li img { height: 60px; width: auto; margin: 0 auto; } }
.courses .box2 .icon_all .c_icon2 p { font-size: 12px; letter-spacing: 1px; line-height: 1.4; }
@media (max-width: 750px) { .courses .box2 .icon_all .c_icon2 p { font-size: 10px; } }
.courses .box2 .white { width: 1080px; background: white; padding: 0 60px 60px; box-sizing: border-box; }
@media (max-width: 750px) { .courses .box2 .white { background: none; width: 100%; padding: 0 3vw; } }
.courses .box2 .detail { width: 100%; border-top: solid 2px #918b8a; }
@media (max-width: 750px) { .courses .box2 .detail { border-top: none; margin-top: 12px; } }
.courses .box2 .detail dt, .courses .box2 .detail dd { height: 40px; padding: 8px 20px 8px 8px; box-sizing: border-box; font-size: 14px; text-align: left; border-bottom: solid 1px #cfcfcf; }
.courses .box2 .detail dt:last-of-type, .courses .box2 .detail dd:last-of-type { height: 200px; border: none; }
@media (max-width: 750px) { .courses .box2 .detail dt:last-of-type, .courses .box2 .detail dd:last-of-type { height: 170px; } }
@media (max-width: 350px) { .courses .box2 .detail dt:last-of-type, .courses .box2 .detail dd:last-of-type { height: 200px; } }
.courses .box2 .detail dt { float: left; width: 34%; padding-left: 20px; font-weight: 400; letter-spacing: 4px; }
.courses .box2 .detail dt:nth-last-of-type(odd) { background: #efefef; }
@media (max-width: 750px) { .courses .box2 .detail dt { font-size: 3vw; letter-spacing: 0; padding-left: 3vw; width: 46%; padding-right: 0; }
  .courses .box2 .detail dt:nth-last-of-type(even) { background: white; } }
.courses .box2 .detail dd { margin-left: 100px; letter-spacing: 1px; }
.courses .box2 .detail dd:nth-last-of-type(odd) { background: #efefef; }
@media (max-width: 750px) { .courses .box2 .detail dd { font-size: 12px; padding-right: 3vw; letter-spacing: 0; font-size: 10px; }
  .courses .box2 .detail dd:nth-last-of-type(even) { background: white; } }
.courses .box2.red { background: #f2e8ed; }
.courses .box2.red .in { padding: 0 0 80px; }
@media (max-width: 750px) { .courses .box2.red .in { padding: 0; } }
.courses .box2.red .bx .top_img { width: 1080px; }
@media (max-width: 750px) { .courses .box2.red .bx .top_img { width: 100%; } }
.courses .box2.red .bx_top h2 { color: #f6504d; border-bottom: 1px solid #f6504d; }
.courses .box2.red .bx_top p { border-bottom: 1px solid #f6504d; }
.courses .box2.red .bx_top .ttl { color: #f6504d; border: none; }
.courses .box2.red .bx_mid { background: url("../image/c1_bk.jpg"); background-size: cover; }
@media (max-width: 750px) { .courses .box2.red .bx_mid { background: url("../image/c1_bk_sp.jpg"); background-size: cover; } }
.courses .box2.red .bx_mid.smp { background: none; }
.courses .box2.red .bx_mid h2 { color: #f6504d; }
@media (max-width: 750px) { .courses .box2.red .icon_all { background: #f2e8ed; padding: 10px 3vw; } }
.courses .box2.red .detail dt { color: #f7514d; }
.courses .box2.green { background: #e7ede5; }
.courses .box2.green .in { padding: 0 0 80px; }
@media (max-width: 750px) { .courses .box2.green .in { padding: 0; } }
.courses .box2.green .bx .top_img { height: 475px; float: left; }
.courses .box2.green .bx_top h2 { color: #009164; border-bottom: 1px solid #009164; }
.courses .box2.green .bx_top p { border-bottom: 1px solid #009164; }
.courses .box2.green .bx_top .ttl { color: #009164; border: none; }
.courses .box2.green .bx_mid { background: url("../image/c2_bk.jpg"); background-size: cover; clear: left; }
@media (max-width: 750px) { .courses .box2.green .bx_mid { background: url("../image/c2_bk_sp.jpg"); background-size: cover; } }
.courses .box2.green .bx_mid.smp { background: none; }
.courses .box2.green .bx_mid h2 { color: #009164; }
@media (max-width: 750px) { .courses .box2.green .bx_mid h2 { margin-bottom: 30px; } }
@media (max-width: 750px) { .courses .box2.green .bx_mid h2 img:first-of-type { padding: 0 10vw 0 0; } }
.courses .box2.green .bx_ttl { display: flex; padding: 50px 60px 0; margin-top: 20px; }
@media (max-width: 750px) { .courses .box2.green .bx_ttl { display: block; } }
.courses .box2.green .bx_ttl div p { margin-bottom: 0; }
.courses .box2.green .bx_ttl div:first-of-type { width: 40%; padding: 80px; box-sizing: border-box; }
.courses .box2.green .bx_ttl div:first-of-type h3 { color: #009164; border-bottom: solid 1px #009164; font-size: 30px; letter-spacing: 10px; width: 220px; font-weight: 400; padding-bottom: 10px; margin: 0 auto; }
.courses .box2.green .bx_ttl div:first-of-type p { color: #009164; font-size: 20px; letter-spacing: 4px; font-weight: 400; margin-top: 10px; }
.courses .box2.green .bx_ttl div:last-of-type { width: 60%; text-align-last: left; padding-bottom: 30px; }
.courses .box2.green .bx_ttl div:last-of-type h4 { color: #009164; font-size: 20px; letter-spacing: 4px; font-weight: 400; line-height: 1.8; margin-bottom: 20px; }
.courses .box2.green .bx_ttl div:last-of-type p { font-size: 13px; letter-spacing: 2px; line-height: 1.8; text-align: left; }
.courses .box2.green .bx_ttl div:first-of-type { padding: 30px 80px; }
.courses .box2.green .bx_ttl div:last-of-type { padding-bottom: 50px; }
.courses .box2.green .bx_line { background-color: white; padding: 0 60px; }
.courses .box2.green .bx_line span { border-bottom: dotted 2px #15bf6b; display: inline-block; width: 960px; }
@media (max-width: 750px) { .courses .box2.green .bx_line span { width: 100%; } }
.courses .box2.green .icon_all { padding: 25px 163px 25px; }
@media (max-width: 750px) { .courses .box2.green .icon_all { padding: 10px 3vw; } }
.courses .box2.green .icon_all .c_icon { width: 430px; }
@media (max-width: 750px) { .courses .box2.green .icon_all .c_icon { width: 100%; border-bottom: dashed 1px #231815; } }
.courses .box2.green .icon_all2 { padding: 25px 110px 55px; }
@media (max-width: 750px) { .courses .box2.green .icon_all2 { padding: 10px 3vw; } }
.courses .box2.green .icon_all2 .c_icon { width: 535px; margin-top: 60px; }
@media (max-width: 750px) { .courses .box2.green .icon_all2 .c_icon { width: 100%; margin-top: 0; } }
.courses .box2.green .detail { border-top: dotted 2px #15bf6b; padding-bottom: 15px; }
@media (max-width: 750px) { .courses .box2.green .detail { border-top: dotted 2px #e7ede5; } }
.courses .box2.green .detail dt { color: #009164; }
.courses .box2.green .detail dt:first-of-type, .courses .box2.green .detail dd:first-of-type { margin-top: 15px; }
.courses .box2.green .detail dt:last-of-type, .courses .box2.green .detail dd:last-of-type { height: 95px; }
.courses .box2.blue { background: #dee8ee; }
.courses .box2.blue .in { padding: 0 0 80px; }
@media (max-width: 750px) { .courses .box2.blue .in { padding: 0; } }
.courses .box2.blue .bx .top_img { height: 475px; float: left; }
.courses .box2.blue .bx_top h2 { color: #00848c; border-bottom: 1px solid #00848c; letter-spacing: 4px; }
.courses .box2.blue .bx_top p { border-bottom: 1px solid #00848c; }
.courses .box2.blue .bx_top .ttl { color: #00848c; border: none; }
.courses .box2.blue .bx_mid { background: url("../image/c3_bk.jpg"); background-size: cover; clear: left; }
@media (max-width: 750px) { .courses .box2.blue .bx_mid { background: url("../image/c3_bk_sp.jpg"); background-size: cover; } }
.courses .box2.blue .bx_mid.smp { background: none; }
.courses .box2.blue .bx_mid h2 { color: #00848c; }
.courses .box2.blue .bx_mid h2 img:first-of-type { padding-right: 5vw; }
.courses .box2.blue .bx_mid h2 img:last-of-type { padding-left: 5vw; }
@media (max-width: 750px) { .courses .box2.blue .bx_mid .point li h3 img { top: 10px; } }
.courses .box2.blue .icon_all { padding: 60px 100px 20px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all { padding: 10px 3vw; } }
.courses .box2.blue .icon_all .tic { position: relative; width: 300px; height: 280px; margin-right: 20px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .tic { width: 100%; } }
@media (max-width: 350px) { .courses .box2.blue .icon_all .tic { height: 250px; } }
.courses .box2.blue .icon_all .tic b { position: absolute; top: 0; left: 10px; color: #00848c; font-weight: 400; border: solid 2px #00848c; padding: 2px 8px; font-size: 14px; letter-spacing: 2px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .tic b { left: 70px; top: 20px; } }
.courses .box2.blue .icon_all .tic img { width: 224px; position: absolute; top: 60px; right: 20px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .tic img { top: 70px; left: -20px; right: 0; margin: auto; } }
.courses .box2.blue .icon_all .tic p { text-align: left; position: absolute; bottom: 0; font-size: 14px; letter-spacing: 0; line-height: 1.6; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .tic p { font-size: 3.5vw; left: 30px; } }
.courses .box2.blue .icon_all .c_icon { width: 560px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .c_icon { width: 100%; border-top: dashed 1px #231815; border-bottom: dashed 1px #231815; } }
.courses .box2.blue .icon_all .c_icon li { width: 90px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .c_icon li { width: 88px; }
  .courses .box2.blue .icon_all .c_icon li img.big { width: auto; height: 60px; } }
.courses .box2.blue .icon_all .c_icon li:nth-of-type(1), .courses .box2.blue .icon_all .c_icon li:nth-of-type(2) { width: 176px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .c_icon li:nth-of-type(1), .courses .box2.blue .icon_all .c_icon li:nth-of-type(2) { width: 47vw; } }
.courses .box2.blue .icon_all .c_icon span { display: flex; padding-left: 10px; }
@media (max-width: 750px) { .courses .box2.blue .icon_all .c_icon span { padding-left: 20px; } }
.courses .box2.blue .icon_all .c_icon span p:nth-child(2) { margin: 20px 5px; }
.courses .box2.blue .detail dt { color: #00848c; }
.courses .box2.blue .detail dt:last-of-type, .courses .box2.blue .detail dd:last-of-type { height: 75px; }
@media (max-width: 750px) { .courses .box2.blue .detail dt:last-of-type, .courses .box2.blue .detail dd:last-of-type { height: 65px; } }
.courses .box2.blue .white { padding-bottom: 20px; }

/*support*/
.support { padding-top: 93px; margin-top: -93px; }
@media (max-width: 750px) { .support { padding-top: 43px; margin-top: -43px; } }
.support .in { padding-bottom: 180px; }
@media (max-width: 750px) { .support .in { padding-bottom: 0; } }
.support .box h2 { font-size: 18px; line-height: 1.8; margin: 50px auto 40px; letter-spacing: 3px; position: relative; text-align: center; }
@media (max-width: 750px) { .support .box h2 { font-size: 13px; margin: 20px 0; } }
.support .box h2 span { position: relative; z-index: 2; display: inline-block; width: 100%; font-weight: 400; }
.support .box h2 span:before { position: absolute; top: 50%; left: 0; z-index: 1; content: ''; display: block; width: 30%; height: 1px; background: #231815; }
@media (max-width: 750px) { .support .box h2 span:before { width: 10%; } }
.support .box h2 span:after { position: absolute; top: 50%; right: 0; z-index: 1; content: ''; display: block; width: 30%; height: 1px; background: #231815; }
@media (max-width: 750px) { .support .box h2 span:after { width: 10%; } }
.support .box ul { display: flex; }
@media (max-width: 750px) { .support .box ul { flex-wrap: wrap; } }
.support .box ul li { text-align: left; margin-right: 50px; }
@media (max-width: 750px) { .support .box ul li { width: 50%; margin-right: 0; padding: 0 3vw 30px; box-sizing: border-box; }
  .support .box ul li:nth-of-type(odd) { padding-right: 1.5vw; }
  .support .box ul li:nth-of-type(even) { padding-left: 1.5vw; } }
.support .box ul li:last-of-type { margin-left: 0; }
.support .box ul li span img { margin-bottom: 15px; }
.support .box ul li span h3 { font-size: 16px; margin-bottom: 10px; letter-spacing: 2px; }
@media (max-width: 750px) { .support .box ul li span h3 { font-size: 13px; } }
.support .box ul li span p { font-size: 13px; letter-spacing: 1px; line-height: 1.6; margin-bottom: 10px; }
@media (max-width: 750px) { .support .box ul li span p { font-size: 10px; } }
.support .box ul li span i { font-size: 13px; letter-spacing: 1px; line-height: 0; }
@media (max-width: 750px) { .support .box ul li span i { font-size: 10px; line-height: 1.4; display: block; } }

/*meeting*/
.meeting { background: url("../image/meeting_bk.jpg"); }
@media (max-width: 750px) { .meeting { background: url("../image/meeting_bk_sp.jpg"); width: 100%; background-size: cover; } }
.meeting .in h1 { width: 350px; }
@media (max-width: 750px) { .meeting .in h1 { width: 200px; font-size: 14px; padding-bottom: 5px; } }
.meeting .in .ttl { font-size: 10px; padding-top: 2px; }
@media (max-width: 750px) { .meeting .in { width: 90%; } }
.meeting .box { background-color: rgba(255, 255, 255, 0.68); padding: 50px; }
@media (max-width: 750px) { .meeting .box { padding: 40px 5vw 25px; } }
.meeting .box h2 { color: #f7514d; line-height: 1.8; font-weight: 400; letter-spacing: 10px; font-size: 30px; margin: 40px 0 50px; }
@media (max-width: 750px) { .meeting .box h2 { font-size: 5vw; letter-spacing: 6px; margin: 18px 0; } }
.meeting .box p:last-of-type { font-size: 24px; font-weight: 400; letter-spacing: 4px; line-height: 1.8; }
@media (max-width: 750px) { .meeting .box p:last-of-type { font-size: 3.5vw; letter-spacing: 1px; margin-bottom: 0; } }
.meeting .box p:last-of-type img { margin-top: 36px; width: 270px; }
@media (max-width: 750px) { .meeting .box p:last-of-type img { margin-top: 20px; width: 180px; } }

/*access*/
.access .box { display: flex; margin-top: 50px; }
@media (max-width: 750px) { .access .box { display: block; margin-top: 35px; } }
.access .box div { padding: 0 40px; box-sizing: border-box; }
@media (max-width: 750px) { .access .box div { padding: 0 5vw; } }
.access .box div:first-of-type { border-left: 2px solid #231815; border-right: 1px dashed #231815; }
@media (max-width: 750px) { .access .box div:first-of-type { border: none; } }
.access .box div:last-of-type { border-right: 2px solid #231815; }
@media (max-width: 750px) { .access .box div:last-of-type { border: none; } }
.access .box div h2 { font-weight: 400; letter-spacing: 6px; margin: 10px 0 30px; }
@media (max-width: 750px) { .access .box div h2 { font-size: 17px; letter-spacing: 3px; margin-bottom: 20px; } }
.access .box div img { width: 100%; }
.access .box div dl { margin: 30px auto; font-size: 15px; height: 150px; }
@media (max-width: 750px) { .access .box div dl { font-size: 3.5vw; margin: 20px auto; } }
.access .box div dl dt { float: left; width: 18%; padding-left: 20px; padding: 0; -moz-text-align-last: justify; text-align-last: justify; text-justify: inter-ideograph; border: none; }
@media (max-width: 750px) { .access .box div dl dt { width: 20%; } }
.access .box div dl dd { text-align: left; }
.access .box div dl dd a { border: none; padding: 0; font-weight: 100; font-size: 15px; }
@media (max-width: 750px) { .access .box div dl dd a { border-bottom: 1px solid #bcbbbc; border-radius: 0; } }
.access .box div dl dd:nth-last-of-type(even) { float: left; padding: 0 5px; }
.access .box div dl dd:nth-last-of-type(odd) { letter-spacing: 2px; }
.access .box div.map { height: 280px; border: none; padding: 0; }
@media (max-width: 750px) { .access .box div.map { height: auto; margin-bottom: 35px; } }
.access .box div.aigo { border: none; border-top: 1px solid #231815; padding: 0; margin-top: 80px; text-align: left; }
@media (max-width: 750px) { .access .box div.aigo { margin-top: 50px; } }
.access .box div.aigo h3 { font-size: 14px; margin: 30px 0 20px; }
@media (max-width: 750px) { .access .box div.aigo h3 { font-size: 13px; margin: 25px 0 15px; } }
.access .box div.aigo p { font-size: 13px; }
@media (max-width: 750px) { .access .box div.aigo p { margin-bottom: 70px; font-size: 3.5vw; } }
@media (max-width: 750px) { .access .box div.aigo2 p { margin-bottom: 0; } }
.access .box a { text-decoration: none; border: 1px solid #bcbbbc; padding: 20px 40px; border-radius: 10px; font-size: 14px; letter-spacing: 2px; }
@media (max-width: 750px) { .access .box a { font-size: 13px; font-weight: 400; padding: 15px 25px; } }

/*footer*/
footer { background: #9fa0a0; border-top: 1px solid #f3f3f3; color: white; }
footer .bg { text-align: center; width: 1080px; margin: 0 auto; }
@media (max-width: 750px) { footer .bg { width: 100%; } }
footer .bg ul { margin: 50px auto; }
@media (max-width: 750px) { footer .bg ul { display: block; width: 100%; margin: 25px auto; } }
footer .bg ul li { display: inline-block; margin: 0 8px; letter-spacing: 4px; font-size: 14px; }
footer .bg ul li a { color: white; text-decoration: none; }
@media (max-width: 750px) { footer .bg ul li { margin: 0; font-size: 2.6vw; letter-spacing: 2px; } }
@media (max-width: 320px) { footer .bg ul li { letter-spacing: 0; } }
footer .bg ul li:nth-of-type(even) { width: 20px; }
@media (max-width: 750px) { footer .bg ul li:nth-of-type(even) { width: 3vw; letter-spacing: 0; } }
@media (max-width: 320px) { footer .bg ul li:nth-of-type(even) { width: 2.6vw; } }
footer p { padding: 28px 0 20px 0; margin: 0; text-align: center; font-size: 12px; letter-spacing: 0.05em; font-weight: bold; }
@media (max-width: 750px) { footer p { padding: 30px 0 10px; font-size: 10px; font-weight: 100; } }
@media (max-width: 750px) { footer img { width: 180px; } }

/* pagetop */
@media (max-width: 750px) { #sp-pagetop { display: block; width: 50px; height: 50px; position: fixed; bottom: 10px; right: 0; background: url(../images/pagetop.png) no-repeat top; background-size: 50px 50px; z-index: 99999; } }
#sp-pagetop { display: none; }

@media (min-width: 751px) { .menu { display: none; } }
/*アコーディオン部分*/
@media (max-width: 750px) { .accbox { margin: 0; padding: 0; }
  .accbox label { display: block; cursor: pointer; transition: all 0.5s; }
  .accbox input { display: none; }
  .accbox .accshow { height: 0; padding: 0; overflow: hidden; opacity: 0; transition: 0.8s; }
  .cssacc:checked + label + .accshow { height: auto; opacity: 1; }
  .accbox .accshow p { margin: 15px 10px; } }
@media (min-width: 751px) { a[href^="tel:"] { pointer-events: none; } }
.no { display: none; }

@media (max-width: 350px) { .ss { display: none; } }
/* 201908追加　共通 */
@media (max-width: 750px) { #main img.smp { margin-top: -2vw; } }
@media (max-width: 350px) { #main img.smp { margin-top: -6vw; } }

@media (max-width: 750px) { #sub #main img.smp { margin-top: -9vw; } }
@media (max-width: 350px) { #sub #main img.smp { margin-top: -12vw; } }

/* 201908追加　company */
@media (max-width: 750px) { #sub .slider img { width: 200vw; } }

.company .in { padding: 80px 0 30px; width: 1200px; }
@media (max-width: 750px) { .company .in { width: 100vw; padding: 8vw 5vw 0; box-sizing: border-box; } }
.company .in:first-of-type { padding-bottom: 0; }
.company h1 { font-size: 28px; border-bottom: solid 3px #7d7d7d; position: relative; width: 100%; text-align: left; }
@media (max-width: 750px) { .company h1 { font-size: 4vw; } }
.company h1:after { position: absolute; content: " "; display: block; border-bottom: solid 3px #e60011; bottom: -3px; width: 300px; }
@media (max-width: 750px) { .company h1:after { width: 30vw; } }
.company h1::first-letter { color: #e60011; font-size: 36px; }
@media (max-width: 750px) { .company h1::first-letter { font-size: 5vw; } }
.company .box { padding: 50px 50px 0; }
@media (max-width: 750px) { .company .box { padding: 6vw 3vw; } }
@media (max-width: 750px) { .company .box img { width: 65vw; } }
.company .box p { text-align: left; font-size: 16px; line-height: 1.8; }
@media (max-width: 750px) { .company .box p { font-size: 3.2vw; padding: 2vw 0 6vw 0; text-align: justify; } }
@media (max-width: 750px) { .company .box p:first-of-type { padding-bottom: 0; text-align: center; } }
.company .box p:last-of-type { background: #f8f7f3; width: 70%; padding: 30px; box-sizing: border-box; margin-bottom: 0; }
@media (max-width: 750px) { .company .box p:last-of-type { width: 100%; } }
.company dl { text-align: left; padding: 50px; }
@media (max-width: 750px) { .company dl { padding: 6vw 3vw; } }
.company dl dt { padding: 0 15px; border-left: solid 5px #e60011; font-weight: bold; font-size: 18px; }
@media (max-width: 750px) { .company dl dt { font-size: 3.5vw; padding: 0 2vw; } }
.company dl dd { font-size: 16px; padding: 10px 0 40px 20px; line-height: 2; }
@media (max-width: 750px) { .company dl dd { font-size: 3.2vw; padding: 2vw 0 6vw 0; } }
.company dl dd table { width: 100%; border-collapse: collapse; border-spacing: 0; border: solid 1px #e60011; border-bottom: none; }
.company dl dd table tr td { width: 50%; }
@media (max-width: 750px) { .company dl dd table tr td { width: 100%; } }
.company dl dd table tr td:first-of-type { border-bottom: solid 1px #e60011; border-right: solid 1px #e60011; }
@media (max-width: 750px) { .company dl dd table tr td:first-of-type { border-right: none; } }
.company dl dd table tr td:nth-of-type(2) { border-bottom: solid 1px #e60011; }
@media (max-width: 750px) { .company dl dd table tr td { display: block; } }
.company dl dd table tr td h2 { font-size: 16px; font-weight: bold; color: #e60011; padding: 30px 30px 0; }
@media (max-width: 750px) { .company dl dd table tr td h2 { padding: 5vw 5vw 3vw; font-size: 3.5vw; } }
.company dl dd table tr td .bx { padding: 10px 30px 30px; }
@media (max-width: 750px) { .company dl dd table tr td .bx { padding: 0 5vw 5vw; } }
.company dl dd table tr td .bx dt { font-size: 16px; font-weight: 100; float: left; padding: 0 30px 0 0; border: none; width: 25%; text-align: justify; text-align-last: justify; }
@media (max-width: 750px) { .company dl dd table tr td .bx dt { font-size: 3.2vw; width: 23vw; padding-right: 5vw; } }
.company dl dd table tr td .bx dd { padding: 0; padding-left: calc(25% + 30px); }
@media (max-width: 750px) { .company dl dd table tr td .bx dd { padding-left: calc(23vw + 5vw); } }

/* 201908追加　new_form */
.new_form .in { padding: 80px 0 80px; width: 1200px; }
@media (max-width: 750px) { .new_form .in { width: 100vw; padding: 0; } }

.bmform_outer1199464 { width: 1100px; }
@media (max-width: 750px) { .bmform_outer1199464 { width: 100vw; } }

.bm_headetext1199464 { font-size: 28px; border-bottom: solid 3px #7d7d7d; position: relative; width: 100%; text-align: left; margin: 0 auto; padding-bottom: 10px; font-weight: 400; letter-spacing: 4px; }
@media (max-width: 750px) { .bm_headetext1199464 { font-size: 4vw; width: 90vw; margin-top: 8vw; } }
.bm_headetext1199464:after { position: absolute; content: " "; display: block; border-bottom: solid 3px #e60011; bottom: -3px; width: 300px; }
@media (max-width: 750px) { .bm_headetext1199464:after { width: 30vw; } }
.bm_headetext1199464::first-letter { color: #e60011; font-size: 36px; }
@media (max-width: 750px) { .bm_headetext1199464::first-letter { font-size: 5vw; } }

@media (max-width: 750px) { .bmform_inner1199464 { padding-bottom: 12vw; } }

.bmform_body1199464 { background-color: #eeeeee; padding: 40px 50px; }
@media (max-width: 750px) { .bmform_body1199464 { padding: 6vw 5vw; width: 90vw; box-sizing: border-box; } }

.bmform_frmtext1199464 { padding: 0 15px; border-left: solid 5px #e60011; font-weight: bold; font-size: 18px; }
.bmform_frmtext1199464 span { color: #e60011; font-weight: bold; }
@media (max-width: 750px) { .bmform_frmtext1199464 { font-size: 3.5vw; padding: 0 2vw; } }

.bmform_frm1199464 { width: 100%; height: 50px; padding: 10px; border: none; box-sizing: border-box; margin: 10px 0 30px; font-size: 18px; }
@media (max-width: 750px) { .bmform_frm1199464 { height: 12vw; font-size: 3.5vw; margin: 2vw 0 8vw; } }

.select-wrapper { width: 260px; overflow: hidden; height: 50px; background: white; margin: 10px 0 30px; }

select { width: 250px; font-size: 18px; height: 50px; border: 0; border-radius: none; background: white; padding: 10px; }
@media (max-width: 750px) { select { font-size: 3.5vw; } }

.bmform_button1199464 { padding: 20px 0 10px; text-align: left; }
@media (max-width: 750px) { .bmform_button1199464 { padding: 0 0 4vw; } }

input[type="button"] { font-size: 22px; background: #e60011; color: white; width: 250px; height: 80px; border: none; border-radius: 10px; font-weight: bold; letter-spacing: 2px; }
@media (max-width: 750px) { input[type="button"] { width: 40vw; font-size: 4vw; height: 14vw; } }

input[type="text"], select { outline: none; }

/* 201908追加　blog */
.blog .in { padding: 25px 0 80px; width: 1200px; }
@media (max-width: 750px) { .blog .in { width: 100vw; padding: 3vw 5vw 12vw; box-sizing: border-box; } }
.blog .bread { height: 24px; margin-bottom: 20px; }
@media (max-width: 750px) { .blog .bread { margin-bottom: 2vw; } }
.blog .bread ul li { float: left; padding-right: 15px; }
@media (max-width: 750px) { .blog .bread ul li { font-size: 3.5vw; padding-right: 2vw; } }
.blog .bread ul li a { color: #e60011; text-decoration: none; }
.blog .bread ul li a:after { content: "›"; color: #474747; padding-left: 15px; }
@media (max-width: 750px) { .blog .bread ul li a:after { padding-left: 2vw; } }
.blog .category ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
.blog .category ul li a { height: 40px; width: 185px; border: solid 1px #e60011; text-decoration: none; color: #e60011; display: block; box-sizing: border-box; padding: 7px 0; }
@media (max-width: 750px) { .blog .category ul li a { width: calc(90vw / 3); padding: 1.5vw 0; font-size: 3.5vw; height: 9vw; border-bottom: none; border-right: none; } }
.blog .category ul li a:hover { background-color: #e60011; color: white; font-weight: bold; }
.blog .category ul li.select a { background: #e60011; color: white; pointer-events: none; font-weight: bold; }
@media (max-width: 750px) { .blog .category ul li:nth-of-type(3n) a { border-right: solid 1px #e60011; } }
@media (max-width: 750px) { .blog .category ul li:nth-of-type(4) a, .blog .category ul li:nth-of-type(5) a, .blog .category ul li:nth-of-type(6) a { border-bottom: solid 1px #e60011; } }
.blog h1 { font-size: 24px; border-bottom: solid 1px #e60011; width: calc(100% - 10px); text-align: left; padding: 5px 15px; border-left: solid 10px #e60011; font-weight: bold; color: #e60011; margin: 60px auto 50px; box-sizing: border-box; }
@media (max-width: 750px) { .blog h1 { font-size: 4vw; padding: 1vw 2vw 2vw; width: calc(92vw - 10px); margin: 5vw 0 4vw; } }
.blog .blogList { display: flex; flex-wrap: wrap; justify-content: space-between; }
@media (max-width: 750px) { .blog .blogList { margin-bottom: 5vw; } }
.blog .blogList .box { width: 250px; }
@media (max-width: 750px) { .blog .blogList .box { width: 43vw; } }
.blog .blogList .box a { text-decoration: none; }
.blog .blogList .box a:hover { opacity: 0.8; }
.blog .blogList .box a .txt_bx p { font-size: 16px; padding: 20px 15px; text-align: justify; line-height: 1.7; }
@media (max-width: 750px) { .blog .blogList .box a .txt_bx p { font-size: 3vw; padding: 3.5vw 2vw; margin-bottom: 2vw; } }
.blog .blogList .box a .txt_bx p::first-letter { color: #e60011; font-size: 24px; font-weight: bold; line-height: 0; }
@media (max-width: 750px) { .blog .blogList .box a .txt_bx p::first-letter { font-size: 5vw; } }
.blog .pager .page { display: flex; justify-content: center; }
.blog .pager .page li a { display: block; color: #e60011; box-sizing: border-box; width: 34px; height: 34px; text-align: center; border: solid 1px #bfbfbf; border-right: none; text-decoration: none; font-weight: bold; padding: 4px; }
@media (max-width: 750px) { .blog .pager .page li a { padding: 1.6vw; width: 9vw; height: 9vw; } }
.blog .pager .page li a:hover { background-color: #e60011; color: white; }
.blog .pager .page li.select a { background-color: #e60011; color: white; pointer-events: none; }
.blog .pager .page li.pre a, .blog .pager .page li.next a { padding: 2px; }
@media (max-width: 750px) { .blog .pager .page li.pre a, .blog .pager .page li.next a { padding: 1.4vw; } }
.blog .pager .page li:last-of-type a { border-right: solid 1px #bfbfbf; }

/* 201908追加　list */
.list .in { padding: 25px 0 30px; width: 1200px; }
@media (max-width: 750px) { .list .in { width: 100vw; padding: 3vw 5vw; box-sizing: border-box; } }
.list .in h1 { width: 1200px; text-align: left; border-left: 10px solid #e60011; border-bottom: 1px solid #e60011; font-size: 30px; padding: 9px 0 9px 20px; margin: 50px 0 30px; }
@media (max-width: 750px) { .list .in h1 { width: 90vw; font-size: 4.5vw; box-sizing: border-box; padding: 2vw 3vw; margin: 2vw 0; text-align: justify; } }
.list .in h1::first-letter { font-size: 42px; color: #e60011; }
@media (max-width: 750px) { .list .in h1::first-letter { font-size: 5vw; } }
.list .bread { height: 24px; margin-bottom: 20px; }
@media (max-width: 750px) { .list .bread { margin-bottom: 2vw; } }
.list .bread ul li { float: left; padding-right: 15px; }
@media (max-width: 750px) { .list .bread ul li { font-size: 3vw; padding-right: 2vw; text-align: left; } }
.list .bread ul li a { color: #e60011; text-decoration: none; }
.list .bread ul li a:after { content: "›"; color: #474747; padding-left: 15px; }
@media (max-width: 750px) { .list .bread ul li a:after { padding-left: 2vw; } }
@media (max-width: 750px) { .list .bread ul li:last-of-type { width: 54vw; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } }
.list .memo ul { display: flex; flex-wrap: wrap; }
.list .memo ul li { padding: 5px 0; font-size: 14px; }
@media (max-width: 750px) { .list .memo ul li { font-size: 2.6vw; padding: 1vw 0; } }
.list .memo ul li a { color: #e60011; font-weight: bold; }
.list .memo ul li a:after { content: ","; color: #474747; padding: 5px; }
@media (max-width: 750px) { .list .memo ul li a:after { padding-left: 2vw; } }
.list .memo ul li:first-of-type { background: #e60011; color: white; font-weight: bold; padding: 3px 17px 3px 27px; margin-right: 40px; position: relative; height: 30px; box-sizing: border-box; }
@media (max-width: 750px) { .list .memo ul li:first-of-type { padding: 1vw 1vw 1vw 3vw; margin-right: 6vw; height: 7vw; } }
.list .memo ul li:first-of-type span { position: absolute; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 20px solid #e60011; top: 0; bottom: 0; right: -20px; margin: auto; }
@media (max-width: 750px) { .list .memo ul li:first-of-type span { border-top: 3.4vw solid transparent; border-bottom: 3.4vw solid transparent; border-left: 4vw solid #e60011; right: -4vw; } }
.list .memo ul li:last-of-type a:after { display: none; }
.list .memo i { float: right; padding: 5px 0; }
@media (max-width: 750px) { .list .memo i { float: none; text-align: right; display: block; font-size: 3vw; padding: 0; } }
.list .detail { width: 1200px; margin: 0 auto; }
@media (max-width: 750px) { .list .detail { width: 90vw; } }
.list .detail h2 { background: #e60011; height: 60px; font-size: 28px; color: white; padding: 13px 25px; box-sizing: border-box; margin: 50px auto 0; text-align: justify; }
@media (max-width: 750px) { .list .detail h2 { font-size: 4.2vw; padding: 4vw; margin-top: 12vw; } }
.list .detail h2:first-of-type { margin-top: 20px; height: 100%; }
.list .detail h3 { font-size: 24px; color: #e60011; border-left: solid 10px #e60011; padding: 6px; margin: 50px auto 0; text-align: justify; }
@media (max-width: 750px) { .list .detail h3 { font-size: 4.2vw; margin-top: 12vw; } }
@media (max-width: 750px) { .list .detail .imgArea img { width: 90vw; } }
.list .detail .txtArea p { padding: 40px 30px; margin: 0; text-align: justify; font-size: 16px; }
@media (max-width: 750px) { .list .detail .txtArea p { padding: 4vw 3vw; font-size: 3.5vw; } }
.list .detail .txtArea p span { color: #e60011; font-weight: bold; }
.list .detail .txtArea p b { font-weight: bold; }
.list .detail .txtArea p ul li { font-weight: bold; }
.list .other { display: flex; justify-content: space-between; padding-top: 60px; border-top: solid 1px #e60011; }
@media (max-width: 750px) { .list .other { padding-top: 8vw; border: none; } }
.list .other .prev, .list .other .next { width: 388px; border: solid 1px #474747; }
@media (max-width: 750px) { .list .other .prev, .list .other .next { width: 43vw; } }
.list .other .prev a, .list .other .next a { text-decoration: none; }
.list .other .prev a p, .list .other .next a p { font-size: 14px; margin: 0; padding: 22px; border-bottom: 1px solid #474747; text-align: justify; }
@media (max-width: 750px) { .list .other .prev a p, .list .other .next a p { font-size: 3vw; padding: 2.5vw 4vw; } }
.list .other .prev a span, .list .other .next a span { background: #e60011; font-size: 16px; color: white; font-weight: bold; display: block; padding: 8px 0; text-align: center; }
@media (max-width: 750px) { .list .other .prev a span, .list .other .next a span { font-size: 3.2vw; padding: 1vw 0; } }
.list .other .prev a:hover p, .list .other .next a:hover p { font-weight: bold; }
.list .other .sns { width: 330px; }
@media (max-width: 750px) { .list .other .sns { width: 70vw; margin: 0 auto; } }
.list .other .sns p { text-align: center; margin-bottom: 10px; }
.list .other .sns ul { display: flex; justify-content: space-between; }
@media (max-width: 750px) { .list .other .sns ul li a img { width: 20vw; } }
.list .category { margin: 50px auto 60px; }
@media (max-width: 750px) { .list .category { margin: 10vw auto 12vw; } }
.list .category ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
.list .category ul li { text-align: center; }
.list .category ul li a { height: 40px; width: 185px; border: solid 1px #e60011; text-decoration: none; color: #e60011; display: block; box-sizing: border-box; padding: 7px 0; }
@media (max-width: 750px) { .list .category ul li a { width: calc(90vw / 3); padding: 1.5vw 0; font-size: 3.5vw; height: 9vw; border-bottom: none; border-right: none; } }
.list .category ul li a:hover { background-color: #e60011; color: white; font-weight: bold; }
.list .category ul li.select a { background: #e60011; color: white; pointer-events: none; font-weight: bold; }
@media (max-width: 750px) { .list .category ul li:nth-of-type(3n) a { border-right: solid 1px #e60011; } }
@media (max-width: 750px) { .list .category ul li:nth-of-type(4) a, .list .category ul li:nth-of-type(5) a, .list .category ul li:nth-of-type(6) a { border-bottom: solid 1px #e60011; } }
.list h4 { font-size: 24px; border-bottom: solid 1px #e60011; width: 100%; text-align: left; padding: 5px 15px; border-left: solid 10px #e60011; font-weight: bold; color: #e60011; margin: 120px auto 50px; box-sizing: border-box; }
@media (max-width: 750px) { .list h4 { font-size: 4vw; padding: 1vw 2vw 2vw; margin: 15vw 0 4vw; } }
.list .blogList { display: flex; flex-wrap: wrap; justify-content: space-between; }
@media (max-width: 750px) { .list .blogList { margin-bottom: 0; } }
.list .blogList .box { width: 250px; }
@media (max-width: 750px) { .list .blogList .box { width: 43vw; } }
.list .blogList .box a { text-decoration: none; }
.list .blogList .box a:hover { opacity: 0.8; }
.list .blogList .box a .txt_bx p { font-size: 16px; padding: 20px 15px; text-align: justify; line-height: 1.7; }
@media (max-width: 750px) { .list .blogList .box a .txt_bx p { font-size: 3vw; padding: 3.5vw 2vw; margin-bottom: 2vw; } }
.list .blogList .box a .txt_bx p::first-letter { color: #e60011; font-size: 24px; font-weight: bold; line-height: 0; }
@media (max-width: 750px) { .list .blogList .box a .txt_bx p::first-letter { font-size: 5vw; } }

/*# sourceMappingURL=style.css.map */
