/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: collapse;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

*{ box-sizing: border-box;}

html { font-size: 62.5%;}
body,
button,
input,
select,
textarea {
	font-size: 15px;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, メイリオ, sans-serif;
}
@media (max-width: 425px) {
    body,
    button,
    input,
    select,
    textarea { font-size: 14px;}
}

a { color: #494a8d;}
a:hover,a:focus,a:active {
	color: #3e63a7;
	outline: none;
}
address { margin: 0;}
ul,ol {margin: 0;}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, メイリオ, sans-serif;
}
th { font-weight: normal;}
dd { margin: 0;}
ul { list-style: none;}
p { margin-bottom: 10px;}

.b{ font-weight: bold;}
.red{ color: #ff0000;}





.loboMark{
    margin: 0 auto;
    width: 250px;
}
.loboMark img{
    width: 100%;
    height: auto;
}
.allBox{
    background: #f5f5f5;
    padding: 40px 0 80px;
}
.contentsBox{
    max-width: 1200px;
    margin: 40px auto;
    padding: 40px 0;
    background: #fff;
}
.wrap900{
	max-width: 900px;
	margin: 0 auto;
}
@media (max-width: 1200px) {
    .contentsBox{
        margin: 40px 10px;
    }
}
@media (max-width: 1024px) {
    .contentsBox{
        padding: 40px;
    }
}
@media (max-width: 768px) {
    .contentsBox{
        padding: 40px 10px;
    }
}


h3.sisForm-title{
    margin: 0 0 30px;
    padding: 20px 0;
    border-bottom: 1px solid #555;
	color: #333;
	font-size: 36px;
	line-height: 1.3;
	font-weight: normal;
    text-align: center;
	font-family: "Noto Serif JP", sans-serif;
}
@media (max-width: 1024px) {
    h3.sisForm-title{ font-size: 26px;}
}
@media (max-width: 680px) {
    h3.sisForm-title{
        padding: 20px 0;
		font-size: 20px;
	}
}
@media (max-width: 519px) {
	h3.sisForm-title{ text-align: left;}
    h3.sisForm-title span{ display: block;}
    h3.sisForm-title br{ display: none;}
}
@media (max-width: 375px) {
    h3.sisForm-title{
        padding: 0 0 15px;
        font-size: 18px;
    }
}


table {
  border-bottom: 1px solid #ededed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 20px;
  width: 100%;
}

table.tableType01{
	width: 100%;
	background: #faf6e8;
    border: 1px solid #ccc;
}
table.tableType01 th{
	position: relative;
    width: 280px;
	padding: 20px;
	border-bottom: 1px dotted #ccc;
    font-size: 13px;
	line-height: 1.5;
    text-align: left;
    vertical-align: top;
}
table.tableType01 th span.kome{
    margin: 0 0 0 5px;
	color: #f00;
	font-size: 12px;
}
table.tableType01 td{
	padding: 20px;
	background: #fff;
	border-bottom: 1px dotted #ccc;
}
table.tableType01 td .example{
    margin: 5px 0 0;
	font-size: 13px;
	color: #555;
}
table.tableType01 td .example.txt01{ margin: 10px 0 -5px 0;}
table.tableType01 td p{ margin: 0;}
table.tableType01 td .otherInput{ margin: 5px 0 0;}
@media (max-width: 425px) {
    table.tableType01 td .example{ font-size: 12px;}
}

input[type="tel"]{
	padding: 3px;
	border: 1px solid #ccc;
	border-radius: 3px;
}

table.tableType01 td label{
	margin: 0 10px 0 0;
	display: inline-block;
}
table.tableType01 td .addressBox dl{
    display: flex;
    flex-wrap: wrap;
}
table.tableType01 td dl{
    margin: 0 0 10px;
}
table.tableType01 td dt{
	width: 80px;
	padding: 4px 0 0;
}
table.tableType01 td dd{ width: calc( 100% - 80px );}
@media (max-width: 375px) {
    table.tableType01 td .addressBox dl{ display: block;}
    table.tableType01 td dt{ width: 100%;}
    table.tableType01 td dd{ width: 100%;}
}


.tableType01 ::placeholder{ color: #888;}
.inpt80{ width: 80px;}
.inpt100{ width: 100px;}
.inpt150{ width: 150px;}
.inpt200{ width: 200px;}
.inpt300{ width: 300px;}
.inpt400{ width: 400px;}
.inpt500{ width: 500px;}
.txtareaH60{ height: 60px;}
.txtareaH100{ height: 100px;}
.txtareaH200{ height: 200px;}
.wid100par{ width: 100%;}
textarea{ padding: 3px;}

@media (max-width: 1024px) {
	table.tableType01 th{
		padding: 10px;
		font-size: 12px;
	}
	table.tableType01 td{
		padding: 10px;
		font-size: 12px;
	}
	table.tableType01 th span.kome{ right: 10px;}
	.inpt200{
		width: 100%;
		margin: 0 0 5px 0;
	}
	.inpt400{ width: 100%;}
	.txtareaH200{ width: 100%;}
}
@media (max-width: 768px) {
	table.tableType01 th{ width: 180px;}
}
@media (max-width: 600px) {
	table.tableType01 th{
		display: block;
		width: 100%;
        padding: 10px;
		box-sizing: border-box;
	}
    table.tableType01 th br{ display: none;}
	table.tableType01 td{
		display: block;
		width: 100%;
        padding: 10px;
		box-sizing: border-box;
	}
	table.tableType01 tr:last-child td{ border-bottom: none;}
}
@media (max-width: 425px) {
    .inpt100{ width: 75px;}
	.inpt300{ width: 100%;}
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  color: #666;
  font-weight: normal;
  line-height: normal;
  outline: none;
  padding: 4px;
  max-width: 100%;
  -webkit-appearance: none;
}

select{
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
	min-width: 200px;
	background: url(https://www.rikkyo.co.uk/wp-content/uploads/2019/09/arrowD.png) no-repeat right 8px center;
	background-size: 10px auto;
}

input[type="text"],[type="submit"],[type="reset"],[type="button"],[type="tel"], textarea, select{
	-webkit-appearance: none;
}

.sendbtnBox{ text-align: center;}
input[type="button"].sendBtn,
input[type="reset"].sendBtn,
input[type="submit"].sendBtn{
    cursor: pointer;
	color: #333!important;
	font-size: 13px;
	text-decoration: none;
	padding: 10px 20px;
	margin: 0 5px;
	border: 1px solid #ccc;
	background: #fff;
	border-radius: 3px;
	display: inline-block;
    box-sizing: border-box;
}
.sendBtn.go{ border: solid 1px #ff0000!important;}
input[type="button"].sendBtn:hover,
input[type="reset"].sendBtn:hover,
input[type="submit"].sendBtn:hover{ background: #efefef;}

@media (max-width: 425px) {
    input, select, textarea{ font-size: 13px;}
}





.miniBox{
	border: 1px solid #ccc;
	border-radius: 4px;
	padding: 20px;
	margin: 0 0 20px 0;
}
.miniBox.type02{
    border: 1px solid #494a8d;
    background: #e5e6f9;
}
.miniBox p:last-child{ margin: 0;}
@media (max-width: 519px) {
	.miniBox{ padding: 10px;}
    .miniBox p{ font-size: 14px;}
	.box01Ttl{
		 font-size: 14px;
		text-align: left;
	}
}
.caution{
	background: url(https://www.rikkyo.co.uk/wp-content/uploads/2018/09/icon-caution.png) no-repeat left 3px;
	background-size: 16px auto;
	padding: 0 0 0 21px;
	font-weight: bold;
}



/* ---- error ---- */
.waku{
    border: 1px solid #ccc;
    padding: 40px;
}
.errorTxt,
.checkTxt{
    margin: 0 0 40px 0;
    font-size: 16px;
	background: #f7f6f4;
    padding: 20px;
}
p.error_messe{
	margin: 0 auto 10px;
	padding: 10px;
	border: 1px solid #ff0000;
	border-radius: 4px;
	text-align: center;
    background: url("https://www.rikkyo.co.uk/wp-content/uploads/2023/04/error.png") no-repeat 10px center;
    background-size: 20px auto;
	color: #ff0000;
}
p.error_messe:last-child{ margin: 0 auto;}
@media (max-width: 425px) {
    .waku{ padding: 40px 10px;}
    .errorTxt,
    .checkTxt{
        font-size: 14px;
        padding: 10px;
    }
    p.error_messe{
		padding: 8px 10px 8px 35px;
		text-align: left;
	}
}
@media (max-width: 375px) {
    .waku{ padding: 20px 10px;}
}

/* ---- thanks ---- */
.formDonebox{
    padding: 80px 0;
}
.formDonebox h3{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin: 0 0 20px;
}
.done{
	background: #e3f0f4;
    margin: 0 0 40px;
	padding: 20px;
}
.done p{
	margin: 0;
	font-size: 16px;
    line-height: 1.6;
}
.formDonebox .moreLink a{ background-color: #efefef;}
@media (max-width: 640px) {
    .formDonebox{ padding: 40px 20px;}
    .formDonebox h3{
        font-size: 24px;
        margin: 0 0 20px 0;
    }
    .done p{ font-size: 16px;}
}
@media (max-width: 425px) {
    .formDonebox{ padding: 0;}
    .formDonebox h3{ font-size: 18px;}
    .done p{ font-size: 14px;}
}



p.return-btn{
    margin: 0;
	font-size: 14px;
	text-align: center;
}
.return-btn a{
	text-decoration: none;
	display: block;
	width: 300px;
	padding: 12px 10px 10px 10px;
	margin: 0 auto;
	background: #f5f5f5;
	border-radius: 100px;
}
.return-btn a:hover{
	background-color: #ccc;
}




#copyright{
	font-size: 12px;
	line-height: 1.3;
	color: #555;
	text-align: center;
	padding: 10px;
	background: #fff;
}
@media (max-width: 425px) {
	#copyright span{ display: block;}
}

