* {
    font-family: "Noto Sans SC", serif !important;
}

body {
    width: 100%
}

address,
blockquote,
body,
caption,
code,
dd,
del,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
ins,
legend,
li,
ol,
p,
pre,
table,
td,
th,
ul,
var {
    margin: 0;
    padding: 0;
    font-style: normal;
    font-weight: 400;
    border: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    line-height: 1
}

em {
    font-style: normal;
    color: #860b27
}

strong {
    font-style: normal;
    font-weight: 700
}

sub {
    font-size: smaller
}

body,
html {
    height: 100%
}

body {
    background: #fff;
    color: #4d4d4c;
    font-family: "Noto Sans SC", serif !important;
    font-size: 88%;
    text-align: center
}

body.small {
    font-size: 88%
}

body.medium {
    font-size: 100%
}

body.large {
    font-size: 112%
}

ol,
ul {
    list-style-type: none
}

table {
    border-collapse: collapse;
    empty-cells: show
}

td,
th {
    line-height: 1.7;
    text-align: left;
    vertical-align: top
}

img {
    vertical-align: bottom;
    border: none
}

input {
    vertical-align: middle
}

a:active,
a:hover,
a:link,
a:visited {
    color: #1682c5;
    text-decoration: underline
}

a:visited {
    color: #7f7f7f
}

a:active,
a:hover {
    text-decoration: none
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
}

.clearfix {
    display: inline-block
}

* html .clearfix {
    height: 1%
}

.clearfix {
    display: block
}

body {
    background: #f9f4eb
}

div.page {
    position: relative;
    margin: 0 auto;
    padding: 35px 0 20px;
    width: 1018px;
    background: #fff;
    text-align: left;
    border: 1px solid #e3e3e3;
    border-top: 0
}

div.content {
    padding: 0 19px
}

div.content:after {
    content: "";
    display: block;
    clear: both
}

div#main {
    float: right;
    width: 710px;
    line-height: 1.7
}

* html div#main {
    overflow: hidden
}

strong.important {
    color: #870b28
}

em.important {
    color: #c00;
    background: 0 0
}

.button {
    display: block;
    position: relative;
    overflow: hidden
}

.button img {
    position: relative;
    top: 0
}

.nav:after {
    content: "";
    display: block;
    clear: both
}

.nav li {
    display: inline;
    float: left
}

p.page-top {
    clear: both;
    margin: 0 0 20px;
    text-align: right
}

p.page-top a {
    display: inline-block;
    padding-left: 20px;
    background: url(../image/icon_arrows.png) 0 3px no-repeat
}

* html p.page-top a {
    background-image: url(../image/icon_arrows.gif)
}

p.banner {
    margin: 3.4em 0;
    text-align: center
}

ul.banner {
    clear: both;
    margin: 15px 0
}

ul.banner li {
    float: left;
    margin-right: 10px;
    width: 220px;
    font-size: smaller
}

ul#foreign {
    margin-bottom: 10px;
    padding: 10px 0;
    width: 100%;
    border-bottom: 1px dotted #e8e8e8
}

ul#foreign li {
    float: right;
    padding-left: 15px
}

div#sidebar {
    position: fixed;
    top: 75px;
    right: 0;
    padding-top: 34px;
    width: 41px;
    background: url(../image/bg_sidebar.gif) no-repeat;
    z-index: 100
}

div#sidebar ul li {
    margin-bottom: 10px;
    text-align: right
}

* html body {
    background: url(null) fixed
}

.sub-display,
.sub-display-inline {
    display: none
}

.sub-display-g,
.sub-display-inline-g {
    display: none
}

p.att-tax {
    color: #c00
}

#side #sub-current-category ul li {
    padding: 13px
}

div#func-area {
    position: absolute;
    top: 0;
    left: 0;
    padding: 4px 34px 6px 30px;
    width: 954px;
    background: url(../image/bg_funcarea.gif) repeat-x
}

* html div#func-area {
    width: 1018px
}

div#func-area:after {
    content: "";
    display: block;
    clear: both
}

dl#font-size {
    float: right;
    width: 151px;
    border-left: 1px solid #ccc
}

dl#font-size:after {
    content: "";
    display: block;
    clear: both
}

dl#font-size dd,
dl#font-size dt {
    float: left;
    padding: 5px 0 4px;
    font-size: 0;
    line-height: 0
}

dl#font-size dt {
    padding-left: 14px;
    border-left: 1px solid #fff
}

dl#font-size span.button {
    float: left;
    padding-right: 2px;
    margin-right: 5px;
    width: 16px;
    height: 16px;
    cursor: pointer
}

dl#font-size span img {
    top: -16px
}

dl#font-size span img.selected,
dl#font-size span:hover img {
    top: 0
}

dl#font-size span#small img {
    left: 0
}

dl#font-size span#medium img {
    left: -23px
}

dl#font-size span#large img {
    left: -46px
}

div#header h1 {
    color: #929292;
    font-size: 76%;
    line-height: 28px
}

p#logo {
    float: left;
    padding: 25px 17px 0 0
}

p#tel {
    float: right;
    margin-top: -30px;
    width: 343px
}

* html p#tel {
    padding-left: 0
}

ul.action {
    margin-top: 28px
}

ul.action:after {
    content: "";
    display: block;
    clear: both
}

ul.action li {
    float: left;
    margin-right: 15px
}

ul.action li.button {
    height: 28px
}

li#action-mail {
    width: 105px
}

li#action-reserve {
    width: 148px
}

li#action-pamphlet {
    width: 166px
}

li#action-mail img {
    left: 0
}

li#action-reserve img {
    left: -127px
}

li#action-pamphlet img {
    left: -297px
}

ul#gn {
    clear: both;
    padding-top: 16px;
    width: 980px
}

ul#gn li {
    height: 34px
}

ul#gn li#gn-operation {
    width: 121px
}

ul#gn li#gn-price {
    width: 124px
}

ul#gn li#gn-photo {
    width: 123px
}

ul#gn li#gn-process {
    width: 168px
}

ul#gn li#gn-clinicmap {
    width: 155px
}

ul#gn li#gn-doctor {
    width: 141px
}

ul#gn li#gn-about-takasu {
    width: 148px
}

ul#gn li a img {
    top: -34px
}

ul#gn li a.current img,
ul#gn li a:hover img {
    top: 0
}

ul#gn li#gn-operation img {
    left: 0
}

ul#gn li#gn-price img {
    left: -121px
}

ul#gn li#gn-photo img {
    left: -245px
}

ul#gn li#gn-process img {
    left: -368px
}

ul#gn li#gn-clinicmap img {
    left: -536px
}

ul#gn li#gn-doctor img {
    left: -691px
}

ul#gn li#gn-about-takasu img {
    left: -832px
}

div#header ul.gn-bg {
    background: url(../image/bg_gn.gif) no-repeat left bottom;
    padding-left: 60px
}

div#breadcrumb div {
    float: left;
    font-size: smaller;
    line-height: 32px
}

div#footer {
    margin: 35px 18px 0;
    padding: 25px 20px;
    background: #f9f4eb;
    line-height: 1.7;
    text-align: left
}

div#footer:after {
    content: "";
    display: block;
    clear: both
}

div#footer a {
    color: #525252
}

div#footer div.column {
    margin: 0 0 5px;
    width: 800px
}

div#footer div.column:after {
    content: "";
    display: block;
    clear: left
}

div#footer dl {
    display: inline;
    float: left;
    margin-right: 20px;
    padding: 10px 0 5px;
    width: 140px;
    border-top: 1px dotted #999
}

div#footer-menu dl {
    padding-top: 0;
    border: 0
}

div#footer-menu dl#skin-menu {
    margin-right: 0;
    width: 320px;
    overflow: hidden
}

div#footer-menu dl#skin-menu dd {
    width: 100%
}

div#footer-menu dl#skin-menu ul {
    float: left;
    margin-right: 20px;
    width: 140px
}

div#footer dt {
    font-weight: 700
}

div#footer dd {
    font-size: smaller;
    line-height: 2
}

div#footer dt span.menu-link {
    font-size: smaller !important;
    line-height: 2;
    font-weight: 400
}

div#footer ul.banner {
    clear: none;
    margin: 0;
    width: 800px;
    overflow: hidden
}

div#footer ul.banner li {
    float: left;
    margin-right: 10px;
    width: auto;
    color: #74141f
}

div#footer ul.banner li#smartphone-area {
    margin-bottom: 10px;
    padding: 39px 100px 28px 522px;
    width: 158px;
    height: 80px;
    background: url(../image/bg_smartphone.jpg) left top no-repeat
}

div#footer ul.banner li#attention {
    width: 130px;
    margin: 0 0 35px 0
}

div#footer ul.banner li.ishikai-area {
    width: 220px
}

div#footer ul.banner li.ishikai-area img {
    margin-bottom: 5px
}

div#footer ul.banner li.ishikai-area a:hover {
    text-decoration: none
}

div#footer ul.banner li.ishikai-area a:hover span {
    text-decoration: underline
}

div#footer div#contact-us {
    float: right;
    margin-left: -20px;
    width: 142px
}

div#footer div#contact-us dl {
    display: block;
    float: none;
    margin: 0 0 25px;
    padding: 0;
    width: 142px;
    border: 0
}

div#footer .multiple-item {
    margin-top: 1.5em
}

p#copyright {
    padding: 10px 0 20px;
    line-height: 2
}

div#footer a:link,
div#footer a:visited,
p#copyright a:link,
p#copyright a:visited {
    color: #666;
    text-decoration: none
}

div#footer a:active,
div#footer a:hover {
    text-decoration: underline
}

#registration {
    clear: both;
    font-size: 82%;
    padding: 1.4em 0
}

div#registration {
    padding: 1.7em 19px
}

#feature p#registration {
    padding: 0
}

.registration-border {
    border-top: 1px solid #ccc
}

div#side {
    position: relative;
    width: 240px
}

div.side-menu {
    margin-bottom: 20px;
    padding: 7px 6px;
    background: #f4f4f4;
    text-align: left
}

div.side-menu dl {
    padding-bottom: 12px;
    background: #fff
}

div.side-menu dt {
    padding: 8px 14px
}

div.side-menu ul {
    background: #fff
}

div.side-menu li ul {
    margin-top: -1px;
    padding: 0;
    background: 0 0
}

div.side-menu li {
    position: relative;
    border-top: 1px dotted #ccc
}

div.side-menu li a {
    display: block;
    padding: 6px 34px 5px 14px;
    background: url(../image/icon_arrows.png) 200px -130px no-repeat;
    color: #525252;
    text-decoration: none;
    border-bottom: 0
}

* html div.side-menu li a {
    background-image: url(../image/icon_arrows.gif)
}

div#current-category,
div#sub-current-category {
    margin-bottom: 36px;
    background: url(../image/bg_side_current.gif)
}

div#current-category li {
    width: 100%
}

div#current-category li.current>a {
    padding: 30px 14px;
    background: 0 0;
    border-bottom: 1px solid #ccc
}

div#current-category a.dir-name {
    padding: 30px 14px;
    background: 0 0;
    border-bottom: 1px solid #ccc
}

div.side-menu li a.current,
div.side-menu li a:hover {
    padding: 6px 34px 5px 14px;
    background-color: #765a4e;
    color: #fff;
    border-bottom: 0
}

ul.child-menu li a {
    padding-left: 24px
}

ul.child-menu li a.current,
ul.child-menu li a:hover {
    padding-left: 24px;
    background-color: #f3f3f3;
    color: #525252
}

ul.child-menu li a:before {
    content: "└ "
}

ul.child-menu ul.child-menu li a {
    padding-left: 40px
}

div#header form {
    float: right;
    margin: -16px 0 0;
    width: 220px
}

div#header p.search {
    padding: 4px 0;
    background: #eee;
    text-align: center;
    border: 1px solid #ccc
}

* html div#header p.search {
    width: 233px;
    overflow: hidden
}

div#header p.search img,
div#header p.search input {
    height: 17px;
    text-align: left;
    vertical-align: middle;
    width: auto
}

div#header p.search input.input-text {
    width: 120px;
    border: 1px solid #dbdfe6;
    border-top-color: #abadb3
}

div#header p.search input.search-txt {
    width: 155px;
    border: solid 1px #999
}

div#search p.search,
div#side p.search {
    margin: 0 5px 20px;
    padding: 8px 0;
    width: 228px;
    background: #eee;
    text-align: center;
    border: 1px solid #ccc
}

* html div#search p.search,
* html div#side p.search {
    width: 233px;
    overflow: hidden
}

div#search p.search img,
div#search p.search input,
div#side p.search img,
div#side p.search input {
    height: 17px;
    text-align: left;
    vertical-align: middle;
    width: auto
}

div#search p.search input.input-text,
div#side p.search input.input-text {
    width: 120px;
    border: 1px solid #dbdfe6;
    border-top-color: #abadb3
}

div#side ul.banner {
    clear: none;
    margin: 0 5px 20px
}

div#side ul.banner li {
    float: none;
    margin: 0 0 7px;
    width: auto
}

p.chn-link {
    float: right;
    margin: -7px 0 0 10px
}

p.chn-link a {
    background: url(../image/icon_chn.gif) no-repeat 0 0;
    padding-left: 27px;
    display: block
}

ul.hover-list {
    position: absolute;
    top: 0;
    left: 228px;
    width: 228px;
    border: 1px solid #cbcbcb;
    box-shadow: 3px 3px 3px #999;
    -moz-box-shadow: 3px 3px 3px #999;
    -webkit-box-shadow: 3px 3px 3px #999
}

ul.hover-list li {
    background: #fff
}

ul.hover-list li.first-item {
    border-top: 0
}

ul.hover-list li a:hover {
    background: #ebebf5 url(../image/icon_arrows.png) 200px -130px no-repeat;
    color: #60606a;
    -moz-opacity: .75;
    opacity: .75
}

* html ul.hover-list li a:hover {
    background-image: url(../image/icon_arrows.gif)
}

ul.topics-side li a#beautytheory+ul.child-menu,
ul.topics-side li a#beginner+ul.child-menu,
ul.topics-side li a#dictionary+ul.child-menu,
ul.topics-side li a#knowledge+ul.child-menu,
ul.topics-side li a#mens+ul.child-menu,
ul.topics-side li a#special+ul.child-menu {
    display: none
}

h2 {
    margin: 0 0 20px
}

h3 {
    margin: 0 0 20px;
    padding: 10px 30px
}

h3.img-title {
    padding: 0;
    background: 0 0
}

h3.steps {
    width: 630px
}

h3.sub-title {
    padding: 7px 10px 5px 10px;
    background: #f0ece8;
    font-size: 116%;
    font-weight: 700;
    line-height: 1.8;
    border-top: 3px solid #765a4e;
    border-bottom: 1px solid #dfd6cc
}

h4 {
    margin: 0 0 15px;
    font-size: 116%;
    font-weight: 700
}

h4.basic {
    padding: 6px 10px;
    background: #765a4e url(../image/bg_h4.gif) center right no-repeat;
    color: #fff
}

h4.misc {
    padding: 5px 15px;
    background: #f0ece8;
    border-bottom: 1px solid #d8d8d8
}

h4.opelist {
    padding: 20px 0 0;
    border-top: 1px dotted #ccc
}

h4.sub-title {
    padding: 2px 0 2px 10px;
    line-height: 1.8;
    border-bottom: 1px solid #d8d8d8
}

h5,
h6 {
    margin: 0 0 10px;
    font-weight: 700
}

h5 {
    font-size: 116%
}

h4.clear,
h5.clear,
h6.clear {
    clear: both
}

img.icon-rss {
    float: right;
    padding-left: 5px
}

div.section {
    margin-bottom: 25px
}

div.section:after {
    content: "";
    display: block;
    clear: both
}

div.flash-box {
    margin: 15px 0;
    position: relative;
    z-index: 1
}

div.section p {
    margin-bottom: 1.7em
}

p.figure {
    font-size: smaller;
    text-align: center
}

p.center {
    text-align: center
}

p.figure span {
    font-size: larger
}

p.figure span.bold {
    font-weight: 700
}

p.width100 {
    width: 100%
}

p.memo span.symbol {
    color: #850b26
}

p.clear:after {
    content: "";
    display: block;
    clear: both
}

p.get-adobe {
    margin: 0 auto;
    width: 570px
}

p.get-adobe:after {
    content: "";
    display: block;
    clear: both
}

p.get-adobe img {
    float: left;
    margin: 0 30px 0 0
}

div#main ul.action {
    padding-top: 28px;
    border-top: 1px solid #d1d1d1
}

div#main .common-area ul.action li {
    float: left;
    margin-right: 12px
}

ul#social-button {
    padding-bottom: 25px
}

ul#social-button li {
    float: right;
    padding: 0 5px
}

div#page-head {
    position: relative;
    margin-bottom: 20px
}

div#page-head h2 {
    margin-bottom: 0
}

div#page-head p.memo {
    margin: 15px 0
}

div#page-head .sns-start {
    position: absolute;
    top: 240px;
    left: 675px;
    z-index: 10000
}

div#page-head div.description,
div#page-head div.notation {
    background: #f5f5f5;
    border: 1px solid #e8e8e8;
    border-width: 1px 0
}

div#page-head div.description p,
div#page-head div.notation p {
    margin-bottom: 0;
    padding: 10px 12px;
    /* border: 1px solid #fff; */
    border-width: 1px 0
}

div#page-head div.description p+p {
    margin-top: 0;
}

div#page-head div.notation {
    background: #fdeaee url(../image/icon_notation.gif) 10px center no-repeat;
    font-size: 116%
}

div#page-head div.notation p {
    padding-left: 55px;
    color: #333
}

div#page-head div.nav,
div.bottom-tab {
    padding: 21px 0 0;
    width: 100%;
    text-align: center;
    overflow: hidden
}

div#page-head div.nav ul,
div.bottom-tab ul {
    position: relative;
    left: 50%;
    float: left;
    margin: auto;
    display: inline-block
}

div#page-head div.nav li,
div.bottom-tab li {
    position: relative;
    left: -50%;
    padding-right: 2px
}

div#page-head ul.page-link {
    margin: 0 -10px 0 0
}

div#page-head ul.page-link li {
    padding-bottom: 0
}

div#page-head div.top-tab {
    position: relative;
    background: url(../image/bg_top_tab.gif) left top repeat-x
}

div.bottom-tab {
    margin-bottom: 20px;
    padding: 0 0 18px;
    background: url(../image/bg_bottom_tab.gif) left bottom repeat-x
}

div#page-head div.top-tab ul,
div.bottom-tab ul {
    left: 0;
    margin: 0;
    padding-left: 15px
}

div#page-head div.top-tab li,
div.bottom-tab li {
    left: 0
}

div#page-head div.anchors {
    margin: 10px 0 0;
    padding: 0;
    text-align: left
}

div#cater div.anchors {
    margin: 10px 0 20px;
    padding: 0;
    text-align: left
}

div#cater div.anchors ul,
div#page-head div.anchors ul {
    left: 0;
    float: none;
    margin: 0;
    display: block
}

div#cater div.anchors li,
div#page-head div.anchors li {
    left: 0;
    white-space: nowrap
}

div#cater div.anchors li a,
div#page-head div.anchors li a {
    margin-right: 20px;
    padding-left: 20px;
    display: inline-block;
    background: url(../image/icon_arrows.png) 0 -60px no-repeat;
    line-height: 2.5
}

* html div#page-head div.anchors li a {
    background-image: url(../image/icon_arrows.gif)
}

* html div#cater div.anchors li a {
    background-image: url(../image/icon_arrows.gif)
}

div.twin-box {
    margin-right: -20px;
    width: 730px
}

div.twin-box:after {
    content: "";
    display: block;
    clear: both
}

div.menu-box,
ul.twin-list {
    display: inline;
    float: left;
    position: relative;
    margin-right: 20px;
    width: 345px
}

div.menu-box h2,
div.menu-box p {
    position: relative
}

div.menu-box a.button-box {
    display: block
}

div.menu-box h2 a.button-box {
    position: absolute;
    top: 15px;
    right: 10px
}

div.menu-box h3 a.button-box {
    position: absolute;
    top: 15px;
    right: 10px
}

div.menu-box p a.button-box {
    float: right;
    padding-left: 5px
}

div.menu-box p a.button-box img {
    border: 1px solid #d8d8d8
}

div.triple-box {
    margin-right: -10px
}

div.triple-box:after {
    content: "";
    display: block;
    clear: both
}

dl.triple-list {
    display: inline;
    float: left;
    position: relative;
    margin: 0 10px 15px 0;
    width: 230px
}

dl.triple-list li a {
    display: inline-block;
    padding: 5px 8px 5px 20px;
    background: url(../image/icon_arrows.png) 0 -130px no-repeat
}

* html dl.triple-list li a {
    background-image: url(../image/icon_arrows.gif)
}

p.inline-figure,
p.inline-img {
    display: inline;
    float: right;
    margin-left: 15px;
    width: 266px;
    font-size: smaller
}

p.inline-img-l {
    display: inline;
    float: left;
    margin-right: 15px;
    width: 266px;
    font-size: smaller
}

p.inline-half-img {
    text-align: center;
    width: 226px;
    padding-right: 17px
}

p.inline-half-img span.fgcap {
    display: block;
    text-align: left
}

p.inline-figure img,
p.inline-img img,
p.inline-img-l img {
    margin-bottom: 5px;
    padding: 5px
}

p.inline-img img,
p.inline-img-l img {
    background: #fff;
    border: 1px solid #e8e8e8;
    box-shadow: 0 3px 3px #e8e8e8;
    -moz-box-shadow: 0 3px 3px #e8e8e8;
    -webkit-box-shadow: 0 3px 3px #e8e8e8
}

p.inline-figure {
    width: 256px
}

p.inline-figure img {
    padding: 0
}

p.img-small {
    width: 204px
}

p.img-medium {
    width: 314px
}

p.img-wide {
    width: 370px
}

p.img-wide-right {
    margin-right: 5px;
    width: 370px;
    text-align: right
}

p.img-caption {
    text-align: right
}

table.inline-img {
    margin: 0 auto 1.7em
}

table.inline-img th {
    color: #870b28;
    font-weight: 700;
    text-align: center
}

table.inline-img td {
    padding: 0 10px;
    font-size: smaller
}

table.inline-img td img {
    margin-bottom: 3px;
    padding: 3px;
    background: #fff;
    border: 1px solid #e8e8e8;
    box-shadow: 0 3px 3px #e8e8e8;
    -moz-box-shadow: 0 3px 3px #e8e8e8;
    -webkit-box-shadow: 0 3px 3px #e8e8e8
}

p.frame-img img {
    margin-bottom: 5px;
    padding: 5px;
    background: #fff;
    border: 1px solid #e8e8e8;
    box-shadow: 0 3px 3px #e8e8e8;
    -moz-box-shadow: 0 3px 3px #e8e8e8;
    -webkit-box-shadow: 0 3px 3px #e8e8e8
}

ol.basic,
ul.basic {
    margin-bottom: 1.7em
}

ul.basic li {
    list-style-type: none;
    padding: 3px 0 3px 12px;
    background: url(../image/icon_dot.gif) -10px 6px no-repeat
}

ol.basic li {
    list-style-type: decimal;
    margin-left: 1.7em
}

div.info-link {
    margin-bottom: 30px;
    background: #f5f5f5;
    border: 1px solid #e8e8e8
}

div.info-link ul {
    padding: 8px;
    border: 1px solid #fff
}

div.info-link ul:after {
    content: "";
    display: block;
    clear: both
}

div.info-link li {
    padding-right: 3px
}

div.info-link li.last-item {
    float: right
}

.rel-link {
    margin-bottom: 1.7em
}

.rel-link li {
    padding: 5px 0
}

.rel-link li a {
    display: inline-block;
    padding-left: 20px;
    background: url(../image/icon_arrows.png) 0 -135px no-repeat
}

* html .rel-link li a {
    background-image: url(../image/icon_arrows.gif)
}

ul.rel-page {
    margin-bottom: 20px
}

ul.rel-page:after {
    content: "";
    display: block;
    clear: both
}

ul.rel-page li {
    float: right;
    background: #f5f5f5;
    margin-left: 10px;
    border: 1px solid #e8e8e8;
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px
}

ul.rel-page a {
    display: inline-block;
    padding: 5px 8px 5px 28px;
    background: url(../image/icon_arrows.png) 8px -130px no-repeat
}

* html ul.rel-page a {
    background-image: url(../image/icon_arrows.gif)
}

ul.go-top {
    float: none;
    margin: 0 auto 20px;
    width: 13em
}

ul.page-link {
    margin: 10px -10px 20px 0
}

ul.page-link li {
    padding: 0 10px 5px 0
}

ul.anchor-button a {
    display: block
}

* html ul.anchor-button a {
    background-image: url(../image/icon_arrows.gif)
}

div.page-nav {
    padding: 28px 10px 18px;
    border-top: 1px solid #d1d1d1
}

div.page-nav li.last-item {
    float: right
}

dl.banner-box {
    margin-bottom: 38px
}

dl.banner-box dt {
    color: #72612e;
    font-size: 133%;
    font-weight: 700
}

dl.column-box {
    clear: both;
    margin-bottom: 30px;
    padding: 12px 20px;
    background: #fcf8f1;
    border: 1px solid #d8d8d8
}

dl.column-box dt {
    padding-bottom: 10px;
    border-bottom: 1px solid #d8d8d8
}

dl.column-box dd {
    padding-top: 10px
}

dl.column-box li {
    padding: 3px 0 3px 13px;
    background: url(../image/icon_dot.gif) -10px 9px no-repeat;
    font-size: 116%;
    font-weight: 700
}

dl.list-box {
    margin: 0 0 25px
}

dl.list-box dt {
    clear: both
}

dl.list-box dd {
    margin: .5em 0 1em 15px
}

dl.list-box ul {
    margin-bottom: 0
}

div.caution-box {
    margin: 40px 0;
    padding: 0 20px;
    border: 1px solid #d8d8d8;
    border-top: 3px solid #634442
}

div.caution-box h3 {
    margin: 0 -20px 15px
}

dl.definition-box {
    margin-bottom: 1.7em
}

dl.definition-box dt {
    padding: 3px 0 3px 13px;
    background: url(../image/icon_dot.gif) -10px 9px no-repeat;
    font-size: 116%;
    font-weight: 700
}

dl.definition-box dd {
    text-indent: 1em
}

dl.def-box {
    margin-bottom: 1.7em
}

dl.def-box dt {
    font-size: 116%;
    font-weight: 700
}

dl.def-box dd {
    margin: 0 0 10px
}

table.basic {
    border: 1px solid #ddd
}

table.basic td,
table.basic th {
    padding: 10px;
    border: 1px solid #ddd
}

table.img-box {
    margin: 0 auto 1.7em
}

table.img-box th {
    padding: 0 10px
}

table.img-box td {
    padding: 5px 10px;
    width: 210px;
    font-size: 85%
}

table.img-box td {
    padding: 0 10px
}

table.img-box th.caption {
    text-align: center
}

table.figure-table {
    margin: 20px 0
}

table.figure-table td,
table.figure-table th {
    width: 31%;
    padding: 16px;
    border: 1px dotted #cabfb0;
    border-width: 0 1px 1px 0
}

table.figure-table th {
    border-bottom: 0
}

table.figure-table tr.last-item * {
    border-bottom: 0
}

table.figure-table .last-item {
    border-right: 0
}

table.featirepic-h {
    width: 450px;
    margin: 0 auto
}

table.featirepic-h span {
    font-size: smaller
}

table.featirepic-h td {
    padding: 0 10px
}

ul.faq-list {
    margin-bottom: 30px
}

ul.faq-list li {
    padding: 10px;
    font-size: 116%
}

ul.faq-list li.even {
    background: #f5f5f5
}

div.faq-box {
    padding: 20px 0;
    border-top: 1px solid #e0e0e0
}

div.faq-box:after {
    content: "";
    display: block;
    clear: both
}

div.faq-box h4 {
    padding-left: 50px;
    color: #7d0459;
    line-height: 2
}

div.answer {
    padding: 0 20px 0 50px;
    min-height: 31px
}

* html div.answer {
    height: 31px
}

div.answer p {
    padding-left: 114px
}

div.faq-box p.doc-img {
    display: inline;
    float: left;
    margin-right: 15px;
    padding: 0;
    font-size: smaller;
    text-align: center
}

div.faq-box dl {
    clear: both;
    padding: 10px;
    background: #f0ece8
}

div.faq-box dl:after {
    content: "";
    display: block;
    clear: both
}

div.faq-box dl.nav dt {
    float: left;
    font-weight: 700
}

div.faq-box dl.nav dd {
    float: left;
    font-weight: 700
}

div.faq-box dl.nav a {
    display: inline-block;
    padding: 0 15px 0 28px;
    background: url(../image/icon_arrows.png) 8px -132px no-repeat
}

* html div.faq-box dl.nav a {
    background-image: url(../image/icon_arrows.gif)
}

table.price {
    margin: 0 auto 20px;
    width: 450px;
    background: #faf6ef
}

table.price.odd-line {
    background: #f9f9f9
}

table.price,
table.price td,
table.price th {
    border: 1px solid #ccc
}

table.price td,
table.price th {
    padding: 8px;
    background: 0 0
}

table.price td.price-cell,
table.price th {
    font-weight: 700
}

table.price span.price-memo {
    font-size: 83%;
    font-weight: 400;
    color: #4d4d4c
}

table.price th {
    width: 200px
}

table.price td {
    vertical-align: middle
}

table.price td.price-cell {
    width: 100px;
    color: #72612e;
    font-size: 116%
}

table.price td.colspan {
    width: 198px
}

table.price tr.strong td {
    color: #00c
}

table.price strong {
    color: #c00
}

table.price td.illust {
    text-align: center
}

div#price div.category-box {
    padding-top: 65px;
    padding-left: 0
}

table.price {
    width: 710px;
    margin: 30px 0 20px;
    border: none
}

table.price th {
    width: 180px;
    background: #fff5d7
}

table.price th a {
    color: #1480c5
}

table.price td.price-cell {
    width: 155px;
    text-align: right;
    color: #725f2c;
    word-break: break-all
}

table.price td.peculiar-style {
    font-weight: 700
}

table.price tr.price-area td {
    text-align: right;
    color: #777;
    background: #fff;
    border: 1px solid #fff
}

div#howto-mobile {
    margin-bottom: 50px;
    padding: 0 55px
}

div#howto-mobile dl {
    padding: 10px 10px 10px 150px;
    background: url(../image/bg_howto_access.jpg) left bottom no-repeat;
    border: 1px solid #d8d8d8
}

div#howto-mobile dt {
    padding-bottom: 10px;
    border-bottom: 1px solid #d8d8d8
}

div#howto-mobile dd {
    padding: 10px 100px 0 0;
    background: url(../image/img_qr_mobile.gif) right 10px no-repeat
}

div#howto-mobile p {
    margin-bottom: 10px
}

div#howto-print {
    padding: 0 55px
}

div#howto-print a#print-coupon {
    display: inline-block;
    float: right;
    padding-left: 15px
}

div#howto-print ul.note {
    color: #870b28
}

#printDisplay {
    text-align: left
}

#printDisplay p,
#printDisplay ul.note {
    display: block !important;
    margin-bottom: 1.7em;
    textAlign: left;
    lineHeight: 1.7
}

#printDisplay ul.note {
    color: #870b28
}

#printDisplay p#funcPrint {
    margin-bottom: 0;
    text-align: center
}

#printDisplay p.figure img {
    width: 580px;
    height: 120px
}

a#print-coupon img,
p#funcPrint img {
    cursor: pointer
}

div#sitemap {
    margin-right: -20px;
    width: 730px
}

div#sitemap:after {
    content: "";
    display: block;
    clear: both
}

div#sitemap div.column {
    float: left;
    padding-right: 20px;
    width: 220px
}

div#sitemap h3 {
    padding: 0;
    background: 0 0
}

div#sitemap dt {
    margin-bottom: 15px
}

div#sitemap ul.rel-link {
    margin-bottom: 0
}

div#sitemap ul.rel-link li {
    border-bottom: 1px dotted #ccc
}

div#sitemap ul.rel-link li.top {
    border-bottom: none;
    padding-top: 40px;
    font-weight: 700;
    font-size: 115%
}

div#operation-map dt {
    margin: 0;
    color: #333;
    font-size: 116%;
    font-weight: 700;
    border-bottom: 1px solid #ccc
}

div#operation-map .rel-link,
div#sitemap dl {
    margin-bottom: 1.7em
}

div#privacy ol.basic {
    margin-bottom: 40px
}

div#privacy ol.basic li {
    margin-bottom: 1.7em
}

form.secom {
    display: inline;
    float: right;
    margin-left: 15px;
    width: 70px
}

.topics-tit02 {
    padding: 4px 30px
}

h3.one-point {
    font-size: 174%;
    font-weight: 700;
    line-height: 1.3;
    padding: 52px 15px 6px 123px;
    background: url(../image/bg_one_point.jpg) no-repeat
}

h3.one-point02 {
    font-size: 174%;
    font-weight: 700;
    line-height: 1.3;
    padding: 66px 15px 24px 123px;
    background: url(../image/bg_one_point.jpg) no-repeat
}

ul#translate {
    float: right;
    padding: 2px 15px
}

ul#translate li {
    padding-right: 5px
}

ul#translate li select {
    margin: 0
}

div#main {
    float: left;
    width: 730px;
    overflow: hidden
}

div#side {
    float: right;
    width: 220px;
    text-align: center
}

div.twin-box {
    width: 750px
}

.odd-line {
    background: #f9f9f9
}

div#index-banners h2,
div#index-links h2,
div#index-news h2,
div#index-operation h2,
div#index-recommend h2,
div#index-sns h2,
div#index-topics h2,
div#index2-topics h2 {
    background: url(../image/bg_h2.gif) no-repeat scroll 0 0 transparent;
    margin: 0 0 20px;
    padding: 10px 30px
}

div#index-operation {
    margin-right: -10px;
    width: 740px
}

div#index-operation:after {
    content: "";
    display: block;
    clear: both
}

div.ope-category {
    float: left;
    padding-right: 10px;
    width: 175px
}

div#index-operation {
    position: relative
}

div#index-operation h2,
div#index-operation p {
    position: relative
}

div#index-operation a.button-box {
    display: block
}

div#index-operation h2 a.button-box {
    position: absolute;
    top: 15px;
    right: 20px
}

div#index-operation p a.button-box {
    float: right;
    padding-left: 5px
}

div#index-operation p a.button-box img {
    border: 1px solid #d8d8d8
}

div#index-operation h3 {
    margin: 0 0 15px;
    background: 0 0;
    padding: 0
}

div#index-recommend {
    position: relative
}

div#index-recommend h3,
div#index-recommend p {
    position: relative
}

div#index-recommend a.button-box {
    display: block
}

div#index-recommend h3 a.button-box {
    position: absolute;
    top: 15px;
    right: 10px
}

div#index-recommend p a.button-box {
    float: right;
    padding-left: 5px
}

div#index-recommend p a.button-box img {
    border: 1px solid #d8d8d8
}

div#index-recommend .nav {
    margin-right: -10px;
    width: 740px
}

div#index-recommend .nav li {
    padding: 0 10px 7px 0
}

div#index-news {
    width: 470px
}

div#index-news h3 {
    margin-bottom: 13px
}

div#index-news img.icon-rss {
    position: absolute;
    top: 15px;
    right: 70px
}

div#index-news dt {
    padding-top: 7px;
    color: #9a381b;
    font-weight: 700;
    line-height: 17px
}

div#index-news dt img {
    padding: 0 5px
}

div#index-news dd {
    padding-bottom: 7px;
    border-bottom: 1px dotted #ccc
}

div#index-news dd.qr-code {
    min-height: 90px;
    padding-right: 200px;
    background: url(../image/bnr_smp_qr.gif) no-repeat 300px 5px
}

div#index-news dd.qr-code-ver2 {
    min-height: 90px;
    background: url(../image/bnr_smp_qr.gif) no-repeat 320px 5px
}

div#index-news dd.qr-code130917 {
    min-height: 70px;
    background: url(../image/bnr_news_qr130917.gif) no-repeat 320px 0
}

div#index-news dd img.qr-code-index {
    margin: 10px 0 0 5px
}

div#index-news p.recruit {
    margin-bottom: .6em;
    padding: 10px;
    background: #fdeaee;
    border: #f36 solid 1px
}

div#index-topics {
    width: 240px
}

div#index2-topics {
    width: 750px
}

div#index-topics ul.banner li {
    float: none;
    margin: 0 0 6px;
    width: auto
}

div#index2-topics ul.banner li {
    float: left;
    margin: 0 10px 12px 0;
    width: auto
}

div#index-sns dt {
    float: left;
    min-width: 65px;
    padding: 0 10px 0 20px;
    margin-bottom: 10px;
    font-size: 103%;
    font-weight: 700;
    line-height: 1.2;
    border-left: 1px solid #ccc
}

div#index-sns dt.first,
div#index-sns dt:first-child {
    padding-left: 0;
    border-left: none
}

div#index-sns dd {
    float: left;
    padding-right: 20px;
    margin-bottom: 10px
}

div#index-sns .nav li {
    padding: 0 10px 10px 0
}

div#index-sns .nav li:last-child {
    padding-right: 0
}

div#index-sns .cl {
    clear: both !important
}

div#index-links {
    overflow: hidden;
    padding-bottom: 25px;
    border-bottom: 1px solid #ccc
}

div#index-links .nav {
    margin-right: -20px
}

div#index-links .nav li {
    padding: 0 25px 10px 0
}

div#index-movie {
    width: 410px
}

div#index-movie h3 {
    margin-bottom: 13px
}

div.movie-box {
    padding: 7px 0;
    border-bottom: 1px dotted #ccc
}

div.movie-box:after {
    content: "";
    display: block;
    clear: both
}

div.movie-box p {
    margin: 0
}

div.movie-box dt {
    font-weight: 700
}

div#index-banners ul.banner li {
    width: auto;
    margin-bottom: 10px
}

div#side dl {
    margin-bottom: 15px;
    padding: 5px 0;
    background: #f9f4eb;
    border: 1px solid #e7e7e7
}

div#side dt {
    padding-bottom: 7px;
    text-align: left
}

div#side ul.banner {
    margin: 0
}

div#side dl ul.banner {
    margin-bottom: -7px
}

div#side p.search {
    margin: 15px 0 30px;
    padding: 8px 0;
    width: 220px
}

* html div#side p.search {
    width: 220px
}

#slider,
#sub-slider {
    margin: 0 auto;
    width: 980px;
    text-align: left
}

#slider div,
#sub-slider div {
    width: 980px;
    height: 315px;
    overflow: hidden;
    position: relative;
    margin: 0 0 5px
}

#slider div div,
#sub-slider div div {
    top: 0;
    left: 0;
    position: absolute;
    display: none
}

#slider ul,
#sub-slider ul {
    width: 980px;
    border-top: 4px solid #efebe8;
    border-bottom: 4px solid #efebe8
}

#slider ul li,
#sub-slider ul li {
    width: 191px;
    float: left;
    display: inline;
    border-left: 4px solid #efebe8
}

#slider ul li a,
#sub-slider ul li a {
    display: block;
    padding: 3px
}

#slider ul li.last-item,
#sub-slider ul li.last-item {
    border-right: 5px solid #efebe8
}

#slider ul li.active,
#sub-slider ul li.active {
    background-color: #614e46
}

#slider .maplink,
#sub-slider .maplink {
    border: none;
    outline: 0
}

#slider a#slide_first,
#sub-slider a#slide_first {
    position: relative;
    top: 0;
    left: 0;
    display: none
}

div#ranking {
    width: 980px;
    margin: 20px 0 35px
}

div#ranking h2 {
    margin: 0 0 20px
}

div#ranking ul {
    overflow: hidden
}

div#ranking ul#nav li {
    float: left;
    display: inline;
    font-size: 0
}

div#ranking ul#nav li#diet.last-item,
div#ranking ul#nav li.last-item {
    margin: 0
}

div#ranking ul.panel {
    border: 1px solid #cca796;
    clear: both;
    background: #fffcf6
}

div#ranking ul.panel li {
    display: none;
    overflow: hidden
}

div#ranking ul.panel li#tab-01 {
    background: url(../image/bg_r_eye.jpg) right top no-repeat
}

div#ranking ul.panel li#tab-02 {
    background: url(../image/bg_r_nose.jpg) left top no-repeat
}

div#ranking ul.panel li#tab-03 {
    background: url(../image/bg_r_face.jpg) right top no-repeat
}

div#ranking ul.panel li#tab-04 {
    background: url(../image/bg_r_anti.jpg) left top no-repeat
}

div#ranking ul.panel li#tab-05 {
    background: url(../image/bg_r_anti_ope.jpg) left top no-repeat
}

div#ranking ul.panel li#tab-06 {
    background: url(../image/bg_r_diet.jpg) right top no-repeat
}

div#ranking ul.panel li#tab-07 {
    background: url(../image/bg_r_bust.jpg) left top no-repeat
}

div#ranking ul.panel li div {
    float: left;
    width: 285px;
    padding: 10px 20px 20px
}

div#ranking ul.panel li div.rank-2nd {
    float: left;
    border: solid #cca796;
    border-width: 0 1px;
    width: 286px
}

div#ranking ul.panel li div.rank-other {
    width: 978px;
    padding: 0;
    border-top: 1px solid #cca796
}

div#ranking ul.panel li div.rank-other li {
    display: block !important;
    float: left;
    width: 489px;
    font-size: 132%;
    font-weight: 700
}

div#ranking ul.panel li div.rank-other li.rank-4th {
    width: 488px;
    border-right: 1px solid #cca796;
    background: url(../image/icon_r_no4.gif) 24px 50% no-repeat
}

div#ranking ul.panel li div.rank-other li.rank-5th {
    background: url(../image/icon_r_no5.gif) 24px 50% no-repeat
}

div#ranking ul.panel li div.rank-other li a {
    display: block;
    text-decoration: none;
    color: #59321d;
    padding: 20px 30px 20px 70px;
    background: url(../image/icon_r_arr.gif) 450px 50% no-repeat
}

div#ranking ul.panel li div dl dt {
    font-size: 132%;
    font-weight: 700;
    color: #59321d;
    padding: 10px 0 10px 55px
}

div#ranking ul.panel li div dl dd,
div#ranking ul.panel li div dl dt {
    margin: 0 0 10px
}

div#ranking ul.panel li div dl dt a {
    text-decoration: none;
    color: #59321d
}

div#ranking ul.panel li div dl dt.a-under a {
    text-decoration: underline
}

div#ranking ul.panel li div.rank-1st dl dt {
    background: url(../image/icon_r_no1.gif) no-repeat
}

div#ranking ul.panel li div.rank-2nd dl dt {
    background: url(../image/icon_r_no2.gif) no-repeat
}

div#ranking ul.panel li div.rank-3rd dl dt {
    background: url(../image/icon_r_no3.gif) no-repeat
}

div#ranking ul.panel li div p.btn-rank {
    text-align: center;
    margin-top: 15px;
    margin-bottom: 0
}

div#ranking ul.panel li div.rank-other dl {
    width: 167px
}

div#ranking ul.panel li div.rank-other dl dt {
    margin: 0
}

div#ranking ul.panel li div.rank-other dl dd {
    margin: 0 0 20px
}

div#index-sns .main-sns {
    margin-bottom: 40px
}

div#index-sns .main-sns>li {
    float: left;
    width: 345px;
    box-sizing: border-box
}

div#index-sns .main-sns>li:nth-child(2n) {
    float: right
}

div#index-sns .main-sns div {
    margin-bottom: 20px
}

div#index-sns .main-sns .dr-sns li {
    display: inline-block;
    text-align: center;
    margin-bottom: 40px;
    padding: 0 10px;
    box-sizing: border-box
}

div#index-dr-sns h2 {
    background: url(../image/bg_h2.gif) no-repeat scroll 0 0 transparent;
    margin: 0 0 20px;
    padding: 10px 30px
}

div#index-dr-sns .main-sns li {
    float: left;
    box-sizing: border-box;
    width: 50%;
    padding: 0 10px;
    text-align: center
}

div#index-dr-sns .main-sns div {
    margin-bottom: 20px
}

div#index-dr-sns .dr-sns li {
    float: left;
    width: 33%;
    margin-bottom: 40px
}

div#index-dr-sns .dr-sns li:nth-child(1) {
    width: 25%
}

div#index-dr-sns .dr-sns li:nth-child(2) {
    width: 35%
}

div#index-dr-sns .dr-sns li:nth-child(3) {
    width: 40%
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom
}

a:link,
a:visited,
a:active,
a:hover {
    outline: none;
    color: #444;
    text-decoration: none
}

.cf:before,
.cf:after {
    content: "";
    display: table
}

.cf:after {
    clear: both
}

.clear {
    clear: both
}

html {
    font-size: 62.5%
}

body {
    background: none;
    text-align: left;
    font-family: "Noto Sans SC", serif !important;
    font-size: 1.6rem;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    line-height: 1.8;
    color: #444;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.4
}

.sans {
    font-family: "Noto Sans SC", serif !important;
}

.self {
    font-family: "Noto Sans SC", serif !important;
    font-weight: 400
}

.self_m {
    font-family: "Noto Sans SC", serif !important;
    font-weight: 500
}

input[type=text],
input[type=submit],
input[type=button],
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    -ms-appearance: none;
    appearance: none;
    border: none;
    border-radius: 0;
    background: none;
    margin: 0;
    font-family: "Noto Sans SC", serif !important;
}

.nowrap {
    white-space: nowrap
}

.visually_hidden {
    position: absolute;
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    clip: rect(0 0 0 0);
    overflow: hidden
}

.ani_slideup {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    transition: opacity .8s, -webkit-transform .8s ease-out;
    transition: opacity .8s, transform .8s ease-out;
    transition: opacity .8s, transform .8s ease-out, -webkit-transform .8s ease-out
}

.ani_slideup.on {
    opacity: 1;
    -webkit-transform: translateY(0) !important;
    transform: translateY(0) !important
}

.ani_fade {
    transition: opacity .4s ease-in;
    opacity: 0
}

.ani_fade.on {
    opacity: 1
}

.ani_reduce {
    transition: opacity .4s ease-in, -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity .4s ease-in, transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity .4s ease-in, transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0
}

.ani_reduce.on {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

.ani_btn {
    transition: opacity .4s ease-in, -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity .4s ease-in, transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity .4s ease-in, transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    opacity: 0
}

.ani_btn.on {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

.ani_reduce.on .txt2 {
    float: right;
    width: 275px;
    padding-top: 100px
}

a[target=_blank] {
    display: inline-block;
    /*    padding-right: 25px;*/
    /*    background: url("../image/icon_blank.png") no-repeat right center/17px auto;*/
    transition: color .15s ease-out
}

a[target=_blank]:hover {
    color: #4694D1
}

.btn_link_l_wimg[target=_blank] {
    display: flex;
    padding: 20px 35px;
    background: #fff;
    transition: all .2s ease-out
}

.btn_link_l_wimg[target=_blank]:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

.btns>div+div {
    margin-top: 30px
}

.btn_close {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1 !important;
    transition: all .15s ease-out
}

.btn_close::before,
.btn_close::after {
    display: block;
    width: 14px;
    height: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    background: #4694D1;
    content: "";
    transition: background .15s ease-out
}

.btn_close:hover {
    background: #4694D1;
    color: #fff !important
}

.btn_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.btn_close::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.btn_close:hover::before,
.btn_close:hover::after {
    background: #fff
}

.btn_blank,
.btn_link0 {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1 !important;
    transition: all .15s ease-out
}

.btn_link0:hover {
    background: #4694D1;
    color: #fff !important
}

.btn_blank {
    position: relative;
    background: #fff !important
}

.btn_blank:hover {
    background: #4694D1 !important;
    color: #fff !important
}

.btn_blank::after {
    display: block;
    width: 18px;
    height: 16px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    background: url("../image/icon_blank.svg") no-repeat center center/contain;
    content: ""
}

.btn_blank:hover::after {
    background-image: url("../image/icon_blank_w.svg")
}

.btn_link1 {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: #4694D1;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #fff !important;
    transition: all .15s ease-out
}

.btn_link1:hover {
    background: #fff;
    color: #4694D1 !important
}

.btn_link0[target=_blank],
.btn_link1[target=_blank] {
    background-image: none
}

.btn_link0.btn_arrow1,
.btn_link1.btn_arrow1 {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 345px;
    max-width: 100%;
    font-size: 1.8rem
}

.btn_link0.btn_arrow1::before,
.btn_link1.btn_arrow1::before {
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto
}

.btn_link0.btn_arrow1::after,
.btn_link1.btn_arrow1::after {
    right: 18px;
    top: 0;
    bottom: 0;
    margin: auto
}

.btn_link0.btn_arrow1:hover::before,
.btn_link0.btn_arrow1:hover::after {
    border-color: #fff
}

.btn_link1.btn_arrow1::before {
    background: #fff
}

.btn_link_l,
.btn_link_l_wimg,
.btn_anchor {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 20px 35px;
    width: 385px;
    max-width: 100%;
    background: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    color: #4694D1 !important;
    transition: all .2s ease-out
}

.btn_link_l:hover,
.btn_link_l_wimg:hover,
.btn_anchor:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

.btn_link_l_wimg {
    box-sizing: border-box;
    display: flex;
    margin: auto;
    padding: 4px;
    text-align: left
}

.btn_link_l_wimg figure {
    flex-basis: 140px;
    width: 140px;
    min-width: 140px;
    max-width: 140px;
    align-self: center
}

.btn_link_l_wimg div {
    padding: 0 30px 0 10px;
    align-self: center
}

.btns>div+p {
    width: 385px;
    max-width: 100%;
    margin: 20px auto auto auto;
    text-align: left;
    font-size: 1.4rem
}

.btn_link_l p,
.btn_link_l_wimg p {
    font-size: 1.4rem;
    color: #444 !important
}

.btn_link_l h3,
.btn_link_l_wimg h3 {
    display: block;
    font-size: 2rem;
    color: #4694D1 !important
}

.btn_link_l_wimg h3 {
    margin-bottom: .2em
}

.btn_link_l::before,
.btn_link_l_wimg::before,
.btn_anchor::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

.btn_link_l::after,
.btn_link_l_wimg::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_anchor::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 3px;
    right: 22px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-bottom: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_arrow0,
.btn_arrow1,
.btn_arrow2 {
    position: relative
}

.btn_arrow0::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    background: #b02b5a;
    border-radius: 50px;
    content: ""
}

.btn_arrow0::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_arrow1::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

.btn_arrow1::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_arrow2::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    background: #dc5a8c;
    border-radius: 50px;
    content: ""
}

.btn_arrow2::after {
    display: block;
    position: absolute;
    width: 2px;
    height: 2px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_back {
    width: 180px;
    padding: 10px 35px
}

.btn_back::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 12px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

.btn_back::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 20px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    content: ""
}

header {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    width: 220px;
    min-height: 100vh;
    padding: 20px;
    border-right: solid 1px #e1e1e1;
    background: #fff;
    z-index: 1000
}

header h3 {
    font-size: 1.1rem;
    color: #999
}

header #logo {
    margin: 10px 0 0 0
}

header h2 img {
    vertical-align: baseline
}

#gnav ul:nth-child(1) li {
    margin: 20px 0;
    line-height: 1.3
}

#gnav ul:nth-child(1) a {
    display: block;
    padding-left: 10px;
    border-left: solid 3px #4694D1;
    transition: color .15s ease-out
}

#gnav ul:nth-child(1) a:hover {
    color: #4694D1
}

#gnav ul.customer li {
    box-sizing: border-box;
    width: 50%;
    float: left
}

#gnav ul.customer li:nth-child(odd) {
    padding-right: 2px
}

#gnav ul.customer li:nth-child(even) {
    padding-left: 2px
}

#gnav ul.customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #4694D1;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out
}

#gnav ul.customer a:hover {
    background: #4694D1;
    color: #fff
}

#gnav .customer li:nth-child(n+3) {
    margin-top: 0
}

#gnav .customer li:nth-child(3) {
    padding-right: 2px
}

#gnav .customer li:nth-child(4) {
    padding-left: 2px
}

#gnav .customer li:nth-child(n+2) {
    margin-top: 0
}

#gnav .customer li:nth-child(-n+2) {
    width: 50%;
    padding: 0 !important
}

#gnav .customer li:nth-child(1) {
    padding-right: 2px !important
}

#gnav .customer li:nth-child(2) {
    padding-left: 2px !important
}

#gnav .customer li:nth-child(-n+2) a {
    font-size: 1.2rem
}

#gnav ul li.sublink {
    position: relative
}

#gnav ul li.sublink .sub_operation {
    position: fixed;
    top: 25px;
    left: 195px;
    width: 70%;
    max-width: 900px;
    background: #fff;
    padding: 30px 30px;
    text-align: center;
    border: 2px solid #4694D1
}

#gnav ul li.sublink:hover .sub_operation {
    display: block !important;
    z-index: 4;
    -webkit-transform: translateZ(1px);
    transform: translateZ(1px)
}

#gnav ul li.sublink:hover .sub_operation::before,
#gnav ul li.sublink:hover .sub_operation::after {
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    right: 100%;
    top: 20%
}

#gnav ul li.sublink:hover .sub_operation::before {
    border-color: rgba(247, 221, 51, 0);
    border-top-width: 14px;
    border-bottom-width: 14px;
    border-left-width: 31px;
    border-right-width: 31px;
    margin-top: -25px;
    border-right-color: #fff;
    z-index: 2
}

#gnav ul li.sublink:hover .sub_operation::after {
    border-color: rgba(30, 144, 255, 0);
    border-top-width: 16px;
    border-bottom-width: 16px;
    border-left-width: 35px;
    border-right-width: 35px;
    margin-top: -27px;
    margin-right: 2px;
    border-right-color: #4694D1;
    z-index: 1
}

#gnav .sub_operation .sub_operation_box {
    height: 440px
}

#gnav .sub_operation .ope_h2 {
    text-align: left;
    display: block;
    padding-left: 5px;
    font-size: 1.8rem
}

#gnav .sub_operation .ope_h3 {
    text-align: left;
    margin: 10px 0 10px
}

#gnav .sub_operation .ope_h3 a {
    padding: 0;
    border: none
}

#gnav .sub_operation .ope_h4 {
    text-align: left;
    margin: 10px 0 10px
}

#gnav .sub_operation .ope_h4 a {
    padding: 0;
    border: none;
    color: #4694D1;
    background: url("../image/side_menu_banner_pc.jpg") no-repeat left/auto 100%;
    height: 130px;
    width: 115px
}

#gnav .sub_operation .list li {
    text-align: left;
    position: relative;
    margin: 0 0px 10px 0;
    padding: 0 0 2px 0;
    border-bottom: 1px solid #dcdcdc;
    font-size: 14px
}

#gnav .sub_operation .list li a {
    border: none;
    display: inline-block;
    padding-left: 20px
}

#gnav .sub_operation .list li:last-child {
    border-bottom: none
}

#gnav .sub_operation .list li:before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#gnav .sub_operation .list li:after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#gnav .sub_operation .divide2>* {
    box-sizing: border-box;
    float: left;
    width: 23%;
    padding: 0 5px
}

#cnav ul {
    margin-top: 20px;
    border-top: solid 1px #d2cba5
}

#cnav li {
    border-bottom: solid 1px #d2cba5;
    letter-spacing: -1px
}

#cnav li a {
    display: block;
    padding: 15px 0 15px 0;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 36px auto;
    font-size: 1.1rem;
    transition: color .15s ease-out
}

#cnav li a:hover {
    color: #4694D1
}

#cnav li a img {
    width: 24px;
    margin-right: 10px;
}

#cnav li a.tel {
    background-image: url("../image/icon_tel.svg");
    background-position: 2px center;
    background-size: 25.6px
}

header .freedial {
    margin-top: 20px
}

header .freedial h3 {
    margin-bottom: 10px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.2rem;
    color: #4694D1
}

header .freedial strong {
    line-height: 1;
    font-size: 2.5rem;
    color: #4694D1
}

header .freedial p {
    font-size: 1.1rem
}

header .freedial p span {
    font-weight: bold
}

header .lang {
    text-align: center;
    margin: 20px 0
}

header .lang li {
    width: 50%;
    font-size: 1.2rem;
    display: block;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out;
    background: none
}

header .lang li {
    box-sizing: border-box;
    width: 50%;
    float: left
}

header .lang li a {
    display: block;
    padding: 6px;
    border: solid 1px #c0b581;
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out;
    background: none
}

header .lang li a {
    padding: 9px 0
}

header .lang li:nth-child(odd) {
    padding-right: 2px
}

header .lang li:nth-child(even) {
    padding-left: 2px
}

header .lang li:not(:nth-child(1)),
header .lang li:not(:nth-child(2)) {
    margin-top: 6px
}

header .lang li a:hover {
    background: #4694D1;
    color: #fff
}

header .lang li a.cn {
    padding: 6px 2px
}

header .lang li a.cn::before {
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_cn.svg") no-repeat center center/contain;
    margin-right: 4px;
    vertical-align: middle;
    content: ""
}

header .lang li a.en {
    padding: 6px 2px
}

header .lang li a.en::before {
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_en.svg") no-repeat center center/contain;
    margin-right: 4px;
    vertical-align: middle;
    content: ""
}

header .lang li a.longw {
    padding: 10px 0;
    font-size: 1.05rem
}

#sp_menu {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: auto;
    z-index: 10000
}

#sp_menu .bg {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6)
}

#sp_menu .inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: #fff;
    overflow: auto
}

#sp_menu .inner>div {
    padding: 25px
}

#sp_menu .subject {
    margin-top: 50px
}

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

#sp_menu .subject .list {
    margin: 10px 0 0 0;
    display: block
}

#sp_menu .subject .list>li {
    padding: 0;
    flex-basis: 25%;
    border-top: solid 1px #dcdcdc
}

#sp_menu .subject .list>li:first-child {
    border: none
}

#sp_menu .subject .list>li:nth-child(2) {
    flex-basis: 35%
}

#sp_menu .subject .list h3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0;
    margin: 0;
    transition: color .15s ease-out
}

#sp_menu .subject .list h3:hover {
    color: #4694D1
}

#sp_menu .subject .list h3::before,
#sp_menu .subject .list h3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    content: ""
}

#sp_menu .subject .list h3::before {
    right: 7px;
    width: 2px;
    height: 16px
}

#sp_menu .subject .list h3::after {
    width: 16px;
    height: 2px
}

#sp_menu .subject .list h3.act::before {
    display: none
}

#sp_menu .subject .list ul.cf li {
    float: none;
    width: 100%
}

#sp_menu .subject .list li {
    font-size: 1.3rem
}

#sp_menu .subject li a {
    font-size: 1.5rem;
    transition: color .15s ease-out
}

#sp_menu .subject li a:hover {
    color: #4694D1
}

#sp_menu .subject .list li ul {
    margin: 0 0 20px 0
}

#sp_menu .subject .list li li {
    margin: 0;
    padding: 0;
    border-top: solid 1px #dcdcdc
}

#sp_menu .subject .list li li:first-child {
    border: none
}

#sp_menu .subject .list li li a {
    position: relative;
    display: block;
    padding: 5px 5px 5px 20px
}

#sp_menu .subject .list li li a::before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#sp_menu .subject .list li li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#sp_menu .subject .list li li.btn {
    padding-top: 5px;
    border: none
}

#sp_menu .subject .list li li.btn a::before,
#sp_menu .subject .list li li.btn a::after {
    display: none
}

#sp_menu .subject .list li.ope_h4 a {
    background: url("../image/side_menu_banner_sp.jpg") no-repeat left/100% auto;
    display: block;
    height: 45px;
    width: auto
}

#sp_menu .mmnav {
    padding-top: 20px;
    padding-bottom: 5px
}

#sp_menu .mmnav h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem;
    margin-bottom: 20px
}

#sp_menu .gnav {
    display: flex;
    flex-wrap: wrap;
    margin: 5px -25px 20px -25px
}

#sp_menu .gnav li {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    padding-bottom: 2px
}

#sp_menu .gnav li:nth-child(odd) {
    padding-right: 1px
}

#sp_menu .gnav li:nth-child(even) {
    padding-left: 1px
}

#sp_menu .gnav li a {
    display: flex;
    align-items: center;
    height: 100%;
    background: #edece9;
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all .15s ease-out;
    width: 100%;
    box-sizing: border-box
}

#sp_menu .gnav li a:hover {
    background: #f2f2f0;
    color: #4694D1
}

#sp_menu .gnav li a::before {
    top: 0;
    bottom: 0;
    right: 10px;
    width: 14px;
    height: 14px;
    margin: auto
}

#sp_menu .gnav li a::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto
}

#sp_menu .customer {
    margin: 20px 0
}

#sp_menu .customer li {
    box-sizing: border-box;
    width: 50%;
    float: left;
    margin-bottom: 10px
}

#sp_menu .customer li:nth-child(odd) {
    padding-right: 6px
}

#sp_menu .customer li:nth-child(even) {
    padding-left: 6px
}

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #4694D1;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out;
    position: relative
}

#sp_menu .customer a:hover {
    background: #4694D1;
    color: #fff
}

#sp_menu .customer a.cn {
    padding: 4px 0 4px 18px
}

#sp_menu .customer a.cn::before {
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 13px;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_cn.svg") no-repeat center center/contain;
    vertical-align: middle;
    content: "";
    margin: auto
}

#sp_menu .customer a.en {
    padding: 4px 0 4px 18px
}

#sp_menu .customer a.en::before {
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 13px;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_en.svg") no-repeat center center/contain;
    vertical-align: middle;
    content: "";
    margin: auto
}

#sp_menu .customer li:nth-child(-n+2) {
    box-sizing: border-box;
    width: 50%;
    float: left
}

#sp_menu .customer li:nth-child(-n+2) a {
    font-size: 1.2rem
}

#sp_menu .customer li:nth-child(n+2) {
    margin-top: 0
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: solid 1px #dcdcdc
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: solid 1px #dcdcdc
}

#sp_menu .info li:nth-child(odd) {
    border-right: solid 1px #dcdcdc
}

#sp_menu .info li a {
    display: table;
    width: 100%;
    height: 100%;
    font-size: 1.3rem;
    line-height: 1.4;
    transition: color .15s ease-out
}

#sp_menu .info li a:hover {
    color: #4694D1
}

#sp_menu .info li a.icon_qa span {
    background-image: url("../image/icon_qa.svg")
}

#sp_menu .info li a.icon_attention span {
    background-image: url("../image/icon_attention.svg")
}

#sp_menu .info li a.icon_info span {
    background-image: url("../image/icon_info.svg")
}

#sp_menu .info li span {
    display: table-cell;
    vertical-align: middle;
    padding: 8px 10px 8px 45px;
    background: no-repeat 10px center/25px
}

#sp_menu .contact {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px
}

#sp_menu .contact li {
    flex-basis: 25%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.1rem
}

#sp_menu .contact li a {
    position: relative;
    display: block;
    padding-top: 35px;
    background: no-repeat center top/42px auto;
    transition: color .15s ease-out
}

#sp_menu .contact li a:hover {
    color: #4694D1
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0;
    top: 35px;
    width: 1px;
    height: 25px;
    background: #dcdcdc;
    content: ""
}

#sp_menu .contact li a:first-child::after {
    display: none
}

#sp_menu .contact li:nth-child(1) a {
    background-image: url("../image/icon_calendar0.svg")
}

#sp_menu .contact li:nth-child(2) a {
    background-image: url("../image/icon_mail.svg")
}

#sp_menu .contact li:nth-child(3) a {
    background-image: url("../image/icon_calendar1.svg")
}

#sp_menu .contact li:nth-child(4) a {
    background-image: url("../image/icon_tel.svg")
}

#sp_menu .contact2 {
    margin: 0 auto 20px;
    list-style-type: none;
    display: block;
    font-size: 1.4rem
}

#sp_menu .contact2 li {
    text-align: left
}

#sp_menu .contact2 li a {
    width: 100%;
    display: block;
    color: #333;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color .15s ease-out
}

#sp_menu .contact2 li a img {
    width: 30px;
    margin-right: 10px;
}

#sp_menu .contact2 li div.line_reserve {
    width: 100%;
    display: block;
    color: #333;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color .15s ease-out
}



#sp_menu .contact2 li a:hover {
    color: #b5ac6e
}

#sp_menu .contact2 li:last-child a {
    border-bottom: none
}

#sp_menu .freedial {
    display: block;
    white-space: nowrap;
    text-align: center
}

#sp_menu .freedial h3 {
    margin-bottom: 5px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: #4694D1
}

#sp_menu .freedial strong {
    line-height: 1;
    font-size: 2.7rem;
    color: #4694D1;
    margin-bottom: 5px
}

#sp_menu .freedial .callphone {
    text-align: center;
    width: 165px;
    display: block;
    margin: 4px auto 12px
}

#sp_menu .freedial .callphone a {
    box-sizing: border-box;
    display: block;
    padding: 6px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #333;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out
}

#sp_menu .freedial .callphone a.phone:before {
    display: inline-block;
    width: 24.01px;
    height: 24px;
    background: url("../image/icon_menu_mail_sp.png") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 1rem 0 0;
    vertical-align: middle
}

#sp_menu .freedial .callphone a:hover {
    background: #4694D1;
    color: #fff
}

#sp_menu .freedial p {
    display: block;
    font-size: 1.1rem;
    line-height: 1.5rem;
    margin-bottom: 3px
}

#sp_menu .freedial p span {
    font-weight: bold
}

#sp_menu .lang {
    text-align: center;
    margin: 20px 0
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: solid 1px #c0b581;
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out
}

#sp_menu .lang li a:hover {
    background: #4694D1;
    color: #fff
}

#sp_menu .lang li a.cn::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_cn.svg") no-repeat center center/contain;
    margin-right: 8px;
    vertical-align: middle;
    content: ""
}

#sp_menu .lang li a.en::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_en.svg") no-repeat center center/contain;
    margin-right: 8px;
    vertical-align: middle;
    content: ""
}

#sp_menu .sp_menu_logo {
    margin: 20px auto;
    text-align: center
}

#sp_menu .sp_menu_logo img {
    max-width: 300px;
    width: 100%;
    height: auto
}

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0 0 0 45px;
    width: auto;
    min-width: 0;
    color: #4694D1;
    font-size: 1.1rem;
    transition: opacity .15s ease-out
}

#sp_menu .btn_close:hover {
    background: none;
    color: #4694D1 !important;
    opacity: .6
}

#sp_menu .btn_close::before,
#sp_menu .btn_close::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 1px;
    left: 0;
    margin: auto;
    width: 18px;
    height: 1px;
    background: #4694D1;
    content: ""
}

#sp_menu .btn_close::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#sp_menu .btn_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#sp_menu .btn_close::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#sp_menu .btn_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#container {
    float: left;
    width: calc(100% - 220px);
    overflow: hidden
}

.breadcrumbs {
    padding: 5px 10px
}

.breadcrumbs li {
    float: left;
    font-size: 1.1rem
}

.breadcrumbs li::before {
    display: inline-block;
    margin: 0 5px;
    content: "＞"
}

.breadcrumbs li:first-child::before {
    content: ""
}

.breadcrumbs li {
    float: left;
    font-size: 1.1rem
}

.breadcrumbs li a {
    color: #4694D1
}

.paging {
    text-align: center;
    margin: 80px 0
}

.paging li {
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px
}

.paging li a,
.paging li span {
    box-sizing: border-box;
    display: block;
    width: 32px;
    height: 32px;
    padding-top: 2px;
    background: #dcdcdc;
    border-radius: 3px;
    color: #fff
}

.paging li a:hover {
    opacity: .6
}

.paging li .act {
    background: #4694D1
}

.paging li .btn_prev,
.paging li .btn_next {
    border-radius: 0;
    width: 20px;
    height: 20px;
    background: none
}

.paging li .btn_prev {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-top: solid 1px #4694D1;
    border-left: solid 1px #4694D1;
    margin-right: 40px
}

.paging li .btn_next {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    margin-left: 40px
}

#treatment {
    margin: 0 !important;
    padding: 85px 50px 60px 50px;
    background: #f9e7e3 url("../image/treatment_bg0.jpg") no-repeat right top/590px auto;
    overflow: hidden
}

#treatment .inner {
    max-width: 810px;
    margin: auto
}

#contents #treatment .inner {
    max-width: 810px;
    padding-left: 0;
    padding-right: 0
}

#treatment h2 {
    position: relative;
    margin-top: 5px;
    font-size: 2.8rem;
    color: #dc5a8c;
    z-index: 1
}

#treatment h3 {
    position: relative;
    display: inline-block;
    background-color: #dc5a8c;
    border-radius: 50px;
    padding: 2px 20px 3px 20px;
    font-size: 1.4rem;
    color: #fff;
    z-index: 1
}

#treatment h3 span {
    font-size: 1.8rem
}

#treatment nav {
    position: relative;
    display: flex;
    margin-top: 65px
}

#treatment nav .img {
    position: absolute;
    right: 0;
    top: -220px
}

#treatment nav>div {
    box-sizing: border-box;
    position: relative;
    width: 25%;
    padding: 3px
}

#treatment nav>div>div {
    height: 100%;
    background: #fff no-repeat center top/100% auto
}

#treatment nav>div:nth-child(2)>div {
    background-image: url("../image/treatment_img1.webp")
}

#treatment nav>div:nth-child(3)>div {
    background-image: url("../image/treatment_img2.webp")
}

#treatment nav>div:nth-child(4)>div {
    background-image: url("../image/treatment_img3.webp")
}

#treatment nav>div:nth-child(5)>div {
    background-image: url("../image/treatment_img4.webp")
}

#treatment h4 {
    padding: 40px 10px;
    font-size: 2rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff
}

#treatment nav ul {
    padding: 10px
}

#treatment nav li {
    border-top: solid 1px #dcdcdc
}

#treatment nav li:first-child {
    border: none
}

#treatment nav a {
    display: block;
    padding: 8px 0 8px 20px;
    font-size: 1.4rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff;
    transition: color .15s ease-out
}

#treatment nav a img {
    vertical-align: middle
}

#treatment nav a:hover {
    color: #dc5a8c
}

#treatment .btn_arrow2::before {
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

#treatment .btn_arrow2::after {
    top: 0;
    bottom: 0;
    left: 5px;
    margin: auto
}

#treatment nav .btns {
    margin: 0 0 10px 0;
    padding: 10px;
    text-align: center
}

#treatment nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: solid 1px #dc5a8c;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #dc5a8c;
    text-shadow: none;
    transition: all .15s ease-out
}

#treatment nav .btn_more:hover {
    background: #dc5a8c;
    color: #fff !important
}

#treatment .bnr {
    margin: 30px auto auto auto
}

#treatment .bnr a {
    display: block;
    background: #fff;
    max-width: 400px;
    margin: auto;
    padding: 10px;
    transition: all .2s ease-out
}

#treatment .bnr a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#treatment .bnr figure {
    float: left;
    background: no-repeat center center/cover;
    width: 90px
}

#treatment .bnr .txt {
    float: right;
    width: calc(100% - 100px)
}

#treatment .bnr h4 {
    padding: 0;
    margin-bottom: 10px;
    line-height: 1;
    font-size: 1.8rem;
    color: #dc5a8c
}

#treatment .bnr p {
    line-height: 1.4;
    font-size: 1.4rem
}

#treatment .bnr .btn_arrow0 {
    padding-right: 30px
}

#treatment .bnr .btn_arrow0::before {
    background-color: #dc5a8c;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#treatment .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto
}

#treatment2 {
    margin: 0 !important;
    padding: 85px 50px 60px 50px;
    background: url("../image/treatment2_shourei_bg1_pc.png") no-repeat right top/100%, url("../image/treatment2_shourei_bg_pc.jpg") no-repeat center bottom/100%, #ffefeb;
    overflow: hidden
}

#treatment2.overwrite_01 {
    background: url("../image/treatment2_shourei_bg_pc.jpg") no-repeat center bottom/100%, #ffefeb
}

#treatment2 .innerhead {
    max-width: 920px;
    margin: auto
}

#treatment2 .inner {
    max-width: 860px;
    margin: auto
}

#contents #treatment2 .inner {
    padding-left: 0;
    padding-right: 0
}

#treatment2 h2 {
    position: relative;
    margin: 25px auto 0;
    font-size: 3rem;
    color: #dc5a8c;
    z-index: 1
}

#treatment2 h3 {
    position: relative;
    display: inline-block;
    background-color: #db598c;
    border-radius: 50px;
    padding: 9px 20px 10px 20px;
    font-size: 1.6rem;
    color: #fff;
    z-index: 1
}

#treatment2 h3 span {
    font-size: 2rem
}

#treatment2 nav {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 45px
}

#treatment2 nav .img {
    position: absolute;
    right: 64px;
    top: -220px
}

#treatment2 nav>div {
    box-sizing: border-box;
    position: relative;
    width: 200px;
    padding: 0 0 20px 0;
    margin: 0 3px
}

#treatment2 nav>div:last-child {
    padding: 0 0 20px 0
}

#treatment2 nav>div>div {
    height: 100%;
    background: #fff no-repeat center top/100% auto;
    border-radius: 6px
}

#treatment2 nav>div:nth-child(2)>div {
    background-image: url("../image/treatment_img1.webp")
}

#treatment2 nav>div:nth-child(3)>div {
    background-image: url("../image/treatment_img2.webp")
}

#treatment2 nav>div:nth-child(4)>div {
    background-image: url("../image/treatment_img3.webp")
}

#treatment2 nav>div:nth-child(5)>div {
    background-image: url("../image/treatment_img4.webp")
}

#treatment2 h4 {
    padding: 40px 10px;
    font-size: 2rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff
}

#treatment2 nav ul {
    padding: 10px
}

#treatment2 nav li {
    border-top: solid 1px #f4f4f4
}

#treatment2 nav li:first-child {
    border: none
}

#treatment2 nav a {
    display: block;
    padding: 8px 20px 8px 0;
    font-size: 1.4rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff;
    transition: color .15s ease-out
}

#treatment2 nav a img {
    vertical-align: middle
}

#treatment2 nav a:hover {
    color: #dc5a8c
}

#treatment2 .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto
}

#treatment2 .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    right: 6px;
    top: 0;
    bottom: 0;
    margin: auto
}

#treatment2 .btn_more.btn_arrow1::before {
    right: 7px
}

#treatment2 .btn_more.btn_arrow1::after {
    right: 13px
}

#treatment2 nav .btns {
    margin: 0 0 10px 0;
    padding: 10px;
    text-align: center
}

#treatment2 nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: solid 1px #4694D1;
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.3rem;
    color: #4694D1;
    text-shadow: none;
    transition: all .15s ease-out
}

#treatment2 nav .btn_more:hover {
    background: #dc5a8c;
    color: #fff !important
}

#treatment2 .bnr {
    margin: 30px auto auto auto
}

#treatment2 .bnr a {
    display: block;
    background: #b02b5a;
    max-width: 200px;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all .2s ease-out
}

#treatment2 .bnr a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#treatment2 .bnr h4 {
    padding: 0;
    line-height: 1;
    font-size: 1.7rem;
    color: #fff;
    text-shadow: none;
    text-align: center
}

#treatment2 .bnr p {
    line-height: 1.4;
    font-size: 1.4rem
}

#treatment2 .bnr .btn_arrow0 {
    padding-right: 30px
}

#treatment2 .bnr .btn_arrow0::before {
    background-color: #fff;
    top: 0;
    bottom: 0;
    right: 10px;
    width: 18px;
    height: 18px;
    margin: auto
}

#treatment2 .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #db598c;
    border-right: solid 1px #db598c
}

#treatment2 .shoureiphoto {
    background-size: 100%;
    margin-bottom: 0 !important;
    padding: 45px 0
}

#treatment2 .shoureiphoto .inner {
    max-width: 790px
}

#treatment2 .shoureiphoto h2 {
    font-size: 2.6rem;
    color: #333;
    text-align: center;
    padding: 0 0 30px 0
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu {
    border: 1px solid #4694D1;
    border-radius: 9px;
    max-width: 600px;
    margin: 0 auto 30px;
    width: 100%;
    background: #fff
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul {
    list-style-type: none;
    margin: 0 auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: space-between
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li {
    padding: 5px;
    border-left: 1px solid #4694D1;
    flex: 1
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li:first-child {
    border-left: none
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
    display: block;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    background: #fff;
    color: #b5ac6e;
    transition: background-color .5s
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span:hover {
    cursor: pointer;
    background: #eee
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active {
    background: #b5ac6e;
    color: #fff
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
    color: #b5ac6e;
    background: #eee
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts {
    text-align: center;
    padding: 0
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts2_items,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts3_items,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts4_items {
    display: none
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto1-scrollbar,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto2-scrollbar,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto3-scrollbar,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto4-scrollbar {
    margin-top: 20px;
    height: 5px;
    background: #fff
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel {
    width: 300px !important;
    background: #edece8;
    border-top-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
    padding: 0;
    box-sizing: border-box;
    height: auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel:last-child {
    margin: 0 !important
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi {
    background: #fff;
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
    display: flex;
    padding: 15px 20px 5px;
    justify-content: space-between;
    position: relative
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.eximg {
    display: flex;
    align-items: center;
    text-align: center;
    width: 128px;
    height: 128px;
    background-color: #eee
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img img {
    width: 100%;
    height: auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.hfit img {
    width: auto;
    height: 100%;
    margin: auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt {
    font-size: 1.4rem;
    display: block
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt span {
    font-size: 1.2rem;
    display: inline
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.ssmall {
    font-size: 1.2rem;
    display: block
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt span.ssmall {
    font-size: .9rem;
    display: inline
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel h3 {
    position: static;
    background: #fff;
    box-sizing: border-box;
    color: #b02b5a;
    padding: 9px 20px 8px;
    display: block;
    border-radius: unset;
    width: 100%;
    text-align: left;
    font-size: 1.7rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel h3 span {
    display: inline;
    font-size: 1.3rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_desc {
    background: #fff;
    font-size: 1.4rem;
    display: block;
    margin: 0;
    padding: 0 20px
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price {
    background: #fff;
    display: block;
    padding: 0 20px
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price .shourei_price_t {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    font-size: 1.7rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price .shourei_price_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    font-size: 1.2rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk {
    display: block;
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
    padding: 15px 20px
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk .shourei_risk_t {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    font-size: 1.4rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk .shourei_risk_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    font-size: 1.2rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel p {
    font-size: 1.4rem;
    text-align: left;
    margin-bottom: 10px;
    padding-bottom: 1rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel p span {
    color: #b02b5a
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns {
    background: #fff;
    margin: 0 auto;
    padding: 15px 0;
    text-align: center
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link0.btn_arrow1,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link1.btn_arrow1 {
    display: block;
    padding-top: 7px;
    padding-bottom: 7px;
    width: 140px;
    max-width: 100%;
    font-size: 1.5rem;
    color: #4694D1;
    margin: 0 auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    right: 16px;
    top: 0;
    bottom: 0;
    margin: auto
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::before {
    border: solid 1px #fff;
    content: ""
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::after {
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    content: ""
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link0.btn_arrow1 span,
#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link1.btn_arrow1 span {
    color: #b02b5a
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn {
    position: relative
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn p {
    padding-bottom: 5rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn .btns {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px
}

#start {
    padding: 60px 50px;
    background: url("../image/start_bg0.jpg") no-repeat center top/cover;
    text-align: center
}

#start h2 {
    font-size: 2.4rem;
    color: #dc5a8c
}

#start .read {
    margin-top: 10px
}

#start .inner {
    max-width: 720px;
    margin: auto
}

#start ul {
    display: flex
}

#start li {
    box-sizing: border-box;
    padding: 20px 6px
}

#start li:nth-child(1),
#start li:nth-child(2),
#start li:nth-child(3) {
    width: 16.9%
}

#start li:nth-child(4),
#start li:nth-child(5) {
    width: 25.3%
}

#start li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    background: #fff no-repeat center 15px/70px;
    border-radius: 3px;
    padding: 95px 15px 15px 15px;
    line-height: 1.6;
    font-size: 1.4rem;
    transition: all .2s ease-out
}

#start li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
    -webkit-transform: scale(1.04);
    transform: scale(1.04)
}

#start li:nth-child(1) a {
    background-image: url("../image/start_img0.png")
}

#start li:nth-child(2) a {
    background-image: url("../image/start_img1.png")
}

#start li:nth-child(3) a {
    background-image: url("../image/start_img5.png")
}

#start li:nth-child(4) a {
    background-image: url("../image/start_img3.png")
}

#start li:nth-child(5) a {
    background-image: url("../image/start_img4.png")
}

#start .btns {
    margin-top: 10px
}

#start .btn_link {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 18px 40px 18px 20px;
    min-width: 350px;
    max-width: 100%;
    background: #dc5a8c;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    color: #fff !important;
    transition: background .15s ease-out
}

#start .btn_link:hover {
    background: #b02b5a
}

#start .btn_link::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #fff;
    border-radius: 50px;
    content: ""
}

#start .btn_link::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#banner {
    border-top: solid 1px #dcdcdc;
    padding: 30px 0;
    text-align: center
}

#banner li {
    display: inline-block;
    vertical-align: middle;
    margin: 10px 20px
}

#banner li a {
    background: none;
    padding: 0;
    transition: opacity .15s ease-out
}

#banner li a:hover {
    opacity: .7
}

#supervision {
    border-top: solid 1px #dcdcdc;
    padding: 30px 50px;
    margin: 0 !important;
    text-align: center
}

#supervision .inner {
    max-width: 800px;
    margin: auto
}

#supervision p.h_2 {
    font-size: 1.8rem;
    color: #4694D1;
    margin-top: 0
}

#supervision p.read {
    margin-top: .5em;
    margin-bottom: 1em;
    font-size: 1.3rem
}

#supervision p {
    margin-top: 1.5em;
    font-size: 1.3rem
}

#supervision .btns {
    text-align: center
}

#supervision .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#supervision .btns a::before,
#supervision .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#supervision .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

#simple_sv {
    border-top: solid 1px #dcdcdc;
    padding: 30px 0;
    text-align: center
}

#simple_sv .inner {
    max-width: 800px;
    margin: auto
}

#simple_sv p.h_2 {
    font-size: 1.8rem;
    color: #4694D1;
    margin-top: 0
}

#simple_sv p.read {
    margin-top: .5em;
    margin-bottom: 1em;
    font-size: 1.3rem
}

#simple_sv p {
    margin-top: 1.5em;
    font-size: 1.3rem
}

#simple_sv .btns {
    text-align: center;
    margin-bottom: 0 !important
}

#simple_sv .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#simple_sv .btns a::before,
#simple_sv .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#simple_sv .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

footer .block {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

#contact {
    box-sizing: border-box;
    float: left;
    width: 75%;
    border-right: solid 1px #dcdcdc;
    padding-right: 20px;
    margin: 0 !important
}

#contact h2 {
    float: left;
    font-size: 2rem;
    color: #4694D1
}

#contact .head .btns {
    float: left;
    margin: 0 !important;
    margin-left: 30px !important
}

#contact .head .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#contact .head .btns a:hover {
    background: #4694D1;
    color: #fff
}

#contact .head .btns a::before,
#contact .head .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#contact .head .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

#contact .head .btns a:hover::before,
#contact .head .btns a:hover::after {
    border-color: #fff
}

#contact h3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: #4694D1
}

#contact h4 {
    margin-top: 3px;
    font-size: 1.4rem
}

#contact strong {
    display: block;
    margin: 10px 0;
    line-height: 1;
    font-size: 2.4rem;
    color: #444 !important
}

#contact p {
    font-size: 1.2rem
}

#contact ul {
    display: flex;
    margin: 30px -3px 0 -3px
}

#contact li {
    padding: 3px
}

#contact li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    padding: 10px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#contact li a:hover {
    background: #4694D1;
    color: #fff
}

#clinic {
    box-sizing: border-box;
    float: right;
    width: 25%;
    padding-left: 20px;
    margin: 0 !important
}

#clinic .inner {
    max-width: initial !important;
    max-width: auto !important;
    margin: 0 !important;
    padding: 0 !important
}

#clinic h2 {
    font-size: 2rem;
    color: #4694D1
}

#clinic ul {
    margin-top: 10px
}

#clinic li {
    float: left;
    width: 50%;
    margin: 5px 0 10px
}

#clinic ul+h2 {
    margin-top: 30px
}

#clinic .sns {
    max-width: 270px
}

#clinic .sns a[target=_blank] {
    display: block;
    padding-right: 0;
    background: none;
    transition: none
}

#clinic .sns li {
    width: 3.5vw;
    padding-left: 5px;
    padding-right: 1.5vw;
    margin: 15px 0 10px
}

#subject {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

#subject h2 {
    font-size: 2rem;
    color: #4694D1
}

#subject .list {
    display: flex;
    margin: 30px -10px 0 -10px
}

#subject .list_ope {
    flex-wrap: wrap
}

#subject .list>li {
    padding: 0 10px;
    flex-basis: 22%
}

#subject .list_ope>li:nth-child(n+6) {
    margin-top: 30px
}

#subject .list h3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: solid 1px #dcdcdc;
    font-size: 1.6rem
}

#subject .list li li {
    margin: 3px 0
}

#subject .list li {
    font-size: 1.3rem
}

#column_utilities li a,
#subject li a {
    transition: color .15s ease-out
}

#column_utilities li a:hover,
#subject li a:hover {
    color: #fff;
    opacity: .7;
}

#subject nav {
    margin-top: 30px
}

#column_utilities nav li,
#subject nav li {
    display: inline-block;
    /* margin-right: 40px; */
    line-height: 1.2;
    font-size: 1.4rem
}

#column_utilities nav li a,
#subject nav li a {
    display: block;
    position: relative;
}

#column_utilities nav li a img {
    width: 22px;
    margin-right: 8px;
    filter: brightness(100);
}

#subject nav li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#subject nav li a::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 6px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#operation {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

#operation p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

#operation .list {
    display: flex;
    margin: 30px -10px 0 -10px
}

#operation .list_ope {
    flex-wrap: wrap
}

#operation .list>li {
    padding: 0 10px;
    flex-basis: 22%
}

#operation .list_ope>li:nth-child(n+5) {
    margin-top: 30px
}

#operation .list p.h_3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: solid 1px #dcdcdc;
    font-size: 1.6rem
}

#operation .list li li {
    margin: 3px 0
}

#operation .list li {
    font-size: 1.3rem
}

#column_utilities li a,
#operation li a {
    transition: color .15s ease-out
}

#column_utilities li a:hover,
#operation li a:hover {
    color: #fff;
}

#operation nav {
    margin-top: 30px
}

#column_utilities nav li,
#operation nav li {
    display: inline-block;
    /* margin-right: 40px; */
    line-height: 1.2;
    font-size: 1.4rem
}

#column_utilities nav li a,
#operation nav li a {
    display: block;
    position: relative;
}

#operation nav li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#operation nav li a::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 6px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

footer .box {
    background: #509cd3;
    padding: 40px;
    text-align: center;
    color: #fff
}

footer .box nav {
    margin: 30px 0
}

footer .box nav li {
    display: inline-block;
    padding: 0 10px;
    /* border-left: solid 1px #4694D1; */
    line-height: 1;
    font-size: 1.2rem
}

footer .box nav li:first-child {
    border: none
}

footer .box nav li a {
    color: #fff;
    transition: color .15s ease-out
}

footer .box nav li a:hover {
    color: #fff;
    opacity: .7;
}

footer .box p {
    font-size: 1.1rem
}

footer .box h3 {
    margin-bottom: 5px;
    font-size: 1.4rem
}

footer .copy i {
    position: relative;
    top: 1px;
    vertical-align: sub;
    font-size: 200%
}

.hide {
    display: none
}

.unknown-layout {
    border: 1px solid red
}

.sub-display,
.sub-display-inline {
    display: none !important
}

.sub-display-g,
.sub-display-inline-g {
    display: none !important
}

.protect-img {
    cursor: pointer;
    top: 0
}

.visuallyHidden {
    position: absolute;
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    clip: rect(0 0 0 0);
    overflow: hidden
}

#column_contact {
    border-top: solid 1px #dcdcdc;
    padding: 30px 15px 0;
    margin: 0 !important
}

#column_utilities {}

header .googlesearch {
    margin: 12px 0;
    border-radius: 5px;
    background: #e1e1e1;
    padding: 3px 6px
}

header .googlesearch .gsc-search-button-v2 {
    padding: 9px;
    line-height: 0;
    background: url(../image/icon.svg) no-repeat center;
    background-size: 80%;
    border: none;
    height: 32px;
    width: 24px
}

header .googlesearch .gsc-search-button {
    margin-left: 0
}

header .googlesearch .gsc-search-button-v2 svg {
    display: none
}

header .googlesearch .gsc-search-button-v2:hover {
    cursor: pointer
}

header .googlesearch form.gsc-search-box {
    float: none !important;
    margin: 0 !important;
    width: auto !important
}

header .googlesearch table.gsc-search-box {
    margin: 0 !important
}

header .googlesearch .gsc-input-box {
    border: none;
    background: transparent !important
}

header .googlesearch #gsc-i-id1 {
    margin: 0 0 0 1rem !important;
    font-size: 1.2rem;
    width: 90% !important;
    height: 2em !important;
    background: transparent !important
}

header .googlesearch #gsc-i-id1::-webkit-input-placeholder {
    color: #aaa;
    font-size: 1.2rem
}

header .googlesearch #gsc-i-id1::-moz-placeholder {
    color: #aaa;
    font-size: 1.2rem
}

header .googlesearch #gsc-i-id1:-ms-input-placeholder {
    color: #aaa;
    font-size: 1.2rem
}

header .googlesearch #gsc-i-id1::-ms-input-placeholder {
    color: #aaa;
    font-size: 1.2rem
}

header .googlesearch #gsc-i-id1::placeholder {
    color: #aaa;
    font-size: 1.2rem
}

header .googlesearch .gsib_a {
    padding: 0
}

header .googlesearch .gsc-input {
    width: 100%;
    padding: 0px;
    font-size: small
}

header .googlesearch table.gsc-search-box td.gsc-input {
    padding-right: 0
}

header .googlesearch .gsst_a .gscb_a {
    color: #999;
    vertical-align: middle
}

header .googlesearch_sp {
    padding: 0;
    margin: 0
}

header .googlesearch_sp .gsc-search-button-v2 {
    padding: 9px;
    line-height: 0;
    border: 1px solid #4694D1;
    border-radius: 3px
}

header .googlesearch_sp form.gsc-search-box {
    float: none !important;
    margin: 0 !important;
    width: auto !important
}

header .googlesearch_sp .gsc-input {
    width: 100%;
    padding: 0px;
    font-size: small;
    background: transparent
}

header .googlesearch_sp table.gsc-search-box td.gsc-input {
    padding-right: 0
}

header .googlesearch_sp .gsst_a .gscb_a {
    color: #999;
    vertical-align: middle
}

.img_compressed {
    width: 100%
}

.img_auto {
    width: auto !important
}

.img_compressed_60 {
    width: 60%
}

.img_compressed_75 {
    width: 75%
}

.img_compressed_80 {
    width: 80%
}

.img_compressed_44_2 {
    width: 44.2% !important
}

p.h_2,
p.h_3,
p.h_4 {
    line-height: 1.4
}

header p.h_3 {
    font-size: 1.1rem;
    color: #999
}

header p#logo {
    float: none;
    padding: 0
}

header p.h_2 img {
    vertical-align: baseline
}

header .freedial p.h_3 {
    margin-bottom: 10px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.2rem;
    color: #4694D1
}

#contact p.h_2 {
    float: left;
    font-size: 2rem;
    color: #4694D1
}

#contact p.h_3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: #4694D1
}

#contact p.h_4 {
    margin-top: 3px;
    font-size: 1.4rem
}

#clinic p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

#clinic ul+p.h_2 {
    margin-top: 30px
}

#subject p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

#subject .list p.h_3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: solid 1px #dcdcdc;
    font-size: 1.6rem
}

footer .box p.h_3 {
    margin-bottom: 5px;
    font-size: 1.4rem
}

#treatment2 p.h_3 {
    position: relative;
    display: inline-block;
    background-color: #db598c;
    border-radius: 50px;
    padding: 9px 20px 10px 20px;
    font-size: 1.6rem;
    color: #fff;
    z-index: 1
}

#treatment2 p.h_2 {
    position: relative;
    margin: 25px auto 0;
    font-size: 3rem;
    color: #dc5a8c;
    z-index: 1
}

#treatment2 p.h_3 span {
    font-size: 2rem
}

#treatment2 p.h_4 {
    padding: 40px 10px;
    font-size: 2rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff
}

#treatment2 .bnr p.h_4 {
    padding: 0;
    line-height: 1;
    font-size: 1.7rem;
    color: #fff;
    text-shadow: none;
    text-align: center
}

#sp_menu .subject p.h_2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

#sp_menu .subject .list p.h_3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0;
    margin: 0;
    transition: color .15s ease-out
}

#sp_menu .subject .list p.h_3:hover {
    color: #4694D1
}

#sp_menu .subject .list p.h_3::before,
#sp_menu .subject .list p.h_3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    content: ""
}

#sp_menu .subject .list p.h_3::before {
    right: 7px;
    width: 2px;
    height: 16px
}

#sp_menu .subject .list p.h_3::after {
    width: 16px;
    height: 2px
}

#sp_menu .subject .list p.h_3.act::before {
    display: none
}

#sp_menu .mmnav p.h_2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem;
    margin-bottom: 20px
}

#sp_menu .freedial p.h_3 {
    margin-bottom: 5px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: #4694D1
}

#fswords {
    padding: 0 20px;
    text-align: center
}

#fswords .fswords_wrap {
    padding: 20px;
    text-align: center;
    margin: 0 auto;
    width: auto;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    min-width: 550px;
    border-radius: 5px;
    background: #f4f4f4;
    box-sizing: border-box
}

#fswords .fswords_wrap h2 {
    color: #b5ac6e;
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 10px
}

#fswords .fswords_wrap h2:before {
    content: "";
    width: 1.8rem;
    height: 1.8rem;
    background: url("../image/top_icon_fsw.svg") no-repeat center center;
    background-size: 100%;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px
}

#fswords .fswords_wrap ul {
    padding: 5px 5px 0;
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap
}

#fswords .fswords_wrap ul li {
    padding: 0 5px 5px
}

#fswords .fswords_wrap ul li a {
    padding: 6px 14px;
    display: inline-block;
    border-radius: 5px;
    text-align: center;
    background: #fff;
    font-size: 1.4rem;
    transition: all .2s ease-out
}

#fswords .fswords_wrap ul li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .section p.mishounin a {
    word-break: break-all
}

#contents .section p.mishounin {
    font-size: 1.2rem
}

#contents .section_media_news {
    padding-bottom: 50px;
    margin: auto;
    background: #fff;
    box-sizing: border-box
}

#contents .section_media_news .p-0 {
    padding: 0 !important
}

#contents .section_media_news h2 {
    width: 100%;
    line-height: 0;
    text-align: center;
    margin: 0 auto 10px !important;
    box-sizing: border-box;
    border: none !important;
    padding: 0 !important
}

#contents .section_media_news h2 img {
    width: 100%;
    max-width: 350px;
    height: auto
}

#contents .section_media_news h2 img.imgsc2 {
    max-width: 500px
}

#contents .section_media_news .block_media_news ul {
    list-style-type: none;
    display: flex;
    flex-wrap: wrap
}

#contents .section_media_news .block_media_news ul li {
    padding: 0 10px 35px;
    width: 25%;
    box-sizing: border-box
}

#contents .section_media_news .block_media_news ul li a {
    display: block;
    width: 100%;
    transition: all .2s ease-out
}

#contents .section_media_news .block_media_news ul li a:hover {
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .section_media_news .block_media_news ul li figure.media_image img {
    aspect-ratio: 1/1;
    box-sizing: border-box;
    border: 1px solid #f5f5f5;
    width: 100%;
    height: auto
}

#contents .section_media_news .block_media_news ul li p {
    font-size: 1.4rem;
    margin: 1rem 0;
    padding: 0;
    display: block;
    width: 100%;
    font-weight: bold;
    box-sizing: border-box;
    color: #333 !important
}

#contents .section_media_news .block_media_news ul li .block_media_news_doc_info {
    box-sizing: border-box
}

#contents .section_media_news .block_media_news ul li .block_media_news_doc_info::after {
    content: "";
    display: block;
    clear: both
}

#contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_face {
    width: 25%;
    float: right
}

#contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_face img {
    width: 100%;
    height: auto
}

#contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_name {
    font-weight: bold;
    border-bottom: 1px solid #ad9e5f;
    font-size: 1.2rem;
    padding-top: 6%;
    color: #333 !important
}

#contents .section_media_news .block_media_news ul li .block_media_update {
    font-size: 1rem;
    color: #333 !important
}

#contents .section_media_news .block_media_news_btn {
    margin: 40px auto;
    text-align: center;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box
}

#contents .section_media_news .block_media_news_btn a {
    text-decoration: none;
    color: #333 !important;
    display: block;
    width: 100%;
    padding: 24px;
    max-width: 400px;
    border: 1px solid #ad9e5f;
    position: relative;
    vertical-align: middle;
    border-radius: 60px;
    margin: 0 auto;
    line-height: 1;
    transition: all .2s ease-out;
    box-sizing: border-box
}

#contents .section_media_news .block_media_news_btn a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .section_media_news .block_media_news_btn a::before,
#contents .section_media_news .block_media_news_btn a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle
}

#contents .section_media_news .block_media_news_btn a::before {
    right: 20px;
    left: auto;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 6px solid #ad9e5f
}

#head {
    margin-top: 0 !important;
    background: no-repeat center center/cover;
    height: 380px;
}

#head .inner {
    position: relative;
    height: 100%
}

#head .txt {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#head h1 {
    font-size: 3.2rem;
    color: #4694D1
}

#head h1 span {
    font-size: 2.4rem
}

#head h1 span.no-display,
#head h1 span.sub-display-inline {
    font-size: 3.2rem
}

#head h2 {
    margin-top: 1em;
    line-height: 1.6;
    font-size: 1.6rem
}

#contents section,
#contents .block {
    margin: 40px 0
}

#contents .inner {
    max-width: 768px;
    margin: auto;
    padding: 0 30px
}

#contents .accordion_content>.inner>p:nth-of-type(1) {
    padding-top: 20px;
    border-top: solid 1px #4694D1
}

#contents h2.ttl {
    margin-bottom: 1em;
    font-size: 2.4rem;
    color: #4694D1
}

#contents h3.ttl {
    margin-bottom: .6em;
    text-align: center;
    color: #4694D1;
    font-size: 2rem
}

#contents h3.ttl span {
    font-size: 1.6rem
}

#contents h3.mov_ttl {
    margin-top: 20px;
    font-size: 1.7rem
}

.carousel-link {
    text-align: right;
    margin-top: -20px
}

.carousel-link a {
    text-decoration: underline
}

.carousel-link a:hover {
    text-decoration: none
}

#contents h2.sec_h {
    border-left: solid 4px #4694D1;
    margin-bottom: 1em;
    padding-left: 15px;
    font-size: 2.4rem;
    color: #333;
}

#contents h2.sec_h+* {
    margin-top: 0
}

#contents h3.sec_h {
    margin-bottom: 30px;
    font-size: 2rem;
    color: #3c3f3e
}

#contents h3.ornament_h {
    background: url("../image/ornament2.png") no-repeat center bottom/472px auto;
    margin-top: 40px;
    padding-bottom: 25px;
    text-align: center;
    font-size: 2.2rem;
    color: #4694D1
}

#contents h2.ornament0 {
    margin-bottom: 30px;
    padding: 40px 0 0 0;
    background: url("../image/ornament0.png") no-repeat center top/90px auto;
    text-align: center;
    font-size: 2.4rem;
    color: #4694D1
}

#contents h2.ornament5 {
    text-align: center;
    font-size: 2.4rem;
    color: #4694D1
}

#contents h2.ornament5 span {
    display: inline-block;
    position: relative
}

#contents h2.ornament5 span::before,
#contents h2.ornament5 span::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 73px;
    height: 25px;
    background: url("../image/ornament5.png") no-repeat center center/contain;
    content: ""
}

#contents h2.ornament5 span::before {
    left: -100px
}

#contents h2.ornament5 span::after {
    right: -100px;
    -webkit-transform: rotate(180deg) scaleY(-1);
    transform: rotate(180deg) scaleY(-1)
}

#contents .ornament7 span {
    display: inline-block;
    position: relative
}

#contents .ornament7 span::before,
#contents .ornament7 span::after {
    display: block;
    position: absolute;
    top: 5px;
    bottom: 0;
    margin: auto;
    width: 43px;
    height: 12px;
    background: url("../image/ornament7.png") no-repeat center center/contain;
    content: ""
}

#contents .ornament7 span::before {
    left: -70px
}

#contents .ornament7 span::after {
    right: -70px;
    -webkit-transform: rotate(180deg) scaleY(-1);
    transform: rotate(180deg) scaleY(-1)
}

#contents .ornament9 {
    text-align: center;
    color: #4694D1
}

#contents .ornament9 span {
    display: inline-block;
    position: relative
}

#contents .ornament9 span::before,
#contents .ornament9 span::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: -5px;
    width: 30px;
    height: 50px;
    background: url("../image/ornament9.png") no-repeat center center/contain;
    content: ""
}

#contents .ornament9 span::before {
    left: -40px
}

#contents .ornament9 span::after {
    right: -37px;
    -webkit-transform: rotate(180deg) scaleY(-1);
    transform: rotate(180deg) scaleY(-1)
}

#contents h3.h_wbox {
    position: relative;
    margin: 40px 0 1.2em 0;
    padding: 5px 0 0 100px;
    line-height: 1.6;
    font-size: 2.2rem;
    color: #4694D1
}

#contents h3.h_wbox+* {
    margin-top: 0
}

#contents h3.h_wbox b {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 80px;
    height: 80px;
    background: #4694D1;
    text-align: center;
    font-size: 2.4rem;
    color: #fff
}

#contents h3.h_wbox i {
    display: block;
    font-size: 2rem
}

#contents h3.h_wbox span {
    position: absolute;
    display: block;
    width: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#contents h2.h_block {
    padding: 7px 10px;
    background: #4694D1;
    text-align: center;
    font-size: 2.4rem;
    color: #fff
}

#contents h3.h_block,
#contents h3.h_block_exclam {
    margin-bottom: 15px;
    padding: 7px 10px;
    background: #4694D1;
    font-size: 1.8rem;
    color: #fff
}

#contents h3.h_block_exclam {
    position: relative;
    padding-left: 55px
}

#contents h3.h_block_exclam::before {
    display: block;
    width: 56px;
    height: 56px;
    position: absolute;
    left: -10px;
    top: -10px;
    background: url("../image/icon_exclam.svg") no-repeat center center/contain;
    content: ""
}

#contents p.note {
    font-size: .875em
}

#contents figure+p,
#contents .carousel+p {
    margin-top: 1em
}

#contents p+p {
    margin-top: 1.5em;
}

#contents strong {
    /* color: #4694D1; */
    font-weight: bold;
}

#contents figure {
    text-align: center
}

#contents figure .cap {
    background: #e3e2df;
    padding: 5px
}

#contents .tal {
    text-align: left !important
}

#contents .tar {
    text-align: right !important
}

#contents .tac {
    text-align: center !important
}

#contents table {
    width: 100%
}

#contents .table_col2 {
    margin: 10px 0
}

#contents .table_col2 tr {
    border: solid 1px #4694D1
}

#contents .table_col2 th,
#contents .table_col2 td {
    padding: 10px 15px
}

#contents .table_col2 th {
    color: #4694D1;
    background: #eae9e6;
    width: 35%
}

#contents .table_col1 {
    margin: 10px 0;
    table-layout: fixed
}

#contents .table_col1 tr {
    border: solid 1px #4694D1
}

#contents .table_col1 th {
    padding: 10px 15px;
    text-align: left;
    color: #4694D1;
    background: #eae9e6;
    width: 100%
}

#contents .table_col1 td {
    padding: 10px 15px;
    text-align: left;
    vertical-align: top
}

#contents .table_col1 td .attention_mini {
    font-size: 1.1rem
}

#contents .table_col1 td .emphasis {
    color: #b02b5a;
    font-size: 2.2rem
}

#contents .table_col1 td .emphasis_small {
    font-size: 1.6rem
}

#contents .table_col1 col:nth-child(1) {
    width: 54%
}

#contents .table_col1 col:nth-child(2) {
    width: 46%
}

#contents .table_multi th,
#contents .table_multi td {
    padding: 6px 10px;
    border: solid 1px #d7d2ad;
    font-size: 1.2rem
}

#contents .table_multi th {
    background: #4694D1;
    color: #fff
}

#contents .table_multi thead tr:nth-child(1) th {
    background: none;
    color: #b02b5a
}

#contents .table_multi thead tr:nth-child(1) th.link_none {
    background: none;
    color: #444
}

#contents .table_multi thead tr.col2:nth-child(1) th:nth-child(n+2) {
    width: 42.5%
}

#contents .table_multi thead tr.col3:nth-child(1) th:nth-child(n+2) {
    width: 28.3%
}

#contents .table_multi thead tr.col4:nth-child(1) th:nth-child(n+2) {
    width: 21.25%
}

#contents .table_multi thead tr.col5:nth-child(1) th:nth-child(n+2) {
    width: 17%
}

#contents .table_multi tr:first-child th,
#contents .table_multi tr:first-child td {
    border-top-color: #4694D1
}

#contents .table_multi th:first-child,
#contents .table_multi td:first-child {
    border-left-color: #4694D1
}

#contents .table_multi th:last-child,
#contents .table_multi td:last-child {
    border-right-color: #4694D1
}

#contents .table_multi tr:last-child th,
#contents .table_multi tr:last-child td {
    border-bottom-color: #4694D1
}

#contents .table_multi .bg_color {
    background: #e7e4ce !important
}

#contents .table_multi_side th,
#contents .table_multi_side td {
    padding: 6px 10px;
    border: solid 1px #d7d2ad;
    font-size: 1.2rem
}

#contents .table_multi_side th {
    background: #4694D1;
    color: #fff
}

#contents .table_multi_side tbody tr:nth-child(1) th {
    background: none;
    color: #b02b5a
}

#contents .table_multi_side thead tr:nth-child(1) th.link_none {
    background: none;
    color: #444
}

#contents .table_multi_side thead tr.col2:nth-child(1) th:nth-child(n+2) {
    width: 42.5%
}

#contents .table_multi_side thead tr.col3:nth-child(1) th:nth-child(n+2) {
    width: 28.3%
}

#contents .table_multi_side thead tr.col4:nth-child(1) th:nth-child(n+2) {
    width: 21.25%
}

#contents .table_multi_side thead tr.col5:nth-child(1) th:nth-child(n+2) {
    width: 17%
}

#contents .table_multi_side tr:first-child th,
#contents .table_multi_side tr:first-child td {
    border-top-color: #4694D1
}

#contents .table_multi_side th:first-child,
#contents .table_multi_side td:first-child {
    border-left-color: #4694D1
}

#contents .table_multi_side th:last-child,
#contents .table_multi_side td:last-child {
    border-right-color: #4694D1
}

#contents .table_multi_side tr:last-child th,
#contents .table_multi_side tr:last-child td {
    border-bottom-color: #4694D1
}

#contents .table_multi_side .bg_color {
    background: #e7e4ce !important
}

#contents .btns {
    margin: 40px 0;
    text-align: center
}

#contents .btns_anchor {
    display: flex;
    width: 100%;
    margin: 0 -2px 20px -2px
}

#contents .btns_anchor {
    display: flex
}

#contents .btns_anchor li {
    box-sizing: border-box;
    width: 50%;
    padding: 0 2px;
    font-size: 1.4rem
}

#contents .btns_anchor li a {
    box-sizing: border-box;
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    background: #eae9e6;
    border-radius: 2px;
    padding: 7px 25px;
    text-align: center;
    vertical-align: middle;
    transition: background .15s ease-out, color .15s ease-out
}

#contents .btns_anchor li a:hover {
    background: #f0f0ed;
    color: #4694D1
}

#contents .btns_anchor li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 8px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .btns_anchor li a::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 2px;
    right: 15px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-bottom: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .btns_anchor li a span {
    display: table-cell;
    width: 100%;
    vertical-align: middle
}

#contents .embed_video {
    text-align: center
}

#contents iframe {
    max-width: 100%
}

#contents .anchors {
    margin: -3px 0 -10px 0
}

#contents #anchor_body {
    margin: -13px 0 -20px 0
}

#contents .anchors ol {
    display: flex;
    margin: 0 -2px
}

#contents .anchors p+ol {
    margin-top: 30px
}

#contents .anchors li {
    box-sizing: border-box;
    flex: 1;
    padding: 2px
}

#contents .anchors li a {
    box-sizing: border-box;
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    padding: 10px 30px 10px 10px;
    background: #eae9e6;
    border-radius: 2px;
    text-align: left;
    line-height: 1.5;
    letter-spacing: -0.1em;
    font-size: 1.5rem;
    transition: background .15s ease-out, color .15s ease-out
}

#contents .anchors li .photo_btn {
    background: #fff !important;
    color: #4694D1 !important;
    border: solid 1px #4694D1 !important
}

#contents .anchors li .photo_btn::after {
    -webkit-transform: rotate(-45deg) !important;
    transform: rotate(-45deg) !important;
    bottom: 1px !important;
    right: 18px !important
}

#contents .anchors li a::before {
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .anchors li a::after {
    display: block;
    width: 3px;
    height: 3px;
    position: absolute;
    top: 0;
    bottom: 2px;
    right: 17px;
    margin: auto;
    border-bottom: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .anchors li a span {
    display: table-cell;
    width: 100%;
    height: 100%;
    vertical-align: middle
}

#contents .anchors .note {
    font-size: 1.3rem;
    margin: 1em 0 0 0
}

#contents .decorbox {
    box-sizing: border-box;
    position: relative;
    margin: 40px 0;
    padding: 20px 30px;
    /*    -o-border-image: url("../image/decorbox_bg0.png") 15;
    border-image: url("../image/decorbox_bg0.png") 15;*/
    border-width: 15px;
    border-style: solid
}

#contents .decorbox .border_h,
#contents .decorbox .border_h_s {
    border-bottom: solid 1px #4694D1;
    padding-bottom: 10px;
    margin-bottom: 10px;
    text-align: center;
    font-size: 2rem;
    color: #4694D1
}

#contents .decorbox .border_h_s {
    text-align: left;
    font-size: 1.8rem
}

#contents .decorbox ol li {
    position: relative;
    margin-bottom: .2em;
    padding-left: 1.3em;
    font-size: 1.8rem
}

#contents .decorbox ol span {
    display: inline-block;
    position: absolute;
    left: 0;
    margin-right: .3em;
    color: #4694D1
}

#contents .decorbox.point h2 {
    float: left;
    width: 28%
}

#contents .decorbox.point h2 em {
    display: block;
    font-size: 2.8rem;
    color: #4694D1
}

#contents .decorbox.point ol {
    float: left;
    width: 49%
}

#contents .decorbox.point figure {
    float: right;
    width: 22%
}

#contents .wide_block {
    padding: 30px 0;
    background: #eae9e6
}

#contents .wide_block.img_l .txt {
    float: left;
    width: calc(100% - 230px)
}

#contents .wide_block.img_l figure {
    float: right
}

#contents .wide_block h2 {
    margin-bottom: 1em;
    font-size: 2.4rem;
    color: #4694D1
}

#contents .img_block {
    margin: 40px 0;
    text-align: center
}

#contents .img_block img+p {
    margin: 10px 0 0 0;
    text-align: center
}

#contents .divide2::before,
#contents .divide2::after,
#contents .divide3::before,
#contents .divide3::after {
    content: "";
    display: table
}

#contents .divide2::after,
#contents .divide3::after {
    clear: both
}

#contents .divide2 {
    margin: 40px -13px
}

#contents .divide3 {
    margin: 40px -9px
}

#contents .divide2>* {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 0 13px
}

#contents .divide2>.div_col2 {
    width: 100%
}

#contents .divide2>.full-width {
    box-sizing: border-box;
    float: none;
    width: auto
}

#contents .divide2>.left {
    float: left
}

#contents .divide2>.right {
    float: right
}

#contents .divide3>* {
    box-sizing: border-box;
    float: left;
    width: 33.3%;
    padding: 0 9px
}

#contents .divide3>.col2 {
    width: 66.6%
}

#contents .divide2 .decorbox,
#contents .divide3 .decorbox {
    margin: 0
}

#contents .divide2 .col30 {
    width: 30%
}

#contents .divide2 .col40 {
    width: 40%
}

#contents .divide2 .col58 {
    width: 58%
}

#contents .divide2 .col58+* {
    width: 42%;
    float: right
}

#contents .divide2 .col60 {
    width: 60%
}

#contents .divide2 .col70 {
    width: 70%
}

#contents .divide2 .col75 {
    width: 75%
}

#contents .divide2 .col25,
#contents .divide2 .col75+* {
    width: 25%;
    text-align: center
}

#contents .about_block .divide2.tech_divide figure {
    float: right;
    width: 34%
}

#contents .about_block .divide2.tech_divide p {
    float: none;
    width: 100%;
    margin-top: 0
}

#contents .ba_block {
    padding: 30px 0;
    background: #eae9e6;
    text-align: center
}

#contents .ba_block+.ba_block {
    margin-top: -38px
}

#contents .ba_block h2 {
    display: inline-block;
    background: #4694D1;
    padding: 3px 10px;
    margin-bottom: 1em;
    font-size: 2rem;
    color: #fff
}

#contents .ba_block li h3 {
    text-align: center;
    font-size: 1.8rem;
    color: #4694D1;
    margin-top: 10px
}

#contents .ba_block li h3 span {
    font-size: 1.4rem
}

#contents .ba_block li figure {
    margin: 10px 0
}

#contents .ba_block li p {
    text-align: left;
    font-size: 1.4rem
}

#contents .ba_block .btns {
    margin-top: 20px;
    margin-bottom: 0
}

#contents .ba_block .divide2,
#contents .ba_block .divide3 {
    margin-top: 20px;
    margin-bottom: 0
}

#contents .ba_block .photo_attention {
    margin-top: 20px;
    margin-bottom: -10px;
    font-size: 1.1rem
}

#contents .carousel {
    position: relative;
    margin: 30px 0
}

#contents .responsive_carousel,
#contents .responsive_carousel_standard,
#contents .responsive_carousel_static {
    display: none
}

#contents .responsive_carousel {
    position: relative;
    padding: 0 30px;
    margin-top: 20px !important
}

#contents .responsive_carousel_standard {
    position: relative;
    padding: 0 30px;
    margin-top: 20px !important
}

#contents .carousel .carousel_inner {
    position: relative;
    margin: 0 50px;
    overflow: hidden
}

#contents .carousel figure {
    text-align: center
}

#contents .carousel figure .carousel_img {
    width: 188px
}

#contents .carousel .carousel_inner ol {
    position: relative
}

#contents .carousel .carousel_inner ol li {
    position: absolute;
    width: 100%
}

#contents .carousel .carousel_inner h3 {
    margin-bottom: 30px;
    text-align: center;
    font-size: 2.2rem
}

#contents .responsive_carousel .slick-prev,
#contents .responsive_carousel .slick-next,
#contents .responsive_carousel_standard .slick-prev,
#contents .responsive_carousel_standard .slick-next,
#contents .carousel .btn_prev,
#contents .carousel .btn_next {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 20px;
    height: 20px;
    cursor: pointer;
    transition: opacity .15s ease-out
}

#contents .responsive_carousel .slick-prev,
#contents .responsive_carousel_standard .slick-prev,
#contents .carousel .btn_prev {
    left: -5px;
    border-top: solid 2px #4694D1;
    border-left: solid 2px #4694D1;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#contents .responsive_carousel .slick-prev,
#contents .responsive_carousel_standard .slick-prev {
    left: 5px
}

#contents .responsive_carousel .slick-next,
#contents .responsive_carousel_standard .slick-next,
#contents .carousel .btn_next {
    right: -5px;
    border-top: solid 2px #4694D1;
    border-right: solid 2px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#contents .responsive_carousel .slick-next,
#contents .responsive_carousel_standard .slick-next {
    right: 5px
}

#contents .responsive_carousel .slick-disabled,
#contents .responsive_carousel_standard .slick-disabled {
    display: none !important
}

#contents .carousel_pos {
    margin-top: 30px;
    text-align: center
}

#contents .carousel_pos li {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin: 6px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    background: #fff;
    cursor: pointer;
    transition: opacity .15s ease-out
}

#contents .carousel_pos li.act {
    background: #4694D1
}

#contents .carousel_inner .divide2,
#contents .carousel_inner .divide3 {
    margin-top: 0;
    margin-bottom: 0
}

#contents .carousel_inner .divide2>.btns {
    clear: both;
    width: 100%;
    margin-bottom: 15px
}

#contents .carousel_inner .divide2>.btns .btn_link_l {
    text-align: left;
    padding-left: 15px
}

#contents .responsive_carousel .cap {
    margin: 0
}

#contents .responsive_carousel .cap a {
    display: block
}

#contents .responsive_carousel .cap a img {
    width: 100%;
    height: auto
}

#contents .responsive_carousel .tit {
    text-align: left;
    margin-top: 5px
}

#contents .responsive_carousel .tit.caution {
    position: relative;
    padding-top: 36px
}

#contents .responsive_carousel .tit.caution::after {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    content: "閲覧注意";
    border: solid 1px #b02b5a;
    border-radius: 50px;
    padding: 0 10px 0 40px;
    background: url("../image/icon_attention1.svg") no-repeat 9px center/23px auto;
    color: #b02b5a
}

#contents .responsive_carousel div.caution .tit {
    position: relative;
    padding-top: 36px
}

#contents .responsive_carousel div.caution .tit::after {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    content: "閲覧注意";
    border: solid 1px #b02b5a;
    border-radius: 50px;
    padding: 0 10px 0 40px;
    background: url("../image/icon_attention1.svg") no-repeat 9px center/23px auto;
    color: #b02b5a
}

#contents .responsive_carousel .slick-dots {
    display: none
}

#contents .responsive_carousel_standard .cap {
    margin: 0
}

#contents .responsive_carousel_standard .cap a {
    display: block
}

#contents .responsive_carousel_standard .cap a img {
    width: 100%;
    height: auto
}

#contents .responsive_carousel_standard .tit {
    text-align: left;
    margin-top: 5px
}

#contents .responsive_carousel_standard .carousel_item {
    padding: 0;
    box-sizing: border-box
}

#contents .responsive_carousel_standard .carousel_item a {
    display: block;
    transition: opacity .15s ease-out
}

#contents .responsive_carousel_standard .carousel_item figure {
    border: solid 1px #fff;
    box-shadow: 0 0 1px 1px rgba(0, 0, 0, .1);
    box-sizing: border-box;
    display: inline-block
}

#contents .responsive_carousel_standard .carousel_item p {
    font-size: 1.4rem;
    margin-top: 8px
}

#contents .responsive_carousel_standard .carousel_item img {
    width: auto;
    height: 180px
}

#contents .responsive_carousel_standard .slick-dots {
    display: none !important
}

#contents .loop_carousel {
    position: relative;
    margin: 30px 0
}

#contents .loop_carousel .carousel_inner {
    position: relative;
    margin: 0;
    overflow: hidden
}

#contents .loop_carousel figure {
    text-align: center
}

#contents .loop_carousel figure img {
    width: 100%
}

#contents .loop_carousel .carousel_inner ol {
    position: relative;
    left: 50%
}

#contents .loop_carousel .carousel_inner ol li {
    position: absolute;
    width: 305px;
    padding: 0 40px
}

#contents .loop_carousel .carousel_inner ol li>a,
#contents .loop_carousel .carousel_inner ol li>span {
    display: block
}

#contents .loop_carousel .btn_prev,
#contents .loop_carousel .btn_next {
    position: absolute;
    top: -125px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    transition: opacity .15s ease-out
}

#contents .loop_carousel .btn_prev {
    left: 50%;
    border-top: solid 2px #4694D1;
    border-left: solid 2px #4694D1;
    -webkit-transform: rotate(-45deg) translateX(-280px);
    transform: rotate(-45deg) translateX(-280px)
}

#contents .loop_carousel .btn_next {
    right: 50%;
    border-top: solid 2px #4694D1;
    border-right: solid 2px #4694D1;
    -webkit-transform: rotate(45deg) translateX(280px);
    transform: rotate(45deg) translateX(280px)
}

#contents .accordion>li {
    border: solid 1px #4694D1;
    border-radius: 4px;
    padding: 10px
}

#contents .accordion>li+li {
    margin-top: 20px
}

#contents .accordion_h {
    box-sizing: border-box;
    display: table;
    width: 100%;
    position: relative;
    padding: 10px 30px 10px 10px;
    font-size: 1.8rem;
    transition: opacity .15s ease-out;
    cursor: pointer
}

#contents .no_accordion_content .accordion_h {
    cursor: default
}

#contents .accordion_h span {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    width: 100%
}

#contents .accordion_h::before {
    display: block;
    width: 18px;
    height: 18px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .accordion_h::after {
    display: block;
    width: 3px;
    height: 3px;
    position: absolute;
    top: 0;
    bottom: 2px;
    right: 8px;
    margin: auto;
    border-bottom: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .accordion_h.act::after {
    bottom: -2px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

#contents .no_accordion_content .accordion_h:hover {
    opacity: 1
}

#contents .no_accordion_content .accordion_h::before {
    display: none
}

#contents .no_accordion_content .accordion_h::after {
    display: none
}

#contents .accordion_content {
    padding-top: 20px
}

#contents .accordion_content .inner {
    padding: 0 20px
}

#contents .accordion_content .inner .border,
#contents .accordion_content .inner .texts {
    padding-top: 20px;
    border-top: solid 1px #4694D1
}

#contents .accordion_content .inner .texts p:before,
#contents .accordion_content .inner .texts p:after {
    content: "";
    display: table
}

#contents .accordion_content .inner .texts p:after {
    clear: both
}

#contents .accordion_content .inner .border .texts {
    padding-top: 0;
    border-top: none
}

#contents .accordion_content h4 {
    margin-bottom: 30px;
    color: #4694D1
}

#contents .accordion_content h4 span.stit {
    color: #444;
    font-size: 92%
}

#contents .accordion_content h5 {
    margin: 2em 0 1em 0;
    font-weight: bold;
    font-size: 2rem;
    color: #4694D1
}

#contents .accordion_content h5:first-child {
    margin-top: 0
}

#contents .accordion_content h6 {
    margin: 2em 0 1em 0;
    font-weight: bold
}

#contents .accordion_content figure {
    text-align: center
}

#contents .accordion_content figure.imgs img {
    margin: 10px
}

#contents .accordion_content figure .accordion_img {
    height: 172px !important
}

#contents .accordion_content figure p,
#contents .accordion_content p+figure,
#contents .accordion_content figure+p {
    margin-top: 1em
}

#contents .accordion_content p img {
    float: right;
    max-width: 260px;
    margin: 0 0 20px 30px
}

#contents .accordion_content p .inline-figure {
    float: right;
    display: inline-block;
    max-width: 260px;
    margin: 0 0 20px 30px
}

#contents .accordion_content p .inline-figure .cap {
    margin-top: 5px;
    font-size: 12px;
    display: inline-block;
    line-height: 1.7
}

#contents .accordion_content p .inline-figure img {
    float: none;
    width: 100%;
    margin: 0
}

#contents .accordion_content .box {
    margin: 2em 0;
    padding: 20px;
    background: #eae9e6
}

#contents .accordion .h_wimg {
    display: flex;
    padding: 0 0 20px;
    border-bottom: solid 1px #4694D1
}

#contents .accordion .h_wimg>* {
    align-self: center
}

#contents .accordion_content .h_wimg figure {
    margin-right: 20px
}

#contents .accordion .ba_block,
#contents .accordion .ba_block+.inner {
    margin-top: 40px
}

#contents .summary {
    margin: 60px 0
}

#contents .summary {
    margin: 60px 0
}

#contents .summary h3 {
    margin-bottom: .5em;
    font-size: 1.8rem;
    color: #4694D1;
    text-align: center
}

#contents .summary h2 {
    font-size: 2.4rem;
    color: #4694D1;
    text-align: center
}

#contents .summary h2+p {
    margin-top: 1.5em
}

#contents .summary p img {
    float: right;
    display: inline-block;
    margin: 0 0 20px 20px
}

#contents .shadow_box_wimg {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1)
}

#contents .shadow_box_wimg:before,
#contents .shadow_box_wimg:after {
    content: "";
    display: table
}

#contents .shadow_box_wimg:after {
    clear: both
}

#contents .shadow_box_wimg {
    padding: 15px;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1)
}

#contents .shadow_box_wimg .txt {
    float: left
}

#contents .shadow_box_wimg figure img {
    margin-top: 10px
}

#contents .shadow_box_wimg h4 {
    font-size: 1.8rem;
    color: #4694D1
}

#contents .shadow_box_wimg p {
    margin-top: .5em;
    font-size: 1.4rem
}

#contents .contact_block {
    margin: 60px 0
}

#contents .contact_block h2 {
    font-size: 2.1rem;
    color: #4694D1;
    text-align: center
}

#contents .contact_block ul {
    margin: 15px -10px 0 -10px
}

#contents .contact_block li {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 10px;
    margin: 0
}

#contents .contact_block li a {
    position: relative;
    display: block;
    padding: 10px 30px 10px 70px;
    border-radius: 3px;
    color: #fff;
    transition: all .2s ease-out
}

#contents .contact_block li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .contact_block li a.btn_reserve,
#contents .contact_block li a.btn_mail {
    box-sizing: border-box;
    height: 53px;
}

#contents .contact_block li a.btn_reserve {}

#contents .contact_block li a.btn_reserve {
    background: #4694D1 url(../image/icon_calendar0_w.svg) no-repeat 12px center/48px auto;
}

#contents .contact_block li a.btn_mail {
    background: #4694D1 url("../image/icon_mail_w.svg") no-repeat 10px center/45px auto;
}

#contents .contact_block li a.btn_tel {
    background: #4694D1 url("../image/icon_tel0_w.svg") no-repeat 10px center/48px auto;
}

#contents .contact_block li a.btn_tel h3 {
    padding: 1px 0;
    font-size: 3.5rem
}

#contents .contact_block li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #fff;
    border-radius: 50px;
    content: ""
}

#contents .contact_block li a::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .contact_block li a h3 {
    font-size: 2rem;
    line-height: normal;
}

#contents .contact_block li a p {
    font-size: 1.4rem
}

#contents .notice_box {
    border: solid 1px #4694D1;
    padding: 40px
}

#contents .notice_box h2 {
    padding: 60px 0 0 0;
    background: url("../image/icon_exclam.svg") no-repeat center top/40px auto;
    text-align: center;
    font-size: 2rem;
    color: #4694D1
}

#contents .notice_box .divide2+.divide2 {
    border-top: solid 1px #d2cba5;
    padding-top: 40px
}

#contents .notice_box h3 {
    font-size: 1.8rem;
    margin-bottom: 1em
}

#contents .notice_box .btns {
    text-align: left;
    margin-bottom: 0
}

#contents .notice_box .ba h4 {
    margin-top: 40px;
    text-align: center
}

#contents .notice_box .ba h4:first-child {
    margin-top: 0
}

#contents .notice_box .ba figure {
    margin: 10px 0
}

#contents .notice_box .ba p {
    font-size: 1.4rem
}

#contents .notice_box strong {
    color: #b02b5a
}

#contents .notice_box em {
    color: #4694D1
}

#contents .price_block {
    position: relative;
    padding: 60px 0
}

#contents .price_block .inner {
    position: relative
}

#contents .price_block::before {
    display: block;
    position: absolute;
    background: url("../image/ope_price_bg0.jpg") no-repeat right top, linear-gradient(#fcfbf9, #fff);
    width: 100%;
    height: 280px;
    top: 0;
    left: 0;
    content: "";
    z-index: -1
}

#contents .price_block .list+h3 {
    margin-top: 80px
}

#contents .price_block .list li {
    padding: 35px 0;
    border-bottom: solid 1px #d2cba5
}

#contents .price_block .list figure {
    float: left
}

#contents .price_block .list .txt {
    float: right;
    width: calc(100% - 130px)
}

#contents .price_block .list h4 {
    margin-bottom: 10px;
    font-size: 2rem;
    color: #4694D1
}

#contents .price_block .list p {
    float: left;
    width: calc(100% - 180px);
    font-size: 1.4rem
}

#contents .price_block .list .btns {
    float: right;
    width: 150px;
    margin: 0
}

#contents .price_block .list .btns>div+div {
    margin: 10px 0 0 0
}

#contents .btns_block {
    margin: 50px 0
}

#contents .btns_block a+a {
    margin-top: 20px
}

#contents .links_block {
    margin-bottom: 20px;
    padding: 30px 0 5px 0;
    background: #eae9e6;
    text-align: center
}

#contents .links_block h2 {
    font-size: 1.8rem;
    color: #4694D1
}

#contents .links_block li {
    display: inline-block;
    width: 110px;
    padding: 25px;
    vertical-align: top
}

#contents .links_block li figure {
    border: solid 1px #fff;
    box-shadow: 0 0 1px 1px rgba(0, 0, 0, .1)
}

#contents .links_block li a {
    display: block;
    transition: opacity .15s ease-out
}

#contents .links_block li a:hover {
    opacity: .7
}

#contents .links_block li p {
    font-size: 1.4rem
}

#contents .links_block li p span {
    display: block;
    font-size: 1.2rem
}

#contents .links_carousel {
    position: relative
}

#contents .links_carousel .carousel_inner {
    position: relative;
    margin: 0;
    overflow: hidden
}

#contents .links_carousel .carousel_pos {
    margin: 0
}

#contents .links_carousel .btn_prev,
#contents .links_carousel .btn_next {
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
    transition: opacity .15s ease-out
}

#contents .links_carousel .btn_prev {
    left: -10px;
    border-top: solid 2px #4694D1;
    border-left: solid 2px #4694D1;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#contents .links_carousel .btn_next {
    right: -10px;
    border-top: solid 2px #4694D1;
    border-right: solid 2px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#contents .accordion_btns {
    border: solid 1px #4694D1;
    border-radius: 4px;
    background: #fff;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    z-index: 10
}

#contents .accordion_btns+.accordion_btns {
    margin-top: 10px
}

#contents .accordion_btns .accordion_content {
    margin: 0;
    padding: 0
}

#contents .accordion_btns h4 {
    position: relative;
    padding: 15px;
    text-align: center;
    color: #4694D1
}

#contents .accordion_btns.act h4 {
    background: #4694D1;
    color: #fff
}

#contents .accordion_btns.has_selected h4 {
    background: #4694D1;
    color: #fff
}

#contents .accordion_btns h4::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    width: 18px;
    height: 18px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .accordion_btns h4::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 2px;
    right: 17.5px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: ""
}

#contents .accordion_btns.act h4::before {
    background: #4694D1;
    border-color: #fff
}

#contents .accordion_btns.act h4::after {
    bottom: -2px;
    border-top-color: #fff;
    border-right-color: #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#contents .accordion_btns.has_selected h4::before {
    background: #4694D1;
    border-color: #fff
}

#contents .accordion_btns.has_selected h4::after {
    bottom: 2px;
    border-top-color: #fff;
    border-right-color: #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

#contents .accordion_btns.act.has_selected h4::before {
    background: #4694D1;
    border-color: #fff
}

#contents .accordion_btns.act.has_selected h4::after {
    bottom: -2px;
    border-top-color: #fff;
    border-right-color: #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#contents .accordion_btns ul {
    display: flex;
    flex-wrap: wrap
}

#contents .accordion_btns li {
    box-sizing: border-box;
    width: 50%
}

#contents .accordion_btns li {
    border-bottom: solid 1px #4694D1
}

#contents .accordion_btns li:nth-child(odd) {
    border-right: solid 1px #4694D1
}

#contents .accordion_btns li:nth-child(odd):nth-last-child(-n+2),
#contents .accordion_btns li:last-child {
    border-bottom: none
}

#contents .accordion_btns li span {
    font-size: 1.4rem
}

#contents .accordion_btns li strong {
    font-size: 1.8rem
}

#contents .accordion_btns li>a,
#contents .accordion_btns li .accordion_h {
    display: block;
    position: relative;
    padding: 10px 35px 10px 12px;
    text-align: left;
    font-size: 1.4rem;
    color: #4694D1
}

#contents .accordion_btns li a::before,
#contents .accordion_btns li .accordion_h::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    width: 13px;
    height: 13px;
    border: none;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .accordion_btns li a::after,
#contents .accordion_btns li .accordion_h::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 3px;
    height: 3px;
    border: none;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .accordion_btns li .accordion_content {
    padding: 0 15px
}

#contents .accordion_btns li .accordion_content li {
    border: none !important;
    font-size: 1.4rem
}

#contents .accordion_btns li .accordion_content li.accordion_bdr_btm {
    border-bottom: solid 1px #4694D1 !important
}

#contents .accordion_btns li .accordion_content li.accordion_bdr_btm:last-of-type {
    border-bottom: none !important
}

#contents .accordion_btns li .accordion_content li>div.accordion_bdr_none {
    background: none !important
}

#contents .accordion_btns li .accordion_content .btns {
    margin: 25px 0
}

#contents .accordion_btns li .accordion_content .btn_link0 {
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px
}

#contents .accordion_btns li .accordion_content .btn_link0::before,
#contents .accordion_btns li .accordion_content .btn_link0::after {
    display: none
}

#contents .accordion_btns li .accordion_content .btn_close::before,
#contents .accordion_btns li .accordion_content .btn_close::after {
    display: block;
    width: 14px;
    height: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    border: none;
    background: #4694D1;
    content: "";
    transition: background .15s ease-out
}

#contents .accordion_btns li .accordion_content .btn_close:hover {
    background: #4694D1;
    color: #fff !important
}

#contents .accordion_btns li .accordion_content .btn_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#contents .accordion_btns li .accordion_content .btn_close::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#contents .risk {
    margin: 30px 0
}

#contents .risk h3 {
    color: #b02b5a;
    margin-bottom: .4em
}

#contents .risk a {
    display: block;
    text-decoration: underline
}

#contents .risk a+a {
    margin-top: 10px
}

#contents .risk a:hover {
    text-decoration: none
}

#contents .risk .pricerisk-subtitle {
    color: #4694D1;
    margin-bottom: 3px
}

#contents .risk ul li {
    position: relative;
    padding-left: 12px
}

#contents .risk ul li a {
    display: inline-block
}

#contents .risk ul li::after {
    display: block;
    position: absolute;
    content: "・";
    top: 0;
    left: 0
}

#contents .risk ul+p {
    margin-top: 8px
}

#contents .section .risk {
    margin-bottom: 0
}

#contents .banners {
    margin: 60px 0
}

#contents .banners ul {
    max-width: 770px;
    margin: auto;
    text-align: center
}

#contents .banners li {
    box-sizing: border-box;
    display: inline-block;
    width: 50%;
    padding: 7px 5px
}

#contents .banners li a {
    display: flex;
    align-items: center;
    background: #fff;
    overflow: hidden;
    border: solid 1px #4694D1;
    border-radius: 4px;
    transition: all .2s ease-out
}

#contents .banners li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .banners li a::before,
#contents .banners li a::after {
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto
}

#contents .banners li a::after {
    right: 23px
}

#contents .banners li figure {
    flex-basis: 150px;
    height: 100px;
    background: no-repeat center center/cover
}

#contents .banners li .txt {
    box-sizing: border-box;
    margin-top: 5px;
    padding: 0 40px 0 10px
}

#contents .banners h3 {
    margin-top: -0.3em;
    font-size: 1.8rem;
    color: #4694D1
}

#contents .att-tax {
    margin-bottom: 40px
}

#contents .faq .faq_item h2 {
    position: relative;
    padding-left: 60px;
    line-height: 1.8;
    color: #4694D1;
    text-align: left
}

#contents .faq .faq_item {
    margin-bottom: 40px;
    padding-bottom: 1px;
    border-bottom: solid 1px #dcdcdc
}

#contents .faq .faq_item .answer {
    position: relative;
    min-height: 0;
    margin-top: 1em;
    padding: 0;
    background: none;
    line-height: 1.8;
    overflow: hidden
}

#contents .faq .faq_item .answer::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
    z-index: 1
}

#contents .faq .faq_item.opened .answer::after,
#contents .faq .faq_item.open .answer::after {
    display: none
}

#contents .faq .faq_item.opened .answer {
    height: auto !important;
    box-sizing: border-box
}

#contents .faq .faq_item .answer .img {
    width: 60px;
    float: left;
    padding: 0 40px 30px 60px;
    text-align: center;
    z-index: 0
}

#contents .faq .faq_item .answer .img figure {
    margin-bottom: 6px
}

#contents .faq .faq_item .answer .img h3 {
    font-size: 1.4rem;
    color: #4694D1
}

#contents .faq .faq_item .answer .img h3 strong {
    font-size: 2.3rem
}

#contents .faq .faq_item .answer .txt {
    padding: 0px 0 0 60px;
}

#contents .faq .faq_item .answer .txt .btns {
    text-align: left;
    margin-bottom: 1em
}

#contents .faq .faq_item .answer p {
    padding: 0;
}

#contents .faq .faq_item h2::before,
#contents .faq .faq_item .answer::before {
    box-sizing: border-box;
    display: block;
    width: 35px;
    height: 35px;
    position: absolute;
    top: 0;
    left: 0;
    background: url("../image/icon_q.png") no-repeat center center/contain;
    content: ""
}

#contents .faq .faq_item .answer::before {
    background: url("../image/icon_a.png") no-repeat center center/contain;
    content: ""
}

#contents .faq .faq_item .btns {
    position: relative;
    margin-top: -20px;
    z-index: 5
}

#contents .faq .faq_item.open .btns {
    margin-top: 20px
}

#contents .faq .faq_item.open .btn_more,
#contents .faq .faq_item .btn_close {
    display: none
}

#contents .faq .faq_item.open .btn_close {
    display: inline-block
}

#contents .faq .faq_item .btn_more {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1 !important;
    transition: all .15s ease-out
}

#contents .faq .faq_item .btn_more::after {
    display: block;
    width: 8px;
    height: 8px;
    position: absolute;
    top: -5px;
    bottom: 0;
    right: 15px;
    margin: auto;
    content: "";
    border-right: solid 1px #4694D1;
    border-bottom: solid 1px #4694D1;
    transition: border .15s ease-out;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#contents .faq .faq_item .btn_more:hover {
    background: #4694D1;
    color: #fff !important
}

#contents .faq .faq_item .btn_more:hover::after {
    border-color: #fff
}

#contents .faq .odor_sweat h2::before,
#contents .faq .odor_sweat .answer::before {
    background: url("../image/icon_consultation_q.gif") no-repeat center center/contain
}

#contents .faq .odor_sweat .answer::before {
    background: url("../image/icon_consultation_a.gif") no-repeat center center/contain
}

#contents .doctor_list .inner>ul,
#contents .staff_list .inner>ul {
    margin-left: -30px;
    margin-right: -30px
}

#contents .doctor_list hr {
    position: relative;
    margin-top: 40px;
    padding-bottom: 60px;
    border: none;
    border-top: solid 1px #4694D1;
    overflow: visible
}

#contents .doctor_list hr::before {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: -22px;
    width: 147px;
    height: 42px;
    margin: auto;
    background: #fff url("../image/ornament8.png") no-repeat center center/contain;
    content: ""
}

#contents .doctor_list .inner>ul>li,
#contents .staff_list .inner>ul>li {
    padding: 0 30px 20px 30px
}

#contents .doctor_list .inner>ul>li:nth-child(odd),
#contents .staff_list .inner>ul>li:nth-child(odd) {
    clear: both
}

#contents .doctor_list .inner>ul>li:before,
#contents .doctor_list .inner>ul>li:after {
    content: "";
    display: table
}

#contents .doctor_list>ul>li:after {
    clear: both
}

#contents .staff_list .inner>ul>li:nth-child(n+3)>.cf {
    border-top: solid 1px #dcdcdc;
    padding-top: 30px
}

#contents .doctor_list li figure {
    float: left;
    width: 39%
}

#contents .doctor_list li .txt {
    float: right;
    width: 56%
}

#contents .staff_list li figure {
    float: right;
    width: 32%
}

#contents .staff_list li .txt {
    float: left;
    width: 62%
}

#contents .doctor_list li h4,
#contents .staff_list li h4 {
    color: #4694D1
}

#contents .doctor_list li h3,
#contents .staff_list li h3 {
    color: #4694D1;
    font-size: 1.8rem
}

#contents .doctor_list li h3 strong,
#contents .staff_list li h3 strong {
    font-size: 2.6rem
}

#contents .staff_list li p {
    padding-top: 1em
}

#contents .doctor_list .label,
#contents .staff_list .label {
    display: flex;
    margin: 5px -5px
}

#contents .doctor_list .label li,
#contents .staff_list .label li {
    box-sizing: border-box;
    padding: 5px;
    flex-basis: 50%;
    flex-grow: 1;
    max-width: 160px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff
}

#contents .doctor_list .label li span,
#contents .staff_list .label li span {
    display: block;
    background: #4694D1
}

#contents .doctor_list li .btns {
    clear: both;
    padding-top: 1em
}

.modal {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 10000
}

.modal_a {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 10000
}

.modal_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.modal_inner .btns {
    margin-top: 1em;
    text-align: center
}

.modal_inner iframe {
    margin: auto;
    max-width: 100%
}

.modal_inner .others {
    margin: 1em auto 2em auto
}

.modal_inner .others {
    max-width: 700px
}

.modal_inner .others li {
    box-sizing: border-box;
    padding: 5px;
    float: left;
    width: 20%
}

.modal_inner .others li a {
    display: block;
    transition: all .2s ease-out
}

.modal_inner .others li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

.modal_inner .btns {
    margin-top: 1em;
    text-align: center
}

.arr:after,
#contents .divide2.arr:after {
    content: "";
    display: block;
    width: 100%;
    height: 59px;
    padding-top: 40px;
    background: url(../image/img_arrow_real.gif) center bottom no-repeat;
    z-index: 100
}

#contents .divide2.arr:after {
    width: 50%
}

.arr_r {
    position: relative
}

.arr_r:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -28px;
    margin-top: -14px;
    width: 56px;
    height: 28px;
    background: url(../image/img_arrow_real_h.gif) center right no-repeat;
    z-index: 100
}

#contents .decorbox ol li .no-display {
    display: inline;
    position: initial;
    left: inherit;
    margin-right: 0;
    color: #444
}

.dot_t {
    border-top: #ccc dotted 1px;
    padding-top: 20px
}

#contents .example_block .ttl_block {
    position: relative;
    padding: 10px 0;
    margin: 30px 0
}

#contents .example_block .ttl_block figure {
    position: absolute;
    right: 0;
    top: 0
}

#contents .example_block .ttl_block h3 {
    margin-top: 1em
}

#contents .example_block .ttl_block h4 {
    border: none;
    margin: 20px 0 0 0;
    font-size: 1.4rem
}

#contents .example_block .ttl_block h4 strong {
    font-size: 1.8rem;
    color: #000
}

#contents .example_block .zukai {
    float: right;
    width: 200px;
    margin-left: 15px
}

#contents .ba_block li figure {
    position: relative
}

.protect-img {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: -1px;
    left: 0;
    padding-bottom: 1px;
    background: #f1e6d4 url(../image/img_blind.gif) center center no-repeat;
    background-size: 287px;
    z-index: 100
}

#contents .deqwas_block {
    margin-bottom: 20px;
    padding: 30px 0 5px 0;
    background: #eae9e6;
    text-align: center
}

#contents .deqwas_block h2 {
    font-size: 18px;
    color: #4694D1
}

.explaination_block .attention {
    margin-top: 15px;
    background: #eae9e6;
    color: #b02b5a
}

.explaination_block .attention .attention_inner {
    display: block;
    padding: 10px 15px 10px 75px;
    background: url(../image/icon_attention.png) 15px center no-repeat
}

.explaination_block .column-banner-list {
    margin-top: 20px
}

.explaination_block .column-banner-list li+li {
    margin-top: 10px
}

.explaination_block .btns {
    margin-top: 20px !important
}

.explaination_block .btns a {
    font-size: 16px !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 355px !important;
    text-align: left !important;
    padding: 12px 40px 10px 16px !important
}

.explaination_block .btns a h3 {
    font-size: 16px !important
}

.explaination_block .btns a+a {
    margin-top: 20px
}

.explaination_block .btns a.attention_btn {
    padding-left: 50px !important;
    background: url(../image/icon_attention2.png) 10px center no-repeat
}

#contents .no-contents {
    display: none !important
}

#contents .toutsu_link {
    float: none;
    margin-top: 10px !important
}

#contents .toutsu_link a {
    text-decoration: underline
}

#contents .toutsu_link a:hover {
    text-decoration: none
}

#contents .accordion_content .image-layout-v,
#contents .accordion_content .photo-v {
    margin-bottom: 20px
}

#contents .accordion_content .image-layout-v th,
#contents .accordion_content .image-layout-v td,
#contents .accordion_content .photo-v th,
#contents .accordion_content .photo-v td {
    box-sizing: border-box;
    width: 50%;
    vertical-align: top;
    padding-top: 10px
}

#contents .accordion_content .image-layout-v th img,
#contents .accordion_content .image-layout-v td img,
#contents .accordion_content .photo-v th img,
#contents .accordion_content .photo-v td img {
    width: 100%
}

#contents .accordion_content .image-layout-v .last-item td,
#contents .accordion_content .image-layout-v .middle-item td,
#contents .accordion_content .image-layout-v td.cap,
#contents .accordion_content .image-layout-v td.comment,
#contents .accordion_content .photo-v .last-item td,
#contents .accordion_content .photo-v .middle-item td,
#contents .accordion_content .photo-v td.cap,
#contents .accordion_content .photo-v td.comment {
    padding-left: 10px
}

#contents .accordion_content .before-after th,
#contents .accordion_content .before-after td {
    box-sizing: border-box;
    vertical-align: top;
    padding-top: 10px
}

#contents .accordion_content .before-after th img,
#contents .accordion_content .before-after td img {
    width: 100%
}

#contents .accordion_content .before-after th:nth-of-type(1),
#contents .accordion_content .before-after td:nth-of-type(1) {
    width: 45%
}

#contents .accordion_content .before-after th:nth-of-type(2),
#contents .accordion_content .before-after td:nth-of-type(2) {
    width: 10%
}

#contents .accordion_content .before-after th:nth-of-type(),
#contents .accordion_content .before-after td:nth-of-type() {
    width: 45%
}

#contents #head .sub_text {
    font-size: 2rem
}

#contents .non_accordion>li {
    border: solid 1px #4694D1;
    border-radius: 4px;
    padding: 10px
}

#contents .non_accordion>li+li {
    margin-top: 20px
}

#contents .non_accordion_h {
    box-sizing: border-box;
    display: table;
    width: 100%;
    position: relative;
    padding: 10px 30px 10px 10px;
    font-size: 1.8rem;
    transition: opacity .15s ease-out
}

#contents .non_accordion span {
    align-self: center
}

#contents .non_accordion_content {
    padding-top: 0
}

#contents .non_accordion_content .inner {
    padding: 0 20px
}

#contents .non_accordion_content .inner .border,
#contents .non_accordion_content .inner .texts {
    padding-top: 20px;
    border-top: solid 1px #4694D1
}

#contents .non_accordion_content .inner .border .texts {
    padding-top: 0;
    border-top: none
}

#contents .non_accordion_content h4 {
    display: flex;
    padding: 0 0 20px;
    border-bottom: solid 1px #4694D1;
    border-top: solid 1px #4694D1
}

#contents .non_accordion_content figure {
    text-align: center;
    margin-right: 20px
}

#contents .non_accordion_content figure p,
#contents .non_accordion_content p+figure,
#contents .non_accordion_content figure+p {
    margin-top: 1em
}

#contents .non_accordion .h_wimg {
    display: flex;
    padding: 20px 20px 20px;
    border-bottom: solid 1px #4694D1;
    border-top: solid 1px #4694D1
}

#contents .non_accordion .h_wimg>* {
    align-self: center
}

#contents .non_accordion_content .h_wimg figure {
    margin-right: 20px
}

#contents .security {
    color: #c00
}

#contents .content_link {
    text-decoration: underline;
    color: #444
}

#contents .link_icon {
    vertical-align: middle;
    padding-right: 5px
}

#contents .doctor_sns_icon {
    text-align: left;
    margin-top: 10px
}

#contents .tokkyo {
    margin-top: 30px;
    padding: 20px;
    border: 1px solid #4694D1
}

#contents .tokkyo .tit {
    color: #b02b5a;
    font-size: 1.8rem;
    margin-bottom: 10px
}

#contents .tokkyo .left {
    float: left;
    width: 580px
}

#contents .tokkyo figure img {
    width: 110px
}

#contents #dr_treatment {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 56px;
    padding-bottom: 0
}

#contents .dr_treatment__box {
    position: relative
}

#contents .dr_treatment__title {
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.58;
    letter-spacing: .02em;
    color: #4694D1;
    margin-bottom: 23px
}

#contents .dr_treatment__text {
    background-color: #e6e5e2;
    padding: 14px 269px 16px 20px;
    line-height: 1.88;
    text-align: justify
}

#contents .dr_treatment__character {
    position: absolute;
    right: 33px;
    bottom: 0;
    z-index: 2;
    width: 195px;
    height: auto
}

#contents .explanation_box {
    position: relative
}

#contents .explanation_box ul {
    overflow: hidden;
    text-align: center;
    margin: 0 -5px
}

#contents .explanation_box ul li {
    width: 50%;
    float: left;
    position: relative;
    margin-top: 10px
}

#contents .explanation_box ul li img {
    width: 97%;
    border: solid 1px #ccc
}

#contents .cir {
    content: "";
    background-color: #ccc;
    border-radius: 50%;
    height: 50px;
    width: 50px;
    display: inline-block;
    text-align: center;
    line-height: 50px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    font-size: 21px
}

#contents .btn_arrow_exp {
    display: block;
    width: 220px;
    max-width: 100%;
    position: relative
}

#contents .btn_arrow_exp::before {
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .btn_arrow_exp::after {
    right: 18px;
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .btn_arrow_exp::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

#contents .btn_arrow_exp::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#contents .exp01 {
    position: absolute;
    top: 76%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#contents .exp01 a,
#contents .exp02 a {
    font-family: "Noto Sans SC", serif !important;
}

#contents .exp02 {
    position: absolute;
    top: 76%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#contents .explanation_box_attention {
    position: absolute;
    top: 5%;
    left: 11%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#contents .explanation_box_attention2 {
    position: absolute;
    top: 5%;
    left: 11%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#contents h3.explanation_box_ttl {
    margin-bottom: .6em;
    text-align: center;
    margin: auto;
    padding: 5px;
    width: 50%;
    color: #fff;
    background-color: #4694D1;
    border: 1px solid #4694D1;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px
}

.mt0 {
    margin-top: 0 !important
}

.mt15 {
    margin-top: 15px !important
}

.mt20 {
    margin-top: 20px !important
}

.mt30 {
    margin-top: 30px !important
}

.mtb20 {
    margin: -20px 0 20px 0 !important
}

#contents .img_float {
    float: right;
    width: 30%
}

#contents div.simple_price_risk {
    margin-top: 20px
}

#contents .simple_price_risk {
    font-size: 1.1rem
}

#contents .simple_price_risk div.no_border {
    border-bottom: unset !important
}

#contents .simple_price_risk div.inner {
    border-bottom: 1px solid #999
}

#contents .simple_price_risk em {
    color: #b02b5a
}

#contents .simple_price_risk span {
    color: #999
}

#contents .simple_price_risk a {
    text-decoration: underline
}

#contents .simple_price_risk.simple_price_risk_template {
    text-align: left;
    visibility: hidden
}

#contents .simple_price_risk.simple_price_risk_template em {
    margin-right: 10px
}

#contents .simple_price_risk.simple_price_risk_template .text {
    color: #333
}

#contents .simple_price_risk.simple_price_risk_template .attention {
    display: block;
    color: #999
}

#contents .simple_price_risk.simple_price_risk_template p {
    margin: 0
}

#contents .simple_price_risk.simple_price_risk_template .inner {
    padding: 0
}

#contents .simple_price_risk.simple_price_risk_template .price_area p {
    display: inline-block;
    color: #b02b5a
}

#contents .simple_price_risk.simple_price_risk_template .price_area p span {
    color: #b02b5a
}

#contents .simple_price_risk.simple_price_risk_template .price_area p .price_text {
    color: #b02b5a;
    margin-left: 8px;
    margin-right: 8px
}

#contents .simple_price_risk.simple_price_risk_template .risk_area .pricerisk-subtitle {
    display: inline-block;
    color: #b02b5a;
    margin-right: 8px
}

#contents .simple_price_risk.simple_price_risk_template .risk_area .pricerisk-subtitle span,
#contents .simple_price_risk.simple_price_risk_template .risk_area .pricerisk-subtitle strong {
    color: #b02b5a;
    font-size: 1.1rem;
    font-weight: normal
}

#contents .simple_price_risk.simple_price_risk_template .risk_area .price_text {
    color: #b02b5a;
    margin-left: 8px
}

#contents .simple_price_risk.simple_price_risk_template .risk_area a {
    display: inline-block;
    margin-right: 5px
}

#contents .simple_price_risk.simple_price_risk_template .price_source {
    display: none
}

#contents .simple_price_risk.simple_price_risk_template .risk_source {
    display: none
}

.illust_plus {
    position: relative
}

.illust_plus:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -28px;
    margin-top: -14px;
    width: 50px;
    height: 50px;
    background: url(../image/img_plus.gif) center right no-repeat;
    z-index: 100
}

.pl25 {
    padding-left: 25px !important
}

.w30p {
    width: 30% !important
}

.w40p {
    width: 40% !important
}

#contents .illust_decoration_block_p {
    display: inline-block;
    width: 44%;
    float: right;
    border: 1px solid #dc5a8c;
    border-radius: 10px;
    padding: 10px 3% !important;
    margin: 0;
    background-color: #f9e7e3;
    text-align: center
}

#contents .illust_decoration_text_p {
    margin: 0;
    text-align: left;
    color: #dc5a8c
}

#contents2 h3.ttl {
    font-size: 2rem;
    color: #444;
    margin-bottom: 1em
}

#contents2 p+h3 {
    margin-top: 1em
}

#contents2 .makeup h3 {
    color: #4694D1
}

#contents2 .simple_price_risk a.btn_link_l_wimg_new_photo {
    text-decoration: none;
    position: relative;
    box-sizing: border-box;
    display: flex;
    padding: 8px 10px 10px;
    margin: 0 auto 25px;
    width: 300px;
    max-width: 100%;
    background: #4694D1;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    transition: all .2s ease-out
}

#contents2 .simple_price_risk a.btn_link_l_wimg_new_photo figure {
    flex-basis: 35px;
    width: 35px;
    min-width: 35px;
    max-width: 35px;
    align-self: center
}

#contents2 .simple_price_risk a.btn_link_l_wimg_new_photo div {
    margin: auto;
    padding: 3px 0 0;
    align-self: center
}

#contents2 .simple_price_risk a.btn_link_l_wimg_new_photo h3 {
    display: block;
    font-size: 1.5rem;
    color: #fff !important;
    margin-bottom: .2em
}

#contents2 .simple_price_risk .makeup h3 {
    font-size: 11px;
    text-align: left;
    color: #4694D1;
    margin-bottom: .6em
}

#contents2 .simple_price_risk .makeup p {
    font-size: 11px;
    text-align: left
}

#contents2 .time_block {
    display: flex;
    justify-content: center;
    margin-bottom: 1em;
    color: #fff
}

#contents2 .time_block .opetime_block {
    background-color: #4694D1;
    width: 150px;
    height: 125px
}

#contents2 .time_block .opetime_block img {
    width: 40px
}

#contents2 .time_block .opetime_block .opetime_txt {
    width: 120px;
    margin: 0 auto;
    border-top: dashed 1px #fff
}

#contents2 .time_block .opetime_block .opetime_txt p {
    text-align: center
}

#contents2 .time_block .opetime_block .opetime_title {
    padding: 15px 0 5px
}

#contents2 .time_block .effect_block {
    background-color: #4694D1;
    width: 150px;
    height: 125px;
    margin-left: 1px
}

#contents2 .time_block .effect_block img {
    width: 29px
}

#contents2 .time_block .effect_block .effect_txt {
    width: 120px;
    margin: 0 auto;
    border-top: dashed 1px #fff
}

#contents2 .time_block .effect_block .effect_txt p {
    text-align: center
}

#contents2 .time_block .effect_block .effect_title {
    padding: 15px 0 5px
}

#contents2 .time_block .downtime_block {
    background-color: #4694D1;
    width: 150px;
    height: 125px;
    margin-left: 1px
}

#contents2 .time_block .downtime_block img {
    width: 40px
}

#contents2 .time_block .downtime_block .downtime_txt {
    width: 120px;
    margin: 0 auto;
    border-top: dashed 1px #fff
}

#contents2 .time_block .downtime_block .downtime_txt p {
    text-align: center
}

#contents2 .time_block .downtime_block .downtime_title {
    padding: 15px 0 5px
}

#contents2 .link_btn {
    text-align: center
}

#contents2 .link_btn a {
    position: relative;
    text-align: left;
    margin: 20px 0;
    display: inline-block;
    max-width: 290px;
    width: 290px;
    font-size: 16px;
    font-family: "Noto Sans SC", serif !important;
    color: #fff;
    background-color: #4694D1;
    text-decoration: none;
    padding: 8px 0 8px 42px;
    border: 2px solid #4694D1;
    border-radius: 4px;
    transition: .4s
}

#contents2 .link_btn a span {
    padding-right: 10px
}

#contents2 .link_btn a::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 13px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    top: 13px;
    left: 17px
}

#contents2 .link_btn_sekkai {
    text-align: center
}

#contents2 .link_btn_sekkai a {
    position: relative;
    text-align: left;
    margin: 20px 0;
    display: inline-block;
    font-size: 16px;
    font-family: "Noto Sans SC", serif !important;
    color: #fff;
    background-color: #4694D1;
    text-decoration: none;
    padding: 8px 16px 8px 42px;
    border: 2px solid #4694D1;
    border-radius: 4px;
    transition: .4s
}

#contents2 .link_btn_sekkai a span {
    padding-right: 10px
}

#contents2 .link_btn_sekkai a::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 13px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    top: 13px;
    left: 17px
}

#contents2 .link_btn.link_up a::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-bottom: 13px solid #fff;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: none;
    top: 15px;
    left: 17px
}

#contents2 .downtime_list li span,
#contents2 .risk_list li span {
    font-size: 2rem;
    font-weight: bold
}

#contents2 .downtime_list li+li,
#contents2 .risk_list li+li {
    margin-top: 1em
}

#contents2 .opecat {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

#contents2 .opecat_block {
    width: 290px;
    margin: 10px auto 0;
    padding: 20px;
    background-color: #f4f4f4;
    border-radius: 5px
}

#contents2 .opecat_block figure {
    width: 100px;
    margin: 0 auto
}

#contents2 .opecat_block .opecat_title_block {
    text-align: center;
    padding-bottom: 14px;
    border-bottom: solid 1px #e1e1e1
}

#contents2 .opecat_block .opecat_title_block p {
    font-size: 1.6rem
}

#contents2 .opecat_block .opecat_title_block p em {
    font-size: 1.7rem
}

#contents2 .opecat_block .opecat_title_block p span {
    font-size: 1.4rem
}

#contents2 .opecat_block .opecat_title_block p+p {
    text-align: left
}

#contents2 .opecat_block .opecat_txt_block {
    margin-top: 15px
}

#contents2 .opecat_block .ani_btn {
    margin: 20px auto 0;
    width: 140px
}

#contents2 .opecat_block .ani_btn .btn_link_l_wimg div {
    padding: 10px 30px 10px 10px
}

#contents2 .opecat_block .ani_btn p {
    font-size: 1.5rem;
    color: #4694D1 !important
}

#contents2 .dr_img {
    min-width: 100px;
    max-width: 100px
}

#contents2 .separate_block {
    line-height: 1;
    margin-bottom: 1em
}

#contents2 .table_multi {
    margin-bottom: 1em
}

#contents2 .table_multi th,
#contents2 .table_multi td {
    font-size: 1.6rem
}

#contents2 .ani_btn {
    margin: 20px 0
}

#contents2 .ani_btn .btn_link_l_wimg {
    width: 410px
}

#contents2 .divide2 {
    margin: 0 -13px
}

#contents2 .opecat {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 720px;
    margin: 0 auto
}

#contents2 .ani_btn.opecat_block {
    width: auto;
    margin: 0;
    padding: 0;
    display: flex
}

#contents2 .ani_btn.opecat_block:nth-child(odd) {
    margin-right: 5px
}

#contents2 .ani_btn.opecat_block:nth-child(even) {
    margin-left: 5px
}

#contents2 .ani_btn.opecat_block:nth-child(n+3) {
    margin-top: 10px
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg {
    display: block;
    width: 355px;
    box-sizing: border-box;
    margin: 0;
    padding: 15px 30px 15px 15px;
    background-color: #f4f4f4;
    border-radius: 6px;
    border: none
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg::before {
    right: 7px
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg::after {
    right: 15px
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    box-sizing: border-box;
    padding: 0 0 10px 0;
    border: none
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item {
    box-sizing: border-box;
    text-align: left;
    width: 66.666%
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_name {
    padding: 0 10px 0 0;
    box-sizing: border-box
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_name em {
    font-size: 1.7rem;
    color: #b02b5a
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_text {
    font-size: 1.1rem;
    color: #444;
    padding: 10px 10px 0 0;
    box-sizing: border-box
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_text span {
    font-size: 1.4rem
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item p+p {
    margin-top: .5em
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block figure {
    width: 33.334%;
    margin: 0 auto;
    min-width: auto;
    box-sizing: border-box;
    max-width: 100%;
    flex-basis: unset;
    align-self: baseline
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block figure img {
    box-sizing: border-box;
    width: 100%;
    height: auto
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block.titleonly {
    align-items: center;
    padding: 0
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block.titleonly .opecat_title_item .opecat_title_name {
    padding: 0 10px 0 0
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block {
    padding: 0;
    margin-top: 5px
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block p {
    display: block;
    background: #fff;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    font-size: 1.6rem;
    color: #333
}

#contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block p span {
    font-size: 1.2rem
}

.illust_arr_r {
    position: relative
}

.illust_arr_r:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -42px;
    margin-top: -14px;
    width: 56px;
    height: 28px;
    background: url(../image/img_arrow_real_h.gif) center right no-repeat;
    z-index: 100
}

#contents .sfont_tar {
    font-size: 1.2rem;
    text-align: right
}

#contents .columndiv {
    margin-top: 3em
}

#contents .columndiv .columndiv_lr {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-around
}

#contents .columndiv .columndiv_lr img {
    width: 100%;
    max-width: 235px
}

#contents .columndiv .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 11px 30px 10px 20px;
    width: 100%;
    border: solid 1px #4694D1;
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.3rem;
    color: #4694D1;
    text-shadow: none;
    transition: all .15s ease-out
}

#contents .columndiv .btn_arrow1 {
    position: relative;
    width: auto
}

#contents .columndiv .btn_arrow1::before {
    display: block;
    position: absolute;
    right: 7px;
    width: 13px;
    height: 13px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .columndiv .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    right: 13px;
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .columndiv .btn_arrow1:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#contents .columndiv .btns {
    text-align: left
}

#contents .columndiv h2.sec_h {
    font-size: 2.4rem !important;
    margin-bottom: 0
}

#contents .columndiv .columnlists {
    margin-bottom: 3em
}

#contents .columndiv .columnlists li {
    border-bottom: solid 1px #dcdcdc
}

#contents .columndiv .columnlists li:first-child {
    border-top: solid 1px #dcdcdc
}

#contents .columndiv .columnlists li a {
    display: flex;
    padding: 30px 0;
    transition: opacity .15s ease-out
}

#contents .columndiv .columnlists li a:hover {
    opacity: .7
}

#contents .columndiv .columnlists li figure img {
    vertical-align: top;
    width: 150px;
    max-width: 150px;
    box-sizing: border-box;
    height: 150px;
    -o-object-fit: contain;
    object-fit: contain;
    background: #d9d9d9
}

#contents .columndiv .columnlists li .txt {
    box-sizing: border-box;
    padding-left: 30px
}

#contents .columndiv .columnlists li p {
    margin: .5em 0 0 0
}

#contents .clinic_cv_block {
    margin: 40px 0 -30px
}

#contents .clinic_cv_box {
    background: #f7e9ee;
    padding: 40px 20px 28px;
    display: block;
    position: relative
}

#contents .clinic_cv_box p {
    font-size: 20px;
    color: #eb7490;
    text-align: center;
    margin-bottom: 10px
}

#contents .clinic_cv_box ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

#contents .clinic_cv_box ul li {
    position: relative;
    border: solid 1px #4694D1;
    border-radius: 3px;
    background-color: #fff;
    margin: 5px;
    text-align: center;
    width: 47%
}

#contents .clinic_cv_box ul li a {
    display: inline-block;
    width: 100%;
    max-width: 100%;
    font-size: 1.4rem;
    color: #4694D1;
    padding: 7px 0
}

#contents .clinic_cv_box ul li a::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    right: 18px;
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .clinic_cv_box ul li a::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto
}

#contents .clinic_cv_box::before {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 45%;
    width: 0;
    height: 0;
    border-top: 18px solid #f7e9ee;
    border-right: 40px solid transparent;
    border-left: 40px solid transparent
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: ""
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-loading .slick-list {
    background: #fff url("../image/ajax-loader.gif") center center no-repeat
}

@font-face {
    font-family: "slick";
    font-weight: normal;
    font-style: normal;
    src: url("../font/slick.eot");
    src: url("../font/slick.eot") format("embedded-opentype"), url("../font/slick.woff") format("woff"), url("../font/slick.ttf") format("truetype"), url("../font/slick.svg") format("svg")
}

.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 35%;
    display: block;
    width: 28px;
    height: 28px;
    margin-top: -10px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent
}

.slick-prev:before,
.slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    opacity: .75;
    color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-prev {
    left: -45px
}

[dir=rtl] .slick-prev {
    right: -45px;
    left: auto
}

.slick-next {
    right: -37px
}

[dir=rtl] .slick-next {
    right: auto;
    left: -25px
}

.slick-slider {
    margin-bottom: 50px
}

.slick-dots {
    position: absolute;
    left: 0;
    bottom: -25px;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center
}

.slick-dots li {
    position: relative !important;
    display: inline-block !important;
    width: 20px !important;
    height: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1
}

.slick-dots li button:before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    background-image: url("../image/dot_carousel.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover
}

.slick-dots li.slick-active button:before {
    background-image: url("../image/dot_carousel_selected.png")
}

@media print {
    div#sidebar {
        display: none
    }
}

@media only screen and (min-width: 768px) {
    .sp {
        display: none !important
    }

    #container {
        margin-left: 220px;
        min-width: 780px
    }

    #column_contact {
        padding: 50px
    }

    #column_utilities {}

    .img_compressed {
        width: auto
    }

    .img_compressed_60 {
        width: 60% !important
    }

    .img_compressed_67 {
        width: 67% !important
    }

    .img_compressed_70 {
        width: 70% !important
    }

    .img_compressed_full {
        width: 100% !important
    }

    .img_compressed_neutral {
        width: auto
    }

    .img_compressed_260 {
        width: 260px !important
    }

    .sp {
        display: none !important
    }

    #container {
        margin-left: 220px;
        min-width: 780px
    }

    #column_contact {
        padding: 50px
    }

    #column_utilities {}

    #contents h3.mov_ttl {
        font-size: 2rem
    }

    #contents .tac_pc {
        text-align: center !important
    }

    #contents .anchors li a:hover {
        background: #f0f0ed;
        color: #4694D1
    }

    #contents .responsive_carousel .slick-prev:hover,
    #contents .responsive_carousel .slick-next:hover,
    #contents .responsive_carousel_standard .slick-prev:hover,
    #contents .responsive_carousel_standard .slick-next:hover,
    #contents .carousel .btn_prev:hover,
    #contents .carousel .btn_next:hover {
        opacity: .7
    }

    #contents .carousel_pos li:hover,
    #contents .carousel_pos li:hover {
        opacity: .7
    }

    #contents .responsive_carousel div {
        box-sizing: border-box
    }

    #contents .responsive_carousel div:nth-of-type(n+2) {
        padding-left: 10px
    }

    #contents .responsive_carousel_standard div {
        box-sizing: border-box
    }

    #contents .responsive_carousel_standard .carousel_item {
        padding: 0 5px
    }

    #contents .responsive_carousel_standard .carousel_item img {
        width: auto;
        height: 110px
    }

    #contents .responsive_carousel_standard .slick-dots {
        display: block !important;
        bottom: -50px
    }

    .recommend-area {
        max-width: 768px;
        margin: 0 auto
    }

    #contents .loop_carousel .btn_prev:hover,
    #contents .loop_carousel .btn_next:hover {
        opacity: .7
    }

    #contents .accordion_h:hover {
        opacity: .7
    }

    #contents .contact_block li a.btn_tel::before,
    #contents .contact_block li a.btn_tel::after {
        display: none;
        pointer-events: none
    }

    #contents .links_carousel .btn_prev:hover,
    #contents .links_carousel .btn_next:hover {
        opacity: .7
    }

    #contents .accordion_btns li .accordion_content .btn_close:hover {
        background: #4694D1;
        color: #fff !important
    }

    #contents .accordion_btns li .accordion_content .btn_close:hover::before,
    #contents .accordion_btns li .accordion_content .btn_close:hover::after {
        background: #fff
    }

    #contents .example_block .zukai {
        width: 280px
    }

    #contents .no-contents {
        display: block !important;
        height: 10px
    }

    #contents .toutsu_link {
        float: right
    }

    #contents #head .sub_text {
        font-size: 2.4rem
    }

    .explaination_block .attention {
        max-width: 530px;
        margin-top: 30px;
        margin-bottom: 30px;
        line-height: 1.6
    }

    .explaination_block .attention .attention_inner {
        padding: 10px 15px 10px 75px;
        background: url(../image/icon_attention.png) 15px center no-repeat
    }

    .explaination_block .column-banner-list {
        width: 100%
    }

    .explaination_block .column-banner-list li {
        float: left;
        box-sizing: border-box
    }

    .explaination_block .column-banner-list li+li {
        margin-top: 0;
        padding-left: 10px
    }

    .explaination_block .btns a {
        display: block
    }

    #contents .non_accordion_h:hover {
        opacity: .7
    }

    #contents2 .flt_l {
        float: left;
        width: 40%;
        padding-right: 20px
    }

    #contents2 .dot_list2 {
        margin: 1.5em 0 1.5em 1.5em
    }

    #contents2 .dot_list2 li {
        list-style-type: none;
        position: relative;
        font-weight: bold
    }

    #contents2 .dot_list2 li:before {
        border-radius: 50%;
        width: 6px;
        height: 6px;
        display: block;
        position: absolute;
        left: -1.1em;
        top: .7em;
        content: "";
        background: #b02b5a
    }

    #contents2 .grey_block {
        background-color: #f4f4f4;
        border-radius: 5px;
        margin: 0
    }

    #contents2 .grey_block div:first-child {
        padding-left: 20px;
        padding-right: 0
    }

    #contents2 .grey_block P {
        font-size: 1.5rem
    }

    #contents2 .grey_block .btn_link_l_wimg {
        width: 350px;
        margin: 0
    }

    #contents2 .img_eye_catch {
        float: left;
        margin-right: 20px
    }

    #contents2 .img_heikou {
        width: 60%
    }

    .slick-slider {
        margin-bottom: 70px
    }

    .slick-dots li {
        width: 30px !important;
        height: 17px !important
    }

    .slick-dots li button:before {
        width: 17px;
        height: 17px
    }
}

@media only screen and (min-width: 375px) {
    .sp_s {
        display: none !important
    }

    .sp_s {
        display: none !important
    }
}

@media only screen and (max-width: 767px) {
    body {
        font-size: 1.4rem
    }

    .pc {
        display: none !important
    }

    .ani_reduce.on .txt2 {
        float: none;
        padding-top: 0
    }

    .btn_link_l,
    .btn_anchor {
        width: 350px;
        min-width: 0;
        max-width: 100%;
        padding: 15px 35px 15px 35px
    }

    .btn_link_l_wimg {
        min-width: 0
    }

    .btn_anchor {
        text-align: left;
        padding-left: 15px
    }

    header {
        width: 100%;
        min-height: 0;
        height: 40px;
        padding: 0;
        border: none;
        overflow: visible
    }

    header #logo {
        box-sizing: border-box;
        float: left;
        margin: 0;
        height: 65px;
        width: 27.8%;
        padding: 23px 5px 0 5px
    }

    header h2 img {
        width: 103px
    }

    #gnav {
        display: none
    }

    #cnav {
        float: right;
        width: 71%;
        max-width: 295px
    }

    #cnav ul {
        margin-top: 0;
        border: none
    }

    #cnav li {
        box-sizing: border-box;
        border: none;
        width: 22%;
        max-width: 65px;
        float: left
    }

    #cnav li:first-child {
        width: 34%;
        max-width: none
    }

    #cnav li a {
        box-sizing: border-box;
        padding: 40px 5px 0 5px;
        height: 65px;
        text-align: center;
        font-size: 1rem;
        border-left: solid 1px #e1e1e1
    }

    #cnav li a.reserve,
    #cnav li a.line,
    #cnav li a.tel {
        background-position: center 10px
    }

    #cnav li a.mail {
        background-position: center 15px
    }

    #cnav li a.reserve {
        background-image: url("../image/icon_menu_reserve_sp.svg")
    }

    #cnav li a.mail {
        background-image: url("../image/icon_menu_mail_sp.svg")
    }

    #cnav li a.cancel {
        background-image: url("../image/icon_menu_cancel_sp.svg")
    }

    #cnav li a.line {
        background-image: url("../image/icon_menu_line_reserve_sp.svg")
    }

    #cnav li a.tel {
        background-image: url("../image/icon_menu_phone_sp.svg")
    }

    header .freedial,
    header .lang {
        display: none
    }

    header #sp_menu .lang {
        display: block
    }

    #container {
        float: none;
        width: 100%;
        padding-top: 40px
    }

    .paging {
        margin: 60px 0
    }

    #treatment {
        padding: 65px 10px 60px 10px;
        background-size: 120% auto
    }

    #treatment nav {
        flex-wrap: wrap;
        margin-top: 35px
    }

    #treatment nav .img {
        top: -200px;
        width: 220px
    }

    #treatment nav>div {
        width: 50%
    }

    #treatment h4 {
        padding: 30px 10px
    }

    #treatment li a {
        font-size: 1.2rem
    }

    #treatment2 {
        padding: 45px 10px 35px 10px;
        background-size: 120% auto
    }

    #treatment2 nav {
        flex-wrap: wrap;
        margin-top: 35px
    }

    #treatment2 h2 {
        position: relative;
        margin: 25px auto 0;
        font-size: 2.5rem;
        color: #dc5a8c;
        z-index: 1
    }

    #treatment2 h3 {
        position: relative;
        display: inline-block;
        background-color: #db598c;
        border-radius: 50px;
        padding: 9px 20px 10px 20px;
        font-size: 1.3rem;
        color: #fff;
        z-index: 1
    }

    #treatment2 h3 span {
        font-size: 1.6rem
    }

    #treatment2 nav .img {
        top: -210px;
        right: -25px;
        width: 220px
    }

    #treatment2 nav>div {
        width: 49.5%;
        padding: 0 0 5px 0;
        margin: 0
    }

    #treatment2 nav>div:last-child {
        padding: 0 0 5px 0
    }

    #treatment2 h4 {
        padding: 30px 10px
    }

    #treatment2 li a {
        font-size: 1.2rem
    }

    #treatment2 .bnr {
        margin: 20px auto auto auto
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li {
        flex: initial;
        box-sizing: border-box;
        width: 100%
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 5vh;
        display: flex;
        align-items: center;
        padding: 10px 0;
        justify-content: center;
        width: 100%;
        box-sizing: border-box
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
        background: #b5ac6e;
        color: #fff
    }

    #start {
        padding: 60px 18px
    }

    #start ul {
        display: flex;
        flex-wrap: wrap;
        margin: 20px 0
    }

    #start li {
        padding: 6px
    }

    #start li:nth-child(1),
    #start li:nth-child(2),
    #start li:nth-child(3) {
        width: 33.333%
    }

    #start li:nth-child(4),
    #start li:nth-child(5) {
        width: 50%
    }

    #start .btn_link {
        width: 350px;
        min-width: 0;
        max-width: 100%
    }

    #banner li {
        margin: 10px
    }

    #supervision {
        padding: 30px 15px
    }

    #supervision p.read {
        color: #4694D1
    }

    #supervision p {
        margin-top: 1em
    }

    footer .block {
        padding: 50px 15px
    }

    #contact {
        float: none;
        width: 100%;
        border-right: none;
        padding-right: 0
    }

    #contact .head .btns {
        display: none
    }

    #contact ul {
        flex-wrap: wrap
    }

    #contact li {
        box-sizing: border-box;
        width: 50%
    }

    #contact li a {
        font-size: 1.2rem
    }

    #contact h3 {
        margin-top: 15px
    }

    #clinic {
        float: none;
        width: 100%;
        padding-left: 0;
        padding: 25px 0
    }

    #clinic li {
        width: 33.33%
    }

    #subject {
        padding: 30px 15px
    }

    #subject .list {
        margin: 10px 0 0 0;
        display: block
    }

    #subject .list h3 {
        position: relative;
        padding: 15px 0;
        margin: 0
    }

    #subject .list h3::before,
    #subject .list h3::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: #4694D1;
        content: ""
    }

    #subject .list h3::before {
        right: 7px;
        width: 2px;
        height: 16px
    }

    #subject .list h3::after {
        width: 16px;
        height: 2px
    }

    #subject .list h3.act::before {
        display: none
    }

    #subject .list>li {
        padding: 0
    }

    #subject .list li ul {
        margin: 15px 0 20px 0
    }

    #subject .list li li {
        margin: 8px 0
    }

    #subject .list ul.cf li {
        float: none;
        width: 100%
    }

    #column_utilities nav li,
    #subject nav li {
        display: block;
        float: left;
        width: 33.33%;
        margin: 10px 0
    }

    #column_utilities nav li a,
    #subject nav li a {
        display: block;
        position: relative;
    }

    #subject nav li a::before {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 16px;
        height: 16px;
        border: solid 1px #4694D1;
        border-radius: 50px;
        content: ""
    }

    #subject nav li a::after {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 6px;
        margin: auto;
        width: 3px;
        height: 3px;
        border-top: solid 1px #4694D1;
        border-right: solid 1px #4694D1;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: ""
    }

    #operation {
        padding: 30px 15px
    }

    #operation .list {
        margin: 10px 0 0 0;
        display: block
    }

    #operation .list p.h_3 {
        position: relative;
        padding: 15px 0;
        margin: 0
    }

    #operation .list p.h_3::before,
    #operation .list p.h_3::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: #4694D1;
        content: ""
    }

    #operation .list p.h_3::before {
        right: 7px;
        width: 2px;
        height: 16px
    }

    #operation .list p.h_3::after {
        width: 16px;
        height: 2px
    }

    #operation .list p.h_3.act::before {
        display: none
    }

    #operation .list>li {
        padding: 0
    }

    #operation .list li ul {
        margin: 15px 0 20px 0
    }

    #operation .list li li {
        margin: 8px 0
    }

    #operation .list ul.cf li {
        float: none;
        width: 100%
    }

    #column_utilities nav li,
    #operation nav li {
        display: block;
        float: left;
        width: 42.33%;
        margin: 10px 0;
        text-align: left;
    }

    #column_utilities nav li a,
    #operation nav li a {
        display: block;
        position: relative;
    }

    #operation nav li a::before {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 16px;
        height: 16px;
        border: solid 1px #4694D1;
        border-radius: 50px;
        content: ""
    }

    #operation nav li a::after {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 6px;
        margin: auto;
        width: 3px;
        height: 3px;
        border-top: solid 1px #4694D1;
        border-right: solid 1px #4694D1;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: ""
    }

    footer .box {
        text-align: left
    }

    footer .box nav li {
        padding: 0 5px
    }

    footer .box nav,
    footer .box p.copy,
    footer .box h3 {
        text-align: center
    }

    header .googlesearch {
        display: none
    }

    header .googlesearch_sp .gsc-input-box {
        padding: 0;
        border: none;
        background: transparent
    }

    header .googlesearch_sp {
        margin: 0;
        border-radius: 0;
        background: #edece8;
        padding: 3px 6px;
        position: absolute;
        top: 14px;
        left: 15px;
        border: none;
        width: 60%
    }

    header .googlesearch_sp .gsc-search-button-v2 {
        padding: 9px;
        line-height: 0;
        background: url(../image/icon.svg) no-repeat center;
        background-size: 80%;
        border: none;
        height: 24px;
        width: 24px
    }

    header .googlesearch_sp .gsc-search-button-v2 svg {
        display: none
    }

    header .googlesearch_sp .gsc-search-button {
        margin-left: 0
    }

    #sp_menu .subject {
        margin-top: 50px
    }

    header p#logo {
        box-sizing: border-box;
        float: left;
        margin: 0;
        height: 65px;
        width: 27.8%;
        padding: 23px 5px 0 5px
    }

    header p.h_2 img {
        width: 100%
    }

    #contact p.h_3 {
        margin-top: 15px
    }

    #subject .list p.h_3 {
        position: relative;
        padding: 15px 0;
        margin: 0
    }

    #subject .list p.h_3::before,
    #subject .list p.h_3::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: #4694D1;
        content: ""
    }

    #subject .list p.h_3::before {
        right: 7px;
        width: 2px;
        height: 16px
    }

    #subject .list p.h_3::after {
        width: 16px;
        height: 2px
    }

    #subject .list p.h_3.act::before {
        display: none
    }

    footer .box p.h_3 {
        text-align: center
    }

    #treatment2 p.h_2 {
        position: relative;
        margin: 25px auto 0;
        font-size: 2.5rem;
        color: #dc5a8c;
        z-index: 1
    }

    #treatment2 p.h_3 {
        position: relative;
        display: inline-block;
        background-color: #db598c;
        border-radius: 50px;
        padding: 9px 20px 10px 20px;
        font-size: 1.3rem;
        color: #fff;
        z-index: 1
    }

    #treatment2 p.h_3 span {
        font-size: 1.6rem
    }

    #treatment2 p.h_4 {
        padding: 30px 10px
    }

    #header #sp_header {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        margin: 0;
        border-bottom: 1px solid #e1e1e1;
        position: static;
        z-index: 9999;
        transition: .5s;
        background-color: #fff
    }

    #header #sp_header.hide {
        position: static;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    #header #sp_header.show {
        position: fixed;
        top: 0
    }

    #header #sp_header div.sp_header_items_row11 {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: 8.5px 30px;
        box-sizing: border-box
    }

    #header #sp_header div.sp_header_items_row11 #logo {
        line-height: 0;
        display: inline;
        width: 100%;
        height: auto;
        max-height: 45px;
        text-align: left;
        float: none;
        margin: 0;
        padding: 0
    }

    #header #sp_header div.sp_header_items_row11 #btn_menu {
        line-height: 0;
        background: transparent;
        width: auto;
        text-align: left;
        float: none;
        height: auto;
        margin: 0;
        padding: 0
    }

    #header #sp_header div.sp_header_items_row11 #logo img {
        width: auto;
        height: 100%;
        margin: auto;
        max-height: 45px;
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu {
        width: 50%;
        line-height: 0;
        text-align: right
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul {
        list-style-type: none;
        display: flex;
        align-items: center;
        justify-content: flex-end
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul li:first-child {
        padding-right: 30px
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_cn {
        padding-right: 0 !important
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_cn a[target=_blank] {
        background: none;
        padding-right: 12px
    }

    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_en,
    #header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_search {
        padding-right: 12px
    }

    #header #sp_header div.sp_header_items_row12 {
        display: none;
        background: rgba(0, 0, 0, .3);
        width: 100%;
        height: 55px;
        position: fixed;
        z-index: 1000
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 {
        margin: auto 0 auto auto;
        border-radius: 0;
        padding: 0;
        position: relative;
        top: 27px;
        bottom: 0;
        left: auto;
        right: 25px;
        font-size: 1.4rem;
        border: none;
        width: 200px
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2:before {
        content: "";
        position: absolute;
        right: -65px;
        top: -27px;
        left: 0;
        width: 0px;
        height: 0px;
        margin: auto;
        border-style: solid;
        border-color: #fff transparent transparent transparent;
        border-width: 6px 6px 0 6px
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2 svg {
        display: none
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2 {
        border: none;
        color: #777;
        width: auto;
        margin: 0;
        border-radius: 0
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-box {
        border-radius: 30px;
        background: #fff;
        width: 100%;
        padding: 1px 10px;
        box-sizing: border-box
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-input-box {
        border: none;
        padding: 1px 0;
        background: transparent
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-input {
        font-size: 1.3rem
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsib_a {
        padding: 2px 0
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2,
    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2:hover,
    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2:focus {
        background-color: transparent;
        font-size: 1.4rem;
        padding: 5px;
        margin-left: 10px;
        white-space: nowrap
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsst_a {
        color: #777;
        line-height: 1
    }

    #header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsst_a .gscb_a {
        color: #777;
        line-height: 1;
        font-size: 2rem
    }

    #sp_foot_gmenu {
        position: fixed;
        display: block;
        bottom: 0;
        background: rgba(255, 255, 255, .7);
        border-radius: 5px;
        margin: auto;
        box-sizing: border-box;
        z-index: 999;
        left: 0;
        right: 0
    }

    #sp_foot_gmenu ul {
        list-style-type: none;
        padding: 0;
        display: flex;
        align-items: center;
        margin: 0 auto
    }

    #sp_foot_gmenu ul li:first-child {
        margin: 0
    }

    #sp_foot_gmenu ul li:last-child {
        margin: 0
    }

    #sp_foot_gmenu ul li img {
        padding: 0;
        margin: 0;
        width: 100%;
        height: auto
    }

    #sp_foot_gmenu .sp_foot_gmenu_txt img {
        padding: 0;
        margin: 0;
        width: 100%;
        height: auto
    }

    footer #column_copy {
        padding-bottom: 40px;
    }

    header {
        border: none;
        height: auto !important
    }

    #fswords {
        margin: 0 !important;
        padding: 0 0 15px;
        text-align: center;
        background: transparent
    }

    #fswords .fswords_wrap {
        padding: 15px 0;
        text-align: center;
        margin: 0 auto;
        width: 100%;
        max-width: unset;
        min-width: unset;
        border-radius: unset;
        background: #fff;
        box-sizing: border-box;
        box-shadow: 0 10px 12px 0 #ededed
    }

    #fswords .fswords_wrap h2 {
        color: #b5ac6e;
        font-size: 1.3rem;
        line-height: 1;
        margin-bottom: 5px
    }

    #fswords .fswords_wrap h2:before {
        content: "";
        width: 1.3rem;
        height: 1.3rem;
        background: url("../image/top_icon_fsw.svg") no-repeat center center;
        background-size: 100%;
        display: inline-block;
        vertical-align: middle;
        margin-right: 5px
    }

    #fswords .fswords_wrap ul {
        padding: 5px 5px 0;
        list-style-type: none;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap
    }

    #fswords .fswords_wrap ul li {
        padding: 0 5px 5px
    }

    #fswords .fswords_wrap ul li a {
        padding: 6px 12px;
        display: inline-block;
        border-radius: 5px;
        text-align: center;
        background: #f4f4f4;
        font-size: 1.2rem
    }

    #fswords .fswords_wrap ul li a:hover {
        box-shadow: unset;
        -webkit-transform: unset;
        transform: unset
    }

    #contents .section_media_news {
        padding: 0 10px 50px;
        box-sizing: border-box
    }

    #contents .section_media_news .block_media_news ul {
        list-style-type: none;
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box
    }

    #contents .section_media_news .block_media_news ul li {
        padding: 0 10px 35px;
        width: 50%;
        box-sizing: border-box
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_name {
        padding-top: 4%
    }

    #contents .section_media_news .block_media_news ul li a:hover {
        -webkit-transform: none;
        transform: none
    }

    #head {
        margin-bottom: 10px !important;
        height: 38vw;
    }

    #head h1 {
        font-size: 2.4rem
    }

    #contents .inner {
        padding: 0 10px
    }

    #contents h2.sec_h {
        font-size: 2.2rem
    }

    #contents h3.sec_h {
        font-size: 1.8rem
    }

    #contents h3.ornament_h {
        background: url("../image/ornament2_sp.png") no-repeat center bottom/272px auto
    }

    #contents h3.h_wbox {
        padding: 0 0 0 95px;
        font-size: 1.8rem
    }

    #contents h3.h_block_exclam::before {
        width: 50px;
        height: 50px;
        left: -8px;
        top: -5px
    }

    #contents .tac_sp {
        text-align: center !important
    }

    #contents .table_multi tr:first-child th {
        width: 15%
    }

    #contents .table_multi_side tr:first-child th {
        width: 15%
    }

    #contents .btns_anchor li a {
        padding: 7px 25px 7px 15px;
        text-align: left
    }

    #contents .anchors {
        margin: 10px 0
    }

    #contents #anchor_body {
        margin: 10px 0
    }

    #contents .anchors .inner>p {
        margin-top: 30px
    }

    #contents .anchors ol {
        flex-wrap: wrap
    }

    #contents .anchors li {
        flex-basis: 50%;
        max-width: 50%
    }

    #contents .anchors li a {
        text-align: left;
        font-size: 1.3rem
    }

    #contents .decorbox {
        padding: 15px 10px !important
    }

    #contents .decorbox.point h2 {
        float: none;
        width: 75%;
        padding: 1em 0 3em 0
    }

    #contents .decorbox.point ol {
        float: none;
        width: 100%
    }

    #contents .decorbox ol li {
        font-size: 1.6rem
    }

    #contents .decorbox.point figure {
        position: absolute;
        top: 15px;
        right: 10px;
        float: none;
        width: 25%
    }

    #contents .wide_block.img_l .txt {
        float: none;
        width: 100%
    }

    #contents .wide_block.img_l figure {
        width: 40%;
        margin-left: 20px;
        margin-bottom: 10px
    }

    #contents .wide_block h2 {
        text-align: center;
        font-size: 2.2rem
    }

    #contents .divide2,
    #contents .divide3 {
        margin: 40px 0
    }

    #contents .divide2:not(.sp_divide)>*,
    #contents .divide3:not(.sp_divide)>*,
    #contents .divide3:not(.sp_divide)>.col2,
    #contents .divide2:not(.sp_divide) .col25,
    #contents .divide2:not(.sp_divide) .col75,
    #contents .divide2:not(.sp_divide) .col75+* {
        float: none;
        width: 100%;
        padding: 0
    }

    #contents .divide2:not(.sp_divide)>*+*,
    #contents .divide3:not(.sp_divide)>*+* {
        margin-top: 40px
    }

    #contents .divide2:not(.sp_divide) .col75+figure img {
        max-width: 50%
    }

    #contents .divide2.sp_divide.real_illust_img>* {
        padding: 0 30px 0 0
    }

    #contents .divide2.sp_divide.real_illust_img>*+* {
        margin-top: 0 !important;
        padding: 0 0 0 30px
    }

    #contents .divide2.sp_divide.real_illust_img .arr_r:after {
        position: absolute;
        height: 30px;
        top: 10%;
        right: -50%;
        -webkit-transform: rotate(270deg);
        transform: rotate(270deg)
    }

    #contents .about_block .divide2.tech_divide figure {
        width: 50%;
        margin-left: 10px
    }

    #contents .about_block .divide2.tech_divide p {
        width: 100%;
        margin-top: 0
    }

    #contents .about_block .divide3 {
        position: relative
    }

    #contents .about_block .divide3:not(.sp_divide)>.col2 {
        float: none;
        width: 100%
    }

    #contents .about_block .divide3:not(.sp_divide)>.col2+* {
        float: none;
        width: 50%;
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: -1
    }

    #contents .about_block .divide3:not(.sp_divide)>.col2 p {
        width: 50%;
        margin: 30px 0
    }

    #contents .ba_block p.read {
        text-align: left
    }

    #contents .ba_block .photo_attention {
        margin-bottom: -15px
    }

    #contents .ba_block .divide2.sp_divide li:nth-of-type(n+2) {
        margin-top: 0
    }

    #contents .ba_block li figure+h3 {
        margin-top: -10px;
        margin-bottom: 10px
    }

    #contents .ba_block .divide2.sp_divide li:nth-child(odd) {
        padding: 0 7px 0 4px
    }

    #contents .ba_block .divide2.sp_divide li:nth-child(even) {
        padding: 0 4px 0 7px
    }

    #contents .accordion .ba_block {
        margin: 40px -10px 0
    }

    #contents .accordion .accordion_content .ba_block .divide2.sp_divide li:nth-child(odd) {
        padding: 0 7px 0 4px
    }

    #contents .accordion .accordion_content .ba_block .divide2.sp_divide li:nth-child(even) {
        padding: 0 4px 0 7px
    }

    #contents .responsive_carousel {
        padding: 0 50px
    }

    #contents .responsive_carousel_standard {
        padding: 0 20px;
        margin-bottom: 20px
    }

    #contents .carousel_inner {
        margin: 0 25px
    }

    #contents .carousel .btn_prev {
        left: 0
    }

    #contents .responsive_carousel .slick-prev,
    #contents .responsive_carousel_standard .slick-prev {
        left: 5px
    }

    #contents .carousel .btn_next {
        right: 0
    }

    #contents .responsive_carousel .slick-next,
    #contents .responsive_carousel_standard .slick-next {
        right: 5px
    }

    #contents .carousel_pos li {
        width: 10px;
        height: 10px;
        margin: 4px
    }

    #contents .loop_carousel .carousel_inner ol li {
        width: calc(100% - 20px);
        padding: 0 10px
    }

    #contents .loop_carousel .btn_prev,
    #contents .loop_carousel .btn_next {
        top: auto;
        bottom: 10px
    }

    #contents .loop_carousel .btn_prev {
        left: 20px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    #contents .loop_carousel .btn_next {
        right: 20px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    #contents .accordion_content figure .accordion_img {
        margin: 10px 0 !important;
        height: 100% !important;
        width: 100% !important
    }

    #contents .accordion_h {
        font-size: 1.6rem
    }

    #contents .accordion_content .inner {
        padding: 0
    }

    #contents .accordion .ba_block .inner {
        padding: 0 10px
    }

    #contents .accordion_content p img {
        max-width: 160px
    }

    #contents .accordion_content p .inline-figure {
        max-width: 160px;
        margin: 0 0 20px 20px
    }

    #contents .accordion_content p .inline-figure .cap {
        font-size: 14px
    }

    #contents .summary figure.sp {
        display: block;
        margin-top: 30px
    }

    #contents .contact_block ul {
        margin: 15px 0 0 0
    }

    #contents .contact_block li {
        float: none;
        width: 100%;
        padding: 10px 0
    }

    #contents .contact_block li a.btn_tel h3 {
        font-size: 3.2rem
    }

    #contents .notice_box {
        padding: 15px
    }

    #contents .notice_box .btns {
        text-align: center
    }

    #contents .notice_box h3 {
        text-align: center
    }

    #contents .notice_box .ba h4 {
        margin-top: 20px
    }

    #contents .price_block .list+h3 {
        margin-top: 40px
    }

    #contents .price_block .list li {
        padding: 30px 0
    }

    #contents .price_block .list figure {
        width: 100px
    }

    #contents .price_block .list .txt {
        width: calc(100% - 120px)
    }

    #contents .price_block .list p {
        float: none;
        width: 100%
    }

    #contents .price_block .list .btns {
        clear: both;
        float: none;
        width: 100%;
        padding-top: 1em
    }

    #contents .price_block .list .btns>div {
        box-sizing: border-box;
        float: left;
        width: 50%
    }

    #contents .price_block .list .btns>div+div {
        margin: 0
    }

    #contents .price_block .list .btns>div:nth-child(odd) {
        padding-right: 5px
    }

    #contents .price_block .list .btns>div:nth-child(even) {
        padding-left: 5px
    }

    #contents .price_block .list .btns a {
        min-width: 100%
    }

    #contents .btns_block {
        margin: 40px 0
    }

    #contents .links_block h2 {
        font-size: 1.6rem
    }

    #contents .links_block ul {
        margin: 0 -10px
    }

    #contents .links_block li {
        box-sizing: border-box;
        max-width: 33.3%;
        padding: 20px 10px
    }

    #contents .links_block li p {
        font-size: 1.2rem
    }

    #contents .links_block li p span {
        font-size: 1rem
    }

    #contents .links_carousel .carousel_inner ol li {
        width: calc(100% - 20px);
        padding: 0 10px
    }

    #contents .links_carousel .btn_prev,
    #contents .links_carousel .btn_next {
        top: auto;
        bottom: 10px
    }

    #contents .links_carousel .btn_prev {
        left: 0
    }

    #contents .links_carousel .btn_next {
        right: 0
    }

    #contents .accordion_btns {
        border: solid 1px #4694D1;
        border-radius: 4px;
        overflow: hidden
    }

    #contents .accordion_btns+.accordion_btns {
        margin-top: 10px
    }

    #contents .banners li {
        width: 100%
    }

    #contents .faq .faq_item h2 {
        padding-left: 55px
    }

    #contents .faq .faq_item .answer .img {
        display: flex;
        align-items: center;
        position: relative;
        text-align: left;
        left: 55px;
        float: none;
        padding: 0;
        width: 40px;
    }

    #contents .faq .faq_item .answer .img figure {
        margin-bottom: 0;
        margin-right: 10px
    }

    #contents .faq .faq_item .answer .txt {
        padding: 1em 0 0 55px
    }

    #contents .faq .faq_item.opened .answer {
        padding-bottom: 30px;
        min-height: auto !important;
        min-height: initial !important
    }

    #contents .doctor_list hr {
        margin-top: 40px;
        padding-bottom: 60px;
        margin-left: -10px;
        width: calc(100% + 20px)
    }

    #contents .doctor_list hr::before {
        top: -22px;
        width: 135px;
        height: 42px
    }

    #contents .doctor_list .divide2:not(.sp_divide)>*+*,
    #contents .staff_list .divide2:not(.sp_divide)>*+* {
        margin-top: 0
    }

    #contents .staff_list .inner>ul>li:nth-child(n+2)>.cf {
        border-top: solid 1px #dcdcdc;
        padding-top: 30px
    }

    #contents .staff_list li figure {
        max-width: 115px
    }

    .modal_inner {
        width: 100%
    }

    .modal_inner iframe {
        height: 60vw
    }

    .modal_inner .others {
        margin-left: 5px;
        margin-right: 5px
    }

    .modal_inner .others li {
        width: 33.3%
    }

    .modal_inner .others {
        max-width: 100%
    }

    #contents .divide2.arr:after {
        width: 100%
    }

    .arr_r:after {
        content: "";
        display: block;
        position: initial;
        width: 100%;
        height: 59px;
        margin-top: 0;
        padding-top: 40px;
        background: url(../image/img_arrow_real.gif) center bottom no-repeat
    }

    #contents .non_accordion_h {
        font-size: 1.6rem
    }

    #contents .non_accordion_content p {
        padding: 20px 20px 20px
    }

    #contents .tokkyo .left {
        width: 60%
    }

    #contents .tokkyo .tit {
        font-size: 1.6rem
    }

    #contents .wide_block.img_l .tokkyo figure {
        width: 40%;
        margin-left: 0;
        padding-left: 20px;
        box-sizing: border-box
    }

    #contents .tokkyo figure img {
        width: auto
    }

    #contents #dr_treatment {
        padding-top: 28px
    }

    #contents .dr_treatment__title {
        text-align: left;
        position: relative;
        margin-bottom: 0;
        font-size: 1.4rem;
        padding-bottom: 5px
    }

    #contents .dr_treatment__text {
        padding: 14px;
        font-size: 1.7rem
    }

    #contents .dr_treatment__character {
        position: absolute;
        right: 5px;
        bottom: 0;
        z-index: 2;
        width: 145px;
        height: auto
    }

    #contents .dr_treatment__attention {
        background-color: #fff;
        padding: 45px 0 0 0;
        font-size: .9em;
        max-width: 187px;
        background: url(../image/icon_attention.png) 68px 0px no-repeat
    }

    #contents .simple_price_risk.simple_price_risk_template .inner {
        padding: 0 10px
    }

    #contents2 .anchors li:nth-child(1) {
        flex-basis: 100%;
        max-width: 100%
    }

    #contents2 .time_block .opetime_block {
        width: 120px;
        height: 120px
    }

    #contents2 .time_block .opetime_block .opetime_txt {
        width: 90px
    }

    #contents2 .time_block .effect_block {
        width: 120px;
        height: 120px
    }

    #contents2 .time_block .effect_block .effect_txt {
        width: 90px
    }

    #contents2 .time_block .downtime_block {
        width: 120px;
        height: 120px
    }

    #contents2 .time_block .downtime_block .downtime_txt {
        width: 90px
    }

    #contents2 .divide2 {
        margin: 1em 0 40px
    }

    #contents2 .divide2:not(.sp_divide)>*+* {
        margin-top: 1em
    }

    #contents2 ul.dot_list2 {
        margin: 1.5em 0 1.5em 1.5em
    }

    #contents2 ul.dot_list2 li {
        list-style-type: none;
        position: relative;
        font-weight: bold
    }

    #contents2 ul.dot_list2 li:before {
        border-radius: 50%;
        width: 6px;
        height: 6px;
        display: block;
        position: absolute;
        left: -1.1em;
        top: .7em;
        content: "";
        background: #b02b5a
    }

    #contents2 ul.dot_list2 li:nth-of-type(n+2) {
        margin-top: 0
    }

    #contents2 .grey_block {
        background-color: #f4f4f4;
        border-radius: 5px;
        margin: 0
    }

    #contents2 .grey_block div {
        padding: 0 10px !important
    }

    #contents2 .grey_block P {
        font-size: 1.4rem
    }

    #contents2 .grey_block .btn_link_l_wimg {
        width: auto;
        margin: 0
    }

    #contents2 div.sp_img_w80 {
        text-align: center
    }

    #contents2 div.sp_img_w80 img {
        width: 80%
    }

    #contents2 .img_eye_catch {
        text-align: center;
        float: none;
        margin-right: 0
    }

    #contents2 .img_heikou {
        width: 80%
    }

    #contents2 .ani_btn {
        margin: 10px 0
    }

    #contents2 .opecat {
        display: block;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 100%;
        margin: 0 auto
    }

    #contents2 .ani_btn.opecat_block {
        margin: 0;
        display: block
    }

    #contents2 .ani_btn.opecat_block:nth-child(odd) {
        margin-right: 0
    }

    #contents2 .ani_btn.opecat_block:nth-child(even) {
        margin-left: 0
    }

    #contents2 .ani_btn.opecat_block:nth-child(n+2) {
        margin-top: 10px
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg {
        display: block;
        width: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 15px 30px 15px 15px;
        background-color: #f4f4f4;
        border-radius: 6px;
        border: none
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg::before {
        right: 7px
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg::after {
        right: 15px
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
        box-sizing: border-box;
        padding: 0 0 10px 0
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item {
        box-sizing: border-box;
        text-align: left;
        width: 66.666%
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_name {
        padding: 0 10px 0 0;
        box-sizing: border-box
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_name em {
        font-size: 1.7rem;
        color: #b02b5a
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_text {
        font-size: 1.1rem;
        color: #444;
        padding: 10px 10px 0 0;
        box-sizing: border-box
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item .opecat_title_text span {
        font-size: 1.4rem
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block .opecat_title_item p+p {
        margin-top: .5em
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block figure {
        width: 33.334%;
        margin: 0 auto;
        min-width: auto;
        box-sizing: border-box;
        max-width: 100%;
        flex-basis: unset;
        align-self: baseline
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block figure img {
        box-sizing: border-box;
        width: 100%;
        max-width: 100px;
        height: auto
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block.titleonly {
        align-items: center;
        padding: 0
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_title_block.titleonly .opecat_title_item .opecat_title_name {
        padding: 0 10px 0 0
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block {
        padding: 0 0 10px 0;
        margin-top: 5px
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block p {
        display: block;
        background: #fff;
        width: 100%;
        box-sizing: border-box;
        padding: 10px;
        font-size: 1.6rem;
        color: #333
    }

    #contents2 .ani_btn.opecat_block .btn_link_l_wimg .opecat_txt_block p span {
        font-size: 1.2rem
    }

    #contents .divide2.sp_divide.real_illust_img .illust_arr_r:after {
        position: absolute;
        width: 45px;
        height: 30px;
        top: 50%;
        left: 106%
    }

    #contents .divide2.sp_divide.real_illust_img .illust_arr_r.tp40:after {
        top: 40%
    }

    #contents .divide2.sp_divide.real_illust_img .illust_arr_r.lt120:after {
        left: 120%
    }

    #contents .ba_block .divide2.sp_divide li:nth-of-type(n+2) {
        margin-top: 0
    }

    #contents .columndiv .btns {
        margin: 20px 0
    }

    #contents .columndiv .columndiv_lr {
        align-items: flex-end
    }

    #contents .columndiv .columndiv_lr img {
        max-width: 320px
    }

    #contents .columndiv .columnlists li {
        padding: 0;
        box-sizing: border-box;
        width: 100%
    }

    #contents .columndiv .columnlists li a {
        padding: 15px 0
    }

    #contents .columndiv .columnlists li figure {
        width: auto
    }

    #contents .columndiv .columnlists li figure img {
        width: 125px;
        height: 125px;
        max-width: 125px
    }

    #contents .columndiv .columnlists li .txt {
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px
    }

    #contents .clinic_cv_box {
        width: 100%;
        margin: 20px auto;
        padding: 40px 0
    }

    #contents .clinic_cv_box ul {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap
    }

    #contents .clinic_cv_box ul li {
        width: 47%;
        text-align: center;
        margin: 5px auto
    }

    #contents .clinic_cv_box ul li a {
        width: 95%;
        padding: 7px 8px 7px 0px
    }

    #contents .clinic_cv_box ul li a::after {
        display: block;
        position: absolute;
        width: 3px;
        height: 3px;
        border-top: solid 1px #4694D1;
        border-right: solid 1px #4694D1;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
        right: 13px;
        top: 0;
        bottom: 0;
        margin: auto
    }

    #contents .clinic_cv_box ul li a::before {
        display: block;
        position: absolute;
        width: 16px;
        height: 16px;
        border: solid 1px #4694D1;
        border-radius: 50px;
        content: "";
        right: 5px;
        top: 0;
        bottom: 0;
        margin: auto
    }

    #contents .clinic_cv_box ul.after::after {
        display: block;
        content: "";
        width: 35.3%;
        text-align: center;
        padding: 7px 30px 7px 10px;
        margin: 5px auto
    }

    #contents .clinic_cv_box::before {
        left: 39%
    }
}

@media only print {
    header {
        display: none !important
    }

    #container {
        min-width: auto !important;
        min-width: initial !important;
        margin-left: 0 !important;
        float: none !important;
        width: auto !important
    }

    #contents .inner {
        max-width: auto !important;
        max-width: initial !important
    }

    .sp {
        display: none !important
    }

    .ani_slideup {
        opacity: 1 !important;
        -webkit-transform: translateY(0) !important;
        transform: translateY(0) !important
    }

    .ani_fade {
        opacity: 1 !important
    }

    .ani_reduce {
        -webkit-transform: scale(1) !important;
        transform: scale(1) !important;
        opacity: 1 !important
    }

    .ani_btn {
        -webkit-transform: scale(1) !important;
        transform: scale(1) !important;
        opacity: 1 !important
    }
}

@media only screen and (max-width: 374px) {
    .btn_link_l_wimg figure {
        flex-basis: 120px;
        max-width: 120px
    }

    .btn_link_l_wimg h3 {
        font-size: 1.5rem
    }

    .btn_link_l_wimg p {
        font-size: 1.1rem
    }

    header,
    header h2,
    header #logo,
    #cnav li a {
        height: 50px
    }

    header h2,
    header #logo {
        padding-top: 16px
    }

    #cnav li a {
        padding-top: 33px;
        background-size: 26px auto;
        font-size: 7.5px
    }

    #sp_menu .gnav li a,
    #sp_menu .info li a {
        font-size: 1.2rem
    }

    #sp_menu .contact li a {
        font-size: .9rem
    }

    #container {
        padding-top: 40px
    }

    #treatment nav .img {
        top: -180px;
        right: -40px
    }

    #treatment h2 {
        font-size: 2.1rem
    }

    #treatment h3 {
        font-size: 1.1rem
    }

    #treatment h3 span {
        font-size: 1.4rem
    }

    #treatment h4 {
        font-size: 1.6rem
    }

    #treatment2 nav .img {
        top: -192px;
        right: -30px;
        width: 190px
    }

    #treatment2 h2 {
        font-size: 2.1rem
    }

    #treatment2 h3 {
        font-size: 1.1rem
    }

    #treatment2 h3 span {
        font-size: 1.4rem
    }

    #treatment2 h4 {
        font-size: 1.6rem
    }

    #start h2 {
        font-size: 1.8rem
    }

    #start li p {
        font-size: 1.1rem
    }

    #contact h2 {
        font-size: 1.5rem
    }

    #contact li a {
        font-size: 1rem
    }

    #clinic h2 {
        font-size: 1.5rem
    }

    #subject h2 {
        font-size: 1.5rem
    }

    #operation .h_2 {
        font-size: 1.5rem
    }

    #contact p.h_2 {
        font-size: 1.5rem
    }

    #clinic p.h_2 {
        font-size: 1.5rem
    }

    #subject p.h_2 {
        font-size: 1.5rem
    }

    #treatment2 p.h_2 {
        font-size: 2.1rem
    }

    #treatment2 p.h_3 {
        font-size: 1.1rem
    }

    #treatment2 p.h_3 span {
        font-size: 1.4rem
    }

    #treatment2 p.h_4 {
        font-size: 1.6rem
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info {
        position: relative
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_face {
        width: 25%;
        float: none;
        position: absolute;
        margin: auto;
        bottom: 0;
        right: 0
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_face img {
        width: 100%;
        height: auto
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_name {
        padding-top: 0
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_name span {
        display: block
    }

    #head h1 {
        font-size: 1.8rem
    }

    #head h1 span.no-display,
    #head h1 span.sub-display-inline {
        font-size: 1.8rem
    }

    #head h2 {
        font-size: 1.2rem
    }

    #contents h2.sec_h {
        font-size: 1.7rem
    }

    #contents h3.sec_h {
        font-size: 1.5rem
    }

    #contents .anchors li a {
        font-size: 1rem
    }

    #contents .decorbox.point h2 {
        padding: .5em 0 2em 0
    }

    #contents .decorbox.point h2 em {
        font-size: 2.2rem
    }

    #contents .wide_block h2 {
        font-size: 1.7rem
    }

    #contents .summary h2 {
        font-size: 2rem
    }

    #contents .summary h3 {
        font-size: 1.4rem
    }

    #contents .contact_block li a.btn_tel h3 {
        padding: 8px 0;
        font-size: 2.2rem
    }

    #contents .notice_box h2 {
        font-size: 1.6rem
    }

    #contents .notice_box h3 {
        font-size: 1.4rem
    }

    #contents .price_block .list h4 {
        font-size: 1.6rem
    }

    #contents .banners .bnr li figure {
        flex-basis: 120px;
        height: 80px
    }

    #contents .banners .bnr li h3 {
        font-size: 1.3rem
    }
}

@media only screen and (max-width: 413px) {

    header,
    header h2,
    header #logo,
    #cnav li a {
        height: 58px
    }

    header h2,
    header #logo {
        width: 25.8%;
        padding: 20px 5px 0 6px
    }

    #cnav {
        width: 74.2%
    }

    #cnav li:nth-child(2) {
        width: 23.2%
    }

    #cnav li:nth-child(5) {
        width: 20.7%
    }

    #cnav li a {
        font-size: 9px;
        padding: 35px 0 0
    }

    #cnav li a.reserve {
        background-size: 23.58px
    }

    #cnav li a.line {
        background-size: 20.6px
    }

    #cnav li a.tel {
        background-size: 21.6px
    }

    #container {
        padding-top: 62px;
    }

    #treatment nav .img {
        top: -190px;
        right: -20px
    }

    #treatment h2 {
        font-size: 2.5rem
    }

    #treatment h3 {
        font-size: 1.2rem
    }

    #treatment h3 span {
        font-size: 1.6rem
    }

    #treatment h4 {
        font-size: 1.8rem
    }

    #treatment2 nav .img {
        top: -200px;
        right: -26px;
        width: 200px
    }

    #treatment2 h2 {
        font-size: 2.5rem
    }

    #treatment2 h3 {
        font-size: 1.2rem
    }

    #treatment2 h3 span {
        font-size: 1.6rem
    }

    #treatment2 h4 {
        font-size: 1.8rem
    }

    #start h2 {
        font-size: 2.1rem
    }

    #start li p {
        font-size: 1.2rem
    }

    #contact h2 {
        font-size: 1.8rem
    }

    #clinic h2 {
        font-size: 1.8rem
    }

    #clinic ul+h2 {
        margin-top: 20px
    }

    #clinic .sns {
        max-width: none
    }

    #clinic .sns li {
        width: 30px;
        padding-right: 15px
    }

    #subject h2 {
        font-size: 1.8rem
    }

    #subject .list_ope>li:nth-child(n+5) {
        margin-top: 0
    }

    #operation .h_2 {
        font-size: 1.8rem
    }

    #operation .list_ope>li:nth-child(n+5) {
        margin-top: 0
    }

    header p#logo {
        padding: 20px 5px 0 6px;
        float: left;
        width: 25.8%;
        height: 58px
    }

    #contact p.h_2 {
        font-size: 1.8rem
    }

    #clinic ul+p.h_2 {
        margin-top: 20px
    }

    #clinic p.h_2 {
        font-size: 1.8rem
    }

    #subject p.h_2 {
        font-size: 1.8rem
    }

    #treatment2 p.h_2 {
        font-size: 2.5rem
    }

    #treatment2 p.h_3 {
        font-size: 1.2rem
    }

    #treatment2 p.h_3 span {
        font-size: 1.6rem
    }

    #treatment2 p.h_4 {
        font-size: 1.8rem
    }

    #contents .section_media_news .block_media_news ul li .block_media_news_doc_info .block_media_news_doc_info_name {
        padding-top: 3%;
        line-height: 1.6;
        padding-bottom: 3px
    }

    #head h1 {
        font-size: 2.2rem
    }

    #head h1 span.no-display,
    #head h1 span.sub-display-inline {
        font-size: 2.2rem
    }

    #head h2 {
        font-size: 1.4rem
    }

    #contents h2.sec_h {
        font-size: 2rem
    }

    #contents h3.sec_h {
        font-size: 1.6rem
    }

    #contents .table_col1 td {
        text-align: center
    }

    #contents .decorbox.point h2 {
        padding: 1em 0 2em 0
    }

    #contents .decorbox.point h2 em {
        font-size: 2.5rem
    }

    #contents .wide_block h2 {
        font-size: 2rem
    }

    #contents .summary h2 {
        font-size: 2.2rem
    }

    #contents .summary h3 {
        font-size: 1.6rem
    }

    #contents .notice_box h2 {
        font-size: 1.8rem
    }

    #contents .notice_box h3 {
        font-size: 1.6rem
    }

    #contents .price_block .list h4 {
        font-size: 1.8rem
    }

    #contents .links_block h2 {
        font-size: 1.4rem
    }

    #contents .deqwas_block h2 {
        font-size: 14px
    }
}

@media only screen and (max-width: 450px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 6vh;
        font-size: 1.2rem
    }
}

@media only screen and (max-width: 400px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 7vh;
        font-size: 1.1rem
    }

    #contents .columndiv h2.sec_h {
        margin-bottom: 1em
    }

    #contents .columndiv .btn_more {
        padding: 10px 24px 10px 6px;
        font-size: 1.2rem
    }
}

@media only screen and (max-width: 300px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 8vh;
        font-size: 1rem
    }
}

@media only screen and (max-width: 1200px)and (min-width: 768px) {
    #clinic .sns {
        max-width: none
    }

    #clinic .sns li {
        float: left;
        width: 2.9vw;
        min-width: 29px
    }

    #clinic li {
        float: none;
        width: 100%;
        margin: 5px 0
    }
}

@media only screen and (max-width: 414px) {
    #contents .contact_block li a.btn_tel h3 {
        font-size: 2.8rem
    }
}

@media only screen and (max-width: 320px) {
    #contents .dr_treatment__attention {
        text-align: left;
        font-size: .6em;
        background-color: #fff;
        padding: 50px 0 0 0;
        max-width: 150px;
        background: url(../image/icon_attention.png) 50px 0px no-repeat
    }
}

@media only screen and (max-width: 768px) {
    #contents .explanation_box ul {
        text-align: unset
    }

    #contents .cir {
        height: 40px;
        width: 40px;
        line-height: 40px;
        bottom: 35px;
        right: 8px;
        font-size: 17px
    }

    #contents .btn_arrow_exp {
        width: 90%;
        margin: auto
    }

    #contents .exp01,
    .exp02 {
        position: initial !important;
        margin-top: 10px;
        -webkit-transform: initial !important;
        transform: initial !important
    }

    #contents h3.explanation_box_ttl {
        width: 70%
    }

    .spmt15 {
        margin-top: 15px !important
    }

    #contents .explanation_box ul li {
        margin-top: 10px
    }

    .mtb20 {
        margin: 20px 0 15px 0 !important
    }

    #contents .divide2.illust_plus:after {
        width: 100%
    }

    .illust_plus:after {
        content: "";
        display: block;
        position: initial;
        width: 100%;
        height: 59px;
        margin-top: 0;
        padding-top: 20px;
        background: url(../image/img_plus.gif) center bottom no-repeat
    }

    #contents .illust_decoration_block_p {
        width: 90% !important;
        margin: 1.7rem !important
    }

    .illust_plus+div {
        margin-top: 0px !important
    }

    .foot_logo>a {
        display: block;
        text-align: center;
    }
}

@media only screen and (max-width: 375px) {
    #contents .columndiv h2.sec_h {
        font-size: 2rem !important
    }

    #contents .columndiv .columndiv_lr img {
        max-width: 350px
    }
}


.foot_logo {
    max-width: 260px;
    margin: 0 auto;
}

.foot_logo>a {
    display: block;
}

h3.title {
    color: #555;
    line-height: 1.35em;
    text-shadow: none;
    background: rgba(70, 148, 209, 0.15);
    background-size: 11px 60px;
    padding: 10px 10px 10px 2em;
    border-left: 0px solid #0098D8;
    border-bottom: 0px solid #004766;
    box-shadow: none;
    border-radius: 3px;
    margin: 0 auto 20px;
    text-indent: -2em;
}

h3.title:before {
    content: '●';
    color: #fff;
    padding: 0 5px 0 0.8em;
}

#contents .dr_title1 {
    margin-bottom: 1em;
    text-align: left;
    font-size: 3.2rem;
    color: #373c46;
    display: block;
    width: 100%;
    border-top: 1px solid #ccc;
    padding: 0 30px;
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
}

#contents .dr_title1:after {
    content: "";
    display: block;
    width: 100%;
}

#contents .dr_title1 .n_title_s {
    padding: 40px 10px;
    display: inline-block;
    border-bottom: 1px solid #716218;
    margin-bottom: -1px;
    letter-spacing: 3px;
}


@media only screen and (max-width: 768px) {

    td.reservebox,
    th.reservebox {
        display: block !important;
    }
}





.header1 {
    height: 0;
    display: none;
    background: #070e27;
}

.header1 {
    overflow: hidden;
    margin: 0 auto 1px;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
    display: block;
    margin: 0px;
    padding: 0px;
}

.header1 .wmain {
    padding: 5px 0 10px;
}

.header1 .hti {
    padding: 5px 0 3px;
}

.header1 .hti h1 {
    width: 1200px;
    margin: 0 auto;
    font-weight: normal;
    font-size: 14px;
}

.header1 .head-cta {
    overflow: hidden;
    position: relative;
}

.header1 ul {
    text-align: right;
    overflow: hidden;
    letter-spacing: 0;
    font-size: 0;
}

.header1 .head-cta ul li {
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    margin: 0 2px;
}


.head-cta {
    display: none;
}

@media (max-width: 768px) {
    .head-cta {
        display: block !important;
    }

    footer {
        margin-bottom: 100px;
    }
}

.header1｛z-index:9999;

｝ .header1 .head-cta {
    overflow: hidden;
    position: relative;
}

.header1 ul {
    text-align: right;
    overflow: hidden;
    letter-spacing: 0;
    font-size: 0;
}

.header1 .head-cta ul li {
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    margin: 0 2px;
    z-index: 99999;
}


@media screen and (max-width: 888px) {
    .header1 .head-cta {
        width: 80%;
    }

    .header1 .head-cta ul li {
        width: 43%;
    }
}

@media screen and (max-width: 590px) {

    .wmain,
    .header1 {
        width: 95%;
    }

    .header1 .head-cta {
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        background: #070e27;
        padding: 10px 0;
        border-top: 1px solid #ddd;
        z-index: 9;
    }

    .header1 .head-cta ul li {
        width: 31%;
        margin: 0 2px;
    }

    .header1 .head-cta ul {
        text-align: center;
    }

    .header1 .hti h1.pc {
        display: none;
    }
}