@media screen and (max-width:640px) {
body {
  font-size: 14px;
}
body, #mainvisual .inner, header, footer {
    min-width: 100%;
}
.pc{
  display:none;
}
.sp{
  display:block;
}
	
.c-title{
	width:100%;
}
.c-form-area{
	width:100%;
}


/*============================================================================

	$breadcrumbs ぱんくず

============================================================================*/

.breadcrumbs {
    width: 92%;
    margin: -10px 4% 40px;
}
.breadcrumbs li {
    display: inline-block;
}

/*============================================================================

  header

============================================================================*/

header .inner{
  width:100%;
  padding:0 10px;
}
.header_left p{
  font-size:16px;
  font-weight:bold;
  opacity:0.7;
  color:#fff;
  letter-spacing: 0.08em;
  font-family: 'Noto Serif JP', serif;
  line-height:35px;
}
.header_left p span{
  font-size:26px;
}
h1{
  font-size:10px;
  font-family: 'Noto Serif JP', serif;
  color:#fff;
}

.select_lang{
  gap:0;
  margin:0;
  flex-direction: column;
  background:#fff;
}
.select_lang a{
  font-size:14px;
  color:#333333;
  display:none;
}
.select_lang a.jp_page{
  background:#AD76E3;
}


.lang_toggle{
  position:relative;
  padding:5px 15px 5px 5px;
  margin:57px 0 0;
  color:#fff;
  font-family: 'Noto Serif JP', serif;
  font-size:15px;
}
.lang_toggle::before{
  position: absolute;
  right:0;
  top:17px;
  border-left: 5px solid transparent;
  border-top:7px solid #fff;
  border-right: 5px solid transparent;
  content:"";
}

/*============================================================================

  footer

============================================================================*/
.footer_info p{
  font-size:30px;
}
.footer_info p span{
  font-size:50px;
}
.footer_info h2{
  font-size:18px;
}
.footer_adress_list{
  flex-direction: column;
  gap:10px;
}
.footer_navi ul{
  flex-direction: column;
  align-items: center;
}

/*============================================================================

  mainvisual

============================================================================*/

#mainvisual .inner{
  width:100%;
}
.mainvisual_catch p{
  position:absolute;
  top:200px;
  left:auto;
  padding:0 10px;
  font-size:26px;
}


/*============================================================================

	nav

============================================================================*/

.nav_wrap{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #fff;
}

/* ハンバーガーボタン */
.btn_tgl_menu{
    position: absolute;
    right: 0;
    color: #fff;
    width: 55px;
    height:55px;
    background: #AD76E3;
    border: none;
    padding: 0;
    margin: 0;
    text-align: center;
    transition: right 0.6s cubic-bezier(.19,1,.22,1);
}
.btn_tgl_menu i{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5px;
    margin: auto;
    font-style: normal;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.btn_tgl_menu span{
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 35px;
    height: 2px;
    background: #fff;
    transition: all 0.6s cubic-bezier(.19,1,.22,1);
    opacity: 1;
}
.btn_tgl_menu span:nth-of-type(1){
    top: 10px;
}
.btn_tgl_menu span:nth-of-type(2){
    top: 20px;
}
.btn_tgl_menu span:nth-of-type(3){
    top: 30px;
}

/* MENUボタン押下時 */
.btn_tgl_menu.active{
    right: 16.25rem;
}
.btn_tgl_menu.active span:nth-of-type(1){
    top: 20px;
    transform: rotate(225deg);
}
.btn_tgl_menu.active span:nth-of-type(2){
    opacity: 0;
}
.btn_tgl_menu.active span:nth-of-type(3){
    top: 20px;
    transform: rotate(-225deg);
}

.btn_tgl_menu.active{
    right: 16.25rem;
}
.btn_tgl_menu.active span:nth-of-type(1){
    top: 20px;
    transform: rotate(225deg);
}
.btn_tgl_menu.active span:nth-of-type(2){
    opacity: 0;
}
.btn_tgl_menu.active span:nth-of-type(3){
    top: 20px;
    transform: rotate(-225deg);
}

/* ドロップダウンメニュー */
.tgl_menu_list{
    position: fixed;
    top: 0;
    right: 0;
    right: -16.25rem;
    z-index: 2;
    overflow: hidden;
    width: 16.25rem;
    height: 100%;
    transition: right 0.6s cubic-bezier(.19,1,.22,1);
    background: #eee3ff;
    padding: 0 15px;
	margin:0;
}
.tgl_menu_list nav{
	padding:0;
	width:100%;
    background:none;
}
.tgl_menu_list ul{
    flex-flow: column wrap;
    height: 100%;
    width: 100%;
    padding: 0;
    background: none;
    margin: 0 auto;
    box-shadow:none;
}
.tgl_menu_list > nav > ul > li{
    display: block;
    border-bottom: 1px solid rgb(46, 46, 46);
    width: 100%;
}
.tgl_menu_list ul li::after{
    display: none;
}
.tgl_menu_list ul li a,
.tgl_menu_list ul li p{
    display: block;
    text-align: left;
    padding: 15px 10px;
    width: auto;
    color: rgb(46, 46, 46);
    font-weight: normal;
    font-size:16px;
}
.tgl_menu_list ul li a span,
.tgl_menu_list ul li p span{
    display: none;
}

.tgl_menu_list ul li a:hover{
    color: #fff;
}

body.nav-open .tgl_menu_list{
    overflow-y: scroll;
    right:0;
}

.nav_list li .nav_contact::before{
  content:none;
}
.nav_list li .nav_contact{
  padding-left:10px;
  text-align:left;
  background:#eee3ff;
  color: rgb(46, 46, 46);
}

/* ------- スライドメニュー シングル------- */
.tgl_menu_list ul li.hover_btn ul{
    position: static;
    opacity: 1;
    visibility: visible;
    width: 100%;
    padding-bottom: 10px;
    box-shadow: none;
    border:none;
}
.hover_btn ul li:not(:last-child){
  border:none;
}
.tgl_menu_list ul li.hover_btn div a{
    margin-left: 15px;
    background: none;
    padding: 3px;
    line-height: 2;
    text-indent: -1.2em;
    padding-left: 1.2em;
    border-bottom: none;
    font-size:14px;
}
.tgl_menu_list ul li.hover_btn div a::after{
    content:none;
}
.tgl_menu_list ul li.hover_btn div a i.nav_arrow{
    display: none;
}
.tgl_menu_list ul li.hover_btn div a:hover{
    color: #fff;
    background: none;
}

/*============================================================================

	mainvisual

============================================================================*/

.mainvisual_wrap .inner{
  width:100%;
}
.mainvisual_catch p{
  top:150px;
}


/*============================================================================

	main

============================================================================*/


.box01{
  width:95%;
  margin:0 auto 80px;
}
.box02{
  width:90%;
  margin:0 auto 50px;
}
.tit01{
  font-size:28px;
}
.tit01_en{
  font-size:32px;
  line-height:1;
  color:#333333;
}

/*============================================================================

  table

============================================================================*/

.tb01{
  width:90%;
}
.tb01 th,.tb01 td{
  width:100%;
  display: block;
  padding:0;
  border:none;
}
.tb01 td{
  padding:0 0 20px;
}

.tb02 th,.tb02 td{
  font-size:16px;
}

/*============================================================================

  about

============================================================================*/

.feature_list li{
  flex-direction: column;
}
.feature_info{
  width:100%;
  padding:20px 20px 40px;
  margin:0;
}
.feature_list li:nth-child(even) .feature_info{
  padding:20px 20px 40px;
  margin:0;
  order:0;
}
.feature_list li:nth-child(even) .feature_img01{
  margin:0 20px 0 0;
}
.feature_img{
  width:100%;
  margin:-20px 0 0;
}
.feature_img01{
  width:80%;
  margin:0 0 0 20px;
}
.feature_img02{
  width:60%;
}

[class^="slide_wrap"]:not(.slide_wrap_flex){
    max-width: 100%;
}
	.slide_wrap_flex{
		display:block;
		flex-wrap:unset;
	}

/* 院内スライド横 */
.slide_wrap2 .slide_wrap_flex .slick-slider{
    display: block!important;
}
.slide_wrap2 .slide_wrap_flex .slick-list{
    width: 100%;
}
.slide_wrap2 .slide_wrap_flex .slick-dots{
    margin-top: 20px;
    width: 100%;
    justify-content: flex-start;
}
.slide_wrap2 .slide_wrap_flex .slick-dots li{
    width: 15%;
    margin-bottom: 10px;
}
	.slide_wrap_flex #slider{
		width:100%;
	}
	.loop_slide_wrap .slick-initialized .slick-slide img{
		width:200px;
	}
	.slide_wrap_flex #thumbnail-list{
		width:auto;
	}
	.slide_wrap_flex .thumbnail-item{
		flex:0 1 18%;
	}

/*============================================================================

	stock

============================================================================*/

.stock_list{
  width:100%;
  justify-content: center;
  gap:20px;
}
.title_wrap{
  flex-direction: column-reverse;
  align-items: center;
  width:100%;
}
.stock_list li{
  width:140px;
  height:140px;
  font-size:14px;
}
.stock_list li figure{
  height:80px;
}
.stock_list li:nth-child(2) figure{
  height:60px;
}
.stock_list li figure img{
  width:auto;
  height:100%;
}

/*============================================================================

  stock_item

============================================================================*/
.stock_item{
  padding:50px 0;
}
.stock_item ul{
  justify-content: center;
}
.stock_item li{
  width:100%;
}
.stock_item li img{
  height:auto;
}

/*============================================================================

	vanning

============================================================================*/
.vanning_flex{
  flex-direction: column-reverse;
  gap:40px;
}
.vanning_flex img{
  width:100%;
  height:auto;
}
.vanning_info p:nth-of-type(2){
  padding:0;
}
/*============================================================================

	info

============================================================================*/

.info_flex{
  width:100%;
  flex-direction: column;
  gap:40px;
}
.map{
  width:100%;
  height:350px;
}
.facebook{
  width:100%;
  text-align:center;
}

/*============================================================================

  contact

============================================================================*/

.contact{
  padding:60px 0;
}
.contact_wrap{
  width:90%;
}
.contact_wrap p{
  padding:0 10px;
  margin:10px 0 20px;
}
.contact_btn{
  width:240px;
  line-height:50px;
  font-size:16px;
}
.contact_btn::before{
  left:10px;
}
.tel_btn{
  font-size:24px;
}

/*==================================================================

  .loop_slide

==================================================================*/

.loop_slide_wrap .slick-initialized .slick-slide img{
  width:260px;
}

/*==================================================================

  js class

==================================================================*/

.show{
  display:block !important;
}



/*common*/
.pc{display:none!important}.sp{display:block!important}.pc_inline{display:none!important}.sp_inline{display:inline!important}.pc_table{display:table!important}.sp_table{display:table!important}img{max-width:100%;height:auto}.sp_mb00{margin-bottom:0!important}.sp_mr00{margin-right:0!important}.sp_ml00{margin-left:0!important}.sp_mt00{margin-top:0!important}.sp_pb00{padding-bottom:0!important}.sp_pr00{padding-right:0!important}.sp_pl00{padding-left:0!important}.sp_pt00{padding-top:0!important}.sp_center{text-align:center}




}