@charset "UTF-8";
/* reset */
blockquote, dd, dl, dt, figure, h1, h2, h3, h4, h5, h6, li, ol, p, table, ul {
	margin: 0;
	padding: 0
}
dl, ol, ul {
	list-style: none
}
h1, h2, h3, h4, h5, h6 {
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	font-size: 100%;
	font-weight: 400;
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	background-color: transparent;
	outline: none
}
img {
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
}

/* CSS Document */
html {
 font-size: 62.5%;
}
body {
 font-size: 14px;
 font-size: 1.4rem;
 font-family: YakuHanJP, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 line-height: 1.7;
 color: #000000;
}
ul {
 list-style-type: none;
}

/*タブレット・PC用*/
@media screen and (min-width:780px) {
/*PCでは表示させない*/
.pcNone {
 display: none;
}
}

/*スマホ用*/
@media screen and (max-width: 780px) {
/*SPでは表示させない*/
.spNone {
 display: none;
}
}

/*コマンド*/
area:hover{
opacity: 0.5 ;
}
.relative {
 position: relative;
}
.absolute {
 position: absolute;
}
.u_right {
 text-align: right;
}
.u_left {
 text-align: left;
}
.u_center {
 text-align: center;
}
.inline {
 display: inline;
}
.wrapper {
 background: url(../img/bg.jpg)repeat;
}
.gray {
 color: #868686;
}

@media screen and (max-width: 1000px) {
.wrapper {
 background: none;
}
}
.container {
  padding: 0;
}
.container1012 {
  max-width: 1012px;
  margin: 0 auto;
  background: #ffffff;
  border-left: solid 6px #653366;
  border-right: solid 6px #653366;
}
.container900 {
  max-width: 900px;
  margin: 0 auto;
}
.container1000{
  max-width: 1000px;
  margin: 0 auto;
}

@media screen and (max-width: 780px) {
.container1000{
  max-width: 900px;
  margin: 0 auto;
}
}
@media screen and (max-width: 780px) {
.container1012 {
 border: none;
}
}

/*ヘッダー*/
header {
 padding: 20px 20px 0;
}
header .credit{
  padding: 10px 0;
  font-size: 11px;
}
header h1 {
  display: flex;
}
header h1 > a{
 margin-right: 15px;
}

@media screen and (max-width: 780px) {
header {
  width: 100%;
  padding: 2%;
}
header h1 {
  max-width: calc(100% - 110px);
  display: flex;
}
}

@media screen and (max-width: 500px) {
header {
  padding: 5% 2%;
}
}

.heading {
 background: #663366;
 padding: 1.5%;
 font-size: 2.4rem;
 font-weight: bold;
 color: #fff;
 text-align: center;
 letter-spacing: 0.03em;
}

@media screen and (max-width: 780px) {
.heading {
 font-size: 13px;
 font-size: 1.3rem;
}
}

.sec01{
  position: relative;
  z-index: 1;
  margin-bottom: 60px;
}
@media (max-width: 992px) {
.sec01{
  margin-bottom: 50px;
}
}
.sec01::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 90px solid transparent;
  border-right: 90px solid transparent;
  border-top: 60px solid #6b2757;
  position: absolute;
  bottom: -90px;
  left: 50%;
  margin-left: -90px;
}
@media (max-width: 992px) {
.sec01::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
  border-top: 30px solid #6b2757;
  position: absolute;
  bottom: -60px;
  left: 50%;
  margin-left: -40px;
}
}

.sec01_badge{
  position: absolute;
  top: 0;
  right: 3.5%;
  width: 28%;
  padding-top: 17%;
  z-index: 1;
}
@media (max-width: 690px) {
.sec01_badge{
  display: none;
}
}
.sec01_badge_sp{
  display: none;
}
@media (max-width: 690px) {
.sec01_badge_sp{
  display: block;
  color: #fff;
  line-height: 1.3;
  text-align: center;
  background: #aa941d;
  padding: 10px;
}
.sec01_badge_sp span{
  font-size: 1.8rem;
  font-weight: bold;
}
}
.text{
  font-size: 2.3rem;
  margin: 3% 5% 0;
  position: relative;
}
@media (max-width: 992px) {
.text{
  font-size: 1.7rem;
}
}
@media (max-width: 690px) {
.text{
  font-size: inherit;
}
.text br{
  display: none;
}
}
.text::after{
  content: "";
  background-image: url(../img/sec01_bg_pict.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 27.228%;
  padding-top: 55.556%;
  position: absolute;
  bottom: -2%;
  right: 0;
}
@media (max-width: 690px) {
.text::after{
  content: "";
  background-image: url(../img/sec01_bg_pict_sp.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  width: 100%;
  padding-top: 20.78%;
  position: static;
}
}

.text p{
  margin-bottom: 1em;
}


/* order */
.order{
  position: relative;
  /* margin-top: -2.8%; */
}
.order_btn{
  position: absolute;
  top: 16%;
  right: 1.5%;
  width: 19%;
}

.sec02{
}
.sec02_3cols{
  padding: 3% 5%;
}
.sec02_3cols_row{
  display: flex;
  justify-content: space-between;
  margin: 0 -2.668%;
}
@media (max-width: 600px) {
.sec02_3cols_row{
  display: block;
  margin: 0;
}
}
.sec02_3cols_row > div {
  width: 33.333%;
  padding: 0 2.668%;
  border-right: #6b2659 1px solid;
}
@media (max-width: 600px) {
.sec02_3cols_row > div {
  width: 80%;
  padding: 0 0 5%;
  border-right: 0;
  border-bottom: #6b2659 1px solid;
  margin: 0 auto 8%;
}
}
@media (max-width: 420px) {
.sec02_3cols_row > div {
  width: 100%;
}
}
.sec02_3cols_row > div:last-child{
  border: 0;
}
@media (max-width: 600px) {
.sec02_3cols_row > div:last-child{
  padding: 0;
}
}
.sec02_3cols_row dt{
  text-align: center;
  margin-bottom: 7.565%;
}
@media (max-width: 600px) {
.sec02_3cols_row dt{
  margin-bottom: 6%;
}
}
@media (max-width: 600px) {
.sec02_3cols_row dt >img{
  max-width: 180px;
}
}
.sec02_3cols_row dd{
  font-size: 1.8rem;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media (max-width: 992px) {
.sec02_3cols_row dd{
  font-size: inherit;
}
}
.sec03 > ul li:nth-child(2){
  margin-top: -2%;
}
.sec03_method{
  padding: 3% 5%;
}
.sec03_method .method_inr{
  background: url(../img/sec03_bg_method.png) #e9dfe6 right top no-repeat;
  background-size: 66.667%;
  padding: 4.444%;
}
.sec03_method .method_inr:first-child{
  position: relative;
  margin-bottom: 110px;
}
@media (max-width: 690px) {
.sec03_method .method_inr:first-child{
  margin-bottom: 46px;
}
}
.sec03_method .method_inr:first-child::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -130px;
  background: url(../img/sec03_bg_plus.png) no-repeat;
  background-size: contain;
  width: 150px;
  height: 150px;
  margin-left: -75px;
}
@media (max-width: 690px) {
.sec03_method .method_inr:first-child::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -53px;
  background: url(../img/sec03_bg_plus.png) no-repeat;
  background-size: contain;
  width: 60px;
  height: 60px;
  margin-left: -30px;
}
}
.method_text{
  font-size: 2.3rem;
  margin: 20px 0;
}
@media (max-width: 992px) {
.method_text{
  font-size: 1.7rem;
}
}
@media (max-width: 690px) {
.method_text{
  font-size: inherit;
}
}

.sec03_case{
  padding: 3% 5% 0;
}
.sec03_case .case_inr{
  position: relative;
  padding-bottom: 50px;
  border-bottom: #6b2757 4px dotted;
  margin-bottom: 50px;
}
@media (max-width: 992px) {
.sec03_case .case_inr{
  position: relative;
  padding-bottom: 30px;
  border-bottom: #6b2757 2px dotted;
  margin-bottom: 30px;
}
}
.sec03_case .case_inr::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 80px solid transparent;
  border-right: 80px solid transparent;
  border-top: 50px solid #6b2757;
  position: absolute;
  bottom: -28px;
  left: 50%;
  margin-left: -80px;
}
@media (max-width: 992px) {
.sec03_case .case_inr::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
  border-top: 30px solid #6b2757;
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -40px;
}
}
.sec03_case dt{
  color: #6b2757;
  font-size: 3.6rem;
  line-height: 1.2;
  text-align: center;
  border: #6b2757 1px solid;
  padding: .2em;
}
@media (max-width: 690px) {
.sec03_case dt{
  font-size: 1.8rem;
}
}
.sec03_case dd{
  font-size: 2.3rem;
  margin-top: 20px;
}
@media (max-width: 992px) {
.sec03_case dd{
  font-size: 1.7rem;
}
}
@media (max-width: 690px) {
.sec03_case dd{
  font-size: inherit;
}
}
.sec04{
  position: relative;
  z-index: 1;
  margin-bottom: 60px;
}
@media (max-width: 992px) {
.sec04{
  margin-bottom: 50px;
}
}
.sec04::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 90px solid transparent;
  border-right: 90px solid transparent;
  border-top: 60px solid #6b2757;
  position: absolute;
  bottom: -90px;
  left: 50%;
  margin-left: -90px;
}
@media (max-width: 992px) {
.sec04::after{
  content: "";
  width: 0;
  height: 0;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
  border-top: 30px solid #6b2757;
  position: absolute;
  bottom: -60px;
  left: 50%;
  margin-left: -40px;
}
}
.sec04_recommend{
  padding: 3% 5% 0;
}
.recommend_inr{
  font-size: 1.8rem;
  display: flex;
  align-items: flex-start;
  padding-bottom: 20px;
  border-bottom: #6b2757 2px dotted;
  margin-bottom: 20px;
}
@media (max-width: 992px) {
.recommend_inr{
  font-size: 1.7rem;
}
}
@media (max-width: 690px) {
.recommend_inr{
  font-size: inherit;
}
}
.recommend_inr img{
  max-width: 120px;
  width: 25%;
  margin-right: 20px;
}
.sec04_prof{
  font-weight: 1.6rem;
}
@media (max-width: 690px) {
.sec04_prof{
  font-size:1.3rem;
}
}
.sec04_prof .prof_name{
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: .2em;
}
.sec04_prof .prof_name em{
  font-size: 1.5em;
  font-style: normal;
}

/*申し込みフォーム*/
.form {
 width: 80%;
 margin: 5% auto;
  max-width:900px;
}
.col-sm-2 {
 padding: 0.6em 0 0 0;
}
.form_titlebox {
 margin: 10% auto 0;
 max-width: 900px;
 text-align: center;
}
.form_title {
 margin: 5% 0 0 0;
 background: #663366;
 padding: 1.8% 1.5% 1.6%;
 font-size: 24px;
 font-size: 2.8rem;
 font-weight: bold;
 color: #fff;
}

@media screen and (max-width:780px) {
.form_title {
 font-size: 16px;
 font-size: 1.6rem;
}
}
.form_desc {
 text-align: center;
 line-height: 1.8;
 font-size: 1.6rem;
 font-size: 16px;
 padding: 2% 0 0 0;
}
.must::after {
 font-size: 1rem;
 line-height: 2;
 margin-right: 0.6rem;
 content: "必須";
 vertical-align: top;
 color: rgb(255, 255, 255);
 background-color: #b30526;
 padding: 0.2rem 0.4rem;
}
.form .row {
 margin-bottom: 1em;
}
.btn {
 padding: 12px 86px;
 margin-bottom: 0;
 font-size: 21px;
}

/*フッター*/
footer {
  border-top:solid 1px #000000;
  text-align: center;
  padding: 40px 20px 20px;
}
footer .f-logo {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
footer .f-logo > a{
  margin-right: 25px;
}
footer .f-logo > a:last-child{
  margin-right: 0;
}
footer .f-credit{
  text-align: center;
  color:#666;
  margin-bottom: .5em;
}
footer .copy{
  padding-top: 20px;
}

@media screen and (min-width:780px) {
#footerFloatingMenu {
  display: block;
  position: fixed;
  right: 10px;
  top: 10px;
  z-index: 9999;
  text-align: center;
  padding: 0 auto;
}
}

@media screen and (max-width: 780px) {
#footerFloatingMenu {
  display: block;
  width: 112px;
  height: 56px;
  position: fixed;
  right: 10px;
  top: 10px;
  z-index: 9999;
  text-align: center;
  padding: 0 auto;
}
}

 small {
   color:#666666;
 }
 
/*サンクスページ*/
 #thanks .heading {
text-align: left;
}
@media screen and (max-width:1000px)
{
 #thanks h2 {
font-size: 16px;
  font-size: 1.6rem;

}
}

 #thanks h2::after {
    /* position: absolute;
    top: 1em;
    left: .6em;
    z-index: 2;
    content: '';
    width: 10px;
    height: 10px;
    border: 3px solid #663366;
    background-color: #663366; */
}

#thanks footer
{  margin-top:3%;
}
 .thanks_txt{
 text-align: center;
    width: 96%;
    margin: 3% auto 0;
    background-color: #f1f1f1;
    padding: 12% 1%;
    font-size: 18px;line-height: 2;
  margin-bottom:3%;
  
}