@charset "UTF-8";

/*-------------------------------------------------------------------------*/
/* webfonts
/*-------------------------------------------------------------------------*/
/*--------
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700');
---------*/
/*-------------------------------------------------------------------------*/
/* 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-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-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-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');
}
---------*/
/*-------------------------------------------------------------------------*/
/* html5 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 screen and (min-width: 768px) {
}

/*-------------------------------------------------------------------------*/
/* 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; font-size: 14px; color: #333; font-weight: 300; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; background: #444; }
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 screen and (min-width: 768px) {
}

/* link */
a, :hover { transition: .3s; }
a:link { color: #0066ff; text-decoration: none; }
a:visited { color: #0066ff; }
a:hover { color: #222; cursor: pointer; text-decoration: underline;}

.undergp a:link, a.under:link, a.under { text-decoration: underline; }
.undergp a:hover, a.under:hover { text-decoration: none; }
.un-under a:link { text-decoration: none; }
.un-under a:hover { text-decoration: underline; }
@media screen and (min-width: 768px) {
}

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

/* rollover */
@media 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 screen and (min-width: 768px) {
img { max-width: auto; max-height: auto; }
}

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

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

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

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

/*--------------------------------------------------------------------------
  module
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
.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; }
}


/*--------------------------------------------------------------------------
  Slider
---------------------------------------------------------------------------*/

@media screen and (min-width: 768px) {
.slick-slider { position: relative; display: block; -moz-box-sizing: border-box; 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: pointer; 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-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 { }
.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("./ajax-loader.gif") center center no-repeat; }
.slick-prev, .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 40px; height: 40px; margin-top: -15px; padding: 0; cursor: pointer; color: transparent; border: none; outline: none; background: transparent; z-index: 99999; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: transparent; outline: none; background: transparent; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: .25; }
.slick-prev:before, .slick-next:before { font-family: 'slick'; font-size: 20px; line-height: 1; /*opacity: .75;*/ color: white; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-prev { right: -20px; }
[dir='rtl'] .slick-prev { right: 0; left: 0; }
.slick-prev:before { content: ''; display: block; width: 40px; height: 40px; background: url(../img/ico-arw07.png) no-repeat; background-size: cover; cursor: pointer; }
[dir='rtl'] .slick-prev:before { content: ''; }
.slick-next { left: -25px; }
[dir='rtl'] .slick-next { right: 0; left: 0; }
.slick-next:before { content: ''; display: block; width: 40px; height: 40px; background: url(../img/ico-arw06.png) no-repeat; background-size: cover; cursor: pointer; }
[dir='rtl'] .slick-next:before { content: ''; }
.slick-slider { margin-bottom: 0; }
.slick-dots { position: absolute; bottom: -30px; display: block; width: 100%; padding: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 16px; height: 16px; margin: 0 8px; padding: 0; cursor: pointer; border-radius: 10px; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 16px; height: 16px; padding: 5px; border-radius: 10px; 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 { background: #fff; }
.slick-dots li button:before { font-family: 'slick'; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 18px; height: 18px; border-radius: 10px; content: ''; text-align: center; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background: #fff; }
.slick-dots li.slick-active button:before { background: #eccd3b; }
}


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

.sp-top-main {}

@media screen and (min-width: 768px) {
.sp-top-main { display: none; }
}

#sp-wrap { position: fixed; top: 0; z-index: 9998;}

@media screen and (min-width: 768px) {
#sp-wrap { background: #fff; }
}


/* sp-header */
#sp-header { position: fixed; z-index: 99999; width: 100%; height: 50px; background: #fff; box-shadow: rgba(0, 0, 0, 0.1) 1px 1px 3px 0; transition: none;}
#sp-header .logo { padding: 15px 60px 0 15px; text-align: left; width: 60%;}
#sp-header .bnr { display: none; }

@media screen and (min-width: 768px) {
#sp-header { height: 90px; }
#sp-header .logo { float: left; padding: 25px 0 0 30px; }
#sp-header .bnr { display: block; float: right; }
}
@media screen and (min-width: 1024px) {
#sp-header { display: none; }
}

/* sp-nav */
#sp-nav { display: none; position: fixed; top: 50px; left: 0; overflow: auto; width: 100%; height: 100%; z-index: 99999; background: #000; }

#sp-nav ul { position: relative; z-index: 9999; }
#sp-nav li { background: #fff; border-bottom: 1px solid #ccc; text-align: left; }
#sp-nav li a { position: relative; display: block; font-size: 16px; text-decoration: none; padding: 15px 20px; line-height: 1.6; font-weight: 500; position: relative; display: block; padding: 18px 20px; font-size: 14px; text-decoration: none; background: url(../img/ico-arw01.png) no-repeat right 10px center; }

#sp-nav .sindan img { width: 100%; }

#sp-nav .search { width: 100%; padding: 15px; text-align: center; background: #444; }
#sp-nav .search .sh { position: relative; text-align: left; vertical-align: middle; }
#sp-nav .search .sh input[type=text] { display: inline-block; width: 290px; height: 40px; padding: 10px 18px; background: #666; border: 1px solid #666; border-radius: 20px; font-size: 14px; color: #fff; box-shadow: 0 3px 10px -6px #000 inset; }
#sp-nav .search .sh input[type=image] { position: absolute; top: 11px; right: 14px; }

@media screen and (min-width: 768px) {
#sp-nav { display: block; top: 90px; clear: both; width: 100%; height: auto; background: none; box-shadow: rgba(0, 0, 0, 0.3) 1px 1px 3px 0; }

#sp-nav ul { display: flex; }
#sp-nav li { width: 20%; background: #eee; border-bottom: none; border-right: 2px solid #fff; text-align: center; }
#sp-nav li:last-child { border-right: none; }
#sp-nav li a { font-size: 18px; padding: 18px 0; }

#sp-nav li a:after { display: none; }

#sp-nav li a:before { display: inline-block; content: ""; width: 28px; height: 28px; margin-right: 6px; vertical-align: middle; }
#sp-nav li:nth-child(1) a:before { background: url(../img/ico-tab01.png) no-repeat; background-size: cover; }
#sp-nav li:nth-child(2) a:before { background: url(../img/ico-tab02.png) no-repeat; background-size: cover; }
#sp-nav li:nth-child(3) a:before { background: url(../img/ico-tab03.png) no-repeat; background-size: cover; }
#sp-nav li:nth-child(4) a:before { background: url(../img/ico-tab04.png) no-repeat; background-size: cover; }
#sp-nav li:nth-child(5) a:before { background: url(../img/ico-tab05.png) no-repeat; background-size: cover; }

#sp-nav .sindan,#sp-nav .search { display: none; }
}

@media screen and (min-width: 1024px) {
#sp-nav { display: none; }
}

/* sp-btn */
#sp-btn { position: fixed; top: 0; right: 0; height: 50px; padding: 15px 15px; z-index: 9999; }
#sp-btn-icon, #sp-btn-icon span { display: block; transition: all .3s; box-sizing: border-box; }
#sp-btn-icon { position: relative; width: 30px; height: 19px; }
#sp-btn-icon span { position: absolute; left: 0; width: 100%; height: 3px; background-color: #2673e7; border-radius: 3px; }
#sp-btn-icon span:nth-of-type(1) { top: 0; }
#sp-btn-icon span:nth-of-type(2) { top: 8px; }
#sp-btn-icon span:nth-of-type(3) { bottom: 0; }

.open #sp-btn-icon span:nth-of-type(1) { -webkit-transform: translateY(8px) rotate(-45deg); transform: translateY(8px) rotate(-45deg); }
.open #sp-btn-icon span:nth-of-type(2) { left: 50%; opacity: 0; -webkit-animation: active-menu-bar02 .8s forwards; animation: active-menu-bar02 .8s forwards; }
@-webkit-keyframes active-menu-bar02 { 100% { height: 0; } }
@keyframes active-menu-bar02 { 100% { height: 0; } }
.open #sp-btn-icon span:nth-of-type(3) { -webkit-transform: translateY(-8px) rotate(45deg); transform: translateY(-8px) rotate(45deg); }

@media screen and (min-width: 768px) {
#sp-btn { display: none; }
}

/* sp-close */
#sp-close { position: relative; z-index: 9999; padding: 20px 0; text-align: center; font-size: 16px; color: #fff; font-weight: bold; transition: none; background: #444; }
#sp-close i { display: inline-block; position: relative; width: 20px; height: 20px; margin-top: -4px; margin-right: 3px; vertical-align: middle; }
#sp-close i:before, #sp-close i:after { display: block; content: ""; position: absolute; top: 50%; left: 0; width: 15px; height: 3px; background: #fff; }
#sp-close i:before { margin-top: 0;transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }
#sp-close i:after { margin-top: 0;transform: rotate(-135deg); -webkit-transform: rotate(-135deg); }
@media screen and (min-width: 768px) {
#sp-close { display: none; }
}

/* sp-open */
.sp-open #pagetop, .sp-open #wrapper { opacity: 0.2; -webkit-filter: blur(1px); -ms-filter: blur(1px); filter: blur(1px); }

/*----------------------------------------------------*/
/* wrapper
/*----------------------------------------------------*/
#wrapper { position: relative; background: #fff; }
#main { overflow: hidden; }

@media screen and (min-width: 768px) {
#main { padding-top: 155px; }
}
@media screen and (min-width: 1024px) {
#wrapper { overflow: inherit; position: absolute; top: 0; left: 0; width: 100%; }
#main { overflow: hidden; margin-left: 258px; padding-top: 0; }
}

/*----------------------------------------------------*/
/* sidebar
/*----------------------------------------------------*/
#sidebar { display: none; }

@media screen and (min-width: 1024px) {
#sidebar { display: block; position: fixed; width: 258px; background: #fff; z-index: 999; height: 100vh; }
#sidebar .side { position: relative; width: 258px; background: #fff; top: 184px; }
#sidebar .ttl { padding: 23px 20px; font-size: 16px; }
#sidebar .nav01 li, #sidebar .nav02 li { position: relative; }
#sidebar .nav01 li:first-child:before, #sidebar .nav02 li:first-child:before { position: absolute; top: 0; left: 0; display: block; content: ""; width: 100%; height: 1px; background: #ccc; }
#sidebar .nav01 li:after, #sidebar .nav02 li:after { position: absolute; bottom: 0; left: 0; display: block; content: ""; width: 100%; height: 1px; background: #ccc; }
#sidebar .nav01 li:hover:after, #sidebar .nav02 li:hover:after { display: none; }

#sidebar .nav01 li a { position: relative; display: block; padding: 33px 18px; font-size: 15px; text-decoration: none; }
#sidebar .nav01 li a:after { position: absolute; top: 50%; right: 12px; margin-top: -12px; content: ""; width: 24px; height: 24px; }
#sidebar .nav01 li:nth-child(1) a:after { background: url(../img/ico-side01_off.png) no-repeat; }
#sidebar .nav01 li:nth-child(2) a:after { background: url(../img/ico-side02_off.png) no-repeat; }
#sidebar .nav01 li:nth-child(3) a:after { background: url(../img/ico-side03_off.png) no-repeat; }
#sidebar .nav01 li:nth-child(4) a:after { background: url(../img/ico-side04_off.png) no-repeat; }
#sidebar .nav01 li.current:nth-child(1) a:after, #sidebar .nav01 li:hover:nth-child(1) a:after { background: url(../img/ico-side01_on.png) no-repeat; }
#sidebar .nav01 li.current:nth-child(2) a:after, #sidebar .nav01 li:hover:nth-child(2) a:after { background: url(../img/ico-side02_on.png) no-repeat; }
#sidebar .nav01 li.current:nth-child(3) a:after, #sidebar .nav01 li:hover:nth-child(3) a:after { background: url(../img/ico-side03_on.png) no-repeat; }
#sidebar .nav01 li.current:nth-child(4) a:after, #sidebar .nav01 li:hover:nth-child(4) a:after { background: url(../img/ico-side04_on.png) no-repeat; }
#sidebar .nav01 li.current a, #sidebar .nav01 li:hover a,
#sidebar .nav02 li.current a, #sidebar .nav02 li:hover a { color: #fff; }
#sidebar .nav01 li.current, #sidebar .nav02 li.current { background: #222; }
#sidebar .nav01 li:hover, #sidebar .nav02 li:hover { background: #2673e7; }
#sidebar .nav02 li a { position: relative; display: block; padding: 18px 20px; font-size: 14px; text-decoration: none; background: url(../img/ico-arw01.png) no-repeat right 10px center; }
#sidebar .nav02 li a:hover { background: url(../img/ico-arw01_on.png) no-repeat right 10px center; }
#sidebar .sidemenu { overflow-y: auto; }
}


/*----------------------------------------------------*/
/* header
/*----------------------------------------------------*/
@media screen and (min-width: 1024px) {
  .siteLogo { position: fixed; left: 0; top: 0; z-index: 1000; width: 258px; }
  .siteLogo .logo a { display: block; height: 184px; padding: 28px 0 0; text-align: center; background: url(../img/logo-text01.png) no-repeat bottom 37px center; }
}
@media screen and (max-width: 1024px) {
  .siteLogo { position: fixed; left: 3%; top: 8px; z-index: 9999; }
  .siteLogo .logo a { display: block; height: 35px; }
  .siteLogo .logo a img { display: block; height: 100%; }
}
/*----------------------------------------------------*/
/* footer
/*----------------------------------------------------*/
#footer { clear: both; padding: 40px 15px 30px; background: #222;}
#footer .inner { color: #eee; }
#footer a { color: #eee; }
#footer dl + dl { margin-top: 30px; }
#footer dt { font-size: 17px; font-weight: 700; }
#footer dd { margin-top: 20px;}
#footer dd img { margin-right: 5px; vertical-align: middle; }
.foot-cat-sec { margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid #666; }
.foot-card-sec { margin-bottom: 10px; }
.foot-cat-sec li, .foot-card-sec li { margin-bottom: 15px; font-size: 14px; }
.foot-card-sec li { float: left; padding-right: 40px; }
.foot-menu-sec { clear: both; padding: 20px 0 0; border-top: 1px solid #666; }
.foot-menu-sec ul { text-align: center; }
.foot-menu-sec li { display: inline-block; margin-right: 15px; font-size: 11px; }
.foot-menu-sec .copy { padding-bottom: 15px; text-align: center; font-size: 11px; }

@media screen and (min-width: 768px) {
#footer { padding: 60px 0 40px 60px; }
#footer .inner { width: 900px; }
.foot-cat-sec { float: left; width: 250px;  padding-bottom: 30px; border-right: 1px solid #666; border-bottom: none; }
.foot-card-sec { float: left; width: 650px; margin-bottom: 20px; padding-bottom: 30px; }
.foot-card-sec dl { margin-left: 40px; }
.foot-card-sec li { min-width: 190px; padding-right: 30px; }
.foot-menu-sec { padding: 40px 0 0; }
.foot-menu-sec ul { text-align: right; }
.foot-menu-sec li { margin-right: 30px; font-size: 14px; }
.foot-menu-sec .copy { float: left; padding: 0; font-size: 14px; }
}

/*----------------------------------------------------*/
/* limit-bar
/*----------------------------------------------------*/
#limit-bar { display: none; }

@media screen and (min-width: 768px) {
#limit-bar { display: block; width: 100%; background: #222; }
#limit-bar .inner { overflow: hidden; display: table; width: 960px; padding: 15px 0; text-align: center; }
#limit-bar .tx { display: table-cell; width: 80%; padding-right: 30px; font-size: 24px; font-weight: bold; color: #fff; text-align: right; vertical-align: middle; }
#limit-bar .tx span { margin: 0 10px; font-size: 26px; font-weight: bold; color: #fff45a; }
#limit-bar .bn { display: table-cell; width: 20%; }
#limit-bar .bn a { display: block; width: 200px; padding: 12px 0; text-align: center; color: #fff; font-weight: 700; background: #e31713 url(../img/ico-arw03.png) no-repeat right 12px center; border-radius: 3px; }
#limit-bar .bn a:hover { background: #fff45a url(../img/ico-arw03.png) no-repeat right 12px center; color: #222; }
}

/*----------------------------------------------------*/
/* main-visual
/*----------------------------------------------------*/
#main-visual { width: 100%; background: url(../img/mv_bg.png) repeat-x left -370px top; }
#main-visual .ttl { font-size: 28px; font-weight: bold; line-height: 1.5; color: #fff; padding: 100px 5% 60px; }
@media screen and (min-width: 768px) {
#main-visual .inner { width: 1020px; }
#main-visual .ttl { font-size: 40px; padding: 70px 5%; }
}

/*----------------------------------------------------*/
/* card-flex-box
/*----------------------------------------------------*/
#card-flex-box { display: none; }

@media screen and (min-width: 768px) {
#card-flex-box { display: block; position: fixed; bottom: 0; left: 0; width: 100%; height: 0; background: #fff; box-shadow: 0 0 10px 10px rgba(0,0,0, 0.1); z-index: 999999; transition: .3s; }
#card-flex-box.ons { height: 100px; }
#card-flex-box.batu { height: 0!important;}
#card-flex-box > div { position: relative; height: 100%; padding-left: 260px; }
#card-flex-box h2 { position: absolute; top: 30px; left: 45px; }
#card-flex-box .close {  position: absolute; top: 25px; right: 20px; }
#card-flex-box div.view_slier { width: 900px; padding-top: 20px; }
#card-flex-box .item { float: left; width: 300px; padding-right: 15px; }
#card-flex-box .item span { line-height: 1.4; }
#card-flex-box .item img { float: left; width: 100px; margin-right: 10px; vertical-align: middle; }
}

/*----------------------------------------------------*/
/* pagetop
/*----------------------------------------------------*/
#pagetop { position: fixed; bottom: 0; right: -60px; width: 60px; height: 60px; background: #222 url(../img/ico-arw08.png) no-repeat center center; cursor: pointer; z-index: 999; transition: .2s; }
#pagetop.open { right: 0; }

@media screen and (min-width: 768px) {
#pagetop { bottom: 20px; right: -80px; width: 80px; height: 80px; }
#pagetop.open { right: 10px; }
#pagetop:hover { background: #2673e7 url(../img/ico-arw08.png) no-repeat center center; cursor: pointer; }
}


/*----------------------------------------------------*/
/* home
/*----------------------------------------------------*/

.robot, .home h2 span, .cont-ttl span, .cont-list-colum .ico, .sns-shear-btn li a, span.caption { font-family: 'Roboto Condensed', sans-serif; letter-spacing: 0.05em; }

.cont-ttl { font-size: 20px; line-height: 1.4; }
h3.cont-ttl { margin: 0 0 15px; }
.card-kiji-list + h3.cont-ttl { margin-top: 30px; }
.cont-ttl span { display: none; }

.cont-ttl.whi { color: #fff; }
.cont-txt.whi { margin: 15px 0 0; color: #fff; }

.sub-ttl { font-size: 18px; }
div + .sub-ttl { margin-top: 30px; }

@media screen and (min-width: 768px) {
.cont-ttl { font-size: 22px; }
h3.cont-ttl { margin: 0 0 30px; }
.card-kiji-list + h3.cont-ttl { margin-top: 60px; }
.cont-ttl span { display: inline-block; margin-left: 12px; padding-left: 12px; border-left: 1px solid #555; font-size: 18px; }
.cont-ttl.whi span { border-left: 1px solid #fff; color: #fff; }

.sub-ttl { font-size: 20px; }
div + .sub-ttl { margin-top: 50px; }
}

/* section block */
.cont-reco-sec,.cont-row-set { padding: 40px 15px; background: #f6f7ea; }
.cont-sea-sec { padding: 40px 15px; }
.cont-camp-sec { padding: 40px 15px; background: #df312d;}
.cont-colm-sec { padding: 40px 15px; background: #222;}
.page-main-cont { padding: 80px 0 30px; }
.page-path-sec { padding: 15px 15px 10px; background: #f6f7ea;}
.page-def-sec, .page-ttl-sec { padding: 30px 15px; }
.page-def-sec#spec { padding: 30px 0; }
.card-list-sec { background: #f6f7ea; }
.shindan-box { padding: 30px 15px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.page-ttl-sec.bdr { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.page-gray-sec { padding: 30px 15px; background: #f6f7ea; }
.page-black-sec { padding: 30px 15px; background: #444; }
.page-list-sec { padding: 30px 0; background: #f6f7ea;}
.card-detail-main { padding: 30px 0 0; background: #2673e7; }
.card-campaign-sec { padding: 30px 15px; background: #d04747; }

@media screen and (min-width: 768px) {
.cont-reco-sec { padding: 35px 0 40px 30px; }
.cont-sea-sec { padding: 50px 0 60px 30px; }
.cont-camp-sec { position: relative; padding: 60px 0 100px 20px; background: #df312d url(../img/mv_bg02.png) repeat left -370px top; }
.cont-camp-sec:after { display: inline-block; content: ""; position: absolute; top: -40px; left: 660px; width: 383px; height: 290px; background: url(../img/mv_ona02.png) no-repeat; }
.cont-colm-sec { padding: 60px 0 60px 20px; }
.cont-row-set { padding: 60px 0 60px 20px; }
.page-main-cont { padding: 60px 0 60px 40px; background: #f6f7ea;}
.page-path-sec { padding: 20px 0 20px 20px; }
.page-def-sec,.page-def-sec#spec, .page-ttl-sec { padding: 50px 0 50px 40px; }
.page-gray-sec { padding: 50px 0 50px 30px; }
.page-black-sec { padding: 50px 0 50px 40px; }
.card-list-sec { padding: 40px 0 80px 40px; }
.search-result { padding: 20px 0 20px 30px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.shindan-box { padding: 50px 0 50px 40px; }
.page-list-sec { padding: 0 0 30px 40px; }
.card-detail-main { padding: 50px 0 50px 40px; }
.card-campaign-sec { padding: 50px 0 50px 40px; }
}
@media screen and (min-width: 1024px) {
.cont-reco-sec { padding: 60px 0 40px 60px; }
.cont-sea-sec { padding: 50px 0 60px 60px; }
.cont-camp-sec { padding: 60px 0 100px 60px; }
.cont-colm-sec { padding: 60px 0 60px 60px; }
.cont-row-set, .page-main-cont { padding: 60px 0 60px 60px; }
.page-path-sec { padding: 20px 0 20px 60px; }
.page-def-sec,.page-def-sec#spec, .page-ttl-sec { padding: 50px 0 50px 60px; }
.page-gray-sec { padding: 50px 0 50px 60px; }
.page-black-sec { padding: 50px 0 50px 60px; }
.card-list-sec { padding: 40px 0 80px 60px; }
.search-result { padding: 20px 0 20px 60px; }
.shindan-box { padding: 50px 0 50px 60px; }
.page-list-sec { padding: 0 0 30px 60px; }
.card-detail-main { padding: 30px 0 50px 60px; }
.card-campaign-sec { padding: 50px 0 50px 60px; }
}

.cont-reco-sec .inner,
.cont-camp-sec .inner,
.cont-colm-sec .inner,
.cont-row-set .inner,
.page-path-sec .inner,
.page-ttl-sec .inner,
.page-gray-sec .inner { position: relative; }
.card-campaign-sec .inner { padding: 15px; background: #fff; }
.card-list-sec .inner, .search-result .inner, .shindan-box .inner,
.card-detail-main .inner,.page-black-sec .inner,.page-list-sec .inner { position: relative; }
@media screen and (min-width: 768px) {
.cont-reco-sec .inner,
.cont-colm-sec .inner,
.cont-row-set .inner,
.page-path-sec .inner,
.page-ttl-sec .inner,
.page-gray-sec .inner { width: 960px; }
.cont-camp-sec .inner { width: 940px; z-index: 2; }
.page-main-cont .inner,.card-campaign-sec .inner { width: 900px; padding: 60px; background: #fff; }
.card-list-sec .inner, .search-result .inner, .shindan-box .inner,
.card-detail-main .inner,.page-black-sec .inner,.page-list-sec .inner { width: 900px; }
}
@media screen and (min-width: 1024px) {
.cont-camp-sec .inner { width: 960px; }
}

/* card-list-box */
.card-list-box { margin-top: 30px; }
.card-list-box .cell .bx { position: relative; margin: 20px 0 15px; padding: 10px 0 1px; background: #fff; }
.card-list-box .cell .bx + .bx { margin: 90px 0 15px; }
#campaign .card-list-box .cell .bx, #relation .card-list-box .cell .bx { margin: 0 0 15px !important; }

.card-list-box .ball { position: absolute; top: -70px; left: 15px; width: 282px; height: 105px; z-index: 999; }
.card-list-box .card { padding: 3px; text-align: center !important; }
.card-list-box .txt { margin: 10px 20px 20px; }
.card-list-box .tbl { margin: 0 3px 10px; }
.card-list-box .tbl table { width: 100%; border-bottom: 1px solid #ccc; text-align: center; }
.card-list-box .tbl tr { border-top: 1px solid #ccc; }
.card-list-box .tbl th { width: 110px; padding: 12px 0; background: #f3f3f3; }
.card-list-box .tbl td { padding: 12px 0; }

.card-list-box .term { margin: 0 20px 15px; font-size: 12px; text-align: center; }
.card-list-box .btn { margin: 0 3px 3px; }
.card-list-box .btn a { display: block; padding: 18px 0; text-align: center; color: #fff; font-weight: 700; background: #222 url(../img/ico-arw03.png) no-repeat right 12px center; }
.card-list-box .c01 .btn a { background: #e31713 url(../img/ico-arw03.png) no-repeat right 12px center; }
.card-list-box .c02 .btn a { background: #2673e7 url(../img/ico-arw03.png) no-repeat right 12px center; }
.card-list-box .c03 .btn a { background: #30bd3e url(../img/ico-arw03.png) no-repeat right 12px center; }

@media screen and (min-width: 768px) {
#campaign .card-list-box { margin-top: 60px; }
.card-list-box .cell { margin: 0 -10px -25px 0; }
.card-list-box .cell .bx { float: left; width: 300px; margin: 0 10px 25px 0 !important; padding: 0; box-shadow: 0 0 6px 6px rgba(0,0,0, 0.05); }
#campaign .card-list-box .cell .bx, #relation .card-list-box .cell .bx { margin: 0 10px 25px 0 !important; }

#recommend .card-list-box .bx:nth-child(3n) { margin-right: 0; }
/*.card-list-box .ball { top: -100px; right: 10px; }*/
.card-list-box .card { margin-top: 10px; }
.card-list-box .name { margin: 25px 25px 0; }
.card-list-box .txt { margin: 10px 25px 25px; }
.card-list-box .term { margin: 0 25px 15px; }
.card-list-box .btn a:hover { background: #fff45a url(../img/ico-arw03.png) no-repeat right 12px center !important; color: #222; }
}

/* card-search-tbl */
.card-search-tbl { margin-top: 15px; }
.cont-sea-sec .card-search-tbl { margin-top: 30px; }
.card-search-tbl table { width: 100%; text-align: left; border-top: 2px solid #ccc; }
.card-search-tbl tr { border-bottom: 2px solid #ccc; }
.card-search-tbl th { display: block; padding: 15px 15px 0; color: #007993; font-size: 16px; vertical-align: middle; }
.cont-sea-sec .card-search-tbl th { padding: 15px 0 0; }
.card-search-tbl td { display: block; padding: 15px 15px 10px; vertical-align: middle; }
.cont-sea-sec .card-search-tbl td { padding: 15px 0 10px; }

@media screen and (min-width: 768px) {
.card-search-tbl { width: 920px; margin-top: 0; }
.card-search-tbl table { border-top: none; }
.card-search-tbl tr:focus { border-bottom: 2px solid #555; }
.card-search-tbl th { display: table-cell; width: 150px; padding: 25px 15px; }
.card-search-tbl td { display: table-cell; padding: 20px 0 10px; }
}
@media screen and (min-width: 1024px) {
.card-search-tbl { width: 900px; }
}

/* page-tbl-box */
.page-tbl-box { width: 100%; }
.page-tbl-box + .page-tbl-box { margin-top: 20px; }
.page-tbl-box caption { padding-bottom: 20px; font-size: 16px; font-weight: 700; color: #2673e7; }
.page-tbl-box table { width: 100%; text-align: left; border-top: 1px solid #ccc; }
.page-tbl-box tr { border-bottom: 1px solid #ccc; }
.page-tbl-box tr:focus { border-bottom: 1px solid #555; }
.page-tbl-box th { padding: 15px 10px; color: #2673e7; font-size: 12px; vertical-align: middle; background: #f7f7f7; }
.page-tbl-box td { padding: 15px 10px; vertical-align: middle; font-size: 12px; }

@media screen and (min-width: 768px) {
.page-tbl-box { width: 900px; }
.page-tbl-box + .page-tbl-box { margin-top: 40px; }
.page-tbl-box caption { padding-bottom: 30px; font-size: 22px; }
.page-tbl-box table { border-top: 2px solid #ccc; }
.page-tbl-box tr { border-bottom: 2px solid #ccc; }
.page-tbl-box tr:focus { border-bottom: 2px solid #555; }
.page-tbl-box th { width: 170px; padding: 20px 15px; font-size: 14px; }
.page-tbl-box td { padding: 20px 15px; font-size: 14px; }
}

/* form */
.form input[type=text],.form textarea { display: inline-block; width: 60%; height: 40px; padding: 12px; border: none; background: #eee; font-size: 14px; }
.form .ken input[type=text] { width: 100%; margin: 0 0 10px; background: #eee url(../img/ico-sea02.png) no-repeat right 10px center; }
.form input[type=text].def { width: 100%; margin: 0; }
.form textarea { width: 100%; height: 150px; margin: 0; }
.form ul { display: inline-block; }
.form li { display: inline-block; margin-bottom: 10px; }
.form li img { margin-right: 6px; vertical-align: middle; }

.form input[type=radio], .form input[type=checkbox] { display: inline-block; margin-right: 6px; }
.form input[type=radio] + span, .form input[type=checkbox] + span { position: relative; display: inline-block; margin-right: 12px; font-size: 14px; line-height: 30px; cursor: pointer; }
.form input[type=radio], .form input[type=checkbox] { display: none; margin: 0; }
.form input[type=radio] + span, .form input[type=checkbox] + span { padding: 0 0 0 24px; }
.form input[type=radio] + span::before, .form input[type=checkbox] + span::before { content: ""; position: absolute; top: 50%; left: 0; -moz-box-sizing: border-box; box-sizing: border-box; display: block; width: 18px; height: 18px; margin-top: -9px; background: #FFF; }
.form input[type=radio] + span::before { border: 2px solid #ccc; border-radius: 30px; }
.form input[type=checkbox] + span::before { border: 2px solid #ccc; }
.form input[type=radio]:checked + span::after, .form input[type=checkbox]:checked + span::after { content: ""; position: absolute; top: 50%; -moz-box-sizing: border-box; box-sizing: border-box; display: block; }
.form input[type=radio]:checked + span::after { left: 5px; width: 8px; height: 8px; margin-top: -4px; background: #555; border-radius: 8px; }
.form input[type=checkbox]:checked + span::after { left: 3px; width: 16px; height: 8px; margin-top: -8px; border-left: 3px solid #555; border-bottom: 3px solid #555; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

@media screen and (min-width: 768px) {
.form input[type=text],.form textarea { width: 80px; margin: 0 8px 10px; }
.form .ken input[type=text] { width: 500px; }
.form input[type=text].def { width: 500px; }
.form textarea { width: 600px; }
.form li { min-width: 170px; padding-right: 20px; }
.form li.w { min-width: 280px; }
.form .rdo li { min-width: 100px; }
}

/* search-button */
.search-button { margin-top: 35px; text-align: center; }
#mouth .search-button { margin: 15px 15px 0; }
.search-button input[type=submit] { width: 100%; margin: 0 auto; padding: 13px 0; background: #007993 url(../img/ico-arw02.png) no-repeat right 12px center; border: none; color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; }

@media screen and (min-width: 768px) {
.search-button, #mouth .search-button { margin: 25px 0 0; }
.search-button input[type=submit] { width: 300px; }
.search-button input[type=submit]:hover { background: #e8b941 url(../img/ico-arw02.png) no-repeat right 12px center; }
}

/* cont-list-colum */
.cont-list-colum { position: relative; width: 100%; padding: 30px 15px; background: #fff; }
.cont-list-colum .ttl { font-size: 24px; font-weight: 700; line-height: 1.2; }
.cont-list-colum .ico { position: relative; margin-bottom: 30px; padding: 25px 0 25px 30px; }
.cont-list-colum .ico:after { position: absolute; bottom: 0; left: 5px; display: inline-block; content: ""; width: 30px; height: 1px; background: #999; }
.cont-list-colum .txt { margin: 0 0 30px; font-size: 15px; font-weight: 500; }
.cont-list-colum .btn { margin-top: 30px; }
.cont-list-colum .btn a { display: block; width: 100%; padding: 20px 0; font-size: 14px; color: #fff; font-weight: 500; text-align: center; }
.cont-list-colum .btn a:after { display: inline-block; content: ""; width: 13px; height: 13px; margin-left: 8px; background: url(../img/ico-arw05.png) no-repeat; }

@media screen and (min-width: 768px) {
.cont-list-colum { float: left; width: 455px; padding: 60px 35px 30px; }
.cont-list-colum:first-child { margin-right: 30px; }
.cont-list-colum .ttl { font-size: 30px; }
.cont-list-colum .txt { font-size: 16px; }
.cont-list-colum .btn { position: absolute; width: 390px; bottom: 40px; margin-top: 0; }
.cont-list-colum .btn a { font-size: 15px; }
.cont-list-colum .btn a:hover { background: #e8b941 !important; }
}
@media screen and (min-width: 1024px) {
.cont-list-colum { width: 465px; }
}

#credit-ranking { border-top: 4px solid #9e8e57; }
#choose-credit { margin-top: 30px; border-top: 4px solid #b4586f; }
#popular-column { border-top: 4px solid #2673e7; }
#new-column { margin-top: 30px; border-top: 4px solid #31a83d; }

#credit-ranking .ico { background: url(../img/ico-clm01.png) no-repeat left; }
#choose-credit .ico { background: url(../img/ico-clm02.png) no-repeat left; }
#popular-column .ico { background: url(../img/ico-clm03.png) no-repeat left; }
#new-column .ico { background: url(../img/ico-clm04.png) no-repeat left; }

#credit-ranking .txt { color: #9e8e57; }
#choose-credit .txt { color: #b4586f; }
#credit-ranking .btn a { background: #9e8e57; }
#choose-credit .btn a { background: #b4586f; }

@media screen and (min-width: 768px) {
#credit-ranking { padding-bottom: 100px; border-top: none; border-left: 4px solid #9e8e57; }
#choose-credit { margin-top: 0; padding-bottom: 100px; border-top: none; border-left: 4px solid #b4586f; }
#popular-column { border-top: none; border-left: 4px solid #2673e7; }
#new-column { margin-top: 0; border-top: none; border-left: 4px solid #31a83d; }
}

/* cat-list-box */
.cat-list-box { position: relative; margin-top: 30px; }
.cat-list-box .ttl { margin-bottom: 20px; font-size: 18px; font-weight: 700; line-height: 1.2; color: #fff; }
.cat-list-box .ttl a { color: #fff; }
.cat-list-box .btn { margin-top: 20px; text-align: right; }
.cat-list-box .btn a { padding-left: 24px; background: url(../img/ico-arw04.png) no-repeat left center; font-size: 14px; color: #fff; font-weight: 500; }

@media screen and (min-width: 768px) {
.cat-list-box { float: left; width: 455px; margin-top: 50px; }
.cat-list-box:nth-child(2n) { margin-left: 30px; }
.cat-list-box .ttl { font-size: 20px; }
}
@media screen and (min-width: 1024px) {
.cat-list-box { width: 465px; }
}

/* cont-list-type */
.cont-list-type01 li { margin-bottom: 10px; line-height: 1.5; }
.cont-list-type01 li a { padding-left: 20px; background: url(../img/ico-arw04.png) no-repeat left center; font-weight: 500; }
.cont-list-type02 li { margin-bottom: 16px; }
.cont-list-type02 li img { float: left; width: 80px; margin-right: 15px; margin-top: 5px; }
.cont-list-type02 li a { font-weight: 500; line-height: 1.2; }
.cont-list-type03 li { position: relative; min-height: 70px; margin-bottom: 10px; padding: 10px 10px 0 105px; background: #fff; }
.cont-list-type03 li img { position: absolute; top: 0; left: 0; max-width: 90px; max-height: 70px; }
.cont-list-type03 li a { font-weight: 500; line-height: 1.2; }
.cont-list-type02 div, .cont-list-type03 div { margin-top: 5px; }
.cont-list-type03 div { display: none; }

@media screen and (min-width: 768px) {
.cont-list-type01 li { margin-bottom: 30px; line-height: 1.6; }
.cont-list-type02 li img { margin-top: 0; }
.cont-list-type02 li a { line-height: 1.4; }
.cont-list-type03 li { min-height: 110px; padding: 20px 20px 0 160px; }
.cont-list-type03 li img { max-width: 142px; max-height: 110px; }
.cont-list-type03 li a { line-height: 1.4; }
.cont-list-type02 div, .cont-list-type03 div { display: block; margin-top: 5px; }
}

/* status */
.status { margin: 0 15px; }
span.tag { margin-right: 15px; padding-left: 20px; font-size: 11px; background: url(../img/ico-tag.png) no-repeat left center; }
span.date { padding-left: 20px; font-size: 11px; background: url(../img/ico-date.png) no-repeat left center; }
span.view { margin-left: 10px; padding-left: 20px; font-size: 11px; background: url(../img/ico-view.png) no-repeat left center; }
.status span.tag, .status span.date, .status span.view { font-size: 12px; }
.status span.tag { display: none; }

@media screen and (min-width: 768px) {
.status { margin: 0; }
span.tag, span.date, span.view { font-size: 12px; }
.status span.tag, .status span.date, .status span.view { font-size: 14px; }
.status span.tag { display: inline-block; }
}

/* cont-camp-btn */
.cont-camp-btn a { display: block; padding: 17px 0; border: 3px solid #fff; color: #fff; text-align: center; background: url(../img/ico-arw05.png) no-repeat right 30px center; }

@media screen and (min-width: 768px) {
.cont-camp-btn { position: absolute; top: 0; right: 0; }
.cont-camp-btn a { width: 260px; }
.cont-camp-btn a:hover { background: rgba(255,255,255, 0.3) url(../img/ico-arw05.png) no-repeat right 30px center; }
}

/* page-path */
.page-main-cont .page-path { margin: 0 15px 15px; }
.page-path li { float: left; font-size: 11px; line-height: 1.4; }
.page-path li:before { display: inline-block; content: ""; width: 11px; height: 11px; margin-left: 6px; padding-left: 6px; background: url(../img/ico-arw09.png) no-repeat; }
.page-path li:first-child:before { display: none; }
.page-path li img { vertical-align: baseline; }

@media screen and (min-width: 768px) {
.page-main-cont .page-path { margin: 0 0 15px; }
.page-path li { font-size: 13px; }
.page-path li:before { margin-left: 8px; padding-left: 8px; }
}

/* sns-shear-btn */
.sns-shear-btn { margin: 20px 15px 20px; }
.sns-shear-btn ul { display: flex; width: 100%; }
.sns-shear-btn li { width: 25%; }
.sns-shear-btn li a { display: block; height: 40px; padding: 10px 0; text-align: center; }
.sns-shear-btn li img { vertical-align: middle; }
.sns-shear-btn li span { display: none; }
.sns-shear-btn li:nth-child(1) a { background: #33addc; }
.sns-shear-btn li:nth-child(2) a { background: #3d5184; }
.sns-shear-btn li:nth-child(3) a { background: #2785cb; }
.sns-shear-btn li:nth-child(4) a { background: #CC3732; }

@media screen and (min-width: 768px) {
.sns-shear-btn { margin: 40px 0 20px; }
.sns-shear-btn li a { height: 50px; padding: 15px 0; color: #fff; font-size: 14px; }
.sns-shear-btn li img { margin-right: 5px; }
.sns-shear-btn li span { display: inline-block; }
}


/* article */
article { font-size: 14px; color: #333; line-height: 1.2; }
article > h1 { clear: both; margin: 0 15px 15px; font-size: 24px; font-weight: 700; color: #222; }
article > h2 { clear: both; margin: 40px 0 0; padding: 15px; font-size: 18px; font-weight: 700; line-height: 1.2; color: #fff; background: #2673e7; }
article > h3 { clear: both; margin: 30px 0 0; padding: 15px; font-size: 16px; font-weight: 700; color: #222; background: #f7f7f7; border-left: 4px solid #2673e7; }
article > h4 { clear: both; margin: 20px 10px 0; padding: 0 10px 10px; font-size: 16px; font-weight: 500; color: #2673e7; border-bottom: 2px solid #2673e7; }
article > h5 { clear: both; margin: 20px 10px 0; padding: 0 10px 10px; font-size: 16px; font-weight: 500; color: #222; border-bottom: 1px dotted #030000; }

article > .relation { background: #FBF7EC; padding: 1em 1.5em; position: relative;  margin: 40px 15px 0; border: 1px solid #999; box-shadow: 3px 3px 3px #ccc;}
article > .relation img { margin-bottom: 0 !important; float: left!important; width: 30%!important; padding-right: 1em!important;}
article > .relation span.ttl { content: ""; display: inline-block; position: absolute; top: -13px; left: 1.5em; padding: 0.2em 1em; background: #007993; color: #FFF; border-radius: 10px; font-size: 14px;}
article > .relation span.ttl:after {  content: ""; display: block; width: 0; height: 0; position: absolute; top: 2.2em; left: 20px; margin-top: -10px; border: 5px solid transparent; border-top: 5px solid #007993;}
article > .relation:after { content:""; display: block; clear:both;}
/*article > .link:before { content: ""; display: block; width: 0; height: 0; position: absolute; top: 50%; left: -20px; margin-top: -10px; border: 10px solid transparent; border-right: 10px solid #FFF;}*/

@media screen and (min-width: 768px) {
article { font-size: 16px; line-height: 1.4; }
article > h1 { margin: 0 0 15px; font-size: 34px; }
article > h2 { width: 900px; margin: 60px 0 0 -60px; padding: 25px 60px; font-size: 28px; line-height: 1.4; }
article > h3 { margin: 40px 0 0; padding: 15px 20px 20px; font-size: 20px; }
article > h4 { margin: 40px 0 0; padding: 0 0 20px; font-size: 18px; }
article > h5 { margin: 30px 0 0; padding: 0 0 10px; }
article > .relation span.ttl { top: -20px;}
article > .relation span.ttl:after { top: 2.5em;}
article > .relation img { width: 132px!important;  padding-right: 0!important;}
article > .relation a { font-size: 1.1em}

}

article > p { margin: 15px 15px 0; line-height: 1.5; }
article > div > p { margin: 15px 0 0; text-align: left !important; }
@media screen and (min-width: 768px) {
article > p, article > div > p { margin: 30px 0 0; line-height: 1.6; }
article > h4 + p, article > h5 + p { margin: 20px 0 0; }
}

article > blockquote { margin: 20px 15px 0; padding: 20px; background: #eaf2f8 url(../img/ico-quote.png) no-repeat top right 10px; }
@media screen and (min-width: 768px) {
article > blockquote { margin: 40px 0 0; padding: 40px; background: #eaf2f8 url(../img/ico-quote.png) no-repeat top right 20px; }
}

article > table caption { padding-bottom: 10px; font-size: 14px; font-weight: 700; color: #2673e7; }
article > table { width: 100%; margin: 20px 0 0; text-align: left; border-top: 1px solid #ccc; }
article > table tr { border-bottom: 1px solid #ccc; }
article > table th { padding: 15px 10px; font-size: 12px; vertical-align: middle; background: #f6f7ea; }
article > table td { padding: 15px 10px; vertical-align: middle; font-size: 12px; text-align: center; }

@media screen and (min-width: 768px) {
article > table caption { padding-bottom: 20px; font-size: 18px; }
article > table { margin-top: 40px; border-top: 2px solid #ccc; }
article > table tr { border-bottom: 2px solid #ccc; }
article > table th { width: 150px; padding: 20px 15px; font-size: 14px; }
article > table td { padding: 20px 15px; font-size: 14px; }
}

article > ul,article > ol { margin: 20px 15px 0; }
article > ul li { margin-bottom: 2px; padding: 15px 15px 15px 45px; line-height: 1.2; font-size: 14px; background: #eaf2f8 url(../img/ico-arw12.png) no-repeat left 15px center; }
article > ol li { margin-bottom: 2px; padding: 15px; line-height: 1.2; font-size: 14px; list-style: decimal-leading-zero; list-style-position: inside; background: #eaf2f8; }
article > ul li span,article > ol li span { color: #2673e7; }
@media screen and (min-width: 768px) {
article > ul,article > ol { margin: 20px 0 0; }
article > ul li { padding: 20px 20px 20px 60px; font-size: 16px; background: #edf4ff url(../img/ico-arw12.png) no-repeat left 20px center; }
article > ol li { padding: 20px; font-size: 16px; }
}


/* img */
article img.alignright,
article img.alignleft { display: block; margin: 15px auto; text-align: center; }
@media screen and (min-width: 768px) {
article img.alignright { float: right; margin: 0 0 30px 30px; }
article img.alignleft { float: left; margin: 0 30px 30px 0; }
}


/* img */
.img-r, .img-l { margin: 15px; text-align: center; }
.img-r img, .img-l img { margin: 0 auto; }
@media screen and (min-width: 768px) {
.img-r, .img-l { margin: 0; text-align: left; }
.img-r img { float: right; margin: 30px 0 0 30px; }
.img-l img { float: left; margin: 30px 30px 0 0; }
}


/* card-list-pager */
.card-list-pager { padding: 15px; }
.card-list-pager li { display: inline; text-align: center; }
.card-list-pager li span,.card-list-pager li a { display: inline-block; min-width: 30px; height: 30px; padding: 5px 5px 0; background: #333; text-decoration: none; font-size: 16px; color: #fff; }
.card-list-pager li span,.card-list-pager li a:hover { background: #0066ff; color: #fff; text-decoration: underline; }
.card-list-pager .output { display: none; }

@media screen and (min-width: 768px) {
.card-list-pager { overflow: hidden; padding: 0; }
.card-list-pager ul { float: left; width: 50%; }
.card-list-pager ul.last { float: right; text-align: right; }
.card-list-pager li span,.card-list-pager li a { min-width: 35px; height: 35px; padding: 7px 7px 0; }
.card-list-pager .output { display: block; float: right; width: 50%; padding-top: 10px; text-align: right; font-size: 18px; }
.card-list-pager .output span { margin: 0 6px; font-size: 20px; font-weight: 700; color: #0066ff; }
}

/* card-detail-tab */
.card-detail-tab ul { display: flex; width: 100%; }
.card-detail-tab li { width: 100%; background: #eee; border-right: 1px solid #ccc; }
.card-detail-tab li:last-child { border-right: none; }
.card-detail-tab li a { display: block; padding: 20px 15px 20px 0; text-align: center; color: #333; font-size: 12px; text-decoration: none; background: url(../img/ico-pull.png) no-repeat right 10px center; background-size: 13px; }
.card-detail-tab li a span { display: none; }

@media screen and (min-width: 768px) {
.card-detail-tab li { border-right: 2px solid #ccc; }
.card-detail-tab li:hover { background: #444; }
.card-detail-tab li a { padding: 25px 0 20px; font-size: 16px; background: url(../img/ico-pull.png) no-repeat right 20px center; background-size: 18px; }
.card-detail-tab li a:hover { color: #fff; background: url(../img/ico-pull_on.png) no-repeat right 20px center; }
.card-detail-tab li a:before { display: inline-block; content: ""; width: 24px; height: 24px; margin-right: 8px; background-size: contain; vertical-align: middle; }
.card-detail-tab li:nth-child(1) a:before { background: url(../img/ico-btn01.png) no-repeat; }
.card-detail-tab li:nth-child(2) a:before { background: url(../img/ico-btn02.png) no-repeat; }
.card-detail-tab li:nth-child(3) a:before { background: url(../img/ico-btn03.png) no-repeat; }
.card-detail-tab li:nth-child(1) a:hover:before { background: url(../img/ico-btn01_on.png) no-repeat; }
.card-detail-tab li:nth-child(2) a:hover:before { background: url(../img/ico-btn02_on.png) no-repeat; }
.card-detail-tab li:nth-child(3) a:hover:before { background: url(../img/ico-btn03_on.png) no-repeat; }
.card-detail-tab li a span { display: inline; }
}

/* card-detail-cont */
.card-detail-cont { margin-top: 35px; background: #fff; box-shadow: 0 0 6px 6px rgba(0,0,0, 0.05); }
.card-detail-cont p { margin-top: 15px; font-size: 14px; line-height: 1.4; }
.card-detail-inner { padding: 30px 15px 40px; }
.card-detail-wrap { overflow: hidden; margin-bottom: 20px; }

@media screen and (min-width: 768px) {
.card-detail-cont p { margin-top: 30px; font-size: 16px; }
.card-detail-inner { padding: 40px 60px 60px; }
.card-detail-wrap { margin-bottom: 40px; }
}


/* cate-cards-list */
h2 + .cate-cards-list { margin-top: 30px; }
.cate-cards-list > ul > li { position: relative; margin-bottom: 15px; padding: 30px 15px; background: #fff; box-shadow: 0 0 6px 6px rgba(0,0,0, 0.05); }

article .cate-cards-list > ul > li { margin-bottom: 0; padding: 20px 15px 40px; box-shadow: none; border-bottom: 1px solid #ccc; }
article .cate-cards-list > ul > li:first-child { padding-top: 0; }
article .cate-cards-list > ul > li:last-child { padding-bottom: 0; border-bottom: none; }

@media screen and (min-width: 768px) {
.cate-cards-list { margin-top: 20px; }
article .cate-cards-list { width: 900px; margin-top: 0; margin-left: -60px; }
h2 + .cate-cards-list { margin-top: 50px; }
.cate-cards-list > ul > li { margin-bottom: 30px; padding: 50px 60px; }

article .cate-cards-list > ul > li { padding: 30px 60px 40px; }
}

.cate-rank01:before,.cate-rank02:before,.cate-rank03:before,
.cate-rank01:after,.cate-rank02:after,.cate-rank03:after { position: absolute; top: 0; right: 0; }
.cate-rank01:before,.cate-rank02:before,.cate-rank03:before { content: ""; width: 0; height: 0; border: 40px solid transparent; }
.cate-rank01:after,.cate-rank02:after,.cate-rank03:after { top: 12px; right: 8px; font-size: 22px; font-weight: 500; color: #fff; }
@media screen and (min-width: 768px) {
.cate-rank01:before,.cate-rank02:before,.cate-rank03:before { border: 70px solid transparent; }
.cate-rank01:after,.cate-rank02:after,.cate-rank03:after { top: 20px; right: 16px; font-size: 32px; }
}

.cate-rank01:before { border-top: 40px solid #efc456; border-right: 40px solid #efc456; }
.cate-rank02:before { border-top: 40px solid #bebebe; border-right: 40px solid #bebebe; }
.cate-rank03:before { border-top: 40px solid #a89670; border-right: 40px solid #a89670; }
@media screen and (min-width: 768px) {
.cate-rank01:before { border-top: 70px solid #efc456; border-right: 70px solid #efc456; }
.cate-rank02:before { border-top: 70px solid #bebebe; border-right: 70px solid #bebebe; }
.cate-rank03:before { border-top: 70px solid #a89670; border-right: 70px solid #a89670; }
}

.cate-rank01:after { content: "1位"; }
.cate-rank02:after { content: "2位"; }
.cate-rank03:after { content: "3位"; }

.cate-card-ttl { margin-bottom: 15px; font-size: 24px; font-weight: 700; line-height: 1.2; }
@media screen and (min-width: 768px) {
.cate-card-ttl { margin-bottom: 30px; font-size: 32px; }
}

.cate-card-left { text-align: center; }
.cate-card-left .brand-ttl { margin: 20px 0 10px; padding: 5px 0; border-radius: 15px; background: #eee; }
.cate-card-left .brand-list li { display: inline; margin: 0 3px; }
@media screen and (min-width: 768px) {
.cate-card-left { float: left; width: 300px; }
.cate-card-left.pp { float: left; width: 240px; }
}

.cate-card-right { margin-top: 15px; }
.cate-card-right .card-tag { margin: 0 -10px -10px 0; }
.cate-card-right .card-tag li { float: left; display: inline-block; margin: 0 10px 10px 0; padding: 10px 10px; background: #ebebeb; color: #aaa; text-align: center; font-size: 12px; font-weight: 700; }
.cate-card-right .card-tag li.on { background: #49baa0; color: #fff; }
@media screen and (min-width: 768px) {
.cate-card-right { float: right; width: 430px; margin-top: 0; }
.cate-card-right .card-tag li { width: 100px; height: 50px; padding: 20px 0 0; }
}

.cate-card-right .card-spec { width: 100%; margin-top: 15px; border-top: 2px solid #bbb; font-size: 12px; }
.cate-card-right .card-spec tr { border-bottom: 2px solid #bbb; }
.cate-card-right .card-spec th { padding: 15px 5px; background: #f6f7ea; font-weight: 500; }
.cate-card-right .card-spec td { min-width: 80px; padding: 15px 0; text-align: center; }

@media screen and (min-width: 768px) {
.cate-card-right .card-spec { margin-top: 20px; font-size: 14px; }
.cate-card-right .card-spec th { width: 100px; padding: 20px 10px; }
.cate-card-right .card-spec td { min-width: 120px; padding: 20px 0; }
}

.cate-card-txt { clear: both; padding: 15px 0; font-size: 14px; line-height: 1.4; }
@media screen and (min-width: 768px) {
.cate-card-txt { padding: 25px 0; font-size: 16px; }
}

.cate-card-btn { clear: both; }
.cate-card-btn div + div { margin-top: 15px !important; }
@media screen and (min-width: 768px) {
.cate-card-btn { clear: both; display: flex; }
.cate-card-btn > div { width: 370px; }
.cate-card-btn div + div { margin-left: 40px !important; margin-top: 0 !important; }
}

/* card-kiji-list */
.card-kiji-list li { position: relative; min-height: 77px; margin-bottom: 15px; padding: 10px 10px 0 110px; background: #fff; box-shadow: 0 0 6px 6px rgba(0,0,0, 0.05); line-height: 1.2; }
.card-kiji-list li img { position: absolute; top: 0; left: 0; max-width: 100px; min-height: 77px; height: 100%; object-fit: cover; object-position: center; }
.card-kiji-list li a { font-weight: 500; line-height: 1.2; font-size: 14px; }
.card-kiji-list div, .card-kiji-list p { display: none; }

@media screen and (min-width: 768px) {
.card-kiji-list { margin-top: 20px; }
.card-kiji-list li { min-height: 217px; margin-bottom: 20px; padding: 30px 30px 0 320px; }
.card-kiji-list li img { max-width: 280px; max-height: 217px; }
.card-kiji-list li a { font-size: 26px; }
.card-kiji-list div, .card-kiji-list p { display: block; margin-top: 10px; }
.card-kiji-list div span { font-size: 12px; }
}

/* search-result */
.search-result .txt { font-size: 14px; }
.search-result .change { margin: 15px 10px 30px; text-align: right; }
@media screen and (min-width: 768px) {
.search-result .txt { font-size: 16px; }
.search-result .change { margin: 20px 0 0; }
}

/* shindan-box */
.shindan-box h3 { margin-bottom: 15px; font-size: 20px; font-weight: 700; }
.shindan-box p { margin-bottom: 15px; font-size: 14px; line-height: 1.6; }
@media screen and (min-width: 768px) {
.shindan-box h3 { margin-bottom: 30px; font-size: 30px; }
.shindan-box p { margin-bottom: 30px; font-size: 16px; }
}

/* hum-list-box */
.hum-list-box { margin-top: 30px; }
.hum-list-box li { margin-top: 2px; padding: 10px 15px; font-size: 14px; font-weight: 500; }
.hum-list-box li.hum01 { background: #e0f1f7; }
.hum-list-box li.hum02 { background: #e6f2fb; }
.hum-list-box li.hum03 { background: #f2eef6; }
.hum-list-box li.hum04 { background: #f4f4f4; }
.hum-list-box li.hum05 { background: #e9eef3; }
.hum-list-box li.hum06 { background: #f0f3e8; }
.hum-list-box li i { display: inline-block; content: ""; width: 25px; height: 25px; margin-right: 6px; vertical-align: middle;}
.hum-list-box li.hum01 i { background: url(../img/ico-hum01.png) no-repeat; background-size: contain; }
.hum-list-box li.hum02 i { background: url(../img/ico-hum02.png) no-repeat; background-size: contain; }
.hum-list-box li.hum03 i { background: url(../img/ico-hum03.png) no-repeat; background-size: contain; }
.hum-list-box li.hum04 i { background: url(../img/ico-hum04.png) no-repeat; background-size: contain; }
.hum-list-box li.hum05 i { background: url(../img/ico-hum05.png) no-repeat; background-size: contain; }
.hum-list-box li.hum06 i { background: url(../img/ico-hum06.png) no-repeat; background-size: contain; }

@media screen and (min-width: 768px) {
.hum-list-box { margin-top: 60px; }
.hum-list-box li { margin-top: 2px; padding: 10px 30px; font-size: 20px; font-weight: 500; }
.hum-list-box li i { width: 50px; height: 50px; margin-right: 8px; }
}

/* campaign-bx */
.campaign-bx { margin-bottom: 30px; }
.campaign-bx .title { margin: 15px 0; padding-left: 30px; font-size: 20px; font-weight: 500; color: #d04747; background: url(../img/ico-pre.png) no-repeat left center; background-size: 20px; }
.campaign-bx .text { font-size: 14px; line-height: 1.4; }
.campaign-bx .time { margin-top: 10px; padding-left: 25px; background: url(../img/ico-suna.png) no-repeat left center; background-size: 16px; font-size: 12px; }

@media screen and (min-width: 768px) {
.campaign-bx .title { margin: 0 0 30px; padding-left: 40px; font-size: 30px; background-size: 30px; }
.campaign-bx .text { font-size: 16px; }
.campaign-bx .time { background-size: 20px; font-size: 14px; }
}

/* ichioshi */
.ichioshi img { margin-bottom: 15px; }
.ichioshi .title { margin-bottom: 10px; font-size: 20px; font-weight: 500; color: #e31713; }
.ichioshi .text { font-size: 14px; line-height: 1.4; }
@media screen and (min-width: 768px) {
.ichioshi img { margin-right: 40px; margin-bottom: 0; }
.ichioshi .title { margin-bottom: 20px; font-size: 32px; }
.ichioshi .text { font-size: 16px; }
}

/* kchi-txt */
.kchi-txt { color: #fff; font-size: 14px; }
.kchi-txt span { margin: 0 5px; font-weight: 500; }

@media screen and (min-width: 768px) {
.kchi-txt { position: absolute; top: 0; right: 0; font-size: 16px; }
.kchi-txt span { font-size: 18px; }
}

/* kuchi-list */
.kuchi-list { margin-top: 30px; }
.kuchi-list li { padding: 20px 15px 20px 60px; border-bottom: 1px solid #ccc; background: #fff; }
.kuchi-list .ttl { position: relative; margin-bottom: 10px; font-size: 16px; font-weight: 500; line-height: 1.24; }
.kuchi-list .ttl:before { position: absolute; top: 0; left: -40px; display: inline-block; content: ""; width: 30px; height: 30px; vertical-align: middle;}
.kuchi-list .data { margin-bottom: 10px; font-weight: 500; }
.kuchi-list span { margin-right: 8px; }
.kuchi-list .star { font-size: 12px; color: #e8b941; }
.kuchi-list .num { font-size: 12px; color: #da524a; }
.kuchi-list .txt { font-size: 14px; line-height: 1.4; }
.kuchi-list .mens { border-left: 3px solid #2092af; }
.kuchi-list .mens .ttl { color: #007993; }
.kuchi-list .mens .ttl:before { background: url(../img/ico-kuchi01.png) no-repeat; background-size: contain; }
.kuchi-list .wman { border-left: 3px solid #b4586f; }
.kuchi-list .wman .ttl { color: #b4586f; }
.kuchi-list .wman .ttl:before { background: url(../img/ico-kuchi02.png) no-repeat; background-size: contain; }
@media screen and (min-width: 768px) {
.kuchi-list { margin-top: 60px; }
.kuchi-list li { padding: 30px 40px 30px 90px; }
.kuchi-list .ttl { margin-bottom: 20px; font-size: 22px; }
.kuchi-list .ttl:before { top: -3px; left: -50px; width: 36px; height: 36px; }
.kuchi-list .data { margin-bottom: 15px; }
.kuchi-list .star { font-size: 18px; }
.kuchi-list .num { font-size: 18px; }
.kuchi-list .txt { font-size: 16px; }
.kuchi-list .mens { border-left: 4px solid #2092af; }
.kuchi-list .wman { border-left: 4px solid #b4586f; }
}

/* kuchi-post */
.kuchi-post { margin-top: 30px; padding-bottom: 20px; background: #fff; }
.kuchi-ttl { padding: 12px 0; text-align: center; font-size: 16px; font-weight: 500; color: #fff; background: #bea85c;}
.kuchi-ttl:before { display: inline-block; content: ""; width: 20px; height: 20px; margin-right: 8px; vertical-align: middle; background: url(../img/ico-fuki.png) no-repeat; background-size: contain; }
.kuchi-post table { width: 100%; text-align: left; }
.kuchi-post tr { border-bottom: 1px solid #ccc; }
.kuchi-post th { display: block; padding: 15px 15px 10px; font-size: 14px; vertical-align: middle; }
.kuchi-post td { display: block; padding: 0 15px 15px; vertical-align: middle; }

@media screen and (min-width: 768px) {
.kuchi-post { margin-top: 60px; padding-bottom: 50px; }
.kuchi-ttl { padding: 18px 0; font-size: 18px; }
.kuchi-ttl:before { width: 24px; height: 24px; }
.kuchi-post th { display: table-cell; width: 180px; padding: 15px 30px; font-size: 16px; }
.kuchi-post td { display: table-cell; padding: 15px 0; }
}


/*----------------------------------------------------*/
/* ttl
/*----------------------------------------------------*/
.ttl-gold { padding: 15px; background: #bba34f; font-size: 16px; font-weight: 700; color: #fff; line-height: 1.4; }
@media screen and (min-width: 768px) {
.ttl-gold { padding: 30px; font-size: 22px; }
}

/*----------------------------------------------------*/
/* arw
/*----------------------------------------------------*/
.arw01:before { display: inline-block; content: ""; width: 20px; height: 20px; margin-right: 6px; background: url(../img/ico-arw10.png) no-repeat; background-size: contain; vertical-align: middle; }
@media screen and (min-width: 768px) {
}

/*----------------------------------------------------*/
/* btn
/*----------------------------------------------------*/
.btn-blue, .btn-yellow, .btn-green, .btn-red, .btn-black { margin: 20px 0 0; }
article .btn-blue, article .btn-yellow, article .btn-green, article .btn-red, article .btn-black,
#spec .btn-blue, #spec .btn-yellow, #spec .btn-green { margin: 20px 15px 0; }

.cate-card-btn .btn-blue, .cate-card-btn .btn-yellow, .cate-card-btn .btn-green, .cate-card-btn .btn-red, .cate-card-btn .btn-black { margin: 0; }
.btn-blue a, .btn-yellow a, .btn-green a, .btn-red a, .btn-black a { position: relative; display: block; min-height: 47px; border-radius: 6px; color: #fff; font-size: 16px; font-weight: 500; text-align: center; text-decoration: none; padding: 15px 0 10px; line-height: 1; transition: .1s; text-shadow: 0 1px 3px rgba(0,0,0, 0.2); }

@media screen and (min-width: 768px) {
.btn-blue, .btn-yellow, .btn-green, .btn-red, .btn-black { max-width: 900px; margin: 40px 0 0; }

article .btn-blue, article .btn-yellow, article .btn-green, article .btn-red, article .btn-black,
#spec .btn-blue, #spec .btn-yellow, #spec .btn-green, #spec .btn-red, #spec .btn-black { margin: 30px 0 0; }

.btn-blue a, .btn-yellow a, .btn-green a, .btn-red a, .btn-black a { min-height: 70px; border-radius: 10px; font-size: 26px; padding: 20px 0 0; font-weight: 700; }
.cate-card-btn .btn-blue a, .cate-card-btn .btn-yellow a, .cate-card-btn .btn-green a, .cate-card-btn .btn-red a, .cate-card-btn .btn-black a { min-height: 60px; border-radius: 8px; font-size: 18px; font-weight: 500; }
}

.btn-blue a {
box-shadow: 0 5px 0 #2368cf;
background: #518fec; /* Old browsers */
background: -moz-linear-gradient(top,  #518fec 0%, #2975e7 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #518fec 0%,#2975e7 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #518fec 0%,#2975e7 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#518fec', endColorstr='#2975e7',GradientType=0 ); /* IE6-9 */
}
.btn-red a {
box-shadow: 0 5px 0 #cc1612;
background: #e94542; /* Old browsers */
background: -moz-linear-gradient(top,  #e94542 0%, #e31b17 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #e94542 0%,#e31b17 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #e94542 0%,#e31b17 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e94542', endColorstr='#e31b17',GradientType=0 ); /* IE6-9 */
}
.btn-yellow a {
box-shadow: 0 5px 0 #d0a63b;
background: #edc767; /* Old browsers */
background: -moz-linear-gradient(top,  #edc767 0%, #e8ba43 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #edc767 0%,#e8ba43 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #edc767 0%,#e8ba43 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#edc767', endColorstr='#e8ba43',GradientType=0 ); /* IE6-9 */
}
.btn-green a {
box-shadow: 0 5px 0 #209178;
background: #4fb49d; /* Old browsers */
background: -moz-linear-gradient(top,  #4fb49d 0%, #26a285 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #4fb49d 0%,#26a285 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #4fb49d 0%,#26a285 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4fb49d', endColorstr='#26a285',GradientType=0 ); /* IE6-9 */
}
.btn-black a {
box-shadow: 0 5px 0 #111;
background: #666; /* Old browsers */
background: -moz-linear-gradient(top,  #666 0%, #333 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #666 0%,#333 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #666 0%,#333 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666', endColorstr='#333',GradientType=0 ); /* IE6-9 */
}

@media screen and (min-width: 768px) {
.btn-blue a:hover, .btn-yellow a:hover, .btn-green a:hover, .btn-red a:hover, .btn-black a:hover { box-shadow: none !important; transform: translate3d(0, 5px, 0); }
}

.btn-blue i,.btn-yellow i,.btn-green i,.btn-red i,.btn-black i { position: absolute; top: 50%; right: 15px; margin-top: -10px; display: inline-block; width: 15px; height: 15px; background: url(../img/ico-arw11.png) no-repeat; background-size: contain; text-shadow: 0 1px 3px rgba(0,0,0, 0.2); }
.cate-card-btn .btn-blue i,.cate-card-btn .btn-yellow i,.cate-card-btn .btn-green i,.cate-card-btn .btn-red i,.cate-card-btn .btn-black i { margin-top: -5px; width: 12px; height: 12px; background: url(../img/ico-arw03.png) no-repeat; background-size: contain; }
@media screen and (min-width: 768px) {
.btn-blue i,.btn-yellow i,.btn-green i,.btn-red i,.btn-black i { right: 20px; width: 20px; height: 20px; }
.cate-card-btn .btn-blue i,.cate-card-btn .btn-yellow i,.cate-card-btn .btn-green i,.cate-card-btn .btn-red i,.cate-card-btn .btn-black i { width: 15px; height: 15px; }
}

img.small_card { width: 40px; margin-right: 6px; vertical-align: middle; }
.cate-card-btn img.small_card { width: 30px; }

@media screen and (min-width: 768px) {
img.small_card { width: 50px; margin-right: 8px; }
.cate-card-btn img.small_card { width: 40px; }
}

/*----------------------------------------------------*/
/* border-bx
/*----------------------------------------------------*/
.border-black { position: relative; margin: 30px 15px 0; padding: 40px 20px 20px; border: 3px solid #444; background: #f7f7f7; line-height: 1.5 }
.border-red { position: relative; margin: 30px 15px 0; padding: 40px 20px 20px; border: 3px solid #d04747; background: #fff3f3; line-height: 1.5; }
.border-blue { position: relative; margin: 30px 15px 0; padding: 40px 20px 20px; border: 3px solid #007993; background: #edf4ff; line-height: 1.5; }
.border-green { position: relative; padding: 20px 20px; border: 3px solid #4f9256; line-height: 1.5 }
@media screen and (min-width: 768px) {
.border-black { margin: 40px 0 0; padding: 40px; border: 4px solid #222; }
.border-red { margin: 40px 0 0; padding: 40px 40px 30px; border: 4px solid #e31713; }
.border-blue { margin: 40px 0 0; padding: 40px 40px 30px; border: 4px solid #2673e7; }
.border-green { padding: 45px 60px; border: 4px solid #45ba9f; }
}

span.caption { position: absolute; top: -18px; left: 0; display: inline-block; min-height: 42px; padding: 8px 12px; background: #fff; font-size: 16px; }
.border-black span.caption { left: -3px; background: #222; color: #fff; }
.border-red span.caption { left: -3px; background: #e31713; color: #fff; }
.border-green span.caption { top: -28px; color: #3db095; font-size: 20px; }

@media screen and (min-width: 768px) {
span.caption { top: -20px; min-height: 48px; padding: 10px 15px; font-size: 20px; }
.border-black span.caption { left: -4px; }
.border-red span.caption { left: -4px; }
.border-green span.caption { top: -32px; font-size: 26px; }
}

.ico-qa i { display: inline-block; content: ""; width: 20px; height: 20px; margin-left: 6px; background: url(../img/ico-qa.png) no-repeat; background-size: contain; vertical-align: baseline; }
.ico-topi i { display: inline-block; content: ""; width: 15px; height: 15px; margin-left: 6px; background: url(../img/ico-topi.png) no-repeat; background-size: contain; vertical-align: baseline; }
.ico-chk i { display: inline-block; content: ""; width: 14px; height: 14px; margin-left: 6px; background: url(../img/ico-check.png) no-repeat; background-size: contain; vertical-align: baseline; }
.ico-bulb i { display: inline-block; content: ""; width: 18px; height: 18px; margin-left: 6px; background: url(../img/ico-bulb.png) no-repeat; background-size: contain; vertical-align: middle; }
@media screen and (min-width: 768px) {
.ico-qa i { width: 25px; height: 25px; }
.ico-topi i { width: 20px; height: 20px; }
.ico-chk i { width: 18px; height: 18px; }
.ico-bulb i { width: 24px; height: 24px; }
}

.check-list-red { margin-top: 30px; }
.check-list-red table { width: 100%; line-height: 1.4; }
.check-list-red th { display: block; padding-bottom: 10px; vertical-align: middle; text-align: center; }
.check-list-red th span { display: inline-block; width: 100%; height: 40px; padding-top: 10px; background: #ed2e2a; color: #fff; font-size: 14px; font-weight: 700; }
.check-list-red th span:before { display: inline-block; content: ""; width: 15px; height: 15px; margin-right: 4px; background: url(../img/ico-check.png) no-repeat; background-size: contain; vertical-align: middle; }
.check-list-red td { display: block; padding-bottom: 20px; font-size: 14px; color: #e31713; vertical-align: middle; text-align: left; }
.check-list-red tr:last-child th, .check-list-red tr:last-child td { padding-bottom: 0; }

@media screen and (min-width: 768px) {
.check-list-red { margin-top: 60px; }
.check-list-red th { display: table-cell; }
.check-list-red th span { width: 170px; height: 45px; padding-top: 11px; }
.check-list-red th span:before { width: 18px; height: 18px; }
.check-list-red td { display: table-cell; padding-bottom: 10px; padding-left: 20px; font-size: 17px; }
}

#toc_container { margin: 40px 15px 0; padding-top: 40px; }
#toc_container { position: relative; margin: 30px 15px 0; padding: 40px 20px 20px; border: 3px solid #444; background: #f7f7f7; line-height: 1.5 }
p.toc_title { position: absolute; top: -18px; left: 0; display: inline-block; min-height: 42px; padding: 8px 12px; background: #fff; font-size: 16px; }
#toc_container p.toc_title { left: -3px; background: #444; color: #fff; }

@media screen and (min-width: 768px) {
p.toc_title { top: -20px; min-height: 48px; padding: 10px 15px; font-size: 20px; margin: 0;}
}

@media screen and (min-width: 768px) {
#toc_container { margin: 40px 0 0; padding: 40px; border: 4px solid #444; }
#toc_container p.toc_title { left: -4px; }
}

.mokuji { margin-bottom: 30px; color: #555; font-weight: 500; font-size: 16px; }
.mokuji span { margin: 0 10px; font-size: 10px; color: #007993; }

@media screen and (min-width: 768px) {
.mokuji-box { margin: 60px 0 0; padding-top: 60px; }
.mokuji { font-size: 18px; }
.mokuji span { font-size: 12px; }
}

ul.toc_list { margin: 15px 0 0 25px !important; }
ul.toc_list li { margin-bottom: 8px; padding: 0; line-height: 1.2; font-size: 14px; list-style: decimal-leading-zero; background: none; }
@media screen and (min-width: 768px) {
ul.toc_list { margin: 20px 0 0 15px !important; }
ul.toc_list li { font-size: 16px; }
}

ul.num-list { margin: 15px 0 0 25px !important; }
ul.num-list li { margin-bottom: 8px; padding: 0; line-height: 1.2; font-size: 14px; list-style: decimal-leading-zero; background: none; }
@media screen and (min-width: 768px) {
ul.num-list { margin: 20px 0 0 15px !important; }
ul.num-list li { font-size: 16px; }
}



.widelink.hover { background-color: #fff9f2; cursor: pointer;}
.widelink.hover img { opacity:0.5;
  transition-property: opacity;
  transition-duration: 0.15s;
  transition-timing-function: ease-out;
}
.widelink.hover a { text-decoration: underline;}

/* .mw_wp_form */
.mw_wp_form { padding: 0 0 50px;}
.mw_wp_form table { width: 100%; background: #FFF; text-align: left; border-top: 1px solid #c1c1c1; border-bottom: 1px solid #c1c1c1; }
.mw_wp_form tr { border-bottom: 1px solid #c1c1c1; }
.mw_wp_form th { display: block; padding: 15px 5px 0; vertical-align: middle; font-size: 14px; }
.mw_wp_form td { display: block; padding: 0 5px 15px; vertical-align: middle; font-size: 14px; }
.mw_wp_form td span { color: #666; }
.mw_wp_form .his { display: inline-block; width: 34px; height: 26px; margin-left: 5px; padding: 8px 0 0; background: #c94941; font-size: 10px; text-align: center; color: #fff; }
.mw_wp_form .check { padding: 30px 0; text-align: center; font-size: 16px; }
.mw_wp_form .submit { text-align: center; }
.mw_wp_form .submit input { width: 100%; height: 60px; margin: 0 auto;  cursor: pointer; }
.mw_wp_form input.btn-red { padding-top: 0; }
.mw_wp_form input:after { border-top: solid 2px #fff; border-right: solid 2px #fff; }
.mw_wp_form .finish-title { padding: 30px 10px; border-top: 1px dotted #FFF;}
.mw_wp_form .finish-title h2 { padding-bottom: 15px; font-size: 24px; font-weight: bold; color: #fff; line-height: 1.2; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2); }
.mw_wp_form .finish-title p { font-size: 16px; color: #fff; line-height: 1.2; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2); }


@media screen and (min-width: 768px) {
.mw_wp_form table tr:nth-child(even) { background: #f7f7f7; }
.mw_wp_form th { display: table-cell; position: relative; width: 215px; padding: 25px; }
.mw_wp_form td { display: table-cell; padding: 8px 0; }
.mw_wp_form td span { margin-left: 20px; }
.mw_wp_form .his { position: absolute; top: 50%; right: 20px; width: 40px; height: 30px; margin: -15px 0 0; padding: 5px 0 0; font-size: 12px; }
.mw_wp_form .check { padding: 40px 0; }
.mw_wp_form .submit input { width: 450px; height: 80px; font-size: 20px; margin: 20px 0 0;}
.mw_wp_form .finish-title { padding: 60px 0;}
.mw_wp_form .finish-title h2 { padding-bottom: 20px; font-size: 46px; }
.mw_wp_form .finish-title p { font-size: 18px; }

}

/* .mw_wp_form_input */
.mw_wp_form_input input[type="text"], .mw_wp_form_input input[type="email"], .mw_wp_form_input input[type="tel"], .mw_wp_form_input input[type="number"], .mw_wp_form_input textarea { width: 100%; height: 35px; margin: 8px 0; padding: 5px 10px; border: 2px solid #e5e5e5; color: #000 !important; text-align: left; box-sizing: border-box; /*border-radius: 3px /3px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 1px inset; -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 1px inset; -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 1px inset;*/ background: #fff; font-size: 18px; font-family: "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, Osaka; }
.mw_wp_form_input input.w01 { width: 30% !important; }
.mw_wp_form_input input.w02 { width: 60% !important; }
.mw_wp_form_input input[type="text"]:focus, .mw_wp_form_input input[type="email"]:focus, .mw_wp_form_input input[type="tel"]:focus, .mw_wp_form_input input[type="number"]:focus, .mw_wp_form_input textarea:focus { border: 2px solid #f8dcb3; box-shadow: 0 0 8px rgba(255, 126, 0, 0.5); /*box-shadow: rgba(255, 126, 0, 0.5) 0px 0px 3px 3px inset;*/ }
.mw_wp_form_input input.hs,.mw_wp_form_input textarea.hs { border: 2px solid #fbd193 !important; background: #fffaf0 !important; }
.form-credit input,.form-credit textarea { border: 2px solid #aabba1 !important; background: #fff !important; }
.mw_wp_form_input input[type="text"].problem, .mw_wp_form_input input[type="email"].problem, .mw_wp_form_input input[type="tel"].problem, .mw_wp_form_input textarea.problem { border: 2px solid #f47373 !important; background: #ffe5e5 !important; color: #c00; }
.mw_wp_form_input textarea { width: 100% !important; height: 120px !important; }
.mw_wp_form_input input.sss { width: 90px !important; }
.mw_wp_form_input input.ss { width: 110px !important; }
.mw_wp_form_input input.s { width: 160px !important; }

.mw_wp_form_input input[type="checkbox"] { width: 15px; height: 15px; margin-right: 4px; }

@media screen and (min-width: 768px) {
.mw_wp_form_input input[type="text"], .mw_wp_form_input input[type="email"], .mw_wp_form_input input[type="tel"], .mw_wp_form_input input[type="number"], .mw_wp_form_input textarea { width: 480px; }

.mw_wp_form_input input[type="checkbox"] { width: 20px; height: 20px; margin-right: 6px; }
}



/* select */
.mw_wp_form_input select { height: 45px; }
.mw_wp_form_input .select110 { width: 260px; }
.mw_wp_form_input .customSelect { width: 260px; }
.mw_wp_form_input span.customSelect { height: 45px; font-family: "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3", "Hiragino Kaku Gothic Pro"; padding: 12px 60px 0 15px; }
.mw_wp_form_input span.customSelectInner { overflow: hidden; width: inherit !important; text-overflow: ellipsis; white-space: nowrap; }
@media screen and (min-width: 768px) {
.mw_wp_form_input select { height: 48px; }
.mw_wp_form_input .select110 { width: 393px; }
.mw_wp_form_input .customSelect { width: 393px; }
.mw_wp_form_input span.customSelect { height: 48px; padding: 15px 70px 0 20px; }
}
/* PR表記 */
.tooltip--float { /* ツールチップを設置する「親要素」に指定、そこを基準に右上に配置される */
  position: relative;
}
.tooltip--float .tooltipWrap {
  cursor: pointer;
  border-radius: 2px;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
.tooltip--float .js--tooltipTarget {
  font-size: 1rem;
  line-height: 1;
  letter-spacing: .05em;
  color: #fff;
  background: #6e7682;
  display: inline-block;
  padding: 6px 9px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
}
.tooltip--float .js--tooltipItem {
  font-size: 0.9rem;
  padding: 10px;
  border-radius: 5px;
  color: #555;
  background: #d5d7d9;
  width: 50%;
  position: absolute;
  z-index: 1000;
  display: none;
}
.tooltip--float .tooltipWrap:hover .js--tooltipItem {
  display: inline-block;
  top: 32px;
  right: 5px;
  width: 300px;
}
.tooltip--float .js--tooltipItem::before {
  content: "";
  border-style: solid;
  border-width: 0 6px 12px 6px;
  border-color: transparent transparent #d5d7d9 transparent;
  position: absolute;
  top: -12px;
  right: 10px;
  z-index: 1000;
}

.tooltip--static {
  position: relative;
  text-align: right;
}
.tooltip--static .tooltipWrap {
  display: inline-block;
}
.tooltip--static .js--tooltipTarget {
  font-size: 1rem;
  line-height: 1;
  letter-spacing: .05em;
  color: #fff;
  background: #6e7682;
  display: inline-block;
  padding: 6px 9px;
  cursor: pointer;
  position: relative;
  z-index: 999;
}
.tooltip--static .js--tooltipItem {
  font-size: 0.9rem;
  padding: 10px;
  border-radius: 5px;
  color: #555;
  background: #d5d7d9;
  width: 50%;
  text-align: left;
  position: absolute;
  z-index: 1000;
  display: none;
}
.tooltip--static .tooltipWrap:hover .js--tooltipItem {
  display: inline-block;
  top: 35px;
  right: 5px;
  width: 300px;
}
.tooltip--static .js--tooltipItem::before {
  content: "";
  border-style: solid;
  border-width: 0 6px 12px 6px;
  border-color: transparent transparent #d5d7d9 transparent;
  position: absolute;
  top: -12px;
  right: 10px;
  z-index: 1000;
}
/* 追加 */
.mediaBox {
  background: #f6f7ea;
  padding: 70px 3%;
}
.mediaBox__inner {
  display: flex;
  justify-content: center;
  gap: 0 40px;
}
.mediaCard {
  width: 40%;
  padding: 30px 2%;
  text-align: center;
  background: #fff;
}
.mediaCard .media__img {
  display: block;
  margin-bottom: 30px;
}
.mediaCard .media__label {
  font-size: 20px;
}
.mediaCard .media__ttl {
  font-size: 30px;
  font-weight: bold;
  padding: 10px 0;
  border-bottom: 4px solid #186fc3;
  margin: 0 auto;
  width: fit-content;
}
.mediaCard .media__text {
  text-align: left;
  font-size: 16px;
  line-height: 1.45;
  margin-top: 20px;
}
.access {
  padding: 0 3% 70px;
}
.access__inner {
  max-width: 1000px;
  margin: 0 auto;
}
.access__gMap {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 48.645%;
}
.access__gMap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .mediaBox {
    padding: 50px 3%;
  }
  .mediaBox__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 0;
  }
  .mediaCard {
    width: 100%;
    padding: 30px 3%;
  }
  .mediaCard .media__img {
    margin-bottom: 15px;
  }
  .mediaCard .media__label {
    font-size: 15px;
  }
  .mediaCard .media__ttl {
    font-size: 20px;
    padding: 10px 0;
  }
  .mediaCard .media__text {
    font-size: 14px;
    margin-top: 15px;
  }
}