@media screen and (min-width: 768px) {

    .sp, .pc2, .txt_cl_sp, .sp4, .sp5 {
        display: none;
        visibility: hidden;
    }

    .sp4_a {
        font-weight: normal;
    }

    #main-inner.sp {
        display: none;
    }

    .font, #sub-innerB h2.font {
        font-family: 'Times New Roman', '游明朝', 'YuMincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", 'HG明朝B', serif;
    }

    #sub-Contents .eqeList01 li p.h25 {
        height: 25px;
    }


    #sub-Contents .eqeList_flex_list .eqeList_flex_item {
        display: flex; flex-wrap: wrap; 
    }

    #sub-Contents .eqeList_flex_list  .eqeList_flex_item li {
        width: 50%;
        box-sizing: border-box;
    }

}

@media screen and (max-width: 768px) {
	#festival #second.second_bg {
		padding-top: 10px;
	}
	
	
    * {
        box-sizing: border-box;
    }

    #sub-Contents .eqeList01 li p.h25 {
        height: 25px;
    }
    .sp4_a {
        font-weight: normal;
    }


    .pc,.sp2, .txt_cl_sp, .sp5 {
        display: none;
        visibility: hidden;
    }

    .sp {
        display: block;
        visibility: visible;
    }


    body {
        min-width: 100% !important;
        width: 100%;
		color: #5d443e;
		/*overflow-x: hidden;*/
    }
	#wrapper_cover:after {
    width: 100%;
}

    .w-100 {
        width: 100%;
    }
	p {
  		margin-bottom: 1em;
}

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

    .center {
        text-align: center;
    }

    a {
        color: inherit;
    }
	.mb20_sp {
		margin-bottom: 20px!important;
	}
	#wrapper_cover {
		
		width: 100%;
		min-width: 100%;
	}
    #header, .alle, .w960, .wrapper_top_feature, .top_feature, #news_box, #wrapper_top, .syustyou, .text_info, .main_footer, #top_btn2, #toppage #mainvisual .slider-nav , .slick-track{
        width: 100%;
        /* overflow: hidden; */
    }
	#toppage #header_cover {
		position: fixed;
		width: 100%;
  		height: 80px;
		background: url("../images/bg_top_sp.jpg") top center repeat-x;
		background-size: 100%;
		margin-bottom: 50px;
		z-index: 9999;
	}
    #header {
        position: relative;
        width: 100%;
        top: 0;
        left: 0;
		background: none;
		height: auto;
    margin: 0;
    }
#logo {
  width: 150px;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}


    #main {
        position: relative;
        margin-top: 92px;
        width: 100%;
        height: 425px;
        background: url(../images/mainbg.jpg) bottom center repeat-x;
    }



    #wrapper{
        width: 100%;
    }
	
	
	

    /* footer sp */
	.bnr-ft p a {
  font-size: 14px;
}
	.bnr-ft p:last-child {
  background: url(../images/imtaram01.png) #d8cecc no-repeat center;
  background-position-y: 14px;
  background-position-x: 25px;
  background-size: 50px;
  position: relative;
		max-width: 300px;
}
	
	#footer_wrapper {
  padding: 10px 5px 10px;
		margin: 0 0px 50px;
	}
	#footer_sitemap {
		display: none;
	}
	img.f-logo1 {
  width: 200px;
  height: auto;
}
	.footer01 {
  display: block;
		margin-top: 0;
}
	.txt_add {
		text-align: left;
		margin-top: 20px;
	}
	#footer_wrapper p {
		margin: 15px auto;
	}
.footer02 {
  display: block;
}
	.footer02 dl {
  width: 100%;
}
	.footer02 iframe {
  width: 100%;
  height: 300px;
}
	.footer02 dl dt {
  margin-bottom: 20px;
}
	.map_sp {
  padding: 0 10px;
  margin: 0 auto 20px;
  max-width: 320px;
}
	.main_footer {
  max-width: 100%;
		padding: 10px 10px 47px;
}
	.copyright {
  color: #333;
}
	#page-top {
  		width: 45px;
		bottom: 50px;
  		right: 10px;
}
.foot_fixed_manu {
  width: 100%;
  position: fixed;
  bottom: 0;
  background: rgba(255, 255, 255, 0.6);
	z-index: 99999998;
}
	.foot_fixed_manu ul {
  max-width: 375px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 5px 0px;
		display: flex;
		justify-content: center;
}
	.foot_fixed_manu ul li:first-child {
  margin-left: 0;
}
.foot_fixed_manu ul li {
  width: 33%;
  margin-left: 0.5%;
}
	#page-top a {
  display: block;
}
    /* sp_menu */
	#toppage .header02_02 {
		padding: 17px 3px 0 0;
		display: flex;
		justify-content: flex-end;
	}
	.header02_02 {
		padding: 12px 3px 0 0;
		display: flex;
		justify-content: flex-end;
	}
    .header02_02  p.spIcon {
        /* width: 50px; */
		
       margin-left: 4px;
	  padding: 0;
	  z-index: 99;
		width: 97px;
    }

    .menulist {
        position: absolute;
        z-index: 10;
        width: 100%;
        max-height: calc(90vh - 75px);
        overflow-y: scroll;
        top: 57px;
    }
	#toppage .menulist {
        top: 62px;
    }

    .menulist .spMenu {
        display: none;
        background: rgba(252, 247, 241, 0.9);
		border-top: 2px solid #a48b17;
  border-bottom: 2px solid #a48b17;
    }
	.menulist .spMenu ul {
		display: flex;
		flex-wrap: wrap;
		border-bottom: 1px dotted #a48b17;
	}
	.menulist .spMenu .close {
		text-align: center;
		padding: 10px 6px;
		margin-bottom: 0;
	}
    .menulist .spMenu ul.clearfix li,
    .menulist .spMenu ul.clearfix li {
        border-bottom: 1px dotted #a48b17;
        position: relative;
		width: 50%;
    }
	.menulist .spMenu ul.clearfix li:nth-of-type(2n+1) {
  border-right: 1px dotted #a48b17;
}

    .menulist .spMenu ul.clearfix li:last-child{
       border-bottom: 0;
        position: relative;
    }

    .menulist .spMenu ul li.contact {
         padding: 15px 0;
     }

     .menulist .spMenu ul li a {
         color: #333;
    }

     .menulist .spMenu ul.clearfix li > div {
        margin: 0;
        width: 100%;
        display: flex;
        position: relative;
        top: 0;
        justify-content: space-between;
        align-items: center;
    }

    .menulist .spMenu ul.clearfix li > div p {
      width: 100%;
      position: absolute;
      top: 0;
      right: 15px;
      text-align: right;
    }

    .menulist .spMenu ul.clearfix li > div span {
       display: inline-block;
    }

    .menulist .spMenu ul.clearfix li > div a {

        display: inline-block;
     }

    .menulist .spMenu ul > li a {
        display: block;
        padding: 10px 15px;
		text-decoration: none;
    }



    .menulist .spMenu ul.clearfix li .spMenu_sub ul li,
    .menulist .spMenu ul.clearfix li .spMenu_sub2 ul li {
        /* border-top: 1px dotted #fff; */
        border-bottom: none;
    }

    .spMenu ul .spIcon_sub
     {
        position: absolute; 
        top:30px; 
        right:0; 
        height: 40px; 
        width: 40px; 
        text-align: center; 
        line-height: 40px;
    }

    .menulist .spMenu_sub {
        background-color: #fff;
    }

    .spIcon_sub span {
        display: block;
        top: 17px;
        left: 0;
        right: 0;
        width: 14px;
        height: 2px;
        margin: 0 auto;
        background-color: #1F96D8;
        position: relative;
        -webkit-transition-duration: 0;
        -moz-transition-duration: 0;
        -ms-transition-duration: 0;
        -o-transition-duration: 0;
        border-radius: 0;
        transition-duration: 0;
        -webkit-transition-delay: 0.2s;
        -moz-transition-delay: 0.2s;
        -ms-transition-delay: 0.2s;
        -o-transition-delay: 0.2s;
        transition-delay: 0.2s;
    }

    .spIcon_sub span::before {
        display: block;
        content: '';
        position: absolute;
        width: 2px;
        height: 14px;
        top: -6px;
        left: 6px;
        background-color: #1F96D8;
        -webkit-transition-property: margin, -webkit-transform;
        -webkit-transition-duration: 0.2s;
        -moz-transition-duration: 0.2s;
        -ms-transition-duration: 0.2s;
        -o-transition-duration: 0.2s;
        border-radius: 0;
        transition-duration: 0.2s;
        -webkit-transition-delay: 0.2s, 0;
        -moz-transition-delay: 0.2s, 0;
        -ms-transition-delay: 0.2s, 0;
        -o-transition-delay: 0.2s, 0;
        transition-delay: 0.2s, 0;
    }

    .spIcon_sub.active span::before {
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        border-radius: 0;
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
    }

    .spIcon span::before {
        margin-top: -8px;
        border-radius: 0;
    }

 
   

    .spIcon span {
        display: block;
        top: -11px;
        left: 0;
        right: 0;
        width: 30px;
        height: 3px;
        margin: 0 auto;
        background-color: #000;
        position: relative;
        -webkit-transition-duration: 0;
        -moz-transition-duration: 0;
        -ms-transition-duration: 0;
        -o-transition-duration: 0;
        border-radius: 0;
        transition-duration: 0;
        -webkit-transition-delay: 0.2s;
        -moz-transition-delay: 0.2s;
        -ms-transition-delay: 0.2s;
        -o-transition-delay: 0.2s;
        transition-delay: 0.2s;
    }

    .spIcon span::after,
    .spIcon span::before {
        display: block;
        content: '';
        position: absolute;
        width: 30px;
        height: 3px;
        background-color: #000;
        -webkit-transition-property: margin, -webkit-transform;
        -webkit-transition-duration: 0.2s;
        -moz-transition-duration: 0.2s;
        -ms-transition-duration: 0.2s;
        -o-transition-duration: 0.2s;
        border-radius: 0;
        transition-duration: 0.2s;
        -webkit-transition-delay: 0.2s, 0;
        -moz-transition-delay: 0.2s, 0;
        -ms-transition-delay: 0.2s, 0;
        -o-transition-delay: 0.2s, 0;
        transition-delay: 0.2s, 0;
    }

    .spIcon span::before {
        margin-top: -8px;
        border-radius: 0;
    }

    .spIcon span::after {
        margin-top: 8px;
        border-radius: 0;
    }

    .spIcon.active span {
        background-color: transparent;
    }

    .spIcon.active span::before,
    .spIcon.active span::after {
        margin-top: 0px;
        -webkit-transition-delay: 0, 0.2s;
        -moz-transition-delay: 0, 0.2s;
        -ms-transition-delay: 0, 0.2s;
        border-radius: 0;
        -o-transition-delay: 0, 0.2s;
        transition-delay: 0, 0.2s;
    }

    .spIcon.active span::before {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        border-radius: 0;
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .spIcon.active span::after {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        border-radius: 0;
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

  

    /* sp_menu */
    #sub {
        padding-top: 92px;
        width: 100%;
        background: url(../images/subbg_sp.jpg) top center repeat-x;
        position: relative;
    }

    #sub-inner{
        width: 100%;
        display: flex;
        align-items: center;
        /* justify-content: center; */
        padding: 0 15px;
        color: #fff;
        font-size: 36px;
    }

    #sub-innerB h2  {
        width: 100%;
        font-size: 18px;
        padding-left: 15px;
    }

    #sub-inner h2 {
        transform: translateY(-50%);
        line-height: 1.2;
    }

    #sub-wrapper-inner {
        width: 100%;
        padding: 15px;
    }

    #sub-Contents {
        width: 100%;
        float: left;
    }

   

    div.sub_h3 {
        height: 50px;
    }

    li.contact p {
        width: 80vw;
        margin: 0 auto;
        margin-bottom: 15px;
        
    }

    li.contact p a {
         padding: 15px;
    }

    li.contact a {
        background-color: #fefbfd;
        border: 1px solid #1F96D8;
        border-radius: 5px;
    } 

  

    li.contact a {
        display: block;
        width: 100%;
        text-decoration: none;
        color: #fff;
        text-align: center;
        border-radius: 10px;
        font-weight: bold;
        padding: 15px 0 15px;
        box-shadow: 0px 4px 0 0 rgb(223 218 196);
        box-sizing: border-box;
    } 

    
    li.contact p:nth-child(3) a {
        background-color: #71ab30;
        color: #fff;
        border: 0;
    } 

    li.contact p:last-child a {
        background-color: #ffa90e;
        color: #fff;
        border: 0;
    } 

    li.contact span {
        color: #fff;
        width: 30%;
    }

    li.contact span {
        font-size: 24px;
        /* font-weight: bold; */
        /* position: relative; */
    }

    li.contact span small{
        font-size: 14px;
    }

    
	#news_box {
		height: auto;
	}
#facebook {
  width: 360px;
  float: none;
  margin-right: 10px;
}
#news_box .left {
  width: 100%;
  height: auto;
  float: none;
}
	
	#toppage #mainvisual {
		padding-top: 130px;
		height: auto;
		position: relative;
	}
	#toppage #mainvisual .slider-nav .slick-list {
		display: none;
	}
	#toppage #mainvisual .slick-slider {
		position:unset;
	}
	#toppage #mainvisual .slider-nav .slick-prev, #toppage #mainvisual .slider-nav .slick-next{
		opacity: 1;
		margin: 0;
		top: calc(50% + 40px);
		z-index: 8888;
	}

	#top_btn2 ul {
		width: 100%;
	}
	#top_btn2 ul li {
  float: none;
  margin-right: 0;
  margin-left: 0;
  width: 100%;
  margin-bottom: 15px;
		text-align: center;
}
	#top_btn2 a {
  text-align: left;
  color: #5d443e;
  text-decoration: underline;
	}
    #top_btn2 a img{
      width: 100%
	}
	.gnavi_sp {
  position: relative;
  height: calc(100vw * 90 / 640);
  background: url("../images/bg_navi.png") center no-repeat;
    background-size: auto;
  background-size: contain;
}
.gnavi_sp li {
  float: left;
  margin: 0;
  padding: 0;
  width: 20%;
}
	.sub_menu {
  position: absolute;
  background: rgba(252, 247, 241, 0.9);
  width: 100%;
  left: 0;
  right: 0;
  margin: auto;
  display: none;
  z-index: 1;
}
	.sub_menu li {
  display: block;
  width: 100%;
  text-align: left;
  border-bottom: 1px dashed #a48b17;
}
	.sub_menu li:nth-child(1) {
  border-top: 1px solid #a48b17;
}
	.sub_menu li:nth-child(6) {
  border-bottom: 1px solid #a48b17;
}
	.sub_menu a {
  color: #333;
  padding: 15px 15px 14px;
  display: block;
  text-decoration: none;
		font-size: 14px;
}
	.bnr_line_sp {
		text-align: center;
		width: 115px;
		height: auto;
		margin: 20px auto 0;
	}

	h3.top_feature_title2 span, h2.top_feature_title2 span {
		background: url(../images/title_icon01.png) no-repeat left center, url(../images/title_icon01.png) no-repeat right center;
		padding: 30px 50px;
  display: inline;
}
	h3.top_feature_title2, h2.top_feature_title2 {
		
  text-align: center;
  font-size: 18px;
  font-weight: 700;
		min-height: 32px;
}
	h3.top_feature_title2::after, h2.top_feature_title2::after {
		position: relative;
	}
	.top_feature {
  box-sizing: border-box;
  margin: 20px 0;
  padding: 0 10px;
}
	#tiny {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
  overflow: auto;
		border-bottom: 1px solid #837760;
}
	#toppage h3.title2, #toppage h4.title2 {
  background: url(../images/h3_title2.png) right center no-repeat;
		padding: 0;
		margin-bottom: 10px;
}
	#toppage h3.title2 span, #toppage h4.title2 span {
		background: #fff;
		padding-right: 5px;
		font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
	}
	#tiny table tr:nth-child(n+3) {
  display: none;
}
	#tiny table tr th, #tiny table tr td {
  display: block;
  text-align: left;
		padding: 0 5px 10px;
		  font-size: 13px;
}
	table {
		color: #5d443e;
		line-height: 1.6;
	}
	#toppage #facebook {
  width: 300px;
  margin: 0 auto;
		padding: 0;
}
	#facebook iframe {
  margin-top: 20px;
		width: 100%!important;
}
#right02 {
  padding: 0;
	margin-top: 0px;
}
	.top_greeting_wrap {
  padding: 15px 0px 35px;
}
		h4.h4 {
		background: url(../images/h4_icon01.png) no-repeat top left ;
  font-size: 14px;
		line-height: 28px;
		text-decoration-line: underline;
  text-decoration-style: double;
		
	}
    h5.h5_s1, h4.h5_s1 {
      background: url(../images/h4_icon01.png) no-repeat top left;
      font-size: 14px;
      line-height: 28px;
      text-decoration-line: underline;
      text-decoration-style: double;
    }
	/*============UNDER================*/
	#header_cover {
		position: fixed;
		width: 100%;
  		height: 70px;
		background: url("../images/bg_top_sp.jpg") top center repeat-x;
		background-size: 100%;
		margin-bottom: 0px;
		z-index: 99999999;
	}
	  #header #logo h1 {
    width: 60px;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
		  margin: 7px 8px 8px 8px;
  }
	.menu_btn2_2 {
		float: right;
  width: 97px;
	}
	.box_gnavi_sp {
		padding-top: 70px;
	}
	#outer_topImage {
		width: 100%;
		height: auto;
		padding: 10px;
		margin-bottom: 5px;
	}
	#topImage {
		width: 100%;
		height: auto;
		padding: 0;
	}
	#wrapper_top {
		padding: 0 10px;
	}
	.topic_path {
  height: auto;
		font-size: 14px;
		margin-bottom: 20px;
}
	.topic_path a {
		  text-decoration: none;
		  border-bottom: 1px #513d14 solid;
		  display:inline;
		line-height: 1.8;
}
	#m-col {
  width: 100%!important;
  float: none;
}
	#s-col {
		display: none;
	}
	h3.h3, h3.title2.bg01, h3.h3_shrine {
		width: 100%;
		font-size: 20px;
		background: url(../images/h3_01_concept_sp.png) 0 center no-repeat, url(../images/h3_02_concept_sp.png) right center no-repeat, url(../images/h3_03_concept_sp.png) left bottom repeat-x!important;
  padding: 10px 60px 10px 45px;
		line-height: 20px;
	}
	h3.title2.bg01 span {
  font-size: 14px;
  font-style: normal;
  text-shadow: 0px 0px 0px #fff;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  font-weight: 700;
		color: #5d443e;
		padding-right: 0;
}
	#access01 {
  width: 100%;
  height: auto;
  background: #ede7d7;
  padding: 10px;
  margin-top: 10px;
}
	#access_ttl {
  width: 100%;
  height: auto;
  position: unset;
		text-align: center;
		margin-bottom: 25px;
}
	#access_t {
  width: 100%;
  position: unset;
}
	#access_t table {
  width: 100%;
  border: none;
}
	#access_t table th, #access_t table td {
		display: block;
		width: 100%;
	}
	#access_t table th{
		border-bottom: 1px dashed #ad9974;
	}
#access01 table {
  border-top: 1px solid #ad9974;
	border-right: 1px solid #ad9974;
	border-left: 1px solid #ad9974;
}
	#access01 table td {
		border-bottom: 1px solid #ad9974;
  font-weight: 400;
  background-color: #ede7d7;
  text-align: left;
  padding: 14px;
}
	#access02 {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0 auto;
		text-align: center;
}
	#access03 {
  width: 261px;
  position: unset;
		text-align: center;
		margin: 0 auto 1em;
}
	.access_text {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
	.w600, .acpk {
  width: 100% !important;
}
	h3.h3_none, h4.h4_none{
		font-size: 18px;
		padding: 10px 75px 10px 0;
		line-height: 20px;
	}

	h3.h3_none::after, h4.h4_none::after {
  		right: 0;
		top: calc(50% - 20px);
}
	.faq_link {
		width: 100%;
		margin: 0 auto 0px;
	}
	ul.faq_link_list {
  display: block;
  margin: 0 auto;
    margin-bottom: 0px;
  padding: 0;
  max-width: 320px;
}
	ul.faq_link_list li {
  float: left;
  margin: 0;
  padding: 0;
  width: 50%;
}
	ul.faq_link_list li a {
  display: inline-block;
  margin: 0 3px 1px;
}
	.faq_outer {
  width: 100%;
		background: #ede7d7;
  padding: 10px;
  border: 1px solid #6c4f38;
  max-width: 520px;
  margin: 0 auto 20px;
}

	dl.accordion {
  width: 100%;
  margin: 0 auto;
}
	dl.accordion dt {
  background: url(../images/faq_sp_bg01.png) 0 0 no-repeat, url(../images/faq_sp_bg02.png) 0 100% repeat-x;
  padding: 0 0 2px 80px;
  width: 100%;
  max-width: 460px;
  font-weight: 700;
  margin-bottom: 15px;
}
	dl.accordion dt span.sp {
  padding: 0;
}
	
	#flow_bg {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0 auto 20px;
  background: none;
}
	#flow01, #flow02a, #flow02, #flow03a, #flow03, #flow04, #flow05, #flow06 {
  width: 100%;
  height: auto;
  position: unset;
		
}
	#flow01, #flow02, #flow03, #flow04, #flow05, #flow06 {
		margin-bottom: 30px;
	}
	#flow_bg .img {
		text-align: center;
	}
	.tit01 {
		margin-bottom: 15px;
	}
	.mb40_sp {
		margin-bottom: 40px;
	}
	#anc_block {
  background: #fbf8f1;
  width: 100%;
  height: auto;  
  border: 2px solid #a08710;
  padding: 10px;
  margin: 10px auto 30px;
}
.anc_txt {
  padding: 0;
  margin-bottom: 30px;
}
	#anc_block .img1, #anc_block .img2, #anc_block .img3, #anc_block .img4, #anc_block .img5 {
  float: none;
  margin: 0 0 20px 0;
		text-align: center;
}
	.h4_note2 {
  line-height: inherit;
  background: #fdf4e1;
  border: 2px solid #c5ccc2;
  color: #502624;
  padding: 10px;
}
	.h4_note3 {
		line-height: inherit;
  background: #fefcee;
  border: 2px solid #cfc2a7;
		color: #502624;
  padding: 10px;
}
	.h4_note4 {
		line-height: inherit;
  background: #f6dfb0;
  border: 2px solid #d4d4d4;
		color: #502624;
  padding: 10px;
}
	.h4_note5 {
	  line-height: inherit;
	  background: #dcccb2;
  border: 2px solid #b3a48d;
	  color: #502624;
  	  padding: 10px;
}
	.h4_note6 {
		line-height: inherit;
  background: #efe1ca;
  border: 2px solid #c7ae72;
		color: #502624;
  	  padding: 10px;
}
	.flex-control-thumbs {
		display: none;
	}
	/*#gallery .flexslider {
		margin: 0!important;
	}*/
	#gallery .flex-viewport {
		padding: 0!important;
	}
	 #gallery .flex-direction-nav .flex-prev, #gallery .flex-direction-nav .flex-next {
		 top: 50%;
  }
	#gallery .flexslider .flex-prev {
  left: -10px;
}
	#gallery .flexslider:hover .flex-prev {
  left: 8px;
}
	#gallery .flexslider .flex-next {
  right: -10px;
}
	#gallery .flexslider:hover .flex-next {
  right: 8px;
}
	#gallery .text_area {
  overflow: hidden;
  margin: 15px auto 15px!important;
}
	.box720, #concept01, #concept_text {
  		width: 100%;
		float: none;
}
	.box720 {
		margin-bottom: 0!important;
	}
	.box720 .right {
		text-align: center;
	}
	#concept01 {
		background: none;
		padding: 0;
	}
	.box_rank_rev {
		margin-top: 0;
	}
	.box_rank_rev .gr_rr01, .box_rank_rev .gr_rr02 {
  width: 100%;
  float: none;
  box-sizing: border-box;
}
	.list_ct01 dl {
  width: 100%;
  margin-bottom: 30px;
}
	.about_txt01 {
  padding: 10px;
  margin: 20px auto;
  border: 1px solid #DAB30C;
  max-width: 320px;
		font-size: 14px;
}
	#concept02 {
		width: 100%;
		background-size: 100%;
  padding: 20px;
  margin-top: -1.5rem;
		max-width: 720px;
}
.contact03-in {
	width: 100%;
	}
	.concept03 {
  width: 100%;
  height: auto;
		float: none;
}
	.img_center {
		text-align: center;
	}
	#concept04 {
  width: 100%;
  height: auto;
  margin: 0 auto 10px;
  position: relative;
  background: none;
}
	#concept04_01 {
  width: 100%;
    height: 32px;
    margin: 0 auto;
    position: relative;
    top: inherit;
    left: inherit;
    text-align: center;
}
	#concept04_02, #concept04_03, #concept04_04, #concept04_05 {
  width: 100%;
  height: auto;
  margin: 0 auto;
  position: relative;
    top: inherit;
    left: inherit;
}
	.concept04_ct {
		border: 1px solid #80725c;
		background: #f0e2c9;
		text-align: center;
	}
	.concept04_ct ul {
		padding: 10px;
	}
	.concept04_ct ul:first-child{
		border-bottom: 2px dashed #9b8e75;
	}
	.concept04_ct ul li#concept04_02, .concept04_ct ul li#concept04_03{
		margin-bottom: 10px;
	}
	#syustyou_03_bg, .syustyou_03, #syustyou_04_bg, .syustyou_04 {
  background: none;
  height: auto;
  margin: 0 auto;
  width: 100%;
}
	#syustyou_03_bg {
		border: 1px solid #80725c;
    background: #f0e2c9;
    text-align: center;
	}
	
	.page_about .syustyou_04 {
		border: 1px solid #80725c;
    background: #f0e2c9;
		padding: 10px;
	}
	.syustyou_04 {
		padding: 10px;
	}
	 .page_about .spot_inner01 {
    background-size: 100%;
		 padding: 0 0px 5px;
  }
	  .page_about #syustyou_04_bg {
    padding: 20px 15px 10px;
  }
	.spot_inner01 {
  background-size: 100%;
}
	.syustyou_03 {
		padding: 20px 10px 10px;
	}
	#syustyou_04_bg {
		padding: 20px 15px 10px;
	}
	#syustyou_03_bg h5, #syustyou_04_bg h5 {
  line-height: 1.4;
}
	.spot_inner {
  background-size: contain;
		padding: 0 15px 5px;
}
	.spot_list li {
  position: relative;
  height: auto;
  width: 100%;
		float: none!important;
	}
	.page_about  .spot_content {
    background-size: contain;
    padding-bottom: 4px;
  }
	.spot_content {
		background-size: contain;
		padding-bottom: 3px;
	}
	.h4_price33 {
		background: #e8dcae;
  border: 2px solid #a99565;
  text-align: left;
		padding: 10px 10px 10px 20px;
		color: #7f5366;
		line-height: inherit;
    font-size: 20px;
		margin: 0 0 20px 0!important;
	}
	.ttl_yt {
		margin-bottom: 1em;
	}
	#price_block2 {
  width: 100%;
  height: auto;
  background: #e5c588;
  padding: 10px;
  margin: 15px auto;
}
	#price_block2 h4 {
  background: #fcf4d9;
  border: 3px solid #767166 !important;
  padding: 5px;
  margin: 0 0 15px!important;
  font-size: 20px;
  text-align: center;
		transform: rotate(0deg);
  letter-spacing: 0;
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
	#price_block2 p {
	  width: 100%;
	  background: #fdfaf3;
	  border: 1px solid #797979;
	  padding: 10px;
	  margin: 0;
}
	.mb_sp {
		margin-bottom: 1em!important;
	}
	#menu02-01 {
  width: 100%;
  height: auto;
  margin: 0 auto 30px;
  position: relative;
  background: #ede9df;
		border: 5px solid #c4ae8a;
		padding: 10px;
}
	#menu02-01_01, #menu02-01_02, #menu02-01_03, #menu02-01_04 {
  width: 100%;
  height: auto;
  position: unset;
}
	#menu02-01_01 {
		color: #2f0e02;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  margin: 10px auto 15px;
}
	#menu02-01_02 {
		text-align: center;
		font-size: 16px;
		font-weight: 700;
}
	#menu02-01_04 {
		text-align: center;
}
	.baby_page .slick-dots li button {
		display: none;
	}
	.baby_page .slick-prev, .baby_page .slick-next {
		opacity: 1;
	}
	.baby_page .slick-prev:hover, .baby_page .slick-next:hover {
		opacity: 0.8;
	}
	#price_block1 .innner {
  width: 100%;
  height: auto;
  padding: 15px 0px 10px;
  background: none;
}
	.grp_02 {
  width: 100%;
}
	.bg_box {
		padding: 5px;
		background: none;
	}
	.text_box {
  padding: 0;
}
	.box_brn01 p, .box_brn02 p {
  font-size: 14px;
}
	#menu02-06 {
		width: 100%;
  height: auto;
  background: #e5d6b5;
  border: 1px solid #726159;
  padding: 10px;
}
	#menu02-06_01, #menu02-06_02, #menu02-06_03, #menu02-06_04, #menu02-07_01, #menu02-07_02, #menu02-07_03, #menu02-08_01,#menu02-08_02 {
  width: 100%;
  height: auto;
  position: unset;
}
	#menu02-06_01 {
  font-size: 16px;
  text-align: center;
  font-weight: 700;
  color: #7f5366;
}
	#menu02-07 {
  width: 100%;
  height: auto;
  position: relative;
  border: 3px solid #885f21;
  padding: 10px;
  margin: 15px auto;
  background: #f2ead5;
}
	.menu02_24_tit {
  color: #7b5f68;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  border-top: 2px dashed #c30741;
  margin: 10px auto;
  padding: 8px 5px;
	    background: -webkit-gradient(radial, 49% 50%, 0, 49% 50%, 122, color-stop(1.00, #fbf8f1), color-stop(0.00, #d5d6ce));
    background: -webkit-radial-gradient(49% 50%, circle, #d5d6ce, #fbf8f1);
    background: -moz-radial-gradient(49% 50%, circle, #d5d6ce, #fbf8f1);
    background: -o-radial-gradient(49% 50%, circle, #d5d6ce, #fbf8f1);
    background: -ms-radial-gradient(49% 50%, circle, #d5d6ce, #fbf8f1);
    background: radial-gradient(49% 50%, circle, #d5d6ce, #fbf8f1);
	}
	.menu02_25_tit, .menu02_26_tit {
  color: #7b5f68;
  font-size: 16px;
  font-weight: 700;
  text-align: left;
		background: linear-gradient(to bottom, #c1c0bb 0%, #fcf9f2 18%, #f0ede7 54%, #f7f4ed 83%, #d2d2ca 100%);
  padding: 10px;
	}
	#menu02-08 {
  width: 100%;
  height: auto;
  background: #e5d6b5;
  border: 1px solid #726159;
  padding: 10px;
}
	#menu02-08_01 {
  font-size: 16px;
  background: #efebe8;
  text-align: center;
  font-weight: 700;
  color: #7f5366;
  border: 1px solid #bcb5ad;
  padding: 10px;
  margin-top: 5px;
}
	#price_block1, .baby_page .seijin_01, .baby_page .syustyou_02, .baby_page .price_text_info, .box510 {
		width: 100%;
	}
	.baby_page .seijin_01 {
		font-size: 15px;
	}
	.syustyou_02 h4 {
		font-size: 18px;
	}
	.box_cancelpolicy {
		margin: 0 auto;
	}
	.box_cancelpolicy .tit {
  margin: 0 auto;
  line-height: 0;
  text-align: center;
  max-width: 500px;
}
	.box_cancelpolicy .inner {
		border-bottom: 6px solid #f78091;
		border-left: 6px solid #f78091;
  border-right: 6px solid #f78091;
  padding: 15px;
		max-width: 500px;
    margin: 0 auto;
		
	}
	.box_cancelpolicy .border-fix {
  border-left: 6px solid #f78091 !important;
  border-right: 6px solid #f78091 !important;
}
	.bg-price {
		padding: 10px;
	}
	.grp_02 .box_lightbox p {
		margin-bottom: 0;
	} 
	#price_block3 {
	  width: 100%;
	  height: auto;
	  background: #e5c588;
	  padding: 12px;
	  margin-bottom: 15px;
 	  box-sizing: border-box;
}
	#price_block3 p {
  width: 100%;
		max-width: 100%;
  border: 1px solid #797979;
  padding: 5px;
  margin: 0px;
		box-sizing: border-box;
		background: #fdfaf3;
}
	.menu-price_bg {
  width: 100%;
  height: auto;
  margin: 0 auto 0px;
  background: url(../images/menu_price_bg.png) repeat-y 0 0;
		background-size: contain;
}
	.box690 {
  width: 100%;
}
	.list-item01 dl {
  display: block;
  margin-bottom: 20px;
}
	.list-item01 dt, .list-item01 dd {
  display: block;
  width: 100%;
}
	.list-item01 dt {
		text-align: center;
	}
	.list-item01 dd {
		text-align: left;
		padding-left: 0px;
	}
	.list-item01 dd .txt01, .list-item01 .txt01 {
  font-size: 14px;
		text-align: left;
}
	#material_sp .list-item01 iframe {
		width: 100%;
		height: 315px;
	}
	#material_sp iframe {
		width: 100%;
		height: 315px;
	}
	.bridal_price_003 {
  width: 100%;
  height: auto;
  overflow: hidden;
  margin: 0 auto 30px;
  padding: 30px 0 0;
  background-size: 100%;
}
	.bridal_price_003_title {
  font-size: 8vw;
  padding-top: 0px;
		line-height: 1.4;
}
	.bridal_price_003_box {
		width: auto;
  margin: -10px 2.8% 0px;
  padding: 1px 0px 29px;
		background: #F1E1C0;
}
	.box001 {
  width: 90%;
  margin: 0 auto;
}
	.b-left, .b-right {
  width: 100%;
  float: none;
}
	.box001 .ttl01 {
  margin-top: 30px;
}
	.event_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
}
	.event_list li {
  box-sizing: border-box;
  font-weight: bold;
  padding: 30px 5px 30px;
  text-align: center;
  position: relative;
  width: 50%;
}
	.box03 .column {
  float: none;
  width: 100%;
  margin: 15px 5px 0 0;
  background: #fff;
  padding: 0 10px 5px;
  box-sizing: border-box;
  min-height: auto;
}
	.box03 .img01, .box03 .img02 {
  margin-bottom: 10px;
  text-align: center;
  position: relative;
}
	.box03 .column p.ttl01 .rb {
  position: absolute;
  left: 4px;
  top: 8px;
}
	.info_bridal {
  padding: 10px 8px 10px 10px;
	}
	.box005 {
  padding: 20px 15px 10px;
}
	#under .insta01 {
  width: 100%;
		padding-top: 0;
}
	.frame_spc {
  padding-top: 10%;
  background: url(../images/frame_top_01.png) center top no-repeat;
		background-size: 100%;
  margin-bottom: 20px;
}
	.frame_spc .inner {
  padding: 0 14px 20px 20px;
		background: url(../images/frame_bottom_01.png) bottom center no-repeat;
  background-size: 100%;
}
	.frame_spc .cont {
		position: relative;
  background-size: 100%;
  border: none;
		display: flex;
  flex-wrap: wrap;
}
	.img-01, .img-02, .img-03 {
  position: unset;
}
	.frame_spc .img-01, .frame_spc .img-02 {
  width: 50%;
}
	.frame_spc .img-02 {
  margin-top: 80px;
}
	.frame_spc .img-03 {
  display: none;
}
	.txt-01 {
  position: relative;
  top: 0px;
  width: 100%;
  margin-left: 0;
		margin-bottom: 20px;
}
	.box_ceremony01 {
  padding: 10px;
  margin-bottom: 20px;
		background: none;
  background-size: contain;
}
	.box_ceremony01 .cont{
		width: 100%;
	}
	.title02 {
  font-size: 18px;
}
	.item_price .colL, .item_price .colR, .box_ceremony02 .inner .item {
  width: 100%;
}
	.page_ceremony .slick-prev, .page_ceremony .slick-next {
		opacity: 1;
	}
	.page_ceremony .slick-dots {
		display: none!important;
	}
	.f_left, .f_right {
  float: none;
		text-align: center;
}
	#menu04-03 {
  width: 100%;
  height: auto;
  background: #f5dbba;
  border: 5px solid #d2b895;
  padding: 10px;
}
	#menu04-01_01, #menu04-03_01 {
		width: 100%;
  height: auto;
	 position: unset;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: #000000;
  margin: 10px auto 15px;
}
	#menu04-03_02, #menu04-03_03, #menu04-04_01, #menu04-04_02, #menu04-05_01, #menu04-05_02, #menu04-05_03, #menu04-05_04 {
  width: 100%;
  height: auto;
	 position: unset;
}
	#menu04-03_03 {
		text-align: center;
	}
	#menu04-04 {
  width: 100%;
  height: auto;
		border: 5px solid #895e20;
  background: #f4ecd8;
		padding: 10px;
		margin-top: 10px;
		
}
	#menu04-04_01 {
  background: -webkit-gradient(radial, 49% 50%, 0, 49% 50%, 122, color-stop(1.00, #fcf9f3), color-stop(0.00, #cfcec7));
  background: -webkit-radial-gradient(49% 50%, circle, #cfcec7, #fcf9f3);
  background: -moz-radial-gradient(49% 50%, circle, #cfcec7, #fcf9f3);
  background: -o-radial-gradient(49% 50%, circle, #cfcec7, #fcf9f3);
  background: -ms-radial-gradient(49% 50%, circle, #cfcec7, #fcf9f3);
  background: radial-gradient(49% 50%, circle, #cfcec7, #fcf9f3);
  text-align: center;
  padding: 10px;
  font-weight: 700;
  font-size: 16px;
  border-top: 2px dashed #c30842;
}
	#menu04-05 {
  width: 100%;
  height: auto;
  background: #e9ddc7;
  border: 5px solid #ccb493;
  padding: 10px;
}
	#menu04-05_01 {
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  margin: 10px auto 15px;
  color: #7f5366;
		line-height: 2em;
}
	#menu04-05_04 {
		text-align: center;
	}
	.box_cancelpolicy {
		width: 100%;
		margin-top: 0!important;
		
	}
	.page_menu .box_cancelpolicy {
		padding: 15px;
	}

	.page_ceremony .box_cancelpolicy .inner {
  border-left: 6px solid #f78091;
  border-right: 6px solid #f78091;
		border-bottom: 6px solid #f78091;
}
	.box_cancelpolicy ul li, .box_cancelpolicy p{
		font-size: 16px;
	}
	.shrine_page .spec1 {
  padding: 0 15px;
  background-size: 100%;
}
	.event_page .spec1 {
  padding: 15px;
  background-size: 100%;
}
	.event_page .spec1.fix_img p{
		margin-bottom: 0;
	}
	.fix_img {
  box-sizing: border-box;
  width: 100%;
}
	.shrine_page .spec1.fix_img {
		padding: 15px 15px 8px 15px;
	}
	.shrine_page .spec1.fix_img p{
		margin-bottom: 0;
	}
	.fix_img p img {
  max-width: 100% !important;
}
	.eventbnr {
  margin: 0 auto;
    margin-bottom: 0px;
  width: 100%;
}
	#menu01-01 {
  width: 100%;
  height: auto;
  margin: 15px auto 30px;
  border: 5px solid #b3cacd;
  background: #ffffe7;
  padding: 10px;
  
}
	#menu01-01_01, #menu01-01_02, #menu01-01_03, #menu01-01_04, #menu01-02_01, #menu01-02_02, #menu01-02_03, #menu05-01_01, #menu05-01_02, #menu05-01_03, #menu05-01_04 {
		width: 100%;
  		height: auto;
		position: unset;
	}
	#menu01-01_01, #menu01-01_02 {
		font-size: 16px;
		font-weight: 700;
	}
	#menu01-01_04 {
		text-align: center;
	}
	.box620 {
  width: 100%;
  height: auto;
		padding: 15px;
		margin-bottom: 0;
}
	.box_brn01 {
  width: 100%;
}
	#menu01-02 {
  width: 100%;
  height: auto;
  margin: 0 auto 40px;
  position: relative;
    background: #f9f6ed;
    border: 5px solid #e7ded2;
    padding: 10px;
}
	.mb0_sp {
		margin-bottom: 0!important;
	}
	#menu01-02_01 {
		font-weight: 700;
		font-size: 16px;
		color: #335863;
	}
	#menu01-02_03 {
		text-align: center;
	}
	#menu05-01 {
  width: 100%;
  height: auto;
  border: 5px solid #bfa984;
  margin: 15px auto;
  padding: 10px;
  background: #f8f4f2;
}
	#menu05-01_01 {
  color: #2f0e02;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  margin: 10px auto 15px;
}
	#menu05-01_02 {
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 20px;
  color: #335863;
}
	#menu05-01_04 {
		text-align: center;
	}
	.material_bg01 {
		padding: 10px;
	}
	.material_bg01 .box_brn01 {
		padding: 10px;
	}
	.pri_01 {
		flex-wrap: wrap;
	}
	.pri_01 dt, .pri_01 dd {
		display: block;
		width: 100%;
	}
	.box_brn01 .pri_01 dt {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  position: relative;
  padding-left: 5px;
  line-height: 34px;
}
	.box_brn01 .pri_01 dd {
  position: relative;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  color: #ef8471;
  line-height: 34px;
  padding-top: 10px;
  padding-left: 40px;
}
	.box_brn01 .pri_01 dd::after {
  position: absolute;
  content: '→';
  font-size: 30px;
  top: 30%;
  left: 50%;
  transform: translateX(-50%);
  padding-right: 200px;
}
	.new_born_dumy {
		padding: 10px;
	}
	.box_01 {
  padding: 10px;
  margin: 0px;
  width: auto;
		max-width: 310px;
}
	.page_newborn .slick-prev, .page_newborn .slick-next {
		opacity: 1;
	}
	.insta01 {
  position: relative;
}
	.insta01 iframe {
		width: 100%;
	}
	.spec1 h4 {
		font-size: 20px;
	}
	.shrine_page .spec1 .box_01 {
		width: 100%;
		float: none;
		max-width:100%;
		margin: 0;
		padding: 0;
		background: none;
	}
	.dummy {
  margin-bottom: 1em;
}
	.shrine_page .spec1 .dummy img {
  width: 100%;
		padding: 0;
  border: none;
  border-radius: 0;
}
	ul.img_sub li {
  margin: 0 auto;
		padding: 2px;
}
	.shrine_page .spec1_txt {
  padding: 0;
		font-size: 14px;
		margin-bottom: 1em;
}
	.box_01 p {
  color: #707070 !important;
  text-align: center;
  font-size: 12px;
}
	.shrine_page .spec1 h4 {
  min-height: auto;
  padding-bottom: 10%;
		margin-bottom: 10px;
		margin: 10% 0 0;
  width: 100%;
}
	.spec1 table tr th, .spec1 table tr td {
		display: block;
		width: 100%;
}
	.spec1 .tb01 th, .spec1 .tb01 td {
		padding: 8px 10px;
	}
	.spec1 .tb01 th {
		text-align: center;
	}

	h4.sp_line::before {
  background: url(../images/h3_03_concept_sp.png) center bottom repeat-x;
  display: block;
  content: "";
  height: 5px;
  margin-bottom: 15%;
}
	.shrine_page .spec2_txt {
  padding: 0 20px 20px 20px;
  border-radius: 5px;
  margin-bottom: 0;
}
	.shrine_page .bnr01 {
  height: auto;
  background: none;
}
	.shrine_page .bnr01::before {
  background: url(../images/sp_head_menu04_26.png) top center no-repeat;
  content: "";
  background-size: 100%;
  height: 90px;
  display: block;
  margin: 0px -2px 10px 5px;
}
	.shrine_page .bnr01 p {
		width: 100%;
		position:unset;
  padding: 0px 20px;
    padding-bottom: 0px;
  background: url(../images/sp_menu04_26.png) bottom center no-repeat;
    background-size: auto;
  background-size: 100%;
  padding-bottom: 160px;
  margin-top: -35px;
}
	.shrine_page #concept02 {
		width: 100%;
		background-size: 100%;
	}
	.shrine_page .syustyou_shrink_01 {
  background: none;
  height: auto;
  margin: 0 auto;
  width: 100%;
}
	.shrine_page .syustyou_shrink_01 .syustyou_03 {
  width: 100%;
  height: auto;
}
	#matenity01, #matenity02 {
  width: 100%;
  height: auto;
  margin: 0 auto 0;
  overflow: hidden;
}
	#matenity02 {
		margin-bottom: 20px;
	}
	.matenity_link li {
  float: none;
  margin-left: 0;
		text-align: center;
}
	#matenity03 {
  width: 100%;
  height: auto;
  margin: 0 auto;
  position: relative;
  background: none;
}
	#matenity03_ttl, #matenity03_text, #matenity04_ttl, #matenity04-01, #matenity04-02, #matenity04-03, #matenity04-04, #matenity05_ttl, #matenity06_ttl, #matenity07-01, #matenity07-02 {
		width: 100%;
  		height: auto;
		position: unset;
		
	}
	#matenity03_ttl {
		text-align: center;
	}
	#matenity04, #matenity05, #matenity06, #matenity07 {
  width: 100%;
  		height: auto;
  position: relative;
  background: none;
  margin: 0 auto 15px;
}
	#matenity04_ttl, #matenity05_ttl, #matenity06_ttl {
		text-align: center;
	}
	.sp_table {
		width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  table-layout: fixed;
	}
	.sp_table tr th {
  padding: 8px;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  background: #ffffff;
		text-align: center;
		font-weight: 700;
}
	.sp_table tr td {
  padding: 10px 8px;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  background: #ffffff;
  vertical-align: top;
}
	.matenity_outer, .matenity_text, #matenity_bg01, #matenity09, .matenity_outer02, #matenity10 {
		width: 100%;
		height: auto;
  margin: 0 auto;
	}
	.matenity_outer, .matenity_outer02, #matenity10 {
		
		background: none;
	}
	.matenity07_sp {
		background: #ede3d5;
		border: 2px solid #dacdbb;
		padding: 10px;
		margin-bottom: 20px;
	}
	.matenity07_sp_tit {
		font-size: 16px;
		text-align: center;
		font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
		font-weight: bold;
	}
	.matenity07_sp_tit span{
		color: #4d849b;
		font-size: 20px;
		padding-right: 15px;
	}
	#matenity_bg01, #matenity09 {
		background: none;
		
	}
	#matenity08-01, #matenity08-02, #matenity08-03, #matenity09-01, #matenity09-02, #matenity09-03, #matenity09-04, #matenity10-01, #matenity10-02, #matenity10-03, #matenity10-04, #matenity10-05, #matenity10-06, #matenity10-07, #gift01_01, #gift01_02, #gift01_03, #gift01_04, #gift01_05, #gift01_06, #gift01_07, #gift01_08, #gift01_09, #gift01_10, #gift01_11, #gift01_12, #gift01_13, #gift01_14, #gift02_01, #gift02_02, #gift02_03, #gift01_27, #gift01_28, #gift01_29, #gift03_01, #gift03_02, #gift03_03, #gift03_04, #gift03_05, #gift03_06 {
		width: 100%;
		height: auto;
		position: unset;
	}
	.sp_center, #gift01_03, #gift01_04, #gift01_05, #gift01_06, #gift01_07, #gift01_08, #gift01_09, #gift01_10, #gift01_11, #gift01_12, #gift01_13, #gift01_14, #gift01_27, #gift01_28, #gift01_29 {
		text-align: center;
	}
	.sp_bold {
		font-weight: bold;
	}
	.matenity07_sp_tit02 {
		padding: 14px 0 14px 25px;
		border-bottom: 1px dashed #ad9974;
		background: url(../images/icon8.png) no-repeat 0px 50%;
		font-weight: 700;
	}
	#matenity10 {
		text-align: center;
	}
	.page_maternity .text_area{
		margin-bottom: 1em!important;
	}
	.page_maternity .h5_s1 {
		margin-left: 0!important;
	}
	#gift01 {
		width: 100%;
		height: auto;
		background: #f8f0d8;
  padding: 10px;
  border: 5px solid #c4ac8c;
		margin-bottom: 1em;
	}
	#gift01_01 {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  color: #000000;
  margin: 10px auto 15px;
}
	#gift01_12 {
  border-bottom: 1px dotted #000000;
  border-top: 5px solid #7e685f;
  border-left: 5px solid #7e685f;
  border-right: 5px solid #7e685f;
  border-bottom: 1px dotted #000000;
  margin-bottom: 0;
  background-color: #fff5eb;
}
	#gift01_13 {
  border-left: 5px solid #7e685f;
  border-right: 5px solid #7e685f;
  margin: 0 auto;
  background-color: #fff5eb;
  padding: 10px;
}
	#gift01_14 {
  border-left: 5px solid #7e685f;
  border-right: 5px solid #7e685f;
  margin: 0 auto 15px;
  border-bottom: 5px solid #7e685f;
  background-color: #fff5eb;
}
	/*.gift01_box01_sp {
		background: url("../images/gift01_01.png") center no-repeat;
		background-size: contain;
		position: relative;
		max-width: 407px;
		height: 191px;
		margin: 0 auto;
	}*/
	.gift01_box01_sp {
		border: 4px solid #e49e6f;
		background: #f8e6d3;
		padding: 10px;
	}
	.gift01_box01_sp dl {
		display: flex;
		justify-content: space-between;
		margin-bottom: 15px;
	}
	.gift01_box01_sp dl dt {
		width: 80%;
		text-align: left;
	}
	.gift01_box01_sp dl dd {
		width: 20%;
		text-align: center;
	}
	.txt_note {
		text-align: right;
		
	}
	.txt_note span {
		position: relative;
    padding: 0 20px;
    display: inline-block;
	}
	.txt_note span::before{
		position: absolute;
		content: '';
		background: url("../images/photogift_line01.jpg") center no-repeat;
		width: 15px;
		height: 40px;
		left: 0;
		top: 0;
	}
	.txt_note span::after{
		position: absolute;
		content: '';
		background: url("../images/photogift_line02.jpg") center no-repeat;
		width: 15px;
		height: 40px;
		right: 0;
		top: 0;
	}
	
	 #gift01_27 {
    top: 26%;
    right: calc(100% - 64%);
  }
	#gift01_28 {
    top: 36%;
    right: calc(100% - 64%);
  }
	#gift01_29 {
    top: 46%;
    right: calc(100% - 64%);
  }
	#gift02 {
		width: 100%;
		height: auto;
  border: 5px solid #c0b097;
  background: #eddfc5;
  padding: 10px;
  clear: both;
}
	#gift03 {
		width: 100%;
		height: auto;
  border: 5px solid #d8c197;
  background: #eee8dc;
  padding: 10px;
  clear: both;
  margin: 0 auto 10px;
}
	#gift03_02, #gift03_03, #gift03_04, #gift03_05 {
  border-bottom: 2px dashed #d6cab4;
  padding: 10px;
}
	#gift03_02 span span, #gift03_03 span span, #gift03_04 span span, #gift03_05 span span{
		color: #4d849b;
		font-weight: bold;
	}
/*==================festival======================*/	
	#festival  .menulist .spMenu ul {
		padding: 0;
		margin: 0;
	}
	.story h1 {
  width: 100%;
  height: auto;
  font-size: 10px;
  color: #5f4e40;
  margin: 15px auto 0;
  text-align: right;
}
#festival ul li {
  list-style: none;
}
	#festival  .menulist .spMenu ul li a {
  display: block;
  text-decoration: none!important;
  color: #333;
		padding: 10px 15px;
		font-weight: normal;
}
	#festival .sub_menu {
		padding: 0;
		margin: 0;
	}
	#festival .sub_menu a {
		display: block;
  text-decoration: none!important;
  color: #333;
		padding: 10px 15px;
		font-weight: normal;
		font-size: 16px;
	}
	#festival .gnavi_sp {
		padding: 0;
		margin: 0;
	}
	#festival #intro {
		height: auto;
  padding: 20% 10px 20px;
		background: url(https://www.rsfukuoka.mom/images/section01_sp_bk.png) center top no-repeat;
  background-size: 120% auto;
		background-position: center top !important;
}
	.story {
  margin: 0 auto;
  min-width: 100%;
  overflow:inherit;
  width: 100%;
}
	#festival #four {
		background: url(../images/sp_bg_section05.png) center top;
  padding: 5% 10px 20px;
  background-size: 235% auto;
	}
	#festival .box_slider {
		padding: 0;
		margin-bottom: 20px;
	}
	.box_festival01, .section05 {
		width: 100%;
	}
	.section05 {
		width: 100%;
		padding: 10px;
	}
	.box_festival02, .box{
		width: 100%;
	}
	#four .txt,
#four .txt01,
#four .txt02,
#four .txt03 {
	margin:0 auto;
	padding: 0 0 0 0;
	width:100%;
	z-index: 200;
}
	.outer_video iframe{
		width: 100%;
	}
	.box {
		padding: 10px;
		font-size: 16px;
		line-height: 24px;
	}
	.box ul li {
  background: url("../images/icon.png") 0 5px no-repeat;
  padding: 5px 5px 5px 5px;
  list-style: none;
  margin-bottom: 20px;
		line-height: 24px;
}
	.pad01 {
  padding-left: 0;
		margin-bottom: 10px;
}
	#festival a {
  border: 0;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
  border-style: none;
  text-decoration: underline;
  color: #513d14;
  font-weight: normal;
}
	#four .section05 .box {
  color: #493a27;
  line-height: 24px;
	background: #f2f0f3 !important
}
	#four .section05 .slick-prev, .slick-next {
		opacity: 1;
	}
	#four .section05 .slick-dots li button {
		display: none;
	}
	.box_festival01 ul li {
  color: #494a3c;
  list-style: none;
  width: 100%;
  border-bottom: 2px dotted #999;
  padding: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: left;
  justify-content: center;
}
	.box_festival01 p {
		font-size: 16px;
	}
	.box_festival02 .box_lightbox {
  width: 100%;
  margin: 0 0 20px;
  overflow: hidden;
		display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
	.box_lightbox .box_left, .box_lightbox .box_right {
  width: 50%;
}
	.box_festival02 p {
		font-size: 16px;
	}
	.tit_list_popup {
  font-size: 20px !important;
  max-width: 100%;
}
	.list_popup {
  padding: 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
	 #festival .list_popup li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #494a3c;
  box-sizing: border-box;
  color: #494a3c;
  font-weight: bold;
  position: relative;
  transition: all 0.3s;
}
	.box_festival02 .font20 {
  font-size: 16px;
		text-align: left;
}
	.box_festival03{
	width: 100%;
	margin: 0 auto 50px
}
	.box_festival03 .tit {
  margin: 0 auto;
  line-height: 0;
  max-width: 500px;
}
	.box_festival03 .inner {
  border-left: 6px solid #f78091;
  border-right: 6px solid #f78091;
  border-bottom: 6px solid #f78091;
  padding: 20px 10px;
  position: relative;
		max-width: 500px;
    margin: 0 auto;
}
	.box_festival03 .inner::after {
  width: 100%;
}
	.box_festival03 ul li, .box_festival03 p {
		font-size: 100%;
	}
	#second {
		background: url(https://www.rsfukuoka.mom/images/section02_sp_bk.png) center top no-repeat;
		background-position: center top!important;
  padding: 43% 10px 20px 10px;
  background-size: cover;
  height: auto !important;
}
	#second .txt {
  height: auto;
  margin: 0 auto;
  padding: 0;
  position: unset;
  width: 100%;
  z-index: 200;
}
	.pinktit_box p {
		margin: 0 0 15px;
		font-size: 16px;
	}
	#second ul#fifth_bn.sp_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 10px;
  width: 100%;
  box-sizing: border-box;
}
	ul#fifth_bn li {
  width: 48%;
  text-align: center;
}
	ul#fifth_bn li.mr13 {
  margin-right: 0px !important;
}
	#second .home {
  width: 100px;
  height: 33px;
  float: none;
  margin: 0 auto;
}
	#third {
		background: url(../images/section03_sp.jpg) 50% 0 no-repeat;
		background-size: contain;
		background-position: 50% 0!important;
		height: auto;
		margin-bottom: 30px;
		background-size: cover;
	}
	#third .btn {
  height: auto;
  margin: 0 auto;
  padding: 0;
  position: relative;
  width: 100%;
  z-index: 200;
}
	 .box_festival01 .price_style01 dl dt > span, .box_festival01 .haft .price_style01 dl dt > span {
    display: block;
    margin: -5.5vw 2px 0;
    width: auto;
    text-align: center;
    font-size: 4.5vw;
  }
	.box_festival01 .price_style01 dl dt::before {
    content: '';
    background-size: contain;
    width: 30px;
    height: 30px;
    display: block;
    margin: -5.5vw 0;
  }
	.box_festival01 .price_style01 dl dt::after {
	
    content: '';
    background-size: contain;
    width: 40px;
    height: 30px;
    display: block;
    margin: -5.5vw 0;
  }
	.box_festival01 .haft .price_style01 dl dt {
  padding: 0 10px 15px;
  background: #e7c4b1;
  line-height: 1.1;
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  font-size: 30px;
  font-weight: bold;
  color: #494a3c;
}
	.box_festival01 .haft .price_style01 dl dt {
		position: relative;
	}
	.box_festival01 .haft .price_style01 dl dt::before {
    content: '';
  width: 30px;
  height: 30px;
  margin: -5.5vw 0 0;
		 display: block;
}
	.box_festival01 .haft .price_style01 dl dt::after {	
    content: '';
		background: url("../images/icon_11.png") no-repeat 0 0;
    background-size: contain;
    width: 40px;
    height: 30px;
    display: block;
    margin: -5.5vw 0;
  }
.box_festival01 .haft .price_style01 dl dt.dt01:after,
.box_festival01 .haft .price_style01 dl dt.dt02:before {
	display: block;
}
	.flex_box {
  margin: 0 -1%;
  display: flex;
  justify-content: center;
		flex-wrap: wrap;
}
	.flex_box .haft {
  width: 100%;
  margin: 0 1%;
  position: relative;
}
	.box_festival01 .grey_box .title {
  font-size: 20px;
  font-weight: 700;
}
	.box_festival01 .grey_box p {
  color: #5a4832;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: 16px;
  margin-bottom: 0;
}
	.mt_sp {
		margin-top: 1em;
	}
	.box_festival02 {
  background: url("../images/box_festival02_bg.png") no-repeat left top, url("../images/box_festival02_bg.png") no-repeat left bottom;
  width: 100%;
  margin: 10px auto 20px;
  padding: 35px 0px;
  box-sizing: border-box;
  background-size: contain;
}
	.box_festival01 {
  margin: 0 auto;
	}
	.box_festival02 .title {
    font-size: 18px;
  }
	.box_festival02 .font22 {
  font-size: 16px;
}
	.box_festival02 .item {
  box-sizing: border-box;
  padding-left: 0;
  margin-bottom: 30px;
}
	.box_festival02 .item .tit {
  font-size: 16px;
  position: relative;
  padding: 0 0 0 45px;
  min-height: 35px;
}
	.box_festival02 .item .tit .num {
  position: absolute;
  left: 0;
  top: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: #43ccdf;
  display: flex;
  justify-content: center;
  align-items: center;
}
	.box_festival01 .ttl02 {
  font-size: 18px;
}
	#festival #footer_wrapper {
  clear: both;
  text-align: center;

  height: auto;

  overflow: hidden;

  background: rgba(164, 208, 207, .75);
  background-color: transparent;
		padding: 10px 5px 10px;
    margin: 0 0px 50px;
}
	  #festival .main_footer {
    max-width: 100%;
    padding: 10px 10px 47px;
		  background: url(../images/bg.jpg) repeat-y center top;
  margin: auto;
  border-radius: 15px;
  box-sizing: border-box;
  overflow: hidden;
  border: 3px solid #a4d0cf;
  }
	#festival .footer02 dl dd {
  text-align: left;
  margin-top: 10px;
		margin-left: 0;
}
	#festival #page-top {
  position: fixed;
  font-size: 77%;
  z-index: 999;
}
	.blog_box {
		width: 100%;
	}
	#contact_block1 {
		background: #f4e8d0;
	}
	.contact_in {
  background: none;
  width: 100%;
  padding: 20px 10px;
}
	.fcontact3 {
  background: url(../images/fcontact3.png) center no-repeat;
		background-size: contain;
  color: #d7799c;
  text-align: center;
		line-height: 1.5;
		font-size: 17px;
		padding: 30px 6px;
}
	.fcontact7 {
  background: url(../images/fcontact7.png) center no-repeat;
		background-size: contain;
  color: #4b789a;
		text-align: center;
		line-height: 1.5;
		font-size: 17px;
		padding: 30px 6px;
}
	.page_contact .ml40 {
  background: #fafaf2;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  padding: 10px;
  border: 1px solid #d7ded6;
		margin-left: 0!important;
}
	.page_contact #fmail li input.fmail {
  width: 20px;
}
	.contact_txt {
  width: 100%;
  margin-left: 0;
}
	.page_contact table.mailform{
		width: 100%;
	}
	.page_contact table.mailform tr th, .page_contact table.mailform tr td{
		display: block;
		width: 100%;
	}
	.page_contact #fmail .size_3 input, .page_contact #fmail .size_3 select, .page_contact #fmail .size_3 textarea {
  width: 100%;
  height: auto;
}
	.page_contact #fmail input.fmail{
		width: 100%;
	}
	.page_contact #fmail .size_8 input, .page_contact #fmail .size_8 select, .page_contact #fmail .size_8 textarea {
  width: 100%;
}
	.page_contact #fmail .zipcode input.fmail {
  width: 150px;
}
	.page_contact form#fmail input.postcode {
  width: 100px;
  padding: 2px;
}
	/* photo_gallery
------------------------------------------------------------------------*/

.lof-slidecontent {
    height: 350px;
    overflow: hidden;
    position: relative;
}

.lof-slidecontent .preload {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    text-align: center;
    width: 100%;
}

.lof-slidecontent .preload div {
    height: 100%;
    width: 100%;
}

.lof-main-outer {
    height: 350px;
    overflow: hidden;
    position: relative;
    width: calc(100% - 88px);
    z-index: 3;
}

ul.lof-main-wapper {
    height: 290px;
    overflow: hidden;
    position: relative;
    left: 0;
    top: 29px;
    width: 100%;
}

ul.lof-main-wapper li {
    overflow: hidden;
    height: 100%!important;
    width: 100%!important;
    text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lof-opacity li {
    height: 266px!important;
    float: inherit;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%!important;
}

ul.lof-navigator {
    height: 100%;
    position: absolute;
    top: 0;
    width: 86px!important;
}

.lof-navigator img {
    border: 1px solid #bd9f79;
    padding: 1px;
}

ul.lof-navigator li {
    cursor: pointer;
    overflow: hidden;
    width: 86px;
    z-index: 1000;
}

ul.lof-navigator li img {
    vertical-align: top;
    filter: alpha(opacity=60);
    /* MSIE/PC */
    -moz-opacity: 0.6;
    /* Mozilla 1.6 and older */
    opacity: 0.6;
}

.lof-navigator-outer {
    height: 290px !important;
    overflow: hidden;
    position: absolute;
    right: 0px;
    top: 30px;
    width: 86px;
    z-index: 100;
}

.lof-navigator li.active a {
    display: block;
    height: 84px;
    width: 82px;
}

.lof-navigator li.active a img {
    filter: alpha(opacity=98);
    /* MSIE/PC */
    -moz-opacity: 0.98;
    /* Mozilla 1.6 and older */
    opacity: 0.98;
}

.lof-navigator li img {
    height: 82px;
    width: 82px;
}

.lof-slidecontent .button-next,
.lof-slidecontent .button-previous {
    cursor: pointer;
    height: 24px;
    position: absolute;
    text-indent: -999px;
    top: 0;
    width: 39px;
    z-index: 400;
}

.lof-slidecontent .button-next {
    background: url(../images/prev03.png) no-repeat right center;
    right: 30px;
    top: 0;
}

.lof-slidecontent .button-previous {
    background: url(../images/next03.png) no-repeat left center;
    right: 15px;
    top: 324px;
}

.boxIframe {
    width: 100%;
    height: 266px;
    border: none;
}

.gallery_outer,
.gallery {
    width: 100%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 10px;
    overflow: hidden;
}
	.blog_date {
		width: 50px;
		height: 50px;
	}

  .box_wapper_ceremony .box_inner {
    padding: 20px;
  }

  .box_wapper_ceremony .box_inner .ttl {
    font-size: 20px;
  }

  .box_festival01 p.txt_decorate {
    padding: 10px 10px 7px;
  }

  .box_festival01.box_festival01_cus .price_style01 dl dt>span {
    margin-top: -5.5vw;
  }

  .box_festival01.box_festival01_cus .txt_important {
    font-size: 18px;
    padding: 5px 30px;
  }

  .box_festival01.box_festival01_cus .txt_important > span {
    font-size: 22px;
  }
}



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


}



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

}


@media screen and (max-width: 450px) {
	 .page_ceremony .box_cancelpolicy .inner {
    border-bottom: 4px solid #f78091;
    border-left: 4px solid #f78091;
    border-right: 4px solid #f78091;
  }
	.box_festival03 .inner {
  border-left: 4px solid #f78091;
  border-right: 4px solid #f78091;
  border-bottom: 4px solid #f78091;
}
	.box_cancelpolicy .border-fix {
  border-left: 4px solid #f78091 !important;
  border-right: 4px solid #f78091 !important;
}
	.new_born_dumy {
  padding: 20px;
  box-sizing: border-box;
  background: url(../images/menu_img_02.png) no-repeat 60% 0 #C7BDBB;
background-size: cover;
  display: block;
  margin: 0 0 20px 0;
  
}
     .box_01 {
		 width: auto;
		   max-width: 70%;
}
	.new_born_dumy .box_01 p {
		font-size: 3vw;
	}

}


@media screen and (max-width: 425px)  {
  .box_festival01.box_festival01_cus .txt_important > span {
    /* display: block; */
    margin: 0;
  }
  .img_list p {
    width: 100%;
  }
   }

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


   }

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

}

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

     
   }
   

