@charset "UTF-8";

html {
	font-size: 62.5%;
}
body {
	width: 100%;
	height: 100%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	color: #231815;
	background: #fff;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
  font-size: 1.4rem;
}
article {
  padding: 0 0 80px;
}
img {
	width: auto;
	max-width: 100%;
	height: auto;
}
sup {
	font-size: 70%;
	vertical-align: top;
}
sub {
	font-size: 70%;
	vertical-align: baseline;
}
a {
	color: #00a0ea;
	text-decoration: underline;
}
button {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.container {
	width: 94%;
	max-width: 980px;
	margin: auto;
}

.mt05 {margin-top:5px !important;}
.mt10 {margin-top:10px !important;}

.red {color: #f00;}
.blue {color: #005AA5;}

.fs-xsmall {font-size: 80%;}
.fs-small {font-size: 90%;}
.fs-middle {font-size: 110%;}
.fs-large {font-size: 120%;}
.fs-xlarge {font-size: 140%;}

.em {font-weight: bold;}
.normal {font-weight: normal;}
.underline {text-decoration:underline;}
.txt-center {text-align: center;}
.txt-right {text-align: right;}
.txt-left {text-align: left !important;}
.nowrap {white-space: nowrap;}

.list > li {
	position: relative;
	padding-left: 1.3em;
}
.list > li + li {
	margin-top: .3em;
}
.list.fs-xsmall > li + li {
	margin-top: 0;
}
.list > li::before,
.list > li > .num {
	position: absolute;
	top: 0;
	left: 0;
}
.list.smldot > li::before {
	content: '・';
}
.list.circle > li::before {
	content: '○';
}
.list.kome > li::before {
	content: '※';
}

/* header */
header h1 {
  padding: 23px 0;
}
header h1 img {
  height: 48px;
}

/* main */
section + section {
  margin-top: 50px;
}
#sms-jizen h2 {
	border-bottom: 4px solid #00A7EA;
	color: #00A7EA;
	font-weight: normal;
	line-height: 1.4;
	text-align: left;
	border-radius: 0;
  font-size: 2.6rem;
  padding: 10px 0;
}
.borderbox {
	border: 3px double #ccc;
  padding: 10px 20px;
}
section > .container > * + * {
	margin-top: .3em;
}
section h3, section h4 {
	position: relative;
}
#sms-jizen section h3 {
	background: #00A7EA;
	color: #fff;
  font-size: 1.7rem;
	font-weight: normal;
  margin: 30px auto .8em;
  line-height: 1.5;
  padding: 5px 15px 5px calc(15px + 1.3em);
  width: 100%;
}
#sms-jizen section h3::before {
  left: 15px;
}
#sms-jizen section h3 {
	font-weight: bold;
}
#sms-jizen section h3::before {
	content: "■";
	position: absolute;
	top: 5px;
	font-weight: normal;
}
section h4 {
	border-bottom: 2px solid #00A7EA;
	color: #00A7EA;
  font-size: 1.8rem;
	font-weight: normal;
	line-height: 1.4;
	width: 100%;
	max-width: 980px;
	margin: 0 auto 1em;
  padding: 0 0 5px 3em;
}
.list.number.flow > li + li {
  margin-top: 40px;
}
.list.number.flow > li + li::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-top-color: #00A7EA;
	margin: auto;
	position: absolute;
  top: -30px;
  left: 100px;
}
.attention {
	margin-top: 1em;
}
.attention h4 {
	border-bottom: none;
	padding: 0;
	margin: 0 0 .2em;
	width: 100%;
  font-size: 1.6rem;
}
#sms-jizen .attention.borderbox {
	background: #FDE9D9;
	border-color: #F9C39D;
}
#sms-jizen .important.borderbox {
  border: 2px solid #f00;
  color: #f00;
}
#sms-jizen * + .important.borderbox {
  margin-top: 1em;
}
.flink_btns {
  overflow: hidden;
  padding-top: 30px;
}
.flink_btns button.btn {
  width: 45%;
  display: inline-block;
  vertical-align: middle;
}
.flink_btns button.btn + .btn {
  margin-left: 15px;
}
button.btn {
	text-align: center;
	text-decoration: none;
  font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	background-color: #00A7EA;
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
	border: none;
	border-radius: 10px;
	box-shadow: 0 3px 1px #ddd;
  padding: 20px;
}
button.btn:disabled {
	background-color: #878787;
	opacity: .4;
}
.flink {
	text-align: center;
  padding: 30px 0;
}
.flink input[type="checkbox"] {
  display: none;
}
.flink input[type="checkbox"] + label {
  position: relative;
  display: inline-block;
  line-height: 24px;
}
.flink input[type="checkbox"] + label {
  padding: 0 0 0 36px;
}
.flink input[type="checkbox"] + label::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  border: 1px solid #ccc;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.flink input[type="checkbox"]:checked + label::after {
  content: "";
  display: block;
  position: absolute;
}
.flink input[type="checkbox"]:checked + label::after {
  width: 24px;
  height: 10px;
  border-left: 4px solid #00A7EA;
  border-bottom: 4px solid #00A7EA;
  top: 0;
  left: 3px;
	-ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* footer */
footer a {
	text-decoration: none;
	color: #000;
}
footer .container {
	overflow: hidden;
	font-size: 12px;
	line-height: 1.1;
}
footer .container > * {
	display: inline-block;
}
footer .container > *:first-child {
	float: left;
}
footer .container > *:last-child {
	float: right;
}
footer ul li {
	display: inline-block;
	padding-right: 10px;
}
footer ul li + li {
	border-left: 1px solid #231815;
	padding-left: 12px;
}
footer ul + a {
	background: #878787;
	color: #fff;
	width: 108px;
	text-align: center;
	padding: 10px 0;
}
footer .copyright {
	border-top: 1px solid #878787;
	padding: 25px 0;
}
footer .copyright .logo {
  width: 107px;
}
footer .copyright small {
	color: #868686;
  display: inline-block;
  font-size: 10px;
}



/* スマホ向けのスタイル：960px */
@media only screen and (max-width:768px){
	.pc {display: none;}
	.l_row > * {
		display: block;
	}
	body {
		font-size: 1.3rem;
	}
	article {
		padding: 0 0 50px;
	}
	
	/* header */
	header h1 {
		padding: 15px 0;
	}
	header h1 img {
		height: 36px;
	}
	
	/* main */
	h2 {
		padding: 10px 0;
		box-shadow: 0 3px 0 #ddd;
	}
	h2 img {
		height: 24px;
		display: block;
		margin: auto;
	}
	h2 img + img {
		margin-top: 7px;
	}
	#sms-jizen {
		border-top: 2px solid #00A7EA;
	}
	#sms-jizen h2 {
		font-size: 2.0rem;
		padding: 15px 0;
		border-bottom-width: 1px;
	}
	.borderbox {
		padding: 10px 4%;
	}
	section + section {
		margin-top: 30px;
	}
	#sms-jizen section h3 {
		font-size: 1.5rem;
		line-height: 1.4;
		margin-top: 15px;
		padding: 5px 3% 5px calc(3% + 1.3em);
	}
	#sms-jizen section h3::before {
		left: 3%;
	}
	section h4 {
		padding: 0 3% 5px calc(3em + 3%);
		font-size: 1.6rem;
	}
	.list.number.flow > li + li {
		margin-top: 30px;
	}
	.list.number.flow > li + li::before {
		top: -25px;
		left: 0;
		right: 0;
	}
	.attention h4 {
		font-size: 1.5rem;
	}
	.flink {
		padding: 20px 0;
	}
	.flink .l_row > p:nth-child(2) {
		padding-top: 10px;
	}
  .flink_btns {
    padding-top: 15px;
  }
  .flink_btns button.btn {
    width: 100%;
    display: block;
  }
  .flink_btns button.btn + .btn {
    margin-left: 0;
  }
	button.btn {
		font-size: 1.6rem;
		padding: 20px 4%;
	}
	#sms-jizen button.btn {
		margin-top: 15px;
		padding: 15px;
	}
	
	/* footer */
	footer > .container:first-child {
		width: 100%;
	}
	footer ul {
		display: block;
		padding-left: 3%;
	}
	footer ul + a {
		margin-top: 20px;
	}
	footer .copyright .container > .logo {
		width: 87px;
		float: none;
	}
	footer .copyright .container > small {
		display: block;
		font-size: 8px;
		text-align: center;
		line-height: 1.5;
		margin-top: 25px;
		float: none;
	}
	footer .copyright small > span {
		display: block;
	}

	
}

/* タブレット＆PCのスタイル：768px */
@media only screen and (min-width:769px){
	.sp {display: none;}
	.pc_inline {display: inline-block;}
	.l_row {
		display: table;
		width: 100%;
		table-layout: fixed;
	}
	.l_row > * {
		display: table-cell;
		vertical-align: top;
	}
	a:hover {
		text-decoration: none;
	}
	a, a img, button {
		transition: .5s;
	}
  button.btn:hover {
    cursor: pointer;
  }
  button.btn:disabled:hover {
    cursor: not-allowed;
  }
	
	/* main */
  .flink .l_row + * {
    margin-top: 30px;
  }
  .flink .l_row > p:nth-child(1) {
    padding-right: 15px;
  }
  .flink .l_row > p:nth-child(2) {
    padding-left: 15px;
  }
	
	
	/* footer */
	footer ul li a:hover {
		text-decoration: underline;
	}
	footer ul + a:hover {
		background: #C3C3C3;
	}
	
	
}