@charset "UTF-8";
/**▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼　デバイス毎の条件分岐　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼**/
/**▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ デバイス毎の条件分岐（触らない） ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲**/
/* ------------------------------------------------- *
 *        ＠タブ比較表
 * ------------------------------------------------- */
.block-tab-hikaku {
  margin-bottom: 3rem; }
  .block-tab-hikaku .title-tab-hikaku {
    background: url(../img/icon/icon-hikaku.png) 1.2rem 45% no-repeat #4b4b4b;
    border-radius: 6px 6px 0 0;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    padding: 1.5rem 2rem 1.5rem 5rem; }
    @media only screen and (max-width: 767px) {
      .block-tab-hikaku .title-tab-hikaku {
        font-size: 1.6rem; } }
  .block-tab-hikaku .tab-box {
    border-radius: 0 0 6px 6px;
    box-shadow: 0 1px 4px #ccc;
    padding: 2rem 1.5rem; }
    @media only screen and (max-width: 767px) {
      .block-tab-hikaku .tab-box {
        box-shadow: none;
        padding: 1.5rem 0 0; } }
    .block-tab-hikaku .tab-box .txt-caution li {
      color: #666;
      font-size: 1rem;
      line-height: 1.3;
      list-style: none;
      margin-bottom: .3rem; }
  .block-tab-hikaku .tab-box.lp {
    border-radius: 0;
    box-shadow: none;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .block-tab-hikaku .tab-box.lp {
        padding: 0; } }
  .block-tab-hikaku .tab-btn {
    border-bottom: 4px solid #d42306;
    display: flex;
    flex-wrap: wrap; }
    .block-tab-hikaku .tab-btn .btn {
      border: 1px solid #d42306;
      border-bottom: none;
      border-radius: 6px 6px 0 0;
      color: #d42306;
      cursor: pointer;
      font-size: 1.8rem;
      font-weight: 700;
      padding: .5rem 1rem 1.8rem;
      position: relative;
      text-align: center;
      width: 32.6%; }
      @media only screen and (max-width: 767px) {
        .block-tab-hikaku .tab-btn .btn {
          font-size: 1.2rem;
          padding: .5rem .5rem 1.5rem; } }
      .block-tab-hikaku .tab-btn .btn::after {
        border-bottom: 3px solid #d42306;
        border-right: 3px solid #d42306;
        bottom: 0.8rem;
        content: "";
        display: block;
        height: 10px;
        left: 50%;
        position: absolute;
        transform: rotate(45deg);
        width: 10px; }
        @media only screen and (max-width: 767px) {
          .block-tab-hikaku .tab-btn .btn::after {
            border-bottom: 2px solid #d42306;
            border-right: 2px solid #d42306;
            height: 8px;
            width: 8px; } }
      .block-tab-hikaku .tab-btn .btn.active {
        background: #d42306;
        color: #fff; }
        .block-tab-hikaku .tab-btn .btn.active::after {
          border-bottom: 3px solid #fff;
          border-right: 3px solid #fff; }
          @media only screen and (max-width: 767px) {
            .block-tab-hikaku .tab-btn .btn.active::after {
              border-bottom: 2px solid #fff;
              border-right: 2px solid #fff; } }
      .block-tab-hikaku .tab-btn .btn:nth-child(2) {
        margin: 0 1.1%; }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll {
      overflow-x: scroll; } }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll table {
      border-collapse: collapse;
      min-width: 800px;
      table-layout: fixed;
      width: 100%; } }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll table td {
      min-width: 60px;
      width: 60px; } }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll table .w-small {
      min-width: 80px;
      width: 110px; } }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll table .w-medium {
      min-width: 130px;
      width: 130px; } }
  @media only screen and (max-width: 767px) {
    .block-tab-hikaku .scroll table .w-long {
      min-width: 200px;
      width: 200px; } }
  .block-tab-hikaku .tab_panel {
    display: none; }
    .block-tab-hikaku .tab_panel.active {
      display: block; }
    .block-tab-hikaku .tab_panel table {
      border-left: 1px solid #ccc;
      border-top: 1px solid #ccc;
      margin: 1.5rem 0;
      width: 100%; }
      .block-tab-hikaku .tab_panel table tr:first-child td.recommend-color {
        background-color: #ffffcc;
        position: relative; }
        .block-tab-hikaku .tab_panel table tr:first-child td.recommend-color .icon-badge {
          position: absolute;
          left: 16%;
          top: 57%;
          color: #fff;
          font-size: .9rem;
          font-weight: bold; }
          @media only screen and (max-width: 767px) {
            .block-tab-hikaku .tab_panel table tr:first-child td.recommend-color .icon-badge {
              left: 23%;
              top: 58%;
              font-size: 1rem; } }
        .block-tab-hikaku .tab_panel table tr:first-child td.recommend-color .fa-crown::before {
          font-size: 22px; }
          @media only screen and (max-width: 767px) {
            .block-tab-hikaku .tab_panel table tr:first-child td.recommend-color .fa-crown::before {
              font-size: 26px; } }
      .block-tab-hikaku .tab_panel table th {
        background: #eee;
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        font-size: 1.1rem;
        padding: 1rem .3rem;
        vertical-align: middle; }
        .block-tab-hikaku .tab_panel table th.sort {
          cursor: pointer;
          width: 8%; }
      .block-tab-hikaku .tab_panel table td {
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        font-size: 1.2rem;
        padding: 1rem .3rem;
        text-align: center;
        vertical-align: middle; }
        .block-tab-hikaku .tab_panel table td strong {
          color: #d42306; }
        .block-tab-hikaku .tab_panel table td small {
          font-size: 1rem; }
        .block-tab-hikaku .tab_panel table td .camp {
          text-align: left; }
        .block-tab-hikaku .tab_panel table td .btn-cv {
          margin-bottom: .5rem; }
          .block-tab-hikaku .tab_panel table td .btn-cv a {
            background: #0b3987;
            border-radius: 5px;
            color: #fff;
            display: block;
            font-size: 1.2rem;
            font-weight: 700;
            padding: .5rem;
            text-decoration: none;
            white-space: nowrap; }
        .block-tab-hikaku .tab_panel table td .btn-shosai a {
          border: 1px solid #0b3987;
          border-radius: 5px;
          color: #0b3987;
          display: block;
          font-size: 1.2rem;
          padding: .2rem .5rem;
          text-decoration: none;
          white-space: nowrap; }
        .block-tab-hikaku .tab_panel table td img {
          margin: 0 auto 0.5rem;
          width: 25px; }
    .block-tab-hikaku .tab_panel .text-caution {
      font-size: 1rem;
      line-height: 1.3; }
  .block-tab-hikaku .lp .tab_panel table td {
    padding: 1rem; }
    @media only screen and (max-width: 767px) {
      .block-tab-hikaku .lp .tab_panel table td {
        padding: 1rem 0.3rem; } }

/* ///////// 注釈 ////////////*/
.txt-note {
  margin: 1rem auto 2rem;
  font-size: 1.1rem;
  line-height: 1.4;
  color: #7d7d7d; }
  @media only screen and (max-width: 767px) {
    .txt-note {
      margin-bottom: 1rem; } }
  .txt-note li {
    line-height: 1.4; }

/* ------------------------------------------------- *
 *        ＠特集一覧
 * ------------------------------------------------- */
.block-list-special {
  margin-bottom: 3rem; }
  .block-list-special ul {
    display: flex;
    flex-wrap: wrap; }
    .block-list-special ul li {
      list-style: none;
      margin-bottom: 1.5rem;
      width: 32%; }
      @media only screen and (max-width: 767px) {
        .block-list-special ul li {
          width: 48.5%; } }
      .block-list-special ul li:nth-child(2), .block-list-special ul li:nth-child(5) {
        margin-left: 2%;
        margin-right: 2%; }
        @media only screen and (max-width: 767px) {
          .block-list-special ul li:nth-child(2), .block-list-special ul li:nth-child(5) {
            margin-left: 0;
            margin-right: 0; } }
      @media only screen and (max-width: 767px) {
        .block-list-special ul li:nth-child(odd) {
          margin-right: 3%; } }

/* ------------------------------------------------- *
 *        ＠search
 * ------------------------------------------------- */
.block-search {
  box-shadow: 0 1px 4px #ccc;
  margin-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .block-search {
      margin-bottom: 0; } }
  .block-search .title-search {
    background: url(../img/icon/icon-search.png) 1rem center no-repeat #666666;
    border-radius: 6px 6px 0 0;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    padding: 1.5rem 2rem 1.5rem 5rem; }
    @media only screen and (max-width: 767px) {
      .block-search .title-search {
        background: url(../img/icon/icon-search.png) 1.3rem 50% no-repeat #666666;
        background-size: 20px 20px;
        font-size: 1.6rem;
        margin-bottom: 1rem;
        padding: 1.5rem 2rem 1.5rem 4.5rem; } }
  .block-search .inner-search {
    padding: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .block-search .inner-search {
        padding: 0; } }
  .block-search .select {
    background: url(../img/icon/icon-select.png) 95% 45% no-repeat #fff;
    background-size: 20px 20px;
    border: 1px solid #bfbfbf;
    border-radius: 4px;
    padding: .8rem .5rem; }
    @media only screen and (max-width: 767px) {
      .block-search .select {
        font-size: 1.2rem; } }
  .block-search .check-radio {
    display: flex; }
    @media only screen and (max-width: 767px) {
      .block-search .check-radio {
        display: inherit; } }
    .block-search .check-radio li {
      background: #fff;
      border: 1px solid #bfbfbf;
      border-radius: 4px;
      font-size: 1.2rem;
      line-height: 2;
      margin: .4rem .5rem;
      text-align: center;
      width: 33.3%; }
      @media only screen and (max-width: 767px) {
        .block-search .check-radio li {
          background: none;
          border: none;
          float: left;
          font-size: 1.3rem;
          margin: 0 .3rem 0 0;
          width: auto; } }
      .block-search .check-radio li .radio-label span {
        border-radius: 3px;
        cursor: pointer;
        display: block;
        padding: .5rem 0; }
        @media only screen and (max-width: 767px) {
          .block-search .check-radio li .radio-label span {
            padding: 0 .5rem 0 2.5rem;
            position: relative; } }
      .block-search .check-radio li .radio-input {
        appearance: none;
        opacity: 0;
        position: absolute;
        -webkit-appearance: none; }
      @media only screen and (max-width: 767px) {
        .block-search .check-radio li .radio-input + span::before {
          background: #fff;
          border: 1px solid #ccc;
          border-radius: 10px;
          content: '';
          display: inline-block;
          height: 14px;
          left: 0.5rem;
          margin-right: 0.5rem;
          position: absolute;
          top: 25%;
          width: 14px; } }
      .block-search .check-radio li .radio-input:checked + span {
        background: #060D5D;
        color: #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-radio li .radio-input:checked + span {
            background: none;
            color: #2a2929; } }
      @media only screen and (max-width: 767px) {
        .block-search .check-radio li .radio-input:checked + span::before {
          background: #060D5D;
          outline: 2px solid #fff;
          outline-offset: -4px; } }
  .block-search .check-checkbox {
    flex-wrap: wrap;
    display: flex; }
    .block-search .check-checkbox li {
      background: #fff;
      border: 1px solid #bfbfbf;
      border-radius: 4px;
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 2;
      margin: .4rem .5rem;
      width: 31.8%; }
      @media only screen and (max-width: 767px) {
        .block-search .check-checkbox li {
          font-size: 1.2rem;
          width: 47%; } }
      .block-search .check-checkbox li:nth-child(1) {
        background: url(../img/icon/bg-search01.png) 90% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(1) {
            background: url(../img/icon/bg-search01.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li:nth-child(2) {
        background: url(../img/icon/bg-search02.png) 93% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(2) {
            background: url(../img/icon/bg-search02.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li:nth-child(3) {
        background: url(../img/icon/bg-search03.png) 90% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(3) {
            background: url(../img/icon/bg-search03.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li:nth-child(4) {
        background: url(../img/icon/bg-search04.png) 90% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(4) {
            background: url(../img/icon/bg-search04.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li:nth-child(5) {
        background: url(../img/icon/bg-search05.png) 93% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(5) {
            background: url(../img/icon/bg-search05.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li:nth-child(6) {
        background: url(../img/icon/bg-search06.png) 93% center no-repeat #fff; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li:nth-child(6) {
            background: url(../img/icon/bg-search06.png) 95% center no-repeat #fff;
            background-size: 25px 25px; } }
      .block-search .check-checkbox li .checkbox-label span {
        border-radius: 3px;
        cursor: pointer;
        display: block;
        padding: 1.5rem 1rem 1.5rem 3rem;
        position: relative; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li .checkbox-label span {
            padding: 1rem .5rem 1rem 2.5rem; } }
      .block-search .check-checkbox li .checkbox-input {
        appearance: none;
        opacity: 0;
        position: absolute;
        -webkit-appearance: none; }
      .block-search .check-checkbox li .checkbox-input + span::before {
        border: 1px solid #bbb;
        content: '';
        display: inline-block;
        height: 14px;
        left: 1rem;
        margin-right: .5rem;
        position: absolute;
        top: 38%;
        width: 14px; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li .checkbox-input + span::before {
            background: #fff;
            left: .6rem;
            top: 35%; } }
      .block-search .check-checkbox li .checkbox-input:checked + span {
        border: 1px solid #d42306; }
        @media only screen and (max-width: 767px) {
          .block-search .check-checkbox li .checkbox-input:checked + span {
            background: none;
            color: #2a2929; } }
      .block-search .check-checkbox li .checkbox-input:checked + span::before {
        background: url(../img/icon/icon-checkbox.png) 0 0 no-repeat #fff;
        background-size: 12px 12px; }
  .block-search .block-search-button {
    margin: 2rem 0 1rem;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .block-search .block-search-button {
        border-bottom: 1px solid #d2d2d2;
        margin: 1.5rem 0 0;
        padding-bottom: 1.5rem; } }
    .block-search .block-search-button #submit-btn {
      background: #cf0f1d;
      background: linear-gradient(180deg, #cf0f1d 0%, #d40720 100%);
      border: none;
      border-radius: 6px;
      color: #fff;
      cursor: pointer;
      display: block;
      font-size: 2.2rem;
      font-weight: 700;
      margin: 0 auto;
      padding: 1.5rem 1rem;
      width: 60%; }
      @media only screen and (max-width: 767px) {
        .block-search .block-search-button #submit-btn {
          font-size: 1.8rem;
          padding: 1.2rem 1rem; } }
  .block-search .search-detail {
    margin: 1.5rem 0 1rem; }
    .block-search .search-detail .search-open {
      border: 1px solid #cf0f1d;
      border-radius: 5px;
      color: #cf0f1d;
      cursor: pointer;
      font-size: 1.2rem;
      font-weight: 700;
      margin: auto;
      padding: .8rem;
      position: relative;
      text-align: center;
      width: 40%; }
      .block-search .search-detail .search-open::before {
        content: "＋";
        position: absolute;
        right: 20px; }
      .block-search .search-detail .search-open.active::before {
        content: "－"; }
    .block-search .search-detail dd {
      display: none; }
      .block-search .search-detail dd table {
        border-top: 1px solid #ddd;
        margin-top: 2rem;
        width: 100%; }
        .block-search .search-detail dd table tr {
          border-bottom: 1px solid #ddd; }
        .block-search .search-detail dd table th {
          background: #f8f8f8;
          padding: 1rem;
          width: 20%; }
          .block-search .search-detail dd table th small {
            font-size: 1.1rem;
            font-weight: normal; }
        .block-search .search-detail dd table td {
          padding: 1rem; }
    .block-search .search-detail .check-radio2 {
      display: flex; }
      @media only screen and (max-width: 767px) {
        .block-search .search-detail .check-radio2 {
          display: inherit; } }
      .block-search .search-detail .check-radio2 li {
        background: none;
        border: none;
        float: left;
        font-size: 1.3rem;
        margin: 0 .3rem 0 0;
        width: auto; }
        @media only screen and (max-width: 767px) {
          .block-search .search-detail .check-radio2 li {
            background: none;
            border: none;
            float: left;
            font-size: 1.3rem;
            margin: 0 .3rem 0 0;
            width: auto; } }
        .block-search .search-detail .check-radio2 li .radio-label span {
          cursor: pointer;
          padding: 0 .5rem 0 2.5rem;
          position: relative; }
        .block-search .search-detail .check-radio2 li .radio-input {
          appearance: none;
          opacity: 0;
          position: absolute;
          -webkit-appearance: none; }
        .block-search .search-detail .check-radio2 li .radio-input + span::before {
          background: #fff;
          border: 1px solid #ccc;
          border-radius: 10px;
          content: '';
          display: inline-block;
          height: 14px;
          left: 0.5rem;
          margin-right: 0.5rem;
          position: absolute;
          top: 10%;
          width: 14px; }
        .block-search .search-detail .check-radio2 li .radio-input:checked + span::before {
          background: #060D5D;
          outline: 2px solid #fff;
          outline-offset: -4px; }
    .block-search .search-detail .check-checkbox2 {
      flex-wrap: wrap;
      display: flex; }
      .block-search .search-detail .check-checkbox2 li {
        background: none;
        border: none;
        float: left;
        font-size: 1.3rem;
        line-height: 1.5;
        margin: 0 .3rem 0 0;
        width: auto; }
        @media only screen and (max-width: 767px) {
          .block-search .search-detail .check-checkbox2 li {
            font-size: 1.2rem; } }
        .block-search .search-detail .check-checkbox2 li .checkbox-label span {
          border-radius: 3px;
          cursor: pointer;
          display: block;
          padding: .5rem 1rem .5rem 3rem;
          position: relative; }
          @media only screen and (max-width: 767px) {
            .block-search .search-detail .check-checkbox2 li .checkbox-label span {
              padding: 1rem .5rem 1rem 2.5rem; } }
        .block-search .search-detail .check-checkbox2 li .checkbox-input {
          appearance: none;
          opacity: 0;
          position: absolute;
          -webkit-appearance: none; }
        .block-search .search-detail .check-checkbox2 li .checkbox-input + span::before {
          border: 1px solid #bbb;
          content: '';
          display: inline-block;
          height: 14px;
          left: 1rem;
          margin-right: .5rem;
          position: absolute;
          top: 25%;
          width: 14px; }
          @media only screen and (max-width: 767px) {
            .block-search .search-detail .check-checkbox2 li .checkbox-input + span::before {
              background: #fff;
              left: .6rem;
              top: 35%; } }
        @media only screen and (max-width: 767px) {
          .block-search .search-detail .check-checkbox2 li .checkbox-input:checked + span {
            background: none;
            color: #2a2929; } }
        .block-search .search-detail .check-checkbox2 li .checkbox-input:checked + span::before {
          background: url(../img/icon/icon-checkbox.png) 0 0 no-repeat #fff;
          background-size: 12px 12px; }

/* ------------------------------------------------- *
 *        ＠Search kekka
 * ------------------------------------------------- */
.block-searchkekka-title {
  background: url(../img/icon/icon-search-b.png) 0.5rem center no-repeat;
  background-size: 30px 30px;
  border-bottom: 5px solid #666666;
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 1rem;
  padding: 1.5rem 1rem 1.5rem 5rem; }
  @media only screen and (max-width: 767px) {
    .block-searchkekka-title {
      background-size: 24px 24px;
      font-size: 1.8rem;
      padding: 1.5rem 1rem 1.5rem 4.5rem; } }

@media only screen and (max-width: 767px) {
  .box-searchkekka {
    padding: 0 1.5rem; } }
.box-searchkekka .result-number {
  color: #1a3e86;
  font-size: 1.4rem;
  font-weight: 700;
  margin: 1.5rem 0; }
  @media only screen and (max-width: 767px) {
    .box-searchkekka .result-number {
      margin: 0; } }
.box-searchkekka .sort-btn-box {
  background: #FFF;
  border: 1px solid #1a3e86;
  border-radius: 4px;
  margin: 1.5rem 0 2rem;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .box-searchkekka .sort-btn-box {
      margin: 1.5rem 0 3rem; } }
  .box-searchkekka .sort-btn-box span {
    background: #1a3e86;
    color: #FFF;
    display: block;
    float: left;
    font-size: 1.2rem;
    font-weight: 700;
    padding: .8rem; }
    @media only screen and (max-width: 767px) {
      .box-searchkekka .sort-btn-box span {
        font-size: 1rem; } }
  .box-searchkekka .sort-btn-box .btn-area {
    float: left;
    padding: .7rem .8rem; }
    .box-searchkekka .sort-btn-box .btn-area button {
      cursor: pointer;
      font-size: 1.3rem;
      margin-right: .5rem; }
      @media only screen and (max-width: 767px) {
        .box-searchkekka .sort-btn-box .btn-area button {
          font-size: 1.1rem; } }
  .box-searchkekka .sort-btn-box .sort.desc:after {
    color: #1a3e86;
    content: "▲";
    padding-left: .3rem; }
  .box-searchkekka .sort-btn-box .sort.asc:after {
    color: #1a3e86;
    content: "▼";
    padding-left: .3rem; }

/* ------------------------------------------------- *
 *        ＠Top page
 * ------------------------------------------------- */
.l-top-mainvisual {
  background: #D10314;
  margin-bottom: 1.5rem; }
  @media only screen and (max-width: 767px) {
    .l-top-mainvisual {
      margin-bottom: 0; } }
  .l-top-mainvisual img {
    margin: 0 auto; }

/* ------------------------------------------------- *
 *        ＠single
 * ------------------------------------------------- */
@media only screen and (max-width: 767px) {
  .block-review {
    padding: 0 1.5rem; } }

.title-review-list {
  border-left: 6px solid #1a3e86;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0 0 2rem;
  padding: .2rem 1rem; }

.box-content {
  margin: 3rem 0; }
  .box-content h2 {
    border-left: 5px solid #666666;
    font-size: 2rem;
    line-height: 1.5;
    margin: 4rem 0 2.5rem;
    padding: .5rem 1rem; }
    @media only screen and (max-width: 767px) {
      .box-content h2 {
        font-size: 1.8rem; } }
  .box-content h3 {
    background: #f6f6f6;
    border-radius: 5px;
    font-size: 1.8rem;
    line-height: 1.5;
    margin: 3rem 0 2rem;
    padding: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .box-content h3 {
        font-size: 1.6rem;
        padding: 1rem 1.5rem; } }
  .box-content p {
    margin-bottom: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .box-content p {
        font-size: 1.4rem; } }
    .box-content p span {
      background-color: #FFFFB6;
      color: #EB5404;
      font-weight: 700; }
  .box-content .waku-kuro {
    border: 1px solid #ccc;
    margin: 3rem 0;
    padding: 1.5rem; }
    .box-content .waku-kuro ul {
      padding-left: 2rem; }
      .box-content .waku-kuro ul li {
        font-size: 1.5rem;
        line-height: 1.6;
        margin-bottom: 1rem; }
        @media only screen and (max-width: 767px) {
          .box-content .waku-kuro ul li {
            font-size: 1.4rem; } }
        .box-content .waku-kuro ul li:last-child {
          margin-bottom: 0; }
  .box-content .txt-waku {
    background: #f8f8f8;
    border-radius: 5px;
    margin: 3rem 0;
    padding: 1.5rem; }
    .box-content .txt-waku ul {
      padding-left: 2rem; }
      .box-content .txt-waku ul li {
        font-size: 1.5rem;
        line-height: 1.6;
        margin-bottom: 1rem; }
        @media only screen and (max-width: 767px) {
          .box-content .txt-waku ul li {
            font-size: 1.4rem; } }
        .box-content .txt-waku ul li:last-child {
          margin-bottom: 0; }
  .box-content ul {
    padding-left: 2rem; }
    .box-content ul li {
      font-size: 1.5rem;
      line-height: 1.6;
      margin-bottom: 1rem; }
      @media only screen and (max-width: 767px) {
        .box-content ul li {
          font-size: 1.4rem; } }
      .box-content ul li:last-child {
        margin-bottom: 0; }

/* ------------------------------------------------- *
 *        ＠column
 * ------------------------------------------------- */
.title-archive-column {
  background: url(../img/icon/icon-column-b.png) 1rem center no-repeat;
  background-size: 30px 30px;
  border-bottom: 5px solid #666666;
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 3rem;
  padding: 1.5rem 1rem 1.5rem 4.5rem; }
  @media only screen and (max-width: 767px) {
    .title-archive-column {
      font-size: 1.8rem; } }

@media only screen and (max-width: 767px) {
  .block-archive-column {
    padding: 0 1.5rem 3rem; } }
.block-archive-column .list-archive-column {
  border-bottom: 1px solid #d6d6d6;
  margin: 1rem 0;
  padding: 1rem 0 2rem; }
  @media only screen and (max-width: 767px) {
    .block-archive-column .list-archive-column .img-list-column {
      padding: 0 1.5rem 1rem 0; } }
  .block-archive-column .list-archive-column .text-archive-column dt {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 1rem; }
    @media only screen and (max-width: 767px) {
      .block-archive-column .list-archive-column .text-archive-column dt {
        font-size: 1.5rem; } }

@media only screen and (max-width: 767px) {
  .single-column {
    padding: 0 1.5rem 3rem; } }
.single-column .main-visual {
  margin-bottom: 2rem; }
.single-column h1 {
  font-size: 2.5rem;
  line-height: 1.6;
  margin-bottom: 3rem; }
.single-column h2 {
  background: #666666;
  border-radius: 5px;
  color: #fff;
  font-size: 2rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
  padding: 1rem 1.5rem; }
.single-column h3 {
  background: #f6f6f6;
  border-bottom: 3px solid #d42306;
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
  padding: 1rem; }
.single-column h4 {
  color: #d42306;
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 3rem 0 2rem; }
.single-column p {
  font-size: 1.6rem;
  margin-bottom: 1.5rem; }
.single-column span {
  background: #ffff86;
  color: #f44027;
  font-weight: 700; }
.single-column ul, .single-column ol {
  margin: 3rem 0;
  padding-left: 2rem; }
  .single-column ul li, .single-column ol li {
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: 1rem; }
    .single-column ul li:last-child, .single-column ol li:last-child {
      margin-bottom: 0; }
.single-column dl dt {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: .5rem;
  padding: 0 .5rem; }
.single-column dl dd {
  background: #F9F9F9;
  border-radius: 5px;
  font-size: 1.6rem;
  margin-bottom: 3rem;
  padding: 1.5rem 2rem; }
.single-column .waku {
  border: 2px solid #DDD;
  font-size: 1.6rem;
  line-height: 1.6;
  margin: 3rem 0;
  padding: 2rem 2.5rem; }
  .single-column .waku p {
    margin: 0; }
  .single-column .waku ul, .single-column .waku ol {
    margin: 0; }
  .single-column .waku li {
    list-style: disc; }
.single-column table {
  border-collapse: collapse;
  margin: 3rem 0;
  width: 100%; }
  .single-column table th {
    background: #f9f9f9;
    border: #ddd solid 1px;
    font-size: 1.5rem;
    padding: 1.3rem 1rem; }
  .single-column table td {
    border: #ddd solid 1px;
    font-size: 1.5rem;
    padding: 1.3rem 1rem; }
.single-column .box-point {
  border: 3px solid #1a3e86;
  border-radius: 5px;
  margin: 2rem 0; }
  .single-column .box-point dt {
    background: #1a3e86;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 1rem 1.5rem; }
  .single-column .box-point dd {
    padding: 1rem 1.5rem; }
    .single-column .box-point dd p:last-child {
      margin-bottom: 0; }
.single-column .bg-gray {
  background: #f9f9f9;
  border: solid 1px #ddd;
  border-radius: 5px;
  margin: 2rem 0;
  padding: 2rem; }
  .single-column .bg-gray ul, .single-column .bg-gray ol {
    margin-left: 2rem; }
    .single-column .bg-gray ul li, .single-column .bg-gray ol li {
      font-size: 1.5rem;
      margin-bottom: 1.5rem; }
      .single-column .bg-gray ul li:last-child, .single-column .bg-gray ol li:last-child {
        margin-bottom: 0; }
.single-column .bg-yellow {
  background: #FFFFED;
  border: solid 1px #FFE89C;
  border-radius: 5px;
  margin: 2rem 0;
  padding: 2rem; }
  .single-column .bg-yellow ul, .single-column .bg-yellow ol {
    margin-left: 2rem; }
    .single-column .bg-yellow ul li, .single-column .bg-yellow ol li {
      font-size: 1.5rem;
      margin-bottom: 1.5rem; }
      .single-column .bg-yellow ul li:last-child, .single-column .bg-yellow ol li:last-child {
        margin-bottom: 0; }

/* ------------------------------------------------- *
 *        ＠page（固定ページ）
 * ------------------------------------------------- */
.block-page {
  margin: 2rem 0 5rem;
  width: 100%;
  /*調査概要*/ }
  .block-page h1 {
    font-size: 2.5rem;
    line-height: 1.6;
    margin-bottom: 3rem; }
    @media only screen and (max-width: 767px) {
      .block-page h1 {
        font-size: 2rem; } }
  .block-page h3 {
    border-left: 5px solid #d42306;
    font-size: 2rem;
    line-height: 1.6;
    margin: 3rem 0 2rem;
    padding: .2rem 1rem; }
    @media only screen and (max-width: 767px) {
      .block-page h3 {
        font-size: 1.8rem; } }
  .block-page h4 {
    font-size: 1.8rem; }
    @media only screen and (max-width: 767px) {
      .block-page h4 {
        font-size: 1.6rem; } }
  .block-page ul, .block-page ol {
    margin: 2rem 0 4rem;
    padding-left: 2rem; }
    .block-page ul li, .block-page ol li {
      font-size: 1.5rem;
      line-height: 1.8;
      margin-bottom: 1rem; }
      .block-page ul li:last-child, .block-page ol li:last-child {
        margin-bottom: 0; }
  .block-page p {
    margin-bottom: 1.5rem; }
  .block-page .page-investigati h2.section-subttl {
    border-left: solid 6px #d42306;
    font-size: 1.8rem;
    margin: 2rem auto 1rem;
    padding-left: 1rem; }
  .block-page .page-investigati .investigati-gaiyou {
    padding: 0; }
  .block-page .page-investigati h3 {
    border-bottom: solid 3px #d42306;
    border-left: none;
    font-size: 1.8rem;
    margin-bottom: 1rem;
    padding-bottom: .8rem; }
  .block-page .page-investigati li {
    line-height: 1.7;
    list-style: none; }
  .block-page .page-investigati table {
    border-collapse: separate;
    border-spacing: 0px;
    border-top: 1px solid #DDD;
    border-left: 1px solid #DDD;
    background: #FFF;
    margin-bottom: 3rem;
    width: 100%; }
    .block-page .page-investigati table th {
      background: #999;
      border-right: 1px solid #DDD;
      border-bottom: 1px solid #DDD;
      color: #fff;
      font-size: 1.2rem;
      padding: 1rem;
      vertical-align: middle;
      width: 30%; }
      .block-page .page-investigati table th.symbol01, .block-page .page-investigati table th.symbol02, .block-page .page-investigati table th.symbol03 {
        background: #efefef;
        font-size: 1.6rem;
        font-weight: bold;
        width: 25%; }
      .block-page .page-investigati table th.symbol01 {
        color: #BF0000; }
      .block-page .page-investigati table th.symbol02 {
        color: #E9AF11; }
      .block-page .page-investigati table th.symbol03 {
        color: #878484; }
    .block-page .page-investigati table td {
      border-right: 1px solid #DDD;
      border-bottom: 1px solid #DDD;
      font-size: 1.2rem;
      padding: 8px; }
  .block-page .box-survey dt {
    font-size: 1.2rem;
    margin-bottom: 1rem; }
  .block-page .box-survey ul {
    margin-left: 0; }
    .block-page .box-survey ul li {
      font-size: 1.2rem; }

/* ------------------------------------------------- *
 *        ＠用語集(固定ページ)
 * ------------------------------------------------- */
.glossary_menu {
  margin: 0 auto;
  background-color: #fff;
  border: 1px solid #d4d4d4;
  -webkit-box-shadow: 2px 2px 2px #e1e1e1;
  box-shadow: 2px 2px 2px #e1e1e1;
  padding: 1rem 2rem;
  border-radius: 5px;
  margin-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .glossary_menu {
      padding: 1rem;
      margin-bottom: 2rem; } }
  .glossary_menu ul.anchorLinks {
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    padding: 0rem; }
    .glossary_menu ul.anchorLinks a {
      background-color: #1a3e86;
      border-radius: 25px;
      padding: 1rem 0.8rem 0.8rem;
      flex-basis: 145px;
      text-align: center;
      margin: .5rem auto;
      position: relative; }
      @media only screen and (max-width: 960px) and (min-width: 768px) {
        .glossary_menu ul.anchorLinks a {
          flex-basis: 145px; } }
      @media only screen and (max-width: 767px) {
        .glossary_menu ul.anchorLinks a {
          flex-basis: 23%;
          border-radius: 6px; } }
      .glossary_menu ul.anchorLinks a:before {
        content: '';
        border: 0;
        position: absolute;
        margin-top: -6px;
        transform: rotate(45deg);
        z-index: 2;
        width: 8px;
        height: 8px;
        border-bottom: solid 2px #fff;
        border-right: solid 2px #fff;
        right: 11%;
        top: 48%; }
        @media only screen and (max-width: 767px) {
          .glossary_menu ul.anchorLinks a:before {
            display: none; } }
      .glossary_menu ul.anchorLinks a li {
        text-decoration: none;
        color: #fff;
        font-size: 1.8rem; }
        @media only screen and (max-width: 767px) {
          .glossary_menu ul.anchorLinks a li {
            font-size: 1.6rem; } }

.glossary_in {
  border: solid 1px #ddd;
  border-radius: 5px;
  margin: 2rem 0 5rem;
  letter-spacing: .08rem; }
  .glossary_in h2 {
    margin: -0.6rem 0rem 1rem 0rem;
    font-size: 2.8rem; }
    @media only screen and (max-width: 767px) {
      .glossary_in h2 {
        font-size: 2.2rem; } }
    .glossary_in h2 span {
      display: inline;
      line-height: 2.25;
      background-color: #1a3e86;
      color: #fff;
      padding: 0.5rem 3rem; }
  .glossary_in dl {
    padding: 3rem;
    padding-bottom: 0; }
    @media only screen and (max-width: 767px) {
      .glossary_in dl {
        padding: 1.5rem; } }
    .glossary_in dl dt {
      font-size: 2.2rem;
      color: #1a3e86;
      font-weight: bold;
      line-height: 1.4;
      border-bottom: 1px solid #d4d5d5;
      padding-bottom: 0.4rem; }
      @media only screen and (max-width: 767px) {
        .glossary_in dl dt {
          font-size: 2rem; } }
      .glossary_in dl dt span {
        font-size: 1.4rem;
        display: block; }
    .glossary_in dl dd {
      margin: 1rem auto 5rem;
      font-size: 1.5rem;
      line-height: 1.7; }
      @media only screen and (max-width: 767px) {
        .glossary_in dl dd {
          letter-spacing: .15rem;
          margin: 1rem auto 3rem; } }

/* ------------------------------------------------- *
 *        ＠page（リファラー）
 * ------------------------------------------------- */
/* ------------------------------------------------- *
 *        ＠page（リファラー）
 * ------------------------------------------------- */
.block-referrer {
  text-align: center; }
  .block-referrer .block-referrer-inner {
    padding: 1rem; }
  .block-referrer .block-referrer-logo {
    margin: 3rem 0;
    text-align: center; }
    .block-referrer .block-referrer-logo img {
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        .block-referrer .block-referrer-logo img {
          width: 70%; } }
  .block-referrer .block-referrer-text {
    font-size: 1.5rem;
    line-height: 1.8; }
  .block-referrer .block-referrer-img-loading img {
    height: 20%;
    margin: 4rem auto; }
  .block-referrer .block-referrer-banner img {
    margin: 4rem auto; }

/*# sourceMappingURL=design.css.map */
