@charset "utf-8";

/* ----------------------------------------- */
/* CSS Version 20161208
/* ----------------------------------------- */

/* ----------------------------------------- */
/* テキスト リンク色
/* ----------------------------------------- */
/* 色1 */
.text_tag span button i.color1,
span.text_color1{
  color: #C81163;
}
/* 色2 */
.text_tag span button i.color2,
span.text_color2{
  color: #1C8BC1;
}
/* 文中リンク */
div[class^="parts"] a{
  color: #0000FF;
  text-decoration: underline;
}
div[class^="parts"] a:visited{
  color: #990099;
  text-decoration: underline;
}

/* FORMリンク */
.link_form input.submit_button {
  background-image: none;
  background-color: #FFFFFF;

  color:#358487;
  text-decoration: none;
  text-shadow:0 -1px #DCF1F1;

  border: 1px solid #358487;
  border-radius: 5px;
}
.link_form input.submit_button:hover{
  background-image: none;
  background-color: #358487;
  text-shadow:0 -1px #1B4445;
  color: #FFFFFF;
  cursor: pointer;
  border-radius: 5px;
}

/* リンクボタン */
.link{
  background-image: none;
  background-color: #FFFFFF;
  border: 1px solid #358487;
  border-radius: 5px;
}
div[class^="parts"] .link a,
.link a{
  color:#358487;
  text-decoration: none;
  text-shadow:0 -1px #DCF1F1;
  border-radius: 5px;
}
div[class^="parts"] .link a:hover{
  color:#FFFFFF;
  background-color: #358487;
  text-shadow:0 -1px #1B4445;
}

/* 表の文字レイアウト */
.parts07 table,
.parts08 table,
.parts09 table,
.parts10 table,
.parts11 table,
.parts28 table,
.parts29 table,
.parts30 table{
  font-size: 90%;
  line-height: 140%;
}
.parts11 table,
.parts12 table{
  font-size: 90%;
  line-height: 140%;
}

/* 余白設定 */
div[class^="parts"] th, div[class^="parts"] td{
padding: 10px;
}

div[class^="parts"] th img, div[class^="parts"] td img{
padding-top: 5px;
padding-bottom: 5px;
}

/* 区切り線の種類 */
hr{
  border-top: solid 1px #BFBFBF;
}

/* ----------------------------------------- */
/* 表の線種設定
/* ----------------------------------------- */
div[class^="parts"].frame,
div[class^="parts"].ch_frame .child,
div[class^="parts"] th,
div[class^="parts"] td{
  border: solid 1px #358487;
}
div[class^="parts"] th,
div[class^="parts"].frame_bold table{ /* 見出し太枠 */
  border: solid 3px #358487;
}
div[class*="parts"].title_color th{ /* 色付き見出し枠リセット*/
  border: solid 1px #358487;
}
div[class^="parts"].line_bottom_solid tr{ /* 下線（実線） */
  border-bottom: solid 1px #358487;
}
div[class^="parts"].line_bottom_dashed tr{ /* 下線（破線） */
  border-bottom: dashed 1px #358487;
}

/* ----------------------------------------- */
/* 背景色付き・見出し背景色・table
/* ----------------------------------------- */
.back_color,
.ch_back_color .child,
.h_back_color h3{
  background-color: #DAEDED;
}
.title_color th,
.x_even_color tr:nth-child(even),
.y_even_color td:nth-child(even){
  background-color: #DAEDED;
}

/* ----------------------------------------- */
/* Q & A 画像
/* ----------------------------------------- */
/* 大 w690の場合、80px角の正方形 */
.parts16.size_l .question{
	background-image: url(/parts_theme_image/q_l_img.gif);
}
.parts16.size_l .answer{
	background-image: url(/parts_theme_image/a_l_img.gif);
}
.parts16.size_l .question p{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 2.2rem;
  padding-top: 5px;
  line-height: 130%;

  color: #000000;
  background: none;
}
.parts16.size_l .answer p{
}
/* 小 w690の場合、45px角の正方形*/
.parts16.size_s .question{
	background-image: url(/parts_theme_image/q_s_img.gif);
}
.parts16.size_s .answer{
	background-image: url(/parts_theme_image/a_s_img.gif);
}
.parts16.size_s .question p{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 1.8rem;

  color: #000000;
  background: none;
}
.parts16.size_s .answer p{
}

/* ------------------------------- */
/* Before & After 画像
/* ------------------------------- */
.parts17.top_bottom .before img,
.parts17.left_right .before img{
/* 幅300px、高さ20px 以内 BEFOREの文字画像 */
  background-image: url(/parts_theme_image/before.gif);
}
.parts17.top_bottom .after img,
.parts17.left_right .after img{
/* 幅300px、高さ20px 以内 AFTERの文字画像 */
  background-image: url(/parts_theme_image/after.gif);
}
.parts17.top_bottom .before{
  /* 縦レイアウト用の矢印 幅300px、高さ45px以内 */
  background-image: url(/parts_theme_image/arrow_v.gif);
}
.parts17.left_right .before{
  /* 横レイアウト用の矢印 幅100px、高さ80px以内 */
  background-image: url(/parts_theme_image/arrow_h.gif);
}
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  .parts17.left_right .before,
  .column1w .parts17.left_right .before,
  .column1s .parts17.left_right .before{
    /* 縦レイアウト用の矢印 幅300px、高さ45px以内 */
    background-image: url(/parts_theme_image/arrow_v.gif);
  }
}

/* ----------------------------------------- */
/* テキスト見出し フォント指定 及び 背景画像
/* ----------------------------------------- */
/*  column1w H1指定
    .column1w .parts18 h1{
    }
    column1s H1指定
    .column1s .parts18 h1{
    }
*/
.parts18 h1{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;

  text-align: center;
  font-size: 3.9rem;
  line-height: 120%;
  padding-bottom: 10px;
  text-shadow: 2px 2px 1px rgba(230,230,230,1);
  position: relative;
}
.parts18 h1:before{
  content: '';
  position: absolute;
  bottom: -2px;
  display: inline-block;
  width: 76px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #C1272D;
}
.parts18 h1::first-letter{
  color: #C1272D;
}
.parts18 h1 a,
.parts18 h1 a:visited{
  text-decoration: none;
  color: #333333;
}
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  .parts18 h1{
    font-size: 2.6rem;
  }
}

.parts18 h2{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;

  font-size: 2.5rem;
  color: #000000;

  background-color: #FFFFFF;
  border-bottom: 1px solid #B3B3B3;
  padding: 10px 10px 10px 25px;
  text-shadow: 1px 1px 0 rgba(255,255,255,1);


  position: relative;
}

.parts18 h2:before{
  content: '';
  top: 0;
  position: absolute;
  background-color:  #99CCCC;
  left: 0px; /* 左端からの位置 */
  width: 8px; /* 左側の線の幅 */
  height: 100%;

}

.parts18 h2:after{
  content: '';
  top: 0;
  position: absolute;
  background-color:  #C1272D;
  left: 8px; /* 左端からの位置 */
  width: 2px; /* 左側の線の幅 */
  height: 100%;

}

/*.parts18 h2::first-letter{
  color: #C1272D;
}*/
.parts18 h2 a,
.parts18 h2 a:visited{
  text-decoration: none;
  color: #333333;
}
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  .parts18 h2{
    font-size: 2.2rem;
  }
}

[class^="parts"] h3{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;

  width: 100%;
  font-size: 1.8rem;
  background-color: #99CCCC;
  color: #000000;
  padding: 8px;
}
[class^="parts"] h3 a,
[class^="parts"] h3 a:visited{
  text-decoration: none;
  color: #333333;
}

 /* 画像見出しとHTMLコードは装飾無し */
[class^="parts19"] h3,
[class^="parts20"] h3,
[class^="parts21"] h3{
  width: 100%;
  background: none;
  border: none;
  padding: 0;
}


.parts18 h4{
  font-family: yu-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: bold;
  background-color: #FFFFFF;
  font-size: 1.8rem;
}
.parts18 h4::first-letter{
  color: #C1272D;
}
.parts18 h4 a,
.parts18 h4 a:visited{
  text-decoration: none;
  color: #333333;
}


 /* 採用声の部分ふきだし（上） */

.voice1 >.parts06 > .ch_group > .child{
    position:relative;
    width:100%;
    height:140px;
    background:#EFF7F7;
    padding:10px;
    color:#333333;
    font-weight:bold;
    border-radius:15px;
    -webkit-border-radius:15px;
    -moz-border-radius:15px;
   display: -webkit-flex;
   display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}
.voice1 >.parts06 > .ch_group > .child:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(239, 247, 247, 0);
    border-top-width:30px;
    border-bottom-width:30px;
    border-left-width:15px;
    border-right-width:15px;
    margin-left: -15px;
    border-top-color:#EFF7F7;
    top:100%;
    left:50%;
}

 /* 採用声の部分文字をナナメに（上） */

.voice2 >.parts27 > .child > .txt {
    transform: rotate(-10deg);
    font-weight:bold;
   display: -webkit-flex;
   display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}

/* 採用声の部分ふきだし（下） */

.voice3 >.parts06 > .ch_group > .child{
    position:relative;
    width:100%;
    height:140px;
    background:#EFF7F7;
    padding:10px;
    color:#333333;
    font-weight:bold;
    border-radius:15px;
    -webkit-border-radius:15px;
    -moz-border-radius:15px;
   display: -webkit-flex;
   display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}
.voice3 >.parts06 > .ch_group > .child:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(239, 247, 247, 0);
    border-top-width:30px;
    border-bottom-width:30px;
    border-left-width:15px;
    border-right-width:15px;
    margin-left: -15px;
    border-bottom-color:#EFF7F7;
    bottom:100%;
    left:50%;
}
