@charset "utf-8";

#container {
    width:100% !important;
    min-width:inherit !important;
    padding:0 !important;
    margin:0 auto !important;
}
header {
    width:100% !important; 
    height:70px !important;
    min-width:inherit !important;  
	background-size: cover;
}
#headerArea {
    width:100% !important;
    min-width:inherit;
}
#headerArea h1 {
    text-align: left;
    padding:0;
    letter-spacing: 0;
}
#titleLogo {
    top:10px;
}
#titleLogo img {
    width:auto;
    height:8vh;
}
.slides img {
    height:250px !important;
}
#topImage {
    margin-top:0 !important;
}
#MenuBack {
    display: none;
}

#grouplink {
    top: 40px;
}
#grouplink img {
    width:auto;
    height:2vh;
}

main {
    width:100% !important;
    min-width: inherit !important;
    padding-top:0 !important;
    margin:0 !important;
}
#top main {
    margin-top:10px !important;
}
main article {
    float:none !important;
    width:auto !important;
    min-width: inherit !important;
    margin:0;
    padding:10px 15px !important;
}
main article section {
    width:auto;
}
main article h1 {
    font-size:1.4em !important;
}
main article h2 {
    font-size:1.3em !important;
    margin-left:0;
}
main article h3 {
    font-size:1.15em !important;
}
main article section p {
    font-size:1.0em;
}
main article img {
    max-width: 100% !important;
    height: auto !important;
}
aSide {
    display: none;
}
footer {
    width:100% !important; 
}
table th {
    white-space: nowrap;
}
table th, table td {
    font-size:95%;
}
.txt_l { font-size:1.2em; }

#sideArea {
    display: none;
}

.flex-direction-nav {
    display: none !important; 
}

.cont-u {
    margin-left:10px !important;  
}
.cont2 {
    min-width: inherit !important;
    font-size:80% !important;
    margin-left:0 !important;
}

.AcMenu {
    width:97%;
}
.AcMenu dt {
    font-size:0.9em;
}
.AcMenu .update {
    top:-15px;
}

.itemBox li {
    width:47% !important;
}
.itemBox li p {
    text-align: left !important;
    font-size:0.75em !important;
}
.txt_waku2 {
    width:90% !important;
}

/* 問い合わせ先（ヘッダー用） */
.contactus {
    display: none;
    /*position:inherit;
    top:inherit;
    right:inherit;
    text-align: left;*/
}
.contactus tel {
    white-space:nowrap;
    font-size:1.5em !important;
}

#doctor, #renkei {
    padding-top:1em !important;
}

/* 問い合わせ先 */
#contact {
    padding:1.3em 1em !important;
}
#contact h4 {
    font-size:1.5em;
    letter-spacing: 0;
    margin-bottom:0.2em;
}
#contact tel {
    display: block;
    font-size:1.8em;
    margin-bottom:0.5em;
}

.cut_line {
    padding:0 0 1em 0;
    border:none;
    border-bottom:1px solid #333;
}

.shinryo-sch table {
    width:99%;
    margin-left:0;
}
.shinryo-sch table th,
.shinryo-sch .close {
    font-size:0.9em;
}

.access-root th, .access-root td {
    display:block;
    margin-top:0.2em;
}
.access-root th {
    width:100%;
}
.access-root td.cut {
    border-bottom:none;
}
.access-root .br:after {
    content:"";
    white-space:inherit;
}

/* rayout */
.view_2col, .column2, .column3 {
  	grid-template-columns: minmax(auto, 100%); 
}
.service {
     grid-gap: .8em .2em;;
}
.flex_Rayout {
    display:block;
    height:auto;
}
.flex_Rayout .flex_item1,
.flex_Rayout .flex_item2 {
    width: auto;
}

.about-flex {
    /*display:block;*/
    flex-flow: column;
}
.about-flex .sideA,
.about-flex .sideB,
.about-flex .sideC,
.about-flex .sideD {
    flex:none;
    flex-grow:0;
    padding:0;
}
.about-flex .sideA { order: 2; }
.about-flex .sideB { order: 1; }

/* menu - footer */
#footerMenu {
    display:inherit !important;
}

/* menu - Top */
#TopMenu {
    position: static !important;
    width:100% !important;
    top : 0 !important;
    left: 0 !important;
    background: none !important;
    z-index: 900 !important;
}

#TopMenu ul {
    width:100% !important;
	list-style-type : none;
    /*background: #fff;*/
	opacity : 0.9;
	position : absolute;
	left : 0 !important;
	top : 55px !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width:inherit !important;
	z-index : 990;
	display : none;
}

#TopMenu ul li {
    float:none !important;
}

#TopMenu ul li a {
    width:98% !important;
	text-decoration : none;
    margin: 0 0 5px 0 !important;
	padding : 10px 0 10px 0 !important;
    /*background:none !important;*/
}
#TopMenu ul li a.menu03 {
   /*line-height:1;*/ 
}
#TopMenu ul li a:hover {

	/*opacity : 0.7;*/

}

div#sp-icon {
	width : 65px;
	height : 55px;
	position : absolute;
	right : 0px;
	top : 0px;
	z-index : 999;
}

div#sp-icon:hover {
	cursor : pointer;
	opacity : 0.7;
}

div#sp-icon span,
div#sp-icon span:before,
div#sp-icon span:after {
	display : inline-block;
	width : 30px;
	height : 3px;
	background : #000;
	transition-property : transform;
	transition-duration : 0.3s;
}

div#sp-icon span {
	position : absolute;
	left : 50%;
	top : 50%;
	transform : translate( -50%, -50% );
}

div#sp-icon span:before {
	content : "";
	position : absolute;
	transform : translateY( -10px ) rotate( 0deg );
}

div#sp-icon span:after {
	content : "";
	position : absolute;
	transform : translateY( 10px ) rotate( 0deg );
}


div.sp-close span {
	background : transparent !important;
}

div.sp-close span:before {
	transform : rotate( 45deg ) !important;
}

div.sp-close span:after {
	transform : rotate( -45deg ) !important;
}




