/*
  Skin Name: シニアが教えるシニアのための写真教室
  Description: 自作スキン
  Skin URI: 
  Author: TSUKAKOSHI
  Author URI: 
  Screenshot URI: 
  Version: 1.0.2
  Priority: 9900000
*/
/*以下にスタイルシートを記入してください*/

/*--------------------------------------------
共通
--------------------------------------------*/
html {
  scroll-behavior: smooth;
}

#main {
  border-radius: 0;
}

.u-txt_red {
  color: #cc0000;
}

/*-- 固定ページ記事日時 --*/
.page .date-tags {
  display: none;
}

/********* pc *********/
.u-pc {
  display: block !important;
}

.u-pc__flex {
  display: flex !important;
}

.u-pc__inline {
  display: inline !important;
}

.u-sp,
.u-sp__flex,
.u-sp__inline {
  display: none !important;
}

/********* sp *********/
@media only screen and (max-width: 750px) {
  .u-pc,
  .u-pc__flex,
  .u-pc__inline {
    display: none !important;
  }

  .u-sp {
    display: block !important;
  }

  .u-sp__flex {
    display: flex !important;
  }

  .u-sp__inline {
    display: inline !important;
  }
}

.u-txt_red {
  color: #cc0000;
}


/*--------------------------------------------
ヘッダー
--------------------------------------------*/
/*-- ヘッダー非表示 --*/
#header-container {
  display: none;
}


/*--------------------------------------------
TOP
--------------------------------------------*/
/*-- 背景 --*/
.front-top-page .content {
  background-color: #fff;
  margin-top: 0;
}

.front-top-page .content .main {
  padding: 0;
}

.front-top-page .entry-content {
  margin-top: 0;
}

.btn_box {
  max-width: 560px;
  width: 100%;
  height: 80px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0!important;
  text-decoration: none!important;
  font-size: 32px;
  font-weight: 700;
  color: #fff;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .btn_box {
    height: 16vw;
    border-radius: 3vw;
    font-size: 6vw;
  }
}


.btn_box:hover {
  color: #fff!important;
  opacity: 0.7; 
}


/*-- トップイメージ --*/
.top_sec_fv {
  width: 100%;
  margin: 0 auto!important;
  background-color: #000;
}

.top_sec_fv p {
  max-width: 1600px;
  margin: 0 auto!important;
}

.top_sec_fv img {
  width: 100%;
}

/*-- キャッチ --*/

.top_sec_catch_container {
  width: 100%;
  padding: 80px 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_container {
    padding: 15vw 4vw;
  }
}

.top_sec_catch {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto!important;
}

.top_sec_catch_ttl {
  font-size: 46px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_ttl {
    font-size: 8vw;
    line-height: 1.4em;
    margin-bottom: 5vw!important;
  }
}

.top_sec_catch_txt {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  line-height: 1.6em;
  margin-bottom: 0!important;
  padding-bottom: 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_txt {
    font-size: 6vw;
    text-align: left;
    padding-bottom: 4vw;
  }
}

.top_sec_catch_box {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 30px auto 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_box {
    flex-flow: column;
    margin: 5vw auto 0!important;
  }
}

.top_sec_catch_box_img {
  width: 410px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_box_img {
    width: 100%;
    margin-bottom: 4vw!important;
  }
}

.top_sec_catch_box_txt {
  max-width: 790px;
  width: 100%;
  padding-left: 20px;
  text-align: left;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_box_txt {
    padding-left: 0;
  }
}

.top_sec_catch_box_txt_top {
  font-size: 36px;
  font-weight: 700;
  color: #1f286f;
  margin-bottom: 10px!important;
  line-height: 1.2em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_box_txt_top {
    font-size: 7vw;
    margin-bottom: 2vw!important;
  }
}

.top_sec_catch_box_txt ul {
  padding-left: 0;
  margin-bottom: 0!important;
}

.top_sec_catch_box_txt li {
  font-size: 24px;
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_catch_box_txt li {
    font-size: 5vw;
  }
}

/*-- お知らせ --*/
.top_sec_news {
  width: 100%;
  background-color: #f0f0f0;
  padding: 80px 0;
  margin: 0 auto!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_news {
    padding: 15vw 4vw;
  }
}

.top_sec_news_ttl {
  font-size: 46px!important;
  font-weight: 700!important;
  color: #ff6000;
  text-align: center;
  padding: 0!important;
  margin-bottom: 30px!important;
  background-color: #f0f0f0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_news_ttl {
    font-size: 8vw!important;
    line-height: 1.4em!important;
    margin-bottom: 5vw!important;
  }
}

.top_sec_news ul {
  max-width: 880px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  border-top: dotted 1px #000;
}

.top_sec_news li {
  list-style: none;
  border-bottom: dotted 1px #000;
}

.top_sec_news li a {
  display: flex;
  padding: 20px 0!important;
  text-decoration: none!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_news li a {
    flex-flow: column;
    padding: 4vw 0!important;
  }
}

.top_sec_news .post-date {
  font-size: 26px!important;
  font-weight: 500!important;
  color: #000!important;
  margin-bottom: 0!important;
  text-decoration: none!important;
  margin-right: 20px!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_news .post-date {
    font-size: 4vw!important;
    margin-right: 0!important;
  }
}

.top_sec_news h3 {
  font-size: 26px!important;
  font-weight: 500!important;
  margin-bottom: 0!important;
  border: none;!important;
  padding: 0!important;
  line-height: 1.5em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_news h3 {
    font-size: 5vw!important;
  }
}

.top_sec_news .btn_box {
  max-width: 220px;
  width: 100%;
  height: 60px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0!important;
  text-decoration: none!important;
  font-size: 20px;
  font-weight: 700;
  color: #000f;
  margin: 50px auto 0!important;
  background-color: #fff;
  border: 1px solid #000;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .btn_box {
    height: 16vw;
    border-radius: 3vw;
    font-size: 6vw;
    margin: 6vw auto 0!important;
  }
}

.top_sec_news .btn_box:hover {
  color: #ff6600!important;
  opacity: 1!important;
}

/*-- 教室の特長 --*/
.top_sec_merit_container {
  width: 100%;
  padding: 80px 0 70px!important;
  margin-bottom: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_container {
    padding: 15vw 4vw!important;
  }
}

.top_sec_merit {
  max-width: 980px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto!important;
  padding: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit {
    flex-flow: column;
  }
}

.top_sec_merit_img {
  width: 300px;
  padding: 0 10px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_img {
    width: 100%;
    margin: 0 0 6vw!important;
  }
}

.top_sec_merit_img p {
  width: 183px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_img p {
    width: 30vw;
    margin: 0 auto!important;
  }
}

.top_sec_merit_txt {
  width: 100%;
}

.top_sec_merit_txt_ttl {
  font-size: 38px;
  font-weight: 700;
  color: #a81d44;
  margin-bottom: 20px!important;
  line-height: 1.2em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_txt_ttl {
    font-size: 8vw;
    text-align: center;
    margin-bottom: 4vw!important;
  }
}

.top_sec_merit_txt ul {
  padding-left: 0;
  margin-bottom: 0!important;
}

.top_sec_merit_txt li {
  font-size: 24px;
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
  margin: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_txt li {
      font-size: 5vw;
  }
}

.top_sec_merit_container .btn_box {
  margin: 50px auto 0!important;
  background-color: #bd3e62;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_merit_container .btn_box {
    margin: 6vw auto 0!important;
  }
}

.top_sec_merit_container .btn_box:hover {
  color: #fff!important;
  opacity: 1!important;
}


/*-- 受講コース --*/
.top_sec_course_container {
  width: 100%;
  padding: 0 0 100px!important;
  margin: 0 auto!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_container {
    padding: 0 4vw 15vw!important;
  }
}

.top_sec_course {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
}

.top_sec_course_ttl {
  font-size: 46px!important;
  font-weight: 700!important;
  color: #6e276e;
  padding: 0!important;
  display: flex;
  align-items: center;
  margin-bottom: 60px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_ttl {
    font-size: 8vw!important;
  }
}

.top_sec_course_ttl:before,
.top_sec_course_ttl:after {
  content: "";
  flex-grow: 1;
  height: 2px;
  background: #6e276e;
}

.top_sec_course_ttl:before {
  margin: 0 0.8em 0 0;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_ttl:before {
    margin: 0 0.5em 0 0;
  }
}

.top_sec_course_ttl:after {
  margin: 0 0 0 0.8em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_ttl:after {
    margin: 0 0 0 0.5em;
  }
}

.top_sec_course_area {
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 0 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area {
    flex-flow: column;
  }
}

.top_sec_course_area > li {
  max-width: 380px;
  width: 100%;
  list-style: none;
  margin: 0!important;
  display: flex;
  justify-content: space-between;
  flex: 1;
  flex-flow: column;
  padding: 50px 10px 0!important;
  position: relative;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area > li {
    max-width: 100%;
    padding: 14vw 2vw 2vw!important;
  }
}

.top_sec_course_area > li:nth-child(1) { background-color: #cbe2e8; }
.top_sec_course_area > li:nth-child(2) { background-color: #f1ecce; }
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area > li:nth-child(2) { margin: 18vw 0 0!important;}
}

.top_sec_course_ico {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 54px!important;
  font-weight: 700!important;
  color: #fff;
  line-height: 1em;
  position:absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_ico {
    width: 20vw;
    height: 20vw;
    font-size: 14vw!important;
    position:absolute;
    top: -10vw;
  }
}

.top_sec_course_area > li:nth-child(1) .top_sec_course_ico { background-color: #cbe2e8; }
.top_sec_course_area > li:nth-child(2) .top_sec_course_ico { background-color: #f1ecce; }

.top_sec_course_area_sttl {
  text-align: center;
  font-size: 30px!important;
  font-weight: 700!important;
  color: #000;
  margin: 0 auto!important;
  line-height: 1.2em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_sttl {
    font-size: 5vw!important;
    margin: 0 auto 2vw!important;
  }
}

.top_sec_course_area_ttl {
  text-align: center;
  font-size: 42px!important;
  font-weight: 700!important;
  color: #000;
  margin: 0 auto 30px!important;
  line-height: 1.2em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_ttl {
    font-size: 8vw!important;
    margin: 0 auto 6vw!important;
  }
}

.top_sec_course_area_ttl span {
  position: relative;
}

.top_sec_course_area_ttl span:nth-child(1)::after {
  content: "2コマ";
  width: 100%;
  font-size: 20px!important;
  font-weight: 700!important;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_ttl span:nth-child(1)::after {
    font-size: 4vw!important;
    bottom: -8vw;
  }
}

.top_sec_course_area_ttl span:nth-child(2)::after {
  content: "1コマ";
  width: 100%;
  font-size: 20px!important;
  font-weight: 700!important;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 750px) {
  .top_sec_course_area_ttl span:nth-child(2)::after {
    font-size: 4vw!important;
    bottom: -8vw;
  }
}

.top_sec_course_area_list {
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
}

.top_sec_course_area_list > li {
  font-size: 26px;
  line-height: 1.6em;
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
  margin: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_list > li {
    font-size: 5vw!important;
    line-height: 1.4em;
    margin: 0 auto 2vw!important;
  }
}

.top_sec_course_area_stxt {
  font-size: 18px;
  line-height: 1.4em;
  padding-left: 1em;
  text-indent: -1em;
  margin: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_stxt {
    font-size: 4vw;
  }
}

.top_sec_course_area_price {
  width: 100%;
  border-top: dotted #fff 2px;
  padding: 0!important;
  text-align: center;
  font-size: 68px!important;
  font-weight: 700!important;
  color: #000;
  margin: 20px auto 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_price {
    font-size: 14vw!important;
    margin: 4vw auto 0!important;
  }
}

.top_sec_course_area_price span {
  font-size: 26px!important;
  font-weight: 300!important;
  color: #000;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_area_price span {
    font-size: 8vw!important;
  }
}

/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_timetable_warp {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

.top_sec_course_timetable {
  width: 880px;
  border-collapse: collapse;
  text-align: center;
  margin: 60px auto 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_timetable {
    width: max-content;
    margin: 8vw auto 0!important;
  }
}

.top_sec_course_timetable th,
.top_sec_course_timetable td {
  border: 1px solid #333;
  padding: 5px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_timetable th,
  .top_sec_course_timetable td {
    padding: 5px 15px;
  }
}

.top_sec_course_timetable thead th {
  background-color: #686667;
  color: #fff;
  font-size: 24px!important;
}

.timetable th,
.timetable td {
  border: 1px solid #333;
  padding: 10px;
}

.top_sec_course_timetable td:nth-child(1) {
  width: 60px!important;
}

.top_sec_course_timetable td:nth-child(2) {
  width: 230px!important;
}

.top_sec_course_timetable th:nth-child(1) {
  width: 290px;
}

.top_sec_course_timetable thead th:nth-child(1) {
  background-color: #413d3c;
}

.top_sec_course_timetable td {
  font-weight: 700;
  white-space: nowrap;
  font-size: 30px!important;
}

.top_sec_course_timetable td:nth-child(1) {
  background-color: #686667;
  font-size: 24px!important;
  color: #fff;
}

.top_sec_course_timetable td:nth-child(2) {
  background-color: #e0e0e2;
  font-size: 24px!important;
  font-weight: 500;
}

.top_sec_course_timetable .blue {
  background-color: #add8e6;
  font-size: 30px!important;
}

.top_sec_course_timetable .yellow {
  background-color: #fef3b3;
  font-size: 30px!important;
}

.top_sec_course_timetable .pink {
  background-color: #f8c9d4;
  font-size: 30px!important;
}

.top_sec_course_timetable .blank { background-color: white; }

.top_sec_course_timetable_txt {
  max-width: 880px;
  width: 100%;
  font-size: 24px!important;
  font-weight: 300!important;
  color: #000;
  margin: 5px auto 0!important;
  line-height: 1.4em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_timetable_txt {
    font-size: 4vw!important;
    margin: 2vw auto 0!important;
  }
}

.top_sec_course_timetable_txt span {
  color: #de94a5;
}

.btn_box.btn_course {
  background-color: #13ab13;
  margin: 30px auto 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .btn_box.btn_course {
    margin: 4vw auto 0!important;
  }
}

.top_sec_course_btnarea {
  max-width: 1200px;
  width: 100%;
  margin: 50px auto 0!important;
  padding: 0!important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .top_sec_course_btnarea {
    margin: 8vw auto 0!important;
    flex-flow: column;
    gap: 4vw 0;
  }
}

.btn_box.btn_profile {
  margin: 0!important;
  background-color: #f39800;
}

.btn_box.btn_pdf {
  margin: 0!important;
  background-color: #916cb8;
}


/*--------------------------------------------
フッター お問い合わせ・お申し込み
--------------------------------------------*/
footer .wrap {
  width: 100%!important;
}

.footer {
  padding: 0!important;
}

/* TOPボタン */
.btn_box.btn_gototop {
  background-color: #000;
  margin: 0 auto 50px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .btn_box.btn_gototop {
    width: 92vw;
    margin: 0 auto 4vw!important;
  }
}

.footer_contact {
  width: 100%;
  background-color: #e2e2e2;
  padding: 80px 0;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contact {
    padding: 15vw 0;
  }
}

.footer_contact_ttl {
  font-size: 46px!important;
  font-weight: 700!important;
  color: #3473a9;
  text-align: center;
  padding: 0!important;
  margin-bottom: 30px!important;
  background-color: #e2e2e2!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contact_ttl {
    font-size: 8vw!important;
    margin-bottom: 5vw!important;
  }
}

.footer_contact ul {
  max-width: 620px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  display: flex;
}

.footer_contact li {
  max-width: 310px;
  width: 100%;
  list-style: none;
  border-right: dotted 2px #000;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contact li {
    max-width: 50%;
  }
}

.footer_contact li:last-child {
  border-right: none;
}

.footer_contact li a {
  padding: 20px 0!important;
  text-decoration: none!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contact li a {
   padding: 4vw 0!important;
  }
}

.footer_contactbox_ttl {
  width: 100%;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px!important;
  font-weight: 700!important;
  color: #000;
  line-height: 1.4em!important;
  text-align: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contactbox_ttl {
    height: 10vw;
    font-size: 4vw!important;
  }
}

.footer_contactbox_ico {
  width: 100%;
  height: 120px;
  display: flex;
  justify-content: center;
  align-items: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contactbox_ico {
    height: 20vw;
  }
}

.footer_contact li:nth-child(1) .footer_contactbox_ico p {
  width: 108px;
}
.footer_contact li:nth-child(2) .footer_contactbox_ico p {
  width: 90px;
}
.footer_contact li:nth-child(3) .footer_contactbox_ico p {
  width: 94px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_contact li:nth-child(1) .footer_contactbox_ico p {
    width: 12vw;
  }
  .footer_contact li:nth-child(2) .footer_contactbox_ico p {
    width: 12vw;
  }
  .footer_contact li:nth-child(3) .footer_contactbox_ico p {
    width: 12vw;
  }
}

/*-- フッター--*/
.footer_company {
  width: 100%;
  background-color: #000;
  padding: 100px 20px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company {
    padding: 16vw 4vw!important;
  }
}

.footer_company_inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  display: flex;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_inner {
    flex-flow: column;
  }
}

.footer_company_map {
  width: 600px;
  margin: 0!important;
  padding: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_map {
    width: 100%;
    margin-bottom: 4vw!important;
  }
}

.footer_company_txt {
  max-width: 600px;
  width: 100%;
  padding: 0 0 0 20px!important;
  margin: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_txt {
    padding: 0!important;
  }
}

.footer_company_txt_ttl {
  font-size: 36px!important;
  font-weight: 700!important;
  color: #fff;
  padding: 0!important;
  margin-bottom: 20px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_txt_ttl {
    font-size: 8vw!important;
    margin-bottom: 2vw!important;
  }
}

.footer_company_txtbox {
  font-size: 24px!important;
  font-weight: 500!important;
  color: #fff;
  padding: 0!important;
  margin-bottom: 20px!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_txtbox {
    font-size: 4vw!important;
    margin-bottom: 4vw!important;
  }
}

.footer_company_txt_link {
  width: 370px;
  height: 48px;
  font-size: 22px!important;
  font-weight: 500!important;
  line-height: 1em!important;
  margin: 0!important;
  padding: 0!important;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 24px;
  color: #000!important;
  text-decoration: none!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .footer_company_txt_link {
    width: 100%;
    height: 10vw;
    font-size: 4vw!important;
    border-radius: 5vw;
  }
}


/*--------------------------------------------
プロフィールページ
--------------------------------------------*/
.page-id-52 .content {
  background-color: #fff;
  margin-top: 0;
}

.page-id-52 .content .main {
  padding: 0;
}

.page-id-52 .entry-content {
  margin-top: 0;
}

.profile_sec_fv {
  width: 100%;
  margin: 0 auto!important;
  background-color: #000;
}

.profile_sec_fv p {
  max-width: 1600px;
  margin: 0 auto!important;
}

.profile_sec_fv img {
  width: 100%;
}

.profile_sec_film_container {
  width: 100%;
  padding: 80px 20px!important;
  margin: 0 auto!important;
  background-color: #f0f0f0;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_film_container {
    padding: 15vw 4vw!important;
  }
}

.profile_sec_film {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
}

.profile_sec_film_ttl {
  width: 100%;
  font-size: 46px!important;
  font-weight: 700!important;
  color: #114a5f;
  padding: 0!important;
  display: flex;
  align-items: center;
  margin-bottom: 20px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_film_ttl {
    font-size: 8vw!important;
    margin-bottom: 4vw!important;
    display: block;
    text-align: center;
    line-height: 1.4em;
  }
}

.profile_sec_film_ttl:before,
.profile_sec_film_ttl:after {
  content: "";
  flex-grow: 1;
  height: 2px;
  background: #114a5f;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_film_ttl:before,
  .profile_sec_film_ttl:after {
    display: none;
  }
}

.profile_sec_film_ttl:before {
  margin: 0 0.8em 0 0;
}

.profile_sec_film_ttl:after  {
  margin: 0 0 0 0.8em;
}

.profile_sec_film_list {
  max-width: 880px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_film_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
  }
}

.profile_sec_film_list li {
  list-style: none;
}

.profile_sec_container {
  width: 100%;
  padding: 80px 20px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_container {
    padding: 15vw 4vw!important;
  }
}

.profile_sec {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
}

.profile_sec_area_top {
  width: 100%;
  margin: 0 auto 30px!important;
  padding: 0!important;
  display: flex;
  justify-content: space-between;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top {
    margin: 0 auto 6vw!important;
    flex-flow: column;
  }
}

.profile_sec_area_top_box {
  margin: 0!important;
  padding: 0!important;
  display: flex;
}

.profile_sec_area_top_box_img {
  width: 240px;
  margin: 0!important;
  padding: 0!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_box_img {
    width: 30vw;
  }
}

.profile_sec_area_top_box_txt {
  margin: 0!important;
  padding: 0!important;
  display: inline-block;
}

.profile_sec_area_top_box_txt p {
  margin: 0!important;
  padding: 0 0 0 20px!important;
  font-size: 18px!important;
  font-weight: 500!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_box_txt p {
    padding: 0 0 0 4vw!important;
    font-size: 4vw!important;
  }
}

.profile_sec_area_top_box_txt p.name {
  margin: 0 0 5px!important;
  padding: 0 0 5px!important;
  border-bottom: solid 1px #000;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_box_txt p.name {
    margin: 0 0 0.5vw!important;
    padding: 0 0 0.5vw!important;
  }
}

.profile_sec_area_top_box_txt p.name span {
  margin: 0!important;
  padding: 0 0 0 20px!important;
  font-size: 30px!important;
  font-weight: 500!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_box_txt p.name span {
    padding: 0 0 0 4vw!important;
    font-size: 6vw!important;
  }
}

.profile_sec_area_top_tigers {
  margin: 0!important;
  padding: 0!important;
  display: flex;
  justify-content: flex-end;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_tigers {
    margin: 6vw 0 0!important;
  }
}

.profile_sec_area_top_tigers_txt {
  margin: 0!important;
  padding: 0!important;
}

.profile_sec_area_top_tigers_txt p {
  margin: 0!important;
  padding: 0 20px 0 0!important;
  font-size: 18px!important;
  font-weight: 500!important;
  line-height: 1.4em!important;
  text-align: right;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_tigers_txt p {
    padding: 0 4vw 0 0!important;
    font-size: 3vw!important;
  }
}

.profile_sec_area_top_tigers_txt p.title {
  display: inline-block;
  margin: 0 0 5px!important;
  padding: 0 0 5px!important;
  border-bottom: solid 1px #000;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_tigers_txt p.title {
    margin: 0 0 0.5vw!important;
    padding: 0 0 0.5vw!important;
  }
}

.profile_sec_area_top_tigers_txt p.title span {
  margin: 0!important;
  padding: 0 0 0 20px!important;
  font-size: 24px!important;
  font-weight: 500!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_tigers_txt p.title span {
    padding: 0 0 0 4vw!important;
    font-size: 4vw!important;
  }
}

.profile_sec_area_top_tigers_img {
  width: 240px;
  margin: 0!important;
  padding: 0!important;
}
@media only screen and (max-width: 750px) {
  .profile_sec_area_top_tigers_img {
    width: 30vw;
  }
}

.profile_sec_area_bottom {
  width: 100%;
  padding: 0!important;
  margin-bottom: 80px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_bottom {
    margin-bottom: 12vw!important;
  }
}

.profile_sec_area_bottom p {
  width: 100%;
  font-size: 22px!important;
  font-weight: 500!important;
  padding: 0!important;
  margin-bottom: 0!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_bottom p {
    font-size: 4vw!important;
  }
}

.profile_sec_area_bottom ul {
  width: 100%;
  margin: 0!important;
  padding: 0!important;
}

.profile_sec_area_bottom li {
  list-style: none;
  padding-left:1em;
  text-indent:-1em;
  font-size: 22px!important;
  font-weight: 500!important;
  line-height: 1.4em!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_area_bottom li {
    font-size: 4vw!important;
  }
}

.profile_sec_list_ttl {
  font-size: 46px!important;
  font-weight: 700!important;
  color: #114a5f;
  padding: 0!important;
  display: flex;
  align-items: center;
  margin-bottom: 20px!important;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_list_ttl {
    font-size: 8vw!important;
    margin-bottom: 4vw!important;
    display: block;
    text-align: center;
    line-height: 1.4em;
  }
}

.profile_sec_list_ttl:before,
.profile_sec_list_ttl:after {
  content: "";
  flex-grow: 1;
  height: 2px;
  background: #114a5f;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_list_ttl:before,
  .profile_sec_list_ttl:after {
    display: none;
  }
}

.profile_sec_list_ttl:before {
  margin: 0 0.8em 0 0;
}

.profile_sec_list_ttl:after  {
  margin: 0 0 0 0.8em;
}

.profile_sec_list_top {
  width: 100%;
  margin: 0 auto!important;
  padding: 0!important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_list_top {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
  }
}

.profile_sec_list_top li {
  list-style: none;
}

.profile_sec_list_bottom {
  width: 100%;
  margin: 20px auto!important;
  padding: 0!important;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .profile_sec_list_bottom {
    margin: 2vw auto!important;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
  }
}

.profile_sec_list_bottom li {
  list-style: none;
}

/*--------------------------------------------
中ページ title
--------------------------------------------*/
.entry-title {
  font-size: 36px;
  margin: 0 0 36px!important;
  padding: 0 0 0.4em!important;
  border-bottom: solid #000 2px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .entry-title {
    font-size: 6vw;
    margin: 0 0 5vw!important;
  }
}

/*--------------------------------------------
お問い合わせ
--------------------------------------------*/
.form_table {
  border-collapse: collapse;
  border: solid 2px #d4dcd6;
  width: 100%;
}

.form_table th {
  color: #000;
  background-color: ##ebf6f7;
  width: 25%;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .form_table th {
    display: block;
    width: 100%;
  }
}

.form_table td {
  width: 75%;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .form_table td {
    display: block;
    width: 100%;
  }
}

.form_table th,
.form_table td {
  border: dashed 1px #d4dcd6;
  padding: 15px;
  box-sizing: border-box;
  font-size: 28px;
  line-height: 1.6;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .form_table th,
  .form_table td {
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom: dashed 1px #d4dcd6;
    font-size: 5vw;
  }
  .form_table tr:last-child td {
    border: none;
  }
}

.form_table th p,
.form_table td p {
  margin-bottom: 0;
}


/*--------------------------------------------
フォーム
--------------------------------------------*/
/* 入力 */
.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="tel"],
.wpcf7-form-control-wrap input[type="email"],
.wpcf7-form-control-wrap select {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border-radius: 3px;
  padding: 12px 10px;
  width: 100%;
  border: 1px #e5e5e5 solid;
  background-color: #f0f0f0;
  font-size: 24px;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .wpcf7-form-control-wrap input[type="text"],
  .wpcf7-form-control-wrap input[type="tel"],
  .wpcf7-form-control-wrap input[type="email"],
  .wpcf7-form-control-wrap select {
    font-size: 4vw;
  }
}


::placeholder {
  color: #999;
}

.wpcf7-form-control-wrap .wpcf7-textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
  min-height: 10em;
  padding: 10px;
  width: 100%;
  border: 1px #e5e5e5 solid;
  background-color: #f0f0f0;
  font-size: 24px;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
 .wpcf7-form-control-wrap .wpcf7-textarea {
    font-size: 4vw;
  }
}

/* チェックボックス */
.wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
}
span.wpcf7-list-item {
  position: relative;
}
.wpcf7-list-item-label {
  color: #000;
  cursor: pointer;
}
.wpcf7-form-control-wrap input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.wpcf7-list-item-label:before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: -3px;
  margin-right: 5px;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
  border-radius: 3px;
  border: 1px #e5e5e5 solid;
  background-color: #f0f0f0;
}
.wpcf7-form-control-wrap input[type="checkbox"]:checked ~ .wpcf7-list-item-label:after {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 6px;
  width: 7px;
  height: 12px;
  transform: rotate(40deg);
  border-bottom: 3px solid #327d40;
  border-right: 3px solid #327d40;
}

.wpcf7-btnarea {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .wpcf7-btnarea {
    display: block;
    margin-top: 20px;
  }
}

.wpcf7-confirm,
.wpcf7-back,
.wpcf7-submit {
  max-width: 560px;
  width: 100%;
  height: 80px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 !important;
  text-decoration: none !important;
  font-size: 32px;
  font-weight: 700;
  color: #fff!important;
  background-color: #13ab13!important;
  margin: 0 auto!important;
}
/********* ～sp *********/
@media only screen and (max-width: 750px) {
  .wpcf7-confirm,
  .wpcf7-back,
  .wpcf7-submit {
    margin: 0 auto 10px;
  }
  .wpcf7-response-output {
    margin: 20px auto 0;
  }
}

.wpcf7-btnarea p {
  margin-bottom: 0;
}

.wpcf7-btnarea input[type="submit"] {
  color: #254a86!important;
  background-color: #f1b411!important;
}

.wpcf7-back {
  background-color: #999;
}

.wpcf7-submit:hover {
  background-color: #13ab13;
}
