/* ========================

COMMON

========================== */
#maincontent_box{
	background-color: #FFF;
	margin-right: 70px;
	opacity: 0;
	animation: fadeIn 2.0s ease-in-out forwards;
	overflow-x: hidden;
}
@keyframes fadeIn {
  to {
    opacity: 1;
  }
}

.box{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
@media screen and (max-width: 1340px) {
	.box{
		width: 90%;
	}
}

@media screen and (max-width: 500px) {
	#maincontent_box{
		margin-right: 0;
	}
}

.blue_txt {
	color: #0082D8;
}
.l_blue_txt{
	color: #26C4FF;
}

.pc{}
.sp{display: none;}
br.sp{
	height: 0;
	line-height: 1;
	font-size:16px;
}

@media screen and (max-width: 500px) {
	.pc{display: none;}
	.sp{display: block;}
}

/*角丸*/
.kakumaru{
	border-radius: 20px;
}



/*---------------------------------------------
MORE LINK 
---------------------------------------------*/
.textlink_more{
	text-align:right;
	position: relative;
	z-index: 1;
}
.textlink_more a{
	display:inline-flex;
	align-items:center;
	padding:15px 0;
	letter-spacing:0.15em;
	color:#000;
	text-decoration:none;
}
.textlink_more .label{
	display:inline-flex;
	align-items:center;
}
.textlink_more .label::after{
	content:"";
	width:1px;
	height:3.5em;
	background:#ccc;
	margin:0 20px;
}
.textlink_more a::after{
	content:"";
	width:16px;
	height:20px;
	background:url("../img/common/ico_arrow_r.svg") no-repeat center / contain;
	transition:transform 0.25s ease;
}
.textlink_more a:hover::after{
	transform:translateX(6px);
}



/*---------------------------------------------
ナンバー見出し -01 
---------------------------------------------*/
.number {
	position: relative;
	font-size: 140px;
	font-weight: 100;
	line-height: 0.8;
	padding-left: 60px;
	margin-bottom: 10px;
	letter-spacing: -0.08em;
	word-break: break-all;
	margin-left: -70px;
}
.number::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(50% - 0.5px);
	width: 58px;
	height: 1px;
	background-color: #26C4FF;
}
.number::first-letter {
	color: #26C4FF;
}

@media screen and (max-width: 500px) {
	.number {
 	 	margin-left: -30px;
		font-size: 30vw;
	}
}


/*---------------------------------------------
見出し
---------------------------------------------*/
.Midashi_box {
	display: flex;
	flex-direction: column;	
	word-break: break-all;
	padding-top: 80px;
}
.Midashi_box .e_title {
	position: relative;
	text-align: center;
	font-size: 120px;
	line-height: 1.0;
	font-weight: 300;
	letter-spacing:0.1em;
	color: #0082D8;
	order: 1;
	margin: 0 auto;
}
.Midashi_box .e_title::first-letter{
	color: #0082D8;
}
.Midashi_box .midashi_title{
	order: 2;
	display: inline-block;
	width: fit-content;
	margin: 0 auto;
	text-align: center;
	font-weight: 300;
}

.Midashi_box_02 {
	display: flex;
	flex-direction: column;	
	word-break: break-all;
	margin-bottom: 100px;
}
.Midashi_box_02 .Midashi_text {
	order: 2;
	font-size: 30px;
	line-height: 1.0;
	color: #000;
	text-align: center;
	letter-spacing: 0.1em;
}
.Midashi_box_02 .Midashi_text .mini{
	font-size: 70%;
	line-height: 1.6;
}
.Midashi_box_02 .Komidou_text {
	order: 1;
	position: relative;
	text-align: center;
	font-size: 120px;
	line-height: 1.0;
	margin: 120px 0 10px 0;
	letter-spacing: 0.1em;
}
.Midashi_box_02 .Komidou_text::before {
	content: "";
	position: absolute;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: 100px;
	background: #0082D8;
}
.Midashi_box_02 .Komidou_text::first-letter {
	color: #0082D8;
}

@media screen and (max-width: 1000px) {
	.Midashi_box_02 {
		margin-bottom: 10%;
	}
	.Midashi_box_02 .Komidou_text {
		font-size: 12.0vw;
	}
	.Midashi_box_02 .Midashi_text {
		font-size: 4.8vw;
	}
	.Midashi_box_02 .Midashi_text .mini{
		font-size: 70%;
		letter-spacing: 0;
	}
}
@media screen and (max-width: 500px) {
	.Midashi_box_02 .Midashi_text .mini{
		font-size: 60%;
		letter-spacing: 0;
		line-height: 1;
	}
	.Midashi_box_02 .Midashi_text .mini br.sp{
	}
	.Midashi_box_02 .Komidou_text {
		font-size: 14.0vw;
	}
	.Midashi_box_02 .Midashi_text {
		font-size: 8.0vw;
	}
}


/*------- ＼見出し／ -------*/
.slash-text {
	position: relative;
	display: inline-block;
	padding: 0 60px;
	box-sizing: border-box;
}
.slash-text::before,
.slash-text::after {
	content: "";
	position: absolute;
	top: 64%;
	width: 1.5em;
	height: 2px;
	background-color: #0082D8;
	transform-origin: center;
}
.slash-text::before {
	left: 0;
	transform: translateY(-50%) rotate(60deg) scaleY(0.5);
}
.slash-text::after {
	right: 0;
	transform: translateY(-50%) rotate(-60deg) scaleY(0.5);
}
.slash-text::first-letter{
	color: #26C4FF;
}

@media screen and (max-width: 800px) {
	.slash-text {
		padding: 0 1em;
	}
}
@media screen and (max-width: 500px) {
	.slash-text {
		padding: 0 0.5em;
	}
}



/*---------------------------------------------
お問合せBOX
---------------------------------------------*/
.contact_box{
	background: linear-gradient(
		to left,
		#26C4FF 0%,
		#26C4FF 30%,
		#0082D8 100%
	);
	position: relative;
	margin-top: 150px;
	padding-top: 70px;
	padding-bottom: 50px;
	margin-bottom: -50px;
}
.contact_box::after{
	content: "";
	height: 50px;
	width: 100%;
	position: absolute;
	background-color: #FFF;
	bottom: 0;
	right:0;
	z-index: 1px;
	border-radius: 0 70px 0 0;	
}
.contact_box::before{
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 55px solid transparent;
	border-right: 55px solid transparent;
	border-top: 43px solid #fff;
}

.contact_box .contact_box_photo{
	position: absolute;
	bottom: -50px;
	right: -10%;
	width: 55%;
	height:auto;
	text-align: right;
}
.contact_box .contact_box_photo img{
	text-align: right;
}

.contact_box .contact_box_txt{
	width: 70%;
	z-index: 1;
	position: relative;
	text-align: center;
	line-height: 1;
	padding-bottom: 50px;
}
.contact_box .contact_box_txt dt{
	color: #FFF;
	font-size: 160px;
	font-style: italic;
	font-weight: 100;
	letter-spacing: -0.05em;
	margin-bottom: 30px;
	word-break: break-all;
	line-height: 1;
}
.contact_box .contact_box_txt dd{
	font-size: 40px;
	font-weight: 500;
}
.contact_box .contact_box_txt dd.contact_box_title01{
	color: #FFF;
	letter-spacing: 0.15em;
	margin-bottom: 30px;
}
.contact_box .contact_box_txt dd.contact_box_title01::first-letter{
	color: #26C4FF;
}
.contact_box .contact_box_txt dd.contact_box_title02{
	color: #FFE226;
	margin-bottom: 30px;
}
.contact_box .slash-text {
	padding: 0 40px;
}
.contact_box .slash-text::before,
.contact_box .slash-text::after {
	background-color: #FFE226;
}
.contact_box .slash-text::first-letter{
	color: #FFE226;
}

.contact_box .contact_box_txt dd ul{
	display: flex;
	justify-content: center;
	gap: 20px;
	box-sizing: border-box;
	margin:0 8%;
}
.contact_box .contact_box_txt dd ul li{
	border-radius: 24px;
	flex: 1;
	box-sizing: border-box;
}
.contact_box .contact_box_txt dd ul li a{
	color: #0082D8;
	display: block;
	padding:20px 25px 20px 90px;
	text-align: left;
	text-decoration: none;
	box-shadow: 0px 10px 5px rgba(0, 0, 0, 0.2);
	border-radius: 24px;
}
.contact_box .contact_box_txt dd ul li.contact_box_tel span{
	font-size: 32px;
	color: #0082D8;
	background-color: #FFF;
	background-image:url("../img/common/contact_ico_tel.svg");
	background-position: 15px center;
	background-repeat: no-repeat;
	padding:15px 25px 15px 90px;
	text-align: left;
	font-weight: 700;
	border-radius: 24px;
}
.contact_box .contact_box_txt dd ul li.contact_box_tel a{
	font-size: 24px;
	color: #0082D8;
	background-color: #FFF;
	background-image:url("../img/common/contact_ico_tel.svg");
	background-position: 15px center;
	background-repeat: no-repeat;
	text-align: left;
	border-radius: 24px;
	font-weight: 400;
}

.contact_box .contact_box_txt dd ul li.contact_box_web a{
	background-color: #FFF;
	font-size: 24px;
	background-image:url("../img/common/contact_ico_yoyaku.svg");
	background-position: 15px center;
	background-repeat: no-repeat;
	font-weight: 400;
}
.contact_box .contact_box_txt dd ul li span{
	display: block;
}
.contact_box .contact_box_txt dd ul li.contact_box_tel a:hover,
.contact_box .contact_box_txt dd ul li.contact_box_web a:hover{
	color: #fff;
	background-color: #0082D8;
}

.contact_box .contact_box_txt dd .contact_pc{}
.contact_box .contact_box_txt dd .contact_sp{display: none;}

@media (max-width: 1440px) {
	.contact_box .contact_box_txt dt{
		font-size: 11vw;
	}
	.contact_box .contact_box_txt dd{
		font-size: 3.0vw;
	}
	.contact_box .contact_box_txt dd ul{
		flex-direction: column;
	}
	.contact_box .contact_box_photo{
		right: -12%;
		width: 60%;
	}
}
@media (max-width: 800px) {
	.contact_box{
		overflow-x: hidden;
	}
	.contact_box .contact_box_txt dd .contact_box_tel .sp{
		display: block;
	}
	.contact_box .contact_box_txt dd .contact_box_tel .pc{
		display: none;
	}
	.contact_box .contact_box_txt dd .contact_pc{display: none;}
	.contact_box .contact_box_txt dd .contact_sp{display: block;}
	
	.contact_box .contact_box_txt{
		width: 100%;
	}
	.contact_box .contact_box_txt dt{
		font-size: 16.5vw;
		margin-bottom: 8%;
	}
	.contact_box .contact_box_txt dd{
		font-size: 5.2vw;
	}
	.contact_box .contact_box_txt dd.contact_box_title01{
		margin-bottom: 10%;
	}
	.contact_box .contact_box_txt dd.contact_box_title02{
		width: 100%;
		text-align: left;
		font-size: 4.6vw;
		position: relative;
		left: 0;
		margin-bottom: 14px;
	}
	.contact_box .contact_box_txt dd ul{
		flex-direction: column;
		width: 76%;
		margin: 0;
	}
	.contact_box .contact_box_txt dd ul li a{
		font-size: 4.6vw!important;
		padding:20px 25px 20px 70px;
	}
	
	.contact_box .contact_box_photo{
		right: -27%;
		width: 70%;
	}
}

@media (max-width: 500px) {
	.contact_box .contact_box_txt dt{
		font-size: 18.5vw;
	}
	.contact_box .contact_box_txt dd.contact_box_title02{
		font-size: 6.0vw;
		margin-left: -3%;
	}
	.contact_box .slash-text {
		padding: 0 25px;
	}
	.contact_box .contact_box_photo{
		right: -30%;
		width: 90%;
	}
	.contact_box{
		margin-top: 20%;
	}
	.contact_box .contact_box_txt dd ul{
		gap: 14px;
	}
	.contact_box .contact_box_txt dd ul li a{
		font-size: 4.6vw!important;
		letter-spacing: 0;
		padding:20px 15px 20px 60px;
		background-position: 10px center!important;
		box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.1);
	}
	.contact_box .contact_box_txt dd.contact_box_title01{
		font-size: 6.5vw;
	}
}




/*----------------------------
テーブル表
-------------------------------*/
.table{
	border-radius: 10px;
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
}
.table th{
	box-sizing: border-box;
	padding: 15px 25px;
	color: #FFF;
	background-color: #0082D8;
	border-bottom: 1px solid #FFF;
	vertical-align: top;
}
.table td{
	box-sizing: border-box;
	padding: 15px 25px;	
	background-color: #EBF8FF;
	border-bottom: 1px solid #FFF;
	vertical-align: top;
	text-align: right;
}

.table tr.goukei th,
.table tr.goukei td{
	color: #FFF;
	background-color: #26C4FF;
}
@media (max-width: 500px) {
.table th,
.table td{
	padding: 15px 15px;
	font-size: 15.5px;
}
}



/*----------------------------
イラストアイコン
-------------------------------*/
ul.illust_ico {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: center;
	gap: 40px;
}
ul.illust_ico .circle {
	width: 25%;
	height: auto;
	margin: 0;
	text-align: center;
	position: relative;
	margin-bottom: 40px;
}
ul.illust_ico .circle img {
	width: 128px;
	height: auto;
	margin: 0 auto;
	display: block;
	pointer-events: none;
}
ul.illust_ico .circle dl {
	margin: 0 0 0 0;
	padding: 0;
	text-align: center;
}
ul.illust_ico .circle dt {
	font-size: 34px;
	letter-spacing: 0.2em;
	margin-bottom: 0.5em;
	margin-top: 0.5em;
}
ul.illust_ico .circle dd {
	margin: 0;
	text-align: left;
	line-height: 1.8;
}
@media (max-width: 1440px) {
	ul.illust_ico .circle dt {
		font-size: 2.5vw;
	}
}
@media (max-width: 1000px) {
	ul.illust_ico {
		flex-wrap: wrap;
	}
	ul.illust_ico .circle {
		width: calc(50% - 20px);
	}
	ul.illust_ico .circle dt {
		font-size: 4vw;
	}
}
@media (max-width: 500px) {
	ul.illust_ico {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}
	ul.illust_ico .circle {
		width: 100%;
	}
	ul.illust_ico .circle img {
		width: 30%;
	}
	ul.illust_ico .circle dt {
		font-size: 8.4vw;
	}
}


/*---------------------------------------------
h3
---------------------------------------------*/
.content_page h3.h3_title{
	font-size: 34px;
	letter-spacing: 0.15em;
	margin-bottom: 0.8em;
	line-height: 1.2;
}
.content_page h3.h3_title .mini{
	font-size: 70%;
	line-height: 1.0;
	letter-spacing: 0em;
}

@media (max-width: 500px) {
	.content_page h3.h3_title{
		font-size: 6.5vw;
		letter-spacing: 0.1em;
	}
	.content_page h3.h3_title .mini{
		font-size: 60%;
	}
}



/*---------------------------------------------
※リスト
---------------------------------------------*/
.content_page .list_kome li{
}
.content_page .list_kome li::before{
	content: "※";
	padding-right: 10px;
}



/* ========================

下層共通

========================== */
/*---------------------------------------------
下層ファーストビュー
---------------------------------------------*/
.kasou-first-view{
	background-color: #FFF;
	background-position:center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 100vh;
	height: 100svh;
	width: 100vw;
	box-sizing: border-box;
	position: relative;
	margin-bottom: 80px;
	opacity: 0;
	animation: fadeIn 2.0s ease-in-out forwards;
}
.kasou-first-view::before{
	content: "";
	position: absolute;
	inset: 0;
	background-size: cover;
	background: url("../img/common/main_bk.svg")no-repeat;
	background-position:center bottom -1px;
	background-size: cover;
	pointer-events: none;
	mix-blend-mode: screen;
}

.kasou-first-view .Title_kasou {
	display: flex;
	flex-direction: column;	
	word-break: break-all;
	position: absolute;
	bottom: 40px;
	left: 0;
}
.kasou-first-view .Title_kasou .Title_kasou_t {
	order: 2;
	font-size: 60px;
	font-weight: 400;
	color: #0082D8;
	text-align: left;
	letter-spacing: 0.1em;
	position: relative;
	word-break: break-all;
	line-height: 1;
	padding-left: 40px;
}
.kasou-first-view .Title_kasou .Title_kasou_t::first-letter {
	color: #26C4FF;
}
.kasou-first-view .Title_kasou .Title_kasou_e {
	order: 1;
	position: relative;
	font-size: 160px;
	margin: 0 0 13px 0;
	padding-left: 40px;
	letter-spacing: -0.06em;
	color: #0082D8;
	font-style: italic;
	text-align: left;
	line-height: 1;
	font-weight: 200;
	text-transform: uppercase;
}
.kasou-first-view .Title_kasou .Title_kasou_e::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(50% - 0.5px);
	width: 60px;
	height: 1px;
	background-color: #0082D8;
}


@media screen and (max-width: 800px) {
	.kasou-first-view .Title_kasou {
		bottom: 4%;
	}
	.kasou-first-view{
		width: calc(100vw - 70px);
		margin-bottom: 10%;
	}
	.kasou-first-view .Title_kasou .Title_kasou_t {
		font-size: 36px;
	}
	.kasou-first-view .Title_kasou .Title_kasou_e {
		font-size: 80px;
	}
}
@media screen and (max-width: 500px) {
	.kasou-first-view{
		width:100vw;
	}
	.kasou-first-view .Title_kasou .Title_kasou_t {
		font-size: 10vw;
		margin-top: -10px;
	}
	.kasou-first-view .Title_kasou .Title_kasou_e {
		font-size: 19.5vw;
	}
	.kasou-first-view .Title_kasou .Title_kasou_e::before {
		left: -20px;
	}
}
@media screen 
and (max-height: 500px)
and (orientation: landscape){
	.kasou-first-view{
		width:100vw;
	}
	.kasou-first-view .Title_kasou .Title_kasou_t {
		font-size: 28px;
		margin-top: -10px;
	}
	.kasou-first-view .Title_kasou .Title_kasou_e {
		font-size: 74px;
	}
	.kasou-first-view .Title_kasou .Title_kasou_e::before {
		left: -20px;
	}
}




/* ========================

Header

========================== */
.logo{
	position: absolute;
	left: 0;
	top:0;
	z-index: 2;
}
@media screen and (max-width: 500px) {
	.logo{
		width: 60%;
	}
}
@media screen 
and (max-height: 500px)
and (orientation: landscape){
	.logo{
		width: auto;
		height: 20%;
	}
}




/* ========================

MENU

========================== */
.is-menu-open {
	position: fixed;
	width: 100%;
	overflow: hidden;
}
#menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.7);
	z-index: 100;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}
#menu-overlay.is-active {
	opacity: 1;
	pointer-events: auto;
}
#menu-back {
	position: fixed;
	background: #26C4FF;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.hamburger-wrap {
	position: fixed;
	top: 15px;
	right: 15px;
	z-index: 200;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.hamburger-wrap .menutext {
	margin-right:-74px;
	padding-left: 110px;
	padding-top: 26px;
	padding-bottom: 26px;
	font-size: 20px;
	line-height: 1;
	color: #fff;
	letter-spacing: 0.25em;
	display: inline-block;
	transform: rotate(90deg);
	transform-origin: center;
	cursor: pointer;
}

.hamburger-wrap .menu {
	position: fixed;
	background: #26C4FF;
	transition: transform 0.4s ease;
	z-index: 50;
	box-sizing: border-box;
}
.hamburger-wrap .menu ul {
	list-style: none;
	margin: 0;
	padding: 70px 0 0 0;
	box-sizing: border-box;
}
.hamburger-wrap .menu li {
	list-style: none;
}
.hamburger-wrap .menu a {
	border-top: 1px solid #75DAFF;
	display: flex;
	align-items: center;
	position: relative;
	text-decoration: none;
	color: #fff;
	font-size: 18px;
	font-weight: 400;
	padding: 15px 76px 15px 30px;
	letter-spacing: 0.08em;
}
.hamburger-wrap .menu a::before {
	content: "";
	width: 1px;
	height: 2.0em;
	background: #85eAFF;
	position: absolute;
	right: 42px;
	top: 50%;
	transform: translateY(-50%);
}
.hamburger-wrap .menu a::after {
	content: "";
	position: absolute;
	right: 12px;
	top: 50%;
	width: 20px;
	height: 16px;
	transform: translateY(-50%) translateX(0);
	background-image: url("../img/common/ico_arrow-menu.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	transition: transform 0.25s ease;
}

.hamburger-wrap .menu a:hover::after {
	transform: translateY(-50%) translateX(6px);
}

/* ===== hamburger ===== */
.hamburger-wrap .hamburger {
	width: 38px;
	height: 38px;
	position: fixed;
	top: 15px;
	right: 15px;
	background: #fff;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
}
.hamburger-wrap .hamburger span {
	position: absolute;
	height: 2px;
	background: #26C4FF;
	transition: 0.3s;
}
.hamburger-wrap .hamburger span:nth-child(1) {
	transform: translateY(-6px);
	width: 16px;
}
.hamburger-wrap .hamburger span:nth-child(2) {
	width: 12px;
	margin-right: 4px;
}
.hamburger-wrap .hamburger span:nth-child(3) {
	transform: translateY(6px);
	width: 8px;
	margin-right: 8px;
}
#menu-back:hover ~ .hamburger-wrap .hamburger span,
.hamburger-wrap:hover .hamburger span {
	width: 16px;
	margin-right: 0;
}
.hamburger-wrap .hamburger.is-active span:nth-child(1) {
	transform: rotate(45deg);
}
.hamburger-wrap .hamburger.is-active span:nth-child(2) {
	opacity: 0;
	margin-right: 0;
	width: 16px;
}
.hamburger-wrap .hamburger.is-active span:nth-child(3) {
	transform: rotate(-45deg);
	margin-right: 0;
	width: 16px;
}

@media (min-width: 501px) {
	#menu-back {
		top: 0;
		right: 0;
		width: 70px;
		height: 100vh;
	}
	.hamburger-wrap .menu {
		top: 0;
		right: 0;
		transform: translateX(100%);
		border-bottom-left-radius: 20px;
	}
	.hamburger-wrap .menu.is-open {
		transform: translateX(0);
		pointer-events: auto;
		box-shadow: -5px 5px 10px rgba(0, 0, 0, 0.2);		
	}
}
@media (max-width: 500px) {
	#menu-back {
		left: 0;
		bottom: 0;
		width: 100%;
		height: 40px;
		transform: translateY(110%);
		transition: transform 0.3s ease;
	}
	.hamburger-wrap {
		top: auto;
		right: auto;
		bottom: 0;
		left: 0;
		transform: translateX(20px);
		transform: translateY(110%);
		transition: transform 0.3s ease;
	}
	.hamburger-wrap .menutext {
		margin-top: auto;
		margin-bottom: 0;
		margin-right: auto;
		margin-left: 0;
		padding-top: 5px;
		padding-bottom: 10px;
		padding-left: 43px;
		transform: rotate(0deg);
		display: block;
		width:45vw;
		font-size: 18px;
	}
	.hamburger-wrap .hamburger {
		width: 28px;
		height: 28px;
		top: auto;
		right: auto;
		bottom: 5px;
		left: 8px;
	}
	.hamburger-wrap .menu {
		left: 0;
		bottom: 0;
		transform: translateY(100%);
		border-bottom-left-radius: 0;
		border-top-right-radius: 20px;
		width: 120%;
	}
	.hamburger-wrap .menu ul {
		padding: 0 0 40px 0;
		box-sizing: border-box;
	}
	.hamburger-wrap .menu a:first-child {
		border-top: 0;
	}
	.hamburger-wrap .menu a:last-child {
		border-bottom: 1px solid #75DAFF;
	}
	.hamburger-wrap .menu.is-open {
		transform: translateY(0);
		box-shadow: 5px -5px 10px rgba(0, 0, 0, 0.2);
	}
	.hamburger-wrap .menu a {
		word-break: break-all;
		box-sizing: border-box;
	}

	body.is-menu-visible .hamburger-wrap,
	body.is-menu-visible #menu-back{
		transform: translateY(0);
	}
}
@media screen
and (max-height: 540px){
	.hamburger-wrap .menu {
		height: 95dvh;
		display: flex;
		flex-direction: column;
		overflow: hidden;
	}	
	.hamburger-wrap .menu ul {
		flex: 1;
		overflow-y: auto;
	}
	.hamburger-wrap .menu::after {
		content: "";
		position: absolute;
		bottom: 15px;
		left: 50%;
		transform: translateX(-50%);
		width: 20px;
		height: 20px;
		border-left: 3px solid #fff;
		border-bottom: 3px solid #fff;
		transform: translateX(-50%) rotate(-45deg);
		animation: scrollHint 1.0s infinite;
		opacity: 0.8;
	}
	.hamburger-wrap .menu.is-scroll-end::after {
		opacity: 0;
		animation: none;
	}
}



@keyframes scrollHint {
	0%   { transform: translate(-50%, 0) rotate(-45deg); opacity: 0; }
	50%  { transform: translate(-50%, 8px) rotate(-45deg); opacity: 1; }
	100% { transform: translate(-50%, 16px) rotate(-45deg); opacity: 0; }
}


/*---------------------------------------------
WEB予約 
---------------------------------------------*/
.fixed-web-reserve {
	position: fixed;
	top: 155px;
	right: 0;
	width: 110px;
	background: #0082D8;
	border-radius: 12px 0 0 12px;
	box-shadow: -8px 0 16px rgba(0, 0, 0, 0.25);
	z-index: 99;
	transform: translateX(110%);
	transition: transform 0.3s ease;
	transition: margin 0.3s ease;
	-webkit-transition: 0.15s ease-in-out;
	-moz-transition: 0.15s ease-in-out;
	-o-transition: 0.15s ease-in-out;
	transition: 0.15s ease-in-out;
	overflow: hidden;
	text-decoration: none!important;
	display: block;
}
.fixed-web-reserve::before {
	content: "";
	position: absolute;
	top: 0;
	left: -50%;
	width: 50%;
	height: 100%;
	background: linear-gradient(
	to right,
	transparent,
	rgba(255, 255, 255, 0.1),
	transparent
	);
	animation: shine 1.5s linear infinite;
}
@keyframes shine {
	0%{transform:translateX(-130%);opacity: 0;}
	20%{transform:translateX(-100%);opacity: 1;}
	70%{transform:translateX(220%);opacity: 1;}
	80%{transform:translateX(230%);opacity: 0.5;}
	100%{transform:translateX(280%);opacity: 0;}
}

.fixed-web-reserve__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 20px 16px 70px 0px;
	text-decoration: none;
}
.fixed-web-reserve__icon {
	margin-bottom: 48px;
}
.fixed-web-reserve__icon img {
	width: 38px;
	height: auto;
	display: block;
}
.fixed-web-reserve__text {
	color: #fff;
	font-size: 20px;
	letter-spacing: 0.2em;
	transform: rotate(90deg);
	transform-origin: center;
	white-space: nowrap;
	margin-top:7px;
}

@media screen and (max-width: 500px) {
	.fixed-web-reserve {
		top: auto;
		bottom: 0px;
		right: 0px;
		width: auto;
		height:60px;
		border-radius: 12px 0 0 0;
		transform: translateY(105%);
		transition: transform 0.3s ease;
	}
	.fixed-web-reserve:hover{
		transform: translateY(0px)!important;
	}
	body.is-menu-visible .fixed-web-reserve{
		transform: translateY(12px);
	}
	
	.fixed-web-reserve__inner {
		flex-direction: row;
		padding: 8px 10px 12px 10px;
	}

	.fixed-web-reserve__icon {
		margin-bottom: 0;
		margin-right: 10px;
	}
	.fixed-web-reserve__icon img {
		width: 34px;
	}
	.fixed-web-reserve__text {
		transform: none;
		margin-top:0px;
		font-size: 18px;
	}
	
}
@media screen and (min-width: 501px) {
	.fixed-web-reserve {
		animation: slideInReserve 0.4s ease-out forwards;
		animation-delay: 0.5s;
	}
	.fixed-web-reserve:hover{
		margin-right: 20px;
	}
}
@keyframes slideInReserve {
	from {
		transform: translateX(110%);
	}
	to {
		transform: translateX(25px);
	}
}



@media screen
	and (max-height: 400px)
	and (orientation: landscape){
	.fixed-web-reserve {
		top: 75px;
	}
	.hamburger-wrap .menutext {
		display: none;
	}
}
@media screen
	and (max-width: 500px)
	and (orientation: landscape){
	.fixed-web-reserve {
		top: auto;
	}
	.hamburger-wrap .menutext {
		display: inline-block;
	}
}




/*---------------------------------------------
foot_info 
---------------------------------------------*/
.foot_info {
	position: relative;
	z-index: 2;
	display: flex;
	width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

.foot_info .foot_info_txt {
	width: 40%;
	padding-top: 50px;
	box-sizing: border-box;
	padding-right: 5%;
	text-align: center;
}
.foot_info .foot_info_txt .textlink_more{
}
.foot_info .foot_info_txt .textlink_more a::after{
	content:"";
	width:16px;
	height:22px;
	background:url("../img/common/ico_map.svg") no-repeat center / contain;
	transition:transform 0.25s ease;
}

.foot_info .foot_info_txt .f_tel{
	font-weight: 500;
	color: #0082D8;
	background-image: url("../img/common/ico_tell_f.svg");
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 25px;
	font-size: 30px;
	margin-bottom: 20px;
	display: inline-block;
}
.foot_info .foot_info_txt .f_add{
	line-height: 1.6;
	margin-bottom: 20px;
}
.foot_info .foot_info_txt .f_shinryo{
	border-top:1px solid #CCC;
	padding-top: 16px;
}
.foot_info .foot_info_txt .f_shinryo table{
	width: 100%;
}
.foot_info .foot_info_txt .f_shinryo caption{
	text-align: center;
	font-size: 26px;
	letter-spacing: 0.2em;
	padding-bottom: 16px;
}
.foot_info .foot_info_txt .f_shinryo th{
	border-radius: 10px;
	padding:8px 15px;
	line-height: 1;
	text-align: center;
	border-bottom: 2px solid #FFF;
	font-weight: 200;
}
.foot_info .foot_info_txt .f_shinryo th.b{
	background-color: #EBF8FF;
}
.foot_info .foot_info_txt .f_shinryo th.r{
	background-color: #FFDEDE;
}
.foot_info .foot_info_txt .f_shinryo td{
	padding:5px 15px;
	line-height: 1;
	text-align: left;
	border-bottom: 2px solid #FFF;
}
.foot_info .foot_info_txt .mini{
	font-size: 80%;
	text-align: left;
}


.foot_info .gmap {
	position: relative;
	width: 60vw; 
	height: 600px;
	margin-left: auto;
	margin-right: calc(50% - 50vw + 42px);
	border-radius: 0 40px 0 40px;
	overflow: hidden;
}

.foot_info .gmap iframe {
	width: 100%;
	height: 100%;
	border: 0;
}

@media screen and (max-width: 1140px) {
	.foot_info {
		flex-direction: column;
		width: auto;
		margin: 0 auto;
		flex-direction: column-reverse;
	}
	.foot_info .gmap {
		position: relative;
		width: 100%; 
		height: 600px;
		margin-right: 0;
		border-radius: 0 40px 0 0;
	}
	.foot_info .foot_info_txt {
		width: 400px;
		padding-top: 50px;
		box-sizing: border-box;
		padding-right:0;
		margin:0 auto;
		text-align: center;
	}
}
@media screen and (max-width: 500px) {
	.foot_info .gmap {
		height: 500px;
	}
	.foot_info .foot_info_txt {
		width: 90%;
		padding-top: 5%;
	}
	.foot_info .foot_info_txt .f_shinryo th{
		padding:8px 2%;
	}
	.foot_info .foot_info_txt .f_shinryo td{
		padding:8px 0 8px 3%;
	}

}


/*---------------------------------------------
foot_link 
---------------------------------------------*/
.footer{
	padding: 50px 5%;
}
.footer ul{
	display: flex;
	justify-content: center;
	gap:30px;
}
.footer ul li{
}
.footer ul li a{
	color: #000!important;
	text-decoration: none;
}
.footer ul li a:hover{
	text-decoration: underline;
}

@media screen and (max-width: 1140px) {
	.footer ul{
		flex-wrap: wrap;
	}
}
@media screen and (max-width: 500px) {
	.footer ul{
		display: none;
	}
}




/*---------------------------------------------
コピーライト 
---------------------------------------------*/
.copyright2 {
	position: fixed;
	right: 40px;
	bottom: 12px;
	transform: rotate(90deg);
	transform-origin: right bottom;
	font-size: 10px;
	letter-spacing: 0.08em;
	color: #fff;
	white-space: nowrap;
	z-index: 20;
	pointer-events: none;
}	
.copyright {
	display:none;
}
@media (max-height: 650px) {
	.copyright2 {
		display:none;
	}
}
@media (max-width: 500px) {
	.copyright2 {
		display:none;
	}
	.copyright {
		right: auto;
		bottom: auto;
		position: static;
		color: #000;
		transform: rotate(0deg);
		padding-bottom:100px;
		display:block;
		text-align: center;
	}
}











/* ========================

TOP

========================== */

/* 見出し 
---------------------------------------------*/
#top-page .Midashi_box {
	display: flex;
	flex-direction: column;
	margin-bottom: 40px;
	letter-spacing: -0.1em;
	line-height: 1;
}
#top-page .top_resolution .Midashi_box{
	margin-bottom: 100px;	
}

#top-page .Midashi_box .e_title {
	font-size: 140px;
	color: #0082D8;
	font-style: italic;
	margin-bottom: 60px;
	letter-spacing: -0.01em;
	line-height: 1;
}
#top-page .Midashi_box .e_title .mini{
	font-size: 50%;
	line-height: 1;
	display: block;
}
#top-page .Midashi_box .midashi_title{
	font-size: 50px;
	color: #0082D8;
	letter-spacing:0.05em;
	line-height: 1;
	margin-bottom: 0;
}
#top-page .Midashi_box .midashi_title.midashi_title02{
	font-size: 60px;
	padding: 0 55px 0 45px;
}

#top-page .Midashi_box .midashi_title .big{
	font-size: 140%;
}
#top-page .Midashi_box .midashi_title .mini{
	font-size: 50%;
	display: block;
	line-height: 1;
	margin-bottom: 10px;
}

#top-page .Midashi_box .midashi_title .min,
#top-page .Midashi_box .midashi_title.min{
	letter-spacing:0.1em;
	font-weight: 500;
	line-height: 1;
}
#top-page .Midashi_box .first_text::first-letter {
	color: #26C4FF;
	display: inline-block;
}
@media (max-width: 1440px) {
	#top-page .Midashi_box{
		margin-left: -10%;
		width: 120%;
	}
	#top-page .Midashi_box .e_title {
		font-size: 10vw;
		margin-bottom: 5%;
	}
	#top-page .Midashi_box .midashi_title .mini{
		font-size: 3.3vw;
	}
	#top-page .Midashi_box .midashi_title.midashi_title02{
		padding: 0 55px 0 45px;
	}
}
@media (max-width: 640px) {
	#top-page .Midashi_box .midashi_title.midashi_title02.letterspase0{
		letter-spacing: -0.1em;
		padding: 0 65px 0 40px;
	}
}
@media (max-width: 500px) {
	#top-page .Midashi_box .midashi_title{
		font-size: 10vw;
		padding: 0 8vw;
	}
	#top-page .Midashi_box .midashi_title .mini{
		font-size: 3.4vw;
	}
	#top-page .top_resolution .Midashi_box{
		margin-bottom: 10%;	
	}
	#top-page .Midashi_box .midashi_title.midashi_title02{
		font-size: 15.5vw;
		padding: 0 30px;
		margin-bottom: -3%;
	}
	#top-page .Midashi_box .midashi_title.midashi_title02.letterspase0{
		padding: 0 40px;
	}
}



/* phototxt_box 
---------------------------------------------*/
#top-page .phototxt_box {
	list-style: none;
	padding: 0;
	margin: 0;
}
#top-page .phototxt_box li {
	display: flex;
	gap: 40px;
	align-items: flex-start;
	margin-bottom: 80px;
	width: 100%;
}
#top-page .phototxt_box li .phototxt_box_photo {
	flex: 2;
	margin-left: calc(50% - 50vw);
	overflow: hidden;
}
#top-page .phototxt_box li .phototxt_box_photo img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 0 16px 16px 0; /* 右端の角丸 */
}
#top-page .phototxt_box li .phototxt_box_txt {
	flex: 1;
	min-width: 280px;
	max-width: 520px;
}
#top-page .phototxt_box li .phototxt_box_txt .blue_txt{
	color: #26C4FF;
}
#top-page .phototxt_box li .phototxt_box_txt h3{
	font-size: 44px;
	letter-spacing: 0.1em;
	margin-top: 30px;
	margin-bottom: 10px;
	line-height: 1.3;
}
#top-page .phototxt_box li .phototxt_box_txt p{
	line-height: 2;
}
#top-page .phototxt_box li .phototxt_box_txt .mini{
	font-size: 80%;
}
#top-page .phototxt_box li:nth-child(1),
#top-page .phototxt_box li:nth-child(3) {
	flex-direction: row-reverse;
}
#top-page .phototxt_box li:nth-child(1) .phototxt_box_photo,
#top-page .phototxt_box li:nth-child(3) .phototxt_box_photo {
	margin-left: 0;
	margin-right: calc(50% - 50vw);
}
#top-page .phototxt_box li:nth-child(1) .phototxt_box_photo img,
#top-page .phototxt_box li:nth-child(3) .phototxt_box_photo img {
	border-radius: 16px 0 0 16px; /* 左端の角丸 */
}
@media screen and (max-width: 1100px) {
  #top-page .phototxt_box li {
    flex-direction: column !important;
    margin-bottom: 40px;
  }
  #top-page .phototxt_box li .phototxt_box_txt {
    width: 100%;
    max-width: 100%;
    min-width: auto;
	margin-top: -20px;
  }
  #top-page .phototxt_box li .phototxt_box_txt .number {
  	margin-left: -30px;
  }
}

@media screen and (max-width: 500px) {
	#top-page .phototxt_box li .phototxt_box_txt h3{
		font-size: 10.5vw;
	}
}


/* phototxt_box02
---------------------------------------------*/
.content_page .phototxt_box02 {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
}
.content_page .phototxt_box02 li{
	margin-bottom: 80px;
}
.content_page .phototxt_box02 li .phototxt_box02_box{
	display: flex;
	gap: 40px;
	width: 100%;
}
.content_page .phototxt_box02 li .phototxt_box02_box .phototxt_box_photo {
	overflow: hidden;
	width: 60%;
}
.content_page .phototxt_box02 li .phototxt_box_photo img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 16px;
}
.content_page .phototxt_box02 li .phototxt_box_txt {
	width: 40%;
}
.content_page .phototxt_box02 li:nth-child(even) .phototxt_box02_box{
	flex-direction: row-reverse;
}

.content_page .phototxt_box02 li .phototxt_box_txt p{
	line-height: 2;
}



@media (max-width: 1000px) {
	.content_page .phototxt_box02 li .phototxt_box02_box{
		flex-direction: column;
	}
	.content_page .phototxt_box02 li:nth-child(even) .phototxt_box02_box{
		flex-direction: column;
	}
	.content_page .phototxt_box02 li .phototxt_box02_box .phototxt_box_photo {
		width: 100%;
	}
	.content_page .phototxt_box02 li .phototxt_box02_box .phototxt_box_txt {
		width: 100%;
	}
}

@media (max-width: 500px) {
	.content_page .phototxt_box02 li{
		margin-bottom: 20%;
	}
}


/* メインビジュアル 
---------------------------------------------*/
#top-page .first-view {
	position: relative;
	width: 100%;
	background-color: #FBFEFF;
	background-position: center;
	background-size: cover;
}
#top-page .first-view__inner {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0;
	background-image: url("../img/top/main_photo.webp");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 45% auto;
	padding-top: 5%;
	padding-bottom: 5%;
	opacity: 0;
	animation: fadeIn 2.0s ease-in-out forwards;
}
#top-page .first-view__left {
	width: 46%;
	display: flex;
	flex-direction: column;
}
#top-page .first-view__copy{
	padding-top: clamp(100px, 12vw, 50px);
}
#top-page .first-view__copy img {
	width: 100%;
	height: auto;
	display: block;
	margin-left: 10%;
}
#top-page .first-view__copy02 {
	margin-top: 24px;
}
#top-page .first-view__copy02 img.first-view__catch {
	width: 120%;
	max-width: 120%;
	margin-left: -5%;
}


@media screen
	and (max-width: 500px)
	and (orientation: portrait){
	#top-page .first-view {
		position: relative;
		height: 100vh;
		height: 100svh;
	}



	#top-page .first-view__inner {
		display: flex;
		flex-direction: column;
		height: 100%;
		background-image: url("../img/top/main_photo_sp.webp");
		background-position: center 30vh;
		background-size:  auto 80%;
		box-sizing: border-box;
	}
	#top-page .first-view__left {
		justify-content: center;
	}
	#top-page .first-view__copy {
		flex-shrink: 0;
		width: 170%;
		margin-left: -35%;
		padding-top: clamp(45px, 8vw, 70px);
	}
	#top-page .first-view__copy img {
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		max-width: 100%;
		height: auto;
		display: block;
	}

	#top-page .first-view__copy02 {
		position: absolute;
		bottom: -23px;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		text-align: center;
		pointer-events: none;
	}
	#top-page .first-view__copy02 img.first-view__catch {
		max-width: 100%;
		width: 100%;
		margin-left: 0;
	}	
}


@media screen
	and (max-width: 500px)
	and (min-aspect-ratio: 4 / 5)
	and (orientation: portrait) {
		#top-page .first-view__inner {
			background-image: none;
		}
}


/* NEWS 
---------------------------------------------*/
#top-page .top_news{
	background: linear-gradient(
	to bottom,
	#FBFEFF 0%,
	#FBFEFF 50%,
	#FFFFFF 100%);
	padding-top: 30px;
}
#top-page .textlink_more{
	margin-top: 0;
}
#top-page .top_news dl{
	display: flex;
	justify-content: flex-end;
	column-gap:15px;
	align-items: center;
	position: relative;
	z-index: 1;
}
#top-page .top_news dl dt{
	line-height: 1;
	padding: 4px;
	border-radius: 4px;
	color: #FFF;
	background-color: #0082D8;
	font-size: 80%;
	text-transform: capitalize;
}
#top-page .top_news dl dd a{
	color: #000;
	display: block;
	padding: 20px 0;
}
#top-page .top_news dl dd.news_day{
	font-size: 80%;
}
#top-page .top_news dl dd.news_day .big{
	font-size: 130%;
}

@media (max-width: 800px){
	#top-page .top_news dl{
		display:flex;
		flex-wrap:wrap;
		justify-content:flex-start;
		gap:0px 12px;
	}
	#top-page .top_news dt{
		order:1;
	}
	#top-page .top_news .news_day{
		order:2;
	}
	#top-page .top_news .news_link{
		order:3;
		width:100%;
	}
	#top-page .top_news .news_link a{
		display:block;
		margin-top:6px;
		padding: 5px 0 20px 0;
	}
}


@media (max-width: 500px){
	#top-page .top_news{
		padding-top: 60px;
	}
}

/* こんなお悩み枠 
---------------------------------------------*/
#top-page .top_concern{
}
#top-page .top_concern .top_concern_t{
	position: relative;
	margin-top: -28%;
}
#top-page .top_concern .top_concern_t h2{
	width:76%;
	position: absolute;
	right: 0;
	top: 46%;
	text-align: right;
}
#top-page .top_concern .top_concern_t .top_concern_photo{
	width:60%;
	margin-left: -18%;
}

#top-page .top_concern .Concern-box {
	position: relative;
	text-align: center;
	margin-top: -170px;
	padding-bottom: 70px;
	background: linear-gradient(
		to bottom,
		transparent 0%,
		transparent 50%,
		#EBF8FF 100%
	);
}
#top-page .top_concern .Concern-box::after {
	content: "";
	position: absolute;
	bottom: -26px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 40px solid transparent;
	border-right: 40px solid transparent;
	border-top: 26px solid #EBF8FF;
}

/* こんなお悩みBOXリスト 
------------------------------------------*/
#top-page .top_concern .Concern_ui {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	list-style: none;
	box-sizing: border-box;
}
#top-page .top_concern .Concern_ui li {
	position: relative;
	width: calc((100% - 60px) / 3);
	background: #0082D8;
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	line-height: 1.3;
	padding: 4px 10px;
	margin-bottom: 30px;
	box-sizing: border-box;
	box-shadow: 0 6px 12px rgba(0, 0, 155, 0.25);
	font-size: 26px;
	font-weight: 100;
	letter-spacing: 0.05em;
}
#top-page .top_concern .Concern_ui li .yello_txt {
	color: #FFE226;
	font-size: 120%;
	font-weight: 500;
}
#top-page .top_concern .Concern_ui li img {
	position: absolute;
	bottom: -55px;
	right: -30px;
	width: 130px;
	pointer-events: none;
}

@media (max-width: 1100px) {
	#top-page .top_concern .Concern_ui li {
		width: 46%;
		padding: 0px 10px;
	}

	#top-page .top_concern .Concern-box {
		margin-top: -10%;
	}
	#top-page .top_concern .top_concern_t .top_concern_photo{
		margin-left: -15%;
	}
	#top-page .top_concern .top_concern_t h2{
		width:65%;
		top: 46%;
	}
}
@media (max-width: 800px) {
	#top-page .top_concern .Concern_ui li {
		width: 100%;
		padding: 0px 10px;
		margin-left: 0;
		margin-right: 7%;
		margin-bottom: 20px;
	}
	#top-page .top_concern .Concern_ui li.left {
		margin-left: 7%;
		margin-right: 0;
	}
	#top-page .top_concern .Concern_ui li.left img {
		transform: scaleX(-1);
		bottom: -55px;
		right: auto;
		left: -30px;
	}
	#top-page .top_concern .Concern_ui li:nth-child(4),
	#top-page .top_concern .Concern_ui li:nth-child(5) {
		display: none;
	}
	
	#top-page .top_concern .top_concern_t .top_concern_photo{
		width:60%;
		margin-left: -18%;
	}
}
@media (max-width: 500px) {
	#top-page .top_concern .top_concern_t{
		margin-top: 0%;
	}
	#top-page .top_concern .Concern_ui li {
		font-size: 6.6vw;
		padding-bottom: 10px;
	}
	#top-page .top_concern .top_concern_t h2{
		top: 5%;
		width: 78%;
	}
	#top-page .top_concern .top_concern_t h2 picture img{
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	#top-page .top_concern .top_concern_t .top_concern_photo{
		width:75%;
		margin-left: -20%;
	}
	#top-page .top_concern .Concern-box {
		margin-top: -36%;
	}
}




/* 選べる矯正 
---------------------------------------------*/
#top-page .top_select{
}
#top-page .top_select .top_select_box{
	border: 2px dashed #0082D8;
	padding: 50px 10% 20px 10%;
	position: relative;
	border-radius: 20px;
}
#top-page .top_select .top_select_box h3{
	display: inline-block;
	background-color: #FFF;
	position: absolute;
	top:-1em;
	left: 50%;
	transform: translateX(-50%);
	font-size: 44px;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: #0082D8;
	padding: 0 10px;
	word-break: keep-all;
}
#top-page .top_select .top_select_box h3::first-letter{
	color: #26C4FF;
}

#top-page .top_select .top_select_box-items{
	display: flex;
	gap: 40px;
}
#top-page .top_select .top_select_box-items li{
	flex: 1;
	display: flex;
	flex-direction: column;
}

#top-page .top_select .top_select_box-item{
	display: flex;
	align-items: center;
	gap: 20px;
	background: #0082D8;
	border-radius: 10px;
	box-shadow: 0 10px 10px rgba(0,0,0,0.25);
	padding: 1px;
	overflow: hidden;
	text-decoration: none;
	box-sizing: border-box;
}
#top-page .top_select .top_select_box-items li:nth-child(2) .top_select_box-item{
	background: #26C4FF;
}

#top-page .top_select .top_select_box-item img{
	width: 134px;
	height: auto;
	flex-shrink: 0;
	border-radius: 10px 0 0 10px;
}

#top-page .top_select .top_select_box-item .text{
	color: #fff;
	white-space: nowrap;
	display: flex;
	align-items: center;
	width: 50%;
	justify-content: left;
	position: relative;
	font-size: 24px;
	height: 90%;
	padding-right: 10px;
	word-break: break-all;
	box-sizing: border-box;
}
#top-page .top_select .top_select_box-item .text::after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 100%;
	background-color: #fff;
}

#top-page .top_select .top_select_box-item::after{
	content: "";
	display: block;
	width: 16px;
	height: 19px;
	padding-left: 12px;
	padding-right: 8px;
	margin: 8px auto 0 auto;
	background: url("../img/common/ico_arrow_b.svg") no-repeat;
	transition: transform 0.25s ease;
}
#top-page .top_select .top_select_box-item:hover::after{
	transform: translateY(6px);
}
#top-page .top_select .top_select_box-items li p{
	margin-top: 15px;
	line-height: 1.6;
	text-align: left;
}

@media (max-width: 1200px) {
	#top-page .top_select .top_select_box-items{
		flex-direction: column;
		height: 1vh;
		margin-bottom: 400px;
		gap: 0px;
	}
	#top-page .top_select .top_select_box-items li a.top_select_box-item .text{
		flex: 1;
	}
}
@media (max-width: 800px) {
	#top-page .top_select .top_select_box-items li a.top_select_box-item .text{
		font-size: 3vw;
	}
	#top-page .top_select .top_select_box-items li a.top_select_box-item img{
		width: 30%;
	}
	#top-page .top_select .top_select_box-items{
		margin-bottom: 94%;
	}
}
@media (max-width: 500px) {
	#top-page .top_select .top_select_box-items li a.top_select_box-item .text{
		font-size: 4.3vw;
		padding-right: 5%;
	}
	#top-page .top_select .top_select_box-item{
		gap: 4%;
		box-shadow: 0 5px 5px rgba(0,0,0,0.15);
	}
	#top-page .top_select .top_select_box{
		padding-top: 10%;
	}
	#top-page .top_select .top_select_box h3{
		font-size: 8vw;
	}
	#top-page .top_select .top_select_box-items li p{
		font-size: 4vw;
		margin-top: 3%;
	}
	#top-page .top_select .top_select_box-items li a.top_select_box-item img{
		width: 27%;
	}
	#top-page .top_select .top_select_box-items li a.top_select_box-item .text{
		
	}
	#top-page .top_select .top_select_box-item::after{
		width: 12px;
		height: 16px;
		background-size: auto 100%;
		padding-left: 3%;
		padding-right: 1%;
	}
	#top-page .top_select .top_select_box-items{
		margin-bottom: 90%;
	}
}



/* BeforeAfter 
---------------------------------------------*/
#top-page .top_clear_BeforeAfter{
	text-align: center;
	background-color: #0082D8;
	border-radius: 20px;
	padding: 0 8% 20px 8%;
	margin-top: 150px;
}
#top-page .top_clear_BeforeAfter h3{
	margin-top: -1em;
	background-color: #0082D8;
	color: #FFF;
	font-size: 44px;
	letter-spacing: 0.1em;
	display: inline-block;
	padding: 26px 60px 0px 60px;
	line-height: 1;
	border-radius: 20px 20px 0px 0px ;
	box-sizing: border-box;
}
#top-page .top_clear_BeforeAfter h3::first-letter{
	color: #FFE226;
}
#top-page .top_clear_BeforeAfter .subtxt{
	color: #FFF;
	font-size: 26px;
}
#top-page .top_clear_BeforeAfter ul{
	display: flex;
	margin: 10px 0 20px 0;
	gap: 30px;
}
#top-page .top_clear_BeforeAfter ul li{
	position: relative;
}
#top-page .top_clear_BeforeAfter ul li:first-child::after{
	content:"";
	position:absolute;
	top:40%;
	right:-40px;
	width:42px;
	height:50px;
	background:url("../img/top/clear_arrow.svg") no-repeat;	
	z-index: 1;
}
#top-page .top_clear_BeforeAfter ul li span{
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	color: #FFF;
	font-size: 30px;
	font-weight: 500;
	padding: 10px 24px;
	line-height: 1;
	background-color: #26C4FF;
	border-radius: 0 10px 0 10px;
}
#top-page .top_clear_BeforeAfter ul li:nth-child(2) span{
	background-color: #FFE226;
}

#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei{
	border-radius: 10px;
	padding: 20px 5%;
	border: 1px dashed #FFF;
	color: #FFF;
	display: flex;
	gap:50px;
	align-items: center;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei h4{
	width: 36%;
	font-weight: 300;
	font-size: 20px;
	text-align: center;
	box-sizing: border-box;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei h4 span{
	border-bottom: 1px solid #fff;
	display: inline-block;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table{
	text-align: left;
	box-sizing: border-box;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table th{
	line-height: 1.3;
	box-sizing: border-box;
	padding: 4px 0;
	white-space: nowrap;
	vertical-align: top;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table td{
	line-height: 1.3;
	box-sizing: border-box;
	padding: 4px 0 4px 40px;
	vertical-align: top;
}
#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table th::before{
	content: "●";
	margin-right: 5px;
}
#top-page .top_clear_BeforeAfter .text_right{
	text-align: right;
	color: #FFF;
	line-height: 1;
}

@media (max-width: 1000px) {
	#top-page .top_clear_BeforeAfter .subtxt{
		text-align: left
	}
	#top-page .top_clear_BeforeAfter ul{
		flex-direction:column;
	}
	#top-page .top_clear_BeforeAfter ul li:first-child::after{
		transform: translateX(-50%) rotate(90deg);
		top:auto;
		bottom:-46px;
		right:auto;
		left: 50%;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei{
		flex-direction:column;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei h4{
		width: 100%;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table tr,
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table td,
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table th,
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table table{
		width: 100%;
		display: block;
		box-sizing: border-box;
	}
	#top-page .top_clear_BeforeAfter h3 br.sp{
		display: block;
	}
}
@media (max-width: 500px) {
	#top-page .top_clear_BeforeAfter{
		margin-top: 15%;
	}
	#top-page .top_clear_BeforeAfter h3{
		font-size: 8.5vw;
		box-sizing: border-box;
		padding:20px 7% 0px 9%;
	}
	#top-page .top_clear_BeforeAfter .subtxt{
		font-size: 20px;
		line-height: 1.6;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei h4{
		font-size: 18px;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei{
		gap:20px;
	}
	#top-page .top_clear_BeforeAfter{
		padding: 0 5% 20px 5%;
		line-height: 1.3;
	}
	#top-page .top_clear_BeforeAfter .text_right{
		text-align: left;
	}
	
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table th{
		font-weight: 500;
	}
	#top-page .top_clear_BeforeAfter .top_clear_BeforeAfter_rei table td{
		padding: 4px 0 1.0em 1.3em;
	}
	#top-page .top_clear_BeforeAfter ul li span{
		font-size: 20px;
		padding: 10px 5%;
	}
}



/* おすすめ
---------------------------------------------*/
#top-page .clear_osusume{
	position: relative;
	margin-top: 100px;
}
#top-page .clear_osusume .clear_osusume_head{
	position: relative;
}
#top-page .clear_osusume h3{
	width: 60%;
	margin-left: 30%;
	z-index: 1;
	position: relative;
	padding-top: 50px;
	margin-bottom: 50px;
}
#top-page .clear_osusume_p{
	position: absolute;
	top: -92%;
	left: 0;
	width: 50%;
}
#top-page .clear_osusume ul{
	width: 50%;
	margin-left: 48.5%;
	letter-spacing: 0.1em;
	position: relative;
	z-index: 1;
}
#top-page .clear_osusume ul li{
	font-size: 27px;
	line-height: 1.3;
	margin-bottom: 1em;
	font-weight: 500;
	padding-left: 50px;
	text-indent: -50px;
}
#top-page .clear_osusume ul li::before{
	content:"";
	display: inline-block;
	width:40px;
	height:40px;
	background:url("../img/common/ico_check.svg") no-repeat left center;
	background-size: contain;
	margin-right: 15px;
	vertical-align: top;
}

@media (max-width: 1140px) {
	#top-page .clear_osusume h3{
		margin-top: -7vh;
		width: 70%;
		margin-left: 23%;
	}
	#top-page .clear_osusume h3 img{
		width: 100%;
	}
	#top-page .clear_osusume ul{
		width: 60%;
		margin-left: 40%;	
	}
	#top-page .clear_osusume_p{
		top: -60%;
		left: -10%;
		width: 50%;
	}
}
@media (max-width: 1000px) {
	#top-page .clear_osusume ul{
		width: 100%;
		margin-left: auto;
	}
	#top-page .clear_osusume h3{
		padding-top: 5%;
		width: 55%;
		margin-left: 38%;
		margin-bottom: 80px;
	}
	#top-page .clear_osusume h3 img{
		width: 100%;
	}
	#top-page .clear_osusume_p{
		top: -28%;
		left: -14%;
		width: 54%;
	}
}
@media (max-width: 500px) {
	#top-page .clear_osusume ul li{
		font-size: 22px;
		text-indent: -40px;
	}
	#top-page .clear_osusume ul li::before{
		width:30px;
		height:30px;
		margin-right: 8px;
	}
}



/* Merit 
---------------------------------------------*/
#top-page .clear_Merit .phototxt_box li:nth-child(1),
#top-page .clear_Merit .phototxt_box li:nth-child(3) {
	flex-direction:row;
}
#top-page .clear_Merit .phototxt_box li:nth-child(2),
#top-page .clear_Merit .phototxt_box li:nth-child(4) {
	flex-direction: row-reverse;
}
#top-page .clear_Merit .phototxt_box li:nth-child(1) .phototxt_box_photo,
#top-page .clear_Merit .phototxt_box li:nth-child(3) .phototxt_box_photo {
	margin-right: 0;
	margin-left: calc(50% - 50vw);
}
#top-page .clear_Merit .phototxt_box li:nth-child(2) .phototxt_box_photo,
#top-page .clear_Merit .phototxt_box li:nth-child(4) .phototxt_box_photo {
	margin-left: 0;
	margin-right: calc(50% - 50vw);
}
#top-page .clear_Merit .phototxt_box li:nth-child(1) .phototxt_box_photo img,
#top-page .clear_Merit .phototxt_box li:nth-child(3) .phototxt_box_photo img {
	border-radius: 0 16px 16px 0;
}
#top-page .clear_Merit .phototxt_box li:nth-child(2) .phototxt_box_photo img,
#top-page .clear_Merit .phototxt_box li:nth-child(4) .phototxt_box_photo img {
	border-radius: 16px 0 0 16px;
}


/* FLOW 
---------------------------------------------*/
#top-page .clear_Flow ol{
	display:flex;
	gap:80px;
	list-style:none;
	padding:0;
	margin:0;
}
#top-page .clear_Flow ol li{
	width:clamp(160px, 20vw, 220px);
	box-sizing: border-box;
	position:relative;
	background:#0082D8;
	border-radius:20px;
	padding:20px 10px 30px 10px;
	display:flex;
	flex-direction:column;
	align-items:center;
	color:#fff;
}
#top-page .clear_Flow ol li .li_r{
	display:flex;
	align-items:center;
	flex-direction:column;
}

#top-page .clear_Flow ol li::after{
	content:"";
	position:absolute;
	top:4%;
	right:-68px;
	width:68px;
	height:70px;
	background:url("../img/top/clear_flow_01_arrow.svg") no-repeat;
}
#top-page .clear_Flow ol li:last-child::after{
	display:none;
}
#top-page .clear_Flow ol li picture{
	display:block;
	width:100%;
	margin-bottom:10px;
}
#top-page .clear_Flow ol li img{
	width:100%;
	height:auto;
	display:block;
	border-radius:20px;
	margin-bottom: 10px;
}
#top-page .clear_Flow ol li p{
	margin:0;
	font-size:22px;
	line-height:1.3;
	text-align:center;
	letter-spacing: 0.15em;
	writing-mode: vertical-rl;
	text-orientation: upright;
}
#top-page .clear_Flow ol li .muryou{
	font-size:0.9em;
	background-color: #FFE226;
	display: inline-block;
	border-radius: 10px;
	color: #0082D8;
	line-height: 1;
	padding:4px 4px 4px 4px;
	margin-top: 10px;
}
#top-page .clear_Flow ol li .no {
	margin-bottom:15px;
	position: relative;
	font-size: 80px;
	line-height: 1;
	letter-spacing: -0.08em;
	word-break: break-all;
}
#top-page .clear_Flow ol li .no::first-letter {
	color: #26C4FF;
}

@media (max-width: 1400px) {
	#top-page .clear_Flow ol{
		gap:44px;
	}
	#top-page .clear_Flow ol li .no {
		font-size: 50px;
	}
}

@media (max-width: 1000px) {
	#top-page .clear_Flow ol{
		flex-direction:column;	
	}
	#top-page .clear_Flow ol li{
		width: 100%;
		box-sizing: border-box;
		flex-direction:row;
		text-align: left;
		padding:12px 12px 20px 12px;
	}
	#top-page .clear_Flow ol li .no {
		font-size: 18vw;
		width: 30%;
		text-align: center;
		box-sizing: border-box;
		padding:0 2% 0 0;
	}
	#top-page .clear_Flow ol li::after{
		background:url("../img/top/clear_flow_01_arrow_sp.svg") no-repeat;
		right: auto;
		top: auto;
		left: 10%;
		bottom: -50px;
		width: 75px;
		height: 50px;
		z-index: -1;
	}
	#top-page .clear_Flow ol li p{
		writing-mode: horizontal-tb;
		text-orientation: mixed;
		text-align: left;
	}
	#top-page .clear_Flow ol li .li_r{
		align-items: flex-start;
		width: 70%;
		box-sizing: border-box;
	}
	#top-page .clear_Flow ol li .muryou{
		margin-top: 0;
		margin-left: 10px;
		padding:4px 4px 4px 8px;
	}
}

@media (max-width: 500px) {
	#top-page .clear_Flow ol li p{
		letter-spacing: 0em;
	}
}


/* 料金 
---------------------------------------------*/
#top-page .clear_Price {
	display: flex;
	gap:5%;
	align-items: center;
}
#top-page .clear_Price .box_l{
	width: 53%;
	text-align: right;
}
#top-page .clear_Price .box_r{
	width: 47%;
}

#top-page .clear_Price .Midashi_box_02{
	margin-bottom: 0;
}
#top-page .clear_Price .Midashi_box_02 .Midashi_text{
	text-align: right;
	padding-right: 10%;
	box-sizing: border-box;
}
#top-page .clear_Price .Midashi_box_02 .Komidou_text{

	box-sizing: border-box;
	text-align: right;
	padding-right: 10%;
	margin-top: 0;
}
#top-page .clear_Price .Midashi_box_02 .Komidou_text::before {
	content: "";
	position: absolute;
	top: 80%;
	transform: translateY(-50%);
	left: auto;
	width: 1px;
	height: 100px;
	background: #0082D8;
	right: 0;
}
@media (max-width: 1000px) {
	#top-page .clear_Price {
		flex-direction: column;
		gap:0;
	}
	#top-page .clear_Price .box_l{
		width: 100%;
		padding-bottom: 0!important;
		margin-bottom: 0!important;
	}
	#top-page .clear_Price .box_r{
		width: 100%;
	}
	#top-page .clear_Price .Midashi_box_02 .Midashi_text{
		text-align: center;
		padding-right:0;
		margin-bottom: 5%;
	}
	#top-page .clear_Price .Midashi_box_02 .Komidou_text{
		padding-right: 0;
		text-align: center;	
		margin-top: 100px;
	}
	#top-page .clear_Price .Midashi_box_02 .Komidou_text::before {
		content: "";
		position: absolute;
		right: 0;
		top: -100px;
		left: 50%;
		transform: translateX(-50%);
		width: 1px;
		height: 100px;
		background: #0082D8;
	}
}

/* ワイヤー矯正 
---------------------------------------------*/
#top-page .top_wire{}
#top-page .top_wire .top_wire_h3{
	font-size: 44px;
	letter-spacing: 0.1em;
	text-align: center;
}
#top-page .top_wire .top_wire_p{
	text-align: center;
	line-height: 2em;
}
@media (max-width: 1000px) {
	#top-page .top_wire .top_wire_h3{
		font-size: 4.0vw;
	}
}
@media (max-width: 500px) {
	#top-page .top_wire .top_wire_h3{
		font-size: 8.2vw;
	}
	#top-page .top_wire .top_wire_p{
		text-align: left;
	}
}

#top-page .top_wire .mini_txt{
	font-size: 70%;
	text-align: right;
	margin-top: 0.5em;
}




/* ========================

ABOUT

========================== */
#about-page{}
#about-page .kasou-first-view{
	background-image: url("../img/about/main.jpg");
}

@media screen
	and (orientation: portrait)
	and (max-width: 1440px){
	#about-page .kasou-first-view{
		width: calc(100vw - 70px);
		background-image: url("../img/about/main_sp.jpg");
	}
}
@media screen
and (min-aspect-ratio: 4 / 5)
and (max-aspect-ratio: 5 / 4)
and (max-width: 1440px){
	#about-page .kasou-first-view{
		width: calc(100vw - 70px);
		background-image: url("../img/about/main_sp.jpg");
	}
}

@media screen
and (max-width: 800px){
	#about-page .kasou-first-view{
		width: calc(100vw - 70px);
	}
}
@media screen
and (max-width: 500px){
	#about-page .kasou-first-view{
		width: calc(100vw);
	}
}




#about-page .about_certified .bodar_b_h3{
	text-align: center;
}
#about-page .about_certified .bodar_b_h3 h3{
	display: inline-block;
	margin:0 auto;
	border-bottom: 1px dashed #0082D8;
	font-size: 44px;
	line-height: 1.3;
	padding-bottom: 0.3em;
	letter-spacing: 0.1em;
}
#about-page .about_certified .bodar_b_h3 h3::first-letter{
	color: #26C4FF;
}


@media screen and (max-width: 1000px) {
	#about-page .about_certified .bodar_b_h3 h3{
		font-size: 5.5vw;
	}
}




/* about_feature
---------------------------------------------*/
#about-page .about_feature{}
#about-page .about_feature .Column2_box {
	display: flex;
	flex-wrap: wrap;
	gap:2.4%;
	box-sizing: border-box;
}
#about-page .about_feature .Column2_box > * {
	width: 48.6%;
	box-sizing: border-box;
}
#about-page .about_feature .Column2_box li{
	margin-bottom: 40px;
}
#about-page .about_feature .Column2_box li dt{
	font-size: 34px;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
#about-page .about_feature .Column2_box li dd{
	line-height: 1.8;
}

@media screen and (max-width: 800px) {
	#about-page .about_feature .Column2_box {
		flex-direction: column; 
	}
	#about-page .about_feature .Column2_box > * {
		width: 100%;
	}
}
@media screen and (max-width: 500px) {

}


#about-page .phototxt_box02 li .phototxt_box_txt h4{
	font-size: 40px;
	letter-spacing: 0em;
	margin-top: 30px;
	margin-bottom: 10px;
	line-height: 1.3;
	position: relative;
}
#about-page .phototxt_box02 li .phototxt_box_txt h4::first-letter {
	color: #0082D8;
}
#about-page .phototxt_box02 li .phototxt_box_txt h4::before {
	content: "";
	position: absolute;
	left: -50px;
	top: calc(50% - 0.5px);
	width: 40px;
	height: 1px;
	background-color: #0082D8;
}

#about-page .phototxt_box02 li .phototxt_box_dl{
	margin-bottom: 2.5em;
	margin-top: 1em;
}
#about-page .phototxt_box02 li .phototxt_box_dl dt{
	font-size: 26px;
}
#about-page .phototxt_box02 li .phototxt_box_dl dd{
	font-size: 18px;
	text-decoration: underline;
}

#about-page .phototxt_box02 li .box_profile{
	display: flex;
	justify-content: flex-start;
	gap:30px;
	flex: 0 0 100%;
	box-sizing: border-box;
	margin-top: 60px;
}
#about-page .phototxt_box02 li .box_profile dl{
	width: 33.3%;
	box-sizing: border-box;
}
#about-page .phototxt_box02 li .box_profile dl dt{
	border-bottom: 1px solid #ccc;
	margin-bottom: 0.8em;
	padding-bottom: 0.5em;
	font-size: 110%;
}
#about-page .phototxt_box02 li .box_profile dl dd{
	margin-bottom: 0.5em;
}
#about-page .phototxt_box02 li .box_profile dl dd ul li{
	margin-bottom: 0.5em;
	position: relative;
	padding-left: 20px;
	margin-left: 20px;
}
#about-page .phototxt_box02 li .box_profile dl dd ul li::before{
	content: "・";
	margin-right: 10px;
	margin-left: -28px;
}

@media screen and (max-width: 1000px) {	
	#about-page .phototxt_box02 li .box_profile{
		flex-direction: column;
	}
	#about-page .phototxt_box02 li .box_profile dl{
		width: 100%;
	}
	#about-page .phototxt_box02 li .phototxt_box_txt h4{
		margin-top: 0;
	}
}
@media screen and (max-width: 500px) {	
	#about-page .phototxt_box02 li .box_profile{
		margin-top: 10%;
	}
}



/* ========================

PRICE

========================== */
#price-page{}

#price-page .kasou-first-view{
	background-image: url("../img/price/main.jpg");
}
@media screen and (max-width: 500px) {
	#price-page .kasou-first-view{
		background-image: url("../img/price/main_sp.jpg");
	}
}

#price-page .text_center_waku{
	padding: 10px;
	border: dashed 2px #0082D8;
	text-align: center;
	border-radius: 20px;
}



/* ========================

ORTHO

========================== */
#ortho-page{}
#ortho-page .kasou-first-view{
	background-image: url("../img/ortho/main.jpg");
	background-position: right center;
}
@media screen 
and (max-width: 500px)
and (orientation: portrait) {
	#ortho-page .kasou-first-view{
		background-image: url("../img/ortho/main_sp.jpg");
	}
}
@media screen 
and (max-height: 500px)
and (orientation: landscape){
	#ortho-page .kasou-first-view{
		background-position: calc(100% - 70px) center;
	}
}

@media screen 
and (max-width: 500px)
and (orientation: landscape){
	#ortho-page .kasou-first-view{
		background-position: calc(100%) center;
	}
}


#ortho-page .text_center_waku{
	padding: 10px;
	border: dashed 2px #0082D8;
	text-align: center;
	border-radius: 20px;
}

#ortho-page .phototxt_box02 h4{
	font-size: 44px;
	line-height: 1.1;
	letter-spacing: 0.15em;
	margin-top: 0.8em;;
	margin-bottom: 1.0em;
}
#ortho-page .phototxt_box02 dl{
	margin-bottom: 1.5em;
}
#ortho-page .phototxt_box02 dl dt{
	background-image: url("../img/common/ico_check.svg");
	background-position: left 0;
	background-repeat: no-repeat;
	padding-left: 50px;
	padding-top: 3px;
	padding-bottom: 3px;
	font-size: 24px;
	letter-spacing: 0.15em;
}
#ortho-page .phototxt_box02 dl dd{
	line-height: 1.8;
	padding-left: 50px;
}

@media screen and (max-width: 500px) {
	#ortho-page .phototxt_box02 h4{
		font-size: 38px;
	}

}


/*Comparison
---------------------------------------*/
#ortho-page .comparison_box{
	display: flex;
	box-sizing: border-box;
	border-bottom: 1px solid #EBEBEB;
	align-items: flex-start;
	margin-bottom: 2em;
}
#ortho-page .comparison_box .comparison_box_li{
	width: 50%;
	box-sizing: border-box;
}
#ortho-page .comparison_box .comparison_box_li h3{
	text-align: center;
	padding: 15px 20px;
	font-weight: 400;
	border-radius:15px 15px 0 0; 
	font-size: 20px;
	box-sizing: border-box;
	color: #FFF;
}
#ortho-page .comparison_box .comparison_box_li:first-child h3{
	background-color: #26C4FF;
	margin-right: 2%;
}
#ortho-page .comparison_box .comparison_box_li:last-child h3{
	background-color: #0082D8;
	margin-left: 2%;
	box-sizing: border-box;
}
#ortho-page .comparison_box .comparison_box_li img{
	width: 98%;
	box-sizing: border-box;
	margin-bottom: 40px;
	overflow: hidden;
	border-radius: 0 0 20px 20px;
}
#ortho-page .comparison_box .comparison_box_li:first-child img{
	margin-right: 2%;
}
#ortho-page .comparison_box .comparison_box_li:last-child img{
	margin-left: 2%;
}
#ortho-page .comparison_box .comparison_box_li dl{
	margin-bottom: 70px;
	box-sizing: border-box;
	position: relative;
	padding-top: 10px;
}
#ortho-page .comparison_box .comparison_box_li dl:first-child{
}
#ortho-page .comparison_box .comparison_box_li dl dt{
	padding: 10px;
	line-height: 1.0;
	text-align: center;
	border: 1px solid #0082D8;
	border-radius: 20px;
	background-color: #FFF;
	display: inline-block;
	margin: auto;
	position: absolute;
	right: -100px;
	top: -10px;
	width: 200px;
	letter-spacing: 0.15em;
}
#ortho-page .comparison_box .comparison_box_li:first-child dt{

}
#ortho-page .comparison_box .comparison_box_li:last-child dt{
	display: none;
}

#ortho-page .comparison_box .comparison_box_li dl dd{
	line-height: 1.8;
	padding: 0 4% 0 4%;
	margin-top: 50px;
	display: block;
}
#ortho-page .comparison_box .comparison_box_li:first-child dd{
	border-right: 1px solid #EBEBEB;
}
#ortho-page .comparison_box .comparison_box_li:last-child dd{
}

#ortho-page .comparison_box .comparison_box_text{

}
#ortho-page .comparison_box .comparison_box_li .comparison_box_text h4{
	font-size: 24px;
	padding-left: 60px;
	background-image: url("../img/common/ico_check.svg");
	background-position: left top;
	background-repeat: no-repeat;
	
}
#ortho-page .comparison_box .comparison_box_li:last-child .comparison_box_text h4{

	background-image: url("../img/common/ico_check_db.svg");
}
#ortho-page .comparison_box .comparison_box_li .comparison_box_text p{
	padding-left: 60px;
}

#ortho-page .bottom_txt{
	line-height: 2;
}

@media screen and (max-width: 1440px) {
	#ortho-page .comparison_box{
		flex-direction: column;
	}
	#ortho-page .comparison_box .comparison_box_li{
		width: 100%;
	}
	#ortho-page .comparison_box .comparison_box_li:first-child {
		margin-bottom: 10%;
	}
	#ortho-page .comparison_box .comparison_box_li:first-child dt{
		margin: auto;
		position: relative;
		right: -100px;
		top: 0;
		width: 200px;
		left: 50%;
		transform: translateX(-50%);
	}
	#ortho-page .comparison_box .comparison_box_li:last-child dt{
		display:inline-block;
		margin: auto;
		position: relative;
		right: -100px;
		top: 0;
		width: 200px;
		left: 50%;
		transform: translateX(-50%);
	}
	#ortho-page .comparison_box .comparison_box_li dl{
		margin-bottom: 1em;
		padding-top: 1em;
	}
	#ortho-page .comparison_box .comparison_box_li dl dd{
		margin-top: 1em;
		padding: 0;
	}
	#ortho-page .comparison_box .comparison_box_li:first-child dd{
		border-right: 0px;
	}
	#ortho-page .comparison_box .comparison_box_li img{
		width: 100%;
		margin-bottom: 2%;
		margin: 0;
	}
	#ortho-page .comparison_box .comparison_box_li:first-child h3{
		margin-right: 0%;
	}
}
#ortho-page .ortho_Whyaligners br.sp2{
	display: none;
}
@media screen and (max-width: 1000px) {
	#ortho-page .ortho_Whyaligners br.sp2{
		display: block;
	}
}





/* ========================

ACCESS

========================== */
#access-page{}
#access-page .kasou-first-view{
	background-image: url("../img/access/main.jpg");
	background-position: right center;
}
@media screen 
and (max-width: 500px)
and (orientation: portrait) {
	#access-page .kasou-first-view{
		background-image: url("../img/access/main_sp.jpg");
	}
}



#access-page .map_box{
}
#access-page .map_box iframe{
	overflow: hidden;
	border-radius: 20px;
	width: 100%;
	height: 640px;
}
#access-page .map_box dl dt{
	font-size: 34px;
	letter-spacing: 0.05em;
}

#access-page .access_route_ol{
}
#access-page .access_route_ol li{
	margin-bottom: 40px;
	position: relative;
}
#access-page .access_route_ol li:last-child{
	margin-bottom: 0;
}
#access-page .access_route_ol li::after{
	content:"";
	position:absolute;
	background:url("../img/top/clear_flow_01_arrow_sp.svg") no-repeat;
	right: auto;
	top: auto;
	left: 32px;
	bottom: -50px;
	width: 75px;
	height: 50px;
	z-index: -1;
}
#access-page .access_route_ol li:last-child::after{
	background-image: none;
}

#access-page .access_route_ol li dl{
	display: flex;
	align-items: flex-end;
	margin-bottom: 1em;
}
#access-page .access_route_ol li dl dt{
	box-sizing: border-box;
}
#access-page .access_route_ol li dl dt .number{
	word-break: keep-all;
	box-sizing: border-box;
	padding-right: 0.2em;
}
#access-page .access_route_ol li dl dd{
	font-size: 24px;
	box-sizing: border-box;
}


@media screen and (max-width: 1000px) {
	#access-page .access_route_ol .pc{
		display: none;
	}
}
@media screen and (max-width: 500px) {
	#access-page .map_box dl dt{
		font-size: 26px;
	}
	#access-page .access_route_ol li dl{
		flex-direction: column;
		align-items: flex-start;
	}
	#access-page .access_route_ol li dl dt{
		margin-bottom: 10px;
	}
	#access-page .access_route_ol li::after{
		left: 43px;
	}
	#access-page .map_box iframe{
		height: 500px;
	}
}



/* ========================

FAQ

========================== */
#faq-page{}
#faq-page .kasou-first-view{
	background-image: url("../img/faq/main.jpg");
	background-position: center center;
}
@media screen 
and (max-width: 1000px)
and (orientation: portrait){
	#faq-page .kasou-first-view{
		background-image: url("../img/faq/main_sp.jpg");
		background-position: left center;
	}
}
@media screen 
and (max-width: 500px)
and (orientation: landscape){
	#faq-page .kasou-first-view{
		background-image: url("../img/faq/main_sp.jpg");
	}
}
@media screen 
and (max-height: 500px)
and (orientation: landscape){
	#faq-page .kasou-first-view{
		background-position: center -20px;
	}
}
@media screen 
and (max-width: 500px)
and (max-height: 500px)
and (orientation: landscape){
	#faq-page .kasou-first-view{
		background-image: url("../img/faq/main.jpg");
		background-position: center 0px;
	}
}



#faq-page .faq_list{}
#faq-page .faq_list .faq_box{
	box-shadow: 0 0px 10px rgba(0, 0, 0, 0.20);
	border-radius: 20px;
	margin-bottom: 20px;
}
#faq-page .faq_list .faq_box:last-child{
	margin-bottom: 0px;
}
#faq-page .faq_list .faq_box dt{
	font-size: 24px;
	line-height: 1.3;
	padding:30px 80px 30px 80px;
	cursor: pointer;
	position: relative;
	background-image: url("../img/faq/icon_q.svg");
	background-repeat: no-repeat;
	background-position: 30px center;

}
#faq-page .faq_list .faq_box dt::after{	
	content: "";
	display: block;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	width: 34px;
	height: 18px;
	background: url("../img/faq/arrow_faq_top.svg") no-repeat;
	transition: transform 0.25s ease;
}
#faq-page .faq_list .faq_box dt:hover::after{
	transform: translateY(calc(-50% + 6px));
}
#faq-page .faq_list .faq_box dt.open::after{
	transform: scaleY(-1);
	top: 45%;
}
#faq-page .faq_list .faq_box dt.open:hover::after{
	transform: scaleY(-1) translateY(calc(-45% + 14px));
}

#faq-page .faq_list .faq_box dd{
	padding: 0 30px 30px 90px;
	line-height: 1.8;
	display: none;
	font-size: 18px;
}

@media screen and (max-width: 500px) {
	#faq-page .faq_list .faq_box dd{
		padding: 0 5% 30px 5%;
	}
	#faq-page .faq_list .faq_box dt{
		font-size: 22px;
		padding:30px 45px 30px 70px;
		background-position: 7% center;
	}
	#faq-page .faq_list .faq_box dt::after{	
		right: 5%;
		top: 50%;
		width: 20px;
		height: 10px;
		background-size:auto 100% ;
	}

}



/* ========================

NEWS

========================== */
#news-page{}
#news-page .kasou-first-view{
	background-image: url("../img/news/main.jpg");
	background-position: center top;
}
@media screen 
and (max-width: 500px)
and (orientation: portrait) {
	#news-page .kasou-first-view{
		background-image: url("../img/news/main_sp.jpg");
		background-position: center center;
	}
}


/* categoryLINK 
---------------------------------------------*/
#news-page .news_category{
	text-align:right;
	position: relative;
	z-index: 1;
}
#news-page .news_category ul{
	display: flex;
	gap:10px;
	justify-content: flex-end;
}
#news-page .news_category a{
	display:inline-flex;
	align-items:center;
	padding:10px 75px 10px 20px;
	letter-spacing:0.15em;
	color:#fff;
	text-decoration:none;
	background-color: #0082D8;
	border-radius: 20px;
	box-sizing: border-box;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.20);
	position: relative;
	line-height: 1;
}
#news-page .news_category .label{
	display:inline-flex;
	align-items:center;
	margin: 20px 0;
}
#news-page .news_category .label::after{
	content:"";
	width:1px;
	height:3.5em;
	background:#fff;
	position: absolute;
	right: 60px;
	top: 50%;
	transform: translateY(-50%);
}
#news-page .news_category a::after{
	content:"";
	width:16px;
	height:20px;
	position: absolute;
	right: 24px;
	background:url("../img/common/ico_arrow_b.svg") no-repeat center / contain;
	transition:transform 0.25s ease;
}
#news-page .news_category a:hover::after{
	transform:translateY(6px);
}

@media screen and (max-width: 500px) {
	#news-page .news_category ul{
		gap:2%;
		justify-content: center;
	}
	#news-page .news_category ul li{
		width: 100%;
		box-sizing: border-box;
	}
	#news-page .news_category ul li a{
		width: 100%;
		padding:10px 30% 10px 10%;
	}
	#news-page .news_category .label::after{
		right: 28%;
	}
	#news-page .news_category a::after{
		right: 10%;
	}
}
@media screen and (max-width: 320px) {
	#news-page .news_category ul{
		flex-direction: column;
		gap:10px;
	}
	#news-page .news_category .label::after{
		right: 25%;
	}
	#news-page .news_category ul li a{
		padding:5px 30% 5px 10%;
	}
}


/* news_list_ul 
---------------------------------------------*/
#news-page .news_list .news_list_ul{
	border-top: 1px solid #EBEBEB;
}

#news-page .news_list .news_list_ul li{
	border-bottom: 1px solid #EBEBEB;
	box-sizing: border-box;
}
#news-page .news_list .news_list_ul li a{
	display: flex;
	gap:25px;
	align-items: center;
	text-decoration: none;
	color: #000;
	padding:10px 60px 10px 0;
	box-sizing: border-box;
	position: relative;
}
#news-page .news_list .news_list_ul li a::after{
	content:"";
	width:16px;
	height:20px;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
	background:url("../img/common/ico_arrow_r.svg") no-repeat center / contain;
	transition: right 0.2s ease;
}
#news-page .news_list .news_list_ul li a:hover::after{
	right:14px;
}
#news-page .news_list .news_list_ul li img{
	width: 130px;
	height: auto;
	border-radius: 20px;
}
#news-page .news_list .news_list_ul li dt{
	font-size: 14px;
	line-height: 1;
	margin-bottom: 10px;
}
#news-page .news_list .news_list_ul li dd{
	font-size: 20px;
	line-height: 1.3;
}

@media screen and (max-width: 500px) {
	#news-page .news_list .news_list_ul li img{
		width: 30%;
	}
	#news-page .news_list .news_list_ul li dd{
		font-size: 18px;
	}
	#news-page .news_list .news_list_ul li a{
		gap:5%;
		padding:14px 50px 10px 0;
	}
}



/*pagination
---------------------------------------*/
.pagination{
	text-align: center;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}
.pagination a{
	text-decoration: none;
	display: block;
}
.pagination .pagination__list{
    display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.pagination .pagination__list li{
	margin-bottom: 20px;
}
.pagination .pagination__list .pagination__item,
.pagination .pagination__list .pagination__item--current {
	box-sizing: border-box;
    text-align: center;
    line-height: 50px;
    margin-right: 10px;
    border: 1px solid #0082D8;
	border-radius: 50%;
}
.pagination .pagination__list li:last-child{
    margin-right: 0px!important;	

}
.pagination .pagination__list .pagination__item a,
.pagination .pagination__list .pagination__item--current{
	display: block;
    height: 50px;
    width: 50px!important;
	box-sizing: border-box;
	border-radius: 50%;
	color: #0082D8;
}
.pagination.column_page_link .pagination__list .pagination__item a{
    width: auto!important;
	padding: 0px 25px;
}

.pagination .pagination__list .pagination__item a{
	transition-duration: 0.8s;
	transition-delay: 0.01s;
}
.pagination .pagination__list .pagination__item a:hover{
	background: rgba(0, 130, 216, 0.2);
}
.pagination .pagination__list li:nth-child(n+10){
	display: none;
}

.pagination .pagination__list li:nth-child(n+6){
	display: none;
}

.pagination .pagination__list .pagination__item--current {
    background: #0082D8;
	border: #0082D8;
    color: #FFFFFF;
    padding: 0;
}
.pagination .pagination_waku{
	position: relative;
	display: inline-block;
}
.pagination .pagination__btn--prev{
	position: absolute;
	left: -63px;
	top: 0;
    border: 1px solid #0082D8;
	border-radius: 50%;
    height: 50px;
	width: 50px;
	box-sizing:border-box;
}
.pagination .pagination__btn--next{
	position: absolute;
	right: -63px;
	top: 0;
    border: 1px solid #0082D8;
	border-radius: 50%;
    height: 50px;
	width: 50px;
}
.pagination .pagination__btn--prev a,
.pagination .pagination__btn--next a,
.pagination .pagination__btn--prev span,
.pagination .pagination__btn--next span{
	box-sizing:border-box;
	display: flex;
	justify-content: center;
	height: 100%;
	width: 100%;
	padding-top: 32%;
	padding-bottom: 32%;
	transition-duration: 0.8s;
	transition-delay: 0.01s;
	border-radius: 50%;
}
.pagination .pagination__btn--prev a:hover,
.pagination .pagination__btn--next a:hover{
	background: rgba(0, 130, 216, 0.2);
}

.pagination .pagination__btn--prev img,
.pagination .pagination__btn--next img{
	opacity: 0.3;
}
.pagination .pagination__btn--prev a img,
.pagination .pagination__btn--next a img{
	opacity: 1;
}
@media screen and (max-width: 640px){
	.pagination .pagination_waku{
		width: 100%;
	}
	.pagination .pagination__list li{
		display: none!important;
	}
	.pagination{
		width: 100%;
	}
	.pagination .pagination__btn--prev{
		left: 0px;
	}
	.pagination .pagination__btn--next{
		right: 0px;
	}
}


/*---------------------------------------------
詳細 
---------------------------------------------*/
#news-page .news_box .h2_news{
	font-size: 40px;
	position: relative;
	line-height: 1.3;
	padding-left: 20px;
}
#news-page .news_box .h2_news::before{
	content: "";
	position: absolute;
	left: -50px;
	top: calc(50% - 0.5px);
	width: 60px;
	height: 1px;
	background-color: #0082D8;
}
#news-page .news_box .h2_news::first-letter{
	color: #0082D8;;
}
#news-page .news_box .day{
	margin: 0;
	padding-left: 20px;
}

#news-page .news_box .details_entry{
	margin-top: 80px;
	font-size: 18px;
	line-height: 2em;
}
#news-page .news_box .details_entry p{
	margin-bottom: 1.2em;
}
#news-page .news_box .details_entry img{
}


@media screen and (max-width: 500px){
	#news-page .news_box .details_entry{
		margin-top: 10%;
	}
	#news-page .news_box .h2_news{
		font-size: 8.2vw;
	}
}

#news-page .news_box .details_entry .wp-block-list li{
}
#news-page .news_box .details_entry .wp-block-list li::before{
	content: "・";
	margin-right: 10px;
}
#news-page .news_box .details_entry h3{
	font-size: 24px;
	margin-bottom: 1em;
}
#news-page .news_box .details_entry h4{
	font-size: 20px;
	margin-bottom: 1em;
}


/*details_entry_link
---------------------------------------*/
.details_entry_link ul{
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	gap:20px;
	position: relative;
}
.details_entry_link ul li{
	display: flex;
	justify-content: center;
	align-items: center;
}
.details_entry_link ul li a{
	display: inline-block;
	text-decoration: none;
	background-repeat: no-repeat;
}

.details_entry_link ul li.center{
	text-align: center;
}
.details_entry_link ul li.center a{
	border: 1px solid #0082D8;
	padding: 15px 25px;
	display: inline-block;
	border-radius: 30px;
	transition-duration: 0.8s;
	transition-delay: 0.01s;
}
.details_entry_link ul li.center a:hover{
	background: rgba(0, 130, 216, 0.2);
}

.details_entry_link ul li.back,
.details_entry_link ul li.next{
    height: 50px;
	width: 50px;
	box-sizing:border-box;
}
.details_entry_link ul li.back a,
.details_entry_link ul li.next a{
	box-sizing: border-box;
    border: 1px solid #0082D8;
	border-radius: 50%;
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.details_entry_link ul li.back a:hover,
.details_entry_link ul li.next a:hover{
	background: rgba(0, 130, 216, 0.2);
}


#news-page .news_box .news_osusume_list{
	display: flex;
	align-items: flex-start;
	gap:40px;
	margin-top: 50px;
}
#news-page .news_box .news_osusume_list li{
	flex: 0 0 calc((100% - 120px) / 5);
	line-height: 1.3;
}
#news-page .news_box .news_osusume_list li a{
	text-decoration: none;
	color: #000;
}
#news-page .news_box .news_osusume_list li img{
	border-radius: 20px;
	width: 100%;
	margin-bottom: 20px;
	height: auto;
}
#news-page .news_box .news_osusume_list li a:hover dd{
	text-decoration: underline;
}


@media screen and (max-width: 1000px){
	#news-page .news_box ul.news_osusume_list{ 
		flex-direction: column;
		border-top: 1px solid #EBEBEB;
		gap:0px;
	}
	#news-page .news_box .news_osusume_list li{
		border-bottom: 1px solid #EBEBEB;
		width: 100%;
		padding-top:10px;
		padding-bottom:10px;
		position: relative;
	}
	#news-page .news_box .news_osusume_list li dl{
		display: flex;
		align-items: center;
	}
	#news-page .news_box .news_osusume_list li img{
		width: 130px;
		margin-bottom: 0;
		height: auto;
	}
	#news-page .news_box .news_osusume_list li dt{
		margin-right: 30px;
	}
	#news-page .news_box .news_osusume_list li dd{
		padding-right: 50px;
	}
	
	#news-page .news_box .news_osusume_list li a::after{
		content:"";
		width:16px;
		height:20px;
		position: absolute;
		right: 24px;
		top: 50%;
		transform: translateY(-50%);
		background:url("../img/common/ico_arrow_r.svg") no-repeat center / contain;
		transition: right 0.2s ease;
	}
	#news-page .news_box .news_osusume_list li a:hover::after{
		right:14px;
	}
	#news-page .news_box .news_osusume_list li a:hover dd{
		text-decoration: none;
	}
}
@media screen and (max-width: 500px){
	#news-page .news_box .news_osusume_list li dt{
		width: 30%;
		margin-right: 5%;
	}
}

