@charset "UTF-8";
/*
tinyHP_CSS-ver3.0
【補足１】 CSS設計について
PRECSSに準じて設計
https://precss.io/ja/
【補足2】ルールは下記参考
https://docs.google.com/spreadsheets/d/1_iSwXbFPzkdrZUrFvt9Nrsr8OnIVCGj-yeftvkkjJDM/edit?usp=sharing
*/
/* ==========================================================================
  Base ベース
========================================================================== */
@font-face {/*icon-tinyHP-v2.7*/
  font-family: 'icon-tinyHP';
  src:  url('fonts/icon-tinyHP.eot?g8x80z');
  src:  url('fonts/icon-tinyHP.eot?g8x80z#iefix') format('embedded-opentype'),
    url('fonts/icon-tinyHP.woff2?g8x80z') format('woff2'),
    url('fonts/icon-tinyHP.ttf?g8x80z') format('truetype'),
    url('fonts/icon-tinyHP.woff?g8x80z') format('woff'),
    url('fonts/icon-tinyHP.svg?g8x80z#icon-tinyHP') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/* 変数*/
:root{
	--maxWidth:1120px;
	--maxWidthMd:860px;
	--maxWidthMd-per:76.79%;
	--gap:50px;
	/* カラー：背景 */
	--colorBkg-main: #fff;   /* 基本背景 */
	--colorBkg-second: #DCCCB8; /* 第2背景 */
	--colorBkg-third: #E08F20; /* 第3背景 */
	--colorBkg-fourth: #304980; /* 第3背景 */
	/* カラー：テキスト */
	--colorText-main: #4E4E4E;   /* 基本文字 */
	--colorText-invert: #ffffff; /* ダーク背景上 */
	--colorText-accent: #E08F20; /* 見出しなど強調 */
	--colorText-accent2: #304980; /* サブ強調（小見出し・補足） */
	--colorText-accent3: #DCCCB8; /* サブ強調（小見出し・補足） */
	/* カラー：ボタン */
	--colorBtn-primary: #E08F20; /* 目立つ色 */
	--colorBtn-secondary: #FDD23E;/* 目立つ色2 */
	--colorBtn-invert: #ffffff;  /* ダーク背景上の白ボタン */
	/* カラー補助（Sub = サブカラー群） */
	--colorSub-border: #A7A7A7;   /* 枠線・区切り */
	--colorSub-table: #A7A7A7;   /* 枠線・区切り */
	--colorSub-shadow: rgba(0,0,0,0.1); /* シャドウ */
	/*書体*/
	--fontFamSerif:'Noto Serif JP', 'YuMincho', 'Yu Mincho', 'Hiragino Mincho ProN', serif;
	--fontFamSansSerif: "Noto Sans JP", "Meiryo UI", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*サイズ*/
	--fontSizeDefolt:clamp(1rem, 0.956rem + 0.19vw, 1.125rem);/* min16px maz18px==vp min375px max1440 px*/
	--rem14px: 0.875rem; 
	--rem15px: 0.938rem; 
	--rem16px: 1rem;
	--rem17px: 1.063rem;
	--rem18px: 1.125rem; 
	--rem20px: 1.25rem;
	--rem21px: 1.313rem;
	--rem25px: 1.563rem;
}
/* 要素*/
html{
	scroll-behavior: smooth;
}
body{
	position: relative;
	background-color: var(--colorBkg-main);
	color:var(--colorText-main);
	font-family: var(--fontFamSansSerif);
	font-size: var(--fontSizeDefolt);
	font-weight: 400;
	line-height: 1.0;
	letter-spacing: .1em;
}
a { transition:.3s; text-decoration: underline;}

/* ==========================================================================
  Layout　レイアウト
========================================================================== */
/* ly_header
========================================================================== */
.ly_header_unitArea_logoArea{
	position: relative;
	display: flex;
	align-items: center;
	height: 93px;
	padding-left: 10px;
}
.ly_header_icatchArea{
	position: relative;
	height: calc(100dvh - 93px);
}
.un_topIcatch_txt_wrap{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}
.un_topIcatch_txt{
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	padding-right: 6.13%;
	padding-left: 40.8%;
	padding-bottom: 10%;
}
	@media (min-width:768px){
		.ly_header_icatchArea{
			height: auto;
		}
		.un_topIcatch_txt{
			display: block;
			padding-top: 7%;
			padding-right: 17.43%;
			padding-bottom: 0;
			padding-left: 62.43%;
		}
	}
	@media (min-width: 1200px){
		.ly_header_unitArea{
			display: flex;
			justify-content: space-between;
			/*max-width: 1440px;*/
			height: 152px;
			padding: 22px 40px;
			padding: 22px clamp(20px, -80px + 8.33vw, 40px);
			margin: 0 auto;
		}
		.ly_header_unitArea_logoArea{
			display: block;
			width: 285px;
			height: auto;
			padding: 26px 0 0 0;
			padding: clamp(20px, -10px + 2.5vw, 26px) 0 0 0;
		}
		.ly_header_unitArea_navArea{
			width: calc(100% - 285px - 20px);
		}
	}
	@media (min-width: 1440px){
		.ly_header_unitArea{
			padding: 22px 2.78%;
		}
	}
/* ly_cont
========================================================================== */
.ly_cont_wrap{
	padding-top: var(--gap);
	padding-bottom: var(--gap);
}
.ly_cont_wrap.ly_cont_wrap__btm{
	padding-bottom:calc(var(--gap)*2);
}
.ly_cont_wrap.ly_cont_wrap__bgcSecond{
	background-color: var(--colorBkg-second);
}
.ly_cont_wrap.ly_cont_wrap__bgcThird{
	background-color: var(--colorBkg-third);
}
.ly_cont{
	padding-right: 30px;
	padding-left: 30px;
	margin-inline: auto;
	max-width: calc(var(--maxWidth) + 30px + 30px);
}
.ly_cont_header{
	margin-bottom: calc(var(--gap) * .8);
}
.ly_cont_body > *:last-child{
	margin-bottom: 0;
}
.ly_cont2nd{
	margin-bottom: var(--gap);
}
.ly_cont2nd_header{
	margin-bottom: 0.875em;
}
.ly_cont2nd_body > *:last-child{
	margin-bottom: 0;
}
.ly_cont3rd{
	margin-top: var(--gap);
}
	@media (min-width:768px){
		.ly_cont_wrap{
			padding-top: calc(var(--gap) * 1.4);
			padding-bottom: calc(var(--gap) * 1.4);
		}
		.ly_cont_wrap.ly_cont_wrap__btm{
			padding-bottom: calc(var(--gap) * 1.4 * 2);
		}
		.ly_cont_header{
			margin-bottom: calc(var(--gap) * .8 * 1.4);
		}
		.ly_cont_body.ly_cont_body.ly_cont_body__widthMd{
			width: var(--maxWidthMd-per);
			max-width: var(--maxWidthMd);
			margin-inline: auto;
		}
		.ly_cont2nd{
			margin-bottom: calc(var(--gap) * 1.4);
		}
		.ly_cont3rd{
			margin-top: calc(var(--gap) * 1.4);
		}
	}
	@media (min-width:1200px){
		.ly_cont_wrap{
			padding-top: calc(var(--gap) * 1.8);
			padding-bottom: calc(var(--gap) * 1.8);
		}
		.ly_cont_wrap.ly_cont_wrap__btm{
			padding-bottom: calc(var(--gap) * 1.8 * 2);
		}
		.ly_cont_header{
			margin-bottom: calc(var(--gap) * .8 * 1.8);
		}
		.ly_cont2nd{
			margin-bottom: calc(var(--gap) * 1.8);
		}
		.ly_cont3rd{
			margin-top: calc(var(--gap) * 1.8);
		}
	}
/* レイアウト名
========================================================================== */
.ly_footer{
	background-color: var(--colorBkg-third);
}
.ly_footer_header,
.ly_footer_body,
.ly_footer_copyRight{
	padding-right: 30px;
	padding-left: 30px;
	margin-inline: auto;
	max-width: calc(var(--maxWidth) + 30px + 30px);
}
.ly_footer_body_info,
.ly_footer_body_howto{
	padding-top: 15px;
}
.ly_footer_body_howto p{
	line-height: 1.7;
}
.ly_footer_map{
	padding-top: 35px;
	padding-top: var(--gap);
}
.ly_footer_copyRight{
	padding-top: 35px;
	padding-bottom: 40px;
}
	@media (min-width:768px){
		.ly_footer_body{
			display: flex;
			justify-content: space-between;
		}
		.ly_footer_body_info{
			width: 50%;
		}
		.ly_footer_body_howto{
			width: 47%;
		}
		.ly_footer_map{
			padding-top: calc(var(--gap) * 1.4);
		}
	}
	@media (min-width:1200px){
		.ly_footer_map{
			padding-top: calc(var(--gap) * 1.8);
		}

	}
/* 写真と文章を配置
========================================================================== */
.ly_column{
	display: flex;
	flex-direction: column;
}
.ly_column > *:last-child{
	margin-bottom: 0;
}
.ly_column_body{	
	margin-bottom: 2.125em;
}
.ly_column_imgWrap{
	margin-bottom: 1.5em;
}
.ly_column_body p{
	line-height: 1.7;
	margin-bottom: 1.5em;
}
.ly_column_body > *:last-child{
	margin-bottom: 0;
}
.ly_column_imgWrap.ly_column_imgWrap__smW100vw{
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
.ly_column_imgWrap.ly_column_imgWrap__smNone{
	display: none;
}
	@media (min-width:768px){
		.ly_column{
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: space-between;
		}
		.ly_column.ly_column__mdReverse{
			flex-direction: row-reverse;
		}
		.ly_column_body{
			margin-bottom: 0;
		}
		.ly_column.ly_column__2col > .ly_column_body.ly_column_body__md62per{
			width: 62%;
		}
		.ly_column.ly_column__2col > .ly_column_body.ly_column_body__md64per{
			width: 64%;
		}
		.ly_column.ly_column__2col > .ly_column_body.ly_column_body__md54per{
			width: 54%;
		}
		.ly_column.ly_column__2col > .ly_column_body.ly_column_body__md42per{
			width: 42%;
		}
		.ly_column.ly_column__2col > .ly_column_imgWrap.ly_column_imgWrap__mdW32per{
			width: 32%;
			margin: 0;
		}
		.ly_column.ly_column__2col > .ly_column_imgWrap.ly_column_imgWrap__mdW34per{
			width: 34%;
			margin: 0;
		}
		.ly_column.ly_column__2col > .ly_column_imgWrap.ly_column_imgWrap__mdW43per{
			width: 43%;
			margin: 0;
		}
		.ly_column.ly_column__2col > .ly_column_imgWrap.ly_column_imgWrap__mdW56per{
			width: 56%;
			margin: 0;
		}
		.ly_column_imgWrap.ly_column_imgWrap__smNone{
			display: block;
		}
	}

/* レイアウト名
========================================================================== */
/*
タイトル
*/
/*
タイトル
*/
/* ==========================================================================
  Javascript Modules jsモジュyール
========================================================================== */
/* js_telLink
========================================================================== */
.js_telLink a{
	color: inherit;
}
/* js_accordion
========================================================================== */
.js_accordion_ttl{
	cursor: pointer;
}
.js_accordion_box{
	display: none;/*はじめは非表示*/
}
/* js_modaal
========================================================================== */
/*hideエリアをはじめは非表示*/
.js_modaal_hideArea{
	display: none;
}
.js_modaal_hideArea > *:last-child{
	margin-bottom: 0;
}
/*閉じるボタンのスタイル*/
.modaal-fullscreen .modaal-close{
	background: var(--colorBtn-primary);
	right:10px;
	top:10px;
}
.modaal-close:after,
.modaal-close:before{
	top:14px;
	left:24px;
	background: #fff;
	width: 1px;
	height:25px;
}
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	top:14px;
	left:24px;
	background: #fff;
	width: 1px;
	height:25px;
}
	@media (min-width: 992px){
		.modaal-fullscreen .modaal-close{
			top: 20px;
			right: initial;
			left: calc(50% + 400px);
		}
	}
/*モーダルの表示部分*/
.modaal-container{
	background-color: #fff;
}
	@media (min-width: 992px){
		.modaal-container{
		}
	}
/*モーダルの表示部分*/
.js_modaalArea_wrapper{
	padding: 2em 0;
	max-width: 700px;
	margin-inline: auto;
}
.js_modaalArea_wrapper > *:last-child{
	margin-bottom: 0;
}
.js_modaalArea{
	margin-bottom: 7.857em;
}
/* js_pageTop
========================================================================== */
/*リンクを右下に固定*/
.js_pageTop{
	position: fixed;
	right: 0;
	bottom:0;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateX(150px);
}
/*　左の動き　*/
.js_pageTop.js_pageTop__leftMove{
	animation: LeftAnime 0.5s forwards;
}
@keyframes LeftAnime{
  from {
    opacity: 0;
	transform: translateX(150px);
  }
  to {
    opacity: 1;
	transform: translateX(0);
  }
}
/*　右の動き　*/
.js_pageTop.js_pageTop__rightMove{
	animation: RightAnime 0.5s forwards;
}
@keyframes RightAnime{
  from {
  	opacity: 1;
	transform: translateX(0);
  }
  to {
  	opacity: 1;
	transform: translateX(150px);
  }
}
	@media (min-width: 1200px){
		.js_pageTop{
			bottom: 20px;
		}
	}
/* js-scrollable
========================================================================== */
.js-scrollable{
	letter-spacing: 0 !important;
}
/* jsモジュyール名
========================================================================== */
/*
タイトル
*/
/*
タイトル
*/
/* ==========================================================================
  Element Modules エレメントモジュール
========================================================================== */
/* ページを開いた時のアニメーション
========================================================================== */
.el_animeFade{
	position: relative;
}
.el_animeFade_bg{
	background: #fff;
	content: "";
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	animation-name: PageAnime-fade;
	animation-duration: 3s;
	animation-fill-mode: forwards;
	pointer-events: none;
  }
   
  @keyframes PageAnime-fade {
	0% {
	  opacity: 1;
	}
	100% {
	  opacity: 0;
	  display: none;
	}
  }
/* スクリーンリーダーのみ表示
========================================================================== */
.el_srOnly{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
/* 見出し el_heading
========================================================================== */
/*
el_headingLv1
 */
.el_headingLv1{
	width: 250px;
}
.el_headingLv1 a{
	position: relative;
	display: block;
	text-decoration: none;
}
.el_headingLv1 a img{
	width: 100%;
}
.el_headingLv1_logoTxt{
	text-align: center;
	display:block;
	padding-top: 10px;
	color: var(--colorText-accent);
	font-size: 13px;
	font-weight: 400;
	text-decoration: none;
}
	@media (min-width: 1200px) {
		.el_headingLv1{
			width: 285px;
		}
	}
/*
el_headingLv2
*/
.el_headingLv2{
	position: relative;
	padding-top: 2.7em;
	color: var(--colorText-main);
	font-size: clamp(1.25rem, 1.03rem + 0.94vw, 1.875rem);/* min20px max30px==vp min375px max1440 px*/
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
}
.el_headingLv2 > span{
	padding-left: .1em;
}
.el_headingLv2::before{
	content: attr(data-en);
	position: absolute;
	display: block;
	top:0;
	left:.5em;
	right: 0;
	color: var(--colorText-accent);
	font-size: 0.7em;
	letter-spacing: .5em;
	line-height: 1.3;
	text-align: center;
}
.el_headingLv2::after{
	content: "\e91c";
	position: absolute;
	top:1.875em;
	left:50%;
	transform: translateX(-50%);
	color: var(--colorText-accent);
	font-size: .8em;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
.ly_cont_wrap.ly_cont_wrap__bgcSecond .el_headingLv2,
.ly_cont_wrap.ly_cont_wrap__bgcSecond .el_headingLv2::before,
.ly_cont_wrap.ly_cont_wrap__bgcSecond .el_headingLv2::after{
	color: var(--colorText-invert);
}
.ly_cont_wrap.ly_cont_wrap__bgcThird .el_headingLv2,
.ly_cont_wrap.ly_cont_wrap__bgcThird .el_headingLv2::before,
.ly_cont_wrap.ly_cont_wrap__bgcThird .el_headingLv2::after{
	color: var(--colorText-invert);
}
	@media (min-width: 1200px) {
		.el_headingLv2{
			padding-top: 2em;
		}
		.el_headingLv2::before{
			font-size: .553em;
		}
		.el_headingLv2::after{
			font-size: .553em;
		}
	}
/*
el_headingLv3
*/
.el_headingLv3{
	color: var(--colorText-accent);
	font-size: clamp(1.063rem, 0.996rem + 0.28vw, 1.25rem);/* min17px max0px==vp min375px max1440 px*/
	font-weight: 500;
	line-height: 1.55;
}
/*
el_headingLv3-service
*/
.el_headingLv3-service{
	margin-bottom: 1.5em;
	font-size: 1.3em;
	font-weight: 500;
	line-height: 1.7;
}
.el_headingLv3-service:before{
	content: attr(data-en);
	display: block;
	color: var(--colorText-accent3);
	font-size: 0.8em;
}
.el_headingLv3-service_sub{
	display: block;
}
.el_headingLv3-service_sub::before,
.el_headingLv3-service_sub::after{
	content: "〜";
}
/*
el_headingLv3-voice
*/
.el_headingLv3-voice{
	text-align: center;
	color: var(--colorText-accent2);
	font-weight: 500;
	line-height: 1.7;
}
.el_headingLv3-voice_main{
	display: block;
	font-size: 1.111em;
}
/* アイコン表示
========================================================================== */
.el_iconBefore,
.el_iconAfter{
	position: relative;
}
.el_iconBefore{
	padding-left: 1.2em;
}
.el_iconAfter{
	padding-right: 1.2em;
}
.el_iconBefore::before,
.el_iconAfter::after{
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	color: inherit;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: inherit;
}
.el_iconBefore.el_iconBefore__top::before,
.el_iconAfter.el_iconAfter__top::after{
	top:0;
	transform: translateY(0);
}
.el_iconBefore.el_iconBefore__colorAccent::before,
.el_iconAfter.el_iconAfter__colorAccentt::after{
	color: var(--colorText-accent);
}
.el_iconBefore.el_iconBefore__colorAccent2::before,
.el_iconAfter.el_iconAfter__colorAccent2::after{
	color: var(--colorText-accent2);
}
.el_iconBefore::before{
	left: 0;
}
.el_iconAfter::after{
	right: 0;
}
.el_iconBefore.el_iconBefore__checkCircle::before,
.el_iconAfter.el_iconAfter__checkCircle::after{
	content: "\e901";
}
.el_iconBefore.el_iconBefore__checkSquare::before,
.el_iconAfter.el_iconAfter__checkSquare::after{
	content: "\e902";
}
.el_iconBefore.el_iconBefore__chevronCircleDown::before,
.el_iconAfter.el_iconAfter__chevronCircleDown::after{
	content: "\e903";
}
.el_iconBefore.el_iconBefore__chevronCircleLeft::before,
.el_iconAfter.el_iconAfter__chevronCircleLeft::after{
	content: "\e908";
}
.el_iconBefore.el_iconBefore__chevronCircleRight::before,
.el_iconAfter.el_iconAfter__chevronCircleRight::after{
	content: "\e909";
}
.el_iconBefore.el_iconBefore__chevronCircleUp::before,
.el_iconAfter.el_iconAfter__chevronCircleUp::after{
	content: "\e90a";
}
.el_iconBefore.el_iconBefore__chevronDown::before,
.el_iconAfter.el_iconAfter__chevronDown::after{
	content: "\e90b";
}
.el_iconBefore.el_iconBefore__chevronLeft::before,
.el_iconAfter.el_iconAfter__chevronLeft::after{
	content: "\e90c";
}
.el_iconBefore.el_iconBefore_chevronRight_::before,
.el_iconAfter.el_iconAfter__chevronRight::after{
	content: "\e90d";
}
.el_iconBefore.el_iconBefore__chevronUp::before,
.el_iconAfter.el_iconAfter__chevronUp::after{
	content: "\e90e";
}
.el_iconBefore.el_iconBefore__dot::before,
.el_iconAfter.el_iconAfter__dot::after{
	content: "\e90f";
}
.el_iconBefore.el_iconBefore__download::before,
.el_iconAfter.el_iconAfter__download::after{
	content: "\e90b";
}
.el_iconBefore.el_iconBefore__insta::before,
.el_iconAfter.el_iconAfter__insta::after{
	content: "\e910";
}
.el_iconBefore.el_iconBefore__mail::before,
.el_iconAfter.el_iconAfter__mail::after{
	content: "\e912";
}
.el_iconBefore.el_iconBefore__map::before,
.el_iconAfter.el_iconAfter__map::after{
	content: "\e914";
}
.el_iconBefore.el_iconBefore__openInNew::before,
.el_iconAfter.el_iconAfter__openInNew::after{
	content: "\e915";
}
.el_iconBefore.el_iconBefore__personAdd::before,
.el_iconAfter.el_iconAfter__personAdd::after{
	content: "\e917";
}
.el_iconBefore.el_iconBefore__phone::before,
.el_iconAfter.el_iconAfter__phone::after{
	content: "\e918";
}
.el_iconBefore.el_iconBefore__semicircleDown::before,
.el_iconAfter.el_iconAfter__semicircleDown::after{
	content: "\e91c";
}
.el_iconBefore.el_iconBefore__semicircleLeft::before,
.el_iconAfter.el_iconAfter__semicircleLeft::after{
	content: "\e91d";
}
.el_iconBefore.el_iconBefore__semicircleUp::before,
.el_iconAfter.el_iconAfter__semicircleUp::after{
	content: "\e91e";
}
/* el_link
========================================================================== */
/*
el_linkBtnUnderLine
*/
a.el_linkBtnUnderLine{
	display: inline-block;
	padding: 0.889em .2em;
	border-bottom: 2px dotted var(--colorText-accent2);
	color: var(--colorText-accent2);
	font-weight: 500;
	text-decoration: none;
	line-height: 1.3;
}
a.el_linkBtnUnderLine > span{
	position: relative;
	display: block;
	padding-left: 1.889em;
}
a.el_linkBtnUnderLine > span::before{
	content: "\e906";
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	left: 0;
	color: var(--colorText-accent2);
	font-family: 'icon-tinyHP' !important;
	font-size: 1.444em;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	transition:.3s;
}
@media (hover: hover) and (pointer: fine){
	a.el_linkBtnUnderLine:hover{
		color: var(--colorText-accent);
		border-bottom-color: var(--colorText-accent);
	}
	a.el_linkBtnUnderLine:hover span::before{
		color: var(--colorText-accent);
	}
}

/*
el_linkBtnRound
*/
a.el_linkBtnRound{
	position: relative;
	display: inline-block;
	padding: .8em 26px;
	border: 1px solid var(--colorSub-border);
	border-radius: 26px;
	color: var(--colorSub-border);
	font-weight:500;
	text-align: center;
	text-decoration: none;
}
a.el_linkBtnRound.el_linkBtnRound__fontSizeSm{
	font-size: 0.813em;
}
a.el_linkBtnRound > span{
	position: relative;
	display: block;
	padding-left: 2.5em;
}
a.el_linkBtnRound > span::before{
	content: "\e906";
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	left: 0;
	color: var(--colorSub-border);
	font-family: 'icon-tinyHP' !important;
	font-size: 1.538em;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	transition:.3s;
}
@media (hover: hover) and (pointer: fine){
	a.el_linkBtnRound:hover{
		color: var(--colorBtn-secondary);
	}
	a.el_linkBtnRound:hover > span::before{
		color: var(--colorBtn-secondary);
	}
}

/*
el_linkTxt
*/
a.el_linkTxt{
	color: inherit;
}
@media (hover: hover) and (pointer: fine){
	a.el_linkTxt:hover{
		color: var(--colorText-accent);
	}
}
/* 
el_linkPageTop
 */
a.el_linkPageTop{
	position: relative;
	display: block;
	width: calc(136px * .6);
	height: calc(136px * .6);
	padding-top: calc(68px * .6);
	background-color: var(--colorBkg-fourth);
	border-radius: 15px 0px 0px 0;
	color: #fff;
	color: var(--colorText-accent3);
	font-size: 12px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
}
a.el_linkPageTop::before{
	content: "\e91e";
	position: absolute;
	top:calc(41px * .5);
	left:50%;
	transform: translateX(-50%);
	color: var(--colorText-accent3);
	font-size: 1.4em;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
	@media (min-width: 1200px) {
		a.el_linkPageTop{
			width: 136px;
			height: 136px;
			padding-top: 68px;
			border-radius: 15px 0px 0px 15px;
			font-size: 16px;
		}
		a.el_linkPageTop::before{
			top:41px;
			font-size: 1.588em;
			transition:.3s;
		}
	}
	@media (hover: hover) and (pointer: fine){
		a.el_linkPageTop:hover{
			background-color: var(--colorBkg-second);
			color: var(--colorText-accent2);
		}
		a.el_linkPageTop:hover::before{
			color: var(--colorText-accent2);
		}
	}
/* el_picSize
========================================================================== */
.el_picSize{
	position: relative;
}
.el_picSize.el_picSize__goldRtio{
	aspect-ratio: 50 / 31;
}
.el_picSize.el_picSize__silverRtio{
	aspect-ratio: 100 / 71;
}
.el_picSize img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* エレメントモジュール名
========================================================================== */
/*
タイトル
*/
/*
タイトル
*/
/* ==========================================================================
  Block Modules　ブロックモジュール
========================================================================== */
/* bl_listBullet
========================================================================== */
ul.bl_listBullet{

}
ul.bl_listBullet > li {
	position: relative;
	padding-left: 1em;
	margin-bottom: 5px;
	line-height: 1.5;
  }
ul.bl_listBullet > li::before {
	content: '';
	position: absolute;
	top: .6em;
	left: 0;
	display: block;
	width: .4em;
	height: .4em;
	background-color: var(--colorText-main);
	border-radius: 50%;
}
/* bl_listMark
========================================================================== */
ul.bl_listMark{
	margin-bottom: 1.5em;
}
ul.bl_listMark li{
	position: relative;
	padding-left: 1.1em;
	margin-bottom: .5em;
	line-height: 1.7;
}
ul.bl_listMark li:last-child{
	margin-bottom: 0;
}
ul.bl_listMark li::before{
	content: "";
	position: absolute;
	top: .52em;
	left: 0;
	display: block;
	width: calc(1em - 4px);
	height: calc(1em - 4px);
	border: 3px solid var(--colorText-accent);
	border-radius: 50%;
}
/* bl_listNote
========================================================================== */
ul.bl_listNote > li {
	position: relative;
	padding-left: 1.1em;
	margin-bottom: .6em;
	line-height: 1.5;
}
ul.bl_listNote.bl_listNote__fsSm li{
	font-size: 0.889em;
}
ul.bl_listNote > li::before {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	color: var(--colorText-accent);
}
ul.bl_listNote.bl_listNote__red > li::before {
	color: red;
}
ul.bl_listNote > li:last-child{
	margin-bottom: 0;
}
/* bl_listDesc
========================================================================== */
dl.bl_listDesc{
	margin-bottom: 1.5em;
}
dl.bl_listDesc dt,
dl.bl_listDesc dd{
	border: 1px solid var(--colorSub-table);
	line-height: 1.625;
	letter-spacing: 0;
}
dl.bl_listDesc dt{
	padding: 8px 18px;
	background-color:var(--colorSub-table);
	color: #fff;
}
dl.bl_listDesc dt:first-of-type{
	border-radius: 15px 15px 0 0;
}
dl.bl_listDesc dd{
	padding: 18px;
	background-color: #fff;
}
dl.bl_listDesc dd:last-of-type{
	border-radius: 0 0 15px 15px;
}
	@media (min-width: 768px) {
		dl.bl_listDesc{
			display: flex;
			flex-wrap: wrap;
		}
		dl.bl_listDesc dt{
			width: 24%;
			padding: 18px 25px;
			border-top: none;
			border-bottom-color: #fff;
		}
		dl.bl_listDesc dt:first-of-type{
			border-top:1px solid var(--colorSub-table);
			border-radius: 15px 0 0 0;
		}
		dl.bl_listDesc dt:last-of-type{
			border-bottom-color: var(--colorSub-table);
			border-radius: 0 0 0 15px;
		}
		dl.bl_listDesc dd{
			width: calc(100% - 24%);
			padding: 18px 25px;
			border-top: none;
		}
		dl.bl_listDesc dd:first-of-type{
			border-top:1px solid var(--colorSub-table);
			border-radius: 0 15px 0 0;
		}
		dl.bl_listDesc dd:last-of-type{
			border-radius: 0 0 15px 0;
		}
	}
/* bl_listPhotoGallery
========================================================================== */
.bl_listPhotoGallery_wrap{
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding-bottom: 40px;
}
ul.bl_listPhotoGallery > li{
	position: relative;
}
ul.bl_listPhotoGallery > li img{
	width: 100%;
}
span.bl_listPhotoGallery_subTxt{
	position: absolute;
	right: 0;
	bottom:0;
	left:0;
	padding: .5em;
	background-color: rgba(255, 255, 255, .7);
	font-size: var(--rem16px);
	text-align: center;
}
/* ページネーションのスタイル */
.bl_listPhotoGallery_page {
	background-color: #ccc;
	height: 13px;
	width: 13px;
	transition: .5s all;
  }
/* 現在表示されているページネーションのスタイル */
.bl_listPhotoGallery_page.is-active {
	background-color: var(--colorBtn-secondary);
	opacity: 1;
}
/* ページネーションの位置 */
.bl_listPhotoGallery_pagination {
	bottom: -30px;
}
/* ページネーション間の余白 */
.bl_listPhotoGallery_pagination li {
	margin-left: 5px;
	margin-right: 5px;
}
	@media (min-width: 768px) {
		.bl_listPhotoGallery_wrap{
			width: 100%;
			margin: 0;
			padding-bottom: 0;
		}
		.splide.is-initialized:not(.is-active) .splide__list.bl_listPhotoGallery {
			display: grid;
			gap: 20px;
			grid-template-columns: repeat(2, 1fr);
		}
	}
	@media (min-width: 992px){
		.splide.is-initialized:not(.is-active) .splide__list.bl_listPhotoGallery {
			display: grid;
			gap: 30px;
			grid-template-columns: repeat(3, 1fr);
		}
	}
/* bl_listFlow
========================================================================== */
.bl_listFlow_wrap{
	padding-bottom: 20px;
	overflow-x: scroll;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}
.bl_listFlow{
	width: calc((256px + 30px) * 6/*flowステップの数 */ + 30px); 
	padding-left: 30px;
}
.bl_listFlow ul{
	display: flex;
}
.bl_listFlow ul > li.bl_listFlow_card{
	position: relative;
	display: flex;
	flex-shrink: 0;
	flex-direction: column;
	width: 256px;
	margin-right: 30px;
	padding: 26px;
	background-color: var(--colorBkg-second);
	border-radius: 15px;
	font-size: var(--rem16px);
	line-height: 1.6;
	letter-spacing: 0;
}
.bl_listFlow ul > li.bl_listFlow_card::after{
	content: "\e91d";
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	right: -25px;
	color:var(--colorText-accent3);
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
.bl_listFlow ul > li:last-child.bl_listFlow_card::after{
	content: none;
}
.bl_listFlow_card_header{
	/*height: 9em;タイトルが２行以上の要素がある場合*/
	color: var(--colorText-accent);
}
.bl_listFlow_card_header_number{
	display: inline-block;
	padding-left: .2em;
	font-size: 1.875em;
}
.bl_listFlow_card_header_ttl{
	display: flex;
	flex-direction: column;
	height: calc(17px + 2.5em + 10px);
	padding: 17px 0;
	color: var(--colorText-accent2);
	font-size: 1.25em;
	line-height: 1.3;
	letter-spacing: .1em;
}
.bl_listFlow_card_header_ttl_sub{
	display: block;
	font-size: 0.7em;
}
.bl_listFlow_card_body > p{
	margin-bottom: 1em;
}
.bl_listFlow_card_body_subTxt{
	font-size: 0.875em;
}
.bl_listFlow_card_body_subTxt-note{
	color: #7C7B7A;
}
.bl_listFlow_card_body > *:last-child{
	margin-bottom: 0;
}
.bl_listFlow_card_note{
	padding-top: 1.2em;
	margin-top: auto;
	color: var(--colorText-accent);
}
.bl_listFlow_card_note p{
	font-size: 0.875em;
}
	@media (min-width: 1200px){
		.bl_listFlow{
			width: calc((256px + 30px) * 6/*flowステップの数 */ + 60px + 30px); 
			padding-right: 30px;
			padding-left: 60px;
			margin: 0 auto;
		}
	}
/* bl_listFaq
========================================================================== */
ul.bl_listFaq{
	margin-top: -1em;
}
ul.bl_listFaq li{
	border-bottom:1px solid #6D6D6D;
}
.bl_listFaq_ttl{
	position: relative;
	padding: 1em 2.4em 1em 2em;
	font-size: clamp(1.125rem, 1.081rem + 0.19vw, 1.25rem);/* min18px max20px==vp min375px max1440 px*/
	line-height: 1.444;
	font-weight: 500;
}
.bl_listFaq_ttl::before{
	content: "Q";
	position: absolute;
	top:0.4em;
	left: .2em;
	color: var(--colorText-accent);
	font-family: var(--fontFamSerif);
	font-size: 1.389em;
}
.bl_listFaq_ttl::after{
	content: "\e903";
	position: absolute;
	top:18px;
	right: 0;
	color: var(--colorText-accent);
	font-size: 1.611em;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	transition:.5s;
}
.bl_listFaq_ttl.js_accordion_close::after{
	transform: rotate(180deg);
}
.bl_listFaq_box{
	padding: 0 1.611em 1.875em 2.25em;
	margin-top: .3em;
	line-height: 1.6;
}
.bl_listFaq_box p{
	margin-bottom: 1.3em;
}
.bl_listFaq_box > *:last-child{
	margin-bottom: 0;
}
/* bl_listToppcs
========================================================================== */
dl.bl_listTopics{
	line-height: 1.7;
}
dl.bl_listTopics dd{
	margin-bottom: 1em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}
dl.bl_listTopics dd:last-of-type{
	margin-bottom: 0;
}
dl.bl_listTopics dd a{
	color: inherit;
	text-decoration: none;
}
.bl_listTopics_mark{
	display: inline-block;
	width: 8.824em;
	margin-right: .8em;
	padding: .3em;
	background-color: var(--colorText-accent);
	border-radius: 1em;
	color: #fff;
	font-size: 0.9em;
	text-align: center;
	line-height: 1.0;
}
.bl_listTopics_mark.bl_listTopics_mark__bgcThird{
	background-color: var(--colorBkg-third);
}
	@media (min-width: 768px){
		dl.bl_listTopics{
			max-width: 1000px;
			margin: 0 auto;
			display: flex;
			flex-wrap: wrap;
		}
		dl.bl_listTopics dt,
		dl.bl_listTopics dd{
			margin-bottom: 1.5em;
		}
		dl.bl_listTopics dt:last-of-type,
		dl.bl_listTopics dd:last-of-type{
			margin-bottom: 0;
		}
		dl.bl_listTopics dt{
			width: 8em;
		}
		dl.bl_listTopics dd{
			width: calc(100% - 8em);
		}
		.bl_listTopics_mark{
			margin-right: 1.5em;
		}
	}
/* bl_listInfo
========================================================================== */
.bl_listInfo_wrap{
	padding: 24px;
	background-color: #fff;
	border-radius: 15px;
}dl.bl_listInfo dt,
dl.bl_listInfo dd{
	padding-left: 1.353em;
	font-size: clamp(1.063rem, 1.04rem + 0.09vw, 1.125rem);/* min17px max18px==vp min375px max1440 px*/
	line-height: 1.529;
}
dl.bl_listInfo dt{
	position: relative;
	font-weight: 500;
}
dl.bl_listInfo dt::before{
	content: "\e90f";
	position: absolute;
	top:.58em;
	left: .1em;
	color: var(--colorText-accent);
	font-size: 0.765em;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
dl.bl_listInfo.bl_listInfo__semicircle dt::before{
	content: "\e91d";
}
dl.bl_listInfo dd{
	margin-bottom: 1.3em;
}
dl.bl_listInfo dd:last-of-type{
	margin-bottom: 0;
}
	@media (min-width: 768px){
		dl.bl_listInfo{
			display: flex;
			flex-wrap: wrap;
		}
		dl.bl_listInfo dt{
			width: 6em;
		}
		dl.bl_listInfo.bl_listInfo__semicircle dt{
			width: 8em;
			padding-left: 0;
			padding-right: 2em;
		}
		dl.bl_listInfo.bl_listInfo__semicircle dt::before{
			left: initial;
			right: 0;
		}
		dl.bl_listInfo dd{
			width: calc(100% - 6em);
		}
		dl.bl_listInfo.bl_listInfo__semicircle dd{
			width: calc(100% - 8em);
			padding-left: 2em;
		}
	}
	@media (min-width: 1200px){
		.bl_listInfo_wrap{
			padding: 40px 50px;
		}
		dl.bl_listInfo dt{
			width: 7em;
		}
		dl.bl_listInfo dd{
			width: calc(100% - 7em);
			margin-bottom: 2em;
		}
	}

/* bl_headerToggle
========================================================================== */
.bl_headerToggle {
	position: fixed;
	z-index: 9999;/*ボタンを最前面に*/
	top: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	padding: 0px 10px 0px 10px;
	cursor: pointer;
	transition: all .2s ease-in-out;
	background-color:rgba(255, 255, 255, .9);
	border:solid 2px var(--colorBtn-primary);
	border-radius: 50%;
}
.bl_headerToggle_bar{
	display: block;
	width: 100%;
	height: 0px;
	border-top:solid 2px var(--colorBtn-primary);
	content: "";
	transition: all .2s ease-in-out;
}
.bl_headerToggle_bar::before,
.bl_headerToggle_bar::after {
	display: block;
	width: 100%;
	height: 2px;
	content: "";
	transition: all .2s ease-in-out;
	background-color: var(--colorBtn-primary);
}

.bl_headerToggle_bar:before {
	transform: translateY(-9px);
	transform: translateY(-8px);
}

.bl_headerToggle_bar:after {
	transform: translateY(7px);
	transform: translateY(2px);
}
.bl_headerToggle[aria-expanded="true"]{
	background-color:rgba(255, 255, 255, 0);
	border-color: #fff;
}
.bl_headerToggle[aria-expanded="true"] .bl_headerToggle_bar{
	border-top-color: transparent;
}
.bl_headerToggle[aria-expanded="true"] .bl_headerToggle_bar:before {
	transform: translateY(-2px) rotate(45deg);
	background-color: #fff;
}
.bl_headerToggle[aria-expanded="true"] .bl_headerToggle_bar:after {
	transform: translateY(-4px) rotate(-45deg);
	background-color: #fff;
}
	@media (min-width: 1200px) {
		.bl_headerToggle{
			width: 1px;
			height: 1px;
			padding: 0;
			overflow: hidden;
			clip: rect(0, 0, 0, 0);
			white-space: nowrap;
			border: 0;
		}
	}
/* bl_headerPannel
========================================================================== */
.bl_headerPannel{
	/*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position:fixed;
	z-index: -1;
	opacity: 0;/*はじめは透過0*/
    /*ナビの位置と形状*/
	top:0;
	left: 0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background-color:var(--colorBkg-third);
    /*動き*/
	transition: all 0.3s;
}
.bl_headerPannel.panelactive{
	opacity: 1;
	z-index:999;
}
/*ナビゲーションの縦スクロール*/
.bl_headerPannel.panelactive .bl_headerPannel_inner{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
	@media (min-width: 1200px) {
		.bl_headerPannel{
			position: relative;
			z-index: 2;
			opacity: 1;
			background-color: initial;
			height: auto;
		}
	}
/* bl_headerNav
========================================================================== */
 .bl_headerNav{
	max-width: 600px;
	padding:80px  45px;
	margin:0 auto;
 }
 	@media (min-width: 1200px){
		.bl_headerNav{
			display: flex;
			flex-direction: column-reverse;
			max-width: initial;
			padding: 0;
			margin: 0;
		 }
	}
/*
bl_headerNav_list
*/
ul.bl_headerNav_list li{
	margin-bottom: 10px;
}
ul.bl_headerNav_list li:last-child{
	margin-bottom: 0;
}
a.bl_headerNav_list_link{
	display: flex;
	align-items: center;
	height: 48px;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
}
	@media (min-width: 1200px){
		ul.bl_headerNav_list{
			display: flex;
			justify-content: space-between;
			width: 100%;
			max-width: 1002px;
			margin-left: auto;
			margin-right: 0;
		}
		ul.bl_headerNav_list li{
			margin-bottom: 0;
		}
		ul.bl_headerNav_list li.bl_headerNav_list_top{
			display: none;
		}
		a.bl_headerNav_list_link{
			color: var(--colorText-main);
			font-size: clamp(17px, 12px + 0.42vw, 18px);
		}
	}
	@media (hover: hover) and (pointer: fine){
		a.bl_headerNav_list_link:hover{
			color: var(--colorText-accent);
		}
	}

/*
bl_headerNav_list2
*/
.bl_headerNav_list2 li{
	margin-top: 38px;
}
a.bl_headerNav_list2_link{
	position: relative;
	display: flex;
	align-items: center;
	height: 40px;
	padding-left: 57px;
	font-size: 18px;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
}
a.bl_headerNav_list2_link::before{
	content: "";
	position: absolute;
	top:0;
	left: 0;
	display: block;
	width: 40px;
	height: 40px;
	border: 2px solid #fff;
	border-radius: 50%;
}
a.bl_headerNav_list2_link.bl_headerNav_list2_link__contact::before{
	background-color:#fff;
}
a.bl_headerNav_list2_link::after{
	position: absolute;
	color: inherit;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
a.bl_headerNav_list2_link.bl_headerNav_list2_link__access::after{
	content: "\e914";
	top: 9px;
	left: 9px;
	font-size: 23px;
}
a.bl_headerNav_list2_link.bl_headerNav_list2_link__contact::after{
	content: "\e912";
	top: 11px;
	left: 11px;
	color: var(--colorText-accent);
	font-size: 18px;
}
	@media (min-width: 1200px){
		.bl_headerNav_list2{
			display: flex;
			justify-content: flex-end;
			margin-bottom: 10px;
		}
		.bl_headerNav_list2 li{
			margin-top: 0;
			margin-left: 22px;
		}
		a.bl_headerNav_list2_link{
			color: var(--colorText-accent);
		}
		a.bl_headerNav_list2_link::before{
			border-color: var(--colorText-accent);
			transition:.3s;
		}
		a.bl_headerNav_list2_link.bl_headerNav_list2_link__contact::before{
			background-color: var(--colorText-accent);
		}
		a.bl_headerNav_list2_link.bl_headerNav_list2_link__contact::after{
			color: #fff;
			transition:.3s;
		}
	}
	@media (hover: hover) and (pointer: fine){
		a.bl_headerNav_list2_link:hover{
			color: var(--colorText-accent2);
		}
		a.bl_headerNav_list2_link:hover::before{
			border-color: var(--colorText-accent2);
		}
		a.bl_headerNav_list2_link.bl_headerNav_list2_link__contact:hover::before{
			background-color: var(--colorText-accent2);
		}
	}
/* bl_footer
========================================================================== */
/*
bl_footerTtl
*/
.bl_footerTtl{
	font-size: clamp(1.375rem, 1.243rem + 0.56vw, 1.75rem);/* min22px max28px==vp min375px max1440 px*/
	line-height: 1.636;
}
/*
bl_footerInfoList
*/
dl.bl_footerInfoList{
	display: flex;
	flex-wrap: wrap;
}
dl.bl_footerInfoList dt,
dl.bl_footerInfoList dd{
	margin-bottom: .5em;
	line-height: 1.4;
}
dl.bl_footerInfoList dt{
	width: 6.5em;
	font-weight: 500;
	letter-spacing: 0;
}
dl.bl_footerInfoList dd{
	width: calc(100% - 6.5em);
	padding-left: .5em;
}
/*
bl_footerHowtoList
*/
ul.bl_footerHowtoList li{
	position: relative;
	padding-left: 1.3em;
	margin-bottom: .5em;
	line-height: 1.4;
}
ul.bl_footerHowtoList li:last-child{
	margin-bottom: 0;
}
ul.bl_footerHowtoList li::before{
	content: "\e90f";
	position: absolute;
	top:.5em;
	left: 0;
	color: inherit;
	font-size: .765em;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
/*
bl_footerMap
*/
.bl_footerMap{
	width: 100%;
	aspect-ratio: 188 / 167;
}
.bl_footerMap iframe{
	width: 100%;
	height: 100%;
}
	@media (min-width: 768px) {
		.bl_footerMap{
			aspect-ratio: 8 / 3;
		}
	}
	@media (min-width: 1200px) {
		.bl_footerMap{
			aspect-ratio: 720 / 167;
		}
	}
/*
bl_footerCopy
*/
.bl_footerCopy{
	font-size: 0.875em;
	line-height: 1.4;
	text-align: center;
}

/* bl_deco
========================================================================== */
.bl_deco{
	width: 100%;
	aspect-ratio: 377 / 243;
	max-height: 243px;
}
.bl_deco img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
	@media (min-width: 768px){
		.bl_deco{
			width: 100%;
			aspect-ratio: 1440 / 243;
		}
	}
/* bl_card
========================================================================== */
.bl_card{
	display: block;
	padding: 22px 30px;
	margin-bottom: 16px;
	background-color: var(--colorBkg-second);
	border-radius: 15px;
	color: var(--colorText-accent2);
	text-decoration: none;
}
.bl_card_imgWrap{
	width: 100%;
	aspect-ratio: 122 / 95;
	margin-bottom: 14px;
}
.bl_card_imgWrap img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition:.3s;
}
.bl_card_body{
	display: flex;
	justify-content: space-between;
}
.bl_card_body_num{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 60px;
	font-size: 13px;
	font-weight: 500;
	text-align: center;
}
.bl_card_body_num > span{
	display: block;
	padding: 2px;
	font-size: 30px;
}
.bl_card_body_txt{
	display: flex;
	align-items: center;
	width: calc(100% - 70px);
	padding-left: 10px;
	border-left: 2px dotted var(--colorText-accent2);
	transition:.3s;
}
.bl_card_body_txt p{
	font-weight: 700;
	font-size: 27px;
	line-height: 1.3;
}
	@media (min-width: 1200px){
		.bl_card_body_num{
			width: 70px;
			font-size: 16px;
		}
		.bl_card_body_num > span{
			padding: 2px;
			font-size: 30px;
		}
		.bl_card_body_txt{
			width: calc(100% - 85px);
			padding-left: 20px;
		}
	}
	@media (hover: hover) and (pointer: fine){
		a.bl_card:hover{
			background-color: var(--colorText-accent2);
			color: var(--colorBkg-second);
		}
		a.bl_card:hover img{
			opacity: .8;
		}
		a.bl_card:hover .bl_card_body_txt{
			border-left: 2px dotted var(--colorBkg-second);
		}
	}
/*
bl_cardUnit
*/
	@media (max-width: 767px){
		.bl_cardUnit > .bl_card:last-child{
			margin-bottom: 0;
		}
	}
	@media (min-width: 768px) {
		.bl_cardUnit{
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
		}
		.bl_cardUnit.bl_cardUnit__3col{
			margin-bottom: -20px;
		}
		.bl_cardUnit.bl_cardUnit__3col > .bl_card{
			width: calc((100% / 2) - 10px);
			margin-bottom: 20px;
		}
	}
	@media (min-width: 992px){
		.bl_cardUnit.bl_cardUnit__3col > .bl_card{
			width: calc((100% / 3) - 16px);
		}
	}
	@media (min-width: 1200px){
		.bl_cardUnit.bl_cardUnit__3col{
			margin-bottom: -30px;
		}
		.bl_cardUnit.bl_cardUnit__3col > .bl_card{
			width: calc((100% / 3) - 20px);
			margin-bottom: 30px;
		}
	}
/* bl_contactCard
========================================================================== */
.bl_contactCard{
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 30em;
	padding: 20px 5px;
	margin-bottom:1.063em;
	margin-right: auto;
	margin-left: auto;
	background-color: #fff;
	border: 3px solid #fff;
	border-radius: 15px;
	line-height: 1.3;
	letter-spacing: .05em;
}
a.bl_contactCard{
	color: inherit;
	text-decoration: none;
}

@media (hover: hover) and (pointer: fine){
	a.bl_contactCard:hover{
		border-color: var(--colorBkg-fourth);
	}
}
.bl_contactCard > span{
	display: block;
	width: 100%;
	text-align: center;
}
.bl_contactCard_telTtl{
	color: var(--colorText-accent2);
	font-size: 17px;
	font-weight: 500;
}
.bl_contactCard_telNumber > span{
	position: relative;
	display: inline-block;
	padding-top: calc(20px + 33px + 8px);
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0;
}
.bl_contactCard_telNumber > span::before{
	content: "\e918";
	position: absolute;
	top:20px;
	left:50%;
	transform: translateX(-50%);
	color: var(--colorText-accent);
	font-size: 33px;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
.bl_contactCard_mailTtl > span{
	position: relative;
	display: inline-block;
	padding-top: calc(10px + 27px + 12px);
	padding-bottom: 5px;
	color: var(--colorText-accent2);
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
}
.bl_contactCard_mailTtl > span::before{
	content: "\e912";
	position: absolute;
	top:10px;
	left:50%;
	transform: translateX(-50%);
	color: var(--colorText-accent);
	font-size: 35px;
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
.bl_contactCard_lineTtl > span{
	position: relative;
	display: inline-block;
	padding-top: calc(10px + 27px + 12px);
	padding-bottom: 5px;
	color: var(--colorText-accent2);
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
}
.bl_contactCard_lineTtl > span::before{
	content: "";
	position: absolute;
	top:10px;
	left:50%;
	transform: translateX(-50%);
	width: 38px;
	height: 38px;
	background-image: url(../img/com_iconLine.png);
	background-size: contain;
	background-repeat: no-repeat;
}
.bl_contactCard_subTxt{
	padding-top: 10px;
	font-size: 15px;
}
	@media (min-width: 1200px) {
		.bl_contactCard_telTtl{
			font-size: 20px;
		}
		.bl_contactCard_telNumber > span{
			padding-top: 20px;
			padding-left: calc(33px + 10px);
			font-size: 35px;
			font-weight: 700;
			letter-spacing: 0;
		}
		.bl_contactCard_telNumber > span::before{
			content: "\e918";
			position: absolute;
			top:28px;
			left:0;
			transform: translateX(0);
			font-size: 33px;
		}
		.bl_contactCard_subTxt{
			padding-top: 10px;
			font-size: 17px;
		}
	}
/*
.bl_contactUnit
*/
	@media (min-width:768px){
		.bl_contactUnit.bl_contactUnit__2col{
			display: flex;
			justify-content: center;
		}
		.bl_contactUnit.bl_contactUnit__3col{
			display: flex;
			justify-content: space-between;
		}
		.bl_contactUnit.bl_contactUnit__2col >.bl_contactCard{
			width: calc(50% - 20px);
			margin-right: 10px;
			margin-left: 10px;
		}
		.bl_contactUnit.bl_contactUnit__2col >.bl_contactCard:last-of-type,
		.bl_contactUnit.bl_contactUnit__3col >.bl_contactCard:last-of-type{
			margin-bottom:1.063em;
		}
		.bl_contactUnit.bl_contactUnit__3col > .bl_contactCard.bl_contactCard__w40per{
			width: 40%;
		}
		.bl_contactUnit.bl_contactUnit__3col > .bl_contactCard.bl_contactCard__w28per{
			width: 28%;
		}
		.bl_contactUnit.bl_contactUnit__3col > .bl_contactCard.bl_contactCard__w25per{
			width: 25%;
		}
	}
	@media (min-width:1200px){
		.bl_contactUnit.bl_contactUnit__2col >.bl_contactCard{
			width: calc(50% - 30px);
			margin-right: 15px;
			margin-left: 15px;
		}
	}

/* bl_privacyPolicy
========================================================================== */
a.bl_privacyPolicy_btn{
	display: inline-block;
	padding: 10px;
	color: inherit;
	font-size: 0.889em;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
}
a.bl_privacyPolicy_btn > span::after{
	content: "\e906";
	display: inline-block;
	margin-left: .5em;
	color: var(--colorText-accent2);
	font-family: 'icon-tinyHP' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	transition: all .5s ease;
	transition:.3s;
}
	@media (hover: hover) and (pointer: fine){
		a.bl_privacyPolicy_btn:hover{
			color: #fff;
		}
		a.bl_privacyPolicy_btn:hover > span::after{
			color: #fff;
		}
	}
/*
bl_privacyPolicy
*/
.bl_privacyPolicy{
	font-size: var(--rem14px);
	line-height: 1.5;
}
.bl_privacyPolicy_ttl{
	padding-bottom: 1em;
	color: var(--colorText-accent);
	font-size: 1.3em;
	font-weight: 500;
	text-align: center;
}
.bl_privacyPolicy > p{
	margin-bottom: 1em;
}
dl.bl_privacyPolicy_list dt{
	margin-bottom: .3em;
	font-size: 1.1em;
	font-weight: 500;
}
dl.bl_privacyPolicy_list dd{
	padding-left: 1.5em;
	margin-bottom: 1.5em;
}
dl.bl_privacyPolicy_list dd > p{
	padding-top: .5em;
}
/* ブロックモジュール名
========================================================================== */
/*
タイトル
*/
/*
タイトル
*/
/* ==========================================================================
  Unique　ユニーク
========================================================================== */
/* un_topIcatch
========================================================================== */
.un_topIcatch{
	width: 100%;
	height: 100%;
}
.un_topIcatch img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
	@media (min-width: 768px){
		.un_topIcatch{
			height: auto;
		}
		.un_topIcatch img{
			width: 100%;
			height: auto;
			object-fit: initial;
		}
	}
/*
タイトル
*/
/*
un_topIcatch_scrolldown
*/
/*スクロールダウン全体の場所*/
.un_topIcatch_scrolldown{
    /*描画位置※位置は適宜調整してください*/
  position:absolute;
  left:50%;
  bottom:10px;
    /*全体の高さ*/
  height:50px;
}
/*Scrollテキストの描写*/
.un_topIcatch_scrolldown span{
    /*描画位置*/
  position: absolute;
  left:-16px;
  top: -15px;
    /*テキストの形状*/
  color: #eee;
  font-size: 12px;
  letter-spacing: 0.05em;
}
/* 線の描写 */
.un_topIcatch_scrolldown::after{
  content: "";
    /*描画位置*/
  position: absolute;
  top: 0;
    /*線の形状*/
  width: 2px;
  height: 30px;
  background: #eee;
    /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}
	@media (min-width: 768px){
		.un_topIcatch_scrolldown{
			display: none;
		}
	}
/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}
/* un_topAbout
========================================================================== */
.un_topAbout_body p{
	margin-bottom: 1em;
	line-height: 1.7;
}
.un_topAbout_body > *:last-child{
	margin-bottom: 0;
}
.un_topAbout_body p.un_topAbout_body_lead{
	margin-bottom: 1.3em;
	color: var(--colorText-accent);
	font-size: clamp(1.25rem, 1.14rem + 0.47vw, 1.563rem);/* min20px max25px==vp min375px max1440 px*/
	font-weight: 500;
	line-height: 2.0;
}
.un_topAbout_pic{
	width: 84.11%;
	padding-top: 30px;
	margin-right: 0;
	margin-left: auto;
}
	@media (min-width: 768px){
		.un_topAbout{
			display: grid;
			grid-template-columns: 51% 49%;
			row-gap:  1.5em;
		}
		.un_topAbout_body{
			grid-column: 1;
			grid-row: 1;
		}
		.un_topAbout_pic{
			grid-column: 2;
			grid-row: 1 / 3;
			width: initial;
			margin: initial;
		}
		.un_topAbout_link{
			grid-column: 1;
			grid-row: 2;
		}
	}
	@media (min-width: 1200px) {
		.un_topAbout_body p.un_topAbout_body_lead{
			margin-bottom: 1em;
		}
	}
/* un_topProfile
========================================================================== */
.un_topProfile_pic{
	margin-bottom: 1em;
}
.un_topProfile p{
	margin-bottom: 1em;
	line-height: 1.7;
}
.un_topProfile p.un_topProfile_body_lead{
	margin-bottom: 1.5em;
	font-size: 1.3em;
	font-weight: 500;
	line-height: 1.7;
}
.un_topProfile_body_lead_sub{
	display: block;
	color: var(--colorText-accent);
	font-size: 0.8em;
}
	@media (min-width: 768px) {
		.un_topProfile{
			display: flex;
			justify-content: space-between;
		}
		.un_topProfile_pic{
			width: 41.07%;
		}
		.un_topProfile_body{
			width: 57.14%;
		}
	}
/* un_topService
========================================================================== */

dl.un_topServiceDl dt,
dl.un_topServiceDl dd{
	line-height: 1.7;
}
dl.un_topServiceDl dt::before{
	content: "\e90f";
	display: inline-block;
	padding-right: .1em;
	color: var(--colorText-accent2);
	font-family: 'icon-tinyHP' !important;
	font-size: .722em;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}
dl.un_topServiceDl dd{
	padding-left: 1em;
}
	@media (min-width: 768px) {
		dl.un_topServiceDl{
			display: flex;
		}
		dl.un_topServiceDl.un_topServiceDl__fukushi{
			margin-bottom: 3.8em;
		}
		dl.un_topServiceDl dt{
			flex-shrink: 0;
		}
		dl.un_topServiceDl dt::after{
			content: "：";
		}
		dl.un_topServiceDl dd{
			padding-left: 0;
		}
	}
/*
タイトル
*/
/* ==========================================================================
  Helpers　ヘルパー
========================================================================== */
.hp_dib { display: inline-block !important; }
.hp_mt05em{ margin-top: .5em !important;}
.hp_mt1em{ margin-top: 1em !important;}
.hp_mt15em{ margin-top: 1.5em !important;}
.hp_mt2em{ margin-top: 2em !important;}
.hp_mt3em{ margin-top: 3em !important;}
.hp_mb2em{margin-bottom: 2em;}
.hp_pt0{padding-top: 0 !important;}
.hp_pt2em{padding-top: 2em !important;}
.hp_center{ display: table; margin:0 auto;}
	@media (min-width: 768px){
		.hp__widthMd{
			width: 94.29%;
			max-width: 1056px;
			margin-inline: auto;
		}
		.hp__widthSm{
			width: 88.57%;
			max-width: 992px;
			margin-inline: auto;
		}
	}

/* フォントスタイル関連
========================================================================== */
/*
サイズ
*/
.hp_fontSizeLg{font-size: 1.3em;}
.hp_fontSizeSm{font-size: 0.875em;}
/*
ウェイト
*/
.hp_fontWtRegular,.hp_fontWt400{ font-weight: 400 !important; }
.hp_fontWtMedium,.hp_fontWt500{ font-weight:500 !important; }
.hp_fontWtSemibold,.hp_fontWt600{ font-weight: 600!important; }
.hp_fontWtBold,.hp_fontWt700{ font-weight: 700 !important; }
/*
トラッキングの数値 ÷ 1000（em）
*/
.hp_fontAV100{ letter-spacing:.1em !important; }
.hp_fontAV200{ letter-spacing:.2em !important; }
.hp_fontAV300{ letter-spacing:.3em !important; }
.hp_fontAV400{ letter-spacing:.4em !important; }
/*
カラー
*/
.hp_fontcolorAccent{ color: var(--colorText-accent);}
.hp_fontColorAccent2{ color: var(--colorText-accent2);}
