﻿@charset "utf-8";

html {
		font-family: 'Noto Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Osaka, Sans-Serif;
}

body {
		background: #fff;
    color: #000;
    min-width: 1080px;
    margin: 0 auto;
}

.inner {
    max-width: 980px;
    width: 100%;
}

.yellow {
		color:#fff604;
}
.pink {
		color:#ff8069;
}



/* *************************************************************** */
/* *************************************************************** */
.checkbox-input{
  display: none;
}
.checkbox-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}
.checkbox-parts::before{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #999;
    border-radius: 4px;
    margin-top: -7px;
}
.checkbox-input:checked + .checkbox-parts{
  color: #d01137;
}
.checkbox-input:checked + .checkbox-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #d01137;
  border-right: 3px solid #d01137;
}

/* *************************************************************** */
/* *************************************************************** */
.radio-input{
  display: none;
}
.radio-input + label{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}
.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio-input:checked + label{
  color: #d01137;
}
.radio-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #d01137;
  border-radius: 50%;
}
/* *************************************************************** */
/* *************************************************************** */
.mv {
		background: url(../images/bg_mv.jpg) no-repeat center top;
    background-size: cover;
    padding: 2em 0 2em;
    text-align: left;
}
.mv .inner {
		position:relative;
}
.mv .logo {
    position: absolute;
    top: 0;
    left: 0;
}

.mv_bloc {
		margin-left: auto;
    text-align: right;
}
.mv_bloc figure {

}
.mv_bloc h1 {

}

.mv_bottom {
    position: absolute;
    bottom: 20%;
    left: 0;
}
.mv_bottom p {
	
}

.sec_body {
		position:relative;
}
.sec_body:before {
    content: "";
    background: #ffe2dc;
    background: -moz-linear-gradient(top, #ffe2dc 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, #ffe2dc 0%,#ffffff 100%);
    background: linear-gradient(to bottom, #ffe2dc 0%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffe2dc', endColorstr='#ffffff',GradientType=0 );
    width: 100%;
    height: 300px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}


.title_bloc {
    margin-bottom: 3em;
}
.title_bloc h2 {
	
}
.title_bloc h2 .jp {
    font-family: 'Noto Serif';
		color:#484848;
		font-size:36px;
		line-height:1.4em;
    display: block;	
}
.title_bloc h2 .en {
    font-family: 'Cinzel Decorative', cursive;
    color: #ff8069;
    font-size: 18px;
    line-height: 1.2em;
    font-style: italic;
    display: block;
    margin-top: 10px;
}

.about {
    padding: 4em 0;
}
.about_bloc {
	
}

.point {
    padding: 0 0 4em;
}

.point_bloc {
	
}
.point_bloc + .point_bloc {
		margin-top:2em;
}

.point_bloc h2 {
		margin-bottom: 1em;
}
.point_bloc h2 .en {
		display: inline-block;
    background: url(../images/img_point_title.png) no-repeat center bottom;
    width: 544px;
    padding-bottom: 10px;
    font-family: 'Cinzel Decorative', cursive;
    color: #ff8069;
    font-size: 24px;
    line-height: 1.2em;
    font-style: italic;
    margin-bottom: 0.5em;
}
.point_bloc h2 .jp {
    display: block;
    font-family: 'Noto Serif';
    color: #484848;
    font-size: 32px;
    line-height: 1.4em;
}


.point_list_01 {
	
}
.point_list_01 ul {
    align-items: flex-start;
    justify-content: center;
    max-width: 680px;
    margin: 0 auto;
}
.point_list_01 ul li {
    margin: 0 1em 1em;
}


.point_list_02 {
	
}
.point_list_02 ul {
		align-items: flex-start;
    justify-content: center;
    max-width: 750px;
    margin: 0 auto;
}
.point_list_02 ul li {
    margin: 0 0.5em 1em;
}

.point_catch_02 {
    align-items: flex-start;
    justify-content: center;
}
.point_catch_02 img:nth-child(1){
	
}
.point_catch_02 img:nth-child(2){
		margin: 2em 2em 0;
}
.point_catch_02 img:nth-child(3){
	
}

.point_desc_02 {
		margin-bottom: 1.5em;
    align-items: center;
    justify-content: center;
}
.point_desc_02 figure {

}
.point_desc_02 .detail {
		margin-left: 2em;
}
.point_desc_02 .detail dl {
		margin: 0;
    font-family: 'Noto Serif';
    color: #484848;
    font-size: 19px;
    line-height: 1.4em;
}
.point_desc_02 .detail dl dt {

}
.point_desc_02 .detail dl dd {
		margin: 0 0 0 1em;
    display: block;
    flex: 1 0 0%;
    text-align: left;
}

.movie {
    padding: 4em 0;
}
.movie_bloc {
	
}
.movie_bloc video {
    max-width: 640px;
    width: 100%;
}

.voice {
    padding: 4em 0;
}
.voice_bloc {
	
}
.voice_figure {
		margin-bottom:4em;
}

.voice_message {
	
}
.voice_message p {
		font-family: 'Noto Serif';
    color: #484848;
    font-size: 24px;
    line-height: 1.6em;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding: 0 2em;
}
.voice_message p:before {
    content: "";
    width: 35px;
    height: 29px;
    background: url(../images/icon_qt_start.png) no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.voice_message p:after {
    content: "";
    width: 35px;
    height: 29px;
    background: url(../images/icon_qt_end.png) no-repeat;
    position: absolute;
    bottom: 0;
    right: 0;
}


.announce {
    padding: 0 0 4em;
}
.announce_band {
    background: #ff8069;
    padding: 2em 0;
    margin-bottom: 2em;
}
.announce_band h2 {
		font-family: 'Noto Serif';
    color: #fff;
    font-size: 24px;
    line-height: 1.6em;
}

.announce_bloc {
	
}
.announce_bloc figure {
    margin-bottom: 2em;
}
.announce_bloc .detail {
	
}
.announce_bloc .detail p {
    font-family: 'Noto Serif';
    color: #484848;
    font-size: 21px;
    line-height: 1.6em;
    font-weight: bold;
}
.announce_bloc .detail p .text_image {
		display: block;
    margin: 1em 0;	
}


.line {
		padding:4em 0;
		background: #ffcec5;
    background: -moz-linear-gradient(left, #ffcec5 0%, #fff0ed 50%, #ffcec5 100%);
    background: -webkit-linear-gradient(left, #ffcec5 0%,#fff0ed 50%,#ffcec5 100%);
    background: linear-gradient(to right, #ffcec5 0%,#fff0ed 50%,#ffcec5 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffcec5', endColorstr='#ffcec5',GradientType=1 );
}
.line h2 {
		font-family: 'Noto Serif';
    color: #484848;
    font-size: 32px;
    line-height: 1.6em;
    margin-bottom: 1em;
}











/* **************************************************************** */
/* Contact
*/
#Contact {
		font-family: 'Noto Serif';
    color: #484848;
    padding: 4em 0;
}

#Contact .title_bloc {

}
#Contact .title_bloc h2 {
		font-family: 'Noto Serif';
    color: #484848;
    font-size: 36px;
    line-height: 1em;
    align-items: center;
    justify-content: center;
}
#Contact .title_bloc h2 .deco {
		margin:0 0.5em;

}

.contact_bloc_upper {
    margin-bottom: 1em;	
}
.contact_bloc_upper p {
		color: #4f3019;
    font-size: 16px;
    line-height: 1.4em;
}
.contact_bloc {
    max-width: 1000px;
    margin: 0 auto;
    font-size: 16px;
    color: #4f3019;
}
.contact_bloc > p {
		text-align:left;
}
.contact_bloc > dl {
    margin: 0;
    border-top: solid 2px #ffe6e1;
    align-items: stretch;
    justify-content: space-between;
}

.contact_bloc > dl:last-child {
    border-bottom: solid 2px #ffe6e1;	
}
.contact_bloc > dl > dt {
		box-sizing: border-box;
    /* color: #000; */
    font-size: 16px;
    line-height: 2em;
    width: 100%;
    max-width: 300px;
    padding: 0.5em 3em 0.5em 1em;
    text-align: left;
    position: relative;
    align-items: center;
    justify-content: space-between;
}
.contact_bloc > dl > dd {
    margin: 0;
    flex: 1 0 0%;
    background: #fff;
    padding: 1em 1em 1em 1em;
    text-align: left;
}
.contact_bloc > dl > dd .sub {
    margin-right: 0.5em;
    width: 40px;
    display: inline-block;
    text-align: center;
}
.contact_bloc > dl > dd label + label {
		margin-left:0.5em;
}
.contact_bloc > dl > dt.required {

}
.contact_bloc > dl > dt.required:after {
    content: "必須";
    display: inline-block;
    background: #ff8069;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    padding: 8px 6px;
    border-radius: 4px;
    position: absolute;
    top: 50%;
    right: 0.5em;
    margin-top: -14px;
    box-sizing: border-box;
}

.time_box {
    margin: 2em 0;
}
.time_box .upper {
    margin-bottom: 1em;
}
.time_box .upper h3 {
		background: #caa368;
    margin: 0 auto 1em;
    padding: 10px;
    font-size: 18px;
}
.time_box .upper ul {
		margin: 0 2em;
}
.time_box .upper ul li {
    position: relative;
    text-align: left;
    padding-left: 1em;
}
.time_box .upper ul li:before {
		content:"※";
		position:absolute;
		top:0;
		left:0;
}
.time_box .upper p {
    margin: 0 2em;
    text-align: left;
}

.time_item {
    margin: 0;
    text-align: left;
}
.time_item dl {
		margin:0;
}
.time_item dl + dl {
		margin-top: 0.5em;
}
.time_item dl dt {
	
}
.time_item dl dd {
		margin:0;
}
.time_item + p {
		font-size: 14px;
    line-height: 1.4em;
    margin-top: 0.5em;	
}

.time_item dl dd #datepicker1,
.time_item dl dd #datepicker2,
.time_item dl dd #datepicker3 {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
}

.contact_company {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 100%;
}
.contact_name {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 46%;
}
.contact_kana {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 46%;
}
.contact_mail {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 100%;
}
.contact_tel {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 100%;
}
.contact_message  {
    padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d1d1;
		border-radius: 4px;
    width: 100%;
}







select {
		padding: 5px 10px;
    box-sizing: border-box;
    border: solid 1px #d0d2d2;
    border-radius: 4px;
    background: #fff;
}

.radio_wrap {
    justify-content: flex-start;
}
.radio_item_box  + .radio_item_box  {
		margin-left:1em;
}

.check_wrap {
    justify-content: center;
    margin-bottom: 1em;
}



.radio_item2 {
		align-items: center;
    justify-content: flex-start;
}
.radio_item2 label {
		margin: 0 0.5em;
}

.map_link {
	
}
.map_link a img {
		margin-right: 5px;
}
.map_link a {
    color: #c3002f;
    font-size: 16px;
}

.contact_bloc + .btn_bloc {
    margin-top: 1em;
}


button {
    border: none;
    margin: 0;
    padding: 0;
    background: #ff8069;
    color: #fff;
    font-size: 24px;
    padding: 0.5em 2em;
    border-radius: 41px;
    width: 100%;
    max-width: 300px;
}




/* **************************************************************** */
/* thanks
*/
.thanks_body {

}
.thanks_body header{
    position: static;
    box-sizing: border-box;
}
.thanks {
    position: relative;
    box-sizing: border-box;
    padding: 4em 0;
    font-family: 'Noto Serif';
    color: #484848;
}
.thanks .inner {
    text-align: left;
    position: relative;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.thanks .detail {
    text-align: center;
    max-width: 550px;
    width: 100%;
}
.thanks .thanks_image {

}
.thanks .thanks_image p {
    font-size: 24px;
}
.thanks .bloc {

}
.thanks .bloc h1 {
    font-size: 24px;
    line-height: 1.4em;
    font-weight: normal;
    /* background: #000; */
    /* color: #fff; */
    padding: 10px 0 14px;
    /* max-width: 550px; */
    /* margin: 0 auto 0.5em; */
    box-sizing: border-box;
}
.thanks .bloc p {
    font-size: 18px;
}

.thanks .sub {
		max-width: 760px;
    background: #fff;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 1em;
}
.thanks .sub .mv_logo {
		margin-right: 2em;
}
.thanks .sub p {
		font-size: 36px;
    line-height: 1em;
}









































footer {
    padding: 4em 0;
    background: #ffcec5;
    background: -moz-linear-gradient(left, #ffcec5 0%, #fff0ed 50%, #ffcec5 100%);
    background: -webkit-linear-gradient(left, #ffcec5 0%,#fff0ed 50%,#ffcec5 100%);
    background: linear-gradient(to right, #ffcec5 0%,#fff0ed 50%,#ffcec5 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffcec5', endColorstr='#ffcec5',GradientType=1 );
    color: #484848;
    padding: 10px 0;
}
footer .copy {

}
footer .copy small {
		font-size: 14px;
    line-height: 1.4em;
    font-family: 'Noto Serif';
    color: #484848;
}








@media screen and (max-width: 768px) {
body {
		min-width: auto;
    overflow-x: hidden;
}

.mv {
		background: url(../images/bg_mv_sp.jpg) no-repeat left top;
    background-size: cover;
    padding: 1em;
}
.mv .inner {
    position: relative;
    padding-top: 10em;
}



.mv .logo {
    width: 5vw;
}
.mv_bloc {
    width: 100%;
}
.mv_bloc figure {
		width: 50%;
    margin-left: auto;
}

.mv_bottom {
		width: 50%;
    bottom: 34vw;
}


.title_bloc {
    margin-bottom: 1em;
}
.title_bloc h2 .jp {
    font-size: 21px;
}
.title_bloc h2 .en {
    font-size: 10px;
}

.sec_body:before {
    height: 100px;
}

.about {
    padding: 1em;
}
.point {
    padding: 0 1em 1em;
}

.point_bloc h2 {
    margin-bottom: 0.5em;
}
.point_bloc h2 .en {
    width: 100%;
    background-size: contain;
    font-size: 18px;
}

.point_bloc h2 .jp {
    font-size: 18px;
}
.point_list_01 ul li {
    box-sizing: border-box;
    width: 29%;
    margin: 0 0.5em 0.5em;
}
.point_bloc + .point_bloc {
    margin-top: 1em;
}


.point_catch_02 img:nth-child(1) {
display: block;
    width: 80%;
    margin: 0 auto;
}
.point_catch_02 img:nth-child(2) {
		display: block;
    margin: -1em auto 1em;
    width: 18px;
}
.point_catch_02 img:nth-child(3) {
display: block;
    width: 80%;
    margin: 0 auto;
}

.point_catch_02 {
    display: block;
    margin: 0 auto 1.5em;
    text-align: center;
}

.point_desc_02 figure {
		width: 50%;
    margin: 0 auto 1em;
}
.point_desc_02 {
    display: block;
}

.point_desc_02 .detail {
    width: 100%;
    margin: 0;
}
.point_desc_02 .detail dl {
    font-size: 14px;
}

.point_desc_02 .detail dl dt {
    width: 100%;
    text-align: left;
}
.point_desc_02 .detail dl + dl {
    margin-top: 0.5em;
}
.point_list_02 ul li {
    box-sizing: border-box;
    width: 45%;
    margin: 0 0.5em 0.5em;
}


.movie {
    padding: 1em;
}

.voice {
    padding: 1em;
}
.voice_figure img {
    width: 24.5%;
}
.voice_figure {
    margin-bottom: 1em;
}

.voice_message p:before {
		width: 20px;
    height: 18px;
    background-size: contain;
}
.voice_message p:after {
		width: 20px;
    height: 18px;
    background-size: contain;
}
.voice_message p {
    font-size: 14px;
    padding: 0 2em;
}

.announce {
    padding: 0 0 1em;
}
.announce_band {
    padding: 1em;
    margin-bottom: 1em;
}
.announce_band h2 {
    font-size: 18px;
}
.announce_bloc {
    padding: 0 1em;
}
.announce_bloc figure {
    margin-bottom: 1em;
}
.announce_bloc .detail p {
    font-size: 18px;
}

.announce_bloc .detail p .mini {
		font-size: 14px;
    line-height: 1.2em;
    display: inline-block;
}

.line {
    padding: 1em;
}
.line h2 {
    font-size: 16px;
}

#Contact .title_bloc h2 {
    font-size: 21px;
}
#Contact .title_bloc h2 .deco {
    width: 16px;
    margin-top: -10px;
}

.check_wrap {
	
}
.check_wrap p {
    font-size: 14px;
    line-height: 1.4em;
    margin-bottom: 1em;
}
button {
    font-size: 16px;
}







footer .copy {
    margin-top: 0;
}
footer .copy small {
    font-size: 10px;
}



#Contact {
		padding: 1em;
}
.contact_bloc_upper {
    margin-bottom: 1em;
}
.contact_bloc_upper p {
    font-size: 12px;
}

.contact_bloc > dl > dt {
		width: 100%;
    max-width: none;
    font-size: 13px;
    padding: 0.5em 0.5em 0 0.5em;
    box-sizing: border-box;
}
.contact_bloc > dl > dt.required:after {
		font-size: 10px;
    padding: 4px 6px;
    margin-top: -9px;	
}

.contact_bloc > dl > dd .sub {
		width: 20px;
    font-size: 10px;
}
.contact_bloc > dl > dd {
		padding: 0 0.5em 0.5em 0.5em;
}
.contact_name {
    width: 36%;
}
.contact_kana {
    width: 36%;
}

.time_item dl dt {
    font-size: 12px;
}
.time_item dl dd #datepicker1, .time_item dl dd #datepicker2, .time_item dl dd #datepicker3 {
    width: 48%;
}

.contact_pref {
    width: 48%;
}

.time_item + p {
    font-size: 12px;
}


.radio_wrap {

}
.radio_item_box + .radio_item_box {
    margin-left: 1em;
}
.radio_item_box {
    margin-left: 1em;
}




.contact_bloc + .btn_bloc {
    margin: 1em 1em 0;
}









.thanks .thanks_image {
    margin-bottom: 0;
}
.thanks .thanks_image p {
    font-size: 20px;
}
.thanks .bloc {
    padding: 1em;
}
.thanks .bloc h1 {
    font-size: 18px;
}
.thanks .bloc p {
    font-size: 14px;
}
























}
