@charset "UTF-8";
/* ------------------------------------------------
               囲碁将棋 共通css
--------------------------------------------------- */

/* PC, SP*/

.pc{
    display: block !important;
}
.pc_inline{
    display: inline-block !important;
}
.sp{
    display: none !important;
}
.sp_inline{
    display: none !important;
}
@media (max-width: 767px) {
    .pc{
        display: none !important;
    }
    .pc_inline{
        display: none !important;
    }
    .sp{
        display: block !important;
    }
    .sp_inline{
        display: inline-block !important;
    }
}


/* tag style
-----------------------------------------------------------------------------*/
/* リンク色 */
a{
	color:#3366cc;
	text-decoration:underline;
}
a:hover{
	text-decoration:none;
}
a:visited{
	color:#7733CC;
}
#top-list a{
	color:#333;
	text-decoration:none;
}
.inq-others label{ display:block; }

.anchor-position {
	margin-top: -126px;
	padding-top: 126px;
}
@media (max-width: 767px) {
	.anchor-position {
		margin-top: -60px;
		padding-top: 60px;
	}
}


/* structure
-----------------------------------------------------------------------------*/
html{
    margin-bottom:1px;
    height:100%;
	overflow-y:scroll;
	font-size: 13px;
	*font-size: small;
	*font: x-small;
}
body{
	color:#333333;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	line-height:1.4;
	text-align:center;
	word-break: break-all;
}


@media (max-width: 767px) {
	body {
		padding-top: 120px;
	}
}

/* header
-----------------------------------------------------------------------------*/
header{
    width: 100%;
	height: 126px;
	background: #fff;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 999;
}
header .header-inn {
	width: 100%;
	max-width: 900px;
    margin: 0 auto;
}
header .header-top {
	width: 100%;
	height: 78px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

/*ロゴ*/
header #logo {
	width: 360px;
	padding: 0;
}
header #logo a {
	display: block;
}
header #logo a img {
	width: 100%;
	display: block;
}
header ul.icon{
	width: 450px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
header ul.icon li{
	margin-left: 10px;
}

/* gnavi */
.gnavi{
	width: 100%;
	max-width: 900px;
	height: auto;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
.gnavi li{
	width: calc(100% / 9);
	display: block;
}
.gnavi li a {
	width: 100%;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	/* text-indent:-7123px; */
	text-decoration:none;
	overflow:hidden;
	outline: none;
	background: url(/images/header/bg_navi_pc.jpg) 0 0 repeat-x;
	background-size: auto 100%;
	box-sizing: border-box;
	position: relative;
}
.gnavi li:first-child a::before {
	content: none;
}
.gnavi li a img {
	width: 100%;
	max-width: 100px;
	margin: 0 auto;
	height: auto;
}
.gnavi li a:hover img{
	background:none !important;
	filter: alpha(opacity=100)!important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
}

@media (max-width: 900px) {
    /*ロゴ*/
	header #logo {
        width: calc(100% - 460px);
		max-width: 360px;
	}
}

@media (min-width: 768px) {
	.gnav-wrap {
		display: block !important;
	}
}
@media (max-width: 767px) {
    header {
        width: 100%;
		height: auto;
        background: #fff;
		position: absolute;
		z-index: 99999;
    }
    header .header-inn {
        width: 100%;
        max-width: initial;
        margin: 0 auto;
        padding: 0;
    }
	header .header-top {
		width: 100%;
		height: auto;
		background: #fff;
		position: relative;
        z-index: 998;
	}

    /*ロゴ*/
	header #logo {
        width: 100%;
		max-width: initial;
		height: 60px;
		padding: 0;
        margin: 0 auto;
        display: flex;
		justify-content: center;
		align-items: center;
	}
	header #logo a img {
		width: 80%;
		max-width: 360px;
		margin: 0 auto;
        display: block;
	}
	
	header .is-sticky {
		width: 100%;
		display: flex;
		align-items: center;
	}
	.is-fixed .is-sticky {
		position: fixed;
		top: 0;
		left: 0;
	}
	
	header ul.icon{
		width: calc(100% - 60px);
		padding: 0;
		display: flex;
		align-items: center;
		position: static;
		top: 0;
		left: 0;
		z-index: 99;
	}
	header ul.icon li{
		width: calc(100% / 3);
		margin-left: 0;
		margin-right: 0;
	}
	header ul.icon li a {
		width: 100%;
		height: 60px;
		padding: 0 0.5vw 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
		text-decoration: none;
	}
	.icon-contact { background: #f29600;}
	.icon-kaitori { background: #c30d23;}
	.icon-line { background: #06c755;}
	
	header ul.icon li a img{
		width: 7vw;
		max-width: 40px;
		margin-right: 1vw;
	}
	header ul.icon li a:hover img{
		width: 7vw;
		max-width: 40px;
		margin-right: 1vw;
		background: none;
		filter: alpha(opacity=100);
		-moz-opacity: 1;
		opacity: 1;
	}
	header ul.icon li a p{
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		text-align: left;
		line-height: 1.2;
	}
	
    header .gnav-wrap {
        width: 100%;
        height: 100%;
		display: none;
        padding: 120px 0 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 997;
		overflow: auto;
    }
	
    .is-fixed .gnav-wrap {
        padding: 60px 0 0;
    }
	.gnavi{
		width: 100%;
		max-width: initial;
		height: 100%;
		margin: 0 auto;
        display: block;
	}
	.gnavi li{
		width: 100%;
		display: block;
	}
	.gnavi li a {
		width: 100%;
		height: auto;
		padding: 3vw 2vw;
		display: block;
		text-decoration:none;
		overflow: hidden;
		outline: none;
		background: #346D5D;
		background-size: auto 100%;
		border-left: none;
		border-top: 1px solid #fff;
		box-sizing: border-box;
		color: #fff;
		font-size: 1.4em;
		font-weight: bold;
	}
	.gnavi li a img {
		width: 30vw;
		max-width: initial;
		margin: 0 auto;
		display: block;
		height: auto;
	}
	
	/* 開閉ボタン */
	.sp-menu-trigger {
		width: 60px;
		height: 60px;
		max-height: 60px;
		z-index: 2001;
		background: #346D5D;
		border: none;
	}
	.sp-menu-btn {
		width: 60%;
		height: 100%;
		margin: 0 auto;
		padding: 0;
		position: relative;
	}
	.sp-menu-btn span{
		display: block;
		height: 2px;
		background: #fff;
		position:absolute;
		width: 100%;
		left: 0;
		transition: 0.5s ease-in-out;	
	}
	.sp-menu-btn span:nth-child(1){
		top: calc(50% - 15%);
	}
	.sp-menu-btn span:nth-child(2){
		top: calc(50%);
	}
	.sp-menu-btn span:nth-child(3){
		top: calc(50% + 15%);
	}

	
	/*開閉ボタンopen時*/
	.is-open .sp-menu-btn span:nth-child(1) {
		top: 50%;
		transform: rotate(45deg);
		background: #fff;
	}
	.is-open .sp-menu-btn span:nth-child(2) {
		opacity: 0;
	}
	.is-open .sp-menu-btn span:nth-child(3) {
		top: 50%;
		transform: rotate(-45deg);
		background: #fff;
	}

}


/* footer
-----------------------------------------------------------------------------*/
#footer{
    width: 100%;
}
ul.footer-icon {
	display: none;
}
#footer .box-inner{
	width: 100%;
	max-width: 900px;
	margin:0 auto;
	padding: 0 0 15px;
	text-align: left;
	background: #F6F6F6;
	overflow: hidden;
}
#footer-text{
	padding: 15px 0;
	background: #fff;
}
#footer .box01{
	display:inline;
	width:370px;
	margin:0 0 0 15px;
	padding:20px 0 0;
	float:left;
}
#footer .box02{
	display:inline;
	width:500px;
	margin:0 15px 0 0;
	padding:10px 0 0;
	float:right;
	text-align:right;
	line-height:22px;
}
#copy{
	text-align:center;
	padding:10px 0;
	color:#666666;
	line-height: 1.4;
}

#footer .box-inner{
	background: #F6F6F6;
}
#pre-footer .box-inner{
	width: 100%;
	max-width:900px;
	margin: 0 auto;
	padding: 0 0 15px;
	text-align:left;
	overflow:hidden;
}
#footer-outlink{
	font-size: 10px;
	margin-top: 40px;
	margin-bottom: 40px;
}
#footer-outlink img{
	width: 220px;
	height: 80px;
	display: inline-block;
}

.box-inner.footer-description{
	text-align: right;
	width: 100%;
	max-width:900px;
	margin:0 auto;
	box-sizing: border-box;
}
.footer-description a{
	text-decoration: none;
}

@media (max-width: 767px) {
    footer {
        width: 100%;
    }
	ul.footer-icon {
		width: 100%;
		padding: 0;
		display: flex;
		align-items: center;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 99;
	}
	ul.footer-icon li{
		width: calc(100% / 3);
	}
	ul.footer-icon li a {
		width: 100%;
		height: 60px;
		padding: 0 1vw 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
		text-decoration: none;
	}
	.footer-icon-contact { background: #f29600;}
	.footer-icon-kaitori { background: #c30d23;}
	.footer-icon-line { background: #06c755;}
	
	ul.footer-icon li a img{
		width: 7vw;
		max-width: 40px;
		margin-right: 1vw;
	}
	ul.footer-icon li a p{
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		text-align: left;
		line-height: 1.2;
	}
	
	
	
	#footer-navi .gnavi li a {
		padding: 3vw;
		color: #fff;
		text-align: left;
		font-size: 1.4em;
		font-weight: bold;
		position: relative;
	}
	#footer-navi .gnavi li a:after{
		content: "";
		width: 8px;
		height: 8px;
		margin-top: -4px;
		display: block;
		position: absolute;
		top: 50%;
		right: 3vw;
		border-right: 2px solid #FFF;
		border-top: 2px solid #FFF;
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#footer-text{
		padding: 3vw;
	}
	#footer .box01{
		display:block;
		width: 100%;
		margin: 0 auto;
		padding: 3vw;
		float: none;
	}
	#footer .box02{
		display: none;
	}
	
	#copy{
		text-align:center;
		padding: 2vw;
	}

	#footer .box-inner{
		background: #F6F6F6;
	}
	#pre-footer .box-inner{
		width: 100%;
		margin: 0 auto;
		padding: 3vw;
	}

	.box-inner.footer-description{
		width: 100%;
		max-width: 900px;
		padding: 0 3vw 3vw;
	}
}


@media (max-width: 500px) {
	ul.footer-icon li a p{
		font-size: 3.5vw;
	}
}




/* レイアウト
-----------------------------------------------------------------------------*/
#container{
	width: 100%;
	max-width: 900px;
	margin: 0 auto 20px;
	overflow: hidden;
	text-align: left;
}

#contents{
	float:right;
	width:660px;
}
#contents #contents{
	float:none;
	width:auto;
}
#menu{
	float:left;
	width:220px;
	background:#fff;
}

.cont-inn {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}


@media screen and (max-width: 767px){
	#contents{
		width: 96%;
		margin: 0 auto;
		float: none;
		font-size: 120%;
	}
	#menu{
		display: none;
	}
}


/* menu detail
-----------------------------------------------------------------------------*/
.box-menu{
	background:url(../images/menu/bg01.gif) no-repeat left bottom;
	padding:0 0 5px;
}
.box-menu h2{
	background:url(../images/menu/bg01.gif) no-repeat left top;
	line-height:20px;
	padding:6px 0;
	text-align:center;
	color:#fff;
	font-weight:bold;
}
.box-menu ul.body{
	padding:5px 0 0;
}
.box-menu ul li{
	background:url(../images/common/arrow.gif) no-repeat 8px .3em;
	margin:0.5em 0;
	padding:0 5px .2em 22px;
	border-bottom:solid 1px #fff;
}
.box-menu ul li.lastChild{
	border-bottom:none;
}
.box-menubanner li{
	margin:0 0 10px;
	text-align:center;
}
.box-menulink{
	border:solid 6px #E6E6E6;
	padding:6px 4px 4px;
	overflow:hidden;
	_zoom:1;
}
.box-menulink h2{
	background:url(../images/common/arrow.gif) no-repeat 0 .1em;
	padding-left:14px;
	margin:0 0 5px;
}
.box-menulink ul li{
	background:url(../images/common/arrow02.gif) no-repeat 6px .3em;
	padding:0 0 .2em 20px;
	border-bottom:solid 1px #fff;
}
ul.box-menulink-half{

}
ul.box-menulink-half li{
	width:80px;
	float:left;
}
#menu-social{
	width:220px;
	height:95px;
	overflow:hidden;
	position:relative;
}
#menu-social .box-f1{
	width:83px;
	height:28px;
	position:absolute;
	overflow:hidden;
	top:0;
	left:21px;
}
#menu-social .box-f1 iframe{
	width:72px;
	height:28px;
	display:block;
	overflow:hidden;
    border:none;
	margin-left:5px;
}
#menu-social .box-f2{
	width:96px;
	height:28px;
	position:absolute;
	overflow:hidden;
	top:0;
	left:104px;
}
#menu-social .box-f2 iframe{
	width:96px;
	height:28px;
	display:block;
	overflow:hidden;
    border:none;
}
#menu-social .box-t1{
	width:60px;
	position:absolute;
	top:30px;
	left:30px;
}
#menu-social .box-t2{
	width:140px;
	position:absolute;
	top:30px;
	left:104px;
}
#menu-social .box-g1{
	width:60px;
	position:absolute;
	top:62px;
	left:30px;
}
#menu-social .box-g1 iframe{
	margin-left:32px !important;
}
#menu-social .box-g2{
	width:140px;
	position:absolute;
	top:62px;
	left:104px;
}


/* pankuzu detail
-----------------------------------------------------------------------------*/
ol#pankuzu{
	line-height:22px;
	padding:10px 0;
}
ol#pankuzu li{
	display:inline;
	line-height:22px;
	list-style-type:none;
}
ol#pankuzu li a{
	padding-right:10px;
	background:url(../images/common/arrow-pankuzu.gif) no-repeat right center;
}


@media (max-width: 767px) {
	ol#pankuzu{
		width: 100%;
		line-height:22px;
		padding: 2vw;
		box-sizing: border-box;
	}
	ol#pankuzu li{
		display:inline;
		line-height:22px;
		list-style-type:none;
	}
	ol#pankuzu li a{
		padding-right:10px;
		background:url(../images/common/arrow-pankuzu.gif) no-repeat right center;
	}
}



/* 検索ボックス
-----------------------------------------------------------------------------*/

#search-box{
	margin:0 0 20px;
	padding: 0 0 20px;
	border: 4px solid #5b3617;
	/* background:url(../images/blog/bg02.gif) no-repeat left bottom; */
}
#search-box h2{
	margin-bottom: 20px;
	padding: 10px 15px;
	color: #fff;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1;
	border-radius: 0;
	background: url(../images/common/bg_search_midashi.jpg) no-repeat left bottom;
	background-size: 100% 100%;
	/* background:url(../images/blog/bg02.gif) no-repeat left top; */
}
#search-box h2 img {
	width: 100%;
	max-width: 300px;
}

#search-box p {
    margin: 0 15px 10px;
}
#search-box table {
    width: 630px;
    margin: 0 15px;
}
#search-box table td {
    width: 163px;
}
#search-box table th {
    width: 467px;
}
#search-box table th input {
    width: 90%;
}


@media (max-width: 767px) {
	#search-box{
		margin: 0 0 4vw;
		padding: 0 0 3vw;
	}
	#search-box h2{
		margin-bottom: 3vw;
		padding: 1vw 3vw 2vw;
	}
	#search-box h2 img {
		width: 100%;
		max-width: 300px;
		height: auto;
	}
	#search-box table{
		width: 94%;
		margin: 0 auto;
		padding: 0;
	}
	#search-box table td{
		width: 20%;
	}
	#search-box table th{
		width: 80%;
	}
	#search-box table th input{
		width: 96%;
	}
	
	.search-area input {
		font-size: 99%
	}
}

.search-result {
	margin-bottom: 30px;
}

.search-result li a {
	font-size: 1.2em;
	line-height: 1.2;
	color: #014834;
	background: -moz-linear-gradient(top, #f4f4f4, #c3c3c3);
	background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#c3c3c3));
	margin:5px 0 20px;
	padding:5px 20px;
	display: block;
	font-weight:bold;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}
@media screen and (max-width: 767px){
	.search-result li a {
		margin-bottom:5px;
		font-size: 16px;
		display: inline-block;
		text-shadow: 1px 1px 1px #fff;
	}
}



/* module(要調整)
-----------------------------------------------------------------------------*/
/* link
------------------------------------*/
.anchor{
	text-align:right;
}
.anchor a{
	background:url(../images/common/arrow.gif) no-repeat left center;
	padding-left:14px;
}
/* アンカー */
.pagetop{
	text-align:right;
	padding:30px 0 0;
}

/* 外部リンク */
.external{
	padding:0 13px 0 0 !important;
	background:url(../images/common/icon-external.gif) no-repeat right center !important;
}
a:hover img{
	background:#fff;
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

/* table
------------------------------------*/
.box table{
	width:630px;
	border-collapse:collapse;
	border-spacing:0;
	border:solid 1px #999999;
}
.box table th{
	border:solid 1px #999999;
	background:#f6f6f6;
	padding: 8px;
	font-weight:normal;
	text-align:left;
}
.box table th.hissu{
	background-image:url(../images/common/icon-hissu.png);
	background-repeat:no-repeat;
	background-position:right center;
}
.box table td{
    border:solid 1px #999999;
	background:#fff;
	padding:8px;
	text-align:left;
}
.box table td.submit{
	background:#F2F2F2;
	width:auto;
	text-align:center;
	vertical-align:middle;
	padding:5px 0;
}
.box table td.submit input{
	vertical-align:middle;
}

.table-box {
	border: solid 1px #999999;
}
@media screen and (max-width: 767px){
	.box table{
		width:80%;
		border:none;
	}
	.box table th{
		border:none;
		background:none;
		padding:0;
	}
	.box table td{
		border:none;
		background:none;
		padding: 0;
	}
	.table-box {
		border: none;
		border-bottom: 1px solid #ccc;
	}
}

.table-list {
	display: flex;
	-webkit-align-items: center;
	        align-items: center;
	background: #F6F6F6;
}
.table-list:not(:first-child) {
	border-top: solid 1px #999999;
}
.table-list dt {
	width: 82px;
	background: #f6f6f6;
	padding: 8px;
	font-weight: normal;
	text-align: left;
}
.table-list dd {
	width: 100%;
	background: #fff;
	padding: 8px;
	text-align: left;
	border-left: solid 1px #999999;
	line-height: 18px;
}
.table-list dd .list-p {
	padding-left: 0;
	list-style: none;
}

.table-list dd img {
	vertical-align: middle;
}
@media screen and (max-width: 767px){
	.table-list {
		display: block;
		padding: 15px 0 10px;
		background: none;
		text-align: left;
	}	
	.table-list:not(:first-child) {
		border-top: solid 1px #ccc;
	}
	.table-list dt {
		width: auto;
		padding: 0 0 5px;
		background: none;
		font-weight: bold;
	}
	.table-list dd {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		width: 100%;
		padding: 0 0 0 20px;
		border-left: none;
		line-height: 20px;
	}
	.table-list dd .list-p {
		padding-top: 3px;
		list-style-type: disc;
	}
}


/* box
------------------------------------*/
.box{
	width:630px;
	margin-left:15px;
	margin-right:15px;
	margin-bottom:30px;
	overflow:hidden;
}
.boxL{
	width:660px;
	margin-bottom:30px;
	overflow:hidden;
}
.box-deco{
	background:url(../images/common/bg_box-deco.gif) no-repeat left bottom;
	padding:0 0 12px;
}
.box-deco .box-inner{
	background:url(../images/common/bg_box-deco.gif) no-repeat left top;
	padding:12px 15px 0;
}
.box-deco h2{
	font-weight:bold;
	coler:#95C1AB;
	font-size:1.2em;
	margin:0 0 5px;
	padding:0 0 3px;
	border-bottom:solid 2px #ECC845;
}
.box-deco p {
	font-size: 13px;
}
.box-deco .line-top{
	border-top:dotted 1px #333;
	padding-top:14px;
}
.box-anchor {
	width:620px;
    margin: 10px 15px 30px;
	overflow:hidden;
}
.box-anchor ul {
    border:solid 5px #EFB173;
    overflow: hidden;
    padding: 4px 5px 4px 20px;
	zoom:1;
}
.box-anchor ul li {
    float: left;
    line-height: 2;
    margin: 0 15px 0 0;
    padding: 0 15px 0 0;
    text-align: left;
}
.box-anchor ul li a {
    background: url(../images/common/arrow.gif) no-repeat left center;
    padding-left: 16px;
    white-space: nowrap;
}

@media screen and (max-width: 599px){
	.box{
		width:auto;
		margin:0 10px 30px;
	}
	.box-lead{
		margin-bottom:30px;
	}
	.box-deco{
		background: none;
		margin: 0 10px 60px;
		content: "";
		display: block;
		clear: both;
		padding: 10px;
		border: 5px double #cdb99a;
	}
	.box-deco p {
		font-size: 16px;
	}
	.box-deco .box-inner{
		background: none;
		padding:0;
	}
	.box-anchor {
		display: none;
	}
}


/* list
------------------------------------*/
/* オーダーリスト装飾 */
ul.list-p{
	padding:0 0 0 20px;
	list-style-position:outside;
	list-style-type:disc;
}
ul.list-half{
	overflow:hidden;
	zoom:1;
}
ul.list-half li{
	width:40%;
	float:left;
}
ol.list-p{
	padding:0 0 0 20px;
	list-style-position:outside;
	list-style-type:decimal;
}
* html ol.list-p{
	padding:0 0 0 30px;
}
ul.list-d li{
	background: url(../images/common/arrow.gif) no-repeat 0 0.2em transparent;
    margin: 0.5em 0;
    padding: 0 0 0.2em 14px;
}
@media screen and (max-width: 767px){
	ul.list-half{
		padding-left: 30px;
	}
	ul.list-half li{
		width:100%;
		float:none;
	}
}


/* ※印行頭揃え */
p.kome{
	padding-left:1em;
	text-indent:-1em;
}

/* font
------------------------------------*/
.midashi-h1{
	background:url(../images/common/bg_midashi-h1.gif) no-repeat left bottom;
	color:#fff;
	font-size:1.6em;
	padding:12px 0 20px 20px;
	line-height:1.2;
	font-weight:bold;
	margin:2px 0 10px;
}
.midashi-h2{
	background:url(../images/common/bg_midashi-h2.gif) repeat-x left top;
	background-size: auto 100%;
	font-size: 1.3em;
	padding: 10px 20px;
	margin: 15px auto;
	height: auto;
	line-height: 1.2;
	font-weight:bold;
	color:#7A5B2F;
	border: 1px solid #cdb99a;
}
.midashi-h2-shogi{
	height: 52px;
	margin:0 0 10px;
	padding: 15px 20px 0 55px;
	background:url(../images/common/bg_midashi-h2-shogi.gif) repeat-x left top !important;
	background-size: auto;
	border: none;
}
.midashi-h2-igo{
	height: 52px;
	margin: 0 0 10px;
	padding: 15px 20px 0 55px;
	background:url(../images/common/bg_midashi-h2-igo.gif) repeat-x left top !important;
	background-size: auto;
	border: none;
}
.midashi-h3{
	color:#7A5B2F;
	background:url(../images/common/bg_midashi-h3.gif) no-repeat left center;
	border-bottom:dotted 2px #777;
	font-weight:bold;
	font-size:1.2em;
	padding:0 0 0 24px;
	margin:0 0 10px;
}
.midashi-h2-b{
	font-size:1.2em;
	line-height:1.2;
	font-weight:bold;
	color:#7A5B2F;
	margin: 0 0 15px;
	padding: 8px 15px;
	background: linear-gradient(#cdecb4, #abd785);
	border-radius: 6px;
	/* background:url(../images/blog/bg_title.gif) no-repeat left bottom; */
}
.midashi-h2-b span{
	display:block;
	padding: 0;
	/* background:url(../images/blog/bg_title.gif) no-repeat left top; */
}
.rem{
	color:#9D0E14;
	font-weight:bold;
}
.red{
	color:#9D0E14;
}
.bold{
	font-weight:bold;
}
.large{
	font-size:108%;/*14px*/
}
.xsmall{
	font-size:85%;/*11px*/
	line-height:1.2;
}
.xxsmall{
	font-size:77%;/*10px*/
	line-height:1.2;
}

@media screen and (max-width: 767px){
	.midashi-h1{
		background: url(../images/common/bg_midashi-h1.jpg) no-repeat;
		background-size: 100% 100%;
		font-size: 24px;
		line-height:1.2;
		font-weight:bold;
		margin: 20px 0;
		padding: 10px 15px;
		height:auto;
	}
	.midashi-h2-b,
	.midashi-h2{
		height:auto;
		/* color:#ffffff;
		background: -moz-linear-gradient(top, #80a399, #014834);
		background: -webkit-gradient(linear, left top, left bottom, from(#80a399), to(#014834)); */
		font-size:120%;
		font-weight:bold;
		margin: 0 0 10px;
		padding: 10px;
	}
	.midashi-h2-b span{
		background:none;
	}
	.midashi-h2-shogi{
		height: 52px;
		margin:0 0 10px;
		padding: 15px 20px 0 55px;
		background:url(../images/common/bg_midashi-h2-shogi.gif) repeat-x left top !important;
		background-size: auto;
		border: none;
		position: relative;
	}
	.midashi-h2-igo{
		height: 52px;
		margin: 0 0 10px;
		padding: 15px 20px 0 55px;
		background:url(../images/common/bg_midashi-h2-igo.gif) repeat-x left top !important;
		background-size: auto;
		border: none;
		position: relative;
	}
	.midashi-h2-shogi::after, 
	.midashi-h2-igo::after {
		content: '';
		width: 1px;
		height: 32px;
		background: #cdb99a;
		position: absolute;
		top: 10px;
		right: 0;
	}
}


/* button
------------------------------------*/
.btn,.btn_l{
	color: #014834;/*100%*/
	/* background: -moz-linear-gradient(top, #ccdad6, #80a399);*/ /*20%,50%*/
	/* background: -webkit-gradient(linear, left top, left bottom, from(#ccdad6), to(#80a399)); *//*20%,50%*/ 
	text-shadow: 1px 1px 1px #fff;
}
@media screen and (max-width: 767px){
	.btn_l:visited{
		color: #014834;
	}
}
.btn_rem{
	color:#fff;
	background: -moz-linear-gradient(top, #F6921D, #F05A28);
	background: -webkit-gradient(linear, left top, left bottom, from(#F6921D), to(#F05A28));
	text-shadow:none;
}
@media screen and (max-width: 767px){
	.btn_rem:visited{
		color:#fff;
	}
}
.btn_rem2{
	color:#4D4D4D;
	background: -moz-linear-gradient(top, #FBF89B, #E8D22A);
	background: -webkit-gradient(linear, left top, left bottom, from(#FBF89B), to(#E8D22A));/*20%,50%*/
	text-shadow:none;
}
.btn_rem2:after{
	border-color:#4d4d4d !important;
}
@media screen and (max-width: 767px){
	.btn_rem2:visited{
		color:#4D4D4D;
	}
}

.btn_rem3{
	color:#fff;
	background: -moz-linear-gradient(top, #CC9396, #A3274B);
	background: -webkit-gradient(linear, left top, left bottom, from(#CC9396), to(#A3274B));
	text-shadow:none;
}
@media screen and (max-width: 767px){
	.btn_rem3:visited{
		color:#fff;
	}
}

@media screen and (max-width: 767px){
	.btn_rem4{
		color: #fff;
		background: #014834;
		text-shadow: none;
	}
}

.btn{
	position: relative;
	margin:5px 0;
	padding:5px 24px 5px 12px;
	display: inline-block;
	font-weight:bold;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}
.btn:after{
	border-right: 2px solid #FFF;
	border-top: 2px solid #FFF;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
	display: block;
	height: 8px;
	right: 8px;
	margin-top: -4px;
	position: absolute;
	top: 50%;
	width: 8px;
}


.center.btn-wrap {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.center.btn-wrap a img {
	width: 180px;
	height: auto;
}
@media (max-width: 767px) {
	.buttonimg{
		text-align:center;
	}
	.buttonimg li{
		margin:20px 0;
	}
	.buttonimg img{
		width:100%;
	}
	.center.btn-wrap a {
		width: 60%;
		display: block;
		margin: 0 auto 3vw;
	}
	.center.btn-wrap a img {
		width: 100%;
	}
}


/* image
------------------------------------*/
@media screen and (max-width: 767px){
	.sp-img-max {
		width: 100%;
		height: auto;
	}
}


/* Javascript
-----------------------------------------------------------------------------*/
/* spry */
input.hissu{ background:#ffeeef; }
.textfieldRequiredMsg, 
.textfieldInvalidFormatMsg, 
.textfieldMinValueMsg,
.textfieldMaxValueMsg,
.textfieldMinCharsMsg,
.textfieldMaxCharsMsg,
.textfieldValidMsg,
.textareaRequiredMsg,
.textareaRequiredMsg,
.radioRequiredMsg, .radioInvalidMsg,
.selectRequiredMsg, .selectInvalidMsg{
	display: none;
}
.textfieldRequiredState .textfieldRequiredMsg, 
.textfieldInvalidFormatState .textfieldInvalidFormatMsg, 
.textfieldMinValueState .textfieldMinValueMsg,
.textfieldMaxValueState .textfieldMaxValueMsg,
.textfieldMinCharsState .textfieldMinCharsMsg,
.textfieldMaxCharsState .textfieldMaxCharsMsg,
.textareaRequiredState .textareaRequiredMsg,
.radioRequiredState .radioRequiredMsg,
.radioInvalidState .radioInvalidMsg,
.selectRequiredState .selectRequiredMsg,
.selectInvalidState .selectInvalidMsg{
	display: block;/*(06)*/
	color: #ff0000;
	padding-left:5px;
	font-weight:bold;
	padding-left:23px;
	background:url(../images/common/icon-error.gif) no-repeat 5px center;
}
.textfieldValidState input, input.textfieldValidState,
.selectValidState select, select.selectValidState{
	background-color: #F0F8FF;/*(07)*/
}
input.textfieldRequiredState, .textfieldRequiredState input, 
input.textfieldInvalidFormatState, .textfieldInvalidFormatState input, 
input.textfieldMinValueState, .textfieldMinValueState input, 
input.textfieldMaxValueState, .textfieldMaxValueState input, 
input.textfieldMinCharsState, .textfieldMinCharsState input, 
input.textfieldMaxCharsState, .textfieldMaxCharsState input {
	background-color: #fbe7da;
}
.textfieldFocusState input, input.textfieldFocusState {
	background-color: #FFFFCC;/*(09)*/
}
.textfieldFlashText input, input.textfieldFlashText {
	color: red !important;
	padding-left:5px;
}
.textareaValidState textarea, textarea.textareaValidState {
	background-color: #F0F8FF;
}
textarea.textareaRequiredState, .textareaRequiredState textarea, 
textarea.textareaMinCharsState, .textareaMinCharsState textarea, 
textarea.textareaMaxCharsState, .textareaMaxCharsState textarea,
select.selectRequiredState, .selectRequiredState select,
select.selectInvalidState, .selectInvalidState select{
	background-color: #fbe7da;
}
.textareaFocusState textarea, textarea.textareaFocusState,
.selectFocusState select, select.selectFocusState{
	background-color: #fbe7da;
}
/* spry confirm */
.confirmRequiredMsg, 
.confirmInvalidMsg, 
.confirmValidMsg {
	display: none;
}
.confirmRequiredState .confirmRequiredMsg,
.confirmInvalidState .confirmInvalidMsg
{
	display: inline;
	color: #CC3333;
	border: 1px solid #CC3333;
}
.confirmValidState input, input.confirmValidState {
	background-color: #B8F5B1;
}
input.confirmRequiredState, .confirmRequiredState input, 
input.confirmInvalidState, .confirmInvalidState input
{
	background-color: #FF9F9F;
}
.confirmFocusState input, input.confirmFocusState {
	background-color: #FFFFCC;
}

/*PC用切り替えスイッチ（スマホ版のみ表示）*/
#switch-outer{
	text-align:center;
	display:none;
}
@media screen and (max-device-width: 1024px) {
  #switch-outer{
    display:block !important;
  }
}
#switch{
	text-align:center;
	margin:30px 0 0;
	padding-bottom:60px;
}
#switch a{
	color: #7a5b2f;/*100%*/
	background: -moz-linear-gradient(top, #e4ded5, #bcad97);/*20%,50%*/
    background: -webkit-gradient(linear, left top, left bottom, from(#e4ded5), to(#bcad97));/*20%,50%*/
    text-shadow: 1px 1px 1px #fff;
	
	width:50%;
	position: relative;
	margin:9px 0;
	padding:5px 24px 5px 12px;
	display: inline-block;
	font-weight:bold;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	font-size:30px;
}
#switch a:after{
	position: absolute;
    border-right: 2px solid #FFF;
    border-top: 2px solid #FFF;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
    display: block;
    height: 8px;
    right: 8px;
    margin-top: -4px;
    position: absolute;
    top: 50%;
    width: 8px;
}