@charset "utf-8";
/*
body{
    overflow-x: hidden;
}
*/

* {
	padding: 0;
	margin: 0;
}

html {
  height: 100%;
}

body {
	color: #111;
	background-color: #FFFFFF;
	/* font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif; */
	/* font-family: "メイリオ", "Meiryo", arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; */
	/* font-family: 'M PLUS 1p', sans-serif; */
	  font-family: 'Noto Sans JP', sans-serif;
	word-wrap: break-word;
	height: 100%;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.6;
}

.font_mincho {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.font_gothic {
	font-family: "Noto Sans JP";
}

/* .font_mincho {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
} */

.font_garamond {
	font-family: 'Cormorant Garamond', serif;
}
.font_raleway {
	font-family: 'Raleway', sans-serif;
}

section,
article {
	display: block;
}

img {
	vertical-align: top;
	border: 0;
	border-style: none;
}

a img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

strong {
	  font-weight: 700;
}

li {
	list-style-type: none;
}

a {
	color: #000;
	text-decoration:none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
	outline : none;
}
a:hover {
	color: #fff;
	text-decoration: none;
}

table {
	border-collapse: collapse;
}
table td {
	border-collapse: collapse;
}

.clfix:after {
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}

.flex {
display: flex;
display: -ms-flexbox;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
width: 100%;
}

.tab-reader {
border: none; /* とりあえず線はいらないよ */
width: 100%;
}

.tab-reader-box1 {
    font-size: 15px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}

hr.tab-r-line {
position: relative; /* 君「ここ」にいてね */
top: calc(50% - 4px); /*「ここ」ってのは親要素の一番上から50%と1px下がったところだよ */
margin: 0 10px; /* 左右の余白は10pxとってね */
border: none; /* とりあえず線はいらないよ */
/* border-top: dotted 2px #CCC; */ /* でもやっぱりtopのborderだけだしてね */
border-top: dotted 2px #fff; /* でもやっぱりtopのborderだけだしてね */
background-color:rgba(0,0,0,0);
}

.tab-reader-box2 {
    flex-grow: 1; /*フレックスアイテムをどれだけ伸ばすか、どれだけ長くするか*/
    flex-shrink: 1; /*フレックスアイテムをどれだけ縮めるか、どれだけ短くするか*/
    flex-basis: auto; /*フレックスアイテムの初期の寸法はどれくらいにするか*/
    font-size: 13px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}

.tab-reader-box3 {
    font-size: 13px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
}

.tab-reader li+ li {
	border-left: initial;
}


#inline-content_m {
    display: none;
    /*width: 600px;*/
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content01 {
    display: none;
    /*width: 800px;*/
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content02 {
    display: none;
    /*width: 55vw;*/
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content03 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content04 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content05 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content06 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content07 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content08 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

#inline-content09 {
    display: none;
    width: 40%;
    height: auto;
    padding: 20px;
    margin: 0 auto;
    color: #000;
    background: #fff;
}

.item {
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
}

.item-image {
    width: 60%;
    height: auto;
    margin: 0 auto;
    padding: 10px;
}

.item-text {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    justify-content: center;
    align-content: center;
    align-items: center;
    font-size: 13px;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.8;
    padding: 10px;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}

.sns {
    width: 25px;
    padding-top: 10px;
    margin-left: 5px;
}

.mgr-16 {
    padding-right : 16px;
}

#about h1 {
	width: 400px;
	text-align: center;
	font-size: 20px;
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	padding-top: 30px;
	padding-bottom: 4px;
	margin-bottom: 10px;
	padding-right: auto;
	padding-left: auto;
	/*text-decoration: underline;*/
	border-bottom: 3px solid #3ab253;;
	display: inline-block;
	color: #3ab253;
}

.green {
	width: 760px;
	color: #3ab253;
	text-align: left;
	padding-left: 40px;
}

/*
ヘッダー
-------------------------------------------*/
.sm-slider, .sm-slider::after {
	top: 195px !important;
}

header {
	height: 200px;
	/* height: 270px; */
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
	position: fixed;
	transition: all 0.3s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

header.fixed .face_t a img {
	display: inline;
	position: absolute;
	padding:  0px;
	padding-left: 30px;
	/* left: 53px; */
	top: 35px;
	/* margin-left: 130px; */
	/* margin: 0 0 0 auto; */
	/* float: left; */
}

header.fixed .insta_t a img {
	display: inline;
	position: absolute;
	padding:  0px;
	padding-left: 30px;
	/* left: 58px; */
	top: 35px;
	/* margin-left: 170px; */
	/* margin: 0 0 0 auto; */
	/* float: left; */
}

header.fixed h1 a img {
	display: inline;
	position: absolute;
	padding:  0px;
	height: 40px;
	left:  20px;
	top: 20px;
	margin-left: 20px;
}

header h1 a img {
	top: 20px;
	height: 40px;
	left: 10px;
	margin-left: 30px;
}
header h1 a img {
	top: 7px;
	left:5px;
	padding-left: 10px;
	height: 40px;
}

header .h_btn a {
	width: 160px;
	top: 20px;
	right: 10px;
	line-height: 38px;
	padding-top: 2px;
	font-size: 14px;
	font-weight: 400;
}

header .h_tel a {
	width: 180px;
	top: 20px;
	right: 180px;
	line-height: 38px;
	padding-top: 2px;
	font-size: 14px;
}
header .h_tel a strong {
	font-size: 18px;
}

header.fixed .h_btn a,
header.fixed .h_tel a {
	top: 20px;
}

.menu_btn,
.btn_close {
	display: none;
}


header {
	width: 100%;
	background-color: #FFF;
	position: fixed;
	z-index: 100;
}

header .face_t a img {
	display: inline;
	position: absolute;
	padding:  0px;
	padding-left: 10px;
	top: 35px;
}

header .h_menu {
	display: none;
}

header #info {
	display: none;
}

.two {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	text-align: center;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
}

.three {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}

.threet {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}

.threeab {
	width: 100%;
	justify-content: center;
	flex-wrap: wrap;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}


header .insta_t a img {
	display: inline;
	position: absolute;
	padding:  0px;
	padding-left: 10px;
	top: 35px;
}

header .h_btn a:hover {
	color: #FFF;
	background-color: #333;
	border: 1px solid #FFF;
}

#index_top {
	height: 100%;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#index_top ul.sm-slider {
	position: relative;
}

#index_top #top_catch {
	position: absolute;
	top: 33%;
	/*top: 42%;*/
	z-index: 10;
	text-align: center;
	width: 100%;
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
	text-shadow:0 0 6px #FFF, 0 0 6px #FFF, 0 0 6px #FFF, 0 0 6px #FFF, 0 0 6px #FFF;
}

#index_top #top_catch h2 {
	font-size: 46px;
	letter-spacing: 1px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

#index_top #top_catch p {
	font-size:20px;
	font-weight: 300;
}

#voice h2 {
	font-size: 22px;
	letter-spacing: 2px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #3ab253;
}

#teacher h2 {
	font-size: 22px;
	letter-spacing: 2px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #3ab253;
}

#facility h2 {
	font-size: 22px;
	letter-spacing: 2px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #3ab253;
}

#info h2 {
	font-size: 22px;
	letter-spacing: 2px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #3ab253;
}


.box17{
    width: 60%;
    text-align: left;
    margin: 2em auto;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
    text-align: center;
}


.box1 {
    width: 60%;
    font-size: 12px;
    padding: 0.5em 1em;
    margin: 2em auto;
    font-weight: 400;
    color: #333;/*文字色*/
    background: #FFF;
    border: solid 3px #3ab253;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.box1 p {
    margin: 0; 
    padding: 0;
}

.box1 a:hover {
	color: #ccc;
}

.box2 {
    width: 90%;
    font-size: 12px;
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: 400;
    color: #333;/*文字色*/
    background: #FFF;
    border: solid 3px #3ab253;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.box2 p {
    margin: 0; 
    padding: 0;
}

.box2 a:hover {
	color: #ccc;
}

.box3 {
    width: 100px;
    font-size: 12px;
    padding: 0.5em 1em;
    margin: 0em 0;
    font-weight: 400;
    color: #333;/*文字色*/
    background: #FFF;
    border: solid 3px #3ab253;/*線*/
    border-radius: 10px;/*角の丸み*/
    margin-left: auto;
    margin-right: auto;
}

.box3 p {
    margin: 0; 
    padding: 0;
}

.box33 a:hover {
	color: #ccc;
}

.box33 {
    width: 100px;
    font-size: 12px;
    padding: 0.5em 1em;
    font-weight: 400;
    color: #333;/*文字色*/
    background: #FFF;
    border: solid 3px #3ab253;/*線*/
    border-radius: 10px;/*角の丸み*/
    margin-top: 1em;
    margin-bottom: 0.5em;
    margin-left: auto;
    margin-right: auto;
}

.box33 p {
    margin: 0; 
    padding: 0;
}

.box33 a:hover {
	color: #ccc;
}


.box6 {
    width: 400px;
    text-align: center;
    font-size: 20px;
    color: #555;
    letter-spacing: 0.1em;
    padding: 10px;
    font-weight: 500;
    clear: both;
    padding: 10px 20px;
    margin: 0px 10px 20px;
    background: #ffffff;
    /*border: dashed 2px #f3981e;*/
    border: solid 5px #f3981e;;
    /*border: solid 5px #FFDA7F; */
    border-radius: 14px;/*角の丸み*/
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
}

.box6 p {
    margin: 0; 
    padding: 0;
}

.card-container{
    background: #fff;
    color: #000;
    display: flex;
    margin: 20px auto;
    width: 100%;
}
.card-container a{
    text-decoration: none;
    color: #cddc39;
}

.card-text{
    width:100%;
    margin-left: 0px;
    padding: 20px 0;
    text-align: left;
}
.card-text h2{
    padding-top: 10px;
    font-size: 1em;
    text-align: left;
}
.card-text p{
    font-size: 0.6em;
    text-align: left;
    margin: 0px; !important;
    padding: 0px;
}
.card-img{
    width: 100%;
}

img{
    width:100%;
    height:100%;
    vertical-align:bottom;
}


.btn-stitch {
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #f3981e;
  color: #FFF;
  border-radius: 4px;
  box-shadow: 0px 0px 0px 5px #f3981e;
  border: dashed 1px #FFF;
}

.btn-stitch:hover {
  border: dotted 1px #FFF;
}

/*PCサイズ*/

@media screen and (min-width:650px) {
    .card-container{
        max-width: 750px;
        height: 200px;
    }

    .card-text h2{
        font-size: 1.3em;
    }
    .card-text p{
        font-size: 1em;
    }
}

/*
メインコンテンツ
-------------------------------------------*/
.content {
	width: 100%;
	background-color: #FFF;
	padding-top: 30px;
	padding-bottom: 30px;
}

.contents {
	width: 100%;
	background-color: #FFF;
	padding-top: 30px;
	padding-bottom: 30px;
}

.contentg {
	width: 100%;
	background-color: #FFF;
	padding-top: 0px;
	padding-bottom: 30px;
}

.contentm {
	width: 100%;
	background-color: #FFF;
	padding-top: 5px;
	padding-bottom: 30px;
}

.contentt {
	width: 100%;
	background-color: #FFF;
	padding-top: 50px;
	padding-bottom: 10px;
}

.contentsy {
	width: 100%;
	background-color: #FFF;
	padding-top: 50px;
	padding-bottom: 10px;
}



/*
.cut {
	padding-top: 50px;
}

.cutb {
	padding-bottom: 0px;
}
*/

/*
.cont_wrap {
	max-width: 1200px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

#sub_top {
	background-color: #EEE;
	background-repeat: no-repeat;
	background-position: center center;
	height: 120px;
	line-height: 30px;
	padding-top: 300px;
	width: 100%;
	background-size: cover;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	color: #FFF;
	font-size: 20px;
	letter-spacing: 0.5em;
	-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
*/

.white {
	color: #FFF;
}

.content h2 {
	font-size: 34px;
	line-height: 24px;
	margin-bottom: 0px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #111;
	width: 240px;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	border-left: 5px solid #3ab253;
	border-right: 5px solid #3ab253;
	margin-top: 0px;
	margin-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}

.content h2 span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin-top: 15px;
	padding-top: 15px;
	color: #333;
}

.contents h2 {
	font-size: 34px;
	line-height: 24px;
	margin-bottom: 0px;
	/* border-bottom-width: 1px; */
	font-weight: 500;
	letter-spacing: 1px;
	color: #111;
	width: 240px;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	border-left: 5px solid #3ab253;
	border-right: 5px solid #3ab253;
	margin-top: 0px;
	margin-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}


.contents h2 span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin-top: 15px;
	padding-top: 15px;
	color: #333;
}

.contentsy h2 {
	font-size: 34px;
	line-height: 24px;
	margin-bottom: 0px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #111;
	width: 240px;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	border-left: 5px solid #3ab253;
	border-right: 5px solid #3ab253;
	margin-top: 0px;
	margin-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}

.contentt h2 {
	font-size: 34px;
	line-height: 24px;
	margin-bottom: 0px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #111;
	width: 240px;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	border-left: 5px solid #3ab253;
	border-right: 5px solid #3ab253;
	margin-top: 0px;
	margin-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}

.contentsy h2 span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin-top: 15px;
	padding-top: 15px;
	color: #333;
}

.contentg h2 span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin-top: 15px;
	padding-top: 15px;
	color: #333;
}

.contentg h2 {
	font-size: 34px;
	line-height: 24px;
	margin-bottom: 0px;
	/* border-bottom-width: 1px; */
	/* border-bottom-style: solid; */
	/* border-bottom-color: #DDD; */
	font-weight: 500;
	letter-spacing: 1px;
	color: #111;
	width: 300px;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
	border-left: 1px solid #333;
	border-right: 1px solid #333;
	margin-top: 0px;
	margin-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}

.content h2 span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin-top: 15px;
	padding-top: 15px;
	color: #333;
}

.content h3 {
	font-size: 22px;
	line-height: 30px;
	margin-bottom: 30px;
	background-color: #F6F6F6;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	position: relative;
	margin-top: 30px;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 44px;
	font-weight: 400;
	color: #111;
	font-family: 'Noto Sans JP', sans-serif;
	clear: both;
}

.content h3::after {
	display: block;
	width: 3px;
	height: 20px;
	position: absolute;
	top: 20px;
	left: 20px;
	background-color: #CCC;
	content: '';
}

.content h3 span {
	font-size: 16px;
	color: #888;
	font-family: 'Noto Sans JP', sans-serif;
	padding-left: 15px;
}

.content h5 {
	font-size: 26px;
	color: #555;
	/* border-bottom-width: 1px; */
	/* border-bottom-style: dotted; */
	/* border-bottom-color: #CCC; */
	letter-spacing: 0.1em;
	padding: 10px;
	font-weight: 500;
	clear: both;
	margin-top: 70px;
	margin-right: 30px;
	margin-bottom: 0px;
	margin-left: 30px;
}

.content p {
	font-size: 16px;
	line-height: 1.8;
	padding: 5px;
	margin-bottom: 5px;
	margin-top: 10px;
	margin-right: 30px;
	margin-left: 30px;
}

/*
.content .ul_news li {
	line-height: 30px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	font-size: 16px;
	padding-right: 10px;
	padding-left: 10px;
}
.content .ul_news li span {
	color: #999;
	padding-right: 20px;
}
*/


/*
コンテンツ大ボタン
-------------------------------------------*/
/*
.content .btn_001 a {
	font-size: 20px;
	color: #FFF;
	text-align: center;
	border: 5px solid #F6F6F6;
	text-decoration: none;
	display: block;
	width: 88%;
	background-color: #333333;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
	line-height: 30px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding-top: 15px;
	padding-bottom: 15px;
	position: relative;
	max-width: 500px;
	clear: both;
}
.content .btn_001 a i {
	padding-right: 10px;
}
.content .btn_001 a:hover {
	color: #333333;
	text-align: center;
	background-color: #FFF;
	width: 90%;
	border-top-color: #333333;
	border-right-color: #333333;
	border-bottom-color: #333333;
	border-left-color: #333333;
}
*/

.img_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 20px;
}

.img_left {
	float: left;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}
.img_right {
	float: right;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}

.content .img_left p {
	font-size: 12px;
	margin: 0px;
}

/*-----トップへ戻るボタン------*/

.to_top {
	position: fixed;
	right: 10px;
	z-index: 200;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
.to_top a {
	text-decoration: none;
	color: #FFF;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	font-size: 10px;
	background-color: #000;
	padding: 20px;
	height: 30px;
	width: 30px;
}
.to_top a:hover {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.btn-flat-border {
	display: inline-block;
	padding: 0.3em 1em;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 26px;
	font-weight: 500;
	color: #333;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 5px;
	margin-left: 5px;
	margin-right: 5px;
	border: 1px solid #fff;
	/* border-radius: 3px; */
	transition: .4s;
	background: #fff;
}


.btn-flat-border img {
	width: 26px;
	top: 6px;
	padding-bottom: 5px;
}

.flat-border {
	display: inline-block;
	padding: 0.3em 1em;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 26px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #333;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 5px;
	margin-left: 5px;
	margin-right: 5px;
	border: 1px solid #fff;
	/*border-radius: 3px; */
	transition: .4s;
	background: #fff;
}

.flat-border img {
	width: 26px;
	top: 6px;
	padding-bottom: 5px;
}

.teltw {
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 24px;
	font-weight: 400;
	text-decoration: none;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
}

/*
フッター
-------------------------------------------*/

.wrapper{
    /* min-height: 100vh; */
    position: relative; /*←相対位置*/
    /* padding-bottom: 120px; */ /*←footerの高さ*/
    padding-bottom: 10px; /*←footerの高さ*/
    box-sizing: border-box; /*←全て含めてmin-height:100vhに*/
}

footer {
	/* background-color: rgba(0, 0, 0, 0.0); */
	/* color: #000; */
	clear: both;
	width: 100%;
	/* display: block; */
	display: flex;
	padding-top: 0px;
	padding-bottom: 0px;
	/* border-top: 1px solid #000; */
	/* position: absolute;/*←絶対位置*/
	bottom: 0; /*下に固定*/
	background-color: #f3981e;
	text-align: center;
	margin: 0px;
	overflow:hidden;
}

/*
address {
	font-size: 10px;
	font-style: normal;
	padding-top: 0px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
	margin: 0px;
}

footer ul.f_bn {
	display: block;
	float: left;
}
footer .f_bn li {
	display: inline;
}
footer .f_bn li a {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px;
	text-decoration: none;
	color: #FFF;
	border: 1px solid #FFF;
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
	margin-left: 10px;
	font-weight: 500;
}
footer .f_bn li a:hover {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

footer .f_bn li a i {
	padding-right: 5px;
}

footer .box_pr {
	clear: both;
	width: 100%;
	display: block;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
	font-size: 10px;
	color: #CCC;
}

.box_pr ul li {
	display: inline;
	padding: 5px;
}

.box_pr ul li a {
	color: #CCC;
}
*/

/*
各種テーブル
-------------------------------------------*/
/*
.content table.table_01 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
}
.content table.table_01 th,
.content table.table_01 td {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	padding: 20px;
}
.content table.table_01 th {
	font-size: 16px;
	white-space: nowrap;
	font-weight: 400;
	letter-spacing: 1px;
	width: 33%;
}
.content table.table_01 td {
	font-size: 14px;
	line-height: 30px;
	background-color: #FFF;
}
.content table.table_01 td.td_price {
	font-size: 16px;
	text-align: center;
	white-space: nowrap;
	color: #008C69;
	font-weight: 500;
}

.content table.table_02 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
	max-width: 600px;
}
.content table.table_02 th,
.content table.table_02 td {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	padding: 20px;
}
.content table.table_02 th {
	font-size: 18px;
	white-space: nowrap;
	font-weight: 400;
	letter-spacing: 1px;
	width: 33%;
	background-color: #F6F6F6;
}
.content table.table_02 td {
	font-size: 16px;
	line-height: 30px;
	background-color: #FFF;
}
.content table.table_02 td .price {
	font-size: 20px;
	text-align: center;
	white-space: nowrap;
	color: #000000;
	font-weight: 500;
	padding-right: 5px;
	padding-left: 5px;
}


#mailform table.m_form {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#mailform table.m_form th {
	text-align: right;
	border-right-width: 4px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: dotted;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
	font-size: 14px;
	font-weight: 400;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
#cont_base #mailform table.m_form th p {
	font-size: 10px;
	line-height: 14px;
	color: #999;
	margin: 0px;
	padding: 0px;
}
#cont_base #mailform table.m_form th span {
	color: #FF0000;
	padding-left: 5px;
	padding-right: 5px;
}
#mailform table.m_form td {
	padding: 10px;
	background-color: #FFF;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	border-bottom-width: 1px;
	font-size: 14px;
}
form input.form_btn {
	background-color: #333;
	color: #FFF;
	padding-top: 7px;
	padding-right: 20px;
	padding-bottom: 7px;
	padding-left: 20px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border: 3px solid #EEE;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
form input.form_btn:hover {
	background-color: #FFF;
	color: #333;
	border-top-color: #333;
	border-right-color: #333;
	border-bottom-color: #333;
	border-left-color: #333;
	cursor: pointer;
}
.small {
	font-size: smaller;
	color: #666;
}
.chui {
	color: #F03600;
}
#cont_base .content .navi_sitemap li {
	padding-left: 20px;
}
.table_01 caption {
	font-size: 14px;
	line-height: 30px;
	background-color: #E5E5E5;
	color: #111;
	letter-spacing: 1px;
	padding-top: 5px;
	padding-bottom: 5px;
	border: 1px solid #FFF;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
}
.table_01 th span {
	font-size: 12px;
	color: #CCC;
}
*/

/*
FAQ
-------------------------------------------*/
/*
.content dl.faq {
	margin-bottom: 30px;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
}
.content dl.faq dt {
	font-size: 22px;
	line-height: 30px;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 50px;
	background-color: #F6F6F6;
	color: #111;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.content dl.faq dt span {
	font-size: 20px;
	font-weight: 500;
	color: #FFF;
	background-color: #333;
	text-align: center;
	display: block;
	width: 50px;
	padding-top: 10px;
	height: 40px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	position: absolute;
	top: -20px;
	left: -10px;
	z-index: 10;
}
.content dl.faq dt span::before{
	content: "";
	position: absolute;
	bottom: -5px;
	right: -3px;
 	margin-left: -12px;
  border-right: 12px solid transparent;
  border-top: 20px solid #333;
  border-left: 12px solid transparent;
 	z-index: 0;
	transform: rotate(-40deg);
}
.content dl.faq dd {
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 20px;
}
*/

/*
グーグルマップ
-------------------------------------------*/


.g_map_base {
	background-color: #FFF;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
}

.g_map {
	position: relative;
	padding-bottom: 36%;
	padding-top: 30px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 400px;
	height: 0;
	overflow: hidden;
}
 
.g_map iframe,
.g_map object,
.g_map embed {
	position: absolute;
	top: 0;
	left: 0;
	margin-left: auto;
	margin-right: auto;
	width: 400px;
	height: 300px;
}

/*
トップ下部ピックアップ
-------------------------------------------*/
.pick_up {
	height: 30%;
	max-height: 100px;
	width: 100%;
	position: absolute;
	bottom: 0px;
	background-color: rgba(0, 0, 0, 0);
}

.pick_up .sc_btm a {
	line-height: 50px;
	color: #f3981e;
	background-color: #f3981e;
	height: 100px;
	width: 100px;
	display: block;
	margin-right: auto;
	margin-left: auto;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-size: 10px;
	text-decoration: none;
	letter-spacing: 1px;
	background-image: url(../img/sc_btm.png);
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	bottom: -50px;
	left: 50%;
	margin-left: -50px;
	z-index: 80;
	text-align: center;
}

.pick_up .sc_btm a:hover {
	color: #f3981e;
	height: 110px;
	width: 110px;
	border-radius: 55px;
	-webkit-border-radius: 55px;
	-moz-border-radius: 55px;
	margin-top: -10px;
	margin-left: -55px;
}

.pick_up ul {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	padding: 30px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.pick_up ul li {
	width: 30%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
.pick_up ul li a {
	display: block;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	overflow: hidden;
}
.pick_up ul li a img {
	width: auto;
	max-width: 100%;
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transition: 1.0s ease-out;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.pick_up ul li a:hover img {
	-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-o-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);
opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}
.pick_up ul li a:hover {
	box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
}

/*
a .btn_check {
	color: #FFF;
	font-size: 14px;
	line-height: 40px;
	text-decoration: none;
	text-align: center;
	display: block;
	width: 50%;
	margin-top: -15px;
	margin-left: -25%;
	border: 2px solid #FFF;
	position: absolute;
	left: 50%;
	top: 50%;
	font-weight: 400;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
a:hover .btn_check {
	color: #000;
	background-color: #FFF;
}
a .btn_check i {
	padding-right: 10px;
	padding-left: 5px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
a:hover .btn_check i {
	padding-right: 5px;
	padding-left: 10px;
}
.balloon {
	position: absolute;
	top: -60px;
	left: 50%;
	margin-left: -50px;
	display: inline-block;
	width: 100px;
	height: 100px;
	line-height: 100px;
	vertical-align: middle;
	text-align: center;
	color: #FFF;
	font-size: 18px;
	font-weight: 400;
	border-radius: 50%;
	box-sizing: border-box;
	z-index: 100;
	background-color: #FF6633;
}

.balloon:before{
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
 	margin-left: -12px;
  border-right: 12px solid transparent;
  border-top: 20px solid #FF6633;
  border-left: 12px solid transparent;
 	z-index: 0;
}
*/

/*
実績一覧
-------------------------------------------*/
/*
ul.works_list {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	padding: 30px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

ul.works_list li {
	width: 21%;
	position: relative;
	text-align: center;
	margin-bottom: 30px;
}
ul.works_list li a {
	display: block;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 20px;
	border: 1px dotted #CCC;
	background-color: #FFF;
	text-decoration: none;
	color: #333;
}
ul.works_list li a img {
	width: auto;
	max-width: 100%;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
}

ul.works_list li a:hover img {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

ul.works_list li a span {
	display: block;
	padding-top: 10px;
	font-size: 12px;
	letter-spacing: 1px;
}

ul.works_list li a:hover {
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	border: 1px solid #000;
	color: #000;
}
*/

/*
エフェクト
-------------------------------------------*/
.effect {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha( opacity=0 )";
	transform: translateY(20px);
	-webkit-transform: translateY(20px);  
    -moz-transform: translateY(20px); 
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transition: 1.0s ease-out;
}
.effect.d_02 {
transition-delay:0.2s;
-webkit-transition-delay:0.2s;
}
.effect.d_04 {
transition-delay:0.4s;
-webkit-transition-delay:0.4s;
}
.effect.d_06 {
transition-delay:0.6s;
-webkit-transition-delay:0.6s;
}
.effect.d_08 {
transition-delay:0.8s;
-webkit-transition-delay:0.8s;
}
.effect.start {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	transform: translateY(0px);
	-webkit-transform: translateY(0px);  
    -moz-transform: translateY(0px);    
}

/*
.content p.check {
	color: #FF3333;
}
.content p.p_st {
	font-size: 20px;
	color: #CA28B1;
}
*/


.widess {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	background-color: #f3981e;
	padding-top: 25px;
	padding-bottom: 5px;
}

.widessb {
	width: 95%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	background-color: #f3981e;
	padding-top: 15px;
	padding-bottom: 20px;
}

.widess .s_btnsss {
	display: inline-block;
	/* display: block; */
	text-align: center;
	/* position: absolute; */
	font-family: "serif"; 
	font-size: 22px;
	font-weight: 500;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	border-left: 0;
	border-right: 0;
	padding-left: 0px;
	padding-right: 0px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 20px;
	margin-bottom: 25px;
	margin-left: auto;
	margin-right: auto;
	width: 70%;
	vertical-align: middle;
}

.widet {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	background-color: #3ab253;
	margin-top: 25px;
	margin-bottom: 55px;
	padding-top: 25px;
	padding-bottom: 5px;
}

#back .widess{
	color: #FFF
}

.instagram {
	text-align: center;
}

.left {
	float: left;
    margin-right: auto;
}
.center {
    margin-left: auto;
    margin-right: auto;
}
.right {
	float: right;
    margin-left: auto;
	text-align: center;
}

/* .clearfix
---------------------------------------------------------------------------------------- */

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
	font-size: 0.1em;
}

.clearfix {
	display: inline-block;
}

/*\*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/**/

.allwide {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

/*
.allwide img {
	width: 100%;
	padding-bottom: 25px;
}
*/

.allwidei {
	width: 100%;
	display: table;
	text-align: center;
	background-color: #e0e0e0;
	/* border: solid 1px #ff00ff; */
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 50px;
	padding-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.allwidey {
	width: 100%;
	display: table;
	text-align: center;
	background-color: #f5f5dc;
	/* border: solid 1px #ff00ff; */
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 50px;
	padding-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.allwideib {
	width: 100%;
	display: table;
	text-align: center;
	background-color: #fff;
	/* border: solid 1px #ff00ff; */
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.allwidein {
	width: 100%;
	display: table;
	text-align: center;
	background-color: #fff;
	/* border: solid 1px #ff00ff; */
	padding-top: 20px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.wide90 {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
	/* border: solid 1px #ff00ff; */
}

.wide90t {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide90t img {
	width: 500px;
	padding: 0px;
}

.wide90i {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide90i img {
	padding-bottom: 8px;
}

.wide90n {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}
.wide90n img {
	padding-top: 5px;
	padding-bottom: 5px;
	margin: 2px;
}

.wide90a {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide90b {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	letter-spacing: 0.5px;
}

.wide60a {
	width: 60%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide90 img {
	padding-bottom: 5px;
	margin: 5px;
}

.wide90r img {
	padding-bottom: 5px;
	margin: 5px;
}

.wide50n {
	width: 55%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide500 {
	width: 500px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide400 {
	width: 370px;
	text-align: center;
	margin-top: 60px;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide40n {
	width: 40%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide100n {
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}

.wide100n tr{
	text-align: left;
	font-size: 18px;
	font-weight: 400;
	margin-top: 15px;
	font-family: 'Noto Sans JP', sans-serif;
}

#map_t {
	padding: 0px;
	margin-top: 15px;
	margin-left: 0px;
	margin-right: 0px;
	margin-bottom: 10px;
}

.map_ttt {
	width: 90%;
	/* display: inline-block; */
	/* display: inline; */
	/* float: left; */
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.rogo img{
	text-align: center;
	padding: 0px;
	margin-top: -10px;
	margin-left: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	width: 200px;
}

/*
#map {
   width: 300px;
   height: 300px;
   background-color: grey;
 }

#gmap {
   width: 100%;
   height: 300px;
   border: solid 1px #ccc;
   margin-bottom: 10px;
 }
*/

hr {
	background-color: #FFF;
	line-height: 10px;
	margin-bottom: 0px;
	border-bottom-width: 1px;
	border-top-style: none;
	border-left-style: none;
	border-right-style: none;
	border-bottom-style: solid;
	border-bottom-color: #DDD;
	font-weight: 400;
	letter-spacing: 1px;
	color: #111;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	clear: both;
 }
 
.stafft hr {
	background-color: #FFF;
	line-height: 10px;
	margin-bottom: 10px;
	border-bottom-width: 1px;
	border-top-style: none;
	border-left-style: none;
	border-right-style: none;
	border-bottom-style: solid;
	border-bottom-color: #DDD;
	letter-spacing: 1px;
	text-align: center;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
	clear: both;
 }

.wides .s_btnn {
	/* display: block; */
	text-align: center;
	/* position: absolute; */
	font-size: 16px;
	font-family: "Sawarabi Mincho, serif";
	font-weight: 500;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
	border: 2px solid #333;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 10px;
	margin-left: auto;
	margin-right: auto;
	width: 240px;
	transition: .4s;
	background: #fff;
}

.wides .s_btnn:hover {
  background: #000;
  color: white;
}

.wides .s_btnf {
	/* display: block; */
	text-align: center;
	/* position: absolute; */
	font-size: 12px;
	text-decoration: none;
	color: #fff;
	letter-spacing: 1px;
	/* border-top: 2px solid #000; */
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 15px;
	padding-bottom: 10px;
	margin-top: 5px;
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}

.wides {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.wides .s_btn a:hover {
	color: #FFF;
	background-color: #333;
	border: 1px solid #FFF;
}

.widem {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.widem .s_btnn {
	/* display: block; */
	text-align: center;
	/* position: absolute; */
	font-size: 16px;
	font-family: "Sawarabi Mincho, serif";
	font-weight: 500;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
	border: 2px solid #333;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 30px;
	margin-bottom: 50px;
	margin-left: auto;
	margin-right: auto;
	width: 240px;
	transition: .4s;
	background: #fff;
}

.widem .s_btnn:hover {
  background: #000;
  color: white;
}

img .aligncenter {
   display: block;
   margin: 5px auto;
}

.kome {
	width: 96%;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	margin-top: 10px;
	margin-left: auto;
	margin-right: auto;
}

.komerr {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.komer {
	width: 95%;
	text-align: left;
	font-size: 12px;
	font-weight: 400;
	margin-top: 5px;
	margin-left: auto;
	margin-right: auto;
}

.komej {
	width: 60%;
	text-align: left;
	font-size: 12px;
	font-weight: 400;
	margin-top: 5px;
	margin-left: auto;
	margin-right: auto;
	letter-spacing: 0.05em;
}

.komec {
	width: 95%;
	text-align: center;
	font-size: 14px;
	font-weight: 400;
	margin-top: 5px;
	margin-left: auto;
	margin-right: auto;
}

.komew {
	width: 96%;
	text-align: center;
	font-size: 15px;
	font-weight: 400;
	margin-top: 10px;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
}

.komewl {
	width: 96%;
	text-align: left;
	font-size: 15px;
	font-weight: 400;
	margin-top: 10px;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
}

.komeww {
	width: 96%;
	text-align: center;
	font-size: 15px;
	font-weight: 400;
	margin-top: 0px;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
}

.komeb {
	width: 96%;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	margin-top: 10px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 35px;
}

.komekome {
	width: 96%;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	color: #000;
	padding-top: 40px;
	padding-bottom: 50px;
	margin-left: auto;
	margin-right: auto;
}

.staffn {
	width: 100%;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 0px;
	font-weight: 500;
	clear: both;
	margin-top: -5px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	/* border: solid 1px #ff00ff; */
}

.staffnr {
	width: 100%;
	text-align: left;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 0px;
	font-weight: 500;
	clear: both;
	margin-top: -5px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	/* border: solid 1px #ff00ff; */
}

.staffj {
	width: 100%;
	text-align: left;
	font-size: 20px;
	color: #f3981e;
	letter-spacing: 0.5px;
	padding: 0px;
	font-weight: 500;
	clear: both;
	margin-top: -5px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	/* border: solid 1px #ff00ff; */
}

.staff {
	width: 100%;
	letter-spacing: 0em;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	margin-top: 0px;
	margin-bottom: 12px;
	font-family: 'Noto Sans JP', sans-serif;
}


.staffv {
	width: 100%;
	letter-spacing: 0em;
	text-align: left;
	font-size: 12px;
	font-weight: 400;
	margin-top: 0px;
	margin-bottom: 12px;
	font-family: 'Noto Sans JP', sans-serif;
}




.staffl {
	width: 100%;
	letter-spacing: 0em;
	text-align: left;
	font-size: 12px;
	font-weight: 400;
	margin-top: 0px;
	margin-bottom: 12px;
	font-family: 'Noto Sans JP', sans-serif;
}


.stafft {
	width: 100%;
	letter-spacing: 0em;
	text-align: left;
	font-size: 16px;
	font-weight: 300;
	margin-top: 0px;
	margin-left: 0px;
	margin-right: 0px;
	margin-bottom: 12px;
	font-family: 'Noto Sans JP', sans-serif;
}


.frame_t {
	width: 100%;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 0px;
	font-weight: 700;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-family: 'Noto Sans JP', sans-serif;
}

.frame_t p {
	width: 100%;
	text-align: center;
}

/*
body {
	font-size: 16px;
}
*/


.item {
    width: 100%;
    height: auto;
    margin: 0 auto;
    flex-wrap: wrap;
}

.item-image {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 10px;
    text-align: center;
}

#sns img {
	width: 25px;
	padding-bottom: 10px;
}


#logo {
  /* width: 100%;*/
    /* max-width: 200px; */
  max-width: 360px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  /* display: block; */
  display: flex;
  justify-content: flex-end
  border : solid 2px #fff ;
}

#logob {
  width: 300px;
  /* max-width: 200px; */
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  /* display: flex; */
  justify-content: flex-end
  border : solid 2px #fff ;
}

#logobb {
  width: 70%;
  /* max-width: 200px; */
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  /* display: flex; */
  justify-content: flex-end
  border : solid 2px #fff ;
}

#logo small {
  max-width: 40px;
  width: 40px;
  margin-top: 40px;
  margin-left: 25px;
  margin-right: 0px;
  margin-bottom: 0px;
  display: flex;
  justify-content: flex-end
}

.button:hover {
  opacity:0.5;
  transition: 1s;
}

.wide90s {
	width: 90%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.wide90s img {
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 10px;
	margin-left: 0px;
}

.wide90i img {
	padding-bottom: 8px;
}


.newthre {
	width: 100%;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 0px;
	font-weight: 500;
	clear: both;
	margin-top: 10px;
	margin-bottom: 0px;
	margin-left: 0px;
	/* border: solid 1px #ff00ff; */
}

.newt {
	width: 100%;
	text-align: left;
	font-size: 12px;
	font-weight: 400;
	margin-top: 10px;
	margin-bottom: 12px;
}

.newti {
	text-align: center;
	font-size: 14px;
	font-weight: 400;
	margin-top: 10px;
	margin-bottom: 12px;
}

.newtb {
	width: 30%;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 10px;
	font-weight: 500;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	/* border: solid 1px #ff00ff; */
}

.newtb p {
	width: 100%;
	margin: 0px;
	padding: 0px;
	/* border: solid 1px #ff00ff; */
}

.newtb img {
	width: 100%;
	margin: 0px;
	padding: 0px;
}

.newtbi {
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 0px;
	font-weight: 500;
	clear: both;
	margin-top: 10px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.newtb4 {
	width: 260px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 10px;
	font-weight: 500;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 20px;
	margin-right: 20px;
	/* border: solid 1px #ff00ff; */
}

.newtbk {
	width: 200px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 5px;
	font-weight: 500;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 5px;
	margin-right: 5px;
	/* border: solid 1px #ff00ff; */
}

.newtbl {
	width: 300px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 10px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 20px;
	margin-right: 20px;
	/* border: solid 1px #ff00ff; */
}

.newtbl img {
	width: 200px;
	padding:  0px;
	margin-left: auto;
	margin-right: auto;
}

.newtbf {
	width: 400px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 10px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	margin-right: auto;
	/* border: solid 1px #ff00ff; */
}

.newtbf img {
	width: 100%;
	padding:  0px;
	margin-left: auto;
	margin-right: auto;
}

.newtbff {
	width: 400px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 15px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	margin-right: 0px;
	/* border: solid 1px #ff00ff; */
}

.newtbff img {
	width: 100%;
	padding:  0px;
	margin-left: auto;
	margin-right: auto;
}

.newtbdr {
	width: 450px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 5px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right: 0px;
	/* border: solid 1px #ff00ff; */
	display: flex;
	justify-content: center;
	align-items: center;
}

.newtbne {
	/* width: 50%; */
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 5px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 5px;
	margin-right: 5px;
	/* border: solid 1px #ff00ff; */
	justify-content: center;
	align-items: center;
}

.newtbd {
	width: 400px;
	text-align: center;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 5px;
	clear: both;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 5px;
	margin-right: 5px;
	/* border: solid 1px #ff00ff; */
}

.newtbd img {
	width: 100%;
	padding:  0px;
	margin-left: auto;
	margin-right: auto;
}

.komerr img {
	width: 300px;
	padding:  0px;
	margin-left: auto;
	margin-right: auto;
}


/*
.wides .s_btnss {
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 22px;
	font-weight: 400;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
	border: 1px solid #999;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 0px;
	margin-left: auto;
	margin-right: auto;
	width: 70%;
	vertical-align: middle;
}
.s_btnss img {
	width: 22px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 0px;
	padding-bottom: 5px;
	margin-top: 0px;
	margin-left: 0px;
	margin-right: 0px;
	vertical-align: middle;
}
*/

#sns {
	width: 100%;
	padding-top: 10px;
	margin-left: auto;
	margin-right: auto;
}

.infon {
	text-align: center;
	font-size: 24px;
	font-weight:500;
	letter-spacing: 2px;
	margin-top: 15px;
	font-family: 'Noto Sans JP', sans-serif;
}

.infonn {
	text-align: center;
	font-size: 16px;
	font-weight: 400;
	margin-top: 15px;
	margin-top: 15px;
	font-family: 'Noto Sans JP', sans-serif;
}

.infokome {
	text-align: center;
	font-size: 15px;
	font-weight: 400;
	margin-top: 5px;
	font-family: 'Noto Sans JP', sans-serif;
}

.infone {
	text-align: center;
	font-size: 20px;
	font-weight: 500;
	margin-top: 15px;
	font-family: 'Noto Sans JP', sans-serif;
}

.menuw {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
/*
.menu01 {
	text-align: left;
	font-size: 20px;
	font-weight: 500;
	margin-top: 10px;
	text-decoration: underline;
}
*/
.menu01c {
	text-align: center;
	font-size: 24px;
	font-weight: 500;
	margin-top: 10px;
	text-decoration: underline;
	font-family: 'Noto Sans JP', sans-serif;
}

.menu01k {
	text-align: right;
	font-size: 18px;
	font-weight: 400;
	margin-top: 10px;
	/* font-family: 'Rasa', serif; */
	font-family: 'Crimson Pro', serif;
}

.menu01t {
	text-align: left;
	font-size: 14px;
	font-weight: 400;
	margin-top: 10px;
}

.menu01tb {
	text-align: left;
	font-size: 14px;
	font-weight: 400;
	margin-top: 10px;
}

.menu01tbh {
	text-align: center;
	font-size: 16px;
	font-weight: 400;
	margin-top: 10px;
}

.menu01tt {
	text-align: left;
	font-size: 11px;
	font-weight: 0;
	margin-top: 0px;
}

img {
	max-width: 100% !important;
	height: auto;
	width /***/:auto;
	margin-left:auto;
	margin-right:auto;
}

.content h4 {
	font-size: 20px;
	color: #555;
	letter-spacing: 0.1em;
	padding: 10px;
	font-weight: 500;
	clear: both;
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 0px;
	margin-left: 10px;
}

.content h5 {
	margin-right: 10px;
	margin-left: 10px;
}

.tel-number a {
	color: #333;
}

.tel-numberg a {
	color: #333;;
}

.tel-number a:hover {
	color: #ccc;
}

.tel-numberg a:hover {
	color: #ccc;
}

.salonpos {
	font-size: 24px;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0em;
}

.salonposg {
	font-size: 24px;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
}


.salonpos a {
	color: #333;
}

.salonposg a {
	color: #333;;
}

.salonpos a:hover {
	color: #ccc;
}

.salonposg a:hover {
	color: #ccc;
}

/*
メニューボタン
-------------------------------------------*/

.menu_btn {
	display: block;
	height: 30px;
	width: 40px;
	text-align: center;
	padding-top: 5px;
	padding-right: 20px;
	padding-bottom: 5px;
	position: fixed;
	z-index: 6000;
	top: 5px;
	right: 5px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.menu_btn:hover {
	cursor: pointer;
}

.menu_btn span {
	width: 28px;
	height: 2px;
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -14px;
	background-color: #555;
}
.menu_btn span {
    transition: all 0.3s;
    transform: rotate(0deg);
	-webkit-transform: rotate(0deg);  
    -moz-transform: rotate(0deg);    
  }
.menu_btn span.top {
    transform: translateY(-8px);
	-webkit-transform: translateY(-8px);  
    -moz-transform: translateY(-8px);    
  }
.menu_btn span.bottom {
    transform: translateY(8px);
	-webkit-transform: translateY(8px);  
    -moz-transform: translateY(8px);    
}


.menu_btn:hover span.top {
    transform: translateY(-10px);
	-webkit-transform: translateY(-10px);  
    -moz-transform: translateY(-10px);    
}
.menu_btn:hover span.bottom {
    transform: translateY(10px);
	-webkit-transform: translateY(10px);  
    -moz-transform: translateY(10px);    
}


.menu_btn.opened  span.middle {
    background: rgba(255, 255, 255, 0);
	 transform: translateX(30px);
	 -webkit-transform: translateX(30px);  
    -moz-transform: translateX(30px);    
}
.menu_btn.opened  span.top {
    transform: rotate(-45deg) translateY(0px);
	-webkit-transform: rotate(-45deg) translateY(0px);  
    -moz-transform: rotate(-45deg) translateY(0px);    
}
.menu_btn.opened  span.bottom {
    transform: rotate(45deg) translateY(0px);
	-webkit-transform: rotate(45deg) translateY(0px);  
    -moz-transform: rotate(45deg) translateY(0px);    
}

/*
グローバルナビ
------------------------------------------- */

#g_navi ul {
	display: block;
	margin: 0px;
	padding: 0px;
	clear: both;
}
/*
#g_navi ul li:first-child {
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #EEE;
}
#g_navi ul li {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #EEE;
}
*/

/*
PCグローバルナビ
-------------------------------------------*/
#logo {
  /* width: 100%;*/
  /* max-width: 200px;*/
  max-width: 360px;
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5px;
  /* display: block; */
  display: flex;
  justify-content: flex-end
  border : solid 2px #fff ;
}

li {
  display: inline-block;
  vertical-align: middle;
  width: 20%;
}


li > a {
  text-align: center;
  display: table;
  width: 100%;
  padding: 10px;
}
 
li > a span {
  display: table-cell;
  vertical-align: middle;
}

#nav {
  list-style: none;
  display: flex;
}
 
#nav li {
  width: 140px;
  text-align: center;
  background-color: #333;
  height: 50px;
  line-height: 50px;
  margin-right: 2px;
}
 
#nav li a {
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  padding: 20px;
}

#g_navi {
	width: 90%;
	padding-left: 1%;
	display: block;
	height: 55px;
	/* position: absolute; */
	position: relative;
	z-index: 1000;
	left: 0px !important;
	bottom: 0px;
	font-size: 18px;
	letter-spacing: 2px;
	font-weight: 500;
	overflow: visible;
	/* border: solid #ff00ff; */
	/* float: center; */
	margin-top: 15px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

#g_navi ul.navi_base {
	width: 100%;
	max-width: 1600px;
	/* max-width: 1370px; */
	margin-left: auto;
	margin-right: auto;
	/* display: block; */
	display: flex;
	 justify-content: flex-end
}

#g_navi ul li a{
	color: #3ab253;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-top: 10px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

#g_navi ul li a span {
  display: block;
  height: 20px;
  line-height: 20px;
}

#g_navi ul li a small {
  display: block;
  height: 30px;
  line-height: 20px;
  margin-top: 5px;
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 300;
}

li+ li {
	border-left: 1px solid #3ab253;
}

#g_navi ul li a:hover {
	color: #999;
}

#g_navi ul li a.ac_menu {
	cursor: pointer;
	overflow: hidden;
}

#g_navi ul li{
	display: inline;
	margin-left: auto;
	margin-right: auto;
}

#g_navi li a {
	/* width: 16%; */
	width: 145px;
	padding-top: 15px;
	height: 35px;
	display: block;
	color: #111;
	text-decoration: none;
	text-align: center;
	line-height: 20px;
	position: relative;
	/* float: right; */
}

li > a span {
  display: table-cell;
  vertical-align: middle;
}

/*
#g_navi li a::before {
	display: block;
	height: 2px;
	position: absolute;
	top: 2px;
	width: 70%;
	left: 15%;
	background-color: #FFF;
	content: '';
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
*/

#g_navi li a:hover::before {
	background-color: #333;
	top:0px;
}

#g_navi li a:hover,
#g_navi li a.active,
#g_navi ul li:hover > a {
	color: #999;
}

#g_navi ul li:hover > a.ac_menu,
#g_navi li a.ac_menu:hover {
	position: relative;
}

#g_navi li a.ac_menu::after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
 	margin-left: -15px;
  border-right: 15px solid transparent;
  border-bottom: 20px solid #FFF;
  border-left: 15px solid transparent;
 	z-index: 100;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

#g_navi ul li:hover > a.ac_menu::after,
#g_navi li a.ac_menu:hover::after {
  border-bottom: 20px solid #111;
}

#g_navi ul li div {
	position: absolute;
	z-index: 2000;
	top: 50px;
	left: 0px;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	width: 100%;
	height: auto;
	background-color: #111;
}

#g_navi ul li ul{
  width: 96%;
  padding-left: 2%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

#g_navi li ul li a {
	width: 21%;
	padding-left: 3%;
	padding-top: 9px;
	padding-bottom: 9px;
	line-height: 22px;
	height: 22px;
	color: #FFF;
	text-align: left;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-left: 1%;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
#g_navi li ul li a::after {
	content: "+";
	color: #FFF;
	position: absolute;
	display: block;
	left: 15px;
	top: 8px;
	font-size: 9px;
}
#g_navi li ul li a:hover::after {
	color: #333;
}
#g_navi ul li ul li a:hover{
	color: #000;
	background-color: #FFF;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
}
#g_navi li li a::before {
	display: none;
}

#g_navi div.ac_list {
	display: block !important;
}

header.fixed #g_navi {
	height: 40px;
}

header.fixed #g_navi ul li div {
	top: 40px;
}

header.fixed #g_navi li a {
	padding-top: 10px;
	height: 30px;
	margin-bottom: 10px;
}

header.fixed #g_navi li ul li a {
	padding-top: 9px;
	height: 22px;
}

#sns {
	width: 100%;
	padding-top: 10px;
	margin-left: auto;
	margin-right: auto;
}

#insta {
	width: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	/* float: right; */
}

/*
アコーディオン
--------------------------------------------------*/
/*
#g_navi ul li a.ac_menu {
	position: relative;
	background-image: none;
}
#g_navi ul li a.ac_menu::after {
	font-size: 11px;
	display: block;
	height: 20px;
	width: 20px;
	content: "▼";
	text-align: center;
	line-height: 20px;
	position: absolute;
	top: 16px;
	right: 10px;
	color: #555;
}
#g_navi ul li a.ac_menu.active {
	color: #999;
}
#g_navi ul li a.ac_menu.active::after {
	content: "▲";
}
#g_navi div.ac_list {
	display: none;
}
#g_navi ul li ul li {
	border-bottom: none;
}
#g_navi ul li li:first-child {
	border-top: none;
}
#g_navi ul li ul li a {
	border-bottom: none;
}
#g_navi ul li ul li a::before {
	content: "・";
	padding-right: 5px;
	color: #999;
}

#g_navi ul li ul li a:hover {
	color: #999;
}
*/

.fixed {
	overflow: hidden;
}

/*
メニューシャドウ
-------------------------------------------*/
.bg_bl {
	background-color: #FFF;
	height: 100%;
	width: 100%;
	opacity: 0.80;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	display: block;
	position: fixed;
	z-index: 2000;
}

/*
フッター
-------------------------------------------*/
address {
	text-align: center;
	padding-top: 10px;
	display: block;
	clear: both;
}

footer ul.f_bn {
	float: none;
}

footer .f_bn li a {
	font-size: 11px;
	padding: 8px;
}

.no_sp {
	display: none;
}

.foot {
	width: 560px;
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
	margin-top: 10px;
	margin-right: auto;
	margin-bottom: 10px;
	margin-left: auto;
}

#about {
	margin: 0px;
	padding-top: 50px;
	padding-right: auto;
	padding-left: auto;
	padding-bottom: 0px;
}

#menu {
	margin: 0px;
	padding-top: 50px;
	padding-right: auto;
	padding-left: auto;
	padding-bottom: 0px;
}

#rec {
	margin: 0px;
	padding-top: 50px;
	padding-right: auto;
	padding-left: auto;
	padding-bottom: 0px;
}

.font10 {
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}

.font14b {
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}
.font16b {
	width: 15%;
	font-size: 18px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	text-align: right;
}

.font10s {
	font-size: 12px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	margin: 0px;
	padding-top: 0px
	padding-right: auto;
	padding-left: auto;
	padding-bottom: 15px;
}

/*
カレンダー
-------------------------------------------*/
#schedule {
	margin: 0px;
	padding-top: 50px;
	padding-right: auto;
	padding-left: auto;
	padding-bottom: 20px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
}

#loading {
	display: inline-flex;
	<!-- display: none; -->
	position: absolute;
	top: 10px;
	bottom: 10px;
	right: auto;
	left: auto;
}

#calendar {
	max-width: 1200px;
	margin: 0 auto;
}


/*
メニュー
-------------------------------------------*/

#menu h1 {
	width: 200px;
	text-align: center;
	font-size: 28px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	padding-top: 50px;
	margin-bottom: 20px;
	padding-right: auto;
	padding-left: auto;
	/*text-decoration: underline;*/
	border-bottom: 1px solid #333;
	display: inline-block;
}

#menu table {
  border-collapse: collapse;
  width: 100%;
}
/*
#menu tr {
  width: 100%;
}
*/
#menu th,
td {
  padding: 1rem 2rem;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

#menu th {
  width: 35%;
  background: #eee;
  position: sticky;
  /* top: 0; */
}

#insta_t {
width: 24px;
margin-left: 10%;
display: flex;
justify-content: center;
align-items: center;
}

.non {
border-left: 0px solid #333;
}


@media(max-width: 1200px) {

#g_navi {
    padding-left: 6%;
}
}


@media(max-width: 1112px) {

#g_navi li a {
    width: 85%;
}
}

@media(max-width: 599px) {
#menu .heading {
    display: none;
  }
#menu td.font10 {
    padding-bottom: 0.1rem;
}
#menu td.font16b {
    padding-top: 0rem;
}
#menu td {
  width: auto;
    display: block;
  }
#menu td::before {
    content: attr(data-label);
    /*font-size: .875rem;*/
    color: #666;
    display: block;
    margin-bottom: 0.05rem;
  }
#menu .name {
    background: #eee;
  }
#menu th {
  width: auto;
  background: #eee;
  position: sticky;
  display: block;
  top: 0;
}
#menu th,
td {
  border-bottom: initial !important;
}

.font10 {
	font-size: 12px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}

.font14b {
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}
font16b {
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}
