*{
	font-family: 游明朝, YuMincho, "Hiragino Mincho ProN W3", yu-mincho-pr6, sans-serif;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #0b0b0d;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.1em;
	text-align: justify;
}

/*** 使用フォント
Marcellus font-family: 'Marcellus', serif;
Yu Mincho Pr6 R font-family: yu-mincho-pr6, sans-serif; font-weight: 400; font-style: normal;
***/

.marcellus{ font-family: 'Marcellus', serif; }
.gothic{ font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; }
.mincho{ font-family: 游明朝, YuMincho, "Hiragino Mincho ProN W3", yu-mincho-pr6, sans-serif; }

a{ transition: .3s; cursor: pointer; }
a:hover{ opacity: .7; }

br{ line-height: inherit; }

span, a, strong, small{ color: inherit; font-size: inherit; font-family: inherit; font-weight: inherit; letter-spacing: inherit; }

.wrap{ width: 860px; margin: 0 auto; }
.sp{ display: none; }
.linkwrap{ width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 10; }
.body-wrap{ overflow: hidden; position: relative; }
.row{ display: flex; justify-content: space-between; }

a.btn{ width: 340px; max-width: 100%; height: 40px; font-size: 14px; color: #fff; background: #0b0b0d; display: flex; justify-content: center; align-items: center; position: relative; }
a.btn:after{ content: ''; width: 0; height: 0; border-style: solid; border-width: 0 0 6px 6px; border-color: transparent transparent #fff transparent; position: absolute; bottom: 3px; right: 3px; }

header{ width: 100%; position: fixed; top: 0; left: 0; z-index: 9998; display: flex; /*justify-content: flex-end;*/ align-items: center; padding: 35px 40px 0; }
header .logo{ display: block; width: 250px; margin-right: auto; transition: .3s; }
header ul{ display: flex; }
header .gnav li{ font-size: 12px; font-family: inherit; padding-right: 3em; line-height: 1; transition: .3s; }
header .gnav li:last-of-type{ border-left: solid 1px; padding-left: 3em; }
header .sns li{ width: 16px; }
header .sns li + li{ margin-left: 20px; }
header .sns li a, header .sns li a img{ display: block; }

ul.website-link{
	position: fixed;
    top: 50px;
    right: 2.5%;
    width: auto;
    z-index: 999;
    display: flex;
}
ul.website-link{margin-top: 30px;}
ul.website-link li{ width: 165px; border: 1px solid; color: black; padding:5px 10px; background: black;color: #fff;text-align: center;}
ul.website-link li + li{ margin-left: 20px; }
ul.website-link li a, header .sns li a img{ display: block; }
ul.website-link span {
    padding-right: 21px;
    background: url(https://www.medical-design.info/wp-content/themes/medical-design/images/common/icon-web01.png) no-repeat;
    background-size: 16.5px;
    background-position: top 50% right 0;
}


footer .logo{ display: block; padding: 35px 0; border-top: solid 1px #f2f2f2; border-bottom: solid 1px #f2f2f2; margin-bottom: 35px; }
footer .logo img{ display: block; width: 350px; margin: 0 auto; }
footer .left h3{ font-size: 16px; }
footer .left p{ font-size: 11px; }
footer .left p + p{ margin-top: 1.2em; }
footer .left .tel { font-size: 16px; padding-left: 16px; display: table; margin-top: 15px; background: url(../images/common/icon-tel01.png) no-repeat; background-size: 9.3px; background-position: left center; }
footer .left .fax { font-size: 16px; padding-left: 16px; display: table; background: url(../images/common/icon-fax01.png) no-repeat; background-size: 12px; background-position: left center; }
footer .left .fax + h3 { margin-top: 18px; padding-top: 15px; border-top: solid 1px #f2f2f2; }
footer .left .privacy{ display: table; font-size: 12px; margin-top: 15px; }
footer .right{ width: 575px; padding-left: 70px; border-left: solid 1px #f2f2f2; flex-wrap: wrap; justify-content: flex-start; }
footer .right dl{ width: 25%; }
footer .right dl dt{ font-size: 12px; position: relative; padding-bottom: .4em; margin-bottom: .6em; }
footer .right dl dt:after{ content: ''; width: 30px; height: 1px; background: #f2f2f2; position: absolute; bottom: 0; left: 0; }
footer .right dl dd{ font-size: 10px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; margin-top: .2em; }
footer .right dl dd ul li{ font-size: 10px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; padding-left: 1.5em; position: relative; }
footer .right dl dd ul li:before{ content: '-'; position: absolute; left: .8em; }
footer .right .banner01{ display: block; width: 220px; margin-top: 60px; }
footer .right .banner02{ display: block; width: 220px; margin-left: auto; margin-top: 60px; }
footer .right .banner03{ display: block; width: 220px; margin-top: 40px; }
footer .right .banner01 img, footer .right .banner02 img .right .banner03 img{ display: block; }
footer .right .banner04{ display: block; width: 220px; margin-left: auto; margin-top: 40px; }

footer .copy {
    display: block;
    text-align: center;
    font-size: 11px;
    margin-top: 90px;
}


.row{justify-content: space-between;}

@media( width: 1024px ){
	header .gnav li{ font-size: 10px; }
}


@media(max-width: 768px){
	*{ font-size: 3.47vw; }

	.sp{ display: block; }
	.pc{ display: none !important; }

	.wrap{ width: 100%; padding-left: 10.67vw; padding-right: 10.67vw; }
	.row{ flex-wrap: wrap; }

	a.btn{ width: 76vw; height: 10.67vw; font-size: 3.73vw; }

	header{ padding: 5.33vw 0 0 5.33vw; }
	header .logo{ width: 58.67vw; }

	footer{ padding-bottom: 8vw; }
	footer .logo{ padding: 6.4vw 0; margin-bottom: 6.4vw; }
	footer .logo img{ width: 58.67vw; }
	footer .left{ width: 100%; }
	footer .left h3{ font-size: 4.27vw; }
	footer .left p{ font-size: 2.93vw; }
	footer .left .tel{ display: inline-block; font-size: 4.27vw; padding-left: 4.27vw; background-size: 2.48vw; margin-top: 1em; }
	footer .left .fax{ display: inline-block; font-size: 4.27vw; margin-left: 3.73vw; padding-left: 4.27vw; background-size: 3.2vw; }
	footer .foot-access h3{ font-size: 4.27vw; margin-top: 8.8vw; color: #b29240; margin-bottom: 2.67vw; }
	footer .foot-access .map{ display: block; width: 100%; margin-bottom: 5.33vw; }
	footer .foot-access ol{ counter-reset: access; margin-bottom: 10vw; }
	footer .foot-access ol li{ font-size: 2.93vw; padding-left: 4vw; position: relative; }
	footer .foot-access ol li:before{ position: absolute; left: 0; color: #b29240; }
	footer .foot-access ol li:nth-of-type(1):before{ content: '❶'; }
	footer .foot-access ol li:nth-of-type(2):before{ content: '❷'; }
	footer .foot-access ol li:nth-of-type(3):before{ content: '❸'; }
	footer .foot-access ol li + li{ margin-top: 1em; }
	footer .foot-access .banner-list{ margin-bottom: 10vw; }
	footer .foot-access .banner-list li{ width: 55vw; margin: 5vw auto;}
	footer .foot-link{ display: flex; flex-wrap: wrap; border-bottom: solid 1px #fff; }
	footer .foot-link li{ width: 50%; font-size: 2.93vw; font-family: inherit; text-align: center; border-top: solid 1px #fff; padding: .5em 0; }
	footer .foot-link li:nth-of-type(odd){ border-right: solid 1px #fff; }
	footer .copy{ font-size: 2.93vw; text-align: center; margin-top: 6.13vw; display: block; }

	.menu-btn{ position: fixed; top: 5.33vw; right: 5.33vw; z-index: 10000; transition: .3s; }
	.menu-btn.invert:not(.active){ -webkit-filter: invert(100%); filter: invert(100%); }
	.menu-btn .inner{ width: 10.67vw; height: 4vw; position: relative; }
	.menu-btn .inner span{ width: 100%; height: 0.27vw; background: #0b0b0d; position: absolute; left: 0; transition: .4s; }
	.menu-btn .inner span:nth-of-type(1){ top: 0; }
	.menu-btn .inner span:nth-of-type(2){ top: 50%; transform: translateY(-50%); }
	.menu-btn .inner span:nth-of-type(3){ bottom: 0; }
	.menu-btn.active .inner span:nth-of-type(1){ transform: translate(0.3vw,0.7vw) rotate(45deg); }
	.menu-btn.active .inner span:nth-of-type(2){ opacity: 0; }
	.menu-btn.active .inner span:nth-of-type(3){ transform: translate(0vw,-3vw) rotate(-45deg); }
	.menu-btn p{ font-size: 3.2vw; text-align: center; letter-spacing: 0; }

	.sp-nav{ width: 100%; height: 100%; background: #fff; position: fixed; top: 0; left: 0; z-index: 9999; display: flex; justify-content: center; /*align-items: flex-end;*/ transition: .4s; opacity: 0; visibility: hidden; overflow-y: scroll; }
	.sp-nav.active{ opacity: 1; visibility: visible; }
	.sp-nav .menu-list{ padding-top: 25vw; }
	.sp-nav .menu-list li{ font-size: 4.27vw; position: relative; text-align: center; font-family: inherit; padding-bottom: .6em; margin-bottom: .6em;}
	.sp-nav .menu-list li:after{ content: ''; width: 32vw; height: 1px; background: #f2f2f2; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
	.sp-nav .sns{ width: 26.67vw; margin: 18.67vw auto 0; display: flex; justify-content: space-between; }
	.sp-nav .sns li{ width: 8vw; }
	.sp-nav small{ display: block; text-align: center; font-size: 2.93vw; margin-bottom: 4.53vw; }


ul.website-link_sp{
width: 100%;
    margin: 0 auto 26.67vw;
    display: flex;
    justify-content: space-between;
}
ul.website-link_sp{margin-top: 30px;}
ul.website-link_sp li{ width: 160px; border: 1px solid; color: black; padding:5px 10px; background: black;color: #fff;text-align: center;}
ul.website-link_sp li + li{ margin-left: 20px; }
ul.website-link_sp li a, header .sns li a img{ display: block; }
ul.website-link_sp span {
    padding-right: 21px;
    background: url(https://www.medical-design.info/wp-content/themes/medical-design/images/common/icon-web01.png) no-repeat;
    background-size: 16.5px;
    background-position: top 50% right 0;
}

	.row{justify-content: center;}
	.row .left{margin-bottom: 2rem;}


}
