@charset "UTF-8";
/*Reset Style*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  position: relative;
}

h1, h2, h3, h4, h5, h6 {
  /*	clear: both;*/
  font-weight: normal;
}

/*ol, */
ul {
  list-style: none;
}

blockquote {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: '';
  content: none;
}

del {
  text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

a img {
  border: none;
}

* {
  box-sizing: border-box;
}

/*  clearfix  */
.clearfix:after {
  content: ".";
  /* 新しい要素を作る */
  display: block;
  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*/
  /*/
	height: auto;
	overflow: hidden;
	/**/
}

body {
  background: none;
  color: #343426;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

img {
  max-width: 100%;
}

p {
  font-size: 14px;
  line-height: 1.8;
}
a[href^="tel:"] {
	color:#fff;
	text-decoration: none;
	pointer-events: none;
}


  header {
    width: 100%;
    position: relative;


  }
  header .inner {
    max-width: 1900px;
    margin: auto;
    padding: 0 0 0 0;
    width: 100%;
	  overflow: hidden;
	  position: relative;
  }

  header .inner .logo {
      margin: 15px 2%;
      max-width: 184px;
      float: left;
      width: 10%;
  }
  header .inner .logo img{
    width:100%;
}
header .taiken_btn{
    position: absolute;
    top: 0;
    right: 0;
    width: 52%;
}
nav {
    position: relative;
    float: left;
    width: 72%;
    max-width: 1350px;
    margin: 3vw 0 0 1%;
}

nav ul {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-justify-content: center;
    justify-content: center;
    max-width: 1350px;
    margin: 0 auto;
    padding: 10px 0px 0;
    position: relative;
}
  nav ul li {
	color: #3F3835;
	width: 14.28571%;
	text-align: center;
  background:url(../img/nav_line.png)no-repeat left top;

	}

  nav ul li:nth-of-type(8){
    background:url(../img/nav_line.png)no-repeat left top,
              url(../img/nav_line.png)no-repeat right top;


  }
  nav ul li + li a{
	}
  nav ul li:hover {
	}
  nav ul li a, nav ul li span {
      text-decoration: none;
      font-size: 0.851065vw;
      color: #3F3835;
      font-weight: bold;
      width: 100%;
  }
  nav ul li.line2 a, nav ul li.line2 span {
	padding: 5% 0;
  }
	nav ul li a{

	}

  nav ul li a:hover {

  }

  #social {
      position: absolute;
      right: 2%;
      top: 2.9vw;
      overflow: hidden;
      width: 6%;
  }
  #social ul li {
      max-width: 46px;
      width: 35%;
      float: left;
  }
  #social ul li + li {
      margin-left: 20%;
  }

#breadcrumb{
	padding: 0px 0;
	background:#333333;
	color:#fff;
}
#breadcrumb p{
    margin: 2px auto 0;
}

#breadcrumb p a{
	color:#fff;
	text-decoration: none;
	vertical-align: top;
}

/*------------------------------------------------------------*/
#title{
	padding: 0px 0;
	background:#EEEEEE;
	overflow: hidden
}
#title .sub_title{
	overflow: hidden;
	max-width:1000px;
	margin:0 auto;
    padding: 1% 0% 0%;
}
#title .sub_title dl{
	line-height: 1.8;
}
#title .sub_title dl dt{
	float:left;
	border-right:1px solid #000;
	font-weight:bold;
	padding-right:1%;
	font-size:14px;
	/*width: 10%;*/
}
#title .sub_title dl dt h1{
	font-weight:bold;
	font-size:14px;
	/*width: 10%;*/
}
#title .sub_title dl dd{
	float:left;
	padding-left:1%;
	font-size:14px;
    width: 71%;
}
#title .inner{
	max-width:1400px;
	margin:0 auto;
	overflow: hidden
}
#title .tit_box{
	width:40.3%;
	float:left;
	position: relative;
    padding: 1% 2% 2%;
}
#title .tit_box + .tit_box{
	width:59.7%;
}
#title .tit_box h2 img{
	width:auto;
}
#title .tit_box img{
	width:100%;
}
#title h2{
	text-align: left;
	margin: 10% auto 0;
}
#title .tit_box .txt{
	position: absolute;
	bottom:0;
	font-size:20px;
}
#consultation{
	padding: 100px 0 0;
}


#consultation p{
	font-size:46px;
	text-align: center;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
	font-weight:bold;
    margin: 0 auto 50px;
	line-height: 43px;

}

#consultation p span{
	font-size:24px;
	display: block;
}

#consultation p.contact_txt{
	font-size:32px;
	line-height: 63px;

}

@media (max-width: 1000px) {
#title .tit_box .txt{
	position: relative;
	font-size:16px;
}
}

@media (max-width: 768px) {

#consultation {
    padding: 30px 0 0;
}

#consultation p {
    font-size: 6vw;
}
#consultation p span {
    font-size: 3.5vw;
}
#consultation p.contact_txt {
    font-size: 4.2vw;
    line-height: 7.2vw;
	width: 95%;
}


#title .tit_box {
    width: 100%;
    float: none;
}
#title .sub_title{
}
#title .sub_title dl dt{
	float:none;
	border-right:none;
	margin:2% 0;
    width: 100%;
}
#title .sub_title dl dd{
	float:none;
	padding-left:0;
    width: 100%;
}



#title .tit_box + .tit_box{
    width: 100%;
}
#title h2 {
    text-align: center;
    margin: 2% auto 0;
}
#title .tit_box .txt {
    margin:2% auto 0;
    font-size: 14px;
}


}
/*------------------------------------------------------------*/




#mainvisual {
    z-index: 0;
    position: relative;
}


section {
    padding: 100px 0;
	clear:both;
	overflow: hidden;
	position: relative;
}

section .inner{
	max-width:1900px;
	margin:0 auto;
}
section h2{
	text-align: center;
	margin: 0px auto 50px;
}

#form{
	background:#6D6091;
}
#form .mfp_rows a{
	color:#fff;
}


#footer{
	padding: 50px 0 0;
background: #FAFAF8;
}
#footer .inner {
    max-width: 1350px;
    overflow: hidden;
    margin-bottom: 50px;
}
#footer .f_list {
      max-width: 1350px;

}

#footer .f_list li a{
	border-left: none;
	font-size:16px;
}

#footer .f_list li {
    width: 14.28571%;
    text-align: center;
    background:url(../img/nav_line.png)no-repeat left top;

}
#footer .f_list li:last-child{
  background:url(../img/nav_line.png)no-repeat left top,
            url(../img/nav_line.png)no-repeat right top;


}

#footer .ft_logo {
    overflow: hidden;
    padding: 30px 0 0;
}
#footer .ft_logo .inner{
	margin-bottom: 0;
}
#footer .ft_logo img {
    display: block;
    margin: 0 auto;
    max-width: 227px;
    width: 17%;
}
#footer .ft_logo p{
	font-size:17px;
}




#footer ul a{
	color: #3F3835;
	text-decoration: none;
}
#footer ul {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-justify-content: center;
    justify-content: space-between;
    /* max-width: 1350px; */
    margin: 0 auto;
    /* padding: 10px 0px 0; */
    position: relative;
    text-align: center;
}
#footer ul span{
  font-size: 0.83vw;
}


.copyright {
    clear: both;
    color: #3F3835;
    padding: 0px 0 30px;
    text-align: center;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;

}
.copyright .inner{
	position:relative;
}

.copyright p{
	margin:0;
}

.float_box{
  position: relative;
}

.list {
    position: absolute;
    right: 0px;
    top: 20%;
    z-index: 999999999;
}
.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 20px;
    max-width: 200px;
    right: 0;
    z-index: 1;
    float: right;
    margin: 0 auto 0;
}
.sticky li + li{
    margin-top:10px;
}

.slick-prev, .slick-next {
  width: 40px !important;
  height: 90px !important;
}

.slick-prev:before, .slick-next:before {
  display: none;
}

.slick-prev {
  z-index: 1;
}

.slick-next {
  z-index: 1;
}



#banner .inner {
	margin: 0 auto;
	overflow: hidden;
}
#banner ul li {
	float:left;
	width:32%;
	width:48%;
	text-align: center;
}
#banner ul li + li {
	margin-left:2%;
}
#banner ul li span{
	margin:20px auto;
	display: block;
	font-size: 14px;
}





@media (max-width: 1519px) and (min-width: 769px) {

	nav ul li.annivarsery{
		display: none;
}
	#mainvisual p.annivarsery{
		position: absolute;
		top: inherit;
		left: inherit;
		z-index: 999999;
		bottom: -29%;
		right: 0;
		width: 30%;
		display: block;
}
}
@media (max-width: 1260px) and (min-width: 769px) {


}
@media (max-width: 1153px) and (min-width: 769px) {


}
@media (max-width: 1024px) and (min-width: 769px) {


}

@media (max-width: 1100px) {
  .list {
    display: none;
  }
}




@media (min-width: 1001px) {
  #pagetop {
    position: fixed;
    right: 0px;
    bottom: 0;
    z-index: 999999999999;
  }
  .sp {
    display: none !important;
  }
  .pc {
    display: inherit !important;
  }
}

@media (max-width: 1000px) and (min-width: 769px) {

  #pagetop {
    position: fixed;
	right: 0;
    bottom: 0;
	}
  .sp {
    display: none !important;
  }
  .pc {
    display: inherit !important;
  }



}

@media (max-width: 768px) {

a[href^="tel:"] {
	color:#fff;
	text-decoration: none;
	pointer-events: inherit;
}
header .inner .logo {
    margin: 10px auto;
    max-width: 184px;
    float: none;
    width: 18%;
}

  .sp {
    display: inherit !important;
  }
  .pc {
    display: none !important;
  }
  html {
    height: 100%;
  }
  .ovfw {
    height: 100%;
  }
  nav {
  margin: 0vw 0 0 0%;
}
nav ul {
    display: inherit ;
    justify-content: space-between;
    align-items: center;
}
nav ul li a:hover {
    border-bottom: none;
    margin-bottom: 0;
}

nav ul li {
	padding: 0;
  }
  nav ul li:first-child {
  }
  nav ul li:last-child {
  }
  nav ul li a, nav ul li span {
	}
  nav ul li span {
  }
  nav ul li span.open {
  }
  nav ul ul.childnavi {
  }
  nav ul ul.childnavi li a {
  }
  nav ul.sp {
  }
  nav ul.sp li {
  }
  nav ul.sp li:first-child {
  }
  nav ul.sp li:first-child a {
  }
  nav ul.sp li a {
  }

  .nav_social {
      width: 50% !important;
      text-align: center;
  }
  .nav_social img{
    margin:0 auto;
        display: block;
  }

  #social {
      position: absolute;
      left: 4%;
      top: 17px;
      overflow: hidden;
      width: 21%;
      z-index: 9999999999;
  }


  #pagetop {
    position: fixed;
    right: 0px;
    bottom: 0px;
    z-index: 9999999999;
}
section {
    padding: 20px 0;
}
section h2 {
    margin: 0px auto 3%;
}

#footer {
    padding: 0;
}
#footer .inner {
    margin-bottom: 0;
}

#footer ul {
    display: -webkit-flex;
    display: block;
    width: 85%;
    overflow: hidden;
    margin: 40px auto 0;
}
#footer ul a {
    text-decoration: none;
}
#footer ul span {
    border-left: none;
    padding-left: 0;
    font-size: 14px;
}

#footer .f_list li {
    width: 50%;
    text-align: center;
    background: none;
    margin: 0px auto 15px;
    background: url(../img/nav_line.png)no-repeat left top;
    float: left;
}
#footer .f_list li:nth-of-type(2n) {
  background: url(../img/nav_line.png)no-repeat left top,
              url(../img/nav_line.png)no-repeat right top;


}
/*
#footer .f_list li:last-child {
    clear: both;
    float: none;
}
*/

  #footer .ft_logo img {
      float: none;
      width: 45%;
      display: block;
      margin: 0 auto 15px;
  }
  #footer .ft_logo p {
      margin: 0 auto;
      font-size: 10px;
  }


#footer .sp_nav .list ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.copyright p {
    text-align: center;
}


.sticky {
    top: 85%;
    width: 40%;
  }
}


/*-------------------------------------------------------*/

.side_list {
    /*position: absolute;
    left: 0px;
    height: 93%;
    top: 0;
    z-index: 999999999;*/
}

.sidebar {
	width: 100%;
    padding: 0;
    overflow: hidden;
	position:relative;
	z-index: 9;
}
.sidebar .inner {
    max-width: 300px;
    margin: auto;
}
.sidebar .sidenav {
    width: 260px;
    box-sizing: border-box;
}

.sidebar .sidenav ul{
    background:#333333;
	padding:10px 0 10px 10px
}
.sidebar .sidenav ul + ul{
	border-top:1px solid #fff;
}
.sidebar .sidenav ul:nth-of-type(2n){
    background:#444444;
}
.sidebar .sidenav ul li{
    color:#fff;
	font-size:16px;
	margin:10px auto 0;
    background:url("../img/side_icon.png") no-repeat left 1px;
    padding: 0 15px 0 25px;
	line-height: 1.3;
}
.sidebar .sidenav ul li.title{
    color:#fff;
	font-size:20px;
	font-weight:bold;
	border-bottom:1px solid #fff;
	padding:0 0 5px;
    background:none;
	margin:0 auto 0;


}

.sidebar .sidenav ul a{
	color:#fff;
	font-size:16px;
	text-decoration: none;
}

.sidebar .ul_open_h {
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    position: fixed;
}
.sidebar .sidenav .navOpen {
    width: 34px;
    height: 100px;
    background: url("../img/sidemenu_open.png") no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 260px;
}
.sidebar .sidenav .navOpen.on {
    background: url(../img/sidemenu_close.png) no-repeat;
    background-size: cover;
}

.sidebar .sideopen {
	left: -240px;
	top: 0;
    top: 50%;
    transform: translate(0, -50%);
}
.sidebar .sideopen.active {
    left: 0;
}



@media (max-width: 768px) {
.sidebar {
	display:none;
}
}
