@charset "UTF-8";
/* pc */
@media only screen and (min-width: 640px) {
  body#page_404 #main404 {
    background: #003153;
    text-align: center; }
    body#page_404 #main404 h2 {
		font-size: 30px;
		font-weight: normal;
		line-height: 32px;
		color: #fff;
		padding: 75px 0 25px; 
      }
    body#page_404 #main404 p {
      font-size: 15px;
      line-height: 19px;
      color: #fff;
      padding: 0 0 75px;
      width: 550px;
      margin: 0 auto;
      }
  body#page_404 #page_404_body {
    background: #f0f0f0;
    padding: 40px 0 20px; }
    body#page_404 #page_404_body #icon_list {
      width: 666px;
      margin: 0 auto 45px;
      display: table; }
      body#page_404 #page_404_body #icon_list li {
        display: table-cell;
        text-align: center;
        width: 222px; }
        body#page_404 #page_404_body #icon_list li a {
          display: block;
          text-align: center;
          color: #595656;
          text-decoration: none; }
          body#page_404 #page_404_body #icon_list li a img {
            padding: 0 0 15px;
            display: block;
            margin: 0 auto; }
          body#page_404 #page_404_body #icon_list li a img.on {
            display: none; }
        body#page_404 #page_404_body #icon_list li a:hover {
          color: #56b1d3; }
      body#page_404 #page_404_body #icon_list li.on_li a {
        color: #56b1d3; }
      body#page_404 #page_404_body #icon_list li.onNavi img.on {
        display: block; }
      body#page_404 #page_404_body #icon_list li.onNavi img.off {
        display: none; }
    body#page_404 #page_404_body form {
      width: 377px;
      margin: 0 auto; }
      body#page_404 #page_404_body form p {
        vertical-align: bottom;
        overflow: hidden;
        height: 100%; }
      body#page_404 #page_404_body form input {
        float: left; }
      body#page_404 #page_404_body form input.search_box {
        width: 343px;
        height: 24px;
        line-height: 24px;
        border: #c8c8c8 solid 1px;
        display: inline-block; }
  #foot_copyright.general .lay {
    position: relative;
    height: 76px; }
    #foot_copyright.general .lay #allforhealthcare {
      bottom: 30px; }
    #foot_copyright.general .lay #copyright {
      bottom: 30px; } }

/* SP */
@media only screen and (max-width: 639px) {
  #foot_copyright.general .lay #allforhealthcare {
    padding: 26px 0 0 0; }
  #foot_copyright.general .lay #copyright {
    padding: 25px 0 22px; }
  body#page_404 #main404 {
    background: #003153;
    text-align: center; }
    body#page_404 #main404 h2 {
		font-size: 22px;
		font-weight: normal;
		line-height: 25px;
		color: #fff;
		padding: 40px 0 30px;
		}
    body#page_404 #main404 p {
      font-size: 12px;
      line-height: 16px;
      color: #fff;
      padding: 0 20px 50px;
      margin: 0 auto;
      }
  body#page_404 #page_404_body {
    background: #f0f0f0;
    padding: 30px 0; }
    body#page_404 #page_404_body #icon_list {
      /*width: 100%;*/
      margin: 0 auto 25px;
      display: table; }
      body#page_404 #page_404_body #icon_list li {
        display: table-cell;
        text-align: center;
        width: 33.33%;
        vertical-align: top; }
        body#page_404 #page_404_body #icon_list li a {
          padding: 0 5px;
          display: block;
          text-align: center;
          color: #595656;
          text-decoration: none; }
          body#page_404 #page_404_body #icon_list li a img {
            width: 100%;
            height: auto;
            vertical-align: top;
            padding: 0 0 15px; }
          body#page_404 #page_404_body #icon_list li a img.on {
            display: none; }
        body#page_404 #page_404_body #icon_list li a:hover {
          color: #56b1d3; }
      body#page_404 #page_404_body #icon_list li.icon_list01 a {
        color: #56b1d3; }
        body#page_404 #page_404_body #icon_list li.icon_list01 a img.on {
          display: block; }
        body#page_404 #page_404_body #icon_list li.icon_list01 a img.off {
          display: none; }
    body#page_404 #page_404_body form {
      padding: 0 20px;
      margin: 0 auto; }
      body#page_404 #page_404_body form p {
        vertical-align: bottom;
        overflow: hidden;
        height: 100%;
        width: 100%;
        display: table; }
        body#page_404 #page_404_body form p span {
          display: table-cell;
          vertical-align: top; }
        body#page_404 #page_404_body form p span.search_btn {
          width: 26px; }
      body#page_404 #page_404_body form input {
        display: block;
        -webkit-appearance: none;
        border-radius: 0;
        height: 24px;
        font-size: 12px;
        line-height: 24px; }
      body#page_404 #page_404_body form input.search_box {
        width: 100%;
        height: 22px;
        padding: 0;
        line-height: 22px;
        border: #c8c8c8 solid 1px;
        display: block; } }