@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

*,
*:before,
*:after {
  box-sizing: inherit;
}
html {
  box-sizing:border-box;
  height:100%;
  -webkit-text-size-adjust:100%;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,cite,form,fieldset,input,textarea,p,blockquote,tr,th,td { 
  margin:0;
  padding:0;
}
table {
  border-collapse:collapse;
  border-spacing:0;
  border:none;
}
fieldset,img { 
  border:0;
}
img {
  vertical-align:bottom;
}
address,caption,cite,code,dfn,em,strong,th,var {
  font-style:normal;
  font-weight:normal;
}
ol,ul {
  list-style:none;
}
h1,h2,h3,h4,h5,h6 {
  font-size:100%;
  font-weight:normal;  
}
q:before,q:after {
  content:'';
}
abbr,acronym {
  border:0;
}
a:link,
a:visited,
a:hover {
  text-decoration:none;
  border:0;
  outline:0;
  color:#000;
}
/*common*/
body {
  font-size:1em;
  font-weight:300;
  font-family:"Noto Sans JP", sans-serif;
  letter-spacing:0.05em;
  height:100%;
}
.w320on {
  display:none;
}
.w375on {
  display:none;
}
.w390on {
  display:none;
}
.w480on {
  display:none;
}
.w568on {
  display:none;
}
.w667on {
  display:none;
}
.w768on {
  display:none;
}
.w820on {
  display:none;
}
.w926on {
  display:none;
}
header {
  width:100%;
  position: fixed;
  z-index:900;
}
#m_header {
  width:100%;
  height:100px;
  background-color:#fff;
  border-bottom:solid 2px #e60012;
  position:absolute;
  top:0;
  left:0;
  z-index:901;
}
#m_header dl {
  display:table;
  width:90%;
  max-width:1000px;
  height:100%;
  margin:0 auto;
}
#m_header dl dd {
  display:table-cell;
  vertical-align:middle;
  height:100%;
}
#m_header dl dd.m_logo {
  width:370px;
}
#m_header dl dd.m_logo img {
  width:100%;
}
#m_header dl dd.m_nav {
  width:stretch;
}
.m_nav nav {
  width:100%;
  height:100%;
  display:block;
}
.m_nav nav ul {
  width:fit-content;
  height:100%;
  float:right;
  display: flex;
}
.m_nav nav ul:after {
  content:"";
  clear:both;
}
.m_nav nav ul li {
  width:fit-content;
  height:100%;
  margin-left:30px;
  padding-top:2.5rem;
  text-align:center;
  font-size:.9rem;
  font-weight:500;
  letter-spacing:.07rem;
  white-space:nowrap;
}
.m_nav nav ul li a {
  position:relative;
  padding-bottom:1px;
}
.m_nav nav ul li a:after {
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:3px;
  background:#e60012;
  transition:all .5s;
  transform:scale(0, 1);
  transform-origin:left top;
}
.m_nav nav ul li a:hover:after {
  transform:scale(1, 1);
}
#nav-toggle {
  display:none;
  position:absolute;
  right:20px;
  top:24px;
  width:35px;
  height:35px;
  cursor:pointer;
  z-index:999;
}
#nav-toggle div {
  position:relative;
}
#nav-toggle span {
  display:block;
  position:absolute;
  height:2px;
  width:25px;
  background:#000;
  left:5px;
  transition:.35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
  top:9px;
}
#nav-toggle span:nth-child(2) {
  top:17px;
}
#nav-toggle span:nth-child(3) {
  top:25px;
}
.open #nav-toggle {
}
.open #nav-toggle span:nth-child(1) {
  top:17px;
  transform:rotate(135deg);
}
.open #nav-toggle span:nth-child(2) {
  width:0;
  left:50%;
}
.open #nav-toggle span:nth-child(3) {
  top:17px;
  transform:rotate(-135deg);
}
#g_nav {
  display:none;
  position:fixed;
  top:-90%;
  left:0;
  width:100%;
  height:0;
  padding:0;
  transition:.8s ease-in-out;
  background:rgba(225,225,225,.5);
  z-index:801;
}
#g_nav nav ul {
  display:block;
  width:80%;
  margin:3rem auto;
}
#g_nav nav ul li {
  font-size:1.2rem;
  font-weight:400;
  letter-spacing:.1rem;
  white-space:nowrap;
  border-bottom:solid 1px #eee;
  background: url("../images/arrow.svg") no-repeat 10px center / .5rem;
}
#g_nav nav ul li a {
  display:block;
  width: 100%;
  padding:5px 10px 5px 25px;
  margin:10px 0;
  transition:.2s ease-out;
}
#g_nav nav ul li a:hover {
  color:#e60012;
}
/* #g_nav.open */
.open #g_nav {
  height:100%;
  top:80px;
  background: rgba(255,255,255,1);
}
footer {
  width: 100%;
  padding-bottom:1.5rem;
  background-color:#fff;
  border-top:solid 1px #e60012;
}
footer div {
  width: 90%;
  max-width:1000px;
  margin:0 auto;
}
footer ul {
  width:fit-content;
  display: flex;
}
footer ul li {
  width:fit-content;
  margin-top:1rem;
  margin-right:15px;
  font-size:.85rem;
  letter-spacing:.01rem;
  white-space:nowrap;
}
footer ul li:last-child {
  border-left:solid 1px #ddd;
  padding-left:15px;
}
footer ul li.m_link:after {
  content:"";
  width:1.1rem;
  height:1rem;
  display:inline-block;
  background:url("../images/icon_link.svg") no-repeat right bottom / .9rem;
}
footer ul li a {
  transition:.2s ease-out;
}
footer ul li a:hover {
  color:#e60012;
}
footer p {
  text-align:right;
  font-size:.75rem;
  font-weight:200;
  letter-spacing:.02rem;
  margin:2rem 2.5rem 0 0;
}
#top_btn {
  position:fixed;
  bottom:125px;
  right:25px;
  display:block;
  z-index:701;
}
#top_btn a img {
  width: 35px;
  transition:transform .3s ease;
}
#top_btn a:hover img {
  transform:scale(1.1);
}
#mainContent {
  padding-top:100px;
  overflow:hidden;
}
#mainContent .m_kv {
  width:100%;
  height:225px;
  background:#fff;
  position:relative;
  overflow:hidden;
}
#mainContent .m_kv .m_wb {
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:100%;
  background:#ecebac url("../images/kv_bg.webp") center center / cover;
  transition:all 1.5s;
  transform:scale(0, 1);
  transform-origin:left top;
}
#mainContent .m_wb.m_fade {
  transform:scale(1, 1);
}
#mainContent .m_kv .m_body {
  width:90%;
  height:100%;
  max-width:1000px;
  margin:0 auto;
  position:relative;
}
#mainContent .m_kv .m_label {
  width:225px;
  height:225px;
  display:table-cell;
  text-align:center;
  vertical-align:middle;
  color:#fff;
  background:#e60012;
  transform:translateY(-225px);
  transition:all 1s;
  transition-delay:1s;
}
#mainContent .m_kv .m_label.m_fade {
  transform:translateY(0);
}
#mainContent .m_kv .m_label h2 {
  font-size:2rem;
  font-weight:400;
  letter-spacing:.5rem;
  line-height:3rem;
  transition-delay:2s;
}
#mainContent .m_content {
  width:90%;
  max-width:1000px;
  margin:0 auto;
  padding:5.5rem 0 10rem;
}
#mainContent h3.m_headline {
  width:100%;
  border-left:solid 11px #e60012;
  border-bottom:solid 1px #e60012;
  border-radius:2px 0 0 2px;
  padding: 0 .5rem .3rem;
  font-size:1.5rem;
  font-weight:400;
  letter-spacing:.1rem;
}
#mainContent p {
  line-height:1.7rem;
  letter-spacing:.05rem;
  padding-top:1.7rem;
}
#mainContent .m_lead {
  font-size:1.1rem;
  line-height:1.9rem;
  letter-spacing:.08rem;
}
#mainContent .m_lead2 {
  font-size:1.3rem;
  line-height:2.5rem;
  letter-spacing:.08rem;
  text-align:center;
  white-space:nowrap;
}
#mainContent .m_note {
  font-size:.8rem;
  font-weight: 300;
  line-height:1.2rem;
}
#mainContent img.m_img {
  width:100%;
  border-radius:11px;
}
#mainContent .m_info {
  display:block;
  border:solid #ddd 1px;
  border-radius:11px;
}
#mainContent .m_info h3 {
  font-size:1rem;
  font-weight:500;
  padding: 7px 15px;
  border-bottom:solid 2px #e60012;
}
.m_clear {
  clear:both;
}
.fade_in {
  opacity:0;
  transition:1s;
}
.fade_in.m_fade {
  opacity:1;
}
.fade_up {
  opacity:0;
  transform:translateY(25px);
  transition:1s;
}
.fade_up.m_fade {
  opacity: 1;
  transform:translateY(0);
}
.fade_down {
  opacity:0;
  transform:translateY(-25px);
  transition:1s;
}
.fade_down.m_fade {
  opacity:1;
  transform:translateY(0);
}
.fade_width {
  transform:scale(0, 1);
  transition:1s;
}
.fade_width.m_fade {
  transform:scale(1, 1);
}
.fade_width-r {
  transform:scale(1, 1);
  transition:1s;
}
.fade_width-r.m_fade {
  transform:scale(0, 1);
}
.m_delay1 {
    transition-delay:0.5s;
}
.m_delay2 {
    transition-delay:1s;
}
.m_delay3 {
    transition-delay:1.5s;
}
.m_delay4 {
    transition-delay:2s;
}
/* index */
#m_home #mainContent .m_maincut {
  width:100%;
  height:450px;
  background:url("../images/maincut01.webp") center center / cover;
  position:relative;
}
#m_home #mainContent .m_maincut div {
  width:fit-content;
  text-align:center;
  margin:0 auto;
  padding-top:175px;
}
#m_home #mainContent .m_maincut div h2 {
  font-family:"Noto Serif JP", serif;
  text-align:center;
  color:#fff;
  width:fit-content;
  white-space:nowrap;
  margin: 0 auto;
}
#m_home #mainContent .m_maincut h2.m_catch1 {
  font-size:1.4rem;
  letter-spacing:0.25rem;
  text-shadow:0 0 2px #e60012, 0 0 5px #e60012, 0 0 5px #e60012, 0 0 5px #e60012;
}
#m_home #mainContent .m_maincut h2.m_catch2 {
  font-size:2.8rem;
  font-weight:700;
  letter-spacing:0.4rem;
  text-shadow:0 0 2px #e60012, 0 0 5px #e60012, 0 0 7px #e60012, 0 0 7px #e60012;
}
#m_home #mainContent .m_maincut .fade_up,#mainContent .m_maincut .fade_down {
  transition-delay:1s;
}
#m_home #mainContent .m_maincut span {
  display:block;
  width:100%;
  height:2px;
  background:#e60012;
  margin-top:7px;
}
#m_home #mainContent .m_maincut .m_note {
  width:fit-content;
  white-space:nowrap;
  position:absolute;
  bottom:10px;
  right:10px;
  color:#fff;
  text-shadow:0 0 2px #000;
}
#m_home #mainContent #sc_lead p:first-of-type {
  padding-top:0;
}
#m_home #mainContent #sc_info {
  display:flex;
  height:100%;
}
#m_home #mainContent #sc_info .m_info {
  width:77%;
  margin-top:2rem;
}
#m_home #mainContent #sc_info .m_info dl {
  width:95%;
  border-bottom:solid 1px #eee;
  margin:0 auto;
}
#m_home #mainContent #sc_info .m_info dl:last-child {
  border-bottom:none;
}
#m_home #mainContent #sc_info .m_info dl dt {
  width:100%;
  padding-top:20px;
  font-size: .9rem;
  font-weight: 500;
}
#m_home #mainContent #sc_info .m_info dl dd {
  width:100%;
  padding-bottom:22px;
  font-size: 1rem;
  font-weight: 300;
}

#m_home #mainContent #sc_info .m_box1 {
  width:20%;
  position: relative;
  margin:2rem 0 0 3%;
}
#m_home #mainContent #sc_info .m_box1 a {
  width:100%;
  height:49%;
  text-align:center;
  position:absolute;
  left:0;
  border:solid 1px #000;
  transition:.2s ease-out;
}
#m_home #mainContent #sc_info .m_box1 a:nth-child(1) {
  top:0;
  background:url("../images/housefoodsgroupinc_signature_com_a_t.png") no-repeat center center / 78%;
}
#m_home #mainContent #sc_info .m_box1 a:nth-child(2) {
  top:51%;
  background:url("../images/housegaban_logo.png") no-repeat center center / 60%;
}
#m_home #mainContent #sc_info .m_box1 a:hover {
  border:solid 1px #e60012;
}
#m_home #mainContent #sc_info .m_box1 a img {
  width:40%;
}
/* corporate */
#m_corporate #m_header ul li:nth-child(1) {
  color:#e60012;
  border-bottom:solid 5px #e60012;
}
#m_corporate #mainContent .m_kv .m_kv-img1 {
  width:400px;
  position:absolute;
  top:75px;
  left:350px;
}
#m_corporate #mainContent .m_kv .fade_kv1 {
  transform:translateY(155px);
  transition:1s;
  transition-delay:1.5s;
}
#m_corporate #mainContent .m_kv .fade_kv1.m_fade {
  transform:translateY(0);
}
#m_corporate #mainContent .m_kv .m_kv-img2 {
  width:480px;
  position:absolute;
  top:105px;
  left:-100px;
}
#m_corporate #mainContent .m_kv .fade_kv2 {
  transform:translateY(155px);
  transition:1s;
  transition-delay:.5s;
}
#m_corporate #mainContent .m_kv .fade_kv2.m_fade {
  transform:translateY(0);
}
#m_corporate #mainContent .m_kv .m_kv-img3 {
  width:500px;
  position:absolute;
  top:138px;
  right:-120px;
}
#m_corporate #mainContent .m_kv .fade_kv3 {
  transform:translateY(155px);
  transition:1s;
  transition-delay:1s;
}
#m_corporate #mainContent .m_kv .fade_kv3.m_fade {
  transform:translateY(0);
}
#m_corporate #mainContent .m_box1 {
  width:28%;
  text-align:center;
  float:right;
  margin:2rem 0 5rem 2.5rem;
}
#m_corporate #mainContent .m_box1 p {
  font-size:.8rem;
  letter-spacing:.03rem;
  line-height:1.1rem;
  padding-top:1rem;
  white-space:nowrap;
}
#m_corporate #mainContent .m_box1 p span {
  font-size:1.2rem;
  font-weight:400;
  letter-spacing:.08rem;
  line-height:2.2rem;
}
#m_corporate #mainContent #sc_philosophy,#m_corporate #mainContent #sc_information {
  margin-top:5.5rem;
}
#m_corporate #mainContent #sc_philosophy ul {
  width:100%;
  margin-top:1.5rem;
  list-style-position:outside;
}
#m_corporate #mainContent #sc_philosophy ul li {
  margin-top:.7rem;
  width:100%;
  font-weight:400;
  letter-spacing:.03rem;
  padding-left:1rem;
  background:url("../images/list_disc.svg") no-repeat left 0 top .5rem / .7rem;
}
#m_corporate #mainContent #sc_information table {
  width:100%;
  margin-top:2.2rem;
}
#m_corporate #mainContent #sc_information tr {
  border-top:solid 1px #ddd;
}
#m_corporate #mainContent #sc_information th {
  border-right:solid 1px #ddd;
  font-weight:400;
  text-align:center;
  padding: 1rem .5rem;
  white-space: nowrap;
}
#m_corporate #mainContent #sc_information td {
  padding: 1rem;
}
#m_corporate #mainContent #sc_information tr:last-child {
  border-bottom:solid 1px #ddd;
}
/* business */
#m_business #m_header ul li:nth-child(2) {
  color:#e60012;
  border-bottom:solid 5px #e60012;
}
#m_business #mainContent .m_kv .m_kv-img1 {
  width:170px;
  position:absolute;
  top:0;
  left:25%;
}
#m_business #mainContent .m_kv .fade_kv1 {
  transform:translateX(-25%) translateY(250px) rotate(-55deg);
  transition:1s;
  transition-delay:.25s;
}
#m_business #mainContent .m_kv .fade_kv1.m_fade {
  transform: translateX(8%) translatey(-8px) rotate(-8deg);
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:120px;
  position:absolute;
  top:30px;
  left:43%;
}
#m_business #mainContent .m_kv .fade_kv2 {
  transform:translateX(-5%) translateY(215px) rotate(-55deg);
  transition:1s;
  transition-delay:.5s;
}
#m_business #mainContent .m_kv .fade_kv2.m_fade {
  transform: translateX(25%) translateY(10px) rotate(5deg);
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:125px;
  position:absolute;
  top:100px;
  right:30%;
}
#m_business #mainContent .m_kv .fade_kv3 {
  transform:translateX(25%) translateY(215px) rotate(-55deg);
  transition:1s;
  transition-delay:.7s;
}
#m_business #mainContent .m_kv .fade_kv3.m_fade {
  transform: translateX(15%) translateY(10px) rotate(0);
}
#m_business #mainContent .m_kv .m_kv-img4 {
  width:350px;
  position:absolute;
  top:140px;
  left:50%;
}
#m_business #mainContent .m_kv .fade_kv4 {
  transform:translateY(205px);
  transition:1s;
  transition-delay:1.2s;
}
#m_business #mainContent .m_kv .fade_kv4.m_fade {
  transform:translateY(0);
}
#m_business #mainContent .m_kv .m_kv-img5 {
  width:360px;
  position:absolute;
  top:165px;
  right:-25%;
}
#m_business #mainContent .m_kv .fade_kv5 {
  transform:translateY(205px);
  transition:1s;
  transition-delay:1.7s;
}
#m_business #mainContent .m_kv .fade_kv5.m_fade {
  transform:translateY(0);
}
#m_business #mainContent p.m_lead {
  font-size:1.3rem;
  line-height:2.5rem;
  text-align:center;
  white-space:nowrap;
}
#m_business #mainContent p.m_lead2:first-of-type {
  padding-top:0;
}
#m_business #mainContent ul {
  display:flex;
  align-items:stretch;
  width:90%;
  margin:3rem auto;
}
#m_business #mainContent ul li {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  margin-top:2rem;
}
#m_business #mainContent ul li p {
  display:block;
  margin:0 auto;
  font-weight:400;
  width:fit-content;
  white-space:nowrap;
}
#m_business #mainContent ul li:nth-child(1) {
  width:58%;
  margin-right:12%;
}
#m_business #mainContent ul li:nth-child(1) img {
  width:100%;
}
#m_business #mainContent ul li:nth-child(2) {
  width:30%;
}
#m_business #mainContent ul li:nth-child(2) img {
  width:80%;
  margin:5rem 10% 0;
}
/* safety */
#m_safety #m_header ul li:nth-child(3) {
  color:#e60012;
  border-bottom:solid 5px #e60012;
}
#m_safety #mainContent .m_kv .m_kv-img1 {
  width:200px;
  position:absolute;
  top:35px;
  left:50%;
}
#m_safety #mainContent .m_kv .fade_kv1 {
  transform:translateY(225px);
  transition:1s;
  transition-delay:.5s;
}
#m_safety #mainContent .m_kv .fade_kv1.m_fade {
  transform:translateY(0);
}
#m_safety #mainContent .m_kv .m_kv-img2 {
  width:215px;
  position:absolute;
  top:20px;
  left:70%;
}
#m_safety #mainContent .m_kv .fade_kv2 {
  transform:translateY(225px);
  transition:1s;
  transition-delay:.7s;
}
#m_safety #mainContent .m_kv .fade_kv2.m_fade {
  transform:translateY(0);
}
#m_safety #mainContent .m_kv .m_kv-img3 {
  width:200px;
  position:absolute;
  top:12px;
  left:25%;
}
#m_safety #mainContent .m_kv .fade_kv3 {
  transform:translateY(225px) rotate(-55deg);
  transition:1s;
  transition-delay:1.2s;
}
#m_safety #mainContent .m_kv .fade_kv3.m_fade {
  transform:translateY(0) rotate(0);
}
#m_safety #mainContent .m_kv .m_label h2 {
  line-height:1.5rem;
}
#m_safety #mainContent p.m_lead2 {
  padding-top:0;
}
#m_safety #mainContent ul {
  display:flex;
  width:100%;
  margin:3rem auto 0;
}
#m_safety #mainContent ul li {
  width:45%;
  margin-top:2rem;
}
#m_safety #mainContent ul li:nth-child(1) {
  margin-right:10%;
}
#m_safety #mainContent ul li a {
  transition:.2s ease-out;
}
#m_safety #mainContent ul li a:hover {
  color:#e60012;
}
#m_safety #mainContent ul li img.m_img {
  width:100%;
  margin:2rem auto 0;
}
#m_safety #mainContent ul li p {
  font-size:.9rem;
  padding-top:.5rem;
}
#m_safety #mainContent h4.m_link {
  font-size:1rem;
  font-weight:400;
  margin-top:1rem;
  text-align:center;
  white-space:nowrap;
}
#m_safety #mainContent h4.m_link:after {
  content:"";
  width:1.2rem;
  height:1.1rem;
  display:inline-block;
  background:url("../images/icon_link.svg") no-repeat right bottom / 1rem;
}
/* recruit */
#m_recruit #m_header ul li:nth-child(4) {
  color:#e60012;
  border-bottom:solid 5px #e60012;
}
#m_recruit #mainContent h3.m_headline:nth-of-type(2) {
  margin-top:4rem;
}
#m_recruit #mainContent .m_kv .m_kv-img1 {
  width:182px;
  position:absolute;
  top:30px;
  left:51%;
}
#m_recruit #mainContent .m_kv .fade_kv1 {
  transform:translateY(205px);
  transition:1s;
  transition-delay:.5s;
}
#m_recruit #mainContent .m_kv .fade_kv1.m_fade {
  transform:translateY(0);
}
#m_recruit #mainContent .m_kv .m_kv-img2 {
  width:215px;
  position:absolute;
  top:15px;
  left:70%;
}
#m_recruit #mainContent .m_kv .fade_kv2 {
  transform:translateY(220px);
  transition:1s;
  transition-delay:.7s;
}
#m_recruit #mainContent .m_kv .fade_kv2.m_fade {
  transform:translateY(0);
}
#m_recruit #mainContent .m_kv .m_kv-img3 {
  width:350px;
  position:absolute;
  top:95px;
  left:18%;
}
#m_recruit #mainContent .m_kv .fade_kv3 {
  transform:translateY(140px);
  transition:1s;
  transition-delay:1.2s;
}
#m_recruit #mainContent .m_kv .fade_kv3.m_fade {
  transform:translateY(0);
}
#m_recruit #mainContent ul {
  display:flex;
  flex-wrap:wrap;
  width:100%;
  margin:0 auto;
}
#m_recruit #mainContent ul li {
  width:48%;
  margin-top:2rem;
}
#m_recruit #mainContent ul li:nth-child(odd) {
  margin-right:4%;
}
#m_recruit #mainContent ul li h4 {
  font-size:1.2rem;
  font-weight:400;
  line-height:1.2rem;
  border-left:solid 6px #e60012;
  padding:0  0 .1rem .4rem;
}
#m_recruit #mainContent ul li img {
  width:50%;
  margin:2rem 1.5rem 2rem 0;
  float:left;
}
#m_recruit #mainContent .m_info {
  width:100%;
  margin-top:5rem;
  text-align:center;
  padding-bottom:1.5rem;
  white-space:nowrap;
}
#m_recruit #mainContent .m_info h3 {
  font-size:1.3rem;
}
#m_recruit #mainContent .m_info h4 {
  font-size:1.2rem;
}
#m_recruit #mainContent .m_info h4:nth-of-type(2) {
  font-size:1.6rem;
  font-weight:700;
  margin-top:.3rem;
}
#m_recruit #mainContent .m_info h5 {
  font-size:1.1rem;
  font-weight:500;
  margin-top:.3rem;
}
@media screen and (max-width:1180px) {
#mainContent .m_kv {
  height:18vw;
}
#mainContent .m_kv .m_label {
  width:18vw;
  height:18vw;
}
#mainContent .m_kv .m_label h2 {
  margin-left:.4rem;
}
/* corporate */
#m_corporate #mainContent .m_kv .m_kv-img1 {
  width:34vw;
  top:6vw;
  left:27vw;
}
#m_corporate #mainContent .m_kv .m_kv-img2 {
  width:38vw;
  top:9vw;
  left:-4vw;
}
#m_corporate #mainContent .m_kv .m_kv-img3 {
  width:40vw;
  top:11vw;
  right:-4vw;
}
/* business */
#m_business #mainContent .m_kv .m_kv-img1 {
  width:13.7vw;
  top:0;
  left:20vw;
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:9.5vw;
  top:3.2vw;
  left:35vw;
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:9vw;
  top:8vw;
  left:47.5vw;
}
#m_business #mainContent .m_kv .m_kv-img4 {
  top:10.6vw;
}
#m_business #mainContent .m_kv .m_kv-img5 {
  top:12.7vw;
}
/* safety */
#m_safety #mainContent .m_kv .m_kv-img1 {
  width:17vw;
  top:3.5vw;
  left:39vw;
}
#m_safety #mainContent .m_kv .m_kv-img2 {
  width:18vw;
  top:.5vw;
  left:57vw;
}
#m_safety #mainContent .m_kv .m_kv-img3 {
  width:16vw;
  top:1.2vw;
  left:22vw;
}
#m_safety #mainContent h4.m_link span {
  font-size:.8rem;
}
/* recruit */
#m_recruit #mainContent .m_kv .m_kv-img1 {
  width:16vw;
  top:3vw;
  left:48vw;
}
#m_recruit #mainContent .m_kv .m_kv-img2 {
  width:18vw;
  top:1.5vw;
  left:65vw;
}
#m_recruit #mainContent .m_kv .m_kv-img3 {
  width:35vw;
  top:5.5vw;
  left:16vw;
}
}
@media screen and (max-width:926px) {
.w926on {
	display:inline;
}
#mainContent .m_lead2 {
  font-size:1.2rem;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:36%;
}
/* business */
#m_business #mainContent .m_kv .m_kv-img1 {
  width:13.2vw;
  top:.5vw;
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:9.2vw;
  top:3vw;
  left:35vw;
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:8.5vw;
  top:7vw;
  left:46vw;
}
#m_business #mainContent .m_kv .m_kv-img4 {
  width:30vw;
  top:11vw;
  left:40vw;
}
#m_business #mainContent .m_kv .m_kv-img5 {
  width:32vw;
  top:13vw;
  left:72vw;
}
/* safety */
#m_safety #mainContent h4.m_link span {
  font-size:.9rem;
}
}
@media screen and (max-width:820px) {
.w820on {
  display:inline;
}
/* safety */
#m_safety #mainContent ul li {
  width:48%;
}
#m_safety #mainContent ul li:nth-child(1) {
  margin-right:4%;
}
/* recruit */
#m_recruit #mainContent ul li {
  width:47%;
}
#m_recruit #mainContent ul li:nth-child(odd) {
  margin-right:6%;
}
#m_recruit #mainContent ul li img {
  width:100%;
  float:none;
  margin-bottom:0;
}
}
@media screen and (max-width:768px) {
#top_btn {
  display:none;
}
#mainContent {
  padding-top:80px;
}
#m_header {
  height:80px;
}
#m_header dl {
  display:table;
  width:75vw;
  max-width:370px;
  margin:0 2vw;
}
#m_header dl dd.m_logo {
  width:100%;
}
#m_header dl dd.m_logo h1 {
  width:100%;
}
.m_nav nav {
  display:none;
}
#nav-toggle {
  display:block;
}
#g_nav {
  display:block;
}
.w768on {
  display:inline;
}
footer div {
  width: 92%;
}
footer ul {
  display:block;
  margin:2rem auto .5rem;
}
footer ul li {
  margin-top:1rem;
  margin-right:0;
  font-size:.95rem;
}
footer ul li:first-child {
  border-bottom:solid 1px #ddd;
  padding-bottom:15px;
}
footer ul li:last-child {
  border-left:none;
  padding-left:0;
}
footer ul li.m_link:after {
  content:"";
  width:1.2rem;
  background:url("../images/icon_link.svg") no-repeat right bottom / 1rem;
}
footer p {
  text-align:center;
  margin:2rem 0 0 0;
}
#mainContent .m_content {
  width:92%;
  padding:2.5rem 0 5rem;
}
#mainContent .m_kv .m_body {
  width:92%;
}
#mainContent .m_kv .m_label h2 {
  font-size:1.8rem;
}
/* index */
#m_home #mainContent .m_maincut {
  height:390px;
}
#m_home #mainContent .m_maincut div {
  padding-top:145px;
}
#m_home #mainContent #sc_info {
  display:block;
}
#m_home #mainContent #sc_info .m_info {
  width:100%;
  margin-top:0;
}
#m_home #mainContent #sc_info .m_box1 {
  width:100%;
  height:100%;
  display:flex;
  margin:2rem 0 0 0;
}
#m_home #mainContent #sc_info .m_box1 a {
  width:49%;
  height:100%;
  text-align:center;
  display:block;
  position: relative;
}
#m_home #mainContent #sc_info .m_box1 a:nth-child(1) {
  top:0;
  background-size:53%;
}
#m_home #mainContent #sc_info .m_box1 a:nth-child(2) {
  top:0;
  background-size:50%;
  margin-left: 2%;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:40%;
  margin:2rem 0 3rem 2.5rem;
}
}
@media screen and (max-width:736px) {
#nav-toggle {
  top:4vw;
}
.open #g_nav {
  top:14vw;
}
#mainContent {
  padding-top:14vw;
}
#m_header {
  height:14vw;
}
#mainContent .m_content {
  padding:11vw 0 12vw;
}
#mainContent .m_kv {
  height:22vw;
}
#mainContent .m_kv .m_label {
  width:19vw;
  height:22vw;
  transform:translateY(-22vw);
}
/* index */
#m_home #mainContent .m_maincut {
  height:52vw;
}
#m_home #mainContent .m_maincut div {
  padding-top:18vw;
}
#m_home #mainContent .m_maincut h2.m_catch1 {
  font-size:2.9vw;
}
#m_home #mainContent .m_maincut h2.m_catch2 {
  font-size:5.8vw;
}
/* corporate */
#m_corporate #mainContent .m_kv .m_kv-img1 {
  width:40vw;
  top:7vw;
  left:25vw;
}
#m_corporate #mainContent .m_kv .m_kv-img2 {
  width:48vw;
  top:11vw;
  left:-17vw;
}
#m_corporate #mainContent .m_kv .m_kv-img3 {
  width:55vw;
  top:13vw;
  right:-13vw;
}
/* business */
#m_business #mainContent .m_kv .m_kv-img1 {
  width:16vw;
  top:.5vw;
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:13vw;
  top:2vw;
  left:38vw;
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:13vw;
  top:6vw;
  left:54vw;
}
#m_business #mainContent .m_kv .m_kv-img4 {
  width:39vw;
  top:13vw;
  left:32vw;
}
#m_business #mainContent .m_kv .m_kv-img5 {
  width:41vw;
  top:15vw;
  left:72vw;
}
/* safety */
#m_safety #mainContent ul {
  display:block;
}
#m_safety #mainContent ul li {
  width:100%;
}
#m_safety #mainContent ul li:nth-child(1) {
  margin-right:0;
}
#m_safety #mainContent ul li img.m_img {
  width:70%;
  margin:2rem 15% 0;
}
#m_safety #mainContent ul li p {
  text-align:center;
  line-height: 1.3rem;
}
/* recruit */
#m_recruit #mainContent .m_kv .m_kv-img1 {
  width:17vw;
  top:3.5vw;
  left:50vw;
}
#m_recruit #mainContent .m_kv .m_kv-img2 {
  width:19vw;
  top:1.8vw;
  left:68vw;
}
#m_recruit #mainContent .m_kv .m_kv-img3 {
  width:39vw;
  top:8vw;
  left:15vw;
}
}
@media screen and (max-width:667px) {
.w667on {
  display:inline;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:46%;
  margin:2rem 0 2rem 2.5rem;
}
/* safety */
#m_safety #mainContent .m_kv .m_kv-img1 {
  width:20vw;
  top:3vw;
  left:39vw;
}
#m_safety #mainContent .m_kv .m_kv-img2 {
  width:21vw;
  top:1vw;
  left:59vw;
}
#m_safety #mainContent .m_kv .m_kv-img3 {
  width:20vw;
  top:1.2vw;
  left:21vw;
}
}
@media screen and (max-width:568px) {
.w568on {
  display:inline;
}
#mainContent .m_kv .m_label {
  width:22vw;
}
#mainContent .m_lead2 {
  font-size:1.1rem;
  line-height: 1.8rem;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:48%;
  margin:2rem 0 2rem 1.5rem;
}
/* business */
#m_business #mainContent .m_kv .m_kv-img1 {
  width:16vw;
  top:.5vw;
  left:21vw;
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:13vw;
  top:2vw;
  left:39vw;
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:13vw;
  top:6vw;
  left:55vw;
}
#m_business #mainContent .m_kv .m_kv-img4 {
  width:39vw;
  top:13vw;
  left:32vw;
}
#m_business #mainContent .m_kv .m_kv-img5 {
  width:41vw;
  top:15vw;
  left:72vw;
}
/* safety */
#m_safety #mainContent .m_kv .m_kv-img1 {
  width:21vw;
  top:3vw;
  left:41vw;
}
#m_safety #mainContent .m_kv .m_kv-img2 {
  width:22vw;
  top:1vw;
  left:62vw;
}
#m_safety #mainContent .m_kv .m_kv-img3 {
  width:20vw;
  top:1.2vw;
  left:23vw;
}
}
@media screen and (max-width:550px) {
/* business */
#m_business #mainContent .m_lead2:first-of-type {
  text-align:left;
  white-space:normal;
}
#m_business #mainContent .m_lead2:first-of-type br {
  display:none;
}
/* recruit */
#m_recruit #mainContent .m_kv .m_kv-img1 {
  width:18vw;
  top:3.5vw;
  left:50vw;
}
#m_recruit #mainContent .m_kv .m_kv-img2 {
  width:20vw;
  top:1.8vw;
  left:68vw;
}
#m_recruit #mainContent .m_kv .m_kv-img3 {
  width:41vw;
  top:10vw;
  left:15vw;
}
}
@media screen and (max-width:480px) {
#nav-toggle {
  top:3.3vw;
}
#g_nav nav ul li {
  font-size:1.1rem;
}
.w480on {
  display:inline;
}
#mainContent .m_kv .m_label h2 {
  font-size:1.5rem;
  letter-spacing:.3rem;
  line-height:2.5rem;
  margin-left:.3rem;
}
#mainContent .m_content {
  width:96%;
}
#mainContent .m_kv {
  height:25vw; 
}
#mainContent .m_kv .m_label {
  width:22vw;
  height:25vw;
  transform:translateY(-25vw);
}
#mainContent h3.m_headline {
  font-size:1.3rem;
}
/* index */
#m_home #mainContent .m_maincut h2.m_catch1 {
  font-size:2.6vw;
}
#m_home #mainContent .m_maincut h2.m_catch2 {
  font-size:5.2vw;
}
#m_home #mainContent .m_maincut .m_note {
  font-size:.7rem;
}
/* corporate */
#m_corporate #mainContent .m_kv .m_kv-img1 {
  width:50vw;
  top:7vw;
  left:25vw;
}
#m_corporate #mainContent .m_kv .m_kv-img2 {
  width:55vw;
  top:11vw;
  left:-17vw;
}
#m_corporate #mainContent .m_kv .m_kv-img3 {
  width:67vw;
  top:14vw;
  right:-35vw;
}
#m_corporate #mainContent .m_box1 {
  width:65%;
  margin:2rem auto 0;
  float:none;
}
#m_corporate #mainContent .m_box1 p {
  font-size:.9rem;
  line-height:1.2rem;
}
#m_corporate #mainContent #sc_information table {
  font-size:.9rem;
}
/* business */
#m_business #mainContent .m_kv .m_kv-img1 {
  width:18vw;
  top:1.5vw;
  left:23vw;
}
#m_business #mainContent .m_kv .m_kv-img2 {
  width:15vw;
  top:1.5vw;
  left:42vw;
}
#m_business #mainContent .m_kv .m_kv-img3 {
  width:15vw;
  top:6vw;
  left:60vw;
}
#m_business #mainContent .m_kv .m_kv-img4 {
  width:41vw;
  top:15vw;
  left:32vw;
}
#m_business #mainContent .m_kv .m_kv-img5 {
  width:45vw;
  top:17vw;
  left:74vw;
}
#m_business #mainContent ul {
  display:block;
}
#m_business #mainContent ul li {
  display:block;
}
#m_business #mainContent ul li:nth-child(1) {
  width:70%;
  margin:2rem auto 0;
}
#m_business #mainContent ul li:nth-child(2) {
  width:40%;
  margin:2rem auto 0;
}
#m_business #mainContent ul li:nth-child(2) img {
  width:100%;
  margin:0;
}
/* safety */
#m_safety #mainContent .m_kv .m_kv-img3 {
  top:2.5vw;
}
/* recruit */
#m_recruit #mainContent ul {
  display:block;
}
#m_recruit #mainContent ul li {
  width:100%;
}
#m_recruit #mainContent ul li:nth-child(odd) {
  margin-right:0;
}
#m_recruit #mainContent ul li img {
  width:70%;
  margin:2rem 15% 0;
}
}
@media screen and (max-width:414px) {
footer ul li {
  font-size:.9rem;
}
/* safety */
#m_safety #mainContent .m_kv .m_kv-img1 {
  width:23vw;
  top:3vw;
  left:41vw;
}
#m_safety #mainContent .m_kv .m_kv-img2 {
  width:25vw;
  top:1vw;
  left:65vw;
}
#m_safety #mainContent .m_kv .m_kv-img3 {
  width:21vw;
  top:2.3vw;
  left:23vw;
}
}
@media screen and (max-width:390px) {
#nav-toggle {
  top:2.5vw;
  right:2.5vw;
}
.w390on {
  display:inline;
}
footer ul li {
  font-size:.85rem;
  font-weight: 400;
}
#mainContent .m_note {
  font-weight: 400;
}
/* index */
#m_home #mainContent .m_maincut div {
  padding-top:12vw;
}
#m_home #mainContent .m_maincut h2.m_catch1 {
  font-size:5vw;
}
#m_home #mainContent .m_maincut h2.m_catch2 {
  font-size:6.5vw;
  letter-spacing:0.1rem;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:75%;
}
#m_corporate #mainContent #sc_information td {
  padding: 1rem .5rem;
}
/* business */
#m_business #mainContent ul li:nth-child(1) {
  width:100%;
}
#m_business #mainContent ul li:nth-child(2) {
  width:55%;
}
}
@media screen and (max-width:375px) {
.w375on {
  display:inline;
}
footer div {
  width: 99%;
}
footer ul li span {
  font-size:.7rem;
}
/* safety */
#m_safety #mainContent p.m_lead2 br.w820on {
  display:none;
}
/* recruit */
#m_recruit #mainContent ul li img {
  width:80%;
  margin:2rem 10% 0;
}
#m_recruit #mainContent .m_info p {
  font-size:.8rem;
}
#m_recruit #mainContent .m_info h4 {
  font-size:1rem;
}
#m_recruit #mainContent .m_info h4:nth-of-type(2) {
  font-size:1.4rem;
}
}
@media screen and (max-width:320px) {
#nav-toggle {
  top:1.5vw;
  right:1.5vw;
}
.w320on {
  display:inline;
}
footer ul li.m_link:after {
  content:"";
  width:1rem;
  background:url("../images/icon_link.svg") no-repeat right bottom / .8rem;
}
#mainContent .m_kv .m_label {
  width:25vw;
}
/* corporate */
#m_corporate #mainContent .m_box1 {
  width:90%;
}
}