@charset "UTF-8";

/* =============================================
	mobile menu settings
=============================================　*/
/* Mobile Menu Button */
#menu-button{
	visibility:hidden;
	opacity:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 900;
	top: 0;
	right: 0;
	width: 52px;
	height: 52px;
	background-color: #DF8FA8;
}
#menu-button.is-active {
	background: #8ec63f;
}
#menu-button.nav-on {
	visibility:visible;
	opacity:1;
}
#menu-button .ham-lines {
	position: relative;
	margin: 0 auto;
	width: 32px;
	height: 32px;
}
#menu-button .ham-lines span,
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	position: absolute;
	display: block;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 20px;
	height: 3px;
	background-color: #fff;
	border-radius: 1px;
}
#menu-button .ham-lines span {
	bottom: 15px;
	transition: all .25s .25s;
	opacity: 1;
}
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	content: "";
}
#menu-button .ham-lines::before{
	bottom: 22px;
	animation: menu-bar01 .75s forwards;
}
#menu-button.is-active .ham-lines::before{
	bottom: 24px;
}
#menu-button .ham-lines::after {
	bottom: 8px;
	animation: menu-bar03 .75s forwards;
}
#menu-button.is-active .ham-lines::after{
	bottom: 6px;
}
#menu-button .ham-text {
	font-size: 11px;
	line-height: 1;
	color: #fff;
}
#menu-button.is-active .ham-lines span {
	opacity: 0;
}
#menu-button.is-active .ham-lines::before {
	animation: active-menu-bar01 .5s forwards;
}
#menu-button.is-active .ham-lines::after {
	animation: active-menu-bar03 .5s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(9px) rotate(45deg);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-9px) rotate(-45deg);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(9px) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(-9px) rotate(-45deg);
	}
}
/* Mobile Menu Button end */

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

	Common settings

============================================= */
/* table border and paddings */
table th,
table td{
	border: 1px solid #424242;
	padding: 10px;
}



body .pagewidth {
	width: 100%;
	max-width: 960px;
}
#body #layout {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
}
#body #layout:after {
	display: none;
}
#body #layout #content {
	float: none;
	padding: 40px 0;
	width: 73%;
}
#body #layout #sidebar {
	float: none;
    width: auto;
    max-width: 25%;
    padding: 40px 0;
}
#body #layout #sidebar .widget > p {
	display: none;
}
#body #layout #content .type-page {
  background: url(../../uploads/bg.jpg);
  padding: 20px 15px;
  border: 3px solid white;
  border-radius: 4px;
}

body .site {
  font-family:"ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic,"メイリオ", Meiryo, sans-serif;
  font-size: 14px;
  color: #332317;
  line-height: 1.7;
  background: #f2ede7;
}
.site a {
    color: #000;
    text-decoration: underline;
}

/* ==================================			HEADER			=====================================
	 ======================================================================================== */
#headerwrap {
  background: #fbf6f0;
}
#headerwrap #header {
	display: flex;
	justify-content: space-between;
	padding: 0;
}
#header .rb {
  text-align: right;
}
#header .h_info {
  display: inline-block;
  vertical-align: middle;
  font-family: tbudrgothic-std, sans-serif;
  margin-right: 5px;
}
#headerwrap .des_wrap {
  background: #df8fa8;
}
#headerwrap #site-description {
  line-height: 1.7;
  position: static;
  font-size: 11px;
  color: #faf6f0;
  max-width: 960px;
  margin: 0 auto;
  padding: 2px 0;
}
#header .h_tel {
  color: #ce6584;
  font-size: 24px;
  font-weight: bold;
  line-height:1.2;
}
#header .h_add {
  font-size: 12px;
}
#header .h_content img {
  display: inline-block;
  vertical-align: middle;
}
#header #site-logo a, #header #site-logo img {
  display: inline-block;
  vertical-align: middle;
}
/* ===================================			MENU			=====================================
======================================================================================== */
#main-menu-container.is-active {
	background: #df8fa8;
	padding-top: 80px;
}
#main-menu-container.is-active #main-menu {
	flex-direction: column;
	max-width: 90%;
}
#main-menu-container.is-active #main-menu li.nav00 {
	display: block;
}
#main-menu-container.is-active #main-menu li a {
	height: auto;
	text-indent: 0;
    padding: 20px;
    background: none;
    text-align: left;
	font-size: 17px;
	color: #fff;
	text-decoration: none;
	font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif;
}
#main-menu-container #main-menu {
  max-width: 710px;
  margin: 0 auto;
  position: static;
	display: flex;
	
}
#main-menu-container #main-menu li {
	display: block;
	margin: 0;
}
#main-menu-container #main-menu li a {
	display: block;
  height: 60px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  padding: 0;
  margin: 0;
}
#main-menu-container #main-menu .nav00 {
  display: none;
}
#main-menu-container #main-menu .nav01 a, #main-menu-container #main-menu .nav01:hover a {
  width: 140px;
  background: url(../../uploads/gnavi1.jpg);
}
#main-menu-container #main-menu .nav02 a, #main-menu-container #main-menu .nav02:hover a {
  width: 140px;
  background: url(../../uploads/gnavi2.jpg);
}
#main-menu-container #main-menu .nav03 a, #main-menu-container #main-menu .nav03:hover a {
  width: 126px;
  background: url(../../uploads/gnavi3.jpg);
}
#main-menu-container #main-menu .nav04 a, #main-menu-container #main-menu .nav04:hover a {
  width: 174px;
  background: url(../../uploads/gnavi4.jpg);
}
#main-menu-container #main-menu .nav05 a, #main-menu-container #main-menu .nav05:hover a {
  width: 129px;
  background: url(../../uploads/gnavi5.jpg);
}


#main-menu-container #main-menu li ul {
    width: 100%;
    padding: 15px;
    border: none;
    border-radius: 0;
    background: rgba(255,255,255,0.95);
}
#main-menu-container #main-menu li ul li {
      text-indent: 0;
    display: block;
    background: none;
    height: auto;
    border-bottom: 1px dotted #696a6b;
}
#main-menu-container #main-menu li ul li a {
 		color: #333;
    width: inherit;
    height: auto;
    padding: 15px 0;
    background: none;
    text-indent: 0;
    font-size: 14px;
}

/* ==================================			SLIDER			=====================================
	 ======================================================================================== */
#main {
  text-align: center;
  padding-top: 20px;
}
body #main .module {
	margin: 0;
}
body #main img {
  width: auto;
	
}


/* ==================================			FOOTER			=====================================
	 ======================================================================================== */
#footerwrap {
  background: #fbf6f0;
}
#footerwrap #footer {
  border-top: none;
  padding: 5px 0;
}
#footer .f_content {
  float: left;
}
body #footer #footer-nav {
  float: right;
  padding-top: 30px;
	margin: 0;
}
body #footerwrap #footer-nav li {
  font-size: 13px;
  line-height: 1.2;
  border-color: #4c423b;
	margin: 0;
    border-left: solid 1px #000;
}
body #footerwrap #footer-nav li:first-child {
	border: none;
}
body #footerwrap #footer-nav li a {
  padding: 0 2px 0 7px;
  color: #4c423b;
	text-decoration: underline;
}
#footer .f_info {
  display: inline-block;
  vertical-align: middle;
  font-family: tbudrgothic-std, sans-serif;
  margin-right: 5px;
}
#footer .f_tel {
  color: #ce6584;
  font-size: 24px;
  font-weight: bold;
  line-height:1.2;
}
#footer .f_add {
  font-size: 12px;
}
#footer .f_content img {
  display: inline-block;
  vertical-align: middle;
}
body #footerwrap .copyright-container {
  font-size: 12px;
  text-align: center;
  color: #898989;
  padding: 20px 0;
  border-top: 1px solid #e0dbd5;
}
/* ==================================			SIDEBAR			=====================================
	 ======================================================================================== */
#sidebar {
  width: 25%;
  padding-top: 40px;
}
#sidebar .side_info {
  border-radius: 4px 4px 0 0;
  padding: 15px 8px 40px;
}

/* ===================================			POST			=====================================
	 ======================================================================================== */




/* ===================================			TABLE			=====================================
	 ======================================================================================== */
.table_brown table tr th, .table_brown table tr td {
  padding: 10px 20px;
  border: 1px solid #d3d0a7;
  vertical-align: top;
	text-align: left;
}
.table_brown table tr th {
  background: #eceac9;
  font-weight: normal;
  width: 23%;
}


/* ===================================			TITLE			=====================================
	 ======================================================================================== */
.module .module-title {
	font-size: 18px;
	margin-bottom: 15px;
	line-height: 1.4em;
}
.title_mb0.module .module-title {
  margin-bottom: 0;
}
.title_mb5.module .module-title {
  margin-bottom: 5px;
}
.title_mb10.module .module-title {
  margin-bottom: 10px;
}
.title_mb20.module .module-title {
  margin-bottom: 20px;
}
.title_mb25.module .module-title {
  margin-bottom: 25px;
}
.title_pink.module .module-title {
  font-size: 20px;
  color: #FFF;
  padding:6px 10px 6px 40px;
  background: url(../../uploads/circle_bg.png) no-repeat 12px 11px, url(../../uploads/title_bg.png);
  border-radius: 4px;
  font-family: tbudrgothic-std, sans-serif;
}
.title_bd.module .module-title {
  color: #df8fa7;
  font-size: 18px;
  font-family: tbudrgothic-std, sans-serif;
  border-bottom: 2px dashed #ce6685;
  padding-bottom: 8px;
}

/* ===================================			OTHER			=====================================
	 ======================================================================================== */
.module {
	margin-bottom: 30px;
}
.module p:last-child {
	margin-bottom: 0;
}
.br4 {
  border-radius: 4px;
}
.border_radius_5 {
  border-radius: 5px;
}

.module.module-image.bordered .image-wrap img {
	padding: 2px;
	box-sizing: border-box;
    width: auto;
}

#pagewrap .img_wrap_mb0 .image-wrap {
  margin-bottom: 0;
}

#pagewrap .mb15 {
  margin-bottom: 15px;
}
#pagewrap .mb20 {
  margin-bottom: 20px;
}

#pagewrap .txt_charm {
  background: url(../../uploads/title1_03.png) no-repeat left top 5px;
  color: #df8fa7;
  font-size: 22px;
  font-family: tbudrgothic-std, sans-serif;
  border-bottom: 2px dashed #ce6685;
  padding-left: 65px;
  line-height: 1.4;
  padding-bottom: 10px;
}
#pagewrap .list_charm ul {
  margin: 0;
}
#pagewrap .list_charm ul li {
  background: url(../../uploads/icon.png) no-repeat;
  list-style: none;
  padding: 0 0 0 20px;
  margin-bottom: 10px;
}
.module-image.bordered .image-wrap img {
  border-color: #dcdddd;
}
#pagewrap .box_wood {
  background: url(../../uploads/flow1_01.png) no-repeat, url(../../uploads/flow1_03.png) no-repeat top right, url(../../uploads/flow1_23.png) no-repeat bottom right, url(../../uploads/flow1_19.png) no-repeat left bottom, url(../../uploads/flow1_04.png) repeat-y left,url(../../uploads/flow1_04.png) repeat-y right, url(../../uploads/flow1_22.png) repeat-x bottom, url(../../uploads/flow1_22.png) repeat-x top, url(../../uploads/flow1_08.png);
  padding: 30px 30px 0;
}
#pagewrap .txt_flow_pink {
  margin: 0 auto;
  background: #df8fa7;
  color: white;
  font-family: tbudrgothic-std, sans-serif;
  font-size: 16px;
  text-align: center;
  padding: 18px 10px;
  max-width: 190px;
}
#pagewrap .txt_paper {
  background: url(../../uploads/flow2_07.jpg) repeat-y, url(../../uploads/flow2_10.jpg);
  padding: 20px 15px 20px 38px;
}

/* nakano */
.h-no .tb_text_wrap{
	 font-family: tbudrgothic-std, sans-serif;
  font-size: 20px;
    color: #666;
    font-weight: bold;
  display:inline-block;
}
.h-no strong{
	  font-size: 28px;
}
.h-no.h-no-1 strong,
.h-no.h-no-6 strong{
  color:#D1748F;
}
.h-no.h-no-2 strong{
  color:#C181D8;
}
.h-no.h-no-3 strong{
  color:#8896DD;
}
.h-no.h-no-4 strong{
  color:#6ABDCB;
}
.h-no.h-no-5 strong{
  color:#83BA5D;
}

.h-no::before{
  color:#fff;
  display:inline-block;
  padding:0 11px;
  font-size:24px;
  	 font-family: tbudrgothic-std, sans-serif;
  border-radius: 50%;
  vertical-align: top;
  margin-top: 3px;
}
.h-no.h-no-1::before{
	content:"1";
  background-color:#D1748F;
}
.h-no.h-no-2::before{
	content:"2";
  background-color:#C181D8;
}
.h-no.h-no-3::before{
	content:"3";
  background-color:#8896DD;
}
.h-no.h-no-4::before{
	content:"4";
  background-color:#6ABDCB;
}
.h-no.h-no-5::before{
	content:"5";
  background-color:#83BA5D;
}
.h-no.h-no-6::before{
	content:"6";
  background-color:#D1748F;
}
#body .cp-set .image-center .image-content {
	margin-top: 6px;
	padding: 0;
}

/* nakano-end */




/* 20250428 */
.site a:hover img {
    opacity: 0.70;
}








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

	Media Query

============================================= */
@media screen and (max-width: 1180px) { /* for tablet landscapes */

	#pagewrap {
		position: relative;
	}

	#header.header {
		padding-top: 0;
	}

	/* module menu button visible */
	#menu-button{
		visibility:visible;
		opacity:1;
	}
	
	/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
	#main-menu-container {
		position: fixed;
		z-index: 700;
		top: 0;
		left: -100vw;
		right: auto;
		bottom: auto;
		overflow-y: auto;
		background: #df8fa8;
		display:block;
		width: 100vw;
		height: 100vh;
		transition: .3s linear;
	}
	#main-menu-container.is-active{
		left: 0;	
	}
	/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
	#main-menu-container #main-menu {
		flex-direction: column;
		max-width: 100%;
	}
	#header #main-menu-container #main-menu li a {
		background: none;
		display: block;
        width: auto;
        text-align: center;
	}

}

@media screen and (max-width: 1024px) { /* for tablet landscape */

	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	.wpcf7 table tr th,
	.wpcf7 table tr td{
		width:100%;
		display:block;
		padding: 10px 0px;
	}
	.wpcf7 table tr th{
		padding-bottom:0;
	}
	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	
	
	 body #responsive-btn, body #responsive-nav-wrapper {
    background: #DF8FA8;
  }

  #footerwrap .f-con {
    position: fixed;
    bottom: 0;
    width: 100%;
    background: #df8fa8;
  }
  body #footerwrap .f-con a {
    padding: 5px;
    border-left: 1px solid #fff;
    color: #fff;
  }
  body #footerwrap .f-con a:first-child{
      border-left:none;
  }

  body #responsive-nav-wrapper .off-canvas-nav #main-nav {
    background: none;
    position: absolute;
  }
   body #global-nav #main-nav li.nav00 {
     display: block;
  }
   body #global-nav #main-nav li a {
      width: 100%;
      height: auto;
      text-indent: 0;
  }
  
     /*----- hamburger-button -----*/
   #responsive-btn.hb-icon a .n_title{
    color: #fff;
    text-decoration: none;
    font-size: 11px;
    position: absolute;
    top: 36px;
}

   #responsive-btn.hb-icon{
    position: fixed;
    top: 0;
    right: 0;
     left: auto;
     padding: 0;
    width: 60px;
     	height:60px;
         background: #DF8FA8;
}
 .hb-icon > a {
    display: table;
    width: 60px;
    text-decoration: none;
    outline: none;
}
  .hb-icon > a > .n_title {
    display: table-cell;
    width: 60px;
    height: 60px;
    vertical-align: bottom;
    padding-bottom: 10px;
    font-size: 0.8rem;
    text-align: center;
}
  .hb-icon > a > span:nth-of-type(1) {
    top: 16px;
}
  .hb-icon > a > span:nth-of-type(2) {
    top: 23px;
}
  .hb-icon > a > span:nth-of-type(3) {
    top: 30px;
}
  .hb-icon > a > span:nth-of-type(1), .hb-icon > a > span:nth-of-type(2), .hb-icon > a > span:nth-of-type(3) {
    display: inline-block;
    position: absolute;
    left: 19px;
    width: 22px;
    height: 3px;
    border-radius: 10px;
    background-color: #fff;
    transition: all .4s;
}
  .open.hb-icon > a {
    background-color: #004da1;
    color: #ffffff;
  }
  .open.hb-icon > a > span:nth-of-type(1) {
    top: 15px;
    -webkit-transform: translateY(8px) rotate(-315deg);
    transform: translateY(8px) rotate(-315deg);
}
  .open.hb-icon > a > span:nth-of-type(1), .open.hb-icon > a > span:nth-of-type(3) {
    left: 18px;
    width: 24px;
    background-color: #ffffff;
}
  .open.hb-icon > a > span:nth-of-type(2) {
    opacity: 0;
}
  .open.hb-icon > a > span:nth-of-type(3) {
    top: 31px;
    -webkit-transform: translateY(-8px) rotate(315deg);
    transform: translateY(-8px) rotate(315deg);
}
#responsive-btn:before{
	display:none;
}
  body #headerwrap{
  	padding-top:0;
  }
  #responsive-btn.hb-icon.open{
  	background: #8ec63f;
  }
	
	#headerwrap #header {
		flex-direction: column;
		align-items: center;
	}
  /*----- button-end -----*/
  .table_brown table tr th,
    .table_brown table tr td{
  	border-bottom:0;
  }
  .table_brown table tr:last-child td{
  	border-bottom: 1px solid #d3d0a7;
  }
  

}

@media screen and (max-width: 980px) { /* for mobile landscape */
	body #pc-backtop {
		display: none;
	}
	#footer .sp-footer-icons-container {
		display: flex;
	}
	body #footer .sp-footer-icons-container a {
		color: #fff;
        border-color: #fff;
        background: #DF8FA8;
	}
	body #footer .sp-footer-icons-container a svg {
		fill: #ce6584;
	}
	#pagewrap {
		padding-bottom: 50px;
	}
}

@media screen and (max-width: 768px) { /* for mobile  */
.module.module-image .image-wrap {
    display: block;
    text-align: center;
  }

#pagewrap .img_wrap_mb0 .image-wrap {
    margin-bottom: 1em;
  }
  .title_pink.module .module-title {
    font-size: 18px;
    color: #FFF;
    padding: 4px 5px 4px 35px;
    background: url(../../uploads/circle_bg.png) no-repeat 8px 8px, url(../../uploads/title_bg.png);
    border-radius: 4px;
}
  .title_bd.module .module-title {
    font-size: 16px;
  }
  #footer .f_content {
    float: none;
    text-align: center;
	}
  body #footer #footer-nav {
	  float: none;
	  padding: 20px 0;
      text-align: center;
  }
  #header .social-widget {
    display: none;
  }
  #headerwrap #header {
    padding: 0;
  }
  #pagewrap .txt_charm {
    background: url(../../uploads/title1_03.png) no-repeat left top 5px;
    background-size: 30px;
    color: #df8fa7;
    font-size: 18px;
    font-family: tbudrgothic-std, sans-serif;
    border-bottom: 2px dashed #ce6685;
    padding-left: 40px;
    line-height: 1.4;
  }
	#header .h_info {
		display: block;
	}
	.sp-full .row_inner {
		max-width: 100%;
	}
	#body #layout {
    	display: block;
		max-width: 94%;
	}
	#body #layout #sidebar {
		padding: 40px 0 0;
	}
	#footer .f_content img {
		display: block;
		vertical-align: middle;
		text-align: center;
		margin: 0 auto;
	}
	.table_brown table tr th,
    .table_brown table tr td{
  		border-bottom:0;
		display: block;
  }
	.table_brown table tr th {
		width: auto;
	}
	

}

@media screen and (max-width: 680px) { /* for mobile small  */
	#header .lb, #header .rb {
    float: none;
    text-align: center;
	}
  #body #layout #content .type-page {
    padding: 10px;
    border: 2px solid white;
  }
  #body #sidebar {
    max-width: 240px !important;
    margin: 0 auto !important;
    float: none;
	}
  
  .top-bn{
  	max-width:215px;
    margin:0 auto;
  }
  #headerwrap #site-description{
  	max-width: calc(100% - 60px);
    margin: 0 60px 0 0;
    padding: 10px;
  }
  #headerwrap #site-logo{
  	margin-bottom: 20px;
  }
  .h-no::before{
  	padding: 0 10px;
    font-size: 20px;
  }
  .h-no strong{
  	font-size: 25px;
  }
	.table_brown table tr th, .table_brown table tr td {
/*     	padding: 8px 10px;  */
	}

}



