@charset "utf-8";

/*----------------------------------------------------
	共通
----------------------------------------------------*/
html {
 font-size: 62.5%;
 overflow-x: hidden;
}
body {
 -webkit-text-size-adjust: 100%; /* 端末を横にしても文字サイズを拡大させない */
 font-size: 1.6em;
 line-height: 1;
 font-family: YuGothic, Yu Gothic, sans-serif;
}

img { border: 0; vertical-align: bottom; width: auto; max-width: 100%; height: auto; -webkit-backface-visibility: hidden; }
ul { padding: 0; }
iframe { vertical-align: bottom; }

*, *:before, *:after { box-sizing: border-box; }

/* bootstrap-grid */
/* bootstrap-grid.cssのコンテナをリセット */
.container { width: 100%; padding-right: 0; padding-left: 0; margin-right: auto; margin-left: auto; }
@media (min-width: 576px) { .container { max-width: 100%; }}
@media (min-width: 768px) { .container { max-width: 100%; }}
@media (min-width: 992px) { .container { max-width: 100%; }}
@media (min-width: 1200px) { .container { max-width: 100%; }}
.container-fluid { width: 100%; padding-right: 0; padding-left: 0; margin-right: auto; margin-left: auto;
}

/*----------------------------------------------------
	調整用
----------------------------------------------------*/
.tC { text-align: center; }
.tR { text-align: right; }
.tL { text-align: left; }
.tRC { text-align: center; }
.tLC { text-align: center; }
.tCR { text-align: right; }
.tCL { text-align: left; }
@media (min-width:576px) { /* PC */
.tRC { text-align: right; }
.tLC { text-align: left; }
.tCR { text-align: center; }
.tCL { text-align: center; }
}

.alignC { display: block; margin: 0 auto; }
.alignL,
.alignR { float: none; text-align: center; }
@media (min-width:576px) { /* PC */
.alignR { float: right; margin: 0 0 2em 2em; }
.alignL { float: left; margin: 0 2em 2em 0; }
}

.fB { font-weight: bold; }
.f00 { font-size: 0.0rem; }
.h15 { line-height: 1.5; }
.h20 { line-height: 2.0; }

.tGo { font-family: YuGothic, Yu Gothic, sans-serif; }
.tMin { font-family: YuMincho, Yu Mincho, serif; }
.tMaru { font-family: Hiragino Maru Gothic Pro, Meiryo, sans-serif; }
.Mono { font-family: Osaka-mono, MS Gothic, monospace; }

/* マテリアルアイコン調整 */
.material-icons { display: inline-flex; vertical-align: middle; }

/* リンクボタン */
.btn { line-height: 1.5; position: relative; display: inline-block; padding: 1rem 3rem; cursor: pointer; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; margin: .5em 0; }
.wAll { width: 100%; }
.wSmall { min-width: 280px; }

/* 上方向のmargin */
.mt_0 { margin-top: 0; }
.mt_1 { margin-top: 1rem; }
.mt_2 { margin-top: 2rem; }
.mt_3 { margin-top: 3rem; }
.mt_4 { margin-top: 4rem; }
.mt_5 { margin-top: 5rem; }
.mt_6 { margin-top: 6rem; }
.mt_7 { margin-top: 7rem; }
.mt_8 { margin-top: 8rem; }
.mt_9 { margin-top: 9rem; }

/* 下方向のmargin */
.mb_0 { margin-bottom: 0; }
.mb_1 { margin-bottom: 1rem; }
.mb_2 { margin-bottom: 2rem; }
.mb_3 { margin-bottom: 3rem; }
.mb_4 { margin-bottom: 4rem; }
.mb_5 { margin-bottom: 5rem; }
.mb_6 { margin-bottom: 6rem; }
.mb_7 { margin-bottom: 7rem; }
.mb_8 { margin-bottom: 8rem; }
.mb_9 { margin-bottom: 9rem; }

/* 上方向のpadding */
.pt_0 { padding-top: 0; }
.pt_1 { padding-top: 1rem; }
.pt_2 { padding-top: 2rem; }
.pt_3 { padding-top: 3rem; }
.pt_4 { padding-top: 4rem; }
.pt_5 { padding-top: 5rem; }
.pt_6 { padding-top: 6rem; }
.pt_7 { padding-top: 7rem; }
.pt_8 { padding-top: 8rem; }
.pt_9 { padding-top: 9rem; }

/* 下方向のpadding */
.pb_0 { padding-bottom: 0; }
.pb_1 { padding-bottom: 1rem; }
.pb_2 { padding-bottom: 2rem; }
.pb_3 { padding-bottom: 3rem; }
.pb_4 { padding-bottom: 4rem; }
.pb_5 { padding-bottom: 5rem; }
.pb_6 { padding-bottom: 6rem; }
.pb_7 { padding-bottom: 7rem; }
.pb_8 { padding-bottom: 8rem; }
.pb_9 { padding-bottom: 9rem; }

/* clearfix */
.clearfix::after { content: ""; display: block; clear: both; }
.clear { clear: both; }

/* Facebook */
.fb-container { width: 100%; }

/* Google Map */
@media (max-width:575px) { /* SP */
.gg-container { width: 100%; padding-bottom: 56.25%; height:0px; position: relative; }
.gg-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
}

/* YouTube */
.yt-container { width: 100%; padding-bottom: 56.25%; height:0px; position: relative; }
.yt-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media (min-width:576px) { /* PC */
.telLink { pointer-events: none; } /*PCで電話番号をリンクさせない*/ }

/* PCとSPで出し分け */
@media (max-width: 575px){ .pcOnly { display:none; }}
@media (min-width: 576px){ .spOnly { display:none; }}

/*----------------------------------------------------
	header#globalHeader
----------------------------------------------------*/
@media (min-width:576px) { /* PC */
header#globalHeader { position: sticky; top: 0; margin: 0 auto; background: #73d6be; z-index: 100; box-shadow: 0px 5px 5px -5px rgba(0,0,0,0.2); }
.header_inn { padding: 1.3em 0; display:flex; align-items: center; justify-content: space-between; }
.header_logo {  }
.header_nav { display:flex; align-items: center; }
.header_subNav {  }
#globalNav ul { display: flex; list-style:none; }
#globalNav ul li { position: relative; z-index: 1; }
#globalNav ul li.noneNav { display: none; }
#globalNav ul li a { display: block; margin: 1em 2em; border-bottom: #73d6be 2px solid; color: #fff; font-weight: bold; }
#globalNav ul li a:hover { border-bottom: #fff 2px solid; }
}

@media (max-width:575px) { /* SP */
header#globalHeader { position: sticky; top: 0; background: #73d6be; z-index: 100; }
.header_inn { padding: 1em 0; height: 80px; }
.header_logo { max-width: 70%; }
.header_subNav { display: none; }
#globalNav { display: none; width: 100vw; height: 100vh; position: fixed; top: 80px; left: 0; z-index: 2; }
.nav_menu { width: 100%; height: 100%; background: #73d6be; z-index: 2; }
.nav_menu { list-style: none; text-align: center; }
.nav_menu li { display: block; padding-top: 1em; font-size: 2.6rem; font-weight: bold; }
.nav_menu li:first-child { padding-top: 1.5em; }
.nav_menu a { color: #fff; }
.nav_btn { background: url("../inc/images/btn.png") no-repeat; display: block; width: 50px; height: 50px; position: absolute; top: 10px; right: 10px; cursor: pointer; z-index: 200; }
.nav_btn.open{ background-position: -50px 0; z-index: 300; }
}

/*----------------------------------------------------
	pageTop
----------------------------------------------------*/
.pageTop { position: absolute; right: 0; bottom: 0; }

/* アンカーリンク  */
.header_link { display: block; margin-top: -100px; padding-top: 100px; }/*pc 追従ヘッダーの高さ*/
@media (max-width:575px) { /* SP */
.header_link { display: block; margin-top: -100px; padding-top: 100px; }/*sp 追従ヘッダーの高さ*/
}

/*----------------------------------------------------
	footer#globalFooter
----------------------------------------------------*/
@media (min-width:576px) { /* PC */
footer#globalFooter { clear: both; width: 100%; }
.footer_inn { display:flex; align-items: flex-start; justify-content: space-between; padding: 3em 0; }
.footer_logo { text-align: center; }
.footer_logo .add { font-size: 1.3rem; margin-top: 1em; line-height: 1.5; }
.footer_logo .tel { font-size: 3.0rem; font-weight: bold; line-height: 1.5; color: #3c3c3c; }
.footer_btn { color: #fff; background: #73d6be; border: #73d6be 2px solid; }
.footer_btn:hover { color: #73d6be; background: #fff; border: #73d6be 2px solid; }
.footer_mail:after { font-family: 'Material Icons'; position: absolute; top: 51%; transform: translateY(-50%); left: 1.5rem; content: 'mail_outline'; font-size: 2.5rem; }
.footer_link { display:flex; border-left: #000 1px solid; position: relative; padding-bottom: 4em; }
.footer_link div { margin-left: 4em; }
.footer_link ul { list-style: none; font-size: 1.4rem; }
.footer_link p { font-weight: bold; }
.copyright p { text-align: center; padding: 1em; background: #777777; color: #fff; font-size: 1.1rem; }
}

@media (max-width:575px) { /* SP */
footer#globalFooter { clear: both; width: 100%; text-align: center; }
.footer_inn { padding: 2em 0; }
.footer_logo { text-align: center; margin: 0 auto; }
.footer_logo .add { font-size: 1.3rem; margin-top: 1em; line-height: 1.5; }
.footer_logo .tel { font-size: 3.0rem; font-weight: bold; line-height: 1.5; color: #3c3c3c; }
.footer_btn { color: #fff; background: #73d6be; border: #73d6be 2px solid;}
.footer_btn:hover { color: #73d6be; background: #fff; border: #73d6be 2px solid; }
.footer_mail:after { font-family: 'Material Icons'; position: absolute; top: 51%; transform: translateY(-50%); left: 1.5rem; content: 'mail_outline'; font-size: 2.5rem; }
.footer_link { display: none; }
.copyright p { text-align: center; padding: 1em; background: #777777; color: #fff; font-size: 1.1rem; }
}

/*----------------------------------------------------
	リンク
----------------------------------------------------*/
a,
a:hover {
 text-decoration: none;
 color: #000;
}
.btn_mail { margin-left: 2rem; }
.btn_mail:after { font-family: 'Material Icons'; position: absolute; top: 50%; transform: translateY(-50%); left: 1rem; content: 'mail_outline'; font-size: 150%; }
.btn_arrow { margin-right: 2rem; }
.btn_arrow:before { font-family: 'Material Icons'; position: absolute; top: 50%; transform: translateY(-50%); right: 1rem; content: 'arrow_forward_ios'; }

/*----------------------------------------------------
	フェードイン　class="move"
----------------------------------------------------*/
.move { opacity: 0; transform: translate(0, 60px); transition: .8s; }
.mv { opacity: 1.0; transform: translate(0, 0); }


/*----------------------------------------------------
	サイズ設定
----------------------------------------------------*/
/* 基準値 1400px */
#main { width: 1400px; max-width: 100%; margin: 0 auto; }
.header_inn { width: 1200px; margin: 0 auto; }
.footer_inn { width: 1200px; margin: 0 auto; }
.slider_inn img { width: 100%; margin: 0 auto; }
.title_inn { width: 100%; margin: 0 auto; }
.container { width: 1200px; margin: 0 auto; }
.box_xs { width: 700px; margin: 0 auto; }
.box_small { width: 1000px; margin: 0 auto; }
.box_wide { width: 1400px; }
.header_logo { width: 310px; }
.footer_logo { width: 250px; }

/* インナー幅（1400px）より小さくなったら*/
/* 固定値px / 基準幅px * 100vw */
@media (min-width:576px) and ( max-width:1399px) {
html{ font-size: calc(100vw / 140); }
.header_inn { width: calc( (1200 / 1400) * 100vw ); }
.footer_inn { width: calc( (1200 / 1400) * 100vw ); }
.slider_inn { width: 100%; }
.title_inn { width: 100%; }
.container { width: calc( (1200 / 1400) * 100vw ); }
.box_xs { width: calc( (700 / 1400) * 100vw ); }
.box_small { width: calc( (1000 / 1400) * 100vw ); }
.box_wide { width: calc( (1400 / 1400) * 100vw ); }
.header_logo { width: calc( (310 / 1400) * 100vw ); }
.footer_logo { width: calc( (250 / 1400) * 100vw ); }
}

/*画面サイズが575px以下のとき*/
@media (max-width: 575px) { 
html { font-size: 50%; }
#main { width: 90%; }
.header_inn,
.footer_inn { width: 90%; }
.slider_inn { width: 100%; }
.title_inn { width: 90%; }
.container,
.box_xs,
.box_small,
.box_wide { width: 100%; }
.footer_logo { width: 100%; }
}

.center_block { display: table; margin: 0 auto; } /* 可変の要素を中央に */
.full { margin: 0 calc(50% - 50vw); width: 100vw; }
