@charset "UTF-8";
/* CSS Document */

@media only screen and (max-width: 1280px) {
 
}

@media only screen and (min-width: 769px) {
  .for-sp02 { display: none;} 
}

@media only screen and (max-width: 768px) {
	/* -------------------------------------------------
layout
----------------------------------------------------*/
	body{min-width: inherit;}
  .for-pc,
  .btn-tel,
  .btn-menu,
  #g-nav-sp { display: none;}
  
  .for-sp { display: block !important;}

  .for-sp02 { display: none;}
	
	.com-inner{
	width: 96%;
	margin: 0 auto;
	}
	
img{
		max-width: 100%;
	}
.page-wrap{
	margin-top: 20%;
	}
/* ===== header ===== */
  header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background-color: #fff;
	background-image:url(../img/head-top-bg-repeat.png);
    width: 100%;
    height: 92px;
    padding: 0;
  }
  .sub-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background-color: #fff;
	background-image:url(../img/head-top-bg-repeat.png);
    width: 100%;
  } 
  .header-sp-logo {
    padding-left: 2%;
    transform: translateY(50%);
  }
  .header-sp-logo img {
	  max-height: 54px;
  }
  .utility-sp {
    position: relative;
    width: 100%;
  }
  
  .btn-tel,
  .btn-menu {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0;
  }
  
  .btn-tel { right: 92px;}
  
  .btn-tel a {
    background: #a9a9a9 url("../img/icon_tel_sp.png") no-repeat center top 7px;
    background-size: 50px 50px;
    width: 92px;
    height: 92px;
    display: block;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    padding-top: 68px;
  }


/* ===== main visual ===== */
.sp-top-main-inner{
	position: inherit;
  padding-top: 64px;
	background: url(../img/head-blue-bg.png),url(../img/top-head-white-bg.gif);
	background-repeat: no-repeat,repeat;
	background-position: top center,0 0;
	background-size: 100% 70%, auto;
	}

.tio-main-img {
  padding-bottom: 0;
}


/* ===== global nav ===== */
  #g-nav-sp {
    position: absolute;
    top: 92px;
    left: 0;
    display: none;
    background-color: #5f5f5f;
    width: 100%;
    height: 100vh;
    padding: 3%;
  }
  
  .g-nav-sp-in {
    height: 80vh;
    overflow-y: auto;
  }
  
  .dropmenu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 5%;
  }
  
  #g-nav-sp li {
    background-color: #fff;
    width: 100%;
    margin-bottom: 8px;
  }
  
  .dropmenu li ul li { margin-bottom: 0 !important;}
  
  .dropmenu li ul { display: none;}
  
  #g-nav-sp li.harf { width: 49%;}
  
  #g-nav-sp li.harf a, li.g-nav-icon a {
    background-size: 24px 24px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  
  #g-nav-sp li, .dropmenu > li > a {
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    padding-left: 4px;
  }
  
  .dropmenu li ul li a {
    border-top: 1px solid #ccc;
    padding: 15px 0 15px 52px !important;
  }
  
	.menu {
		bottom: 5px;
		position: absolute;
		color: #FFFFFF;
		text-align: center;
		font-size: 80%;
		font-weight: bold;
		right: 23px;
	}
  
/* ハンバーガーメニュー */
  .menu-trigger, .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  
  .menu-trigger {
    position: relative;
    width: 92px;
    height: 92px;
    background-color: #5f5f5f;
    padding: 0 15px;
  }
  
  .menu-trigger span {
    position: absolute;
    left: 22px;
    width: 49px;
    height: 2px;
    background-color: #fff;
  } 
  .menu-trigger span:nth-of-type(1) { top: 24px;}
  .menu-trigger span:nth-of-type(2) { top: 45px;}
  .menu-trigger span:nth-of-type(3) { bottom: 24px;}
  
  .active .menu-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    transform: translateY(20px) rotate(-45deg);
  }
  
  .active .menu-trigger span:nth-of-type(2) { opacity: 0;}
  
  .active .menu-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-21px) rotate(45deg);
    transform: translateY(-21px) rotate(45deg);
  }
  

/* ===== footer ===== */
.footer-la-area img {
	max-width: 100%;
}
.footer-access {
    flex-wrap: nowrap;
    display: inherit;
    justify-content: space-between;
	text-align: center;
}
.footer-access ul {
    line-height: 1.8;
	text-align: center;
	float: none;
	padding-bottom: 20px;
}
.footer-access ul li{
	display: inline-block;
	text-align: center;
}
.footer-tel {
    padding-bottom: 36px;
	}

	
.footer-info-area-btm {
	max-width: 100%;
	margin: 0 auto;
	position: relative;
	font-size: 1.4rem;
	line-height: 2;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
}

.footer-info-area-btm li {
  width: auto;
	height: auto;
	display: inline-block;
	vertical-align: top;
	padding:  0px 5% 10px 0px;
}

.footer-info-area-btm li:last-child {
  padding:  0px;
	width: 100%;
}

/* ====================================
index.html
====================================== */
.top-sec02 .flex-box-warap .box {
  width: 49%;
  margin-bottom: 6%;
}
	
.top-sec02 .box-text-com{
	line-height: 1.8;
	font-size: 90%;
}
	
.top-sec03 .top-service-box {
  width: 21%;
  margin-bottom: 6%;
}

.top-sec04 .cosept-list {
  width: 49%;
  margin-bottom: 6%;
}

.top-sec04 .top-consept-list-warap .t-read-btn a {
    width: 65%;
    margin: 0 auto;
}

.top-sec04 .top-consept-list-warap .sub-text {
  padding-bottom: 8%;
}

.top-new-box-warap .news-list-box {
  margin-bottom: 6%;
}
		
.footer-info-area .l-box {
  width: 100%;
}

.footer-info-area .r-box {
  width: 100%;
}

.footer-info-area .footer-name, .footer-info-area .footer-tell-text, .footer-info-area .footer-tell {
  text-align: center;
}

.footer-info-area .kamoku dl dt {
  width: 30%;
  text-align: center;
}

.footer-info-area .kamoku dl dd {
  width: 70%;
}

.footer-info-area .kamoku dl {
  width: 100%;
  margin: 0 auto;
}

.footer-info-area .kamoku dl dd {
  padding-left: 8%;
}

.footer-info-area .footer-tell {
  padding-bottom: 8%;
}

.footer-info-area-btm {
  width: 90%;
  padding: 4% 0;
}

.top-sec01 {
  padding: 12% 0 50px;
	background: #ececec;
	background-image: none;
}
	
.doc1 {
	text-align: center;	
}
	
	.doc2 {
		text-align: center;
	}
	
	.doc1 img {
    max-width: 100%;
}
	.doc2 img {
    max-width: 100%;
}



/* ====================================
clinic.html
====================================== */

.page-title-bg {
  height: 75px;
}

.clinic-sec02 img {
  width: 49%;
}



/* ====================================
service.html
====================================== */


.service-sec02 .service-box-l h4, .service-sec03 .service-box-l h4, .service-sec04 .service-box:nth-child(2) .service-box-l h4, .service-sec04 .service-box:nth-child(3) .service-box-l h4, .service-sec04 .service-box:nth-child(4) .service-box-l h4, .service-sec04 .service-box:nth-child(5) .service-box-l h4, .service-sec05 .service-box:nth-child(2) .service-box-l h4, .service-sec05 .service-box:nth-child(3) .service-box-l h4 {
  padding: 55% 0 0;
}

.service-sec04 .service-box:nth-child(5) .service-box-l h4 {
  font-size: 2.2rem;
}

/* ====================================
staff.html
====================================== */

.staff-img-l {
    width: 100%;
    padding: 4% 4% 0;
}

/* ====================================
consept.html
====================================== */
.consept-sec04 .text-under {
    text-align: center;
    font-size: 1.6rem;
    padding: 40px 0;
    letter-spacing: 0.1em;
    display: block;
	line-height: 2;
}
	
.consept-sec04 .consetp-flow::before {
    background: url(../img/concept-icon-left-bg.png);
    display: block;
    top: 0;
    left: 20px;
    position: absolute;
    width: 14px;
    height: 34px;
    background-repeat: no-repeat;
    content: "";
}
	
.consept-sec04 .consetp-flow::after {
    background: url(../img/concept-icon-right-bg.png);
    display: block;
    top: 0;
    right: 20px;
    position: absolute;
    width: 14px;
    height: 34px;
    background-repeat: no-repeat;
    content: "";
}	
.consept-sec04 h3 {
    background: none;
    font-size: 2rem;
    text-align: center;
    width: 100%;
    padding: 5px 0;
    position: relative;
    margin: 0 auto 0;
    letter-spacing: 0.2em;
}

.concept-flow-title-box-wrapper{
	margin: 0 auto;
	width: 90%;
}	
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲  768px  ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */






@media only screen and (max-width: 675px) {
	
  .yugu-sec01 .text {
    background:none;
}

/* ====================================
給食について
====================================== */

.lunch-box-area01 .lunch-box {
  width: 80%;
}

.lunch-box-area03 .lunch-box-r {
  padding-bottom: 8%;
}

.lunch-box-area01 .lunch-box p {
  padding: 4% 2%;
}


.lunch-box-area02 .lunch-box-r p {
      line-height: 2.2;
    padding: 8% 0 4%;
}

.lunch-box-area03 .lunch-box-l p {
  line-height: 2.2;
}

	
}


@media only screen and (max-width: 600px) {
	/* -------------------------------------------------
layout
----------------------------------------------------*/
  

/* ===== header ===== */
  header { height: 64px;}
  
  .header-sp-logo { width: 60vw;}
  
  .header-sp-logo img {
    width: 100%;
    height: auto;
  }
  
  .btn-tel { right: 64px;}
  
  .btn-tel a {
    background: #a9a9a9  url("../img/icon_tel_sp.png") no-repeat center top 5px;
    background-size: 36px 36px;
    width: 64px;
    height: 64px;
    padding-top: 47px;
  }

  .header-sp-logo {
    transform: translateY(40%);
  }

/* ===== main visual ===== */
.main-warap-sub .sub-mv {
    position: relative;
    padding-top: 40px;
}
.sub-mv::before {
	background-size:80%;
	background-position: left 0 top 0;
	top: auto;
	left: 0;
}
.sub-mv::after {
	background-size: 45%;
	background-position: right 0 bottom 35px;
}
/* ===== global nav ===== */
  #g-nav-sp { top: 64px;}
  
  
/* ハンバーガーメニュー */  
  .menu-trigger {
    width: 64px;
    height: 64px;
  }
  
  .menu-trigger span {
    left: 15px;
    width: 34px;
  } 
  .menu-trigger span:nth-of-type(1) { top: 17px;}
  .menu-trigger span:nth-of-type(2) { top: 28px;}
  .menu-trigger span:nth-of-type(3) { bottom: 22px;}
  
  .active .menu-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(14px) rotate(-45deg);
    transform: translateY(14px) rotate(-45deg);
  }
  
  .active .menu-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-14px) rotate(45deg);
    transform: translateY(-14px) rotate(45deg);
  }
	

  
	.menu {
		bottom: 5px;
		position: absolute;
		color: #FFFFFF;
		text-align: center;
		font-size: 80%;
		font-weight: bold;
		right: 9px;
}
/* ===== footer ===== */

/*pageTop*/


/* ====================================
index.html
====================================== */  
.com-sub-title {
    font-size: 5.5vw;
}
.top-sec03 .title {
	font-size: 3.2vw;
	padding: 20px 0;
}
.top-sec01 .tex01 {
  font-size: 2rem;
}

.top-sec02 .flex-box-warap .box {
  width: 100%;
}

.top-sec04 .cosept-list {
  width: 100%;
}

.top-sec04 .top-consept-list-warap .t-read-btn a {
  padding: 4% 0;
}

.top-sec04 .cosept-list {
  margin-bottom: 12%;
	width: 49%;
}

.com-yajirushi {
  padding-bottom: 12%;
}

.cosept-list {
    text-align: center;
    width: 49%;
}

	.top-consept-list-warap .sub-text br {
    display: none;
	font-size: 5vw;
}
	
.top-sec02 {
  padding: 70px 0 4%;
}

.top-sec02 .flex-box-warap .box {
  margin-bottom: 12%;
	width: 49%;
	padding: 10% 0px;
}

.top-sec03 {
  padding: 70px 0 4%;
}

.top-sec04 .tex01 {
  font-size: 2.3rem;
}

.top-sec04 {
  padding: 70px 0 12%;
}

.top-new-box-warap .news-list-box {
  width: 49%;
	display: flex;
}

.top-new-box-warap .news-list-box .img-box {
  height: 204px;
}

.top-new-box-warap .news-list-box a {
  padding: 0 0 4%;
}

.ditail-btn {
  margin: 8% auto 0;
}
	
.top-sec02 .flex-box-warap{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	padding-top: 40px;
}
	
.footer-nav {
  display: none;
}

.info-text {
  margin-top: 4%;
  margin-bottom: 16%;
}

.footer-time-box dl dt, .footer-time-box dl dd {
  font-size: 1.1rem;
}

.footer-info-area-btm {
  font-size: 1.2rem;
}
	
	.footer-info-area .footer_info_midashi {
	font-size: 1.2em;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
}

.footer-copy {
  font-size: 1rem;
}

.top-sec01 .tex01, .top-sec02 .tex01 {
  line-height: 1.5;
}

.footer-info-area .kamoku dl dt, .footer-info-area .kamoku dl dd {
  font-size: 1.2rem;
}

.footer-time-box dl dt, .footer-time-box dl dd {
  padding: 4% 0;
}

.top-new-box-warap .news-list-box:nth-of-type(4n+2):last-of-type {
    margin-left: auto;
    margin-right: auto;
}
.top-bg-atachmete-area{
 background-image:url(../img/top_atach-ment-bg.jpg);
 background-size: auto;/*背景サイズ*/
 height:300px;/*div高さ*/
background-position: 40% 70%;
	background-attachment: inherit;
}

/* ====================================
clinic.html
====================================== */

.page-wrap {
  padding-top: 8%;
}

.page-title-bg {
  height: 55px;
}

.clinic-sec02 img {
  width: 100%;
  margin-bottom: 2%;
}
	
#pc{
	display: none;
}
	
	#sp {
		display: flex;
		width: 96%;
	}

.clinic-sec02 p{
	width: 46%;
	margin-bottom: 4%;
	vertical-align: bottom;
}
/* ====================================
service.html
====================================== */

.service-box-l {
  width: 100%;
}


.service-box-r {
    width: 100%;
    box-sizing: border-box;
    padding: 0 4%;
}


.service-sec02 .service-box-l h4, .service-sec03 .service-box-l h4, .service-sec04 .service-box:nth-child(2) .service-box-l h4, .service-sec04 .service-box:nth-child(3) .service-box-l h4, .service-sec04 .service-box:nth-child(4) .service-box-l h4, .service-sec04 .service-box:nth-child(5) .service-box-l h4, .service-sec05 .service-box:nth-child(2) .service-box-l h4, .service-sec05 .service-box:nth-child(3) .service-box-l h4 {
  padding: 20% 0 8%;
}

.service-box h5 {
  font-size: 4.3vw;
  line-height: 1.5;
	display: inherit;
}

/* ====================================
staff.html
====================================== */
.staff-history-l {
    width: 100%;
	margin-bottom: 6%;
}
.staff-history-r {
    width: 100%;
}

/* ====================================
concept.html
====================================== */
.page-consept-com .l-box {
    width: 100%;
}
.page-consept-com .r-box {
    width: 100%;
	text-align: center;
}
.page-consept-com.page-consept-com02 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 2%;
    flex-direction: row-reverse;
	margin-bottom: 12%;
}



}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲  600px  ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */




@media only screen and (max-width: 425px) {
/* -------------------------------------------------
トップページコンテンツ
----------------------------------------------------*/
.top-sec03 .sub-text{
	display: none;
}
	
.top-bg-atachmete-area {
		display: none;
	}

.top-sec01 {
    padding: 6% 0 30px;
}

.com-sub-title-en {
    font-size: 1.4rem;
    text-align: center;
    padding-bottom: 20px;
}
.com-yajirushi {
    padding-bottom: 6%;
}
	
	.top-sec01 .tex01, .top-sec02 .tex01 {
		line-height: 1.5;
		font-size: 4.8vw;
		margin-bottom: 20px;
}

	.top-sec02 .flex-box-warap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: 20px;
}
	.top-sec02,
	.top-sec03 {
  padding: 25px 0px 0px;
}

	.top-sec03 .title {
	font-size: 3vw;
	padding: 20px 0;
}
		
	.top-sec04 {
  padding: 25px 0 8%;
}
	
.top-sec04 .tex01 {
    text-align: center;
    display: table;
    border-bottom: solid 1px #333333;
    margin-right: auto;
    margin-left: auto;
    font-size: 6vw;
    letter-spacing: 0.3em;
    margin-bottom: 30px;
}

	.top-sec04 .top-consept-list-warap .en {
    font-size: 1.4rem;
    padding: 15px 0px;
}
	
	.top-sec04 .top-consept-list-warap .sub-text{
	font-size: 3.2vw;
		letter-spacing: -0.9px;
	line-height: 2;
	padding-bottom: 10%;
}
	
	.footer-info-area .kamoku dl dt, .footer-info-area .kamoku dl dd {
  font-size: 3vw;
		padding-left: 6%;
}
	
	.footer-info-area-btm li:last-child {
    padding: 0px;
    width: 100%;
		font-size: 3vw;
}
	
	.footer-info-area .footer-name img {
    width: 90%;
		height: auto;
}
	
	.footer-info-area .footer-tell img {
    width: 90%;
		height: auto;
}

	.map-btn {
  	width: 90%;
	margin: 0px auto;
	position: relative;
	padding: 20px 0px;
	}
	
	.map-btn li {
    background: #1E7AB5;
    font-weight: bold;
    color: #fff;
	font-size: 90%;
    border-radius: 5px;
	display: inline-block;
	width: 48%;
	text-align: center;
	}
		
    .map-btn li a {
    display: block;
    padding: 10% 0px;
    color: #fff;
    text-decoration: none;
    }
	



/* ====================================
service.html
====================================== */

.service-box h5 {
  font-size: 4.1vw;
  line-height: 1.5;
	display: inherit;
}
	
/* ====================================
スタッフ紹介
====================================== */
	
.staff-word {
    position: inherit;
    font-size: 5vw;
    -webkit-writing-mode:inherit;
    -ms-writing-mode: inherit;
    writing-mode: inherit;
    line-height: 1.5;
	top: 0;
	right: 0;
	margin-bottom: 30%;
}
.staff-img-r {
    width: 70%;
    padding: 4% 1% 0;
    position: relative;
}
	
.staff-sec04 dl dt {
    font-size: 1.6rem;
    vertical-align: top;
    width: 33%;
    border-right: 1px solid #333333;
}
.staff-sec04 dl dd {
    font-size: 5vw;
    vertical-align: top;
    width:60%;
	padding-left: 3%;
}
	
.staff-sec04 .id dd {
position: relative;
    left: 129px;
	}
	
.staff-sec04 .yg dd {
position: relative;
    left: 129px;
}


/* ====================================
治療方針
====================================== */
.com-step-box .step-img {
    width: 100%;
    text-align: center;
}
.com-step-box .kensa {
    width: 100%;
    font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
    font-size: 2.2rem;
    text-align: center;
    padding-top: 4%;
    line-height: 1.4;
	padding-bottom: 4%;
}
.com-step-box dl {
    width: 100%;
}
.com-step-box .flow-img {
    width: 100%;
    text-align: center;
	padding-top: 4%;
}
.com-step-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background:none;
    background-repeat: no-repeat;
    background-position: left 5% top 130px;
    padding-bottom: 50px;
}
	.page-consept-com h3 {
    display: table;
    border-bottom: solid 1px #333333;
    letter-spacing: 0.25em;
    font-size: 3.6vw;
}
.com-step-box dl dt {
    display: inline;
    border-bottom: solid 1px #797979;
    font-size: 4.8vw;
    line-height: 1.8;
    letter-spacing: 0.18em;
}
	
	.consept-sec01 p {
    line-height: 2;
    letter-spacing: 0.2em;
    font-size: 4.1vw;
}
	
.consept-sec-title {
    background: #fafafa;
    height: 75px;
    margin-bottom: 0;
}
	
	
/* ====================================
はじめての方へ
====================================== */		
.consept-sec-04 .text02{
	text-align: left;
	font-size: 4.1vw;
	line-height: 1.8;
    padding: 4.5% 10% 0px;
	width: auto;
}
	
.staff-sec02{
	padding: 0 0 45px;
		
	}	
	
	.flex-box-warap .left,
	.flex-box-warap .right {
		width: 100%;
	}
/* ====================================
お知らせ
====================================== */	
	
.info-list-inner {
    flex-wrap: nowrap;
    display: inherit;
    justify-content: space-between;
    padding: 15px!important;
}
.info-list-inner .tham {
    padding: 10px;
    width: 100%;
    text-align: center;
    display: block;
}
.info-list-inner .right-cont {
    padding: 10px;
    width: 100%;
}
	
	.staffname {
		max-width: 73%;
	}

}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲  425px  ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

@media only screen and (max-width: 375px) {

	

}














