@charset "UTF-8";

body {overflow-x:hidden;}
* {
  font-size:16px;
  line-height:1.5;
  color:#222;
  font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Sans","Noto Sans JP", メイリオ, Meiryo, sans-serif;
}
span {
  font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Sans","Noto Sans JP", メイリオ, Meiryo, sans-serif;
}
a {
  text-decoration:underline;;
  transition-duration: 0.3s;
  color:#0098E2;
}
a:hover {
  opacity: 0.6;
  text-decoration:none;
}
a[href*="tel:"]{
  color: #222;
  text-decoration: none;
  pointer-events: none;
}

img {
  width:100%;
}
.fw_noto_serif {
  font-family:"Noto Serif JP",serif;
}
.wid800 {
  width:800px;
  margin:0 auto;
}
.wid1000 {
  width:100%;
  max-width:1000px;
  margin:0 auto;
}
.mb20 {
  margin-bottom:20px;
}
.mb50 {
  margin-bottom:50px;
}
.mb100 {
  margin-bottom:100px;
}
.mb200 {
  margin-bottom:200px;
}
.mb1em {
  margin-bottom:1em;
}
.mb2em {
  margin-bottom:2em;
}
.tac {
  text-align:center;
}
.tar {
  text-align:right;
}
.fl {
  float:left;
}
.fr {
  float:right;
}
.fwb {
  font-weight:bold;
}
.m_flex_01 {
  display:flex;
  flex-wrap: wrap;
  justify-content:space-between;
  width:100%;
}
.m_flex_01.m_flex_reverse {
  flex-direction: row-reverse;
}
.m_txtarea_01 {
  width:60%;
}
.m_imgarea_01 {
  width:35%;
}

/*-- h --*/
.m_h1_02 {
  font-size:3em;
  font-weight:bold;
  text-align:center;
  margin:100px auto;
}
.m_h2_01 {
  font-size:2em;
  font-weight:bold;
  text-align:center;
  margin-bottom:50px;
}
.m_h3_01 {
  font-size:1.3em;
  font-weight:bold;
}
.m_h3_01.ic_circle_01 {
  font-size:1em;
}
/*-- dl --*/
.m_dt_01 {
  display:flex;
  flex-wrap: wrap;
  width: 100%;
}
.m_dt_01 dt,
.m_dt_01 dd {
  border-bottom:1px dotted #222;
  padding:10px 0;
}
.m_dt_01 dt {
  width:30%;
  font-weight:bold;
}
.m_dt_01 dd {
  width:70%;
}

/*-- ic --*/
.ic_circle_01,
.ic_circle_02 li {
  padding-left:1em;
  position:relative;
}
.ic_circle_01:before {
  content:"●";
  position:absolute;
  top:0;
  left:0;
}
.ic_circle_02 li:before {
  content:"・";
  position:absolute;
  top:0;
  left:0;
}
.ic_kome_01 {
  padding-left:1em;
  position:relative;
}
.ic_kome_01:before {
  content:"※";
  position:absolute;
  top:0;
  left:0;
}

.ic_blank,
.m_ul_01 a {
  position:relative;
  padding-right:1em;
}
.ic_blank:before,
.m_ul_01 a:before {
  content:"→";
  position:absolute;
  top:0;
  right:0;
  transform: rotate(-45deg);
}
.m_ul_02 li {
  margin-bottom:1em;
  padding-left:1em;
  position:relative;
}
.m_ol_01 li .m_ul_02 li {
  margin-bottom:0;
}
.m_ul_02 li:before,
.m_ol_01 li .m_ul_02 li:before {
  content:"・";
  position:absolute;
  top:0;
  left:0;
}
.m_ol_01 li .m_ul_02 li:before {
  background:none;
  border:0;
  color:#222;
}
.m_ol_01 li {
  position: relative;
  margin-bottom:30px;
}
.m_ol_01 li h3,
.m_ol_02 li h4 {
  font-weight:bold;
}
.m_ol_01 li h3 {
  position:relative;
  padding-left:1em;
}
.m_ol_01 li h3 span {
  position:absolute;
  top:0;
  left:0;
}
.m_ol_01 li .m_ol_02 {
  padding-left:2em;
}
.m_ol_01 li .m_ol_02 li {
  position:relative;
  padding-left:1.5em;
  margin-bottom:1em;
}
.m_ol_01 li .m_ol_02 li span {
  position:absolute;
  top:0;
  left:0;
}


.disnone {
  display:none;
}
.pcnone {
  display:none;
}
.spnone {
  display:inline-block;
}

/*header
=============================*/
.m_header_area {
  background:rgba(255,255,255,0.8);
  padding:10px 0 5px;
}
/*.m_header_area .m_header_logo {
  width:34%;
}*/
.m_header_area .wid1000 {
  max-width:100%;
}
.m_header_area .wid1000 .m_header_logo {
  width:340px;
  padding-left:20px;
}

/*hamburger
=============================*/
.m_menu {
  position: fixed;
  top: 0;
  right: -100%; /* 初期状態では画面の外に隠れている */
  width: 50%;
  height: 100%;
  background-color: rgba(255,255,255,0.95);
  color: #333;
  transition: right 0.3s ease; /* スライドインのアニメーション */
  padding: 15px 20px;
  box-sizing: border-box;
  z-index: 10;
}

/* メニューが開いているとき */
.m_menu.open {
  right: 0;
}

/* ボタンのスタイル */
.m_hamburger {
  position: fixed;
  top: 13px;
  right: 10px;
  width: 50px;
  padding:8px;
  cursor: pointer;
  z-index: 20;
  border-radius:3px;
}

.m_hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #222;
  margin: 5px 0;
  transition: 0.4s;
}

.m_hamburger.active {
  background:#222;
}
.m_hamburger.active span {
  background-color: #fff;
}

/* バツ印に変化するスタイル */
.m_hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.m_hamburger.active span:nth-child(2) {
  opacity: 0;
}

.m_hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
}

.m_menu ul {
  list-style-type: none;
  padding: 0;
}

.m_menu li {
  border-bottom: 1px dotted #999;
}

.m_menu li a {
  color: #222;
  text-decoration: none;
  display: block;
  position:relative;
  padding: 20px 0;
}
.m_menu li a:after {
  content:"→";
  position:absolute;
  top: 50%;
  right:0;
  transform: translateY(-50%);
}
.m_menu_jigyo_h {
  margin-top:20px;
}
.m_menu ul.m_menu_jigyo {
  margin-top:0;
  margin-bottom:10px;
}
.m_menu ul.m_menu_jigyo li {
  padding:0 0 0 100px;
  border-bottom:0;
}
.m_menu li.m_menu_privacy {
  border-bottom:0;
  margin-top:40px;
}
.m_menu li.m_menu_privacy a {
  display:inline;
  padding-right:2em;
}

.m_menu_contact {
  border:0;
  margin-bottom:40px;
  width:60%;
  padding:0;
}
.m_menu_contact a {
  border:1px solid #dd432d;
  border-radius:100px;
  padding:10px 30px;
  display:block;
  position:relative;
  text-decoration:none;
  background:#dd432d;
  color:#fff;
}
.m_menu_contact a:after {
  content:"→";
  position:absolute;
  top: 50%;
  right:30px;
  transform: translateY(-50%);
}
.m_menu_contact a:hover {
  background:#fff;
  color:#dd432d;
}

/*bread
=============================*/
.m_bread .wid1000 {
  max-width:100%;
  padding-left:1.5%;
}
.m_bread li {
  display:inline;
  margin-left:2em;
  position:relative;
  font-size:14px;
}
.m_bread li:before {
  content:"＞";
  position:absolute;
  top:0;
  left:-1.5em;
}
.m_bread li:first-child {
  margin-left:0;
}
.m_bread li:first-child:before {
  content:none;
}
.m_bread li a {
  font-size:14px;
}

/*m_newsarea
=============================*/
.m_newsarea {
  background:#efefef;
  padding:20px 0;
  margin-bottom:100px;
}
.m_h_news_01 {
  font-size:1.5em;
  font-weight:bold;
  text-align:center;
  margin-bottom:10px;
}
.m_news_dl_01 {
  display:flex;
  flex-wrap: wrap;
}
.m_news_dl_01 dt,
.m_news_dl_01 dd {
  padding:10px;
  border-bottom:1px dotted #222;
}
.m_news_dl_01 dt {
  width:20%;
}
.m_news_dl_01 dd {
  width:80%;
}


.m_firstarea {
  position:relative;
  margin:40px auto 50px;
}

.m_firstarea_img {
  position:relative;
  top:0;
  left:10%;
  min-width:600px;
  width:48%;
}
.m_firstarea_txt {
  position:absolute;
  top:50%;
  left:52%;
  transform:translateY(-50%);
  width:100%;
  background:rgba(103,122,176,0.9);
  padding:20px;
  z-index:1;
}
.m_firstarea_txt.m_kitchen {
  background:rgba(208,67,45,0.9);
}
.m_firstarea_txt.m_gardening {
  background:rgba(223,182,69,0.9);
}
.m_firstarea_txt.m_cleaning {
  background:rgba(72,141,110,0.9);
}
.m_firstarea_txt.m_other {
  background:rgba(28,67,142,0.9);
}
.m_firstarea_txt * {
  color:#fff;
  font-weight:bold;
  font-family:'Noto Serif JP', serif;
}
.m_firstarea_txt h1 {
  font-size:3em;
  line-height:1;
  margin-bottom:10px;
}

.m_aco_block_01 {
  margin-bottom:30px;
  border:1px solid #444;
}
.m_aco_block_01 h2 {
  text-align:center;
  padding:20px;
  font-size:1.5em;
  position:relative;
}
.m_aco_block_01 h2:hover {
  cursor:pointer;
  opacity:0.8;
}
.m_aco_block_01 h2:before {
  content:"＋";
  position:absolute;
  right: 20px;
}
.m_aco_block_01 h2.active:before {
  content:"‐";
  font-weight:bold;
}
.m_aco_displaybox_01 {
  display:none;
  padding:0 3% 3%;
}

/* other
=============================*/
.m_other_h_01 {
  text-align:center;
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom:1em;
}
.m_other_ul_01 {
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.m_other_ul_01 li {
  width:48%;
  margin-bottom:20px;
}
.m_other_ul_01 li a {
  display:block;
  text-decoration: none;
  border: 1px solid rgba(28,67,142,1);
  color:rgba(28,67,142,1);
  padding: 15px;
  position: relative;
}
.m_other_ul_01 li a:before {
  content: "→";
  position: absolute;
  right: 3%;
  top:50%;
  transform:translateY(-50%) rotate(-45deg);
}
.m_other_ul_01 li a:hover {
  background:rgba(28,67,142,1);
  color:#fff;
}







/*footer
=============================*/
#m_footer {
  margin-top:150px;
  position: static;
  z-index:2;
}
.m_footer_crarea {
  background:rgba(10,10,10,0.8);
  padding:10px 0;
  text-align:center;
  color:#fff;
  font-size:14px;
}

/*=======================================

SP

=======================================*/
@media screen and (max-width:768px) {

a[href*="tel:"]{
  color: #0098E2;
  text-decoration:underline;
  pointer-events: auto;
}

.pcnone {
  display:inline-block;
}
.spnone {
  display:none;
}
.wid800,
.wid1000 {
  width:94%;
  margin:0 auto;
}
.mb50 {
  margin-bottom:30px;
}
.mb200 {
  margin-bottom:120px;
}

.m_h1_02 {
  font-size:2em;
  margin:60px auto;
}
.m_h2_01 {
  font-size:1.5em;
  margin-bottom:30px;
}

.m_txtarea_01,
.m_imgarea_01 {
  width:100%;
  margin-bottom:20px;
}


/*header
=============================*/
/*.m_header_area .m_header_logo {
  width:60%;
}*/
.m_header_area .wid1000 .m_header_logo {
  padding-left:0;
  padding-top:7px;
  width:60%;
}

/*hamburger
=============================*/
.m_hamburger {
  top:14px;
}
.m_menu {
  width: 85%;
  padding-top:10px;
}
.m_menu_contact  {
  width:70%;
  margin-bottom:20px;
}
.m_menu_contact a {
  padding:10px 20px;
}
.m_menu_contact a:after {
  right:20px;
}
.m_menu li a {
  padding:10px 0;
}


.m_news_dl_01 dt,
.m_news_dl_01 dd {
  width:100%;
}
.m_news_dl_01 dt {
  font-weight:bold;
  border-bottom:0;
}

.m_firstarea_img {
  min-width:auto;
  width:100%;
  left:0;
}
.m_firstarea_txt {
  left:5%;
  top:90%;
  width:95%;
}
.m_firstarea_txt h1 {
  font-size:2em;
}
.m_aco_block_01 h2 {
  text-align:left;
}
.m_aco_block_01 h2:before {
  right:15px;
}
.m_aco_displaybox_01 {
  padding:0 5% 5%;
}
.m_aco_block_01 h2 {
  font-size:1.3em;
  padding:15px 30px 15px 15px;
  font-weight:bold;
}
.m_ol_01 li .m_ol_02 {
  padding-left:1em;
}

.m_other_ul_01 {
  display:block;
}
.m_other_ul_01 li {
  width:100%;
  margin-bottom:20px;
}
.m_bread .wid1000 {
  padding-left:0;
}


/*common
=============================*/
/*footer
=============================*/
.m_footer_crarea {
  font-size:10px;
}

}





/*=======================================

SP:375px以下

=======================================*/
@media screen and (max-width:375px) {

}
