@charset "utf-8";
 @import url(./basic.css);
@import url(./page.css);
@import url(./size.css);

/* CLS改善 */
h2.mb20:first-of-type{
	height:0;
	padding-bottom:10%;
}
@media (max-width:784px){
h2.mb20:first-of-type{
	height:0;
	padding-bottom:25%;
}
}

/* layout */
body {
	font-size: 90%;
	color: #333333;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
 line-height:1.4;
 margin: 0px;
 padding: 0px;
}
.bgBody {
/*background:url(/_share/bgBody.png) 0 0 repeat-x;*/
}
 @media (max-width: 768px) { /* forSMP */
.bgBody {
	background-image: none;
}
}
.wbasic400 {
	width: 400px;
	margin:0 auto;
}
.wbasic800 {
	width: 800px;
	margin:0 auto;
}
.wbasic830 {
	width: 830px;
	margin:0 auto;
}
.wbasic900 {
	width: 900px;
	margin:0 auto;
}
.wbasic {
	width: 1000px;
	margin:0 auto;
}
.wbasic1000 {
	width: 1000px;
	margin:0 auto;
}
.wbasic1360 {
	width: 1360px;
	margin:0 auto;
}
/* bg-box */
.bgC-grey {
	background-color: #F9F9F9;
}
.bgC-lightblue {
	background-color: #00b9ef;
	padding: 20px;
	margin-bottom: 30px;
}
.bgC-yellow {
	background-color: #ffffe0;
	padding: 20px;
	margin-bottom: 30px;
}
.bgC-charcoal {
	background-color: #a48b78;
	padding: 20px 20px 0 20px;
	margin-bottom: 30px;
}
.bgC-pink {
	background-color: #ede4e1;
	padding: 20px;
	margin-bottom: 30px;
}
.bgC-lightpink {
	background-color: #ec7aac;
	padding: 20px;
	margin-bottom: 30px;
}
.bgC-green {
	background-color: #f0f6da;
	padding: 20px;
	margin-bottom: 30px;
}
.bgC-ivory {
	background-color: #f8f4e6;
	padding: 20px;
	margin-bottom: 50px;
}
 @media (max-width: 768px) { /* forSMP */
.wbasic {
	width: 100%;
}
.wbasic800 {
	width: 100%;
	padding: 0px 20px;
}
.wbasic1000 {
	width: 100%;
	padding: 0px 20px;
}
.wbasic1360 {
	width: 100%;
	padding: 0px 20px;
}
.bgC-ivory {
	margin-bottom: 30px;
}
}
 @media (max-width: 768px) { /* forSMP */
.spNone {
	display: none;
}
}
@media (min-width: 769px) { /* forPC */
.pcNone {
	display: none;
}
}
/* contents */
#contents {
}
 @media (max-width: 768px) { /* forSMP */
#contents {
}
}
/* Opening
-----------------------------------------*/
.Opening {
	position:relative;
	background-color: #FFF;
	opacity: 0;
}
.Opening ul li {
	position: relative;
	overflow: hidden;
	width: 100%;
	text-align: center;
}
.Opening ul li img.Opening__text {
	/*color: #fff;
font-size:100px;*/
  position: absolute;
	top:40%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform:translate(-50%, -50%);
	z-index:100;
}
.Opening ul li span {
}
.Opening ul li span img.Opening__img {
	max-width: inherit;
	width: 100%;
	height: auto;
	opacity: 0;
}
/* slider */
.rslides {
	position: relative;
	list-style: none;
	overflow: hidden;
	width: 100%;
	padding: 0;
	margin: 0 auto;
}
.rslides li {
	-webkit-backface-visibility: hidden;
	position: absolute;
	display: none;
	width: 100%;
	left: 0;
	top: 0;
}
.rslides li:first-child {
	position: relative;
	display: block;
	float: left;
}
.rslides img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
}
/********* header *********/
header {
	height: 160px;
}
header ul {
	width:100%;
}
header ul li {
	float:left;
}
header ul li.logo {
	width: 36%;
	margin-top: 24px;
}
header ul li.c01 {
	width:33%;
	margin-top:4px;
}
header ul li.c02 {
	width: 31%;
	margin-top:4px;
	margin-bottom:0px;
}
header ul li.c03 {
	width: 0%;
}
header h1 {
	font-weight: normal;
	font-size: 10px;
	margin: 0px;
	padding: 2px;
	height: 20px;
}
 @media (max-width: 768px) { /* forSMP */
header {
	height: auto;
}
header ul li.logo {
	width: 50%;
	padding: 5px;
	/* margin: 4px 0 0 0; */
	margin: 4px auto 0;
 /*  float: none; */
}

header ul li.time{
	width: 36%;
	margin-left: 3%;
	padding: 10px;
  /* height: 70px; */
  box-sizing: content-box;
}
header ul li.time img{
	width: 100%;
	height: auto;
}
header ul li.c01 {
	display:none;
}
header ul li.c02 {
	/* width: 50%;
	padding: 5px;
	margin: 8px 0 0 0; */
	display:none;
}
header ul li.c03 {
	display:none;
}
header ul li.logo img,  header ul li.c02 img {
	width: 100%;
	height: auto;
}
header h1 {
	font-weight: normal;
	font-size: 10px;
	margin: 0px;
	padding: 5px;
	height: 20px;
	text-align:center;
}
.Opening ul li img.Opening__text {
	width:80%;
	height:auto;
}
}
/********* nav *********/

nav {
}
 @media (min-width: 769px) { /* forPC */



.dropmenu {
	height: 65px;
 *zoom: 1;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.dropmenu:before, .dropmenu:after {
	content: "";
	display: table;
}
.dropmenu:after {
	clear: both;
}
.dropmenu li {
	position: relative;
	/* width: 16.6%; */
	width: calc(1/7 * 100%);
	float: left;
	margin: 0;
	padding: 0;
	text-align: center;
}
.dropmenu li a {
	display: block;
	margin: 0;
	padding: 15px 0px;
	color: #727171;
	font-size: 14px;
	line-height: 1;
	text-decoration: none;
}
.dropmenu li ul {
	list-style: none;
	position: absolute;
	z-index: 9999;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
}
.dropmenu li ul li {
	width: 120%;
	min-width: 150px;
}
.dropmenu li ul li a {
	padding: 10px 4px;
	border-bottom: 1px dotted #727171;
	background-color:#fff;
	text-align: center;
	font-size: 12px;
}
.dropmenu li:hover > a {
}
.dropmenu li a:hover {
	border-top:5px solid #ed6d00;
}
#menu li ul {
	opacity: 0;
	top: 50%;
	visibility: hidden;
	transition: .5s;
}
#menu li:hover ul {
	top: 100%;
	visibility: visible;
	opacity: 1;
}
}
 @media screen and (max-width: 768px) {
header ul li.c02 {
}
.dropmenu li ul li {
	display: none;
}
}
/*PCの表示*/
@media screen and (min-width: 769px) {
header ul li.icon_menu {
	display: none;
}
}
/* spbtn */
.smpbtn {
	display: block;
	width: 40px;
	height: 40px;
	position: fixed;
	top: 10px;
	right: 4px;
	cursor: pointer;
	z-index: 200;
	background-image: url(/_share/header/spbtn.png);
	background-repeat: no-repeat;
	background-position: 0 0;
}
.peke {
	background-position: -40px 0;
}
.drawr {
	display: none;
	background-color: rgba(248,244,230,0.9);
	position: fixed;
	top: 0px;
	right: 0;
	padding: 10px;
	z-index: 100;

    padding-bottom: 100px !important;
    overflow-y: scroll;
    width: 100%;
    height: 100%;
}

.drawr #menu li {
	float:left;
	width:50%;
}
.drawr #menu li a {
	color: #40220f;
	font-weight:bold;
	display: block;
	font-size:120%;
	padding: 6px;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #40220f;
}
/* footer */
footer {
	padding: 20px;
	clear: both;
	color: #333;
	background-color: #f8f4e6;
}
footer a {
	color: #fff;
	text-decoration: none;
}
footer a:hover {
	color: #fff3b8;
	text-decoration: underline;
}
footer a:visited {
	color: #fff3b8;
	text-decoration: none;
}
footer #info {
}
footer #info .left {
	float: left;
	width:30%;
}
footer #info .right {
	float: right;
	width:66%;
}
footer #info .h3name {
	font-size:24px;
	margin-bottom: 20px;
}
footer #info .tableF {
	font-size: 100%;
	width: 100%;
	margin-bottom: 30px;
}
footer #info .tableF td, footer #info .tableF th {
	padding: 8px 0px;
	border-bottom:1px solid #fff;
}
footer #info .tableF tr {
}
footer #info .tableF th {
	width:80px;
	vertical-align: top;
}
#footer {
	position: fixed;
	bottom: 0;
	width: 100%;
	height: auto;
 background-color:;
	z-index: 1;
}
div.footer_msg{text-align: center;}
div.footer_msg::after{content: none;}
div.footer_msg img{max-width: 100%;}
body, html {
	height: 100%;
}
#all {
	width: 100%;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
}
#contents {
}
.fWidth {
	width:100%;
	margin:0 auto;
}
.fTel img, .fApply img {
	width: 100%;
	height: auto;
}
.fTel {
	width:40%;
	height:auto;
	float:left;
	padding:10px;
}
.fApply {
	width:40%;
	float:left;
	height:auto;
	padding:10px;
}
.fApply img, .fTel img {
}
.fLinkTop {
	font-size: 36px;
	margin-bottom: 30px;
}
.fLinkTop {
	position: relative;/*相対位置*/
	padding: 0.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #40220F;/*文字色*/
	margin-bottom:30px;
	font-size: 36px;
	text-align: center;
}
.fLinkTop a {
	position: relative;/*相対位置*/
	padding: 0.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #40220F;/*文字色*/
	margin-bottom:30px;
	font-size: 36px;
	text-decoration: none;
	text-align: center;
}
.fLinkTop a:hover {
	color: #ed6d00;
}
.fLinkTop:after {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f101";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	right: 24em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #40220F; /*アイコン色*/
}
 .fLinkTop:after a {
font-family: FontAwesome;/*忘れずに*/
content: "\f101";/*アイコンのユニコード*/
position: absolute;/*絶対位置*/
font-size: 1em;/*サイズ*/
right: 24em;/*アイコンの位置*/
top: 0.5em;/*アイコンの位置*/
color: #40220F; /*アイコン色*/
}
 .fLinkTop:after a:hover {
color: #ed6d00;
}
.fLinkSTop {
	font-size: 36px;
	margin-bottom: 30px;
}
.fLinkSTop {
	position: relative;/*相対位置*/
	padding: 0.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #40220F;/*文字色*/
	margin-bottom:30px;
	font-size: 36px;
	text-align: center;
}
.fLinkSTop a {
	position: relative;/*相対位置*/
	padding: 0.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #40220F;/*文字色*/
	margin-bottom:30px;
	font-size: 36px;
	text-decoration: none;
	text-align: center;
}
.fLinkSTop a:hover {
	color: #ed6d00;
}
.fLinkSTop:after {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f101";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	right: 22em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #40220F; /*アイコン色*/
}
 .fLinkSTop:after a {
font-family: FontAwesome;/*忘れずに*/
content: "\f101";/*アイコンのユニコード*/
position: absolute;/*絶対位置*/
font-size: 1em;/*サイズ*/
right: 21em;/*アイコンの位置*/
top: 0.5em;/*アイコンの位置*/
color: #40220F; /*アイコン色*/
}
 .fLinkSTop:after a:hover {
color: #ed6d00;
}
 @media screen and (min-width:320px) and ( max-width:567px) { /* forSMP */
footer #info .left {
	float: none;
	width:100%;
}
footer #info .right {
	float: none;
	width:100%;
}
.fLinkTop:after {
	right: 2.4em;
}
.fLinkSTop a {
	font-size:24px;
	margin-bottom: 20px;
}
.fLinkSTop:after {
	right: 0.8em;
}
}
 @media screen and (min-width:568px) and ( max-width:768px) { /* forSMP */
footer #info .left {
	float: left;
	width:48%;
}
footer #info .right {
	float: right;
	width:48%;
}
.fLinkTop:after {
	right:5.8em;
}
.fLinkSTop a {
	font-size:32px;
	margin-bottom: 20px;
}
.fLinkSTop:after {
	right: 3.2em;
}
}
#underBtn {
	position: fixed !important;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 5px;
	width: 100%;
	height: auto;
	background-color: #81C201;
	color: #fff;
	text-align: center;
}
/* linklist */
.listL {
	margin-bottom:30px;
	color:#fff;
}
.listL ul {
}
.listL ul li {
	float: left;
	width:22%;
	margin-right:3%;
}
.listL ul li ul li {
	float: none;
	width:100%;
}
.listL .h3L {
	background-color: #ed6d00;
	padding:6px;
	font-size:120%;
	color: #fff;
	text-align: center;
	margin-bottom: 10px;
	font-weight:bold;
}
.listL ul li ul li a {
	position: relative;/*相対位置*/
	padding: 0.5em 0em 0.5em 1.5em;/*アイコン分のスペース*/
	line-height:2.0em;/*行高*/
	color: #40220f;/*文字色*/
	font-size: 14px;
	text-align: left;
}
.listL ul li ul li a:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f138";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.2em;/*アイコンの位置*/
	color: #ed6d00; /*アイコン色*/
}
.listL ul li ul li a:hover {
	color: #ed6d00;/* マウスオーバーカラー */
}
.linkboxf {
}
.linkboxf a {
	display: block;
	position: relative;
	z-index: 100;
	font-size: 14px;
	color:#fff;
	text-decoration:none;
	padding: 4px 0px 4px 28px;
}
.linkboxf a:hover {
	color:#ffcd00;
	text-decoration: none;
}
.linkFT a:before {        /*白い丸 */
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0px;
	width: 16px;
	height: 16px;
	margin-top: -10px;
	border-radius: 50%;        /* CSS3草案 */
	-webkit-border-radius: 50%;    /* Safari,Google Chrome用 */
	-moz-border-radius: 50%;   /* Firefox用 */
	background: #fff;
}
.linkFT a:after {        /*「after要素」で三角 */
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 6px;
	width: 0;
	height: 0;
	margin-top: -7px;
	border: 5px solid transparent;        /*top right bottom を透明化 */
	border-left: 7px solid #564539;
}
.linkFT a:hover:after {        /*「after要素」のマウスオーバー（カラーを合わせる） */
	border-left: 5px solid #cc0066;
}
@media (max-width: 768px) { /* forSMP */
.listL ul li {
	float: left;
	width:47%;
	margin-right:3%;
}
}
/* top */

/* main */
section .main {
	float: left;
	width: 720px;
	min-height: 400px;
	height: auto !important;
	height: 400px;
}
 @media (max-width: 768px) { /* forSMP */
section .main {
	float: none;
	width: auto;
}
}
strong {
	color: #ed6d00;
	font-weight:bold;
}
.blogNews {
	font-size:110%;
	line-height: 160%;
	margin-bottom: 10px;
	padding:10px;
}
.blogNews a {
	color:#333;
	text-decoration: none;
}
.blogNews a:hover {
	color:#ed6d00;
}
.pBas100 {
	font-size:100%;
	line-height: 160%;
}
.pBas {
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
}
.pBasml {
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
	margin-left: 38px;
}
.boxml {
}
.box_txt {
	width: 740px;
	float: left;
}
.pBasL {
	font-size:120%;
	line-height: 160%;
	margin-bottom: 30px;
}
.pBasW {
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
	text-shadow: 1px 1px 0 #fff;
}
.pBasBn {
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
	color:#40220f;
}
.pBasB {
	font-size:140%;
	line-height: 200%;
	margin-bottom: 30px;
	color:#40220f;
}
.pBasBml {
	font-size:140%;
	line-height: 180%;
	margin-bottom: 30px;
	color:#40220f;
	margin-left: 80px;
}
.pBasBL {
	font-size:140%;
	line-height: 200%;
	margin-bottom: 30px;
	color:#5185c5;
	font-weight:bold;
}
.h2 {
	position: relative;
	padding: 0.6em 0 0.4em 0.6em;
	border-bottom: 4px solid #ccc;
	font-size: 36px;
	color:#40220f;
	margin-top:30px;
	margin-bottom: 30px;
}
.h2::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 4px;
	background-color: #40220f;
}
.h2B {
	color:#40220f;
	font-size: 36px;
	margin-top:30px;
	margin-bottom:30px;
	text-align: center;
}
.h2B span {
	color:#ed6d00;
	font-size: 36px;
}
.h2Bpro {
	color:#40220f;
	font-size: 24px;
	margin-bottom:30px;
	text-align: center;
}
.h2O {
	padding: 0.4em 0.8em;
	color: #ed6d00;
	font-size: 36px;
	margin-bottom: 30px;
	text-align: center;
}
.h2O span {
	display: inline-block;
	border-bottom: solid 2px #ed6d00;
	text-align: left;
}
.h2BL {
	padding: 0.4em 0.8em;
	color: #5185C5;
	font-size: 36px;
	margin-bottom: 30px;
	text-align: center;
}
.h2BL span {
	display: inline-block;
	border-bottom: solid 2px #5185C5;
	text-align: left;
}
.h2LB {
	padding: 0.4em 0.8em;
	color: #00b9ef;
	font-size: 36px;
	margin-bottom: 30px;
	text-align: center;
}
.h2LB span {
	display: inline-block;
	border-bottom: solid 2px #00b9ef;
	text-align: left;
}
.h2P {
	padding: 0.4em 0.8em;
	color: #ec7aac;
	font-size: 36px;
	margin-bottom: 30px;
	text-align: center;
}
.h2P span {
	display: inline-block;
	border-bottom: solid 2px #ec7aac;
	text-align: left;
}
.h2G {
	padding: 0.4em 0.8em;
	color: #006934;
	font-size: 36px;
	margin-bottom: 30px;
	text-align: center;
}
.h2G span {
	display: inline-block;
	border-bottom: solid 2px #006934;
	text-align: left;
}
.h2Gnumber {
	padding: 0.4em 0 0 0em;
	color: #006934;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2Gnumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h2Onumber {
	padding: 0.4em 0 0 0em;
	color: #ed6d00;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2Onumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h2BLnumber {
	padding: 0.4em 0 0 0em;
	color: #5185c5;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2BLnumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h2Pnumber {
	padding: 0.4em 0 0 0em;
	color: #ec7aac;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2Pnumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h2Cnumber {
	padding: 0.4em 0 0 0em;
	color: #a48b78;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2Cnumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h2LBnumber {
	padding: 0.4em 0 0 0em;
	color:#00b9ef;
	font-size: 100px;
	margin-bottom: 30px;
	text-align: center;
}
.h2LBnumber span {
	padding: 0em 0 0.8em 0.8em;
	color: #333;
	font-size: 36px;
}
.h3 {
	position: relative;
	padding: .75em 1em .75em 1.5em;
	border-bottom: 2px solid #ccc;
	font-size: 28px;
	color:#00b9ef;
	margin-bottom:30px;
}
.h3::after {
	position: absolute;
	top: .5em;
	left: .5em;
	content: '';
	width: 6px;
	height: -webkit-calc(100% - 1em);
	height: calc(100% - 1em);
	background-color: #00b9ef;
	border-radius: 4px;
}
.h3B {
	color:#40220f;
	font-size: 24px;
	line-height: 160%;
	margin-bottom:30px;
}
.h3BK {
	font-size: 24px;
	line-height: 160%;
	margin-bottom:30px;
}
.h3BK img {
	vertical-align:bottom;
	margin-right: 6px;
}
.h3LB {
	position: relative;/*相対位置*/
	padding: 0.5em 0.5em 0em 1.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #00b9ef;/*文字色*/
	margin-bottom:6px;
	font-size: 24px;
}
.h3LB:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f10c";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #00b9ef; /*アイコン色*/
}
.h3LP {
	position: relative;/*相対位置*/
	padding: 0.5em 0.5em 0em 1.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #ec7aac;/*文字色*/
	margin-bottom:6px;
	font-size: 24px;
}
.h3LP:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f10c";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #ec7aac; /*アイコン色*/
}
.h3BR {
	position: relative;/*相対位置*/
	padding: 0.5em 0.5em 0em 1.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #40220f;/*文字色*/
	margin-bottom:6px;
	font-size: 24px;
}
.h3BR:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f10c";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #40220f; /*アイコン色*/
}
.h3O {
	color:#ed6d00;
	font-size: 20px;
	font-weight:bold;
	margin-top: 180px;
	margin-bottom: 4px;
}
.h3P {
	color:#ec7aac;
	font-size: 20px;
	font-weight:bold;
	margin-top: 180px;
	margin-bottom: 4px;
}
.h3LBL {
	color:#00b9ef;
	font-size: 20px;
	font-weight:bold;
	margin-top: 180px;
	margin-bottom: 4px;
}
.h3LBL28 {
	color:#00b9ef;
	font-size: 28px;
	font-weight:bold;
	margin-bottom: 30px;
}
.h3LBL28 img {
	vertical-align:middle;
}
.h3G {
	color:#006934;
	font-size: 20px;
	font-weight:bold;
	margin-top: 180px;
	margin-bottom: 4px;
}
.h3BLstaff {
	color:#5185c5;
	font-size: 20px;
	font-weight:bold;
	line-height: 40px;
	margin-bottom:30px;
}
.h3Bstaff {
	color: #40220f;
	font-size: 20px;
	line-height: 40px;
	margin-bottom:30px;
}
.h3Gcircle {
	position: relative;
	z-index: -4;
	margin-left: 24px;
	margin-bottom: 30px;
	border-bottom:2px dotted #006934;
}
.h3Gcircle span.white {
	font-size:60px;
	color: #fff;
	padding: 8px;
}
.h3Gcircle:before {
	content: "";
	position: absolute;
	background: #006934;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	top: 50%;
	/* border: dashed 1px white; */
left: -24px;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: -1;
}
.h3Gcircle span.gley {
	color: #333;
	font-size:24px;
	padding: 0px 0 0px 50px;
}
.h4 {
	position: relative;/*相対位置*/
	padding: 0.9em 0em 0.8em 2.4em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #727171;/*文字色*/
	margin-bottom:30px;
	border-bottom: 4px dotted #ec7aac;
	font-size: 20px;
}
.h4:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f138";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1.4em;/*サイズ*/
	left: 0.5em;/*アイコンの位置*/
	top: 0.42em;/*アイコンの位置*/
	color: #ec7aac; /*アイコン色*/
}
.h4policy01 {
	background: url(/_share/bg/bg_h4policy01.png) 0 0 no-repeat;
	height: 240px;
	padding: 100px 468px 0 60px;
	background-size:contain;
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
}
.h4policy02 {
	background: url(/_share/bg/bg_h4policy02.png) 0 0 no-repeat;
	height: 240px;
	padding: 100px 540px 0 60px;
	background-size:contain;
	font-size:110%;
	line-height: 160%;
	margin-bottom: 30px;
}
.h4C {
	color: #a48b78;
	font-size:24px;
	margin-bottom: 20px;
}
.h4C img {
	vertical-align:middle;
	margin-left: 6px;
}
.h5 {
	position: relative;
	padding: .5em .75em;
	background-color: #fff;
	border-bottom: 2px solid #006934;
	font-size: 18px;
	color: #006934;
	margin-bottom: 30px;
}
.h5::before, .h5::after {
	position: absolute;
	top: 100%;
	left: 30px;
	content: '';
	height: 0;
	width: 0;
	border: 20px solid transparent;
}
.h5::before {
	border-top: 15px solid #006934;
}
.h5::after {
	margin-top: -2px;
	border-top: 15px solid #fff;
}
.h6 {
}
.rinkBox {
	position: relative;/*相対位置*/
	padding: 1.1em 1.0em 1.0em 3.0em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
color:;/*文字色*/
	margin-bottom:20px;
border-bottom:2px solid #;
	font-size: 16px;
}
.rinkBox:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f101";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1.8em;/*サイズ*/
	left: 0.50em;/*アイコンの位置*/
	top: 0.3em;/*アイコンの位置*/
	color: #006934; /*アイコン色*/
}
.rinkBoxB {
	position: relative;/*相対位置*/
	padding: 1.1em 1.0em 1.0em 4.0em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	border:dashed #006934 2px;
color:;/*文字色*/
	margin-bottom:20px;
	font-size: 16px;
}
.rinkBoxB:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f101";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1.8em;/*サイズ*/
	left: 1.0em;/*アイコンの位置*/
	top: 0.3em;/*アイコンの位置*/
	color: #006934; /*アイコン色*/
}
.rinkBoxBr {
	position: relative;/*相対位置*/
	padding: 1.1em 1.0em 1.0em 4.0em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
color:;/*文字色*/
	border-bottom: dotted 2px #40220f;
	margin-bottom:20px;
	font-size: 16px;
}
.rinkBoxBr:before {
	font-family: FontAwesome;/*忘れずに*/
	content: "\f101";/*アイコンのユニコード*/
	position: absolute;/*絶対位置*/
	font-size: 1.8em;/*サイズ*/
	left: 1.0em;/*アイコンの位置*/
	top: 0.3em;/*アイコンの位置*/
	color: #40220f; /*アイコン色*/
}
.boxOrange {
	color:#ed6d00;
	padding: 4px;
	border: 1px solid #ed6d00;
	margin-right:10px;
}
/*----- yajirusi -----*/

.yajirushi_O {
	position: relative;
	font-size:140%;
	line-height: 180%;
	color:#40220f;
	padding-bottom: 20px;
	background-color: none;
	border-bottom: 2px solid #ed6d00;
	margin-top: 20px;
	margin-bottom: 30px;
}
.yajirushi_O::before, .yajirushi_O::after {
	position: absolute;
	top: 100%;
	left: 100px;
	content: '';
	height: 0;
	width: 0;
	border: 100px solid transparent;
}
.yajirushi_O::before {
	border-top: 30px solid #ed6d00;
}
.yajirushi_O::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_P {
	position: relative;
	font-size:140%;
	line-height: 180%;
	color:#40220f;
	padding-bottom: 20px;
	background-color: none;
	border-bottom: 2px solid #ec7aac;
	margin-top: 20px;
	margin-bottom: 30px;
}
.yajirushi_P::before, .yajirushi_P::after {
	position: absolute;
	top: 100%;
	left: 100px;
	content: '';
	height: 0;
	width: 0;
	border: 100px solid transparent;
}
.yajirushi_P::before {
	border-top: 30px solid #ec7aac;
}
.yajirushi_P::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_BL {
	position: relative;
	font-size:140%;
	line-height: 180%;
	color:#40220f;
	padding-bottom: 20px;
	background-color: none;
	border-bottom: 2px solid #5185c5;
	margin-top: 20px;
	margin-bottom: 30px;
}
.yajirushi_BL::before, .yajirushi_BL::after {
	position: absolute;
	top: 100%;
	left: 100px;
	content: '';
	height: 0;
	width: 0;
	border: 100px solid transparent;
}
.yajirushi_BL::before {
	border-top: 30px solid #5185c5;
}
.yajirushi_BL::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_G {
	position: relative;
	font-size:140%;
	line-height: 180%;
	color:#40220f;
	padding-bottom: 20px;
	background-color: none;
	border-bottom: 2px solid #006934;
	margin-top: 20px;
	margin-bottom: 30px;
}
.yajirushi_G::before, .yajirushi_G::after {
	position: absolute;
	top: 100%;
	left: 100px;
	content: '';
	height: 0;
	width: 0;
	border: 100px solid transparent;
}
.yajirushi_G::before {
	border-top: 30px solid #006934;
}
.yajirushi_G::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.column_boxY {
	background-color: #ffffe0;
	border: 2px dashed #ed6d00;
	border-radius: 8px;
	color: #333;
	padding: 2em;
	margin-bottom: 30px;
}
.column_boxY .h6T {
	color: #fff;
	font-size: 18px;
	padding: 4px;
	text-align: center;
	background-color: #ed6d00;
	margin-bottom: 5px;
}
 @media (max-width: 768px) { /* forSMP */
.pBasB {
	/*margin-left: 38px;*/
line-height: 160%;
}
.box_txt {
	width: auto;
	float: none;
}
.h2 {
	font-size: 24px;
	margin-top:10px;
	margin-bottom:20px;
}
.h2B {
	font-size: 24px;
	margin-top:10px;
	margin-bottom:20px;
}
.h2B span {
	font-size: 24px;
}
.h2BL {
	font-size: 24px;
	margin-bottom:20px;
}
.h2LB {
	font-size: 24px;
	margin-bottom:20px;
}
.h2O {
	font-size: 24px;
	margin-bottom:20px;
}
.h2P {
	font-size: 24px;
	margin-bottom:20px;
}
.h2G {
	font-size: 24px;
	margin-bottom:20px;
}
.h3B {
	font-size: 18px;
	margin-bottom:10px;
}
.h3 {
	font-size: 18px;
}
.h3 span {
	color:#333;
}
.h3O {
	margin-top: 0px;
}
.h3P {
	margin-top: 0px;
}
.h3LBL {
	margin-top: 0px;
}
.h3G {
	margin-top: 0px;
}
.h4policy01 {
	background: none;
	height: auto;
	padding: 0px;
	margin-bottom: 20px;
}
.h4policy02 {
	background: none;
	height: auto;
	padding: 0px;
	margin-bottom: 20px;
}
.yajirushi_O::before, .yajirushi_O::after {
	left: 10px;
	border: 50px solid transparent;
}
.yajirushi_O::before {
	border-top: 30px solid #ed6d00;
}
.yajirushi_O::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_P::before, .yajirushi_P::after {
	left: 10px;
	border: 50px solid transparent;
}
.yajirushi_P::before {
	border-top: 30px solid #ec7aac;
}
.yajirushi_P::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_BL::before, .yajirushi_BL::after {
	left: 10px;
	border: 50px solid transparent;
}
.yajirushi_BL::before {
	border-top: 30px solid #5185c5;
}
.yajirushi_BL::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.yajirushi_G::before, .yajirushi_G::after {
	left: 10px;
	border: 50px solid transparent;
}
.yajirushi_G::before {
	border-top: 30px solid #006934;
}
.yajirushi_G::after {
	margin-top: -2px;
	border-top: 30px solid #f8f4e6;
}
.h3BLstaff {
	line-height: 30px;
}
.h3Bstaff {
	line-height: 30px;
}
.h2Gnumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2Gnumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.h2Onumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2Onumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.h2BLnumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2BLnumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.h2Pnumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2Pnumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.h2Cnumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2Cnumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.h2LBnumber {
	padding: 0em 0 0 0em;
	font-size: 50px;
	line-height:36px;
	margin-bottom: 20px;
	text-align: left;
}
.h2LBnumber span {
	padding: 0em 0 0em 0.4em;
	font-size: 32px;
}
.rinkBoxBr {
	font-size: 20px;
}
}
@media screen and (min-width:320px) and ( max-width:567px) { /* forSMP */
.h3Gcircle {
	margin-left: 12px;
}
.h3Gcircle span.white {
	font-size:30px;
	color: #fff;
	padding: 2px;
}
.h3Gcircle:before {
	width: 50px;
	height: 50px;
	top: 25%;
	/* border: dashed 1px white; */
left: -14px;
}
.h3Gcircle span.gley {
	padding: 0px 0 0px 25px;
}
}
@media screen and (min-width:568px) and ( max-width:768px) { /* forSMP */
.h3Gcircle {
	margin-left: 12px;
}
.h3Gcircle span.white {
	font-size:30px;
	color: #fff;
	padding: 2px;
}
.h3Gcircle:before {
	width: 50px;
	height: 50px;
	top: 50%;
	/* border: dashed 1px white; */
left: -14px;
}
.h3Gcircle span.gley {
	padding: 0px 0 0px 25px;
}
}
/* side */
#right {
	float: right;
	width: 240px;
}
#left {
	float: left;
	width: 240px;
}
 @media (max-width: 768px) { /* forSMP */
#right, #left {
	float: none;
	width: 100%;
}
}
aside {
}
/* aside box */
aside .box {
}
 @media (max-width: 768px) { /* forSMP */
}
}
/* aside title */

aside .title {
	position: relative;
	padding: 24px 0 20px 4px;
	border-top: 2px solid #ded9d9;
	border-bottom: 2px solid #ded9d9;
	font-size: 20px;
	color:#cc0066;
	font-weight:bold;
	margin-bottom: 10px;
}
aside .title::after {
	position: absolute;
	top: -2px;
	left: 0;
	z-index: 2;
	content: '';
	width: 50%;
	height: 2px;
	background-color: #564539;
}
aside .title a {
	display: block;
	color:#cc0066;
	text-decoration: none;
}
aside .title a:hover {
	text-decoration: underline;
}
aside .titleNr {
	position: relative;
	padding: 24px 0 20px 4px;
	border-top: 2px solid #ded9d9;
	border-bottom: 2px solid #ded9d9;
	font-size: 20px;
	color:#cc0066;
	font-weight:bold;
	margin-bottom: 10px;
}
aside .titleNr::after {
	position: absolute;
	top: -2px;
	left: 0;
	z-index: 2;
	content: '';
	width: 50%;
	height: 2px;
	background-color: #564539;
}
 @media (max-width: 768px) { /* forSMP */
aside .aImg {
	display: none;
}
}
aside .aImg {
	margin-bottom: 10px;
}
/* aside ul */
aside .ul {
	margin-bottom: 5px;
}
aside .ul li .linkSide {
	text-align: left;
}
aside .ul li .linkSide a {
	display: block;
	position: relative;
	z-index: 100;
	font-size: 102%;
	text-decoration:none;
	padding: 4px 0px 4px 16px;
	margin-top: 0px;
	color:#564539;
}
aside .ul li .linkSide a:hover {
	color: #cc0066;        /* マウスオーバーカラー */
}
.linkSideT a:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0px;
	width: 0;
	height: 0;
	margin-top: -4px;
	border: 4px solid transparent; /*top right bottom を透明化 */
	border-left: 10px solid #cc0066;
}
.linkSideT a:hover:before {
	left: 0px;        /*マウスオーバーで三角をずらす */
}

/*aside .ul li {
	font-size: 100%;
}
aside .ul li a,
aside .ul .listNoLink  {
	display: block;
	padding-top: 5px;
	padding-right: 4px;
	padding-bottom: 6px;
	padding-left: 4px;
	/*background-image: url(/_share/dotline.gif);
	background-repeat: no-repeat;
	background-position: left bottom;*/
	/*text-decoration: none;
}

aside .ul li a:visited {
}

aside .ul li a:hover {
	text-decoration: underline;
}*/





@media (max-width: 768px) { /* forSMP */
aside .ul li {
	float: left;
	width: 50%;
 font-size:;
}
aside .ul li:nth-child(odd) {
}
aside .ul li a {
	padding: 10px;
	background-image: none;
}
}
/* AI chat */

.aichat{
	position: fixed;
	bottom:10px;
	right: 90px;
	width: 80px;
	height: 80px;
	opacity:1;
	z-index: 1;
}

.aichat img{
	width: 100%;
}

@media (max-width: 768px) { 
	.aichat{
		right: 50px;
	}
}

/* pagetop */
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 20px;
	opacity:1;
}
#pagetop a {
	text-decoration: none;
	color: #FFF;
	width: 60px;
	text-align: center;
	display: block;
	border-radius: 30px;
	padding: 15px;
	background-color: #ed6d00;
}
#pagetop a:hover {
	opacity:0.8;
}
 @media (max-width: 768px) { /* forSMP */
#pagetop {
	bottom: 60px;
	right: 4px;
	font-size: 16px;
	opacity:1;
	z-index:1;
}
#pagetop a {
	width: 40px;
	text-align: center;
	display: block;
	border-radius: 4px;
	padding: 10px;
	background-color: #ed6d00;
}
}
/* staff */
.staffB {
	margin-bottom:30px;
	width:100%;
}
.staffB .staffimg {
	float: left;
	width:40%;
}
.staffB .staffimg img {
}
.staffB .staffbox {
	float: right;
	width:60%;
}
.staffbox  + .textR{
	clear: both;
}
.staffB .staffbox table {
	width: 100%;
}
.staffB .staffbox th {
	width:30%;
	border-bottom:1px solid #00b9ef;
	padding:8px;
	color:#40220f;
}
.staffB .staffbox td {
	border-bottom:1px solid #00b9ef;
	padding:8px;
	color:#40220f;
}
.staffP {
	margin-bottom:30px;
	width:100%;
}
.staffP .staffimg {
	float: left;
	width:40%;
}
.staffP .staffimg img {
}
.staffP .staffbox {
	float: right;
	width:60%;
}
.staffP .staffbox table {
	width: 100%;
}
.staffP .staffbox th {
	width:30%;
	border-bottom:1px solid #ec7aac;
	padding:8px;
}
.staffP .staffbox td {
	border-bottom:1px solid #ec7aac;
	padding:8px;
}
.staffbox ul {
	margin-left: 10px;
	padding-left: 5px;
}
.staffbox ul li {
	list-style-type: disc;
}
 @media (max-width: 768px) { /* forSMP */
.staffB .staffimg,  .staffP .staffimg {
	float: none;
	width:100%;
	text-align: center;
	margin-bottom:20px;
}
.staffB .staffimg img,  .staffP .staffimg img {
	width:60%;
}
.staffB .staffbox,  .staffP .staffbox {
	float: none;
	width:100%;
}
.staffB .staffbox th,  .staffB .staffbox td {
	width:100%;
	display:block;
}
.staffP .staffbox th,  .staffP .staffbox td {
	width:100%;
	display:block;
}
}
/* zIndex */
.zIndex1 {
	z-index: 1;
	position: relative;
}
.zIndex2 {
	z-index: 2;
	position: absolute;
	width: 100%;
	background-image: url(/_share/bg-zindex1.png);
	background-repeat: repeat-x;
}
.zIndex3 {
	z-index: 3;
	position: absolute;
}
/* crear */
.clearfix {
	overflow:hidden;
	zoom: 1;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	visibility: hidden;
}
/*20200605追記*/
.implantbox_big {
	margin-bottom:60px;
}
.implantbox01, .implantbox03 {
	width:100%;
}
h5.implanttileh5 {
	color:#40220f;
	text-align:center;
	border-bottom: solid 2px #ed6d00;
	font-weight:bold;
	font-size:21px;
	width: 40%;
	margin: 20px auto;
}
.implantflexbox01 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-evenly;
}
.implantcontents01 {
	width:25%;
}
.implantcontents01 img {
width:100% !important:
}
.implantcontents01 p {
	margin-top:20px;
	font-size:16px;
	text-align:center;
}
.implantcontents02 {
	width:6%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.implantcontents02 img {
width:100% !important:
}
.implantbox02, .implantbox04, .implantbox05, .implantbox08 {
	width:100%;
	margin-top:40px;
}
.implantcontents03 {
	width:40%;
}
.implantcontents03 img {
width:100% !important:
}
.implantcontents03 p {
	margin-top:10px;
	font-size:16px;
	text-align:center;
}
.implantcontents04 {
	width:6%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.implantcontents04 img {
width:100% !important:
}
.implantflexbox02 {
	display: -webkit-flex;
	width:100%;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-evenly;
}
.implantcontents05 {
	width:18%;
}
.implantcontents05 img {
width:100% !important:
}
.implantcontents05 p {
	margin-top:20px;
	font-size:16px;
	text-align:center;
}
.implantcontents06 {
	width:6%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.implantcontents06 img {
width:100% !important:
}
.pcimg_implant {
	display:block;
}
.spimg_implant {
	display:none;
}
 @media (max-width: 768px) {
.pcimg_implant {
	display:none;
}
.spimg_implant {
	display:block;
}
.implantbox_big_sp {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-evenly; flex-wrap :  wrap;
}
.implantbox01,.implantbox07{
	width:80%;
}
.implantbox02,.implantbox08  {
	width:80%;
	margin-top:0;
}
.implantflexbox01 {
	flex-direction: column;
}
.implantflexbox02 {
	flex-direction: column;
}
.implantcontents01, .implantcontents03, .implantcontents05 {
	width:100%;
}
.implantcontents02, .implantcontents04 {
	width:100%;
	padding:0;
	text-align:center;
	margin: 10px 0;
}
h5.implanttileh5 {
	width: 80%;
	font-size:18px;
}
.implantbox03, .implantbox04, .implantbox05 {
	width:80%;
	margin-top:0;
}
.implantcontents03 p {
	margin-top:8px;
	font-size:16px;
	text-align:center;
}
.implantbox_big_sp2 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-evenly; space-evenly; flex-wrap :  wrap;
}
.implantbox06 {
	width:80%;
}
}


/* フッター固定メニュー */
.sp-fixFooter{
  left: 0;
  display: flex;
  background-color: #fff;
  height: 56px !important;
  justify-content: space-between;
  z-index: 101 !important;
  border-bottom: 2px solid #ed6d00;
  border-top: 5px solid #ed6d00;
  width: 100vw !important;
}
.sp-fixFooter::after{
	display: none !important;
}
.sp-fixFooter a{
  font-size: 12px;
  font-weight: bold;
  background: #ed6d00;
  width: calc(25% - 3px/4);
  text-align: center;
  padding-bottom: 5px;
}
.sp-fixFooter a img{
  height: 100%;
  max-width: 100%;
}
.sp-fixFooter_menupeke{
  display: none;
}
.peke .sp-fixFooter_menupeke{
  display: inline-block;
}
.peke .sp-fixFooter_menu{
  display: none;
}
/* .smpbtn{display: none;} */
@media (max-width: 768px) {
#map{
	padding-bottom: 60px;
}
}

/* ナビ */

@media (max-width: 768px){

.drawr {
padding: 0;
}
.drawr #menu li {
    float: left;
    width: 48%;
    margin: 5px 1%;
}
.drawr #menu ul{
padding-bottom: 20px;
}
.drawr #menu li a{
	font-size: 90%;
}
.dropmenu p{
    font-size: 100%;
    text-align: center;
    padding-top: 10px;
		font-weight: bold;
		color: #40220f;
}
.dropmenu p span{
  background-color: rgba(0,0,0,0.1);
  padding: 5px;
  display: block;
  width: 94%;
	margin: 0 auto;
	}
.sp-menu0 {
	background:rgba(237, 109, 0,0.8);
	padding: 10px 0;
}
.sp-menu1__ttl,
.sp-menu1{
		background: rgba(255,175,0,0.8);

}
.sp-menu2__ttl,
.sp-menu2{
  background: rgba(244, 235, 58,0.8);
}
.sp-menu3{
	background: rgba(0,221,119,0.8);
	    padding-bottom: 50px;
}


}


/* CT */

	.ct .pBas {
			padding-bottom: 30px;
			position: relative;
		}


		@media (max-width: 768px) {
			.ct .imgRb {
				/* float: right; */
				margin-bottom: 10px;
				width: 100%;
				height: auto;
				margin-left: 0;
				text-align: center;
			}
		}

		.ct_caption {
			display: block;
			position: absolute;
			font-size: 90%;
			bottom: 0;
			right: 0;
		}
@media (max-width: 768px) {
  .ct_caption{
    top: 4px;
    left: 4px;
    right: inherit;
    bottom: inherit;
    padding: 0 5px;
    line-height: 1.8;
    background: rgba(204, 204, 204,0.9);
    font-size: 50%;
	}
}

		.checkmark {
			padding-left: 34px;
			position: relative;
			display: block;
			margin: 24px 0;
			font-size: 120%;
			font-weight: bold;
		}

		.checkmark:before,
		.checkmark:after {
			content: "";
			display: block;
			position: absolute;
		}

		.checkmark:before {
			width: 22px;
			height: 22px;
			border-radius: 50%;
			border: 2px solid #ccc;
			left: -2px;
			top: 0px;
		}

		.checkmark:after {
			border-left: 4px solid #ec7aac;
			border-bottom: 4px solid #ec7aac;
			width: 10px;
			height: 3px;
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
			left: 4px;
			top: 8px;
		}

		.h4_ct_merit {
			position: relative;
			padding: 0.8em 0.9em;
			line-height: 1.4;
			color: #727171;
			margin-bottom: 30px;
			border-bottom: 4px dotted #ec7aac;
			font-size: 20px;
		}

		p+.h4_ct_merit {
			margin-top: 2em;
		}

		.h4_ct_merit span {
			background-color: #ec7aac;
			color: #fff;
			margin-right: 15px;
			font-size: 26px;
			width: 30px;
			height: 30px;
			border-radius: 50%;
			display: inline-block;
			vertical-align: middle;
			text-align: center;
			line-height: 30px;
		}

		@media (max-width: 768px) {

			.h4_ct_merit {
				font-size: 16px;
			}


			.h4_ct_merit span {

				margin-right: 5px;
				font-size: 16px;
				width: 20px;
				height: 20px;
				line-height: 20px;
			}

		}

		.ct_olList {
			margin: 24px 0;
			font-size: 110%;
			line-height: 2;
		}

		.ct_olList span {
			color: #ec7aac;
			margin-right: 5px;
			font-size: 140%;
		}

		.ct_btn {
    background-color: #00b9ef;
    color: #fff !important;
    padding: 10px 30px;
    text-decoration: none;
    display: block;
    width: 200px;
    text-align: center;
		margin: 0 auto;
		border-radius: 5px;
}
	.ct_btn span{
		position: relative;
	}
	.ct_btn span:before{
	  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  left: -20px;
  margin-top: -4px;
  transform: rotate(45deg);
}

/* コロナ注意書き */
.coronInfo{
	padding: 30px;
}
.coronInfo img{
	max-width: 500px;
	width: 100%;
	margin: 10px auto;
	display: block;
}
.coronInfo__inner{
border:3px solid #ed6d00;
border-radius: 5px;
max-width: 1000px;
width: 96%;
margin: 0 auto;
}
.coronInfoBtn{	
	font-size: 140%;
	padding: 20px;
	display: flex;
	justify-items: center;
	justify-content: center;
	margin: 0 auto;
	color: #ed6d00;
	cursor: pointer;
}
.coronInfoBtn span::before{
	content: "OPEN +";
	font-size: 12px;
	margin-left: 10px;
	display: flex;
	justify-items: center;
	background: #eee;
	padding: 5px 10px;
	border-radius: 3px;
	font-weight: bold;
	color: #333;
}
.coronInfoBtn.on span::before{
	content: "CLOSE -";
}
@media (max-width: 768px) {
	.coronInfoBtn{	
		display: block;
	}
	.coronInfoBtn span::before{
		margin-left: 0;
		margin-top: 10px;
		justify-content: center;
	}
}
.coronInfoBox {
	transition: transform 0.3s ease-out;
	transform: scaleY(0);
	height: 0;
	transform-origin: top;
	
	overflow: hidden;
}

.coronInfoBtn.on + .coronInfoBox{
	transform: scaleY(1);
	display: block;
	padding: 20px;
	height: auto;
}
.coronInfoBox p{
	line-height: 1.6;
}
.coronInfoBox p + p{
	margin-top: 15px;
}
.drLink{
	margin-top: 40px;
	text-align: right;
}
/* TOP インスタグリッド */
.sns_wrap{
	max-width: 800px;
	margin-left:  auto;
	margin-right:  auto;
}

.eapps-instagram-feed-posts-grid-load-more{
	display: none;
}
.sns_wrap__insta{
	position: relative;
}
.sns_wrap__insta::after {
	position: absolute;
	width: 100%;
	height: 45px;
	content: "";
	background: #F7F4E5;
	bottom: 6px;
	z-index: 99999;
}

/* 託児サービスご利用にあたってのお願い */

.ChildcareNotes{
	background: #fff1f7;
	margin:3em 0;
	padding: 40px 80px 60px;
	border-radius: 20% 20% 20% 20%/40% 30% 40% 30%;
	}
	.ChildcareNotes h3{
	font-size: 24px;
	line-height: 160%;
	margin-bottom: 30px;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 90%;
	margin: 0 auto 1.5em;
	}
	.ChildcareNotes h3::before,
	.ChildcareNotes h3::after {
	content: '';
	flex-grow: 1; 
	height: 1px;
	border-top:2px dashed #3e0101;
	}
	
	.ChildcareNotes h3::before {
	margin-right: 20px;
	}
	.ChildcareNotes h3::after {
	margin-left: 20px;
	}
	.ChildcareNotes ol{
		counter-reset: li;
	}
	.ChildcareNotes ol li{
		position: relative;
		padding-left: 1.5em;
		list-style: none;
	}
	.ChildcareNotes ol li:before{
		position: absolute;
		top: 0;
		left: 0;
		font-weight: bold;
		color: #3e0101;
		counter-increment: li;
		content: counter(li)'.';
	}
	.ChildcareNotes ol li + li{
	margin-top:1em;
	}
	@media (max-width: 768px){
	.ChildcareNotes{
	margin:0em 0 3em;
	padding: 40px;
	border-radius: 20px;
	}
	.ChildcareNotes h3{
		width: 100%;
		font-size:20px;
	}
	.ChildcareNotes h3::before,
	.ChildcareNotes h3::after{
		min-width: 20px;
	}
	}

	/* リ目次 2021.12 */

.tc{
	background: #eee;
	border: 1px solid #ccc;
	padding: 30px 50px;
	width: 90%;
	margin: 30px 0;
}
.tc_ttl{
	font-weight:bold;
	margin-bottom:10px;
	font-size:120%;
}
.tc li{
	padding: 5px 0;
}
.tc li a{
	text-decoration: none;
}
@media screen and (max-width: 768px){
	.tc{
	padding: 30px;
	width: 100%;
}
}

/* footer 20220207 */
.sp-fixFooter2022 {
	padding:8px 5px 5px;
	display: flex;
	align-items:flex-start ;
	left: 0;
	background-color: rgba(255,255,255,1);
	}
	.sp-fixFooter2022 img{
		max-width: 100%;
		height: auto;
		vertical-align: bottom;
	}
	.sp-fixFooter2022__btn{
		flex: 1;
		display: flex;
		flex-wrap: wrap;
		/* background-color: #ed6d00; */
	align-content: center;
	}
	.sp-fixFooter2022__btn > a{
		width: 50%;
		display: block;
		padding: 1px;
		display: flex;
		align-items: stretch;
		text-align: center;
	}
	.sp-fixFooter2022__btn > a:nth-of-type(1),
	.sp-fixFooter2022__btn > a:nth-of-type(3){
		border-right: 1px solid;
	}
	.sp-fixFooter2022__btn > a:nth-of-type(1),
	.sp-fixFooter2022__btn > a:nth-of-type(2){
		border-bottom: 1px solid;
	}
	.sp-fixFooter2022__time{
		width: 52%;
		background-color: #fff;
		padding-left: 3px;
	}
	@media (max-width: 768px){
/* #pagetop {
		bottom: 110px;

} */
}


/* インサートパーツ */
.insertBox{
  background: #fff9eb;
  border-radius: 10px;
  overflow: hidden;
   width: 100%;
	 margin-bottom: 20px;
}
.insertBox img{
	max-width: 100%;
	height: auto;
}
.insertBox__ttl{
font-size: 18px;
background-color: #ed6d00;
font-weight: bold;
color: #fff;
text-align: center;
padding: 5px 20px;
margin-top: 0 !important;
}
.insertBox__inner{
padding:20px 80px;
 margin-top: 0 !important;
}
.insertBox__list{
list-style: none !important;
margin-top: 0 !important;
padding-left: 0 !important;
font-size: 16px;
    line-height: 2;
}
.insertBox__list i{
color:#ed6d00;
margin-right:10px;
}
.insertBox__txt{
font-size:14px;
line-height:1.4;
margin-top: 10px !important;
}
.insertBox__link{
display:flex;
margin-top: 10px !important;
justify-content: space-between;
}
.insertBox__link > a{
width:49%;
display:block;
}
@media (max-width: 768px){
	.insertBox__inner{
		padding:20px;
		}
}

/* 矯正歯科 */

.orthodontic_h2{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.orthodontic_h2_sub{
	font-size: 20px;
	font-weight: bold;
	margin-left: 20px;
	color: #ed6d00;
}

@media (max-width: 768px){
	.orthodontic_h2_sub{
		margin-left: 0;
		display: block;
	}
}

/* TOPバナー */

.top_bnr{
  padding: 50px 0;
  text-align: center;
  width: 90%;
  max-width: 1800px;
  margin-left:auto;
  margin-right:auto;
}
.top_bnr a{
  display: inline-block;
}
.top_bnr img{
  width: 100% !important;
  height: auto;
}
.top_bnr .top_bnr_max50{
  width: calc(50% - 10px);
}
.top_bnr .top_bnr_100{
  width: 100%;
}
.top_bnr > a + a{
  margin-top: 20px;
}
.top_bnr__bdr{
  border: 2px solid #ed6d00;
}
.top_bnr__column a + a{
  margin-left: 20px;
}
.top_bnr__column{
  display: flex;
  margin-top: 20px;
}
.top_bnr__column a{
  width: calc(50% - 10px);
}
.top_bnr__column--implant{
  align-items: center;
}
.top_bnr__implant{
  width: calc(50% - 10px + 90 / 1000* 50%) !important;
  margin-right: calc(90 / 1000* 50%* -1);
}
@media (max-width: 768px) {
.top_bnr{
padding: 0 0 50px;
width: 100%;
}
.top_bnr__column{
display: block;
margin-top: 0;
}
.top_bnr a + a{
  margin-left: 0;
}
.top_bnr a {
display: block;
width: 100% !important;
margin-top: 20px;
}
.top_bnr .top_bnr__implant{
width: calc(100% + 90/1000 * 100%) !important;
margin-right: calc(90/1000 * 100%* -1);
margin-top: 30px;
}


.spNone {
display: none !important;
}
}
@media (min-width: 769px) {
    .pcNone {
        display: none !important;
    }
}

/* 連携している高次医療機関 */
.partner{
padding: 50px 0 150px;
text-align: center;
}
.partner h2{
align-items: center;
display: flex;
}
.partner h2::before,
.partner h2::after {
background-color: #333;
content: "";
flex-grow: 1;
height: 1px;
}
.partner h2::before {
margin-right: 15px;
}
.partner h2::after {
margin-left: 15px;
}
.partner ul{
display: flex;
justify-content: space-between;
margin-top: 50px;
gap: 10px;
}
.partner ul li{
width: 25%;
background-color: #fff;
position: relative;
}
.partner ul li a{
color: #40220f;
display: block;
padding: 14px 10px;
text-decoration: none;
border: 2px solid #ed6d00;
transition: 0.6s;
}
.partner ul li::before{
font-family: FontAwesome;
content: "\f138";
position: absolute;
font-size: 1em;
color: #ed6d00;
position: absolute;
top: 50%;
transform:translateY(-50%) ;
right: 20px;
}
.partner ul li a:hover{
opacity: 0.6;
}
.partner ul::after{
display: none;
}
@media (max-width: 768px) {
.partner ul {
flex-wrap: wrap;
}
.partner ul li{
width:calc(50% - 5px);
}
.partner{
padding: 50px 0 50px;
}
}