@charset "UTF-8";
/* CSS Document */
.josefin-sans-Light {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}
.josefin-sans-Regular {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.josefin-sans-SemiBold {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}
.img_full img{
	width: 100%;
	height: auto;
}
#wrap {
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	overflow: hidden;
width: 100%;
}
#head {
	clear: both;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	z-index: 10;
	background-color: #FFF;
	height: 110px;
}
#headwrap {
	clear: both;
	width: 100%;
	height: 110px;
	background-color: #FFF;
	position: fixed;
	z-index: 1000;
	-webkit-box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
}
#logo {
	float: left;
	width: 26%;
	padding-left: 12px;
	padding-top: 10px;
	max-width: 340px;
}
#telwrap {
	text-align: right;
	float: right;
	padding-top: 10px;
	padding-right: 12px;
	padding-bottom: 15px;
}
#telwrap .serch {
	text-align: left;
}
.serch {
	padding: 0px 10px;
	background-color: #EAEAEA;
	border-radius: 30px;
	display: inline-block;
	vertical-align: middle;
	transition: all 0.5s ease 0s;
	transition-delay:0s;
	width: 20px;
	height: 40px;
	overflow: hidden;
}
.serch.js-active{
	width: 160px;
}
.serch .icon{
	display: block;
	cursor: pointer;
	padding-bottom: 0;
	padding: 0 0 2px;
	margin: 0;
	vertical-align: middle;
}
.serch form{
	display: none;
	width: 0%;
	transition: 1s;
	transition-delay:2s;
}

.serch.js-active form{
	display: block;
	width: 100%;
	transition: all 1s ease 1s;
	transition-delay:1s;
}
.serch.js-active .icon{
	display: none;
}
.serch form .serchbut {
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	margin-top: 11px;
	margin-bottom: 9px;
}
.serchbox {
	background-color: #EAEAEA;
	border-style: none;
	border-color: #EAEAEA;
	transition: all 1s ease 1s;
	width: 0px;
	transition-delay:2s;
}
.serch.js-active .serchbox {
	width: 120px;
	margin-left: 5px;
}
#siteserch {
	background-color: #EAEAEA;
	border-style: none;
	width: 0px;
	transition: all 0.7s ease 0s;
	margin-left: 0;
}
#siteserch:focus {
    width: 120px;
    outline:0;
	margin-left: 5px;
}


.telnum {
	color: #C69C6C;
  font-size: 20px;
  line-height: 1.6em;
  font-weight: bold;
	padding-right: 10px;
}
.telnum strong{
	font-size: 40px;
	line-height: 1.2em;
	color: #43341B;
	font-weight: 500;
}
#navwrap {
	clear: both;
	margin-right: 12px;
}
#navwrap02 {
  display: none;
  visibility: hidden;
}
#nav02 {
	margin-right: auto;
	margin-left: auto;
	text-align: right;
	padding-bottom: 20px;
}
#nav02 li {
	display: inline-block;
	border-left: 1px solid;
	color: #43341B;
}
#nav02 li:first-of-type{
	border-left: none;
}
#nav02 li strong{
	display: block;
	padding: 0 15px;
	cursor: pointer;
	font-weight: normal;
	line-height: 1.2em;
}
#nav02 li strong:after{
	content: " ";
	visibility: visible;
	background-image: url(../img/bg_nav.png);
	background-size: 100% auto;
	width: 12px;
	height: 6px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
	transition: 0.2s;
}
#nav02 li:hover strong:after{
	transform: rotate(180deg);
}
#nav02 li .submenu {
	position: absolute;
	width: 100vw;
	left: 0px;
	top: 90px;
	background-color: #F4F4F2;
	padding: 30px 0 50px;
	text-align: left;
	letter-spacing: -1em;
	transition: 0.5s;
	opacity: 0;
	display: none;
	border-top: 15px solid #FFF;
}
#nav02 li:hover .submenu {
	height: auto;
	display: block;
	opacity: 1;
}
.submenu .title {
	letter-spacing: 0;
	padding-left: 70px;
	width: 400px;
	display: inline-block;
	vertical-align: middle;
}
.submenu .title {
	letter-spacing: 0;
	padding-left: 70px;
	width: 400px;
	display: inline-block;
	vertical-align: middle;
}
.submenu .title .josefin-sans-Light{
	font-size: 36px;
	line-height: 1.2em;
	color: #C69C6C;
	padding-bottom: 0;
}
#nav02 li .submenu ul {
	display: inline-block;
	vertical-align: middle;
	width: calc(100% - 470px);
	max-width: 880px;
	letter-spacing: -1em;
}
#nav02 li .submenu li{
	width: calc((100% - 42px) / 3);
	margin-right: 20px!important;
	margin-left: 0;
	border-bottom: 1px solid #9F9F9F;
	border-left: none!important;
	border-right: none!important;
	display: inline-block!important;
	letter-spacing: 0;
}
#nav02 li .submenu li:nth-of-type(3n){
	margin-right: 0!important;
}
.submenu li a{
	display: block;
	padding-left: 24px;
	background-image: url(../img/bg_nav02.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 11px auto;
	color: #514327;
	text-decoration: none;
	padding-bottom: 10px;
	padding-top: 10px;
}
.submenu li a:hover{
	color: rgba(153,34,68,1.00);
}
.fbbut {
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 0px;
	padding-left: 20px;
	padding-right: 20px;
}
.engbut {
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 0px;
	padding-right: 20px;
}
.topnav{
	display: inline-block;
	vertical-align: middle;
	letter-spacing: -1em;
}
.topnav li{
	display: inline-block;
	letter-spacing: 0;
}
.topnav li a{
	display: block;
	color: #FFF;
	width: 120px;
	background-color: #BD8D56;
	text-align: center;
	line-height: 40px;
	text-decoration: none;
	margin-left: 4px;
	transition: 0.2s;
}
.topnav li a:hover{
	opacity: 0.8;
}
.topnav li:nth-of-type(2) a{
	background-color: #992244;
}
.topnav li:nth-of-type(3) a{
	background-color: #43341B;
}
.topnav li:nth-of-type(4) a{
	background-color: #707070;
}

#nav02 img {
  display: block;
}
#mainimg{
	position: relative;
	padding-top: 110px;
	background-image: url(../img/bg.png);
	background-size: 75px auto;
	background-color: #FFF;
}
#mainimg .inner{
	border-top: 10px solid #992244;
	
}
#mainimg p{
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	font-size: 18px;
	line-height: 1.8em;
}
#mainimg a{
	color: #968973;
	text-decoration: none;
}
#mainimg p#breadlist{
	font-size: 12px;
	line-height: 1.6em;
	padding: 25px 0 30px;
}
#mainimg h2{
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	font-size: 50px;
	line-height: 1.2em;
	font-weight: 600;
	padding-bottom: 50px;
}
ul.bxslider {
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  width: 100%;
  display: block;
  clear: both;
}
ul.bxslider li img {
  height: auto;
  padding-right: 0px;
  width: 100%;
}
ul.bxslider li {
  list-style-type: none;
  padding: 0px;
  width: 100%;
  text-align: center;
  position: relative;
}
#cont {
  clear: both;
	width: 90%;
  max-width: 1100px;
	margin: 0 auto;
	padding: 50px 0;
  position: relative;
}

.cont {
	clear: both;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 80px 0;
	position: relative;
}
#cont02 {
  clear: both;
	width: 100%;
	margin: 0 auto;
	padding: 50px 0;
  position: relative;
}
#cont02 .inner{
	width: 90%;
  max-width: 1100px;
	margin: 0 auto;}
#footwrap {
	background-color: #5E4A37;
	clear: both;
	overflow: hidden;
	border-top: 10px  solid #992244;
	font-size: 14px;
	line-height: 2em;
}
#foot {
	text-align: left;
	background-image: url(../img/bg.png), -webkit-linear-gradient(270deg,rgba(244,244,242,1.00) 0%,rgba(244,244,242,1.00) 100%);
	background-image: url(../img/bg.png), -moz-linear-gradient(270deg,rgba(244,244,242,1.00) 0%,rgba(244,244,242,1.00) 100%);
	background-image: url(../img/bg.png), -o-linear-gradient(270deg,rgba(244,244,242,1.00) 0%,rgba(244,244,242,1.00) 100%);
	background-image: url(../img/bg.png), linear-gradient(180deg,rgba(244,244,242,1.00) 0%,rgba(244,244,242,1.00) 100%);
	background-size: 75px auto;
}
#footmenu {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 0 0;
	display: flex;
	flex-wrap: wrap;
	position: relative;
}
#footmenu .footsns {
	padding-bottom: 0px;
	position: absolute;
	right: 0px;
	bottom: 60px;
}


#footmenu a{
	color: #43341B;
	text-decoration: none;
	transition: 0.2s;
}
#footmenu a:hover{
	color: #992244;
	text-decoration: underline;
}
#footmenu h5{
	font-weight: bold;
	font-size: 16px;
	line-height: 1.8em;
	padding-bottom: 6px;
	margin-bottom: 10px;
	border-bottom: 1px solid;
}
#footmenu li{
	background-image: url(../img/bg_foot.png);
	background-size: 10px auto;
	background-repeat: no-repeat;
	background-position: left 14px;
	padding-left: 20px;
	padding-bottom: 4px;
}
#footmenu .box{
	width: 21%;
	padding-right: 5.33%;
	padding-bottom: 50px;
}
#footmenu .box:nth-of-type(4n){
	padding-right: 0;
}
#footmenu .box .bold {
	font-weight: bold;
}
#footad {
	background-color: #5E4A37;
	letter-spacing: -1em;
}
#footad .inner .box {
	width: 38%;
	display: inline-block;
	letter-spacing: 0;
	vertical-align: bottom;
}

#footad .inner .box01 {
	width: 62%;
	display: inline-block;
	text-align:right;
	letter-spacing: 0;
	vertical-align: bottom;
}
#pagetop  {
	padding-bottom: 0px;
	position: fixed;
	right: 0px;
	bottom: 20px;
	z-index: 1000;
}
#footad li{
	display: inline-block;
	padding-left: 10px;
	padding-bottom: 10px;
}
#footad a{
	color: #FFF;
}
#cr {
}

#news {
  margin-bottom: 30px;
}
#news table {
  border-collapse: collapse;
  width: 100%;
}
#news th {
  text-align: left;
  vertical-align: top;
  padding-right: 5px;
  background-image: url(../img/list.gif);
  background-repeat: no-repeat;
  background-position: 0 16px;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 5px;
  border-bottom-width: 1px;
  border-bottom-style: dashed;
  border-bottom-color: #666;
  width: 30%;
}
#news td {
  padding-top: 10px;
  padding-bottom: 5px;
  border-bottom-width: 1px;
  border-bottom-style: dashed;
  border-bottom-color: #666;
}
#news .box01 {
  clear: both;
  overflow: auto;
  height: 240px;
  padding-right: 20px;
}
#sub h6 {
  text-align: center;
  font-size: 16px;
  line-height: 1.6em;
  border-bottom: 1px solid #575757;
  margin-bottom: 15px;
}
.list {
  padding-bottom: 20px;
}
.list li {
  padding-bottom: 10px;
  line-height: 20px;
  background-image: url(../img/list.gif);
  background-repeat: no-repeat;
  background-position: 0px 2px;
  padding-left: 20px;
}
.list a {
  color: #2E2E2E;
  text-decoration: none;
}
.midashi {
	clear: both;
	font-size: 18px;
	line-height: 1.6em;
	padding: 15px 40px;
	margin-bottom: 30px;
	color: #FFFFFF;
	background-color: #5E4A37;
	font-weight: bold;
	letter-spacing: 0;
}
.midashi img {
	display: inline-block;
	vertical-align: middle;
	padding-right: 30px;
}

.midashib {
  margin-bottom: 20px;
  text-align: center;
}
.midashib h4 {
  font-size: 26px;
  line-height: 1.em;
  line-height: 61.em;
  padding-bottom: 0px;
}
.midashi02 {
	font-size: 28px;
	line-height: 1.6em;
	clear: both;
	padding-bottom: 30px;
	font-weight: bold;
}
.midashi03 {
	font-size: 28px;
	line-height: 1.6em;
	font-weight: bold;
	padding-bottom: 20px;
}
.midashi03 .step {
	display: inline-block;
	font-size: 14px;
	color: #FFFFFF;
	font-weight: bold;
	width: 100px;
	text-align: center;
	border-radius: 50px;
	background-color: #992244;
	line-height: 1.2em;
	padding: 6px 0;
	margin-left: 10px;
	vertical-align: middle;
	margin-bottom: 6px;
}
.midashi04 {
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding-bottom: 0;
	padding-left: 40px;
	margin-bottom: 30px;
	background-image: url(../img/bg_midashi.png);
	background-size: 16px auto;
	background-repeat: repeat-y;
	background-position: left center;
	margin-top: 30px;
}

.komidashi {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.6em;
}
.komidashi02 {
	font-weight: bold;
	padding-bottom: 10px!important;
}
.komidashi02:first-letter{
	color: #992244
}
.komidashi03 {
	font-weight: bold;
	padding-bottom: 20px;
}
.txtbox {
	clear: both;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 40px;
}
.minusindent{
	margin-left: -10px;
}
.minusindent02{
	margin-left: -5px;
}
.txtbox ul {
	list-style-position: outside;
	list-style-type: disc !important;
	margin-left: 20px;
	padding-bottom: 10px;
}
.txtbox ul strong {
	color: #992244;
	font-weight: normal;
}
.txtbox ol,.txtbox02 ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
	list-style-position: outside;
	list-style-type: none!important;
	padding-left: 40px;
}
.txtbox ol li,.txtbox02 ol li{
	padding-bottom: 6px;
	position: relative;
}
.txtbox ol li:before,.txtbox02 ol li:before {
  position: absolute;
	left:-50px;
  content: "（" counter(list-item) "）";
}
.indentline .txtbox ol li:before,.indentline .txtbox02 ol li:before {
  position: absolute;
	left:40px!important;
  content: "（" counter(list-item) "）";
}

.txtbox02 {
	clear: both;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px solid #DEDDDD;
}

.txtbox02 ul {
	list-style-position: outside;
	list-style-type: disc !important;
	margin-left: 20px;
	padding-bottom: 10px;
}
.txtbox02 ul strong {
	color: #992244;
	font-weight: normal;
}

.linebox {
	clear: both;
	margin-right: auto;
	margin-left: auto;
	padding: 30px 40px 20px;
	border: 1px solid;
	margin-bottom: 30px;
	border-radius: 10px;
}
.centerphoto {
  text-align: center;
  clear: both;
  padding-bottom: 30px;
}
.centertxt {
  text-align: center!important;
  clear: both;
}
.righttxt {
  text-align: right;
  clear: both;
}
.tbl {
	width: 100%;
	margin-bottom: 20px;
	border-top: 1px solid #CCCCCC;
	clear: both;
}
.tbl td {
  padding: 15px 20px;
  text-align: left;
  vertical-align: top;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-right-style: solid;
  border-bottom-style: solid;
  border-right-color: #CCCCCC;
  border-bottom-color: #CCCCCC;
}
.tbl th {
	padding: 15px 20px;
	text-align: left;
	vertical-align: top;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCCCCC;
	border-bottom-color: #CCCCCC;
	background-color: #F4F4F2;
	font-weight: bold;
}
.tbl th.centertxt{
	text-align: center!important;
}
.tbl th:last-of-type,.tbl td:last-of-type{
	border-right: none;
}
.tbl thead th {
  padding: 15px 20px;
  text-align: left;
  vertical-align: top;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-right-style: solid;
  border-bottom-style: solid;
  border-right-color: #CCCCCC;
  border-bottom-color: #CCCCCC;
  background-color: #5E4A37;
	color: #FFF;
	font-weight: bold;
}
.tbl thead tr{
	border-bottom: 10px solid #FFF;
}

.tbl02 {
	width: 100%;
	margin-bottom: 20px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCCCCC;
	clear: both;
	background-color: #FFFFFF;
}
.tbl02 td {
	padding: 15px 20px;
	text-align: left;
	vertical-align: middle;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCCCCC;
	border-bottom-color:#CCCCCC;
}
.tbl02 td.price {
	width: 70px;
	text-align: right;
}
.tbl02 td.price02 {
	width: 110px;
	text-align: right;
}
.tbl02 td.price03 {
	width: 160px;
	text-align: right;
}
.tbl02 td.subject {
	padding: 15px 25px;
}

.tbl02 th {
	padding: 15px 10px;
	text-align: left;
	vertical-align: middle;
	border-right-width: 1px;
	border-bottom: 1px solid #CCCCCC;
	border-right-style: solid;
	border-right-color: #CCCCCC;
	background-color: #9D8E80;
	color: #FFF;
	font-weight: bold;
}
.tbl02 th.centertxt{
	text-align: center!important;
}
.tbl02 td:last-of-type{
	border-right: none;
}
.tbl02 thead th {
	padding: 15px;
	text-align: left;
	vertical-align: middle;
	border-right: 1px solid #CCCCCC;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCCCCC;
	background-color: #5E4A37;
	color: #FFF;
	font-weight: bold;
}

.tbl03 {
	width: 100%;
	margin-bottom: 20px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCCCCC;
	clear: both;
}
.tbl03 td {
	padding: 15px;
	text-align: left;
	vertical-align: middle;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCCCCC;
	border-bottom-color: #CCCCCC;
}
.tbl03 th {
	padding: 15px;
	text-align: left;
	vertical-align: middle;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCCCCC;
	border-bottom-color: #CCCCCC;
	background-color: #F4F4F2;
	font-weight: bold;
}
.tbl03 th.centertxt{
	text-align: center!important;
}
.tbl03 td:last-of-type{
	border-right: none;
}
.tbl03 thead th {
	padding: 15px;
	text-align: center;
	vertical-align: middle;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #CCCCCC;
	background-color: #5E4A37;
	color: #FFF;
	font-weight: bold;
}
.pagetop {
  text-align: right;
  clear: both;
  padding-bottom: 50px;
  font-size: 12px;
  line-height: 20px;
  color: #F15A24;
}
.pagetop a {
  background-color: #CFC1A9;
  padding: 10px;
  display: inline-block;
  color: #001226;
  text-decoration: none;
}
.pc-none {
  display: none;
}
.tab-none {
  display: none;
}
.sp-none {
  display: block;
}
.pc-none02 {
  display: none;
}
.sp-none02 {
  display: inline-block;
}
.telbox {
  background-color: #F4F4F2;
  padding: 50px 20px 40px;
  margin-bottom: 30px;
}
.telbox02 {
  background-color: #F4F4F2;
  padding: 50px 70px 40px;
  margin-bottom: 30px;
}
.linetitle {
	position: relative;
	padding-bottom: 0;
	margin-bottom: 20px;
	z-index: 10;
}
.linetitle strong{
	background-color: #F4F4F2;
	display: inline-block;
	padding-right: 20px;
}
.linetitle:after{
	visibility: visible;
	content: " ";
	width: 100%;
	height: 1px;
	background-color: #707070;
	left: 0;
	top: 50%;
	position: absolute;
	transform: translateY(-50%);
	display: block;
	z-index: -1;
}

.telbox02 table {
	float: left;
	width: 40%;
}
.telbox02 table:last-of-type{
	width: 46%;
	float: right;
}
.telbox02 th,.telbox02 td{
	background-image: url(../img/line.png);
	background-repeat: repeat-x;
	background-position: center center;
}
.telbox02 td{
	text-align: right;
}
.telbox02 th strong{
	background-color: #F4F4F2;
	padding-right: 10px;
	font-weight: normal;
}

.telbox02 td strong{
	background-color: #F4F4F2;
	padding-left: 10px;
	font-weight: normal;
}
.telbox h6{
	display: inline-block;
	vertical-align: middle;
	padding-right: 20px;
}
.telbox .telnum,.telbox02 .telnum{
	display: inline-block;
	vertical-align: middle;
}
.link {
	max-width: 360px;
  padding-bottom: 0px;
  margin: 20px 0;
  text-align: left;
  border-width: 1px;
  border-style: solid;
}
.link a {
	padding: 20px 50px;
	display: block;
	color: #514327;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 95% center;
	transition: 0.2s;
}
.link a:hover {
	background-size: 33px auto;
}
.link02 a{
text-decoration: none;
}
.link02 a img{
	display: inline-block;
	vertical-align: middle;
	padding-left: 10px;
}
.link03{
	margin-bottom: 10px;
	padding-bottom: 0;
}
.link03 a:after{
	content: " ";
	visibility: visible;
	display: inline-block;
	width: 26px;
	height: 26px;	
	background-image: url(../img/link.png);
	background-size: 100% auto;
	vertical-align: middle;
	margin-left: 10px;
}

.link04{
	margin-bottom: 10px;
	padding-bottom: 0;
	max-width: 220px;
	position: relative;
}
.link04 a{
	text-decoration: none;
}
.link04 a:after{
	content: " ";
	visibility: visible;
	display: inline-block;
	width: 26px;
	height: 26px;	
	background-image: url(../img/link.png);
	background-size: 100% auto;
	vertical-align: middle;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.link06 {
	max-width: 360px;
  padding: 0px!important;
  margin: 0 0 10px;
  text-align: left;
  border-width: 1px;
  border-style: solid;
}
.link06 a {
	padding: 20px 50px ;
	display: block;
	color: #514327;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 95% center;
	transition: 0.2s;
	line-height: 1.6em;
}
.link06 a:hover {
	background-size: 33px auto;
}
.link05 a{
text-decoration: none;
}
.link05 a img{
	display: inline-block;
	vertical-align: middle;
	padding-right: 10px;
}
.mojilist li {
  background-repeat: no-repeat;
  margin-left: 20px;
  text-indent: -20px;
  padding-bottom: 10px;
}
.mojilist li:before {
  content: "●";
  color: #DE891E;
  padding-right: 5px;
}
.faqbox {
	margin-bottom: 10px;
}
.faqbox .box p{
	transition: 4s ease-in-out;
}
.faqbox h5 {
	font-size: 18px;
	line-height: 1.6em;
	text-indent: 0;
	padding: 30px 60px 30px 80px;
	font-weight: bold;
	background-color: #F4F4F2;
	position: relative;
	background-image: url(../../img/faq/q.png);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 44px auto;
	border-top: 1px solid;
	border-bottom: 1px solid;
	margin-bottom: 20px;
}
.faqbox h5:before {display: none;
}
.faqbox h5:after{
	content: " ";
	visibility: visible;
	position: absolute;
	z-index: 10;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	background-image: url(../../img/faq/open.png);
	width: 30px;
	height: 30px;
	background-size: 30px auto;
	background-repeat: no-repeat;
	background-position: center center;
}
.faqbox h5.opened:after{
	background-image: url(../../img/faq/close.png);
}
.faqbox p {
	padding: 10px 0px 30px;
	line-height: 1.8em;
}
.pname {
  font-size: 18px;
  text-align: right;
  line-height: 1.6em;
}
.caption {
  color: hsla(359, 100%, 39%, 1.00);
}
.drop {
  padding-bottom: 30px;
}
.drop dt {
  background-color: #44B0FF;
  padding: 10px;
  color: #FFFFFF;
  margin-bottom: 10px;
  position: relative;
}
.drop dt:after {
  visibility: visible;
  content: '+';
  top: 50%;
  right: 20px;
  font-weight: bold;
  transform: translateY(-50%);
  position: absolute;
}
.drop dt.opened:after {
  content: '－';
}
.drop dd {
  padding: 0 10px 20px;
}
/*タブ切り替え全体のスタイル*/
.tabs {
  padding-bottom: 40px;
  background-color: #fff;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 30px;
}
/*タブのスタイル*/
.tab_item {
  width: calc(100%/3);
  height: 50px;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  font-weight: bold;
  transition: all 0.2s ease;
}
.tab_item:hover {
  opacity: 0.75;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding-top: 40px;
  padding-bottom: 0;
  clear: both;
  overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#tab01:checked ~ #tab01_content, #tab02:checked ~ #tab02_content, #tab03:checked ~ #tab03_content {
  display: block;
}
/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #59b057;
  color: #fff;
}
.tabs input:checked + .tab_item:nth-of-type(2n) {
  background-color: #69c7f1;
  color: #fff;
}
.tabs input:checked + .tab_item:nth-of-type(3n) {
  background-color: #f5a4c0;
  color: #fff;
}
.gcatch {
	background-color: #F4F4F2;
}
.gcatch .inner {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 70px 0 60px;
}
.gcont {
	background-color: #F4F4F2;
}
.gcont .wrap{
	background-color: #FFF;
}
.gcont .inner {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 70px 0;
}

#footad .inner {
	text-align: left;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 0;
	color: #FFF;
	font-size: 14px;
	line-height: 1.8em;
}
.linkflex {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 20px;
}
.linkflex li{
	margin-right: 8.5%;
	width: calc((100% - 17%) /3);
	list-style: none!important;
	background-image: url(../img/outerlink.png);
	background-size: 21px auto;
	background-repeat: no-repeat;
	background-position: left center;
	border-bottom: 1px solid #9F9F9F;
}
.linkflex li:nth-of-type(3n){
	margin-right: 0;
}
.linkflex li a {
	padding: 20px 36px;
	display: block;
	line-height: 1.6em;
	background-image: url(../img/link.png);
	background-position: right center;
	background-size: 30px auto;
	background-repeat: no-repeat;
	text-decoration: none;
}
.linkflex li a.line2{
	padding: 32px 36px;
}

.linkflex02 {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 20px;
}
.linkflex02 li{
	margin-right: 4.3%;
	width: calc((100% - 12.9%) /4);
	list-style: none!important;
	border-bottom: 1px solid #9F9F9F;
}
.linkflex02 li:nth-of-type(4n){
	margin-right: 0;
}
.linkflex02 li a {
	padding: 20px 36px 20px 0;
	display: block;
	line-height: 1.6em;
	background-image: url(../img/link.png);
	background-position: right center;
	background-size: 30px auto;
	background-repeat: no-repeat;
	text-decoration: none;
}
.linkflex02 li a.line2{
	padding: 32px 36px;
}
.engtitle {
	border-bottom: 1px solid #9F9F9F;
	margin-bottom: 40px;
	padding-bottom: 10px;
}
.engtitle .josefin-sans-Light{
	color: #C69C6C;
	font-size: 60px;
	line-height: 0.8em;
	display: inline-block;
	vertical-align: bottom;
	padding-right: 20px;
	padding-bottom: 15px;
}
.engtitle h3{
	font-size: 18px;
	line-height: 1.6em;
	display: inline-block;
	vertical-align: bottom;
	padding-bottom: 20px;
}
.engtitle02 {
	padding-bottom: 40px;
}
.engtitle02 .josefin-sans-Light{
	color: #C69C6C;
	font-size: 60px;
	line-height: 0.8em;
	display: inline-block;
	vertical-align: bottom;
	padding-right: 20px;
	padding-bottom: 15px;
}
.engtitle02 h3{
	font-size: 18px;
	line-height: 1.6em;
	display: inline-block;
	vertical-align: bottom;
	padding-bottom: 20px;
	color: #FFF;
}
.engtitle03 {
	padding-bottom: 20px;
	text-align: center;
}
.engtitle03 .josefin-sans-Light{
	color: #C69C6C;
	font-size: 60px;
	line-height: 0.8em;
	vertical-align: bottom;
	padding-bottom: 15px;
}
.engtitle03 h3{
	font-size: 18px;
	line-height: 1.6em;
	vertical-align: bottom;
	padding-bottom: 20px;
}
.icontitle{
	padding-bottom: 10px;
	margin-bottom: 20px;
	letter-spacing: 0px;
}
.icontitle img{
	padding-right: 20px;
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 0px;
}
.icontitle02{
	border-bottom: 1px solid;
	padding-bottom: 0;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
.icontitle02 img{
	padding-right: 20px;
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 0px;
}
.iconlink{
	border-bottom: 1px solid;
	padding-bottom: 0;
}
.iconlink a{
	padding: 20px 40px 20px 0;
	display: block;
	position: relative;
	line-height: 1em;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 100% center;
	transition: 0.2s;
}
.iconlink a:hover{
	background-size: 32px auto;
}
.iconlink a img{
	display: inline-block;
	vertical-align: middle;
	padding-right: 30px;
}
.pageanq ul{
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 100px;
}
.pageanq li {
	width: calc((100% - 60px) / 3);
	padding-bottom: 0px;
	text-align: left;
	display: inline-block;
	margin-right: 26px;
	margin-bottom: 10px;
}
.pageanq li a {
	padding: 20px 50px 20px 30px;
  border-width: 1px;
  border-style: solid;
	display: block;
	color: #514327;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 95% center;
	transition: 0.2s;
}
.pageanq li:nth-of-type(3n){
	margin-right: 0!important;
}
.pageanq li a:hover {
	background-size: 33px auto;
}
.indent {
	padding-left: 3em;
}
.tred {
	color: #992244;
}
.indentline {
	margin-left: 20px;
	padding-left: 20px;
	border-left: 1px solid #992244;
	margin-bottom: 20px;
}
.center2link{
	text-align: center;
	letter-spacing: -1em;
	padding-bottom: 100px;
	clear: both;
}
.center2link li {
	width: 360px;
  padding-bottom: 0px;
  text-align: left;
  border-width: 1px;
  border-style: solid;
	display: inline-block;
	letter-spacing: 0;
	margin: 0 20px;
}
.center2link li a {
	padding: 20px 50px;
	display: block;
	color: #514327;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 95% center;
	transition: 0.2s;
}
.center2link li a:hover {
	background-size: 33px auto;
}
.center2link02{
	text-align: center;
	letter-spacing: -1em;
	padding-bottom: 0px;
	clear: both;
}
.center2link02 li {
  padding-bottom: 0px;
  text-align: left;
  border-width: 1px;
  border-style: solid;
	display: inline-block;
	letter-spacing: 0;
	margin: 0 20px;
}
.center2link02 li a {
	padding: 20px 80px 20px 30px;
	display: block;
	color: #514327;
	text-decoration: none;
	background-image: url(../img/link.png);
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: 95% center;
	transition: 0.2s;
}
.center2link02 li:nth-of-type(2n) a {
	background-position: 92% center;
}
.center2link02 li a:hover {
	background-size: 33px auto;
}
.center2link02 li img{
	display: inline-block;
	vertical-align: middle;
	padding-right: 20px;
}
.photo2line{
	padding-bottom: 10px;
}
.photo2line .flex{
	display: flex;
	flex-wrap: wrap;
	padding-top: 30px;
}
.photo2line .flex .box{
	width: 47%;
	padding-right: 6%;
	padding-bottom: 50px;
}
.photo2line .flex .box:nth-of-type(2n){
	padding-right: 0;
}

.photo4line{
	padding-bottom: 20px;
}
.photo4line .flex{
	display: flex;
	flex-wrap: wrap;
}
.photo4line .flex .box{
	width: 24%;
	padding-right: 1.3%;
	padding-bottom: 30px;
}
.photo4line .flex .box:nth-of-type(4n){
	padding-right: 0;
}

.photo3line{
	padding-bottom: 20px;
}
.photo3line .flex{
	display: flex;
	flex-wrap: wrap;
}
.photo3line .flex .box{
	width: 32%;
	padding-right: 2%;
	padding-bottom: 30px;
}
.photo3line .flex .box:nth-of-type(3n){
	padding-right: 0;
}

.photo3line .flex02{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -20px;
}
.photo3line .flex02 .box{
	width: 28%;
	padding-right: 8%;
	padding-bottom: 30px;
}
.photo3line .flex02 .box:nth-of-type(3n){
	padding-right: 0;
}
.photo3line .flex02 .photo{
	position: relative;
}
.photo3line .flex02 .photo .icon{
	position: absolute;
	padding-bottom: 0;
	right: -18px;
	bottom: -8px;
}
.anc{
	margin-top: -110px;
	padding-top: 110px;
}
.ppbox {
	padding-top: 50px;
	text-align: center;
	padding-bottom: 30px;
}
.ppbox .submit input {
	width: 224px;
	line-height: 64px;
	background-color: #F2F2F2;
	border-radius: 6px;
	border: 1px solid #F2F2F2;
}
.img_und {
	padding-bottom: 50px;
}
