img, picture {
  vertical-align: middle;
  max-width: 100%; }

/* Override ==================================================================*/
div#header {
  height: 82px; }
  @media screen and (max-width: 767px) {
    div#header {
      height: 60px; } }

div#footer {
  margin-top: 0; }

/*============================================================================*/
#HdrHr {
  overflow: hidden;
  font-size: 0;
  line-height: 0;
  text-align: center;
  background: #68b45e; }

/*============================================================================*/
.contents {
  max-width: 960px;
  margin: 60px auto;
  padding: 0 30px; }
  @media screen and (max-width: 767px) {
    .contents {
      max-width: none;
      margin: 8.3442vw 4.1721vw;
      padding: 0; } }
  .contents a {
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .contents a:hover {
      opacity: .8; }
  .contents h1 {
    font-size: 4.8rem;
    font-weight: bold;
    color: #00a884;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .contents h1 {
        font-size: 7.30117vw; } }
    .contents h1 span {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(40%, #fff500));
      background: -webkit-linear-gradient(transparent 60%, #fff500 40%);
      background: -o-linear-gradient(transparent 60%, #fff500 40%);
      background: linear-gradient(transparent 60%, #fff500 40%); }
  .contents .lead {
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    margin: 10px 0 60px; }
    .contents .lead span {
      background-color: #fffcd7;
      padding: 5px 10px; }
    @media screen and (max-width: 767px) {
      .contents .lead {
        font-size: 4.1721vw;
        margin: 2.08605vw 0 10.43025vw; } }
  .contents section:not(:last-child) {
    border-bottom: solid 1px #e7e7e7;
    margin-bottom: 60px;
    padding-bottom: 60px; }
    @media screen and (max-width: 767px) {
      .contents section:not(:last-child) {
        margin-bottom: 10.43025vw;
        padding-bottom: 10.43025vw; } }
  .contents section h2 {
    font-size: 1.8rem;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .contents section h2 {
        font-size: 3.65059vw; } }
  .contents section .site_name {
    font-size: 2.8rem;
    line-height: 1.3;
    font-weight: bold;
    color: #00a884;
    border-left: #00a884 8px solid;
    padding-left: 15px;
    margin-top: 10px; }
    @media screen and (max-width: 767px) {
      .contents section .site_name {
        font-size: 4.69361vw;
        border-left: #00a884 1.30378vw solid;
        margin-top: 2.08605vw;
        padding-left: 2.60756vw; } }
  .contents section .copy {
    font-size: 1.5rem;
    margin-top: 20px; }
    @media screen and (max-width: 767px) {
      .contents section .copy {
        font-size: 3.12907vw;
        margin-top: 5.21512vw; } }
  .contents section .bnr {
    text-align: center;
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .contents section .bnr {
        margin-top: 5.21512vw; } }
  .contents section .col2 {
    width: 630px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 30px auto 0; }
    @media screen and (max-width: 767px) {
      .contents section .col2 {
        width: 100%;
        display: block; } }
    .contents section .col2 li {
      width: 49%; }
      @media screen and (max-width: 767px) {
        .contents section .col2 li {
          width: 100%;
          margin-top: 5.21512vw; } }
      .contents section .col2 li:not(:last-child) {
        margin-right: 2%; }
        @media screen and (max-width: 767px) {
          .contents section .col2 li:not(:last-child) {
            margin-right: 0; } }
      .contents section .col2 li .btn_detail a {
        position: relative;
        display: block;
        background: #019d85;
        margin: 20px 0 0;
        padding: 10px 0;
        color: #fff;
        font-size: 1.5rem;
        font-weight: bold;
        text-align: center;
        border-radius: 3px; }
        .contents section .col2 li .btn_detail a::after {
          content: '';
          display: block;
          position: absolute;
          top: 50%;
          right: 0;
          margin: -4px 15px 0 0;
          width: 13px;
          height: 13px;
          margin-right: 15px;
          background: url(/dementia/images/icon_blank.png);
          background-size: 13px 13px;
          border: none;
          -webkit-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
          transform: rotate(0deg);
          margin: -7px 15px 0 0; }

/* -----------------------------------------------------
	br
----------------------------------------------------- */
br.pc {
  display: block; }
  @media screen and (max-width: 767px) {
    br.pc {
      display: none; } }

br.sp {
  display: none; }
  @media screen and (max-width: 767px) {
    br.sp {
      display: block; } }
