@charset "utf-8";
body {
	font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 20px;
	color: #6F7F82;
}
a {
	text-decoration: none;
	color: #6F7F82;
}
img {
	vertical-align: bottom;
	width: 100%;
}
h2 {
	font-size: 40px;
	color: #6F7F82;
	text-align: center;
	padding-top: 70px;
}
.container {
	max-width: 1110px;
	margin: 0 auto;
}
#header {
	position: fixed;
	bottom: 0;
	background: rgba(255,255,255,0.50);
	display: block;
	width: 100%;
	z-index: 50;
}
#header-inner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 12px 0;
}
.header-txt {
	text-align: center;
	font-size: 24px;
	margin-left: 40px;
}
.header-web {
	border-radius: 50px;
	background: #F5C25B;
	margin-left: 80px;
    padding: 13px 20px;
}
.header-web a {
	display: block;
	font-size: 28px;
}
.header-web:hover {
	opacity: 0.7;
}
.header-tel {
	margin-left: 80px;
	border-radius: 50px;
	background: #C3E9FF;
	padding: 13px 29px 13px 79px;
	max-width: 530px;
}
.header-tel:hover {
	opacity: 0.7;
}
.header-tel a {
	display: block;
	font-size: 28px;
	letter-spacing: 10px;
	position: relative;
}
.header-tel a::before {
	content: url("../img/icon_tel.svg");
	position: absolute;
	top: 0;
	left: -55px;
}
#mv {
	position: relative;
}
#mv-img img {
	width: 100%;
}
.fukidashi {
	font-size: 28px;
	position: absolute;
	top: 10px;
	right: 45%;
	background-image: url("../img/mv_fukidashi.png");
	text-align: center;
    padding: 58px 40px;
}
.cp {
	font-size: 40px;
	text-align: center;
	position: absolute;
	top: 260px;
	right: 50%;
}
.cp::after {
	content: "（マウスピース矯正）";
	font-size: 32px;
	position: absolute;
	bottom: -60px;
    display: block;
    left: 50%;
    transform: translateX(-50%);
	width: 335px;
}
.cp span {
	font-size: 66px;
	color: #22DEFC;
	background: linear-gradient(transparent 60%, #FDD1F4 30%);
}
.cp2 {
	position: absolute;
	top: 500px;
	right: 59%;
}
.maru {
display: inline-block;
    font-size: 22px;
    width: 140px;
    height: 140px;
    background: rgba(34,222,252,0.30);
    border-radius: 50%;
    text-align: center;
    line-height: 140px;
    margin: 0 6px;
}
#regret {
	background-image: url("../img/regret.png");
	background-size: cover;
	background-repeat: no-repeat;
	padding-bottom: 70px;
}
#regret ul {
	list-style: none;
	margin-top: 70px;
}
#regret li {
	font-size: 32px;
	margin-bottom: 15px;
}
#regret li::before {
	content: "✓";
	margin-right: 20px;
	color: #FFFFFF;
	height: 60px;
	width: 60px;
	background: #C3E9FF;
	border-radius: 50%;
	line-height: 60px;
	display: inline-block;
	text-align: center;
}
.message-inner {
	background-image: url("../img/message_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 52px;
	text-decoration: underline;
	color: #F5C25B;
	text-align: center;
	margin: 25px auto;
	padding: 171px 0;
}
#solution {
	padding: 30px 0;
	background: linear-gradient( 90deg, rgb(0, 161, 255, 0.3), rgb(205, 237, 255, 0.3));
}
.sol-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sol-txt {
	font-size: 40px;
	text-shadow: 3px 3px 4px #707070;
	text-align: center;
    margin-right: 60px;
}
.sol-txt span {
	font-size: 52px;
	color: #22DEFC;
	display: block;
}
#feature {
	background-image: url("../img/feature_bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	padding-bottom: 100px;
}
.fea-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 125px 55px;
	background: #FFFFFF;
	margin: 60px 0;
	position: relative;
}
.fea-content::before {
	content: url("../img/feature_number01.png");
	display: block;
	position: absolute;
	top: -30px;
}
.fea-02::before {
	content: url("../img/feature_number02.png");
}
.fea-03::before {
	content: url("../img/feature_number03.png");
}
.fea-04::before {
	content: url("../img/feature_number04.png");
}
.fea-05::before {
	content: url("../img/feature_number05.png");
}
.fea-title {
	font-size: 42px;
	background: linear-gradient(transparent 60%, rgb(34, 222, 252, 0.5) 20%);
	display: inline-block;
	line-height: 60px;
}
.fea-txt {
	margin-top: 35px;
	max-width: 430px;
}
.contact {
	background-image: url("../img/contact_bg.png");
	background-size: cover;
	background-repeat: no-repeat;
}
.contact-title {
	color: #FFFFFF;
}
.contact p {
	color: #FFFFFF;
	margin: 20px auto 0 auto;
	max-width: 880px;
	font-family: "HGSｺﾞｼｯｸM", "HGPｺﾞｼｯｸM";
}
.reserve-wrap {
	max-width: 1110px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.reserve {
	max-width: 620px;
	padding: 15px;
	background: #C3E9FF;
}
.reserve-inner {
	padding: 40px;
	text-align: center;
	background: #FFFFFF;
}
.reserve-tel {
	display: inline-block;
	font-size: 30px;
	letter-spacing: 10px;
}
.biz-hour {
	font-family: "HGSｺﾞｼｯｸM", "HGPｺﾞｼｯｸM";
}
.web-reserve {
	display: inline-block;
	margin-top: 10px;
	padding: 5px 15px;
	border-radius: 70px;
	background: #F5C25B;
	font-size: 24px;
}
.web-reserve:hover {
	opacity: 0.7;
}
.reason-content {
	display: flex;
	margin: 80px auto;
	justify-content: center;
	padding: 60px 0;
	position: relative;
}
.reason-content::before {
	content: '';
	position: absolute;
	width: 70%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(225,229,231,0.40);
}
.reason-content::after {
	content: '';
	position: absolute;
	width: 60%;
    height: 90%;
    bottom: 27px;
	right: 0;
	background: rgba(195,233,255,0.50);
}
.reason2 {
	flex-direction: row-reverse;
	margin-top: 120px;
}
.reason2::before {
	background: rgba(195,233,255,0.50);
	width: 60%;
    height: 90%;
}
.reason2::after {
	background: rgba(225,229,231,0.40);
	width: 70%;
	height: 100%;
}
.reason-img {
	margin-right: 50px;
	z-index: 5;
}
.reason2-img {
	margin-left: 50px;
}
.reason-txtbox {
	max-width: 505px;
	z-index: 5;
}
.reason-title {
	font-size: 40px;
	margin-bottom: 50px;
	position: relative;
}
.reason-title::before {
	content: "Reason1";
	font-size: 40px;
	font-family: "Lucida Calligraphy", "Abelha Pro DemiBold", "Abelha Pro ExtraLight";
	font-weight: bold;
	color: #FDD1F4;
	position: absolute;
	display: block;
	top: -30px;
	right: 0;
    -webkit-transform: rotate(10deg);
}
.reason-title2::before {
	content: "Reason2";
}
.reason-title3::before {
	content: "Reason3";
}
#flow {
	background-image: url("../img/flow_bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	padding-bottom: 50px;
}
.flow-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
	padding: 30px 0;
}
.flow-img {
	position: relative;
	margin-left: 80px;
}
.flow-img::before {
	content: "01";
	display: inline-block;
	font-size: 26px;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #C3E9FF;
	line-height: 80px;
    text-align: center;
	position: absolute;
	top: 0;
	left: -85px;
}
.flow-img2::before {
	content: "02";
}
.flow-img3::before {
	content: "03";
}
.flow-img4::before {
	content: "04";
}
.flow-img5::before {
	content: "05";
}
.flow-img6::before {
	content: "06";
}
.flow-txtbox {
	max-width: 655px;
	border: 1px solid #707070;
	background: #FFFFFF;
	padding: 30px;
}
.flow-title {
	font-size: 32px;
	display: inline-block;
	border-bottom: 3px solid #FDD1F4;
}
.flow-txt {
	margin-top: 20px;
}
#fee {
	margin-bottom: 110px;
}
.fee-price {
	text-align: center;
}
.fee-name {
	font-size: 32px;
	margin-right: 30px;
}
.price {
	font-size: 55px;
	color: #22DEFC;
	background: linear-gradient(transparent 70%, #FDD1F4 30%);
}
.price::after {
	content: "円（税込）";
	font-size: 24px;
}
#fee p {
	text-align: center;
}
#faq {
	background-image: url("../img/flow_bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
}
.faq-wrap {
	margin: 50px auto;
}
.qa-001 {
    margin-bottom: 7px;
    border: 1px solid #d6dde3;
}

.qa-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #707070;
    font-weight: 600;
    cursor: pointer;
	background: #C3E9FF;
}

.qa-001 summary::before,
.qa-001 p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}

.qa-001 summary::before {
    color: #707070;
    content: "Q";
}

.qa-001 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .5s;
}

.qa-001[open] summary::after {
    transform: rotate(225deg);
}

.qa-001 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #707070;
    transition: transform .5s, opacity .5s;
}

.qa-001[open] p {
    transform: none;
    opacity: 1;
}

.qa-001 p::before {
    color: #707070;
    line-height: 1.2;
    content: "A";
}
#footer {
	background: rgba(225,229,231,0.50);
}
.footer-inner {
	padding: 165px 0;
	display: flex;
	align-items: center;
}
.map {
	margin-right: 60px;
}
.infomation span {
	display: block;
	margin-bottom: 5px;
	font-size: 24px;
}
.name {
	font-weight: 700;
}
.table-schedule {
	font-size: 24px;
	display: block;
}
th, td {
	border-bottom: 1px solid #707070;
	padding-right: 20px;
}
.copy {
	font-size: 14px;
	text-align: center;
	padding: 13px 0;
	background: #C3E9FF;
}

#movie {
	padding: 50px 0;
	position: relative;
}
#movie::after {
	content: '';
    position: absolute;
    width: 100%;
    height: 40%;
    bottom: 0;
    background: rgba(195,233,255,0.70);
	z-index: -1;
}
.movie-ttl {
	position: relative;
}
.movie-ttl::before,
.movie-ttl::after {
    width: 5px;
    height: 136px;
    background-color: #FDD1F4;
    content: '';
	display: block;
	position: absolute;
	top: 40%;
	transform: translate(50%, 50%);
}

.movie-ttl::before {
    transform: rotate(-35deg);
	left: 25%;
}

.movie-ttl::after {
    transform: rotate(35deg);
	right: 25%;
}
.video {
	width: 50%;
	margin: 40px auto;
}