@charset "utf-8";
html{color:#604c40;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{vertical-align:bottom;border:0}address,caption,cite,code,dfn,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#604c40}#yui3-css-stamp.cssreset{display:none}
body {font-family: UD Shin Go Conde90 L /*Shimanami*/, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","メイリオ", Arial,Helvetica Neue,Helvetica,sans-serif;}
* {
-o-box-sizing:border-box;
-ms-box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
word-break:break-all; word-wrap:break-word;
}
input[type="submit"],
input[type="reset"],
input[type="button"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="reset"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
.font1 { font-family:Ryumin Regular KL; }
.font2 { font-family:Ryumin Bold KL; }
.font3 { font-family:Reimin Medium; }
.font4 { font-family:A1 Mincho; }
.font5 { font-family:Shimanami; }
.font5-i { font-family:Shimanami; font-style:italic; }
.font6 { font-family:Shin Go Regular; }
.font7 { font-family:Shin Go Bold; }
.font8 { font-family:Gothic MB101; }
.font9 { font-family:Midashi Go MB31; }
.font10 { font-family:Gothic Medium BBB; }
.font11 { font-family:Jun 201; }
.font12 { font-family:Jun 501; }
.font13 { font-family:Shin Maru Go Regular; }
.font14 { font-family:Shuei NijimiMGo B; }
.font15 { font-family:Maru Folk Medium; }
.font16 { font-family:Folk Medium; }
.font17 { font-family:Cinema Letter; }
.font18 { font-family:Haruhi Gakuen; }
.font19 { font-family:GSanSerif-B; }
.font20 { font-family:Nachin; }
.font21 { font-family:Take Bold; }
.font22 { font-family:Shin Go Shadow; }
.font23 { font-family:Brush-U; }
.font24 { font-family:Talking; }
.font25 { font-family:Suzumushi; }
.font26 { font-family:Kyoukasho ICA Medium; }
.font27 { font-family:Likurei; }
.font28 { font-family:Kointai-M; }
.font29 { font-family:SakuraKeisetsu; }
.font30 { font-family:TBUDGothic R; }
.font31 { font-family:TBUDGothic E; }
.font32 { font-family:UD Shin Go Conde90 L; }
.font33 { font-family:UD Shin Go Conde90 M; }
p { line-height:2; }
img { max-width:100%; height:auto; }
checkbox { cursor:pointer; }
.flex { display:flex; }
.flex-wrap { display:flex; flex-wrap:wrap; }
.flex-sa { display:flex; justify-content:space-around; }
.flex-sb { display:flex; justify-content:space-between; }
.flex-reverse { display:flex; flex-direction:row-reverse; }
.flex-center { display:flex; justify-content:center; }
.flex-start-center { display:flex; align-items:center; }
.flex-start-bottom { display:flex; align-items:flex-end; }
.flex-sb-center { display:flex; justify-content:space-between; align-items:center; }
.flex-sb-end { display:flex; justify-content:space-between; align-items:flex-end; }
.flex-sa-end { display:flex; justify-content:space-between; align-items:flex-end; }
.flex-sa-center { display:flex; justify-content:space-around; align-items:center; }
.flex-sa-start { display:flex; justify-content:space-around; align-items:flex-start; }
.flex-start { display:flex; justify-content:flex-start; align-items:flex-start; }
.flex-justify { display:flex; justify-content:space-between; align-items:center; }
.flex-justify-start { display:flex; justify-content:space-between; align-items:flex-start; }
.flex-center-center { display:flex; justify-content:center; align-items:center; }
.flex-center-start { display:flex; justify-content:center; align-items:flex-start; }
a { outline:none; color:#604c40; transition : all 0.5s ease 0s; text-decoration:none; }
.mtype1 {margin: 30px 0px 50px;}
.mr10 { margin-right:10px; }
.mlr10 { margin-left:10px; margin-right:10px; }
.mlr20 { margin-left:20px; margin-right:20px; }
.mlr30 { margin-left:30px; margin-right:30px; }
.mlr40 { margin-left:40px; margin-right:40px; }
.mtb10 { margin-top:10px; margin-bottom:10px; }
.mtb20 { margin-top:20px; margin-bottom:20px; }
.mtb30 { margin-top:30px; margin-bottom:30px; }
.m5 { margin:5px; }
.m10 { margin:10px; }
.m15 { margin:15px; }
.m20 { margin:20px; }
.m30 { margin:30px; }
.m40 { margin:40px; }
.mt10 { margin-top:10px; }
.mt20 { margin-top:20px; }
.mt30 { margin-top:30px; }
.mt40 { margin-top:40px; }
.mt50 { margin-top:50px; }
.mt60 { margin-top:60px; }
.mt70 { margin-top:70px; }
.mt80 { margin-top:80px; }
.mt90 { margin-top:90px; }
.mt100 { margin-top:100px; }
.mt150 { margin-top:150px; }
.mt200 { margin-top:200px; }
.mr20 { margin-right:20px; }
.mb10 { margin-bottom:10px; }
.mb20 { margin-bottom:20px; }
.mb30 { margin-bottom:30px; }
.mb40 { margin-bottom:40px; }
.mb50 { margin-bottom:50px; }
.mb60 { margin-bottom:60px; }
.mb70 { margin-bottom:70px; }
.mb80 { margin-bottom:80px; }
.mb90 { margin-bottom:90px; }
.mb100 { margin-bottom:100px; }
.mb150 { margin-bottom:150px; }
.mb200 { margin-bottom:200px; }
.p10-0 { padding:10px 0; }
.p10 { padding:10px; }
.p20 { padding:20px; }
.p30 { padding:30px; }
.p40 { padding:40px; }
.pb10 { padding-bottom:10px; }
.pb20 { padding-bottom:20px; }
.pb30 { padding-bottom:30px; }
.pb40 { padding-bottom:40px; }
.pb50 { padding-bottom:50px; }
.pb60 { padding-bottom:60px; }
.pb70 { padding-bottom:70px; }
.pb80 { padding-bottom:80px; }
.pb90 { padding-bottom:90px; }
.pb100 { padding-bottom:100px; }
.pb150 { padding-bottom:150px; }
.pb200 { padding-bottom:200px; }
.pt10 { padding-top:10px; }
.pt20 { padding-top:20px; }
.pt30 { padding-top:30px; }
.pt40 { padding-top:40px; }
.pt50 { padding-top:50px; }
.pt60 { padding-top:60px; }
.pt70 { padding-top:70px; }
.pt80 { padding-top:80px; }
.pt90 { padding-top:90px; }
.pt100 { padding-top:100px; }
.pt140 { padding-top:140px; }
.pt150 { padding-top:150px; }
.pt200 { padding-top:200px; }
.p10-20 { padding:10px 20px; }
.p20-0 { padding:20px 0px; }
.p30-0 { padding:30px 0px; }
.ptb50 { padding-top:50px; padding-bottom:50px; }

.pc1200 { display:block; }
.pc1024 { display:block; }
.pc768 { display:block; }
.pc479 { display:block; }
.sp1200 { display:none; }
.sp1024 { display:none; }
.sp768 { display:none; }
.sp479 { display:none; }
.w100p { width:100%; }
.half { width:100%; }
.half1 { max-width:50%; }
.m30-40 { margin:30px 40px; }

.facility {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: 900px;
}

.facility dl {
	/*opacity: 0;*/
	width: 46%;
	margin-left:2%;
	margin-right:2%;
}
.facility dl img { border-top-left-radius:20px; border-top-right-radius:20px; }

.facility dl dt {
	color: #fff;
	text-align: center;
	padding: 20px 0;
	font-size: 1.2rem;
	border-bottom-left-radius:20px;
	border-bottom-right-radius:20px;
}

.facility dl dd {
	padding: 0px 0;
	font-size: 1rem;
}

.facility dl img {
	display:block;
	margin-left:auto;
	margin-right:auto;
}

#site-title { font-size:22px; font-weight:bold; }
#site-title img { height:90px; width:300px; }

#copyright {
	font-size:12px;
	text-align:center;
	padding:20px 0 0;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	color: #fff!important;
	 }
.bx-wrapper { box-shadow:none; border:none; margin-bottom:20px; }
.bx-wrapper img { margin-left:auto; margin-right:auto; width:100%; max-height:500px; object-fit:cover;  }
.box { max-width:1200px; margin-left:auto; margin-right:auto; overflow:hidden; }
.m-box { max-width:1100px; margin-left:auto; margin-right:auto; overflow:hidden; }
.s-box { max-width:800px; margin-left:auto; margin-right:auto; overflow:hidden; }
.font-xs { font-size:12px; }
#pankuzu { padding-top:30px; }
#pankuzu li { padding:6px; }
.heading1 {position: relative; padding:6px 0 6px 40px; border-bottom:1px solid #604c40; font-size:22px; }
.heading1::before {position: absolute; border-left:1px solid #604c40; height: 170%; left:20px;content:'';}
.heading4 { border-bottom:1px solid #555555; font-size:26px; padding:10px 20px; }
.heading5 { font-family:Shimanami; font-size:20px; color:#7f7f7f; margin-right:10px; }
.ptb10 { padding-top:10px; padding-bottom:10px; }
.ptb20 { padding-top:20px; padding-bottom:20px; }
.ptb30 { padding-top:30px; padding-bottom:30px; }
.ptb40 { padding-top:40px; padding-bottom:40px; }
.mw300 { max-width:300px; }
.mw400 { max-width:400px; }
.date { font-weight:bold; color:#604c40; }
.bb1 { border-bottom:1px solid #555555; font-size:26px; padding:10px 0px; margin-bottom:20px; }
.box-r { max-width:360px; }
.box-l { width:100%; }

a img,
a {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
a img:hover {
    opacity:0.5;
}
a:hover {
    color: #999;
}
.hide { display:none; }
.center { text-align:center; }
.left { text-align:left; }
.right { text-align:right; }
.bold { font-weight:bold; }
.link { text-decoration:underline; }
.link:hover { text-decoration:none; }
.table2 { border-collapse:collapse; width:100%; }
.table3,
.table { width:100%; border-collapse:collapse; }
.table2 th { padding:10px 0; word-break:keep-all; word-wrap:normal; }
.table2 th,.table2 td {
	width: 11%;
}
.table2 th:first-child,.table2 td:first-child {
	width: auto;
	padding: 10px 0;
}
.table3 th { background-color:#CCC; color:#FFF; }
.table3 th,
.table3 td { border:1px solid #666666; padding:10px; }
.table th { padding:10px; border:1px solid #CCC; word-break:keep-all; word-wrap:normal; width:200px; }
.table2 td { padding:10px 0; word-break:break-all; word-wrap:break-word; }
.table td { padding:10px; border:1px solid #CCC; word-break:break-all; word-wrap:break-word; }
/*.border1 { border:1px solid #CCC; }*/
.border1 + .border1 { border-left:1px solid #CCC; }
.table2 tr + tr { border-top:1px solid #CCC; }
.table2 th span {
	padding: 5px 7px;
	margin: 5px;
	background: #2571bf;
	color: #fff;
	border-radius: 20%;
}
.table2 th span.saturday {
	background: #f79038;
}

.table2 th span.sunday {
	background: #fb263a;
}

.nowrap,
td.nowrap { word-break:keep-all; word-wrap:normal; }
.table th.no-pad,
.table td.no-pad { padding:0px; border:1px solid #CCC; }
.table2 th,
.table th { font-weight:bold; text-align:center; vertical-align:middle; }
.table tr { background-color:#FFF; }
.table tr.deactive { background-color:grey; }
.w200 { width:200px; }
.top-list { max-height:240px; }

.fadeIn1 { animation: fadeIn1 4s ease 0s 1 normal; }
/*.fadeIn2 { animation: fadeIn2 1s ease 0s 1 normal; }*/
.fadeIn3 { animation: fadeIn3 1s ease 0s 1 normal; }
.popUp1 { transition:0.2s ease-in-out; }
.popUp1:hover { transform: translateY(-4px); }
.popUp2 { transition:0.2s ease-in-out; }
.popUp2:hover { box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.25); transform: translateY(-4px); }
.slider-parent {
 min-height:180px;
  }

.global-nav {
	max-width:1500px;
	margin-left:auto;
	margin-right:auto;
	overflow:hidden;
}
.global-nav li {
	margin: 10px 0;
}

.global-nav li a { color:#3E3E3E; font-size:1rem; height:100%; font-weight:bold; letter-spacing:2px; }
.global-nav li:first-child span {  }
.global-nav li span {  }
.btn {
	z-index: 2;
	position: relative;
	display: inline-block;
	padding:10px;
/*	color:#9d7b55; */
	background: #fff;
	border: 1px solid;
}
/*.btn::before { font-family: "FontAwesome"; content: "\f0da"; margin-right:4px; }
*/

.btn::after,.btn::before {
	content: "";
	top: 50%;
  margin-top: -1.5em;
  border-top: 1.5em solid transparent;
  border-bottom: 1.5em solid transparent;
  border-left: 1em solid;
  right: -1em;
 }
.btn::before {
  color: #fff;
  z-index: 3;
    right: -16px;
  	position: absolute;
}

.btn::after {
	position: absolute;
  right: -17px;
  z-index: 1;
/*  border-left-color: #9d7b55;*/
}
.btn:hover { opacity:0.5; }
.btn2 {
	text-align: center;
	margin: 0 auto;
	width: 160px;
	left: 0;
	right: 0;
	bottom: 30px;
	position: absolute;
	z-index: 2;
	display: inline-block;
/*	color: #9d7b55;*/
	padding: 10px;
	border: 1px solid;
}

.btn2::before {
	position: absolute;
	content: "";
	right: 1px;
	bottom: 1px;
	border: 10px solid transparent;
	border-right: 10px solid;
	border-bottom: 10px solid;

}
.address {
	padding: 10px 10px 0 0;
}
.heading2 {
	text-align:center; position:absolute; width:100%; height:100%; top:50%; color:#000;
}
.heading2-inner {
	font-size:30px; background-color:rgba(255,255,255,0.5); padding:10px; border-radius:2px;
}
.brsp1200,
.brsp1024,
.brsp768,
.brsp479,
.brsp { display:none; }
.modal_bg { background-color:rgba(255, 255, 255, 0.8); width:100%; height:100%; position:fixed; z-index:9999; display:none; }
.modal { width:100%; height:100%; }
.modal_box { background-color:rgba(255, 255, 255, 0.4); margin:20px; border-radius:5px; padding:40px; width:100%; max-width:1024px; height:100%; margin-top:12%; max-height:80%; overflow-y:scroll; border:1px solid #000; position:relative; }
.modal_close { font-size:28px; position:absolute; top:20px; right:20px; z-index:10240; }
.heading3 { font-weight:bold; font-size:22px; border-bottom:1px solid #888; }
.relative { position:relative; }

.modal-bg { position:fixed; display:flex; justify-content:center; align-items:center; background-color:rgba(255,255,255,0.8); width:100%; height:100%; z-index:10; }
.modal { width:100%; max-width:1200px; padding:0 10px 0; height:100%; max-height:300px; font-size:20px; overflow:scroll; color:#000; }
.font-l { font-size:24px; }


@keyframes fadeIn1 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn2 {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn3 {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity:1;

  }
  100% {
    opacity:0;
    z-index:0;
  }
}

#top-subject,
#guide {
	display: flex;
	min-height: 300px;
}
.subject-title-box {
	width: 30%;
	background: #ccc;
	position: relative;
	overflow: hidden;
}
.subject-title-box img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.subject-title-box p {
	color: #fff;
	padding: 10px;
	font-size: 1.2rem;
	display: inline-block;
	background: rgba(35,35,35,0.4);
	position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);

}
.subject-box {
	background: #fff;
	display: flex;
	flex-wrap: wrap;
	width: 70%;
}
.subject-dl {
	margin:20px;
}
.subject {
	display: block;
	width: auto;
	min-height: 300px;
	text-align: center;
	width: 252px;
	box-sizing: border-box;
}

/*.subject + .subject {
	border-left: 1px solid;
}
*/

.subject-icon {
	padding: 10px 0;
}
.subject-icon img {
	width: 20%;
}


.subject-description {
	padding: 15px 10px 25px;
	line-height: 1.5rem;
	border:1px solid #9c63a0;
	border-radius:5px;
	position:relative;
	text-align:left;
	font-size:14px;
	height:258px;
}
.subject-title {
	font-size: 1.2rem;
	font-weight: bold;
	padding-bottom:20px;
}
.subject-title.font-ss {
	font-size:18px;
}
.subject-btn {
	padding: 10px 20px;
	border: 1px solid;
	display: inline;
	transition: .3s;
	background-color:#9c63a0;
	color:#FFF;
	position:relative;
	top:-10px;
}
.button { border:1px solid #9c63a0; background-color:#9c63a0; color:#FFF; display:inline-block; padding:16px 20px; margin:20px; width:124px; }
.button:hover { background-color:transparent; color:#9c63a0; }
.nowrap { word-break:keep-all; }
.button1 { display:inline-block; padding:10px 24px; }
a.bgColor2:hover,
a.subject-btn:hover,
.subject-btn:hover {
	background: #333;
	color:#FFF;
	transition: .3s;
}
.introduction { /*menu3::after*/
/*	transform: scale(1, 0.8);*/
	width: 160px;
	height: 100%;
	position: absolute;
	font-weight: bold;
	top: 0px;
	right: 0px;
	padding: 20px;
	z-index: 2;
	font-size: 1.2rem;
	background: rgba(255,255,255,0.6);
	content: "Introduction";
	letter-spacing: 0.1rem;
}

.introduction a {
	display: block;
	position: absolute;
	border: 1px solid;
	border-radius: 5px;
	width:50px;
	bottom: 30px;
	left: 50%;
	margin-left:-25px;
	text-align:center;
	z-index: 3;
	font-size: 0.8rem;
	writing-mode: horizontal-tb;
	-webkit-writing-mode: horizontal-tb;
}
#extra-btn {
	position: fixed;
	color: #fff;
	z-index: 3;
	right: 20px;
	bottom: 20px;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #6FB92C;
	transition: .3s;
	cursor: pointer;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
}

#extra-btn img {
	position: absolute;
	top: 12px;
	right: 25px;
	width: 30px;
	transition: .3s;
}

#extra-btn:hover img {
	position: absolute;
	width: 40px;
	transition: .3s;
}

#extra-btn.active {
	background: #6FB92C;
	transition: .3s;
}

#extra-btn:hover {
	width: 90px;
	height: 90px;
}

.btn-in a {
	z-index: 2;
	position: fixed;
	display: block;
	right: -100px;
	bottom: -100px;
	padding: 10px 5px;
	text-align: center;
	width: 100px;
	border-radius: 20px;
	background: #6FB92C!important;
	color: #fff;
	transition: .3s;
	font-size: 0.8rem;
	line-height: 1.2rem;
	box-shadow: 3px 3px 3px rgba(0,0,0,0.3);
}

.btn-in .add {
	bottom: 100px;
	right: -100px;
	transition: .3s;
}

.btn-in .add:hover {
	opacity: 0.9;
	transition: .5s;
}
.btn-in .add:nth-child(1){
	bottom: 140px;
	right: 20px;

}
.btn-in .add:nth-child(2){
	bottom: 210px;
	right: 20px;

}
.btn-in .add:nth-child(3){
	bottom: 280px;
	right: 20px;

}
.btn-in .add:nth-child(4){
	bottom: 350px;
	right: 20px;

}
#extra-btn .plus {
	position: absolute;
	transition: .3s;
	top: 52.5px;
	left: 40px;
}

.plus::before,
.plus::after {
	content: "";
	position: absolute;
	background: #fff;
}

.plus::before {
	width: 30px;
	height: 3px;
	left: -14.5px;
	border-radius: 1.5px;
}

.plus::after {
	top: -13px;
	width: 3px;
	height: 30px;
	border-radius: 1.5px;
}

#extra-btn:hover .plus {
	top: 60px;
	left: 45px;
	transition: .3s;
}

#extra-btn.active .plus {
	transform: rotate(-45deg);
}

.global-nav li a::before { content:''; background-image:url(../img/nav-icon.svg?v=2); background-repeat:no-repeat; background-position:center center; display:inline-block; width:26px; height:26px; vertical-align:sub; margin-right:10px; }
.bar-r { border-top-left-radius:25px; border-bottom-left-radius:25px; width:40%; }
.bar-l { border-top-right-radius:25px; border-bottom-right-radius:25px; width:60%; }
.h50 { height:50px; }
.space-l { width:60%; }
.space-r { width:40%; }
.section-type1.no-padding { padding:0; }
.tag { background-color:#3273bb; text-align:center; width:150px; font-size:13px; border-radius:4px; display:flex; justify-content:center; align-items:center; margin:10px; font-size:13px; }
#sidebar .tag a,
.tag a { color:#FFF; padding:10px 2px; display:flex; justify-content:center; align-items:center; width:100%; height:100%; border-bottom:none; font-size:13px; }
.mw100p { width:100%; }
.facility dl dd.p20-0,
.p20-0 { padding:20px 0; }
.font-l { font-size:26px; }

.map-div { position:relative; }
.info-image { width:300px; }
.no-image { width:200px; background-color:#CCC; color:#FFF; height:200px; display:flex; align-items:center; justify-content:center; }
.screen-reader-text { display:none; }
.pagination { text-align:center; }
.page-numbers { background-color:#3273bb; color:#FFF; padding:10px 6px; border-radius:5px; border:1px solid #3273bb; display:inline-block; margin:5px; }
.page-numbers.current,
.page-numbers:hover { background-color:#FFF; color:#3273bb; }
nav.pagination { display:block; }




@media screen and ( max-width:1260px ){
	.pc1200 { display:none; }
	.sp1200 { display:block; }
	.half.break1200 { width:100%; }
	.flex.break1200,
	.flex-wrap.break1200,
	.flex-reverse.break1200,
	.flex-sa.break1200,
	.flex-sb.break1200,
	.flex-center.break1200,
	.flex-center-center.break1200,
	.flex-sb-center.break1200,
	.flex-sa-center.break1200,
	.flex-sb-end.break1200,
	.flex-sa-end.break1200 { display:block; }
	.box { padding-left:5px; padding-right:5px; }
	.brsp1200,
	.brsp { display:block; }
	.box-r.break1200,
	.box-l.break1200 { max-width:100%; }
	.global-nav li a { font-size:11px; padding:0 12px; }
/*
	#global-nav { display:none; border-left:none; }
	.global-nav li:first-child span { border-left:none; }
	.global-nav li span { border-right:none; }
	.global-nav li { border-bottom:1px solid #FFF; }
	.global-nav li a { text-align:left; padding:20px; position:relative; border-right:none; font-size:15px; min-height:63px; }
	.global-nav li a:before { display:inline-block; font-family:FontAwesome; content:"\f105"; position:absolute; top:25px; right:20px; }
*/
}



@media screen and ( max-width:1024px ){
	.pc1024 { display:none; }
	.sp1024 { display:block; }
	.idea-image { height:250px; }
	.half.break1024 { width:100%; }
	.flex.break1024,
	.flex-reverse.break1024,
	.flex-sa.break1024,
	.flex-sb.break1024,
	.flex-center.break1024,
	.flex-center-center.break1024,
	.flex-sb-center.break1024,
	.flex-sa-center.break1024,
	.flex-sb-end.break1024,
	.flex-sa-end.break1024 { display:block;width: 100%; }/*	.flex-wrap.break1024,*/
	.box-r.break1024,
	.box-l.break1024 { max-width:100%; }
	#menu-sp { display:block; position: relative; top: 0px; right: 0px; font-size:30px; cursor:pointer;padding: 0 7px; }
	#menu-icon-sp {
		position: absolute;
		z-index: 30;
		top: 10px;
		right: 14px;
	}
	.brsp1024 { display:block; }
	#top-subject,
	#guide {
		flex-wrap: wrap;
	}

	.subject-title-box {
		width: 100%;
		height: 40vh;
	}

	.subject-title-box p {
		font-size: 2rem;
	}

	.subject-box {
		width: 100%;
	}

	#top-subject {
		flex-direction: column;
	}

	.subject {
		max-width: 100%;
	}
	.global-nav li a::before { background-image:url(../img/nav-icon-sp.svg?v=2); }
	.introduction {
		width: 80px;
		padding: 20px 0px 0px 1px;
		writing-mode: vertical-lr;
		-webkit-writing-mode: vertical-lr;
	}
	.tag { width:46%; margin-left:2%; margin-right:2%; }
	.btn-in {
		position: relative;
		width: 100%;
		padding: 10px;
	}

	.btn-in a {
		width: 100px;
		padding: 10px;
		bottom: -70px;
	}

}
@media screen and ( max-width:768px ){
	.pc768 { display:none; }
	.sp768 { display:block; }
	.half.break768 { width:100%; }
	.flex.break768,
	.flex-wrap.break768,
	.flex-reverse.break768,
	.flex-sa.break768,
	.flex-sb.break768,
	.flex-center.break768,
	.flex-center-center.break768,
	.flex-sb-center.break768,
	.flex-sa-center.break768,
	.flex-sb-end.break768,
	.flex-sa-end.break768 { display:block; }
	.brsp768 { display:block; }
	.half1 { max-width:100%; }
	.box-r.break768,
	.box-l.break768 { max-width:100%; }

	.bar-r { width:50%; }
	.bar-l { width:50%; }
	.space-l { width:50%; }
	.space-r { width:50%; }
	#top-subject {
		flex-direction: column;
	}

	.subject-title-box {
		width: 100%;
		height: 40vh;
	}

	.subject-box {
		width: 100%;
		flex-wrap: wrap;
		height: auto;
	}

	.subject-title-box p {
		font-size: 1.4rem;
	}


	.subject {
		box-sizing: border-box;
		width: 50%;
	}
	.introduction { width:auto; }
}
@media screen and ( max-width:480px ){
	#site-title { width: 160px; }
	.pc479 { display:none; }
	.sp479 { display:block; }
	.half.break479 { width:100%; }
	.flex.break479,
	.flex-wrap.break479,
	.flex-reverse.break479,
	.flex-sa.break479,
	.flex-sb.break479,
	.flex-center.break479,
	.flex-center-center.break479,
	.flex-sb-center.break479,
	.flex-sa-center.break479,
	.flex-sb-end.break479,
	.flex-sa-end.break479 { display:block; }
	.brsp479 { display:block; }
	.modal_box { padding:10px; }
	.box-r.break479,
	.box-l.break479 { max-width:100%; }

	.facility {
		display: block;
		width: 100%;
	}

	.facility dl {
		opacity: 1;
		width: 100%;
		margin: 0;
	}
	.btn-in a { right:-140px; bottom:100px; font-size:12px; width:100px; padding:5px;  }
	.btn-in .add { right:-100px; }
	.btn-in .add:nth-child(1) { right:80px; bottom:20px; }
	.btn-in .add:nth-child(2) { right:190px; bottom:20px; }
	.btn-in .add:nth-child(3) { right:80px; bottom:80px; }
	.btn-in .add:nth-child(4) { right:190px; bottom:80px; }
	#site-title { padding:0; }
	.subject {
		width: 100%;
	}
	.subject-description {
		height:auto;
	}
}

.header-nav {
	position: relative;
}


/*---------- editing by Komatsuzaki 7/31 ----------*/
html {
	font-size: 16px;
}

/*.btn-in {
	display: none;
	padding-top: 10px;
}*/

/*.right-btn {
	display: inline-block;
	width: 160px;
	text-align: center;
	z-index: 6;
	border: 1px solid #fff;
	padding: 10px 20px;
	color: #fff;
	margin: 0px 0px 10px;
	border-radius: 10px;
	font: normal normal normal 14px/1 FontAwesome;
}*/

.w900 {
	max-width: 900px;
	margin: 0 auto;
}



#site-title {
	text-align: left;
	line-height: 1;
}

#header-user {
	position:fixed;
	background-color:rgba(255,255,255,0.7);
	z-index: 10;
	width:100%;
	top:0;
}

/*.global-nav li:hover {
	background: rgba(255,255,255,1);
	transition: .25s;
}*/
.global-nav li a {
	position: relative;
	display: block;
	padding: 0px 17px;
	transition: .25s;
}

.global-nav li + li {
	border-left: 1px solid;
}

.global-nav li a:hover {
	/*background: rgba(255,255,255,1);*/
	display: block;
	padding: 0px 20px;
	transition: .25s;
}

@media screen and ( max-width:1420px ) {
		.global-nav li a {
			padding: 0 12px;
			font-size: 14px;
		}

		.global-nav li a:hover {
			padding: 0 12px;
			font-size: 14px;
		}
}
@media screen and ( max-width:1167px ) {
		.global-nav li a {
			padding: 0 6px;
			font-size: 12px;
		}

			.global-nav li a:hover {
			padding: 0 6px;
			font-size: 12px;
		}
}

@media screen and ( max-width:1305px ) {
		.global-nav li a {
			padding: 0 10px;
			font-size: 13px;
		}

			.global-nav li a:hover {
			padding: 0 10px;
			font-size: 13px;
		}
}


.global-nav li a .line {
	position: absolute;
	z-index: 8;
  left: 0;
  right: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  margin: auto;
  background: #2c3d4e;
  transition: 0.15s ease-out;
  transform: scaleX(0);
  content: "";
}

.global-nav li a:hover .line {
  transform: scaleX(1);
}
h1 {
	text-align: center;
	font-size: 24px;
	margin: 20px 0;
}

strong {
	margin: 20px 0;
	line-height: 36px;
}

.visual {
	width: 100%;
	overflow: hidden;
	height: 500px;
	position:relative;
}

.visual img {
	width: 100%;
}

.dummy-img {
	position: relative;
	z-index: 2;
}

.section-type1 {
	overflow: hidden;
/*	background: #fff4d5;*/
	display: flex;
	position: relative;
	width: 100%;
	padding: 80px 0;
}

.section-type2 {
	position: relative;
	background: #f9f9f9;
	padding: 50px 0;
}

span.bg1 {
	display: block;
	position: absolute;
	z-index: 1;
/*	background: #9d7b55;*/
	top: -40px;
	left: 60%;
	height: 500px;
	width: 100%;
}

span.bg1-2 {
	display: block;
	position: absolute;
	z-index: 1;
/*	background: #9d7b55;*/
	top: 460px;
	left: 0;
	min-height: 100%;
	width: 60%;
}

.section-type1 > .content {
	position: relative;
	z-index: 2;
	background: #fff;
	width: calc(100% - 440px);
	padding: 50px;
}

.section-type1 > .content2 {
	position: relative;
	z-index: 2;
	background: #fff;
	width: calc(100% - 440px);
	padding: 50px;
}

.section-type1 > .content3 {
	position: relative;
	z-index: 2;
	background: #fff;
	width: calc(100% - 440px);
	margin: 0 auto;
	padding: 50px;
}

.section-type1 > .dummy-img {
	overflow: hidden;
	width: 400px;
	margin: 0 20px;
}




.content-h1 {
/*	color: #9d7b55;*/
	font-size: 1.6rem;
	margin-bottom: 30px;
}

.content3 .content-h1 {
	text-align: center;
}

.content3 .staffs + .content-h1 {
	padding-top: 25px;
	border-top: 1px solid;
}

.box-in-top {
	margin-top: 30px;
	padding: 0px;
}

.menu {
	display: flex;
}


.menu > div {
	position: relative;
	width: calc(100% / 3);
	min-height: 340px;
}

.menu > div + div {
	margin-left: 10px;
}

.menu li {
	height: 23%;
	padding: 15px 60px;
	border: double;
	cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.menu li::before {
	content: "■";

}

.menu li:hover {
	opacity: 0.5;
}

.menu li + li {
	margin-top: 5px;
}

.menu div img
{
	position: absolute;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;

}

.menu div p {
	padding: 0 10px;
	height: 100%;
	position: absolute;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 9;
}


.menu div img,
.menu p {
	opacity: 0;
	display: none;
}

.menu div img:first-child,
.menu div p:first-child {
/*	display: -webkit-box;*/
	display: block;
	opacity: 1;
}

.menu div p a.btn {
	position: absolute;
	width: 160px;
	text-align: center;
	bottom: 30px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.menu2 ul,.menu3 ul {
	display: flex;
	justify-content: center;
}

.menu2 ul li {
	text-align: center;
	background: #f4cebf;
	max-width: calc(20% - 10px);
}

.menu2 ul li + li {
	margin-left: 10px;
}

.menu2 ul li dl {
	border-bottom: 2px solid;
	padding: 20px 0 15px;
}

.menu2 ul li dl dd {
	font-size: 0.7rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.menu2 ul li dl dt {
	color: #555;
	font-size: 1rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.menu3 li,.menu3-2 li {
	text-align: center;
	max-width: calc(25% - 10px);
}


.menu3,.menu3-2 {
	position: relative;
	overflow: hidden;
	width: 100%;
	min-height: 255px;
}

.menu3 ul,.menu3-2 ul {
	position: relative;
	display: flex;
	justify-content: center;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
}



.menu3 ul li,.menu3-2 ul li {
	/*position: absolute;*/
	top: 0;
	width: calc(100% / 4);
	margin: 0 5px;
}



/*.menu3 ul li + li {
	margin-left: 10px;
}
*/








.footer-box {
	display: flex;
	justify-content: space-around;
}
.footer-box dl {
	width: 50%;
	text-align: center;
	justify-content: center;
	padding: 20px;
}
.footer-box dl dt {
	position: relative;
}

/*.footer-box dt i {
	position: absolute;
	z-index: 0;
	display: block;
	top: 19px;
	border-radius: 1px;
	width: 100%;
	border: 1px solid #fff;

}
.footer-box dt span {
	position: relative;
	z-index: 2;
	color: #fff;
	margin: 10px auto;
	padding: 0 10px;
	display: inline-block;
	text-align: center;
}*/

.footer-box a img {
	width: calc(100% - 10px);
}

/*footer .footer-box .banner ul {
	display: flex;
	justify-content: center;
}*/



footer .footer-box .half-size ul {
	position: relative;
	top: 20px;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 10px 30px;
}

footer .footer-box .banner ul {
	position: relative;
	top: 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 30px 10px 30px;
}

footer .footer-box .half-size ul li,
footer .footer-box .banner ul li {
	width: 50%;
}

footer .footer-box .banner ul {
	width: 100%;
}
footer .footer-box .half-size ul li a {
	padding-left: 15px;
	position: relative;
	display: table;
}

footer .footer-box .half-size ul li a::before {
	content: "";
	display: table-cell;
	vertical-align: middle;
	position: absolute;
	left: 0;
  top: 50%;
  margin-top: -.3em;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
footer .footer-box .half-size p {
	color: #fff!important;
	font-size: 1.2rem;
	padding-left: 30px;
	font-weight: bold;
	position: relative;
}

footer .footer-box .banner p {
/*	color: #9d7b55!important;*/
	text-align: left;
	font-size: 1.2rem;
	padding-left: 30px;
	font-weight: bold;
	position: relative;
}
footer .footer-box .half-size p:before {
	border-top: 1px solid #fff;
	width: 100%;
	left: 0px;
	bottom: -5px;
	content: "";
	position: absolute;
}

footer .footer-box .banner p i:last-child {
	border-top: 1px solid;
	width: 100%;
	left: 0px;
	bottom: -5px;
	position: absolute;
}

footer .footer-box .banner p i:first-child {
	border-left: 1px solid #555;
	position: absolute;
	height: 220%;
	left: 1rem;
}
footer .footer-box .half-size p:after {
	content: "";
	border-left: 1px solid #fff;
	position: absolute;
	height: 220%;
	left: 1rem;
}

footer .footer-box > ul {
	padding: 40px 0;
}

footer .footer-box ul li dl dt {

}

footer ul li a + a {
	padding-left: 10px;
}

/*introduce*/
.introduce img {
	max-width: 300px;
	height: auto;
}

.staff-box {
	display: flex;
	align-items: flex-end;
	margin-bottom: 40px;
}

.staffs {
	display: flex;
	justify-content: center;
	margin-bottom: 25px;
}


.staff-box dl {
	margin: 0 40px;
}
.staff-box dl dt {
	font-size: 1.6rem;
	font-weight: bold;
}

.staff-box dl dt span {
	font-weight: normal;
	font-size: 1rem;
	margin-right: 10px;
	display: block;
}

.staff-box dl dd a {
	display: block;
	z-index: 1;
	position: relative;
	overflow: hidden;
	border: 1px solid;
	margin-top: 10px;
	padding: 10px 10px 10px 10px;
	transition: all .25s;
}
.staff-box dl dd a:hover {
	color: #fff;
}
.staff-box dl dd a span {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 100%;
	display: block;
	width: 100%;
	height: 100%;
}
/*.staff-box dl dd a i {
	position: absolute;
	top: 5px;
	right: 10px;
  width: 35px;
  height: 35px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}*/

.staffs dl {
	width: 23%;
	text-align: center;
	margin: 0 1%;
}

.staffs dl dd img {
	width: 100%;
	margin-bottom: 10px;
}
.staffs dl dt {
	font-weight: bold;
}

.staffs dl dd {
	font-size: 0.8rem;
}


.introduce table {
	margin: 40px 0;
}

.introduce .table-box {
	display: flex;
}

.introduce table + table {
}

.introduce table caption {
	font-size: 1.4rem;
	padding-bottom: 10px;
}

.introduce table td,.staff table td {
	font-size: 1rem;
	border: solid 1px #9c63a0;
	padding: 5px;
	min-width: 85px;
	color: #555;
}

.item {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	max-width: 900px;
	margin: 0 auto 50px;
}
.item + .item {
	border-top: 1px solid;
	padding-top: 50px;
}

.section-type2 .item img {
	width: 260px;
}

.section-type2 .item dl {
	margin-left: 20px;
	width: 100%;
}

.section-type2 .item dl dt {
	max-width: 600px;
	font-size: 1.2rem;
	padding: 3px 10px;
}

.section-type2 .item dl dd {
	position: relative;
	max-width: 600px;
	font-size: 1rem;
	padding: 3px 10px;
	background: #fff;
	margin-top: 10px;
	padding: 5px 10px 60px;
}

.section-type2 .item dl dd a {
	position: absolute;
	right: 10px;
	bottom: 10px;
	display: block;
	width: 180px;
	color: #fff;
	padding: 5px 0px;
	text-align: center;
}

.section-type2 .item dl dd a::before {
	position: absolute;
  right: 30px;
  top: 10px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
  transition: .25s;
}

.section-type2 .item dl dd a:hover {
	opacity: 0.7;
	transition: .25s;

}
.section-type2 .item dl dd a:hover::before {
	right: 20px;
	transition: .25s;
}
.item2 {
	max-width: 900px;
	margin: 0 auto;
}

.item2 h2 {
	width: 100%;
	font-size: 1.4rem;
	margin-bottom: 10px;
	border-bottom: 2px solid;

}
.item2 dl {
	display: flex;
	justify-content: space-between;
}

.item2 + .item2 {
	margin-top: 50px;
}

.item2 dl dd + dd {
	margin-left: 20px;
}



.access-table {
	width: 900px;
	margin: 0px auto;
	padding: 10px;
}

.access-table th,
.access-table td {
	padding: 20px;
	background: #fff;
}

.access-table th {
	text-align: center;
	font-weight: bold;
}

.access-table tr + tr {
	border-top: 1px solid;
}
.access-table th + td {
	border-left: 1px solid;
}

.map {
	width: 900px;
	position: relative;
	text-align: center;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 50px auto;
}

.map iframe {
	width: 600px;
}
.footer-map-div {
	padding:20px;
	position: relative;
}

.footer-map {
	width: 100%;
	height: 300px;
}
.map-link,
.footer-map-link {
	display: block;
	bottom: 0;
	left: 0;
	right: 0;
	font-size: 0.9rem;
	width: 180px;
	margin: 0 auto;
	text-align: center;
	position: absolute;
	z-index: 8;
	background: #fff;
	padding: 5px 10px;
	border-radius: 20px;
	border: 2px solid;
}
.map-link { bottom:-10px; }
.map-link:hover,
.footer-map-link:hover {
	transition: .25s;
	opacity: 0.7;
}
.map-iframe { width:100%; }
.br-sp {
	display: none;
}

.info-head dd {
	font-size: 0.9rem;
}
/*
#article li {
padding-top: 10px;
}
#article li + li {
	border-top: 1px solid;
}
#article li:hover {
	opacity: 0.6;
	transition: .25s;
}
*/
#footer-info {
	margin: 40px auto 50px;
	display: flex;
	align-items: center;
	height: 300px;
}
#footer-info div + div {
}
/*.footer-article {
	margin-left:66px;
}*/
.footer-article dl {
	display: flex;
	margin-bottom: 15px;
	align-items: center;
}

.footer-article dl dt {
	width: 170px;
	text-align: center;
	padding: 10px;
	display: inline-block;
}
.footer-article dl dd {
	padding: 10px;
}
.footer-article dl dd a {
	color:#FFF;
}
.footer-article dl.type2 {
	padding: 10px 0;
}

.footer-article dl.type2 dd {
	font-size: 1.4rem;
	color: #9d7b55;
}
.footer-hours {
	margin-left:85px;
	margin-right:40px;
}
.half-size {
	position: relative;
	width: 50%;
	padding: 20px;
	min-height: 220px;
/*	background: #9d7b55;*/
}

.shadow {
	box-shadow:3px 3px #d1c0a6;
}

.address-text { text-indent:-0.5em; padding-left:1em; font-size:21px; letter-spacing:2px; }
.building { padding-left:1em; }
.notice-box {
}

.table2 {
}

.notice {
	text-indent:1em;
}




.menu3 {
	overflow: hidden;
	width: 100%;
/*	min-height: 220px;*/
}


.introduce > table {
	width: 100%;
}

.menu li.circle::before {
	content: "▲";
}


dl#monshin {
	display: none;
	position: fixed;
	z-index:11;
	top: 100px;
	left: 0;
	right: 0;
	margin:  auto;
	width: 300px;
	background: rgba(255,255,255,0.7);
	text-align: center;
	padding: 15px;
}
dl#monshin dt {
	font-size: 2rem;
	padding-bottom: 15px;
	line-height: 1.25;
}

dl#monshin dd p {
	text-align: left;
	padding-bottom: 15px;
	line-height: 1.5;
}
dl#monshin dd a {
	display: block;
	background: #ccc;
	color: #fff;
	padding: 15px 20px;
	text-align: center;
	text-decoration: none;
}

dl#monshin dd a:hover {
	opacity: 0.6;
	transition: .25s;
}
dl#monshin dd + dd {
	margin-top: 10px;
}

#monshin .download { background:#888; }

.access_box {
	position: relative;
}

.overLay {
  position:fixed;
  top:0;
  left:0;
  background:rgba(0,0, 0,0.8);
  width:100%;
  height:100vh;
  z-index:10;
  display: none;
}
.access_box div {
  position:relative;
  z-index:2;
}
.clone {
  position:fixed;
  z-index:11;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}


.closeModal {
	color: #fff;
	text-align: center;
	border: 1px solid;
	padding: 10px;
	position: fixed;
	margin: 0 auto;
	left: 0;
	right: 0;
	bottom: 50px;
	width: 300px;
	text-align:center;
}

.sp-nav-area {
	display: none;
}

.monshin {
	padding: 8px 45px 25px;
	margin: 23px 0 0 0;
	background: #83d686;
	color: #fff;
	height: 32px;
	border-radius: 25px;
}

.tab-only {
	display: none;
}

.monshin-second {
	display: none;
}


@media screen and ( max-width:1024px ){

	p { font-size:1.1rem; }

	#site-title {
    width: 200px;
    margin:0;
	}

	.address {
		padding: 0 0 0 1em;
	}
	.building,
	.address-text {
		display: none;
	}

	#phone-icon-sp span {
		display: none;
	}


/*	.right-btn {
    top: 180px;
		position: fixed;
		width: 30px;
		z-index: 6;
		font-size: 0.9rem;
		right: -1px;
		margin: 0;
		border: 1px solid #fff;
		padding: 5px;
		border-radius: 5px 0 0 5px;
		color: #fff;
		-webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
	}*/

	.w900 {
		max-width: 100%;
		padding: 0 20px;
	}

	.btn {
		margin-bottom: 20px;
	}

	nav {
		display: none;
	}


	.sp-nav-area {
		position: fixed;
		z-index: 9;
		top: 40px;
		right: 40px;
		width: 0%;
		height: 0vh;
  	transition: .5s;
		display: block;
	}

	.circle1 {
  	transition: 1s;
  	border-radius: 100vh;
  	width: 280vh;
  	height: 200vh;
  	position: fixed;
  	top: -50vh;
  	right: -50vh;
		overflow: hidden;
	}


	.sp-nav-area ul {
		width: auto;
		position: fixed;
		display: none;
		top: 15px;
		left: 0;
  	text-align: center;
  	transition: .5s;
	}

	.sp-nav-area ul li ul.under-page {
		transition: 0s;
	}


	.sp-nav-area ul li {
		opacity: 0;
		padding: 15px;
		transition: 1s;
	}

	.sp-nav-area.circle1 ul li {
		text-align: left;
		transition: 1s;
		opacity: 1;
		display: block;
		padding: 5px;
		position: relative;
	}

	.sp-nav-area ul li a {
		color: #fff!important;
		opacity: 0;
		font-size: 1.4rem;
		transition: 1s;
		display: block;
		transform: translateX(40px);
	}

	.circle1 ul li a {
		opacity: 1;
		padding: 10px;
		display: inline-block;
		transition: 0.4s;
		transform: translateX(0px);
		text-align: left;
	}



	.circle1 ul li:nth-child(1) a{
		transition-duration:1s;
	}
	.circle1 ul li:nth-child(2) a{
		transition-duration:1.5s;
	}
	.circle1 ul li:nth-child(3) a{
		transition-duration:2s;
	}
	.circle1 ul li:nth-child(4) a{
		transition-duration:2.5s;
	}
	.circle1 ul li:nth-child(5) a{
		transition-duration:3s;
	}
	.circle1 ul li:nth-child(6) a{
		transition-duration:3.5s;
	}

	.sp-nav-area ul li a:hover {
		background: none;
	}

	.sp-nav-area ul li ul {
		position: relative;
		top: 0;
	}


	.sp-nav-area ul li ul li a {
		padding-left: 1.2rem;
		font-size: 1.2rem;
		padding: 5px 0px 5px 1.4rem;
	}

	.sp-nav-area ul li.under-list ul li a:after {
		content: none;
	}

	.under-page {
		background: none;
		display: none;
		position: absolute;
		z-index: 5;
		top: calc(2rem + 10px);
	}



/*	.global-nav {
		max-width:1200px;
		height: 100vh;
		margin-left:auto;
		margin-right:auto;
		overflow:hidden;
		position: absolute;
		left: 100%;
		background: rgba(255,255,255,0.7);
	}*/

	.global-nav li a .line {
		display: none;
	}
	.heading1 {
		padding: 6px 0 6px 2rem;
	}
/*
	.global-nav li { width: 100%;text-align: center;border-top: 1px solid; }
	.global-nav li a {
		width: 100%; display: block;
		padding-top: 10px;
	}
	.global-nav li a:hover {
		padding-top: 10px;
	}
	.global-nav li:last-child { border-bottom: 1px solid; }
	.global-nav li:last-child a { padding-bottom: 10px; }
*/

	.pc-br {
		display: none;
	}

	.visual {
		height: auto;
	}

	.section-type1 {
		display: block;
		padding: 20px;
	}

	.section-type1 > .content,
	.section-type1 > .content2,
	.section-type1 > .content3 {
		background: #fff;
		width: 100%;
		padding: 20px;
	}

	.section-type1 > .dummy-img {
		width: 100%;
		margin: 0;
	}

	.introduce .table-box {
		display: block;
	}

	.introduce table {
		margin: 0 auto;
		width: 100%;
	}

	.introduce table + table {
		margin-left: 0px;
		margin: 40px auto 0;
	}

	.introduce img {
		width: 100%;
	}


	.menu {
		display: block;
		padding: 20px;
	}

	.menu div {
		position: relative;
		width: 100%;
		min-height: auto;
	}

	.img-box {
		display: none;
	}

	.menu p {
		display: none;
	}
	.menu p:first-child {
		display: block;
	}

	.menu > div + div {
		margin-left: 0px;
		margin-top: 20px;
	}

	.menu div img,
	.menu div p {
		width: 100%;
		position: relative;
	}

	.menu div p {
		padding-bottom: 100px;
	}

	.menu div p a.btn {
		bottom: 15px;
	}

	.menu2 ul {
		display: block;
	}

	.menu2 ul li {
		text-align: center;
		margin: 0 20px 20px;
		max-width: calc(100% - 40px);
	}

	.menu2 ul li + li {
		margin-left: 20px;
	}
	.menu3 ul,.menu3-2 ul {
		display: block;
		width: calc(100% - 40px);
		margin: 0 20px;
	}
	.menu3 li,.menu3-2 li {
		text-align: center;
		max-width: calc(100% - 10px);
		margin-bottom: 20px;
	}

	.menu3-2 ul li + li {
		margin-left: 0px;
	}

		.menu3 ul li + li {
			margin: 0 10px;
		}

	footer .footer-box > ul {
		display: none;
	}

	footer ul li + li {
		margin-top: 0px;
	}


	.footer-box {
		display: flex;
		flex-wrap:wrap;
	}

	footer .footer-box ul {
		flex-wrap: wrap;
	}


	.footer-box dl dt {
		position: relative;
	}

	.footer-box dt i {
		position: absolute;
		z-index: 0;
		display: block;
		border-radius: 1px;
		width: 100%;
		/*border: 1px solid #fff;*/

	}
	.footer-box dt span {
		position: relative;
		z-index: 2;
		color: #fff;
		margin: 10px auto;
		padding: 0 10px;
		display: inline-block;
		text-align: center;
	}
	.footer-box a {
		padding: 0;
	}
	.footer-box a img {
		width: 100%;
	}

	.introduce table td {
		font-size: 1rem;
		display: block;
		border-bottom: none;
	}
	.introduce table td + td {
		border-top: none;
	}


	.introduce table tr:last-child td:last-child {
		border-bottom: 1px solid;
	}


	.staff-box {
		display: block;
	}
	.staff-box dl {
		margin: 10px 0;
	}

	.staff-box dl dd a {
		margin: 20px auto;
		text-align: center;
		padding: 10px;
	}

	.staffs {
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.staffs dl {
		width: 48%;
		margin: 0 1% 7%;
	}

	.section-type2 {
		padding: 20px;
	}

	.section-type2 .item {
		display: block;
	}

	.section-type2 .item dl {
		margin-left: 0;
	}
	.section-type2 .item dl dt,
	.section-type2 .item dl dd {
		max-width: 100%;
	}
	.section-type2 .item dl dd a {
		width: calc(100% - 20px);
	}

	.section-type2 .item img {
		width: 100%;
	}

	.item2 {
		max-width: 100%;
		margin: 0;
	}

	.item2 h2 {
		width: 100%;
		font-size: 1.4rem;
		margin-bottom: 10px;
		border-bottom: 2px solid;
	}
	.item2 dl {
		display: block;
	}

	.item2 dl dd + dd {
		margin-top: 20px;
		margin-left: 0;
	}

	.access-table {
		width: 100%;
		margin: 0;
	}

	.access-table th {
		text-align: left;
	}

	.access-table th,
	.access-table td {
		padding: 5px;
		display: block;
	}

	.access-table tr + tr {
		border-top: 1px solid;
	}


	.access-table th + td {
		border-left: none;
	}

	.map {
		width: 100%;
		position: relative;
		text-align: center;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: 50px auto;
	}

	.map iframe {
		width: 100%;
	}

	.table2 {
		font-size: 0.8em;
	}

	.w200 {
		width: auto;
	}

	.m20 {
		margin: 0;
	}

	#phone-icon-sp {
		display:block;
		position:absolute;
		right:78px;
		font-size:30px;
		cursor:pointer;
		padding: 0px;
		top: 25px;
	}

/*	#phone-icon-sp::before {
		left: 5px;
		padding: 7px 0;
	}*/
/*	#phone-icon-sp span {
		display: none;
	}*/

	.footer-map iframe {
		width: calc(100% - 20px);
		height: 300px;
		margin: 0 10px;
	}
	.br-sp {
		display: block;
	}

	.footer-map {
		width: 100%;
	}

	#footer-info {
		max-width: calc(100% - 40px);
		margin: 0 20px 20px;
		display: block;
		height: auto;
	}
	#footer-info div + div {
		margin-left: 0%;
	}
	.footer-article {
		margin-top: 20px;
		width: 100%;
	}
	.footer-article dl {
		display: block;
		margin-bottom: 15px;
	}

	.footer-article dl dt {
		width: 100%;
		text-align: center;
		padding: 10px;
		display: inline-block;
	}
	.footer-article dl dd {
		padding: 10px;
	}

	.footer-article dl.type2 {
		padding: 10px;
		text-align: center;
	}

	.footer-article dl.type2 dd {
		font-size: 1.1rem;
	}
	footer ul li a {
		padding: 0;
	}
	footer ul li a + a {
		padding: 0 0 0 10px;
	}

	.footer-box a img {
		width: 100%;
	}

	footer .footer-box .half-size ul {
		display: block;
	}

	footer .footer-box .half-size ul li {
		width: 100%;
	}

	.footer-box dl {
		width: 100%;
		order: 1;
		padding-bottom: 40px;
	}
	.footer-hours {
		margin-left:0;
	}
	.footer-map-div {
		padding:0;
		width: 100%;
	}

	.half-size {
		width: 100%;
		order: 2;
	}

	footer .footer-box .banner ul li {
		width: 49%;
	}

	footer .footer-box .half-size ul li a {
		padding: 5px 0 5px 15px;
	}

	footer .footer-box .half-size ul li a::after {
		top: 13px;
	}

	#copyright {
		position: relative;
		bottom: 0;
	}

	.heading1::before {
		left: 15px;
	}

	.top-list {
		padding-right: 20px;
	}

	.table2 {
	}

	.btn {
		right: 20px;
	}

	.notice {
		margin-left: 20px;
		margin-right: 20px;
	}



	.menu3 ul li,.menu3-2 ul li {
		width: 100%;
		max-width: 100%;
		margin: 0px 0 20px;
	}

	.menu3::after {
		font-size: 1.7rem;
		width: 50px;
		height: 220px;
		top: -40px;
		right: 0px;
		padding: 45px 50px 68px 0;
	}


  .tel span {
  	display: none;
  }

	.table2 th:first-child,.table2 td:first-child {
		padding: 0;
	}

	.table2 th span {
		padding: 5px 4px;

	}

	#menu-sp a span {
		display: none;
	}

	.global-nav li + li {
		border-left: none;
	}

	.menu li::before {
		content: "▼";
	}


	.menu li.choice::before {
		content: "▼";
	}

	.menu li {
		/*padding: 15px;*/
	}

	footer .footer-box .half-size ul li a::after {
		margin-top: 0;
	}

	#article .box {
		width: 100%;
		padding: 0 5px;
	}


	.half {
		width: auto;
	}

	.slider-parent {
	}

	.sp-nav-area {
		display: block;
	}



	#menu-icon-sp {
		position: fixed;
		z-index: 10;
		border-radius: 50%;
		top: 10px;
		right: 10px;
		display: block;
		width: 60px;
		height: 60px;
		transition: 1s;
	}

	.sp-nav-open-active {
		transition: 1s;
		background: #fff!important;
	}

	#panel-btn-icon {
	  display: block;
	  position: absolute;
	  top: 50%;
	  left: 38%;
	  width: 50%;
	  height: 2px;
	  margin: -1px 0 0 -7px;
	  background: #fff;
	  transition: .2s;
	}

	#panel-btn-icon:before,
	#panel-btn-icon:after {
	  display: block;
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 0;
	  width: 100%;
	  height: 2px;
	  background: #fff;
	  transition: .3s;
	}

	#panel-btn-icon:before{
	  margin-top: -10px;
	}
	#panel-btn-icon:after{
	  margin-top: 8px;
	}
	#menu-icon-sp .close {
	  background: transparent;
	}
	#menu-icon-sp .close:before,
	#menu-icon-sp .close:after{
	  margin-top: 0;
	  background-color: #ddd;
	}
	#menu-icon-sp .close:before{
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
	#menu-icon-sp .close:after{
	  transform: rotate(-135deg);
	  -webkit-transform: rotate(-135deg);
	}



/*	#extra-btn {
		position: fixed;
		color: #fff;
		z-index: 3;
		right: -60px;
		bottom: -60px;
		width: 120px;
		height: 120px;
		border-radius: 50%;
		background: #6FB92C;
		transition: .3s;
		cursor: pointer;
	}

	#extra-btn img {
		position: absolute;
		top: 21px;
		right: 70px;
		width: 30px;
		transition: .3s;
	}

	#extra-btn:hover {
		width: 130px;
		height: 130px;
	}*/

  .monshin {
  	line-height: 1.2rem;
		text-align: center;
  	padding: 17px 0 0 0;
		position: fixed;
		color: #fff;
		z-index: 3;
		right: 20px;
		bottom: 120px;
		width: 80px;
		height: 80px;
		border-radius: 50%;
		margin-left: 0;
		margin-right: 0;
		background: #6FB92C;
		transition: 0;
		cursor: pointer;
		box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
	}

	.tab-only {
		display: block;
	}

	.flex-sb .monshin {
		display: none;
	}

	.monshin-second {
		display: block;
	}

}


@media screen and (min-width:768px) and ( max-width:999px) {
	#site-title { width: 200px; }

	nav {
		display: none;
	}

	.sp-nav-area {
		display: block;
	}

	.section-type1 > .dummy-img {
		width: 50%;
	}

	 .tel span {
  	display: none;
  }

	footer .footer-box .half-size ul li a::after {
		margin-top: 0;
	}

	.slider-parent {
	}

  .monshin-second {
		display: block;
	}

  .monshin {
		position: fixed;
  	line-height: 1.2rem;
  	padding: 17px 0 0 0;
		text-align: center;
		color: #fff;
		z-index: 3;
		right: 20px;
		bottom: 120px;
		width: 80px;
		height: 80px;
		border-radius: 50%;
		margin-left: 0;
		margin-right: 0;
		background: #6FB92C;
		transition: 0;
		cursor: pointer;
		box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
	}

	.tab-only {
		display: block;
	}

	.flex-sb .monshin {
		display: none;
	}



}




.toho{
    background: #f7f7f7;
	padding: 30px 0;
	margin: 0 0 30px;
}

.toho_mov{
	width: 730px;
	height: 411px;
    margin: 0 auto;
}

@media screen and (max-width:768px){
	.toho_mov{
		width: 100%;
    	height: 300px;
	}
}



.doctors_banner{
	margin: 0 15px;
}

@media screen and (max-width:768px){
	.doctors_banner{
		display: block;
    	margin: 30px 15px 0;
	}
}


.half_50{
	width: 50%;
}

@media screen and (max-width:768px){
	.half_50{
		width: 100%;
		margin: 0 0 30px;
	}
}


.google_calendar{
    width: 100%;
    height: 435px;
}


/* 追加css 医師紹介ページ */
.staff-width{
	max-width: 700px;
    margin: 0 auto;
}
.color1{
	color: #3273bb;
}
.staff-tokyodrs-banner{
    padding: 5% 20% 6%;
}
.staff-table-caption{
	background-color: #9C63A0;
	color: #fff;
	padding:5px 8px;
}
.staff table{
	margin-bottom: 14px;
    width: 100%;
}
.staff .pb20{
	margin-bottom: 90px;
}
.staff-wrapper{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.staff-drs-box{
	margin-bottom: 120px;
}
.staff-schedule{
    padding: 28px;
    background-color: #f4f1f5;
    margin-bottom: 16px;
}
.staff-schedule h4{
    font-weight: bold;
}

.staff-schedule p{
    font-size: 14px;
    line-height: 1.8;
}
.staff-belongs{
    font-size: 19px;
    line-height: 1.4;
}
.staff h3{
position: relative;
padding-left: 50px;
    }
.staff h3::before{
content: "";
width: 100%;
height: 100%;
position: absolute;
top: 0;
right: 0;
background: url("http://artblue-workshop10.com/test-newtakanoika/wp-content/themes/conopiko/img/icon.svg") no-repeat;
}

.dr-introduction{
    border-bottom: 6px solid #f4f1f5;
    padding: 18px 0 4px;
    font-weight: bold;
    margin-bottom: 6px;
    color: #9C63A0;
}


@media screen and (max-width:768px){
    .staff-tokyodrs-banner{
        padding: 24px;
    }
    .staff-wrapper{
        display: block;
        text-align: center;
    }
    .staff .content-h1{
        margin-bottom: 12px;
        text-align: left;
    }
    .staff-belongs{
        margin-bottom: 22px;
    }
    .staff p{
        padding:0 5px;
    }

}

.archive .content-wrap {
	width: 95%;
	max-width: 1100px;
	margin: 0 auto;
}

.archive .content-wrap img {
	/* max-width: 80%; */
	/* margin: 0 auto; */
}

.archive .content-wrap .bb1 {
	border-bottom: 6px solid #8e669f;
    background: #fcf8ff;
	font-size: 24px;
	padding: 15px 20px;
	margin-bottom: 4rem;
}
.archive .content-wrap .bb1>img {
	width: 30px;
    margin-bottom: 6px;
}
.archive .content-wrap .bb1 .date {
	font-size: 16px;
    letter-spacing: 1px;
    color: #8e669f;
	position: relative;
    top: -8px;
    left: 15px;
}
.archive .content-wrap .content {
	width: 80%;
	margin: 0 auto;
}

@media screen and (max-width:600px) {
	.archive .content-wrap {
		width: 100%;
	}
	.archive .content-wrap .content {
		width: 95%;
	}
	.archive .content-wrap .bb1 {
		font-size: 20px;
	}
}
