@charset "utf-8";
/* リセットCSS */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  outline: 0;
}

body {
  font-size: 62.5%;
  line-height: 1.5;
  color: #000;
}

@font-face {
  font-family: YuGothicM;
  src: local("Yu Gothic Medium");
}

body,
table,
input, textarea, select, option {
  font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
}

ol, ul {
  list-style: none;
}

ul li{
  margin:0;
  padding:0;
}

blockquote, q {
  quotes: none;
}

:focus {
  outline: 0;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

img {
  vertical-align: top;
}

a:link {
  color: #fff;
  text-decoration: none;
}

a:visited {
  color: #fff;
  text-decoration: none;
}

a:hover {
  color: #fff;
  text-decoration: none;
}

a:active {
  color: #fff;
  text-decoration: none;
}

*,
*:after,
*::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row{
  margin: 0;
}

/* bootstrapリセット */
.navbar-default {
  background: none;
  border: none;
}

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus{
  background: #d92140;
}
.navbar-default .navbar-toggle{
  background: #d92140;
  border: none;
}

.navbar-toggle .icon-bar{
  width: 26px;
  height: 4px;
  border-radius: 2px;
}

.navbar-default .navbar-toggle .icon-bar {
  background-color: #fff;
}

.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 5px;
}


/*iPadの余白対応*/
@media (min-width: 768px){

  .pd0{ padding: 0 !important; }
  .container_none {  padding: 0 ; }
  .container {
    width: 750px; padding: 0 20px;
  }
}

@media (min-width: 780px){
  .container {
    padding: 0;
  }
}

@media (min-width: 992px){
  .container {
    width: 970px; padding: 0 20px;
  }
}

@media (min-width: 1200px){
  .container {
    width: 1170px;
  }
}

.sp_pad0{
  padding: 0 ;
}

/* =============================================================  common  */
/* flex box */
.flex,
.flex_st,
.flex_cn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  flex-align: stretch;
  -webkit-align-items: stretch;
  align-items: stretch;
}
.flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.flex_st {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.flex_cn {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.flex_en {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}

/* spナビ */
.sp_nav {
  background: #d92140;
  box-shadow: 0 -1px 5px rgba(0, 0, 0, .2);
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 9.8vh;　/* ボタンの高さ固定 */
}

@media (max-width: 359px){

  .sp_nav{
    height: 10.8vh;　/* ボタンの高さ固定 */
  }

}

.sp_nav li {
  border-left: 1px solid rgba(0, 0, 0, .15);
  border-right: 1px solid rgba(255, 255, 255,.25);
  border-top: 1px solid rgba(255, 255, 255,.15);
  width: 25%;
}

.sp_nav .sp_nav_li{
  color: #fff;
  display: block;
  font-size: 10px; font-size: 1.0rem;
  line-height: 1.1;
  text-align: center;
  padding-top: 1.5vh;
}

/*.sp_nav_li:nth-child(4){
background: #f7de29;
}*/

.sp_nav .sp_nav_btn .sp_nav_i{
  font-size: 20px; font-size: 2.0rem;
  display: block;
  text-align: center;
  padding-bottom: 1.6vh;
}

/* drawer　カラム修正 */
.drawer--right .drawer-nav {
  right: -75%;
}

.drawer--right.drawer-open .drawer-hamburger {
  right: 75%;
}

.drawer-hamburger {
  width: 12.6vw;
  top: auto;
  bottom: 1.4vh;
  padding: 0 6.1vw;
}

.drawer-hamburger-icon::before {
  top: -8px;
}

.drawer-hamburger-icon::after{
  top: 8px;
}

.drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before{
  background-color: #fff;
  width: 60%;
  margin: 0 auto 2.8vh;
}

/*端末サイズによる位置可変*/
@media (min-width: 366px){

  .drawer-hamburger {
    bottom: 2vh;
  }

  .drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before{
    margin: 0 auto 2.6vh;

  }
}
@media (min-height: 800px){

  .drawer-hamburger {
    bottom: 2.8vh;
  }

  .drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before{
    margin: 0 auto 2.4vh;

  }
}

.drawer-hamburger-icon::after, .drawer-hamburger-icon::before{
  width: 100%;
}

.drawer-toggle{
  background: #d92140;
}

.drawer-nav {
  width: 75%;
}

.drawer-nav_ul .drawer-nav_li{
  text-align: left;
}

.drawer-nav_ul .drawer-nav_li,
.drawer-nav_ul .drawer-nav_li .drawer-nav_li_a{
  width: 100%;
  color: #000;
  line-height: 20px;
  font-size: 15px; font-size: 1.5rem;
  font-weight: 400;
}

.drawer-nav_ul .drawer-nav_li .drawer-nav_li_a{
  padding: 10px;
  text-decoration: none;
}

.drawer-nav_ul .drawer-nav_li .contact_telbtn_st01,
.drawer-nav_ul .drawer-nav_li .contact_telbtn_st02{
  margin-left: 4vw;
  vertical-align: -4px;
}

.drawer-nav_ul .drawer-nav_li .contact_telbtn_time{
  padding-bottom: 0;
  margin: 3px 0 -4px -40px;
  font-size: 13px; font-size: 1.3rem;
}

@media (max-width: 359px){

  .drawer-nav_ul .drawer-nav_li .contact_telbtn_time{
    padding-bottom: 0;
    margin: 3px 0 -4px -20px;
    font-size: 13px; font-size: 1.3rem;
  }

}


.drawer-nav_ul .drawer-nav_li .contact_telbtn_txt02 {
  padding-bottom: 12px;
}

.drawer-hamburger-icon::after, .drawer-hamburger-icon::before{
  width: 100%;
}

.drawer-toggle{
  background: rgba(217,33,64,0.8);
}

.drawer-nav {
  width: 75%;
}

.drawer-nav_ul .drawer-nav_li{
  text-align: left;
}

.drawer-nav_ul .drawer-nav_li,
.drawer-nav_ul .drawer-nav_li .drawer-nav_li_a{
  width: 100%;
  color: #000;
  line-height: 20px;
  font-size: 15px; font-size: 1.5rem;
  font-weight: 400;
}

.drawer-nav_ul .drawer-nav_li .drawer-menu-item,
.drawer-nav_ul .drawer-nav_li .drawer-nav01_dl{
  padding: 10px 0 10px 10px;
  width: 91.66666667%;
  margin-left: 4.166666667%;
  position: relative;
  display: block;
}

.drawer-nav_ul .drawer-nav_li .drawer-nav01_dl{
  line-height: 20px;
  padding: 0;
}

.drawer-nav_ul .drawer-nav_li .drawer-menu-item .glyphicon{
  font-size: 12px; font-size: 1.2rem;
  color: #d92140;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  position: absolute;
}

.drawer-nav_ul .drawer-nav_li .sp-nav_tel_banner01{
  padding: 0;
  width: 91.66666667%;
  margin-bottom: 20px;
}


/* dropdown設定 */

.drawer-nav_ul .drawer-dropdown{
  width: 100%;
  border: none;
}

.drawer-dropdown .drawer-dropdown_a{
  padding: 10px;
  text-align: left;
}

.drawer-dropdown .drawer-dropdown_a{
  width: 100%;
  color: #000;
  line-height: 20px;
  font-size: 15px; font-size: 1.5rem;
  font-weight: 400;
}

.drawer-nav_ul .drawer-dropdown,
.drawer-dropdown .drawer-dropdown-menu{
  width: 91.66666667%;
  margin-left: 4.166666667%;
  position: relative;
  display: block;
  text-align: left;
}

.drawer-dropdown .drawer-dropdown-menu{
  padding: 10px 0 10px 10px;
}


.drawer-dropdown .drawer-dropdown_a:hover{
  text-decoration: none;
}

/* 非表示に */
.drawer-dropdown .drawer-dropdown-menu{
  display: none;
  text-align: left;
}

.drawer-dropdown .drawer-dropdown-menu{
  line-height: 20px;
  padding: 0;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li .drawer-dropdown-menu-item .glyphicon{
  font-size: 12px; font-size: 1.2rem;
  color: #d92140;
  top: 50%;
  right: 0;
  margin-top: -7px;
  position: absolute;
}

.drawer-dropdown .drawer-caret{
  color: #d92140;
  top: 50%;
  margin-left: 20px;
  margin-top: -2px;
  position: absolute;
  border-top: 6px solid;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
}

.drawer-nav_ul .drawer-dropdown .drawer-dropdown_acc,
.drawer-nav_ul .drawer-nav_li .drawer-menu-item {
  height: 42px;
  line-height: 42px;
  padding: 0 10px;
  position: relative;
  overflow: hidden;
}

.footer_nav01_li,
.drawer-dropdown-menu .drawer-dropdown-menu_li {
  width: 100%;
  border-bottom: #fff solid 1px;
  position: relative;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li {
  border-left: none;
}

.drawer-dropdown-menu_li:last-child .drawer-dropdown-menu-item{
  margin-bottom: 12px;
}

.drawer-dropdown-menu_li:last-child .drawer-dropdown-menu-item .glyphicon{
  margin-top: -13px;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li .drawer-dropdown-menu-item{
  display: block;
  width: 100%;
  margin-left: 0;
  padding: 0 10px;
  background: #fdf3f5;
  color: #000;
  height: 42px;
  line-height: 42px;
  font-size: 15px; font-size: 1.5rem;
  font-weight: 400;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li:nth-child(2) .drawer-dropdown-menu-item{
  background: #f1f9e8;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li:nth-child(3) .drawer-dropdown-menu-item{
  background: #fff5e6;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li .drawer-dropdown-menu-item .glyphicon{
  right: 10px;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li:nth-child(2) .drawer-dropdown-menu-item .glyphicon{
  color: #60a304;
}

.drawer-dropdown-menu .drawer-dropdown-menu_li:nth-child(3) .drawer-dropdown-menu-item .glyphicon{
  color: #f49f19;
}

/* dropdown設定終了 */

/* footer_accordion設定 */
.footer_nav01_acc, .footer_nav01_dt a {
  display: block;
  color: #fff;
}

.footer_nav01_dt {
  line-height: 1.2;
  padding: 0;
  overflow: hidden;
  position: relative;
  height: 52px;
  line-height: 52px;
  font-weight: 400;
}

.footer_nav01_acc::after {
  content: "+";
  width: 20px;
  height: 20px;
  background: rgba(255,255,255,0.3);
  text-align: center;
  line-height: 18px;
  color: #fff;
  font-weight: 600;
  font-size: 18px; font-size: 1.8rem;
  position: absolute;
  right: 0;
  top: 16px;
  backface-visibility: hidden;
}

.footer_nav01_acc.active::after {
  content: "−";
  opacity: 1;
}

.footer_nav01_dl .footer_dl_li{
  width: 100%;
  border-bottom: #fff solid 1px;
  position: relative;
}

.footer_nav01_dl .footer_dl_li:first-child{
  margin-top: 52px;
}

.footer_nav01_dl .footer_dl_li a {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 30px;
  height: 52px;
  line-height: 52px;
  color: #000;
}

.footer_nav01_dl .footer_nav01_dd{
  background: #fdf3f5;
  margin: 0 -15px;
}

.footer_nav01_dl .footer_dl_li .glyphicon {
  width: 7px;
  height: 15px;
  margin-top: -7px;
  color: #d92140;
  right: 30px;
}


.header_sp-nav_tel{
  text-align: center;
  padding: 10px 0;
  line-height: 1.5;
  background: #fff5f5;
  border: #e53145 solid 1px;
  color: #e53145;
  height: 100%;
}

.header_sp-nav_tel::after{
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  position: absolute;
  left: 3px;
  top: 3px;
  border: #e53145 dotted 1px;
  box-sizing: border-box;
}

.header_sp-nav_tel .tel {
  color: #e53145;
  font-size: 24px; font-size: 2.4rem;
  font-weight: 600;
}

.header_sp-nav_tel .draer-opent{
  font-size: 13px; font-size: 1.3rem;
  margin-top: -4px;
}


.header_sp-nav_tel .draer-opent .fs11{
  font-size: 11px; font-size: 1.1rem;
}


.line01{
  border-top: 1px solid #d92140;
  display: block;
  margin: 30px 0 22px;
}

.line02{
  border-top: 1px solid #d92140;
  display: block;
  margin: 2px 0 30px;
}

.drawer-nav .banner02{
  padding-top: 20px;
  overflow: hidden;
  position: relative;
  background: #fff;
  text-align: left;
}

.banner02 .banner02_a{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.banner02_inner{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 12px 8px 8px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.85);
}

.banner02_txt{
  font-size: 18px; font-size: 1.8rem;
  display: inline-block;
  padding-bottom: 2px;
}

.banner02_price{
  font-size: 13px; font-size: 1.3rem;
  line-height: 1.5;
  display: block;
  font-weight: 600;
  color: #e53145;
}
.banner02_price .banner02_price_i{
  font-size: 12px; font-size: 1.2rem;
  padding: 4px;
  background: #e53145;
  color: #fff;
  vertical-align: 1px;
}

.banner02_price .banner02_em{
  font-size: 18px; font-size: 1.8rem;
  margin: 0 2px 0 4px;
  vertical-align: -2px;
}

.cupid_bn02{
  width: 91.66666667%;
  margin-left: 4.166666667%;
  margin-bottom: 30px;
  padding: 4vw 0 4vw;
  overflow: hidden;
  background: #fffdf4 url(../../img/common/cupid_bg01.jpg) no-repeat center top 6vw/contain;
}

.cupid_bn02_txt{
  padding: 6vw 4vw 2vw;
}

.cupid_inner_li_txt01{
  padding-bottom: 3vw;
}

.cupid_bn02_img{
  padding: 0 10px 16vw;
}

.cupid_bn02_btntxt{
  padding: 16vw 10px 0;
}

.cupid_bn02 .cupid_bn02_btntxt_a {
  background-color: rgba(0,0,0,0.85);
  border: none;
  color: #efd38b;
  padding: 8px 0;
  border-radius: 22px;
  display: block;
  max-width: 100%;
  font-size: 12px; font-size: 1.2rem;
  position: relative;
  text-align: center;
}


/* z-indexの指定にてメニュー欄より下にする */

.sp_nav {
  z-index: 2;
}

.drawer-open .drawer-overlay {
  z-index: 4;
}

.drawer--right.drawer-open .drawer-hamburger {
  z-index: 5;
}

.drawer--right .drawer-nav {
  z-index: 6;
}

.dropdown-backdrop{
  z-index: 0;
}


/* フォント */
html { font-size: 62.5%; }
body { font-size: 14px; font-size: 1.4rem; } /* =14px */
h1   { font-size: 24px; font-size: 2.4rem; font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif; font-weight: 600; } /* =24px */
h2   { font-size: 24px; font-size: 2.4rem; font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif; font-weight: 600; } /* =24px */
h3   { font-size: 20px; font-size: 2.0rem; color: #d92140; font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif; } /* =24px */
h4   { font-size: 18px; font-size: 1.8rem; font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif; } /* =24px */


.header_wrap .logo .navbar-brand{
  color: #fff;
  font-size: 14px; font-size: 1.4rem;
  letter-spacing: 0.075em;
  margin-left: 0.075em;
  overflow: hidden;
  height: auto;
  background-size: 94px 72px;
}

.h3_tit01{
  margin-bottom: 22px;
  text-align: center;
  padding: 0;
  line-height: 1.5;
  font-weight: 600;
}

.h4_tit01{
  font-size: 16px; font-size: 1.6rem;
  font-weight: 600;
}

#tab2 .h3_tit01{
  color: #60a304;
  text-align: center;
}

#tab3 .h3_tit01{
  color: #f49f19;
  text-align: center;
}

.h3_tit02{
  margin-bottom: 22px;
  color: #000;
  text-align: center;
}

.tit_ico .tit_ico_img01 {
  width: 36px;
  margin: -6px 5px 0 0;
}

.tit_ico .tit_ico_img02 {
  width: 30px;
  margin: -8px 8px 0 0;
}

.tit_ico .tit_ico_img03 {
  width: 19px;
  margin: 1px 10px 0 0;
}

.tit_ico .tit_ico_img04 {
  width: 28px;
  margin: 4px 10px 0 0;
}

.p_txt01{
  margin-bottom: 24px;
  text-align: left;
}

.p_txt02{
  margin-bottom: 16px;
  text-align: left;
}

.p_txt03{
  margin-bottom: 28px;
}

.con_img01{
  margin-bottom: 30px;
  overflow: hidden;
}

.con_img02{
  margin-bottom: 24px;
  overflow: hidden;
}

.font-min{
  font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif;
}
.font-kaku{
  font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
}

.font-smin{
  font-family: "Sawarabi Mincho";
}

.col-bg-red{
  background: #fdf3f5 !important;
}

.col-bg-green{
  background: #60a304 !important;
}

.col-bg-orange{
  background: #f49f19 !important;
}

.col-fn-red{
  color: #d92140 !important;
}

.col-fn-green{
  color: #60a304 !important;
}

.col-fn-orange{
  color: #f49f19 !important;
}


.header_wrap{
  width: 100%;
  height: 280px;
  background: url(../../img/top/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_logo_txt{
  font-size: 12px; font-size: 1.2rem;
  letter-spacing: 0.01em;
}

.header_logo{
  color: #fff;
  padding: 10px 0 12px 6px;
  text-align: left;
  /* 上 */
  text-shadow: 2px 2px 0 #d92140,
  -2px 2px 0 #d92140,
  2px -2px 0 #d92140,
  -2px -2px 0 #d92140;
  /* 下 */
  text-shadow: 2px 2px 1px #d92140,
  -2px 2px 1px #d92140,
  2px -2px 1px #d92140,
  -2px -2px 1px #d92140;
}

.header_logo .logo_txt_01{
  font-size: 26px; font-size: 2.6rem;
  background:url(../../img/common/logo_header.svg) no-repeat 2.6vw center;
  background-size: 94px 72px;
  padding: 20px 0 20px 0;
  letter-spacing: 0.03em;
  margin-top: -24px;
}


@media (min-width: 360px){

  .header_wrap{
    background-position: -30vw top;
    height: 300px;
  }

  .header_logo{
    padding: 14px 0 12px 15px;
  }

  .header_logo .logo_txt_01{
    font-size: 28px; font-size: 2.8rem;
    background-position: 3vw center;
    background-size: 94px 72px;
  }
}

@media (min-width: 375px){

  .header_wrap{
    background-position: -29vw top;
    background-size: cover;
  }

  .header_logo .logo_txt_01{
    background-position: 3vw center;
    background-size: 94px 72px;
  }
}

@media (min-width: 410px){

  .header_wrap{
    background-position: -26vw top;
    background-size: cover;
  }

  .header_logo .logo_txt_01{
    background-position: 3vw center;
    background-size: 94px 72px;
  }
}

.header_logo .logo_txt_02{
  font-size: 24px; font-size: 2.4rem;
  vertical-align: -4%;
}

.header_h1, .header_h2{
  color: #000;
  padding: 0;
  text-align: left;
  /* 上 */
  text-shadow:
  #fff 2px 0px 2px, #fff -2px 0px 2px,
  #fff 0px -2px 2px, #fff -2px 0px 2px,
  #fff 2px 2px 2px, #fff -2px 2px 2px,
  #fff 2px -2px 2px, #fff -2px -2px 2px,
  #fff 1px 1px 2px, #fff -1px 1px 2px,
  #fff 1px -1px 2px, #fff -1px -1px 2px;
}

.header_h1{
  font-size: 12px; font-size: 1.2rem;
  padding-top: 100px;
}

.header_h2{
  font-size: 14px; font-size: 1.4rem;
  line-height: 1.2;
  color: #d92140;
  padding-top: 8px;
}

@media (min-width: 768px){

  .header_wrap{
    width: 100%;
    height: 420px;
    background: url(../../img/top/main02.jpg) no-repeat center top;
    background-size: cover;
  }

  .header_logo_txt {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.01em;
  }

  .header_logo a {
    overflow: hidden;
    text-indent: 100%;
    width: 40%;
    white-space: nowrap;
    display: block;
  }

  .header_logo .logo_txt_01{
    background: none;
  }

  .header_logo_txt{
    padding-top: 30px;
  }

  .header_h1{
    padding-top: 220px;
  }

  #gnav .gnav_ul{
    text-align: center;
    margin: 30px auto 40px;
  }

  #gnav a{
    color: #000;
  }

  #gnav li{
    float: left;
    font-size: 14px; font-size: 1.4rem;
    margin: 0 0 20px 22px;
    padding-bottom: 2px;
    border-bottom: 3px solid #d92140;
    font-weight: 600;
  }

  #gnav li:first-child{
    margin-left: 0px;
  }

}

@media (min-width: 992px){

  .header_wrap{
    height: 460px;
  }

  .header_h1{
    padding-top: 260px;
  }


  #gnav li{
    font-size: 16px; font-size: 1.6rem;
  }

}

@media (min-width: 1200px){

  .header_wrap{
    height: 520px;
  }


  .header_h1{
    padding-top: 320px;
  }

}

.course_wrap{
  margin-bottom: 50px;
}

.course_li {
  overflow: hidden;
  max-width: 240px;
  padding: 0 0 15px 0;
}

.course_li .course_div1{
  border: 1px solid #e0e0e0;
  padding: 2px;
  position: relative;
  text-align: center;
}

.course_li .course_div1:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-right: 5px solid #d92140;
  border-bottom: 5px solid #d92140;
  border-left: 5px solid transparent;
  position: absolute;
  right: 4px;
  bottom: 4px;
}

.course_li  .course_i01{
  display: block;
  background-color: #d92140;
  color: #fff;
  font-size: 12px; font-size: 1.2rem;
  text-align: center;
  height: 22px;
  line-height: 22px;
  margin-bottom: 3px;
}

.course_li .course_img{
  padding-bottom: 8px;
}

.course_li .course_p{
  font-size: 16px; font-size: 1.6rem;
  font-weight: 600;
  color: #000;
}

.course_li .course_i02{
  font-size: 12px; font-size: 1.2rem;
  color: #eb899a;
  padding-bottom: 12px;
  display: block;
}

.epdtl_inner{
  padding: 0;
}

.epdtl_btn{
  font-size: 15px; font-size: 1.5rem;
  border-radius: 25px;
  color: #fff;
  padding: 11px 0px 11px 30px;
  margin-bottom: 14px;
  background: #d92140;
  border-color: none;
  max-width: 100%;
  display: block;
  position: relative;
  font-weight: 600;
}

.epdtl_btn .epdtl_btn_inner{
  top: -5%;
  left: 0;
  width: 50px;
  height: 50px;
  margin: auto;
  background: #fef340;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  overflow: hidden;
  position: absolute;
  text-align: center;
}

.epdtl_btn .epdtl_btn_i{
  font-size: 13px; font-size: 1.3rem;
  position: absolute;
  top: 6.5px;
  left: 6.5px;
  width: 50px;
  height: 50px;
  line-height: 18px;
  color: #000;
  background: transparent;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.epdtl_btn .glyphicon{
  font-size: 12px; font-size: 1.2rem;
  top: 0;
  right: 20px;
  top: 50%;
  position: absolute;
  margin-top: -5px;
}

.epdtl_btn:hover{
  color: #fff;
}

.trump-inherit{
  background: rgba(244,159,25,1);
}

@media (max-width: 359px){
  .epdtl_btn{
    font-size: 14px; font-size: 1.4rem;
    padding: 11px 0 11px 20px;
  }
  .epdtl_btn .epdtl_btn_i{
    font-size: 12px; font-size: 1.2rem;
    width: 44px;
    height: 44px;
  }
  .epdtl_btn .glyphicon{
    font-size: 11px; font-size: 1.1rem;
  }

  .epdtl_btn .epdtl_btn_inner{
    left: -4%;
  }
}

@media (max-width: 767px){

  .trump-inherit{
    margin-top: 24px;
  }

}


.anxiety_wrap{
  padding: 20px 0 30px;
  overflow: hidden;
}

@media (min-width: 768px){

  .anxiety_wrap{
    padding: 60px 0 10px;
  }

}

.anxiety_wrap .anxiety_ul{
  overflow: hidden;
}

.anxiety_h4{
  font-size: 16px; font-size: 1.6rem;
  padding-bottom: 20px;
  text-align: center;
  font-family: Noto Serif,Times New Roman,游明朝,YuMincho,ヒラギノ明朝 ProN W3,Hiragino Mincho ProN,HG明朝E,メイリオ,Meiryo,serif;
  font-weight: 600;
}

.anxiety_h4_span{
  color: #d92140;
}

.anxiety_li {
  float: left;
  padding: 0 0 16px;
  max-width: 240px; /* 最大幅 */
}

.anxiety_li .anxiety_con{
  position: relative;
  margin: 0 auto;
}

.anxiety_li .anxiety_con .anxiety_i{
  position: absolute;
  display: block;
  margin: 66% 0 0 72%;
  padding: 14px;
  border-radius: 50%;
  background-color: #d92140;
  color: #fff;
  font-size: 10px; font-size: 1.0rem;
}

.anxiety_li .anxiety_p{
  color: #d92140;
  text-align: center;
  font-size: 15px; font-size: 1.5rem;
  padding-top: 10px;
  font-weight: 600;
}

.anxiety_btn{
  overflow: hidden;
  margin: 0 0 20px 0;
}

.test_btn{
  padding-top: 20px;
}

.reason_wrap{
  margin-bottom: 60px;
}

.reason_row{
  margin-bottom: 50px;
}

.message{
  padding-top: 50px;
  padding-bottom: 50px;
  background: #f8fbf5 url(../../img/top/bg_img01.jpg) repeat-y 30% top;
  background-size: cover;
}

.trump-inherit01{
  background: #f8fbf5 url(../../img/top/bg_img03.jpg) repeat-y 30% top;
  background-size: cover;
}

.inherit01_wrap{
  height: 100%;
  background: rgba(255,255,255,0.01);
}

@media (min-width: 768px){

  .tab_img01,
  .tab_txt02 {
    display: table-cell;
    vertical-align: middle;
    float: none;
    width: 40%;
    padding-right: 15px;
  }

  .tab_img02 {
    width: 40%;
  }

  .trump-inherit01 .tab_img01{
    padding: 0 0 0 15px;
  }

  .tab_txt01,
  .tab_img02 {
    display: table-cell;
    vertical-align: middle;
    float: none;
    width: 60%;
    padding-left: 15px;
  }

  .trump-inherit01 .tab_txt01{
    padding: 0 15px 0 0;
  }

  .tab_txt02{
    width: 60%;
  }

  .anxiety_li .anxiety_con .anxiety_i{
    padding: 16px;
    font-size: 14px; font-size: 1.4rem;
    margin: 66% 0 0 78%;
  }

  .anxiety_btn{
    overflow: hidden;
    margin: 0 0 40px 0;
  }

  .reason_row{
    margin-bottom: 0;
  }

  .message{
    background: #f8fbf5 url(../../img/top/bg_img02.jpg) no-repeat left center;
    background-size: cover;
  }

  .trump-inherit01{
    background: #f8fbf5 url(../../img/top/bg_img03.jpg) repeat-y left 10%;
    background-size: cover;
  }


}

@media (min-width: 992px){

  .tab_img01,.tab_img02
  .tab_txt01,.tab_txt02 {
    width: 50%;
  }

}

.cupid_inner{
  width: 100%;
  padding: 0 0 5vw;
  overflow: hidden;
  background: #fffdf4 url(../../img/common/cupid_bg01.jpg) no-repeat center top 16vw/contain;
}

.cupid_inner_ul{
  padding: 6vw 4vw 2vw;
}

.cupid_inner_li_txt01{
  padding-bottom: 3vw;
}

.cupid_inner_li_txt02{
  padding-bottom: 20vw;
}

.cupid_inner_txt{
  padding-top: 21vw;
}

.contact-mail{
  margin-bottom: 35vw;
  padding: 55vw 0 0;
  background: url(../../img/top/img03.jpg) no-repeat center 70%/cover;
  position: relative;
  z-index: 0;
}

.contact-mail_inner{
  margin: 0 auto;
  position: relative;
  text-align: center;
}

.contact-mail_inner_a{
  margin: -26vw 0 0;
  padding: 8vw 4vw 4vw;
  background: rgba(255,255,255,.9);
}

.contact-mail_inner_a::before, .contact-mail_inner_a::after {
  top: -6px;
  right: -6px;
  border: 1px solid #f4d2d8;
}

.contact-mail_inner_a::before, .contact-mail_inner_a::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
}

.contact-mail_inner_a::before {
  z-index: -1;
}

.contact-mail_inner_a::after {
  top: 6px;
  right: 6px;
}

.contact-mail_inner_i .img-responsive{
  width: 34px;
  margin: 0 auto;
  padding-bottom: 4vw;
}

.contact-mail_span{
  font-size: 17px; font-size: 1.7rem;
  color: #000;
  letter-spacing: .04em;
}

.contact-mail_em{
  color: #c71f3b;
  font-style: normal;
  padding: 0 4px;
}

.contact-mail_txt{
  color: #000;
  font-size: 17px; font-size: 1.7rem;
}

.contact-mail_txt .glyphicon {
  font-size: 12px; font-size: 1.2rem;
  margin-left: 6px;
  color: #c71f3b;
  vertical-align: 1px;
}

@media (max-width: 359px){

  .contact-mail{
    margin-bottom: 40vw;
  }
  .contact-mail_txt, .contact-mail_span{
    font-size: 15px; font-size: 1.5rem;
  }
}


@media (min-width: 768px){

  .cupid_inner,
  .contact-mail{
    width: 340px;
    padding: 20px 0 20px 0;
    display: block;
    float: left;
  }

  .cupid_inner{
    background: #fffdf4 url(../../img/common/cupid_bg01.jpg) no-repeat center bottom;
    background-size: contain;
    padding-bottom: 20px;
    margin: 30px 15px 80px 0;
  }

  .contact-mail{
    padding-bottom: 30px;
    margin: 30px 0 30px 15px;
  }

  .cupid_inner_ul{
    padding: 0 0 170px;
  }

  .cupid_inner_li_txt01{
    padding-bottom: 14px;
  }

  .cupid_inner_li_txt02{
    padding-bottom: 0px;
  }

  .cupid_inner_txt{
    padding-top: 0px;
  }

  .contact-mail{
    margin-bottom: 0;
    padding: 30px 0 0;
    background: url(../../img/top/img03.jpg) no-repeat center 70%;
    background-size: contain;
    position: relative;
    z-index: 0;
  }

}

.page_top{
  background: url(../../img/common/page-top.svg) no-repeat;
  top: -48px;
  margin-left: -54px;
  left: 50%;
  position: absolute;
  width: 108px;
  display: block;
  text-align: center;

}

.page_top .glyphicon{
  height: 50px;
  padding-top: 12px;
}

.page_top .glyphicon::before {
  display: block;
  padding-bottom: 4px;
  font-size: 10px; font-size: 1.0rem;
}

.age_top_txt{
  font-size: 10px; font-size: 1.0rem;
}

.btn01 .btn01_a,
.btn02 .btn02_a,
.btn03 .btn03_a,
.btn04 .btn04_a,
.cupid_btn .cupid_btn_a,
.footer_contact01_btn01 .footer_contact01_btn01_a{
  border: #d92140 1px solid;
  background-color: transparent;
  color: #d92140;
  padding: 11px 0;
  border-radius: 25px;
  max-width: 100%;
  display: block;
  font-size: 15px; font-size: 1.5rem;
  position: relative;
  font-weight: 600;
}

.btn04 .btn04_a{
  color: #fff;
  background-color: #d92140;
}

.cupid_btn .cupid_btn_a{
  background-color: rgba(0,0,0,0.85);
  border: none;
  color: #efd38b;
}
.footer_contact01_btn01 .footer_contact01_btn01_a{
  margin-top: 14px;
  background-color: #fff;
  text-align: center;
}

.btn01 .glyphicon,
.btn02 .glyphicon,
.btn03 .glyphicon,
.btn04 .glyphicon,
.cupid_btn .cupid_btn_a .glyphicon,
.footer_contact01_btn01_a .glyphicon{
  font-size: 12px;
  font-size: 1.2rem;
  top: 0;
  right: 20px;
  top: 50%;
  position: absolute;
  margin-top: -6px;
}

.btn04 .glyphicon{
  color: #fff;
}

.cupid_btn .cupid_btn_a .glyphicon{
  color: #efd38b;
}

.footer_wrap{
  background: #d92140;
  text-align: left;
  position: relative;
}

.footer_li{
  line-height: 1.2;
  border-top: #ed95a4 1px solid;
}

.footer_li:first-child {
  border: none;
}

.footer_li a{
  display: block;
  padding: 18px 0px 18px 0px;
}

.footer_li a .glyphicon{
  position: absolute;
  top: 50%;
  width: 8px;
  margin-right: auto;
  right: 20px;
  margin-top: -7px;
}

.footer_inner{
  background:url(../../img/common/footer_ico1.svg) #bf1b37 repeat-x left bottom;
  overflow: hidden;
  background-size: 40px 8px;
  padding-bottom: 30px;
  text-align: left;
}

.footer_logo{
  color: #fff;
  text-align: center;
  padding: 20px 0 20px 0;
}

.footer_logo .logo_txt_01{
  font-size: 30px; font-size: 3.0rem;
  background:url(../../img/common/logo_footer.svg) no-repeat;
  background-position: center 10px;
  background-size: 62px 48px;
  padding: 4px 0 10px;
  letter-spacing: 0.03em;
}

.footer_logo .logo_txt_02{
  font-size: 24px; font-size: 2.4rem;
  vertical-align: -4%;
}

.footer_logo_p{
  font-size: 12px; font-size: 1.2rem;
  margin-top: -16px;
  letter-spacing: 0.01em;
}

.footer_info{
  color: #fff;
  background: #bf1b37;
}

.footer_info .footer_info_address{
  padding-bottom: 10px;
}

.footer_info .footer_info_address01{
  display: inline-block;
}

.footer_info .footer_info_address01 span{
  display: block;
}

.footer_info .footer_info_address02{
  padding-left: 15px;
  display: inline-block;
}

.footer_info .footer_info_address02::after{
  content: "";
  display: inline-block;
  margin: 0 0 0 5px;
  width: 15px;
  height: 12px;
  background: url(../../img/common/footer_ico2.svg) no-repeat;
  background-size: 100% auto
}

.footer_tel {
  display: inline-block;
}

.footer_tel .footer_span_tel01,
.footer_tel .footer_span_moblie01{
  font-size: 16px; font-size: 1.6rem;
  letter-spacing: 0.1em;
}

.footer_tel_p02{
  display: block;
  margin-top: -3px;
}

.footer_tel .footer_span_moblie01{
  font-size: 12px; font-size: 1.2rem;
  letter-spacing: 0.04em;

}

.footer_tel .footer_span_tel02{
  font-size: 22px; font-size: 2.2rem;
  letter-spacing: 0.08em;
}

.footer_tel .footer_open, .footer_contact{
  display: block;
  margin-top: -2px;
  font-size: 13px; font-size: 1.3rem;
}

.footer_contact01{
  margin-top: 12px;
  line-height: 1.4;
}

.footer_contact01 .footer_contact01_tel,
.footer_contact01 .footer_contact01_c-mail,
.footer_contact01_mail01 .footer_contact01_mail02{
  font-size: 17px; font-size: 1.7rem;
  letter-spacing: 0.05em;
  padding: 0 4px;
  color: #fef340;
}

.footer_contact01_mail01{
  margin-top: 14px;
}

.footer_contact01_mail01 .footer_contact01_mail02{
  line-height: 1.2;
}

.footer_copyright{
  text-align: center;
  font-size: 12px; font-size: 1.2rem;
  padding: 12px 0 86px;
  background: #bf1b37;
  color: #f8aebb;
}

@media (min-width: 768px){

  .footer_inner{
    padding-bottom: 40px;
  }

  .footer_inner, .footer_info{
    background: #d92140;
  }

  .footer_copyright{
    background: url(../../img/common/footer_ico1.svg) #bf1b37 repeat-x left top;
    overflow: hidden;
    background-size: 40px 8px;
    padding: 20px 0 30px;
    text-align: center;
  }

  .contact-mail{
    background: url(../../img/top/img03.jpg) no-repeat center 0%;
    background-size: contain;
    padding: 110px 0 0;
  }

  .contact-mail_inner_i .img-responsive{
    padding-bottom: 30px;
  }

  .contact-mail_inner_a{
    margin: 20px 0 0 20px;
    padding: 30px 15px 20px;
    background: rgba(255,255,255,.9);
  }

  .contact-mail_span,
  .contact-mail_txt{
    font-size: 16px; font-size: 1.6rem;
  }

  .fotter_tab_01,.fotter_tab_02,.fotter_tab_03 {
    display: table-cell;
    width: 250px;
  }

  .footer_logo{
    text-align: center;
    padding: 20px 15px;
  }

  .footer_logo .logo_txt_01{
    background-position: 25px 10px;
    display: table-cell;
  }

  .pc_footer ul{
    border-left: 1px solid #f4d2d8;
    float: left;
    margin: 10px 0 0 40px;
    padding: 0 0 20px 60px;
  }

  .pc_footer ul li:first-child a{
    padding: 0;
  }

  .footer_li01{
    border-top: none;
  }

  .footer_li01 a{
    display:inline-block;
    padding: 14px 0px 0;
  }

  .footer_li02{
    padding-left: 30px;
    margin-top: 10px;
  }

  .footer_li02 a{
    padding-left: 10px;
  }

  .footer_li02 a::before{
    content: "-";
    margin-left: -10px;
    width: 10px;
    display: inline-block;
  }

  .li_bt{
    margin-bottom: 10px;
  }

}


/*sp　共通余白*/

@media (max-width: 767px){

  .col-xs-offset-0_5{
    margin-left: 4.166666667%;
  }
  .xs_pad0{
    padding: 0 ;
  }

  .xs_pt10{
    padding-top: 10px;
  }

  .xs_pt20{
    padding-top: 20px;
  }

  .xs_pt30{
    padding-top: 30px;
  }

  .xs_pt40{
    padding-top: 40px;
  }

  .xs_pt50{
    padding-top: 50px;
  }

  .xs_pb10{
    padding-bottom: 10px;
  }

  .xs_pb20{
    padding-bottom: 20px;
  }

  .xs_pb30{
    padding-bottom: 30px;
  }

  .xs_pb40{
    padding-bottom: 40px;
  }

  .xs_mt10{
    margin-top: 10px;
  }

  .xs_mt20{
    margin-top: 20px;
  }

  .xs_mt30{
    margin-top: 30px;
  }

  .xs_mt40{
    margin-top: 40px;
  }

  .xs_mt50{
    margin-top: 50px;
  }

  .xs_mb10{
    margin-bottom: 10px;
  }

  .xs_mb20{
    margin-bottom: 20px;
  }

  .xs_mb30{
    margin-bottom: 30px;
  }

  .xs_mb40{
    margin-bottom: 40px;
  }

  .xs_mb50{
    margin-bottom: 50px;
  }

}

@media (max-width: 991px){

  .col-sm-0_5{
    margin-left: 4.166666667%;
  }
  .sm_pad0{
    padding: 0 ;
  }

  .sm_pb10{
    padding-bottom: 10px;
  }

  .sm_pb20{
    padding-bottom: 20px;
  }

  .sm_pb30{
    padding-bottom: 30px;
  }

  .sm_pb40{
    padding-bottom: 40px;
  }

  .sm_pb50{
    padding-bottom: 50px;
  }

  .sm_mb10{
    margin-bottom: 10px;
  }

  .sm_mb20{
    margin-bottom: 20px;
  }

  .sm_mb30{
    margin-bottom: 30px;
  }

  .sm_mb40{
    margin-bottom: 40px;
  }

  .sm_mb50{
    margin-bottom: 50px;
  }

}


/*----------------------------------------------------
access
----------------------------------------------------*/
.header_content{
  width: 100%;
  height: 167px;
}

.header_access{
  background: url(../../img/access/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_thought{
  background: url(../../img/thought/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_course{
  background: url(../../img/course/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_trump{
  background: url(../../img/trump/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_voice{
  background: url(../../img/voice/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_contact{
  background: url(../../img/contact/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_voice-love{
  background: url(../../img/love-voice/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_test-voice{
  background: url(../../img/test-voice/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}

.header_work-voice{
  background: url(../../img/work-voice/main01.jpg) no-repeat -34vw top;
  background-size: cover;
}


@media (min-width: 360px){

  .header_content{
    background-position: -30vw top;
    height: 180px;
  }
}

@media (min-width: 375px){

  .header_content{
    background-position: -29vw top;
  }
}

@media (min-width: 410px){

  .header_content{
    background-position: -26vw top;
  }
}


@media (min-width: 768px){

  .header_content,
  .header_content .header_inner{
    height: 240px;
  }

  .header_content .header_inner{
    background: url(../../img/common/logo.png) no-repeat left top;
    background-size: cover;
  }

  .header_content .header_logo a{
    padding-bottom: 30px;
  }

  .header_content .header_h1{
    margin-top: -10px;
  }

  .header_access{
    background: url(../../img/access/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_thought{
    background: url(../../img/thought/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_course{
    background: url(../../img/course/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_trump{
    background: url(../../img/trump/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_voice{
    background: url(../../img/voice/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_contact{
    background: url(../../img/contact/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_voice-love{
    background: url(../../img/love-voice/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_test-voice{
    background: url(../../img/test-voice/main02.jpg) no-repeat left top;
    background-size: cover;
  }

  .header_work-voice{
    background: url(../../img/work-voice/main02.jpg) no-repeat left top;
    background-size: cover;
  }


}

@media (min-width: 992px){

  .header_content,
  .header_content .header_inner{
    height: 280px;
  }

  .header_content .header_logo a{
    padding-bottom: 60px;
  }

  .header_content .header_h1{
    margin-top: 0;
  }

}


@media (min-width: 1200px){

  .header_content,
  .header_content .header_inner{
    height: 300px;
  }

  .header_content .header_logo a{
    padding-bottom: 80px;
  }

  .header_content .header_h1{
    margin-top: 0;
  }

}

.header_content .header_h1{
  font-size: 22px; font-size: 2.2rem;
  padding: 12px 0 0 0;
  text-align: right;
}

.header_content .header_h2{
  padding: 8px 0 0 0;
  text-align: right;
}

@media (max-width: 767px){

  .header_inner{
    padding: 0;
  }

  .header_content .header_h1,
  .header_content .header_h2{
    padding-right: 15px;
  }

}

.bread{
  background-color: #fdf3f5;
  overflow: hidden;
  margin-bottom: 20px;
}

.breadcrumb {
  background-color: #fdf3f5;
  padding: 8px 15px 8px 15px;
  margin-bottom: 0px;
  text-align: left;
  font-size: 13px; font-size: 1.3rem;
}

.breadcrumb a {
  color: #d92140;
}

.breadcrumb>.active{
  color: #000;
}

.breadcrumb>li+li:before {
  color: #f4d2d8;
}

.access_map_address span{
  margin-right: 20px;
}

.access_map_inner iframe{
  width: 100%;
  height: 30vh;
}

.access_tit {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  font-size: 15px; font-size: 1.5rem;
  line-height: 1.3;
  font-weight: normal;
  margin: 0 0 8px;
}

.access_tit span{
  display: block;
}

.access_tit span span{
  display: block;
}


.access_no{
  font-size: 16px; font-size: 1.6rem;
  text-align: center;
  display: block;
  background: rgba(217,33,64,0.18);
  border-radius: 50%;
  color: #d92140;
}

.access_no {
  width: 40px;
  height: 40px;
  padding: 12px 12px;
  margin: 0 12px 0 0;
  font-style: normal;
}

.access_con{
  margin: 0 0 14px 40px;
  display: block;
  position: relative;
  padding-bottom: 14px;
}

.access_con::before{
  content: '';
  position: absolute;
  top: 6px;
  left: -20px;
  width: 1px;
  background: rgba(217,33,64,0.18);
  height: 100%;
}

.access_img{
  text-align: center;
  margin: 0 0 20px;
}

.access_li:last-child {
  margin: 0;
}

.access_li:last-child .access_con:before {
  display: none;
}

.access_img .col-xs-11_5{
  width: 95%;
  position: relative;
  min-height: 1px;
  float: left;
  padding: 0;
}

.access_txt{
  text-align: left;
}

.access_txt span{
  display: block;
}

@media (min-width: 768px){

  .access_map_address{
    margin-bottom: 24px;
  }

  .access_flow{
    margin-top: 60px;
  }

  .access_tit span span{
    display: inline-block;
  }

  .access_con{
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
  }

  .access_img .col-xs-11_5{
    width: 100%;
    padding-right: 15px;
  }

  .con_img01_sp{
    align-items: center;
    -webkit-align-items: center;
  }

  .access_img {
    width: 50%;
    position: static;
    float: left;
    overflow: hidden;
    margin: 0;
  }

  .row_mp0{
    margin: 0;
    padding: 0;
  }

  .access_txt{
    width: 50%;
    padding-left: 15px;
  }

  .access_ul{
    margin-bottom: 30px;
  }

}

@media (min-width: 992px){

  .access_map_address{
    margin-bottom: 24px;
  }

  .access_img .col-xs-11_5{
    padding-left: 14px;
  }

}

.con_tit_inner01{
  margin: 20px 0 30px;
}

.con_tit01{
  margin-bottom: 30px;
}

.con_tit-dot01 {
  position: relative;
  padding: 56px 0 0;
  margin-top: -56px;
  margin-bottom: 20px;
  color: #d92140;
}

.con_tit-dot01::before {
  content: '';
  position: absolute;
  top: 56px;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: -moz-linear-gradient(left, #d92140, #d92140 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 100%);
  background-image: -o-linear-gradient(left, #d92140, #d92140 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 100%);
  background-image: -webkit-linear-gradient(left, #d92140, #d92140 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 100%);
  background-image: linear-gradient(to right, #d92140, #d92140 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 100%);
  background-size: 4px 4px;
  width: 100%;
  height: 1px;
  z-index: -1;
}

.con_tit-dot01 span {
  font-size: 18px; font-size: 1.8rem;
  padding: 0 20px;
  background: #fff;
  line-height: 1.5em;
}

.walk_txt01{
  padding: 20px 0 0;
}

.walk_txt_pt{
  padding-top: 0px;
}

.walk_h5{
  font-size: 15px; font-size: 1.5rem;
  color: #d92140;
  padding-bottom: 6px;
  font-weight: 400;
}

.reco_inner{
  margin-bottom: 40px;
}

.reco_ul{
  margin: 0 auto;
  background: #fdf3f5;
  padding: 24px;
  position: relative;
}

.reco_ul::before {
  content: '';
  display: block;
  position: absolute;
  top: 6px;
  left: 6px;
  width: 100%;
  height: 100%;
  border: 1px solid #f4d2d8;
}

#tab2 .reco_ul::before {
  border: 1px solid #c7e2aa;
}

#tab3 .reco_ul::before {
  border: 1px solid #efd0a3;
}

.reco_ul::after{
  display: block;
  overflow: hidden;
}

.reco_li {
  border-bottom: 1px solid #f4d2d8;
  padding: 6px 0 10px 24px;
  text-indent: 2px;
  float: none;
  text-align: left;
  font-size: 15px; font-size: 1.5rem;
}

#tab2 .reco_li {
  border-bottom: 1px solid #c7e2aa;
}

#tab3 .reco_li {
  border-bottom: 1px solid #efd0a3;
}

.reco_li::after  {
  display: block;
  content: '';
  position: absolute;
  top: .8em;
  left: 4px;
  width: 10px;
  height: 10px;
  background-color: #d92140;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#tab2 .reco_li::after  {
  background-color: #60a304;
}

#tab3 .reco_li::after  {
  background-color: #f49f19;
}

#tab2 .reco_ul{
  background: #f1f9e8;
}

#tab3 .reco_ul{
  background: #fff5e6;
}

#tab2 .anxiety_h4_span{
  color: #60a304;
}

#tab3 .anxiety_h4_span{
  color: #f49f19;
}

.thought_none{
  overflow: hidden;
  margin-bottom: 50px;
}

.thought_note + .thought_note{
  background:#fff;
  margin-top: 3rem;
}

.thought_wrap{
  margin-bottom: 50px;
}

.thought_note_inner01,
.thought_note_inner02 {
  font-size: 15px; font-size: 1.5rem;
  padding-top: 3.2rem;
  padding-left: 0;
  background: linear-gradient(#eee .1em, rgba(0,0,0,0) .1em);
  background-size: auto 3rem;
  line-height: 3rem;
  text-align: left;
  position: relative;
}

.thought_note_txt01{
  padding-bottom: 3rem;
}

.bg-lighter{
  font-weight: normal;
  background: linear-gradient(rgba(0,0,0,0) 50%, #fee5e9 50%);
  background: -webkit-linear-gradient(rgba(0,0,0,0) 50%, #fee5e9 50%);
}

.thought_note_txt02{
  text-align: right;
  font-weight: 600;
}

.thought_note_txt03{
  padding-bottom: 2.7rem;
}


.thought_note_img01{
  margin-bottom: 0;
}

.thought_note .h4_tit01{
  line-height: 3rem;
  padding-bottom: 3rem;
  color: #d92140;
}

@media (min-width: 768px){

  .reco_inner{
    margin-bottom: 60px;
  }

  .thought_note_inner01 {
    padding-top: 3.2rem;
    border-left: 15px solid #fff;
    border-bottom: 3.2rem solid #fff;
  }

  .note_next .thought_note_inner01{
    width: 50%;
    border-right:15px solid #fff;
    border-left: none;
  }

  .note_next .tab_img01{
    padding: 0 0 0 15px;
  }

  .thought_note_txt03{
    padding-bottom: 3rem;
  }

  .thought_note .note_inner_txt01 {
    padding-top: 3rem;
  }


}

@media (min-width: 992px){

  .thought_note_inner01 {
    padding-top: 0.6rem;
  }

  .thought_note_inner02{
    margin-top: 30px;
  }

  .thought_note .note_inner_txt02 {
    padding-top: 0.2rem;
  }

  .thought_note .note_inner_txt03 {
    padding-top: 3.2rem;
  }

}

@media (min-width: 1200px){

  .thought_note .note_inner_txt01 {
    padding-top: 0.6rem;
  }

  .thought_note .note_inner_txt02 {
    padding-top: 3.4rem;
  }

}

.price01_table{
  width: 100%;
}

.price01_th{
  background: #fdf3f5;
  text-align: center;
  border-top: #f4d2d8 solid 1px;
  border-right: #f4d2d8 solid 1px;
  border-bottom: #f4d2d8 solid 1px;
  width: 50%;
  padding: 6px 8px;
}

.price01_th:first-child{
  border-left: #f4d2d8 solid 1px;
}


.price02_th{
  color: #d92140;
  vertical-align: middle;
  border-bottom: #f4d2d8 solid 1px;
  border-right: #f4d2d8 solid 1px;
  border-left: #f4d2d8 solid 1px;
  padding: 6px 8px;
  width: 50%;
  text-align: center;
}

.price02_td{
  text-align: center;
  border-bottom: #f4d2d8 solid 1px;
  border-right: #f4d2d8 solid 1px;
  vertical-align: middle;
  padding: 6px 8px;
}

.qa01_inner .qa01_dl{
  margin: 0 auto;
  padding: 0;
  position: relative;
}

.qa01_dt,
.qa01_dd{
  border-bottom: 1px solid #f4d2d8;
  padding: 14px 0 12px 4px;
  text-indent: 2px;
  text-align: left;
  font-size: 15px; font-size: 1.5rem;
  position: relative;
  background-color: #fdf3f5;
  line-height: 1.5;
}

#tab2 .qa01_dt,
#tab2 .qa01_dd{
  background-color: #f1f9e8;
  border-bottom: 1px solid #c7e2aa;
}

#tab3 .qa01_dt,
#tab3 .qa01_dd{
  background-color: #fff5e6;
  border-bottom: 1px solid #efd0a3;
}


.qa01_dd{
  background-color: #fff !important;
  border-bottom: 1px solid #f4d2d8;
}

.qa01_dt::before,
.qa01_dd::before{
  display: block;
  content: '';
  position: absolute;
  top: 12px;
  left: 4%;
  width: 24px;
  height: 24px;
  background-color: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.qa01_dd::before{
  background-color: #d92140;
  top: 16px;
}

#tab2 .qa01_dd::before{
  background-color: #60a304;
}

#tab3 .qa01_dd::before{
  background-color: #f49f19;
}

.qa01_dt::after{
  content: "+";
  width: 20px;
  height: 20px;
  background: #d92140;
  text-align: center;
  line-height: 18px;
  padding-right: 2px;
  color: #fff;
  font-weight: bold;
  font-size: 16px; font-size: 1.6rem;
  position: absolute;
  right: 15px;
  top: 15px;
  transition: all 0.5s ease;
  backface-visibility: hidden;
}

#tab2 .qa01_dt::after{
  background: #60a304;
}

#tab3 .qa01_dt::after{
  background: #f49f19;
}

.qa01_dt.switch-open:after {
  content: "−";
  opacity: 1;
}

.qa01_i{
  font-size: 24px; font-size: 2.4rem;
  position: absolute;
  color: #d92140;
  top: 6px;
  left: 4%;
}

#tab2 .qa01_i{
  color: #60a304;
}

#tab3 .qa01_i{
  color: #f49f19;
}

.qa01_dd .qa01_i{
  color: #fff !important;
  top: 10px;
}

.qa01_txt{
  color: #d92140;
  padding-left: 46px;
}

@media (min-width: 768px){

  .qa01_txt{
    color: #d92140;
    padding-left: 86px;
  }

}


#tab2 .qa01_txt{
  color: #60a304;
}

#tab3 .qa01_txt{
  color: #f49f19;
}

.qa01_dd .qa01_txt{
  color: #000 !important;
}

.contact_telbtn{
  border-top: 1px solid #d92140;
  border-bottom: 1px solid #d92140;
  padding: 30px 0;
  margin: 50px 15px 60px;
  text-align: center;
}

.contact_telbtn_li{
  text-align: center;
}

.contact_telbtn_li a{
  color: #d92140;
}

.contact_telbtn_st01,
.contact_telbtn_st02{
  font-size: 24px; font-size: 2.4rem;
  color: #d92140;
  display: inline-block;
  margin-left: 6vw;
  vertical-align: -3px;
}

.contact_telbtn_st02{
  font-size: 22px; font-size: 2.2rem;
}


@media (max-width: 359px){

  .contact_telbtn_st01,
  .contact_telbtn_st02{
    font-size: 22px; font-size: 2.2rem;
    color: #d92140;
    display: inline-block;
    margin-left: 4vw;
    vertical-align: -6px;
  }

  .contact_telbtn_st02{
    font-size: 20px; font-size: 2.0rem;
  }

}

.contact_telbtn_li .glyphicon{
  font-size: 16px; font-size: 1.6rem;
  color: #fff;
  padding: 8px;
  display: inline-block;
  background: #d92140;
}

.contact_telbtn_time{
  display: block;
  text-align: center;
  padding-bottom: 30px;
}


.contact_telbtn_txt01{
  padding-bottom: 16px;
}

.contact_telbtn_txt01 em{
  color: #d92140;
  font-size: 15px; font-size: 1.5rem;
  font-style: normal;
}


@media (min-width: 768px){

  .contact_telbtn_st01, .contact_telbtn_st02{
    margin-left: 20px;
  }

  .contact_telbtn{
    width: 710px;
    margin: 0 auto 50px;
    padding: 30px 20px;
  }

}

@media (min-width: 992px){

  .contact_telbtn{
    width: 930px;
    margin: 0 auto 50px;
    padding: 30px 20px;
  }

}

@media (min-width: 1200px){

  .contact_telbtn{
    width: 1130px;
    margin: 0 auto 50px;
    padding: 30px 20px;
  }

}

/*----------------------------------------------------
voice
----------------------------------------------------*/
.tab_inner {
  position: relative;
  width: 100%;
  height: auto;
  margin: 26px 0 40px 0;
}

.tab_inner #js_tab_btn {
  position: relative;
  width: 100%;
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
}

.tab_inner #js_tab_btn li {
  display: block;
  position: relative;
  background: #fbe8ec;
  width: 33.3333%;
  padding: 5vw 0;
  line-height: 1;
  text-align: center;font-size: 15px; font-size: 1.5rem;
  cursor: pointer;
  border-right: 1px solid #fff;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  color: #000;
}

.tab_inner #js_tab_btn li.tab_icon2 {
  background: #dff3cd;
}

.tab_inner #js_tab_btn li.tab_icon3 {
  background: #fdecd1;
}

.tab_inner #js_tab_btn li.active {
  color: #fff;
}

.tab_inner #js_tab_btn li.tab_icon1.active {
  background: rgba(217,33,64,1);
}

.tab_inner #js_tab_btn li.tab_icon2.active {
  background: rgba(96,163,4,1);
}

.tab_inner #js_tab_btn li.tab_icon3.active {
  background: rgba(244,159,25,1);
}

.tab_inner #tab2,
.tab_inner #tab3 {
  display: none ;
}

.voicepage-btn{
  margin: 10px 0 50px;
  overflow: hidden;
}


@media screen and (max-width: 767px){

  .voice{
    position: relative;
    width: 100%;
    overflow-x: hidden;
  }

  .con_inner{
    position: relative;
    width: 100%;
    margin: 0 auto;
  }

  .tab_inner #js_tabbox .js_tab_li{
    padding-top: 30px;
  }

  .tab_inner #js_tabbox {
    width: 100% ;
    background: #ffffff;
    padding: 0px 15px;
  }

}

@media (min-width: 768px){

  .tab_inner {
    margin: 0;
  }

  #js_tab_libox{
    margin-bottom: 10px;
  }
  .tab_inner #js_tab_btn{
    -webkit-justify-content: center;
    justify-content: center;
    background: rgba(255,255,255,0.8);
  }

  .tab_inner #js_tab_btn li {
    width: 25%;
    padding: 16px 0;
    border-radius: 30px;
    margin: 30px 16px 30px 0;
  }

  .tab_inner #js_tab_btn li.tab_icon1.active {
    background: rgba(217,33,64,1);
  }

}

@media (min-width: 992px){

  .tab_inner #js_tab_btn li {
    width: 25%;
    margin: 30px 30px 30px 0;
  }

}

@media (min-width: 1200px){

  .tab_inner #js_tab_btn li {
    width: 20%;
    margin: 30px 30px 30px 0;
  }

}



/*----------------------------------------------------
voice-love
----------------------------------------------------*/
.voice-detail_wrap{
  padding-bottom: 50px;
}

.voice-love_inner{
  padding: 20px 0 30px;
  border-bottom: dotted 1px #d92140;
  margin-bottom: 30px;
}

.work-voice .voice-love_inner{
  border-bottom: dotted 1px #60a304;
}

.test-voice .voice-love_inner{
  border-bottom: dotted 1px #f49f19;
}

.voice-love_h4 {
  font-size: 16px; font-size: 1.6rem;
  padding-bottom: 22px;
  font-weight: 600;
}

.img_left01,
.img_right01{
  margin: 0 0 10px;
}

.img_left01::before,
.img_right01::before{
  content: '';
  position: absolute;
  top: 8px;
  width: 100%;
  height: 100%;
  border: 1px solid #f4d2d8;
}

.img_left01::before{
  left: 6px;
}

.img_right01::before{
  right: 6px;
}

@media (min-width: 768px){

  .voice-inner-txt01 {
    margin-bottom: 30px;
  }

  .trump_love_advice{
    margin-bottom: 20px;
  }

}

.work-voice .img_left01::before,
.work-voice .img_right01::before{
  border: 1px solid #c7e2aa;
}

.test-voice .img_left01::before,
.test-voice .img_right01::before{
  border: 1px solid #efd0a3;
}

.work-voice .h3_tit01,
.work-voice .anxiety_h4_span {
  color: #60a304;
}

.test-voice .h3_tit01,
.test-voice .anxiety_h4_span {
  color: #f49f19;
}


.work-voice .bg-lighter{
  font-weight: normal;
  background: linear-gradient(rgba(0,0,0,0) 50%, #e5f4d3 50%);
  background: -webkit-linear-gradient(rgba(0,0,0,0) 50%, #e5f4d3 50%);
}

.test-voice .bg-lighter{
  font-weight: normal;
  background: linear-gradient(rgba(0,0,0,0) 50%, #fff0da 50%);
  background: -webkit-linear-gradient(rgba(0,0,0,0) 50%, #fff0da 50%);
}

#voice-detail .btn02 .btn02_a,
#voice-detail .btn03 .btn03_a,
#voice-detail .btn04 .btn04_a {
  background: rgba(96,163,4,1);
  border: none;
  color: #fff;
  font-size: 14px; font-size: 1.4rem;
  padding-right: 10px;
}

#voice-detail .btn03 .btn03_a{
  background: rgba(244,159,25,1);
}

#voice-detail .btn04 .btn04_a{
  background: #d92140;
}

#voice-detail .btn02 .glyphicon,
#voice-detail .btn03 .glyphicon,
#voice-detail .btn04 .glyphicon {
  right: 10px;
  top: 50%;
  margin-top: -5px;
}

.detail_btn01{
  overflow: hidden;
  padding-bottom: 40px;
}

@media (min-width: 768px){

  .detail_btn01{
    overflow: hidden;
    padding-bottom: 50px;
  }


}

/*----------------------------------------------------
trump
----------------------------------------------------*/
#js_tab_libox.fixed {
  position:fixed;
  z-index: 1;
  width: 100%;
  top: 0;
}

.trump_love,
.trump_work,
.trump_test,
.trump_love_quest,
.trump_work_quest,
.trump_test_quest {
  margin-bottom: 20px;
  overflow: hidden;
}

.trump_love_choose,
.trump_work_choose,
.trump_test_choose,
.contact_quest_wrap,
.trump_love_advice,
.trump_work_advice,
.trump_test_advice {
  margin-bottom: 50px;
  overflow: hidden;
}

.trump_test_quest{
  margin-top: 26px;
}

.trump .voice-detail_btn {
  padding: 0 15px;
  margin-bottom: 36px;
  overflow: hidden;
}

.trump_love_advice,
.trump_work_advice,
.trump_test_advice {
  padding-bottom: 0;
}


@media (min-width: 768px){

  .detail_btn01{
    overflow: hidden;
    padding-bottom: 50px;
  }

  .trump_love_advice,
  .trump_work_advice,
  .trump_test_advice {
    margin-bottom: 20px;
    overflow: hidden;
  }

  .trump_love,
  .trump_work,
  .trump_test,
  .trump_love_quest,
  .trump_work_quest,
  .trump_test_quest {
    margin-bottom: 50px;
    overflow: hidden;
  }



}


/*----------------------------------------------------
course
----------------------------------------------------*/
.price01_wrap{
  margin-bottom: 50px;
}

.course_detail .course_box01{
  padding: 25px 0 15px;
  overflow: hidden;
}

.course_detail .course_box01_imgtit{
  display: block;
  margin-bottom: 20px;
  position: relative;
}

.course_box01_imgtit .course_box01_span{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.85);
  display: block;
  overflow: hidden;
}

.course_box01_imgtit .course_box01_txt{
  float: left;
  font-weight: bold;
  padding-left: 10px;
  font-size: 15px; font-size: 1.5rem;
  line-height: 35px;
  color: #000;
}

.course_box01_imgtit .course_box01_i{
  float: right;
  padding-right: 10px;
  color: #d92140;
  font-size: 12px; font-size: 1.2rem;
  line-height: 35px;
  font-style: italic;
}

@media (min-width: 768px){

  .course_detail_wrap{
    margin-top: -35px;
  }

  .course_detail .course_box01_imgtit{
    margin-bottom: 0;
  }

  .course_detail .course_box01{
    padding: 25px 0;
  }

}

/*----------------------------------------------------
contact
----------------------------------------------------*/
#cupid {
  margin-top: 0;
}

#cupid .cupid_inner_li_txt02 {
  padding-bottom: 66vw;
}

#cupid .cupid_inner_txt{
  margin: 0 15px;
  padding-top: 20px;
  overflow: hidden;
  padding-bottom: 80px;
}

#cupid .cupid_txt01{
  margin-bottom: 8px;
  text-align: left;
}

#cupid .cupid_btn{
  padding: 20px 0 0;
}

@media (min-width: 768px){

  #contact_cupid .cupid_inner{
    background: none;
    width: 100%;
    padding: 0;
  }

  #contact_cupid .cupid_inner_ul{
    background: #fffdf4 url(../../img/common/cupid_bg01.jpg) no-repeat center bottom;
    background-size: contain;
    padding: 22px 0 0;
    vertical-align: initial;
  }

  #contact_cupid .cupid_inner_li_txt01 {
    margin-top: -30px;
  }

  #contact_cupid .cupid_inner_txt{
    margin: 0;
    vertical-align: initial;
    padding: 30px 0 30px 30px;
  }

  #cupid .cupid_inner_li_txt02 {
    padding-bottom: 0px;
  }

  #cupid .cupid_txt01{
    margin-bottom: 16px;
    text-align: left;
  }

  #cupid .cupid_btn{
    padding: 20px 0 0;
  }
}

@media (min-width: 992px){

  #contact_cupid .cupid_inner_txt{
    padding: 84px 0 84px 30px;
  }

  #contact_cupid .cupid_inner_ul{
    padding-top: 20px;
  }

  #contact_cupid .cupid_inner_ul img{
    padding: 0 30px 14px;
  }

  #contact_cupid .cupid_inner_li_txt01 {
    margin-top: -80px;
  }

  #contact_cupid .cupid_inner_li_txt02 {
    margin-top: -50px;
  }


  #contact_cupid .tab_img01{
    width: 40%;
  }

  #contact_cupid .tab_txt01{
    width: 60%;
  }

}

@media (min-width: 1200px){


  #contact_cupid .cupid_inner_txt{
    padding: 70px 0 70px 30px;
  }

  #contact_cupid .cupid_inner_ul{
    padding-top: 18px;
  }

  #contact_cupid .cupid_inner_ul img{
    padding: 0 20px 14px;
  }

  #contact_cupid .cupid_inner_li_txt01 {
    margin-top: -70px;
  }

  #contact_cupid .cupid_inner_li_txt02 {
    margin-top: -40px;
  }

  #contact_cupid .tab_img01{
    width: 30%;
  }

  #contact_cupid .tab_txt01{
    width: 70%;
  }

}




/* 打ち消し */
#con_form dl dt,
#con_form dl dd,
#con_form .must,
#con_form label,
#con_form input,
#con_form select,
#con_form .mailform_radio,
.add_arrow .con_btn {
  float: none;
  width: auto;
  border: none;
  text-shadow: none;
  box-shadow: none;
  background: #fff;
  border-radius: 0;
  color: #000;
  margin:0;
  padding: 0;
  font-weight: normal;
  white-space: normal;
  font-size: 13px; font-size: 1.3rem;
}

/*　ラジオボックスデザイン */
#con_form input[type="radio"],
#con_form .customer_div input,
#con_form select,
#con_form textarea {
  margin: 0;
  padding: 0;
  background: #fff;
  border: none;
  border-radius: 0;
  outline: none;
}

#con_form #mailformpro{
  margin-bottom: 30px;
  overflow: hidden;
}

#con_form #mailformpro .sample_label {
  position: relative;
  display: inline-block;
  word-break: break-all;
  margin: -4px 0;
}

#con_form #mailformpro .gender_label {
  margin: -23px 0;
}

#con_form #mailformpro .fast-sample_label {
  position: relative;
  z-index: -1;
  margin-left: -30px;
}

#con_form #mailformpro .sample_label input[type="radio"] + span {
  position: relative;
  padding: 0 20px 0 20px;
  display: block;
  margin: -5px;
}

.sample_label input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.sample_label input[type="radio"] + span::before {
  position: absolute;
  display: inline-block;
  content: '';
  box-sizing: border-box;
  border-radius: 22px;
}

.sample_label input[type="radio"] + span::before {
  z-index: 0;
  top: 1px;
  left: 0;
  background-color: transparent;
  width: 14px;
  height: 14px;
  border: 2px solid #f7cbd3;
}

.sample_label input[type="radio"]:checked + span::before {
  border-width: 4px;
  border-color: #d92140;
}


#con_form dd input[type="text"], #con_form dd input[type="tel"], #con_form dd input[type="email"], #con_form dd textarea {
  width: 100%;
  padding: 7px;
  box-sizing: border-box;
  border: 1px solid #f7cbd3;
}

#con_form .menu_select_mt input[type="text"]{
  padding: 0;
}

#con_form #mailformpro .mailform_dl {
  width: 100%;
  margin-bottom: 16px;
}

#con_form #mailformpro .mailform_dl dt{
  width: auto;
  display: block;
  padding: 10px;
  vertical-align: 2px;
  color: #000;
  font-weight: bold;
  clear: both;
  background: #ffebef;
  margin-bottom: 16px;
  border-top: none;
}

#con_form #mailformpro .mailform_dl dd {
  clear: both;
  padding: 6px 15px;
  line-height: 1.5em;
  color: #000;
  width: 100%;
}

#con_form #mailformpro .mailform_dl dd:last-child{
  margin-bottom: 0;
}

#con_form #mailformpro .mailform_dl dd div + div {
  padding-top: 10px;
}

#con_form #mailformpro .mailform_dl .menu_list_err,
#con_form #mailformpro .mailform_dl .mfp_err{
  padding-top: 10px;
}

#con_form #mailformpro .mailform_dl .mfp_err_mg02{
  padding-top: 0;
}

#con_form #mailformpro .mailform_dl .menu_select_mt{
  margin-top: 0px;
}

#con_form #mailformpro .mailform_dl .must_datatime input,
#con_form #mailformpro .mailform_dl .any_datatime input,
#con_form #mailformpro label select{
  border: 1px solid #f199a8;
  font-size: 13px; font-size: 1.3rem;
  padding: 3px 4px 4px;
  border-radius: 8px;
  height: 26px;
/*background: linear-gradient(#fff, #fff);
background: -moz-linear-gradient(top, #fff, #fff);
background: -webkit-linear-gradient(left, #fff, #fff);*/
}

#con_form #mailformpro .menu_list_select{
  width: 300px;
}

#con_form #mailformpro .mailform_dl .must_datatime input,
#con_form #mailformpro .mailform_dl .any_datatime input {
  padding: 7px;
}

#con_form #mailformpro label{
  display: inline-block;
  padding: 5px;
  margin: 0;
}

#con_form #mailformpro .mailform_st{
  margin: 0 8px;
}

#con_form #mailformpro .must{
  background: #71c64b;
  color: #fff;
}

#con_form #mailformpro .sub_must{
  background: transparent;
  color: #000;
  font-weight: 600;
  padding-bottom: 4px;
  margin-left: 6px;
}

#con_form #mailformpro .mailform_radio{
  margin-right: 5px;
  display: inline-block;
  position: relative;
  top: 2px;
}

#con_form #mailformpro .radio_span{
  margin-left: 4px;
}

#con_form #mailformpro dt.must:before {
  position: relative;
  top: -1px;
  content: "必須";
  background: #d92140;
  color: #fff;
  font-size: 12px; font-size: 1.2rem;
  line-height: 1;
  padding: 4px 6px;
  margin-right: 5px;
  float: right;
}

#con_form #mailformpro dt.any:before {
  position: relative;
  top: -1px;
  content: "任意";
  background: #fff;
  color: #d92140;
  font-size: 12px; font-size: 1.2rem;
  line-height: 1;
  padding: 4px 6px;
  margin-right: 5px;
  float: right;
}

.any_datatime_option .mailform_st{
  margin:0 8px 0 4px;

}

#con_form #mailformpro .mailform_dl .select_time_span{
  margin-left: 4px;
}

#con_form #mailformpro .mailform_dl .select_time_txt {
  display: block;
  margin-top: 14px;
  font-size: 13px; font-size: 1.3rem;
  line-height: 1.8;
}

#con_form #mailformpro .mailform_dl .select_time_txt .select_time_span01,
#cupid .cupid_span{
  font-size: 13px; font-size: 1.3rem;
  padding: 4px 6px;
  margin: 6px 6px 0 0;
  background: #d92140;
  color: #fff;
  font-weight: 600;
  border-radius: 6px;
  line-height: 1.7;
}

#con_form #mailformpro .inter_textarea {
  width: 100% !important;
  height: 140px !important;
}

#con_form #mailformpro .con_btnbox .add_arrow {
  border: #c71f3b 1px solid;
  background-color: #d92140;
  color: #fff;
  padding: 11px 0;
  border-radius: 25px;
  max-width: 100%;
  display: block;
  position: relative;
  margin: 0 15px;
}

#con_form #mailformpro .con_btnbox .add_arrow .glyphicon {
  font-size: 12px; font-size: 1.2rem;
  top: 0;
  right: 20px;
  top: 50%;
  position: absolute;
  margin-top: -6px;
}

#con_form #mailformpro .con_btnbox .add_arrow .con_btn{
  margin-left: 12px;
  background-color: #d92140;
  font-size: 15px; font-size: 1.5rem;
  color: #fff;
}

form#mailformpro {
  padding: 10px 0 30px;
}

.mfp_thanks_mail a{
  color: #d92140;
}

.course01_menu_tit01 .mfp_thanks{
  padding: 0;
}

.course01_menu_tit01 .mfp_thanks_inner{
  margin-top: 20px;
  margin-bottom: 80px;
}

.course01_menu_tit01 .mfp_thanks_inner .cam_ex01{
  margin-bottom: 10px;
}


@media (min-width: 768px){

  #con_form{
    width: 750px;
    padding: 0 20px;
    margin: 0 auto;
  }

  form#mailformpro dl dt{
    float: none;
    text-align: left;
  }

  form#mailformpro dl dd{
    border-top: none;
  }

  #con_form #mailformpro .mailform_dl {
    margin-bottom: 30px;
    overflow: hidden;
  }

  #con_form #mailformpro .mailform_dl dt{
    background: #ffebef;
    padding: 14px 0 14px;
    font-size: 15px; font-size: 1.5rem;
    font-weight: 600;
  }

  #con_form #mailformpro dt.must:before,
  #con_form #mailformpro dt.any:before{
    float: left;
    margin: 0 16px 0 14px;
    padding: 4px 6px;
  }

  #con_form #mailformpro .mailform_dl dd{
    padding: 6px 15px 0;
  }

  #con_form #mailformpro .mailform_dl .menu_select_mt #menu_list{
    margin-left: 0;
  }

  .customer_div {
    width: 50%;
    margin-bottom: 6px;
    float: left;
    padding-right: 20px;
    box-sizing: border-box;
  }

  #con_form #mailformpro .mailform_dl .must_datatime input,
  #con_form #mailformpro .mailform_dl .any_datatime input,
  #con_form #mailformpro label select{
    width: 400px;
    font-size: 14px; font-size: 1.4rem;
    background: #fff;
    height: 38px;
    border-radius: 4px;
    vertical-align: -2px;
    border: 1px solid #f7cbd3;
  }

  #con_form #mailformpro .mailform_dl .any_datatime{
    width: 200px;
    clear: none;
    float: left;
  }

  #con_form #mailformpro .mailform_dl .any_datatime_option {
    width: 400px;
    clear: none;
    float: left;
    padding-right: 20px;
    box-sizing: border-box;
    margin: -6px 0 10px;
  }

  #con_form #mailformpro .mailform_dl .select_time_txt {
    font-size: 14px; font-size: 1.4rem;
    margin-top: -8px;
  }
  #con_form #mailformpro .mailform_dl .select_time_txt .select_time_span01{
    margin-right: 14px;
  }

  #con_form dd input[type="text"],#con_form dd input[type="date"],
  #con_form dd input[type="tel"],#con_form dd input[type="email"] {
    height: 38px;
    font-size: 14px; font-size: 1.4rem;
  }

  #con_form dd input[type="email"] {
    margin-top: 22px;
  }

  #con_form dd .conf_mail input[type="email"] {
    margin-top: 0px;
  }

  #con_form #mailformpro .mailform_dl dd div + div{
    padding-top: 0;
  }
}

@media (min-width: 992px){

  #con_form{
    width: 970px;
    margin: 0 auto;
  }

}

@media (min-width: 1200px){

  #con_form{
    width: 1170px;
    margin: 0 auto;
  }

}

/* Bootstrap カラム修正*/
@media (max-width: 767px){

  h3   { font-size: 18px; font-size: 1.8rem; color: #d92140; } /* =24px */
  h4   { font-size: 18px; font-size: 1.8rem; } /* =24px */

  .course_li:nth-child(odd),
  .anxiety_li:nth-child(odd){
    padding: 0 8px 12px 0;
  }

  .course_li:nth-child(even),
  .anxiety_li:nth-child(even){
    padding: 0 0 12px 8px;
  }

  .course_li:last-child,
  .anxiety_li:last-child{
    padding: 0 4px;
  }

}

@media (min-width: 768px){

  h3   { font-size: 18px; font-size: 1.8rem; color: #d92140; } /* =24px */

  .alert_txt{
    font-size: 18px; font-size: 1.8rem;
    width: 760px;
    outline: 10px double #d92140;
    color: #d92140;
    margin: 60px auto 50px;
    text-align: center;
    padding: 20px;
    font-weight: 600;
    position: relative;
  }

  .course_li, .anxiety_li{
    width: 216px;
    margin-right: 30px;
    margin-bottom: 24px;
    padding-bottom: 0;
  }

  .course_li:nth-child(3), .course_li:nth-child(5),
  .anxiety_li:nth-child(3), .anxiety_li:nth-child(4){
    margin-right: 0px;
  }


}

@media (min-width: 992px){

  .course_li:first-child{
    margin-left: 0px;
  }

  .course_li{
    width: 170px;
    margin-right: 20px;
    margin-bottom: 20px;
  }

  .course_li:nth-child(3), .course_li:nth-child(4){
    margin-right: 20px;
  }

  .anxiety_li {
    width: 210px;
  }

  .anxiety_li:nth-child(3) {
    margin-right: 30px;
  }

  .anxiety_li .anxiety_p {
    font-size: 18px; font-size: 1.8rem;
  }


}

@media (min-width: 1200px){


  .course_li{
    width: 202px;
    margin-right: 30px;
    margin-bottom: 30px;
  }

  .course_li:nth-child(3), .course_li:nth-child(4){
    margin-right: 30px;
  }

  .anxiety_li:first-child{
    margin-left: 80px;
  }

  .anxiety_li {
    width: 230px;
    margin-right: 40px;
  }

  .anxiety_li:nth-child(3) {
    margin-right: 40px;
  }

}



/* その他 */


.pb10{
  padding-bottom: 10px !important;
}

.mt0{
  margin-top: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.fl_none{
  float: none;
}

.overfh{
  overflow: hidden;
}

.ta-l{
  text-align: left;
}

.ta-c{
  text-align: center;
}

.boder-n{
  border:none;
}
.fn-w6{
  font-weight: 600;
}