/* CSS Document */

.sp {
	display: none;
}

/*#header, #maincontents, #footer, #sidebar mediaquery*/
@media (max-width: 767px) {
	input,select,textarea {
		width:100%;
		margin:0 auto;
		padding: 0 2px;
		box-sizing: border-box;
	}
	input,select {
		height:40px;
	}
	
	#header {
		width:auto;
		height:50px;
		z-index:1001;
	}

	#panel-btn{
		display: inline-block;
		float:left;
		position: relative;
		width: 50px;
		height: 50px;
		margin: 0;
		border-radius: 50%;
		background: #fff;
	}
	#panel-btn:hover{
		background: #fafafa;
	}
	#panel-btn-icon{
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 18px;
		height: 2px;
		margin: -1px 0 0 -9px;
		background: #231815;
		transition: .2s;
	}
	#panel-btn-icon:before, #panel-btn-icon:after{
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 18px;
		height: 2px;
		background: #231815;
		transition: .3s;
	}
	#panel-btn-icon:before{
		margin-top: -8px;
	}
	#panel-btn-icon:after{
		margin-top: 6px;
	}
	#panel-btn .close{
		background: transparent;
	}
	#panel-btn .close:before, #panel-btn .close:after{
		margin-top: 0;
	}
	#panel-btn .close:before{
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	#panel-btn .close:after{
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
	#panel {
		display: none;
		background-color: #fff;
		height: 380px !important;
		border-bottom: 2px #000 solid;
	}

	#header h1 a {
		background-position: left top;
		background-size:contain;
		height:50px;
		width:140px;
		left:55px;
	}
	#gnav {
		margin-left: 0;
		height: 300px;
		overflow: hidden;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#gnav li {
		float: none;
		padding: 0 4px;
	}
	#gnav li a {
		width:80px;
		margin: auto;
	}
	#gnav .visit a {
		background-image:url(images/header/2x-gnavhover.png);
		background-size:70px;
	}
	#gnav .presentbtn {
		background-image:url(images/header/2x-btn-present.png);
		background-size:70px;
	}
	#gnav .sheeehbtn {
		background-image:url(images/header/2x-btn-sheee.png);
		background-size:70px;
	}
	#gnav li.moretsubtn a {
		background-image:url(images/header/2x-moretsu-hover.png);
		background-size:70px;
	}
	#gnav .moretsubtn {
		background-image:url(images/header/2x-btn-moretsu.png);
		background-size:70px;
	}
	#gnav .anniv80thbtn {
		background-image:url(images/header/2x-btn-anniv80th.png);
		background-size:70px;
	}
	#gnav .manga {
		background-image:url(images/header/2x-btn-manga.png);
		background-size:70px;
	}
	#gnav .news {
		background-image:url(images/header/2x-btn-news.png);
		background-size:70px;
	}
	#gnav .game {
		background-image:url(images/header/2x-btn-game.png);
		background-size:70px;
	}
	#gnav .prof {
		background-image:url(images/header/2x-btn-profile.png);
		background-size:70px;
	}
	#gnav .kanren {
		background-image:url(images/header/2x-btn-kanren.png);
		background-size:70px;
	}
	#gnav .bakasen {
		background-image:url(images/header/2x-btn-bakasen.png);
		background-size:70px;
	}
	/*SLOTたまねぎたまちゃん*/
	#gnav li.slottamachan a {
		background-image:url(images/header/2x-slottamachan-hover.png);
		background-size:70px;
	}
	#gnav .slottamachan {
		background-image:url(images/header/2x-btn-slottamachan.gif);
		background-size:70px;
	}
	#gnav .yoshikattaten {
		background-image:url(images/header/2x-btn-yoshikattaten.png);
		background-size:70px;
	}
	#gnav .tamachan {
		background-image:url(images/header/2x-btn-tamachan.png);
		background-size:70px;
	}
	#gnav .charasearch {
		background-image:url(images/header/2x-btn-charasearch.png?ver=2);
		background-size:70px;
	}
	#gnav li.gagsta a {
		padding-top: 70px;
		height: 2.2em;
		line-height: 1.1em;
	}
	#gnav .gagsta {
		background-image: url(images/header/2x-btn-gagsta.png);
		background-size: 70px;
	}
	#gnav .bakadai {
		background-image: url(images/header/2x-btn-bakadai.png);
		background-position: center 28px;
		background-size: 100px auto;
	}
	#gnav .pre90thbtn {
		background-image: url(images/header/2x-btn-pre90th.png);
		background-position: center 30px;
		background-size: 100px auto;
	}
	#gnav .start90thbtn {
		background-image: url(images/header/2x-btn-90th.png);
		background-position: center 28px;
		background-size: 100px auto;
	}
	#gnav .fa88thbtn {
		background-image: url(images/header/2x-btn-fa88thbtn.png);
		background-position: center 28px;
		background-size: 90px auto;
	}


	/*検索フォーム*/
	#sidebar form {
		margin:inherit;
	}
	#srch,
	#sidebar #srch-name,
	#sidebar form,
	.srch-form {
		position:relative;
		top:auto;
		left:auto;
		width:94%;
		/*height:40px;*/
		margin-top:20px;
		margin-bottom:20px;
		margin-left:auto;
		margin-right:auto;
	}
	#skeyword,
	#chara-searchnav #snamekeyword,
	#srchword {
		width:87.5%;
		height: 40px;
		margin: 0;
		padding: 0 2px;
		box-sizing: border-box;
	}
	#btnsrch,
	#btnsrch-name,
	#srch-btn {
		position: absolute;
		right:0;
		left:auto;
		background-color: #b7b6b6;
		background-image:url(images/header/2x-btn-srch2.png);
		background-size:28px auto;
		background-position: 50% 50%;
		width: 12.5%;
		max-width: 40px;
		height: 40px;
	}
	#btnsrch:hover,
	#btnsrch-name:hover,
	#srch-btn:hover {
		background-position: 50% 50%;
	}
	#header .nav, #plist, #footer_r {
		display:none;
	}
	/*#tbtn {
		width: 31.25vw;
		max-width: 190px;
	}
	#tbtn a,
	#tbtn a:hover {
		width: 100%;
		background-size: 100% auto;
	}*/
	.ts-btn {
		top: 4px;
		width: 120px;
		height: 40px;
	}
	.ts-btn a {
		width:40px;
		height:40px;
	}

	#maincontents, #main, #mainwide, #footer {
		width:auto;
	}
	#main {
		min-width:94%;
		margin:auto;
		float:none;
	}
	#sidebar {
		width: 100%;
		background-color:#e6e6e6;
		margin-top:1em;
	}
	#footer {
		padding-top:0;
		margin-top:2em;
		border-top:2px solid #000;
	}
	#footer .nav {
		display:block;
		border-radius:0;
		width:100%;
		padding:6px 0;
		margin-bottom:1em;
	}
	#footer .nav .coming,
	#footer .nav a {
		display:block;
		text-align: left;
		margin: 4px;
		height:30px;
	}
	#footer .nav .ddmenu,
	#footer .nav .ddmenu-right {
		display:block;
	}
	#footer .nav .ddmenu li,
	#footer .nav .ddmenu-right li {
		height:auto;
	}
	#footer .nav .ddmenu:hover ul,
	#footer .nav .ddmenu-right:hover ul,
	#footer .nav .ddmenusub-right:hover div {
		position:static;
		transition:0.6s;
	}
	#footer_l {
		width:100%;
		height:auto;
	}
	#footer_l .footer-fujiopro,
	#footer_l .footer-list {
		float:none;
		font-size: 100%;
		text-align:center;
		padding:0;
		margin:0 auto;
		width:100%;
		height:auto;
	}
	#footer_l .footer-fujiopro {
		margin-bottom:1em;
	}
	a.fujiopro {
		display:inline-block;
	}
	#footer_l p {
		white-space:normal;
		float: none;
		padding-right: 0;
		text-align: center;
	}
	.copy {
		display:block;
	}
	#toTop {
		bottom:2em;
	}

	.tablenav {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	/*--------------------------------*/
	/* manga top*/
	/*--------------------------------*/
	#mangabgtop {
		background: url(images/news/newsbg_01.png) 50% 50% no-repeat;
		width: 100%;
		margin: 0 auto;		
	}
	#mangabgbottom {
		background: url(images/news/newsbg_04.png) 50% bottom no-repeat;
		width: 100%;
		padding-top: 40px;
	}
	.mangatop #works {
		background-position: 10px 40px;
		float: none;
		width: 100%;
	}
	.mangatop #works .mainworks {
		width: calc( 100% - 40px );
		padding: 0 0 0 40px;
	}
	.mangatop #works .mainworks .mainworks-btn {
		width: 100%;
		max-width: 300px;
		background-size: 200% auto;
	}
	.mainworks-btn.osomatsu:hover {background-position: 100% 0;}
	.mainworks-btn.akko:hover { background-position: 100% -70px; }
	.mainworks-btn.bakabon:hover { background-position: 100% -140px; }
	.mainworks-btn.ataro:hover { background-position: 100% -210px; }
	.mainworks-btn.gon:hover { background-position: 100% -280px; }
	.mainworks-btn.tamachan:hover { background-position: 100% -350px; }
	.mangatop #works .otherworks {
		width: 100%;
		margin: auto;
		padding: 40px 0;
	}
	.mangatop #works #otherworkslist {
		top: 245px;
		left: 43px;
	}
	.mangatop .play {
		float: none;
		width: 100%;
		flex-direction: column;
	}
	.mangatop .play .left {
		width: 100%;
		height: auto;
		flex-direction: column;
		margin: auto;
	}
	.left .dousite88btn {
		width: 320px;
		height: 288px;
	}
	.left .dousite88btn a {
		display: block;
		width: 320px;
		height: 288px;
		background: url(images/manga/dousite88-btn2-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .dousite88btn a:hover {
		background: url(images/manga/dousite88-btn2-hover-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .papa88btn {
		width: 320px;
		height: 288px;
		padding-bottom: 4px;
		border-bottom: 4px #aaa dotted;
	}
	.left .papa88btn a {
		display: block;
		width: 320px;
		height: 288px;
		background: url(images/manga/papa-btn2-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .papa88btn a:hover {
		background: url(images/manga/papa-btn2-hover-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}

	.left .nichiyoupapa88btn {
		width: 320px;
		height: 288px;
		padding-bottom: 4px;
		border-bottom: 4px #aaa dotted;
	}
	.left .nichiyoupapa88btn a {
		display: block;
		width: 320px;
		height: 288px;
		background: url(images/manga/nichiyoupapa-btn2-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .nichiyoupapa88btn a:hover {
		background: url(images/manga/nichiyoupapa-btn2-hover-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}

	.left .akatsukafujiodenbtn {
		width: 320px;
		height: 288px;
		padding-top: 4px;
		border-top: 4px #aaa dotted;
		padding-bottom: 4px;
		border-bottom: 4px #aaa dotted;
	}
	.left .akatsukafujiodenbtn a {
		display: block;
		width: 320px;
		height: 288px;
		background: url(images/manga/akatsukafujioden-btn-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .akatsukafujiodenbtn a:hover {
		background: url(images/manga/akatsukafujioden-btn-hover-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}

	/*
	.left .oa60sbtn {
		width: 320px;
		height: 380px;
		background: url(images/manga/oa60s-btn-bg-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .oa60sbtn a {
		display: block;
		width: 320px;
		height: 320px;
		background: url(images/manga/oa60s-btn-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	.left .oa60sbtn a:hover {
		background: url(images/manga/oa60s-btn-hover-sp.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	*/
	.mangatop .play .right {
		float: none;
		margin: auto;
		width: 320px;
	}
	.mangatop .play .right .bakadaibtn {
		width: 320px;
	}
	.mangatop .play .right .bakadaibtn .btn {
		/*border: 2px #000 solid;*/
	}
	
	/*--------------------------------*/
	/* chara-search*/
	/*--------------------------------*/

	/*chara-search-top*/
	.chara-search-list {
		margin: 24px 0;
	}
	.chara-search-icon {
		max-width: 125px;
		width: calc(100vw / 3);
		background-size: 100% auto;
	}
	.chara-search-list a p {
		font-size: 14px;
		line-height: 1.3em;
	}
	.chara-search-list a p em {
		font-size: 14px;
	}
	.lucky-chara {
		width: 100%;
		max-width: 375px;
		margin: 24px auto 12px;
	}
	.lucky-chara-wrap {
		width: 100%;
		height: auto;
		background: url(images/manga/lucky-chara-bg-sp.png) 50% bottom no-repeat;
		background-size: 375px auto;
		margin-bottom: 12px;
	}
	.lucky-chara-title {
		width: 100%;
		height: 37px;
		background: url(images/manga/lucky-chara-title-sp.png) 50% 50% no-repeat;
		background-size: 375px auto;
		position: relative;
		top: 0;
	}
	.lucky-chara-wrap .s-img {
		position: relative;
		width: 100%;
		height: auto;
		bottom: auto;
		padding-bottom: 6px;
	}
	.lucky-chara-wrap .s-img img {
		width: auto;
		height: 202px;
	}
	.lucky-chara .s-info {
		width: 100%;
	}
	.lucky-chara .s-title {
		margin: 0 0 10px;
	}
	.lucky-chara .s-the_contents {
		font-size: 14px;
		width: 94%;
		margin: 0 auto;
	}

	.chara-searchhead,
	.search-list {
		width: 100%;
	}
	.chara-searchhead {
		height:auto;
		padding-bottom: 0;
	}
	.chara-searchhead .listnav {
		/*display: none;*/
		position:static;
		justify-content: center;
	}
	.listnav {
		text-align: center;
		height:auto;
		justify-content: center;
	}
	.listnav .prev,
	.listnav .next {
		display: inline-block;
		vertical-align: baseline;
	}
	.listnav .next a {
		background-position: -97px -35px;
	}
	.listnav .prev a {
		background-position: 0 -35px;
	}
	.s-chara {
		width: 25%;
		height: 170px;
	}
	.s-chara a {
		width: 80px;
		height: 170px;
		margin: auto;
	}
	.s-chara a:hover {
		background: url(images/manga/st-list-hover.gif) center 6px no-repeat;
		background-size: 98px auto;
	}
	.s-chara a img {
		width: 60px;
		height: auto;
		margin: 0 auto;
	}
	.s-chara span {
		font-size: 12px;
		line-height: 1.4em;
		width: 60px;
		margin: auto;
	}
	.s-chara .wanted {
		font-size: 10px;
	}
	.charasrch-menu {
		width: 94%;
		margin: 0 auto;
	}
	#sidebar #srch-name {
		height: auto;
	}
	.srch-50on {
		width: 94%;
		margin-top: 20px;
		margin-bottom: 20px;
		margin-left: auto;
		margin-right: auto;
	}
	.srch-50on:before {
		content: "50音から探す";
		display: block;
		font-size: 93%;
		font-weight: bold;
		font-family: Arial,Helvetica,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	}
	.srch-50on li {
		background: url(images/hori_large2.gif) right 5px no-repeat #fff;
		box-sizing: border-box;
		border: 1px #ccc solid;
		border-bottom: none;
		height: 40px;
		line-height: 40px;
		padding-left: 10px;
	}
	.srch-50on li:last-child {
		border-bottom: 1px #ccc solid;
	}
	.work-s-on {
		background-color: #fff;
		border: 1px #ccc solid;
		box-sizing: border-box;
		box-shadow: 10px 10px #918f8f;
		width: 81.25%;
		height: 40px;
		margin: 20px auto;
		text-align: center;
		line-height: 40px;
		position: relative;
	}
	.work-s-on div {
		float: none;
		height: 40px;
		font-size: 14px;
	}
	#s-tag-open,
	#s-tag-close {
		position: absolute;
		right: 9px;
		top: 9px;
		height: 22px;
	}
	#s-tag-open {
		background: url(images/manga/s-tag-open_close.gif) 0 -22px no-repeat;
	}
	#work-s-wp-tag-cloud,
	#work-s-wp-tag-cloud.page-chara-search-title {
		background: none;
		position: inherit;
		top: auto;
		left: auto;
		width: 94%;
		height: auto;
		margin: 0 auto;
		padding-top: 0;
		overflow: auto;
		z-index:0;
	}
	#work-s-wp-tag-cloud .wp-tag-cloud,
	#work-s-wp-tag-cloud.page-chara-search-title .wp-tag-cloud {
		width: 100%;
		margin: 0 auto;
	}
	#work-s-wp-tag-cloud .wp-tag-cloud li {
		width: auto;
		height: 32px;
		line-height: 32px;
		background: #ddd;
		border-radius: 5px;
		padding: 0 0.3em;
		margin: 0.2em;
	}
	#work-s-wp-tag-cloud .wp-tag-cloud li a,
	#work-s-wp-tag-cloud .wp-tag-cloud li a:hover {
		color: #262223;
	}
	#work-s-wp-tag-cloud.page-chara-search-title .wp-tag-cloud li {
		background: #231f20;
	}
	#work-s-wp-tag-cloud.page-chara-search-title .wp-tag-cloud li a {
		color: #ccc;
	}
	#work-s-wp-tag-cloud.page-chara-search-title .wp-tag-cloud li a:hover {
		color: #fff;
	}
	.s-wantedbtn,
	.s-wantedbtn-top {
		width: 81.25%;
		margin-top: 40px;
		margin-right: auto;
		margin-left: auto;
		background-color: #262223;
	}
	.s-wantedbtn a,
	.s-wantedbtn-top a {
		width: 100%;
		height: 120px;
		padding-top: 0;
		background: url(images/manga/s-wantedbtn.gif) -110px 0 no-repeat;
		background-size: 220px auto;
	}
	.s-wantedbtn a:hover,
	.s-wantedbtn-top a:hover {
		background-position: -110px 0;
	}
	#otazune,
	#otazune-top {
		display: block;
		margin-right: 10px;
		margin-top: 10px;
		margin-left: 120px;
		font-size: 14px;
		line-height: 1.5em;
		height: auto;
		color: #fff;
	}
	#otazune em,
	#otazune-top em {
		text-decoration: underline;
		color: #fff;
	}
	.s-post {
		width: 100%;
		margin: auto;
	}
	#sset {
		margin:auto;
	}
	#s1, #s2 {
		left:50%;
		margin-left:-140px;
	}
	.s-img,
	.s-info {
		float: none;
		width: 94%;
		margin: 0 auto;
		padding: 0;
	}
	.s-img {
		text-align: center;
		height: 380px;
	}
	.s-img .attachment-full {
		width: 280px;
		height: auto;
	}
	.s-info {
		padding: 24px 0 0;
	}
	.s-title {
		text-align: center;
	}
	.work-st-list div {
		width: 25%;
		height: 70px;
		margin: 0;
		text-align: center;
	}
	.work-st-list div a img {
		box-sizing: border-box;
		width: 60px;
		height: auto;
	}
	.s-info dd {
		overflow: auto;
	}
	.listnav a.cat {
		background: url(images/manga/c_prev_next.gif) -194px -35px no-repeat;
	}
	
	/*--------------------------------*/
	/* works */
	/*--------------------------------*/

	.mangatitle {
		margin:0 0 12px;
		text-align: center;
	}

	/*--------------------------------*/
	/* bakadai */
	/*--------------------------------*/
	.omaketitle {
		width: 90%;
		height: auto;
	}
	.omaketitle h2 {
		text-align: left;
		line-height: 1.2em;
		position: relative;
		left: 0;
	}
	.omaketitle .listnav {
		display: none;
	}
	.bakadai {
		background-size: 88px auto;
	}
	.bakadai .flash-wrapper {
		width: 100%;
		height: calc(100vw * 0.75);
		position: relative;
	}
	.bakadai .flash-wrapper .btns {
		left: 0;
		top: -70px;
		right: 0;
		background-color: #cbefff;
		width: 140px;
		padding: 5px;
	}
	.bakadai .flash-wrapper .btns .btn::after {
		bottom: -27px;
		left: -8px;
		background-color: #fff;
		padding: 5px 0;
	}
	.bakadainavi {
		transform: scale(0.42) translateX(-10vw) translateY(40px);
		transform-origin: left top;
	}
	.bhimitu {
		width: 100%;
		margin-left: 0;
	}
	.bhimitu iframe {
		width: 100vw;
		height: calc(100vw * 0.658);
	}

	/*--------------------------------*/
	/* search */
	/*--------------------------------*/
	.search-wrap {
		width: 100%;
	}

	.search .s-post {
		width:94%;
		padding:0 0 3em;
		margin:auto;
	}
	.search .s-post .scont {
		width:100%;
	}
	.search .s-post h3 a, .s-match-post2 h3 a {
    	border-bottom: 1px #666 dashed;
	}
	
	/*--------------------------------*/
	/* page */
	/*--------------------------------*/

	#page {
		width:100%;
	}
	.pcontent {
		width:94%;
	}
	#main .pcontent {
		margin:0 auto;
	}

	/*--------------------------------*/
	/* ページング */
	/*--------------------------------*/
	
	.tablenav2 .page-numbers {
		margin: 0;
		width: 2.4em;
	}
	.tablenav2 .page-numbers.dots {
	    width: 1em;
	}
	.tablenav2 .page-numbers.prev {
		display: none;
	}
	.tablenav2 .page-numbers.next {
	    width: 40px;
	}

	/*--------------------------------*/
	/* news top */
	/*--------------------------------*/
	#newsbgtop,
	#newsbgbottom {
		width: 100%;
		height: 20px;
		margin: 0 auto;
		background-size: 940px auto;
		background-position: 50% 50%;
	}
	.newstop h2 {
		position: relative;
		top: 0;
		left: 0;
		margin: 10px 0 0 35px;
	}
	.newstop .headp {
		position: relative;
		top: 0;
		left: 0;
		margin: auto;
		height: 30px;
	}
	.newstop .newscontents {
		display: flex;
		flex-direction: column;
		width: 100%;
		margin: 0 auto;
	}
	.newstop .newscontents :nth-child(1) { order: 3; float: none; } /*right*/
	.newstop .newscontents :nth-child(2) { order: 1; } /*topics title*/
	.newstop .newscontents #news-topics { order: 2; float: none; } /*topics*/
	.newstop .newscontents :nth-child(4) { order: 4; float: none; } /*left*/
	#news-topics-title {
		position: relative;
		right: auto;
		width: 100%;
		overflow: hidden;
	}
	#news-topics {
		width: 98%;
		background-size: 100% auto;
		margin: 20px auto 0;
	}
	#news-topics-title h3 {
		right: auto;
		left: 165px;
	}
	#news-topics .bottom {
		width: 100%;
		background-size: 100% auto;
	}
	#news-topics ul {
		padding: 20px 10px 0;
	}
	#news-topics ul li,
	#news-topics ul li.new,
	#news-topics ul li.new .newbottom {
		width: 100%;
		background-repeat: repeat-x;
	}
	#news-topics ul li .news-cap {
		font-size: 14px;
		line-height: 1.6em;
	}
	#news-topics ul li .news-cap a {
		color: #444;
	}
	#news-topics ul li .news-date {
		text-align: right;
		color: #aaa;
	}
	.newstop .left,
	.newstop .right {
		margin: 20px auto 0;
		width: 100%;
	}
	#news-staffblog {
		width: 100%;
		background-position: 50% 189px;
	}
	#news-staffblog h3,
	#news-staffblog ul,
	#news-staffblog-bottom,
	#news-faq a,
	#news-books {
		margin: auto;
	}
	#news-staffblog ul {
		width: 100%;
		background-color: #140d0e;
		padding: 20px;
		box-sizing: border-box;
	}
	#news-staffblog ul li {
		width: 100%;
		margin: 1.25em auto;
	}
	#news-staffblog ul li a {
		font-size: 15px;
		line-height: 1.4em;
		width: 100%;
		box-sizing: border-box;
		color: #ccc;
	}
	#news-tohyo {
		width: 100%;
		margin-bottom: 20px;
	}
	#news-tohyo .kokumintohyo {
		margin: 0 auto;
	}
	#news-books .books {
		width: 100%;
		height: 113px;
		padding: 10px;
		box-sizing: border-box;
		margin: 7px 0;
	}
	#news-books .books .info {
		font-size: 14px;
		width: 135px;
	}
	#news-books .books .info a {
		color: #444;
	}
	.newstop .footp {
		width: 88%;
		background-size: 100% auto;
		padding-top: 40px;
		margin-top: 20px;
	}
	.newstop .footp a {
		float: none;
		width: 320px;
		height: 26px;
		background-size: auto 52px;
		background-position: 0 0;
		margin: auto;
	}
	.newstop .footp a:hover {
		background-position: 0 -26px;
	}

	/*--------------------------------*/
	/* topics */
	/*--------------------------------*/
	.topics h2:not(.searchtitle) {
		width: 98%;
		margin: auto;
	}
	.topics h2 a {
		width: 100%;
		background-position: 50% 50%;
		background-size: 100% auto;
	}
	.topics .blognav {
		width: 98%;
		margin: auto;
	}
	.topics .wrap {
		width: 98%;
	}
	.topics .contentswrap,
	.topics .contentswrap .headp,
	.topics .contentswrap .footp {
		width: 100%;
		background-size: 100% auto;
	}
	.topics .title a {
		line-height: 1.6em;
	}
	.topics .contents {
		width: 100%;
		box-sizing: border-box;
		word-wrap: break-word;
		overflow-wrap: break-word;
		font-size: 15px;
		line-height: 1.6em;
	}
	/*.topics .contents p br:first-of-type {
		display: none;
	}*/
	.topics .contents img {
		width: 100%;
		height: auto;
	}
	#sidebar.topics {
		float: none;
		padding-top: 0.5em
	}
	#sidebar.topics form[name="srch"] {
		height: 60px;
	}
	#sidebar.topics form[name="archive_pulldown"] {
		height: 120px;
	}
	#sidebar.topics select[name="archive_option"] {
		margin-bottom: 5px;
	}
	.topics .newposts,
	.topics .cats {
		width: 94%;
		margin: auto;
	}
	.topics .newposts dt,
	.topics .cats dt {
		background-position: 50% bottom;
		background-repeat: repeat-x;
		background-size: 200px auto;
	}
	.topics .newposts dd ul li .news-cap {
		width: calc(100% - 70px);
	}
	.topics .newposts dd ul li.news-line {
		width: 100%;
		background-repeat: repeat-x;
	}
	.topics .cats {
		margin-top: 1em;
	}
	.topics .cats dd ul {
		display: flex;
		flex-wrap: wrap;
	}
	.topics .cats dd ul li {
		margin: 0.5em;
		padding: 0.5em 1em;
		background-color: #fff;
		border-radius: 1em;
	}
	.topics .archivetitle {
		width: 100%;
		text-align: center;
	}
	.topics .archive .date-cat {
		margin: 0 0 1em;
		box-sizing: content-box;
	}
	.topics .archive .contents {
		display: flex;
	}

	.topics .archive .news-img {
		float: none;
		flex-basis: 80px;
		flex-shrink: 0;
	}
	.topics .archive .news-img img {
		width: 100%;
		height: auto;
		max-width: none;
		max-height: none;
	}
	.topics .archive .news-cap {
		float: none;
		height: unset;
		flex-basis: auto;
		margin-bottom: 0;
		margin-left: 0.75em;
		font-size: 13px;
		line-height: 1.6em;
	}
	.topics .archive .news-cap a {
		width: 100%;
		height: unset;
		color: #444;
	}
	.topics .archive .contentswrap .footp {
		background-position: 0 bottom;
	}

	/*--------------------------------*/
	/* staff blog */
	/*--------------------------------*/
	.staffblog h2 {
		width: 98%;
		height: auto;
		margin: auto;
	}
	.staffblog h2 a {
		width: 100%;
		height: 100%;
		padding-top: 36%;
		background-size: 100% auto;
		background-position: 50% 50%;
	}
	.staffblog .blognav {
		width: 98%;
	}
	.staffblog .line {
		width: 98%;
		background-size: 100% auto;
	}
	.staffblog .wrap {
		width: 98%;
		display: flex;
		flex-direction: column;
	}
	.staffblog .wrapl,
	.staffblog .wrapr {
		width: 96%;
		margin: auto;
	}
	.staffblog .contents {
		font-size: 15px;
	}
	.staffblog .contents img {
		width: 100%;
		height: auto;
	}
	.staffblog .date {
		margin-bottom: 0.5em;
	}
	.staffblog .title {
		font-weight: bold;
	}
	#sidebar.staffblog form[name="srch"] {
		height: 60px;
	}
	#sidebar.staffblog form[name="archive_pulldown"] {
		height: 120px;
	}
	#sidebar.staffblog form[name="archive_pulldown"] label {
		display: inline;
	}
	#sidebar.staffblog select[name="archive_option"] {
		margin-bottom: 5px;
	}
	.staffblog .newposts {
		width: 100%;
		background: none;
	}
	.staffblog .newposts h3 {
		margin: auto;
		padding-bottom: 10px;
		background-color: #140d0e;
	}
	.staffblog .newposts p {
		display: none;
	}
	.staffblog .newposts ul {
		width: 100%;
		padding: 20px;
		box-sizing: border-box;
		background: url(images/news/staffblog/newposts2.png) 0 0 repeat-y;
		background-size: 100% auto;
	}
	.staffblog .newposts ul li {
		width: 100%;
		min-height: 47px;
		margin: 1.25em auto;	
	}
	.staffblog .newposts ul li a {
		font-size: 15px;
		line-height: 1.4em;
		width: 100%;
		box-sizing: border-box;
		color: #ccc;
		display: block;
		padding: 10px 0 0 51px;
		background: url(images/news/sb-tofu.png) 0 0 no-repeat;
	}
	.staffblog .archivetitle {
		width: 100%;
		text-align: center;
	}
	.staffblog .archive .title a {
		width: 100%;
	}

	/*--------------------------------*/
	/* topics and staff blog menu shortcut */
	/*--------------------------------*/
	.sp.menu-shortcut {
		display: flex;
		width: 98%;
		margin: 0.5em auto 2em;
		justify-content: center;
	}
	.sp.menu-shortcut li {
		width: calc(100% / 3);
	}
	.sp.menu-shortcut li a {
		display: block;
		margin: 1em 0.25em 0;
		text-align: center;
		font-weight: bold;
		background-color: #140d0e;
		color: #ccc;
		font-size: 14px;
		line-height: 2em;
		height: 2em;
		border-radius: 5px;
		opacity: 0.33;
		transition: 0.3s;
	}
	.sp.menu-shortcut li a:hover {
		opacity: 1;
	}

	/*--------------------------------*/
	/* faq */
	/*--------------------------------*/
	#faqmain {
		width: 98%;
		margin: 150px auto 75px;
		float: none;
	}
	#faqs {
		width: 100%;
		margin: 0;
	}
	#faqs h2 {
		margin: 3em 0 0.5em 0.5em; 
	}
	#faqs h3 {
		margin: 1.5em 0 0.5em 0.5em;
	}
	#faqs dl {
		margin: 18px;
	}
	#faqs dt {
		padding-left: 2em;
		text-indent: -2em;
		padding-right: 14px;
	}
	#faqs dt span,
	#faqs dt em {
		display: inline;
		float: none;
	}
	#faqs dd {
		margin-left: 0;
	}
	#faqs dd p.anstxt,
	#faqs dd p.narrow {
		width: 100%;
		float: none;
	}
	#faqs dd p.anstxt em,
	#faqs dd p.narrow em {
		width: calc(100% - 2em);
	}
	#faqs dd img.anspapab {
		margin: 1em auto;
		display: block;
	}
	#faqs dd p.anspaparn {
		float: none;
		text-align: center;
	}
	#faqs dd p.ansimgl {
		float: none;
		margin: auto;
		text-align: center;
	}
	#faqs dd table.ansimgw th,
	#faqs dd table.ansimgw td,
	#faqs dd table.ansimgw td.anspapar {
		display: block;
		text-align: center;
	}
	#faqs dd table.ansimgw td {
		padding: 1em 0 0;
	}
	#faqs dt#q50+dd table.ansimgw tr,
	#faqs dt#q56+dd table.ansimgw tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#faqs dd table.ansimgw td img {
		max-width: 100%;
		height: auto;
		margin-top: 10px;
	}
	#faqs dd table.ansimgw td.anspapar {
		padding: 0;
	}
	#faqs dd div.sns {
		float: none;
		padding: 1em 0 0;
		display: flex;
		justify-content: center;
	}
	#faqs dd div.sns div {
		float: none;
		margin: 0;
		min-width: 130px;
		text-align: center;
	}
	#doushitedesuka {
		position: absolute;
		top: 40px;
		right: 10px;
		width: 120px;
		height: 210px;
		float: none;
		background-size: 100% auto;
	}

	/*--------------------------------*/
	/* nikki */
	/*--------------------------------*/
	.nikki .wrap {
		background: none;
		width: 98%;
		margin: auto;
	}
	.nikki .wrap .headp,
	.nikki .wrap .footp {
		background-size: 100% auto;
		width: 100%;
		height: 16px;
	}
	.nikki .wrap .headp {
		background-position: 0 top;
	}
	.nikki .wrap .footp {
		background-position: 0 bottom;
	}
	.nikki .date, .nikki .title, .nikki .contents {
		background: url(images/prof/nikki/nikkiwrap_02.png) 0 0 repeat-y;
		background-size: 100% auto;
	}
	.nikki .date, .nikki .title {
		padding: 0 20px 20px;
	}
	.nikki .title {
		text-align: left;
	}
	.nikki .contents {
		overflow: auto;
		padding: 0 20px;
	}
	.nikki .listnav {
		justify-content: center;
	}
	.listnav .thismonth img {
		width: 100%;
		height: auto;
	}
	.nikki h2 {
		mix-blend-mode: multiply;
		margin: 3%;
	}
	.nikki .nikkimenu {
		margin: 40px 3% 0;
	}
	.nikki .nikkimenu ul {
		display: flex;
		flex-wrap: wrap;
	}
	.nikki .nikkimenu ul li {
		display: flex;
		justify-content: end;
		align-items: center;
		height: 40px;
		margin: 0.25em;
		padding: 0 0.25em;
		background-color: #ddd;
		border-radius: 5px;
	}
	.nikki .nikkimenu ul a {
		display: block;
		height: 40px;
		line-height: 40px;
		padding: 0 0.25em;
		color: #000;
	}
	.nikki .nikkimenu ul li:has(.visit) {
		background-color: #fff;
	}
	.nikki .nikkimenu ul li.visit img {
		mix-blend-mode: multiply;
	}
	.nikki .photo p {
		float: none;
		margin: 0 auto;
		max-width: 100%;
	}
	.nikki .photo p img {
		max-width: 100%;
		height: auto;	
	}

	/*--------------------------------*/
	/* 関連作品 */
	/*--------------------------------*/
	.kanren-slide {
		height: auto;
	}
	.kanren-slide .chawanmushi {
		position: relative;
	}
	.kanren-slide .chawanmushi img {
		width: 100%;
		height: auto;
	}
	.kanren-slide .swiper-container,
	.kanren-slide .swiper-slide {
		width: 100%;
		height: 100vw;
	}
	.kanren-slide .swiper-slide img {
		width: 60vw;
		max-width: 320px;
		height: auto;
	}
	.kanren-banner li {
		width: 100%;
		height: auto;
		margin-bottom: 1em;
	}
	.kanren-banner li img {
		width: 90vw;
		max-width: 468px;
		height: auto;
	}

}