@charset "utf-8";

/*-------------------------------------------------------------------------*/
/* include
/*-------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,500,600');

/* Noto Sans Japanese */
/* fonts.googleapis.com/earlyaccess/notosansjapanese.css */
@font-face {
font-family: 'Noto Sans Japanese'; font-style: normal;
font-weight: 200;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
font-display: swap;
}
@font-face {
font-family: 'Noto Sans Japanese'; font-style: normal;
font-weight: 300;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
font-display: swap;
}
@font-face {
font-family: 'Noto Sans Japanese'; font-style: normal;
font-weight: 500;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
font-display: swap;
}
@font-face {
font-family: 'Noto Sans Japanese'; font-style: normal;
font-weight: 700;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
font-display: swap;
}

/*-------------------------------------------------------------------------*/
/* reset
/*-------------------------------------------------------------------------*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,ins,kbd,q,samp,small,strong,
sub,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,main,nav,section,summary,time,mark,audio,video{ margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body{ line-height: 1; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{ display: block; }
nav ul{ list-style: none; }
ul,ol,li,dl,dt,dd{ list-style-type: none; list-style-position: outside; }
blockquote,q{ quotes: none; }
blockquote:before,blockquote:after,q:before,q:after{ content: none; }
a{ margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
ins{ background-color: #ff9; color: #000; text-decoration: none; }
img{ vertical-align: top; border: 0; }
em{ font-style: italic; }
mark{ background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del{ text-decoration: line-through; }
abbr[title],dfn[title]{ border-bottom: 1px dotted; cursor:help; }
table{ border-collapse: collapse; border-spacing: 0; }
hr{ display:block; height:1px; border: 0; border-top: 1px solid #ccc; margin: 0; padding: 0; }
input,select{ vertical-align: middle; }
main { display: block; }
button { border: none; }
@media print, screen and (min-width: 768px) {
}

/*-------------------------------------------------------------------------*/
/* module
/*-------------------------------------------------------------------------*/
.err { color: #ff0000 !important; font-weight: bold; }.bold { font-weight: bold !important; }.red { color: #eb0602 !important; }.center { text-align: center !important; }.right { text-align: right !important; }.left { text-align: left !important; }.fr { float: right; }.fl { float: left; }
.fs10 { font-size: 10px !important; }.fs12 { font-size: 12px !important; }.fs14 { font-size: 14px !important; }.fs16 { font-size: 16px !important; }.fs18 { font-size: 18px !important; }.fs20 { font-size: 20px !important; }.fs22 { font-size: 22px !important; }.fs24 { font-size: 24px !important; }
.mt0 { margin-top: 0px !important; }.mt5 { margin-top: 5px !important; }.mt10 { margin-top: 10px !important; }.mt15 { margin-top: 15px !important; }.mt20 { margin-top: 20px !important; }.mt30 { margin-top: 30px !important; }.mt40 { margin-top: 40px !important; }.mt50 { margin-top: 50px !important; }
.mb5 { margin-bottom: 5px !important; }.mb0 { margin-bottom: 0 !important; }.mb10 { margin-bottom: 10px !important; }.mb15 { margin-bottom: 15px !important; }.mb20 { margin-bottom: 20px !important; }.mb30 { margin-bottom: 30px !important; }.mb40 { margin-bottom: 40px !important; }.mb50 { margin-bottom: 50px !important; }
.mr0 { margin-right: 0 !important; }.mr10 { margin-right: 10px !important; }.mr15 { margin-right: 15px !important; }.mr20 { margin-right: 20px !important; }.mr25 { margin-right: 25px !important; }.mr30 { margin-right: 30px !important; }
.ml5 { margin-left: 5px !important; }.ml10 { margin-left: 10px !important; }.ml20 { margin-left: 20px !important; }.ml30 { margin-left: 30px !important; }
.center { text-align: center !important; }.right { text-align: right !important; }.left { text-align: left !important; }
.pb10 { padding-bottom: 10px !important; }.pb20 { padding-bottom: 20px !important; }.pb30 { padding-bottom: 30px !important; }.pb40 { padding-bottom: 40px !important; }
.pl10 { padding-left: 10px !important; }.pl35 { padding-left: 35px !important; }.pl40 { padding-left: 40px !important; }.pl55 { padding-left: 55px !important; }
.pr10 { padding-right: 10px !important; }
.w150 { width: 150px !important; }.w200 { width: 200px !important; }.w220 { width: 220px !important; }.w240 { width: 240px !important; }.w300 { width: 300px !important; }.w330 { width: 330px !important; }.w350 { width: 350px !important; }.w380 { width: 380px !important; }.w480 { width: 480px !important; }.w100p { width: 100% !important; }
.err-msg, .error-message { margin: 10px 0 0; font-weight: bold; font-size: 14px; color: #cc0000; }
@media print, screen and (min-width: 768px) {
}

/*-------------------------------------------------------------------------*/
/* slick
/*-------------------------------------------------------------------------*/
.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;-ms-touch-action:pan-y;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:hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-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-slide{display:none;float:left;height:100%; margin: 0 7px; min-height:1px;}
[dir='rtl'] .slick-slide{float:right;}
.slick-slide.dragging img{pointer-events:none;}
.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent;}
.slick-loading .slick-track,.slick-loading .slick-slide{visibility:hidden;}
.slick-slide img,.slick-initialized .slick-slide{display:block;}
.slick-slide.slick-loading img,.slick-arrow.slick-hidden{display:none;}
.slick-loading .slick-list{ background:#fff url('../img/ajax-loader.gif') center center no-repeat;}
.slick-prev,.slick-next{ font-size: 0; position:absolute; display:block; color:transparent; border:none; outline:none; background:transparent; padding:0; z-index: 99; }
.slick-prev{ bottom: -33px; left: 10px; width: 15px; height: 15px; background: url('../img/ico_arw_l_w.png') no-repeat; background-size: 15px; cursor: pointer; }
.slick-next{ bottom: -33px; right: 10px; width: 15px; height: 15px; background: url('../img/ico_arw_r_w.png') no-repeat; background-size: 15px; cursor: pointer; }
@media print, screen and (min-width: 768px) {
.slick-prev{ left: 520px; }
.slick-prev:hover { background: url('../img/ico_arw_l_y.png') no-repeat; background-size: 15px; }
.slick-next{ right: 520px; }
.slick-next:hover { background: url('../img/ico_arw_r_y.png') no-repeat; background-size: 15px; }
}

.slick-dots { position: absolute; bottom: -35px; display:block; width:100%; list-style:none; text-align:center; margin:0; padding:0;}
.slick-dots li{position:relative;display:inline-block;width:15px;height:15px;cursor:pointer;margin:0 6px; }
.slick-dots li button{ line-height:0;display:block;width:15px;height:15px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent;padding:5px;}
.slick-dots li button:before{ position:absolute;top:0;left:0;width: 12px;height: 12px; content: ""; background: #f3f3f3; border-radius: 50%; opacity: 1; }
.slick-dots li.slick-active button:before{ opacity: 1; background: #e8e705;}


/*-------------------------------------------------------------------------*/
/* base
/*-------------------------------------------------------------------------*/
* { margin: 0; padding: 0; box-sizing: border-box; }
body { position: relative; font-family: "Noto Sans Japanese", "源ノ角ゴシック", "Source Han Sans", Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; width: 100%; font-size: 14px; color: #101010; background: #f6f6f6; font-weight: 300; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-feature-settings: "palt"; }
h1, h2, h3, h4, h5, h6 { font-size: 1.0em; font-weight: normal; }
table { border-collapse: collapse; }
img { border: none; vertical-align: bottom; }
li { list-style-type: none; }
sup { font-size: 10px; }
p { line-height: 1.5; }
p small { font-size: 80%; }
.red { color: #d52f21; }
th { font-weight: normal; }
.makr { border-bottom: 1px dashed #333; background: #f9ff9a; color: #eb0602; font-weight: 500; }
@media print, screen and (min-width: 768px) {
body { font-size: 16px; }
}

/* link */
a { transition: .2s; }
a:link { color: #101010; text-decoration: none; }
a:visited { color: #101010; }
a:hover { color: #101010; text-decoration: underline;  }

.under a:link { text-decoration: none; }
.under a:hover { text-decoration: underline; }

/* Selected Text */
::selection { background: #b1b1b1; }
::-moz-selection { background: #b1b1b1; }

/* rollover */
@media print, screen and (min-width: 768px) {
a:hover img.hov { filter: alpha(opacity=84); -moz-opacity: 0.84; opacity: 0.84; }
.ovrgp a:hover img, img.ovr:hover, input.ovr:hover, button.ovr:hover { filter: alpha(opacity=80); opacity: 0.80; }
}

/* ios */
.ios a:hover img.hov { filter: alpha(opacity=1); -moz-opacity: 1; opacity: 1; }
.ios .ovrgp a:hover img, .ios img.ovr:hover, .ios input.ovr:hover { filter: alpha(opacity=1); opacity: 1; }

/* clear */
.clear { clear: both; }
.cfgp li:before, .cfgp li:after,.cf:before, .cf:after, .clearfix:before, .clearfix:after { content: ""; display: table; }
.cfgp li:after,.cf:after, .clearfix:after { clear: both; }
.cfgp li,.cf, .clearfix { *zoom: 1; }

/* img */
img { max-width: 100%; }
@media print, screen and (min-width: 768px) {
img { max-width: auto; max-height: auto; }
}

/* hiddn */
#wrapper .pc { display: none !important; }
@media print, screen and (min-width: 768px) {
#wrapper .pc { display: block !important; }
#wrapper img.pc { display: inline !important; }
#wrapper .sp { display: none !important; }
}

/* sp-txt */
.sp-txt {	text-align: left; }
@media print, screen and (min-width: 768px) {
.sp-txt {	text-align: inherit; }
}

/* sp-img */
.sp-img { width: 100%; }
@media print, screen and (min-width: 768px) {
.sp-img { width: inherit; }
}

/* img-c */
.img-c { text-align: center; }
.img-c img { margin: 0 auto; }
@media print, screen and (min-width: 768px) {
}

/* widelink */
@media print, screen and (min-width: 768px) {
.widelink { cursor: pointer; }
.widelink_cover { position: relative;}
.widelink_cover:before { content: "この記事を読む"; position: absolute; top: 45%; left: 50%; z-index: 6; opacity: 0; color: rgb(255, 255, 255); text-align: center; font-size: 12px; line-height: 1.3; transition-property: opacity,top; transition-duration: 0.15s; transition-timing-function: ease-out; transform: translate(-50%,-50%); background: #101010; padding: 3px 5px; }
.bgblack .widelink_cover:before { background: #f5f404; color: #101010; }
.widelink.hover a { text-decoration: underline;}
.widelink.hover .widelink_cover:before { opacity: 1; top: 50%; }
.widelink.hover .widelink_cover:after { opacity: 1; }
}

/*-------------------------------------------------------------------------*/
/* base
/*-------------------------------------------------------------------------*/
#wrapper { position: relative; width: 100%; }
#main { position: relative; width: 100%; margin-top: 40px; }
.container { position: relative; width: 100%; }
.content { position: relative; width: 100%; }
.sidebar { display: none; }
@media print, screen and (min-width: 768px) {
#main { margin: 0; }
.container { width: 1160px; margin: 0 auto; padding-top: 60px; }
.home .container { padding-top: 0;}
.content { float: left; width: 780px; padding-bottom: 60px; }
.clinic_detail .content { float: right; }
.sidebar { display: block; position: relative; float: right; width: 300px; padding-bottom: 60px; }
.clinic_detail .sidebar { float: left; }
.sidewrap { position: relative; width: 300px; }
}

.bgblack { background: #1e1e1a; color: #f3f3f3; }
.bgblack a { color: #f3f3f3; }
.bgblack a:hover { color: #f5f404; }
@media print, screen and (min-width: 768px) {
}

.bg01 { position: relative; background: url(../img/bg_img01.jpg) no-repeat center center; }
.bg02 { position: relative; background: url(../img/bg_img02.jpg) no-repeat center center;  }
.bg01:after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; background: rgba(255,255,255, 0.5); z-index: 2;}
.bg02:after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; background: rgba(0,0,0, 0.7); z-index: 2;}
.bg01 > div,.bg02 > div { position: relative; z-index: 3;}
@media print, screen and (min-width: 768px) {
}

/*-------------------------------------------------------------------------*/
/* sp
/*-------------------------------------------------------------------------*/

/* sp-btn */
#sp-btn { position: fixed; top: 0; right: 0; width: 40px; height: 40px; padding: 12px 0 0; z-index: 998; background: #3c3c3a; text-align: center; }
#sp-btn-icon,#sp-btn-icon span { display:inline-block; transition: all .4s; box-sizing: border-box; }
#sp-btn-icon { position:relative; width: 20px; height: 13px; }
#sp-btn-icon span { position: absolute; left: 0; width: 100%; height: 1px; background-color: #fafafa; }
#sp-btn-icon span:nth-of-type(1) { top: 0; }
#sp-btn-icon span:nth-of-type(2) { top: 6px; }
#sp-btn-icon span:nth-of-type(3) { bottom: 0; }
.open #sp-btn-icon { -webkit-transform: rotate(90deg); transform: rotate(90deg); }
@media screen and (min-width: 768px) {
#sp-btn { display: none; }
}

/* sp-nav */
#sp-nav { display: none; position: fixed; top: 40px; left: 0; overflow: auto; width: 100%; height: 100%; z-index: 997; background: rgba(0,0,0, 0.9); text-align: center; color: #fafafa; }
@media screen and (min-width: 768px) {
#sp-nav { display: block; position: inherit; top: inherit; left: inherit; width: inherit; height: inherit; background: none; z-index: 1; }
}

/* sp-close */
#sp-close { position: relative; z-index: 998; padding: 20px 0; text-align: center; font-size: 14px; color: #fff; transition: none; background: #3c3c3a; }
@media screen and (min-width: 768px) {
#sp-close { display: none; }
}

/* spnavbox */
.spnavbox { padding: 60px 30px 10px; }
.spnavbox li { border-top: 1px solid #333; text-align: center; }
.spnavbox li a { display: block; padding: 24px 0; font-size: 15px; text-decoration: none; color: #fff; }

/*-------------------------------------------------------------------------*/
/* header
/*-------------------------------------------------------------------------*/
#header { position: fixed; top: 0; width: 100%; background: #101010; z-index: 996; }
#header .inner { height: 40px; }
#header .text { display: none; }
#header .logo { width: 90px; margin: 0 auto; padding-top: 8px; }
#header .btn a { display: block; padding: 20px 0; text-align: center; }
#header .btn .recruit a { background: #262623 url(../img/ico_hum.png) no-repeat center left 15px; color: #f3f3f3; background-size: 16px; }
#header .btn .clinic a { background: #e8e705 url(../img/ico_sch_b.png) no-repeat center left 10px; background-size: 15px; }
#header .nav li { border-bottom: 1px solid #333; }
#header .nav a { display: block; padding: 20px 0; color: #f3f3f3; }

@media print, screen and (min-width: 768px) {
#header { position: relative; background: #101010; }
#header .inner { position: relative; max-width: 1160px; min-width: 1160px; height: 108px; margin: 0 auto; color: #f3f3f3; font-size: 13px; }
#header .text { display: block; }
#header .logo { position: absolute; top: 18px; left: 15px; width: 178px; padding: 0; font-size: 11px; z-index: 2; }
#header .logo img { margin-bottom: 12px; }
#header .btn { position: absolute; top: 0; right: 0; }
#header .btn li { float: left; }
#header .btn a { min-width: 180px; padding: 15px; text-align: center; }
#header .btn .clinic a { padding-left: 25px; }
#header .btn .recruit a:hover { background: #3c3c3a url(../img/ico_hum.png) no-repeat center left 15px; color: #f3f3f3; background-size: 16px; }
#header .btn .clinic a:hover { background: #fffe00 url(../img/ico_sch_b.png) no-repeat center left 10px; background-size: 15px; }
#header .nav { position: absolute; bottom: 0; right: 0; }
#header .nav li { float: left; border: none; }
#header .nav a { padding: 15px 25px 20px; }
#header .nav a:hover { background: #3c3c3a; }
}

/*-------------------------------------------------------------------------*/
/* visual
/*-------------------------------------------------------------------------*/
#visual { background: #f1f4f2; }
#visual .inner { position: relative; }
#visual .mvsp { height: 180px; padding: 60px 10px 30px; background: url(../img/top_mv_sp.jpg) no-repeat; background-size: cover; }
#visual .copy { font-size: 17px; font-weight: 500; line-height: 1.4; }
#visual .search form { position: relative; }
#visual .search input[type=text] { width: 100%; height: 60px; padding: 10px; color: #8f8f8f; font-size: 14px; font-weight: 500; border: none; font-family: "Noto Sans Japanese", "源ノ角ゴシック", "Source Han Sans", Lato; }
#visual .search input[type=text]:focus { color: #000; }
#visual .search button { display: block; width: 60px; height: 60px; position: absolute; top: 0; right: 0; background: #262623 url(../img/ico_sch_w.png) no-repeat center center; cursor: pointer; background-size: 20px; }
#visual .pref { padding: 25px 15px 10px 15px; background: url(../img/ico_bg_wdt.png); }
#visual .pref h3 { margin-bottom: 25px; font-size: 16px; font-weight: 500; text-align: center; }
#visual .pref ul { margin-bottom: 25px; }
#visual .pref li { float: left; margin-right: 12px; font-size: 12px; line-height: 1.4; }
#visual .pref li:last-child { margin-right: 0; }

@media print, screen and (min-width: 768px) {
#visual .inner { width: 1160px; height: 400px; margin: 0 auto; background: url(../img/top_mv.jpg); }
#visual .mvsp { height: inherit; padding: 0; background: none; }
#visual .copy { position: absolute; top: 180px; left: 20px; font-size: 33px; }
#visual .search { position: absolute; bottom: 30px; left: 20px; }
#visual .search input[type=text] { width: 465px; height: 73px; padding: 25px; font-size: 18px; }
#visual .search button { width: 77px; height: 73px; background: #262623 url(../img/ico_sch_w.png) no-repeat center center; background-size: 25px; }
#visual .search button:hover { background: #101010 url(../img/ico_sch_w.png) no-repeat center center; background-size: 25px; }
#visual .pref { position: absolute; top: 25px; right: 0; padding: 30px 30px 20px 35px; background: url(../img/ico_bg_dot.png); }
#visual .pref h3 { color: #f3f3f3; }
#visual .pref ul { margin-bottom: 20px; }
#visual .pref li a { color: #f3f3f3; }
}

/*-------------------------------------------------------------------------*/
/* footer
/*-------------------------------------------------------------------------*/
#footer { background: #101010; }
#footer .inner { position: relative; margin: 0 auto; padding-bottom: 15px; color: #f3f3f3; text-align: center; }
#footer .lnav li { display: inline-block; margin: 20px 5px 10px; font-size: 12px;}
#footer .cr { font-size: 10px; font-family: 'Montserrat'; font-weight: 500; }
#footer a { color: #f3f3f3; }
#footer span { display: none; }
@media print, screen and (min-width: 768px) {
#footer .inner { max-width: 1160px; min-width: 1160px; height: 80px; padding-bottom: 0; text-align: left; }
#footer .lnav { padding-top: 20px; }
#footer .lnav li { float: left; margin: 0; font-size: 13px;}
#footer .lnav a { display: block; padding: 15px 25px; }
#footer .lnav a:hover { background: #3c3c3a; }
#footer .cr { position: absolute; top: 35px; right: 95px; font-size: 11px; }
#footer span { display: inline; }
}

/*-------------------------------------------------------------------------*/
/* pagetop
/*-------------------------------------------------------------------------*/
#pagetop { display: none; position: fixed; bottom: 0; right: 0; z-index: 998; }
#pagetop a { display: block; width: 45px; height: 45px; background: #262623 url(../img/ico_arw_up_w.png) no-repeat center center; background-size: 10px; }
@media print, screen and (min-width: 768px) {
#pagetop a { width: 80px; height: 80px; background: #262623 url(../img/ico_arw_up_w.png) no-repeat center center; background-size: 20px; }
#pagetop a:hover { background: #3c3c3a url(../img/ico_arw_up_y.png) no-repeat center center; background-size: 20px; }
}

/*-------------------------------------------------------------------------*/
/* slider
/*-------------------------------------------------------------------------*/
.slider { background: #101010; }
.slider .slidergp { opacity: 0; transition: opacity .3s linear; background: #101010; }
.slider .slidergp.slick-initialized { opacity: 1; }
.slider .slider_list { position: relative; padding: 0 10px 60px; }
.slider h3 { padding: 30px 0; font-size: 16px; color: #f3f3f3; text-align: center; }
.slider_list img { width: 100%; }
.slider_list .ttl { margin: 15px 0; font-size: 14px; font-weight: 500; }
.slider_list .ttl a { color: #f3f3f3; }
.slider .tag > li { float: left; margin-right: 6px; padding: 5px 8px; font-size: 10px; color: #f3f3f3; border: 1px solid #666; }
.slider .tag > li a { color: #f3f3f3; }

@media print, screen and (min-width: 768px) {
.slider { background: #101010; }
.slider .slider_list { position: relative; width: 1160px; margin: 0 auto; padding-bottom: 60px; }
.slider h3 { padding: 30px 0; font-size: 20px; color: #f3f3f3; text-align: center; }
.slider_list .img img { max-width: 270px; }
.slider_list .ttl { margin: 15px 0; font-size: 15px; font-weight: 500; }
.slider_list .ttl a { color: #f3f3f3; }
.slider .tag { }
.slider .tag > li { float: left; margin-right: 6px; padding: 5px 8px; font-size: 11px; color: #f3f3f3; border: 1px solid #666; }
.slider .tag > li a { color: #f3f3f3; }
}

/*-------------------------------------------------------------------------*/
/* post_main
/*-------------------------------------------------------------------------*/
.post_main { position: relative; background: url(../img/ico_bg_dot.png); }
.post_main .inner { padding-bottom: 15px; color: #f3f3f3; }
.post_main .copy { padding: 15px 10px; font-size: 20px; color: #f3f3f3; line-height: 1.2; }
.post_main .data { padding: 0 10px; }
.post_main .cate { margin-right: 8px; padding: 3px 6px; font-size: 11px; color: #f3f3f3; border: 1px solid #d6d6d6; }
.post_main .time { padding-left: 18px; background: url(../img/ico_clock_w.png) no-repeat left center; background-size: 15px; font-size: 12px; font-weight: 500; }
.post_main .men, .post_main .name { display: none; }
.post_main .icon { margin: 20px 0 0; text-align: center; }
.post_main .icon li { display: inline-block; width: 20%; }
.post_main .icon img { width: 25px; }
@media print, screen and (min-width: 768px) {

.post_main { overflow: hidden; height: 330px; margin: 0; background: #1e1e1a; }
.post_main .image img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; margin: auto; }
.post_main .wrap {  position: relative; z-index: 2;
background: -moz-linear-gradient(top, rgba(0,0,0,0) 50%, rgba(0,0,0,0.8) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 50%,rgba(0,0,0,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,0) 50%,rgba(0,0,0,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#cc000000',GradientType=0 ); /* IE6-9 */
}
.post_main .inner { position: relative; width: 1160px; height: 330px; margin: 0 auto; padding: 200px 0 0; z-index: 3; }
.post_main .copy { padding: 0; font-size: 30px; }
.post_main .data { position: absolute; bottom: 20px; left: 0; padding: 0; }
.post_main .cate { margin-right: 8px; padding: 3px 6px; font-size: 11px; color: #f3f3f3; border: 1px solid #d6d6d6; }
.post_main .time { padding-left: 18px; background: url(../img/ico_clock_w.png) no-repeat left center; background-size: 15px; font-size: 12px; font-weight: 500; }
.post_main .men { display: inline; margin-left: 20px; }
.post_main .men img { width: 50px; vertical-align: middle; border-radius: 50%; }
.post_main .name { display: inline; margin-left: 20px; font-size: 11px; }
.post_main .icon { position: absolute; bottom: 35px; right: 0; margin: 0;  }
.post_main .icon li { float: left; width: inherit; margin-left: 30px; }
}

/*-------------------------------------------------------------------------*/
/* clinic_main
/*-------------------------------------------------------------------------*/
.clinic_main .inner { position: relative; z-index: 3; color: #f3f3f3; }
.clinic_main .ttl { margin: 15px 10px; font-size: 20px; font-weight: 500; }
.clinic_main .ttl a { color: #f3f3f3; }
.clinic_main .text { margin: 0 10px 10px; line-height: 1.4; }
.clinic_list .clinic_main .text { display: none; }
.clinic_main .image { display: none; }
.clinic_main .spec { margin: 0 10px; }
.clinic_main .tbl01 { margin-bottom: 10px; text-align: left; }
.clinic_main .tbl01 th { display: block; padding-bottom: 7px; font-size: 14px; vertical-align: middle; }
.clinic_main .tbl01 td { display: block; vertical-align: middle; }
.clinic_main .tbl01 li { float: left; margin: 0 7px 7px 0; padding: 4px 7px; border: 1px solid #b2b2b2; font-size: 11px; }
.clinic_main .feature { display: inline-block; padding-left: 25px; background: url(../img/ico_print.png) no-repeat center left; background-size: 15px; }
.clinic_main .recommend { display: inline-block; padding-left: 25px; background: url(../img/ico_hart.png) no-repeat center left; background-size: 15px; }
.clinic_main .tbl02 { padding-bottom: 20px; }
.clinic_list .clinic_main .tbl02 { display: none; }
.clinic_main .tbl02 table { width: 100%; text-align: left; }
.clinic_main .tbl02 tr { border-bottom: 1px solid #868686; }
.clinic_main .tbl02 tr:last-child { border-bottom: none; }
.clinic_main .tbl02 th { width: 80px; padding: 10px 10px; font-size: 12px; vertical-align: middle; background: url(../img/ico_bg_dot.png); }
.clinic_main .tbl02 td { padding: 10px 10px; font-size: 12px; vertical-align: middle; background: url(../img/ico_bg_tka.png); line-height: 1.2; }
.clinic_main .wrap { position: relative; padding: 20px 10px 10px; z-index: 3; }
.clinic_main .wrap h2 { margin-bottom: 15px; font-size: 18px; text-align: center; }
.clinic_main .wrap p { margin: 20px 0; text-align: left; line-height: 1.4; }

@media print, screen and (min-width: 768px) {
.clinic_main .inner { width: 1160px; margin: 0 auto; padding: 40px 0; }
.clinic_main .ttl { margin: 0 0 30px; font-size: 40px; }
.clinic_main .text { margin: 0; }
.clinic_list .clinic_main .text { display: block; }
.clinic_main .deta { margin: 50px 0 0; }
.clinic_main .spimg { display: none; }
.clinic_main .image { display: block; float: right; width: 510px; }
.clinic_main .spec { float: left; width: 570px; margin: 0; }
.clinic_main .tbl01 th { display: table-cell; width: 100px; }
.clinic_main .tbl01 td { display: table-cell; }
.clinic_main .tbl01 li { padding: 5px 8px; font-size: 12px; }
.clinic_main .feature, .clinic_main .recommend { background-size: 20px; }
.clinic_list .clinic_main .tbl02 { display: block; }
.clinic_main .tbl02 { padding-bottom: 0; }
.clinic_main .tbl02 th { width: 110px; padding: 13px 15px; font-size: 14px; line-height: 1.4;  }
.clinic_main .tbl02 td { padding: 13px 15px; font-size: 14px; line-height: 1.4; }
.clinic_main .wrap { width: 1160px; margin: 0 auto; padding: 40px 0 20px; }
.clinic_main .wrap h2 { margin-bottom: 30px; font-size: 26px; }
.clinic_main .wrap p { margin: 20px; }
}

/* clinic_sort */
.clinic_sort .wrap { position: relative; margin: 0 auto; padding: 25px 0; z-index: 3; }
.clinic_sort .wrap h2 { margin-bottom: 20px; font-size: 18px; text-align: center; }
.clinic_sort .cond dt { width: 160px; height: 36px; margin: 0 auto; text-align: center; padding: 10px 0 0; background: #333 url(../img/ico_arw_dw_y.png) no-repeat center right 12px; background-size: 15px; font-size: 14px; font-weight: 500; cursor: pointer; color: #f3f3f3; }
.clinic_sort .cond dt.op { background: #333 url(../img/ico_arw_up_y.png) no-repeat center right 12px; background-size: 15px; }
.clinic_sort .cond dd { display: none; margin: 0 10px; }
.clinic_sort table { width: 100%; text-align: left; border-top: 1px solid #1e1e1a; }
.clinic_sort tr { border-bottom: 1px solid #1e1e1a; }
.clinic_sort th { display: block; padding: 15px 10px 0; vertical-align: middle;  }
.clinic_sort td { display: block; padding: 15px 10px; vertical-align: middle; line-height: 1.6; }
.clinic_sort li { float: left; margin-right: 20px; }
@media print, screen and (min-width: 768px) {
.clinic_sort .wrap { width: 1160px; padding: 40px 0 30px; }
.clinic_sort .wrap h2 { margin-bottom: 30px; font-size: 26px; }
.clinic_sort .cond dt { display: none; }
.clinic_sort .cond dd { display: block; margin: 0; }
.clinic_sort th { display: table-cell; width: 300px; padding: 25px 0; line-height: 1.4;  }
.clinic_sort td { display: table-cell; padding: 25px 0; line-height: 1.4; }
}

/* loading */
.loading { padding: 10px 0 30px; text-align: center; }
.loading img { width: 15px; }
@media print, screen and (min-width: 768px) {
.loading { padding: 20px 0 40px; }
.loading img { width: 20px; }
}

/* respons */
.respons { background: #101010; }
.respons .inner { position: relative; padding: 15px 10px; color: #f3f3f3; text-align: center; }
.respons .ttl { font-size: 16px; font-weight: 500; color: #f3f3f3; line-height: 1.2; }
.respons .tel { padding: 10px 0 5px; font-size: 30px; font-family: "Montserrat"; font-weight: 700; line-height: 1; }
.respons .tel a { color: #f3f3f3; }
.respons .tel:before { display: inline-block; content: ""; width: 20px; height: 20px; margin-right: 5px; background: url(../img/ico_tel.png) no-repeat; background-size: cover; }
.respons .time { font-size: 11px; }
.respons .btn { margin-top: 15px; text-align: center; }
.respons .btn a { display: block; width: 100%; height: 55px; padding: 15px 0 0; border: 2px solid #cfce13; background: #f7f638 url(../img/img_mail.png) no-repeat center left 20px; background-size: 20px; font-size: 16px; font-weight: 500; cursor: pointer; }
@media print, screen and (min-width: 768px) {
.respons .inner { width: 600px; margin: 0 auto; padding: 40px 0; }
.respons .ttl { font-size: 22px; }
.respons .tel { padding: 20px 0 10px 0; font-size: 48px; }
.respons .tel:before { width: 30px; height: 30px; margin-right: 10px; }
.respons .time { font-size: 12px; }
.respons .btn { width: 550px; margin: 30px auto 0; }
.respons .btn a { height: 80px; padding: 20px 0 0; background: #f7f638 url(../img/ico_mail.png) no-repeat center left 30px; font-size: 28px; }
.respons .btn a:hover { background: #fffe00 url(../img/ico_mail.png) no-repeat center left 30px; box-shadow: 0 0 10px rgba(255,254,71, 0.5); }
}

/* respons02 */
.respons02 { margin-bottom: 15px; background: #101010; }
.respons02 .inner { position: relative; padding: 15px 10px; color: #f3f3f3; text-align: center; }
.respons02 .txt { font-size: 14px; font-weight: 500; color: #f3f3f3; }
.respons02 .tel { padding: 0 0 5px; font-size: 30px; font-family: "Montserrat"; font-weight: 700; line-height: 1; }
.respons02 .tel:before { display: inline-block; content: ""; width: 20px; height: 20px; margin-right: 5px; background: url(../img/ico_tel.png) no-repeat; background-size: cover; }
.respons02 .tel a { color: #f3f3f3; }
.respons02 .time { font-size: 11px; }
.respons02 .btn { margin-top: 15px; text-align: center; }
.respons02 .btn a { display: block; width: 100%; height: 55px; padding: 15px 0 0; border: 2px solid #cfce13; background: #f7f638 url(../img/ico_mail.png) no-repeat center left 20px; background-size: 20px; font-size: 16px; font-weight: 500; cursor: pointer; }
@media print, screen and (min-width: 768px) {
.respons02 { margin-bottom: 20px; }
.respons02 .inner { width: 1160px; margin: 0 auto; padding: 30px 0 30px 60px; text-align: left; }
.respons02 .txt { float: left; width: 200px; padding-top: 8px; font-size: 18px; }
.respons02 .data { float: left; width: 340px; }
.respons02 .tel { padding: 0 0 10px; font-size: 40px; }
.respons02 .tel:before { width: 30px; height: 30px; margin-right: 10px; }
.respons02 .time { font-size: 12px; }
.respons02 .btn { float: right; width: 510px; margin: 0; }
.respons02 .btn a { height: 80px; padding: 20px 0 0; background: #f7f638 url(../img/ico_mail.png) no-repeat center left 30px; font-size: 28px; }
.respons02 .btn a:hover { background: #fffe00 url(../img/ico_mail.png) no-repeat center left 30px; box-shadow: 0 0 10px rgba(255,254,71, 0.5); }
}

/* access */
.access { text-align: center; }
.access .ttl { margin: 25px 0; font-size: 20px; }
.access .map img { width: 100%; }
@media print, screen and (min-width: 768px) {
.access .ttl { margin: 50px 0; font-size: 26px; }
}

/* structure */
.structure { background: #1e1e1a; text-align: center; }
.structure .inner { position: relative; padding: 25px 0; color: #f3f3f3; text-align: center; }
.structure .ttl { margin: 0 0 20px; font-size: 20px; }
.structure table { width: 100%; text-align: left; }
.structure th { width: 80px; padding: 15px 10px; border: 1px solid #40403b; background: url(../img/ico_bg_dot.png); font-size: 12px; }
.structure td { padding: 15px 10px; border: 1px solid #40403b; font-size: 12px; }
@media print, screen and (min-width: 768px) {
.structure .inner { width: 1000px; margin: 0 auto; padding: 40px 0; }
.structure .ttl { margin: 0 0 40px; font-size: 26px; }
.structure th { width: 200px; padding: 25px 15px; font-size: 13px; }
.structure td { padding: 25px 15px; font-size: 13px; }
}

/* side_respons */
.side_respons { padding: 15px; color: #f3f3f3; text-align: center; background: url(../img/ico_bg_dot.png); }
.side_respons .ttl { padding: 10px 0 20px; font-size: 18px; color: #f3f3f3; font-weight: 300; border-bottom: 1px solid #494747; line-height: 1.4; }
.side_respons .img { padding: 15px 0; }
.side_respons .txt { font-size: 14px; line-height: 1.3; }
.side_respons .tel { padding: 10px 0; font-size: 32px; font-family: "Montserrat"; font-weight: 700; line-height: 1; }
.side_respons .tel:before { display: inline-block; content: ""; width: 22px; height: 22px; margin-right: 7px; background: url(../img/ico_tel.png) no-repeat; background-size: contain; }
.side_respons .time { font-size: 12px; line-height: 1.3; }
.side_respons .btn { margin: 10px 0 0; }
.side_respons .btn a { display: block; width: 100%; height: 60px; padding: 20px 0 0; background: #f7f638 url(../img/ico_mail.png) no-repeat center left 20px; font-size: 17px; background-size: 15px; font-weight: 500; cursor: pointer; font-weight: 500; }
.side_respons .btn a:hover { background: #fffe00 url(../img/ico_mail.png) no-repeat center left 20px; background-size: 15px; box-shadow: 0 0 10px rgba(255,254,71, 0.5); }
@media print, screen and (min-width: 768px) {
}

/*-------------------------------------------------------------------------*/
/* parts
/*-------------------------------------------------------------------------*/

/* agabutton */
.agabutton { padding: 25px 10px; background: url(../img/bg_img01.jpg) no-repeat center center; text-align: center; background-size: cover; }
.agabutton .wrap { padding: 2px; background: rgba(0,0,0, 0.1); }
.agabutton a { display: block; height: 70px; padding: 22px 0 0; border: 2px solid #cfce13; background: #f7f638 url(../img/ico_sch_b.png) no-repeat center left 30px; font-size: 18px; font-weight: 500; background-size: 20px; }
@media print, screen and (min-width: 768px) {
.agabutton { padding: 30px 0; background-size: auto; }
.agabutton .wrap { width: 550px; margin: 0 auto; padding: 5px; }
.agabutton a { height: 80px; font-size: 28px; background-size: 25px; }
.agabutton a:hover { background: #fffe00 url(../img/ico_sch_b.png) no-repeat center left 30px; background-size: 25px; }
}

/* ttlbar */
.ttlbar { padding: 20px 10px; }
.ttlbar .ttl { font-size: 22px; font-weight: 300; line-height: 1.2; }
.ttlbar .btn { float: right; width: 80px; margin-left: 10px; text-align: center; }
.ttlbar .btn a { display: block; width: 80px; height: 40px; padding-top: 13px; background: #2d2d2a ; color: #f3f3f3; font-size: 11px; }
@media print, screen and (min-width: 768px) {
.ttlbar { padding: 65px 0 45px; }
.ttlbar .ttl { float: left; font-size: 34px; }
.ttlbar .btn { width: 150px; margin: 0; }
.ttlbar .btn a { width: 150px; height: 50px; padding-top: 15px; background: #2d2d2a url(../img/ico_arw_r_y.png) no-repeat center right 15px; background-size: 12px; font-size: 14px; }
}

.subttlbar { margin-bottom: 15px; padding: 17px 10px; background: url(../img/ico_bg_wdt.png); }
.bgblack .subttlbar { background: url(../img/ico_bg_dot.png); }
.subttlbar .ttl { font-size: 18px; font-weight: 300; }
.subttlbar .btn { float: right; width: 70px; }
.subttlbar .btn a { display: block; width: 70px; padding: 5px 0; font-size: 11px; background: url(../img/ico_arw_r_b.png) no-repeat center right; background-size: 13px; }
.bgblack .subttlbar .btn a { background: url(../img/ico_arw_r_y.png) no-repeat center right; background-size: 13px; color: #f3f3f3; }
@media print, screen and (min-width: 768px) {
.subttlbar { margin-bottom: 20px; padding: 17px 20px 18px; }
.subttlbar .ttl { float: left; font-size: 23px; }
.subttlbar .btn { width: 90px; }
.subttlbar .btn a { width: 90px; font-size: 15px; }
}

/* pager */
.pager { padding: 10px 0 20px; text-align: center; }
.pager .prev { float: left; width: 50%; }
.pager .next { float: right; width: 50%; }
.pager a { display: block; width: 100%; height: 60px; padding-top: 22px; background: #333 url(../img/ico_arw_r_y.png) no-repeat center right 15px; background-size: 15px; color: #f3f3f3; font-size: 14px; }
.pager .prev a { background: #101010 url(../img/ico_arw_l_y.png) no-repeat center left 15px; background-size: 15px; }

@media print, screen and (min-width: 768px) {
.pager { padding: 10px 0 0; }
.pager .prev { width: 160px; }
.pager .next { width: 160px; }
.pager a { width: 160px; height: 48px; padding-top: 15px; background: #101010 url(../img/ico_arw_r_y.png) no-repeat center right 15px; background-size: 15px; font-size: 15px; }
}

/*-------------------------------------------------------------------------*/
/* sidebar
/*-------------------------------------------------------------------------*/

.sidettl { padding-bottom: 20px; text-align: center; font-size: 20px; font-weight: 300; }
@media print, screen and (min-width: 768px) {
}

/* side_clinic_search */
.side_clinic_search { margin-bottom: 30px; }
.side_clinic_search .list { padding: 30px 30px 5px; background: url(../img/ico_bg_wdt.png);}
.bgblack .side_clinic_search .list { background: url(../img/ico_bg_dot.png);}
.side_clinic_search li { float: left; margin: 0 12px 25px 0; font-size: 12px; }
@media print, screen and (min-width: 768px) {
}

/* side_popular_articl */
.side_popular_articl {}
.side_popular_articl ul { border-top: 1px solid #1e1e1a; }
.side_popular_articl li { padding-bottom: 25px; border-bottom: 1px solid #1e1e1a;}
.side_popular_articl .img { position: relative; padding: 20px 15px 12px; }
.side_popular_articl .img span { display: block; position: absolute; bottom: 12px; left: 15px; width: 42px; height: 42px; padding-top: 14px; background: #101010; color: #f3f3f3; text-align: center; font-size: 16px; font-family: "Montserrat"; }
.side_popular_articl .img img { width: 100%; }
.side_popular_articl .ttl { margin-bottom: 12px; font-size: 15px; font-weight: 500; line-height: 1.4; }
.side_popular_articl .cate { margin-right: 8px; padding: 3px 6px; font-size: 11px; color: #f3f3f3; background: #101010; }
.bgblack .side_popular_articl .cate { background: none; border: 1px solid #666; }
.side_popular_articl .time { padding-left: 18px; background: url(../img/ico_clock_b.png) no-repeat left center; background-size: 15px; font-size: 12px; font-weight: 500; }
.bgblack .side_popular_articl .time { background: url(../img/ico_clock_w.png) no-repeat left center; background-size: 15px; }
@media print, screen and (min-width: 768px) {
}


/*-------------------------------------------------------------------------*/
/* page
/*-------------------------------------------------------------------------*/

/* cont_list */
.cont_list li { margin-bottom: 10px; }
.cont_list .img { position: relative; }
.cont_list .img img { width: 100%; }
.cont_list .post { padding: 15px 10px; }
.cont_list .data { margin-bottom: 10px; }
.cont_list .ttl { margin-bottom: 10px; font-size: 18px; font-weight: 500; line-height: 1.4; }
.cont_list .cate { margin-right: 8px; padding: 3px 6px; font-size: 11px; color: #f3f3f3; background: #101010; }
.cont_list .time { padding-left: 18px; background: url(../img/ico_clock_b.png) no-repeat left center; background-size: 15px; font-size: 12px; font-weight: 500; }
.bgblack .cont_list .cate { background: none; border: 1px solid #666; }
.bgblack .cont_list .time { background: url(../img/ico_clock_w.png) no-repeat left center; background-size: 15px; }
.cont_list p { font-size: 14px; display: -webkit-box; display: box; -webkit-box-orient: vertical; box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4; overflow: hidden; }

@media print, screen and (min-width: 768px) {
.cont_list li { margin-bottom: 50px; }
.cont_list .img { float: left; width: 360px; }
.cont_list .post { float: right; width: 390px; padding: 0; }
.cont_list .data { margin-bottom: 20px; }
.cont_list .ttl { font-size: 20px; }
.cont_list li:first-child .img { float: none; width: 100%; }
.cont_list li:first-child .post { float: none; width: inherit; }
.cont_list li:first-child .data { float: left; width: 130px; margin: 20px 0 0; }
.cont_list li:first-child .text { position: relative; z-index: 99; float: left; width: 650px; margin-top: -50px; padding: 18px 0 0 28px; background: #f6f6f6; }
.bgblack .cont_list li:first-child .text { background: #1e1e1a; }
.cont_list li:first-child .ttl { margin-bottom: 10px; font-size: 28px; }
.cont_list li:first-child .cate { margin: 0; }
.bgblack .cont_list li:first-child .cate { background: #f5f404; color: #101010; border: none; }
.cont_list li:first-child .time { display: inline-block; margin: 12px 0 0; padding: 2px 0 2px 18px; }
.cont_list li:first-child p { -webkit-line-clamp: 2; line-clamp: 2; }
}

/* cont_ttl */
.cont_ttl { margin: 30px 10px 20px; font-size: 18px; font-weight: 300; }
@media print, screen and (min-width: 768px) {
.cont_ttl { margin: 50px 0 40px; font-size: 30px; }
}

/* path */
#path { background: #21211f; }
#path ul { padding: 10px; }
#path li { float: left; margin-right: 7px; padding-right: 17px; font-size: 10px; background: url(../img/ico_arw_r_y.png) no-repeat center right; background-size: 11px; color: #f3f3f3; }
#path li:last-child { margin-right: 0; padding-right: 0; background: none; }
#path li a { color: #f3f3f3; }
@media print, screen and (min-width: 768px) {
#path ul { width: 1120px; margin: 0 auto; padding: 15px; }
#path li { margin-right: 10px; padding-right: 20px; font-size: 11px; background: url(../img/ico_arw_r_y.png) no-repeat center right; background-size: 13px; }
}

/* share */
.share { margin: 20px 10px 0; }
.share div { float: left; margin-right: 10px; }
@media print, screen and (min-width: 768px) {
.share { display: none; position: fixed; top: 50%; left: auto; margin: -100px 0 0 -70px; z-index: 998; }
.share div { float: none; margin: 0 0 15px 0; }
}

/* refine */
.refine { margin: 0 10px 30px; }
.refine ul { margin: 0 -8px -8px 0; }
.refine li { float: left; margin: 0 8px 8px 0; }
.refine li a { display: block; padding: 12px 10px; background: #f3f3f3; color: #202020; font-size: 14px; font-weight: 500; }
@media print, screen and (min-width: 768px) {
.refine { margin: 0 0 80px; }
.refine li a { padding: 14px 12px; }
.refine li a:hover { background: #1c1e21; color: #f3f3f3; }
}

/* postman */
.postman { margin: 0 10px; }
.postman .men { float: left; }
.postman .men img { width: 50px; vertical-align: middle; border-radius: 50%; }
.postman .name { float: left; margin-left: 10px; font-size: 14px; font-weight: 500; line-height: 1.6; }
.postman .btn { clear: both; width: 140px; padding-top: 10px; text-align: center; }
.postman .btn a { display: block; width: 140px; height: 38px; padding-top: 12px; background: #2d2d2a url(../img/ico_arw_r_y.png) no-repeat center right 15px; background-size: 15px; color: #f3f3f3; font-size: 12px; }

@media print, screen and (min-width: 768px) {
.postman { margin: 0; }
.postman .men img { width: 60px; }
.postman .name { margin-left: 20px; font-size: 17px; }
.postman .btn { clear: inherit; float: right; width: 150px; }
.postman .btn a { width: 150px; height: 48px; padding-top: 15px; font-size: 15px; }
}

/* aga_choose */
.aga_choose { position: relative; margin: 20px 0 0; padding: 25px 10px 0; text-align: center; }
.aga_choose:after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; background: rgba(255,255,255, 0.5); z-index: 2;}
.aga_choose .wrap { position: relative; z-index: 3; }
.aga_choose .ttl { font-size: 18px; }
.aga_choose .bx { margin: 20px 10px; padding: 15px; background: rgba(0,0,0, 0.8); color: #f3f3f3; }
.aga_choose .bx h4 { margin-bottom: 10px; font-size: 16px; color: #f7f638; }
.aga_choose .aga_btn { clear: both; }
.aga_choose .aga_btn a { display: block; height: 70px; margin: 20px 10px; padding: 25px 0 0; background: #f7f638 url(../img/ico_sch_b.png) no-repeat center left 30px; background-size: 20px; font-size: 18px; font-weight: 500; }
@media print, screen and (min-width: 768px) {
.aga_choose { margin: 40px 0 0; padding: 40px 20px 50px; }
.aga_choose .ttl { font-size: 22px; }
.aga_choose .bx { float: left; width: 320px; margin: 40px 25px 30px; padding: 25px; }
.aga_choose .bx h4 { font-size: 18px; }
.aga_choose .aga_btn a { height: 80px; margin: 0 20px; background: rgba(0,0,0, 0.8) url(../img/ico_sch_w.png) no-repeat center left 30px; background-size: 25px; font-size: 24px; color: #f7f638; }
.aga_choose .aga_btn a:hover { background: #f7f638 url(../img/ico_sch_b.png) no-repeat center left 30px; background-size: 25px; color: #101010;  }
}

/* confarm */
.confarm { margin: 0 10px; padding: 30px 0; text-align: center; }
.confarm h3 { margin-bottom: 20px; font-size: 18px; font-weight: 500; color: #f3f3f3; }
.confarm-table { margin: 0 auto; }
.confarm-table table { width: 100%; text-align: left; }
.confarm-table tr { border-bottom: 2px solid #333; }
.confarm-table th { display: block; padding: 15px 10px; background: #f6f6f6 url(../img/ico_bg_wdt.png); }
.confarm-table th .req { position: relative; }
.confarm-table th .req:after { position: absolute; top: -5px; right: 0; display: inline-block; padding: 7px; content: "必須"; background: #bc1919; color: #f3f3f3; font-size: 12px; }
.confarm-table td { display: block; padding: 15px 10px; background: #f6f6f6; }
.confarm-table tr:last-child { border-bottom: none; }
.confarm-table input { width: 100%; padding: 10px; border: none; font-size: 14px; }
.confarm-txt { margin-top: 20px; color: #f3f3f3; }
.confarm-table input[type="radio"] { width: initial; margin: 0 5px 0 10px; }
.confarm-table textarea { padding: 10px; font-size: 14px; resize: vertical; }
.confarm-table .notes { font-size: 12px; color: #666; display: inline-block; margin: 5px 0 0; }
.confarm-btn { text-align: center; }
.confarm-btn input { width: 90%; font-size: 25px; font-weight: 500; background: #f7f638; padding: 8px 0 4px; border: 2px solid #cfce13; margin: 20px 0 0; cursor: pointer; border-radius: 0; -webkit-appearance: none; -webkit-tap-highlight-color: rgba(0,0,0,0) }
.confarm-btn input:hover { text-decoration: underline; }

@media print, screen and (min-width: 768px) {
.confarm { margin: 0; padding: 70px 0; }
.confarm h3 { margin-bottom: 40px; font-size: 26px; }
.confarm-table { width: 960px; }
.confarm-table th { display: table-cell; width: 230px; padding: 25px 20px; background: #f6f6f6 url(../img/ico_bg_wdt.png); }
.confarm-table td { display: table-cell; padding: 20px 20px; background: #f6f6f6; }
.confarm-table input { width: 500px; font-size: 16px; }
.confarm-txt { margin-top: 30px; }
.confarm-table textarea { font-size: 16px; }
.confarm-btn input { width: auto; width: initial; font-size: 28px; padding: 8px 100px 4px; margin: 35px 0 0; }
}

.confarm-step { margin: 0 10px 20px; text-align: center; }
.confarm-step ul { margin: 0 auto; color: #f3f3f3; }
.confarm-step li { display: inline-block; position: relative; width: 70px; margin: 0 10px; padding: 16px 2px; border: 1px solid #818181; font-size: 10px; }
.confarm-step li:after { position: absolute; top: 50%; right: -14px; display: inline-block; width: 10px; height: 10px; margin-top: -5px; content: ""; background: url(../img/ico_arw_r_y.png); background-size: cover; }
.confarm-step li:last-child:after { display: none; }
.confarm-step .en { display: block; font-family: "Montserrat"; }
.confarm-step .on { text-shadow:0 0 5px #fffe47; box-shadow: 0 0 10px rgba(255,254,71, 0.8); }

@media print, screen and (min-width: 768px) {
.confarm-step { margin: 0 auto 40px; }
.confarm-step ul { width: 500px; }
.confarm-step li { width: 120px; margin: 0 20px; padding: 26px 8px; font-size: 13px; }
.confarm-step li:after { position: absolute; right: -30px; width: 15px; height: 15px; }
.confarm-step .en { display: inline; margin-right: 10px; }
}

.confarm .btn { margin: 0 auto; padding-top: 20px; }
.confarm button { display: block; width: 100%; height: 60px; border: 2px solid #cfce13; background: #f7f638; font-size: 18px; font-weight: 500; font-family: "Noto Sans Japanese", "源ノ角ゴシック", "Source Han Sans", Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic; }
@media print, screen and (min-width: 768px) {
.confarm .btn { width: 550px; padding-top: 40px; }
.confarm button { height: 80px; font-size: 28px; cursor: pointer; }
.confarm button:hover { background: #fffe00; box-shadow: 0 0 10px rgba(255,254,71, 0.5); }
}

/* complate */
.complate { margin: 0 10px; padding: 40px 0; text-align: center; }
.complate h3 { margin-bottom: 20px; font-size: 18px; font-weight: 500; }
.complate p { line-height: 1.6; }
.complate .btn { width: 150px; margin: 20px auto 0; text-align: center; }
.complate .btn a { display: block; width: 150px; height: 40px; padding-top: 13px; background: #2d2d2a url(../img/ico_arw_r_y.png) no-repeat center right 15px; background-size: 15px; color: #f3f3f3; font-size: 12px; }
@media print, screen and (min-width: 768px) {
.complate { margin: 0; padding: 80px 0; }
.complate h3 { margin-bottom: 40px; font-size: 26px; }
.complate .btn { margin: 40px auto 0; }
.complate .btn a { height: 48px; padding-top: 15px; font-size: 15px; }
}

/* index */
.article .index { margin: 30px 10px 0; padding: 20px 20px 10px; border: 1px solid #101010; background: #fff; text-align: center; }
.article .index:before { display: block; margin-bottom: 20px; content: "目 次"; text-decoration: underline; font-size: 15px; font-weight: 500; }
.article .scroll { counter-reset: count-number; }
.article .scroll li { margin-bottom: 15px; }
.article .scroll li:before { counter-increment: count-number; content: "0" counters(count-number,"") ".  "; font-size: 12px; }
.article .scroll li a { font-size: 12px; }

@media print, screen and (min-width: 768px) {
.article .index { margin: 40px 0 0; padding: 25px; }
.article .index:before { font-size: 17px; }
.article .scroll li { margin-bottom: 20px; }
.article .scroll li:before { font-size: 14px; }
.article .scroll li a { font-size: 13px; }
}

/* related */
.article .related { margin: 30px 10px 0; padding: 15px 0; border-top: 2px solid #101010; }
.article .related:before { display: block; margin-bottom: 20px; content: "関連記事"; font-size: 18px; }
.article .related li { margin-bottom: 25px; }
.article .related li:last-child { margin-bottom: 0; }
.article .related .img { margin-bottom: 10px; }
.article .related .ttl { margin-bottom: 12px; font-size: 15px; font-weight: 500; line-height: 1.4; }
.article .related .cate { margin-right: 8px; padding: 3px 6px; font-size: 11px; color: #f3f3f3; background: #101010; }
.article .related .time { padding-left: 18px; background: url(../img/ico_clock_b.png) no-repeat left center; background-size: 15px; font-size: 12px; font-weight: 500; }

@media print, screen and (min-width: 768px) {
.article .related { margin: 60px 0 0; padding: 25px 0; }
.article .related:before { margin-bottom: 30px; font-size: 22px; }
.article .related ul { margin-right: -15px; }
.article .related li { float: left; width: 250px; margin: 0 15px 0 0; }
}

.article .ph-r,.article .ph-l { margin: 10px 0; width: 100%; }
@media print, screen and (min-width: 768px) {
.article .ph-r { float: right; width: 390px; margin: 30px 0 0 30px; }
.article .ph-l { float: left; width: 390px; margin: 30px 30px 0 0; }
}

/* article */
.article { position: relative; padding-bottom: 30px; }

@media print, screen and (min-width: 768px) {
.article { position: relative; padding-bottom: 0; }
}

.article p { margin: 10px 10px 0; }
.article strong { font-size: 16px; font-weight: 500; color: #e41001; }
.article em { font-style: italic; text-decoration: underline; font-weight: 500; }
@media print, screen and (min-width: 768px) {
.article p { margin: 25px 0 0; font-size: 16px; line-height: 1.6; }
.article strong { font-size: 18px; }
}

.article .mv { margin: 10px 0; }
@media print, screen and (min-width: 768px) {
.article .mv { margin: 30px 0; }
}

.article .tag { margin: 10px; }
.article .tag div { float: left; font-size: 12px; color: #b1b1b1; }
.article .tag div:after { content: ","; margin: 0 8px 0 3px; }
.article .tag div:last-child:after { display: none; }
.article .tag a { color: #b1b1b1; }
@media print, screen and (min-width: 768px) {
.article .tag { margin: 0; }
.article .tag div { float: left; font-size: 13px; color: #b1b1b1; font-weight: 400; }
.article .tag div:after { content: ","; margin: 0 8px 0 3px; }
.article .tag div:last-child:after { display: none; }
.article .tag a { color: #b1b1b1; }
}

.article .button { margin: 20px 10px; }
@media print, screen and (min-width: 768px) {
.article .button { margin: 40px 90px; }
}

.article h1 { padding: 15px 10px; font-size: 20px; line-height: 1.2; }
@media print, screen and (min-width: 768px) {
.article h1 { margin-bottom: 40px; padding: 0; font-size: 34px; }
}

.article h2 { position: relative; clear: both; margin: 30px 0 0; padding: 15px 10px; font-size: 18px; font-weight: 500; color: #fff; background: #101010; line-height: 1.2; }
@media print, screen and (min-width: 768px) {
.article h2 { margin: 80px 0 0; padding: 10px 10px; font-size: 28px; }
}

.article h3 { clear: both; margin: 20px 10px 0; padding: 0 0 10px; font-size: 16px; border-bottom: 1px solid #1e1e1a; line-height: 1.3; }
.article h2 + h3 { margin: 15px 10px 0; }
@media print, screen and (min-width: 768px) {
.article h3 { margin: 50px 0 0; padding: 0 0 30px; font-size: 20px; }
.article h2 + h3 { margin: 20px 0 0; }
}

.article h4 { position: relative; clear: both; margin: 20px 10px 0; padding: 10px 10px; font-size: 16px; font-weight: 500; line-height: 1.2; border-left: 3px solid #1e1e1a; }
@media print, screen and (min-width: 768px) {
.article h4 { margin: 40px 0 0; padding: 5px 0 5px 15px; font-size: 18px; }
}

.article h5 { position: relative; clear: both; margin: 30px 0 0 10px; font-size: 16px; color: #1e1e1a; line-height: 1.4; }
@media print, screen and (min-width: 1025px) {
.article h5 { font-size: 18px; }
}

/* table */
.article .tbl-wrap { margin: 20px 10px 0;}
.article table { width: 100%; text-align: left; background: #fff; }
.article table th { min-width: 100px; padding: 10px; font-size: 12px; vertical-align: middle; color: #f3f3f3; background: url(../img/ico_bg_dot.png); border: 1px solid #d6d6d6; line-height: 1.4; font-weight: 300; }
.article table td { padding: 10px; vertical-align: middle; font-size: 12px; text-align: left; border: 1px solid #d6d6d6; line-height: 1.4; }
@media print, screen and (min-width: 768px) {
.article .tbl-wrap { margin: 0;}
.article table { width: 100%; margin: 30px 0 0; }
.article table th { min-width: 170px; padding: 25px 15px; font-size: 14px; line-height: 1.4; }
.article table td { padding: 25px 15px; font-size: 14px; line-height: 1.4; }
}

/* ul */
.article > ul { margin: 20px 10px 0; padding: 15px 15px 5px; background: url(../img/ico_bg_wdt.png); }
.article > ul li { padding: 0 0 10px; font-size: 14px; line-height: 1.2; }
.article > ul li:before { display: inline-block; content: ""; width: 7px; height: 7px; margin: -2px 12px 0 0; background: url(../img/ico_dot.png) no-repeat; vertical-align: middle; }
@media print, screen and (min-width: 768px) {
.article > ul { margin: 20px 0 0; padding: 25px 30px 10px; }
.article > ul li { padding: 0 0 20px; font-size: 15px; }
}

/* ol */
.article > ol { margin: 20px 10px 0; padding: 15px 15px 5px; counter-reset: number; list-style: none; background: url(../img/ico_bg_wdt.png); }
.article > ol li { padding: 0 0 10px; font-size: 14px; line-height: 1.2; }
.article > ol li:before { display: inline-block; counter-increment: number; content: "0" counter(number) ".  "; margin-right: 10px; text-align: center; font-size: 15px; font-weight: 500; }
@media print, screen and (min-width: 768px) {
.article > ol { margin: 20px 0 0; padding: 25px 30px 10px; }
.article > ol li { padding: 0 0 15px; font-size: 15px; }
}

.bg-mens { background: #333 url(../img/bg_img03.jpg) no-repeat center center;  }
.bg-ledis { background: #333 url(../img/bg_img04.jpg) no-repeat center center;  }

/* checkpoint */
.article .checkpoint { position: relative; margin: 20px 10px 0; padding: 40px 10px 20px; color: #f3f3f3; }
.article .checkpoint:after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: ""; background: rgba(0,0,0, 0.7); z-index: 2;}
.article .checkpoint:before { position: absolute; top: 0; left: 0; z-index: 3; content: "チェックポイント"; display: inline-block; padding: 7px 16px 8px; background: #e9e705; font-size: 11px; color: #101010; }
.article .checkpoint * { position: relative; z-index: 4; }
.article .checkpoint h5 { text-align: center; color: #f3f3f3; }

@media print, screen and (min-width: 768px) {
.article .checkpoint { margin: 30px 0 0; padding: 50px 30px 30px; }
.article .checkpoint:before { font-size: 12px; }
}

/* blockquote */
.article > blockquote { position: relative; margin: 20px 10px 0; padding: 40px 15px 15px; background: #fff; line-height: 1.3; }
.article > blockquote:before { position: absolute; top: 0; left: 0; z-index: 3; content: "引用文"; display: inline-block; padding: 7px 16px 8px; background: #101010; font-size: 11px; color: #f3f3f3; }
@media print, screen and (min-width: 768px) {
.article > blockquote { margin: 30px 0 0; padding: 50px 30px 30px; line-height: 1.4; }
.article > blockquote:before { font-size: 12px; }
}

/* link */
.article .link { margin: 20px 10px; padding: 10px; background: #1e1e1a; text-align: center; line-height: 1.3; }
.article .link a { color: #f3f3f3; }
.article .link:before { display: inline-block; content: ""; width: 15px; height: 15px; margin-right: 10px; background: url(../img/ico_arw_r_y.png) no-repeat; background-size: 15px; vertical-align: middle; }

@media print, screen and (min-width: 768px) {
.article .link { margin: 40px 0 0; padding: 20px 0; }
}
