
/*===============================================
　SP iPhone6以上（画面の横幅が761pxまで）
===============================================*/

@media (max-width:761px){
	
	/* ============================================================
 	main
	==============================================================*/
    
	#main_wrap{
		width: 100%;
		padding: 80px 0 20px;
		position: relative;
	}

	#f_box{
		background:#fff;
		border:1px solid #dadbdc;
		border-radius:8px;
		overflow:hidden;
		margin: 0 5%;
	}
    
    #f_box ul.regi_list{
		padding: 16px 60px;
		background:#e8f0fe;
	}

	#f_box ul.regi_list li:first-child{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		font-size: 1.8rem;
		color: #51a1fb;
		text-align: center;
		letter-spacing:0.1rem;
		padding: 2px 20px;
		border-bottom: 1px solid #51a1fb;
	}

	#f_box ul.regi_list li:last-child{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		color: #51a1fb;
		text-align: center;
		letter-spacing:0.1rem;
		padding: 4px 0;
	}
    
    #f_box p.regi_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		line-height: 160%;
		font-size: 1.5rem;
		letter-spacing:0.1rem;
		color: #202020;
		padding: 6px 9px 6px;
		background: #e8f0fe;
	}
	
	#f_box .input_wrap{
		padding:40px 20px
	}
    
    #f_box .error_wrap{
		background:#ffebeb;
		border-radius: 8px;
		padding:20px 30px 20px;
		margin:0 0 20px;
	}

	#f_box .error_wrap h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:600;
		font-size: 1.8rem;
		letter-spacing:0.1rem;
		color: #d21c1c;
	}

	#f_box p.error_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		line-height: 140%;
		font-size: 1.4rem;
		letter-spacing:0.1rem;
		color: #202020;
		padding: 5px 0 8px;
	}
    
    #f_box .line_box{
		border-top:1px solid #959595;
		border-bottom:1px solid #959595;
		padding:20px 20px;
		margin:10px 0 20px
	}

	#f_box p.body_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		line-height: 160%;
		font-size: 1.4rem;
		letter-spacing:0.1rem;
		color: #202020;
	}

	#f_box p.pb{
		padding:0 0 30px;
	}

	#f_box p.note_txt_s{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		line-height: 140%;
		font-size: 1.3rem;
		text-indent: -1em;
		letter-spacing:0.1rem;
		color: #202020;
		padding: 16px 0 20px 1em;
	}
	
	#f_box h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.8rem;
		color: #fff;
		text-align: center;
		letter-spacing:0.1rem;
		line-height:140%;
		padding: 16px 0 18px;
		background:#51a1fb;
	}

	#f_box p.note_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		letter-spacing:0.1rem;
		color: #51a1fb;
		padding:5px 0 0;
	}
    
    p.note_txt_er{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		font-size: 1.4rem;
		line-height:140%;
		letter-spacing:0.1rem;
		color: #e52424;
		padding:5px 0 0;
	}

	#f_box p.note_txt span{
		font-weight:600;
	}
    
    #f_box p.id_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.3rem;
		letter-spacing:0.1rem;
		color: #818283;
		text-align: center;
		margin: 0 0 10px;
	}
    
    #f_box p.privacy_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		line-height: 140%;
		font-size: 1.2rem;
		text-align: center;
		letter-spacing:0.1rem;
		color: #202020;
		padding: 16px 0 20px;
	}

	#f_box p.privacy_txt a{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		letter-spacing:0.1rem;
		color: #fb5151;
		position: relative;
	}

	#f_box p.add_pass{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		text-align: center;
		letter-spacing:0.1rem;
		color: #202020;
		margin: -18px 0 40px;
	}

	#f_box p.add_pass a{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		letter-spacing:0.1rem;
		color: #51a1fb;
		position: relative;
	}

	#f_box p.add_pass a:before{
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		background:#51a1fb;
		position: absolute;
		bottom:-2px;
		left: 50%;
		transform:translate(-50%, 0);
	}
	
    #f_box table{
		border-bottom: 1px solid #dfdfe0;
		width: 100%;
		margin: 0 0 30px;
	}

	#f_box table th{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		font-size: 1.6rem;
		color:#202020;
		border: 1px solid #d4d6db;
		padding: 4px 0 5px 0;
		display: block;
	}

	#f_box table th span{
		display:none;
	}

	#f_box table td{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		padding: 20px 10px 40px;
		white-space: nowrap;
		display: block;
	}

	#f_box table td.pb_reset{
		padding: 20px 10px 0;
		margin:0 0 -10px;
	}


	

	/* ============================================================
 	FORM
	==============================================================*/

	.input_box_a{
		width:3em;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		background:#e8f0fe;
		padding: 6px 16px;
		border:1px solid #dadada;
		border-radius:2px;
	}
    
    .input_box_a_er{
		width:3em;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		background:#e8f0fe;
		padding: 6px 16px;
		border:1px solid #e52424;
		border-radius:2px;
	}
	
	.input_box_b{
		width: 100%;
		box-sizing: border-box;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.6rem;
		background:#e8f0fe;
		padding: 7px 20px 8px;
		border:1px solid #dadada;
		border-radius:2px;
	}
    
    .input_box_b_er{
		width: 100%;
		box-sizing: border-box;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.6rem;
		background:#e8f0fe;
		padding: 7px 20px 8px;
		border:1px solid #e52424;
		border-radius:2px;
	}
	
	input:focus {
	  outline:solid 1px #51a1fb !important;
	}
    
    .input_box_a_er:focus,.input_box_b_er:focus{
		outline:solid 1px #e52424 !important;
	}

	::placeholder {
	  color:#818283;
	  font-size: 1.3rem;
	}


	/* ============================================================
 	BTN
	==============================================================*/

	
	.btn_a li{
		text-align: center;
		margin: 0 40px;
	}
	.btn_a a{
		display:inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.5rem;
		color:#fff;
		padding: 10px 40px 12px;
		line-height:100%;
		background:#51a1fb;
		border-radius:20px;
	}
    
    .btn_c{
		display:flex;
		justify-content: center;
	}

	.btn_c li{
		margin: 0 4px;
	}

	.btn_c a{
		display:inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		color:#fff;
		padding: 10px 30px 12px;
		line-height: 130%;
		text-align: center;
		background:#51a1fb;
		white-space: nowrap;
		border-radius: 40px;
	}
    
    .btn_c li:first-child a{
		background:#95a4b4;
	}

	.btn_c li.delete a{
		background:#d497b1;
	}
    
    .btn_plus li{
		text-align: right;
	}

	.btn_plus a{
		display:inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.5rem;
		color:#fff;
		padding: 4px 32px 9px;
		line-height:100%;
		background:#51a1fb;
		border-radius:20px;
	}

	.btn_plus a span{
		display:inline-block;
		font-weight: 600;
		font-size: 1.8rem;
		vertical-align: text-top;
		padding: 4px 5px 0 0;
	}

	.btn_plus a{
		transition: all 0.4s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}

	.btn_plus a:hover{
		background:#053075;
	}

	.btn_pdf li{
		text-align: center;
		margin: 16px 0 6px;
	}
    
    .btn_pdf a{
		display:inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.5rem;
		color:#fff;
		padding: 7px 40px 10px 50px;
		line-height:100%;
		background:#eb8a8a;
		border-radius:20px;
		position:relative;
	}

	.btn_pdf a span{
		width: 20px;
		display:block;
		position:absolute;
		left: 20px;
		top: 6px;
	}
    
    
    /* ============================================================
 	login / news / mypage
	==============================================================*/
	
	#login #main_wrap.no_main_fix{
		padding: 80px 0 100px;
	}
	
	#login h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.5rem;
		line-height: 100%;
		color:#000;
		letter-spacing: 0.1rem;
		padding: 0 0 50px;
	}

	#login h1.sub_ttl{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:500;
		font-size: 2.0rem;
		line-height: 140%;
		color:#000;
		letter-spacing: 0.1rem;
		padding: 0 0 0 10px;
		margin:0 0 20px;
		border-left:4px solid #164bc3;
	}
    
    #login h1.sub_ttl2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:500;
		font-size: 2.6rem;
		line-height: 140%;
		color:#000;
		letter-spacing: 0.1rem;
		text-align: center;
		padding: 0;
		margin: 100px 0 20px;
	}

	#login h1 span{
		display: inline-block;
		margin: 0 8px 0 0;
		font-family: 'Roboto', sans-serif;
		font-weight: 600;
		letter-spacing: 0.1rem;
		font-size: 4.4rem;
	}

	#login p.b_txt{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		line-height: 160%;
		letter-spacing: 0.1rem;
		padding: 0 0 50px;
	}
    
    #login p.b_txt2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		line-height: 160%;
		letter-spacing: 0.1rem;
		padding: 0 0 50px;
	}

	/* === news ================================================*/

	#login .eng_txt_wrap{
		display:none;
	}

	#news_list{
		margin: 0 0 40px 0;
	}

	#news_list li{
		margin: 0 0 10px 0;
	}

	#news_list li a{
		display: block;
		background:#fff;
		padding: 26px 30px;
		border-radius:6px;
	}

	#news_list time{
		font-family: 'Roboto', sans-serif;
		font-weight: 600;
		line-height: 100%;
		letter-spacing: 0.1rem;
		font-size: 1.3rem;
		color:#000;
		white-space: nowrap;
	}

	#news_list h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		line-height: 140%;
		letter-spacing: 0.1rem;
		font-size: 1.5rem;
		color:#164bc3;
		white-space: nowrap;
		padding: 10px 0 20px;
	}

	#news_list p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		line-height: 140%;
		letter-spacing: 0.1rem;
		font-size: 1.5rem;
		margin: -4px 0 0 0;
	}

	#news_list a{
		transition: all 0.4s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}

	#news_list a:hover{
		background:#d0e0fb;
	}
    
    #page_nav{
		width:100%;
		display: flex;
		justify-content:center;
		margin: 20px 0 50px;
	}
	
	#page_nav li{
		padding: 0 1%;
	}
	
	#page_nav li a{
		display: block;
		font-family: 'Montserrat', sans-serif;
		font-weight:300;
		width:34px;
		text-align: center;
		padding: 11px 0;
		height:1em;
		font-size: 1.2rem;
		line-height: 100%;
		border-radius:50%;
		position:relative;
		transition: all 0.5s ease 0s;
	}


	#page_nav li.act a{
		background:#51a1fb;
		color:#fff;
	}
    
    #page_nav li.first_p a:after{
    	content: "";
		display: block;
		width: 8px;
		height:8px;
		border-right:solid 1px #78808d;
		border-bottom:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 60%;
		transform:translate(-50%, -50%) rotate(135deg);
    }
    #page_nav li.first_p a:before{
    	content: "";
		display: block;
		width: 1px;
		height:14px;
		border-right:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 40%;
		transform:translate(-50%, -50%);
    }

    #page_nav li.prev_p a:after{
    	content: "";
		display: block;
		width: 8px;
		height:8px;
		border-right:solid 1px #78808d;
		border-bottom:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 56%;
		transform:translate(-50%, -50%) rotate(135deg);
    }

    #page_nav li.last_p a:after{
    	content: "";
		display: block;
		width: 8px;
		height:8px;
		border-right:solid 1px #78808d;
		border-bottom:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 46%;
		transform:translate(-50%, -50%) rotate(-45deg);
    }
    #page_nav li.last_p a:before{
    	content: "";
		display: block;
		width: 1px;
		height:14px;
		border-right:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 62%;
		transform:translate(-50%, -50%);
    }

    #page_nav li.next_p a:after{
    	content: "";
		display: block;
		width: 8px;
		height:8px;
		border-right:solid 1px #78808d;
		border-bottom:solid 1px #78808d;
		position: absolute;
		top: 50%;
		left: 40%;
		transform:translate(-50%, -50%) rotate(-45deg);
    }
    
    
    #login .info_block{
		background:#fff;
		border-radius: 6px;
		padding: 40px 20px 30px;
		margin:0 0 40px;
		position:relative;
	}

	#login .info_block h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:500;
		font-size: 1.8rem;
		line-height: 140%;
		color:#164bc3;
		letter-spacing: 0.1rem;
		padding: 30px 0 20px;
	}

	#login .info_block h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:500;
		font-size: 1.7rem;
		line-height: 140%;
		color:#164bc3;
		letter-spacing: 0.1rem;
		padding: 0 0 0 10px;
		margin:20px 0 16px;
		border-left:4px solid #164bc3;
	}

	#login .info_block p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		line-height: 180%;
		letter-spacing: 0.1rem;
		font-size: 1.5rem;
		padding: 0 0 40px;
	}

	#login .info_block p strong{
		font-weight: 600;
	}
	

	#login .info_block time{
		font-family: 'Roboto', sans-serif;
		font-weight: 600;
		line-height: 100%;
		letter-spacing: 0.1rem;
		font-size: 1.4rem;
		color:#000;
		white-space: nowrap;
	}

	#login .info_block p.from_txt{
		display: inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		line-height: 100%;
		letter-spacing: 0.1rem;
		font-size: 1.4rem;
		color:#164bc3;
		white-space: nowrap;
		padding: 4px 10px 6px;
		position:absolute;
		right: 20px;
		top: 30px;
		border:1px solid #164bc3;
	}

	#login .info_block .download_wrap{
		display:block;
		margin:40px 0 0;
		padding: 20px 0 0;
		border-top:1px solid #ccc;
	}

	#login .info_block .download_wrap li{
		margin: 0 0 10px;
	}

	#login .info_block .download_wrap a{
		display:inline-block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.3rem;
		color:#fff;
		padding: 7px 36px 10px 47px;
		line-height: 120%;
		background:#eb8a8a;
		border-radius: 100px;
		position:relative;
	}

	#login .info_block .download_wrap a span{
		width: 18px;
		display:block;
		position:absolute;
		left: 20px;
		top: 5px;
	}

	#login .info_block .download_wrap a{
		transition: all 0.4s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}

	#login .info_block .download_wrap a:hover{
		opacity:0.5;
	}
    
    
    /* === mypage ================================================*/
	
	#login table{
		width: 100%;
		margin: 0 0 10px;
	}

	#login table.mail_list{
		width: 100%;
		margin: 0 0 40px;
	}


	#login table th{
		display: block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		font-size: 1.6rem;
		color:#fff;
		background:#164bc3;
		padding: 8px 20px 10px;
		text-align: left;
	}

	#login table td{
		display: block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		background:#fff;
		border-top:1px solid #eff1f3;
		padding: 20px 20px 22px;
		position:relative;
	}

	#login table td a{
		display:block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.4rem;
		letter-spacing: 0.1rem;
		color:#164bc3;
	}

	#login table td a span{
		display:block;
		font-size: 1.4rem;
		letter-spacing: -0.5rem;
		margin: 6px 0 -6px 0;
		color:#ccc;
	}

	#login table tr.line_b td{
		border-bottom:40px solid #eff1f3;
	}
    
    
	
}



/*===============================================
　SP iPhone5サイズ対応　画面の横幅が350pxまで▼▼▼▼▼
===============================================*/

@media (max-width:349px) {
	
}

/*===============================================
　SP iPhone Plus サイズ対応　画面の横幅が415pxまで▼▼▼▼▼
===============================================*/

@media (min-width: 413px) and (max-width: 761px) {
	
}

