@charset "utf-8";
/* CSS Document */


/*===============================

    common

================================*/
div#cont { margin: 0;}

.wrapper {
  box-sizing: border-box;
  font-family:"Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 20px auto 0;
  overflow:hidden;
  text-align: left;
  width: 980px;
}

@media print {
.wrapper { font-family: '游ゴシック' , 'Hiragino Kaku Gothic ProN' , 'ヒラギノ角ゴ ProN' , Meiryo , 'メイリオ' , sans-serif; }
}

.header { margin: 20px 0; }

.container {
  float: left;
  width: 730px;
}

.container img { vertical-align: bottom; }



/*===============================

    project

================================*/
.p_generalContainer {
  margin: 60px 0;
}

/*
    ナビゲーション
================================*/
.pageNav {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -moz-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  -o-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-bottom: 30px;
}

.pageNav_item { width: calc((100% / 4) - 10px); }

.pageNav_item > a {
  color: #333;
  display: block;
  font-weight: 700;
  overflow: hidden;
  padding: 10px;
  position: relative;
  text-align: center;
  text-decoration: none;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.pageNav_item > a:hover {
  text-decoration: none;
}

.pageNav_item > a:before,
.pageNav_item > a:after {
  background-color: #182f75;
  content: "";
  height: 3px;
  position: absolute;
  top: 0;
  left: -100%;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  width: 100%;
}

.pageNav_item > a:after {
  top: auto !important;
  right: -100%;
  bottom: 0 !important;
  left: auto;
}

.pageNav_item > a:hover:before { left: 0; }

.pageNav_item > a:hover:after { right: 0; }


/*
    見出し
================================*/
.p_headingTtl {
  border-bottom: 1px solid #182f75;
  color: #182f75;
  font-size: 50px;
  display: inline-block;
  letter-spacing: 7px;
  line-height: 1.3;
  margin-bottom: 40px;
  position: relative;
  text-indent: 7px;
}

.p_headingTtl > span {
  color: #333;
  font-size: .3em;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform:translateY(-50%) ;
  -o-transform:translateY(-50%) ;
  transform: translateY(-50%);
  width: 100%;
}

/* 白文字 */
.p_headingTtl-wh {
  border-bottom: 1px solid #fff;
  color: #fff;
}

/* 色だけ */
.p_headingTtl-color {
  color: #182f75;
  font-size: 18px;
  margin-bottom: 20px;
}

/*
    section
================================*/
.p_bgImgBox {
  background-position: center top;
  background-repeat: no-repeat;
}

.p_bgImgBox-bgc {
  background-color: #182f75;
  color: #fff;
}

.p_bgImgBox.about { background-image: url("../../img/business_partner/img_bizm-about.jpg"); padding: 20.54% 8.21% 8.21% 8.21% }
.p_bgImgBox.nippon { background-image: url("../../img/business_partner/bg_bizm1.jpg"); padding:  8.21%; }
.p_bgImgBox.greeting { background-image: url("../../img/business_partner/img_bizm-greeting.jpg"); padding: 50.6% 5.47% 0px  8.21%; }

/* OUR VISION */
.p_slogan { text-align: right; }

.p_slogan_text {
  color: #182f75;
  display: inline-block;
  font-size: 35px;
  font-weight: 700;
}

.p_slogan_text-sm {
  font-size: 20px;
  text-align: right;
}

[class^="p_slogan_text"] > span {
  display: block;
  font-size: .7em;
  text-align: right;
}

/* サービス概要（BIZMAとは） */
.p_localContainer { margin: 30px 0; }

.p_localContainer_inner {
  padding: 4.19% 6.84% 4.19% 21.9%;
  position: relative;
}
.p_localContainer_inner::before {
  content: url("../../img/business_partner/logo_bizm.png");
  position: absolute;
  top: 0;
  left: 8.21%;
}

.p_localContainer_inner:nth-of-type(odd)  {
  background-color: #e4e4e4;
}

.p_localContainer_inner:last-of-type {
  padding-bottom: 0;
}

/* 自治体様への～ */
.p_borderBox {
 border: 1px solid #333;
}

.p_borderBox-red {
  border-color: red;
  margin-bottom: 100px;
  position: relative;
}
.p_borderBox-blue { border-color: #182f75; }

.p_borderBox-red::before {
  /*border: 30px solid transparent;
  border-left: 30px solid #fff;
  border-bottom: 30px solid #fff;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  bottom: -63px;
  left: 45%;
  transform: rotate(-45deg) skew(20deg,20deg);
  width: 0;
  z-index: 3;*/
}

.p_borderBox-red::after {
  border-left: 15px solid #182f75;
  border-bottom: 15px solid #182f75;
  content: "";
  display: block;
  height: 45px;
  position: absolute;
  bottom: -72px;
  left: 45%;
  transform: rotate(-45deg) skew(20deg,20deg);
  width: 45px;
  z-index: 1;
}

.p_borderBox_ttl {
  color: #fff;
  background-color: #ff000f 0;
  padding: 5px;
  text-align: center;
}

.p_borderBox-red .p_borderBox_ttl { background-color: red; }
.p_borderBox-blue .p_borderBox_ttl { background-color: #182f75; }

.p_borderBox_list {
  margin: 20px;
}

.p_borderBox_list >li {
  padding-left: 1em;
  text-indent: -1em;
}

.p_borderBox_list > li + li { margin-top: 10px; }

/* 代表略歴 */
.p_description {
  background-color: #e4e4e4;
  margin-top: 30px;
  padding: 20px;
}

.p_infoTbl {
  border-color: #ccc;
  border-collapse: collapse;
  border-style: solid;
  border-width: 1px 0;
  table-layout: fixed;
  width: 100%;
} 

.p_infoTbl th {
  border-color: #ccc;
  border-style: solid;
  border-width: 0 0 1px;
  color: #182f75;
  font-weight: normal;
  padding: 10px 10px 10px 20px;
  text-align: left;
  width: 30%;
}

.p_infoTbl td{
  border-color: #ccc;
  border-style: solid;
  border-width: 0 0 1px;
  padding: 10px 0;
  width: 70%;
}

.p_infoTbl td dl > div:first-of-type { margin-bottom: 20px; }

.p_infoTbl td dt {
  margin-bottom: 5px;
  padding-left: 1em;
  text-indent: -1em;
}

.p_infoTbl td dd { padding-left: 1em; }

/* iframe */
.p_iframeWrap {
  height: 0;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}

.p_iframeWrap > iframe {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}




/*===============================

    component

================================*/
.c_text {}

.c_text + .c_text { margin-top: 20px; }

/* 黄色背景 */
.c_text-attention {
  background-color: #ffe227;
  font-weight: 700;
  margin-top: 20px;
  padding: 5px;
  text-align: center;
}

.c_colorTxt { color: #182f75; }

/* 写真 */
#greeting img { margin: -10.95% 0 2.73% 2.73%; }


/*===============================

    utility

================================*/
/* font-weight */
.u_fw-b { font-weight: bold; }

/* text-align */
.u_ta-c { text-align: center; }
.u_ta-r { text-align: right; }
.u_ta-l { text-align: left; }

/* float */
.u_fl-l { float: left; }
.u_fl-r { float: right; }
.u_fl-n { float: none; }

/* 左側の表示調整用 */
.u_fix-l { margin-left: 8.21%; }

/*===============================

    ★★レスポンシブ

================================*/
@media screen and (max-width:768px) {
  .wrapper { width: 100%; }

  #cont { margin: 0 10px; }

  .container {
    float: none;
    width: 100%;
  }
  
  .p_bgImgBox { background-size: contain; }
  map { display: none; }
}/* @media */

@media screen and (max-width:599px) {
.u_fix-l { margin-left: 0; }
.pageNav_item { width: 100%; }
.p_headingTtl > span { position: static; display: block;margin-top: 10px; }
.p_bgImgBox { background-size: contain; }
#greeting img { width: 50%;height: auto; }
.p_localContainer_inner { padding-left: 28.9%; }
}/* @media */