@charset "utf-8";
/****************************************
			mypage
*****************************************/
.emphasis{
	color: #c10012;
}

#mypage .flash_message {
	color: #c10012;
	padding:4px 8px;
}

.item_required{
	background-color:#c10012;
	padding:4px 8px;
	margin-left:8px;
	color:#fff;
	font-size:0.8em;
}


@media screen and (min-width: 769px){
	#mypage{
		width: 960px;
		margin: 40px auto 80px;
	}

	/****************************/
	/*   mypage/index マイページ
	/****************************/
	#mypage .mypage_base .mypage_box{
		width: 960px;
		max-width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 400px;
		max-width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box table{
		width: 100%;
	}
	.mypage_base .mypage_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 24%;
		padding: 20px;
		text-align: left;
		font-weight: normal;
	}
	.mypage_base .mypage_box table td{
		padding: 20px;
	}
	.mypage_base .mypage_box table,
	.mypage_base .mypage_box table th,
	.mypage_base .mypage_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.mypage_base .mypage_box .mypage_item_btn_box{
        margin:40px auto 0px;
        width:640px;
	}
	.mypage_base .mypage_box .mypage_item_btn_box a.btn_middle{
		margin-bottom: 40px;
	}
	.mypage_base .mypage_list_btn{
		display: flex;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .mypage_item_example{
		margin: 4px 0 12px 0;
	}
	.mypage_base .mypage_box .mypage_list_title.reserve{
		color: #fff;
		text-align: center;
		line-height: 40px;
		height: 40px;
		border-bottom: solid 4px rgba(177, 177, 177, 0.5);
		background-color: #efefef;
		border: 1px solid #b1b1b1;
	}
	.mypage_base .mypage_box .mypage_item_title.reserve{
		position: relative;
		color: #000;
		margin: 0px auto;
		width: 960px;
		max-width: 100%;
		font-weight: bold;
	}
	.mypage_base .mypage_box .mypage_item{
		width: 960px;
		max-width: 100%;
		margin: 0 auto 40px auto;
		border: 1px solid #b1b1b1;
		padding: 20px;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route{
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route .mypage_item_category{
		padding: 6px 8px 4px;
		text-align: center;
		margin-bottom: 8px;
		display: inline-block;
		/*width: 100px;*/
		font-size: 0.9em;
		font-weight: normal;
		background-color: #000;
		color: #fff;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route .mypage_item_detail{
		width:320px;
		line-height:24px;
	}
	.mypage_base .mypage_box .mypage_item_ticket_info{
		width: 70%;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_detail_btn{
		margin:0px auto;
		width:30%;
	}

	/****************************/
	/*   mypage/change マイページ 変更
	/****************************/
	#mypage .mypage_base .mypage_box{
		width: 960px;
		max-width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 400px;
		max-width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box table{
		width: 100%;
	}
	.mypage_base .mypage_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 24%;
		padding: 20px;
		text-align: left;
		font-weight: normal;
	}
	.mypage_base .mypage_box table td{
		padding: 20px;
	}
	.mypage_base .mypage_box table,
	.mypage_base .mypage_box table th,
	.mypage_base .mypage_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.mypage_base .mypage_box .mypage_item_textform{
		width: 600px;
		height: 32px;
	}
	.mypage_base .mypage_box .mypage_item_textareaform{
		width: 600px;
		height: 200px;
	}
	.mypage_base .mypage_box .mypage_item_example{
		margin: 4px 0 12px 0;
	}
	.mypage_base .mypage_box .mypage_item_btn_box .btn_middle input[type=submit]{
		display:block;
		line-height:48px;
		width: 100%;
		height:48px;
		text-align:center;
		color:#fff;
		background-color: #000;
		border-radius:4px;
		border: none;
		cursor: pointer;
	}

	/*************************************************/
	/*   mypage/reservstion マイページ 予約
	/*   mypage/reservstion_change マイページ 予約変更
	/*   mypage/reservstion_complete マイページ 予約確認
	/*************************************************/
	.mypage_base .mypage_box .mypage_reservation_list{
		margin:20px auto;
		width:480px;
	}
	.mypage_base .mypage_box .mypage_list_menu{
		margin:0px auto;
		width:720px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .mypage_list_menu .btn_small{
		margin-bottom:12px;
	}
	.mypage_base .mypage_box .mypage_list_menu .btn_small a{
		color:#fff;
		display:block;
	}
	.mypage_base .mypage_box .mypage_item_textdetail{
		font-size:16px;
		line-height:24px;
		text-align:center;
		margin:40px auto;
		width:960px;
		max-width:100%;
	}
	.qrcode_position{
		position:relative;
		display:inline-block;
		width: 240px;
		height:240px;
	}
	.qrcode_position .qrcode_remark{
		position:absolute;
		display:inline-block;
		top: 90px;
		left: 90px;
		font-size: 32px;
		font-weight:bold;
		line-height: 60px;
		width: 60px;
		height:60px;
		border-radius: 30px;
		background-color: #FFF;
	}

	/***********************************************/
	/*   mypage/quit マイページ 退会
	/*   mypage/quit_confirm マイページ 退会確認
	/*   mypage/quit_complete マイページ 退会完了
	/***********************************************/
	#mypage .mypage_base .mypage_box{
		width: 960px;
		max-width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 400px;
		max-width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_list_btn{
		display: flex;
		flex-wrap: wrap;
	}

	/************************************/
	/*   mypage/creditcard クレジットカード
	/************************************/
	.mypage_base .mypage_base_subtitle{
		margin: 0px auto 20px;
		padding-left: 12px;
		min-width: 768px;
		width: 80%;
		height:36px;
		line-height: 36px;
		border-left: solid 4px #276194;
		border-bottom: solid 1px #EFEFEF;
		background-color: #FCFCFC;
	}
	.mypage_base .mypage_creditcard_description{
		text-align:center;
		margin: 0px auto 20px;
		min-width: 768px;
		width: 80%;
		line-height:1.5;
	}
	.mypage_base .mypage_creditcard_box{
		margin: 0px auto;
		min-width: 768px;
		width: 80%;
		border: solid 1px #b1b1b1;
	}
	.mypage_base .mypage_creditcard_box .mypage_creditcard_title{
		width: 20%;
		padding: 20px;
		background-color:#efefef;
		border-right: solid 1px #b1b1b1;
	}
	.mypage_creditcard_box .mypage_creditcard_detail{
		width: 80%;
		padding: 20px;
	}
	.mypage_creditcard_box .mypage_creditcard_detail ul{

	}
	.mypage_creditcard_box .mypage_creditcard_detail ul li{
		padding-bottom: 20px;
		margin-bottom: 20px;
		border-bottom: dotted 1px #333;
	}
	.mypage_creditcard_box .mypage_creditcard_detail ul li:last-child{
		padding-bottom: 0px;
		margin-bottom: 0px;
		border-bottom: none;
	}
	.mypage_creditcard_box .mypage_creditcard_detail .creditcard_default{
		color: #FFF;
		padding: 2px 6px;
		background-color: #C00;
	}
	.mypage_creditcard_box .mypage_creditcard_detail input[type="text"]{
		width: 80%;
	}
	.mypage_base .mypage_creditcard_btn_box{
		margin:40px auto 80px;
	}

	/************************************/
	/*   mypage/receipt 領収書関連
	/************************************/
	.mypage_base .mypage_list{
		margin: 20px auto;
	}
	.mypage_base .mypage_list .mypage_receipt_table{
		margin: 10px auto;
		width: 80%;
	}
	.mypage_base .mypage_list .mypage_receipt_table td{
		padding: 0px 20px;
	}
	.mypage_base .mypage_list .mypage_receipt_table td span{
		margin-left: 10px;
	}
	.mypage_base .mypage_list .mypage_receipt_table input[type="text"]{
		width: 80%;
		height:28px;
	}
	.mypage_base .mypage_box .mypage_receipt_caution_title{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin: 40px auto 16px;
	}
	.mypage_base .mypage_list .mypage_receipt_caution_txt{
		line-height: 1.5;
	}

	/*******************/
	/*印刷用ページ
	/*******************/
	#receipt{
		margin: 20px auto;
		width: 720px;

	}
	#receipt .receipt_box{
		margin-bottom: 20px;
		padding: 20px;
		border: solid #CCC 1px;
	}
	/* 領収書 */
	#receipt .receipt_box .receipt_issue_date{
		text-align: right;
	}
	#receipt .receipt_box .receipt_title{
		padding: 10px 0px;
		font-size: 24px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_subtitle{
		height:48px;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name{
		position:relative;
		font-size: 24px;
		line-height:48px;
		padding-left: 8px;
		border-bottom: solid 1px #333;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name::after{
		position:absolute;
		top: 4px;
		right: 4px;
		font-size: 16px;
		content: "様";
	}
	#receipt .receipt_box .receipt_subtitle .receipt_payment_date{
		text-align:right;
		line-height:48px;
	}
	#receipt .receipt_box .receipt_detail{
		line-height:1.5;
		margin: 30px auto 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_amount{
		font-size: 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_txt{
		margin-top: 24px;
	}

	#receipt .receipt_box .receipt_footer{
		margin: 0px auto;
		width: 400px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo{
		width: 200px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo img{
		width: 180px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address{
		line-height:1.5;
		text-align:left;
		padding-left: 8px;
		width: 280px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address .company_name{
		font-size: 20px;
	}

	/* 乗船券明細 */
	#receipt .receipt_box .receipt_reservation_table{
		margin: 40px auto 20px;
		width: 100%;
		border: solid 1px #333;
		border-collapse: collapse;
	}
	#receipt .receipt_box .receipt_reservation_table th{
		line-height:32px;
		height: 32px;
		border: solid 1px #333;
		background-color: #EFEFEF;
	}
	#receipt .receipt_box .receipt_reservation_table td{
		line-height:32px;
		text-align:center;
		height: 32px;
		border: solid 1px #333;
	}
	#receipt .receipt_box .receipt_amount{
		margin: 0px 0px 0px auto;
		width: 20%;
	}


	/****************************/
	/****************************/
	/*   離島割関連
	/****************************/
	/****************************/
	#islanders{
		width: 960px;
		margin: 40px auto 80px;
	}
	#islanders .islanders_base{}

	.islanders_base .islanders_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 400px;
		max-width: 90%;
	}

	.islanders_base .islanders_box{
		width: 100%;
		margin-bottom: 40px;
	}
	.islanders_box .islanders_description_box{
		margin: 20px auto;
		width: 720px;
		height: 400px;
		border: solid 1px #000;
		box-shadow:inset 0px 0px 5px rgba(0,0,0,0.5);
		overflow-y: scroll;
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar{
	    display:block!important;
	    width: 12px;
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-track {
	    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
	    -webkit-border-radius: 10px;
	    border-radius: 10px;
	    background:#FFF;    
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-thumb {
	    -webkit-border-radius: 10px;
	    border-radius: 4px;
	    background: rgba(204,204,204,0.8); 
	    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-thumb:window-inactive {
	    background: rgba(204,204,204,0.4); 
	}

	.islanders_box .islanders_description_box .islanders_description_title{
		margin: 20px auto;
		text-align:center;
		line-height: 200%;
		width: 80%;
		border-bottom: solid 2px #999;
	}
	.islanders_box .islanders_description_box ul{
		margin: 0px auto;
		width:90%;
	}
	.islanders_box .islanders_description_box li{
		line-height: 150%;
		margin: 0px auto 10px;
	}

	.islanders_base .islanders_box table{
		width: 100%;
	}
	.islanders_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 24%;
		padding: 20px;
		text-align: left;
		font-weight: normal;
	}
	.islanders_box table td{
		padding: 20px;
	}
	.islanders_box table,
	.islanders_box table th,
	.islanders_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.islanders_box table td input[type="text"],
	.islanders_box table td input[type="number"]{
		line-height:32px;
		width: 400px;
		height:32px;
	}
	.islanders_box table td select{
		line-height:32px;
		margin-left: 8px;
		min-width: 60px;
		height:32px;
	}
	.islanders_box table td select:first-child{
		margin-left: 0px;
	}

	.islander_sample_card{
		width: 400px;
		height:auto;
	}

	.islanders_box.islander_caution{
		color: #C00;
		font-size: 20px;
		font-weight:bold;
		text-align: center;
		padding: 20px 0px;
		border: solid 2px #C00;
	}
	.mypage_box .islander_caution{
		color: #C00;
		font-size: 16px;
		font-weight:bold;
		text-align: center;
		padding: 10px;
	}

	.qrcode_position .qrcode_remark_islanders{
		position:absolute;
		display:inline-block;
		top: 90px;
		left: 90px;
		font-size: 24px;
		font-weight:bold;
		line-height: 60px;
		width: 60px;
		height:60px;
		border-radius: 30px;
		background-color: #FFF;
	}
}


/***********************************************************/
/* 印刷用
/***********************************************************/
@media print{
	#receipt{
		margin: 20px auto;
		width: 720px;

	}
	#receipt .receipt_box{
		margin-bottom: 20px;
		padding: 20px;
		border: solid #CCC 1px;
	}
	#receipt .receipt_box .receipt_issue_date{
		text-align: right;
	}
	#receipt .receipt_box .receipt_title{
		padding: 10px 0px;
		font-size: 24px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_subtitle{
		height:48px;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name{
		position:relative;
		font-size: 24px;
		line-height:48px;
		padding-left: 8px;
		border-bottom: solid 1px #333;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name::after{
		position:absolute;
		top: 4px;
		right: 4px;
		font-size: 16px;
		content: "様";
	}
	#receipt .receipt_box .receipt_subtitle .receipt_payment_date{
		text-align:right;
		line-height:48px;
	}
	#receipt .receipt_box .receipt_detail{
		line-height:1.5;
		margin: 30px auto 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_amount{
		font-size: 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_txt{
		margin-top: 24px;
	}

	#receipt .receipt_box .receipt_footer{
		margin: 0px auto;
		width: 400px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo{
		width: 200px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo img{
		width: 180px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address{
		line-height:1.5;
		text-align:left;
		padding-left: 8px;
		width: 280px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address .company_name{
		font-size: 20px;

	}

	/* 乗船券明細 */
	#receipt .receipt_box .receipt_reservation_table{
		margin: 40px auto 20px;
		width: 100%;
		border: solid 1px #333;
		border-collapse: collapse;
	}
	#receipt .receipt_box .receipt_reservation_table th{
		line-height:32px;
		height: 32px;
		border: solid 1px #333;
		background-color: #EFEFEF;
	}
	#receipt .receipt_box .receipt_reservation_table td{
		line-height:32px;
		text-align:center;
		height: 32px;
		border: solid 1px #333;
	}
	#receipt .receipt_box .receipt_amount{
		margin: 0px 0px 0px auto;
		width: 20%;
	}
	#pdfdl{display: none;}
}


/***********************************************************/
/* スマートフォン
/***********************************************************/
@media screen and (max-width: 768px){
	#mypage{
		width: 96%;
		margin: 80px auto;
	}

	/****************************/
	/*   mypage/index マイページ
	/****************************/
	#mypage .mypage_base .mypage_box{
		width:100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box table{
		width: 100%;
	}
	.mypage_base .mypage_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 100%;
		padding: 8px;
		text-align: left;
		font-weight: normal;
		display: block;
	}
	.mypage_base .mypage_box table td{
		padding: 16px;
		width: 100%;
		display: block;
	}
	.mypage_base .mypage_box table,
	.mypage_base .mypage_box table th,
	.mypage_base .mypage_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.mypage_base .mypage_box .mypage_item_btn_box{
		margin:20px auto;
		width:100%;
	}
	.mypage_base .mypage_box .mypage_item_btn_box a.btn_middle{
		margin-bottom: 20px;
	}
	.mypage_base .mypage_list_btn{
		display: flex;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .mypage_item_example{
		margin: 4px 0 12px 0;
	}
	.mypage_base .mypage_box .mypage_list_title.reserve{
		color: #fff;
		text-align: center;
		line-height: 40px;
		height: 40px;
		border-bottom: solid 4px rgba(177, 177, 177, 0.5);
		background-color: #efefef;
		border: 1px solid #b1b1b1;
	}
	.mypage_base .mypage_box .mypage_item_title.reserve{
		position: relative;
		color: #000;
		margin: 0px auto;
		width: 100%;
		font-weight: bold;
	}
	.mypage_base .mypage_box .mypage_item{
		width: 100%;
		margin: 0 auto 40px auto;
		border: 1px solid #b1b1b1;
		padding: 20px;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route{
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route .mypage_item_category{
		padding: 6px 8px 4px;
		text-align: center;
		margin-bottom: 8px;
		display: inline-block;
		/*width: 100px;*/
		font-size: 0.9em;
		font-weight: normal;
		background-color: #000;
		color: #fff;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_route .mypage_item_detail{
		line-height:24px;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_detail_btn{
		margin:0px auto;
		width:100%;
	}
	.mypage_base .mypage_box .mypage_item .mypage_item_detail_btn .btn_middle{
		margin:20px auto 0 auto;
	}


	/****************************/
	/*   mypage/change マイページ 変更
	/****************************/
	#mypage .mypage_base .mypage_box{
		width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box table{
		width: 100%;
	}
	.mypage_base .mypage_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 100%;
		padding: 8px;
		text-align: left;
		font-weight: normal;
		display: block;
	}
	.mypage_base .mypage_box table td{
		padding: 16px;
		width: 100%;
		display: block;
	}
	.mypage_base .mypage_box table,
	.mypage_base .mypage_box table th,
	.mypage_base .mypage_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.mypage_base .mypage_box .mypage_item_textform{
		width: 100%;
		height: 32px;
	}
	.mypage_base .mypage_box .mypage_item_textareaform{
		width: 100%;
		height: 200px;
	}
	.mypage_base .mypage_box .mypage_item_example{
		margin: 4px 0 12px 0;
	}
	.mypage_base .mypage_list_btn{
		display: flex;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .mypage_item_btn_box .btn_middle input[type=submit]{
		display:block;
		line-height:48px;
		width: 100%;
		height:48px;
		text-align:center;
		color:#fff;
		background-color: #000;
		border-radius:4px;
		border: none;
		cursor: pointer;
	}

	/****************************/
	/*   mypage/reservation マイページ 予約
	/*   mypage/reservation_change マイページ 予約変更
	/*   mypage/reservation_complete マイページ 予約確認
	/****************************/
	#mypage .mypage_base .mypage_box{
		width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.mypage_base .mypage_box table{
		width: 100%;
	}
	.mypage_base .mypage_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 100%;
		padding: 8px;
		text-align: left;
		font-weight: normal;
		display: block;
	}
	.mypage_base .mypage_box table td{
		padding: 16px;
		width: 100%;
		display: block;
	}
	.mypage_base .mypage_box table,
	.mypage_base .mypage_box table th,
	.mypage_base .mypage_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.mypage_base .mypage_box .mypage_reservation_list{
		margin:20px auto;
		width:100%;
	}
	.mypage_base .mypage_list_btn{
		display: flex;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .btn_middle a{
		color:#fff;
		display:block;
	}
	.mypage_base .mypage_box .mypage_list_menu{
		margin:0px auto;
		width:100%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.mypage_base .mypage_box .mypage_list_menu .btn_small{
		margin-bottom:12px;
	}
	.mypage_base .mypage_box .mypage_list_menu .btn_small a{
		color:#fff;
		display:block;
	}
	.mypage_base .mypage_box .mypage_item_textdetail{
		font-size:20px;
		line-height: 150%;
		text-align:center;
		margin:40px 0px;
		width:100%;
	}
	.qrcode_position{
		position:relative;
		display:inline-block;
		width: 240px;
		height:240px;
	}
	.qrcode_position .qrcode_remark{
		position:absolute;
		display:inline-block;
		top: 90px;
		left: 90px;
		font-size: 32px;
		font-weight:bold;
		line-height: 60px;
		width: 60px;
		height:60px;
		border-radius: 30px;
		background-color: #FFF;
	}

	/****************************/
	/*   mypage/quit マイページ 退会
	/*   mypage/quit_confirm マイページ 退会確認
	/*   mypage/quit_complete マイページ 退会完了
	/****************************/
	#mypage .mypage_base .mypage_box{
		width: 100%;
		margin: 8px auto 40px auto;
	}
	.mypage_base .mypage_base_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 90%;
	}
	.mypage_base .mypage_box .mypage_subtitle{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 16px;
	}


	/************************************/
	/*   mypage/creditcard クレジットカード
	/************************************/
	.mypage_base .mypage_base_subtitle{
		margin: 0px auto 20px;
		padding-left: 12px;
		height:36px;
		line-height: 36px;
		border-left: solid 4px #276194;
		border-bottom: solid 1px #EFEFEF;
		background-color: #FCFCFC;
	}
	.mypage_base .mypage_creditcard_description{
		margin: 0px auto 20px;
		line-height:1.5;
	}
	.mypage_base .mypage_creditcard_box{
		margin: 0px auto;
		border: solid 1px #b1b1b1;
	}
	.mypage_base .mypage_creditcard_box .mypage_creditcard_title{
		padding: 10px;
		background-color:#efefef;
		border-right: solid 1px #b1b1b1;
	}
	.mypage_creditcard_box .mypage_creditcard_detail{
		padding: 10px;
	}
	.mypage_creditcard_box .mypage_creditcard_detail ul{

	}
	.mypage_creditcard_box .mypage_creditcard_detail ul li{
		padding-bottom: 20px;
		margin-bottom: 20px;
		border-bottom: dotted 1px #333;
	}
	.mypage_creditcard_box .mypage_creditcard_detail ul li:last-child{
		padding-bottom: 0px;
		margin-bottom: 0px;
		border-bottom: none;
	}
	.mypage_creditcard_box .mypage_creditcard_detail .creditcard_default{
		display:inline-block;
		color: #FFF;
		margin-top: 8px;
		padding: 4px 6px;
		background-color: #C00;
	}
	.mypage_creditcard_box .mypage_creditcard_detail input[type="text"]{
		width: 80%;
	}
	.mypage_base .mypage_creditcard_btn_box{
		margin:20px auto 60px;
	}


	/************************************/
	/*   mypage/receipt 領収書関連
	/************************************/
	/* 領収書入力 */
	.mypage_base .mypage_list{
		margin: 20px auto;
	}
	.mypage_base .mypage_list .mypage_receipt_table{
		margin: 10px auto;
		width:100%;
	}
	.mypage_base .mypage_list .mypage_receipt_table td{
		padding: 10px;
	}
	.mypage_base .mypage_list .mypage_receipt_table td span{
		margin-left: 10px;
	}
	.mypage_base .mypage_list .mypage_receipt_table input[type="text"]{
		width: 80%;
		height:28px;
	}

	.mypage_base .mypage_box .mypage_receipt_caution_title{
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		margin: 40px auto 16px;
	}
	.mypage_base .mypage_list .mypage_receipt_caution_txt{
		line-height: 1.5;
	}

	/* 印刷用画面 */
	#receipt{
		margin: 20px auto;
		width: 720px;

	}
	#receipt .receipt_box{
		margin-bottom: 20px;
		padding: 20px;
		border: solid #CCC 1px;
	}
	#receipt .receipt_box .receipt_issue_date{
		text-align: right;
	}
	#receipt .receipt_box .receipt_title{
		padding: 10px 0px;
		font-size: 24px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_subtitle{
		height:48px;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name{
		position:relative;
		font-size: 24px;
		line-height:48px;
		padding-left: 8px;
		border-bottom: solid 1px #333;
	}
	#receipt .receipt_box .receipt_subtitle .receipt_name::after{
		position:absolute;
		top: 4px;
		right: 4px;
		font-size: 16px;
		content: "様";
	}
	#receipt .receipt_box .receipt_subtitle .receipt_payment_date{
		text-align:right;
		line-height:48px;
	}
	#receipt .receipt_box .receipt_detail{
		line-height:1.5;
		margin: 30px auto 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_amount{
		font-size: 20px;
	}
	#receipt .receipt_box .receipt_detail .receipt_detail_txt{
		margin-top: 24px;
	}

	#receipt .receipt_box .receipt_footer{
		margin: 0px auto;
		width: 400px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo{
		width: 200px;
		text-align:center;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_logo img{
		width: 180px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address{
		line-height:1.5;
		text-align:left;
		padding-left: 8px;
		width: 280px;
	}
	#receipt .receipt_box .receipt_footer .receipt_footer_address .company_name{
		font-size: 20px;

	}

	/* 乗船券明細 */
	#receipt .receipt_box .receipt_reservation_table{
		margin: 40px auto 20px;
		width: 100%;
		border: solid 1px #333;
		border-collapse: collapse;
	}
	#receipt .receipt_box .receipt_reservation_table th{
		line-height:32px;
		height: 32px;
		border: solid 1px #333;
		background-color: #EFEFEF;
	}
	#receipt .receipt_box .receipt_reservation_table td{
		line-height:32px;
		text-align:center;
		height: 32px;
		border: solid 1px #333;
	}
	#receipt .receipt_box .receipt_amount{
		margin: 0px 0px 0px auto;
		width: 20%;
	}

	/****************************/
	/****************************/
	/*   離島割関連
	/****************************/
	/****************************/
	#islanders{
		width: 96%;
		margin: 80px auto;
	}
	#islanders .islanders_base{
		width: 100%;
	}

	.islanders_base .islanders_title{
		margin: 40px auto;
		padding-bottom: 8px;
		border-bottom: 4px solid #276194;
		text-align: center;
		font-size: 1.5em;
		width: 96%;
	}

	.islanders_base .islanders_box{
		width: 100%;
		margin-bottom: 40px;
	}
	.islanders_box .islanders_description_box{
		margin: 20px auto;
		width: 100%;
		height: 300px;
		border: solid 1px #000;
		box-shadow:inset 0px 0px 5px rgba(0,0,0,0.5);
		overflow-y: scroll;
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar{
	    display:block!important;
	    width: 12px;
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-track {
	    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
	    -webkit-border-radius: 10px;
	    border-radius: 10px;
	    background:#FFF;    
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-thumb {
	    -webkit-border-radius: 10px;
	    border-radius: 4px;
	    background: rgba(204,204,204,0.8); 
	    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
	}
	.islanders_box .islanders_description_box::-webkit-scrollbar-thumb:window-inactive {
	    background: rgba(204,204,204,0.4); 
	}

	.islanders_box .islanders_description_box .islanders_description_title{
		margin: 20px auto;
		text-align:center;
		line-height: 200%;
		width: 80%;
		border-bottom: solid 2px #999;
	}
	.islanders_box .islanders_description_box ul{
		margin: 0px auto;
		width:90%;
	}
	.islanders_box .islanders_description_box li{
		line-height: 150%;
		margin: 0px auto 10px;
	}

	.islanders_box table{
		width: 100%;
	}
	.islanders_box table th{
		background-color: #efefef;
		padding-left: 24px;
		width: 100%;
		padding: 8px;
		text-align: left;
		font-weight: normal;
		display: block;
	}
	.islanders_box table td{
		padding: 16px;
		width: 100%;
		display: block;
	}
	.islanders_box table,
	.islanders_box table th,
	.islanders_box table tr{
		border: 1px solid #b1b1b1;
		border-collapse: collapse;
	}
	.islanders_box table td input[type="text"],
	.islanders_box table td input[type="number"]{
		line-height:32px;
		width: 280px;
		height:32px;
	}
	.islanders_box table td select{
		line-height:32px;
		margin-left: 8px;
		min-width: 60px;
		height:32px;
	}
	.islanders_box table td select:first-child{
		margin-left: 0px;
	}

	.islander_sample_card{
		width: 300px;
		height:auto;
	}

	.islanders_box.islander_caution{
		color: #C00;
		font-size: 14px;
		font-weight:bold;
		text-align: center;
		padding: 20px 0px;
		border: solid 2px #C00;
	}
	.mypage_box .islander_caution{
		color: #C00;
		font-size: 16px;
		font-weight:bold;
		text-align: center;
		padding: 10px;
	}

	.qrcode_position .qrcode_remark_islanders{
		position:absolute;
		display:inline-block;
		top: 90px;
		left: 90px;
		font-size: 24px;
		font-weight:bold;
		line-height: 60px;
		width: 60px;
		height:60px;
		border-radius: 30px;
		background-color: #FFF;
	}
}
