
@charset "UTF-8";
/* CSS Document */

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video {margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
body{line-height:1;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
nav ul{list-style:none;}
a{margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent;}
table,td{border-collapse:collapse; border-spacing:0;}
/* change border colour to suit your needs */
hr {display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0;}
input, select {vertical-align:middle;}
*,
*::before,
*::after{box-sizing: border-box;}

html{-webkit-overflow-scrolling: touch; overflow: auto; height: 100%; font-size: 62.5%; /* 16px * 62.5% = 10px */}
body{
    font-size:1.6rem; line-height: 1.5;
    font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    overflow-x: hidden; -webkit-text-size-adjust: 100%; color:#333; margin: 0;
}

@media screen and (max-width: 767px){.pc{display:none!important;}}
@media screen and (min-width: 768px){.sp{display:none!important;}}
@media print{.sp{display:none!important;}　.print{display:none!important;}}

.clearfix:after {content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix {display: inline-block;}
/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}

@media screen and (min-width: 768px){
	.hover{opacity:1.0; filter:alpha(opacity=100); /* For IE8 and earlier */}
	.hover:hover{opacity:0.6; filter:alpha(opacity=60); /* For IE8 and earlier */}}

/*float*/
.fL{float:left;}.fR{float:right;}
@media screen and (max-width: 767px){
	.fL_PC,.fR_PC{float:none !important;}.fL_SP{float:left!important;}.fR_SP{float:right!important;}
}
@media screen and (min-width: 768px){
	.fL_PC{float:left!important;}.fR_PC{float:right!important;}
}

/*margin・padding*/
.mt10{margin-top:10px !important;}.mt15{margin-top:15px !important;}.mt20{margin-top:20px !important;}.mt30{margin-top:30px !important;}.mt40{margin-top:40px !important;}.mt50{margin-top:50px !important;}.mt60{margin-top:60px !important;}.mt70{margin-top:70px !important;}
.mr10{margin-right:10px !important;}.mr15{margin-right:15px !important;}.mr20{margin-right:20px !important;}.mr30{margin-right:30px !important;}.mr40{margin-right:40px !important;}.mr50{margin-right:50px !important;}.mr45{margin-right:45px !important;}
.mb10{margin-bottom:10px !important;}.mb15{margin-bottom:15px !important;}.mb20{margin-bottom:20px !important;}.mb30{margin-bottom:30px !important;}.mb40{margin-bottom:40px !important;}.mb50{margin-bottom:50px !important;}.mb60{margin-bottom:60px !important;}
.ml10{margin-left:10px !important;}.ml15{margin-left:15px !important;}.ml20{margin-left:20px !important;}.ml30{margin-left:30px !important;}.ml40{margin-left:40px !important;}.ml50{margin-left:50px !important;}
.m_auto{margin:0 auto;}
.pt10{padding-top:10px !important;}.pt15{padding-top:15px !important;}.pt20{padding-top:20px !important;}.pt30{padding-top:30px !important;}.pt40{padding-top:40px !important;}.pt50{padding-top:50px !important;}
.pr10{padding-right:10px !important;}.pr15{padding-right:15px !important;}.pr20{padding-right:20px !important;}.pr30{padding-right:30px !important;}.pr40{padding-right:40px !important;}.pr50{padding-right:50px !important;}
.pb10{padding-bottom:10px !important;}.pb15{padding-bottom:15px !important;}.pb20{padding-bottom:20px !important;}.pb30{padding-bottom:30px !important;}.pb40{padding-bottom:40px !important;}.pb50{padding-bottom:50px !important;}.pb70{padding-bottom:70px !important;}
.pl10{padding-left:10px !important;}.pl15{padding-left:15px !important;}.pl20{padding-left:20px !important;}.pl30{padding-left:30px !important;}.pl40{padding-left:40px !important;}.pl50{padding-left:50px !important;}

/*font*/
.font_ss{font-size:1.2rem;}.font_s{font-size:1.4rem;}.font_l{font-size:2rem;}.lh150{line-height:150%;}.bold{font-weight:bold;}.font_n{font-size: 1.6rem;}
.textL{text-align:left !important;}.textC{text-align:center !important;}.textR{text-align:right !important;}
.s-1{padding-left:1em; text-indent:-1em;}.s-2{padding-left:2em; text-indent:-2em;}
.blue{color:#0A3E86;}.red{color:#ED1C24;}.white{color:#FFF;}.ore{color:#F15A24;}.green{color:#006837;}.yellow{color:#FFFF00;}

/**/
.mw180{max-width: 180px;}

/*link*/

a:link,a:visited{
	color: #365fab;
	text-decoration: none;
}

@media (min-width: 768px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}


#wrap{
	max-width:1200px;
    width:100%;
    margin:0 auto;
}

	@media screen and (max-width: 767px){
		#wrap{
			max-width:100%;
	}}

/*titlerogo*/
.title {
  position: relative; /* 子要素の aboslute 配置用 */
  height: 100px;
}

.title > * {
  /* 子要素を上下に中央寄せ　*/
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

/*titlerogoサイズ*/
.title_imageLeft{
	left: 50px;
	width: auto;
	height: 70px;
}

.title_imageRight{
	right: 50px;
	width: auto;
	height: 70px;
}

	@media screen and (max-width: 767px){
		.title_imageLeft {
			left: 20px;
			max-height: 70px;
			width: auto;
			height: 100%;
		}

		.title_imageRight {
			right: 20px;
			max-height: 70px;
			width: auto;
			height: 60%;
		}}

/*ヘッダーメニュー*/

.wrapper {
	max-width: 1200px;
	padding: 0 16px;
	margin: 0 auto;
}

/*　ヘッダーホバー下線　*/
.wrapper li a{
	position: relative;
	text-decoration: none;
}
/** 下線を左から引く **/

.wrapper a{
	text-decoration: none;
}

body#home a.home , body#com a.com , body#reforn01 a.reform01 , body#reforn02 a.reform02,.wrapper a:hover{
	text-decoration: underline;
}

#navi ul {
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  text-align:center;
}
#navi li {
  padding: 10px 30px 10px 30px;
	font-size: 16px;
}

#title{
 	border: solid 2px #365fab; /*枠線*/
	margin:0 -200%;
	padding:0 200%;
	}


	@media screen and (max-width: 767px){
		#navi{
			text-align: center;
		}
		#navi ul {
			display: inline-block;
		}
		#navi li a {
			font-size: 15px;
		}
		}



div.vid_box {
width: 100%;/*背景色を横幅いっぱいに広げる*/
text-align: center;
margin: auto;
}
video.vid_main {
width: 100%;
max-width: 1000px;/*PC版での最大幅*/
}


/*フッタートップ*/
.footer_top{
	background-color: #80afd7;
	min-height: 100%;
   margin: 0 calc(50% - 50vw);
}

.zigzag_img{
	background: url("../img/zigzag.png") repeat-x;
	height: 31px;
}


.image img {
	display: block;
	width: 100%;
	height: auto;
}

.footer_top_box{
	margin: auto;
	background: #e5eff7;
	border-radius: 50px; 
	width: 100%;
	max-width: 680px;
	text-align: center;
}

	@media screen and (max-width: 767px){
		.footer_top_box{
		max-width: 84%;
		}
		}

.footer_top_box p{
  margin: 0;
  padding: 0;
}

/*お問い合わせのフォント調節*/
.footer_text{
	-webkit-font-smoothing: antialiased;
	letter-spacing: 0.05em;
}

	@media screen and (max-width: 767px){
		.footer_text{
			font-size: 14px;
			letter-spacing: 0.03em;
		}}



.spease{
	letter-spacing: 0.25em;
}

.spease a:link{
	color: #333;
}

/*contactの点線*/
.contact_box{
	border-bottom: dotted 2px;
	text-align: center;
    margin:0 auto;
}

.address_box{
	display: flex;
	align-items: center;
	width: 100%;
}

.address_title{
	width: 100px;
	 height: 25px;
	 border-radius: 50px;
	 background-color: #365fab;
	margin: auto;
}

	@media screen and (max-width: 767px){
		.address_title{
			 height: 23px;
		}}

.fontf{
	color: #fff;
}

.content1,.content2{
	max-width: 340px;
	width: 50%;
	height: 70px;
}

/*addressの点線*/
.content1{
	border-right: dotted 2px;
}

	@media screen and (max-width: 767px){
		.address_box{
			display: inline-block;
		}
		}

/*address_sp表示*/
	@media screen and (max-width: 767px){
		.content1,.content2{
			width: 100%;
			height: auto;
		}
		}

	@media screen and (max-width: 767px){
		.content1{
			border-right: dotted 0px;
			text-align: center;
			margin:0 auto;
			padding-bottom: 20px;
			font-size: 15px;
				}}

	@media screen and (max-width: 767px){
		.content2{
			text-align: center;
			margin:0 auto;
			font-size: 15px;
				}}


.footer_img{
	background: url("../img/footerimg.png") repeat-x;
	height: 90px;
}

/*footer*/
footer{
	text-align:center;
	font-size:14px;
	color:#ffffff;
	background:#365fab;
	padding:1em 0 1.5em 0;
	}


.footer_b{
	min-height: 100%;
	margin: 0 calc(50% - 50vw);
}

/*　　 　-------companyページ-------　　　　 */


.comtext_box{
	letter-spacing: 0.1em;
	-webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
	.comtext_box{
		margin-left: 30px;
	}}

.comtext1{
	font-size: 28px;
}

@media only screen and (max-width: 767px) {
	.comtext1{
	font-size: 24px;
	}}


.comtext2{
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 12px;
}

@media only screen and (max-width: 767px) {
	.comtext2{
	font-size: 8px;
	}}

.comtitle{
	margin: auto;
	width: 1000px;
}

/* table01 */
.table_box{
	margin: auto;
}

#table01{
	margin: auto;
	width: 950px;
}

#table01 tr {
  border-bottom: 1px solid #b5b1b1;
  border-top: 1px solid #b5b1b1;
}

#table01 th,
#table01 td {
  padding: 24px 0;
  border: none;
}

#table01 th {
  width: 30%;
}

	@media only screen and (max-width: 767px) {
		#table01{
		margin: auto;
		width: 350px;
	}
	
	  #table01 th,
	  #table01 td {
		 text-align: center;
		width: 100%;
		display: block;
	  }

	  #table01 th {
		width: 100%;
	  }

	  #table01 td {
		padding-top: 0;
	  }}

.accessmap {
	max-width: 800px;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	aspect-ratio: 16/9;
}
.accessmap iframe {
	 position: absolute;
	 width: 100%;
	 height: 100% ;
}

	@media only screen and (max-width: 767px) {
		.accessmap {
		max-width: 450px;
		}}



/*　　 　-------reformページ-------　　　　 */
.reform_box{
	padding-left: 1em;
	padding-right: 1em;
}

.reform_box img{
	width: 320px;
	height: auto;
}

	@media only screen and (max-width: 767px) {
		.reform_box img{
			width: 100%;
			height: auto;
		}}

.reform_text{
	font-size: 20px;
	-webkit-font-smoothing: antialiased;
}
.reform_text span{
	font-size: 15px;
	vertical-align: 2px;
}

	@media only screen and (max-width: 767px) {
		.reform_text{
			font-size: 16px;
		}
		.reform_text span{
			font-size: 12px;
			vertical-align: 2px;
		}}

.reform_list ul {
	display: flex;
	text-align: center;
	justify-content: center;
    margin: 0px;
    padding: 0px;
    list-style: none;
}
 
	@media only screen and (max-width: 767px) {
		.reform_list ul {
		}}

.reform_list li {
    float: left;
    position: relative;
}
 
.reform_list li:last-child {
    margin-left: 150px;
}

	@media only screen and (max-width: 767px) {
		.reform_list li:last-child {
			margin-left: 50px;
		}}

.reform_list li:last-child::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -35%;
    margin: auto;
	width: 50px; /* ボックスの横幅を指定 */
	height: 50px; /* ボックスの高さを指定 */
	border-top: 2px solid #666666; /* 境界線の上部を実線に指定*/
	border-right: 2px solid #666666; /* 境界線の上部を実線に指定*/
	transform: rotate(45deg); /* 回転 */
}

	@media only screen and (max-width: 767px) {
		.reform_list li:last-child::after {
			left: -50px;
			width: 30px;
			height: 30px; 
		}}

.reform_list ul li p{
	font-size: 24px;
	letter-spacing: 0.2em;
	font-family: 'Noto Sans Japanese', sans-serif;
}

	@media only screen and (max-width: 767px) {
		.reform_list ul li p{
			font-size: 16px;
			letter-spacing: 0.15em;
		}}

.point{
	width: 830px;
	justify-content:center;
	margin: auto;
	padding-top: 25px;
	padding-bottom: 100px;
}
.point h4{
	padding-bottom: 20px;
	font-size: 21px;
}

	@media only screen and (max-width: 767px) {
		.point{
			width: 100%;
		}
		.point h4{
			padding-bottom: 20px;
			font-size: 18px;
		}
		.point p{
			font-size: 14px;
		}}




