@charset "UTF-8";
/* ----------------------------------------------------------------------------
 * CSS
 * ------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------
 * 変数
 * ------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------
 * ブレイクポイント
 * ------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------
 * All
 * ------------------------------------------------------------------------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  font-size: 62.5%; }

body {
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  min-width: 280px;
  color: #303030;
  background-color: #FFF; }

a {
  text-decoration: none;
  display: inline-block;
  color: #303030; }

a:hover {
  text-decoration: none;
  opacity: .8; }

img {
  max-width: 100%;
  vertical-align: middle;
  border: none; }

.ie6 img {
  width: 100%; }

ul, ol {
  list-style-type: none; }

.content_inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 10px; }
  @media (min-width: 800px) {
    .content_inner {
      padding: 0; } }

/* ----------------------------------------------------------------------------
 * 文字の位置揃え .align-
 * ------------------------------------------------------------------------- */
.tr {
  text-align: right !important; }

.tc {
  text-align: center !important; }

.tl {
  text-align: left !important; }

.tj {
  text-align: justify !important; }

/* ----------------------------------------------------------------------------
 * 非表示 .align-
 * ------------------------------------------------------------------------- */
.pc_hide {
  display: block; }

@media screen and (min-width: 768px), print {
  .pc_hide {
    display: none; } }
.sp_hide {
  display: none; }

@media screen and (min-width: 768px), print {
  .sp_hide {
    display: block; } }
/* ----------------------------------------------------------------------------
 * フォント .f-
 * ------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------
 * 余白調整 .mb-
 * ------------------------------------------------------------------------- */
.mb10 {
  margin-bottom: 10px; }

.mb20 {
  margin-bottom: 20px; }

.mb30 {
  margin-bottom: 30px; }

.mb40 {
  margin-bottom: 40px; }

.mb50 {
  margin-bottom: 50px; }

.mb60 {
  margin-bottom: 60px; }

.mb70 {
  margin-bottom: 70px; }

.mb80 {
  margin-bottom: 80px; }

.mb90 {
  margin-bottom: 90px; }

.mb100 {
  margin-bottom: 100px; }

/* ----------------------------------------------------------------------------
 * Header
 * ------------------------------------------------------------------------- */
.header_01 .hdg_01 {
  background-color: #3F3939; }
  @media (min-width: 800px) {
    .header_01 .hdg_01 {
      display: flex;
      max-width: 1000px;
      margin: 0 auto; } }

/* ----------------------------------------------------------------------------
 * aside
 * ------------------------------------------------------------------------- */
.content_wrap {
  max-width: 1000px;
  margin: 0 auto; }
  @media (min-width: 800px) {
    .content_wrap {
      display: flex;
      justify-content: space-between; } }

@media (min-width: 800px) {
  .content {
    width: 77%; } }

.aside_01 {
  margin: 0 10px; }
  @media (min-width: 800px) {
    .aside_01 {
      width: 20%; } }
  .aside_01 li {
    text-align: center;
    margin-bottom: 20px; }

/* ----------------------------------------------------------------------------
 * Content
 * ------------------------------------------------------------------------- */
.kmnw_lead {
  background-color: #f1f1f1;
  padding: 20px;
  border-radius: 5px;
  margin: 40px 10px 40px;
  max-width: 1000px; }
  @media (min-width: 800px) {
    .kmnw_lead {
      margin: 60px auto 0;
      display: flex;
      justify-content: space-between;
      align-items: center; } }
  .kmnw_lead .img {
    text-align: center; }
  .kmnw_lead .sub_txt {
    text-align: center;
    margin: 20px 0;
    font-weight: bold; }

.content_wrap .kmnw_rating {
  background-color: #f1f1f1;
  padding: 20px;
  border-radius: 5px;
  margin-bottom: 40px; }
  @media (min-width: 800px) {
    .content_wrap .kmnw_rating {
      display: flex;
      justify-content: space-between; } }
  .content_wrap .kmnw_rating .img {
    text-align: center; }
    @media (min-width: 800px) {
      .content_wrap .kmnw_rating .img {
        width: 25%; } }
  .content_wrap .kmnw_rating .star {
    color: #d6497e;
    font-size: 1.8rem; }
    .content_wrap .kmnw_rating .star span {
      font-size: 3rem;
      font-weight: bold;
      position: relative;
      bottom: -5px;
      right: -5px; }
  @media (min-width: 800px) {
    .content_wrap .kmnw_rating .txt {
      width: 75%; } }
  .content_wrap .kmnw_rating .txt dt {
    font-size: 2rem;
    font-weight: bold;
    margin: 10px 0; }

/* ----------------------------------------------------------------------------
 * about
 * ------------------------------------------------------------------------- */
.kmnw_about .txt {
  text-align: center; }
.kmnw_about .img {
  margin: 20px 0;
  text-align: center; }
.kmnw_about .sub_txt {
  text-align: center;
  font-weight: bold; }

/* ----------------------------------------------------------------------------
 * report
 * ------------------------------------------------------------------------- */
.kmnw_report .kmnw_txt_01 {
  font-size: 1.8rem;
  font-weight: bold;
  font-style: italic;
  margin: 40px 0; }
.kmnw_report .kmnw_box_01 {
  background-color: #e6e4e5;
  padding: 10px;
  border-radius: 5px;
  margin-bottom: 40px; }
  @media (min-width: 800px) {
    .kmnw_report .kmnw_box_01 {
      padding: 20px 30px; } }
  .kmnw_report .kmnw_box_01 dt {
    font-weight: bold;
    margin-bottom: 10px; }
  .kmnw_report .kmnw_box_01 dd li {
    margin: 0 0 20px 30px;
    position: relative;
    font-size: 1.4rem;
    font-weight: bold; }
    @media (min-width: 800px) {
      .kmnw_report .kmnw_box_01 dd li {
        font-size: 1.6rem; } }
    .kmnw_report .kmnw_box_01 dd li:before {
      content: url("../img/kmnw_icon_04.png");
      position: absolute;
      left: -30px; }
    .kmnw_report .kmnw_box_01 dd li:last-child {
      margin-bottom: 0; }
.kmnw_report .kmnw_outline {
  border: 2px solid #ddd;
  border-radius: 5px;
  padding: 10px 20px;
  margin-bottom: 40px; }
  @media (min-width: 800px) {
    .kmnw_report .kmnw_outline {
      padding: 20px 40px; } }
  .kmnw_report .kmnw_outline dt {
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 2rem; }
  .kmnw_report .kmnw_outline li {
    font-weight: bold;
    font-size: 1.4rem; }
    @media (min-width: 800px) {
      .kmnw_report .kmnw_outline li {
        font-size: 1.8rem;
        margin-bottom: 10px; } }
    .kmnw_report .kmnw_outline li span {
      color: #a2a2a2;
      margin-right: 10px; }
.kmnw_report .list_01 {
  font-weight: bold;
  list-style: inside;
  margin-bottom: 20px; }
.kmnw_report .txt, .kmnw_report .img {
  margin-bottom: 20px; }

/* ----------------------------------------------------------------------------
 * hdg
 * ------------------------------------------------------------------------- */
.hdg_02 {
  margin-bottom: 20px;
  margin-top: 40px;
  background-color: #3f3a39;
  color: #fff;
  padding: 5px 0;
  text-align: center; }
  @media (min-width: 800px) {
    .hdg_02 {
      margin-top: 60px; } }

.hdg_04 {
  padding-bottom: 5px;
  border-bottom: 2px solid #3f3a39;
  margin-bottom: 20px;
  font-size: 1.8rem; }
  @media (min-width: 800px) {
    .hdg_04 {
      font-size: 2.4rem;
      margin-top: 60px; } }

.hdg_05 {
  margin-bottom: 10px;
  font-size: 1.6rem; }

/* ----------------------------------------------------------------------------
 * footer
 * ------------------------------------------------------------------------- */
.footer_01 {
  background-color: #3f3a39;
  margin-top: 40px;
  color: #fff;
  padding: 20px 10px;
  text-align: center; }
