@charset "utf-8";

@media screen and (max-width: 767px) {
	
	figure img {
		width: 100%;
		height: auto;
	}
	
	header {
		height: 90px;
		overflow: hidden;
	}
	
	header #headerBar {
		padding: 10px 0px 0px calc(100% - 250px);
		width: auto;
		min-width: 0px;
	}
	
	header #headerBar ul {
		width: auto;
		flex-wrap: wrap;
	}
	
	header #headerBar ul li {
		margin-bottom: 10px;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.8rem;
	}
	
	header #headerBar ul li:last-of-type {
		margin-right: 15px;
	}
	
	header #headerMain {
		width: auto;
	}
	
	header #headerMain figure {
		width: 70px;
		height: 70px;
		top: -80px;
		left: 15px;
	}
	
	body > h1 {
		margin: 0px;
		padding: 100px 15px 10px;
		width: auto;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: left;
	}
	
	body > h1 br {
		display: none;
	}
	
	main.top > section {
		padding: 30px 0px 0px;
		min-width: 0px;
	}
	
	main.top > section > div {
		padding: 0px 15px 10px;
		width: auto;
	}
	
	main.top > section:nth-of-type(even) {
		background-size: 100% auto;
	}
	
	main.top > section:nth-of-type(even) > div {
		padding: 0px;
		min-width: 0px;
		background-size: 100% auto;
	}
	
	main.top > section:nth-of-type(even) > div > div {
		padding: 0px 15px 10px;
		width: auto;
	}
	
	main.top > section > h1 {
		margin: 0px 15px 12px;
		padding: 10px 0px;
		width: auto;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 2.0rem;
	}
	
	main.top > section > h1::before,
	main.top > section > h1::after {
		width: 39px;
		height: 39px;
	}
	
	main.top > section > h1::before,
	main.top > section > h1::after {
		background-size: 39px auto;
	}
	
	main.top > section > p.dsc {
		margin: 0px 15px 0px;
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	#servSec {
		padding: 0px 0px 20px;
	}
	
	main.top > section#servSec > div#servSecT {
		background-color: #10bad1;
	}
	
	#servSec #servSecTIn {
		padding: 10px 15px;
		width: auto;
		display: block;
	}
	
	#servSec #servSecTR {
		padding: 20px 0px 0px;
		width: auto;
	}
	
	#servSec .listBox {
		padding: 10px 0px;
		display: block;
	}
	
	#servSec .listBox li {
		padding: 0px 0px 20px;
		width: auto;
		font-size: 1.6rem;
		line-height: 2.4rem;
	}
	
	#servSec .listBox li div {
		padding: 20px 0px;
		min-height: 0px;
		text-align: center;
	}
	
	#servSec .listBox li.boxL div {
		padding: 20px 0px;
		text-align: center;
	}
	
	#servSec #servBox {
		padding: 10px;
		width: auto;
	}
	
	#servSec #servBox dt {
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
	}
	
	#servSec #servBox dd {
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.4rem;
	}
	
	#servSec #servBox dd.price {
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 2.4rem;
	}
	
	#servSec .link {
		padding: 10px 0px 0px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: right;
	}
	
	#servSec .link a {
		padding: 0px 22px 0px 0px;
		background-size: 17px auto;
	}
	
	#servSec #servSecB {
		padding-top: 20px;
	}
	
	main.top > section#meritSec > div {
		padding-bottom: 0px;
	}
	
	main.top > section#meritSec > div > div{
		padding: 10px 10px 20px;
	}
	
	#meritSec .listBox {
		margin: 0px auto 20px;
		display: block;
	}
	
	#meritSec .listBox li,
	#meritSec .listBox li:last-of-type {
		margin: 0px auto 20px;
	}
	
	#meritSec .note {
		padding: 0px 5px;
	}
	
	#meritSec .note li {
		margin: 0px 0px 10px;
		padding-left: 1em;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.1rem;
		text-align: left;
		text-indent: -1em;
	}
	
	#optionSec {
		padding-bottom: 0px;
	}
	
	main.top > section#optionSec > p.dsc {
		margin-bottom: 20px;
	}
	
	#optionSec > h2 {
		padding: 8px 15px;
		color: #fff;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.1rem;
		text-align: center;
	}
	
	main.top > section#optionSec > div {
		padding-top: 20px;
	}
	
	#optionSec .listBox {
		display: block;
	}
	
	#optionSec .listBox li {
		padding: 0px 0px 20px;
		width: auto;
	}
	
	#optionSec .listBox li > dl {
		min-height: 0px;
		box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.2);
	}
	
	#optionSec .listBox li > dl dt {
		font-size: 1.8rem;
		line-height: 2.4rem;
	}
	
	#optionSec .listBox li > dl dt figure {
		margin-right: 10px;
		width: 60px;
	}
	
	#optionSec .listBox li > dl dd {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	main.top > section#flowSec > div {
		padding-bottom: 20px;
	}
	
	main.top > section#flowSec > p.dsc {
		margin-bottom: 20px;
	}
	
	#flowSec dl {
		margin: 0px 0px 20px;
		background: none;
		border: 3px solid #10BAD1;
		align-items: center;
		display: block;
	}
	
	#flowSec dl dt {
		padding: 10px 15px;
		width: auto;
		background-color: #10BAD1;
		color: #FAEE00;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
		text-align: left;
	}
	
	#flowSec dl dt span {
		margin-right: 20px;
		display: inline-block;
	}
	
	#flowSec dl dd {
		padding: 12px 5px;
	}
	
	#flowSec dl dd h2 {
		font-size: 1.6rem;
		line-height: 2.4rem;
	}
	
	#flowSec dl dd p {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	#flowSec .note li {
		margin: 0px 0px 18px;
		padding-left: 1em;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 1.8rem;
		text-align: left;
		text-indent: -1em;
	}
	
	main.top > section#priceSec > div {
		padding-bottom: 50px;
	}
	
	#priceSec .priceBox {
		margin: 0px 0px 24px;
		padding: 30px 0px 0px;
		width: auto;
	}
	
	#priceSec .priceBox dl {
		padding: 10px 20px;
		min-height: 0px;
		background-color: #fff;
		border: 3px solid #8BC4C9;
		box-shadow: 5px 5px 10px 5px rgba(0,0,0,0.2);
		display: block;
	}
	
	#priceSec .priceBox dl dt {
		margin: 0px 0px 20px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: left;
	}
	
	#priceSec .priceBox dl dd {
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 3.0rem;
		text-align: left;
	}
	
	#priceSec .priceBox dl dt span,
	#priceSec .priceBox dl dd span {
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: left;
		display: inline-block;
	}
	
	#priceSec .note li {
		padding-left: 1em;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: left;
		text-indent: -1em;
	}
	
	#priceSec .priceLink {
		padding: 40px 0px 20px;
	}
	
	#priceSec .priceNavi {
		padding: 0px 0px 20px;
	}
	
	#priceSec .priceLink,
	#priceSec .priceNavi {
		display: block;
	}
	
	#priceSec .priceLink li,
	#priceSec .priceNavi li {
		margin: 0px 0px 20px;
		width: 100%;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}
	
	#priceSec .priceLink li a,
	#priceSec .priceNavi li a {
		padding: 12px 0px;
		border-radius: 5px;
		display: block;
	}
	
	#priceSec .priceLink li a span {
		padding-right: 30px;
	}
	
	#priceSec .priceLink li.application a span {
		background-size: 25px auto;
	}
	
	#priceSec .priceLink li.contact a span {
		background-size: 25px auto;
	}
	
	#priceSec .priceNavi li a span {
		padding-right: 20px;
		background-size: 15px auto;
	}
	
	#disclaimerSec h2,
	#specifiedSec h2 {
		font-size: 1.6rem;
		line-height: 2.4rem;
	}
	
	#disclaimerSec h3,
	#disclaimerSec p {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	#disclaimerSec .note,
	#disclaimerSec p {
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 1px dotted #10BAD1;
	}
	
	#specifiedSec ul li {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	#specifiedSec p {
		font-size: 1.4rem;
		line-height: 2.8rem;
	}
	
	footer {
		min-width: 0px;
	}
	
	footer > div {
		padding: 10px 15px;
		width: auto;
	}
	
	footer p {
		font-size: 1.0rem;
		line-height: 1.2rem;
	}
	
	#pageTop {
		width: 60px;
		right: 15px;
		bottom: 50px;
	}
	
	#breadCrumb {
		min-width: 0px;
	}
	
	#breadCrumb > div {
		width: auto;
	}
	
	#breadCrumb.contact > div {
		margin-bottom: 20px;
	}
	
	#breadCrumb ul {
		padding: 10px 0px;
	}
	
	#breadCrumb ul li {
		margin: 0px 2%;
		padding: 12px 0px;
		width: 29%;
		font-size: 1.0rem;
		line-height: 1.6rem;
	}
	
	#breadCrumb ul li span {
		margin: 0px 10%;
		padding-right: 14px;
		background-size: 9px auto;
	}
	
	#breadCrumb ul li.set span {
		background-size: 9px auto;
	}
	
	#formCts > h1 {
		padding: 10px 15px;
		width: auto;
		font-size: 1.6rem;
		line-height: 2.4rem;
	}
	
	#formCts h2 {
		min-width: 0px;
		font-size: 1.4rem;
		line-height: 2.0rem;
	}
	
	#formCts h2 span {
		padding: 9px 15px;
		width: auto;
	}
	
	#formCts .formSec,
	#formCts .formCfSec,
	#formCts .formCmpSec,
	#formCts .formSvSec {
		width: auto;
	}
	
	#formCts .formSec {
		padding: 10px 15px 20px;
	}
	
	#formCts .formCfSec {
		padding: 10px 15px 40px;
	}
	
	#formCts .formSvSec {
		padding: 10px 15px 30px;
	}
	
	#formCts .formCmpSec {
		padding: 1px 15px 30px;
	}
	
	#formCts .formSec > .boxTxt,
	#formCts .formSvSec > .boxTxt {
		margin: 0px 0px 5px;
		padding: 8px 10px;
		font-size: 1.2rem;
		line-height: 1.8rem;
	}
	
	#formCts .formSec > .boxTxt {
		margin: 0px 0px 20px;
	}
	
	#formCts .formSvSec > .link {
		padding: 0px;
		font-size: 1.2rem;
		line-height: 1.8rem;
	}
	
	#formCts .domainSec,
	#formCts .domainSec dl,
	#formCts .domainSec ul {
		display: block;
	}
	
	#formCts .domainSec {
		padding: 15px 0px 15px;
	}
	
	#formCts .domainSec dl,
	#formCts .domainSec ul {
		width: auto;
		float: none;
	}
	
	#formCts .domainSec dl dt {
		margin: 0px 0px 6px;
		width: auto;
		font-size: 1.4rem;
		line-height: 2.0rem;
	}
	
	#formCts .domainSec dl dt .req {
		margin: 0px 6px 0px 0px;
		padding: 1px 0px;
		width: 36px;
		color: #fff;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.4rem;
		text-align: center;
		display: inline-block;
		vertical-align: middle;
	}
	
	#formCts .domainSec dl dd input {
		padding: 12px 12px;
		width: 100%;
		background-color: #fff;
		border: 3px solid #8BC4C9;
		border-radius: 5px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: left;
		-webkit-appearance: none;
		box-sizing: border-box;
	}
	
	#formCts .domainSec ul {
		flex-wrap: wrap;
		display: flex;
	}
	
	#formCts .domainSec ul li {
		padding: 6px 12px 6px 0px;
		width: auto;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
	}
	
	#formCts .colorSec {
		padding: 0px;
	}
	
	#formCts .colorSec ul {
		display: block;
	}
	
	#formCts .colorSec ul li {
		padding: 15px 0px;
		width: auto;
		color: #525454;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
		text-align: left;
	}
	
	#formCts .colorSec ul li.att {
		font-size: 1.2rem;
	}
	
	#formCts .colorSec ul li label {
		padding-left: 60px;
		position: relative;
	}
	
	#formCts .colorSec ul li input + label::before {
		width: 36px;
		height: 20px;
		left: 12px;
		top: 0px;
		position: absolute;
	}
	
	#formCts .optionSec {
		padding: 15px 0px;
	}
	
	#formCts .colorSec ul {
		display: block;
	}
	
	#formCts .optionSec ul li {
		margin: 0px 0px 10px;
		color: #525454;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
		text-align: left;
	}
	
	#formCts .optionSec ul li label {
		padding-left: 5px;
	}
	
	#formCts #button {
		padding: 0px 15px 60px;
		width: auto;
		display: block;
	}
	
	#formCts #button li {
		margin: 0px 0px 20px;
		width: 100%;
	}
	
	#formCts #button li a,
	#formCts #button li input[type="submit"] {
		padding: 12px 0px;
		width: 100%;
		border: none;
		border-radius: 5px;
		color: #fff;
		font-size: 1.6rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: center;
		display: block;
	}
	
	#formCts #button.sv li input[type="submit"],
	#formCts #button.pv li input[type="submit"] {
		background-size: 12px auto;
	}
	
	#formCts #button.sv li input[type="submit"] {
		background-position: right 10px center;
	}
	
	#formCts #button.pv li input[type="submit"] {
		background-position: right 20px center;
	}
	
	#formCts #button.cf li.back a,
	#formCts #button.pv li.back a {
		background-size: 12px auto;
	}
	
	#formCts #button.cf li.back a,
	#formCts #button.pv li.back a {
		background-position: left 20px center;
	}
	
	#formCts #button li.close a {
		background-size: 28px auto;
		background-position: left 30px center;
	}
	
	#formCts .flfc {
		display: block;
	}
	
	#formCts .flfc dl {
		margin: 0px 0px 20px;
		width: auto;
	}
	
	#formCts .flfc dl#address2FS {
		width: auto;
	}
	
	#formCts .flfc dl#prefFS {
		width: auto;
	}
	
	#formCts .formSec dl dd input[type="text"],
	#formCts .formSec dl dd input[type="tel"],
	#formCts .formSec dl dd input[type="email"],
	#formCts .formSec textarea {
		padding: 12px;
		width: 100%;
		background-color: #fff;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		box-sizing: border-box;
	}
	
	#formCts .formSec textarea#outline {
		height: 100px;
	}
	
	#formCts .formSec textarea#cts {
		height: 200px;
	}
	
	#formCts .formSec dl dd ul {
		height: auto;
		align-items: center;
		display: flex;
	}
	
	#formCts .formSec dl dt,
	#formCts .formSec dl dd ul li {
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
		text-align: left;
	}
	
	#formCts .formSec dl dt {
		margin: 0px 0px 6px 0px;
	}
	
	#formCts .formSec dl dt label span {
		font-size: 1.2rem;
	}
	
	#formCts .formSec dl dt .req {
		margin: 0px 6px 0px 0px;
		padding: 1px 0px;
		width: 36px;
		color: #fff;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.4rem;
		text-align: center;
		display: inline-block;
		vertical-align: middle;
	}
	
	#formCts .formSec ul li {
		margin: 0px 24px 0px 0px;
	}
	
	#formCts .formDscSec {
		margin: 0px 15px;
		padding: 0px 0px 20px;
		width: auto;
		display: block;
	}
	
	#formCts .formDscSec > div {
		margin: 0px 0px 20px;
		height: 246px;
	}
	
	#formCts .formDscSec > div > div {
		padding: 10px;
	}
	
	#formCts .formDscSec > div > div > * {
		font-size: 1.4rem;
		line-height: 2.0rem;
	}
	
	#formCts .formAgree {
		margin: 0px 0px;
		padding: 0px;
		width: auto;
		color: #525454;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.8rem;
		text-align: left;
		align-items: center;
		display: flex;
	}
	
	#formCts .formAgree label {
		padding-left: 10px;
	}
	
	#formCts .formAgree .req {
		margin: 0px 6px 0px 0px;
		padding: 1px 0px;
		width: 36px;
		color: #fff;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.4rem;
		text-align: center;
		display: inline-block;
		vertical-align: middle;
	}
	
	#formCts .formCfSec dl {
		padding: 12px 0px;
		width: 100%;
		border-bottom: 1px dotted #10BAD1;
		display: block;
		align-items: flex-start;
	}
	
	#formCts .formCfSec h3,
	#formCts .formCfSec dl dt,
	#formCts .formCfSec dl dd {
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: left;
	}
	
	#formCts .formCfSec h3 {
		padding: 12px 0px;
	}
	
	#formCts .formCfSec dl dt {
		padding: 0px 0px;
		width: auto;
	}
	
	#formCts .formCfSec dl dd.eDd {
		font-size: 1.6rem;
		font-weight: normal;
		line-height: 2.0rem;
	}
	
	#formCts .formCfSec dl dd span.selTC {
		padding-right: 52px;
		position: relative;
	}
	
	#formCts .formCfSec dl dd span.selTC::after {
		content: "";
		width: 36px;
		height: 20px;
		font-size: 0px;
		line-height: 0;
		text-indent: -9999px;
		display: block;
		right: 0px;
		top: 0px;
		position: absolute;
	}
	
	#formCts .formCfSec .formAgree {
		padding: 20px 0px 0px;
	}
	
	#formCts .formCmpSec h1 {
		margin: 10px auto 20px;
		color: #10BAD1;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}
	
	#formCts .formCmpSec h2 {
		margin: 0px auto 10px;
		width: 100%;
		min-width: 0px;
		background: none;
		color: #000;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}
	
	#formCts .formCmpSec p {
		margin: 0px 0px 20px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.0rem;
		text-align: left;
	}

}

