@charset "Shift_JIS";

/*-------------------------------------
お申込みページ
-------------------------------------*/

.alcContent .alcSelectBlock .alcSelectCnt {
	display: table;
	width: 100%;
	padding: 18px 10px;
	border-bottom: 1px solid #ccc;
}
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm01,
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm02,
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm03 {
	display: table-cell;
	padding: 0 2%;
	text-align: center;
	vertical-align: middle;
}
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm01 {
	width: 24%;
}
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm02 {
	width: 43%;
}
.alcContent .alcSelectBlock .alcSelectCnt .alcSelectElm03 {
	width: 33%;
}
.alcContent .alcSelectBlock.typeA .alcSelectCnt .alcSelectElm01 {
	width: 18%;
}
.alcContent .alcSelectBlock.typeA .alcSelectCnt .alcSelectElm02 {
	width: 49%;
}
.alcContent .alcSelectBlock.typeA .alcSelectCnt .alcSelectElm03 {
	width: 33%;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmImg img {
	width: 100%;
	height: auto;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmImg02 {
	margin-top: 5px;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmImg02 img {
	width: 19px;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmBox {
	font-size: 1.3em;
	font-weight: bold;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmBox .elmNum {
	font-size: 1.5em;
	vertical-align: baseline;
}
.alcContent .alcSelectBlock .alcSelectCnt .elmBox .elmTit {
	margin-right: 12px;
	vertical-align: baseline;
}
.alcContent .alcSelectBlock .alcSelectCnt.stockNone .alcSelectElm02 {
	width: 78%;
}
.alcContent .alcSelectBlock .alcSelectCnt.stockNone .elmBox {
	font-size: 1.231em;
	font-weight: normal;
}

.stnIcoBox {
	padding: 12px 15px;
	background: #e7f7fb;
	text-align: center;
}
.stnIcoBox > * {
	margin-top: 10px;
}
.stnIcoBox > *:first-child {
	margin-top: 0;
}
.stnIcoBox .stnTit {
	font-size: 1.1em;
	font-weight: bold;
	text-align: left;
}
.stnIcoBox .stnIco {
	display: inline-block;
}
.stnIcoBox .stnIco .stnIcoInner {
	display: table;
	width: 100%;
}
.stnIcoBox .stnIco .stnCol {
	display: table-cell;
}
.stnIcoBox .stnIco .stnCol + .stnCol {
	padding-left: 10px;
}
.stnIcoBox .stnIco .stnCol .icoImg {
	margin-right: 3px;
}
.stnIcoBox .stnIco .stnCol .icoImg img {
	width: 19px;
}

/* link */
.alcContent .aplLinkList {
	letter-spacing: -0.5em;
}
.alcContent .aplLinkList > li {
	display: inline-block;
	margin-left: 16px;
	letter-spacing: normal;
}
.alcContent .aplLinkList > li:first-child {
	margin-left: 0;
}

.alcContent .alcMapBlock01 > dd .btn01 {
	width: 100%;
	margin-top: 10px;
	padding: 12px 16px 12px 27px;
}

/* h2 icon */
.alcContent .h2Style04.alcHIco04::before {
	background: url(/sp/ta/images/ico_heading_04.png) 0 0 no-repeat;
	background-size: 100%;
}
.detailBtn.close {
	display: none;
}
.resultCnt.select {
	display: none;
}

/* btn */
.btn06.b02.closeBtn {
	width: 112px;
}

/* form */
.resultCnt.close {
	display: none;
}

.alcRadioBlock {
	padding-bottom: 10px;
}
.alcRadioBlock .alcRadioCnt {
	display: table;
	width: 100%;
	margin-top: 10px;
	box-shadow: 1px 1px 6px 0px rgba(136, 136, 136, 0.5);
	position: relative;
}
.alcRadioBlock .alcRadioCnt:first-child {
	margin-top: 0;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn,
.alcRadioBlock .alcRadioCnt .alcRadioElm {
	display: table-cell;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn {
	width: 12%;
	padding: 8px;
	background: #e7f7fb;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #dbdbdb;
	border-right: none;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radioPseudo {
	position: relative;
	display: block;
	padding-left: 31px;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radioPseudo::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 5px;
	box-sizing: border-box;
	width: 22px;
	height: 22px;
	margin-top: -11px;
	border-radius: 50%;
	border: 1px solid #808080;
	background: #fff;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radioPseudo::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	width: 12px;
	height: 12px;
	margin: auto;
	border-radius: 50%;
	background: #fff;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn input[type="radio"]:checked ~ .radioPseudo::before {
	border: 1px solid #0184af;
	background: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .25);
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn input[type="radio"]:checked ~ .radioPseudo::after {
	background: #0184af;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radio {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-left: 0;
}
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radio::before,
.alcRadioBlock .alcRadioCnt .alcRadioBtn .radio::after {
	display: none;
}
.alcRadioBlock .alcRadioCnt.stockNone .alcRadioBtn .radioPseudo::before {
	border: 1px solid #e5e5e5;
	background: #e5e5e5;
}
.alcRadioBlock .alcRadioCnt.stockNone .alcRadioBtn .radioPseudo::after {
	background: #e5e5e5;
}
.alcRadioBlock .alcRadioCnt .alcRadioElm {
	width: 88%;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap {
	display: table;
	width: 100%;
	border-collapse: collapse;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap + .alcCntWrap .alcCnt {
	border-top: none;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap .alcCnt {
	display: table-cell;
	padding: 8px;
	border: 1px solid #dbdbdb;
	vertical-align: middle;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap.col2 .alcCnt {
	width: 50%;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap.col3 .alcCnt {
	width: 33.3%;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap.colType01 .alcCnt {
	padding: 8px;
	font-size: 0.858em;
}
.alcRadioBlock .alcRadioCnt .alcCntWrap .alcCnt > dl dt {
	font-weight: bold;
}

.alcRadioBlock .alcRadioCnt.closed {
	display: none;
	margin-top: 0;
	box-shadow: none;
	overflow: hidden;
}
.alcRadioBlock .alcRadioCnt.closed .alcRadioBtn {
	padding: 0;
	border: none;
}
.alcRadioBlock .alcRadioCnt.closed .alcCntWrap .alcCnt {
	padding: 0;
}

.alcRadioBlock .alcRadioCnt.selected {}

/* box */
.boxTitA01 {
	padding: 12px 15px;
	background: #e8f7fc;
	border-top: 1px solid #b4b4b4;
	border-right: 1px solid #b4b4b4;
	border-left: 1px solid #b4b4b4;
}

.boxD.mlScroll {
	max-height: 210px;
	overflow-y: auto;
}

/* list */
ul.alcDiscList01 li,
p.alcDiscList01 {
	position: relative;
	padding-left: 1em;
}
ul.alcDiscList01 li:before,
p.alcDiscList01:before {
	content: '●';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
}

ul.alcDiscList02 li,
p.alcDiscList02 {
	position: relative;
	padding-left: 1em;
}
ul.alcDiscList02 li:before,
p.alcDiscList02:before {
	content: '・';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
}

ul.alcDiscList03 li,
p.alcDiscList03 {
	position: relative;
	padding-left: 1em;
	border-style:solid;
	border-width:2px;
	border-color:#ffc000;
	background-color:#fff9e7;
}
ul.alcDiscList03 li:before,
p.alcDiscList03:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
}

/* table */
.alcCol1 { width: 19%; }
.alcCol2 { width: 27%; }
.alcCol3 { width: 25%; }
.alcCol4 { width: 15%; }
.alcCol5 { width: 57%; }
.alcCol6 { width: 28%; }
.alcCol7 { width: 30%; }
.alcCol8 { width: 35%; }
.alcCol9 { width: 40%; }
.alcCol10 { width: 60%; }

/* pagetop btn */
.alcContent .pagetop {
	bottom: 138px;
}

/*-------------------------------------
マイページ用
-------------------------------------*/
/* title */
.mypageH2Style01 {
	display: table;
	position: relative;
	margin: 0 0 15px;
	padding-left: 45px;
	font-size: 1.125em;
}

.mypageH2Style01 span {
	display: table-cell;
	vertical-align: middle;
}

.mypageH2Style01::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 35px;
	height: 35px;
	margin-top: -18px;
}

.mypageH2Style01.mypageIco01::before {
	background: url(/sp/ta/images/ico_h_mypage_01.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageH2Style01.mypageIco02::before {
	background: url(/sp/ta/images/ico_h_mypage_02.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageH2Style02 {
	display: table;
	position: relative;
	margin: 0 0 15px;
	padding-left: 45px;
	font-size: 1.125em;
}

.mypageH2Style02 span {
	display: table-cell;
	vertical-align: middle;
}

.mypageH2Style02::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 35px;
	height: 35px;
	margin-top: -18px;
}

.mypageH2Style02.mypageIco01::before {
	background: url(/sp/ta/images/ico_h_mypage_01.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageH2Style02.mypageIco02::before {
	background: url(/sp/ta/images/ico_h_mypage_02.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageH2Style02.mypageIcoLogin::before {
	background: url(/sp/ta/images/ico_h_mypage_login.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageH2Style02.mypageIcoPass::before {
	background: url(/sp/ta/images/ico_h_mypage_pass.png) center center no-repeat;
	background-size: 100% 100%;
}

.mypageInput input {
	width: 100%;
}

/* table */
.mypageStopTable {
	table-layout: fixed;
}

.mypageStopTable .col1 {width: 29%;}
.mypageStopTable .col2 {width: 51%;}
.mypageStopTable .col3 {width: 20%;}

.mypageStopTable .btn01.b01.courseBtn {
	width: 47%;
	padding: 5px 21px 4px 30px;
	background-position: 12px center;
}

.mypageStopTable .bgGray01 {
	background: #fff !important;
}

.mypageStopSort {
	display: inline-block;
}

/*-------------------------------------
common parts
-------------------------------------*/
.boxForm {
	padding: 15px;
}

.boxForm.blue {
	background-color: #d3e7ee;
}

.boxForm.orange {
	background-color: #ffe18f;
}

.boxFormInner {
	padding: 12px 15px;
	background: #fff
}

/* heding */
/* h2Style */
.h2Style04 {
	position: relative;
	margin: 21px 0 10px;
	padding-left: 30px;
	font-size: 1.125em;
}
.h2Style04::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 22px;
	height: 22px;
	margin-top: -14px;
}

/* resultBlock */
.resultBlock .resultSelectBox {
	width: 100%;
	margin-top: 15px;
	font-size: 0.929em;
	vertical-align: middle;
}
.resultBlock .resultSelectBox > dt {
	margin-right: 4px;
	vertical-align: middle;
}
.resultBlock .resultSelectBox > dd span {
	vertical-align: middle;
}
.resultBlock .resultSelectBox > dd span.resultSelectTxt {
	margin-left: 4px;
}
.resultBlock .resultSelectBox > dd .resultSelectElm {
	display: inline-block;
	padding: 6px 28px 6px 10px;
	border: 1px solid #c4c4c4;
	border-radius: 5px;
	background: #ececec;
	background: url(/sp/ta/images/bullet_04.png) right center no-repeat, -moz-linear-gradient(top, #fff 0%, #dcdcdc 100%);
	background: url(/sp/ta/images/bullet_04.png) right center no-repeat, -webkit-linear-gradient(top, #fff 0%,#dcdcdc 100%);
	background: url(/sp/ta/images/bullet_04.png) right center no-repeat, linear-gradient(to bottom, #fff 0%,#dcdcdc 100%);
	box-shadow:0px 1px 1px 0px rgba(0,0,0,.15);
	text-align: center;
	text-decoration: none;
	color: #000;
}
.resultBlock .resultSearch {
	font-size: 0.929em;
	text-align: right;
}

/* courseBtn */
.btn01.b01.courseBtn {
	width: 70%;
	padding: 5px 21px 4px 35px;
	box-shadow: none;
}

.btn01.b01.courseBtn.courseBIco {
	position: relative;
}
.btn01.b01.courseBtn.courseBIco::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 4px;
	width: 15px;
	height: 13px;
	margin-top: auto;
	margin-bottom: auto;
	background: url(/sp/ta/images/ico_altWin_01.png) center no-repeat;
	background-size: contain;
}

/*-------------------------------------
料金合計
-------------------------------------*/
.side {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 7;
}

.sideBtnBlock {
	margin: 0 5px;
	text-align: right;
}

.sideBtnBlock .sideBtn {
	display: inline-block;
	width: 66px;
	padding: 5px 5px 0 5px;
}

.sideBtnBlock .sideBtn img {
	width: 100%;
	vertical-align: bottom;
}

.boxTotalPrice {
	padding: 7px;
	background: #ffe18f;
}

.boxTotalPrice .inner {
	padding: 0 15px;
	background: #fff;
	transition: 0.2s;
}

.boxTotalPrice .blockWrap {
	display: none;
/*
	padding-bottom: 10px;
	border-bottom: 1px solid #e7e7e7;
*/
}

.boxTotalPrice .block {
	display: table;
	width: 100%;
}

.boxTotalPrice .block + .block {
	margin-top: 5px;
	padding-top: 10px;
	border-top: 1px dotted #c2c2c2;
}

.boxTotalPrice .block.notesBlock {
	margin-bottom: -10px;
	padding-top: 5px;
	border-top: 1px solid #e7e7e7;
}

.boxTotalPrice .block .column01 {
	display: table-cell;
	width: 24%;
}

.boxTotalPrice .block .column02 {
	display: table-cell;
	width: 76%;
	padding-left: 4%;
}

.boxTotalPrice .block .head {
	font-weight: bold;
	font-size: 0.929em;
	color: #0184af;
}

.boxTotalPrice .block .txt {
	display: inline-block;
	font-size: 	0.857em;
}

.boxTotalPrice .block .txt:not(:last-child) {
	padding-right: 5px;
}

.boxTotalPrice .block .txt span {
	font-weight: bold;
	font-size: 1.083em;
	vertical-align: baseline;
}

.boxTotalPrice .total {
	padding: 10px 0;
	font-weight: bold;
	overflow: hidden;
}

.boxTotalPrice .block .list {
	list-style-type: disc;
}

.boxTotalPrice .block .list li {
	margin-left: 1.2em;
	font-size: 0.857em;
}

.boxTotalPrice .total .txt01 {
	display: block;
	float: left;
	padding-top: 5px;
	font-size: 0.813em;
}

.boxTotalPrice .total .txt01 span {
	display: inline-block;
	padding-top: 2px;
	font-size: .875em;
}

.boxTotalPrice .total .txt02 {
	display: block;
	float: right;
	color: #ff0000;
	font-size: 1.250em;
}

.boxTotalPrice .total .txt02 span {
	display: inline-block;
	padding-top: 3px;
	font-size: .8em;
}

.boxTotalPrice .total .txt03 {
	font-weight: normal;
}

.boxTotalPrice .cancellation {
	display: none;
	margin-top: 5px;
	padding: 7px;
	font-size: 1.143em;
	background: #f0f0f0;
	text-align: center;
}

.boxTotalPrice .cancellation .txt {
	display: inline-block;
	padding-left: 20px;
	font-size: 0.813em;
	font-weight: bold;
	position: relative;
}

.boxTotalPrice .cancellation .txt::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 15px;
	height: 13px;
	margin-top: -8px;
	background: url(/sp/ta/images/ico_warning_01.png) 0 0 no-repeat;
	background-size: cover;
}

.boxTotalPrice .cancellation .date {
	display: block;
	font-size: 0.813em;
	font-weight: bold;
	color: #ff0000;
	line-height: 1;
}

.side.sideOpen .boxTotalPrice .inner {
	padding: 15px;
}

@media screen and (max-width:320px) {
	.priceTable td {
		padding: 8px 2px 7px;
		word-break: break-all;
	}
}

@media screen and (orientation:landscape) {
	.boxTotalPrice .inner {
		max-height: 70vh;
		overflow-y: auto;
	}
}

/*-------------------------------------
login
-------------------------------------*/
.loginBody {
	padding-bottom: 50px;
}

@media screen and (max-width:300px) {
  .loginBody .container {
    margin: 0 7px;
  }

  .boxFormInner {
    width: 260px;
    overflow: hidden
  }
}

/*-------------------------------------
General parts
-------------------------------------*/
.bgWhite01 {
	background-color: #fff !important;
}
.bgGray01 {
	background-color: #f5f5f5 !important;
}
.bgBlue01 {
	background-color: #e7f7fb !important;
}

/* btn */
.btnMinus01 input,
.btnPlus01 input {
	display: none;
}
.btnMinus01,
.btnPlus01 {
	display: inline-block;
	padding: 1em;
	border-radius: 5px;
	background: #ececec;
	background: -moz-linear-gradient(top, #fff 0%, #dcdcdc 100%);
	background: -webkit-linear-gradient(top, #fff 0%,#dcdcdc 100%);
	background: linear-gradient(to bottom, #fff 0%,#dcdcdc 100%);
	box-shadow:0px 1px 1px 0px rgba(0,0,0,.15);
	border: 1px solid #c4c4c4;
	text-align: center;
	text-decoration: none;
	color: #000;
	position: relative;
}
.btnPlus01 {
	margin-left: 3px;
}
.btnMinus01::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 3px;
	margin: -1px 0 0 -6px;
	background: url(/sp/ta/images/ico_minus_01.png) 0 0 no-repeat;
	background-size: 100%;
}
.btnPlus01::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 13px;
	margin: -6px 0 0 -6px;
	background: url(/sp/ta/images/ico_plus_01.png) 0 0 no-repeat;
	background-size: 100%;
}

/* table */
/* tableC */
.tableC {width:100%}
.tableC th,.tableC td {border-right:1px solid #dbdbdb;border-bottom:1px solid #dbdbdb;border-left:1px solid #dbdbdb;display: block;}
.tableC tr:first-child > *:first-child {border-top:1px solid #dbdbdb;}
.tableC th {padding:8px 10px 7px;background:#e7f7fb}
.tableC td {padding:8px 10px 7px}
.tableC.thL th {text-align:left}
.tableC.thC th {text-align:center}
.tableC .title {background:#128cb4;color:#fff}
.tableC th.noBorder, .tableC td.noBorder{border-top:none}