@charset "UTF-8";
/* Scss Document */
/* Scss Document */
/* 全体
============================================================================================================*/
* { padding: 0px; margin: 0px; }

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%; font-weight: normal; }

.cp_fullscreenmenu { display: none; }

/* body
============================================================================================================*/
body { color: #000000; font-size: 1em; line-height: 1.8; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; margin-top: 0px; background-color: #FFFFFF; }

img { border-style: none; max-width: 100%; height: auto; vertical-align: bottom; line-height: 100%; }

a { text-decoration: none; color: #003399; }
a img { border-style: none; }

.clear { clear: both; }
.clear hr { display: none; }

a:hover { text-decoration: underline; color: #FF6600; }
a:hover img { opacity: 0.6; filter: alpha(opacity=60); }

ul li { list-style-type: none; }

.ankerbox { position: relative; }
.ankerbox a { position: absolute; top: -120px; }

.w-10 { width: 10%; }

.w-15 { width: 15%; }

.w-20 { width: 20%; }

.w-25 { width: 25%; }

.w-30 { width: 30%; }

.w-35 { width: 35%; }

.w-40 { width: 40%; }

.w-45 { width: 45%; }

.w-50 { width: 50%; }

.w-55 { width: 55%; }

.w-60 { width: 60%; }

.w-65 { width: 65%; }

.w-70 { width: 70%; }

.w-75 { width: 75%; }

.w-80 { width: 80%; }

.w-85 { width: 85%; }

.w-90 { width: 90%; }

.w-95 { width: 95%; }

.w-100 { width: 100%; }

/* Scss Document */
/* Scss Document */
header { position: fixed; background-color: rgba(255, 255, 255, 0.9); width: 100%; padding-top: 0px; padding-bottom: 10px; z-index: 980; border-top: 3px solid #265cd9; top: 0px; }
header .section { position: relative; }
header .mongol { position: absolute; right: 50px; bottom: -130%; }
header .mongol img { margin-bottom: 2px; }

.head-flex { display: flex; justify-content: space-between; align-items: center; }

.head-banner, nav ul { display: flex; justify-content: space-between; }

.head-rogo { flex-grow: 1; padding-top: 10px; }

.head-sdgs { flex-grow: 1; display: flex; justify-content: space-between; }
.head-sdgs a { margin: 1px; }

.head-menu { align-items: center; flex-basis: 50%; flex-basis: 60%; }

.lang { width: 100%; text-align: right; margin-bottom: 5px; display: flex; justify-content: flex-end; }
.lang a { margin-left: 5px; }

.head-banner a { margin-left: 5px; margin-right: 5px; }

nav ul { border-left: 1px solid #bdbdbd; margin-left: 10px; }

nav ul li { flex-grow: 1; border-right: 1px solid #bdbdbd; line-height: 100%; }
nav ul li:hover { cursor: pointer; cursor: hand; }
nav ul li a { color: black; font-family: 'Noto Serif JP', serif; display: flex; align-items: center; justify-content: center; height: 40px; font-size: 16px; white-space: nowrap; }
nav ul li a:hover { background: #fff1dd; color: #ff721e; text-decoration: none; }

.recruit-head { background-color: rgba(188, 1, 1, 0.9); padding-top: 0px; padding-bottom: 0px; }
.recruit-head .head-rogo { background-color: white; padding: 8px; flex-basis: 25%; }
.recruit-head nav { width: 100%; }
.recruit-head nav div { margin-left: 5px; }
.recruit-head nav ul { border-left: 0px solid white; }
.recruit-head nav ul li { border-right: 0px solid white; display: flex; justify-content: center; align-items: center; }

footer { background-color: #EFEFEF; margin-top: 50px; padding-top: 20px; padding-bottom: 20px; }
footer .section { display: flex; max-width: 1200px; margin-left: auto; margin-right: auto; justify-content: space-between; }
footer h2 { font-size: 80%; }
footer address { flex-basis: 60%; font-style: normal; }
footer address ul { margin-top: 20px; }
footer address ul li { margin-bottom: 10px; }
footer address ul .footlogo { display: flex; justify-content: space-between; }

.footmenu { flex-basis: 40%; display: flex; justify-content: space-between; font-size: 80%; }
.footmenu ul { margin-left: 20px; }
.footmenu ul li { margin-left: 5px; margin-bottom: 1px; }
.footmenu ul li a, .footmenu ul li h3 { color: black; background-image: url(../img2019/common/foot-arrow.png); background-repeat: no-repeat; background-position: left center; display: block; padding-left: 20px; }
.footmenu ul li ul { margin-top: 10px; margin-left: 10px; }
.footmenu ul li ul li a { background-image: url(url); padding-left: 5px; }

/* Scss Document btm */
.btn2 { max-width: 420px; margin-left: auto; margin-right: auto; }

.btn2 a { padding: 20px; border: 1px solid #BFBFBF; background-image: -webkit-linear-gradient(270deg, white 0%, #dbdbdb 100%); background-image: -moz-linear-gradient(270deg, white 0%, #dbdbdb 100%); background-image: -o-linear-gradient(270deg, white 0%, #dbdbdb 100%); background-image: linear-gradient(180deg, white 0%, #dbdbdb 100%); display: flex; justify-content: space-between; align-items: center; border-radius: 20px; }
.btn2 a:after, .btn2 a:before { content: '　'; }
.btn2 a:after { content: url("../img2019/common/btn-arroww2.png"); }
.btn2 a:hover { text-decoration: none; background-image: -webkit-linear-gradient(270deg, white 0%, #ffd5b8 100%); background-image: -moz-linear-gradient(270deg, white 0%, #ffd5b8 100%); background-image: -o-linear-gradient(270deg, white 0%, #ffd5b8 100%); background-image: linear-gradient(180deg, white 0%, #ffd5b8 100%); }

.btn3 { margin-top: 50px; margin-bottom: 50px; max-width: 350px; margin-left: auto; margin-right: auto; }
.btn3 a { background-color: #7A0305; display: block; padding: 20px; text-align: center; color: white; font-weight: 800; }
.btn3 a:hover { background-color: #FF5001; }

/* Scss Document */
.contact { margin-left: auto; margin-right: auto; }
.contact table { width: 100%; border-top: 1px solid gray; margin-top: 15px; }
.contact table th, .contact table td { border-bottom: 1px solid gray; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; }
.contact table th { width: 30%; text-align: left; padding-left: 30px; background-color: #e0e0e0; }
.contact table td input { padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; }
.contact dl { display: flex; justify-content: space-between; border-bottom: 1px solid gray; }
.contact dt { flex-basis: 30%; padding: 5px; background-color: #e0e0e0; }
.contact dd { flex-basis: 65%; padding-top: 5px; padding-bottom: 5px; }
.contact dd input { padding: 5px; }
.contact p { text-align: center; margin-top: 50px; }
.contact p input { padding: 15px; font-size: 130%; }

input[type="text"], textarea { width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* Scss Document index */
.top-video { padding-top: 80px; }

.top-video video { width: 100%; height: auto; }

.index-s { margin-top: 70px; }

.index-slide .flexslider { position: relative; }
.index-slide .flexslider .mv { position: absolute; width: 100%; z-index: 301; height: calc(100vw * 0.5); }
.index-slide .flexslider .sl-img img { width: 100%; }
.index-slide .slide-text { height: calc(100vw * 0.5); display: flex; justify-content: center; align-items: center; position: absolute; width: 100%; z-index: 310; }
.index-slide .slides { max-width: 960px; }

#slide_wrapp { position: relative; overflow: hidden; }

#slide_wrapp .slide_item { opacity: 0; transform: scale(1); transition: opacity 2s linear, transform 7.5s linear; position: relative; }

#slide_wrapp .slide_item:not(:first-child) { position: absolute; top: 0; left: 0; }

#slide_wrapp .slide_item.show_ { opacity: 1; }

#slide_wrapp .slide_item.zoom_ { transform: scale(1.2); }

#slide_wrapp .slide_item img { display: block; }

.mv-main { position: relative; }

.mv-main p { position: absolute; width: 100%; text-align: center; z-index: 999; }

.index-sec01 { padding-top: 50px; margin-bottom: 70px; }

.index-sec01 h2 { display: flex; margin-bottom: 20px; justify-content: space-between; }
.index-sec01 h2 img { margin-left: 20px; margin-right: 20px; }
.index-sec01 h2:after, .index-sec01 h2:before { content: '　'; flex-grow: 1; height: 4px; background-color: #66a384; margin-top: 20px; }

.index-sec01 ul { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; justify-content: center; }
.index-sec01 ul li { display: flex; justify-content: space-between; flex-direction: column; border: 4px solid #acacac; margin-top: 1%; margin-right: 0.2%; margin-bottom: 1%; margin-left: 0.2%; padding: 1.2%; flex-basis: 29%; }
.index-sec01 ul li a { background-color: #7a0002; text-align: center; width: 60%; padding-left: 10%; padding-right: 10%; padding-top: 10px; padding-bottom: 10px; margin-top: 20px; display: block; margin-left: auto; margin-right: auto; }
.index-sec01 ul li article { font-size: 90%; margin-top: 10px; margin-right: 10px; margin-bottom: 10px; margin-left: 10px; }

.index-sec02 { background-image: url(../img2019/index/vc-back.gif); padding-top: 60px; padding-bottom: 60px; }
.index-sec02 h2 { text-align: center; margin-bottom: 30px; }
.index-sec02 h2:after { background-color: #FFFFFF; content: '　'; height: 1px; display: block; width: 200px; margin-left: auto; margin-right: auto; margin-top: 20px; }
.index-sec02 article { color: #FFFFFF; text-align: center; margin-top: 30px; margin-bottom: 30px; padding-left: 100px; padding-right: 100px; }

.index-sec02-02 { min-width: 100px; min-height: 100px; position: relative; }
.index-sec02-02 .bg img { position: relative; width: 100%; height: auto; }
.index-sec02-02 div:before { content: '　'; height: 200px; }
.index-sec02-02 .bg-btn { position: absolute; top: 0px; z-index: 30; width: 100%; display: flex; justify-content: center; top: 45%; }
.index-sec02-02 .bg-btn a { background-color: #272727; display: block; text-align: center; max-width: 400px; padding-top: 30px; padding-bottom: 30px; z-index: 10; padding-left: 100px; padding-right: 100px; }
.index-sec02-02 ul { display: flex; justify-content: space-between; background-color: #FFFFFF; width: 100%; position: absolute; left: 0px; top: 0px; }
.index-sec02-02 ul li { width: 25%; }
.index-sec02-02 ul li img { height: auto; opacity: 0.9; filter: alpha(opacity=90); }

.index-sec02-03 { margin-top: 50px; background-image: url(../img2019/index/rec-gb.gif); }
.index-sec02-03 .section { padding-bottom: 50px; }

.index-sec02-04 .section ul { display: flex; justify-content: center; flex-wrap: wrap; max-width: 1200px; margin-left: auto; margin-right: auto; margin-top: 60px; margin-bottom: 60px; }

.index-sec02-04 .section ul li { margin: 0.5%; flex-basis: 49%; }

.index-sec02-05 { margin-bottom: 50px; }

.index-blog { padding-top: 50px; padding-bottom: 50px; }
.index-blog .section { max-width: 900px; margin-left: auto; margin-right: auto; }

.index-blog1 { background-color: #4186ff; }

.index-blog3 { background-color: #ad1a1a; }

.index-blog dl { display: flex; justify-content: center; margin-bottom: 50px; }
.index-blog dl dt { flex-basis: 30%; }
.index-blog dl dd { flex-basis: 66%; margin: 2%; }

.index-blog ul { max-width: 800px; margin-left: auto; margin-right: auto; margin-top: 30px; margin-bottom: 30px; display: flex; flex-direction: row; flex-wrap: wrap; }

.index-blog li { flex-basis: 30%; }
.index-blog li time { display: block; font-size: 80%; }

.index-blog1 { color: white; }
.index-blog1 a { color: white; }
.index-blog1 li { border-bottom: 1px dotted #fff; }

.index-blog3 { color: white; }
.index-blog3 a { color: white; }
.index-blog3 li { border-bottom: 0px dotted #fff; }

.index-blog2 a { color: black; }

.index-sec02-03 .recruit { text-align: center; }

/* Scss Document contents */
main { min-height: 80vh; }

.page-head .flexslider { position: relative; height: calc(100vw * 0.32); }
.page-head .flexslider .page-head-bk .slides { position: absolute; width: 100%; z-index: 300; }
.page-head .flexslider .mv .slides { padding-top: 50px; max-width: 800px; }
.page-head .flexslider .page-head-bk { position: absolute; width: 100%; top: 0; }
.page-head .flexslider .mv { height: calc(100vw * 0.32); display: flex; justify-content: center; align-items: center; position: absolute; width: 100%; z-index: 310; }
.page-head .flexslider .mv p { margin-top: 50px; padding-left: 20px; padding-right: 20px; }
.page-head .flexslider .mv p:after { content: '　'; background-color: #FFFFFF; width: 100px; display: block; height: 2px; margin-left: auto; margin-right: auto; margin-top: 30px; }
.page-head .flexslider .mv p img { max-height: 70px; }

.section { max-width: 1100px; min-width: 748px; margin-left: auto; margin-right: auto; padding-right: 50px; }

.red { color: red; }

.blue { color: blue; }

.top { text-align: right; margin: 20px; }

.submenu { padding: 5px; }
.submenu .section { align-items: center; }
.submenu ul { display: flex; justify-content: space-between; }
.submenu ul li { margin: 5px; flex-grow: 1; }
.submenu ul a { color: #292929; display: block; padding: 8px; border-radius: 8px; background: #c52528; color: white; box-shadow: 1px 1px 5px #aaa; border: 2px solid white; }
.submenu ul a:before { content: '▼'; margin-right: 5px; }
.submenu ul a:hover { background: #ff9e00; text-decoration: none; }

.contents-body h1 { width: 100vw; background-size: 100%; background-repeat: no-repeat; margin-bottom: 60px; }
.contents-body h1 .h1-cover { width: 100vw; height: calc(100vw * 0.32); }
.contents-body h1 .h1-cover .section { height: 100%; display: flex; justify-content: center; align-items: center; }
.contents-body h1 .h1-cover .section p { margin-top: 50px; padding-left: 20px; padding-right: 20px; }
.contents-body h1 .h1-cover .section p:after { content: '　'; background-color: #FFFFFF; width: 100px; display: block; height: 2px; margin-left: auto; margin-right: auto; margin-top: 50px; }
.contents-body h1 .h1-cover .section p img { max-height: 55px; }
.contents-body h2 { margin-top: 65px; margin-bottom: 30px; text-align: center; }
.contents-body h2:after { content: '　'; width: 60px; margin-left: auto; margin-right: auto; margin-top: 30px; margin-bottom: 50px; display: block; background-color: black; height: 5px; }
.contents-body section { max-width: 1200px; margin-left: auto; margin-right: auto; }

.about { max-width: 1050px; margin-left: auto; margin-right: auto; }
.about table { width: 100%; margin-bottom: 20px; font-size: 90%; }
.about table th, .about table td { padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; border: 1px solid #666666; }
.about table th { background-color: #ede4d9; text-align: left; width: 20%; white-space: nowrap; }
.about h6 { margin-top: 30px; font-size: 110%; padding: 5px; margin-bottom: 5px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 1px; border-left-width: 0px; border-top-style: dotted; border-right-style: dotted; border-bottom-style: dotted; border-left-style: dotted; border-top-color: #999999; border-right-color: #999999; border-bottom-color: #999999; border-left-color: #999999; }
.about iframe { width: 100%; }
.about .map-info { display: flex; justify-content: space-between; margin-left: auto; margin-right: auto; margin-top: 10px; margin-bottom: 20px; }
.about .map-info dt { flex-basis: 40%; }
.about .map-info dt img { max-width: 100%; height: auto; border: 2px solid white; -webkit-box-shadow: 3px 3px 3px #b8b8b8; box-shadow: 3px 3px 3px #b8b8b8; }
.about .map-info dd { flex-basis: 58%; font-size: 90%; }
.about .map-info dd p { margin-left: 3px; }
.about .map-info dd ul { margin-bottom: 5px; margin-top: 15px; font-size: 90%; margin-left: 10px; }
.about .map-info dd ul li { display: flex; background: #f3f3f3; border-bottom: 1px gray dotted; }
.about .map-info dd ul li span { flex-basis: 30%; background: #272727; margin-right: 5px; color: white; padding-left: 5px; }
.about .map-info dd ul li article { flex-basis: 63%; }
.about .map-info dd ul li td { text-align: center; }

.about-navi ul { display: flex; justify-content: center; }
.about-navi ul li { flex-basis: 30%; margin-left: 10px; margin-right: 10px; }
.about-navi ul li:first-child a { background-color: #c3deff; }
.about-navi ul li:last-child a { background-color: #d8f0d2; }
.about-navi ul li a { display: block; text-align: center; padding-top: 13px; padding-bottom: 13px; border-radius: 15px; }
.about-navi ul li a:hover { background-color: darkorange; }

.philosophy { max-width: 1050px; margin-left: auto; margin-right: auto; }
.philosophy h3 { background-color: #265482; border-radius: 5px; display: flex; justify-content: space-between; align-items: center; margin-bottom: 120px; }
.philosophy h3 span { padding: 10px; color: white; font-size: 180%; font-family: 'Noto Serif JP', serif; font-weight: 700; }
.philosophy h3:before, .philosophy h3:after { width: 3px; background: white; content: "　"; margin-left: 20px; margin-right: 20px; display: block; transform: rotate(20deg) scale(1, 2.5); }
.philosophy h3 img { max-width: 600px; height: auto; }
.philosophy h4 { font-size: 160%; font-family: 'Noto Serif JP', serif; text-align: center; font-weight: 700; }
.philosophy .ph01 h4 { font-size: 260%; }
.philosophy .ph02 h4 { font-size: 360%; font-weight: 900; }
.philosophy .ph03 h4 { font-size: 260%; }
.philosophy .ph03 article { font-family: 'Noto Serif JP', serif; font-size: 160%; }
.philosophy .ph04 h4 { font-size: 320%; font-weight: 900; }
.philosophy section { width: 90%; margin-left: auto; margin-right: auto; margin-bottom: 120px; }
.philosophy section img { display: block; margin-left: auto; margin-right: auto; }
.philosophy section article { margin-top: 40px; }

.chorei { max-width: 1050px; margin-left: auto; margin-right: auto; }
.chorei h3 { display: flex; align-items: center; margin-bottom: 20px; border-bottom: 5px solid #E1E1E1; }
.chorei h3:before { content: url("../img2019/chorei/sec03-h3-a.png"); margin-right: 20px; }
.chorei h3 img { max-width: 600px; }
.chorei dl { display: flex; justify-content: space-between; max-width: 950px; margin-left: auto; margin-right: auto; flex-direction: row-reverse; align-items: center; margin-bottom: 50px; }
.chorei dt { flex-basis: 40%; }
.chorei dd { flex-basis: 55%; line-height: 190%; }

.chorei-main { background-image: url(../img2019/common/bk-sline.gif); padding: 2%; }
.chorei-main section { background-color: #FFFFFF; padding: 3%; }
.chorei-main section article { text-align: center; }
.chorei-main section article img { margin: 3%; }

.network article { text-align: center; margin-bottom: 80px; }
.network h3 { font-size: 120%; color: #1D317C; text-align: center; font-weight: 800; margin-top: 50px; }
.network h3:after { margin-left: auto; margin-right: auto; content: '　'; height: 3px; background-color: #70a0c2; border-left: 80px solid #206aa0; border-right: 80px solid #206aa0; border-bottom: 0 solid #206aa0; border-top: 0 solid #206aa0; display: block; width: 320px; margin-top: 20px; margin-bottom: 40px; transform: scale(1, 1.1); }
.network ul { max-width: 950px; margin-left: auto; margin-right: auto; }
.network h4 { border-radius: 10px; border: 4px solid #206aa0; margin-bottom: 50px; margin-top: 20px; display: flex; }
.network h4:before { content: url("../img2019/network/point.png"); background-color: #206aa0; padding: 30px; margin-right: 10px; }
.network h4 p { display: flex; align-items: center; }
.network div { display: flex; justify-content: center; }
.network div P { padding: 2%; flex-basis: 46%; text-align: center; }
.network .photo-list { flex-direction: row; flex-wrap: wrap; display: flex; }

.baning .title { text-align: center; margin-bottom: 50px; }
.baning .baning-sec01 { background-image: -webkit-linear-gradient(270deg, white 77.2%, #cff8f5 100%); background-image: -moz-linear-gradient(270deg, white 77.2%, #cff8f5 100%); background-image: -o-linear-gradient(270deg, white 77.2%, #cff8f5 100%); background-image: linear-gradient(180deg, white 77.2%, #cff8f5 100%); padding-bottom: 30px; }
.baning .baning-sec01 ul { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; max-width: 1200px; margin-left: auto; margin-right: auto; }
.baning .baning-sec01 ul li { flex-basis: 32%; }
.baning .baning1:after { display: block; content: url("../img2019/baning/sec01-bk.png"); text-align: center; padding-bottom: 50px; }
.baning .baning-sec02 { background-color: #fffada; padding-top: 30px; padding-bottom: 30px; }
.baning .baning-sec02 h3 { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; }
.baning .baning-sec02 h3:before, .baning .baning-sec02 h3:after { content: '　'; height: 1px; background-color: #868686; flex-grow: 1; }
.baning .baning-sec02 h3 img { margin-left: 10px; margin-right: 10px; }
.baning .baning-sec02 h4 { border-radius: 10px; text-align: center; padding-top: 8px; padding-right: 8px; padding-left: 8px; padding-bottom: 8px; margin-bottom: 20px; border: 5px solid #010101; background-color: #ffd57b; margin-bottom: 20px; }
.baning .baning-sec02 .other h4 { background-color: white; border: 5px solid #727272; }
.baning .baning-sec02 section { background-color: white; border-radius: 10px; padding: 22px; margin-bottom: 100px; }
.baning .baning-sec02 section .sec02-flex { display: flex; justify-content: space-between; margin-bottom: 50px; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box { flex-basis: 49%; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box div { border-radius: 5px; -webkit-box-shadow: 1px 1px 3px 2px #D0D0D0; box-shadow: 1px 1px 3px 2px #D0D0D0; padding: 15px; text-align: center; margin: 10px; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box div h5 { font-size: 110%; margin-bottom: 10px; font-weight: bold; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box div p { margin-top: 10px; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article { margin-top: 15px; background-color: #FFAEB0; background-image: url(../img2019/baning/ar-bk.png); padding: 8px; font-size: 80%; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote { background-color: white; display: block; padding: 10px; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote ul li { margin-left: 25px; list-style-type: circle; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote ol li { display: flex; justify-content: space-between; width: 90%; margin-left: auto; margin-right: auto; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote dl { display: flex; flex-basis: 80%; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote dt { flex-basis: 20%; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote b { margin-top: 20px; font-size: 120%; text-align: center; display: block; }
.baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote b span { color: red; font-size: 120%; }
.baning .baning-sec02 section .sec02-flex .other article { background-color: gray; }
.baning .baning-sec02 .result { text-align: center; }
.baning .baning-sec02 .result dt { border-radius: 10px; margin-bottom: 15px; background-color: #7c0000; padding: 25px; }
.baning .baning-sec03 { background-image: -webkit-linear-gradient(270deg, #fff465 78.24%, white 100%); background-image: -moz-linear-gradient(270deg, #fff465 78.24%, white 100%); background-image: -o-linear-gradient(270deg, #fff465 78.24%, white 100%); background-image: linear-gradient(180deg, #fff465 78.24%, white 100%); padding-top: 80px; padding-bottom: 80px; }
.baning .baning-sec03 .title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; }
.baning .baning-sec03 .title:before, .baning .baning-sec03 .title:after { content: '　'; height: 40px; flex-grow: 1; background-image: url(../img2019/common/h1-cover.png); }
.baning .baning-sec03 .title img { margin-left: 10px; margin-right: 10px; }
.baning .baning-sec03 section { background-color: white; padding: 20px; }
.baning .baning-sec03 section ul { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; align-items: center; }
.baning .baning-sec03 section ul li { flex-basis: 49%; margin-bottom: 15px; }
.baning .baning-sec03 section ul li p { text-align: center; margin-top: 10px; }
.baning .baning-sec03 .sec-03-btm { text-align: center; margin-top: 30px; }

.konpo .title { text-align: center; margin-bottom: 50px; }
.konpo .no { margin-left: 10px; position: relative; }
.konpo .no img { display: block; position: absolute; bottom: -10px; }
.konpo section { padding-bottom: 150px; }
.konpo section dl { display: flex; justify-content: space-between; padding: 15px; max-width: 580px; -webkit-box-shadow: 0px 0px 30px 15px #DDDDDD; box-shadow: 0px 0px 30px 15px #DDDDDD; margin-left: 15px; margin-right: 15px; }
.konpo section dl dt { flex-basis: 50%; }
.konpo section dl dd { flex-basis: 48%; }
.konpo section dl dd h3 { font-size: 120%; font-weight: 700; margin-bottom: 10px; }
.konpo section dl dd h3 span { font-size: 80%; font-weight: 100; display: block; }
.konpo section dl dd article { margin-left: 10px; font-size: 80%; }
.konpo .sec01-a dl { margin-left: auto; margin-right: auto; }
.konpo .sec01-a div { margin-left: auto; margin-right: auto; max-width: 580px; }
.konpo .sec01-b { display: flex; justify-content: space-between; padding-bottom: 50px; }
.konpo .sec01-b dl { width: 580px; min-width: 250px; }
.konpo .sec01-b .sec01-b1 h3 { color: blue; }
.konpo .sec01-b .sec01-b2 { border: 5px solid #FFA600; }
.konpo .sec01-b .sec01-b2 h3 { color: red; }
.konpo .result { text-align: center; margin: 20px; }
.konpo .shoujou { display: flex; justify-content: space-between; margin-bottom: 30px; }
.konpo .shoujou li { margin: 10px; flex-basis: 30%; }
.konpo .sec02 { display: flex; justify-content: space-between; max-width: 1200px; margin-left: auto; margin-right: auto; }
.konpo .sec02 div { padding: 15px; max-width: 580px; -webkit-box-shadow: 0px 0px 30px 15px #DDDDDD; box-shadow: 0px 0px 30px 15px #DDDDDD; margin-left: 15px; margin-right: 15px; flex-basis: 48%; padding: 25px; min-width: 300px; }
.konpo .sec02 div h3 { text-align: center; margin-bottom: 20px; }
.konpo .sec02 div article { display: flex; justify-content: center; }
.konpo .sec04 { background-color: #FFFCEE; padding-top: 40px; padding-bottom: 40px; }
.konpo .sec04 article { text-align: center; margin-bottom: 40px; }
.konpo .sec04 .sec04-flex { display: flex; justify-content: center; flex-direction: row; flex-wrap: wrap; }
.konpo .sec04 .sec04-flex div { max-width: 400px; background-color: white; margin: 15px; }
.konpo .sec04 .sec04-flex div img { margin-bottom: 15px; }
.konpo .sec04 .sec04-flex div h3 { text-align: center; margin-bottom: 15px; }
.konpo .sec04 .sec04-flex div ul { margin-right: 5%; margin-left: 5%; padding-bottom: 30px; }
.konpo .sec04 .sec04-flex div ul li { margin-left: 15px; list-style-type: square; }
.konpo .sec05 .sec02 { text-align: center; }

.banin03-ul ul { margin: 15px; }
.banin03-ul ul li { margin-bottom: 20px; }
.banin03-ul ul li h5 { border-bottom: 1px dotted #6B6B6B; font-weight: 800; margin-bottom: 10px; font-size: 120%; }
.banin03-ul ul li div { margin-left: 20px; justify-content: space-between; }

.souko { margin-bottom: 50px; display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
.souko li { flex-basis: 25%; padding: 2%; margin: 2%; position: relative; background-image: -webkit-linear-gradient(270deg, white 0%, #e8e8e8 100%); background-image: -moz-linear-gradient(270deg, white 0%, #e8e8e8 100%); background-image: -o-linear-gradient(270deg, white 0%, #e8e8e8 100%); background-image: linear-gradient(180deg, white 0%, #e8e8e8 100%); border-radius: 10px; }
.souko li span { position: absolute; top: -20px; left: -20px; }
.souko li img { display: block; margin-left: auto; margin-right: auto; }
.souko li article { margin-bottom: 0px; margin-top: 10px; font-size: 80%; text-align: left; }

.ryutsu .title { text-align: center; margin-bottom: 50px; }
.ryutsu .ryutsu-qa dl { background-color: #cce1f1; padding: 30px; margin-bottom: 20px; }
.ryutsu .ryutsu-qa dl dt { color: #0d306f; font-weight: 800; font-size: 130%; display: flex; }
.ryutsu .ryutsu-qa dl dt:before { content: url("../img2019/ryutsu/check.png"); margin-right: 15px; }
.ryutsu .ryutsu-qa dl dd { background-color: white; padding: 25px; position: relative; }
.ryutsu .ryutsu-qa dl dd:before { content: '▼'; color: #cce1f1; position: absolute; transform: scale(5, 2); display: block; top: -5px; left: 40px; }
.ryutsu .img { text-align: center; margin-bottom: 50px; }
.ryutsu .img-article { text-align: center; margin-bottom: 50px; }
.ryutsu .sec04 dl { display: flex; justify-content: space-between; }
.ryutsu .sec04 dl dt { flex-basis: 48%; }
.ryutsu .sec04 dl dd { flex-basis: 50%; }
.ryutsu .sec04 dl dd article { margin-bottom: 15px; }
.ryutsu .sec05 { margin-bottom: 50px; }
.ryutsu .sec05 ul { display: flex; justify-content: space-between; }
.ryutsu .sec05 ul li { flex-basis: 28%; padding: 2%; margin: 1%; border: 1px solid #C9C9C9; }
.ryutsu .sec05 ul h3 { font-size: 110%; text-align: center; border-bottom: 1px dotted #878787; font-weight: 800; margin-bottom: 5px; padding-bottom: 5px; }
.ryutsu .sec05 ul img { margin-bottom: 10px; }
.ryutsu .sec05 ul article { text-align: left; margin-bottom: 0px; font-size: 80%; }

.case { margin-left: auto; margin-right: auto; width: 95%; }
.case dl { display: flex; justify-content: space-between; margin-bottom: 20px; border-top-right-radius: 15px; border-bottom-right-radius: 15px; -webkit-box-shadow: 2px 2px 3px #4F4F4F; box-shadow: 2px 2px 3px #4F4F4F; }
.case dl dt { flex-basis: 30%; }
.case dl dt img { display: block; }
.case dl dd { flex-basis: 64%; padding: 2%; }
.case dl h3 { font-size: 120%; padding-bottom: 15px; margin-bottom: 10px; }
.case dl h3:after { height: 10px; content: '　'; background-image: url(../img2019/common/bk-sline.gif); display: block; margin-top: 10px; }
.case dl p { margin-top: 10px; text-align: right; margin-bottom: 10px; }
.case dl .comment { border-radius: 10px; font-size: 90%; background: #e8e7e3; padding: 15px; color: inherit; }
.case dl .comment:before { content: "担当者より一言"; display: block; font-size: 110%; border-bottom: 1px white gray; margin-bottom: 8px; }

.recruit { padding-top: 60px; }
.recruit .senpaivoice { border: 1px solid #312b2c; background-image: linear-gradient(180deg, #f0e9d5 0%, white 31.61%); }
.recruit .senpaivoice dl { padding: 10px; }
.recruit .senpaivoice dl dt { font-size: 200%; text-align: center; font-weight: 700; font-family: 'Noto Serif JP', serif; color: #262626; letter-spacing: 20px; }
.recruit .senpaivoice dl dd { display: flex; justify-content: space-between; width: 90%; margin-left: auto; margin-right: auto; }
.recruit .senpaivoice dl dd a { flex-basis: 42%; }
.recruit section { padding-bottom: 150px; }
.recruit .sec01 { text-align: center; margin-bottom: 50px; }
.recruit .sec02 ul { display: flex; justify-content: space-between; }
.recruit .sec02 ul li { margin: 10px; flex-basis: 48%; }
.recruit .sec3-ul { margin-left: auto; margin-right: auto; width: 95%; }
.recruit .rec-voice1 { position: relative; }
.recruit .rec-voice1 div { background-color: #241a1a; display: flex; justify-content: space-between; padding: 3%; position: absolute; top: 35%; }
.recruit .rec-voice1 div a { display: block; width: 30%; }

.rec .h1 { font-size: 320%; text-align: center; margin-bottom: 40px; font-weight: 700; font-family: 'Noto Serif JP', serif; color: #262626; }
.rec h2 { font-size: 220%; font-family: 'Sawarabi Mincho', sans-serif; margin-bottom: 10px; }
.rec h2:after { display: none; }
.rec .contact { max-width: 700px; margin-left: auto; margin-right: auto; }
.rec .contact dt { background: #ffcb91; }

.know h3 { font-size: 120%; font-weight: 800; color: #485ca7; }
.know h3:before { content: '■'; font-size: 120%; }
.know ul { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; margin-bottom: 30px; }
.know ul li { flex-basis: 48%; padding: 1%; }

.one-day { padding-top: 60px; }
.one-day .time { position: relative; }
.one-day .time span { border-radius: 50%; border-left: 1px solid gray; border-right: 0px solid #FFFFFF; border-bottom: 1px solid gray; border-top: 1px solid gray; display: flex; justify-content: center; align-items: center; height: 130px; width: 130px; position: absolute; left: -120px; top: 0; }
.one-day .time article { padding-top: 50px; padding-bottom: 30px; }
.one-day ul { margin-left: auto; width: 95%; display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
.one-day ul li { width: 42%; position: relative; padding-bottom: 50px; }
.one-day ul li:nth-child(even) { padding-top: 200px; }
.one-day ul li:nth-child(even):after { display: block; position: absolute; content: url("../img2019/1day01/arrow2.png"); bottom: -40px; left: -140px; width: 14%; }
.one-day ul li:nth-child(even):before { display: block; position: absolute; content: url("../img2019/1day01/arrow1.png"); top: 380px; left: -140px; width: 14%; }
.one-day ul li:last-child:after { display: none; }

.voice-head { text-align: center; margin-top: 60px; }
.voice-head p { width: 100%; left: 0px; top: 0px; }
.voice-head img { margin-bottom: 30px; }
.voice-head:after { display: block; height: 100px; content: '　'; width: 100%; background-image: url(../img2019/common/bk-sline.gif); }

.qa { padding-top: 30px; }
.qa li { margin-bottom: 30px; }
.qa li dl { display: flex; justify-content: space-between; }
.qa li dl dt { flex-basis: 30%; padding: 1%; border-right: 8px solid #D3D3D3; font-size: 120%; }
.qa li dl dd { flex-basis: 60%; padding: 1%; }
.qa li dl h4 { margin: 15px; }

#privacy_box { padding: 30px; margin-bottom: 50px; border: #c7c7c7 3px solid; border-radius: 15px; }

.privacy_box { margin-left: 15px; margin-right: 15px; }
.privacy_box ul { margin-left: 20px; }
.privacy_box ul li { margin-left: 20px; margin-bottom: 30px; }
.privacy_box ul li .privacy01 { font-size: 120%; font-weight: 800; padding-top: 10px; padding-right: 10px; padding-bottom: 10px; border-bottom: 1px dotted gray; margin-bottom: 10px; }
.privacy_box .privacy02 { text-align: right; }

.slides li { position: relative; }

.slides li div { position: absolute; bottom: 15px; width: 90%; left: 5%; background-image: url(img/factory/point.png); background-repeat: no-repeat; background-position: left top; padding-top: 40px; }

.slides li div span { display: block; text-align: center; background-color: rgba(0, 0, 0, 0.6); color: white; font-weight: bold; font-size: 140%; border-top: 1px solid white; border-bottom: 1px solid white; padding-top: 20px; padding-bottom: 20px; }

.recruit-title1 { background-color: #ffa229; padding: 15px; border-radius: 15px; margin-bottom: 30px; }

.recruit-title2 { width: 95%; margin-left: auto; margin-right: auto; margin-bottom: 10px; font-weight: 500; transform: scale(1, 1.1); border-bottom: 1px dotted #a3a3a3; }

.recruit-box1 { width: 95%; margin-left: auto; margin-right: auto; margin-bottom: 50px; border-top: 1px solid #dbdbdb; }
.recruit-box1 th, .recruit-box1 td { padding: 8px; text-align: left; border-bottom: 1px solid #dbdbdb; }
.recruit-box1 th { width: 20%; background-color: rgba(153, 197, 255, 0.3); }

.case h3 { margin-bottom: 30px; }
.case h3 p { display: flex; justify-content: space-between; font-size: 110%; padding-bottom: 10px; }
.case h3 p span { font-size: 80%; }
.case h3:after { display: block; height: 10px; content: '　'; width: 100%; background-image: url(../img2019/common/bk-sline.gif); }
.case ul { display: flex; justify-content: space-between; margin-bottom: 20px; }
.case article { width: 95%; margin-left: auto; margin-right: auto; margin-bottom: 10px; }

.blog-head { padding-top: 70px; }
.blog-head img { width: 100%; height: auto; }

.blog { display: flex; justify-content: space-between; max-width: 1000px; margin-left: auto; margin-right: auto; }
.blog .blog-a { flex-basis: 80%; }
.blog .blog-a h4 { border-radius: 10px; margin-bottom: 20px; padding: 15px; background-color: #d0cdc0; }
.blog .blog-a h4 a { color: black; }
.blog .blog-a .box2 { padding-bottom: 20px; border-bottom: 1px solid gray; margin-bottom: 20px; }
.blog .blog-a .day { text-align: right; margin-bottom: 20px; }
.blog .blog-a p { margin-bottom: 15px; min-height: 30px; }
.blog .blog-b { flex-basis: 15%; }
.blog .blog-b ul { margin-bottom: 30px; }
.blog .blog-b li { margin-bottom: 10px; }
.blog .blog-b li a { color: black; }

.contents-body .sdgs { padding-top: 150px; }
.contents-body .sdgs .sdgs-head { margin-left: auto; margin-right: auto; max-width: 1200px; }
.contents-body .sdgs .sdgs-head img { display: block; margin-bottom: 100px; margin-left: auto; margin-right: auto; }
.contents-body .sdgs .box { background-image: url(../img2019/common/bk-sline.gif); padding: 3%; margin-bottom: 100px; }
.contents-body .sdgs .box article { padding: 3%; background-color: white; }
.contents-body .sdgs .box article p { margin-bottom: 15px; }
.contents-body .sdgs section { padding-top: 80px; padding-bottom: 80px; background-repeat: no-repeat; max-width: 100%; background-position: center center; }
.contents-body .sdgs section .sdgs-inner { max-width: 1000px; margin-left: auto; margin-right: auto; }
.contents-body .sdgs section .title { text-align: center; margin-bottom: 50px; }
.contents-body .sdgs section dl { display: flex; justify-content: space-between; padding: 3%; background-color: rgba(0, 0, 0, 0.6); color: white; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; }
.contents-body .sdgs section .rv { flex-direction: row-reverse; }
.contents-body .sdgs section dt { flex-basis: 20%; }
.contents-body .sdgs section dd { flex-basis: 75%; }
.contents-body .sdgs section dd h3 { font-size: 160%; font-weight: 800; transform: scale(1, 0.98); }
.contents-body .sdgs section dd article { padding: 15px; font-weight: 800; transform: scale(1, 0.98); }
.contents-body .sdgs section dd article a { color: white; }
.contents-body .sdgs section dd p { margin-bottom: 30px; }
.contents-body .sdgs section ul { display: flex; justify-content: center; margin-top: 50px; max-width: 1600px; margin-left: auto; margin-right: auto; }
.contents-body .sdgs section ul li { margin: 1%; -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); flex-basis: 23%; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); background-color: rgba(0, 0, 0, 0.6); }
.contents-body .sdgs section ul li article { bottom: 0; width: 98%; padding: 1%; color: white; font-size: 90%; }
.contents-body .sdgs section ul li img { width: 100%; height: auto; }
.contents-body .sdgs .sec01 { background-image: url(../sdgs/img/sec01-bk.jpg); }
.contents-body .sdgs .sec02 { background-image: url(../sdgs/img/sec02-bk.jpg); }
.contents-body .sdgs .sec03 { background-image: url(../sdgs/img/sec03-bk.jpg); }
.contents-body .sdgs .sec04 { background-image: url(../sdgs/img/sec04-bk.jpg); }
.contents-body .sdgs .sec05 { background-image: url(../sdgs/img/sec05-bk.jpg); }

@media screen and (min-width: 1600px) { .contents-body .sdgs section { background-size: 100%; } }
.bms { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
.bms h5 { flex-basis: 100%; margin-bottom: 15px; margin-top: 50px; }
.bms .box4 { flex-basis: 45%; margin-left: 3%; }
.bms .bms-img { flex-basis: 45%; margin-right: 3%; margin-bottom: 30px; }
.bms .bms-img img { display: block; margin-bottom: 5px; }

.facebook ul { max-width: 800px; margin-left: auto; margin-right: auto; display: flex; justify-content: space-between; }
.facebook ul li { width: 33%; margin: 0 auto; padding: 10px; text-align: center; }
.facebook ul li .fb-page { background: rgba(196, 196, 196, 0.3); width: 100%; }
.facebook ul li .fb-container { width: 500px; }

.vc { max-width: 800px; margin-left: auto; margin-right: auto; }

.support .section { margin-bottom: 100px; }
.support .sec01 { text-align: center; padding: 20px; }
.support .sec01 img { display: block; }
.support .h2 { background-repeat: no-repeat; padding: 20px; background-position: center center; background-size: 100%; width: 100%; display: flex; justify-content: center; align-items: center; margin-bottom: 60px; }
.support ul li { margin-bottom: 40px; }
.support ul li dl { display: flex; justify-content: space-between; align-items: center; }
.support ul li dl dt { flex-basis: 50%; }
.support ul li dl dd { flex-basis: 48%; }
.support ul li dl dd h3 { font-size: 120%; font-weight: 800; padding: 5px; border-bottom: 10px solid #ffc64c; margin-bottom: 20px; }
.support ul li dl dd article { padding: 5px; }
.support ul li:nth-child(even) dl { flex-direction: row-reverse; }
.support .sec02 .h2 { background-image: url(../img2019/support2/sec02-h2-bk.jpg); }
.support .sec03 .h2 { background-image: url(../img2019/support2/sec03-h2-bk.jpg); }
.support .sec04 .h2 { background-image: url(../img2019/support2/sec04-h2-bk.jpg); }
.support .sec05 .h2 { background-image: url(../img2019/support2/sec05-h2-bk.jpg); }

.movie { margin-top: 30px; margin-bottom: 30px; max-width: 800px; margin-left: auto; margin-right: auto; }
.movie div { width: 100%; /*横幅いっぱいにwidthを指定*/ padding-bottom: 56.25%; /*高さをpaddingで指定(16:9)*/ height: 0px; /*高さはpaddingで指定するためheightは0に*/ position: relative; }
.movie div iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.blog-ac-head { border-bottom: 5px solid silver; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; font-size: 120%; font-weight: 800; color: #363636; margin-bottom: 20px; }

.case-list { display: flex; flex-direction: row; flex-wrap: wrap; }
.case-list li { flex-basis: 30%; margin: 1%; }
.case-list li a { display: block; position: relative; color: white; font-size: 80%; white-space: nowrap; overflow-x: hidden; }
.case-list li a span { display: block; bottom: 0; background-color: rgba(0, 0, 0, 0.5); position: absolute; width: 98%; padding: 1%; z-index: 950; }

.case-list .video-li { flex-basis: 48%; }

.case-list .video-li a { position: static; white-space: normal; }

.case-list .video-li a span { position: static; background-color: rgba(0, 0, 0, 0.9); min-height: 50px; }

#newsblock .case-list li, #newsblock2 .case-list li { flex-basis: 23%; }

#newsblock, #newsblock2 { margin-bottom: 50px; }

#newsblock p, #newsblock2 p { display: flex; justify-content: center; margin-top: 10px; }

#newsblock p a, #newsblock2 p a { display: block; color: white; line-height: 100%; padding: 15px; }

#newsblock p a { background: #FF7E00; }

#newsblock2 p a { background: #1ABC41; }

#newsblock p a:hover, #newsblock2 p a:hover { background: #FF0004; }

.kogyo h2 { font-family: 'Noto Sans JP', sans-serif; font-size: 180%; }
.kogyo .info { display: flex; justify-content: space-between; }
.kogyo .info li { flex-basis: 48%; border: 3px #cbcbcb solid; border-radius: 10px; margin-bottom: 10px; }
.kogyo .info li h3 { font-family: 'Noto Sans JP', sans-serif; font-size: 160%; margin-bottom: 10px; padding: 8px; background: #3e5edb; color: white; }
.kogyo .info li dl { display: flex; justify-content: space-between; padding: 2%; align-items: center; }
.kogyo .info li dl dt { flex-basis: 33%; }
.kogyo .info li dl dt img { border-radius: 10px; }
.kogyo .info li dl dd { flex-basis: 65%; text-align: center; }
.kogyo .info li dl dd a { display: block; font-family: 'Noto Sans JP', sans-serif; font-size: 180%; color: #ef3400; }
.kogyo .info li:nth-child(odd) h3 { background-color: #2d8309; }

.foot-link { margin-top: 30px; margin-bottom: 30px; display: flex; justify-content: center; align-items: center; }
.foot-link div { margin: 10px; }

.contact-bottan a { display: block; padding: 10px; min-width: 20px; font-family: 'Noto Sans JP', sans-serif; font-size: 110%; text-align: center; background-color: #15408c; color: white; border-radius: 15px; box-shadow: 1px 1px 3px black; font-weight: 900; white-space: nowrap; min-width: 150px; }
.contact-bottan a:hover { background: #ff7600; }

.recruit-bottan a { display: block; padding: 10px; min-width: 20px; font-family: 'Noto Sans JP', sans-serif; font-size: 110%; text-align: center; background-color: #a60000; color: white; border-radius: 15px; box-shadow: 1px 1px 3px black; font-weight: 900; white-space: nowrap; min-width: 150px; }
.recruit-bottan a:hover { background: #ff7600; }

.zoom dl { display: flex; justify-content: space-between; }
.zoom dl dt { flex-basis: 38%; }
.zoom dl dd { flex-basis: 60%; }
.zoom dl dd article { border: 1px solid red; padding: 8px; font-size: 90%; color: #3e0001; margin-top: 10px; }
.zoom dl dd article b { font-size: 110%; font-weight: 900; color: red; }
.zoom p { display: flex; justify-content: center; }
.zoom p a { min-width: 300px; color: white; background: #830002; text-align: center; padding: 10px; margin-top: 15px; }
.zoom p a:hover { background: #ff8e00; }

.video { width: 100%; /*横幅いっぱいにwidthを指定*/ padding-bottom: 56.25%; /*高さをpaddingで指定(16:9)*/ height: 0px; /*高さはpaddingで指定するためheightは0に*/ position: relative; }

.video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 600; }

.foot-banner { display: flex; justify-content: space-between; align-items: center; }

.foot-contact { background: white; padding: 5px; border-radius: 5px; display: flex; justify-content: space-between; font-family: 'Noto Sans JP', sans-serif; font-style: normal; font-weight: 900; flex-direction: row; flex-wrap: wrap; }
.foot-contact dl { font-size: 100%; color: #0055a4; margin: 2px; line-height: 100%; }
.foot-contact dl dt { font-size: 60%; margin-bottom: 5px; }
.foot-contact dl dd { font-size: 120%; font-family: 'Roboto', sans-serif; font-weight: 900; margin: 0px; padding: 0px; }
.foot-contact dl dd span { font-size: 60%; }
.foot-contact dl dd a { color: #0055a4; }
.foot-contact div { flex-basis: 30%; }

.index-banner h3 { margin-right: 30px; font-weight: 800; color: rgba(33, 33, 33, 0.8); font-size: 60%; margin: 0px; display: flex; justify-content: space-between; align-items: center; }
.index-banner h3:after { background: gray; height: 1px; content: " "; display: block; flex-grow: 1; margin-left: 20px; }
.index-banner ul { display: flex; justify-content: space-between; margin: 0px; }
.index-banner ul li { background: white; }
.index-banner ul li a { border: 1px solid gray; display: block; max-width: 200px; padding: 3px; }

.welcome { margin-bottom: 50px; text-align: center; margin-top: 30px; }
.welcome img { border-radius: 5px; border: 2px solid white; box-shadow: 1px 1px 5px #aaa; }

.white-butu { padding-top: 80px; }
.white-butu h2 { font-size: 180%; font-family: 'Sawarabi Mincho', sans-serif; }
.white-butu h3 { font-size: 140%; font-family: 'Sawarabi Mincho', sans-serif; text-align: center; margin-bottom: 40px; }
.white-butu .img { margin-bottom: 60px; max-width: 320px; margin-left: auto; margin-right: auto; }
.white-butu .sec01, .white-butu .sec02, .white-butu .sec03, .white-butu .sec04 { margin-bottom: 60px; }
.white-butu .sec01 { display: flex; justify-content: space-between; }
.white-butu .sec01 dl { flex-grow: 1; display: flex; justify-content: space-between; flex-direction: column; font-size: 90%; border: 1px solid gray; margin-left: 1px; }
.white-butu .sec01 dl dt { padding: 5px; background: #e1e1e1; }
.white-butu .sec01 dl dd { padding: 5px; }
.white-butu .sec02 { padding-left: 10px; padding-right: 10px; font-family: 'Noto Sans JP', sans-serif; }
.white-butu .sec02 h4 { font-weight: 600; margin-bottom: 5px; }
.white-butu .sec02 p { margin-bottom: 30px; padding-left: 15px; }
.white-butu .sec03 ul { font-size: 90%; border-top: 1px solid gray; border-left: 1px solid gray; width: 95%; margin-left: auto; margin-right: auto; }
.white-butu .sec03 ul li { display: flex; justify-content: space-between; }
.white-butu .sec03 ul li div { padding: 1%; border-right: 1px solid gray; border-bottom: 1px solid gray; }
.white-butu .sec03 ul li div:nth-child(1) { flex-basis: 5%; text-align: center; }
.white-butu .sec03 ul li div:nth-child(2) { flex-basis: 35%; }
.white-butu .sec03 ul li div:nth-child(3) { flex-basis: 56%; }
.white-butu .sec03 ul li:nth-child(1) div { background: #e1e1e1; }
.white-butu .sec04 ul { margin-left: 50px; width: 90%; margin-left: auto; margin-right: auto; padding: 20px; border-radius: 10px; box-shadow: 1px 1px 5px #aaa; max-width: 700px; margin-left: auto; margin-right: auto; }
.white-butu .sec04 ul li { margin-bottom: 15px; position: relative; }
.white-butu .sec04 ul li:before { content: "・"; position: absolute; right: 100%; }

.index-mongol { max-width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 20px; margin-top: 30px; }
.index-mongol img { margin-bottom: 10px; }
.index-mongol ul { display: flex; align-items: center; justify-content: center; }
.index-mongol ul li { margin: 5px; }

.m-head { position: relative; margin-bottom: 40px; }
.m-head .p img { width: 100%; }
.m-head .h2 { position: absolute; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; }
.m-head .h2 p { padding-top: 50px; font-size: 30px; font-weight: 600; text-shadow: 0 0 10px white,0 0 10px white,0 0 10px white,0 0 10px white,0 0 10px white; }

/* Scss Document index */
body { font-family: 'Roboto Slab', serif; }

.index-sec01 dt { margin-bottom: 10px; }

.head-text { display: flex; justify-content: space-between; }

.lang { width: auto; text-align: right; margin-left: 20px; }

footer address { font-style: normal; font-size: 90%; }
footer address li { margin-left: 15px; display: flex; justify-content: space-between; }

.philosophy-en h4 { font-size: 160%; text-align: center; font-weight: 800; transform: scale(0.9, 1); margin-bottom: 40px; text-shadow: 1px gray; }
.philosophy-en article { max-width: 900px; margin-left: auto; margin-right: auto; padding: 15px; }

.philosophy h3 { margin-bottom: 60px; }

.philosophy table { margin-bottom: 120px; }

.contact-b a { border: 1px gray solid; padding: 15px; display: block; }

.slides { margin: 0px; }

.contact h4 { font-size: 140%; text-align: center; font-weight: 800; transform: scale(0.9, 1); margin-bottom: 40px; text-shadow: 1px gray; }

/* Scss Document mobile */
@media screen and (max-width: 480px) { * { -webkit-box-sizing: border-box; box-sizing: border-box; }
  header .section .mongol { bottom: auto; width: 100%; }
  header .section .mongol img { max-width: 200px; display: block; margin-left: auto; margin-left: auto; }
  .page-head { padding-top: 60px; }
  .page-head .mv .slides img { max-height: 40px; width: auto; }
  .cp_fullscreenmenu { display: block; position: fixed; z-index: 998; top: 5px; right: 5px; border: 1px solid #ababab; }
  .head-flex { justify-content: start; }
  .head-rogo { flex-basis: 40%; }
  .head-rogo a { display: block; }
  .head-sdgs { flex-basis: 25%; }
  /*menuコンテンツ*/
  .cp_fullscreenmenu .menu { position: fixed; top: 0; left: 0; display: flex; visibility: hidden; overflow: hidden; width: 100%; height: 100%; pointer-events: none; outline: 1px solid transparent; -webkit-backface-visibility: hidden; backface-visibility: hidden; align-items: center; justify-content: center; }
  .cp_fullscreenmenu .menu > div { display: flex; overflow: hidden; width: 200vw; height: 200vw; transition: all 0.4s ease; -webkit-transform: scale(0); transform: scale(0); text-align: center; color: #212121; flex: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; align-items: center; justify-content: center; background-color: rgba(0, 0, 0, 0.8); }
  .cp_fullscreenmenu .menu > div > ul { max-height: 200vh; margin: 3px; }
  .cp_fullscreenmenu .menu > div > ul > li { display: block; }
  .cp_fullscreenmenu .menu ul h3 { margin-top: 15px; color: white; font-weight: 800; background-color: rgba(0, 0, 0, 0.4); padding: 5px; }
  .cp_fullscreenmenu .menu ul li ul { margin-bottom: 20px; }
  .cp_fullscreenmenu .menu ul li ul li { margin-left: 5px; margin-right: 5px; font-size: 85%; }
  .cp_fullscreenmenu .menu > div > ul > li a { display: block; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; color: white; }
  /*クリックしたらメニューが開閉の動作*/
  .cp_fullscreenmenu .toggle { position: fixed; z-index: 999; top: 0px; width: 50px; height: 50px; cursor: pointer; opacity: 0; right: 0px; }
  .cp_fullscreenmenu .toggle:checked + .hamburger > span { -webkit-transform: rotate(135deg); transform: rotate(135deg); }
  .cp_fullscreenmenu .toggle:checked + .hamburger > span:before, .cp_fullscreenmenu .toggle:checked + .hamburger > span:after { top: 0; -webkit-transform: rotate(90deg); transform: rotate(90deg); }
  .cp_fullscreenmenu .toggle:checked + .hamburger > span:after { opacity: 0; }
  .cp_fullscreenmenu .toggle:checked ~ .menu { visibility: visible; pointer-events: auto; }
  .cp_fullscreenmenu .toggle:checked ~ .menu > div { transition-duration: 0.75s; -webkit-transform: scale(1); transform: scale(1); }
  .cp_fullscreenmenu .toggle:checked ~ .menu > div > ul { opacity: 1; }
  .cp_fullscreenmenu .toggle:checked:hover + .hamburger > span { -webkit-transform: rotate(225deg); transform: rotate(225deg); }
  /*ハンバーガー*/
  .cp_fullscreenmenu .hamburger { z-index: 980; top: 5px; display: block; width: 50px; height: 50px; padding: 0.5em 1em; cursor: pointer; transition: box-shadow 0.4s ease; border-radius: 0 0.12em 0.12em 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; right: 0%; background-color: white; position: fixed; border: 1px solid #cccccc; }
  .cp_fullscreenmenu .hamburger > span { position: relative; top: 50%; display: block; width: 100%; height: 2px; transition: all 0.4s ease; background-color: #525252; right: 0px; }
  .cp_fullscreenmenu .hamburger > span:before, .cp_fullscreenmenu .hamburger > span:after { position: absolute; z-index: 1; top: -10px; left: 0; display: block; width: 100%; height: 2px; content: ''; transition: all 0.4s ease; background: inherit; }
  .cp_fullscreenmenu .hamburger > span:after { top: 10px; }
  .dropdown { display: inline-block; width: 100%; }
  #tg, #tg2 { display: none; }
  .contents-body h1:before { display: block; height: 60px; content: "　"; }
  .section { max-width: 480px; min-width: 310px; padding-left: 5px; padding-right: 5px; }
  .index-sec01 { padding-top: 10px; }
  .head-menu, .index-sec01 h2:after, .index-sec01 h2:before, .index-sec02-02 div:before, .footmenu, .contact-menu, .blog-menu, .blog-menu2, .vc-menu, .btn2 a:after, .btn2 a:before, .baning .baning-sec02 h3:before, .baning .baning-sec02 h3:after, .baning .baning1:after, .chorei h3:before, .one-day ul li:nth-child(even):after, .one-day ul li:nth-child(even):before, .zoom dl dt, .sns-menu { display: none; }
  .index-sec01 h2 { width: 70%; display: block; margin-left: auto; margin-right: auto; }
  .index-sec01 h2 img { margin-left: auto; margin-right: auto; }
  .index-sec01 ul, .kogyo .info, .contact dl, .zoom dl { display: block; }
  .index-sec01 ul li { width: 80%; margin-left: auto; margin-right: auto; }
  .index-sec02 { padding-top: 20px; padding-bottom: 20px; }
  .index-sec02 h2 { padding: 10px; }
  .index-sec02-02 .bg-btn { position: relative; top: 2%; }
  .index-sec02-04 .section ul, .foot-link { display: block; }
  .index-sec02-04 .section ul li { margin-bottom: 10px; }
  footer .section { display: block; max-width: 480px; }
  footer address ul li { display: flex; justify-content: space-between; }
  .index-blog li, .foot-banner, .foot-contact { display: block; }
  .btn2 { max-width: 200px; }
  .blog { display: block; }
  .blog-b ul { display: flex; flex-direction: row; flex-wrap: wrap; }
  .blog-b ul li { flex-basis: 48%; }
  .title { padding: 10px; }
  .title img { height: 40px; width: auto; }
  .contents-body h1 { background-size: 200%; width: 95vw; margin-left: auto; margin-right: auto; }
  .contents-body h1 .h1-cover { width: 95vw; height: calc(100vw * 0.32); }
  .h1-cover img { height: 40px; }
  .baning .baning-sec01 ul li { flex-basis: 49%; }
  .contents-body h2 { margin-top: 15px; margin-bottom: 20px; }
  h2 img { height: 30px; height: auto; }
  .baning .baning-sec02 section .sec02-flex { display: block; }
  .baning .baning-sec02 section { padding: 5px; margin-bottom: 40px; }
  .baning .baning-sec02 section .sec02-flex .sec02-flex-box article blockquote ol li { width: 100%; }
  .baning .baning-sec02 section .sec02-flex .sec02-flex-box { margin-bottom: 50px; }
  .baning .baning-sec02 h3 { display: block; width: 95%; margin-left: auto; margin-right: auto; }
  .baning .baning-sec02 h3 img { margin-left: 0px; margin-right: 0px; }
  .baning .baning-sec03 { padding-top: 30px; padding-bottom: 30px; }
  .baning .baning-sec03 section ul li { font-size: 80%; }
  .submenu .section { display: block; font-size: 80%; }
  .submenu ul { flex-direction: row; flex-wrap: wrap; justify-content: flex-start; margin-top: 5px; }
  .submenu ul li { margin-left: 10px; }
  .konpo .no img { width: 80px; bottom: 20px; }
  .konpo section dl { display: block; }
  .konpo section dl { margin-left: 1px; margin-right: 1px; -webkit-box-shadow: 0px 0px 2px 2px #DDDDDD; box-shadow: 0px 0px 2px 2px #DDDDDD; }
  .konpo .sec01-b dl { width: 300px; min-width: 100px; }
  .konpo section dl dd h3 { font-size: 110%; }
  .konpo .sec02 { display: block; }
  .konpo .sec02 div { -webkit-box-shadow: 0px 0px 2px 2px #DDDDDD; box-shadow: 0px 0px 2px 2px #DDDDDD; margin-bottom: 15px; }
  .konpo .sec02 div h3 img { height: 40px; }
  .konpo .sec04 .sec04-flex h3 img { height: 20px; }
  .ryutsu .ryutsu-qa dl dt { font-size: 110%; }
  .case dl, .ryutsu .sec04 dl, .ryutsu .sec05 ul, .network h4, .network h4:before, .network div, .souko, .chorei dl, .map-info, .recruit .sec02 ul { display: block; }
  .network h4:before { padding: 5px; margin-right: 0px; }
  .network h4 p { padding: 10px; }
  .network h3:after { width: 150px; }
  .network div P { padding: 0.5%; flex-basis: 49%; }
  .souko li { margin-bottom: 25px; }
  .slides li div span { font-size: 100%; padding-top: 5px; padding-bottom: 5px; }
  .chorei dt { text-align: center; margin-bottom: 15px; }
  .about-navi ul { margin-bottom: 30px; }
  .about-navi ul li img { height: 20px; }
  .about table th { width: 20%; }
  .about .map-info table { font-size: 80%; }
  .about .map-info th { width: 35%; white-space: nowrap; }
  .about table th, .about table td { padding: 3px; }
  .btn3 { max-width: 250px; }
  .recruit-head .head-rogo { background-color: white; padding: 10px; flex-basis: 50%; }
  .recruit .sec02 ul li { padding: 0px; }
  .recruit section { padding-bottom: 50px; }
  .one-day ul { width: 100%; display: block; }
  .one-day ul li { width: 100%; }
  .one-day .time span { position: relative; left: 0px; top: 0; }
  .one-day .time article { padding-top: 20px; padding-bottom: 20px; }
  .one-day ul li:nth-child(even) { padding-top: 30px; }
  .contact table th, .contact table td { border-bottom: 1px solid gray; padding: 3px; }
  .recruit h2 img { width: auto; height: 30px; }
  .facebook ul { display: block; }
  .facebook ul li { width: 100%; }
  .contents-body .sdgs { padding-top: 90px; }
  .contents-body .sdgs .sdgs-head img { margin-bottom: 30px; }
  .contents-body .sdgs .box article p { font-size: 80%; }
  .contents-body .sdgs .box { margin-bottom: 30px; }
  .contents-body .sdgs section { padding-top: 40px; padding-bottom: 40px; background-position: center top; }
  .contents-body .sdgs section .title { margin-bottom: 20px; }
  .contents-body .sdgs section dt { flex-basis: 20%; }
  .contents-body .sdgs section dd { flex-basis: 78%; }
  .contents-body .sdgs section dd h3 { font-size: 110%; line-height: 120%; }
  .contents-body .sdgs section dd article { padding: 0px; font-size: 80%; font-weight: 100; }
  .contents-body .sdgs section ul { display: block; margin-top: 20px; }
  .contents-body .sdgs section ul li { display: flex; justify-content: space-between; padding: 5px; margin: 5px; }
  .contents-body .sdgs section ul li p { flex-basis: 30%; }
  .contents-body .sdgs section ul li article { flex-basis: 67%; padding: 0px; font-size: 80%; }
  .support .h2 img { height: 50px; }
  .support .h2 { background-size: 300%; }
  .support ul li dl { display: block; padding: 15px; }
  .kogyo .info li h3, .kogyo .info li dl dd a, .kogyo h2 { font-size: 110%; }
  .foot-link div { text-align: center; margin-top: 10px; }
  .rec .h1 { font-size: 280%; }
  .rec h2 { font-size: 160%; }
  .white-butu .sec01 { display: block; }
  .white-butu .sec01 dl { margin-bottom: 2px; }
  .white-butu .sec03 ul li div:nth-child(1) { text-align: left; }
  .white-butu .sec03 ul li { display: block; } }
/* Scss Document index */
@media screen and (max-width: 480px) { .head-rogo { width: 40%; }
  .head-rogo img { height: auto; }
  .head-text { width: 60%; } }
