@charset "UTF-8";
/***********************************
* body *
***********************************/
body{
	font-family: "Noto Sans Japanese", "Meiryo UI", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#262322;
	/*画面サイズいっぱいに*/
	-webkit-text-size-adjust: 100%;
	margin: 0;
}

/* フォント --------------------*/
.serif{ font-family: 'Noto Serif JP', serif;}/* 明朝体フォント*/
.en{
	font-family: "Brandon Grotesque", "Didact Gothic", Helvetica, Arial, "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: italic;
	font-weight: normal;
	letter-spacing: 0.08em;
}/* 英語フォント*/
.font-b { font-weight: 800 !important; }
.font-mb { font-weight: 700 !important; }
.font-lb { font-weight: 500 !important; }
.font-n { font-weight: normal !important; }
.center{　text-align: center;}
/* 各種要素 --------------------*/
li{ list-style:none;}
ul{ margin: 0; padding: 0;}
img { max-width: 100%; height: auto; width:auto; padding:0; margin:0; vertical-align: bottom;/*←隙間を無くす*/}
img.img-w100{ width:100%;}
a { transition:.3s; color:#262322;}
a.a-ov:hover img{ opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5; transition:.3s;}
a.a-bg-y{
	display: inline-block;
	background-color: #FFFF00;
	padding: 0 10px;
	text-decoration: none;
	color:#262322;
}
a.a-bg-y2{
	display: inline-block;
	background-color: #FFFF00;
	padding: 10px 20px;
	text-decoration: none;
	color:#262322;
}
a.a-bg-y:hover,
a.a-bg-y2:hover{ opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5; transition:.3s;}
/* 画像 _on _off--------------------*/
.a-rollover{ display: inline-block; position: relative; }
.a-rollover .off{ position: relative; top: 0; left: 0; z-index: 11; transition: .3s ease; }
.a-rollover .on{ position: absolute; top: 0; left: 0; z-index: 10; }
.a-rollover .on, .a-rollover .off { display: block; }
.a-rollover:hover .off { opacity: 0;}
.a-rollover:hover span{ opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5; transition:.3s; }
/* 表示・非表示-------------------- */
.disp-xxs,/*400px以下のみ表示*/
.disp-xs,/*小型スマートフォンのみ表示～575px以下*/
.disp-sm,/*通常スマートフォンのみ表示576px～767px*/
.disp-xssm,/*小型・通常スマートフォンで表示767ox以下*/
.disp-xssmmd,/*タブレットとスマートフォンで表示991px以下*/
.disp-md,/*タブレットのみ表示　768～991px*/
.disp-mdpc,/*タブレットとパソコンで表示　768以上*/
.disp-pc,/*パソコンで表示　992px以上*/
.disp-lg,/*中型ディスプレイのみ　992～1199px*/
.disp-xl/*大型ディスプレイのみ　1200px以上*/ {
	display: none !important;
}
.disp-none-xs/*小型スマートフォンのみ非表示～575px以下*/{
	display:block !important;
}
.hp_dib{ display: inline-block;}
.hp_fontBold{font-weight: bold;}
	@media only screen and ( max-width : 991px ){
		.disp-xssmmd{ display: block !important; }
	}
	@media only screen and ( max-width : 767px ){
		.disp-sm{ display: block !important; }
		.disp-xssm{ display: block !important; }
	}
	@media only screen and ( max-width : 400px ){
		.disp-xxs/*400px以下のみ表示*/{
			display: block;
		}
	}
	@media only screen and ( max-width : 575px ){
		.disp-none-xs{
			display:none !important;
		}
		.disp-xs{ display: block !important; }
		.disp-sm{ display: none !important; }
	}
	@media print, screen and (min-width: 768px) {
		.disp-md{ display: block !important; }
		.disp-mdpc{ display: block !important; }
	}
	@media (min-width: 992px) {
		.disp-md{ display: none !important; }
		.disp-pc{ display: block !important; }
		.disp-lg{ display: block !important; }
	}
	@media (min-width: 1200px) {
		.disp-lg{ display: none !important; }
		.disp-xl{ display: block !important; }
	}
/* ※印付きの注意書き用-------------------- */
.note{ padding-left:1em; text-indent:-1em; }
#contents-block p.note-02{color:#7E669A;}
@media only screen and ( max-width : 767px ){
	#contents-block p.note-02{font-size: 0.75rem/*12px*/;}
}
@media print, screen and (min-width: 768px){
	#contents-block p.note-02{font-size: 0.81rem/*13px*/;}
}
@media (min-width: 992px) {
	#contents-block p.note-02{font-size: 0.88rem/*14px*/;}
}

/* ブロック要素-------------------- */
.block-center { display: table; margin-left: auto; margin-right: auto; }/* 可変幅中央寄せ */
.block-left { display: table; margin-right: auto; }/* 可変幅左寄せ */
.block-right { display: table; margin-left: auto; }/* 可変幅右寄せ */

/***********************************
* header	*
***********************************/
	@media only screen and ( max-width : 767px ){
		#header{
			height: 80px;
		}
	}
/* pattern */
.header-pattern-outline{
	position: relative;
}
.header-pattern{
	position: absolute;
	z-index: 20;
}
.header-pattern img{
	opacity: 0.6; filter: alpha(opacity=60); -moz-opacity: 0.6;
}
	@media only screen and ( max-width : 767px ){
		.header-pattern{
			top:0px;
			right:-15px;
			width: 95px;
		}

	}
	@media print, screen and (min-width: 768px) {
		.header-pattern{
			top:80px;
			right:-30px;
			right: -100px;
			width: 130px;
		}
		.header-pattern img{
			width: 150px;
			width: 100%;

		}
	}
	@media (min-width: 992px) {
		.header-pattern{
			top:100px;
			/*left:780px;
			left: 830px;*/
			width: 130px;
		}
		/*.header-pattern img{
			width: 190px;
			width: 100%;
		}*/
	}
	@media (min-width: 1200px) {
		.header-pattern{
			right: initial;
			left:990px;
			width: 190px;
		}
	}
/* header-logo --------------------*/
.header-logo h1{
	margin:0;
	padding: 0;
}
	@media only screen and ( max-width : 767px ){
		.header-logo{
			margin-left: -15px;
		}
		.header-logo h1{
			width: 180px;
		}
	}
	@media print, screen and (min-width: 768px) {
		.header-logo{
			margin-left: -22px;
		}
		.header-logo h1{
			width: 280px;
		}
	}
	@media (min-width: 992px) {
		.header-logo h1{
			width: 378px;
		}
	}

/* header-link-list--------------------*/
	@media only screen and ( max-width : 767px ){
		.header-link-list{
			display: none;
		}
	}
	@media print, screen and (min-width: 768px) {
		.header-link-list{
			margin: 0;
			padding-top: 26px;
		}
		.header-link-list{
			display: flex;
			justify-content:flex-end;
		}
		.header-link-list li{
			padding: 0 6px;
		}
		.header-link-list li:nth-of-type(3) img{
			width: 92px;
		}
		.header-link-list li:nth-of-type(4){
			padding-left: 12px;
		}
	}
	@media (min-width: 992px) {
		.header-link-list li:nth-of-type(4){
			padding-left: 18px;
		}
	}

/* pc-nav--------------------*/
	@media only screen and ( max-width : 767px ){
		.pc-nav{
			display: none;
		}
	}
	@media print, screen and (min-width: 768px) {
		.pc-nav{
			position: relative;
			padding-top: 30px;
			z-index: 22;
		}
		.pc-nav ul{
			display: flex;
			justify-content:space-between;
		}
		.pc-nav ul li{
			font-family: 'Noto Serif JP', serif;
			font-weight: 300;
			font-size: 14px;
			font-size: 12px;
			padding-bottom: 18px;
			letter-spacing: 0;
		}
		.pc-nav ul li.active{
			background-color: #FFFF00;
		}
		.pc-nav ul li a{
			text-decoration: none;
			display: inline-block;
			padding: 5px 5px;
			color:#262322;
		}
		.pc-nav ul li a:hover{
			opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5;
		}
	}
	@media (min-width: 992px) {
		.pc-nav{
			width: 800px;
			width: 910px;
			padding-top: 41px;
		}
		.pc-nav ul li{
			font-size: 16px;
			padding-bottom: 29px;
		}
	}
	@media (min-width: 1200px) {
		.pc-nav{
			width: 890px;
			width: 990px;
		}
		.pc-nav ul li{
			font-size: 17px;
		}
	}

/* ナビゲーション（ハンバーガー） --------------------*/
/* Toggle */
.Toggle {
	display: block;
	position: fixed;    /* bodyに対しての絶対位置指定 */
	width: 52px;
	height: 52px;
	border-radius: 52px;
	cursor: pointer;
	z-index: 30;
	top:10px;
	right:10px;
	background-color: rgba(255, 255, 255, .7);
}
.Toggle span {
	display: block;
	position: absolute;
	left:10px;
	width: /*50px*/32px;
	border-bottom: solid 2px #666;
	-webkit-transition: .35s ease-in-out;	/*変化の速度を指定*/
	-moz-transition: .35s ease-in-out;		/*変化の速度を指定*/
	transition: .35s ease-in-out;			/*変化の速度を指定*/
}
/*各ボーダー少しずつずらす*/
.Toggle span:nth-child(1) {
 top:/*5px*/12px;
}
.Toggle span:nth-child(2) {
	top: /*18px*/20px;
}
.Toggle span:nth-child(3) {
	top: /*32px*/28px;
}
.Toggle span:nth-child(4){
 top:29px;
 border-bottom:none;
 font-size: 10px;
 text-align: center;
 color:#666;
}
/* 1番目のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
 top: /*18px*/16px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
.Toggle.active{
	background-color: rgba(255, 255, 255, .0);
}
.Toggle.active span{
	border-bottom: solid 2px #ffffff;
}
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
	top: /*18px*/16px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
.Toggle.active span:nth-child(4){
	display: none;
}
	@media only screen and ( max-width : 767px ){
		.Toggle{
			display: block;
		}

	}
	@media print, screen and (min-width: 768px) {
		.Toggle{
			display: none;
		}
	}
/* g-nav */
.g-nav {
	position: fixed;
	/* メニューの位置マイナス指定で画面外に */
	top:0;
	right: -100%;
	width: 100%;
	height: 100vh;
	background-color: rgba(126, 102, 154, .9);
	transition: .3s;
	z-index: 20;
	padding-top: 40px;
}
.g-nav.open {
	right: 0;
}
.g-nav-list-01,
.g-nav-list-02,
.g-nav-list-03{
	width: 60%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 16px;
}
.g-nav-list-02{
	margin-bottom: 20px;
}
.g-nav-list-03{
	display: flex;
	justify-content:center;
}
.g-nav-list-01 li,
.g-nav-list-02 li{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	text-align: center;
}
.g-nav-list-01 li{
	margin-bottom: 8px;
}
.g-nav-list-02 li{
	margin-bottom: 10px;
}
.g-nav-list-03 li{
	padding: 0 8px;
}
.g-nav-list-01 li a:hover,
.g-nav-list-02 li a:hover,
.g-nav-list-03 li a:hover img{ opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5;}

.g-nav-list-01 li a,
.g-nav-list-02 li a{
	color: #fff;
	text-decoration: none;
	display: inline-block;
}
.g-nav-list-01 li a{
	padding: 5px 10px;
}
.g-nav-list-02 li a{
	border:solid #fff 1px;
	border-radius:5px;
}
.g-nav-list-02 li a span::before{
	content: '';/*何も入れない*/
  display: inline-block;/*忘れずに！*/
  background-image: url(../img/common/btn_arrow-white.png);
	background-repeat: no-repeat;
  background-size: contain;
	background-position: left;
  vertical-align: middle;
}

	@media only screen and ( max-width : 767px ){
		.g-nav-list-01 li{
			font-size: 14px;
		}
		.g-nav-list-02 li{
			font-size: 12px;
		}
		.g-nav-list-02 li a{
			line-height: 1.1;
			padding-top: 8px;
			padding-bottom: 7px;
			width: 150px;
		}
		.g-nav-list-02 li a span::before{
			width: 15px;/*画像の幅*/
		  height: 16px;/*画像の高さ*/
		}

	}
	@media print, screen and (min-width: 768px) {
		.g-nav-list-01 li{
			font-size: 17px;
		}
		.g-nav-list-02 li{
			font-size: 14px;
		}
		.g-nav-list-02 li a{
			line-height: 1.1;
			padding-top: 8px;
			padding-bottom: 7px;
			width: 200px;
		}
		.g-nav-list-02 li a span::before{
			width: 18px;/*画像の幅*/
		  height: 21px;/*画像の高さ*/
		}
	}
	@media (min-width: 992px) {

	}

/***********************************
* main 全ページ共通	*
***********************************/
/* 01 ichach --------------------*/
#ichach-block{
	width: 100%;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
#ichach-block .title-box{
	background-color: rgba(126, 102, 154, 0.7);
	position: absolute;
	left:0;
	bottom:10%;
}
	@media only screen and ( max-width : 767px ){
		#ichach-block .ichach-pic{
			width: 90%;
			margin-left: auto;
		}
		#ichach-block .ichach-pic img{
			width: 100%;
			min-height:150px;
			object-fit: cover;
			font-family: 'object-fit: cover;'
		}
		#ichach-block .title-box .inner{
			padding: 20px 35px 30px 25px;
		}
		#ichach-block .title-box .inner-onlinelesson,
		#ichach-block .title-box .inner-fornewusers{
			padding: 20px 25px;
		}
		#ichach-block .title-box .inner-treatment{
			padding: 15px 20px;
		}
		#ichach-block .title-box .inner-yamuna{
			padding: 17px 35px 25px 25px;
		}
		#ichach-block .title-box img{
			margin: 0;
			padding: 0;
			height: 15px;
		}
		#ichach-block .title-box img.img-yamuna{
			height: 30px;
		}
		#ichach-block .title-box img.img-onlinelesson,
		#ichach-block .title-box img.img-fornewusers{
			height: 45px;
		}
		#ichach-block .title-box img.img-treatment{
			height: 35px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#ichach-block .ichach-pic{
			width: 90%;
			margin-left: auto;
		}
		#ichach-block .ichach-pic img{
			width: 100%;
		}
		#ichach-block .title-box .inner,
		#ichach-block .title-box .inner-onlinelesson,
		#ichach-block .title-box .inner-fornewusers{
			padding: 45px 50px;
		}
		#ichach-block .title-box .inner-yamuna,
		#ichach-block .title-box .inner-treatment{
			padding: 30px 50px 40px 50px;
		}
		#ichach-block .title-box img{
			height: 20px;
		}
		#ichach-block .title-box img.img-yamuna{
			height: 40px;
		}
		#ichach-block .title-box img.img-onlinelesson,
		#ichach-block .title-box img.img-fornewusers{
			height: 60px;
		}
	}
	@media (min-width: 992px) {
		#ichach-block .title-box .inner,
		#ichach-block .title-box .inner-onlinelesson,
		#ichach-block .title-box .inner-fornewusers{
			padding: 65px 70px;
		}
		#ichach-block .title-box .inner-yamuna{
			padding: 40px 70px 55px 70px;
		}
		#ichach-block .title-box img,
		#ichach-block .title-box img.img-yamuna,
		#ichach-block .title-box img.img-onlinelesson,
		#ichach-block .title-box img.img-fornewusers{
			height: auto;
		}
		#ichach-block .title-box img.img-studio{
			height: 26px;
		}
	}
	@media (min-width: 1400px) {
		#ichach-block .ichach-pic{
			width: 100%;
			margin-left: 0;
		}
	}
/* 02 pagetitle-block --------------------*/
#pagetitle-block a{
	color:#262322;
	font-family: 'Noto Serif JP', serif;
	text-decoration: none;
	font-size: 12px;
	display: inline-block;
}
#pagetitle-block a:hover{ opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5; transition:.3s;}
	@media only screen and ( max-width : 767px ){
		#pagetitle-block{
			padding-top: 36px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#pagetitle-block{
			padding-top: 70px;
		}
	}
	@media (min-width: 992px) {
		#pagetitle-block{
			padding-top: 100px;
		}
	}

/* h2 */
#pagetitle-block h2{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	text-align: center;
}
#pagetitle-block h2 img{
	display:block;
	margin-left: auto;
	margin-right: auto;
}
	@media only screen and ( max-width : 767px ){
		#pagetitle-block h2{
			font-size: 14px;
			margin-bottom: 15px;
		}
		#pagetitle-block h2 img{
			margin-bottom: 10px;
			height: 20px;
		}
		#pagetitle-block h2.yamuna img{
			margin-bottom: 0;
			height: 40px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#pagetitle-block h2{
			font-size: 14px;
			margin-bottom: 25px;
		}
		#pagetitle-block h2 img{
			margin-bottom: 20px;
			height: 28px;
		}
		#pagetitle-block h2.yamuna img{
			margin-bottom: 0;
			height: 56px;
		}
	}
	@media (min-width: 992px) {
		#pagetitle-block h2 img{
			height: auto;
		}
		#pagetitle-block h2.yamuna img{
			height: auto;
		}
		#pagetitle-block h2.studio img{
			height: 32px;
		}
		#pagetitle-block h2.treatment img{
			height: 36px;

		}
	}
/* page-link,voice-link*/
#pagetitle-block ul.page-link,
#pagetitle-block ul.voice-link{
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
#pagetitle-block ul.page-link{
	margin-bottom: 13px;
}
#pagetitle-block ul.page-link li{
	margin:5px 6px;
	line-height: 1.0;
}
#pagetitle-block ul.page-link li a{
	border: solid #262322 1px;
	border-radius: 3px;
	padding:7px 10px;
}
#pagetitle-block ul.voice-link li{
	margin: 0 12px;
}
#pagetitle-block ul.voice-link li a.voice{
	background-image: url(../img/common/icon_voice.png);
	background-position: left;
	background-repeat: no-repeat;
	background-size: 16px;
	padding-left: 27px;
	height: 19px;
	line-height: 19px;
}
#pagetitle-block ul.voice-link li a.faq{
	background-image: url(../img/common/icon_faq.png);
	background-position: left;
	background-repeat: no-repeat;
	background-size: 22px;
	padding-left: 29px;
	height: 19px;
	line-height: 19px;
}

/* 03 contents 下層ページ共通設定 --------------------*/
/* 大枠背景 */
#contents-block{
	position: relative;
}
#contents-block .block-inner{
	background-image:url(../img/common/bg_gray.png);
	background-repeat: repeat;
}
#contents-block .block-top{
	position: absolute;
	width: 100%;
	top:0;
	z-index: 3;
}
#contents-block .block-inner section{
	position: relative;
	z-index: 5;
}
#contents-block .block-top img{
	width: 100%;
	text-align: right;
}
#contents-block .block-bottom img{
	width: 100%;
	text-align: left;
}

	@media only screen and ( max-width : 767px ){
		#contents-block .block-inner{
			padding-bottom: 18px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#contents-block .block-inner{
			padding-bottom: 35px;
		}
	}
	@media (min-width: 992px) {
		#contents-block .block-inner{
			padding-bottom: 50px;
		}
	}
/* contents-num 20210330　追記*/
#contents-block .contents-num{
	text-align: center;
}
	@media only screen and ( max-width : 767px ){
		#contents-block .contents-num{
			padding-top: 72px;
			padding-bottom: 36px;
		}
		#contents-block .contents-num img{
			width:80px;
		}
		#contents-block .standard .contents-num{
			padding-bottom: 20px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#contents-block .contents-num{
			padding-top: 140px;
			padding-bottom: 70px;
		}
		#contents-block .contents-num img{
			width: 110px;
		}
		#contents-block .standard .contents-num{
			padding-bottom: 35px;
		}
	}
	@media (min-width: 992px) {
		#contents-block .contents-num{
			padding-top: 200px;
			padding-bottom: 100px;
		}
		#contents-block .contents-num img{
			width: auto;
			height: 70px;
		}
		#contents-block .standard .contents-num{
			padding-bottom: 54px;
		}
	}
/* h3 p 20210330　追記*/
#contents-block h3{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}
#contents-block .standard h3{
	text-align: center;
	letter-spacing: 0.05em;
	margin: 0;
	padding: 0;

}
#contents-block p{
	line-height: 2.1;
}
#contents-block p:last-child{
	margin-bottom: 0;
}
	@media only screen and ( max-width : 767px ){
		#contents-block .standard h3{
			font-size: 1.5rem; /* 24px */
			margin-bottom: 40px;
		}
		#contents-block p{
			font-size: 0.81rem;/*13px*/
			margin-bottom: 22px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#contents-block .standard h3{
			font-size: 2.25rem; /* 36px */
			margin-bottom: 70px;
		}
		#contents-block p{
			font-size: 0.94rem;/*15px*/
			margin-bottom: 26px;
		}
	}
	@media (min-width: 992px) {
		#contents-block .standard h3{
			letter-spacing: 0.1em;
			font-size: 2.5rem; /* 40px */
			margin-bottom: 80px;
		}
		#contents-block p{
			font-size: 1.06rem;/*17px*/
			margin-bottom: 30px;
		}
	}

/***********************************
* footer	*
***********************************/
	@media only screen and ( max-width : 767px ){
		#footer{
			padding-top: 30px;
			margin-bottom: 50px;
		}
	}
	@media print, screen and (min-width: 768px) {
		#footer{
			padding-top: 40px;
		}
	}
/* footer-icon --------------------*/
ul.footer-icon{
	display: flex;
	justify-content:center;
}
ul.footer-icon li{
	width: 21px;
	margin: 0 6px;
}
	@media only screen and ( max-width : 767px ){
		ul.footer-icon{
			margin-bottom: 16px;
		}
	}
	@media print, screen and (min-width: 768px) {
		ul.footer-icon{
			margin-bottom: 20px;
		}
	}
/* footer-cont-bg --------------------*/
.footer-cont-bg{
	background-image: url(../img/common/footer_bg.jpg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: cover;
}
/* footer-cont --------------------*/
.footer-cont{
	font-family: 'Noto Serif JP', serif;
	color:#fff;
}
.footer-cont a{
	color:#fff;
}
.footer-cont a:hover{
	color:#FFFF00;
}

	@media only screen and ( max-width : 767px ){
		.footer-cont{
			display: table;
			margin-left: auto;
			margin-right: auto;
			padding-top: 30px;
			padding-bottom: 30px;
		}
	}
	@media print, screen and (min-width: 768px) {
		.footer-cont{
			display: flex;
			justify-content: space-between;
			padding-top: 50px;
			padding-bottom: 50px;
			width: 92%;
		}
	}
	@media (min-width: 992px) {
		.footer-cont{
			width: 762px;
		}
	}

/* footer-info */
.footer-info h2.title-01,
.footer-info h3.title-01{
	margin: 0;
	padding: 0;
}
.footer-info p,
.footer-info h3.title-02,
.footer-info h4.title-02{
	font-size: 0.81rem;
	font-weight: 400;

	margin: 0;
}
.footer-info a{
	display: inline-block;
	text-decoration: none;
	border-bottom: solid #fff 2px;
	padding-bottom: 2px;
}
.footer-info a:hover{
	border-bottom: solid #FFFF00 2px;
}
	@media only screen and ( max-width : 767px ){
		.footer-info h2.title-01,
		.footer-info h3.title-01{
			width: 180px;
		}
		.footer-info h3.title-02,
		.footer-info h4.title-02{
			padding-top: 1rem;
		}
	}
	@media print, screen and (min-width: 768px) {
		.footer-info h3.title-02,
		.footer-info h4.title-02{
			padding-top: 2rem;
		}
	}

/* footer-link*/
	@media only screen and ( max-width : 767px ){
		.footer-link{
			display: none;
		}
	}
	@media print, screen and (min-width: 768px) {
		.footer-link-inner{
			padding-left: 22px;
			border-left: solid #fff 1px;
		}
		.footer-link h2.title-01,
		.footer-link h3.title-01{
			font-size: 0.69rem;
			font-weight: 400;
			margin-bottom: 1rem;
		}
		.footer-link a{
			text-decoration: none;
		}
		.footer-link ul li a{
			font-size: 0.88rem;
		}
		.footer-link ul li{
			margin-bottom: 1rem;
		}
		.footer-link ul.sub{
			margin-left: 1rem;
		}
		.footer-link ul.sub li{
			margin-bottom: 0;
			line-height: 1.3;
		}
		.footer-link ul.sub li a{
			font-size: 0.75rem;
		}
		.footer-link ul.sub li a::before{
			content: 'ー ';
			font-family: "Noto Sans Japanese", "Meiryo UI", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
			font-weight: 200;
		}
		.footer-link ul li:last-child{
			margin-bottom: 0;
		}
	}

/* copyright*/
p.copyright{
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-size: 8px;
	color:#fff;
	margin: 0;
}
	@media only screen and ( max-width : 767px ){
		p.copyright{
			padding-bottom: 16px;
		}
	}
	@media print, screen and (min-width: 768px) {
		p.copyright{
			padding-bottom: 25px;
		}
	}
 /***********************************
 * pagetop	*
 ***********************************/
 #pagetop {
 	display:none;
 	position: fixed;
	z-index: 15;
}
 	@media only screen and ( max-width : 767px ){
		#pagetop {
			bottom: 0px;
			width: 100%;
			height: 50px;
			background: rgba(126, 102, 154, 0.9);
			color: #7ebf4d;
			text-decoration: none;
			text-align: center;
			z-index: 15;
		}
		#pagetop img{
			position: absolute;
			top:0;
			left:0;
			right:0;
			bottom:0;
			margin: auto;
			height: 12px;
		}
		#pagetop:hover{
			 background: rgba(126, 102, 154, 1);
		}
	}
	@media print, screen and (min-width: 768px) {
		#pagetop {
			bottom: 15px;
			right:15px;
			opacity: 0.8; filter: alpha(opacity=80); -moz-opacity: 0.8;
			width: 100px;
			z-index: 19;
		}
		#pagetop:hover{
			 opacity: 0.5; filter: alpha(opacity=50); -moz-opacity: 0.5;
		}
		#pagetop{
			right: 20px;
		}
	}
	@media (min-width: 992px) {
		#pagetop{
			right: 2%;
		}
	}
	@media (min-width: 1200px) {
		#pagetop{
			width: 120px;
			right: 5%;
		}
	}
	@media (min-width: 1600px){
		#pagetop{
			right: 10%;
		}
	}

/* header-logo --------------------*/
.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:#fff;
	background: rgba(199, 152, 89, .8);
	right:10px;
	top:10px;
}
.modaal-close:after,
.modaal-close:before{
	top:14px;
	left:24px;
	background: #fff;
	width: 2px;
	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: 2px;
	height:25px;
}
	@media (min-width: 768px){
		.modaal-fullscreen .modaal-close{
			top:15px;
			right:calc(50% - 370px);
		}
	}
/*モーダルの表示部分*/
.modaal-container{
	background-color: #fff;
}
	@media (min-width: 992px){
		.modaal-container{
		}
	}