@charset "utf-8";

/* add
---------------------------------------------------------- */
#main .mf-frame {
  width: 60vw;
  margin: 0 auto;
}
input[type="button"],input[type="text"],input[type="submit"],input[type="image"],textarea{
    -webkit-appearance: none;
    border-radius: 0;
}

/* cts
---------------------------------------------------------- */
.cts{
position: relative;
padding-bottom: 5vw;
}
.bg1{
background: #ececec;
}
.bg2{
background: url(../img/bg2.jpg) no-repeat center top;
background-size: cover;
}


.ctsA{
background: url(../img/ctsA_bg.jpg) no-repeat center center;
background-size: 100% 100%;
font-feature-settings: "palt";
}
.ctsA .inner{
background: #fff;
padding: 40px 80px;
margin-bottom: 1em;
}
.ctsA .tit{
border-left: 2px solid #333;
padding: .6em;
font-size: 1.7em;
letter-spacing: 0;
margin-bottom: 1em;
}
.ctsA .tit p:nth-child(1){
color: #795c36;
font-weight: 600;
}
.ctsA .tex{
  font-size: 1.2em;
}
.ctsA .tex p{
  padding-bottom: 1em;
  line-height: 1.5;
}
.right p:last-child {
font-size: 0.5rem;
color: rgba(0, 0, 0, 0.57);
text-align: center;
margin-bottom: 2em;
}

.ctsB{
  width: 780px;
  margin: 0 auto;
}

.ctsC{
background: url(../img/ctsC_bg.jpg) no-repeat center center;
background-size: 100% 100%;
font-feature-settings: "palt";
}
.ctsC .img1{
  width: 634px;
  margin: 0 auto 8em;
}

.ctsC .inner{
  background: #000;
  padding: 30px;
  color: #fff;
}
.ctsC_p{
  text-align: center;
  padding: 3em 0 0;
  font-size: 3em;
  color: #e0c73b;
font-family: serif;
}

.ctsE h2,
.ctsD h2{
  color: #000;
}

.ctsD .img{
  width: 830px;
  margin: 0 auto;
}

.ctsE .img{
  width: 832px;
  margin: 0 auto;
}




.cts1 .img{
width: 980px;
min-width: 0;
margin: 0 auto;
}
.cts2 .img{
max-width: 1200px;
min-width: 0;
margin: 0 auto;
}
.cts3 .img{
max-width: 1200px;
min-width: 0;
margin: 0 auto;
}
.cts4_box {
margin-bottom: 3em;
position: relative;
}
.cts4_box .tex p:nth-child(1) {
font-size: 1.6em;
font-family: serif;
margin: 0.3em 0;
}
.cts4_box .tex p:nth-child(2){
font-size: .96em;
}
.cts4_box .tex a{
text-decoration: underline;
}

.cts4_box > .ico {
background: #dac23d;
text-align: center;
position: absolute;
left: -1.7em;
top: -1.3em;
width: 4.6em;
height: 4.6em;
line-height: 1;
border-radius: 3em;
font-family: serif;
color: #fff;
}
.cts4_box > .ico p:nth-child(1) {
display: block;
font-size: 1em;
position: relative;
top: .8em;
}
.cts4_box > .ico p:nth-child(2) {
font-size: 2.1em;
position: relative;
top: .4em;
}
.cts4_box .img{
height: 220px;
background-color: #ccc;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
}
.cts4_box:nth-child(1) .img{background-image:url(../img/cts4_img1.jpg);}
.cts4_box:nth-child(2) .img{background-image:url(../img/cts4_img2.jpg);}
.cts4_box:nth-child(3) .img{background-image:url(../img/cts4_img7.jpg);}
.cts4_box:nth-child(4) .img{background-image:url(../img/cts4_img10.jpg);}

.cts4_box.add:nth-child(1) .img{background-image:url(../img/cts4_img7.jpg);}
.cts4_box.add:nth-child(2) .img{background-image:url(../img/cts4_img8.jpg);}
.cts4_box.add:nth-child(3) .img{background-image:url(../img/cts4_img9.jpg);}



/* btn
---------------------------------------------------------- */
.cta{
background: url(../img/cta_bg.jpg) no-repeat center center;
background-size: cover;
height: 200px;
margin: 1px 0;
}
.cta .inner{
max-width: 1200px;
min-width: 0;
padding: 20px;
margin: 0 auto;
}
.cta .inner .tit{
width: 90%;
}
.cta .inner .btn a {
background: url(../img/btn_bg.png) no-repeat center center;
background-size: contain;
display: block;
text-align: center;
height: 46px;
padding: 63px;
font-size: 1.6em;
font-family: serif;
line-height: 1;
color: #fff;
}
.cta .inner .btn a span{
color: gold;
font-size: .4em;
position: relative;
top: -.4em;
padding-left: 3em;
}
.btn a:hover{
opacity: .66;
}

.profile{
background: url(../img/prof_bg.jpg) no-repeat center center;
background-size: cover;
}
.profile_wrap > .img{
height: 460px;
background: url(../img/prof_img.jpg) no-repeat center bottom;
background-size: 240%;
position: relative;
}
.profile_wrap > .img img{
width: 60px;
left: 1em;
bottom: 1em;
position: absolute;
}
.profile_wrap .tit {
font-family: serif;
font-size: 1.6em;
margin-bottom: 1em;
line-height: 1.6;
}
.profile_wrap .tex{
margin-bottom: 3em;
}
.profile_wrap .tex p{
font-size: .9em;
margin-bottom: 1em;
}
.profile_wrap .nam{
font-size: .9em;
font-family: serif;  
}
.profile_wrap .nam span{
font-size: 1.3em;
padding-left: 1em;
}

.cs{
background: #fff;
width: 94%;
padding: 3%;
margin: 3em 0 0;
}

.map{
margin-bottom: 3em;
}
.map .tit{
width: 500px;
margin: 0 auto 3em;
}
iframe{
width: 100%;
height: 400px;
}

.map_info{
position: relative;
}
.map_info p:nth-child(2){
position: absolute;
right: 0;
top: 0;
}

dl p.add {
margin: -0.2em 0 0;
font-size: 0.78em;
font-weight: 300;
color: #909090;
}
dl p.add span {
color: #a26060;
}

@media(max-width:1220px){
.cta{
height: 17vw;
}
.cta .inner .btn a {
height: 9vw;
padding: 5vw 0 0;
}
}/* @media */



@media(max-width:780px){
.scrollx {
overflow: scroll;
margin-bottom: 64px;
margin-right: 20px;
border-right: 1px solid #ccc;
}
.scrollx:after {
content: 'Scroll ▶︎';
font-size: 0.9em;
position: absolute;
right: 19px;
}
.cts1 .img {
width: 670px;
min-width: 0;
margin: 0 auto;
padding: 0 1.5em 1em;
}

.cts {
padding: 40px 0;
}
.cts2{
background: #000;
color: #fff;
}
.cts2 h3 span{
color: #ec9696;
}

.cts4_box .img {
height: 50vw;
}
.cts4_box > .ico {
left: 0.6em;
top: 0.6em;
}

.profile_wrap > .img {
height: 96vw;
background-size: 180vw;
width: 70vw;
margin: 0 auto 3em;
}

.map .tit {
width: 70%;
}
iframe {
width: 90vw;
height: 40vw;
}
.map_info p:nth-child(2) {
position: relative;
right: 0;
top: 0;
}
.map_info p:nth-child(1) {
font-size: 0.7em;
margin: 1em 0;
text-align: center;
}
.map {
margin-bottom: 0em;
}
.cs {
font-size: 0.8em;
}

.cta {
height: 61vw;
}
.cta .inner {
padding: 4.5vw 3vw;
}
.cta .inner .tit {
width: 90%;
margin: 0 auto;
}
.cta .inner .btn a {
height: 17vw;
padding: 10vw 0 0;
}

.ctsA .inner {
background: #fff;
padding: 20px 20px;
margin-bottom: 1em;
font-size: 0.8em;
}
.ctsA .right{
width: 90%;
}
.ctsC .img1 {
width: 100%;
margin: 0 auto 5em;
}
.non{
  display: none;
}
.ctsC .inner {
background: #000;
padding: 40px 0;
}
.ctsC_p {
padding: 1em 0 0;
font-size: 2em;
}
.ctsD .img {
width: 94%;
margin: 0 auto;
}
.ctsE .img {
width: 94%;
margin: 0 auto;
}
.ctsB {
width: 100%;
}
  
  #main .mf-frame {
    width: 80vw;
  }

}/* @media */


/*  form_area
---------------------------------------------------------- */
.form_area > .inner{
background: #fff;
padding: 30px 0;
}
dl.form > dt {
clear: both;
float: left;
width: 19em;
padding: 17px 0 0;
position: relative;
}
dl.form > dt > span.hissu {
background: #fff;
border: 1px solid #B72A2C;
color: #B72A2C;
font-size: .8em;
padding: 3px 1em;
margin: 0 0 0 1em;
position: absolute;
right: 1.5em;
}
dl.form > dt > span.nini{
background: #d0d0d0;
color: #fff;
font-size: .8em;
padding: 3px 1em;
margin: 0 0 0 1em;
position: absolute;
right: 1.5em;
}
dl.form > dd {
padding: 10px 0 0 20em;
margin: 0 0 10px;
}
dl.form > dd > input{
border: 0;
outline: none;
background: #fff9fc;
padding: 8px 2%;
width: 96%;
font-size: 1rem;
}

dl.form > dd > input[type="date"],
dl.form > dd > input[type="time"]{
width: 40%;
}
dl.form > dd input[type="radio"]{
position: relative;
top: 1px;
margin-right: 8px;
}
dl.form > dd .add_no{
width: 8em !important;
}
dl.form > dd .caution{
color: #c30000;
font-size: .7em;
line-height: 1.6;
}
dl.form > dd select{
font-size: 1.3em;
}
dl.form > dd > textarea{
border: 0;
outline: none;
background: #fff9fc;
padding: 8px 2%;
width: 96%;
font-size: 1rem;
height: 12em;
}
dl.form input.btn {
text-align: center;
border-radius: 2px;
background: #e43c5c;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6eDFD3', endColorstr='#9DDFD3',GradientType=0 );
border: 0;
display: block;
color: #fff;
font-size: 1.2rem;
padding: 16px 80px;
margin: 40px auto 0;
letter-spacing: .1em;
text-indent: .1em;
cursor: pointer;
}
dl.form input.btn:hover{
opacity: .8;
}
.age{
width: 4em !important;
margin-right: 0.5em !important;
}
dd.add2{
padding: 1.1em 0 0 !important;
}
dl p{
margin: 1.3em 0 1em;
}
dl.form textarea {
border: 0;
outline: none;
background: #f5f5f5;
padding: 8px 2%;
width: 96%;
font-size: 1rem;
height: 12em;
}
label{
line-height: 1.6;
font-size: .9em;
padding-left: .5em;
position: relative;
top: .1em;
margin-bottom: 0.5em;
}
#cb+label{
  top: -.1em;
}
.cb{
text-align: center;
}
.cb span{
display: block;
font-size: .8em;
color: #4a4a4a !important;
}
.cb span a{
color: #894242;
}
.cb span a:hover{
opacity: .66;
}

@media(max-width:1000px){
dl.form > dd > input[type="date"],
dl.form > dd > input[type="time"]{
width: 96%;
}
dl.form > dd {
padding: 0px 0 0 0;
border-top: 0;
margin: 0 0 0px;
width: 100%;
}
dl.form > dt {
padding: 16px 0 8px 3px;
width: 100%;
}
dl.form > dd.add {
border-bottom: 0;
padding-bottom: 0;
}
dl.form input.btn {
padding: 16px 0px;
margin: 40px auto 0;
letter-spacing: 0em;
text-indent: 0em;
width: 100%;
font-size: 1em;
}
.form_area {
padding: 0px 0 40px;
margin-bottom: 0;
}
.form_area > .inner {
background: #fff;
padding: 10px 0 20px;
}
dl.form > dd select {
font-size: 1.1em;
height: 2.5em;
display: block;
width: 100%;
background: #efefef;
border: 0;
}
dl.form > dt > span.nini ,
dl.form > dt > span.hissu {
position: relative;
right: 0;
top: -0.2em;
}
.form_area > .inner {
background: #fff;
margin: 0 10px;
}
}/* @media */

@media(max-width:540px) {
  .completion {
    width: 80vw;
    margin: 0 auto;
    text-align: left;
  }
}

