@charset "utf-8";

/* ----------------------------------------- */
/* テキスト リンク色
/* ----------------------------------------- */
/* 色1 */
.text_tag span button i.color1,
span.text_color1{
  color: #e74540;
}
/* 色2 */
.text_tag span button i.color2,
span.text_color2{
  color: #0068b6;
}
/* 文中リンク */
div[class^="parts"] a{
  color: #0033cc;
  text-decoration: underline;
}
div[class^="parts"] a:visited{
  color: #93278f;
  text-decoration: underline;
}

/* FORMリンク */
.link_form input.submit_button {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.7rem;
  color: #FFFFFF;
  font-optical-sizing: auto;
  line-height: 136%;
  
  background-color: #00a4eb;
  background-image: none;
  text-decoration: none;

  border: 2px solid #00a4eb;
  text-shadow:0 -1px #00a4eb;
  border-radius: 5px;
  min-height: 42px;
}
.link_form input.submit_button:hover{
  background-image: none;
  color: #00a4eb;
  cursor: pointer;
  border-radius: 5px;

  background-image: none;
  background-color: #FFFFFF;
  text-shadow: none;
}

/* リンクボタン */
.link{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #FFFFFF;
  line-height: 136%;

  background-color: #00a4eb;
  background-image: none;
  border: 2px solid #00a4eb;
  border-radius: 5px;
}
div[class^="parts"] .link a,
.link a{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.7rem;
  color: #FFFFFF;
  text-decoration: none;
  text-shadow: none;
  position: relative;
  border-radius: 4px;
  min-height: 42px;
  padding-top: 10px;
  padding-left: 0;
  padding-right: 12px;
}
div[class^="parts"] .link a:hover{
  color: #00a4eb;
  text-shadow: none;
  background-image: none;
  background-color: #FFFFFF;
}

div[class^="parts"] .link a::before,
.link a::before{
  content: "\025b6";
  font-size: 1.0rem;
  color: #FFFFFF;

  position: absolute;
  right: 12px;
  padding-top: 0px;
}
div[class^="parts"] .link a:hover::before,
.link a:hover::before{
  color:#00a4eb;
  text-shadow: none;
}
/* 表の文字レイアウト */
.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 #CCCCCC;
}

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

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

/* ----------------------------------------- */
/* Q & A 画像
/* ----------------------------------------- */
/* 大 w690の場合、80px角の正方形 */
.parts16.size_l .question{
	background-image: url(/parts_theme_image/q_l_img.png);
}
.parts16.size_l .answer{
	background-image: url(/parts_theme_image/a_l_img.png);
}
.parts16.size_l .question p{
  color: #000000;
  background-color: #f5f5f5;
  border-radius: 5px;
}
.parts16.size_l .answer p{
}
/* 小 w690の場合、45px角の正方形*/
.parts16.size_s .question{
	background-image: url(/parts_theme_image/q_s_img.png);
}
.parts16.size_s .answer{
	background-image: url(/parts_theme_image/a_s_img.png);
}
.parts16.size_s .question p{
  color: #000000;
  background-color: #f5f5f5;
  border-radius: 5px;
}
.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.png);
}
.parts17.top_bottom .after img,
.parts17.left_right .after img{
/* 幅300px、高さ20px 以内 AFTERの文字画像 */
  background-image: url(/parts_theme_image/after.png);
}
.parts17.top_bottom .before{
  /* 縦レイアウト用の矢印 幅300px、高さ45px以内 */
  background-image: url(/parts_theme_image/arrow_v.png);
}
.parts17.left_right .before{
  /* 横レイアウト用の矢印 幅100px、高さ80px以内 */
  background-image: url(/parts_theme_image/arrow_h.png);
}
/* 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.png);
  }
}

/* ----------------------------------------- */
/* テキスト見出し フォント指定 及び 背景画像
/* ----------------------------------------- */
.parts18 h1{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 4.6rem;
  color: #ffffff;
  font-weight: bold;
  
  line-height: 2em;
  display: inline;
  background-color: #18b9ed;
  padding: 13px 10px;
  -webkit-box-decoration-break: clone;
}
.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: 3.2rem;
  }
}

.parts18 h2{
  font-size: 3.0rem;
  line-height: 150%;
  font-weight: 700;
}
.parts18 h2 a,
.parts18 h2 a:visited{
  text-decoration: none;
}

/* Smart Phone View */
@media only screen and (max-width: 649px) {
  .parts18 h2{
  font-size: 2.0rem;
  }
}

[class^="parts"] h3{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  width: 100%;
  line-height: 150%;
  font-size: 1.9rem;
  position: relative;
  display: inline-block;
}
[class^="parts"] h3::after{
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(to right, #18b9ed 0 50px, #020202 50px 100%);
}
 /* H3の表示面積が少ないパーツ対応 */
[class^="parts05"] h3,
[class^="parts06"] h3,
[class^="parts27"] h3,
[class^="parts14"] h3,
[class^="parts15"] h3,
[class^="parts34"] h3,
[class^="parts35"] h3{
  font-size: 1.8rem;
}

[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;
}


[class^="parts"] h4{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-optical-sizing: auto;
  font-style: normal;
  color: #1a1a1a;

  font-size: 1.7rem;
  line-height: 120%;
  display: block;
  width: 100%;
  padding: 6px;
  background-color: #e6e6e6;
}
[class^="parts"] h4 a,
[class^="parts"] h4 a:visited{
  text-decoration: none;
  color: #1a1a1a;
}

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

/* ----------------------------------------- */
/* その他
/* ----------------------------------------- */
[class^="parts"] h1 u,
[class^="parts"] h2 u,
[class^="parts"] h3 u,
u,
span.text_underline{
  text-decoration: none;
  background:linear-gradient(transparent 60%, #FFFF00 0%);
}
