@charset "UTF-8";
/* ----------------------------------------------------------------header*/
header {
  margin: 0;
}
@media print, screen and (min-width:768px) {
  header {
    margin: 0;
  }
}
@media print, screen and (min-width:992px) {
  header {
    margin: 0 0 10px;
  }
}
/* ----------------------------------------------------------------header*/
h1 {
  text-align: center;
  padding: 3px 0 0;
  min-height: 20px;
  font-size: 9px;
  line-height: 1.2;
  color: #666;
}
.header_logo {
  float: left;
}
.header_logo img {
  width: 200px;
  height: auto;
  margin-top: 8px;
}
.header_contact {
  float: right;
}
.header_contact p {
  float: left;
  margin: 0 0 0 5px;
}
.header_contact p span {
  display: none;
}
.header_contact img {
  width: 40px;
  height: auto;
}
@media print, screen and (min-width:480px) {
  .header_logo img {
    width: auto;
    height: 40px;
    margin-top: 0;
  }
}
@media print, screen and (min-width:768px) {
  h1 {
    padding: 5px 0 0;
    min-height: 30px;
    text-align: left;
    font-size: 10px;
  }
  .header_logo {}
  .header_logo img {
    width: auto;
    height: auto;
  }
  .header_contact {}
  .header_contact p.tel {
    margin: 0 15px 0 0;
    padding: 0 0 0 38px;
    background: url(../img/common_img/tel_bg.png) 0 center no-repeat;
    background-size: auto 22px;
  }
  .header_contact p.tel img {
    display: none;
  }
  .header_contact p.tel span {
    display: inline-block;
    font-size: 22px;
    font-weight: bold;
    line-height: 40px;
    color: #000;
  }
}
@media print, screen and (min-width:992px) {
  .header_contact p {
    vertical-align: middle;
  }
  .header_contact p.tel span {
    line-height: 50px;
  }
  .header_contact img {
    width: 50px;
    height: auto;
  }
  .header_contact p.tel span {
    line-height: 50px;
  }
  .header_contact p#toggle {
    display: none;
  }
  .header_contact a:hover img {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
  }
}
/* mainnavi */
#mainnavi {
  display: none;
  clear: both;
  padding: 0;
  text-align: center;
  background: #277;
}
#mainnavi ul li {
  line-height: 90%;
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
}
#mainnavi ul li:last-child {
  border-bottom: none;
}
#mainnavi ul li a {
  display: block;
  padding: 15px 8px;
  text-align: center;
  text-decoration: none;
  color: #fff;
}
#mainnavi ul li.active a {
  background: rgba(255, 255, 255, 0.3);
}
#mainnavi ul li a span {
  font-size: 9px;
  color: rgba(255, 255, 255, 0.7);
}
@media print, screen and (min-width:992px) {
  #mainnavi {
    display: block;
    clear: both;
    margin: 0;
    padding: 0;
  }
  #mainnavi ul {
    width: 940px;
    margin: 0 auto;
    font-size: 0;
    border-left: solid 1px rgba(255, 255, 255, 0.5);
  }
  #mainnavi ul li {
    width: calc(100% / 7);
    padding: 0;
    display: inline-block;
    line-height: 100%;
    border-right: solid 1px rgba(255, 255, 255, 0.5);
    border-bottom: none;
  }
  #mainnavi ul li.sp {
    display: none;
  }
  #mainnavi ul li a {
    margin: 0;
    padding: 14px 0 10px;
  }
  #mainnavi ul li a:hover {
    background: rgba(255, 255, 255, 0.2);
  }
}
@media print, screen and (min-width:1200px) {
  #mainnavi ul {
    width: 1140px;
  }
}
/*------------------------------------------------------------pagetitle*/
#pagetitle {
  clear: both;
  margin: 0 0 20px;
  padding: 0 0 0 10px;
  background: url(../img/common_img/bg_pagetitle.gif) left top;
}
#pagetitle h2 {
  display: inline-block;
  padding: 0 10px;
  font-size: 20px;
  font-weight: bold;
  background: #fff;
}
@media print, screen and (min-width:768px) {
  #pagetitle h2 {
    font-size: 28px;
  }
}
/*------------------------------------------------------------content*/
#content {
  text-align: left;
}
.box {
  clear: both;
  margin-bottom: 20px;
}
@media print, screen and (min-width:768px) {
  #content {
    margin: 0 0 20px;
  }
  .box {
    margin-bottom: 20px;
  }
}
/*subnavi*/
#subnavi {
  display: none;
}
@media print, screen and (min-width:992px) {
  #subnavi {
    display: block;
    margin: 0 0 30px;
  }
  #subnavi ul li {
    margin: 0 0 8px;
  }
  #subnavi ul li a {
    padding: 8px;
    display: block;
    text-align: center;
    color: #fff;
    text-decoration: none;
    background: #277;
  }
  #subnavi ul li a:hover {
    background: rgba(34, 119, 119, 0.7);
  }
}
/*sideinfo*/
#sideinfo {
  margin-bottom: 10px;
}
#sideinfo dt {
  margin: 0 0 10px;
  padding: 0 0 5px;
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom: solid 1px #277;
  text-align: center;
}
#sideinfo dd {
  text-align: center;
}
@media print, screen and (min-width:768px) {
  #sideinfo {
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width:992px) {
  #sideinfo dt {
    text-align: left;
  }
  #sideinfo dd {
    text-align: left;
  }
}
/*bn_link*/
#bn_link p {
  margin: 0 0 5px;
}
#bn_link p a {
  display: block;
  padding: 5px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
}
#bn_link p.map a {
  background: url(../img/common_img/icon_map.png) 10% center no-repeat #277;
  background-size: 20px auto;
}
#bn_link p.facebook a {
  background: #3b5998;
  background-size: 20px auto;
}
#bn_link p.twitter a {
  background: #55acee;
  background-size: 20px auto;
}
#bn_link p.blog a {
  background: url(../img/common_img/icon_blog.png) 10% center no-repeat #2d8c3c;
  background-size: 20px auto;
}
@media print, screen and (min-width:768px) {
  #bn_link {
    width: 50%;
    margin: 0 auto;
  }
}
@media print, screen and (min-width:992px) {
  #bn_link {
    width: 100%;
  }
  #bn_link p a:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
  }
}
/*------------------------------------------------------------Pankuzu*/
/*pankuzu*/
#pankuzu {
  width: 100%;
  height: 40px;
  padding: 8px 0 0;
  clear: both;
}
#pankuzu ol {
  float: right;
  list-style: none;
}
#pankuzu ol li {
  float: left;
  font-size: 11px;
  padding: 0 7px 0 10px;
  background: url(../img/common_img/icon_pankuzu.gif) no-repeat 0 50%;
}
#pankuzu ol li em {
  font-style: normal;
}
#pankuzu ol li.home {
  padding-left: 0;
  background: none;
}
#pankuzu ol li a:link, #pankuzu ol li a:visited {
  text-decoration: underline;
}
#pankuzu ol li a:hover, #pankuzu ol li a:active {
  text-decoration: underline;
}
/* ----------------------------------------------------------------footer*/
footer {
  text-align: center;
  padding: 20px 0;
  background: #eee;
}
footer nav ul {
  display: inline-block;
  margin-bottom: 20px;
}
footer nav ul li {
  display: inline-block;
  padding: 0 10px;
}
footer nav ul li a {
  color: #000;
  text-decoration: none;
}
footer nav ul li a:hover {
  color: #000;
  text-decoration: underline;
}
footer nav ul li a:visited {
  color: #000;
  text-decoration: none;
}
small {
  display: block;
  margin: 0;
  font-size: 10px;
}
@media print, screen and (min-width:768px) {
  footer {
    padding: 30px 0;
  }
}
/* ----------------------------------------------------------------rayout*/
.center {
  margin: auto;
}
/*------------------------------------------------------------list*/
ul.phlist_3column li {
  margin: 0 0 20px;
}
ul.phlist_3column li p {
  margin: 0 0 10px;
  text-align: center;
}
ul.phlist_3column li p img {
  width: 80%;
  height: auto;
}
@media print, screen and (min-width:480px) {
  ul.phlist_3column li {
    width: 32%;
    float: left;
    margin: 0 2% 10px 0;
  }
  ul.phlist_3column li:nth-child(3n) {
    margin: 0;
  }
  ul.phlist_3column li:nth-child(3n+1) {
    clear: both;
  }
  ul.phlist_3column li p img {
    width: 100%;
    height: auto;
  }
}
/*------------------------------------------------------------table*/
.sheet_basic {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ccc;
}
.sheet_basic tr th, .sheet_basic tr td {
  text-align: left;
  vertical-align: top;
  display: block;
}
.sheet_basic tr th {
  padding: 10px 0 0;
}
.sheet_basic tr td {
  padding: 0 0 10px;
  border-bottom: 1px solid #ccc;
}
@media print, screen and (min-width:480px) {
  .sheet_basic tr th, .sheet_basic tr td {
    display: table-cell;
    padding: 10px 8px;
    border-bottom: 1px solid #ccc;
  }
  .sheet_basic tr th {
    background: #eee;
  }
}
/*------------------------------------------------------------Decoration*/
/*Line*/
hr.line_01 {
  height: 1px;
  clear: both;
  margin: 20px 0px;
  border-top: 1px dotted #CCC;
  border-right: 0 dotted #CCC;
  border-bottom: 0 dotted #CCC;
  border-left: 0 dotted #CCC;
}
.space_10 {
  height: 10px;
  clear: both;
}
.space_20 {
  height: 20px;
  clear: both;
}
.space_30 {
  height: 30px;
  clear: both;
}
.space_10 hr, .space_20 hr, .space_30 hr {
  display: none;
}
/*------------------------------------------------------------Text*/
/*title*/
.title01 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  padding: 10px 0;
  margin-bottom: 15px;
  border-bottom: solid 2px #277;
  text-align: left;
}
.title01 span {
  margin: 0 0 0 10px;
  font-size: 14px;
  font-weight: normal;
}
.title01 a {
  float: right;
  padding: 4px 8px;
  display: inline-block;
  font-size: 14px;
  font-weight: normal;
  text-decoration: none;
  color: #fff;
  border: solid 1px #277;
  border-radius: 4px;
  background: #277;
}
.title01 a:hover {
  color: #277;
  background: none;
  border: solid 1px #277;
}
.title02 {
  font-size: 16px;
  font-weight: bold;
  padding: 6px 0;
  margin-bottom: 10px;
  border-bottom: dotted 1px #277;
}
@media print, screen and (min-width:768px) {
  .title01 {
    font-size: 22px;
    padding: 10px 0;
    margin-bottom: 20px;
  }
  .title02 {
    font-size: 18px;
    margin-bottom: 15px;
  }
}
/*TextRight*/
.tx_right {
  text-align: right;
}
/*TextLeft*/
.tx_left {
  text-align: left;
}
/*TextCenter*/
.tx_cent {
  text-align: center;
}
/*big*/
.tx_big {
  font-size: 18px;
}
/*bold*/
.tx_bold {
  font-style: normal;
  font-weight: bold;
}
/*TextRed*/
.tx_red {
  color: #C33;
}
.tx_udl_red {
  border-bottom: solid;
  border-color: #FF0000;
  border-width: 2px;
}
/*attention*/
.attention {
  font-size: 10px;
  line-height: 130%;
  margin: 5px 0;
}
td.rd_flm{
	border-top: 3px solid red!important;
	border-bottom: 3px solid red!important;
	border-right: 3px solid red!important;
	border-left: 3px solid red!important;
	
}
/*------------------------------------------------------------Float*/
/*FloatLeft*/
.float_left {
  float: left;
}
/*FloatRight*/
.float_right {
  float: right;
}
/*ClearBoth*/
.clearboth {
  clear: both;
}
/*------------------------------------------------------------Margin*/
/*MarginTop*/
.margin_t05 {
  margin-top: 5px;
}
.margin_t10 {
  margin-top: 10px;
}
.margin_t20 {
  margin-top: 20px;
}
.margin_t30 {
  margin-top: 30px;
}
.margin_t40 {
  margin-top: 40px;
}
.margin_t50 {
  margin-top: 50px;
}
/*MarginBottom*/
.margin_b05 {
  margin-bottom: 5px;
}
.margin_b10 {
  margin-bottom: 10px;
}
.margin_b20 {
  margin-bottom: 20px;
}
.margin_b30 {
  margin-bottom: 30px;
}
.margin_b40 {
  margin-bottom: 40px;
}
.margin_b50 {
  margin-bottom: 50px;
}
/*MarginRight*/
.margin_r05 {
  margin-right: 5px;
}
.margin_r10 {
  margin-right: 10px;
}
.margin_r15 {
  margin-right: 15px;
}
.margin_r20 {
  margin-right: 20px;
}
/*MarginLeft*/
.margin_l05 {
  margin-left: 50px;
}
.margin_l10 {
  margin-left: 10px;
}
.margin_l15 {
  margin-left: 15px;
}
.margin_l20 {
  margin-left: 20px;
}
/*Margin_device*/
.margin-xs-b10 {
  margin-bottom: 10px;
}
@media print, screen and (min-width:768px) {
  .margin-xs-b10 {
    margin-bottom: 0px;
  }
}
/*------------------------------------------------------------ClearFix*/
.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
/*------------------------------------------------------------Hoverimg*/
a:hover img.hoverimg {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
}
/*------------------------------------------------------------other*/
/*Pagetop*/
#pagetop {
  position: fixed;
  bottom: 10px;
  right: 15px;
}
#pagetop a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #277;
}
#pagetop a span {
  display: none;
}
#pagetop a:after {
  position: absolute;
  margin: auto;
  content: "";
  top: 16px;
  left: 12px;
  width: 16px;
  height: 16px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media print, screen and (min-width:992px) {
  #pagetop {
    bottom: 30px;
    right: 20px;
  }
  #pagetop a {
    width: 50px;
    height: 50px;
  }
  #pagetop a:after {
    top: 20px;
    left: 15px;
    width: 20px;
    height: 20px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
  #pagetop a:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
  }
}
/*------------------------------------------------------------block02*/
/*phbox*/
.block02 .phbox {
  text-align: center;
}
.block02 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block02 .txbox p {
  margin: 0 0 10px;
}
@media print, screen and (min-width:480px) {
  .block02 .phbox {
    float: right;
    width: 35%;
    margin: 0 0 10px 10px;
  }
  .block02 .phbox li {
    width: 100%;
    height: auto;
  }
  .block02 .txbox {
    overflow: hidden;
  }
}
@media print, screen and (min-width:768px) {
  .block02 .phbox {
    margin: 0 0 0 20px;
  }
}
/*------------------------------------------------------------block03*/
/*phbox*/
.block03 .phbox {
  text-align: center;
}
.block03 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block03 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
.block03 .txbox p {
  margin: 0 0 10px;
}
@media print, screen and (min-width:480px) {
  .block03 .phbox {
    float: right;
    width: 35%;
    margin: 0 0 10px 10px;
  }
  .block03 .phbox li {
    width: 100%;
    height: auto;
  }
  .block03 .txbox {
    overflow: hidden;
  }
}
@media print, screen and (min-width:768px) {
  .block03 .phbox {
    margin: 0 0 0 20px;
  }
}
/*------------------------------------------------------------block04*/
/*phbox*/
.block04 .phbox {
  text-align: center;
}
.block04 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block04 .txbox p {
  margin: 0 0 10px;
}
@media print, screen and (min-width:480px) {
  .block04 .phbox {
    float: left;
    width: 35%;
    margin: 0 10px 10px 0;
  }
  .block04 .phbox li {
    width: 100%;
    height: auto;
  }
  .block04 .txbox {
    overflow: hidden;
  }
}
@media print, screen and (min-width:768px) {
  .block04 .phbox {
    margin: 0 20px 0 0;
  }
}
/*------------------------------------------------------------block05*/
/*phbox*/
.block05 .phbox {
  text-align: center;
}
.block05 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block05 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
.block05 .txbox p {
  margin: 0 0 10px;
}
@media print, screen and (min-width:480px) {
  .block05 .phbox {
    float: left;
    width: 35%;
    margin: 0 10px 10px 0;
  }
  .block05 .phbox li {
    width: 100%;
    height: auto;
  }
  .block05 .txbox {
    overflow: hidden;
  }
}
@media print, screen and (min-width:768px) {
  .block05 .phbox {
    margin: 0 20px 0 0;
  }
}
/*------------------------------------------------------------block06*/
.block06 ul {
  font-size: 0;
}
.block06 ul li {
  width: 80%;
  margin: 0 auto 15px;
}
.block06 ul li figure figcaption {
  margin-top: 5px;
  font-size: 11px;
  color: #666;
  line-height: 130%;
}
@media print, screen and (min-width:480px) {
  .block06 ul li {
    width: 32%;
    display: inline-block;
    margin: 0 2% 15px 0;
    vertical-align: top;
  }
  .block06 ul li:nth-child(3n) {
    margin: 0 0 15px 0;
  }
}
/*------------------------------------------------------------block07*/
.block07 ul {
  font-size: 0;
}
.block07 ul li {
  width: 80%;
  margin: 0 auto 15px;
}
.block07 ul li figure figcaption {
  margin-top: 5px;
  font-size: 11px;
  color: #666;
  line-height: 130%;
}
@media print, screen and (min-width:480px) {
  .block07 ul li {
    width: 32%;
    display: inline-block;
    margin: 0 2% 15px 0;
    vertical-align: top;
  }
  .block07 ul li:nth-child(3n) {
    margin: 0 0 15px 0;
  }
}
.block07 .txbox {
  margin: 0 0 15px;
}
/*------------------------------------------------------------block08*/
.block08 ul {
  font-size: 0;
}
.block08 ul li {
  width: 80%;
  margin: 0 auto 15px;
}
.block08 ul li figure figcaption {
  margin-top: 5px;
  font-size: 11px;
  color: #666;
  line-height: 130%;
}
@media print, screen and (min-width:480px) {
  .block08 ul li {
    width: 32%;
    display: inline-block;
    margin: 0 2% 15px 0;
    vertical-align: top;
  }
  .block08 ul li:nth-child(3n) {
    margin: 0 0 15px 0;
  }
}
/*------------------------------------------------------------block09*/
.block09 p {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
@media print, screen and (min-width:768px) {
  .block09 table.sheet_basic tr th {
    width: 30%;
  }
}
/*------------------------------------------------------------block10*/
.block10 .left {
  margin: 0 0 20px;
}
.block10 p {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
@media print, screen and (min-width:768px) {
  .block10 .left {
    width: 48%;
    float: left;
    margin: 0;
  }
  .block10 .right {
    width: 48%;
    float: right;
  }
  .block10 table.sheet_basic tr th {
    width: 30%;
  }
}
/*------------------------------------------------------------block11*/
.block11 .sheet_basic {
  margin: 0 0 10px;
}
.block11 .sheet_basic tr.remarks td {
  padding: 10px 0;
  font-size: 11px;
  color: #666;
  border-bottom: none;
}
.block11 .phbox {
  text-align: center;
}
.block11 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block11 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block11 .sheet_basic {
    width: 62%;
    float: left;
  }
  .block11 .sheet_basic tr th {
    width: 30%;
  }
  .block11 .phbox {
    float: right;
    width: 35%;
  }
  .block11 .phbox li {
    width: 100%;
    height: auto;
  }
}
/*------------------------------------------------------------block12*/
.block12 .sheet_basic {
  margin: 0 0 10px;
}
.block12 .sheet_basic tr.remarks td {
  padding: 10px 0;
  font-size: 11px;
  color: #666;
  border-bottom: none;
}
.block12 .phbox {
  text-align: center;
}
.block12 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block12 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block12 .sheet_basic {
    width: 62%;
    float: right;
  }
  .block12 .sheet_basic tr th {
    width: 30%;
  }
  .block12 .phbox {
    float: left;
    width: 35%;
  }
  .block12 .phbox li {
    width: 100%;
    height: auto;
  }
}
/*------------------------------------------------------------block13*/
.block13 ul {
  margin: 0 0 10px;
  border-top: dotted 1px #ccc;
}
.block13 ul li {
  zoom: 1;
  padding: 10px 0;
  border-bottom: dotted 1px #ccc;
}
.block13 ul li:after {
  content: "";
  display: block;
  clear: both;
}
.block13 ul li h4 {
  float: left;
  width: 70%;
}
.block13 ul li p {
  float: right;
  width: 30%;
  text-align: right;
}
.block13 p.remarks {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
@media print, screen and (min-width:480px) {
  .block13 ul li {
    padding: 10px 8px;
  }
}
/*------------------------------------------------------------block14*/
.block14 ul {
  margin: 0 0 10px;
  border-top: dotted 1px #ccc;
}
.block14 ul li {
  zoom: 1;
  padding: 10px 0;
  border-bottom: dotted 1px #ccc;
}
.block14 ul li:after {
  content: "";
  display: block;
  clear: both;
}
.block14 ul li h4 {
  float: left;
  width: 70%;
}
.block14 ul li p {
  float: right;
  width: 30%;
  text-align: right;
}
.block14 p.remarks {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
@media print, screen and (min-width:480px) {
  .block14 ul li {
    padding: 10px 8px;
  }
}
@media print, screen and (min-width:768px) {
  .block14 ul {
    border-top: none;
  }
  .block14 ul li {
    width: 48%;
    float: left;
  }
  .block14 ul li:nth-child(-n+2) {
    border-top: dotted 1px #ccc;
  }
  .block14 ul li:nth-child(odd) {
    clear: both;
  }
  .block14 ul li:nth-child(even) {
    float: right;
  }
}
.block14 table.sheet_basic tr th {
  width: 30%;
}
/*------------------------------------------------------------block15*/
.block15 .menubox {}
.block15 .menubox ul {
  margin: 0 0 10px;
  border-top: dotted 1px #ccc;
}
.block15 .menubox ul li {
  zoom: 1;
  padding: 10px 0;
  border-bottom: dotted 1px #ccc;
}
.block15 .menubox ul li:after {
  content: "";
  display: block;
  clear: both;
}
.block15 .menubox ul li h4 {
  float: left;
  width: 70%;
}
.block15 .menubox ul li p {
  float: right;
  width: 30%;
  text-align: right;
}
.block15 .menubox p.remarks {
  margin: 0 0 10px;
  font-size: 11px;
  color: #666;
}
.block15 .phbox {
  text-align: center;
}
.block15 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block15 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block15 .menubox {
    width: 62%;
    float: left;
  }
  .block15 .phbox {
    float: right;
    width: 35%;
  }
  .block15 .phbox li {
    width: 100%;
    height: auto;
  }
}
/*------------------------------------------------------------block16*/
.block16 .menubox {}
.block16 .menubox ul {
  margin: 0 0 10px;
  border-top: dotted 1px #ccc;
}
.block16 .menubox ul li {
  zoom: 1;
  padding: 10px 0;
  border-bottom: dotted 1px #ccc;
}
.block16 .menubox ul li:after {
  content: "";
  display: block;
  clear: both;
}
.block16 .menubox ul li h4 {
  float: left;
  width: 70%;
}
.block16 .menubox ul li p {
  float: right;
  width: 30%;
  text-align: right;
}
.block16 .menubox p.remarks {
  margin: 0 0 10px;
  font-size: 11px;
  color: #666;
}
.block16 .phbox {
  text-align: center;
}
.block16 .phbox li {
  width: 80%;
  height: auto;
  margin: 0 auto 10px;
}
.block16 .phbox li figure figcaption {
  line-height: 120%;
  font-size: 11px;
  color: #666;
  margin-top: 5px;
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block16 .menubox {
    width: 62%;
    float: right;
  }
  .block16 .phbox {
    float: left;
    width: 35%;
  }
  .block16 .phbox li {
    width: 100%;
    height: auto;
  }
}
/*------------------------------------------------------------block17*/
.block17 ol li {
  position: relative;
  padding: 0 0 40px;
  text-align: center;
}
.block17 ol li:last-child {
  padding: 0;
}
.block17 ol li:after {
  position: absolute;
  content: "";
  bottom: 15px;
  width: 20px;
  height: 20px;
  margin: 0 0 0 -10px;
  vertical-align: bottom;
  border-top: 4px solid #999;
  border-right: 4px solid #999;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.block17 ol li:last-child:after {
  display: none;
}
.block17 ol li figure.phbox {
  margin: 0 0 10px;
  text-align: center;
}
.block17 ol li figure.phbox img {
  width: 80%;
  height: auto;
}
.block17 ol li dl dt {
  text-align: left;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
}
.block17 ol li dl dd {
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block17 ol li figure.phbox {
    width: 35%;
    margin: 0 0 0 10px;
    float: right;
  }
  .block17 ol li figure.phbox img {
    width: 100%;
    height: auto;
  }
  .block17 ol li dl {
    overflow: hidden;
  }
}
/*------------------------------------------------------------block18*/
.block18 ol li {
  position: relative;
  padding: 0 0 40px;
  text-align: center;
}
.block18 ol li:last-child {
  padding: 0;
}
.block18 ol li:after {
  position: absolute;
  content: "";
  bottom: 15px;
  width: 20px;
  height: 20px;
  margin: 0 0 0 -10px;
  vertical-align: bottom;
  border-top: 4px solid #999;
  border-right: 4px solid #999;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.block18 ol li:last-child:after {
  display: none;
}
.block18 ol li figure.phbox {
  margin: 0 0 10px;
  text-align: center;
}
.block18 ol li figure.phbox img {
  width: 80%;
  height: auto;
}
.block18 ol li dl dt {
  text-align: left;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
}
.block18 ol li dl dd {
  text-align: left;
}
@media print, screen and (min-width:480px) {
  .block18 ol {
    font-size: 0;
  }
  .block18 ol li {
    vertical-align: top;
    width: 30%;
    display: inline-block;
    padding: 0;
    margin-right: 5%;
    margin-bottom: 15px;
  }
  .block18 ol li:after {
    position: absolute;
    content: "";
    top: 50px;
    right: -20px;
    width: 15px;
    height: 15px;
    vertical-align: middle;
    border-top: 4px solid #999;
    border-right: 4px solid #999;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .block18 ol li:nth-child(3n) {
    margin-right: 0;
  }
  .block18 ol li:nth-child(3n):after {
    display: none;
  }
  .block18 ol li figure.phbox img {
    width: 100%;
    height: auto;
  }
  .block18 ol li dl {
    overflow: hidden;
  }
}
@media print, screen and (min-width:768px) {
  .block18 ol li:after {
    top: 60px;
  }
}
@media print, screen and (min-width:1200px) {
  .block18 ol li:after {
    top: 75px;
    right: -25px;
  }
}
/*------------------------------------------------------------block19*/
.block19 dl dt {
  margin: 0 0 8px;
  padding: 0 0 0 8px;
  border-left: solid 4px #227777;
}
.block19 dl dd {
  margin: 0 0 15px;
}
/*------------------------------------------------------------block20*/
.block20 table {
  width: 100%;
  border-collapse: collapse;
  border: solid #ccc;
  border-width: 1px 0 0 1px;
}
.block20 table tr th, .block20 table tr td {
  padding: 10px 0;
  text-align: center;
  vertical-align: middle;
  border: solid #ccc;
  border-width: 0 1px 1px 0;
}
.block20 p {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
/*------------------------------------------------------------block21*/
.block21 ul li {
  width: 80%;
  position: relative;
  margin: 0 auto 10px;
}
.block21 ul li:before, .block21 ul li:after {
  z-index: -1;
  position: absolute;
  content: "";
  bottom: 15px;
  left: 10px;
  width: 60%;
  top: 80%;
  background: rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 15px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 15px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 15px 10px rgba(0, 0, 0, 0.2);
  -webkit-transform: rotate(-3deg);
  -moz-transform: rotate(-3deg);
  -o-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
}
.block21 ul li:after {
  -webkit-transform: rotate(3deg);
  -moz-transform: rotate(3deg);
  -o-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
  right: 10px;
  left: auto;
}
.block21 ul li:last-child {
  margin-bottom: 0;
}
.block21 ul li:hover {
  opacity: 0.7;
}
.block21 ul li a figcaption {
  line-height: 130%;
  position: absolute;
  width: 100%;
  text-align: center;
  font-weight: bold;
  color: #000;
  background: rgba(255, 255, 255, 0.7);
  bottom: 0;
  padding: 10px;
}
@media print, screen and (min-width:480px) {
  .block21 ul {
    font-size: 0;
  }
  .block21 ul li {
    display: inline-block;
    width: 32%;
    margin-bottom: 2%;
    margin-right: 2%;
  }
  .block21 ul li:nth-child(odd) {
    margin-right: 2%;
  }
  .block21 ul li:nth-child(3n) {
    margin-right: 0;
  }
  .block21 ul li:last-child {
    margin-bottom: 2%;
  }
}
/*------------------------------------------------------------block22*/
.block22 iframe {
  width: 100%;
  height: 299px;
}
.block22 p {
  margin-top: 10px;
  font-size: 11px;
  color: #666;
}
/*------------------------------------------------------------block23*/
.block23 .phbox li {
  margin-bottom: 10px;
}
/*------------------------------------------------------------block24*/
.block24 .phbox li {
  margin-top: 10px;
}
/*------------------------------------------------------------block25*/
.block25 .bf_box {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: dotted 1px #ccc;
}
.block25 .bf_box:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.block25 .bf_box h4 {
  margin-bottom: 8px;
  line-height: 1.3;
  font-size: 16px;
  font-weight: bold;
}
.block25 .bf_box h5 {
  margin-top: 10px;
  margin-bottom: 5px;
  line-height: 1.0;
  font-size: 15px;
  font-weight: bold;
}
.block25 .bf_box ol li:first-child {
  position: relative;
  margin-bottom: 40px;
}
.block25 .bf_box ol li:first-child::after {
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: block;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  content: "";
  border-right: solid 4px #808080;
  border-bottom: solid 4px #808080;
  transform: rotate(45deg);
}
.block25 .bf_box ol li figure img {
  width: 100%;
  height: auto;
}
.block25 .bf_box .comment {
  margin-top: 15px;
}
@media print, screen and (min-width:480px) {
  .block25 .bf_box ol {
    display: flex;
    justify-content: space-between;
  }
  .block25 .bf_box ol li {
    width: 47.5%;
  }
  .block25 .bf_box ol li:first-child {
    margin-bottom: 0;
  }
  .block25 .bf_box ol li:first-child::after {
    display: none;
  }
  .block25 .bf_box ol li:first-child figure {
    position: relative;
    display: block;
  }
  .block25 .bf_box ol li:first-child figure::after {
    position: absolute;
    top: 50%;
    right: -6.75%;
    display: block;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    content: "";
    border-right: solid 4px #808080;
    border-bottom: solid 4px #808080;
    transform: rotate(-45deg);
  }
  .block25 .bf_box ol.no_arrow li:first-child figure::after {
    display: none;
  }
}
@media print, screen and (min-width:768px) {
  .block25 .bf_box h4 {
    margin-bottom: 8px;
    line-height: 1.3;
    font-size: 18px;
    font-weight: bold;
  }
  .block25 .bf_box ol li:first-child figure::after {
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }
}
/*------------------------------------------------------------spec check*/
table.sheet_check {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 30px;
}
table.sheet_check th, table.sheet_check td {
  font-size: 16px;
  line-height: 150%;
  padding: 5px 10px;
  text-align: center;
  border: 1px solid #999;
  white-space: nowrap;
}
table.sheet_check th {
  color: #fff;
  font-weight: normal;
  background: #88ba00;
}
table.sheet_check td.inch {
  background: #eef7ca;
}
table.sheet_check td.first {
  background: #c5dd63;
}
table.sheet_check tr.adjust td {
  color: #c00;
}
.history dl {
	overflow: hidden;
	padding: 5px 0;
}
.history dl dt {
	font-size: 12px;
	font-weight: bold;
	line-height: 170%;
	color: #1e4901;
}