@charset "utf-8";

/* SP  - 370px */
@media only screen and (max-width: 370px) {
	.main-imgbox h2 {
	font-size: 2rem!important;
	}
}

/* MainImg*/
.main-imgbox {
    position: relative;
	margin: 90px -2em 0em;
}

.main-imgbox-inner {
    background: #796a55bf;
    width: 100%;
    padding: 1em;
    box-shadow: 10px 10px 25px #d3d3d3, -10px -10px 25px #fff;
}

.main-imgbox h2 {
	font-size: 2.3rem;
    font-family: 'Noto Serif JP';
    text-align: center;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 0.3em;
}

.main-imgbox-inner h2 span {
    font-size: 1.7rem;
    display: block;
    line-height: 2;
}

.park {
    position: absolute;
	width: 100%;
    top: 45%;
    z-index: 99;
    left: 0;
}

/* news-sec */
.news-sec {
	margin-bottom: 40px;
}

.news-sec-inner {
	padding: 1em 2em 45px;
	background-color: #f7f5f2;
}

.news-list {
}

.news-list li {
	margin-bottom: 10px;
	padding-bottom: 12px;
	border-bottom: 1px solid #fff;
}

.news-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.news-list span {
	font-family: 'Overpass', sans-serif;
	font-weight: 400;
	display: block;
	font-size: 14px;
}

.news-list a {
	display: block;
	font-size: 14px;
	line-height: 1.6;
}

.news-sec-btn, .sec-btn {
	margin-top: -26px;
	padding-right: 2em;
	text-align: right;
}

.time-table01 dl {
	display: grid;
	grid-template-columns: auto 1fr;
	width: max-content;
	max-width: 100%;
	align-items: baseline;
}

.time-table01 dl dt,
.time-table01 dl dd {
	font-size: 1.4rem;
}

.time-table01 dl dt {
	padding-right: 1em;
	text-align: justify;
}

/* notice */
section.notice-sec {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 0;
	padding: 2em 0;
    border-bottom: 1px solid #eee;
    background: #ffffff;
}

.notice {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.notice .news-sec-btn {
    width: 240px;
    margin-top: 0;
    margin-right: 0;
}

/* main-info */
.main-info {
    background: #fff;
    margin: 0 -2em;
    padding: 0 2em 45px;
}

/* prof */
.afap-sec p.sec-ttl {
    text-align: center;
}

.afap-sec h2.sec-ttl {
    position: relative;
    margin-bottom: 1.5em;
    font-size: 2rem;
    text-align: center;
}

section.prof-sec{
	/* padding: 6em 0 0;*/
}

.prof-sec h2.sec-ttl .txt30 {
	color: #cabc8f;
}

.prof-sec .flex-box-row {
    align-items: center;
}

.prof-sec dt {
    margin-bottom: -10px;
}

.prof-sec dd {
	display: block;
    background: url(../img/svg/icon-check.svg)no-repeat left top 1em / 20px;
    padding-left: 2em;
    line-height: 2;
    font-size: 1.6rem;
}

/* information */
/*.info-sec-inner {
    margin: 1em -2em 45px;
    padding: 1em 2em 45px;
    background: #fef3d7;
    position: relative;
}*/

.info-sec-inner {
    margin: 1em -2em 45px;
    padding: 1em 2em 45px;
    /* background: #fef3d7; */
    position: relative;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 60px;
    padding-bottom: 2em;
    /* background: #e8e6e2; */
    border-top: #ffdd60 1px solid;
    border-bottom: #ffdd60 1px solid;
}

.information-inner ul {
	margin-bottom: 3em;
    padding: 2vw;
    width: 87vw;
    background: #fff;
    position: relative;
    box-shadow: 2.5vw 2.5vw 0 0 #cabc8f;
    border: 1px solid #cabc8f;
}

/*.information-inner ul::before {
    position: absolute;
    background: url(../img/top/information-line.png) no-repeat left top;
    top: -22px;
    left: -10px;
    content: "";
    width: 50px;
    height: 98px;
}

.information-inner ul::after {
    position: absolute;
    background: url(../img/top/information-line.png) no-repeat right bottom;
    bottom: -44px;
    right: -23px;
    content: "";
    width: 50px;
    height: 98px;
}*/

.information-inner ul li {
    padding: 0 0 0 9.8vw;;
    line-height: 1.8;
    letter-spacing: .1em;
    font-size: 1.7rem;
    margin-bottom: 1em;
}

.information-inner ul li em {
    font-size: 5.14843vw;
    background: linear-gradient(transparent 65%, rgba(255,255,255,0.9) 65%, rgba(255,241,0,.5) 95%, transparent 0);
}

.information-inner ul li span {
	font-size: 5.14843vw;
}

.information-inner span.bkt-o {
    display: inline-block;
    margin: 0 0 0 -0.2em;
    font-size: 3.67812vw;
    transform: translateY(-0.4vw);
}

.information-inner ul li span.bkt-c {
    display: inline-block;
    margin: 0 -0.2em 0 0;
    font-size: 3.825vw;
    transform: translateY(0.4vw);
}

.icon1 {
    margin: 0;
    background: url(../img/top/info_ico_train.svg) left 1.40625vw center no-repeat;
    background-size: 5.46875vw auto;
}

.icon2 {
    background: url(../img/top/info_ico_park.svg) left 0.5vw center no-repeat;
    background-size: 7.46875vw auto;
}

.icon3 {
    background: url(../img/top/info_ico_bus.svg) left 0.9vw center no-repeat;
    background-size: 7.1vw auto;
}

/* pickup */
section.pickup-sec.one,
section.pickup-sec.two {
    margin-bottom: 0;
}

.pickup-item-inner h3 {
    font-family: 'Noto Serif JP';
	margin-top: 2em;
    margin-bottom: 0.5em;
    position: relative;
    padding-left: 2.3em;
	padding-bottom: 0.3em;
	border-bottom: 1px dashed #ec6d80;
}

.pickup-item-inner h3::before {
    content: "";
    display: block;
    background: url(../img/yusei-logo.svg)no-repeat;
    position: absolute;
    top: 25%;
    width: 2em;
    height: 2em;
    left: 0;
}

.pickup-items {
    padding: 2em 0;
    margin-top: -4em;
}

.pickup-items p {
    padding: 1em;
    margin-top: 1em;
}

.pickup-items-inner ul {
	border: 1px solid #ccc;
    padding: 1em;
}

.pickup-items-inner li {
    display: table;
    /* margin: auto; */
    background: url(../img/svg/icon-check.svg)no-repeat left top 0.5em / 20px;
    padding-left: 2em;
    line-height: 2;
    font-size: 1.6rem;
    /* text-align: left; */
}

/* feature */
span.num {
    font-size: 2.2rem;
    color: #455a83;
    position: relative;
    font-weight: 700;
}

span.num::after {
    content: '';
    width: 60px;
    height: 15px;
    border-bottom: solid 1px;
    border-right: solid 1px;
    transform: skew(45deg);
    display: inline-block;
	margin-right: 1em;
}

.feature-box {
	position: relative;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-bottom: 1em;
}

.feature-box-inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.feature-inner-A {
    width: 100%;
}

.feature-inner-B {
    width: 100%;
}

.feature-inner {
    margin-bottom: 4em;
}

.feature-inner-items {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.feature-inner-items .feature-inner {
	width: 100%;
	padding: 2em;
	background: #fff;
	box-shadow: 6px 6px 15px #d3d3d3, -6px -6px 15px #fff;
	position: relative;
}

.feature-inner .sec-btn {
    margin-top: 0;
}

/* greeting */
.greeting {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    background: #fff;
	    padding-bottom: 45px;
}

.greeting .imgbox {
    width: 70%;
    margin-bottom: 1em;
}

.greeting-txt {
    width: 70%;
}

.greeting-txt p {
    margin-bottom: 1em;
}

.greeting dl {
    margin-top: 0.8rem;
}

.greeting dt {
    font-size: 1.1rem;
}

.greeting dd {
    font-size: 1.3rem;
}

/* counseling */
.consult-sec-inner {
    padding-bottom: 45px;
}

p.consult_lead {
    font-size: 1.6rem;
    margin: 1em 0 0.5em;
}

/* PC 600px - */
@media only screen and (min-width: 600px) {
.greeting {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: stretch;
    background: #fff;
    padding: 2em 2em 45px 2em;
}

.greeting .imgbox {
    width: 40%;
}

.greeting-txt {
    width: 58%;
}
}

/* PC 768px - 1025*/
@media only screen and (min-width: 768px) and (max-width: 1025px) {
.information {
    width: 100%;
}
}

/* PC 768px - */
@media only screen and (min-width: 768px) {
.main-imgbox-inner {
    position: absolute;
    /* top: 25vw; */
    bottom: 0;
    z-index: 990;
}


.main-imgbox h2 {
	font-size: 4rem;
}

.main-imgbox .bx-wrapper {
  height: 0 !important;
  padding-top: 66.67%;
  position: relative;
}

.bx-viewport {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden;
}

.park {
    position: absolute;
	width: 450px;
    left: 0;
}

.notice {
	flex-direction: row;
    justify-content: center;
    align-items: center;
}

.notice .news-sec-btn {
    margin-right: 2em;
}

.notice .news-sec-btn:last-child {
    margin-right: 0;
}

section.prof-sec {
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 0;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1001%26quot%3b)' fill='none'%3e%3cpath d='M1440 0L771.55 0L1440 273.45z' fill='rgba(255%2c 255%2c 255%2c .1)'%3e%3c/path%3e%3cpath d='M771.55 0L1440 273.45L1440 349.89L430.91999999999996 0z' fill='rgba(255%2c 255%2c 255%2c .075)'%3e%3c/path%3e%3cpath d='M430.91999999999996 0L1440 349.89L1440 386.9L301.34999999999997 0z' fill='rgba(255%2c 255%2c 255%2c .05)'%3e%3c/path%3e%3cpath d='M301.3499999999999 0L1440 386.9L1440 495.28999999999996L182.39999999999992 0z' fill='rgba(255%2c 255%2c 255%2c .025)'%3e%3c/path%3e%3cpath d='M0 560L687.87 560L0 306.90999999999997z' fill='rgba(0%2c 0%2c 0%2c .1)'%3e%3c/path%3e%3cpath d='M0 306.90999999999997L687.87 560L960.21 560L0 228.86999999999995z' fill='rgba(0%2c 0%2c 0%2c .075)'%3e%3c/path%3e%3cpath d='M0 228.87L960.21 560L1080.3500000000001 560L0 164.2z' fill='rgba(0%2c 0%2c 0%2c .05)'%3e%3c/path%3e%3cpath d='M0 164.2L1080.3500000000001 560L1310.8600000000001 560L0 104.19z' fill='rgba(0%2c 0%2c 0%2c .025)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1001'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
	padding-bottom: 6em;
	padding-right: 2em;
	padding-left: 2em;
}

.prof-sec-inner {
    width: 100%;
    margin: 0 auto;
}

.prof-sec span.bkt-o {
    font-size: 1.8rem;
    display: inline-block;
    margin: 0 0 0 -0.2em;
    font-size: 2.2vw;
    transform: translateY(-0.2vw);
}

.prof-sec span.bkt-c {
    font-size: 1.8rem;
    display: inline-block;
    margin: 0 0.2em 0 0;
    font-size: 2.2vw;
    transform: translateY(0.2vw);
}
	
.information-inner {
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
}

.information {
    margin-right: auto;
    margin-left: auto;
}

.information-inner ul {
    width: 47%;
    box-shadow: 10px 10px 25px #d3d3d3, -10px -10px 25px #fff;
}

.information-inner ul li {
    padding: 0 0 0 5.5rem;
}

.information-img {
    width: 48%;
    margin-top: 4em;
	margin-bottom: 4em;
    margin-left: 4em;
    position: relative;
}

.information-img:before {
    display: block;
    content: "";
    width: 40px;
    height: 40px;
    position: absolute;
    top: -20px;
    left: -20px;
    border: 1px solid #455a83;
}

.information-img:after {
    display: block;
    content: "";
    width: 40px;
    height: 40px;
    position: absolute;
    bottom: -20px;
    right: -20px;
    border: 1px solid #cabc8f;
}

.information-inner span.bkt-o, .information-inner ul li span.bkt-c {
    font-size: 1.8rem;
}

.icon1 {
    margin: 0;
    background: url(../img/top/info_ico_train.svg) 0.1em center no-repeat;
    background-size: 40px auto;
    /* width: 20px; */
}

.icon2 {
    background: url(../img/top/info_ico_park.svg) top 0.4em left no-repeat;
    background-size: 45px auto;
}

.icon3 {
    background: url(../img/top/info_ico_bus.svg) 0.1em center no-repeat;
    background-size: 42px auto;
}

.information-inner ul li em {
    font-size: 2rem;
}

.information-inner ul li span {
    font-size: 2rem;
}

section.afap-sec {
}

.afap-sec-inner-ttl p.sec-ttl {
    margin-top: -2em;
	margin-bottom: 0;
}

.afap-sec-inner-ttl::before {
    display: block;
    content: "";
    background: url(../img/svg/afap-before.svg)no-repeat top / 100%;
    width: 300px;
    height: 127px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.afap-sec-inner-ttl::after {
    display: block;
    content: "";
    background: url(../img/svg/afap-after.svg)no-repeat top / 100%;
    width: 300px;
    height: 127px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.afap {
    margin-top: -13em;
}

.afap ul {
    display: flex;
}

.afap li {
    width: calc(( 100% - 2em )/3);
    margin-right: 2em;
}

.afap li:nth-child(2) {
    margin-top: 8em;
}

.afap li:last-child {
    margin-right: 0;
}

section.feature-sec {
	width: 100vw;
	margin:-100px calc(50% - 50vw) 60px;
	padding: 0 2em;
    background: url(../img/top/top-feature-back.jpg)no-repeat top /cover;
}

section.feature-sec h2 {
	font-size: 3.5rem;
}

.feature {
	position: relative;
	margin-bottom: 3em;
}

.feature::before {
    top: -92px;
}

.feature-inner h3 {
	margin-bottom: .6em;
}

.feature-inner-A {
    width: 100%;
	margin-bottom: 1em;
}

.feature-inner-B {
    width: 100%;
}

.feature-inner-items {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.feature-inner-items .feature-inner {
    width: 48%;
	padding: 2em;
	background: #fff;
	box-shadow: 10px 10px 25px #d3d3d3, -10px -10px 25px #fff;
	position: relative;
}

.feature-inner .sec-btn {
    margin-top: 2em auto 0;
}

section.pickup-sec {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 60px;
    /*padding-bottom: 2em;*/
}

section.pickup-sec.one {
	margin-bottom: 0!important;
}

section.pickup-sec.one {
    background: url(../img/top/pickup_bg-one-1-2.png)no-repeat top 50% left/100% 500px, url(../img/top/pickup_bg-one-1-1.png)no-repeat bottom left/100% 500px,url(../img/top/pickup_bg-one.jpg)no-repeat bottom left/cover;
}

section.pickup-sec.two {
	background: url(../img/top/pickup_bg-two-1-2.png)no-repeat bottom left/100% 500px, url(../img/top/pickup_bg-two-1-1.png)no-repeat top 100px right/100% 500px,url(../img/top/pickup_bg-two.jpg)no-repeat bottom left/cover;
}

section.pickup-sec.one:before {
    content: "";
    display: block;
    width: 100%;
    height: 80px;
    background: linear-gradient(358deg, #e6edfb 50%, #fbfaf9 50%);
}

section.pickup-sec.two:after {
    content: "";
    display: block;
    width: 100%;
    height: 80px;
    background: linear-gradient(-358deg, #fbfaf9 50%, #f2ede3 50%);
}

.pickup-sec-inner {
    padding-top: 2em;
}

.pickup-item {
    margin: 0 -2em 45px;
	padding-bottom: 2em;
}

.pickup-item-inner {
	margin-top: 0;
    margin-bottom: 0;
    display: flex;
    border: 1px solid #ccc;
    padding: 2em;
	position: relative;
}

.pickup-sec.two .pickup-item-inner {
    flex-direction: row-reverse;
}

.pickup-item-inner + p {
    width: 50%;
}

.pickup-items {
    margin-top: inherit;
    padding: 2em;
    width: 50%;
	background: rgb(255 255 255 / 31%);
}

.pickup-sec-inner-ttl {
	background: rgb(255 255 255 / 51%);
	padding-bottom: 0.2em;
}

p.catch-img-one {
	display: block;
    width: 282px;
    position: absolute;
    z-index: 2;
    right: 4em;
    top: -14em;
}

p.catch-img-two {
    display: block;
    width: 282px;
    position: absolute;
    z-index: 2;
    left: 6em;
    top: -14em;
}

h2.sec-ttl.dia {
    margin: 2em auto;
    width: 100px;
    height: 100px;
    background: #455a83;
    transform: rotate(45deg);
    position: relative;
}

h2.sec-ttl.dia span {
	font-size: 2rem;
    width: 200px;
    transform: rotate(-45deg);
    text-align: center;
    position: absolute;
    top: 30%;
    left: -47%;
    color: #fff;
}

#menu-nav-pc {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 100%;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 3px 5.196px 13px 0px rgba(230, 225, 205, 0.29);
    padding: 3em 2em;
    margin-top: -4em;
}

section.top-menu-sec {
    width: 100%;
    margin: 0 calc(50% - 50vw) 60px;
    position: relative;
}
section.top-menu-sec:before {
	background: url(../img/top/top-mebu-backA.png)no-repeat top left/500px;
    display: block;
    content: "";
    position: absolute;
    width: 900px;
    height: 900px;
    top: -39px;
}

section.top-menu-sec:after {
    background: url(../img/top/top-mebu-backB.png)no-repeat bottom right/400px;
    display: block;
    content: "";
    position: absolute;
    width: 400px;
    height: 400px;
	bottom: 0;
	right: 0;
	z-index: -1;
}

.side {
    width: 100%;
    margin-bottom: 24px;
    background: #f2ede3;
	padding: 2em;
    margin-left: 4em;
    position: relative;
}

#menu-nav-pc li a {
    letter-spacing: 0.1em;
    line-height: 1.4;
    font-size: 1.4rem;
    padding: 1em 0;
    display: block;
    margin-left: 120px;
}

#menu-nav-pc li a:before {
	position: relative;
	font-family: serif;
	font-style: italic;
	display: inline-block;
	font-size: 1.2rem;
	vertical-align: bottom;
	position: absolute;
	left: 60px;
}

#menu-nav-pc li:after {
	content: "";
	display: block;
	border-bottom: 1px solid #666;
}	

#menu-nav-pc li.caries a:before {
    content: "caries";
}

#menu-nav-pc li.periodontics a:before {
    content: "periodontics";
}

#menu-nav-pc li.extraction a:before {
    content: "extraction";
}

#menu-nav-pc li.dentures a:before{
    content: "dentures";
}

#menu-nav-pc li.cosmetic a:before {
    content: "cosmetic";
}

#menu-nav-pc li.whitening a:before {
    content: "whitening";

}#menu-nav-pc li.esthetics a:before {
    content: "esthetics";
}

#menu-nav-pc li.human-bridge a:before {
    content: "human-bridge";
}

#menu-nav-pc li.orthodontics a:before {
    content: "orthodontics";
}

#menu-nav-pc li.root a:before {
    content: "root";
}

#menu-nav-pc li.implant a:before {
    content: "implant";
}

#menu-nav-pc li.prevent a:before {
    content: "prevent";
}

#menu-nav-pc li.botox a:before {
    content: "botox";
}

#menu-nav-pc li.visit a:before {
    content: "visit";
}



section.greeting-sec {
    width: inherit;
    margin-left: 2em;
    /*background: url(../img/top/greeting-back.png)no-repeat top / cover;*/
    padding: 2em;
    margin-right: 4em;
}

/*section.greeting-sec {
    width: 100vw;
    background: url(../img/top/greeting-back.png)no-repeat top / cover;
    margin: 0 calc(50% - 50vw) 60px;
    padding: 2em;
}*/

.greeting {
    background: none;
}

.greeting-txt p:last-child {
    margin-top: 2em;
}

.consult {
    margin-bottom: 45px;
}

.consult-inner {
    display: flex;
}

.consult-inner-A {
    width: 50%;
    margin-right: 2%;
}

.consult-inner-B {
    width: 48%;
}
}

/* PC 1025px - */
@media only screen and (min-width: 1025px) {
.main-imgbox {
    position: relative;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow: hidden;
}

.park {
	width: 650px;
}

.prof-sec-inner {
    width: 1026px;
}

.top-menu-sec-inner {
    display: flex;
    align-items: flex-start;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 60px;
    position: relative;
}

.side {
    /*width: 400px;*/
    width: 500px;
    margin-bottom: 24px;
    background: #f2ede3;
    margin-left: 4em;
	padding: 2em;
    margin-left: 4em;
    position: relative;
}

.main-imgbox-inner h2 span {
    font-size: 2.5rem;
}

.information {
    width: 1026px;
}

.pickup-sec-inner {
    width: 1026px;
    margin-right: auto;
    margin-left: auto;
}

.feature-box-inner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.feature-inner-A {
    width: 55%;
}

.feature-inner-B {
    width: 42%;
}

.feature-sec-inner {
    width: 1026px;
	margin-top: -60px;
    margin-right: auto;
    margin-left: auto;
}

.feature-inner-items .feature-inner {
    width: 500px;
	height: 400px;
	padding: 2em;
	background: #fff;
	box-shadow: 10px 10px 25px #d3d3d3, -10px -10px 25px #fff;
	position: relative;
}

.feature-inner .sec-btn {
    margin-top: 0;
    position: absolute;
    left: 34%;
    bottom: 30px;
    width: 206px;
}

.greeting-sec-inner {
    /*width: 1026px;*/
    margin-left: auto;
    margin-right: auto;
}

.greeting-txt p {
    font-size: 1.6rem;
}

.greeting-txt p:last-child {
    font-size: 1.3rem;
}
}

/* PC 1026px - */
@media screen and (min-width: 1239px) {
}