@charset "UTF-8";

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
 全デバイス共通のスタイルとスマートフォン向けレイアウトの指定
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* common.css
----------------------------------------- */
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

body {
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 18px;
	color: #333;
	line-height:1.9;
	text-align: left;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #333;
	text-decoration: none;
}
a:hover {
	color:#333;
	text-decoration: none;
	opacity: 0.5 ;
}
.sp {
	display: block;
}
.pc {
	display: none;
}

/* header
----------------------------------------- */
header {
	margin-bottom: 30px;
	padding: 10px 20px;
}
header #inner {
	height: 40px;
}
header h1 {
	padding-left: 0px;
	float: left;
}
header h1 img {
	width:50%;
	height:auto;
}


/* headerのハンバーガーメニュー
----------------------------------------- */

.global-nav {
 position: fixed;
 right: -320px; /* これで隠れる */
 top: 0;
 width: 300px; /* スマホに収まるくらい */
 height: 100vh;
 padding-top: 40px;
 background-color: #fff;
 transition: all .6s;
 z-index: 200;
 overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}

.hamburger {
 position: absolute;
 right: 0;
 top: 0;
 width: 40px; /* クリックしやすいようにちゃんと幅を指定する */
 height: 40px; /* クリックしやすいようにちゃんと高さを指定する */
 cursor: pointer;
 z-index: 300;
}

.global-nav__list .logo {
	width: 70%;
}

.global-nav__list {
 margin: 0;
 padding: 0;
 list-style: none;
}



/* ハンバーガーメニューのロゴ */
.global-nav__item_logo {
	background-color: #F6F3E8;
}
.global-nav__item_logo {
 text-align: center;
 padding: 0 14px;
}
.global-nav__item_logo img {
	width: 30%;
	height: auto;
	/*width: 236;
	height: 142px;*/
}
.global-nav__item_logo a {
 display: block;
 padding: 8px 0;
 border-bottom: 1px solid #eee;
 text-decoration: none;
 color: #111;
}
.global-nav__item_logo a:hover {
 background-color: #eee;
}



/* ハンバーガーメニューの項目 */
.global-nav__item {
 text-align: center;
 padding: 0 14px;
}
.global-nav__item a {
 display: block;
 padding: 8px 0;
 border-bottom: 1px solid #eee;
 text-decoration: none;
 color: #111;
}
.global-nav__item a:hover {
 background-color: #eee;
}



.hamburger__line {
 position: absolute;
 left: 11px;
 width: 18px;
 height: 1px;
 background-color: #111;
 transition: all .6s;
}
.hamburger__line--1 {
 top: 14px;
}
.hamburger__line--2 {
 top: 20px;
}
.hamburger__line--3 {
 top: 26px;
}
.black-bg {
 position: fixed;
 left: 0;
 top: 0;
 width: 100vw;
 height: 100vh;
 z-index: 100;
 background-color: #000;
 opacity: 0;
 visibility: hidden;
 transition: all .6s;
 cursor: pointer;
}
/* 表示された時用のCSS */
.nav-open .global-nav {
 right: 0;
}
.nav-open .black-bg {
 opacity: .8;
 visibility: visible;
}
.nav-open .hamburger__line--1 {
 transform: rotate(45deg);
 top: 20px;
}
.nav-open .hamburger__line--2 {
 width: 0;
 left: 50%;
}
.nav-open .hamburger__line--3 {
 transform: rotate(-45deg);
 top: 20px;
} 

/* headerのハンバーガーメニュー　ここまで
----------------------------------------- */


/* contents
----------------------------------------- */

/* ページtitle */
#pagetitle {
	margin-bottom: 20px;
}

#pagetitle h2.ttl {
	text-align: center;
	line-height: 1.5;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	font-size: 24px;
	letter-spacing: 0.1em;
}


/* メイン画像画像 */
#mainVisual {
	margin-bottom: 30px;
	background-color: #F6F3E8;
	text-align: center;
}
#mainVisual img {
	width: 90%;
	max-width: 480px;
	height: auto;
}
#mainVisual .pc {
	display: block;
}

/* メイン画像より下のコンテンツ */
/* コンテンツ全体 */
#cont {
	margin: 0 5% 20% 5%;
}
section {
	margin-bottom: 10%;
}
section .point {
	color: #F00;
	font-weight: 400;
}

#pageinfo {
	margin: 0 auto 10% auto;
}

#pageinfo h3.ttl {
	margin-bottom: 40px;
	text-align: left;
	line-height: 1.5;
	font-size: 20px;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#cont h4.ttl {
	text-align: left;
	line-height: 1.0;
	font-family: 'Lato', sans-serif;
	font-weight: 100;
	font-size: 14px;
	letter-spacing: 0.05em;
	text-decoration: none;
    border-bottom: 2px solid #000;
	display: inline-block;
	margin-bottom: 20px;
    padding: 5px 0;
}
#cont h5.ttl {
	text-align: left;
	line-height: 1.5;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	font-size: 22px;
	letter-spacing: 0.05em;
	text-decoration: none;
	margin-bottom:  30px;
}
#cont h5.ttl a {
	font-weight: 600;
  text-decoration: none;
  position: relative;
  border: 1px solid;
  width: 120px;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#cont h5.ttl a:before,
#cont h5.ttl a:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  height: 1px;
  background: #000;
}
#cont h5.ttl a:before{
  width: 60px;
  transform: translate(30px, 0px);
}
#cont h5.ttl a:after{
  width: 15px;
  transform-origin: right center;
  transform: translate(30px, 0px) rotate(25deg);
}
#cont h6.ttl {
	text-align: left;
	line-height: 1.5;
	font-family: 'Lato', sans-serif;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-decoration: none;
	margin-bottom:  20px;
}
#cont .detail {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	padding: 8px 12px;color: #FFF;
	background-color: #000;
	letter-spacing: 0.1em;
}


#cont p .ttl {
	margin-bottom: 20px;
	text-align: center;
	line-height: 1.0;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 13px;
	letter-spacing: 0.1em;
	color: #a5a5a5;
}

#cont p .cont {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	background-color: #eee;
	letter-spacing: 0.1em;
}

.contBox {
	margin: 0 20px;
}
/*.toTop {
	text-align: center;
}
.toTop a {
	display: block;
	margin-bottom: 40px;
	padding: 8px 20px;
}
.toTop img {
	width: 22px;
	height: 14px;
}*/
.pageNation {
	position: relative;
	margin-bottom: 30px;
}
.pageNation .pageLeft {
	position: absolute;
	left: 20px;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 20px;
	top: 0;
}




/* footer
----------------------------------------- */
footer {
	margin-bottom: 20px;
	text-align: center;
}

/* CONTACT US */
footer .contactus {
  color: #000;/*文字色*/
  padding: 0.5em 0;/*上下の余白*/
  border-top: solid 1px #000;/*上線*/
  border-bottom: solid 1px #000;/*下線*/
  font-size: 20px;
}

footer .icn_sns {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
footer .icn_sns li {
	width: 10%;
	height: auto;
	margin: 10px ;
}
footer .icn_sns li img {
	width: 100%;
	height: auto;
}

footer .copyright {
	font-size: 12px;
}


#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #707070;
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
 タブレット向け：760px～1090px
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

@media only screen and (min-width: 760px) {
.sp {
	display: none;
}
.pc {
	display: block;
}

/* header
----------------------------------------- */
header {
	position: relative;
	max-width: 1090px;
	height: 150px;
	margin-right: auto;
	margin-left: auto;
	background-color: #FFF;
}

header h1 {
	position: absolute;
	top: 40px;
	/*left: 30px;*/
	margin-left: 1%;
}
header h1 img {
	width:60%;
	height:auto;
}

header p {
	padding-top: 70px;
	padding-right: 20px;
	text-align: right;
}
	
.page_nav_list  {
    max-width:  100%;
	margin:  0 auto;
	position: absolute;
	top: 70px;
	right: 0;
	left: 0;
	padding: 10px;
	text-align: center;
}

.page_nave_item {
	margin-right: 3%;
	display: inline;
	float: none;
}
.page_nave_item a {
	display: inline;
	/*font-family: 'Lato', sans-serif;*/
	font-weight: 400;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.page_nave_item a:hover {
	opacity: 0.3;
}
	
/* mainVisual */
#mainVisual {
	margin-bottom: 5%;
	padding: 0 3%;
	background-color: #F6F3E8;
	text-align: center;
}
#mainVisual img {
	width: 100%;
	max-width: 1040px;
	height: auto;
}

/* ページタイトル */
#pagetitle {
	/*width: 100%;*/
	margin: 0 auto 30px auto;
	padding: 0 4%;
}
#pagetitle h2.ttl {
	text-align: left;
	line-height: 1.5;
	font-family: 'Lato', sans-serif;
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.1em;
}

#pageinfo {
	margin: 0 auto 50px auto;
	/*padding: 2%;*/
}
	
#pageinfo h3.ttl {
	margin-bottom: 40px;
	text-align: left;
	line-height: 1.5;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	letter-spacing: 0.1em;
}
	

	
.contBox {
	margin: 0 40px;
}
.pageNation .pageLeft {
	position: absolute;
	left: 40px;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 40px;
	top: 0;
}



/* footer
----------------------------------------- */
/* CONTACT US */
footer .contactus {
  font-size: 28px;
}
	
footer .icn_sns li {
	width: 10%;
	height: auto;
	margin: 10px ;
}
footer .icn_sns li img {
	width: 50%;
	height: auto;
}
	
footer .copyright {
	margin-bottom: 20px;
	text-align: center;
}


} /* タブレット向け */



/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
 PC向けレイアウトの指定：1090px~
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

@media only screen and (min-width: 1090px) {


a:hover {
	text-decoration: underline;
	opacity: 0.3;
}

/* header
----------------------------------------- */
header {
	max-width: 100%;
	height: 150px;
}

header h1 {
	position: absolute;
	top: 40px;
	/*left: 40px;*/
	margin-left:  2%;
}

header h1 img {
	width:60%;
	height:auto;
}

.page_nav_list {
	max-width: 100%;
	position: absolute;
	left: 0;
	text-align: center;
	margin-left:  10%;
}

.page_nav_list a{
	text-decoration: none;
}

.page_nave_item {
	margin-right: 10%;
	display: inline;
	float: none;
}
	
/* mainVisual */
#mainVisual img {
	/*max-width: 1552px;*/
	max-width: 100%;
	height: auto;
}
	
/* contents
----------------------------------------- */
#pagetitle {
	max-width: 100%;
}
/*#pagetitle h2.ttl {
font-size: 120%;
}*/
#pageinfo h3.ttl {
	text-align: left;
	line-height: 2.0;
	font-size: 24px;
}
	
.contBox {
	margin: 0;
}
.pageNation .pageLeft {
	position: absolute;
	left: 0;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 0;
	top: 0;
}

/* footer
----------------------------------------- */

footer {
	width: 100%;
	margin: 0 auto;
}


} /* PC向け */