/*==================
common
==================*/
.box{
	background: #eee;
	height: 200px;
	margin-bottom: 100px;
}
.modal{
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}
.modal__content{
	background: #fff;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 60%;
}
.modal__content h3{
		font-size: 120%;
	margin-bottom: 30px;
}
.modal__content p{

	margin-bottom: 30px;
}
.modal__content li{

	margin-bottom: 20px;
}
.close_b {
text-align: right!important;
	margin-top: 20px!important;
    margin-bottom: -20px!important;
	color: #666;
}

@charset "utf-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
}

body {

	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, Arial, sans-serif;
	background-image: url(../img/bg.jpg);
    background-size: contain;
	background-repeat:  no-repeat;  
	 background-position: left 0px top 100px,center;  
	color: #666;
   
}
.clearfix:before,
.clearfix:after {
	display: table;
	content: " ";
}
.clearfix:after {
	clear: both;
}
a {
	color: #000;
}
a:hover {
	color: #000;
}
hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
hr {
  border-top: 3px solid #e7b2b3;
	margin-top: 60px;
	margin-bottom: 60px;
}

.fl {float: left;}
.fr {float: right;}
.fc {clear: both;}

.txtCenter {text-align: center;}
.txtLeft {text-align: left;}
.txtRight {text-align: right;}

.txtB{font-weight:700;}
.backtotop img {
	width: 100%;
	border: none;
	margin: 0;
	padding: 0;
}
.backtotop {
    position: fixed;
    bottom: 20px;
    right: 30px;
    width: 50px;
    z-index: 9999;
}
.topTxt {
	color: #666;
	font-size: 120%;
	line-height: 180%;
	margin-top: 30px;
		margin-bottom: 30px;
}
ol, ul{
    list-style:none;
}

header {

	margin-top: 0px;
	margin-bottom: 0px;
	color: #666;
	z-index: 9999;
}

/*==================
contents
==================*/
.cont_inner {
		width: 770px;
		margin: 0 auto;
		margin-top: 80px;
		margin-bottom: 200px;
	text-align: center;
	}
.cont_inner2 {
		width: 770px;
		margin: 0 auto;
		margin-top: 80px;
		margin-bottom: 80px;
	}
.cont_inner3 {
		width: 770px;
		margin: 0 auto;
		margin-top: 80px;
		margin-bottom: 80px;
	text-align: center;
	color: #666;
	}
.cont_inner3 a{

	text-align: center;
	color: #666;
	}
.logo{
		margin-bottom: 50px;	
}

.cont_inner2 li {
		margin-top: 10px;
		margin-bottom: 10px;
	}
.col-1 {
    display: inline-block;
    width: 200px;
    margin-top: 10px;
		margin-bottom: 10px;
}
.col-2 {
    display: inline-block;
    width: 70%;
    margin-top: 10px;
		margin-bottom: 10px;
}
h2{
	font-size: 120%;
	margin-bottom: 30px;
}

/*==================
footer
==================*/

footer {
  clear: both;
	padding: 0rem 0;
	background-color: #ECECEC;
	color: #666;
	text-align: center;
	line-height: 2.7;

}
.green{
	color: #67AF85;
}
.blue{
	color: #4C82B2;

}
.yellow{
	color: #efca2b;
}
.pink{
	color: #cd5c5b;
}

/*==================
 ブレイクポイント
 *〜768px：SP、モバイル
 *769px〜1242px：中間
 *1243px〜：大画面
==================*/
@media screen and (min-width:1243px) { /*大画面*/


	/* -----------------
	header */

	
	nav {
		text-align: center;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		padding-bottom: 24px;
	
	}
	nav ul {
		list-style: none;
		display: flex;
		justify-content: center;
		margin: 0px;
		padding: 0px;
		margin-left: -20px;
		
	}
	nav li,
	nav li a {
		display: block;
		color: #666!important;
		width: 120px;
		text-align: center;
				margin-left: 6px;
margin-right: 6px;	
		padding-top: 10px;
	}
	nav li a:hover {
		opacity: 0.7;
  z-index: 1;
	}
	.logo {
		text-align: center;
		margin-top: 6rem;
		margin-left: 0rem;
		margin-bottom: 6rem;
	}
	.smNavToggle {display: none;}
	/* -----------------
	footer */
	footer */
	footer .inner {
		width: 90%;
		margin: 0 auto;
	}
	footer .inner:before,
	footer .inner:after {
		display: table;
		content: " ";
	}
	footer .inner:after {
		clear: both;
	}

}/*大画面*/

@media screen and (min-width:769px) and (max-width:1242px) {/*中間*/
body {
font-size: 95%;
   
}	
	/* -----------------
	header */

	
	.logo {
		text-align: center;
		margin-top: 0rem;
		margin-left: 0rem;
	}
	nav {
		text-align: center;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		padding-bottom: 24px;
	
	}
	nav ul {
		list-style: none;
		display: flex;
		justify-content: center;
		margin: 0px;
		padding: 0px;
		margin-left: -20px;
		
	}
	nav li,
	nav li a {
		display: block;
		color: #666;
		width: auto;
		text-align: center;
				margin-left: 6px;
margin-right: 6px;	
		padding-top: 10px;
	}
	nav li a:hover {
		opacity: 0.7;
  z-index: 1;
	}

	.navIco {
		padding: 0.8rem 1rem;
	}
	.smNavToggle {display: none;}
  

	/* -----------------
	footer */
	footer .inner {
		width: 90%;
		margin: 0 auto;
	}
	footer .inner:before,
	footer .inner:after {
		display: table;
		content: " ";
	}
	footer .inner:after {
		clear: both;
	}
}/*中間*/

@media screen and (max-width:768px) {/*SP、モバイル*/

body {
font-size: 90%;
   
}	
	.h_bg{display: block;
		width: 100%;
		height: 60px;
		margin-top: 0px;
		margin-bottom: -8px;
		text-align: center!important;
		display: flex;
    justify-content: center;
    align-items: center;
		position: fixed;
		z-index: 50;
		clear: both;
		background-color: #fff;
	}

	/* -----------------
	header */
	.logo {
		text-align: center;
		margin-top: 1rem;
		margin-bottom: 1.2rem;
	}
	.logo img { width: 45%;}
	nav.smNavMenu {
		position: fixed;
		z-index: 50;
		top: 0px;
		left: 0;
		text-align: center;
		transform: translateY(-100%);
		transition: all 0.6s;
		width: 100%;
		
	}
	nav.smNavMenu ul {
		list-style: none;
		width: 100%;
		margin: 0;
		padding: 0;
		padding-top: 28px;
	}
	nav.smNavMenu ul li {
		width: 100%;
		border-bottom: 1px solid #666;
		background: #fff;
		padding-top: 8px;
		padding-bottom: 8px;
		font-size: ;
		
	}
	nav.smNavMenu ul li:last-child {
		border-bottom: 1px solid #666;
	}
	nav.smNavMenu li a {
		display: block;
		color: #666;
		
	}
	nav.smNavMenu li a:hover {
			opacity: 0.7;
  z-index: 1;
	}
	.nav01 a, .nav02 a, .nav03 a, .nav04 a, .nav05 a, .nav06 a, .nav07 a {			
	}
	.nav02 {
	margin-left: 0px;
}
.nav03 {
	
}
.nav04 {
	
}
.nav05 {
	margin-left: 0px;
}
.nav06 {
	margin-left: 0px;
}
.nav07 {
	margin-left: 0px;
	margin-right: 0px;
}
.nav08 {
	margin-left: 0px;
}
	.navIco {
		padding: 0.8rem 1rem;
	}	
	nav.smNavMenu.active {/* ハンバーガー */
		transform: translateY(18%);
		z-index: 50;
	}

	.smNavToggle {
		display: block;
		position: fixed;	/* bodyに対しての絶対位置指定 */
		right: 13px;
		top: 10px;
		width: 34px;
		height: 34px;
		cursor: pointer;
		z-index: 100;
		background: ;
		text-align: center;
		border: solid 1px #666;
	}
	.smNavToggle span {
		display: block;
		position: absolute;	 /* .smNavToggleに対して */
		width: 22px;
		border-bottom: solid 2px #666;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		left: 6px;
	}
	.smNavToggle span:nth-child(1) {
		top: 8px;
	}
	.smNavToggle span:nth-child(2) {
		top: 16px;
	}
	.smNavToggle span:nth-child(3) {
		top: 24px;
	}
	.smNavToggle span:nth-child(4) {
		border: none;
		color: #666;
		font-size: 9px;
		font-weight: bold;
		top: 20px;
	}
	/* 最初のspanをマイナス45度に */
	.smNavToggle.active span:nth-child(1) {
		top: 16px;
		left: 6px;
		-webkit-transform: rotate(-40deg);
		-moz-transform: rotate(-40deg);
		transform: rotate(-40deg);
	}

	/* 2番目と3番目のspanを45度に */
	.smNavToggle.active span:nth-child(2),
	.smNavToggle.active span:nth-child(3) {
		top: 16px;
		-webkit-transform: rotate(40deg);
		-moz-transform: rotate(40deg);
		transform: rotate(40deg);
	}	
	.container{
		margin-top: 100px;
	}
	
.cont_inner, .cont_inner2, .cont_inner3 {
		width: 90%;
		margin: 0 auto;
		margin-top: 50px;
		margin-bottom: 50px;
	}
	.read{
		margin-top: -50px!important;
	}

/* -----------------
	footer */
		footer .inner {
		width: 100%;
		margin: 0 auto;
	}
	footer .inner:before,
	footer .inner:after {
		display: table;
		content: " ";
	}
	footer .inner:after {
		clear: both;
	}
		.sns ul li {
  list-style: none;
  margin: 0;
  padding: 0 3.5rem 1.5rem;
  text-align: left;
  /*font-weight: 700;*/
  color: #0f3758;
	display: inline-block;
	bottom: 0;

}
		#message  {
	
	padding-top:  00px!important;
	}
	#info, #contact  {
	
	padding-top:  30px!important;
	}
}
/*SP、モバイル*/
@media only screen and (max-width: 480px) {
	body {
font-size: 85%;
	 background-position: left 0px top 50px,center;  
   
}
	.cont_inner, .cont_inner2, .cont_inner3 {
		width: 90%;
		margin: 0 auto;
		margin-top: 50px;
		margin-bottom: 50px;
	}
	.logo{
	width: 90%;	
	}
	
	footer {
font-size: 70%;

}
	.backtotop {
    position: fixed;
    bottom: 10px;
    right: 20px;
    width: 35px;
    z-index: 9999;
}
	
}
