@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Lato);
/*@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);
/* Reset */
/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain)*/
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;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {display:block;}
body {line-height:1;}
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;}

body {font-size:14px; line-height:2; color:#555; font-family:"NOW-GM", sans-serif}
a {color:#555; word-break:break-all; text-decoration:none;}
a:hover {color:#0066ff;}
a i {font-family:serif;}
hr {height:1px; background-color:#ccc; width:100%; border:none; margin:30px auto 0px;}

#contents h2 {text-align:left; margin:0 10px 20px; font-weight:bold; padding:20px 0 0; font-size:21px;}
#contents p {margin:0 10px 50px;}
#contents p span.more {display:none;}
#contents p a.btn {float:right; display:block; padding:4px 5px; background:#ff0000; color:#fff; display:inline-block; line-height:1;}
#contents p a.btn:hover {background:#0066ff;}
#contents p a.link {color:#ff0000;}
#contents p a.link:hover {color:#0066ff;}
#contents em {font-weight:bold;}
#contents p img {display:block; margin:20px auto; width:100%;}
#contents p span {text-align:center; display:block; margin-top:-15px;}
#contents table {margin:-40px 10px 50px; width:98%; box-sizing:border-box;}
#contents td {padding:10px; border:1px solid #555;}
@media (max-width:640px) {
    #contents table {width:auto;}
}


header {margin:0 auto; padding:5px 0; background:#fff; width:100%; max-width:960px; position:relative;}
header h1 {display:inline-block; float:left; height:80px;}
header h1 img {display:block; height:100%;}
header .menu-wrapper {display:none;}
header nav {width:100%;}
header nav ul {clear:both; margin:10px auto; text-align:center; background:#eee; padding:10px 0;}
header nav li {display:inline-block; margin-left:10px;}
header nav li:before {content:"|"; display:inline-block; margin-right:10px;}
header nav li:first-child:before {content:none; margin-left:0;}
header nav .language a {top:16px; position:absolute; right:0px; color:#ff0000; font-size:12px;}
header nav .language a:hover {color:#0066ff;}
header nav .registry a {top:20px; position:absolute; right:0px; color:#ff0000; font-size:12px; overflow:hidden; padding:9px 27px; background:#fff; border:1px solid #ff0000;}
header nav .registry a:hover {color:#fff; border:1px solid #0066ff; background:#0066ff;}
header nav .movie-btn a {top:20px; position:absolute; right:265px; color:#ff0000; font-size:12px; overflow:hidden; padding:9px 27px; background:#fff; border:1px solid #ff0000;}
header nav .movie-btn a:hover {color:#fff; border:1px solid #0066ff; background:#0066ff;}
header nav .contact a {top:20px; position:absolute; right:126px; color:#ff0000; font-size:12px; overflow:hidden; padding:9px 27px; background:#fff; border:1px solid #ff0000;}
header nav .contact a:hover {color:#fff; border:1px solid #0066ff; background:#0066ff;}
header nav .language:before {content:""; display:none; margin-right:0;}
header nav .registry:before {content:""; display:none; margin-right:0;}
header nav .movie-btn:before {content:""; display:none; margin-right:0;}
header nav .contact:before {content:""; display:none; margin-right:0;}
header nav .language {margin-left:0;}
header nav .registry {margin-left:0;}
header nav .movie-btn {margin-left:0;}
header nav .contact {margin-left:0;}


@media (max-width:640px) {
	header h1 {height:55px; padding-bottom:5px;}
	header nav {display:none; position:absolute; height:100vh; width:100%; background:#fff; z-index:3;}
	header nav ul {background:#fff; margin:50px 0 0 20px; text-align:left;}
	header nav li {display:block; margin:0 auto 10px;}
	header nav li:before {content:none; margin-left:0;}
	header nav .language a {top:auto; position:relative; right:auto; color:#555; font-size:14px;}
	header nav .registry a {top:auto; position:relative; right:auto; color:#555; font-size:14px; padding:0; border:none;}
    header nav .movie-btn a {top:auto; position:relative; right:auto; color:#555; font-size:14px; padding:0; border:none;}
    header nav .contact a {top:auto; position:relative; right:auto; color:#555; font-size:14px; padding:0; border:none;}
	header nav .contact {margin-top:50px;}

	header .menu-wrapper {display:block; position:absolute; top:18px; right:15px;}
	.menu-trigger,
	.menu-trigger span {display:inline-block; transition: all .4s; box-sizing:border-box; z-index:6;}
	.menu-trigger {position:relative; width:25px; height:22px; background:none; border:none; appearance:none; cursor:pointer;}
	.menu-trigger span {position:absolute; left:0; width:100%; height:2px; background-color:#555; border-radius:2px;}
	.menu-trigger span:nth-of-type(1) {top:0;}
	.menu-trigger span:nth-of-type(2) {top:10px;}
	.menu-trigger span:nth-of-type(3) {bottom:0;}
	#menu.active span:nth-of-type(1) {transform:translateY(10px) rotate(-45deg);}
	#menu.active span:nth-of-type(2) {left:50%; opacity:0; animation:active-menu05-bar02 .8s forwards;} @keyframes active-menu05-bar02 {100% {height: 0;}}
	#menu.active span:nth-of-type(3) {transform: translateY(-10px) rotate(45deg);}
}


#contents {margin:0 auto;}
#contents > div {width:100%; max-width:640px; margin:20px auto; overflow:hidden;}
#contents .hero {margin:0 auto; width:100%; max-width:960px;}
#contents .hero img {display:block; margin:0 auto; width:100%; max-width:1200px;}
#contents > div a {color:#ff0000;}
#contents > div a:hover {color:#0066ff}

#information {}
#information p {font-size:13px;}
#information a {color:#ff0000;}
#information a.btn:hover {color:#fff;}

#about {}

#link {}
#link a img {display:block; width:100%; border:#ccc 1px solid; vertical-align:top; padding:0; margin:0; box-sizing:border-box;}
#link a:hover img {border:#0066ff 1px solid;}
#link a i {display:none;}
@media (max-width:640px) {
    #link a {margin:0 10px; display:block;}
}

#doctor-car {}
#doctor-car .introduction-list li a {color:#ff0000; padding:9px 27px; background:#fff; border:1px solid #ff0000; display:block; margin:5px 10px;}
#doctor-car .introduction-list li a:hover {color:#fff; border:1px solid #0066ff; background:#0066ff;}
.youtube {text-align:center; margin:0 auto; width:100%; height:auto; aspect-ratio:16 / 9;}

#introduction {}
#introduction .tiktok {margin:40px 10px 20px;}
iframe.youtube-16-9 {width:100%; height:auto; aspect-ratio: 16 / 9;}
#introduction.extra2 h4 {font-size:20px; font-weight:bold; margin:0 10px;}
#introduction.extra2 h5 {font-size:16px; font-weight:bold; margin:0 10px;}
#introduction.extra2 img {max-width:100%; max-height:600px; width:auto; height:auto; margin:0 auto; display:block;}

.movie {text-align:center;}
video {height:100vh; margin:0 auto;}

#registry {}
#registry > div {margin:0 10px 50px;}
#registry h3 {text-align:left; margin:0 0 20px; font-weight:bold; padding:10px 0 0; font-size:16px;}
.registry-category-list {padding:10px 27px; background:#eee; overflow:auto;}
#registry p a {color:#ff0000; padding:9px 27px; background:#fff; border:1px solid #ff0000; display:block; margin:10px 0 0;}
#registry p a:hover {color:#fff; border:1px solid #0066ff; background:#0066ff;}
#registry-A {clear:both; margin-top:50px!important;}
.registry-category-list li {display:inline-block; float:left;}
.registry-category-list li:before {content:"/"; display:inline-block; margin:0 5px;}
.registry-category-list li:first-child:before {content:none; margin-left:0;}
.registry-qa-list li {border:1px solid #ccc; margin:10px auto 20px;}
.registry-qa-list li span {margin-right:5px;}
.registry-qa-list li img {width:100%;}
.list-q {cursor:pointer; padding:9px 27px; color:#ff0000;}
.list-q:hover {background:#eee;}
.list-a {display:none; padding:9px 27px;}

footer {margin:100px auto 0; overflow:hidden; background:#eee; width:100%; text-align:center; padding:0 0 50px; font-size:12px;}
#sns {text-align:center; display:flex; flex-wrap:wrap; width:240px; margin:60px auto;}
#sns li {float:left; width:40px; margin:0 20px;}
#sns li a {display:block; line-height:1;}
#sns li a:hover {filter:brightness(0) saturate(100%) invert(23%) sepia(44%) saturate(6219%) hue-rotate(211deg) brightness(103%) contrast(106%);}
#sitemap ul {clear:both; margin:0 auto 30px;}
#sitemap li {display:inline-block; margin-left:20px;}
#sitemap li:first-child {margin-left:0;}
#sitemap li:before {content:"|"; display:inline-block; margin-right:20px;}
#sitemap li:first-child:before {content:none; margin-left:0;}
@media (max-width:700px) {
	#sns {margin:30px auto;}
	#sitemap {text-align:left; font-size:14px;}
	#sitemap li:before {content:none; margin:0;}
	#sitemap li:first-child {margin:0 10px;}
	#sitemap li {display:block; margin:0 10px;}
}


/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000;}
#colorbox{outline:0;}
    #cboxContent{margin-top:32px; overflow:visible; background:#000;}
        .cboxIframe{background:#000;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#000; padding:1px;}
        #cboxLoadingGraphic{background:url(images/loading.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#000;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}

        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; text-indent:-9999px; width:20px; height:20px; position:absolute; top:-20px; background:url(images/controls.png) no-repeat 0 0;}
        
        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

        #cboxPrevious{background-position:0px 0px; right:44px;}
        #cboxPrevious:hover{background-position:0px -25px;}
        #cboxNext{background-position:-25px 0px; right:22px;}
        #cboxNext:hover{background-position:-25px -25px;}
        #cboxClose{background-position:-50px 0px; right:0;}
        #cboxClose:hover{background-position:-50px -25px;}
        .cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
        .cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
        .cboxSlideshow_on #cboxSlideshow:hover{background-position:-100px -25px;}
        .cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
        .cboxSlideshow_off #cboxSlideshow:hover{background-position:-75px -25px;}