@charset "UTF-8";
/* CSS Document */



/*シングルページのタイトルボックス
------------------------------------------------------*/

/*シングルページのタイトルボックス*/
.singleTitle {
  position: relative;
  padding: 0;
  margin-bottom: 20px;
  background-image: none !important;
}
@media only screen and (max-width: 767px) {
  .singleTitle {
    padding: 30px 0;
  }
}

.singleTitle::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.75);
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .15) 50%, transparent 50%), linear-gradient(rgba(0, 0, 0, .15) 50%, transparent 50%);
  background-size: 2px 2px;
}
@media only screen and (max-width: 767px) {
  .singleTitle::before {
    background-color: rgba(0, 0, 0, 0.5);
  }
}

.singleTitle::after {
  content: "";
  display: block;
  clear: both;
}

.singleTitle__heading {
  width: 70%;
  padding: 0 2.5% 0 0;
}

.container .singleTitle__heading {
  width: 100%;
  margin-bottom: 40px;
}

.page-single .content h2 {
  font-size: 2.4rem;
}
@media screen and (max-width: 1100px) {
  .page-single .content h2 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 769px) {
  .page-single .content h2 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 480px) {
  .page-single .content h2 {
    font-size: 5vw;
  }
}

.page-single .content h4 {
  color: #000000;
}

.page-single .content h5 {
  position: relative;
  padding-left: 40px;
}

.page-single .content h5:before {
  content: '◆';
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  background: #005aa0;
  padding: 0 5px;
  color: #ffffff;
  z-index: 99;
}

.page-single .img-box {
  width: 100%;
  flex-wrap: wrap;
}

.page-single .img-box.flex {
  display: flex;
}

.page-single .img-box.flex .img {
  width: 50%;
}

.page-single .img-box .img img {
  min-height: 37rem;
  object-fit: cover;
}

.page-single .img-box .ob-left {
  object-position: left;
}

.page-single .img-box .ob-right {
  object-position: right;
}


/*---------------------------------------------------------------------------*/

/*アイキャッチ部分*/
@media screen and (max-width: 640px) {
  .page-single p,
  .page-single ul,
  .page-single dl {
    font-size: 1.4rem;
  }
}


/*記事目次調整*/
.content ul.outline__list-2 li a:hover,
.content ul.outline__list-3 li a:hover,
.content ul.outline__list-2 li a:hover span,
.content ul.outline__list-3 li a:hover span {
  color: #ea7530 !important;
}

.content ul.outline__list-2 li {
  padding-top: 20px;
}

.content ul.outline__list-3 li {
  padding-top: 5px;
}

/*ページ内リンク調整*/
.content .anchor {
  padding-top: 60px;
  margin-top: -60px;
}

/*リスト表示*/
.content .c-list-b li:before {
  content: "●";
}

.content .s-list-b li:before {
  content: "■";
}

.content .r-list-b li:before {
  content: "◆";
}

.content .c-list-w li:before {
  content: "○";
}

.content .s-list-w li:before {
  content: "□";
}

.content .r-list-w li:before {
  content: "◇";
}

.content .h-list li:before {
  content: '-';
}

.content .c-list-num.num-list {
  counter-reset: listnum;
}

.content .num-list>li:before {
  content: counter(listnum) ".";
  counter-increment: listnum;
}



/*記事内TABLEタグ*/
.content .bg-white.border-white {
  background: #ffffff !important;
  border: 1px solid #ffffff !important;
}

.content th .txt-bg {
  padding: 5px 10px;
}

.content th.bg-white {
  background-color: #ffffff;
}

.content th .bg-black {
  background-color: #000000;
}

.content td .txt-bg {
  padding: 5px 10px;
}

.content td .txt-border {
  padding: 5px 10px;
}

.content td .bg-black {
  background-color: #000000;
}

.content td .border-black {
  border-bottom: 1px solid #000000;
}

.content table .thead-w {
  background: #ffffff !important;
}

.content table .thead-left {
  border-left: 1px solid #ffffff;
  border-top: 1px solid #ffffff;
}

.content table .thead-right {
  border-right: 1px solid #ffffff;
  border-top: 1px solid #ffffff;
}

.table-box tr th {
  min-width: 15rem;
}

.table-box tr td a {
  word-wrap: break-word;
  word-break: break-all;
}

.table-box tr td a:hover {
  font-weight: normal;
}

.content table .responsive {
  display: flex;
}
@media screen and (max-width: 768px) {
  .content table .responsive {
    flex-direction: column;
  }
}
@media screen and (max-width: 480px) {
  .content table .responsive {
    flex-direction: column;
  }
}

.content table .responsive .width400 {
  width: 400px;
}
@media screen and (max-width: 768px) {
  .content table .responsive .width400 {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .content table .responsive .width400 {
    width: 100%;
  }
}

.content table .width600 {
  width: 600px;
}
@media screen and (max-width: 1024px) {
  .content table .width600 {
    width: 500px;
  }
}
@media screen and (max-width: 768px) {
  .content table .width600 {
    width: 400px;
  }
}
@media screen and (max-width: 640px) {
  .content table .width600 {
    width: 350px;
  }
}
@media screen and (max-width: 480px) {
  .content table .width600 {
    width: 250px;
  }
}
@media screen and (max-width: 350px) {
  .content table .width600 {
    width: 50%;
  }
}

.content table .width400 {
  width: 400px;
}
@media screen and (max-width: 768px) {
  .content table .width400 {
    width: 300px;
  }
}
@media screen and (max-width: 640px) {
  .content table .width400 {
    width: 300px;
  }
}
@media screen and (max-width: 480px) {
  .content table .width400 {
    width: 200px;
  }
}
@media screen and (max-width: 350px) {
  .content table .width400 {
    width: 50%;
  }
}

/*Tableの中のtable*/
.content table.in-table {
  margin-bottom: 0;
  border-top: none;
  border-left: none;
}

.content table.in-table.mb10 {
  margin-bottom: 10px;
}

.content table.in-table.mb20 {
  margin-bottom: 20px;
}

.content table.in-table.mb30 {
  margin-bottom: 30px;
}

.content table.in-table.mb40 {
  margin-bottom: 40px;
}

.content table.in-table tr:nth-child(2n+1) {
  background: none;
}

.content table.in-table tr {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.content table.in-table tr:first-child th {
  padding-top: 0;
}

.content table.in-table tr th {
  position: relative;
  background: none;
  padding: 5px 0;
  border-right: none;
  border-bottom: none;
}

.content table.in-table tr th .in-table-ttl {
  min-width: 100px;
  display: inline-block;
  padding: 2px 10px 1px 10px;
  background: #005aa0;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .content table.in-table tr th .in-table-ttl {
    width: 100%;
    min-width: 100%;
  }
}

.content table.in-table tr td:first-child {
  position: relative;
  padding-left: 0;
}

.content table.in-table td {
  padding: 1px 0 0 0;
  border-right: none;
  border-bottom: none;
}

.content table.in-table ul li,
.content table.in-table ol li {
  padding: 2px 0 0 25px;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .content table.in-table ul li,
  .content table.in-table ol li {
    font-size: 12px;
  }
}

/*画像とテーブル*/
.content .img-table .box-group.flex .img-box {
  width: calc(50% - 20px);
  margin-right: 20px;
}
@media screen and (max-width: 768px) {
  .content .img-table .box-group.flex .img-box {
    width: 100%;
    margin-right: 0;
  }
}

.content .img-table .box-group.flex .table-box {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .content .img-table .box-group.flex .table-box {
    width: 100%;
  }
}

.content .img-table .box-group.flex .table-box .half-table tr th {
  width: 50%;
}


/*ボタン*/
.page-single .content .btn {
  width: auto;
}

.content .b-link {
  border-bottom: 1px solid #005aa0;
  color: #005aa0;
  font-weight: 500;
}

.content .b-link:hover {
  border-bottom: 1px solid #f60;
  color: #f60;
  font-weight: 500;
}

.contact-agree .btn {
  width: auto;
}

.profile__contents .btn {
  width: auto;
  max-width: 20rem;
  display: block;
  margin: 1rem 0 0 0;
}

.btn .btn__link::before,
.btn .comments__list .comment-reply-link::before {
  left: auto;
}

.btn .btn__link.btn__link-profile {
  border: none;
}



/*--------------------------------------------
CTAコンテナ ver2
-------------------------------------------*/
/*CTAボタン*/
.content .cta-box {
  padding: 0 5% 2rem 5%;
  margin-top: 2rem;
  border: 1px solid #333333;
  z-index: 9998;
  bottom: 0;
  background: rgba(255, 255, 255, 0.9);
  max-width: 1100px;
  width: 95%;
}
@media screen and (max-width: 1024px) {
  .content .cta-box {
    max-width: 53em;
    width: 95%;
    padding: 2rem 5% 1rem 5%;
  }
}
@media screen and (max-width: 767px) {
  .content .cta-box {
    padding: 2rem 3% 1rem 3%;
    width: 97%;
  }
}
@media screen and (max-width: 700px) {
  .content.cta-box {
    width: 97%;
  }
}
@media screen and (max-width: 480px) {
  .content .cta-box {
    max-width: 480px;
    width: 97%;
  }
}

.content .flow-box .cta-box {
  opacity: 0;
  visibility: hidden;
}

.content .flow-box .active {
  opacity: 1;
  visibility: visible;
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
}

.content .flow-box .absolute {
  position: absolute;
  top: -70px;
  bottom: auto;
}

.content .cta-box .midashi {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  padding: 2rem 1rem 1rem 1rem;
  position: relative;
}

@media screen and (max-width: 480px) {
  .content .cta-box .midashi {
    font-size: 4vw;
  }
}

.content .cta-box .midashi:before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: url(../img/common/logo-line.gif) repeat-x left top;
  z-index: 9998;
  position: absolute;
  bottom: 0;
  left: 0;
}

.content .cta-box .cta-content {
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .content .cta-box .cta-content {
    max-width: 650px;
  }
}
@media screen and (max-width: 750px) {
  .content .cta-box .cta-content {
    max-width: 480px;
  }
}

.content .cta-box .cta-txt {
  text-align: center;
  margin-top: 2rem;
}
@media screen and (max-width: 480px) {
  .content .cta-box .cta-txt {
    font-size: 3vw;
  }
}

.content .cta-box .btn {
  text-align: center;
  border: 1px solid #005aa0;
  max-width: 500px;
}

.content .cta-box .btn:hover {
  background: #ffffff;
  color: #005aa0;
  border: 1px solid #005aa0;
}

.content .cta-box .btn a {
  text-align: center;
}

.content .cta-box .btn:hover a {
  color: #005aa0;
}

.content .cta-box .btn:hover a:before {
  border-left: 5px solid #005aa0;
}



/*-----------------------------
投稿ページ
-------------------------------*/
.page-single-column {
  margin: 0 auto;
}

#under .flow-wrap .flow-inner {
  background: url(../img/flow/flow-wrap.gif) repeat-y 30px 5px !important;
}

#under #sec-delivery p,
#under #sec-delivery div {
  vertical-align: baseline;
}

#under #sec-delivery .item-row img {
  vertical-align: baseline;
}

#under #sec-delivery .btn,
#under #sec-payment .btn {
  width: auto;
}

#under #conWrap #wrap {
  padding-top: 20px;
}

.tenjikai-name span {
  padding: 5px 0;
  border-top: 2px solid #999999;
  border-bottom: 2px solid #999999;
}


/*---------------------
記事内 通常スライダー
----------------------*/
.link-slide-box {
  position: relative;
}

.link-slide-box .link-slider {
  margin: 0 auto;
}

.link-slide-box .link-slider.flex {
  display: flex;
}

.link-slide-box .link-slider .list {
  position: relative;
  display: flex;
  flex-direction: column;
  background-image: none;
  margin-right: 10px;
}

.link-slide-box .link-slider .list:nth-last-child() {
  margin-right: 0;
}

.link-slide-box .slick-slide img {
  display: block;
}

.link-slide-box .list a:hover .img img {
  opacity: 0.8;
}

.link-slide-box .slick-slide {
  opacity: 1;
}

.link-slide-box .slider-arrows {
  position: absolute;
  top: 33%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  display: block;
  z-index: 99;
}

.link-slide-box .slider-arrows .arrow {
  position: absolute;
  top: 50%;
  width: 35px;
  height: 70px;
  display: block;
  background-color: rgba(255, 255, 255, 0.5);
  margin-top: -28px;
  border: 1px solid rgba(100, 100, 100, 0.8);
  z-index: 1;
  cursor: pointer;
}

.link-slide-box .slider-arrows .arrow-prev {
  left: 0;
}

.link-slide-box .slider-arrows .arrow-prev:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%) rotate(-45deg);
  width: 15px;
  height: 15px;
  display: block;
  border-top: 1px solid rgba(0, 0, 0, 0.8);
  border-left: 1px solid rgba(0, 0, 0, 0.8);
  transition: left ease 0.28s, opacity ease 0.28s, visibility ease 0.28s;
  z-index: 1;
}

.link-slide-box .slider-arrows .arrow-next {
  right: 0;
}

.link-slide-box .slider-arrows .arrow-next:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) rotate(45deg);
  width: 15px;
  height: 15px;
  display: block;
  border-top: 1px solid rgba(0, 0, 0, 0.8);
  border-right: 1px solid rgba(0, 0, 0, 0.8);
  transition: right ease 0.28s, opacity ease 0.28s, visibility ease 0.28s;
  z-index: 1;
}

/*------------------------
QAボックス
------------------------*/
.qa-section {
  background-color: #ffffff;
}

.qa-section .qa-box {
  position: relative;
  background-color: rgba(0, 90, 160, 0.7);
  padding: 60px 10px 40px 10px;
  border: 4px solid rgba(0, 90, 160, 0.1);
  border-radius: 4px;
}

.qa-section .qa-box:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 150px;
  background-image: url(https://kari-knight.com/blog/wp-content/themes/lionmedia/img/blog-img/qa-background_clear.png);
  background-position: right;
  overflow: hidden;
  z-index: 0;
}

.qa-section .qa-box .head-img img {
  width: 100%;
  max-height: 100px;
  object-fit: cover;
  /*object-fit: none;*/
}

.qa-section .qa-box:nth-child(1) .head-img img {
  object-position: right;
}

.qa-section .qa-box:nth-child(2n+1) .head-img img {
  object-position: right;
}

.qa-section .qa-box:nth-child(2n) .head-img img {
  object-position: left;
}

.qa-section .qa-box .qa-question {
  position: relative;
  background-color: #ffffff;
  padding: 10px;
  border: 4px solid #ea7530;
  z-index: 80;
}

.qa-section .qa-box .qa-question .question-title {
  position: relative;
  padding-left: 30px;
  text-align: left;
  color: #ea7530;
  font-weight: bold;
}

.qa-section .qa-box .qa-question .question-title:before {
  content: 'Q';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  display: block;
  font-family: Arial, Helvetica, sans-serif;
  color: #ea7530;
  font-weight: bold;
  font-size: 2rem;
  z-index: 90;
}

.qa-section .qa-box .qa-question span {
  text-align: left;
}

.qa-section .qa-box .qa-answer {
  position: relative;
  width: 100%;
  background-color: #ffffff;
  padding: 10px;
  border: 4px solid #53a584;
  z-index: 80;
}

.qa-section .qa-box .qa-answer .answer-txt {
  position: relative;
  padding-left: 30px;
  text-align: left;
  color: #666666;
  font-weight: bold;
}

.qa-section .qa-box .qa-answer .answer-txt:before {
  content: 'A';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  font-family: Arial, Helvetica, sans-serif;
  color: #53a584;
  font-weight: bold;
  font-size: 2rem;
  z-index: 90;
}

.qa-section .qa-box .qa-answer .answer-txt ul li {
  color: #666666;
  font-weight: bold;
}

.qa-section .qa-box .qa-answer span {
  text-align: left;
}


/*記事内リンク*/
.content .outside-info {
  padding: 20px 0 20px 0;
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
}

.content .outside-txt {
  padding: 10px;
}

.content .outside-link {
  padding: 5px;
}

.content .outside-link a {
  display: inline-block;
  padding: 5px;
  border-bottom: 1px solid #005aa0;
  color: #005aa0;
}

.content .outside-link a:hover {
  border-bottom: 1px solid #f60;
  color: #f60;
}

.content .outside-link.btn-link a {
  display: inline-block;
  background-color: #005aa0;
  padding: 10px 20px;
  border-bottom: none;
  color: #ffffff;
}

.content .outside-link.btn-link a:hover {
  background-color: #f60;
  color: #ffffff;
}

.page-single .content .txt-link {
  font-weight: normal;
}