@charset "UTF-8";
/*　変数設定のみを行う
**************************/
/*　基本設定
**************************/
body {
  background-color: #ffffff;
  color: #222222;
  font-family: Verdana, Roboto, "Droid Sans", " 游ゴシック", YuGothic, " メイリオ", Meiryo, " ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif; }
  body * {
    line-height: 1.6; }
  body p {
    word-wrap: break-word; }
  body a {
    color: #222222;
    cursor: pointer; }
    body a:hover {
      color: #222222 !important;
      text-decoration: none !important; }
  body a:hover img {
    cursor: pointer;
    opacity: 0.8; }
  body h1, body h2, body h3, body h4, body h5, body h6 {
    font-weight: bold;
    line-height: 1.4;
    margin-top: 0; }
  body dt {
    font-weight: normal; }

.m_btn_ora10:hover, .m_btn_ora10:active, .m_btn_ora10:visited {
  color: #fff !important; }

label {
  font-weight: normal !important; }

/*　@mixin
**************************/
/*　テンプレート共通
**************************/
footer {
  font-size: 14px; }
  footer a {
    color: #222; }

.breadcrumb {
  margin: 0 !important; }

/*　画像
**************************/
img {
  max-width: 100%; }

/*　テキスト
**************************/
.text-sm {
  font-size: 12px; }

.text-memo {
  color: #626262; }

.text-emphasis {
  font-weight: bold; }

/*　リスト
**************************/
ul {
  padding: 0; }

ul.notice {
  margin-bottom: 0; }
  ul.notice li {
    color: #626262;
    list-style-type: none;
    padding-left: 1.5em;
    text-indent: -1.5em; }
    ul.notice li:before {
      content: '※';
      margin-right: 5px; }

/*　ボタン
**************************/
.btn {
  border-radius: 2px;
  white-space: normal; }

.btn-md {
  height: auto;
  padding: 10px 20px;
  width: 100%;
  font-size: 16px; }

.btn-normal {
  background: #fa6218;
  border: none;
  box-shadow: 0 4px 0 0 #c8580d;
  color: #fff; }
  .btn-normal:hover, .btn-normal:active {
    background: #e0630f;
    color: #fff !important; }

.sns-wrap {
  padding: 0 4% 30px; }

.sns-btn {
  border-collapse: separate;
  border-spacing: 20px 0;
  display: table;
  height: 40px;
  margin: 0 auto 15px;
  padding: 0; }
  .sns-btn li {
    display: table-cell;
    vertical-align: top; }
    .sns-btn li .wrap-twitter-icon, .sns-btn li .wrap-line-icon {
      border-radius: 2px;
      display: block; }
    .sns-btn li .wrap-twitter-icon {
      background: #1DA1F2; }
    .sns-btn li .wrap-line-icon {
      background: #00b900; }

.bg-color {
  background: #eff1dd !important; }

.bc-01 {
  background: #029601; }

h2 {
  background: #029601;
  width: 100%; }

.purpose-head {
  border-radius: 16px 16px 0 0; }

.warp-2 {
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 0;
  padding: 0px 8px;
  width: calc( 100% / 2); }
  .warp-2:hover {
    color: #fff !important; }

.bor-r_1dotwhite {
  border-right: 1px dotted #fff; }

.cate-btn {
  border: 1px solid #029601;
  border-radius: 4px;
  color: #029601;
  font-size: 12px;
  font-weight: 700;
  float: right;
  padding: 4px 8px; }
  .cate-btn:hover {
    color: #029601 !important; }

.mag-label {
  border-radius: 12px;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  margin-right: 6px;
  padding: 2px 8px 2px 8px;
  text-align: center; }

.f-size-control {
  color: #222;
  font-size: 14px;
  line-height: 16px; }
  @media screen and (min-width: 781px) {
    .f-size-control {
      font-size: 18px;
      line-height: 18px; } }

.voice-container .voice-wrap *, .voice-container .voice-wrap *:before, .voice-container .voice-wrap *:after {
  box-sizing: border-box;
  -webkit-box-sizing: border-box; }

.voice-container .voice-wrap label {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.4) 0%, white 100%);
  bottom: 0;
  cursor: pointer;
  height: 50px;
  margin: 0;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: 1;
  border-radius: 8px; }

.voice-container .voice-wrap input:checked + label {
  background: inherit; }

.voice-container .voice-wrap label:after {
  bottom: 0;
  content: '口コミを読む';
  font-weight: normal;
  left: 50%;
  padding: 8px 0;
  position: absolute;
  text-decoration: underline;
  transform: translate(-50%, 0);
  width: 100%;
  z-index: 2; }

.voice-container .voice-wrap input {
  display: none; }

.voice-container .voice-wrap .voice-content {
  height: 140px;
  overflow: hidden;
  transition: all 0.5s;
  white-space: normal; }

.voice-container .voice-wrap input:checked + label:after {
  content: '閉じる'; }

.voice-container .voice-wrap input:checked ~ .voice-content {
  height: auto;
  padding-bottom: 50px;
  transition: all 0.5s; }

.voice-container .voice-ttl {
  border-bottom: 1px dashed #B5B5B5;
  font-weight: 700;
  margin-bottom: 8px;
  padding-bottom: 8px;
  text-align: left; }
