/* wrap
 * ========================================================================== */
@media (min-width:768px) {
  .f-mainContent > .wrap{
    width: 738px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
 @media (min-width:992px) {
  .f-mainContent > .wrap {
    width: 962px
  }
}
@media (min-width:1200px) {
  .f-mainContent > .wrap {
    width: 1170px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media (min-width: 1401px){
  .l-main {
     width: 66.66666666666667%;
  }
  .l-side {
      width: 33.333333333333336%;
  }
}


/* l-side
 * ========================================================================== */
@media (min-width: 768px){
  .l-side {
    margin-top: 80px;
  }
}



/* 記事
 * ========================================================================== */
.c-postSingle{
  padding-bottom: 60px;
  border-bottom: 1px solid #e6e6e6;
  margin: 2.5em 0 60px;
}

.c-postSingle__category{
  color: #f0454e;
  font-size: 1.6rem;
  margin-top: 30px;
  line-height: 1.2;
  font-weight: 500;
}
.c-postSingle__category a{
  color: #f0454e;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: 300;
  word-break: break-all;
  text-decoration: none;
}

.c-postSingle__title{
  margin-top: 30px;
  color: #1a1a1a;
  font-size: 2.9rem;
  font-weight: bold;
  line-height: 1.5;
}

.c-postSingle__date{
  color: #767676;
  font-size: 1.6rem;
}
.c-postSingle__date i{
  margin-right: 8px;
}

.c-postSingle__readtext{
  margin-top: 20px;
  color: #333333;
  /*font-size: 1.7rem;*/
  font-size: 1.8rem;
  line-height: 1.72;
}
.c-postSingle__readtext p{
  margin:1em 0;
}
.c-postSingle__readtext a{
  color: #111ccc;
  text-decoration: underline;
}
.c-postSingle__readtext a:hover{
  transition: all 0.3s;
  text-decoration: none;
}

.c-postSingle__eyecatch{
  margin-top: 25px;
  text-align: center;
}

.c-postSingle__text{
  margin-top: 40px;
  color: #333333;
  /*font-size: 1.7rem;*/
  font-size: 1.8rem;
  line-height: 1.7;
}
.c-postSingle__text > *{
  margin:1em 0;
}
.c-postSingle__text h2{
  font-size: 2.7rem;
  margin: 75px 0 35px;
  line-height: 1.5;
}
.c-postSingle__text h2 + *{
  margin-top: 0;
}
.c-postSingle__text a{
  color: #111ccc;
  text-decoration: underline;
}
.c-postSingle__text a:hover{
  transition: all 0.3s;
  text-decoration: none;
}
@media (max-width: 1335px){
  .c-contact__text br{
    display: none;
  }
}
@media (min-width: 768px){
  .c-postSingle__category a:hover {
    color: #818181;
    transition: all 0.3s;
  }
}
@media (max-width: 767px){
  .c-postSingle{
    padding-bottom: 0;
    border-bottom: none;
    margin: 0 0 1vw;
  }

  .c-postSingle__category{
    margin-top: 9.3vw;
    font-size: 1.2rem;
    line-height: 1.75;
  }
  .c-postSingle__category a{
    font-size: 1.4rem;
    line-height: 1.75;
  }

  .c-postSingle__title{
    margin-top: 4.6vw;
    /*font-size: 1.8rem;*/
     font-size: 2.1rem;
    line-height: 1.4;
  }

  .c-postSingle__date{
    margin-top: 4vw;
    /*font-size: 1.2rem;*/
    font-size: 1.5rem;

  }

  .c-postSingle__readtext{
    margin-top: 6.1;
    /*font-size: 1.3rem;*/
    font-size: 1.7rem;
  }

  .c-postSingle__eyecatch{
    margin-top: 4vw;
  }

  .c-postSingle__text{
    margin-top: 8vw;
    /*font-size: 1.3rem;*/
    font-size: 1.6rem;

  }
  .c-postSingle__text * + *{
    margin-top: 6.6vw;
  }
  .c-postSingle__text h2{
    font-size: 1.8rem;
    margin: 6vw 0 4vw;
  }
}


/*
 * お問い合わせ
 */
.c-contact{
  margin-top: 60px;
  width: 100%;
  border:1px solid #999999;
  background: #f2f2f2;
  padding: 20px;
  border-radius:10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-contact__text{
  width: calc(100% - 290px);
  color: #333333;
  /*font-size: 1.8rem;*/
    font-size: 1.85rem;
  line-height: 1.6;
  margin: 0;
}
.c-contact__btn{
  width:270px;
  height: 78px;
}
.c-contact__btn a{
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  background: #fe2b54;
  border-radius: 10px;
  text-decoration: none;
  line-height: 1;
}
.c-contact__btntext{
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
  margin: 0;
}
.c-contact__btntext span{
  margin: 0 10px 0 6px;
}
.c-contact__btnsubtext{
  text-align: center;
  font-size: 1.6rem;
  font-weight: 500;
  margin: 10px 0 0;
}
@media (max-width: 767px){
  .c-contact{
    margin-top: 8vw;
    padding: 4vw 3vw;
    /*border-radius:5px;*/
    border-radius:10px;
    flex-direction: column;
  }
  .c-contact__text{
    width: 100%;
   /*font-size: 3.2vw;*/
        font-size: 3.4vw;
    text-align: center;
  }
  .c-contact__text br{
    display: block;
  }
  .c-contact__btn{
    height: 60px;
    margin-top: 2vw;
  }
  .c-contact__btn a{
    border-radius: 10px;
  }
  .c-contact__btntext{
    font-size: 1.9rem;
  }
  .c-contact__btnsubtext{
    font-size: 1.3rem;
    margin: 5px 0 0;
  }
}


/*
 * 関連タグ
 */
.c-tag{
  margin-top: 60px;
}
.c-tag__title{
  color: #1a1a1a;
  font-size: 2rem;
  font-weight: bold;
  margin: 0;
}
.c-tag__text{
  color: #333333;
  font-size: 1.8rem;
}
.c-tag__text a{
  color: #666666;
  padding-top: 10px;
  text-decoration: underline;
}
.c-tag__text a:hover{
  transition: all 0.3s;
  text-decoration: none;
}
@media (max-width: 767px){
  .c-tag{
    margin-top: 7.3vw;
  }
  .c-tag__title{
    font-size: 2.0rem;
  }
  .c-tag__text{
    font-size: 1.7rem;
  }
  .c-tag__text a{
    padding-top: 0.2vw;
  }
}


/*
 * 関連記事
 */
.c-relatedPost{
  margin-top: 10px;
}
.c-relatedPost__title{
  color: #1a1a1a;
  font-size: 2rem;
  font-weight: bold;
  margin: 0;
}
.c-relatedPost__item{
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
.c-relatedPost__link{
  margin: 10px 20px 10px 0px ;
  position: relative ;
  display: inline-block ;
  vertical-align: top ;
  width: calc((100% - 60px) / 4);
  padding: 0 ;
}
.c-relatedPost__link:nth-of-type(4){
  margin: 10px 0 10px 0px ;
}
.c-relatedPost__link a{
  color: #333 ;
  margin-bottom: 12px;
  position: relative ;
  display: block ;
  font-size: 1.3rem;
  line-height: 1.6em ;
  text-decoration: none ;
  text-indent: 0 ;
  word-break: break-all;
}
.c-relatedPost__img img {
  display: block ;
  width: 100% ;
  height: auto ;
  max-width: 100% ;
  margin: 0 ;
  padding: 0 ;
  background: none ;
  border: none ;
  border-radius: 3px ;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) ;
}

@media (min-width: 768px){
  .c-relatedPost__link a:hover {
    color: #25f4ee ;
    transition: all 0.3s;
  }
}
@media (max-width: 767px){
  .c-relatedPost{
    margin-top: 7vw;
  }
  .c-relatedPost__title{
    font-size: 1.3rem;
    margin-bottom: 3vw;
  }
  .c-relatedPost__link{
    margin: 0 0 7.4vw;
    width: 47%;
  }
  .c-relatedPost__link:nth-of-type(odd){
    margin: 0 6% 7.4vw 0;
  }
  .c-relatedPost__link:nth-of-type(4){
    margin: 0 0 7.4vw 0;
  }
  .c-relatedPost__img img {
      width: 100% ;
      height: auto ;
  }
}


/*
 * SNSボタン
 */
.c-share{
  display: flex;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-share__link{
  padding: 5px;
}
.c-share__link a{
  display: block;
  border-radius: 3em;
  text-transform: none;
  letter-spacing: .1em;
  -webkit-transition: .4s background-color;
  transition: .4s background-color;
  /*padding: .3em 1.5em;*/
  padding: .3em 1.5em .2em;
  /*font-size: 1.3rem;*/
  font-size: 1.5rem;
  color: #fff;
  text-decoration: none;
}
.c-share__link.m-facebook a{
  background-color: #3b5998;
}
.c-share__link.m-twitter a{
  background-color: #55acee;
}
.c-share__link.m-googlePlus a{
  background-color: #dd4b39;
}
.c-share__link.m-pinterest a{
  background-color: #cb2027;
}
.c-share__link .fa {
    margin-right: .5em;
}
@media (min-width: 768px){
  .c-share__link.m-facebook a:hover{
    background-color: #283d68;
  }
  .c-share__link.m-twitter a:hover{
    background-color: #198fe8;
  }
  .c-share__link.m-googlePlus a:hover{
    background-color: #b52f1f;
  }
  .c-share__link.m-pinterest a:hover{
    background-color: #92171c;
  }
}
@media (max-width: 767px){
  .c-share{
    justify-content: center;
  }
  .c-share__link{
    padding: 3px;
  }
  .c-share__link a{
    padding: .4em .8em;
    font-size: 1.3rem;
  }
  .c-share__link .fa {
      margin-right: .3em;
  }
}


/*
 * 前後の記事へのリンク
 */
.c-postNav{
  margin-top: 50px;
}
.c-postNav__link{
  width: 50%;
  height: 145px;
  border:1px solid #999999;
  display: flex;
  align-items: center;
}
.c-postNav__link a{
  position: relative;
  display: block;
  width: 100%;
  height: 2.8em;
  color: #333333;
  font-size: 1.6rem;
  line-height: 1.6;
  text-decoration: none;
  word-break: break-all;
  overflow: hidden;
}
.ie11 .c-postNav__link a{
  height: 3em;
}
.c-postNav__link.m-past{
  float: left;
}
.c-postNav__link.m-next{
  float: right;
}
.c-postNav__link.m-past a{
  padding: 0 30px 0 65px;
}
.c-postNav__link.m-next a{
  padding: 0 65px 0 30px;
}
.c-postNav__link.m-past a:before,
.c-postNav__link.m-next a:before{
  content: "";
  position: absolute;
  top:50%;
  width:22px;
  height: 22px;
}
.c-postNav__link.m-past a:before{
  left:30px;
  border-top: 2px solid #333333;
  border-left: 2px solid #333333;
  transform: translateY(-50%) rotate(-45deg);
}
.c-postNav__link.m-next a:before{
  right:30px;
  border-top: 2px solid #333333;
  border-right: 2px solid #333333;
  transform: translateY(-50%) rotate(45deg);
}
.c-postNav__link.m-past + .c-postNav__link.m-next{
  border-left: none;
}


@media (max-width: 767px){
  .c-postNav{
    margin: 8vw 0;
  }
  .c-postNav__link{
    height:60px;
  }
  .c-postNav__link a{
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 6vw 0;
    height: 2.5em;
  }
  .c-postNav__link.m-past{
    float: left;
  }
  .c-postNav__link.m-next{
    float: right;
  }
  .c-postNav__link.m-past a{
    padding: 0 10px 0 25px;
  }
  .c-postNav__link.m-next a{
    padding: 0 30px 0 25px;
  }
  .c-postNav__link.m-past a:before,
  .c-postNav__link.m-next a:before{
    width:12px;
    height: 12px;
  }
  .c-postNav__link.m-past a:before{
    left:10px;
    border-top: 1px solid #333333;
    border-left: 1px solid #333333;
  }
  .c-postNav__link.m-next a:before{
    right:10px;
    border-top: 1px solid #333333;
    border-right: 1px solid #333333;
  }
}



/* form
 * ========================================================================== */
.c-postSingle__text > *.wpcf7{
  margin-top: 50px;
}
p.wpcf7c-elm-step1, p.wpcf7c-elm-step2, p.wpcf7c-elm-step3 {
  font-size: 1.8rem;
  text-align: center;
   color: #fe2c55;
}
.wpcf7-response-output .wpcf7-display-none .wpcf7-spam-blocked {
  font-size: 1.8rem;
}
.c-form__title{
  font-size: 2.0rem;
  font-weight: 500;
  background-color: #eaeaea;
  padding: 3px 0 3px 10px;
  margin-top: 50px;
}
.mac .c-form__title,
.mobile .c-form__title{
  padding: 10px 0 3px 10px;
}
.wpcf7 p {
  margin: 30px 0;
}
.c-form__text{
  color: #1a1a1a;
  font-weight: bold;
  padding: 0;
  font-size: 1.7rem;
  line-height: 1.5;
}
.c-form__text .m-red{
  color: #fe2c55;
  font-weight: normal;
  font-size: 1.4rem;
}
.c-form__input input[type=text],
.c-form__input input[type=email],
.c-form__input input[type=url],
.c-form__input input[type=tel],
.c-form__textarea textarea {
  color: #666;
  border: 1px solid #bbb;
  padding: 0.8em;
  border-radius: 4px;
  display: block;
  width: 100%;
  height: 66px;
  font-size: 1.7rem;
  font-family:inherit;
  -webkit-appearance: none; 
  outline: none;
}
.c-form__input input[type=text]:focus,
.c-form__input input[type=email]:focus,
.c-form__input input[type=url]:focus,
 .c-form__input input[type=tel]:focus,
.c-form__textarea textarea:focus{
  background-color: #f7f7f7;
  color: #141414;
}
.c-form__select select {
  border: 1px solid #bbb;
  border-radius: 4px;
  width: 100%;
  padding: 0.8em;
  color: #767676;
  height: 66px;
  font-size: 1.7rem;
}
.c-form__select select:focus,
.c-form__select select:hover {
  color: #141414;
}
.c-form__select select,
.c-form__input input,
.c-form__textarea textarea {
  margin-top: 6px;
}
.c-form__textarea textarea{
  height: 236px;
}
.c-form__submit {
    width: 100%;
}
.c-form__submit input[type=submit], .post-password-form input[type=submit] {
  margin: 20px auto 90px;
  display: block;
  width: 250px;
  height: 50px;
  border-radius: 25px;
  border:2px solid #222222;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 46px;
  text-decoration: none;
  background: #222222;
  padding: 0;
  cursor:pointer;
}
.mac .c-form__submit input[type=submit],
.mac .c-form__submit input[type=button],
.mobile .c-form__submit input[type=submit],
.mobile .c-form__submit input[type=button]{
  line-height: 50px;
}
.c-form__submit input[type=submit]:hover,
.post-password-form input[type=submit]:hover
{
  transition: all 0.3s;
  background: #fff;
  color: #222222;
  opacity: 1;
}
.c-form__submit input[type=button] {
  margin: 50px auto 0;
  display: block;
  width: 250px;
  height: 50px;
  border-radius: 25px;
  border:2px solid #222222;
  color: #222222;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 46px;
  text-decoration: none;
  background: #fff;
  padding: 0;
  cursor:pointer;
  margin-bottom:  10px;
}

.wpcf7 p.c-form__radioText{
  margin-bottom: 6px;
}
.c-form__radioArea{
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 1.7rem;
}
.c-form__radioArea li + li{
  margin-top: 10px;
}
.c-form__radio{
  margin-right: 5px;
}
.mobile .c-form__radioArea input[type=radio]{
  transform: translateY(1px);
}
.mobile.android .c-form__radioArea input[type=radio]{
  transform: translateY(2px);
}

span.wpcf7-list-item{
  display: block;
}
span.wpcf7-list-item + span.wpcf7-list-item{
  margin-top: 10px;
}

.c-form__privacy{
  margin: 4em 0 0;
}
.c-form__privacy .c-form__text{
  font-weight: normal;
}
.wpcf7 p.c-form__checkText{
  margin-bottom: 6px;
}
.c-form__privacyList{
  padding-left: 20px;
}
.c-form__privacyList li{
  font-size: 1.7rem;
}
.c-form__privacy a{
  color: #111ccc;
  text-decoration: underline;
  }

.c-form__checkText .c-form__text{
  font-size: 1.8rem;
}
.c-form__checkArea{
  padding: 0;
  margin: 0;
  font-size: 1.7rem;
}
.c-form__check{
  font-size: 1.7rem;
  margin-top: 0;
}
.wpcf7 input[type=checkbox]{
  transform: translateY(1px);
}
.mac.safari .wpcf7 input[type=checkbox]{
  transform: translateY(-1px);
}
.ipad.safari .wpcf7 input[type=checkbox]{
  transform: translateY(0);
}
.c-form__checkbox{
  margin-right: 5px;
}
.wpcf7-not-valid-tip{
  font-size: 1.4rem;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.sent .wpcf7-response-output{
  font-size: 1.4rem;
}
@media (max-width: 767px){
  .c-postSingle__text > *.wpcf7{
    margin-top: 10vw;
  }
  .wpcf7 p{
    margin: 5vw 0;
  }
  .c-form__text{
    /*font-size: 1.4rem;*/
    font-size: 1.6rem;
  }
  .c-form__text .m-red{
    /*font-size: 1.2rem;*/
    font-size: 1.4rem;
  }
  .c-form__input input[type=text],
  .c-form__input input[type=email],
  .c-form__input input[type=url],
  .c-form__input input[type=tel],
  .c-form__textarea textarea {
    height: 45px;
    font-size: 1.8rem;
    padding: 5px;
  }
  .c-form__select select {
    height: 45px;
    font-size: 1.8rem;
    padding: 5px;
  }
  .c-form__select select,
  .c-form__input input,
  .c-form__textarea textarea {
    margin-top: 2px;
  }
  .c-form__textarea textarea{
    height: 110px;
    font-size: 1.6rem;
  }
  .c-form__submit input[type=submit] {
    margin: 6.1vw auto 0;
  }

  .wpcf7 p.c-form__radioText{
    margin-bottom: 0.5vw;
  }
  .c-form__radioArea{
    font-size: 1.4rem;
  }
  .c-form__radioArea li + li{
    margin-top: 2vw;
  }

  .c-form__checkArea{
    font-size: 1.4rem;
  }
  .span.wpcf7-list-item span+span{
    margin-top: 2vw;
  }

  .c-form__privacy{
    margin: 5vw 0;
  }
  .wpcf7 .c-form__privacy p{
    margin: 0;
    line-height: 1.7;
  }
  .c-form__privacyList{
    margin: 2vw 0;
  }
  .c-form__privacyList li{
    font-size: 1.4rem;
  }
  .c-form__privacyList li + li{
    margin-top: 1vw;
  }

  .wpcf7 p.c-form__checkText{
    margin-bottom: 0.5vw;
  }
  .c-form__checkText .c-form__text{
    font-size: 1.6rem;
  }
  .c-form__check{
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .mobile.android .wpcf7 input[type=checkbox]{
    transform: translateY(3px);
  }
  .wpcf7-not-valid-tip{
    font-size: 1rem;
  }
  .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.sent .wpcf7-response-output,{
    font-size: 1rem;
  }
}
.wpcf7c-conf {
 background-color: #C0C0C0;
}
