@charset "utf-8";
/*/////////////////////////////////////////////////////////////////////////
Screens (202004)
/////////////////////////////////////////////////////////////////////////*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&subset=japanese');

* { margin:0; padding:0; box-sizing:border-box;}
html, body { height:100%;}
html { font-family:'Noto Sans JP', "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;}
body { font-size:62.5%; line-height:1; -webkit-text-size-adjust:100%;}
h1, h2, h3, h4, h5, h6 { font-size:100%;}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary { display:block;}
audio,canvas,progress,video { display:inline-block;}
a,embed,object,button { outline:none;}
img { border:none; box-sizing:content-box;}
hr { display:none;}
li { list-style:none;}
a { background-color:transparent; -webkit-text-decoration-skip:objects;}
iframe { border:0;}
input, button, textarea, select {
	border:none; border-radius:0; outline:none;
	background:none; vertical-align:baseline; font-family:inherit;
	-webkit-appearance:none; appearance:none;
	transition:all 0.2s;
}

/*＠common
/////////////////////////////////////////////////////////////////////*/
body {
	background:#fff; color:#121212; text-align:center; font-weight:400;
	-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
a { color:#121212; text-decoration:none; transition:all 0.2s;}

#container { position:relative;}
.content-inner { max-width:1300px; min-width:1140px; text-align:left; margin:0 auto; position:relative;}
.green { color:#067a68;}

/*header*/
#header { padding:0 40px;}
	#header > .content-inner { padding-top:65px;}
	#header h1 {
		width:180px; height:40px;
		position:absolute; top:20px; left:0;
	}
	#header h1:before {
		content:""; display:block; width:319px; height:80px;
		background:url(../img/bg_head.png) no-repeat;
		position:absolute; top:-20px; left:105px; z-index:-1;
	}
	#header h1 span {
		display:block; width:100%; height:100%;
		background:url(../img/parts.png) no-repeat 0 -70px;
		background-size:240px auto;
		font-size:0; color:transparent;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	#header h1 a { display:block; width:100%; height:100%;}
	#header .today {
		font-size:23px; text-align:center; letter-spacing:0.05em;
		position:absolute; top:29px; left:210px;
	}
	#header .today span { display:block; font-size:11px; letter-spacing:0.15em; margin:-1px 0 0 2px;}
	#header .today:after {
		content:""; display:block; width:2px; height:75px;
		background:#262626;
		position:absolute; top:-32px; right:-47px;
		transform:rotate(30deg); transform-origin:0 0;
	}
	/*検索*/
	#header .searchField { position:absolute; top:23px; left:310px;}
	#header .searchField .inner { width:280px; position:relative;}
	#header .searchField input[type="text"] {
		display:block; width:100%; height:34px;
		font-size:16px; line-height:1.5; letter-spacing:0.05em;
		font-family:"Trebuchet MS", 'Noto Sans JP', sans-serif;
		border:2px solid #262626; border-radius:50px;
		background:#fff; padding:3px 1em;
		position:relative; z-index:100;
	}
	#header .searchField input[type="text"]::-webkit-input-placeholder { color:#aaa; position:relative; top:.05em;}
	#header .searchField input[type="text"]::-moz-placeholder { color:#aaa; position:relative; top:.05em;}
	#header .searchField input[type="text"]:-ms-input-placeholder { color:#aaa; position:relative; top:.05em;}
	#header .searchField button {
		width:40px; height:calc(100% - 5px);
		background:#fff; border-radius:0 50px 50px 0;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:50%; left:100%;
		margin-left:-42px; z-index:110;
		transform:translateY(-50%);
		cursor:pointer;
	}
	#header .searchField button:before {
		content:""; width:20px; height:20px;
		background:url(../img/parts.png) no-repeat -220px -35px;
		background-size:240px auto;
		position:absolute; top:50%; right:10px;
		transform:translateY(-50%); margin-top:-1px;
	}
	#header .searchField input[type="text"]:focus { background:#e6faf7;}
	#header .searchField input[type="text"]:focus + button { background:#e6faf7;}
	/*sns*/
	#header .sns { font-size:0; position:absolute; top:20px; right:0;}
	#header .sns li { display:inline-block; vertical-align:top; margin:0 4px;}
	#header .sns li a { display:block; width:40px; height:40px; border-radius:50%; position:relative;}
	#header .sns li.tw a { background:#55acee;}
	#header .sns li.fb a { background:#3b5998;}
	#header .sns li.rs a { background:#f8991d;}
	#header .sns li a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	#header .sns li.tw a:before { background-position:0 0;}
	#header .sns li.fb a:before { background-position:-35px 0;}
	#header .sns li.rs a:before { background-position:-70px 0;}

/*footer*/
#footer { background:#262626; color:#fff; padding:0 40px; position:relative;}
	#footer .content-inner { min-height:200px; padding:160px 0 40px;}
	#footer .logo {
		width:160px; height:32px;
		background:url(../img/parts.png) no-repeat 0 -115px;
		background-size:240px auto;
		position:absolute; top:33px; left:0; z-index:10;
	}
	#footer .logo:after {
		content:""; display:block; width:1px; height:70px; background:#fff;
		position:absolute; top:-20px; right:-32px;
		transform:rotate(30deg);
	}
	#footer .logo a {
		display:block; width:160px; height:32px;
		background:#262626; opacity:0;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	#footer .menu { position:absolute; top:46px; left:220px; z-index:10;}
	#footer .menu ul { font-size:0; padding-bottom:35px;}
	#footer .menu ul li { display:inline-block; margin:0 15px;}
	#footer .menu ul li a {
		display:inline-block; font-size:14px; font-weight:600; color:#fff;
		border-bottom:1px solid #fff; letter-spacing:0.1em;
		padding-bottom:3px; position:relative;
	}
	#footer .copyright { font-size:11px; letter-spacing:0.2em; transform:scale(0.9); transform-origin:0 0;}
	#footer .menu .sns li { padding-left:38px;}
	#footer .menu .sns li a { font-size:13px; font-weight:normal; padding-bottom:1px;}
	#footer .menu .sns li a:before,
	#footer .menu .sns li a:after {
		content:""; display:block; width:30px; height:30px;
		position:absolute;
	}
	#footer .menu .sns li a:before { border-radius:50%; top:-8px; left:-38px;}
	#footer .menu .sns li.tw a:before { background:#55acee;}
	#footer .menu .sns li.fb a:before { background:#3b5998;}
	#footer .menu .sns li.rs a:before { background:#f8991d;}
	#footer .menu .sns li a:after {
		background:url(../img/parts.png) no-repeat;
		background-size:240px auto;
		top:-8px; left:-38px; transform:scale(0.9);
	}
	#footer .menu .sns li.tw a:after { background-position:0 0;}
	#footer .menu .sns li.fb a:after { background-position:-35px 0;}
	#footer .menu .sns li.rs a:after { background-position:-70px 0;}
	/*hover*/
	#footer .logo a:active,
	.pc #footer .logo a:hover,
	.sp #footer .logo a.hover { opacity:0.3;}
	#footer .menu ul li a:active,
	.pc #footer .menu ul li a:hover,
	.sp #footer .menu ul li a.hover { opacity:0.7;}
	
#ptop {
	position:fixed; bottom:30px; right:30px; z-index:999;
	transition:all 0.5s; visibility:hidden; opacity:0;
	}
	#ptop a {
		display:block; width:55px; height:55px; position:relative;
		background:#262626; border:3px solid #fff; border-radius:50%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	#ptop a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -45px -35px;
		background-size:240px auto;
		position:absolute; top:3px; left:50%;
		margin-left:-15px;
	}
	#ptop.end { position:absolute; bottom:-18px;}

/*share*/
#sharebtn {
	position:fixed; bottom:30px; right:100px; z-index:999;
	text-align:center; transition:all 0.5s;
	visibility:hidden; opacity:0;
	}
	#sharebtn:before {
		content:""; display:block; width:65px; height:22px;
		background:url(../img/parts.png) no-repeat -90px -185px;
		background-size:240px auto;
		position:absolute; top:-22px; left:50%;
		transform:translateX(-50%);
	}
	#sharebtn a {
		display:inline-block; width:55px; height:55px;
		background:#05caac; border:3px solid #fff; border-radius:50%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:relative;
	}
	#sharebtn a:before {
		content:""; display:block; width:40px; height:40px;
		background:url(../img/parts.png) no-repeat;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	#sharebtn .tw:before { background-position:0 -185px;}
	#sharebtn .fb:before { background-position:-45px -185px;}
	#sharebtn.end { position:absolute; bottom:-18px;}

/*pic*/
.pic {
	width:100%; height:0;
	padding-top:calc(9 / 16 * 100%);
	position:relative; overflow:hidden;
}
.picinner {
	width:100%; height:100%;
	background:transparent no-repeat center center;
	background-size:cover;
	position:absolute; top:0; left:0;
	transition:all 0.2s;
}

/*link*/
.link.more { position:absolute; top:3px; right:10px;}
	.link.more a {
		display:inline-block; font-size:15px; font-weight:500;
		border-bottom:1px solid #262626; padding:5px 12px 5px 2px;
	}
	.link.more a:before,
	.link.more a:after {
		content:""; display:block; width:15px; height:15px;
		background:url(../img/parts.png) no-repeat -185px -95px;
		background-size:240px auto;
		position:absolute; top:50%; right:-5px;
		transform:translateY(-50%);
		transition:all 0.2s;
	}
	.link.more a:after { background-position:-205px -95px; opacity:0;}
	/*hover*/
	.link.more a:active,
	.pc .link.more a:hover,
	.sp .link.more a.hover { color:#05caac; border-color:#05caac;}
	.link.more a:active:before,
	.pc .link.more a:hover:before,
	.sp .link.more a.hover:before { opacity:0;}
	.link.more a:active:after,
	.pc .link.more a:hover:after,
	.sp .link.more a.hover:after { opacity:1;}

/*btn*/
.btn.more { width:90%; margin:30px auto 0;}
	.btn.more a {
		display:block; width:100%; height:40px;
		background:#05caac; position:relative;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	.btn.more a:before {
		content:""; display:block; width:40px; height:30px;
		background:url(../img/parts.png) no-repeat 0 -35px;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	/*hover*/
	.btn.more a:active,
	.pc .btn.more a:hover,
	.sp .btn.more a.hover { opacity:0.8;}
	
/*btn-all*/
.btn-all { text-align:center; padding-top:15px;}
.posts .btn-all { text-align:left; padding-left:370px;}
.btn-all a,
.btn-all span {
	display:inline-block; width:310px; background:#fff;
	font-size:16px; font-weight:600; text-align:center;
	border:1px solid #262626; border-radius:2px;
	padding:.55em 10px .65em 5px;
	position:relative; transition:all 0.2s;
	}
	.btn-all a:before,
	.btn-all a:after,
	.btn-all span:before,
	.btn-all span:after {
		content:""; display:inline-block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%); margin-left:3.5em;
		transition:all 0.2s;
	}
	.btn-all a:before,
	.btn-all span:before { background-position:-80px -35px;}
	.btn-all a:after,
	.btn-all span:after { background-position:-210px -70px; width:20px; height:20px; opacity:0;}
	/*hover*/
	.btn-all a:active,
	.pc .btn-all a:hover,
	.sp .btn-all a.hover,
	.posts a:active .btn-all span,
	.pc .posts a:hover .btn-all span,
	.sp .posts a.hover .btn-all span { color:#fff; border-color:#05caac; background:#05caac;}
	.btn-all a:active:before,
	.pc .btn-all a:hover:before,
	.sp .btn-all a.hover:before,
	.posts a:active .btn-all span:before,
	.pc .posts a:hover .btn-all span:before,
	.sp .posts a.hover .btn-all span:before { opacity:0;}
	.btn-all a:active:after,
	.pc .btn-all a:hover:after,
	.sp .btn-all a.hover:after,
	.posts a:active .btn-all span:after,
	.pc .posts a:hover .btn-all span:after,
	.sp .posts a.hover .btn-all span:after { opacity:1;}
	.btn-all a:active,
	.btn-all a:active:before,
	.btn-all a:active:after,
	.posts a:active .btn-all span,
	.posts a:active .btn-all span:before,
	.posts a:active .btn-all span:after { transition:none;}


/*@cotents
/////////////////////////////////////////////////////////////////////*/
#contents { padding:0 40px 100px;}
#content-main { display:table; width:100%; table-layout:fixed;}
#main { display:table-cell; vertical-align:top; padding-right:40px;}
#side { display:table-cell; width:310px; vertical-align:top;}
#main .heading {
	border-top:4px solid #262626;
	border-bottom:2px solid #262626;
	padding:20px; margin-bottom:40px;
	position:relative;
	}
	#main .heading h2 { font-size:26px; line-height:1.25; letter-spacing:0.05em;}
	#main .heading h2 span { display:inline-block; color:#05caac; margin-right:0.3em;}
	/*link*/
	#main .heading .link {
		position:absolute; top:50%; right:15px;
		transform:translateY(-50%);
	}
	#main .heading .link a {
		display:inline-block; font-size:16px; font-weight:500;
		letter-spacing:normal; background:#eee; border-radius:50px;
		padding:.55em 40px .65em 35px;
	}
	#main .heading .link a:before {
		content:""; display:block; width:15px; height:15px;
		background:url(../img/parts.png) no-repeat -185px -95px;
		background-size:240px auto;
		position:absolute; top:50%; right:15px;
		transform:translateY(-50%);
		
	}
	/*hover*/
	#main .heading .link a:active,
	.pc #main .heading .link a:hover { background:#262626; color:#fff;}
	#main .heading .link a:active:before,
	.pc #main .heading .link a:hover:before { background-position:-225px -95px;}
	#main .heading .link a:active { transition:none;}

/*headline*/
#headline { width:100%; padding-bottom:50px; position:relative; overflow:hidden;}
	.headline-slider { background:#05caac; position:relative;}
	.headline-slider .slider { width:100%; height:382px;}
	.headline-slider .item { height:382px; outline:none; margin:0 5px; overflow:hidden; position:relative;}
	.headline-slider .item a {
		display:block; width:100%; height:100%;
		position:absolute; top:0; left:0; overflow:hidden;
		background:#000; transition:none;
	}
	.headline-slider .item a:before {
		content:""; display:block; width:100%; height:55%;
		position:absolute; bottom:0; left:0; z-index:10;
		background:-webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		background:linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	}
	.headline-slider .item .pic { height:382px; padding:0;}
	.headline-slider .item .title {
		width:95%; color:#fff; padding-bottom:10px;
		position:absolute; bottom:0; left:50%; z-index:20;
		transform:translateX(-50%);
	}
	.headline-slider .item .title h2 {
		font-size:26px; line-height:1.3; letter-spacing:0.03em;
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
		height:calc(1.3em * 2); margin-bottom:3px; overflow:hidden;
	}
	.headline-slider .item .title-data,
	.headline-slider .item .title-date {
		display:inline-block; vertical-align:top;
		font-size:12px; font-weight:500; letter-spacing:0.05em;
		padding:5px 0; margin-right:1em;
	}
	/*current*/
	.headline-slider .item a:before,
	.headline-slider .item .title { opacity:0;}
	.headline-slider .item .pic { opacity:0.4;}
	.headline-slider .slick-current a:before,
	.headline-slider .slick-current .pic,
	.headline-slider .slick-current .title { opacity:1; animation:fadeIn 1s;}
	/*arrow*/
	.headline-slider .arrows .slick-arrow {
		display:block; width:60px; height:100%;
		position:absolute; top:0; z-index:100;
		cursor:pointer; outline:none;
		transition:all 0.2s;
	}
	.headline-slider .arrows .prev { left:0;}
	.headline-slider .arrows .next { right:0;}
	.headline-slider .arrows .slick-arrow:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -120px -150px;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	.headline-slider .arrows .next:before { background-position:-155px -150px;}
	/*dots*/
	.headline-slider .slick-dots {
		width:100%; height:10px; text-align:center;
		position:absolute; bottom:-20px; left:0; z-index:100;
	}
	.headline-slider .slick-dots li { display:inline-block; vertical-align:top; margin:0 3px;}
	.headline-slider .slick-dots li button {
		display:block; width:9px; height:9px;
		background:#fff; border:1px solid #262626;
		border-radius:50%; cursor:pointer;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	.headline-slider .slick-dots li.slick-active button { background:#262626;}
	/*hover*/
	.headline-slider .item a .picinner { transition:all 0.5s;}
	.pc .headline-slider .item a:hover .picinner,
	.sp .headline-slider .item a.hover .picinner { transform:scale(1.08);}


/*@記事一覧
/////////////////////////////////////////////////////////////////////*/
/*tags*/
.posts .tags { padding:3px 5px;}
.posts .tags span {
	display:inline-block; font-size:10px; font-weight:600; color:#121212;
	border-radius:4px; background:rgba(255, 255, 255, 0.8);
	padding:3px 5px; margin:2px 2px 2px 0;
	white-space:nowrap; overflow:hidden;
}

/*box*/
.post-list { font-size:0; border-bottom:1px solid #aaa; padding-bottom:40px; position:relative;}
.post-list + .post-list { margin-top:40px;}
.post-list > h2 { font-size:28px; padding-bottom:15px;}
.post-list .posts { display:inline-block; width:31.6%; vertical-align:top; margin-right:2.5%;}
	.post-list .posts > a { display:block; width:100%; position:relative;}
	.post-list .posts .pic { border-radius:8px 8px 0 0; transition:all 0.2s;}
	.post-list .post-title { padding-left:30px; position:relative;}
	.post-list .post-title h3 {
		font-size:16px; line-height:1.45; letter-spacing:0.02em;
		padding:7px 0 0 10px; margin-bottom:10px;
		transition:all 0.2s;
	}
	.post-list .post-title .title-data { font-size:11px; line-height:1.3; padding-left:11px;}
	.post-list .post-title .title-date {
		display:block; width:30px; min-height:45px;
		font-size:16px; text-align:center; color:#fff; letter-spacing:0.05em;
		background:#05caac; padding:.7em 0 .45em;
		position:absolute; top:0; left:0;
	}
	.post-list .posts.plain .post-title .title-date { background:#262626;}
	.post-list .post-title .title-date span {
		display:block; font-size:10px; letter-spacing:0.15em;
		margin:1px 0 0 0.1em; transform:scale(0.8); transform-origin:top center;
	}
	.post-list .posts .new {
		display:inline-block;
		font-size:11px; text-align:center; color:#fff; letter-spacing:0.08em;
		font-family:'Noto Sans JP', sans-serif; font-weight:500;
		background:#f00; padding:3px 5px 3px 6px; border-radius:4px;
		position:absolute; bottom:5px; right:5px;
	}
		/*hover*/
	.post-list .posts a:active .post-title h3,
	.pc .post-list .posts a:hover .post-title h3,
	.sp .post-list .posts a.hover .post-title h3 { color:#05caac;}
	.post-list .posts a:active .pic,
	.pc .post-list .posts a:hover .pic,
	.sp .post-list .posts a.hover .pic { opacity:0.85;}
	.post-list .posts a:active .post-title h3 { transition:none;}

/*line*/
.post-list-line { position:relative;}
.post-list-line .inner { padding:0 20px;}
	.post-list-line .posts { min-height:195px; padding:25px 0; position:relative;}
	.post-list-line .posts:nth-child(1) { min-height:165px; padding-top:0;}
	.post-list-line .posts > a { display:block; width:100%; position:relative;}
	.post-list-line .posts .pic {
		width:240px; padding-top:0; height:135px;
		border-radius:8px;
		position:absolute; top:7px; left:0;
		transition:all 0.2s;
	}
	.post-list-line .post-title { padding-left:265px; position:relative;}
	.post-list-line .post-title h3 {
		font-size:19px; line-height:1.6; letter-spacing:0.02em;
		margin-bottom:12px;
	}
	.post-list-line .post-title h3 span { border-bottom:1px solid #262626; transition:all 0.2s;}
	.post-list-line .post-title .title-data,
	.post-list-line .post-title .title-date {
		display:inline-block; vertical-align:top;
		font-size:12px; line-height:1.3; margin:2px 1em 2px 0;
	}
	.post-list-line .post-title .title-date { letter-spacing:0.03em;}
	.post-list-line .post-title .title-summary {
		font-size:15px; line-height:1.6;
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
		height:calc(1.6em * 2); margin-top:8px; overflow:hidden;
	}
	/*article-detail*/
	.article-detail .post-list-line .post-title { padding-left:290px;}
	.article-detail .post-list-line .post-title .title-date {
		display:block; width:30px; min-height:45px; line-height:1;
		font-size:16px; text-align:center; color:#fff; letter-spacing:0.05em;
		background:#05caac; padding:.7em 0 .45em; margin:0;
		position:absolute; top:7px; left:250px;
	}
	.article-detail .post-list-line .posts.plain .post-title .title-date { background:#262626;}
	.article-detail .post-list-line .post-title .title-date span {
		display:block; font-size:10px; letter-spacing:0.15em;
		margin:1px 0 0 0.1em; transform:scale(0.8); transform-origin:top center;
	}
	.article-detail #footer { display:none;}
	
	/*hover*/
	.post-list-line .posts a:active .post-title h3,
	.pc .post-list-line .posts a:hover .post-title h3,
	.sp .post-list-line .posts a.hover .post-title h3 { color:#05caac;}
	.post-list-line .posts a:active .post-title h3 span,
	.pc .post-list-line .posts a:hover .post-title h3 span,
	.sp .post-list-line .posts a.hover .post-title h3 span { border-color:#05caac;}
	.post-list-line .posts a:active .pic,
	.pc .post-list-line .posts a:hover .pic,
	.sp .post-list-line .posts a.hover .pic { opacity:0.85;}
	.post-list-line .posts a:active .post-title h3 span,
	.post-list-line .posts a:active .post-title h3 { transition:none;}

/*all*/
.article-list .post-list { border-bottom:none; padding-bottom:0;}
	.article-list .post-list .inner { padding:0 10px 0 20px;}
	.article-list .post-list .posts { width:31.3%; margin:0 3% 40px 0;}
	.article-list .post-list .post-title h3 { font-size:15px;}

/*ranking*/
.ranking #main .heading h2 { padding-right:250px;}
.ranking .post-list-line .posts a { padding-left:45px;}
	.ranking .post-list-line .posts .pic { left:45px;}
	.ranking .post-list-line .posts .rank {
		width:30px; min-height:40px;
		font-size:20px; text-align:center; color:#fff;
		background:#262626; padding:.55em 0 .3em 1px;
		position:absolute; top:7px; left:0;
	}
	.ranking .post-list-line .posts:nth-child(-n+3) .rank { font-size:21px; background:#05caac;}
	.ranking .post-list-line .post-title { padding-left:260px;}

/*@記事ページ
/////////////////////////////////////////////////////////////////////*/
.article-main { border-bottom:2px solid #262626; padding-bottom:60px; margin-bottom:60px;}
.article-main header {
	border-top:4px solid #262626;
	padding:35px 20px 20px;
	position:relative;
	}
	.article-main header h2 { font-size:32px; line-height:1.4; letter-spacing:0.03em; margin-bottom:25px;}
	.article-main header .title-data,
	.article-main header .title-date {
		display:inline-block; vertical-align:top;
		font-size:14px; font-weight:500; letter-spacing:0.05em;
		margin-right:1em;
	}
	/*btn*/
	.article-main header .btn-push { position:absolute; bottom:13px; right:20px;}
	.article-main header .btn-push a {
		display:inline-block; font-size:14px; font-weight:600;
		color:#fff; background:#f8991d; border-radius:50px;
		padding:.4em 15px;
	}
	.article-main header .btn-push a:hover { opacity:0.8;}

.article-main .main-image { padding:0 20px;}
.article-main .main-image .pic { border-radius:8px 8px 0 0;}
.article-main .main-text {
	font-size:16px; font-weight:500; line-height:1.4;
	background:#262626; color:#fff;
	padding:10px 15px; margin:0 20px;
	}
	.article-main .main-text .credit {
		font-size:10px; font-weight:500; text-align:right;
		letter-spacing:0.03em; padding-top:5px;
	}

.article-main .article-inner { padding:30px 40px 0;}
.article-main .block { margin-bottom:40px;}
	.article-main .block:last-child { margin-bottom:20px;}
	.article-main .block h3 { font-size:22px; line-height:1.6; letter-spacing:0.05em; margin:40px 0 25px;}
	.article-main .block h3.underline { border-bottom:2px solid #262626; padding-bottom:5px;}
	.article-main .block .text:after { content:""; clear:both; display:block;}
	.article-main .block .text p { font-size:17px; line-height:2; letter-spacing:0.05em; padding-bottom:30px;}
	.article-main .block .text p a { word-break:break-all;}
	.article-main .block .text .image { padding:10px 0 30px;}
	.article-main .block .text .image img { display:block; width:100%;}
	.article-main .block .text .image.col1.left { width:400px; float:left; padding-bottom:10px; margin:0 30px 0 -40px;}
	.article-main .block .text .image.col1.right { width:400px; float:right; padding-bottom:10px; margin:0 -40px 10px 30px;}
	.article-main .block .text .image.col1.center { text-align:center;}
	.article-main .block .text .image.col1.center img { display:inline-block; width:auto; max-width:100%;}
	.article-main .block .text .image.col2 { display:table; width:100%; table-layout:fixed;}
	.article-main .block .text .image.col2 .box { display:table-cell; width:50%; vertical-align:top;}
	.article-main .block .text .image.col2 .box:nth-child(1) { padding-right:20px;}
	.article-main .block .text .image.col2 .box:nth-child(2) { padding-left:20px;}
	.article-main .block .text .image .cap {
		display:block; font-size:13px; line-height:1.5;
		color:#067a68; letter-spacing:0.02em; padding:10px 0;
	}
	.article-main .block .text .image .center { text-align:center;}
	.article-main .block .text .image .credit { display:block; font-size:10px; margin-top:5px; color:#067a68;}
	.article-main .block .text .image .cap + .credit { margin-top:-5px;}
	.article-main .block .text .image .enlarge { display:block; position:relative;}
	.article-main .block .text .image .enlarge:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -200px -115px;
		background-size:240px auto;
		position:absolute; top:-13px; right:-13px;
	}
	.article-main .block .text a:not(.enlarge) { border-bottom:1px solid #262626;}
	.article-main .block .text .arr { padding-left:25px;}
	.article-main .block .text .arr a { position:relative;}
	.article-main .block .text .arr a:before {
		content:""; display:block; width:10px; height:10px;
		border-right:1px solid #262626;
		border-top:1px solid #262626;
		position:absolute; top:9px; left:-25px;
		transform:rotate(45deg);
		transition:all 0.2s;
	}
	.article-main .block .text .quote {
		background:#f5f5f5; border-radius:16px;
		padding:40px 55px 40px; margin:0 0 25px;
		position:relative;
	}
	.article-main .block .text .quote:before {
		content:'“'; font-size:50px; color:#04c9ad; line-height:0;
		position:absolute; top:35px; left:15px;
	}
	.article-main .block .text .quote:after{
		content:'”'; font-size:50px; color:#04c9ad; line-height:0;
		position:absolute; bottom:15px; right:10px;
	}
	.article-main .block .text ol,
	.article-main .block .text ul { font-size:16px; line-height:1.8; padding:0 0 30px 25px;}
	.article-main .block .text ol li { list-style:decimal;}
	.article-main .block .text ul li { list-style:disc;}
	.article-main .block .text ol li + li,
	.article-main .block .text ul li + li { margin-top:7px;}
	.article-main .block .text .note { font-size:12px; line-height:1.8; color:#555;}
	.article-main .block .video {
		width:90%; height:0;
		padding-top:calc(9 / 16 * 90%);
		margin:0 auto 70px; position:relative;
	}
	.article-main .block .video iframe { width:100%; height:100%; position:absolute; top:0; left:0;}
	.article-main .block .video span {
		display:block; font-size:13px; line-height:1.5;
		color:#067a68; letter-spacing:0.02em; padding-top:5px;
	}
	/*hover*/
	.article-main .block .text a:active,
	.pc .article-main .block .text a:hover,
	.sp .article-main .block .text a.hover { border-color:#05caac; color:#05caac;}
	.article-main .block .text .arr a:active:before,
	.pc .article-main .block .text .arr a:hover:before,
	.sp .article-main .block .text .arr a.hover:before { border-color:#05caac;}
	.article-main .block .text .image a:active,
	.pc .article-main .block .text .image a:hover,
	.sp .article-main .block .text .image a.hover { opacity:0.6;}
	.article-main .block .text a:active,
	.article-main .block .text .arr a:active:before { transition:none;}

/*tag*/
.article-main .tag { padding-bottom:30px;}
	.article-main .tag { font-size:0;}
	.article-main .tag li { display:inline-block; margin:0 8px 8px 0;}
	.article-main .tag li a {
		display:inline-block;
		font-size:14px; font-weight:500; color:#05caac;
		text-align:center; letter-spacing:0.03em; background:#fff;
		border:1px solid #05caac; border-radius:2px;
		padding:.35em 15px .45em 15px; overflow:hidden;
	}
	.article-main .tag li.high { border:double 4px #05caac; border-radius:4px;}
	.article-main .tag li.high a { border:none; font-weight:600;}
	/*hover*/
	.article-main .tag li a:active,
	.pc .article-main .tag li a:hover,
	.sp .article-main .tag li a.hover { background:#05caac; color:#fff;}
	.article-main .tag li a:active { transition:none;}

/*sns*/
.article-main .share { padding:0 20px 15px;}
	.article-main .share ul { display:table; width:100%; table-layout:fixed;}
	.article-main .share ul li { display:table-cell; text-align:center; vertical-align:top; padding:0 1px;}
	.article-main .share ul li a {
		display:block; width:100%; height:100%; white-space:nowrap;
		font-size:13px; font-weight:600; color:#fff; border-radius:2px;
		padding:.75em 0 .75em 17px; position:relative;
	}
	.article-main .share ul li a:hover { opacity:0.8;}
	.article-main .share ul li.twitter a { background:#29adf4;}
	.article-main .share ul li.facebook a { background:#33599d; padding-left:13px;}
	.article-main .share ul li.hatena a { background:#0091e5;}
	.article-main .share ul li.evernote a { background:#79bd28;}
	.article-main .share ul li.line a { background:#00b900; padding-left:24px;}
	.article-main .share ul li.print a { background:#262626;}
	.article-main .share ul li.eight a { background:#48a1e3; text-indent:110%; overflow:hidden;}
	.article-main .share ul li a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat;
		background-size:240px auto;
		position:absolute; top:50%; left:5px;
		transform:translateY(-50%);
	}
	.article-main .share ul li.twitter a:before { background-position:0 0;}
	.article-main .share ul li.facebook a:before { background-position:-35px 0;}
	.article-main .share ul li.hatena a:before { background-position:-105px 0;}
	.article-main .share ul li.google a:before { background-position:-140px 0;}
	.article-main .share ul li.evernote a:before { background-position:-175px 0; left:2px;}
	.article-main .share ul li.line a:before { background-position:-210px 0; left:2px;}
	.article-main .share ul li.print a:before { background-position:-165px -115px;}
	.article-main .share ul li.eight a:before {
		background-position:0 -150px;
		width:80px; left:50%;
		transform:translate(-50%, -50%);
	}

/*related*/
.related { padding:0 40px 40px;}
	.related .inner { background:#fff; border:1px solid #05caac; padding:25px 30px;}
	.related h2 { font-size:20px; color:#05caac; margin-bottom:18px;}
	.related ul li {
		font-size:17px; font-weight:500; letter-spacing:0.05em;
		margin-bottom:8px; white-space:nowrap;
		overflow:hidden; text-overflow:ellipsis;
	}
	.related ul li .pic {
		display:inline-block; width:34px; height:34px;
		vertical-align:middle; padding:0;
		border-radius:50%; margin-right:7px;
	}
	.related ul li span { border-bottom:1px solid #262626; padding-bottom:2px; transition:all 0.2s;}
	/*hover*/
	.related li a:active span,
	.pc .related li a:hover span { border-color:#05caac; color:#05caac;}
	.related li:active,
	.pc .related li:hover { color:#05caac;}
	.related li a:active span,
	.related li:active { transition:none;}

/*survey*/
.survey { padding:0 40px 40px;}
	.survey .inner {
		font-size:16px; line-height:1.5;
		background:#fff; border:1px solid #05caac;
		padding:25px 30px;
	}
	.survey .inner p { border-bottom:1px solid #a8ede2; padding-bottom:10px;}
	/*form*/
	.survey dl {
		display:table; width:100%; table-layout:fixed;
		border-bottom:1px solid #a8ede2;
	}
	.survey dt,
	.survey dd { display:table-cell; vertical-align:top;}
	.survey dt { width:8em; font-weight:500; padding:10px 0.5em; position:relative;}
	.survey dt:after { content:"："; position:absolute; top:10px; right:-0.2em;}
	.survey dd { padding:5px 0.5em;}
	.survey dd .item { display:inline-block; vertical-align:top; padding:5px 0.5em;}
	.survey dd .item.type { display:block; width:100%;}
	.survey label { cursor:pointer;}
	/**/
	.survey input[type="text"] {
		width:320px; font-size:16px;
		line-height:1; letter-spacing:0.05em;
		border:2px solid #9beade; border-radius:3px;
		background:#fff; padding:.2em 10px .25em;
		position:relative;
	}
	.survey textarea {
		width:100%; height:100px; font-size:16px;
		line-height:1.5; letter-spacing:0.05em;
		border:2px solid #9beade; border-radius:3px;
		background:#fff; padding:7px 10px 6px; margin:0;
		position:relative;
	}
	/**/
	.survey input[type="checkbox"] { opacity:0; position:absolute;}
	.survey input[type="checkbox"] + span { display:inline-block; padding-left:26px; position:relative;}
	.survey input[type="checkbox"] + span::before {
		content:''; display:inline-block; width:14px; height:14px;
		border:2px solid #9beade; border-radius:3px;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%); margin-top:1px;
	}
	.survey input[type="checkbox"]:checked + span::before {
		background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='square' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
		background-repeat:no-repeat;
		background-position:0 1px;
		background-color:#05caac;
		border-color:#05caac;
	}
	/**/
	.survey input[type="radio"] { opacity:0; position:absolute;}
	.survey input[type="radio"] + label { display:inline-block; padding-left:26px; position:relative;}
	.survey input[type="radio"] + label::before {
		content:''; display:inline-block; width:14px; height:14px;
		border:2px solid #9beade; border-radius:50%;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%); margin-top:1px;
	}
	.survey input[type="radio"]:checked + label::before { border-color:#05caac;}
	.survey input[type="radio"]:checked + label::after {
		content:""; display:block; width:8px; height:8px;
		background:#05caac; border-radius:50%;
		position:absolute; top:50%; left:5px;
		transform:translateY(-50%); margin-top:1px;
	}
	/**/
	.survey form .btn { width:320px; margin:20px auto 0; position:relative;}
	.survey form .btn input {
		display:block; width:100%;
		font-size:20px; font-weight:600; color:#fff;
		text-align:center; letter-spacing:0.05em;
		background:#05caac; border-radius:3px;
		border:none; cursor:pointer;
		padding:.3em 0 .35em;
	}
	.survey form .btn.done {
		font-size:22px; font-weight:600; color:#05caac;
		text-align:center; letter-spacing:0.05em;
		padding-top:4px; margin-top:20px;
	}
	/*hover*/
	.survey form .btn input:active,
	.pc .survey form .btn input:hover { opacity:0.8;}

/*intro*/
.article-main.intro header h2 a { font-size:28px; border-bottom:1px solid #262626;}
.article-main.intro .summary { min-height:150px; padding:0 20px 0 300px; position:relative;}
	.article-main.intro .summary .pic {
		width:260px; height:146px; padding:0;
		border-radius:8px;
		position:absolute; top:0; left:20px;
	}
	.article-main.intro .summary .pic a {
		display:block; width:100%; height:100%;
		position:absolute; top:0; left:0;
		border-radius:6px; overflow:hidden;
	}
	.article-main.intro .summary p {
		font-size:16px; line-height:1.8; letter-spacing:0.05em;
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
		height:calc(1.8em * 3); overflow:hidden;
	}
.article-main.intro .article-inner { padding-top:20px;}
	.article-main.intro .article-inner h2 { font-size:16px; font-weight:500; margin-bottom:10px;}
	.article-main.intro .article-inner .tag { padding-bottom:0;}
.article-main.intro .related { padding:20px 40px 0;}
	.article-main.intro .related .inner { background:none; border:none; padding:0;}
	.article-main.intro .related h2 { font-size:16px; font-weight:500; color:#121212; margin-bottom:12px;}
	.article-main.intro .related ul li { font-size:16px; margin-bottom:5px;}
/*hover*/
.article-main.intro header h2 a:active,
.pc .article-main.intro header h2 a:hover,
.sp .article-main.intro header h2 a.hover { border-color:#05caac; color:#05caac;}
.article-main.intro .summary .pic a:active,
.pc .article-main.intro .summary .pic a:hover,
.sp .article-main.intro .summary .pic a.hover { opacity:0.8;}
.article-main.intro header h2 a:active { transition:none;}

/*@特集ページ
/////////////////////////////////////////////////////////////////////*/
.category-main { padding-bottom:60px; position:relative;}
	.category-main .pic { border-radius:8px 8px 0 0; margin-bottom:15px; position:relative;}
	.category-main .pic:before {
		content:""; display:block; width:100%; height:55%;
		position:absolute; bottom:0; left:0; z-index:10;
		background:-webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		background:linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	}
	.category-main .pic h2 {
		width:100%; font-size:37px; font-weight:600; color:#fff;
		line-height:1.4; letter-spacing:0.05em;
		position:absolute; bottom:0; left:0; z-index:10;
		padding:20px;
	}
	.category-main .inner { letter-spacing:0.05em; padding:10px 20px 5px;}
	.category-main .inner p { font-size:17px; line-height:2;}
	.category-main .inner a { border-bottom:1px solid #262626;}
	/*hover*/
	.category-main .inner a:active,
	.pc .category-main .inner a:hover,
	.sp .category-main .inner a.hover { border-color:#05caac; color:#05caac;}
	.category-main .inner a:active { transition:none;}

/*@視聴率
/////////////////////////////////////////////////////////////////////*/
#main .rating-list .heading { display:table; width:100%; padding-right:10px; margin-bottom:0;}
	#main .rating-list .heading h2,
	.rating-list .heading .week { display:table-cell; vertical-align:middle;}
	.rating-list .heading .week { font-size:17px; font-weight:600; line-height:1.3; text-align:right;}
	.rating-list .heading .week > span { display:inline-block; font-size:19px; margin-right:1em;}
	.rating-list .heading .week .new {
		display:inline-block; font-size:14px; color:#fff;
		line-height:1; letter-spacing:0.1em;
		background:#f00; border-radius:2px; vertical-align:middle;
		padding:.3em .5em .35em .6em; margin:-4px 0.5em 0 0;
	}
	.rating-list .tb { display:table; width:100%; table-layout:fixed;}
	.rating-list .tb > div { display:table-cell; vertical-align:top;}

/*nav*/
.rating-nav { width:100px;}
	.rating-nav .totop { min-height:52px; border-bottom:2px solid #262626;}
	.rating-nav .totop a {
		display:block; width:100%;
		font-size:15px; font-weight:500; line-height:1.2;
		padding:8px 0 6px 13px; position:relative;
	}
	.rating-nav a:before {
		content:""; display:block; width:0; height:0;
		border:4px solid transparent;
		border-left-color:#05caac;
		border-width:4px 4px 4px 7px;
		position:absolute; top:50%; left:2px;
		transform:translateY(-2px);
	}
	.rating-nav .bknm { padding:35px 0 0;}
	.rating-nav .bknm h3 { font-size:15px; line-height:1.2; padding-bottom:5px;}
	.rating-nav .bknm ul li a {
		display:block; width:100%; font-size:15px;
		padding:8px 0 8px 13px;
		position:relative;
	}
	/*hover*/
	.pc .rating-nav a:hover { color:#05caac;}

/*body*/
.rating-body { padding-left:20px;}
	.rating-body .note,
	.rating-body .credit { font-size:13px; text-align:right; line-height:1.6;}
	.rating-body .category {
		min-height:52px;
		border-bottom:2px solid #262626;
		padding:10px 0; margin-bottom:12px;
		position:relative;
	}
	.rating-body .category li { display:inline-block; vertical-align:top;}
	.rating-body .category li a {
		display:block; font-size:15px; white-space:nowrap;
		font-weight:500; line-height:1.35;
		padding:5px 9px 5px 12px; position:relative;
	}
	.pc .rating-body .category li a:hover { color:#05caac;}
	.rating-body .category li a:before {
		content:""; display:block; width:0; height:0;
		border:4px solid transparent;
		border-top-color:#05caac;
		border-width:7px 4px 4px 4px;
		position:absolute; top:50%; left:0;
		transform:translateY(-2px);
	}
	
	.rating-body .block { padding:20px 0 50px;}
	.rating-body .block h3 { font-size:22px; margin-bottom:15px;}
	.rating-body table {
		width:100%; text-align:center; table-layout:fixed;
		border-collapse:collapse; border-spacing:0;
		border-bottom:1px solid #f5f5f5;
	}
	.rating-body tr:nth-child(odd) { background:#f5f5f5;}
	.rating-body table .title { width:30%;}
	.rating-body th {
		font-size:13px; font-weight:600; line-height:1.2;
		color:#fff; background:#05caac; padding:3px;
	}
	.rating-body td { font-size:14px; line-height:1.4; padding:10px 5px;}
	.rating-body td.title { text-align:left; padding-left:15px;}
	.rating-body td.rate { font-size:16px; font-weight:bold;}
	/*timeshift*/
	.rating-body.shift table .title { width:20%;}
	.rating-body.shift table .s { width:3%;}
	.rating-body.shift table .bunrui { font-size:12px; color:#05caac;}
	.rating-body.shift table .rate { width:75px;}
	.rating-body.shift tr:nth-child(odd) td.highlight { background:#ccf4ee;}
	.rating-body.shift th.highlight { background:#03d7b7;}
	.rating-body.shift td.highlight { background:#dffffa;}
	
	.rating-body dl.bunrui { font-size:12px; color:#666; text-align:right; margin:-25px 0 40px;}
	.rating-body dl.bunrui dt,
	.rating-body dl.bunrui dd { display:inline-block;}
	.rating-body dl.bunrui dt { color:#666;}
	.rating-body dl.bunrui dt:after { content:'：';}
	.rating-body dl.bunrui dd { display:inline-block; margin:0 10px 8px 0;}
	.rating-body dl.bunrui dd span { display:inline-block; font-size:12px; color:#05caac; padding-right:2px;}
	/*notice*/
	.rating-body .notice {
		font-size:14px; line-height:1.6;
		border:1px solid #262626;
		padding:20px; margin-bottom:35px;
	}
	.rating-body .notice ul li { padding-left:1em;}
	.rating-body .notice ul li:before { content:'・';}
	.rating-body .notice dl { padding-left:2em;}
	.rating-body .notice dt { display:inline-block;}
	.rating-body .notice dd { display:inline;}
	.rating-body .notice dt { text-indent:-2em;}
	.rating-body .notice dt strong { padding-left:0.5em;}

/*bknm*/
#RatingsBknm { max-width:900px; background:#fff; padding-bottom:20px; margin:40px auto; position:relative;}
	#RatingsBknm h1 {
		font-size:22px; font-weight:600; color:#fff; letter-spacing:0.05em;
		background:#05caac; padding:16px 40px 15px;
	}
	#RatingsBknm h1 span { display:inline-block; padding-left:1em;}
	#RatingsBknm ul { display:flex; flex-wrap:wrap; padding:20px 30px;}
	#RatingsBknm ul li {
		width:49%; font-size:15px; letter-spacing:0.05em;
		border-bottom:1px solid #ddd;
	}
	#RatingsBknm ul li:nth-child(2n) { margin-left:1.5%;}
	#RatingsBknm ul li a { display:table; width:100%; table-layout:fixed; padding:11px 5px 10px 10px;}
	#RatingsBknm ul li a:hover { color:#05caac;}
	#RatingsBknm ul li a span { display:table-cell; vertical-align:top;}
	#RatingsBknm ul li a span:nth-child(1) { width:4.5em;}
	/*close*/
	#RatingsBknm .mfp-close { top:7px; right:7px;}
	#RatingsBknm .mfp-close:before,
	#RatingsBknm .mfp-close:after { width:24px; left:9px;}

/*@用語集
/////////////////////////////////////////////////////////////////////*/
.term-list .heading .read {
	font-size:16px; font-weight:500;
	line-height:1.35; white-space:nowrap;
	position:absolute; top:50%; left:120px;
	transform:translateY(-50%);
	}
	.term-list .grn { color:#05caac;}
.term-list .inner { padding:0 20px;}
	.term-list .inner .en { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:gray;}
	/*index*/
	.term-list .index { background:#05caac; padding:12px 0 11px 20%; margin-bottom:70px; position:relative;}
	.term-list .index h3 {
		width:20%; font-size:24px; color:#fff; text-align:center;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%);
	}
	.term-list .index ul { width:590px; font-size:0; padding:2px 0;}
	.term-list .index ul li { display:inline-block;}
	.term-list .index ul li a {
		display:block; width:42px; height:35px; line-height:35px;
		font-size:26px; color:#fff; text-align:center;
		margin-right:3px; overflow:hidden;
	}
	.term-list .index .ja li a { font-size:24px; font-weight:600;}
	.term-list .index .en li a { padding-top:4px; margin-bottom:2px;}
	/*list*/
	.term-list .list-block { padding:10px 0 70px 185px; position:relative;}
	.term-list .list-block h3 {
		display:flex; justify-content:center; align-items:center;
		width:86px; height:86px; font-size:28px; color:#fff;
		font-weight:600; text-align:center;
		border-radius:50%; background:#05caac;
		position:absolute; top:0; left:0;
		padding-top:3px;
	}
	.term-list .list-block h3 span { font-size:34px; margin-top:-3px;}
	.term-list .list-block dl { padding:8px 0 35px; position:relative;}
	.term-list .list-block dt {
		width:70px; font-size:34px; font-weight:600;
		color:#05caac; text-align:center;
		position:absolute; top:16px; left:-85px;
	}
	.term-list .list-block dd { border-bottom:1px solid #262626;}
	.term-list .list-block dd a {
		display:block; font-size:20px; font-weight:500;
		line-height:1.35; letter-spacing:0.08em;
		padding:12px 5px; position:relative;
	}
	.term-list .list-block dd a .gnr {
		height:22px; white-space:nowrap;
		font-size:16px; font-weight:500; color:#067a68;
		position:absolute; top:50%; right:5px; margin-top:-11px;
		transition:all 0.2s;
	}
	.term-list .list-block.en { padding-bottom:0;}
	.term-list .list-block.en h3 { font-size:35px; font-weight:normal; padding-top:4px;}
	.term-list .list-block.en dl { padding:6px 0 37px;}
	.term-list .list-block.en dt { font-size:39px; font-weight:normal; padding-top:2px;}
	.term-list .list-block.en dd { font-family:'Noto Sans JP', "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;}
	/*detail*/
	.term-list .term-detail {
		min-height:470px; border:2px solid #05caac;
		padding:60px 55px 55px; margin:0 50px 35px;
		position:relative;
	}
	.term-list .term-detail:before {
		content:""; display:block; width:12px; height:37px; background:#05caac;
		position:absolute; top:0; left:28px;
	}
	.term-list .term-detail h3 {
		font-size:28px; font-weight:500; line-height:1.35;
		letter-spacing:0.08em; border-bottom:2px solid #05caac;
		padding:10px 0; margin-bottom:20px; position:relative;
	}
	.term-list .term-detail h3 .gnr {
		font-size:18px; font-weight:500; color:#067a68;
		position:absolute; bottom:10px; right:0;
	}
	.term-list .term-detail p {
		font-size:20px; font-weight:500; line-height:2;
		letter-spacing:0.1em; padding-bottom:20px;
	}
	.term-list .term-detail .credit {
		font-size:11px; color:#067a68;
		position:absolute; bottom:18px; right:22px;
		padding:0;
	}
	/*btn*/
	.term-list .btn-back { width:430px; padding-bottom:60px; margin:0 auto;}
	.term-list .btn-back a {
		display:block; width:100%;
		font-size:24px; font-weight:600; text-align:center;
		background:#05caac; color:#fff; letter-spacing:0.05em;
		border:2px solid #05caac; border-radius:2px;
		padding:.55em 10px .58em 10px; position:relative;
	}
	.term-list .btn-back a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -155px -150px;
		background-size:240px auto;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%) rotate(180deg) scale(0.9);
		margin-left:-4em;
	}
	/*hover*/
	.term-list .index ul li a:active,
	.pc .term-list .index ul li a:hover,
	.sp .term-list .index ul li a.hover { background:#fff; color:#05caac;}
	.term-list .list-block dd a:active,
	.pc .term-list .list-block dd a:hover,
	.sp .term-list .list-block dd a.hover { background:#05caac; color:#fff;}
	.term-list .list-block dd a:active .gnr,
	.pc .term-list .list-block dd a:hover .gnr,
	.sp .term-list .list-block dd a.hover .gnr { color:#fff;}
	.term-list .btn-back a:active,
	.pc .term-list .btn-back a:hover,
	.sp .term-list .btn-back a.hover { background:#fff; color:#05caac;}
	.term-list .btn-back a:active:before,
	.pc .term-list .btn-back a:hover:before,
	.sp .term-list .btn-back a.hover:before { background-position:-190px -150px;}
	.term-list .index ul li a:active,
	.term-list .list-block dd a:active,
	.term-list .btn-back a:active,
	.term-list .btn-back a:active:before { transition:none;}

/*@プッシュ通知
/////////////////////////////////////////////////////////////////////*/
#main .webpush-main .heading { margin-bottom:30px;}
#main .webpush-main .heading h2 span { margin:0;}
.webpush-main .inner { font-size:16px; line-height:1.8; padding:0 20px;}
	.webpush-main .inner .lead { font-size:18px; font-weight:500; padding-bottom:30px;}
	.webpush-main .block { padding-bottom:80px;}
	.webpush-main .block h3 {
		font-size:22px; color:#fff; background:#05caac;
		padding:7px 0 9px 55px; margin-bottom:25px;
		position:relative;
	}
	.webpush-main .block h3:before {
		content:""; display:block; width:35px; height:35px;
		background:url(../img/parts.png) no-repeat -160px -185px;
		background-size:240px auto;
		position:absolute; top:50%; left:14px;
		transform:translateY(-50%);
	}
	.webpush-main .block.off h3:before { background-position:-200px -185px;}
	.webpush-main .block-in { padding:0 20px;}
	.webpush-main .block-in +  .block-in { padding-top:35px;}
	.webpush-main .block-in .image { padding-top:20px;}
	.webpush-main .block-in .image img {
		display:block; width:100%; max-width:440px;
		border:1px solid #ddd;
	}
	.webpush-main .block-in .image img.wide { max-width:640px;}
	.webpush-main .block-in .image img.full { max-width:100%;}
	.webpush-main .block-in .image img + img { margin-top:20px;}
	/*howto*/
	.webpush-main .block-in .howto { padding:30px 30px 0 40px;}
	.webpush-main .block-in .howto li { font-weight:600; counter-increment:num; position:relative;}
	.webpush-main .block-in .howto li + li { margin-top:20px;}
	.webpush-main .block-in .howto li:before {
		content:counter(num);
		display:flex; justify-content:center; align-items:center;
		width:32px; height:32px; font-size:20px; color:#fff;
		text-align:center; background:#222; border-radius:50%;
		position:absolute; top:0; left:-40px;
		padding:0 0 1px 1px;
	}
	.webpush-main .block-in .howto li p { font-size:17px;}
	.webpush-main .block-in .howto dl { padding-top:20px;}
	.webpush-main .block-in .howto dl .image { padding:10px 0 25px;}
	.webpush-main .block-in .howto dt {
		display:inline-block; background:#222; color:#fff;
		font-size:15px; border-radius:2px; padding:1px 8px;
	}
	/*info*/
	.webpush-main .info { font-size:16px; border-top:1px solid #222; padding:30px 20px;}
	.webpush-main .info h3 { padding-bottom:5px;}
	.webpush-main .info .note { padding-top:10px;}
	.webpush-main .info .note li { font-size:14px; text-indent:-1em; padding-left:1em;}
	.webpush-main .attn ul { padding-left:25px;}
	.webpush-main .attn ul li { list-style:disc;}

/*@TVニュース放送時間ランキング
/////////////////////////////////////////////////////////////////////*/
#main .tvnews-main .heading { margin-bottom:35px;}
	#main .tvnews-main .heading h2 { padding-right:290px;}
	.tvnews-main .heading .date {
		line-height:1.3; text-align:right;
		position:absolute; top:50%; right:15px;
		transform:translateY(-50%);
	}
	.tvnews-main .heading .week { font-size:18px; font-weight:600;}
	.tvnews-main .heading .resetdate { font-size:15px; font-weight:500; margin:3px 0 -15px;}
	.tvnews-main .heading .note {
		font-size:12px; line-height:1.3;
		position:absolute; top:100%; right:15px;
		margin-top:8px;
	}
.tvnews-main .date .new {
	display:inline-block; font-size:14px; color:#fff;
	line-height:1; letter-spacing:0.1em;
	background:#f00; border-radius:2px; vertical-align:middle;
	padding:.3em .5em .35em .6em; margin:-4px 10px 0 0;
}
.tvnews-main .lead {
	font-size:16px; font-weight:500; line-height:1.8;
	letter-spacing:0.02em;
	padding:0 20px 35px;
}
.tvnews-main .note,
.tvnews-main .credit { font-size:13px; line-height:1.6; text-align:right; padding-bottom:5px;}
.tvnews-main p a { color:#067a68; border-bottom:1px solid #067a68;}
.tvnews-main p a:active,
.pc .tvnews-main p a:hover { color:#121212; border-color:#121212;}

.tvnews-heading {
	min-height:60px;
	border-top:2px solid #262626;
	border-bottom:1px solid #262626;
	padding:15px 20px; margin-bottom:5px;
	position:relative;
	}
	.tvnews-heading h3 { font-size:20px; font-weight:600; line-height:1.8;}
	.tvnews-heading ul {
		position:absolute; top:50%; right:12px;
		transform:translateY(-50%);
	}
	.tvnews-heading li { display:inline-block; vertical-align:top;}
	.tvnews-heading li + li { margin-left:10px;}
	.tvnews-heading li a {
		display:block; font-size:15px;
		font-weight:500; line-height:1.35;
		padding:5px 9px 5px 15px; position:relative;
	}
	.pc .tvnews-heading li a:hover { color:#05caac;}
	.tvnews-heading li a:before {
		content:""; display:block; width:0; height:0;
		border:4px solid transparent;
		border-left-color:#05caac;
		border-width:4px 4px 4px 7px;
		position:absolute; top:50%; left:2px;
		margin-top:-4px;
	}
/*list*/
.tvnews-list { border-top:1px solid #262626;}
	.tvnews-list ol { counter-reset:number 0; margin-bottom:15px;}
	.tvnews-list ol li {
		display:table; width:100%; table-layout:fixed;
		font-size:15px; line-height:1.6;
		border-bottom:1px solid #262626;
		padding-right:20px; position:relative;
	}
	.tvnews-list ol li > span { display:table-cell; vertical-align:middle; padding:15px 0;}
	.tvnews-list ol li > span:nth-child(1) { padding-left:20px;}
	.tvnews-list ol li > span:nth-child(2) { width:180px; text-align:right;}
	.tvnews-list ol li:before {
		counter-increment:number 1; content:counter(number);
		display:table-cell; width:80px; vertical-align:middle;
		font-size:18px; text-align:center;
		font-family:"BrandonTextWeb-Bold", 'Noto Sans JP', sans-serif;
		-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
		background:#f5f5f5; padding-top:5px;
	}
	.tvnews-list ol li:nth-child(-n+5) { background:#f0fffc;}
	.tvnews-list ol li:nth-child(-n+5):before { background:#dff7f3;}
/*bknm*/
#TVnewsBknm { max-width:900px; background:#fff; padding-bottom:20px; margin:40px auto; position:relative;}
	#TVnewsBknm h1 {
		font-size:22px; font-weight:600; color:#fff; letter-spacing:0.05em;
		background:#05caac; padding:16px 40px 15px;
	}
	#TVnewsBknm ul { display:flex; flex-wrap:wrap; padding:20px 30px;}
	#TVnewsBknm ul li {
		width:31%; font-size:15px; letter-spacing:0.05em;
		border-bottom:1px solid #ddd;
		margin:0 1%;
	}
	#TVnewsBknm ul li a { display:block; width:100%; padding:11px 5px 10px;}
	#TVnewsBknm ul li a:hover { color:#05caac;}
	/*close*/
	#TVnewsBknm .mfp-close { top:7px; right:7px;}
	#TVnewsBknm .mfp-close:before,
	#TVnewsBknm .mfp-close:after { width:24px; left:9px;}


/*@side
/////////////////////////////////////////////////////////////////////*/
.side-block { margin-bottom:30px;}
/*feature*/
.side-block.feature li + li { margin-top:10px;}
	.side-block.feature a {
		display:block; width:100%; height:100px;
		background:transparent no-repeat center center;
		background-size:cover;
		border-radius:8px; overflow:hidden; position:relative;
	}
	.side-block.feature a:before {
		content:""; display:block; width:100%; height:60%;
		position:absolute; bottom:0; left:0; z-index:10;
		background:-webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		background:linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	}
	.side-block.feature a span {
		display:block; width:100%; letter-spacing:0.05em;
		font-size:14px; font-weight:600; color:#fff; padding:10px;
		position:absolute; bottom:0; left:0; z-index:10;
	}
	/*hover*/
	.pc .side-block.feature a:hover,
	.sp .side-block.feature a.hover { opacity:0.8;}

/*ratings*/
.side-block.ratings { background:#fff; border:2px solid #262626;}
	.side-block.ratings h2 { font-size:18px; line-height:1.25; letter-spacing:0.02em; padding:12px 5px 5px 12px;}
	.side-block.ratings h2 span { display:block; font-size:13px; margin-bottom:3px;}
	.side-block.ratings .week {
		font-size:12px; font-weight:600; color:#fff;
		letter-spacing:0.03em; line-height:1.2; background:#262626;
		padding:.3em 12px .35em;
	}
	.side-block.ratings ol { counter-reset:number 0; font-size:13px; padding:5px 0;}
	.side-block.ratings ol li {
		display:table; width:100%; table-layout:fixed;
		min-height:40px; line-height:1.25; background:#fff;
		padding:0 5px; position:relative;
	}
	.side-block.ratings ol li:nth-child(even) { background:#f5f5f5;}
	.side-block.ratings ol li:before {
		display:table-cell; width:25px; vertical-align:middle;
		font-size:16px; text-align:center;
		font-family:"BrandonTextWeb-Bold", 'Noto Sans JP', sans-serif;
		-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
		counter-increment:number 1; content:counter(number);
		padding-top:.3em;
	}
	.side-block.ratings ol li > span { display:table-cell; vertical-align:middle; padding:.3em 0;}
	.side-block.ratings ol li .tv { width:25px; text-align:center; padding-top:.4em;}
	.side-block.ratings ol li .tv span {
		display:block; font-size:10px; padding-top:1px;
		transform:scale(0.9); transform-origin:0 0;
	}
	.side-block.ratings ol li .program {
		font-weight:500; font-feature-settings:"palt";
		letter-spacing:0.03em; padding-left:5px;
	}
	.side-block.ratings ol li .rate {
		width:50px; font-size:11px; text-align:right; white-space:nowrap;
		letter-spacing:0.02em; padding-top:.7em;
	}
	.side-block.ratings ol li .rate span { font-size:12px;}
	/**/
	.side-block.ratings ol li:nth-child(1):before { font-size:20px;}
	.side-block.ratings ol li:nth-child(1) .program { font-size:16px;}
	.side-block.ratings ol li:nth-child(1) .rate span { font-size:16px;}
	/*bottom*/
	.side-block.ratings p { font-size:10px; line-height:1.3; color:#067a68; padding:0 10px;}
	.side-block.ratings .note { text-align:right; margin-bottom:5px;}
	.side-block.ratings .note a { color:#067a68; border-bottom:1px solid #067a68;}
	.side-block.ratings .note2 { display:none;}
	
	.side-block.ratings .rating_guide {
		display:inline-block; width:15px; height:15px;
		font-size:12px; text-align:center; line-height:16px;
		border:1px solid #067a68; border-radius:50%;
		vertical-align:top; margin:-1px 0 0 2px; cursor:pointer;
	}
	/*btn*/
	.side-block.ratings .btn-archive { width:90%; margin:10px auto 15px;}
	.side-block.ratings .btn-archive a {
		display:block; width:100%;
		font-size:16px; font-weight:600; text-align:center;
		background:#05caac; color:#fff;
		border:1px solid #05caac; border-radius:2px;
		padding:.55em 10px .65em 5px; position:relative;
	}
	.side-block.ratings .btn-archive a:after {
		content:""; display:inline-block; width:20px; height:20px;
		background:url(../img/parts.png) no-repeat -210px -70px;
		background-size:240px auto;
		position:absolute; top:50%; right:10px;
		transform:translateY(-50%);
	}
	/*hover*/
	.side-block.ratings .note a:active,
	.pc .side-block.ratings .note a:hover { color:#121212; border-color:#121212;}
	.side-block.ratings .rating_guide:active,
	.pc .side-block.ratings .rating_guide:hover { background:#067a68; color:#fff;}
	.side-block.ratings .btn-archive a:active,
	.pc .side-block.ratings .btn-archive a:hover,
	.sp .side-block.ratings .btn-archive a.hover { background:#fff; color:#05caac;}
	.side-block.ratings .btn-archive a:active:after,
	.pc .side-block.ratings .btn-archive a:hover:after,
	.sp .side-block.ratings .btn-archive a.hover:after { background-position:-185px -70px;}
	.side-block.ratings .btn-archive a:active,
	.side-block.ratings .btn-archive a:active:after { transition:none;}

/*ranking*/
.side-block.ranking { background:#fff; border:2px solid #262626;}
	.side-block.ranking h2 {
		font-size:19px; line-height:1.25; text-align:center;
		padding:10px 0; position:relative;
	}
	.side-block.ranking ol { counter-reset:number 0;}
	.side-block.ranking ol li { border-bottom:1px dashed #262626; position:relative;}
	.side-block.ranking ol li:last-child { border-bottom:none;}
	.side-block.ranking ol li a {
		display:block; font-size:14px; font-weight:500;
		line-height:1.45; letter-spacing:0.03em;
		padding:12px 10px 10px 38px; position:relative;
	}
	.side-block.ranking ol li a:before {
		counter-increment:number 1;
		content:counter(number);
		width:25px; vertical-align:middle; padding-top:1px;
		font-size:20px; text-align:center;
		font-family:"BrandonTextWeb-Bold", 'Noto Sans JP', sans-serif;
		-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
		position:absolute; top:9px; left:7px;
	}
	.side-block.ranking ol li:nth-child(1) a { padding-top:15px;}
	.side-block.ranking ol li:nth-child(1) a:before { top:13px;}
	.side-block.ranking ol li a .title { border-bottom:1px solid transparent; transition:all 0.2s;}
	.side-block.ranking ol li a .date {
		display:block; font-size:11px; font-weight:normal;
		letter-spacing:0.03em; padding-top:6px;
	}
	/*tab*/
	.side-block.ranking .tab {
		display:flex; justify-content:center; text-align:center;
		border-bottom:2px solid #262626;
		border-top:2px solid #262626;
	}
	.side-block.ranking .tab li {
		display:inline-block; width:50%;
		font-size:14px; font-weight:500; letter-spacing:0.05em;
		padding:5px 0 6px; position:relative; cursor:pointer;
	}
	.side-block.ranking .tab li:after {
		content:''; display:block; width:0; height:0;
		border:6px transparent solid;
		border-top-color:#262626;
		border-width:9px 6px 0 6px;
		position:absolute; top:100%; left:50%; z-index:10;
		margin-left:-6px; opacity:0;
	}
	.side-block.ranking .tab li.active { background:#262626; color:#fff;}
	.side-block.ranking .tab li.active:after { opacity:1;}
	/*show*/
	.side-block.ranking .list { display:none;}
	.side-block.ranking .list.show { display:block;}
	.side-block.ranking .list.show ol { animation:fadeIn 0.5s;}
	/*hover*/
	.side-block.ranking ol li a:active,
	.pc .side-block.ranking ol li a:hover,
	.sp .side-block.ranking ol li a.hover { background:#f5f5f5;}
	.side-block.ranking ol li a:active .title,
	.pc .side-block.ranking ol li a:hover .title,
	.sp .side-block.ranking ol li a.hover .title { border-color:#262626;}
	.side-block.ranking ol li a:active,
	.side-block.ranking ol li a:active .title { transition:none;}

/*terms*/
.side-block.other .btn-terms a {
	display:block; width:100%;
	font-size:24px; font-weight:600; text-align:center;
	background:#05caac; color:#fff; letter-spacing:0.05em;
	border:2px solid #05caac; border-radius:2px;
	padding:.67em 10px .67em 5px; position:relative;
	}
	.side-block.other .btn-terms a:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -155px -150px;
		background-size:240px auto;
		position:absolute; top:50%; right:20px;
		transform:translateY(-50%) scale(0.9);
	}
	/*hover*/
	.side-block.other .btn-terms a:active,
	.pc .side-block.other .btn-terms a:hover,
	.sp .side-block.other .btn-terms a.hover { background:#fff; color:#05caac;}
	.side-block.other .btn-terms a:active:after,
	.pc .side-block.other .btn-terms a:hover:after,
	.sp .side-block.other .btn-terms a.hover:after { background-position:-190px -150px;}
	.side-block.other .btn-terms a:active,
	.side-block.other .btn-terms a:active:after { transition:none;}

/*plugin*/
.side-block.plugin { width:310px; height:650px; overflow:hidden; position:relative;}
.side-block.plugin.twitter { background:#f5f5f5; padding:5px;}
.side-block.plugin.twitter iframe { width:100%; height:100%; position:absolute; top:0; left:0;}


/*@info
/////////////////////////////////////////////////////////////////////*/
.info #main { padding:20px 0 0;}
	.info #main h2 { font-size:30px; letter-spacing:0.05em; margin-bottom:20px;}
	.info #main h2 span { display:inline-block; font-size:32px; color:#05caac; margin-right:0.3em;}
	.info #main .inner { max-width:760px; margin:0 auto;}

/*about*/
#about { padding-bottom:20px;}
#about p { font-size:20px; font-weight:500; line-height:1.8; letter-spacing:0.12em; padding-bottom:30px;}
/*contact*/
#contact { padding-top:20px;}
#contact .inner > .attn { border:2px solid #05caac; padding:20px 20px 15px;}
#contact .inner > .attn p {
	font-size:16px; font-weight:500; line-height:1.6;
	color:#05caac; letter-spacing:0.05em; text-indent:-1.2em;
	padding:0 0 8px 1.2em;
}
#contact form > div { display:table; width:100%; table-layout:fixed; margin-bottom:20px;}
	#contact form > div > span { display:table-cell; vertical-align:top; position:relative;}
	#contact form > div > span:first-child {
		width:220px; font-size:18px; font-weight:500;
		letter-spacing:0.05em; padding-top:15px;
	}
	#contact form > div > span.contacttype:after {
		content:""; display:block; width:0; height:0;
		border:12px solid transparent;
		border-top-color:#222;
		border-width:10px 12px 12px 12px;
		position:absolute; top:50%; right:12px; z-index:1;
		transform:translateY(-25%);
	}
	#contact form input[type="text"],
	#contact form textarea,
	#contact form select {
		width:100%; font-size:16px; line-height:1.5;
		border:2px solid #262626;
		padding:0.5em 0.6em; margin-bottom:3px;
	}
	#contact form textarea { height:300px; margin-bottom:0; line-height:1.8;}
	#contact form select { cursor:pointer; padding-right:47px; position:relative; z-index:10;}
	#contact form select::-ms-expand { display:none;}
	#contact form input[type="text"]:focus,
	#contact form textarea:focus,
	#contact form select:focus { border-color:#05caac;}
	#contact form .err { display:block; font-size:14px; font-weight:500; color:#f00; padding-top:5px;}
	#contact form .btn { width:430px; margin:50px auto; position:relative;}
	#contact form .btn input {
		display:block; width:100%;
		font-size:24px; font-weight:600; color:#fff;
		text-align:center; letter-spacing:0.05em;
		background:#05caac; border-radius:3px; border:none;
		padding:.4em 0 .48em; cursor:pointer;
	}
	#contact form .btn.done {
		font-size:24px; font-weight:600; color:#05caac;
		text-align:center; letter-spacing:0.05em; background:#fff;
		border:2px solid #05caac; border-radius:3px;
		padding:.6em 0 .68em;
	}
	/*hover*/
	#contact form .btn input:active,
	.pc #contact form .btn input:hover { opacity:0.8;}
	/*attention*/
	#contact form .opt .attention {
		height:270px; background:#f5f5f5;
		padding:30px; margin-top:10px;
		overflow:auto;
	}
	#contact form .opt .attention h3 { font-size:15px; padding-bottom:12px;}
	#contact form .opt .attention p { font-size:14px; line-height:1.6; padding-bottom:20px;}
	#contact form .opt .attention p:last-child { padding-bottom:0;}
	#contact form .opt .attention a { color:#0680ce; border-bottom:1px solid #0680ce;}
	/*hover*/
	#contact form .opt .attention a:active,
	.pc #contact form .opt .attention a:hover { color:#000; border-bottom:1px solid #000;}
	/*check*/
	#contact form .opt .checkbox { text-align:center; padding-top:40px;}
	#contact form .opt input[type="checkbox"] { display:none;}
	#contact form .opt .checkbox label {
		display:inline-block; vertical-align:middle;
		font-size:15px; background:#f5f5f5; border-radius:5px;
		padding:1em 1.8em 1em 60px; cursor:pointer; position:relative;
	}
	#contact form .opt .checkbox label:before {
		content:''; display:block; width:18px; height:18px;
		border:2px solid #ccc; border-radius:5px;
		position:absolute; top:50%; left:28px;
		transform:translateY(-50%);
		transition:border-color 0.1s linear;
	}
	#contact form .opt .checkbox label:after {
		content:''; display:block; width:5px; height:11px;
		border-right:2px solid #fff;
		border-bottom:2px solid #fff;
		position:absolute; top:50%; left:36px;
		transform:translateY(-60%) rotate(45deg);
		transition:opacity 0.1s linear;
		opacity:0;
	}
	/*hover*/
	#contact form .opt .checkbox label:active,
	.pc #contact form .opt .checkbox label:hover { color:#0680ce; background:#e8f3fb;}
	#contact form .opt .checkbox label:active:before,
	.pc #contact form .opt .checkbox label:hover:before { border-color:#0680ce;}
	#contact form .opt input[type="checkbox"]:checked + label { color:#0680ce; background:#e8f3fb;}
	#contact form .opt input[type="checkbox"]:checked + label:before { border-color:#0680ce; background:#0680ce;}
	#contact form .opt input[type="checkbox"]:checked + label:after { opacity:1;}

/*info*/
#info dl { font-size:16px; line-height:1.8; position:relative;}
	#info dt { position:absolute; color:#05caac; font-weight:600;}
	#info dd {
		letter-spacing:0.05em;
		border-bottom:solid 1px #ddd;
		padding:0 0 2em 110px; margin-bottom:2em;
	}
	#info dd .title { display:block; font-size:17px; font-weight:600;}
	#info dd .title + br { display:none;}
	#info dd a .text { border-bottom:1px solid #262626; transition:all 0.2s;}
	#info dd a:hover .text { border-color:transparent;}

/*@minimum
/////////////////////////////////////////////////////////////////////*/
.minimum { background:#262626;}
.minimum #container { background:#fff;}
.minimum #ptop { display:none;}
/*404*/
#notfound { min-height:550px; font-weight:500; text-align:center; padding-top:180px;}
	#notfound h2 { font-size:45px; font-weight:500; letter-spacing:0.1em; margin-bottom:25px;}
	#notfound h2 span { color:#05caac;}
	#notfound p { font-size:20px; line-height:2; text-align:center;}
	#notfound p a { font-size:16px; border-bottom:1px solid #262626;}
	#notfound p a:active,
	.pc #notfound p a:hover,
	.sp #notfound p a.hover { border-color:#05caac; color:#05caac;}

/*@other
/////////////////////////////////////////////////////////////////////*/
.en {
	font-family:"BrandonTextWeb-Bold", 'Noto Sans JP', "Helvetica Neue", Arial, sans-serif;
	-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
}

/*bg*/
#bg { width:100%; height:100%; position:fixed; top:0; left:0; z-index:-1;}
#bg div { width:100%; height:400%; position:absolute; top:0; left:0;}
#bg div:nth-child(1) { background:url(../img/bg1.png) no-repeat center 30px; opacity:0.05;}
#bg div:nth-child(2) { background:url(../img/bg3.png) no-repeat center 0;}
#bg div:nth-child(3) { background:url(../img/bg5.png) no-repeat center 455px;}

/*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:pointer;}
.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 {
	display:block; position:relative; top:0; left:0;
	margin-left:auto; margin-right:auto;
}
.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; outline:none;}
[dir='rtl'] .slick-slide { float:right;}
.slick-slide img { display:block;}
.slick-slide.slick-loading img { display:none;}
.slick-slide.dragging img { pointer-events:none;}
.slick-initialized .slick-slide { display:block;}
.slick-loading .slick-slide { visibility:hidden;}
.slick-vertical .slick-slide { display:block; height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden { display:none;}

.slick-slider { opacity:0; transition:opacity 0.3s;}
.slick-slider.slick-initialized { opacity:1;}

/*magnific*/
.mfp-bg {
	width:100%; height:100%; background:#000;
	position:fixed; top:0; left:0; z-index:1042; overflow:hidden;
	opacity:0.7;
}
.mfp-wrap {
	width:100%; height:100%; position:fixed; top:0; left:0; z-index:1043;
	outline:none !important; -webkit-backface-visibility:hidden;
	-webkit-overflow-scrolling:touch;
}
.mfp-container {
	width:100%; height:100%; text-align:center;
	position:absolute; top:0; left:0;
	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;
	}
	.mfp-container:before { content:''; display:inline-block; height:100%; vertical-align:middle;}
	.mfp-align-top .mfp-container:before { display:none;}
.mfp-content { position:relative; display:inline-block; text-align:left; vertical-align:middle; margin:0 auto; z-index:1045;}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content { width:100%; cursor:auto;}
.mfp-ajax-cur { cursor:progress;}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor:-moz-zoom-out; cursor:-webkit-zoom-out; cursor:zoom-out;}
.mfp-zoom { cursor:pointer; cursor:-webkit-zoom-in; cursor:-moz-zoom-in; cursor:zoom-in;}
.mfp-auto-cursor .mfp-content { cursor:auto;}
.mfp-close, .mfp-arrow,
.mfp-preloader,
.mfp-counter { -webkit-user-select:none; -moz-user-select:none; user-select:none;}
.mfp-loading.mfp-figure { display:none;}
.mfp-hide { display:none !important;}
.mfp-s-ready .mfp-preloader { display:none;}
.mfp-s-error .mfp-content { display:none;}
.mfp-counter { display:none;}

button.mfp-close, button.mfp-arrow {
	display:block; cursor:pointer; border:0;outline:none;
	-webkit-box-shadow:none; box-shadow:none; -webkit-appearance:none;
	padding:0; z-index:1046 !important;
}
button::-moz-focus-inner { padding:0; border:0;}
/*close*/
.mfp-close {
	width:40px; height:40px; background:none; cursor:pointer;
	text-indent:200%; white-space:nowrap; overflow:hidden;
	position:absolute; top:-50px; right:0;
	transition:all 0.2s;
	}
	.mfp-close:before,
	.mfp-close:after {
		content:''; display:block; width:40px; height:2px;
		background:#fff;
		position:absolute; top:19px; left:1px;
		transform:rotate(-45deg);
	}
	.mfp-close:after { transform:rotate(45deg);}
/*iframe*/
.mfp-iframe-holder { padding-top:40px; padding-bottom:40px;}
.mfp-iframe-holder .mfp-content { line-height:0; width:100%; max-width:800px;}
.mfp-iframe-scaler {
	width:800px; height:900px;
	margin:0 auto; position:relative;
	overflow:hidden;
}
.mfp-iframe-scaler iframe {
	display:block; width:100%; height:100%;
	position:absolute; top:0; left:0;
	animation:fadeIn 0.5s ease both;
}
/*img*/
img.mfp-img {
	display:block; width:auto; max-width:1000px;
	height:auto; line-height:0;
	box-sizing:border-box;
	margin:0 auto;
}
.mfp-title {
	font-size:15px; font-weight:600; text-align:center;
	line-height:1.5; letter-spacing:0.05em;
	color:#f3f3f3; word-wrap:break-word;
	padding:8px 10px;
}
.mfp-image-holder .mfp-content { max-width:100%;}

/*animation*/
.mfp-zoom-in .mfp-container,
.mfp-zoom-in.mfp-bg {
	opacity:0;
	-webkit-backface-visibility:hidden;
	transition:all 0.2s ease-in-out;
}
.mfp-zoom-in.mfp-ready .mfp-container { opacity:1;}
.mfp-zoom-in.mfp-ready.mfp-bg { opacity:0.7;}
.mfp-zoom-in.mfp-removing .mfp-container,
.mfp-zoom-in.mfp-removing.mfp-bg { opacity:0;}

/*///////////modalbox///////////*/
.msg-modal .mfp-bg { background:#fff; opacity:0.9;}
.msg-modal .mfp-zoom-in.mfp-ready .mfp-container { opacity:1;}
.msg-modal .mfp-zoom-in.mfp-ready.mfp-bg { opacity:0.9;}
.msg-modal .mfp-zoom-in.mfp-removing .mfp-container,
.msg-modal .mfp-zoom-in.mfp-removing.mfp-bg { opacity:0;}
.modalbox {
	width:90%; max-width:550px; background:#fff;
	border:5px solid #222; border-radius:20px;
	margin:0 auto; position:relative;
	}
	.modalbox-inner { padding:25px 30px 30px;}
	.modalbox-inner p { font-size:16px; line-height:1.8;}
	.modalbox-inner p + p { padding-top:20px;}
	.modalbox-inner p a { color:#067a68; border-bottom:1px solid #067a68;}
	.modalbox-inner p a:hover { color:#222; border-color:#222;}
	.modalbox .btn { text-align:center; padding-top:25px;}
	.modalbox .btn a {
		display:inline-block; min-width:300px; height:42px;
		font-size:16px; font-weight:bold; line-height:41px;
		background:#05caac; color:#fff;
		padding:0 20px; position:relative;
	}
	.modalbox .btn a:hover { opacity:0.8;}
	/*close*/
	.modalbox .mfp-close {
		width:44px; height:44px;
		background:#222; border-radius:50%;
		top:-30px; right:-15px;
	}
	.modalbox .mfp-close:before,
	.modalbox .mfp-close:after { width:30px; top:21px; left:7px;}

/*@media
/////////////////////////////////////////////////////////////////////*/
@media screen and (min-width:768px) {
	br.sp { display:none;}
	/*nav*/
	#gnCover,
	#gnOpen { display:none;}
	#globalnav { padding:5px 0 10px;}
	#globalnav .content-inner .logo { display:none;}
	#globalnav .gnList { font-size:0; margin-left:-5px;}
	#globalnav .gnList > li { display:inline-block; vertical-align:top; margin-right:20px; position:relative;}
	#globalnav .gnList > li > a {
		display:block; font-size:17px; font-weight:600;
		letter-spacing:0.06em;
		padding:15px 5px; position:relative;
		cursor:pointer;
	}
	/*sub*/
	#globalnav .gnList .sub > a { padding-right:15px;}
	#globalnav .gnList .sub > a:before {
		content:""; display:block; width:0; height:0;
		border:5px solid transparent;
		border-top-color:#262626;
		border-width:9px 5px 5px 5px;
		position:absolute; top:50%; right:0;
		transform:translateY(-3px);
		transition:all 0.2s;
	}
	/*gnList-in*/
	#globalnav .gnList-in {
		min-width:135px; background:#fff;
		border:2px solid #262626; border-radius:10px;
		position:absolute; top:40px; left:-10px;
		overflow:hidden; z-index:100;
		visibility:hidden; opacity:0;
	}
	#globalnav .gnList .sub:hover .gnList-in { visibility:visible; opacity:1;}
	#globalnav .gnList .sub:hover > a { color:#05caac;}
	#globalnav .gnList .sub:hover > a:before { border-top-color:#05caac;}
	#globalnav .gnList-in li + li { border-top:1px solid #262626;}
	#globalnav .gnList-in a {
		display:block; font-size:15px; font-weight:500;
		padding:10px 15px; position:relative;
		white-space:nowrap; cursor:pointer;
	}
	/*hover/this*/
	#globalnav .gnList > li > a:hover,
	#globalnav .gnList > li > a.this { color:#05caac;}
	#globalnav .gnList .sub > a:hover:before,
	#globalnav .gnList .sub > a.this:before { border-top-color:#05caac;}
	#globalnav .gnList-in a.this { color:#05caac;}
	#globalnav .gnList-in a:hover { background:#05caac; color:#fff;}
	
	/*post*/
	.posts .tags { position:absolute; top:0; left:0;}
	.post-list .posts:nth-child(3n) { margin-right:0;}
	.article-list .post-list .posts:nth-child(3n) { margin-right:0;}
	
	.webpush-main .block-in .image.sp,
	.webpush-main .block-in .howto.sp { display:none;}
	
}

/*＠SP
/////////////////////////////////////////////////////////////////////*/
@media screen and (max-width:767px) {
	br.pc { display:none;}
	body.fixed { overflow:hidden;}
	.content-inner { max-width:100%; min-width:0;}
	
	/*header*/
	#header { padding:0;}
	#header > .content-inner { padding-top:52px;}
	#header h1 {
		transform:scale(0.65); transform-origin:0 0;
		top:13px; left:12px;
	}
	#header h1:before { top:-25px; left:95px;}
	#header .today { font-size:19px; top:14px; left:140px;}
	#header .today span { font-size:10px; transform:scale(0.9); transform-origin:top center;}
	#header .today:after { top:-35px; right:-42px;}
	/*検索*/
	#header .searchField { width:100%; background:#f5f5f5; padding:10px; position:relative; top:0; left:0;}
	#header .searchField .inner { width:80%; margin:0 auto;}
	#header .searchField input[type="text"]::-webkit-input-placeholder { top:0;}
	/*sns*/
	#header .sns { top:8px; right:50px;}
	#header .sns li { margin:0 2px;}
	#header .sns li a { width:32px; height:32px;}
	#header .sns li a:before { transform:translate(-50%, -50%) scale(0.9);}
	
	/*nav*/
	#gnCover {
		width:100%; height:100%;
		position:fixed; top:0; left:0; z-index:1000;
		overflow:hidden; display:none;
		background: rgba(0, 0, 0, 0.3);
	}
	#gnOpen {
		display:block; width:45px; height:45px;
		position:fixed; top:0; right:0; z-index:1002;
		cursor:pointer; transition:all 0.2s;
		background:#05caac;
	}
	#gnOpen span { display:inline-block; transition:all 0.4s;}
	#gnOpen .icon {
		width:20px; height:16px;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	#gnOpen .icon span { width:100%; height:2px; position:absolute; left:0; background:#fff;}
	#gnOpen .icon span:nth-of-type(1) { top:0;}
	#gnOpen .icon span:nth-of-type(2) { top:7px;}
	#gnOpen .icon span:nth-of-type(3) { bottom:0;}
	
	#globalnav .content-inner {
		width:80%; height:100%;
		background:#05caac; padding-top:45px;
		position:fixed; top:0; right:0; z-index:1001;
		overflow:hidden;
		transform:translateX(100%);
		transition:all 0.5s;
	}
	#globalnav .content-inner .logo { width:140px; height:45px; position:absolute; top:0; left:0;}
	#globalnav .content-inner .logo a {
		display:block; width:100%; height:100%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	#globalnav .content-inner .logo a:before {
		content:""; display:block; width:160px; height:32px;
		background:url(../img/parts.png) no-repeat 0 -115px;
		background-size:240px auto;
		position:absolute; top:12px; left:15px;
		transform:scale(0.65); transform-origin:0 0;
	}
	#globalnav .content-inner .logo a:after {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/parts.png) no-repeat -210px -70px;
		background-size:240px auto;
		position:absolute; top:50%; right:-5px;
		transform:translateY(-50%); margin-top:2px;
	}
	#globalnav .content-inner .inner {
		width:100%; height:100%; background:#fff;
		padding:10px 10px 50px;
		overflow:auto;
	}
	#globalnav .gnList { text-align:left; transition:all 0.5s; opacity:0;}
	#globalnav .gnList > li { border-bottom:1px solid #262626;}
	#globalnav .gnList li a {
		display:block; width:100%;
		font-size:15px; font-weight:500; line-height:1.4;
		padding:8px 30px 8px 10px; position:relative;
	}
	#globalnav .gnList li a:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts.png) no-repeat -80px -35px;
		background-size:240px auto;
		position:absolute; top:50%; right:0;
		transform:translateY(-50%) scale(0.85);
	}
	#globalnav .gnList li.sub > a:after { display:none;}
	#globalnav .gnList-in { margin-left:4em;}
	#globalnav .gnList-in li { border-top:1px dashed #262626;}
	#globalnav .gnList-in li a { font-size:15px;}
	/*open*/
	#gnOpen.active .icon span:nth-of-type(1) { transform:translateY(7px) rotate(-45deg);}
	#gnOpen.active .icon span:nth-of-type(2) { opacity:0;}
	#gnOpen.active .icon span:nth-of-type(3) { transform:translateY(-7px) rotate(45deg);}
	#globalnav .content-inner.open { transform:translateX(0);}
	#globalnav .content-inner.open .gnList { opacity:1;}
	/*hover/this*/
	#globalnav .gnList > li:not(.sub) > a:active,
	.pc #globalnav .gnList > li:not(.sub) > a:hover,
	.sp #globalnav .gnList > li:not(.sub) > a.hover,
	#globalnav .gnList > li:not(.sub) > a.this { color:#05caac;}
	#globalnav .gnList-in a.this { color:#05caac;}
	#globalnav .gnList-in a:active,
	.pc #globalnav .gnList-in a:hover,
	.sp #globalnav .gnList-in a.hover { background:#05caac; color:#fff;}
	#globalnav .gnList > li:not(.sub) > a:active,
	#globalnav .gnList-in a:active { transition:none;}
	
	/*footer*/
	#footer { padding:0 5%;}
	#footer .content-inner { min-height:0; padding:30px 0;}
	#footer .logo {
		position:relative; top:0; left:0;
		transform:scale(0.8); transform-origin:0 0;
		margin-bottom:20px;
	}
	#footer .menu { position:relative; top:0; left:0;}
	#footer .menu ul { text-align:center; padding-bottom:30px;}
	#footer .menu ul li { margin:7px 10px;}
	#footer .menu ul li a { font-size:13px;}
	#footer .copyright { transform-origin:top center; text-align:center;}
	#footer .menu .sns li { margin:7px 10px 17px;}
	#footer .menu .sns li a { font-size:12px;}
	#ptop {
		bottom:15px; right:10px;
		transform:scale(0.8);
		transform-origin:center right;
	}
	#ptop a { border-width:2px;}
	/*share*/
	#sharebtn {
		bottom:15px; right:60px;
		transform:scale(0.8);
		transform-origin:center right;
	}
	#sharebtn a { border-width:2px;}
	
	/*link*/
	.link.more { position:absolute; top:0; right:4%;}
	.link.more a { font-size:13px; padding:3px 12px 3px 2px;}
	.link.more a:before,
	.link.more a:after { transform:translateY(-50%) scale(0.9);}
	/*btn*/
	.btn.more { width:90%; margin:20px auto 0;}
	.btn.more a { height:34px;}
	.btn.more a:before { transform:translate(-50%, -50%) scale(0.8);}
	/*btn-all*/
	.btn-all { padding-top:12px;}
	.btn-all a,
	.btn-all span { width:70%; max-width:300px; font-size:14px; margin:0 auto;}
	.posts .btn-all { text-align:center; padding-left:0;}
	
	/*@cotents
	/////////////////////////////////////////////////////////////////////*/
	#contents { padding:0;}
	#content-main { display:block;}
	#main { display:block; padding-right:0; padding-bottom:50px;}
	#side { display:block; width:100%; background:#f5f5f5; padding:30px 5% 80px;}
	#main .heading { border-top-width:3px; padding:13px 3%; margin-bottom:20px;}
	#main .heading h2 { font-size:22px; letter-spacing:0.02em;}
	/*link*/
	#main .heading .link {
		position:relative; top:0; right:0;
		transform:translateY(0);
		text-align:right;
	}
	#main .heading .link a {
		font-size:13px; padding:5px 32px 6px 18px;
		margin-top:10px; position:relative;
	}
	#main .heading .link a:before { transform:translateY(-50%) scale(0.9); right:12px;}
	
	/*headline*/
	.headline-slider .slider { height:auto;}
	.headline-slider .item { height:auto; margin:0;}
	.headline-slider .item a { position:relative;}
	.headline-slider .item .pic { width:100%; height:0; padding-top:calc(9 / 16 * 100%);}
	.headline-slider .item .title { padding-bottom:8px;}
	.headline-slider .item .title h2 { font-size:18px; margin-bottom:2px;}
	.headline-slider .item .title-data,
	.headline-slider .item .title-date { font-size:11px; padding:3px 0;}
	/*arrow*/
	.headline-slider .arrows .slick-arrow { width:30px;}
	.headline-slider .arrows .slick-arrow:before { transform:translate(-50%, -50%) scale(0.6);}
	
	/*@記事一覧
	/////////////////////////////////////////////////////////////////////*/
	/*tags*/
	.posts .tags {
		transform:scale(0.8); transform-origin:bottom left;
		position:absolute; bottom:0; left:0;
	}
	
	/*box*/
	.post-list { padding-bottom:30px;}
	.post-list + .post-list { margin-top:30px;}
	.post-list > h2 { font-size:22px;}
	.post-list .posts { width:48.2%; margin:0 3.6% 30px 0;}
	.post-list .posts:nth-child(2n) { margin-right:0;}
	.post-list .posts .pic { border-radius:6px 6px 0 0;}
	.post-list .post-title { padding-left:24px;}
	.post-list .post-title h3 { font-size:14px; line-height:1.45; padding:5px 0 0 7px; margin-bottom:6px;}
	.post-list .post-title .title-data { font-size:10px; padding-left:9px;}
	.post-list .post-title .title-date { min-height:0; transform:scale(0.8); transform-origin:0 0;}
	.post-list .post-title .title-date span { letter-spacing:0.1em; margin-left:0.05em;}
	.post-list .posts .new {
		transform:scale(0.8); transform-origin:bottom right;
		bottom:3px; right:3px; padding-top:2px;
	}
	/*all*/
	.article-list .post-list .inner { padding:0 3%;}
	.article-list .post-list .posts { width:48.2%; margin:0 3.6% 30px 0;}
	.article-list .post-list .posts:nth-child(2n) { margin-right:0;}
	.article-list .post-list .post-title h3 { font-size:13px;}
	/*top*/
	.top #main { padding-bottom:20px;}
	.top .post-list { padding:0 3% 30px;}
	.top .post-list:last-child { border-bottom:none;}
	.top .post-list .posts { width:100%; margin:0;}
	.top .post-list .posts + .posts { margin-top:20px;}
	.top .post-list .posts a { display:flex;}
	.top .post-list .posts .pic { width:140px; height:79px; padding-top:0; border-radius:0;}
	.top .post-list .post-title { width:calc(100% - 140px); padding-left:35px;}
	.top .post-list .post-title h3 { line-height:1.4; padding:0;}
	.top .post-list .post-title .title-data { padding-left:0;}
	.top .post-list .post-title .title-date { left:5px;}

	/*line*/
	.post-list-line { position:relative;}
	.post-list-line .inner { padding:0 3%;}
	.post-list-line .posts { min-height:0; padding:15px 0;}
	.post-list-line .posts:nth-child(1) { min-height:0;}
	.post-list-line .posts .pic { width:140px; height:79px; border-radius:0; top:4px;}
	.post-list-line .post-title { padding-left:0;}
	.post-list-line .post-title .title-inner { min-height:80px; padding-left:150px;}
	.post-list-line .post-title h3 { font-size:14px; margin-bottom:8px;}
	.post-list-line .post-title .title-data,
	.post-list-line .post-title .title-date { font-size:10px;}
	.post-list-line .post-title .title-summary { font-size:13px;}
	
	/*article-detail*/
	.article-detail .post-list-line .posts { padding-bottom:25px;}
	.article-detail .post-list-line .post-title { padding-left:0;}
	.article-detail .post-list-line .post-title .title-inner { padding-left:175px;}
	.article-detail .post-list-line .post-title .title-date {
		transform:scale(0.8); transform-origin:0 0;
		top:4px; left:145px; min-height:0;
	}
	.article-detail .post-list-line .post-title .title-date span { letter-spacing:0.1em; margin-left:0.05em;}
	.article-detail #side { padding-bottom:50px; margin-bottom:40px;}
	
	/*ranking*/
	.ranking #main .heading { border-bottom:none; padding:15px 0 0;}
	.ranking #main .heading h2 { padding:0 3% 15px;}
	.ranking #main .heading .link { background:#262626;}
	.ranking #main .heading .link a {
		width:100%; color:#fff; background:none;
		padding:6px 32px 7px 18px; margin-top:0;
	}
	#main .heading .link a:before { background-position:-225px -95px;}
	.ranking .post-list-line .posts a { padding-left:30px;}
	.ranking .post-list-line .posts .pic { left:30px;}
	.ranking .post-list-line .posts .rank {
		width:25px; min-height:0; font-size:18px;
		padding:.55em 0 .35em 1px; top:5px;
	}
	.ranking .post-list-line .posts:nth-child(-n+3) .rank { font-size:19px; padding-bottom:.25em;}
	.ranking .post-list-line .post-title { padding-left:0;}
	
	/*@記事ページ
	/////////////////////////////////////////////////////////////////////*/
	.article-main { border-bottom:none; padding-bottom:0; margin-bottom:0;}
	.article-main:not(.intro) { margin-bottom:-15px;}
	.article-main header { border-top:none; padding:25px 4% 15px;}
	.article-main header h2 { font-size:22px; letter-spacing:0.02em; margin-bottom:15px;}
	.article-main header .title-data,
	.article-main header .title-date { font-size:12px; line-height:1.2; padding:2px 0; margin-right:0.5em;}
	.article-main header .title-data { max-width:calc(100% - 120px); letter-spacing:normal;}
	.article-main header .title-date { letter-spacing:0.02em; white-space:nowrap;}
	.article-main header .title-date:after { content:""; display:inline-block; width:110px; height:1px;}
	/*btn*/
	.article-main header .btn-push { position:absolute; bottom:17px; right:4%;}
	.article-main header .btn-push a { font-size:12px; padding:.5em 10px .55em;}
	
	/*main*/
	.article-main .main-image { padding:0;}
	.article-main .main-image .pic { border-radius:0;}
	.article-main .main-text { font-size:13px; margin:0;}
	
	.article-main .article-inner { padding:20px 5% 0;}
	.article-main .block { margin-bottom:20px;}
	.article-main .block h3 { font-size:17px; letter-spacing:0.02em; margin:25px 0 20px;}
	.article-main .block .text p { font-size:15px; line-height:1.8; letter-spacing:0.02em; padding-bottom:25px;}
	.article-main .block .text .image { padding:0 0 20px;}
	.article-main .block .text .image.col1.left { width:50%; padding-bottom:5px; margin:5px 10px 0 -5px;}
	.article-main .block .text .image.col1.right { width:50%; padding-bottom:5px; margin:5px -5px 0 10px;}
	.article-main .block .text .image.col2 { display:block;}
	.article-main .block .text .image.col2 .box { display:block; width:100%;}
	.article-main .block .text .image.col2 .box:nth-child(1) { padding-right:0;}
	.article-main .block .text .image.col2 .box:nth-child(2) { padding-left:0; margin-top:15px;}
	.article-main .block .text .image .cap { font-size:11px; line-height:1.35; letter-spacing:normal; padding:5px 0;}
	.article-main .block .text .image .enlarge:after { top:-12px; right:-11px; transform:scale(0.8);}
	.article-main .block .text .arr { padding-left:20px;}
	.article-main .block .text .arr a:before { width:8px; height:8px; top:8px; left:-20px;}
	.article-main .block .text .quote { border-radius:12px; padding:40px;}
	.article-main .block .text ol,
	.article-main .block .text ul { font-size:15px; line-height:1.6; padding:0 0 25px 20px;}
	.article-main .block .text ol li + li,
	.article-main .block .text ul li + li { margin-top:5px;}
	.article-main .block .text .note { font-size:11px; line-height:1.6;}
	.article-main .block .video { width:100%; padding-top:calc(9 / 16 * 100%);}
	.article-main .block .video span { font-size:12px; line-height:1.35; letter-spacing:normal;}
	
	/*tag*/
	.article-main .tag { padding-bottom:15px;}
	.article-main .tag li { display:inline-block; margin:0 6px 6px 0;}
	.article-main .tag li a {
		font-size:12px; letter-spacing:normal;
		padding:.4em 6px .45em 6px;
	}
	
	/*sns*/
	.article-main .share { padding:0 4% 15px;}
	.article-main .share ul li a { text-indent:110%; white-space:nowrap; overflow:hidden;}
	.article-main .share ul li a:before {
		top:50%; left:50%;
		transform:translate(-50%, -50%);
	}
	.article-main .share ul li.evernote a:before,
	.article-main .share ul li.line a:before { left:50%;}
	.article-main .share ul li.eight a:before { width:30px; background-position:-85px -150px;}
	
	/*related*/
	.related { padding:0 5% 25px;}
	.related .inner { padding:15px;}
	.related h2 { font-size:17px; margin-bottom:13px;}
	.related ul li { font-size:14px; letter-spacing:0.02em; margin-bottom:4px;}
	.related ul li .pic { width:26px; height:26px; margin-right:5px;}
	
	/*survey*/
	.survey { padding:0 5% 25px;}
	.survey .inner { font-size:14px; padding:20px 15px;}
	/*form*/
	.survey dl { display:block;}
	.survey dt,
	.survey dd { display:block;}
	.survey dt { width:100%; padding:10px 0.2em 0;}
	.survey dt:after { display:none;}
	.survey dd { padding:5px 0.2em;}
	.survey dd .item { padding:5px 0.6em 5px 0;}
	.survey label { padding-top:1px;}
	.survey input[type="text"] { width:100%;}
	.survey input[type="checkbox"] + span { padding-left:24px;}
	.survey input[type="radio"] + label { padding-left:24px;}
	.survey input[type="radio"]:checked + label::before { border-color:#05caac;}
	/**/
	.survey form .btn { width:90%; height:36px;}
	.survey form .btn input { font-size:18px;}
	.survey form .btn.done { font-size:18px;}
	
	/*intro*/
	.article-main.intro header h2 a { font-size:20px;}
	.article-main.intro .summary { min-height:0; padding:0 3% 6px 4%;}
	.article-main.intro .summary .inner { display:table; width:100%; table-layout:fixed;}
	.article-main.intro .summary .inner > div { display:table-cell; vertical-align:top;}
	.article-main.intro .summary .inner > div:nth-child(1) { width:45%; padding-top:3px;}
	.article-main.intro .summary .inner > div:nth-child(2) { width:55%; vertical-align:middle; padding-left:10px;}
	.article-main.intro .summary .pic {
		width:100%; height:0;
		padding-top:calc(9 / 16 * 100%);
		border-radius:6px;
		position:relative; top:0; left:0;
	}
	.article-main.intro .summary p {
		font-size:14px; line-height:1.45; letter-spacing:0.02em;
		-webkit-line-clamp:4; height:calc(1.45em * 4);
	}
	.article-main.intro .summary .btn-all { padding-top:10px;}
	.article-main.intro .article-inner { padding-top:20px;}
	.article-main.intro .article-inner h2 { font-size:14px; padding-left:0; margin-bottom:10px;}
	.article-main.intro .related { padding:20px 5% 0;}
	.article-main.intro .related h2 { font-size:14px;}
	.article-main.intro .related ul li { font-size:14px;}
	
	/*@特集ページ
	/////////////////////////////////////////////////////////////////////*/
	.category-main { padding-bottom:40px;}
	.category-main .pic { border-radius:0; margin-bottom:10px;}
	.category-main .pic h2 { font-size:26px; line-height:1.2; letter-spacing:0.02em; padding:10px 4%;}
	.category-main .inner { letter-spacing:0.03em; padding:10px 4% 5px;}
	.category-main .inner p { font-size:16px; line-height:1.8;}
	
	/*@視聴率
	/////////////////////////////////////////////////////////////////////*/
	#main .rating-list .heading {
		display:block; border-bottom:none;
		padding:13px 3% 10px; margin-bottom:0;
	}
	#main .rating-list .heading h2,
	.rating-list .heading .week { display:block;}
	.rating-list .heading .week { font-size:15px;  text-align:left; margin-top:7px;}
	.rating-list .heading .week > span { font-size:15px; margin-right:0.7em;}
	.rating-list .heading .week .new { font-size:12px; margin-top:-3px;}
	.rating-list .tb { display:block;}
	.rating-list .tb > div { display:block;}
	/*nav*/
	.rating-nav { width:100%;}
	.rating-nav .totop { min-height:0; background:#262626; border-bottom:none;}
	.rating-nav .totop a {
		font-size:12px; font-weight:600;
		color:#fff; text-align:center; padding:.75em 0 .85em;
	}
	.rating-nav a:before {
		display:inline-block; position:static;
		vertical-align:middle; margin:0 3px -2px 0;
	}
	.rating-nav .rnbind { display:table; width:100%; table-layout:fixed; margin-top:5px;}
	.rating-nav .bknm { display:table-cell; padding:0; position:relative;}
	.rating-nav .bknm:nth-child(1) { border-right:1px solid #777;}
	.rating-nav .bknm h3 {
		font-size:12px; color:#fff;
		text-align:center; background:#262626;
		padding:.8em 0 .7em 0; position:relative;
		cursor:pointer;
	}
	.rating-nav .bknm h3:after {
		content:""; display:inline-block; width:0; height:0;
		border:4px solid transparent;
		border-top-color:#05caac;
		border-width:7px 4px 4px 4px;
		vertical-align:middle; margin:3px 0 0 5px;
	}
	.rating-nav .bknm ul {
		width:100%; background:#ecfffc;
		position:absolute; top:100%; left:0; z-index:100;
		display:none;
	}
	.rating-nav .bknm ul li { border:1px solid #262626; border-top:none;}
	.rating-nav .bknm ul li a { font-size:13px; line-height:36px; text-align:center; padding:0;}
	/*body*/
	.rating-body { padding-left:0; padding-top:20px;}
	.rating-body .note,
	.rating-body .credit { font-size:11px; text-align:left; line-height:1.5; padding:0 16px 15px;}
	.rating-body .credit { text-align:right;}
	.rating-body .category {
		display:flex; flex-wrap:wrap;
		border-top:2px solid #262626;
		border-bottom:2px solid #262626;
		min-height:0; padding:0;
	}
	.rating-body .category li { width:25%; height:40px; border-right:1px solid #262626; position:relative;}
	.rating-body .category li:nth-child(4n) { border-right:none;}
	.rating-body .category li:nth-child(-n+4) { border-bottom:1px solid #262626;}
	.rating-body .category li a {
		width:100%; height:100%; font-size:12px; text-align:center;
		line-height:1.2; letter-spacing:0.07em;
		font-feature-settings:"palt"; padding:0;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%);
	}
	.rating-body .category li a:before { left:5px;}
	.rating-body .category li a span {
		display:inline-block; width:100%;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%);
		padding-left:4px;
	}

	.rating-body.shift .category li { width:50%; border-bottom:none;}
	.rating-body.shift .category li:nth-child(2) { border-right:none;}
	.rating-body.shift .category li a:before { left:10px;}
	
	.rating-body .block { padding:20px 0 30px;}
	.rating-body .block + .note { margin-top:-10px;}
	.rating-body .block h3 { font-size:20px; padding:0 12px;}
	.rating-body table,
	.rating-body tbody,
	.rating-body tr { display:block; width:100%;}
	.rating-body table { text-align:left;}
	
	.rating-body tr { padding:12px 5px 12px 15px;}
	.rating-body tr:nth-child(odd) { background:#f5f5f5;}
	.rating-body tr:first-child { color:#fff; background:#05caac; padding:8px 5px 8px 16px;}
	.rating-body th,
	.rating-body td { display:inline-block; width:25%; vertical-align:baseline;}
	.rating-body th { font-size:11px; line-height:1.2; padding:0;}
	.rating-body th.title { display:block; width:100%;}
	.rating-body td { font-size:13px; line-height:1.35; padding:0 3px 0 0;}
	.rating-body td.title {
		display:block; width:100%;
		font-size:14px; font-weight:600;
		padding:0; margin-bottom:5px;
	}
	.rating-body .rate { width:21%; text-align:center; padding:0;}
	.rating-body td.rate { font-size:15px; font-weight:600;}
	/*timeshift*/
	.rating-body.shift table .bunrui { font-size:11px; color:#05caac;}
	.rating-body.shift table .s { width:auto;}
	.rating-body.shift th { width:auto; margin:2px 1em 2px 0;}
	.rating-body.shift th br { display:none;}
	.rating-body.shift th.highlight { background:#00ebc7; border-radius:3px;}
	.rating-body.shift td { width:auto; margin-right:1em;}
	.rating-body.shift td.highlight { background:#c5fff6; border-radius:3px; font-weight:600;}
	.rating-body.shift td.title { width:100%;}
	.rating-body.shift table .rate { width:auto; text-align:left;}
	
	.rating-body dl.bunrui { font-size:11px; text-align:left; padding:0 16px; margin:-15px 0 20px;}
	.rating-body dl.bunrui dt { display:block; margin-bottom:7px;}
	/*notice*/
	.rating-body .notice {
		font-size:14px; line-height:1.6;
		border:1px solid #262626;
		padding:20px; margin-bottom:35px;
		
		font-size:13px; line-height:1.5;
		padding:16px 16px 20px; margin:0 16px 30px;
	}
	.rating-body .notice ul li { padding-left:1em;}
	.rating-body .notice ul li:before { content:'・';}
	.rating-body .notice dl { padding-left:2em;}
	.rating-body .notice dt { display:inline-block;}
	.rating-body .notice dd { display:inline;}
	.rating-body .notice dt { text-indent:-2em;}
	.rating-body .notice dt strong { padding-left:0.5em;}
	
	/*bknm*/
	#RatingsBknm { width:92%;}
	#RatingsBknm h1 {
		font-size:18px; letter-spacing:0.02em;
		line-height:1.35; padding:12px 50px 12px 5%;
	}
	#RatingsBknm h1 span { display:block; padding-left:0;}
	#RatingsBknm ul { padding:15px 5%;}
	#RatingsBknm ul li { width:100%; font-size:14px; line-height:1.35; letter-spacing:0.02em;}
	#RatingsBknm ul li:nth-child(2n) { margin-left:0;}
	#RatingsBknm ul li a { padding:11px 5px 10px;}
	/*close*/
	#RatingsBknm .mfp-close { top:4px; right:4px;}
	
	/*@用語集
	/////////////////////////////////////////////////////////////////////*/
	.term-list .heading .read {
		font-size:14px; white-space:normal;
		position:relative; top:0; left:0;
		transform:translateY(0);
		padding-top:10px;
	}
	.term-list .inner { padding:0 5%;}
	/*index*/
	.term-list .index { padding:0 0 10px; margin-bottom:30px;}
	.term-list .index h3 {
		width:100%; font-size:16px; text-align:left;
		background:#1ba18d;
		padding:7px 15px; margin-bottom:10px;
		position:relative; top:0; left:0;
		transform:translateY(0);
	}
	.term-list .index ul { width:100%; padding:0 5px 0 12px;}
	.term-list .index ul li a {
		display:inline-block; width:auto; height:auto;
		font-size:18px; line-height:1;
		padding:5px 6px; margin-right:0;
	}
	.term-list .index .ja li a { font-size:16px;}
	.term-list .index .en li a { padding:8px 6px 2px;}
	/*list*/
	.term-list .list-block { padding:10px 0 30px;}
	.term-list .list-block h3 { width:60px; height:60px; font-size:18px; position:relative;}
	.term-list .list-block h3 span { font-size:26px;}
	.term-list .list-block dl { padding:8px 0 12px 50px;}
	.term-list .list-block dt {
		width:50px; font-size:24px;
		position:absolute; top:15px; left:0;
	}
	.term-list .list-block dd a { font-size:14px; letter-spacing:0.02em; padding:10px 5px;}
	.term-list .list-block dd a .gnr {
		height:22px; white-space:nowrap;
		font-size:12px; font-weight:500; color:#067a68;
		position:absolute; top:50%; right:0; margin-top:-8px;
	}
	.term-list .list-block.en { padding-bottom:0;}
	.term-list .list-block.en h3 { font-size:26px; padding-top:3px;}
	.term-list .list-block.en dl { padding: 8px 0 20px 50px;}
	.term-list .list-block.en dt { font-size:27px;}
	/*detail*/
	.term-list .term-detail { min-height:0; padding:35px 20px 40px; margin:0 0 25px;}
	.term-list .term-detail:before { width:8px; height:26px; left:16px;}
	.term-list .term-detail h3 {
		font-size:19px; letter-spacing:0.05em;
		padding:7px 0 12px; margin-bottom:10px;
	}
	.term-list .term-detail h3 .gnr { font-size:13px; bottom:7px;}
	.term-list .term-detail p {
		font-size:16px; line-height:1.8;
		letter-spacing:0.08em; padding-bottom:20px;
	}
	.term-list .term-detail .credit { bottom:15px; right:20px;}
	/*btn*/
	.term-list .btn-back { width:90%; padding-bottom:0;}
	.term-list .btn-back a { font-size:18px; padding-left:15px; padding:.55em 10px .6em 15px;}
	.term-list .btn-back a:before {
		transform:translate(-50%, -50%) rotate(180deg) scale(0.7);
		margin:1px 0 0 -3.5em;
	}
	
	/*@プッシュ通知
	/////////////////////////////////////////////////////////////////////*/
	#main .webpush-main .heading { margin-bottom:20px;}
	#main .webpush-main .heading h2 { line-height:1.35; text-align:center;}
	.webpush-main .inner { font-size:15px; padding:0 3%;}
	.webpush-main .inner .lead { font-size:16px; padding-bottom:25px;}
	.webpush-main .block { padding-bottom:50px;}
	.webpush-main .block h3 { font-size:18px; line-height:1.3; padding:10px 10px 11px 40px; margin-bottom:15px;}
	.webpush-main .block h3:before { transform:translateY(-50%) scale(0.75); left:5px;}
	.webpush-main .block-in { padding:0 10px;}
	/*howto*/
	.webpush-main .block-in .howto { padding:30px 0 0;}
	.webpush-main .block-in .howto li + li { margin-top:30px;}
	.webpush-main .block-in .howto li:before { font-size:18px; top:-1px; left:0; padding-bottom:2px;}
	.webpush-main .block-in .howto li p { font-size:16px; padding-left:40px;}
	.webpush-main .block-in .howto .image { padding:10px 0 0;}
	/*info*/
	.webpush-main .info { font-size:14px; padding:20px 10px;}
	.webpush-main .info h3 { padding-bottom:5px;}
	.webpush-main .info .note li { font-size:12px;}
	.pc .webpush-main .block-in .image.sp,
	.sp .webpush-main .block-in .image.pc,
	.pc .webpush-main .block-in .howto.sp,
	.sp .webpush-main .block-in .howto.pc { display:none;}
	
	/*@TVニュース放送時間ランキング
	/////////////////////////////////////////////////////////////////////*/
	#main .tvnews-main .heading { margin-bottom:35px;}
	#main .tvnews-main .heading h2 { line-height:1.2; padding-bottom:13px;}
	.tvnews-main .heading .date {
		color:#fff; text-align:left;
		background:#262626;
		padding:4px 4% 5px; position:static;
		transform:translateY(0);
	}
	.tvnews-main .heading .week { display:inline-block; font-size:15px;}
	.tvnews-main .heading .resetdate { display:inline-block; font-size:14px; margin:0;}
	.tvnews-main .heading .note { width:100%; font-size:10px; right:0; margin-top:5px;}
	.tvnews-main .date .new { margin-left:-3px;}
	.tvnews-main .heading .date .new {
		font-size:12px;
		padding:1px 0.4em 2px 0.5em;
		margin:-3px 0.6em 0 -3px;
	}
	.tvnews-main .lead { font-size:14px; letter-spacing:normal; padding:0 4% 25px;}
	.tvnews-main .note,
	.tvnews-main .credit { font-size:11px; padding:0 4%;}
	.tvnews-main .note { text-align:left; padding-bottom:10px;}
	
	.tvnews-heading {
		min-height:0; border-bottom:none;
		padding:40px 0 0; margin-bottom:0;
		position:relative;
	}
	.tvnews-heading h3 { font-size:17px; padding:5px 4% 8px;}
	.tvnews-heading ul {
		display:flex; width:100%; text-align:center;
		border-bottom:1px solid #262626;
		position:absolute; top:0; left:0;
		transform:translateY(0);
	}
	.tvnews-heading li { display:block; width:50%;}
	.tvnews-heading li + li { border-left:1px solid #262626; margin-left:0;}
	.tvnews-heading li a { font-size:13px; padding:8px 5px;}
	.tvnews-heading li a:before {
		display:inline-block; vertical-align:middle;
		position:relative; top:0; left:0;
		margin:-3px 1px 0 0;
	}
	/*list*/
	.tvnews-list ol li { font-size:13px; padding-right:3%;}
	.tvnews-list ol li > span { height:60px; padding:10px 0;}
	.tvnews-list ol li > span:nth-child(1) { padding-left:12px;}
	.tvnews-list ol li > span:nth-child(2) { width:120px;}
	.tvnews-list ol li:before { width:40px; font-size:16px; padding-top:4px;}
	/*bknm*/
	#TVnewsBknm { width:92%;}
	#TVnewsBknm h1 {
		font-size:18px; letter-spacing:0.02em;
		line-height:1.35; padding:12px 50px 12px 5%;
	}
	#TVnewsBknm ul { padding:15px 5%;}
	#TVnewsBknm ul li { width:100%; font-size:14px; line-height:1.35; letter-spacing:0.02em; margin:0;}
	/*close*/
	#TVnewsBknm .mfp-close { top:4px; right:4px;}
	
	/*@side
	/////////////////////////////////////////////////////////////////////*/
	.side-block { max-width:450px; margin:0 auto 30px;}
	.side-block:last-child { margin-bottom:0;}
	.side-block.plugin { width:100%;}
	.side-block.other .btn-terms a { font-size:22px; padding:.52em 10px .58em 5px;}
	.side-block.other .btn-terms a:after { transform:translateY(-50%) scale(0.8);}
	.side-block.ratings .btn-archive a { padding:.55em 9px .65em;}
	
	/*@info
	/////////////////////////////////////////////////////////////////////*/
	.info #main { padding:30px 5% 70px;}
	.info #main h2 { font-size:24px;}
	.info #main h2 span { font-size:26px;}
	.info #main .inner { max-width:760px;}
	
	/*about*/
	#about { padding-bottom:10px;}
	#about p { font-size:17px; letter-spacing:0.08em; padding-bottom:25px;}
	
	/*contact*/
	#contact .inner > .attn p { font-size:14px; letter-spacing:0.02em;}
	#contact form > div { display:block;}
	#contact form > div > span { display:block;}
	#contact form > div > span:first-child { width:100%; font-size:16px; padding:0; margin-bottom:10px;}
	#contact form textarea { height:200px; line-height:1.6;}
	#contact form .btn { width:90%; margin:20px auto;}
	#contact form .btn input { font-size:20px;}
	#contact form .btn.done { font-size:20px;}
	/*attention*/
	#contact form .opt .attention { height:250px; padding:25px 20px;}
	#contact form .opt .attention h3 { font-size:14px;}
	#contact form .opt .attention p { font-size:13px;}
	/*check*/
	#contact form .opt .checkbox { padding-top:20px;}
	#contact form .opt .checkbox label {
		font-size:14px; line-height:1.3;
		font-feature-settings:"palt";
		padding: 1em 1em 1em 40px;
	}
	#contact form .opt .checkbox label:before { width:16px; height:16px; left:12px;}
	#contact form .opt .checkbox label:after { left:19px;}
	
	/*info*/
	#info dl { font-size:15px; line-height:1.7;}
	#info dt { position:static;}
	#info dd { letter-spacing:0.02em; padding:0 0 20px; margin-bottom:20px;}
	#info dd .title { font-size:16px;}
	
	/*404*/
	#notfound { min-height:300px; padding-top:100px;}
	#notfound h2 { font-size:36px; letter-spacing:0.05em;}
	#notfound p { font-size:17px;}
	#notfound p a { font-size:15px;}
	
	img.mfp-img { max-width:100%;}
	.mfp-title { font-size:13px; text-align:left; letter-spacing:0.02em;}
	.modalbox-inner { padding:25px;}
	.modalbox .btn a { min-width:0; width:100%;}
	.modalbox .mfp-close { transform:scale(0.9); top:-25px;}
}

@media screen and (max-width:360px) {
	#header > .content-inner { padding-top:50px;}
	#header h1 { transform:scale(0.6); left:10px;}
	#header .today { left:125px;}
	#header .today:after { top:-38px; right:-40px;}
	#header .sns { transform:scale(0.9); transform-origin:center right; right:45px;}
	
	#footer { padding:0 3%;}
	#footer .logo { left:2%;}
	#footer .menu .sns li { margin:7px;}
	
	#gnOpen { width:42px; height:42px;}
	#gnOpen .icon { width:18px;}
	#globalnav .gnList li a,
	#globalnav .gnList-in li a { font-size:14px;}
	#globalnav .content-inner { padding-top:42px;}
	#globalnav .content-inner .logo { height:42px;}
	#globalnav .content-inner .logo a:before { transform:scale(0.6);}
	#globalnav .content-inner .logo a:after { right:0;}
	
	.post-list-line .posts .pic { width:120px; height:68px;}
	.post-list-line .post-title .title-inner { min-height:70px; padding-left:130px;}
	.post-list-line .post-title h3 { font-size:13px; margin-bottom:8px;}
	.post-list-line .post-title .title-summary { margin-top:6px;}
	.article-list .post-list .post-title h3 { line-height:1.35;}
	.top .post-list .post-title h3 { font-size:13px;}
	
	#main .heading h2 { font-size:20px; letter-spacing:normal;}
	
	.category-main .pic h2 { font-size:24px;}
	.category-main .inner p { font-size:15px;}
	
	.rating-list .heading .week > span { display:block; margin-bottom:3px;}
	.rating-body .category li a { font-size:11px; padding-left:5px;}
	.rating-body .block h3 { font-size:18px;}
	.rating-body td { font-size:12px;}
	#RatingsBknm { width:94%;}
	#RatingsBknm ul li { font-size:13px;}
	
	.term-list .index ul li a { font-size:17px;}
	.term-list .index .ja li a { font-size:15px;}
	
	.tvnews-main .heading .date { font-size:14px;}
	.tvnews-heading h3 { font-size:17px;}
	.tvnews-heading li a { font-size:12px;}
	
	#about p { font-size:16px;}
	#contact form .opt .checkbox label { font-size:13px;}
}

@media screen and (min-width:768px) {
	.other-post.infinite-block.sp { display:none;}
}
@media screen and (max-width:767px) {
	.other-post.infinite-block.pc { display:none;}
}


/*@add ambass
/////////////////////////////////////////////////////////////////////*/
/* SNSembedキャプション*/
.article-main .block .text .tw .cap,.article-main .block .text .ig .cap,
.article-main .block .text .fb .cap, .article-main .block .text .tt .cap {
	display:block; font-size:13px; line-height:1.5;
	color:#067a68; letter-spacing:0.02em; padding:10px 0;
}

@media screen and (max-width:767px) {
	.article-main .block .text .tw .cap, .article-main .block .text .ig .cap,
	.article-main .block .text .fb .cap, .article-main .block .text .tt .cap {
		font-size: 11px;
		line-height: 1.35;
		letter-spacing: normal;
		padding: 5px 0;
	}
}

/* edge tiktok embed対応*/
@supports (-ms-ime-align: auto) {
	.tiktok-embed iframe {
		max-height: 820px !important;
	}

	@media screen and (min-width:654px) {
		.tiktok-embed iframe {
			max-height: 820px !important;
		}
	}
	@media screen and (max-width:653px) {
		.tiktok-embed iframe {
			max-height: 900px !important;
		}
	}
}