@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

/*---------------------------------------------------------------
Default Layout
---------------------------------------------------------------*/
html {
	overflow-y:scroll;
	font-size:62.5% !important;
}
body {
	width:100%;
	margin:0;
	padding:0;
	color:#231815;
	font-family:'Noto Sans JP',"游ゴシック Medium",YuGothic,YuGothicM,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    font-weight: 400;
	line-height:1.6;
	font-size:16px;
	font-size:1.6rem;
    letter-spacing: 0.1em;
	word-wrap : break-word;
	overflow-wrap : break-word;
}
/* --- link --- */
a,
a:link,
a:visited {
	color:#1d4c86;
	outline:none;
	text-decoration:none;
}
a:hover,
a:active,
a:focus {
	color:#cf121b;
	text-decoration:underline;
    transform: all .3s;
}
a.btn,
a.btn:link,
a.btn:visited {
	color:#fff;
	outline:none;
	text-decoration:none;
}
a.btn:hover,
a.btn:active,
a.btn:focus {
	color:#fff;
	text-decoration:none;
    background: #f2ab30;
}
.tel a,
.tel a:link,
.tel a:visited {
	color:#231815;
	outline:none;
	text-decoration:none;
}
.tel a:hover,
.tel a:active,
.tel a:focus {
	color:#008e79;
	text-decoration:none;
}
a:hover img,
a:active img,
a:focus img {
	opacity:0.8;
	filter:alpha(opacity=80);
	-o-opacity:0.8;
	-ms-filter:"alpha(opacity=80)";
	-moz-opacity:0.8;
	-webkit-opacity:0.8;
	transition:opacity .3s linear;
	-o-transition:opacity .3s linear;
	-ms-transition:opacity .3s linear;
	-moz-transition:opacity .3s linear;
	-webkit-transition:opacity .3s linear;
}
a img {
	border-style: none;
}
ul,
ol {
	margin:0;
	padding:0;
}
ul li,
ol li {
	list-style: none;
}
img {
	max-width:100%;
	height:auto;
}
/*---------------------------------------------------------------
General Layout
---------------------------------------------------------------*/
/* --- clear fix --- */
.cf {zoom:1;}
.cf:before,.cf:after {content:""; display:table;}
.cf:after {clear:both;}
.clear {clear:both;}
.img-l {
	float:left;
	margin:0 20px 20px 0;
}
.img-r {
	float:right;
	margin:0 0 20px 20px;
}
.txt{
    overflow: hidden;
}
.float-l {
	float: left;
}
.float-r {
	float: right;
}
.layout-l {
	text-align:left !important;
}
.layout-c {
	text-align:center !important;
}
.layout-r {
	text-align:right !important;
}
.layout-cm{
	text-align:center !important;
    margin: 0 auto;
}
.txt-large {
	font-size:2.0rem;
}
.txt-small {
	font-size:1.2rem;
}
.txtRed{
    color:#cf121b;
}
.txtWhite{
    color:#fff;
}
.txt-read{
    line-height:2.0;
}
.dot{
border-bottom: 1px dotted #231815;
}
.mgn_t0 {
	margin-top: 0px !important;
}
.mgn_t5 {
	margin-top: 5px !important;
}
.mgn_t10 {
	margin-top: 10px !important;
}
.mgn_t20 {
	margin-top: 20px !important;
}
.mgn_t30 {
	margin-top: 30px !important;
}
.mgn_t40 {
	margin-top: 40px !important;
}
.mgn_t60 {
	margin-top: 60px !important;
}
.mgn_t-5 {
	margin-top: -5px !important;
}
.mgn_t-10 {
	margin-top: -10px !important;
}
.mgn_t-20 {
	margin-top: -20px !important;
}
.mgn_t-30 {
	margin-top: -30px !important;
}
.mgn_t-40 {
	margin-top: -40px !important;
}
.mgn_t-60 {
	margin-top: -60px !important;
}
.mgn_b-5 {
	margin-bottom: -5px !important;
}
.mgn_b0 {
	margin-bottom: 0px !important;
}
.mgn_b5 {
	margin-bottom: 5px !important;
}
.mgn_b10 {
	margin-bottom: 10px !important;
}
.mgn_b20 {
	margin-bottom: 20px !important;
}
.mgn_b-20 {
	margin-bottom: -20px !important;
}
.mgn_b25 {
	margin-bottom: 25px !important;
}
.mgn_b30 {
	margin-bottom: 30px !important;
}
.mgn_b40 {
	margin-bottom: 40px !important;
}
.mgn_b60 {
	margin-bottom: 60px !important;
}

.mgn_r0 {
	margin-right: 0px !important;
}
.mgn_r5 {
	margin-right: 5px !important;
}
.mgn_r10 {
	margin-right: 10px !important;
}
.mgn_r20 {
	margin-right: 20px !important;
}
.mgn_r30 {
	margin-right: 30px !important;
}
.mgn_r40 {
	margin-right: 40px !important;
}

.mgn_l0 {
	margin-left: 0px !important;
}
.mgn_l5 {
	margin-left: 5px !important;
}
.mgn_l10 {
	margin-left: 10px !important;
}
.mgn_l20 {
	margin-left: 20px !important;
}
.mgn_l30 {
	margin-left: 30px !important;
}
.mgn_l40 {
	margin-left: 40px !important;
}

.pdg_t0 {
	padding-top: 0px !important;
}
.pdg_t5 {
	padding-top: 5px !important;
}
.pdg_t10 {
	padding-top: 10px !important;
}
.pdg_t20 {
	padding-top: 20px !important;
}
.pdg_t30 {
	padding-top: 30px !important;
}
.pdg_t35 {
	padding-top: 35px !important;
}
.pdg_t40 {
	padding-top: 40px !important;
}
.pdg_b0 {
	padding-bottom: 0px !important;
}
.pdg_b5 {
	padding-bottom: 5px !important;
}
.pdg_b10 {
	padding-bottom: 10px !important;
}
.pdg_b20 {
	padding-bottom: 20px !important;
}
.pdg_b30 {
	padding-bottom: 30px !important;
}
.pdg_b40 {
	padding-bottom: 40px !important;
}
.pdg_b60 {
	padding-bottom: 60px !important;
}

.pdg_r0 {
	padding-right: 0px !important;
}
.pdg_r5 {
	padding-right: 5px !important;
}
.pdg_r10 {
	padding-right: 10px !important;
}
.pdg_r20 {
	padding-right: 20px !important;
}
.pdg_r30 {
	padding-right: 30px !important;
}
.pdg_r40 {
	padding-right: 40px !important;
}
.pdg_r100 {
	padding-right: 100px !important;
}
.pdg_l0 {
	padding-left: 0px !important;
}
.pdg_l5 {
	padding-left: 5px !important;
}
.pdg_l10 {
	padding-left: 10px !important;
}
.pdg_l15 {
	padding-left: 10px !important;
}
.pdg_l20 {
	padding-left: 20px !important;
}
.pdg_l30 {

	padding-left: 30px !important;
}
.pdg_l40 {
	padding-left: 40px !important;
}
.pdg_l100 {
	padding-left: 100px !important;
}
.f10 {
	font-size: 10px !important;
}
.f12 {
	font-size: 12px !important;
}
.f14 {
	font-size: 14px !important;
}
.f16 {
	font-size: 16px !important;
}
.f18 {
	font-size: 18px !important;
}
.f20 {
	font-size: 20px !important;
}
.f21 {
	font-size: 21px !important;
}
.f22 {
	font-size: 22px !important;
}
.f23 {
	font-size: 23px !important;
}
.f24 {
	font-size: 24px !important;
}
.f26 {
	font-size: 26px !important;
}
.f30 {
	font-size: 30px !important;
}
.f32 {
	font-size: 32px !important;
}
.f36 {
	font-size: 36px !important;
}
.f38 {
	font-size: 38px !important;
}
.f40 {
	font-size: 40px !important;
}
.bold {
	font-weight: bold !important;
}
.br{
	display: inline-block;
}
.br_re{
	display: block;
}
.bgWhite{
    background: #fff !important;
}
.marker{
    background: linear-gradient(transparent 70%, #f5e928 70%);
    padding:0 0.2em;
}
.sp{display:none!important;}
#page {
	position: relative;
}

/*---------------------------------------------------------------
ヘッダー
---------------------------------------------------------------*/
header{
  width: 100%;
    display:flex;
    justify-content:center;
    align-items:center;
    height:60px;
    width:100%;
    margin:0 auto;
    background:linear-gradient(135deg, #00aba4 10%, #00654e 100%);
    background-repeat:no-repeat;
    background-size:100% 3px;
    background-position:bottom;
  }
 .logo{
    width:220px;
    height:auto;
    margin-right:auto;
    padding:0 10px;
  }
h1{
    font-weight: 400;
    font-size:2.3rem;
    padding:0 10px;
}
/*---------------------------------------------------------------
メイン
---------------------------------------------------------------*/
.main {
	clear: both;
	width:100%;	
}
.main section{
    clear: both;
    margin:0;
}
.main .inner{
	width:100%;
	max-width:960px;
	margin:0 auto;
	padding:40px 0;
}
/* --- pagetop --- */
.pagetop {
  cursor: pointer;
  position: fixed;
  right: 10px;
  bottom: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 3px;
  transition: .3s;
  color: #00A6C4;
  background: #00aba4;
/*   デフォルトは非表示 */
  opacity: 0;
}
.pagetop:hover {
/*    box-shadow: 0 0 10px #00A6C4;*/
    text-decoration: none;
}
.arrow {
  position: relative;
  display: inline-block;
  width: 26.6px;
  height: 15.3px;
}
.arrow::before,
.arrow::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 2px);
  width: 4px;
  height: 20px;
  border-radius: 9999px;
  background-color: #ffffff;
  transform-origin: 50% 2px;
}
.arrow::before {
  transform: rotate(45deg);
}
.arrow::after {
  transform: rotate(-45deg);
}

/* 見出し
----------------------------------------------------*/
h1,h2,h3,h4{font-weight:500;}
.main h2:not(.main .inquiryArea h2) {
  text-align: center;
  margin:-70px 10px 40px; 
}
.main h2 span {
  display: block;
  font-size: 1.8rem;
  margin-top: 20px;
  font-weight: 500;
}

.main h3:not(.main .inquiryArea h3){
    clear: both;
	font-size:2.2rem;
}
.main p{
	padding-bottom:15px;
}
.main p,footer p{
	padding-bottom:5px;
}
/* --- リスト --- */
.main ul li {
	position: relative;
	margin-bottom: 4px;
	padding-left: 1.2em;
}
.main ul li:before {
    display: block;
    content: '';
    position: absolute;
    top: 0.5em;
    left: 0.5em;
    width: 7px;
    height: 7px;
    background: #231815;
    border-radius: 50%;
}
.main ol {
    margin-bottom: 10px;
    padding-left: 1.7em;
}
.main ol li {
    margin-bottom: 5px;
    list-style-type: decimal;
    list-style-position: outside;
    padding-left: 0;
}
/* Area
----------------------------------------------------*/
.titleArea{
  width: 100%;
  height: auto;
  margin: 0px auto;
  box-sizing: border-box;
  background-color: #fff;
  background-image: url(../images/flower_l.png), url(../images/flower_r.png);
  background-position: left 0px center, right 0px center;
  background-repeat: no-repeat, no-repeat;
  background-size:contain;
   text-align: center;
}
.comArea{
    background: #009e94;
    text-align: center;
}
.inquiryArea ul{
    text-align: left;
    margin:30px 0 40px;
}
/* リンクボタン
----------------------------------------------------*/
.btn{
    /*矢印の基点とするためrelativeを指定*/
  position: relative;
    /*ボタンの形状*/
  text-decoration: none;
  display: inline-block;
  color:#fff;
    background: #f39800;
  padding: 15px 90px 15px 70px;
 text-align: center;
 outline: none;
 border-radius: 8px;
    font-size:2.2rem;
 /*アニメーションの指定*/
 transition: ease .3s;
}
.more{font-size:2.0rem;}
footer .btn{font-size:1.6rem;padding:15px 80px 15px 60px;}
/* 矢印が右に移動 */
.btnarrow::after,
.btnarrow:link::after,
.btnarrow:visited::after{
    content: " ";
    /*絶対配置で矢印の位置を決める*/
  position: absolute;
    top:43%;
    right: 20px;
    /*矢印の形状*/
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    /*アニメーションの指定*/
    transition: all .3s;
}
/*hoverした際の移動*/
.btnarrow:hover::after,
.btnarrow:active::after,
.btnarrow:focus::after{
    right: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.main .inquiryArea h2{
    text-align: center;
    margin-top: 40px;
}
.main .inquiryArea h3{
    font-size:1.6rem;
    text-align: center;
    color:#595757;
    border:1px solid #595757;
    border-radius: 5px;
    width: 100%;
    max-width: 960px;
    margin: 40px auto 20px;
    padding:0.2em 0;
}
.inquiryBox{        
    display: flex; 
    justify-content:center;
    width: 100%;
    max-width: 960px;
    gap:10px; 
    margin: 0 auto;
    letter-spacing: normal;
    line-height: 1.4;
}
.leftCont{
    width:50%;
}
.rightCont{
    width:50%;
}
.inquiryBox h4{
    color:#fff;
    background: #595757;
    padding:5px;
    text-align: center;
    border-radius: 3px;
    margin:10px 10px 10px 0;
    line-height: 1.2;
    width: 58px;
}
.inquiryArea .tel{
    font-size:4.2rem;
    font-weight: 600;
    margin: 5px;
}
.inquiryArea .tel img{
    vertical-align: baseline;
    margin: 0 10px 0 0;
}
.inquiryArea rt{
    font-size:1.4rem;
}
.reception{
    padding-top:10px;
}
/*---------------------------------------------------------------
フッター
---------------------------------------------------------------*/
footer {
    width: 100%;
	clear:both;
    background: #008f79;
    text-align: center;
    color:#fff;
    font-size:1.4rem;
    letter-spacing: normal;
}
footer .inner{
	width:98%;
	margin:0 auto;
	padding:20px 0 10px;
}
.copyright{
    text-align: center;
}



