@charset "UTF-8";
/* CSS Document */

@media only screen and (max-width:999px){
.pd{ display:none;}
.sd{ display: block;}
.fll,.flr { float: none;}
.cont_img {
	text-align: center;
	width: 100%;
	height: auto;
}
/*------------------------------------------------------------------------

layout

------------------------------------------------------------------------*/
.wrapper {
	width: auto;
	padding: 0px;
}
.content_box {
	width: auto;
	margin: 0;
	padding: 0 10px;
}
/*------------------------------------------------------------------------

headline

------------------------------------------------------------------------*/
h1 {
	max-width: 640px;
	margin: 0 auto;
}
h1 img {
	width: 100%;
	height: auto;
}
h2 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 2.2rem;
	font-weight: bold;
}

h3.headline01 {
	margin: 0 0 10px;
	text-align: left;
}
h3.headline02 {
	font-size: 1.8rem;

}
h3.headline03 {
	font-size: 1.8rem;
}
/*------------------------------------------------------------------------

header

------------------------------------------------------------------------*/
header {
	padding: 0 !important;
	height: 45px;
	z-index: 99;
}
header .logo {
	margin: 10px 0 0;
}
header .logo img {
	width: 150px;
	height: auto;
}
/*------------------------------------------------------------------------

main_visual

------------------------------------------------------------------------*/
.main_visual {
	min-width: 100%;
	margin: 0;
	padding: 45px 0 0;
	text-align: center;
	background: #4577bb;
}
.main_visual_inner {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	background: none;
}
/*------------------------------------------------------------------------

main_cont

------------------------------------------------------------------------*/
.dl_area {
	margin: 0 0 20px;
	padding: 10px 0;
}
.dl_area_inner {
	width: 300px;
	margin: 0 auto;
	padding: 00;
}
.dl_area_inner li {
	margin: 0 10px 0 0;
	text-align: center;
}
.dl_area_inner li img {
	height: 45px;
	width: auto;
}
.dl_area02 p {
	font-size: 1.2rem;
}
.top_text {
	margin: 0 0 30px;
	font-size: 1.4rem;
	text-align: justify;
}
/*------------------------------------------------------------------------

content_area

------------------------------------------------------------------------*/
.top_area section {
	padding: 40px 0;
}
.top_area section .content_area {
	display: block;
	width: 100%;
}
.top_area section .content_area li {
	width: auto;
	display: block;
	vertical-align: middle
}
.top_area section .content_area li:first-child {
	padding: 0 0 10px;
}
.top_area section .content_area li:nth-child(2) {
	padding: 0;
}
.top_area section .content_area li.img {
	text-align: center;
}
.top_area section .content_area li img {
	max-width: 475px;
	width: 100%;
	height: auto;
}
.main_cont section:last-child p {
	font-size: 1.4rem;
	line-height: 1.8em;
}
.main_cont section:last-child p.tac {
	text-align: left !important;
}
.top_area section:nth-child(even) .content_area li.text p {
	margin: 0 0 20px;
}
section.next {
	padding: 40px 0;
}
section.next .content_box {
	padding: 0 10px;
}
/*------------------------------------------------------------------------

qa

------------------------------------------------------------------------*/
.qa_area section {
	margin: 0 0 30px;
	padding: 0 0 30px;
	border-bottom: solid 1px #aaa;
}
.qa_area section dl dt {
    margin: 0 0 20px;
	padding: 0 0 0 45px;
    font-size: 1.8rem;
	text-align: justify;
}
.qa_area section dl dd {
	padding: 0 0 0 45px;
	text-align: justify;
}
.qa_area section dl dd::before {
    font-size: 1.8rem;
}
/*------------------------------------------------------------------------

premium

------------------------------------------------------------------------*/
.premium_dl ul {
	width: 300px;
}
.premium_dl ul li {
	float: none;
	margin: 0 0 20px;
}
.premium_dl a {
	padding: 10px 0;
}
.premium_dl p.caution {
	padding: 0 10px;
	text-align: left;
}
.premium_area .recomend_list li {
	width: 100%;
	margin: 0 10px 0 0;
	padding: 10px;
	float: none;
	border: none;
	border-bottom: solid 1px #ddd;
}
.premium_area .recomend_list li dl {
	display: table;
}
.premium_area .recomend_list li dl dt,.premium_area .recomend_list li dl dd {
	display: table-cell;
	text-align: left;;
	vertical-align: middle;
}
.premium_area .recomend_list li dl dt {
	width: 50px;
	padding: 0 20px 0 0;
}
.premium_area .recomend_list li dl dt img {
	width: 100%;
}
.premium_area table {
	width: 100%;
}
.premium_area table tr {
	display: block;
	margin: 0 0 20px;
}
.premium_area table tr th {
	width: auto;
	display: none;
}
.premium_area table tr td {
	width: auto;
	display: block;
	margin: -1px 0 0;
	padding: 10px 20px;
}
.premium_area table tr td:first-child {
	background: #ccc;
}
.guide_area .guide_indexarea section {
	width: auto;
	margin: 0 0 20px;
	float: none;
}
.guide_area .guide_indexarea section ul li {
	margin: 0 0 10px;
	padding: 0 0 10px 1em;
	text-indent: -1em;
	font-size: 1.4rem;
	list-style: inside disc;
	border-bottom: dotted 1px #aaa;
}
/*------------------------------------------------------------------------

footer

------------------------------------------------------------------------*/
.disc_area {
	margin: 0;
	padding: 10px 0;
	text-align:justify;
	font-size: 1.2rem;
}
.footer_list {
	background: #03357a;
	margin: 0;
}
.footer_list li {
	display: block;
	padding: 0;
}
.footer_list li a {
	display: block;
	width: 50%;
	float: left;
	padding: 7px 0;
	color: #fff;
	text-decoration: none;
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	box-sizing: border-box;
	
	font-size: 1.2rem;
}
.footer_list li:nth-child(even) a {
	border-right: none;
}
.footer_list li:last-child a {
	border-bottom: none;
}
.copy {
	font-size: 1.0rem;
}
/*------------------------------------------------------------------------

スライドナビゲーション

------------------------------------------------------------------------*/
.overlay {
	content: "";
	display: block;
	width: 0;
	height: 0;
	background-color: rgba(0, 0, 0, 0.5);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	transition: opacity .5s;
}
.overlay.open {
	width: 100%;
	height: 100%;
	opacity: 1;
}
main {
	height: 100%;
	min-height: 100vh;
	padding: 0 50px;
	background-color: #eee;
	transition: all .5s;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
main.open {
	transform: translateX(-250px);
}
.menu-trigger {
	display: inline-block;
	width: 25px;
	height: 20px;
	vertical-align: middle;
	cursor: pointer;
	position: fixed;
	top: 10px;
	right: 10px;
	z-index: 100;
	/*   transform: translateX(0);
	transition: transform .5s;*/
}
/* .menu-trigger.active {
	transform: translateX(-250px);
}*/
.menu-trigger span {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #666;
	transition: all .5s;
}
.menu-trigger.active span {
	background-color: #666;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(12px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
	top: 8px;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-5px) rotate(45deg);
}
nav {
	width: 250px;
	height: 100%;
	padding-top: 70px;
	background-color: rgba(255, 255, 255, 0.9);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	transform: translate(250px);
	transition: all .5s;
}
nav.open {
	transform: translateZ(0);
}
.topSp_navi li a {
	position: relative;
	display: block;
	margin: 0 0 20px;
	padding: 10px 20px;
}
.topSp_navi li a:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -7px;
    right: 20px;
    width: 10px;
    height: 10px;
    border-top: #333 2px solid;
    border-right: #333 2px solid;
    transform: rotate(45deg);
}
.topSp_navi li:last-child a {
	margin: 0;
}
/*------------------------------------------------------------------------

SNSボタン

------------------------------------------------------------------------*/
.sns_btn {
	display: none;
	position: static;
	right: 0;
	bottom: 0;
	width: auto;
	padding: 0;
	background: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.sns_btn_spn {
	 display: block;
 }
.ninja_onebutton_output {
	display: none;
}
}