@charset "utf-8";

@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//use.fontawesome.com/releases/v5.0.6/css/all.css);

/*
	font-family:"FontAwesome";
	font-family:"Font Awesome 5 Free";
*/


/*========================================
 Base
========================================*/
html {font-size:62.5%;}
body {font-size:1.2rem;}
.ColorRed {color:#f7608b;}
.Font16 {font-size:1.6rem;}
.Font13 {font-size:1.3rem;}


/* PC */
@media screen and (min-width: 641px) {
body{
    background:url(../images/bg.png) no-repeat center center;
    background-size:cover;
    height:100%;
    text-align:center;
}
.spOnly {display:none;}


/* header */
header{
    width:1080px;
    margin:0 auto 20px;
}
nav ul{
    display:flex;
    flex-wrap:wrap;
    width:1000px;
    margin:-20px auto 0;
}
nav li{
    flex-grow:1;
    margin:0;
    padding:10px 0;
    font-size:32px;
    font-weight:bold;
    color:#ccc;
}
nav li a{
    display:block;
    padding:10px 0;
    color:#fff;
    text-align:center;
    text-decoration:none;
}
nav li a::before{
    content:url(../images/nav_off.png);
    position:relative;
    top:8px;
    margin-right:4px;
}
nav li a:hover {color:#1d2087;}
nav li a:hover::before {content:url(../images/nav_on.png);}


.absBnr{
	position:relative;
	background:rgba(255, 255, 255, 0.6);
	width:336px;
	height:74px;
	margin:20px auto 50px;
	padding:10px 20px;
	text-align:left;
	border:7px double #1d2087;
}
.absBnr img {margin-right:9px;}
.absBnr span{
	position:absolute;
	top:37px;
    font-size:2.2rem;
}
.absBnr a{
	font-weight:bold;
	color:#1d2087;
	text-shadow:none;
}
.absBnr a:hover {color:#fff;}
.absBnr a:hover img {opacity:0.7;}


/* 説明 */
.wrap1000{
    position:relative;
    background:url(../images/bg1000_top.png) center top no-repeat;
    width:1000px;
    margin:0 auto;
    padding:60px 20px 0;
    text-align:left;
    line-height:1.7;
}
.wrap1000::after{
    content:"";
    display:block;
    background:url(../images/bg1000_btm.png) center top no-repeat;
    width:1000px;
    height:60px;
    margin:0 auto;
    padding:60px 0 0;
}
.wrapMdl{
    background:url(../images/bg1000_mdl.png) center top repeat-y;
    font-size:1.8rem;
}
.wrapMdl p {padding:0 40px 12px;}


/* 概要 */
.popBox{
    position:relative;
	overflow:hidden;
    width:1000px;
    margin:0 auto;
    padding:20px;
    font-size:1.4rem;
    line-height:2rem;
    box-sizing:border-box;
    z-index:10;
}
.popBox li{
	float:left;
	width:calc(100% / 4 - 20px);
	margin:0 10px 20px;
	padding:8px 8px 0;
    list-style:none;
	border:1px solid #1aa0e5;
    box-sizing:border-box;
}
.Tit{
    width:60%;
    margin:0 auto 10px;
    padding:0 0 8px !important;
    font-size:3.4rem;
    font-weight:bold;
    color:#1d2087;
    text-align:center;
    line-height:1;
    border-bottom:2px solid #00aca8;
}
.Tit::before{
    content:url(../images/nav_on.png);
    position:relative;
    top:8px;
    margin-right:4px;
}

.popBox p{
	text-align:center;
	line-height:1;
}
.popBox p.popImg{
	display:block;
    padding:0;
	vertical-align:bottom;
	line-height:0;
}
.popBox p.popImg img {width:100%;}
.popBox p.Title{
	display:flex;
	justify-content:center;
	align-items:center;
    background:#1d2087;
	padding:3px 1em;
	font-size:1.3rem;
    font-weight:bold;
	color:#fff;
	line-height:1.1;
	text-align:left;
}
.popBox p.Name{
	display:flex;
	justify-content:center;
	align-items:center;
    background:#92d0d2;
	padding:4px;
	font-size:1.1rem;
    color:#1d2087;
	line-height:1.4;
	text-align:left;
}
.popBox p.Link, .popBox p.noLink{
	height:36px;
	margin-bottom:8px;
    padding:0 !important;
}
.popBox p.noLink a {display:none;}
.popBox p.Link a{
	display:block;
	background:#31b89a;
	padding:10px 3px;
	font-size:1.4rem;
	color:#fff;
	text-decoration:none;
	border:1px solid #31b89a;
}
.popBox p.Link a::before{
	display:inline-block;
	content:"▲";
	margin-right:2px;
	font-size:1.2rem;
	transform:rotate(90deg);
}
.popBox p.Link a:hover{
    background:#fff;
    color:#00aca8;
    transition:0.4s;
	border:1px solid #00aca8;
}
.BookImg{
    position:absolute;
    bottom:92px;
    right:41px;
}


footer{
    width:980px;
    margin:30px auto;
}
footer .copyright {color:#fff;}
footer .copyright ul {overflow:hidden;}
footer .copyright li{
    display:inline-block;
    margin:0 2em 6px 0;
}
#footerGroup #totop{
    width:40px;
    height:40px;
    padding:0;
    text-indent:-9999px;
    background-color:#0079c7;
    border-radius:100%;
    position:fixed;
    bottom:10px;
    right:0;
    z-index:800;
    display:none;
    cursor:pointer;
}
#footerGroup #totop a {display:block;}
#footerGroup #totop::after{
    content:"\f106";
    font-family:"FontAwesome";
    font-size:40px;
    line-height:35px;
    text-indent:0;
    text-align:center;
    color:#fff;
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
}



}




/* スマホ */
@media screen and (max-width: 640px) {
.pcOnly {display:none;}

body{
    background:url(../images/bg.png) no-repeat center center;
    background-size:cover;
    height:100%;
    text-align:center;
}


/* header */
header{
    width:94%;
    margin:0 auto 20px;
}
header .spOnly img {width:100%;}
nav ul{
    display:flex;
    flex-wrap:wrap;
    width:100%;
    margin-top:-20px;
}
nav li{
    flex-grow:1;
    margin:0;
    padding:10px 0;
    font-size:20px;
    font-weight:bold;
    color:#ccc;
}
nav li a{
    display:block;
    padding:10px 0;
    color:#fff;
    text-align:center;
    text-decoration:none;
}
nav li a::before{
    content:"";
    position:relative;
    top:4px;
    display:inline-block;
    background:url(../images/nav_off.png) right bottom no-repeat;
    background-size:20px;
    width:20px;
    height:20px;
    margin-right:3px;
}


.absBnr{
	position:relative;
	background:rgba(255, 255, 255, 0.6);
	width:90%;
	margin:20px auto 50px;
	padding:10px 0;
	text-align:center;
	border:7px double #1d2087;
}
.absBnr span{
	display:block;
    font-size:1.8rem;
}
.absBnr a{
	font-weight:bold;
	color:#1d2087;
    text-decoration:none;
	text-shadow:none;
}


/* 説明 */
.wrap1000{
    position:relative;
    margin:0 auto;
    padding:0 10px;
    text-align:left;
    line-height:1.7;
}
.wrap1000::before{
    content:"";
    display:block;
    background:url(../images/bg1000_top.png) center top no-repeat;
    background-size:100%;
    width:100%;
    height:16px;
    margin:0;
    padding:0;
}
.wrapMdl{
    background:url(../images/bg1000_mdl.png) center top repeat-y;
    background-size:100%;
    margin:0;
    font-size:1.3rem;
    line-height:1.5;
}
.wrap1000::after{
    content:"";
    display:block;
    background:url(../images/bg1000_btm.png) center top no-repeat;
    background-size:100%;
    width:100%;
    height:30px;
    margin:0;
    padding:0;
}
.wrapMdl p {padding:0 40px 12px;}


/* 概要 */
.popBox{
	overflow:hidden;
    width:100%;
    margin:0 auto;
    padding:20px;
    font-size:1.4rem;
    line-height:2rem;
    box-sizing:border-box;
}
.popBox li{
	float:left;
	width:calc(100% / 2 - 10px);
	margin:0 5px 20px;
	padding:0;
    list-style:none;
	border:1px solid #1aa0e5;
    box-sizing:border-box;
}
.Tit{
    width:60%;
    margin:0 auto 10px;
    padding:0 0 8px !important;
    font-size:2rem;
    font-weight:bold;
    color:#1d2087;
    text-align:center;
    line-height:1;
    border-bottom:2px solid #00aca8;
}
.Tit::before{
    content:"";
    background:url(../images/nav_on.png) no-repeat;
    background-size:26px;
    position:relative;
    top:8px;
    display:inline-block;
    width:30px;
    height:30px;
    margin-right:4px;
}

.popBox p{
	text-align:center;
	line-height:1;
}
.popBox p.popImg{
	display:block;
    padding:0;
	vertical-align:bottom;
	line-height:0;
}
.popBox p.popImg img {width:100%;}
.popBox p.Title{
	display:flex;
	justify-content:center;
	align-items:center;
    background:#1d2087;
	padding:3px 1em;
	font-size:1.3rem;
    font-weight:bold;
	color:#fff;
	line-height:1.1;
	text-align:left;
}
.popBox p.Name{
	display:flex;
	justify-content:center;
	align-items:center;
    background:#92d0d2;
	padding:4px;
	font-size:1.1rem;
    color:#1d2087;
	line-height:1.4;
	text-align:left;
}
.popBox p.Link, .popBox p.noLink{
	background:#31b89a;
    padding:0 !important;
	border:1px solid #31b89a;
}
.popBox p.Link::before{
	display:inline-block;
	content:"▲";
    position:relative;
    top:17px;
	margin-right:2px;
	font-size:1.2rem;
    color:#fff;
    vertical-align:top;
	transform:rotate(90deg);
}
.popBox p.noLink a {display:none;}
.popBox p.Link a{
	display:inline-block;
	padding:10px 3px;
	font-size:1.3rem;
	color:#fff;
	text-decoration:none;
}
.BookImg{
    position:absolute;
    bottom:22px;
    right:0;
}



/* topへ戻る */
footer{
    width:96%;
    margin:20px auto;
}
#footerGroup #totop{
    width:40px;
    height:40px;
    padding:0;
    text-indent:-9999px;
    background-color:#0079c7;
    border-radius:100%;
    position:fixed;
    bottom:10px;
    right:0;
    z-index:800;
    display:none;
    cursor:pointer;
}
#footerGroup #totop a {display:block;}
#footerGroup #totop::after{
    content:"\f106";
    font-family:"FontAwesome";
    font-size:40px;
    line-height:35px;
    text-indent:0;
    text-align:center;
    color:#fff;
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
}

}




