@charset "UTF-8";
/* *******************************************************************************
-------------------------------------------------------------
■ PC
-------------------------------------------------------------
 0. common
 ├ 0-1. text link
 └ 0-2. inq bnr
 1. header
 ├ 1-1. togglemenu
 ├ 1-2. globalNav
 └ 1-3. Sub Lists
 2. mainimage
 4. footer
 5. inquiry
 6. blog
 7. news
 ├ 7-1. default
 ├ 7-2. title　変更可用
 ├ 7-3. news list page
 └ 7-4. blog page
 8. sitemap
-------------------------------------------------------------
■ Tablet
-------------------------------------------------------------
 0. common
 └ 0-2. inq bnr
 1. header
 └ 1-2. globalNav
 3. side
 4. footer

-------------------------------------------------------------
■ SmartPhone
-------------------------------------------------------------
 0. common
 └ 0-2. inq bnr
 1. header
 ├ 1-2. globalNav
 └ 1-3. Sub Lists
 3. side
 4. footer
 5. inquiry
 6. blog
 7. news
-------------------------------------------------------------
■ 上記MediaQueryで対応できない処理
-------------------------------------------------------------

******************************************************************************* */
/* color palette --------

● base
 1. #f5f5f5  薄
 2. #f2f2f2　↑
 3. #aeaeae
 4. #　↓
 5. #　濃

---------------------- */
/* ----------------------------------------------------------
■ PC
----------------------------------------------------------- */
/* =====================================
 0. common
===================================== */
html {
  overflow-y: scroll;
}

body {
  font-family: "Meiryo", "メイリオ", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  font-size: 85%;
  line-height: 160%;
  /* ★問い合わせフォーム用に案件のURLを絶対パスで記載する必要あり★ */
  background: #fff !important;
  color: #000;
}

#inquiryBody {
  font-size: 85%;
  line-height: 160%;
  /* ★問い合わせフォーム用に案件のURLを絶対パスで記載する必要あり★ */
  background: #fff !important;
  color: #000;
}

body.android {
  overflow-x: hidden;
}
body.android #footer {
  position: static !important;
}

#base {
  z-index: 0;
}

/* 0-1. text link ---------------------------- */
a {
  color: #333;
  text-decoration: none;
}
a:link, a:visited {
  color: #333;
  text-decoration: none;
}
a:hover, a:active {
  color: #555;
  text-decoration: underline;
}
a:focus {
  outline: none;
}

*:focus {
  outline: none;
}

/* content text link */
.link a:link {
  text-decoration: underline;
}

input[type=submit]:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
}

/* 0-2. inq bnr ---------------------------- */
div#content-bottom {
  margin-bottom: 3em;
}

#inquiryBody #content-bottom {
  display: none;
}

#content-bottom li.inq_tel img, #content-bottom li.inq_mail img {
  max-width: 345px;
  margin-top: 10px;
}
#content-bottom li.inq_tel, #content-bottom li.inq_mail {
  width: 49%;
  float: left;
}
#content-bottom li.inq_tel {
  margin-right: 2%;
}

/* =====================================
 1. header
===================================== */
#header {
  background: none;
  margin-bottom: 20px;
}
#header h1 img {
  width: auto;
  margin: 10px 0;
}

#header_bg {
  background: none;
}

#header .pc {
  display: block;
}
#header .pc img.pc_mail {
  margin: 10px 0 0 10px;
}

/* 1-1. togglemenu ---------------------------- */
.togglemenu {
  background: none;
  display: none;
}

/* 1-2. globalNav ---------------------------- */
#gnav {
  background: none;
  width: 100%;
}

.nav {
  border-left: 1px solid #f5f5f5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  list-style: none;
  *zoom: 1;
  position: relative;
  width: auto;
  max-width: 960px;
  margin: 0 auto;
}
.nav li {
  width: 16.6%;
  border-right: 1px solid #f5f5f5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}
.nav li.first {
  width: 17%;
}
.nav:before {
  content: " ";
  display: table;
}
.nav:after {
  content: " ";
  display: table;
  clear: both;
}
.nav a,
.nav span {
  padding: 14px 15px;
  *zoom: 1;
  cursor: pointer;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.nav > li {
  float: left;
  z-index: 200;
}
.nav > li > a,
.nav > li > span {
  display: block;
}
.nav a:hover,
.nav span:hover {
  background: #f5f5f5;
}

/* ★tablet toggle ---------------------------- */
.android .nav:focus .sub {
  display: block;
}

/* 1-3. Sub Lists ---------------------------- */
.sub {
  position: absolute;
  left: -9999px;
  z-index: 100;
  list-style: none;
  margin: 0;
}
.sub li {
  width: 12em;
  padding: 0;
  border-right: none;
}
.sub li a {
  display: block;
  background: #eee;
  position: relative;
  z-index: 100;
  border-top: 1px solid #fff;
}
.sub li a:hover {
  background: #f9f9f9;
}

.nav li {
  position: relative;
}
.nav li li.hover ul {
  left: 100%;
  top: 0;
}
.nav > li.hover > ul {
  left: 0;
}

/* =====================================
 2. mainimage
===================================== */
.type1 #mainimage .gnv_tmp_h2_bg {
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  background: #f5f5f5;
  padding: 5px 15px;
  line-height: 1.2 !important;
  margin-bottom: 10px;
  position: relative;
}
.type1 #mainimage .gnv_tmp_h2_bg:after {
  background-color: #ccc;
  content: "";
  display: block;
  height: 60%;
  left: 13px;
  position: absolute;
  top: 20%;
  width: 5px;
}

/* =====================================
 4. footer
===================================== */
#footer {
  background: #fff;
  background-image: none;
  border-top: 1px dotted #9e9e9e;
}
#footer .inner {
  width: 960px;
  margin: 0 auto;
  text-align: center;
  padding: 15px 0 10px;
  font-size: 100%;
}
#footer .footerLink {
  color: #000;
  margin-bottom: 5px;
}
#footer .footerLink a {
  color: #000;
}

address {
  font-weight: bold;
  color: #000;
}

/* =====================================
 5. inquiry
===================================== */
body#inquiryBody {
  background: none;
}
body#inquiryBody #mainimage {
  display: none;
}

/*
■問合せタイトルを付けたい場合
1）下記のコメントアウトを削除する
2）パーツ内の「テキスト」でタイトルを「テキスト」に入力する
 */
/*
body#inquiryBody .message {
	display: none;
}
body#inquiryBody .inquiry_textbox {
	margin-bottom: 20px;
}
body#inquiryBody .inquiry_textbox:first-child {
    border-bottom: 1px solid #dedede;
	background: url(/asset/h2_bg.gif) no-repeat bottom left;
	font-size: 130%;
    line-height: 1.2;
    padding: 15px;
	border-radius: 0;
    position: relative;
}
*/
.form_error_notice {
  text-align: center;
  color: #cc0000;
  font-weight: bold;
  margin-bottom: 20px;
}

/* =====================================
 6. blog
===================================== */
.entry {
  margin-bottom: 20px;
}

#blogBody .date {
  text-align: right;
}
#blogBody .contributor {
  font-weight: bold;
}

#pagenation {
  background: none;
  border-top: 1px solid #ddd;
}
#pagenation .active a,
#pagenation a.active:hover {
  background: #999 !important;
}

#blogside h3 {
  background: none #f5f5f5;
  border-bottom: 1px solid #ddd;
  width: auto;
  padding: 3px 5px;
}
#blogside li {
  position: relative;
  padding: 0 0 0 15px;
}
#blogside li:before {
  content: "";
  position: absolute;
  background: #ddd;
  top: 13px;
  left: 0;
  margin-top: -5px;
  height: 5px;
  width: 5px;
  padding: 0;
}
#blogside li.child-2 {
  margin-left: 15px;
}
#blogside li.child-2:before {
  content: "";
  position: absolute;
  background: #ddd;
  top: 13px;
  left: 5px;
  margin-top: -5px;
  height: 4px;
  width: 4px;
  border-radius: 50%;
  padding-left: 0;
}

/* news(side) list 打ち消し用 */
#blogBody #blogList {
  width: 72% !important;
  float: left;
}

/* search */
.blog_search_input input {
  width: 98%;
  margin-bottom: 3px;
}

.blog_search_submit {
  display: block;
  text-align: center;
  width: 98%;
}

/* blog link -------------------------- */
#blogBody .contentArea a {
  word-break: break-all;
}

/* =====================================
 7. news
===================================== */
/* 7-1. default -------------------------- */
#news {
  position: relative;
  background: #fff;
  padding-bottom: 10px;
}
#news .newsBt {
  top: 4%;
  right: 10px;
}
#news dl {
  margin-bottom: 0.6em;
  border-bottom: 1px dashed #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#news dt {
  padding: 0 15px;
  margin-bottom: 0.1em;
  color: #999;
  width: 150px;
  float: none;
}
#news dd {
  padding: 0 15px;
  padding-bottom: 0.6em;
  float: none;
  width: auto;
}
#news .newsNew {
  background: none #333;
  color: #fff;
  display: block;
  float: right;
  font-size: 90%;
  line-height: 1;
  margin: 5px 0 0 10px;
  padding: 3px 5px;
  text-indent: 0;
  text-align: center;
}

#newsDetail .newsNew {
  background: none #333;
  color: #fff;
  display: block;
  float: right;
  font-size: 90%;
  line-height: 1;
  margin: 5px 0 0 10px;
  padding: 3px 5px;
  text-indent: 0;
  text-align: center;
}

#news dd a,
#newsDetail dd a {
  text-decoration: underline;
}

.newsDetailBody img {
  margin: 5px;
}

/* iPad iPhone */
/*
.ios #news dt {
	padding: 0 10px;
	width: 180px;
	margin-top: 0;
}
*/
/* 7-3. news list page -------------------------- */
#newsList #side #news {
  display: none;
}

#news #pagenation ul {
  text-align: center;
}
#news #pagenation ul li a {
  background: #ddd;
  margin-right: 5px;
}

/* 7-4. blog page -------------------------- */
#blogBody #news,
#blogBody .contentArea.news_list {
  width: 100% !important;
  float: none;
}

/* =====================================
 8. sitemap
===================================== */
ul.sitemap_ic li a {
  padding-right: 40px;
}
ul.sitemap_ic li a:after {
  background-color: #fff;
}

/* ----------------------------------------------------------
■ Tablet
----------------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 980px) {
  /* gnav both ends padding */
  #gnav {
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  /* =====================================
   0. common
  ===================================== */
  body {
    background-image: none !important;
  }
  #contentBase {
    min-height: 700px;
    max-width: 760px;
    margin: 0 auto;
  }
  #inquiryBody #contentBase {
    min-height: 860px;
  }
  #content {
    padding: 1em 30px 0 !important;
  }
  /* 0-2. inq bnr ---------------------------- */
  div#content-bottom {
    padding: 0 30px;
  }
  div#content-bottom img {
    width: 100%;
  }
  /* =====================================
   1. header
  ===================================== */
  #header h1 {
    width: 40%;
  }
  #header h1 img {
    width: 100%;
  }
  #header .pc {
    display: block;
  }
  #header .pc img.pc_tel {
    width: 50%;
  }
  #header .pc img.pc_mail {
    width: 40%;
  }
  /* 1-2. globalNav ---------------------------- */
  #globalNav .dropcordion {
    width: 100%;
    margin: 0;
    display: table;
  }
  #gnav01,
  #gnav04 {
    display: none;
  }
  /* =====================================
   3. side
  ===================================== */
  #side {
    background: #fff;
  }
  #side .inner {
    margin: 0 auto 30px;
    max-width: 460px;
    padding: 0;
    width: 90%;
  }
  .bnr_stel {
    display: none;
  }
  /* =====================================
   4. footer
  ===================================== */
  #footer .inner {
    width: auto;
  }
}
/* ----------------------------------------------------------
■ SmartPhone
----------------------------------------------------------- */
@media screen and (max-width: 767px) {
  /* =====================================
   0. common
  ===================================== */
  body {
    background: none !important;
    font-size: 97% !important;
  }
  #content {
    padding: 1em 20px 0 !important;
  }
  .sp_img_height {
    max-width: 80%;
  }
  /* 0-2. inq bnr ---------------------------- */
  div#content-bottom {
    padding: 0 20px;
  }
  #content-bottom li {
    margin-bottom: 15px;
  }
  #content-bottom img {
    width: 100%;
  }
  /* =====================================
   1. header
  ===================================== */
  #header {
    margin-bottom: 0;
  }
  #header h1 {
    width: 50%;
  }
  #header h1 img {
    width: 100%;
  }
  #header_bg {
    background: none #fff;
  }
  #header .rightBox {
    width: 40%;
  }
  #header .pc {
    display: none !important;
  }
  #header #mail_button,
  #header #menu_button,
  #header #tel_button,
  #header .official_button {
    display: block;
    float: right;
    margin-left: 0;
    max-width: inherit;
    width: auto;
  }
  #header #mail_button img,
  #header #menu_button img,
  #header #tel_button img,
  #header .official_button {
    display: inline;
    margin-left: 0.3%;
    max-width: 80px;
  }
  /* 1-2. globalNav ---------------------------- */
  #gnav {
    background: none;
    height: auto;
    width: 100%;
  }
  .nav {
    display: none;
    border: none;
  }
  .nav li {
    border: none;
  }
  .nav > li {
    float: none;
  }
  .nav ul {
    display: block;
    width: 100%;
  }
  .nav > li.hover > ul {
    position: static;
  }
  .nav li {
    background: #f5f5f5;
    border-top: 1px solid #fff;
    text-align: left;
    position: relative;
    display: block;
  }
  .nav li li.hover ul {
    position: static;
  }
  .nav li.first {
    width: 100%;
  }
  .nav li span {
    padding-right: 40px;
  }
  .nav li span:before {
    display: block;
    content: "";
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 21px;
    right: 15px;
    width: 15px;
    height: 15px;
    margin-top: -5px;
    background: #ccc;
    background: none\9 ;
    /* IE8 */
  }
  .nav li span:after {
    display: block;
    content: "";
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 18px;
    right: 15px;
    width: 15px;
    height: 15px;
    margin-top: -5px;
    background: #f5f5f5;
    background: none\9 ;
    /* IE8 */
  }
  .nav a:hover,
  .nav span:hover {
    background: none;
    text-decoration: none;
  }
  /* 1-3. Sub Lists ---------------------------- */
  .sub {
    margin: 0;
  }
  .sub li {
    background: #ddd;
    border-top: none;
  }
  .sub li a {
    border-top: 1px solid #ddd;
    background: #ededed;
  }
  .sub li a:hover {
    background: none #ededed;
    text-decoration: none;
  }
  .nav li,
  .sub li {
    width: 100%;
  }
  /* =====================================
   3. side
  ===================================== */
  #side {
    background: #fff;
  }
  #side .bn {
    margin-bottom: 0;
    margin-right: 8px;
    width: 43%;
    margin-bottom: 8px;
  }
  .bnr_stel {
    display: none;
  }
  #side .inner {
    padding: 0;
    width: 90%;
    max-width: 460px;
    margin: 0 auto 30px;
  }
  #side img {
    float: left;
    max-width: 220px;
    width: 45%;
    margin: 0 0 2.5% 3.4%;
  }
  /* =====================================
   4. footer
  ===================================== */
  #footer {
    position: static !important;
  }
  #footer .inner {
    width: auto;
  }
  /* =====================================
   5. inquiry
  ===================================== */
  .inquiryFormTable dt {
    background: #e5e5e5 !important;
    color: #333;
  }
  /* =====================================
   6. blog
  ===================================== */
  #blogBody #blogList {
    width: 100% !important;
  }
}
@media (min-width: 601px) and (max-width: 767px) {
  #blogside {
    width: 100% !important;
    float: none !important;
    padding-bottom: 30px;
  }
  #blogBody #blogList {
    width: 100% !important;
    float: none !important;
  }
  /* =====================================
   7. news
  ===================================== */
  #news dt {
    padding: 0 10px;
    width: 140px;
  }
  #pagenation .inner {
    margin-bottom: 50px;
  }
  /* iPhone */
  /*
  .ios #news dt {
  	padding: 0 10px;
  	width: 180px;
  }
  .ios #news .newsNew,
  .ios #newsDetail .newsNew {
      padding: 3px 10px  3px 5px;
  	line-height: 0.8;
  }
  */
}
@media screen and (max-width: 400px) {
  #header .rightBox {
    width: 40%;
  }
  #header #mail_button img,
  #header #menu_button img,
  #header #tel_button img,
  #header .official_button {
    display: inline;
    margin-left: 0.3%;
    max-width: 50px;
  }
}
/* ----------------------------------------------------------
■ 上記MediaQueryで対応できない処理
----------------------------------------------------------- */
/* コンテンツが短い場合 */
@media screen and (max-width: 640px) {
  #contentBase {
    min-height: 200px;
  }
}/*# sourceMappingURL=plimo_structure.css.map */