body {
    background: #fff;
   	font-family:メイリオ,meiryo,ヒラギノ角ゴ pro w3,hiragino kaku gothic pro, Arial,Helvetica,sans-serif;
    line-height: 1.5em;
    color: #333333;
}

a {
	text-decoration: none;
	color: #fff;
}

a:link {
	color: #fff;
}

a:hover {
	color: #fff;
}

a:visited {
	color: #fff;
}

.fb {
	font-weight: bold;
}

.fs9 {
	font-size: 9px;
}

.fs14 {
	font-size: 14px;
}

.fs16 {
	font-size: 16px;
}

.fs18 {
	font-size: 18px;
}

.fs16p {
	font-size: calc(16 / 375 * 90vw);
}

.fs18p {
	font-size: calc(18 / 375 * 90vw);
}

.fs22 {
	font-size: 22px;
}

.fs24 {
	font-size: 24px;
}

.fs28 {
	font-size: 28px;
}

.fs36 {
	font-size: 36px;
}


.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}


.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
}


.mb30 {
	margin-bottom: 30px;
}


.tc {
	text-align:center;
}

.tl {
	text-align:left;
}

.tr {
	text-align:right;
}

.w96 {
	width: 96%;
	margin:0 auto;
}

.w80 {
	width: 80%;
	margin:0 auto;
}

.main_color {
	color: #14575C;
}

.main_red {
	color: #9D0B0B;
}

.cw {
	color: #fff;
}

.cy {
	color: #FAFA05;
}


/*header*/

a.sp_head:link {
	color: #14575C;
}

a.sp_head:hover {
	color: #14575C;
}

a.sp_head:visited {
	color: #14575C;
}


.header {
	position: fixed;
	display: flex;
	width: 100%;
	top: 0;
	padding: 3%;
	height: 70px;
	justify-content: space-between;
	background: #fff;
	z-index: 10;
}

.nav_btn_box {
	display: block;
	border: solid 1px #14575C;
	width: 50px;
	height: 50px;
}

.sp_menu{
	display: block;
	top: calc(70px + 3%);
	width: 100%;
	padding-bottom: 50px;
	height: 100%;
	background: rgba(20, 87, 92, 0.65);
	position: fixed;
	left: 100%;
	z-index: 100;
	overflow-y: scroll;
	transition: all 0.2s ease-out;
}

.is_open{
		left:0;
	}


.sp_menu ul li{
	padding: 15px 15px 10px 30px;
	font-size: 16px;
	font-weight: bold;
	text-align:left;
	border-bottom: 1px dotted rgba(255,255,255,0.2);
}

.sp_menu a{
	color: rgba(255, 255, 255, 0.96);
}


.nav_button {
	z-index: 20;
	position: relative;
	width: 30px;
	height: 30px;
	top: 7px;
	left: 10px;
	cursor:pointer;
}

.nav_button:hover {
	cursor: pointer;
}
.nav_button span {
	position: absolute;
	width: 100%;
	height: 6px;
	background: #006666;
}

.nav_button span:nth-of-type(1) {	top: 5px;}
.nav_button span:nth-of-type(2) {	top: 15px;}
.nav_button span:nth-of-type(3) {	bottom: 0;}
.nav_button.activer span:nth-of-type(1) {
	-webkit-transform: translateY(11px) rotate(-45deg);
	transform: translateY(11px) rotate(-45deg);
}
.nav_button.activer span:nth-of-type(2) {
	opacity: 0;
}
.nav_button.activer span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}

.menu_bg{
	display:block;
	position:fixed;
	pointer-events: none;
	top:calc(70px + 3%);
	left:0;
	height:100%;
	width:100%;
	background: rgba(20, 87, 92, 0.65);	
	z-index:99;
	opacity:0;
	transition: all 0.2s ease-out;
}
.menu_bg.is_open{
	display:block;
	pointer-events: auto;
	width:100%;
	left:0;
	opacity:0.5;
}


/*main*/

.main {
	margin: 90px auto 20px;
	width: 100%;
}

.top_box01 {
	background: #ECF8FA;
	color: #14575C;
	padding: 6px 0px 6px 12px;
	font-size: 12px;
	font-weight: bold;
    line-height: 1.5em;
}

.top_banner {
	background-image: url(../images/top_banner.png);
	background-repeat: no-repeat;
	width: 100%;
	height: calc(126 / 375 * 100vw);
	background-position-x: center;
	background-position-y: -100px;
	position: relative;
}

.red_box {
	position: absolute;
	top:40px;
	right: 0px;
	height: 40px;
	background: #9D0B0B;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 0px 10px;
	line-height: 40px;
}

.middle_banner {
	background-image: url(../images/middle_banner.png);
	background-repeat: no-repeat;
	width: 100%;
	height: calc(440 / 375 * 100vw);
	position: relative;
    background-size: cover;
    padding-top: 20px;
}

.middle_text {
	color: #fff;
	font-size: calc(18 / 375 * 100vw);
	font-weight: bold;
	line-height: 2em;
	text-align: center;
	text-decoration: underline solid 2px #FAFA05;
	text-underline-position: under;
	margin-bottom: calc(20 / 375 * 100vw);
}

.btn_middle {
	width: calc(320 / 375 * 100vw);
	height: calc(60 / 375 * 100vw);
	margin: 0 auto calc(20 / 375 * 100vw);
	border-radius: calc(12 / 375 * 100vw);
	background: #1A91A8;
	color: #fff;
	font-size: calc(24 / 375 * 100vw);
	font-weight:bold;
	line-height: calc(60 / 375 * 100vw);
	display: flex;
	justify-content: right;
}

.btn_middle_text {
	width: 80%;
	text-align: center;
}

.icon_arrow {
	background: #fff;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	color: #1A91A8;
	margin: 12px 12px 12px 0px;
	text-align: center;
	line-height: 42px;
	transform:rotate(-90deg);
}

.data_block {
	width: 96%;
	margin: 15px auto;
}

.bottom_title {
	margin-top: 50px;
	background: #14575C;
	width: 100%;
	height: calc(60 / 375 * 100vw);
	font-size: calc(24 / 375 * 100vw);
	font-weight: bold;
	color: #fff;
	line-height: calc(60 / 375 * 100vw);
	text-align: center;
}


.bottom_box {
	width: 96%;
	margin: 15px auto;
}


.bottom_under_box {
	width: 96%;
	height: calc(234 / 375 * 100vw);
	background: #1A91A8;
	margin: 15px auto;
	border-radius: calc(12 / 375 * 100vw);
}


.btn_bottom {
	width: calc(320 / 375 * 100vw);
	height: calc(60 / 375 * 100vw);
	margin: 0 auto calc(20 / 375 * 100vw);
	border-radius: calc(12 / 375 * 100vw);
	background: #FD9125;
	color: #fff;
	font-size: calc(24 / 375 * 100vw);
	font-weight:bold;
	line-height: calc(60 / 375 * 100vw);
	display: flex;
	justify-content: right;
}

.icon_arrow02 {
	background: #fff;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	color: #FD9125;
	margin: 12px 12px 12px 0px;
	text-align: center;
	line-height: 42px;
	transform:rotate(-90deg);
}

.box_inner {
	display: flex;
	padding-top: calc(20 / 375 * 100vw);
    justify-content: space-evenly;
}

.icon_pc {
	background: #EFEFEF;
	width: calc(84 / 375 * 100vw);
	height: calc(84 / 375 * 100vw);
	border-radius: 50%;
	text-align: center;
}

.icon_pc img{
	position: relative;
	top: calc(20 / 375 * 100vw);
}


.last_title {
	width: 96%;
	margin: 16px auto 0;
	background: #7db2af;
	height: calc(85 / 375 * 100vw);
	font-size: calc(24 / 375 * 100vw);
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding-top: 23px;
	line-height: 1.3em;
}



/*about*/

.main_top_box {
	width: 96%;
	margin: 15px auto;
}

.point_box {
	background-image: url(../images/obi_bg.png);
	background-repeat: no-repeat;
	width: 100%;
	height: calc(80 / 375 * 100vw);
	position: relative;
    background-size: contain;
    padding-top: calc(6 / 375 * 100vw);
    color: #D7F8F3;
    text-align: center;
    line-height: 1.8em;
}

.text_area {
	width: 96%;
	margin: 10px auto 15px;
}



/*price*/

.price_text {
	width: 96%;
	margin: 5px auto 15px;
}

.price_title {
	width: 100%;
	height: calc(50 / 375 * 100vw);
	line-height: calc(50 / 375 * 100vw);
	background: #14575C;
	color: #fff;
	font-size: calc(22 / 375 * 100vw);
	font-weight: bold;
	margin: 10px auto 0px;
	text-align: center;
}

.price_list {
	width: 96%;
	margin: 0px auto 30px;
	border: solid 1px #707070;
}

.price_list td{
	padding: 5px;
}

.price_list_left {
	width:70%;
}

.price_list_right {
	width:30%;
	text-align: right;
}

.bg_blue {
	background: rgba(26, 145, 168, 0.2);
}

.bg_line {
	border-bottom: solid 1px #707070;
}


/*option*/

.option_title {
	width: 96%;
	height: calc(50 / 375 * 100vw);
	line-height: calc(50 / 375 * 100vw);
	background: #14575C;
	color: #fff;
	font-size: calc(22 / 375 * 100vw);
	font-weight: bold;
	margin: 10px auto 0px;
	text-align: center;
}

.attn_area {
	width: 96%;
	margin: -10px auto 20px;
	border-top: solid 3px #9D0B0B;
	border-bottom: solid 3px #9D0B0B;
	line-height: 1.2em;
}



/*jirei*/

.jirei_title {
	width: 96%;
	height: calc(50 / 375 * 100vw);
	line-height: calc(50 / 375 * 100vw);
	background: #1A91A8;
	color: #fff;
	font-size: calc(22 / 375 * 100vw);
	font-weight: bold;
	margin: 10px auto 0px;
	border-radius: calc(25 / 375 * 100vw);
	text-align: center;
}

dt {
	color: #1A91A8;
}


/*qa*/

.faq_area {
	width: 96%;
	margin: 10px auto 15px;
}


.faq_icon img{
	width: calc(32 / 375 * 100vw);
	margin: 5px;
}

.faq_q {
	font-size: 14px;
	font-weight: bold;
	color:#1A91A8;
	margin-top: 5px;
	margin-left: 10px;
}

.faq_a {
	font-size: 14px;
	font-weight: bold;
	margin-top: 5px;
	margin-left: 10px;
}

.faq_a a{
	color: #333333;
	text-decoration: underline;
}



/*company*/

.company_table {
	width: 100%;
	margin: 10px auto 20px;
	border-top: solid 3px #14575C;
	border-bottom: solid 3px #14575C;
	border-collapse:collapse;
	
}

.company_table th{
	width: 26%;
	padding: 2%;
	font-size: 14px;
	font-weight: bold;
}

.company_table td{
	padding: 2%;
	font-size: 14px;
	font-weight: bold;
}

.bc_gray {
	background: rgba(51, 51, 51, 0.09);
}


/*inquery*/
.inquery_area {
	width: 96%;
	margin: 10px auto 15px;
	font-size: 16px;
}

form input[type=text],form textarea{
	background-color:#fff;
	font-size: 18px;
	width:90%;
	margin: 5px 10px 20px;
}

select{
	background-color:#fff;
	font-size: 18px;
	width:50%;
	margin: 5px 10px;
}

blockquote.pl{
	margin: 1em;
	padding:.5em;
	border:1px solid #ccc;
	height:10em;
	overflow-y:auto;
}
blockquote.pi{
	margin:1em 2em;
	padding:.5em;
	border:3px double #e90;
}

.btn_form {
	width: calc(320 / 375 * 100vw);
	height: calc(60 / 375 * 100vw);
	margin: 0 auto calc(20 / 375 * 100vw);
	border-radius: calc(12 / 375 * 100vw);
	background: #FD9125;
	color: #fff;
	font-size: calc(24 / 375 * 100vw);
	font-weight:bold;
	line-height: calc(60 / 375 * 100vw);
	cursor: pointer;
}

.btn_form[disabled=disabled] {
	width: calc(320 / 375 * 100vw);
	height: calc(60 / 375 * 100vw);
	margin: 0 auto calc(20 / 375 * 100vw);
	border-radius: calc(12 / 375 * 100vw);
	background: #ccc;
	color: #fff;
	font-size: calc(24 / 375 * 100vw);
	font-weight:bold;
	line-height: calc(60 / 375 * 100vw);
	pointer-events: none;
}



/*footer*/

.sp_footer {
	background: #14575C;
	text-align: center;
	color: #fff;
	padding-top: 16px;
}

#pagetop {
	position: fixed;
	display: block;
	border: solid 2px #14575C;
	right: 10px;
	bottom: 20px;
	width: 30px;
	height: 30px;
	cursor: pointer;
	background: #fff;
	opacity: 0.5;
}


.pagetop_arrow{
	margin: 12px auto;
	width: 10px;
	height: 10px;
	border: 2px solid;
	border-color: #006666 #006666 transparent transparent;
	transform: rotate(-45deg);
}
