/* デフォルト共通スタイル（スマホ）*/

/****** body ******/
body {
	clear:both !important;
	width:100%;
	margin:0 auto;
	text-align:center;
	color:#333;
	font-family:'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size:0.9em;
	line-height:1.5;
}
/****** etc ******/
.red {
	color:#F00;
}
.blue {
	color:#09C;
}
.small {
	font-size:small;
}
.large {
	font-size:large;
}
.x-large {
	font-size:x-large;
}
hr {
	clear:both !important;
	border:0;
	border-top:1px solid #666;
	margin-bottom:1em;
	overflow:hidden;
}
/****** 画像を横幅全体に表示 ******/
.image {
/* 	width:100%; 相対指定にする */
}
.image img {
	display:block;
	max-width:100%;
	height:auto;
	margin:0 auto;
}
/****** #wrap ******/
#wrap {
	clear:both !important;
	width:100%;
	margin:0 auto;
	text-align:center;
}
/****** header ******/
.header {
	clear:both !important;
	width:100%;
	height:100%;
	margin:0 auto;
	text-align:center;
	padding:1em 0 0.5em 0;
}
.header h1 {
}
.header h1 img {
	max-width:95%;
}
.header h2 {
	display:none;
}
.header h3 {
	display:none;
}
.header ul {
	display:none;
}
/****** content ******/
.content {
	clear:both !important;
	width:100%;
	margin:0 auto;
	text-align:center;
	padding:0 0 0.5em 0;
}
/****** footer ******/
.footer {
	clear:both !important;
	width:100%;
	margin:0 auto;
	text-align:center;
	padding:1.5em 0 1.5em 0;
	border-top:1px solid #666;
}
.footer p {
	font-size:0.8em;
}
/****** menu ******/
.menu-box {
	clear:both !important;
	margin:1px;
	overflow: hidden;
}
#menu {
	display:none;
}
#menu li {
	display:block;
	white-space:nowrap;
}
#menu li a:link, #menu li a:visited, #menu li a:active {
	display:block;
	color:#333;
	text-decoration:none;
	background:none;
}
#menu li a:hover {
	color:#717ABA;
	text-decoration:none;
	background:none;
}
.menu1 {
	font-size:1.1em;
	font-weight:bold;
	padding:0.5em 0 0.5em 0;
	border-bottom:1px solid #717ABA;
}
.menu2 {
	font-size:1.0em;
	font-weight:normal;
	padding:0.5em 0 0.5em 0;
	border-bottom:1px solid #717ABA;
}
.menu3 {
	font-size:1.1em;
	font-weight:bold;
	padding:0.5em 0 0.5em 0;
	border-top:1px solid #666;
}
.menu4 {
	font-size:1.1em;
	font-weight:bold;
	padding:0.5em 0 0.5em 0;
	border-top:1px solid #666;
	border-bottom:1px solid #666;
}
.menu5 {
	font-size:1.0em;
	font-weight:bold;
	padding:7.5em 0 0.5em 0;
}
.menu-padding {
	border-bottom:none;
}
#toggle {
	display:block;
	position:relative;
	width:100%;
	background:#717ABA;
}
#toggle a {
	display:block;
	position:relative;
	padding:12px 0 10px;
	border-bottom:2px solid #FFF;
	color:#FFF;
	text-align:center;
	text-decoration:none;
}
#toggle:before {
	display:block;
	content:"";
	position:absolute;
	top:50%;
	left:10px;
	width:20px;
	height:20px;
	margin-top:-10px;
	background:#FFF;
}
#toggle a:before, #toggle a:after {
	display:block;
	content:"";
	position:absolute;
	top:50%;
	left:10px;
	width:20px;
	height:4px;
	background:#717ABA;
}
#toggle a:before {
	margin-top:-5px;

}
#toggle a:after {
	margin-top:3px;
}
/****** main ******/
.main {
	margin:0 auto;
	text-align:center;
	margin-bottom:5px;
	overflow:hidden;
}
.main a:link, .main a:visited, .main a:active {
	color:#333;
	text-decoration:underline;
	background:none;
}
.main a:hover {
	color:#717ABA;
	text-decoration:none;
	background:none;
}
.main a img:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
.main ul {
	clear:both !important;
	margin:0 auto;
	text-align:center;
}
.main ul li {
	float:left;
	width:49.0%;
	margin:1px;
	overflow:hidden;
}
.main ul li img {
	display:block;
	max-width:100%;
	height:auto;
	margin:0 auto;
}
#width {
	width:99.0%;
}
#width2 {
	width:99.0%;
}
#facebook {
	width:99.0%;
	border:2px solid #584C9D;
	border-radius:15px;    /* CSS3角丸 */
	-webkit-border-radius:15px;    /* Safari,Google Chrome用 */
	-moz-border-radius:15px;   /* Firefox用 */
}
/****** main2 ******/
.main2 {
	margin:0 auto;
	text-align:center;
	margin-bottom:5px;
	overflow:hidden;
}
.main2 a:link, .main2 a:visited, .main2 a:active {
	color:#333;
	text-decoration:underline;
	background:none;
}
.main2 a:hover {
	color:#717ABA;
	text-decoration:none;
	background:none;
}
.main2 a img:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
/****** pagetop ******/
.pagetop {
	clear:both !important;
	margin:0 0.5em 1em 0.5em;
	overflow: hidden;
}
.pagetop p {
	/*float:right;*/
    text-align: right;
	font-size:0.75em;
	line-height:1;
	
}

.pagetop p a{
    display:inline-block;
    background-color:#CCC8E1 !important;
	border-radius:15px;    /* CSS3角丸 */
	-webkit-border-radius:15px;    /* Safari,Google Chrome用 */
	-moz-border-radius:15px;   /* Firefox用 */
	padding:0.5em 1.5em 0.5em 1.5em;
    margin-left: 1em;
}

.pagetop p a.toHome{
    background-color:#f8b62d !important;
    margin-left: 0;
}


.pagetop p a:link, .pagetop p a:visited, .pagetop p a:active {
	color:#333;
	text-decoration:none;
	
}
.pagetop p a:hover {
	color:#717ABA;
}

.pagetop p a.toHome:hover {
	color:#956d1b;
}
/****** 表示／非表示 ******/
.sp {
	display:inherit;
}
.pc {
	display:none;
}
 @media screen and (min-width : 480px) {
/* 最小幅 480px 以上の指定（スマホ縦〜タブレット） */

}
@media screen and (min-width : 768px) {
/* 最小幅 768px 以上の指定（タブレット〜PC） */
/****** main ******/
.main {
 width:768px;
}
.main ul {
 max-width:768px;
}
.main ul li {
 float:left;
 width:24.6%;
 margin:1px;
 overflow:hidden;
}
#width {
 width:49.6%;
}
#width2 {
 float:right;
 width:49.6%;
}
#facebook {
 width:375px;
}
/****** main2 ******/
.main2 {
 width:768px;
}
/****** 表示／非表示 ******/
.sp {
 display:none;
}
.pc {
 display:inherit;
}
/****** pagetop ******/
.pagetop {
 margin:0 0 1em 0;
 overflow: hidden;
}
}
@media screen and (min-width : 1024px) {
/* 最小幅 1024px 以上の指定（PC） */

/****** header ******/
.header {
 max-width:1000px;
}
.header h1 {
 float:left;
 max-width:340px;
 text-align:left;
}
.header h1 img {
}
.header h2 {
 display:inherit;
 float:left;
 color:#999;
 font-weight:normal;
 font-size:0.8em;
 padding:1.8em 1em 0 0;
}
.header h3 {
 display:inherit;
 float:left;
 color:#717ABA;
 font-weight:normal;
 font-size:1.5em;
 padding:0.5em 0.5em 0 0;
}
.header ul {
 display:inherit;
 float:right;
 padding:0.5em 0 0 0;
}
.header ul li {
 float:left;
 *display:inline;
 *zoom:1;
 width:75px;
 font-size:0.8em;
 background-color:#CCC8E1;
 padding:0.8em 1.0em 0.8em 1.0em;
 margin-left:0.5em;
 overflow:hidden;
}
.header ul li a:link, .header ul li a:visited, .header ul li a:active {
 color:#333;
 text-decoration:none;
 background:none;
}
.header ul li a:hover {
 color:#717ABA;
 text-decoration:none;
 background:none;
}
/****** content ******/
.content {
 width:1000px;
 text-align:left;
 border-top:1px solid #666;
}
/****** side ******/
.side {
 float:left;
 width:230px;
 padding-top:1em;
}
/****** menu ******/
#menu {
 display:inherit;
}
#menu li {
 text-align:left;
}
.menu1 {
 border-bottom:none;
}
.menu2 {
 border-bottom:none;
}
.menu3 {
}
.menu4 {
}
.menu-padding {
 padding-bottom:1em;
}
#toggle {
 display: none;
}
/****** main ******/
.main {
 float:right;
 width:764px;
 border-left:1px solid #666;
 padding:5px 0 5px 5px;
 margin-bottom:0;
 overflow:hidden;
}
.main ul {
 max-width:764px;
}
/****** main2 ******/
.main2 {
 float:right;
 width:764px;
 border-left:1px solid #666;
 padding:5px 0 5px 5px;
 margin-bottom:0;
 overflow:hidden;
}
/****** footer ******/
.footer {
 width:1000px;
}
}

/****** 20220428 Top.SNS *******/
.snsBox{
    padding: 1rem;
}
.snsBox ul{
    display: grid;
    grid-template-columns: repeat(2, minmax(42px, 1fr)); 
    grid-auto-rows: 1fr;
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
}

.snsBox ul li{
    width: auto;
}
.snsBox ul li a{
    text-decoration: none !important;
}
.snsBox ul li span{
    font-size: 12px;
}

@media screen and (min-width : 768px) {
    .snsBox ul{
        grid-column-gap: 2rem;
    }
    .snsBox ul li span{
        font-size: 12px;
    }
}


/****** 20230808 .relatedCMSinfo *******/
.relatedCMSinfo ul{
    margin-bottom: 2rem;
}
.relatedCMSinfo li{
    padding: 1rem 0;
    border-bottom: 1px dashed #4d4d4d;
    
}

.relatedCMSinfo li a{
    display: flex;
    column-gap: 1.5rem;
    text-decoration: none !important;
}

.relatedCMSinfo li .titleWrap h3{
    background-color: transparent;
    border: none;
    color: #000;
    text-align: left;
    padding: 0;
    margin: 0;
    font-size: 1rem;
    font-weight: bold;
    border-radius: 0;
}
@media screen and (min-width : 768px) {
   .relatedCMSinfo li .titleWrap h3{
       font-size: 1.5em;
    }
}

.relatedCMSinfo .postthumbWrap{
    flex-shrink: 0;
    width: 135px;
    height: 135px;
    overflow: hidden;
    margin-bottom: 0;
}
.relatedCMSinfo .postthumbWrap img{
    object-fit: cover;
}
