@charset "utf-8";

/*-------------- 共通 --------------*/
<!--[if IE]>
html, body {
	height: 100%;
	overflow: auto;
	margin: 0;
	padding: 0;
}
<![endif]-->

*{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

html,body{
    font-family: "Arial","MS ゴシック",sans-serif;
    font-size: 16px;
    margin: 0px;
    padding: 0;
}

body {
    width: 100%;
    font-size: 100%;
    color: #333;
    line-height: 2;
    text-align: center;
    -webkit-text-size-adjust: 100%;
}

a {
    text-decoration: none;
    display: block;
    color: #333;
}

a:hover{
    opacity: 0.7;
    -webkit-transition: ease 0.3s;
    -moz-transition: ease 0.3s;
    -o-transition: ease 0.3s;
    transition: ease 0.3s;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

.contents {
    width: 1000px;
    margin: 0 auto 48px;
}

/*--- to top btn ---*/
.top_btn{
    position: fixed;
    bottom: 10%;
    right: 10%;
    z-index: 10000;
    background: #603813;
    width: 40px;
    height: 40px;
    -webkit-border-radius: 25%;
       -moz-border-radius: 25%;
            border-radius: 25%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.top_btn.open{
    display: none;
}

.fa-angle-up{
    font-size: 30px;
    color: #fff;
    text-align: center;
    margin-bottom: 2px;
   position: absolute;
    top:45%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.contents {
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

/* color
main pink   #eb788b
main green  #3bb58e
main brown  #603813
beige       #fefbec
yellow      #fcee21
gray        #4d4d4d
light pink  #f8d1d7
light green #daf3eb
light brown #998675
*/

/* bg */
.bg_beige {
    background-color: #fefbec;
}
.bg_green {
    background-color: #daf3eb;
}

/* margin */
.mlr50 {
    margin-left: 50px;
    margin-right: 50px;
}
.mlr25 {
    margin-left: 25px;
    margin-right: 25px;
}
.mb16 {
    margin-bottom: 1em;
}
.mb32 {
    margin-bottom: 32px;
}
.mb48 {
    margin-bottom: 48px;
}

/* text style */
.txt_red {
    color: #ed1c24;
}

/* title style */
.u_line_green {
    position: relative;
    display: inline-block;
    margin-bottom: 2em;
    font-size: 28px;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 700;
    color: #603813;
    line-height: normal;
    padding-bottom: .3em;
}
.u_line_green:before {
  content: '';
  position: absolute;
  bottom: -10px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #3bb58e;
  border-radius: 5px;
}

.frame_pink {
    width: 1000px;
    font-size: 32px;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 700;
    color: #eb788b;
    border: solid 2px #eb788b;
    margin-bottom: 32px;
}

.u_line_yellow {
    background: linear-gradient(transparent 70%, #fcee21 70%);
    width: 40%;
    margin: 0 auto 32px;
    font-size: 24px;
    color: #4d4d4d;
    line-height: 1.5em;
}

.u_line_pink {
    width: 100%;
    font-size: 28px;
    color: #603813;
    border-bottom: solid 2px #e75a72;
    line-height: 1.75em;
    margin-bottom: .5em;
}

.side_line_pink {
    position: relative;
    display: inline-block;
    padding: 0 100px;
    color: #e75a72;
    font-size: 24px;
    width: 100%;
}
.side_line_pink:before, .side_line_pink:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30%;
  height: 2px;
  background-color: #e75a72;
}
.side_line_pink:before {
  left:0;
}
.side_line_pink:after {
  right: 0;
}

.side_line_pink2 {
    position: relative;
    display: inline-block;
    padding: 0 100px;
    color: #e75a72;
    font-size: 24px;
    width: 100%;
}
.side_line_pink2:before, .side_line_pink2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 2px;
  background-color: #e75a72;
}
.side_line_pink2:before {
  left:0;
}
.side_line_pink2:after {
  right: 0;
}

/* comming index　ここから */
#wrapper {
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.container {
    width: 90%;
    text-align: center;
}

.textbox {
    margin-bottom: 3.5em;
}

h1 {
    font-size: 3em;
}

.st_text {
    font-size: 1.5em;
}
/*本番UPしたら抹消　ここまで*/


#wrap {
    width: 100%;
}

/*--- header ---*/
#header {
    background-color: #fff;
}

#header_inner {
    width: 100%;
    max-width: 1000px;
    height: 64px;
    margin: 0 auto;
    color: #603813;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    line-height: 1;
}

#header_inner h1 {
    font-size: 28px;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 700;
    text-align: left;
}

.subtext {
    font-size: 14px;
    font-weight: 500;
}

.head_contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.head_tel {
    font-size: 28px;
    margin-right: 20px;
    padding: 17px 0;
}

.head_tel p::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f095";
    display: inline-block;
    transform: scale(-1, 1);
    margin-right: 10px;
}

.head_mail a {
    display: block;
    width: 64px;
    height: 64px;
    background-color: #3bb58e;
    padding: 13px;
}

.to_form {
    font-size: 38px;
    color: #fff;
}

/* gnav */
#gnav {
    width: 100%;
    height: auto;
    /*background: rgba(255,255,255,0.7);*/
    background-color: #fff;
}

.nav_inner {
    width: 1000px;
    height: 100px;
    margin: 0 auto;
}

.nav_inner ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
}

.nav_inner li {
    width: 100%;
    height: 100px;
    list-style: none;
    border-left: 1px solid #808080;
    line-height: normal;
}

.nav_inner li:last-child {
    border-right: 1px solid #808080;
}

.nav_inner li a {
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 16px;
}

.nav_inner li a span {
    display: block;
    text-align: center;
    color: #333;
    padding-top: .5em;
}

/*　保留
.nav_inner a::after {
  border-bottom: solid 2px #eb788b;
  bottom: 0;
  content: "";
  display: block;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}

.nav_inner a:hover::after {
  width: 100%;
}*/

.fixed { /*途中から固定 */
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
}

/*--- cover ---*/
#cover {
    width: 100%;
    height: auto;
    position: relative;
}

.cover_bg {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.cover_bg img {
    width: 100%;
}

.discription {
    width: 792px;
    height: 260px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/*.discription img {
    width: 792px;
    height: 260px;
}*/

.discription p {
    font-size: 20px;
    font-weight: bold;
    line-height: 36px;
    margin-top: -72px;
}

/*--- news ---*/
#news {
    width: 100%;
    padding-top: 32px;
    padding-bottom: 32px;
    margin-bottom: 48px;
}

.news_fl {
    width: 1000px;
    height: 337px;
    margin: 0 auto;
    /*overflow: hidden;*/
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.newsbox {
    width: 220px;
    height: auto;
    margin-right: 40px;
    text-align: left;
}

.newsbox:last-child {
    margin-right: 0;
}

.photo {
    width: 220px;
    height: 180px;
    margin-bottom: 1em;
    background-color: #4d4d4d;
}

.photo img {
    width: 220px;
    height: 180px;
    -o-object-fit: cover;
       object-fit: cover;
}

.day {
    font-size: 14px;
    line-height: 1.5em;
}

.title {
    line-height: normal;
}

/*--- main ---*/
#main {
    width: 100%;
}

.textbox_col1 {
    width: 960px;
    margin: 0 auto 32px;
    text-align: justify;
}

.textbox_flex {
    width: 1000px;
    text-align: justify;
    line-height: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}

.fl_item {
    flex: 0 0 300px;
    background-color: #fefbec;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 48px;
}

.itemcol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 16px;
}

.imgbox {
    margin-top: -40px;
    margin-right: 1.5em;
    margin-left: 1em;
}

.ml_none {
    margin-left: 0;
}

.itemcol h4 {
    font-size: 20px;
    color: #603813;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 500;
}

.balloon {
  position: relative;
  display: inline-block;
  margin: 0 0 1.5em;
  padding: 10px;
  min-width: 800px;
  max-width: 100%;
  color: #fff;
  font-size: 24px;
  background: #3bb58e;
  border-radius: 15px;
}

.balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #3bb58e;
}

.balloon p {
  margin: 0;
  padding: 0;
    font-weight: 700;
}

.s_lead {
    font-size: 20px;
}

.lead {
    font-size: 32px;
    margin-bottom: 32px;
    line-height: 1em;
}

.infosummary {
    width: 100%;
    margin-bottom: 48px;
}

.fl_item2col {
    width: 928px;
    margin: 0 auto;
    padding: 40px 0;
    text-align: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.fl_rev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.textcol {
    width: 52%;
    line-height: 1.5em;
}

.textcol_inner {
    width: 280px;
    margin: 0 auto;
}

.dl_btn {
    display: inline-block;
    width: 280px;
    height: 48px;
    text-align: center;
    background-color: #f8d1d7;
}

.dl_btn::before,
.dl_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.dl_btn,
.dl_btn::before,
.dl_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.dl_btn a {
    padding: 12px;
}

.dl_btn a:hover {
    background-color: #eb788b;
    color: #fff;
    opacity: 10;
}

.ind_1 {
    padding-left: 1.4em;
    text-indent: -.65em;
}

.ind_2 {
    padding-left: 1em;
    text-indent: -1em;
}

.bull {
    font-size: 14px;
    margin-right: .5em;
    color: #f095a5;
}

.photocol{
    width: 42%;
}

.photocol img {
    width: 100%;
    height: 280px;
}

.obfit-img {
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.summ_caption {
    font-size: 14px;
    text-align: center;
}

/* faq */
.faq {
    width: 960px;
    text-align: justify;
    line-height: 1.5em;
    margin: 0 auto;
    border-bottom: 1px solid #603813;
}

.q {
    position: relative;
    padding: 16px 8px;
    border-top: 1px solid #603813;
    cursor: pointer    
}

.q::after {
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid #603813;
    border-right: 1px solid #603813;
    transform: translate(0, -50%) rotate(135deg);
    transform-origin: center;
}

.q.active::after {
    transform: translate(0, -50%) rotate(-45deg);
}

.q p::before {
    content: "Q";
    font-size: 1.75em;
    font-family: 'Kosugi', sans-serif;
    color: #603813;
    margin: 0 24px;
    vertical-align: text-bottom;
}

.a {
    display: none;
    margin: 0 0 24px;
    padding: 8px;
}

.a.active {
    display: block;
}

.a p {
    margin-left: 3.9em;
    text-indent: -3.9em;
    margin-right: 30px
}
.a p::before {
    content: "A";
    font-size: 1.75em;
    font-family: 'Kosugi', sans-serif;
    color: #998675;
    margin: 0 24px;
    vertical-align: text-bottom;
}

/* ここまで */

.in_textbox {
    width: 800px;
    margin: 0 auto;
}

.aline_l {
    text-align: justify;
}

.textbox_flex2 {
    width: 1000px;
    text-align: justify;
    line-height: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}
.fl_item2 {
    flex: 0 0 320px;
    background-color: #fefbec;
    border-radius: 10px;
    padding: 24px;
    margin-bottom: 40px;
    -webkit-box-flex: 0 0 320px;
    -ms-flex: 0 0 320px;
    flex: 0 0 320px;
}

.ser_icon {
    text-align: center;
    margin-bottom: 1em;
}

.fl_item2 h4 {
    text-align: center;
    margin-bottom: 1em;
    color: #4d4d4d;
}

.link_textbox {
    width: 40%;
    margin: 0 auto 3.5em;
    text-align: left;
    line-height: 3em;
}

.link_textbox li {
    list-style: none;
}

.link_textbox a {
    display: inline-block;
}
.link_textbox a:hover {
    color: #e75a72;
}
.link_textbox a:visited {
    color: #8b008b;
}

/*--- footer ---*/
#footer {
    width: 100%;
    background-color: #f8d1d7;
}

#footer_nav {
    width: 100%;
    overflow: hidden;
    padding: 1.5em 0;
    border-bottom: 1px solid #fff;
}

#footer_nav ul {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#footer_nav ul li {
    border-right: 1px solid #603813;
    line-height: 1em;
}

#footer_nav ul li:last-child {
    border-right: 0;
}

#footer_nav ul li a {
    display: inline-block;
    color: #603813;
    font-size: 12px;
    padding: 0 1em;
    line-height: normal;
}

.foot_info {
    width: 80%;
    margin: 0 auto;
    padding: 32px 0;
    color: #603813;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.f_infobox {
    font-size: 14px;
    line-height: 1.5em;
    margin: 0 35px;
}

.fs_nomal {
    font-size: 16px;
}
.fs_st {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2em;
}

.foot_contactbtn {
    width: 184px;
    /*height: 32px;*/
    background-color: #603813;
    border-radius: 5px;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-align: center;
}

.foot_contactbtn a {
    display: inline-block;
    color: #fff;
    padding: 6px 36px;
    /*font-size: 14px;*/
}

.to_form2 {
    /*font-size: 24px;*/
    margin-right: 1em;
    /*padding-top: 2px;*/
}

.foot_contactbtn span {
    margin-top: -1px;
}

.copy {
    background-color: #eb788b;
    color: #fff;
    font-size: 14px;
    padding: 8px 0;
}

/*--- contact --*/
.contact_wrap {
    max-width: 100%;
    height: auto;
    overflow: hidden;
}
.contact_inner {
    width: 100%;
    max-width: 960px;
    height: auto;
    overflow: hidden;
    margin: 0 auto;
    text-align: center;
    padding-top: 64px;
}

.container_800{
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    padding: 64px 0;
}

.mailform p{
    width: 100%;
    text-align: center;
    font-size: 12px;
    margin-bottom: 24px;
}

input[type="text"],
textarea{
    border: solid 0.5px #dfdfdf;
    -webkit-border-radius: 5px;
       -moz-border-radius: 5px;
            border-radius: 5px;
    width: 480px !important;
    height: 35px;
    padding: 5px 10px;
    -webkit-box-shadow: 1px 1px 1px 1px #f8f9fa inset;
       -moz-box-shadow: 1px 1px 1px 1px #f8f9fa inset;
            box-shadow: 1px 1px 1px 1px #f8f9fa inset;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

textarea{
    height: 200px;
}

.mailform{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    /*display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;*/
    max-width: 665px;
    width: 100%;
    margin: 0 auto;
    font-size: 14px;
    overflow: hidden;
}

.mailform dt{
    width: 170px;
    height: 35px;
    float: left;
    clear: both;
    background: #fefbec;
    -webkit-border-radius: 5px;
       -moz-border-radius: 5px;
            border-radius: 5px;
    padding: 4px 12px;
    margin-right: 12px;
    margin-bottom: 20px;
}

.mailform dd{
    width: 100%;
    max-width: 480px;
    float: left;
    margin-bottom: 20px;
}

.mailform span{
    color: #E4007F;
}

input[type="radio"]{
    margin-left: 25px;
}

input[type="radio"]:first-child{
    margin: 0;
}

.submit{
    display: block;
    text-align: center;
    margin: 65px auto;
    font-size: 16px;
    width: 260px;
    height: 45px;
    background: #3bb58e;
    -webkit-border-radius: 20px;
       -moz-border-radius: 20px;
            border-radius: 20px;
    line-height: 45px;
    color: #fff;
}

input[type="submit"]{
    border-style: none;
    width: 100%;
    height: 100%;
    display: block;
    padding: 0 60px;
}

.submit:hover{
    opacity: 0.7;
}

.thanks{
    text-align: center;
    font-size: 18px;
    margin: 15vh 0;
}

.thanks_ttl {
    margin-bottom: 80px;
}