@charset "UTF-8";
 .page_title {
background: url(//www.nitta-dental.com/img/orthodontics/page_title.jpg) no-repeat center center;
}
main .bg_green .bg_green_in {
padding-top: 90px;
padding-bottom: 100px; }
main .comment01 {
margin-bottom: 2.5em;
}
main .about > section:not(:last-of-type) {
margin-bottom: 100px;
}
main .about > section > .comment:not(:last-child) {
margin-bottom: 60px;
}
main .about > section > .comment p:not(:last-of-type) {
margin-bottom: 1.2em;
}
main .about > section > .box section:not(:last-of-type) {
margin-bottom: 60px;
}
main .about > section > .box section.flex {
display: flex;
}
main .about > section > .box section.flex .box_l {
width: 540px;
margin-right: 20px;
}
main .about > section > .box section.flex .img01 {
position: relative;
top: -50px;
max-width: 325px;
margin-bottom: -50px;
margin-left: auto;
}
main .about > section > .box section.flex .img02 {
max-width: 325px;
overflow: hidden;
border-radius: 10px;
margin-left: auto;
}
main .about > section > .box section .youtube_box {
position: relative;
max-width: 640px;
padding-top: 56.25%;
margin: 0 auto;
}
main .about > section > .box section .youtube_box iframe {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
}
main .about > section > .case section {
position: relative;
padding-left: 30px;
} 
main .about > section > .case section:last-of-type {
padding-bottom: 40px;
} 
main .about > section > .case section:not(:last-of-type) {
padding-bottom: 50px;
margin-bottom: 20px;
border-bottom: dotted 1px #808080;
} 
main .about > section > .case section::before {
position: absolute;
top: 0;
left: 0;
width: 14px;
height: calc(100% - 40px);
border-radius: 7px;
background: #FFF;
content: '';
} 
main .about > section > .case section h5 {
font-size: 2.2rem;
font-weight: 700;
margin-bottom: .5em;
} 
main .about > section > .case section .box {
display: flex;
align-items: center;
} 
main .about > section > .case section .box dl dt {
position: relative;
padding-left: 1.3em;
font-size: 1.8rem;
font-weight: 700;
margin-bottom: .6em;
color: #69ba46;
} 
main .about > section > .case section .box dl dt::before {
position: absolute;
top: .4em;
left: 0;
width: .8em;
height: .8em;
background: #69ba46;
content: '';
} 
main .about > section > .case section .box.photo01 dl {
max-width: 580px;
margin-right: 20px;
} 
main .about > section > .case section .box.photo02 dl {
max-width: 300px;
margin-right: 20px;
} 
main .about > section > .case section .box ul {
display: flex;
margin-left: auto;
} 
main .about > section > .case section .box ul li {
width: 235px;
}
main .about > section > .case section .box ul li:not(:last-of-type) {
margin-right: 35px;
} 
main .about > section > .case section .box ul li span {
display: block;
overflow: hidden;
border: solid 2px #FFF;
border-radius: 10px;
} 
main .about > section > .case + .caution {
border: solid 1px #69ba46;
padding: .6em 1em;
text-align: center;
color: #69ba46;
font-weight: 700;
margin-bottom: 3em;
} 
main .about > section > .case + .caution + .comment {
position: relative;
z-index: 1;
padding-right: calc(100% - 55.5%);
} 
main .about > section > .case + .caution + .comment span {
position: absolute;
top: 30px;
right: 0;
z-index: -1;
width: 56%;
} 
main .deduction {
padding: 100px 0;
background: url(//www.nitta-dental.com/img/common/dot_line.svg) repeat-x center bottom;
}
main .deduction .box {
background: #eff1f1;
border: dashed 1px #ee7800;
padding-bottom: 40px;
}
main .deduction .box h3 {
display: flex;
justify-content: center;
margin-bottom: 60px;
}
main .deduction .box h3 span {
display: block;
color: #FFF;
background: rgb(238,120,0);
background: -moz-linear-gradient(left,  rgba(238,120,0,1) 0%, rgba(225,96,0,1) 100%);
background: -webkit-linear-gradient(left,  rgba(238,120,0,1) 0%,rgba(225,96,0,1) 100%);
background: linear-gradient(to right,  rgba(238,120,0,1) 0%,rgba(225,96,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ee7800', endColorstr='#e16000',GradientType=1 );
font-size: 2.0rem;
font-weight: 700;
padding: .5em 1.5em;
border-radius: 0 0 10px 10px;
}
main .deduction .box h3 + .comment {
padding: 0 60px;
margin-bottom: 50px;
}
main .deduction .box h3 + .comment p:not(:last-of-type) {
margin-bottom: 1.2em;
}
main .deduction .box .box_in {
padding: 0 60px;
}
main .deduction .box .box_in section:not(:last-of-type) {
margin-bottom: 60px
}
main .deduction .box .box_in section h4 {
display: flex;
justify-content: center;
margin-bottom: 20px;
}
main .deduction .box .box_in section h4 span {
min-width: 460px;
background: #FFF;
padding: .5em .6em;
font-size: 1.9rem;
font-weight: 700;
text-align: center;
color: #ee7800;
border-radius: 1.5em;
}
main .deduction .box .box_in section .comment p:not(:last-of-type) {
margin-bottom: 1.2em;
}
main .deduction .box .box_in section .price {
padding: 30px 0;
display: flex;
justify-content: center;
}
main .deduction .box .box_in section .price span {
display: block;
border: dashed 1px #595757;
padding: .5em 1em;
orientation: 1.9rem;
font-weight: 500;
}
main .deduction .box .box_in section .price span em {
color: #ee7800;
font-weight: 500;
}
main .deduction .box .box_in section table {
width: 100%;
margin-bottom: 20px;
}
main .deduction .box .box_in section table tr th ,
main .deduction .box .box_in section table tr td {
padding: 1em 1em;
vertical-align: middle;
}
main .deduction .box .box_in section table tr th {
position: relative;
padding-left: 0;
font-size: 1.7rem;
font-weight: 500;
color: #ee7800;
white-space: nowrap;
}
main .deduction .box .box_in section table tr th::after {
position: absolute;
top: .5em;
right: 0;
width: 1px;
height: calc(100% - 1em);
background: #595757;
content: '';
}
main .deduction .box .box_in section table tr td em {
font-size: 1.4rem;
}
main .deduction .box .box_in section .caution {
text-align: center;
color: #ee7800;
margin-bottom: 1.5em;
}
@media screen and (max-width: 767px) {
main .bg_green .bg_green_in {
padding-top: 10vw;
padding-bottom: 20vw; }
main .comment01 {
margin-bottom: 2.5em;
}
main .about > section:not(:last-of-type) {
margin-bottom: 15vw;
}
main .about > section > .comment:not(:last-child) {
margin-bottom: 10vw;
}
main .about > section > .comment p:not(:last-of-type) {
margin-bottom: 1.2em;
}
main .about > section > .box section:not(:last-of-type) {
margin-bottom: 10vw;
}
main .about > section > .box section.flex {
display: flex;
flex-direction: column;
}
main .about > section > .box section.flex .box_l {
width: 100%;
margin-right: 0;
margin-bottom: 5vw;
}
main .about > section > .box section.flex .img01 {
position: relative;
top: inherit;
max-width: 100%;
margin-bottom: 0;
margin-left: 0;
}
main .about > section > .box section.flex .img02 {
max-width: 100%;
overflow: hidden;
border-radius: 10px;
margin-left: 0;
}
main .about > section > .box section .youtube_box {
position: relative;
max-width: 100%;
padding-top: 56.25%;
margin: 0 auto;
}
main .about > section > .box section .youtube_box iframe {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
}
main .about > section > .case section {
position: relative;
padding-left: 5vw;
} 
main .about > section > .case section:last-of-type {
padding-bottom: 10vw;
} 
main .about > section > .case section:not(:last-of-type) {
padding-bottom: 8vw;
margin-bottom: 8vw;
border-bottom: dotted 1px #808080;
} 
main .about > section > .case section::before {
position: absolute;
top: 0;
left: 0;
width: 2vw;
height: calc(100% - 8vw);
border-radius: 1vw;
content: '';
} 
main .about > section > .case section h5 {
font-size: 2.0rem;
font-weight: 700;
margin-bottom: .5em;
} 
main .about > section > .case section .box {
display: flex;
align-items: center;
flex-direction: column;
} 
main .about > section > .case section .box dl dt {
position: relative;
padding-left: 1.3em;
font-size: 1.8rem;
font-weight: 700;
margin-bottom: .6em;
color: #69ba46;
} 
main .about > section > .case section .box dl dt::before {
position: absolute;
top: .4em;
left: 0;
width: .8em;
height: .8em;
background: #69ba46;
content: '';
} 
main .about > section > .case section .box.photo01 dl {
max-width: 100%;
margin-right: 0;
margin-bottom: 5vw;
} 
main .about > section > .case section .box.photo02 dl {
max-width: 100%;
margin-right: 0;
margin-bottom: 5vw;
} 
main .about > section > .case section .box ul {
display: flex;
flex-direction: column;
margin-left: 0;
} 
main .about > section > .case section .box ul li {
width: 100%;
}
main .about > section > .case section .box ul li:not(:last-of-type) {
margin-right: 0;
margin-bottom: 3vw;
} 
main .about > section > .case section .box ul li span {
display: block;
overflow: hidden;
border: solid 2px #FFF;
border-radius: 10px;
} 
main .about > section > .case + .caution {
border: solid 1px #69ba46;
padding: .6em 1em;
text-align: left;
color: #69ba46;
font-weight: 700;
margin-bottom: 3em;
} 
main .about > section > .case + .caution + .comment {
position: relative;
z-index: 1;
padding-right: 0;
margin-bottom: 5vw;
} 
main .about > section > .case + .caution + .comment span {
position: relative;
top: inherit;
right: inherit;
z-index: -1;
width: 100%;
} 
main .deduction {
padding: 5vw 0;
background: url(//www.nitta-dental.com/img/common/dot_line.svg) repeat-x center bottom;
}
main .deduction .box {
padding-bottom: 10vw;
}
main .deduction .box h3 {
margin-bottom: 5vw;
}
main .deduction .box h3 span {
font-size: 2.0rem;
padding: .5em 1em;
}
main .deduction .box h3 + .comment {
padding: 0 4vw;
margin-bottom: 10vw;
}
main .deduction .box h3 + .comment p:not(:last-of-type) {
margin-bottom: 1.2em;
}
main .deduction .box .box_in {
padding: 0 4vw;
}
main .deduction .box .box_in section:not(:last-of-type) {
margin-bottom: 10vw
}
main .deduction .box .box_in section h4 {
display: flex;
justify-content: center;
margin-bottom: 5vw;
}
main .deduction .box .box_in section h4 span {
min-width: 100%;
padding: .5em .6em;
font-size: 1.8rem;
text-align: left;
border-radius: 10px;
}
main .deduction .box .box_in section .price {
padding: 5vw 0;
display: flex;
justify-content: center;
flex-direction: column;
}
main .deduction .box .box_in section .price span {
display: block;
border: dashed 1px #595757;
padding: .5em 1em;
font-size: 1.7rem;
}
main .deduction .box .box_in section table {
width: 100%;
margin-bottom: 5vw;
}
main .deduction .box .box_in section table tr th ,
main .deduction .box .box_in section table tr td {
display: block;
padding: 1em 0;
vertical-align: middle;
}
main .deduction .box .box_in section table tr th {
position: relative;
padding-left: 0;
padding-bottom: 0;
font-size: 1.6rem;
white-space: wrap;
}
main .deduction .box .box_in section table tr th::after {
display: none;
}
main .deduction .box .box_in section table tr td em {
font-size: 1.4rem;
}
main .deduction .box .box_in section .caution {
text-align: left;
color: #ee7800;
margin-bottom: 1.5em;
}
}