@charset "utf-8";

/* CSS Document */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@font-face { font-family: 'FOT-AnitoStd-M'; src:url(FOT-AnitoStd-M.otf); }
@font-face { font-family: 'NotoSerifCJKjp-Regular'; src:url(NotoSerifCJKjp-Regular.otf); }

/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/

body {	
	color:#000000;
	font-size:16px;
	margin:0;
	height:100%;
	position:relative;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:1.6;
	overflow-x:hidden;
}

@media screen and (max-width: 640px) {
	body {
		font-size:22px;
	}
}

a:link {color:#0d5fc6; text-decoration:underline;}
a:visited {color:#0d5fc6; text-decoration:underline;}
a:hover {color:#ff76c0; text-decoration:underline;}

img {
	border:0;
	vertical-align: bottom;
}

/*------------------------------------------------------------------------------------------------------------------
　preparation
-------------------------------------------------------------------------------------------------------------------*/

#lineup-font-size-sampler { display:none; }

div:after, section:after, article:after, ul:after {
    content: "";
    display: block;
    clear: both;
}

.link a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
}

.pc {
	display:block;
}
.sp {
	display:none;
}

@media screen and (max-width: 640px) {
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }

.under { margin-bottom:30px !important; }
.under-harf { margin-bottom:15px !important; }

.right { float:right; margin-left:30px; margin-bottom:15px; margin-top:5px;}
.left { float:left; margin-right:30px; margin-bottom:15px; margin-top:5px;}

@media screen and (max-width: 800px) {
	.right { float:none; margin-left:auto; margin-right:auto; margin-bottom:30px; display:block; }
	.left { float:none; margin-left:auto; margin-right:auto; margin-bottom:30px; display:block; }
}

.text-center { text-align:center; }
.text-left { text-align:left; }
.text-right { text-align:right; }

.first { padding-top:0 !important; margin-top:0 !important; }
.last { padding-bottom:0 !important; margin-bottom:0 !important; }

.ro img:hover,.ro:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.img-frame {
	position:relative;
}

.img-frame:after {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	box-sizing:border-box;
	border:10px solid rgba(255,255,255,0.6);
}

@media screen and (max-width: 800px) {
	.img-frame:after {
		display:none;
	}
}

.dropshadow {
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
}

/*------------------------------------------------------------------------------------------------------------------
　img align for wordpress
-------------------------------------------------------------------------------------------------------------------*/

.aligncenter {
    display: block;
    margin: 0 auto;
	padding-bottom:25px;
	max-width:100%;
}
.alignright { float: right; margin-left:30px; margin-bottom:25px; max-width:100%; }
.alignleft { float: left; margin-right:30px; margin-bottom:25px; max-width:100%; }

.aligncenter img, .alignright img, .alignleft img {
	max-width:100%;
	height:auto;
}

@media screen and (max-width: 1140px) {
	.aligncenter {
		display: block;
		margin: 0 auto;
		padding-bottom:25px;
		max-width:100%;
		text-align:center;
	}
	.alignright { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; }
	.alignleft { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; }
}

/*------------------------------------------------------------------------------------------------------------------
　Float Image
-------------------------------------------------------------------------------------------------------------------*/

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

	.photo-l {
		float:left;
		margin-right:30px;
		margin-bottom:20px;
	}
	
	.photo-r {
		float:right;
		margin-left:30px;
		margin-bottom:20px;
	}
	
	.photo-l img {
		width:100%;
		height:auto;
	}
	
	.photo-r img {
		width:100%;
		height:auto;
	}
	
	.photo-c {
		text-align:center;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:30px;
	}

}

@media screen and (max-width: 640px) {

	.photo-l {
		margin-bottom:20px;
		text-align:center;
		width:100%;
		max-width:inherit !important;
	}
	
	.photo-r {
		margin-bottom:20px;
		text-align:center;
		width:100%;
		max-width:inherit !important;
	}
	
	.photo-l img {
		display:block;
		margin-left:auto;
		margin-right:auto;
	}
	
	.photo-r img {
		display:block;
		margin-left:auto;
		margin-right:auto;
	}
	
	.photo-c {
		text-align:center;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:30px;
	}
	
	.photo-c img {
	}

}

/*------------------------------------------------------------------------------------------------------------------
　wp-pagenavi
-------------------------------------------------------------------------------------------------------------------*/

.wp-pagenavi {
	display:block !important;
	clear:both !important;
	text-align:center;
	padding-top:50px;
}
.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend {
		color:#333333 !important;
		text-shadow:0px 1px #F6F6F6 !important;
		padding:6px 9px 6px 9px !important;
		border:solid 1px #B6B6B6 !important;
		box-shadow:0px 1px #EFEFEF !important;
		-moz-box-shadow:0px 1px #EFEFEF !important;
		-webkit-box-shadow:0px 1px #EFEFEF !important;
		background:#E6E6E6 !important;
		background:-moz-linear-gradient(top,#FFFFFF 1px,#F3F3F3 1px,#E6E6E6) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#FFFFFF),color-stop(0.02,#F3F3F3),color-stop(1,#E6E6E6)) !important;
		font-size:12px !important;
		margin-right:3px !important;
		text-decoration:none !important;
}	
.wp-pagenavi a:hover {
		color:#fff !important;
			text-shadow:0px 1px #388DBE !important;
		border-color:#3390CA !important;
		background:#58B0E7 !important;
		background:-moz-linear-gradient(top,#B4F6FF 1px,#63D0FE 1px,#58B0E7) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#B4F6FF),color-stop(0.02,#63D0FE),color-stop(1,#58B0E7)) !important;
		color:#FFFFFF !important;
		box-shadow:0px 1px #E7E7E7 !important;
		-moz-box-shadow:0px 1px #E7E7E7 !important;
		-webkit-box-shadow:0px 1px #E7E7E7 !important;

}
 .wp-pagenavi span.current{
		padding:6px 9px 6px 9px !important;
		border:solid 1px #DCDCDC !important;
		color:#fff !important;
		box-shadow:0px 1px #E7E7E7 !important;
		-moz-box-shadow:0px 1px #E7E7E7 !important;
		-webkit-box-shadow:0px 1px #E7E7E7 !important;
		margin-right:3px !important;
				text-shadow:0px 1px #388DBE !important;
		border-color:#3390CA !important;
		background:#58B0E7 !important;
		background:-moz-linear-gradient(top,#B4F6FF 1px,#63D0FE 1px,#58B0E7) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#B4F6FF),color-stop(0.02,#63D0FE),color-stop(1,#58B0E7)) !important;
}

/*------------------------------------------------------------------------------------------------------------------
　primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
	width:100%;
	height:100%;
	min-width:640px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

article {
	width:100%;
	max-width:1100px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	transition:0.3s;
	box-sizing:border-box;
}

@media screen and (max-width: 1100px) {
	article {
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　mainvisual
-------------------------------------------------------------------------------------------------------------------*/

#mainvisual {
	width:100%;
	height:749px;
}

@media screen and (max-width: 640px) {
	#mainvisual {
		height:600px;
		overflow:hidden;
	}
}

#mainvisual .panel {
	width:100%;
	height:749px;
	position:relative;
}

#mainvisual .panel .mv-left {
	background-image:url(../image/mainvisual/mv-left.jpg);
	width:1211px;
	height:749px;
	position:absolute;
	top:0;
	left:0;
	z-index:1;
}

@media screen and (max-width: 1000px) {
	#mainvisual .panel .mv-left {
		left:50%;
		margin-left:-600px;
	}
}

@media screen and (max-width: 640px) {
	#mainvisual .panel .mv-left {
		position:relative;
		width:100%;
		height:600px;
		margin-right:auto;
		margin-left:auto;
		left:inherit;
		top:inherit;
		background-position:center top;
		background-repeat:no-repeat;
		background-size:cover;
	}
}

#mainvisual .panel .mv-right {
	background-image:url(../image/mainvisual/mv-right.jpg);
	width:410px;
	height:749px;
	position:absolute;
	top:0;
	right:0;
	border-left:10px solid #ffffff;
	z-index:1;
}

#mainvisual .panel .comment {
	background-image:url(../image/mainvisual/comment.png);
	width:299px;
	height:749px;
	position:absolute;
	left:50%;
	margin-left:222px;
	z-index:2;
	transition:0.3s;
}

@media screen and (max-width: 1380px) {
	#mainvisual .panel .mv-right {
		display:none;
	}
	#mainvisual .panel .comment {
		left:inherit;
		margin-left:inherit;
		right:0;
	}
}
@media screen and (max-width: 800px) {
	#mainvisual .panel .comment {
		display:none;
	}
}


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

header {
}

header .header-primary {
	padding-top:30px;
	padding-bottom:0px;
}

header .header-primary h1 {
	font-size:14px;
	color:#000000;
	margin:0;
	padding:0;
	font-weight:normal;
	margin-bottom:20px;
	position:absolute;
	top:-10px;
	left:0;
	transition:0.3s;
}

@media screen and (max-width: 1120px) {
	header .header-primary h1 {
		left:30px;
	}
}

@media screen and (max-width: 880px) {
	header .header-primary h1 {
		display:none;
	}
}

@media screen and (max-width: 640px) {
	header .header-primary h1 {
		display:block;
		top:inherit;
		left:inherit;
		display:block;
		width:100%;
		text-align:center;
		position:relative;
	}
}

header .header-primary .logo {
	background-image:url(../image/header/logo.png);
	background-position:center top;
	background-repeat:no-repeat;
	width:278px;
	height:80px;
	position:absolute;
	top:35px;
	left:0;
	transition:0.3s;
}

@media screen and (max-width: 1120px) {
	header .header-primary .logo {
		left:30px;
	}
}

@media screen and (max-width: 880px) {
	header .header-primary .logo {
		top:-10px;
	}
}

@media screen and (max-width: 700px) {
	header .header-primary .logo {
		background-size:220px 63px;
		background-position:left;
		top:-10px;
	}
}

@media screen and (max-width: 640px) {
	header .header-primary .logo {
		top:inherit;
		left:inherit;
		display:block;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:40px;
		position:relative;
		background-size:auto;
		top:0;
	}
}

header .header-primary .logo a {
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

header .header-primary .option {
	width:400px;
	height:71px;
	float:right;
	margin-top:-5px;
	text-align:right;
}

@media screen and (max-width: 640px) {
	header .header-primary .option {
		display:none;
	}
}

header .header-primary .option img {
	display:inline-block;
	margin-right:15px;
}

@media screen and (max-width: 800px) {
	.maipre {
		display:none;
	}
}

header .header-primary .option .contact {
	display:inline-block;
	text-align:center !important;
}

header .header-primary .option .contact a {
	width:240px;
	height:71px;
	background-color:#0d5fc6;
	border-radius:10px;
	background-image:url(../image/header/megane-icon.png);
	background-repeat:no-repeat;
	background-position:top 0 left 25px;
	position:relative;
	display:block;
	color:#ffffff;
	font-size:18px;
	text-decoration:none;
	font-weight:bold;
	box-sizing:border-box;
	padding-left:94px;
	padding-top:20px;
	transition:0.3s;
	border:3px solid #0d5fc6;
	text-indent:-10px;
}

header .header-primary .option .contact a:hover {
	background-image:url(../image/header/megane-icon_on.png);
	background-color:#ffffff;
	color:#0d5fc6;
}

/*------------------------------------------------------------------------------------------------------------------
　navi
-------------------------------------------------------------------------------------------------------------------*/

header .header-primary nav {
	width:100%;
	padding-left:250px;
	box-sizing:border-box;
	padding-top:72px;
}

@media screen and (max-width: 1070px) {
	header .header-primary nav {
		padding-left:0;
	}
}

@media screen and (max-width: 1030px) {
	header .header-primary nav {
		padding-top:130px;
	}
}

@media screen and (max-width: 880px) {
	header .header-primary nav {
		padding-top:100px;
	}
}

@media screen and (max-width: 640px) {
	header .header-primary nav {
		display:none;
	}
}

header .header-primary nav ul {
	list-style:none;
	text-align:right;
}

@media screen and (max-width: 1030px) {
	header .header-primary nav ul {
		text-align:center;
		margin:0;
		padding:0;
		padding-bottom:20px;
	}
}

header .header-primary nav ul li {
	display:inline-block;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:15px;
	position:relative;
}

header .header-primary nav ul li:after {
	border-right:1px dotted #cccccc;
	width:1px;
	height:25px;
	content:"";
	display:block;
	position:absolute;
	top:0;
	right:0;
}

header .header-primary nav ul li:last-of-type:after {
	display:none;
}

header .header-primary nav ul li:first-of-type {
	padding-left:0;
}

header .header-primary nav ul li:last-of-type {
	padding-right:0;
}

header .header-primary nav ul li a {
	font-size:16px;
	color:#000000;
	text-decoration:none;
}

header .header-primary nav ul li a:hover {
	border-bottom:2px solid #0d5fc6;
}

/*------------------------------------------------------------------------------------------------------------------
　sidebar
-------------------------------------------------------------------------------------------------------------------*/

.sidebar-button {
	display:none;
}

@media screen and (max-width: 640px) {
	.sidebar-button {
		width:80px;
		height:80px;
		background-color:#0d5fc6;
		border-radius:10px;
		position:fixed;
		top:72px;
		right:20px;
		z-index:100;
		box-sizing:border-box;
		padding-top:21px;
		padding-left:17px;
		transition:0.3s;
		display:block;
	}
	.sidebar-button:hover {
		cursor:pointer;
	}
	.sidebar-button.active {
		right:320px;
	}
	.sidebar-button .trigger a {
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		display:block;
	}
	.sidebar-button .trigger {
		position:relative;
		width:46px;
		height:35px;
	}
}

#sidebar {
	display:none;
}

@media screen and (max-width: 640px) {
	#sidebar {
		display:block;
		position:fixed;
		top:0;
		right:-300px;
		transition:0.3s;
		width:300px;
		height:100%;
		z-index:100;
		background-color:rgba(255,255,255,1.00);
		box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.15);
		-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.15);
		-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.15);
	}
	#sidebar.active {
		right:0px;
	}
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 50px;
  height: 44px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #fff;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 15px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 .75s forwards;
  animation: menu-bar01 .75s forwards;
}
@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(15px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(15px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar01 {
  0% {
    transform: translateY(15px) rotate(45deg);
  }
  50% {
    transform: translateY(15px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger span:nth-of-type(2) {
  transition: all .25s .25s;
  opacity: 1;
}
.menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 .75s forwards;
  animation: menu-bar02 .75s forwards;
}
@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-15px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-15px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar02 {
  0% {
    transform: translateY(-15px) rotate(-45deg);
  }
  50% {
    transform: translateY(-15px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
}
@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(15px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(15px) rotate(45deg);
  }
}
@keyframes active-menu-bar01 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(15px) rotate(0);
  }
  100% {
    transform: translateY(15px) rotate(45deg);
  }
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
}
@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-15px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-15px) rotate(-45deg);

  }
}
@keyframes active-menu-bar03 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-15px) rotate(0);
  }
  100% {
    transform: translateY(-15px) rotate(-45deg);
  }
}

#sidebar nav {
	padding-top:30px;
}

#sidebar nav ul {
	list-style:none;
	margin:0;
	padding:0;
	width:100%;
}

#sidebar nav ul li {
	width:100%;
	text-align:center;
	box-sizing:border-box;
	margin-bottom:20px;
}

#sidebar nav ul li a {
	color:#000000 !important;
	font-size:20px;
	text-decoration:none !important;
	white-space:nowrap;
	padding-bottom:42px;
	box-sizing:border-box;
}

#sidebar nav ul li a span {
	font-size:10px;
	display:block;
}

#sidebar .option {
	padding-left:20px;
	padding-right:20px;
}

#sidebar .option .contact a {
	width:100%;
	height:71px;
	line-height:65px;
	background-color:#0d5fc6;
	border-radius:10px;
	position:relative;
	display:block;
	color:#ffffff;
	font-size:18px;
	text-decoration:none;
	font-weight:bold;
	box-sizing:border-box;
	transition:0.3s;
	border:3px solid #0d5fc6;
	text-align:center;
	margin-top:40px;
}

#sidebar .option .contact a:hover {
	background-color:#ffffff;
	color:#0d5fc6;
}

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

#footer {
	width:100%;
	height:331px;
	padding-top:70px;
	padding-bottom:70px;
	background-image:url(../image/footer/back.png);
	background-position:center top;
	background-repeat:no-repeat;
	background-color:#0d5fc6;
	box-sizing:border-box;
	text-align:center;
	color:#ffffff;
}

@media screen and (max-width: 640px) {
	#footer {
		height:auto;
	}
}

#footer .logo {
	background-image:url(../image/footer/logo.png);
	width:217px;
	height:65px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	display:block;
}

#footer .logo a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

@media screen and (max-width: 640px) {
	#footer p {
		font-size:18px;
	}
}

.topback a {
	position:absolute;
	bottom:250px;
	right:30px;
	background-image:url(../image/footer/topback.png);
	width:149px;
	height:150px;
	display:block;
	transition:0.3s;
}

@media screen and (max-width: 640px) {
	.topback a {
		bottom:490px;
	}
}

.topback a:hover {
	bottom:260px;
}

@media screen and (max-width: 640px) {
	.topback a:hover {
		bottom:490px;
	}
}

#footer nav {
	width:100%;
	box-sizing:border-box;
}

#footer nav ul {
	list-style:none;
	text-align:center;
	padding-top:20px;
}

#footer nav ul li {
	display:inline-block;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:15px;
	position:relative;
}

@media screen and (max-width: 640px) {
	#footer nav ul {
		margin:0;
		padding:0;
		padding-top:30px;
		padding-left:30px;
		padding-right:30px;
	}
	#footer nav ul li {
		display:block;
		padding-left:0;
		padding-right:0;
		font-size:18px;
		border-bottom:1px dotted #ffffff;
		margin-bottom:10px;
	}
}

#footer nav ul li:after {
	border-right:1px dotted #ffffff;
	width:1px;
	height:25px;
	content:"";
	display:block;
	position:absolute;
	top:0;
	right:0;
}

#footer nav ul li:last-of-type:after {
	display:none;
}

@media screen and (max-width: 640px) {
	#footer nav ul li:after {
		display:none;
	}
}

#footer nav ul li:first-of-type {
	padding-left:0;
}

#footer nav ul li:last-of-type {
	padding-right:0;
}

#footer nav ul li a {
	font-size:16px;
	color:#ffffff;
	text-decoration:none;
}

#footer nav ul li a:hover {
	border-bottom:2px solid #ffffff;
}

/*------------------------------------------------------------------------------------------------------------------
　additional
-------------------------------------------------------------------------------------------------------------------*/

#contents-primary {
	position:relative;
}

#contents {
	position:relative;
}

#subpage #contents {
	padding-bottom:50px;
	box-sizing:border-box;
	min-height:500px;
}

#subpage #contents .content {
	margin-bottom:70px;
}

#contents h2 {
	font-size:30px;
	color:#1866c9;
	margin:0;
	padding:0;
	display:block;
	text-align:center;
	font-family: 'FOT-AnitoStd-M';
	font-weight:normal;
	margin-bottom:40px;
}

#contents h2 span {
	display:block;
	font-size:18px;
	color:#000000;
}

#subpage #contents h3 {
	background-image:url(../image/layout/h3-back.gif);
	margin:0;
	padding:0;
	border-radius:8px;
	padding-top:25px;
	padding-bottom:25px;
	padding-left:30px;
	padding-right:30px;
	margin-bottom:30px;
	color:#ffffff;
	position:relative;
	text-shadow: 0 1px 1px #033c83;
}

#subpage #contents h3:after {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	content:"";
	box-sizing:border-box;
	border:5px solid #2871cc;
	border-radius:8px;
}

#subpage #contents h4 {
	border:2px solid #2871cc;
	padding:15px;
	padding-left:20px;
	padding-right:20px;
	margin:0;
	color:#2871cc;
	margin-bottom:30px;
	display:block;
	border-radius:5px;
}

#subpage .box {
	border:5px solid #0d5fc6;
	border-radius:10px;
	padding:35px;
	box-sizing:border-box;
	margin-bottom:70px;
	position:relative;
}

#subpage .content .box:last-of-type {
	margin-bottom:0 !important;
}

#subpage-mv {
	width:100%;
	height:185px;
	background-position:center top;
	background-repeat:no-repeat;
	margin-bottom:70px;
	position:relative;
}

#subpage-mv:after {
	width:800px;
	height:185px;
	content:"";
	position:absolute;
	top:0;
	left:50%;
	margin-left:-952px;
	background-color:#f1f1f1;
}

@media screen and (max-width: 930px) {
	#subpage-mv:after {
		display:none;
	}
}

#subpage-mv h2 {
	text-align:left !important;
	position:relative;
	z-index:99;
	padding-top:50px;
}

@media screen and (max-width: 930px) {
	#subpage-mv h2 {
		text-align:center !important;
		text-shadow: 
		white 2px 0px,  white -2px 0px,
		white 0px -2px, white 0px 2px,
		white 2px 2px , white -2px 2px,
		white 2px -2px, white -2px -2px,
		white 1px 2px,  white -1px 2px,
		white 1px -2px, white -1px -2px,
		white 2px 1px,  white -2px 1px,
		white 2px -1px, white -2px -1px;
		font-weight:bold;
	}
}

#subpage-mv article {
	position:relative;
	width:100%;
	max-width:1100px;
	box-sizing:border-box;
}

/*----------------------------------------------------------------------------
   home
------------------------------------------------------------------------------*/

#top-information-campaign {
	/*background-image:url(../image/contents/top/info-back-left.png), url(../image/contents/top/info-back-right.png);*/
	background-repeat:no-repeat;
	background-position:left top, right top;
	width:100%;
	/*height:700px;*/
	height: 630px;
	box-sizing:border-box;
	padding-top:50px;
}

@media screen and (max-width: 1000px) {
	#top-information-campaign {
		background-image:none;
		height:auto;
		padding-bottom:50px;
	}
}

#top-information {
	width:calc(50% - 25px);
	float:left;
}

#top-campaign {
	width:calc(50% - 25px);
	float:right;
}

@media screen and (max-width: 1000px) {
	#top-information {
		width:100%;
		float:none;
		margin-bottom:50px;
	}
	#top-campaign {
		width:100%;
		float:none;
	}
}

#top-information ul, #top-campaign ul {
	list-style:none;
	margin:0;
	padding:0;
	overflow:hidden;
	height: 360px;
	/*height:454px;*/
}

#top-information ul {
	padding-top:25px;
}

@media screen and (max-width: 1000px) {
	#top-information ul, #top-campaign ul {
		height:auto;
	}
}

#top-information ul li, #top-campaign ul li {
	padding-bottom:20px;
}

#top-information ul li h3, #top-campaign ul li h3 {
	font-size:16px;
	color:#00468c;
	font-weight:normal;
	position:relative;
}

#top-information ul li h3 span.data, #top-campaign ul li h3 span.data {
	font-size:16px;
	color:#6d6d6d;
	display:block;
	padding-right:20px;
	position:absolute;
	top:2px;
	left:0;
}

.cate-primary {
	padding-left:100px;
}

@media screen and (max-width: 640px) {
	#top-information ul li h3, #top-campaign ul li h3 {
		font-size:22px;
	}
	#top-information ul li h3 span.data, #top-campaign ul li h3 span.data {
		font-size:22px;
	}
	.cate-primary {
		padding-left:130px;
	}
}

#top-information ul li a, #top-campaign ul li a {
	margin:0;
	padding:0;
	display:block;
}

#top-information ul li h3 span.cate-icon, #top-campaign ul li h3 span.cate-icon {
	display:inline-block;
	padding:6px;
	padding-top:1px;
	padding-bottom:1px;
	color:#ffffff;
	border-radius:7px;
	margin-right:5px;
	font-size:11px;
}

@media screen and (max-width: 640px) {
	#top-information ul li h3 span.cate-icon, #top-campaign ul li h3 span.cate-icon {
		font-size:14px;
	}
}

#top-information ul li h3 span.cate01, #top-campaign ul li h3 span.cate01 { background-color:#FF4F51; }
#top-information ul li h3 span.cate02, #top-campaign ul li h3 span.cate02 { background-color:#1D8BFF; }
#top-information ul li h3 span.cate03, #top-campaign ul li h3 span.cate03 { background-color:#69D94E; }
#top-information ul li h3 span.cate04, #top-campaign ul li h3 span.cate04 { background-color:#A2A2A2; }

#top-campaign ul li {
	padding-bottom:18px;
	padding-right:170px;
	border-bottom:1px dotted #cccccc;
	min-height:110px;
	position:relative;
}

@media screen and (max-width: 1100px) {
	#top-campaign ul li {
		padding-bottom:70px;
		padding-left:170px;
		padding-right:0;
	}
}

#top-campaign ul li:after {
	content: "";
    display: block;
    clear: both;
}

#top-campaign ul li .thum {
	position:absolute;
	top:0;
	right:0;
	width:150px;
}

@media screen and (max-width: 1100px) {
	#top-campaign ul li .thum {
		right:inherit;
		left:0;
	}
}

#top-campaign ul li .thum {
	max-height:110px;
}

#top-information ul li {
	margin-top:-5px;
}

#top-information ul li h3 {
	margin:0;
	padding:0;
	padding-bottom:18px;
	border-bottom:1px dotted #cccccc;
}


/*Instagram追加*/
#top-instagram {
	width:calc(50% - 25px);
	float:right;
}

@media screen and (max-width: 1000px) {

	#top-instagram {
		width:100%;
		float:none;
		padding-bottom: 30px;
	}
}

#top-instagram ul {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top:25px;
	width: calc(100% + 10px) !important;
	float: none !important;
}

#top-instagram ul li {
	width: calc(33.333% - 10px);
    padding-top: calc(33.333% - 10px);
	height: 0;
	overflow: hidden;
    position: relative;
	margin-right: 10px;
	margin-bottom: 10px;
    float: left;
    transition: 0.3s;
}

#top-instagram ul li a {
	width: 100%;
    height: 300px!important;
    display: block;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;	
}

#top-instagram ul li img{
	object-fit: cover;
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

#top-instagram ul li:hover {
	opacity: 0.7;
}					
	


#top-about {
	background-image:url(../image/contents/top/about-back.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	width:100%;
	min-height:1040px;
	box-sizing:border-box;
	padding-top:222px;
	padding-bottom:50px;
}

@media screen and (max-width: 1100px) {
	#top-about {
		padding-top:80px;
	}
}

#top-about .phrase {
	font-family: 'NotoSerifCJKjp-Regular';
	font-size:36px;
	color:#505050;
	margin-bottom:25px;
	clear:both;
}

@media screen and (max-width: 800px) {
	#top-about .phrase br {
		display:none;
	}
}

#top-about p {
	font-family: 'NotoSerifCJKjp-Regular';
	margin:0;
	padding:0;
	font-size:22px;
	margin-bottom:124px;
}

#top-about .photo01 {
	position:absolute;
	top: -195px;
    right: 140px;
	z-index:1;
}

#top-about .photo02 {
	position:absolute;
	top: -68px;
    right: -70px;
	z-index:2;
}

#top-about .photo03 {
	position:absolute;
	top: 70px;
    right: 60px;
	z-index:3;
}

@media screen and (max-width: 1100px) {
	#top-about .photo01, #top-about .photo02, #top-about .photo03 {
		position:relative;
		top:inherit;
		right:inherit;
		float:left;
		margin-right:30px;
		margin-bottom:30px;
	}
	#top-about .photo03 {
		margin-right:0 !important;
	}
}

@media screen and (max-width: 860px) {
	#top-about .photo01, #top-about .photo02, #top-about .photo03 {
		width:calc(33.333% - 30px);
	}
	#top-about .photo01 img, #top-about .photo02 img, #top-about .photo03 img {
		width:100%;
		height:auto;
	}
}

#top-about .point-list-primary {
	width:calc(100% + 30px);
}

#top-about .point-list-primary .list {
	background-color:#0d5fc6;
	width:calc(33.333% - 30px);
	margin-right:30px;
	float:left;
	margin-bottom:30px;
	position:relative;
}

@media screen and (max-width: 1000px) {
	#top-about .point-list-primary {
		width:100%;
	}
	#top-about .point-list-primary .list {
		width:100%;
		margin-right:0;
		float:none;
		overflow:hidden;
	}
}

#top-about .point-list-primary .list:nth-child(1):after { background-image:url(../image/contents/top/about-point01.png); }
#top-about .point-list-primary .list:nth-child(2):after { background-image:url(../image/contents/top/about-point02.png); }
#top-about .point-list-primary .list:nth-child(3):after { background-image:url(../image/contents/top/about-point03.png); }

#top-about .point-list-primary .list:after {
	content:"";
	width:124px;
	height:124px;
	position:absolute;
	top:277px;
	left:-20px;
	z-index:4;
	display:block;
}

@media screen and (max-width: 1000px) {
	#top-about .point-list-primary .list:after {
		top:58px;
		left:322px;
	}
}

@media screen and (max-width: 800px) {
	#top-about .point-list-primary .list:after {
		left:232px;
	}
}

#top-about .point-list-primary .list .thum {
	width:100%;
	height:243px;
	background-position:center top;
	background-repeat:no-repeat;
	position:relative;
}

#top-about .point-list-primary .list .thum a {
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

@media screen and (max-width: 1000px) {
	#top-about .point-list-primary .list .thum {
		float:left;
		margin-right:30px;
		width:346px;
		height:243px;
	}
}
@media screen and (max-width: 800px) {
	#top-about .point-list-primary .list .thum {
		margin-left:-70px;
	}
}

#top-about .point-list-primary .list .detail {
	text-align:center;
	padding:30px;
	padding-left:100px;
}

@media screen and (max-width: 1000px) {
	#top-about .point-list-primary .list .detail {
		padding:0;
	}
}

#top-about .point-list-primary .list .detail h3 {
	color:#ffffff;
	margin:0;
	padding:0;
	font-size:21px;
	font-weight:normal;
}

#top-about .point-list-primary .list .detail h3 span {
	font-size:16px;
	display:block;
}

@media screen and (max-width: 1100px) {
	#top-about .point-list-primary .list .detail h3 br {
		display:none;
	}
}
@media screen and (max-width: 1000px) {
	#top-about .point-list-primary .list .detail h3 br {
		display:block;
	}
}

#top-about .point-list-primary .list .detail img {
	margin-bottom:10px;
}

@media screen and (max-width: 1000px) {
	#top-about .point-list-primary .list .detail img {
		margin-top:50px;
	}
}

#top-shopinfo {
	background-color:#f7f7f7;
	padding-top:50px;
	padding-bottom:50px;
}

#top-shopinfo .shop-list-primary {
	width:calc(100% + 30px);
}

#top-shopinfo .shop-list-primary .list {
	width:calc(25% - 30px);
	margin-right:30px;
	margin-bottom:30px;
	float:left;
}

@media screen and (max-width: 900px) {
	#top-shopinfo .shop-list-primary .list {
		width:calc(33.333% - 30px);
	}
}

@media screen and (max-width: 640px) {
	#top-shopinfo .shop-list-primary .list {
		width:calc(50% - 30px);
	}
}

#top-shopinfo .shop-list-primary .list a img {
	margin-bottom:20px;
	transition:0.3s;
	max-width:100%;
}

@media screen and (max-width: 640px) {
	#top-shopinfo .shop-list-primary .list a img {
		width:100%;
	}
}

#top-shopinfo .shop-list-primary .list a img:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

#top-shopinfo .shop-list-primary .list p {
	margin:0;
	padding:0;
	font-size:14px;
}

#top-shopinfo .shop-list-primary .list p strong {
	font-weight:normal;
	font-size:18px;
	padding-bottom:10px;
	display:block;
}

@media screen and (max-width: 640px) {
	#top-shopinfo .shop-list-primary .list p strong {
		font-size:22px;
	}
	#top-shopinfo .shop-list-primary .list p {
		font-size:18px;
	}
}

#brand-logo {
	padding-top:50px;
	padding-bottom:50px;
}

#brand-logo ul {
	list-style:none;
	margin:0;
	padding:0;
	width:calc(100% + 30px);
}

#brand-logo ul li {
	width:calc(20% - 30px);
	float:left;
	margin-right:30px;
	margin-bottom:30px;
	text-align:center;
}

#brand-logo ul li img {
	max-width:100%;
	transition:0.3s;
}

#brand-logo ul li img:hover {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}


/*----------------------------------------------------------------------------
   shop
------------------------------------------------------------------------------*/

.shop #subpage-mv {
	background-image:url(../image/contents/shop/mv.jpg);
}

#shopinfo {
	padding-bottom:50px;
}

#shopinfo .shop-list-primary {
	width:calc(100% + 30px);
}

#shopinfo .shop-list-primary .list {
	width:calc(25% - 30px);
	margin-right:30px;
	margin-bottom:30px;
	float:left;
}

@media screen and (max-width: 900px) {
	#shopinfo .shop-list-primary .list {
		width:calc(33.333% - 30px);
	}
}

@media screen and (max-width: 640px) {
	#shopinfo .shop-list-primary .list {
		width:calc(50% - 30px);
	}
}

#shopinfo .shop-list-primary .list a img {
	margin-bottom:20px;
	transition:0.3s;
	max-width:100%;
}

@media screen and (max-width: 640px) {
	#shopinfo .shop-list-primary .list a img {
		width:100%;
	}
}

#shopinfo .shop-list-primary .list a img:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

#shopinfo .shop-list-primary .list p {
	margin:0;
	padding:0;
	font-size:14px;
}

#shopinfo .shop-list-primary .list p strong {
	font-weight:normal;
	font-size:18px;
	padding-bottom:10px;
	display:block;
}

@media screen and (max-width: 640px) {
	#shopinfo .shop-list-primary .list p strong {
		font-size:22px;
	}
	#shopinfo .shop-list-primary .list p {
		font-size:18px;
	}
}

.supp-maker ul {
	list-style:none;
	margin:0;
	padding:0;
	width:calc(100% + 15px);
	padding-bottom:10px;
}

.supp-maker ul li {
	width:calc(20% - 15px);
	margin-right:15px;
	margin-bottom:15px;
	float:left;
	background-color:#ecf4ff;
	border-radius:3px;
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
	border:1px dotted #a5cdff;
	box-sizing:border-box;
}

@media screen and (max-width: 1100px) {
	.supp-maker ul li { width:calc(25% - 15px); }
}
@media screen and (max-width: 900px) {
	.supp-maker ul li { width:calc(33.333% - 15px); }
}
@media screen and (max-width: 800px) {
	.supp-maker ul li { width:calc(50% - 15px); }
}
@media screen and (max-width: 640px) {
	.supp-maker ul li {
		font-size:16px;
	}
}
.supp-category {
	position:relative;
	padding-left:140px;
	min-height:135px;
	border-bottom:1px dotted #cccccc;
	padding-bottom:0;
	margin-bottom:22px;
}

.supp-category h5 {
	position:absolute;
	top:0;
	left:0;
	width:110px;
	height:110px;
	margin:0;
	padding:0;
	background-color:#2c74cd;
	border:2px solid #0d5fc6;
	text-align:center;
	line-height:105px;
	box-sizing:border-box;
	color:#ffffff;
	font-size:17px;
	border-radius:3px;
}

.supp-category p {
	margin:0;
	padding:0;
	padding-bottom:20px;
	display:block;
	margin-top:-5px;
}

.separate {
	clear:both;
	width:calc(100% + 30px);
}

.separate .left-content {
	float:left;
	width:calc(50% - 30px);
	margin-right:30px;
}

.separate .right-content {
	float:right;
	width:calc(50% - 30px);
	margin-right:30px;
}

@media screen and (max-width: 900px) {
	.separate {
		width:100%;
	}
	.separate .left-content, .separate .right-content {
		width:100%;
		float:none;
		margin-right:0;
	}
	.separate .right-content {
		margin-top:-1px;
	}
}

.separate th {
	width:35% !important;
}

.access-list-primary {
	width:calc(100% + 20px);
}

.access-list-primary ul {
	list-style:none;
	padding:0;
	margin:0;
}

.access-list-primary ul li {
	box-sizing:border-box;
	float:left;
	border:1px solid #cccccc;
	width:calc(50% - 20px);
	margin-right:20px;
	margin-bottom:20px;
	padding:15px;
}

@media screen and (max-width: 800px) {
	.access-list-primary {
		width:100%;
	}
	.access-list-primary ul li {
		width:100%;
		float:none;
		margin-right:0;
	}
}

iframe {
	margin-bottom:30px;
}

.pickup-list-primary {
	width:calc(100% + 30px);
}

.pickup-list-primary .list {
	width:calc(33.333% - 30px);
	margin-right:30px;
	float:left;
	background-color:#ffffff;
}

@media screen and (max-width: 900px) {
	.pickup-list-primary .list {
		width:calc(50% - 30px);
		margin-bottom:30px;
	}
}
@media screen and (max-width: 640px) {
	.pickup-list-primary .list {
		width:100%;
		margin-bottom:30px;
		margin-right:0;
		float:none;
	}
}

.pickup-list-primary .list .thum {
	width:100%;
	height:250px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	margin-bottom:20px;
}

.pickup-list-primary .list h5 {
	margin:0;
	padding:0;
	color:#0d5fc6;
	font-size:18px;
	padding-bottom:5px;
}

@media screen and (max-width: 640px) {
	.pickup-list-primary .list h5 {
		font-size:22px;
	}
}

.pickup-list-primary .list p {
	margin:0;
	padding:0;
}

#map-primary {
	width:100%;
	position:relative;
}

#map {
	width:calc(100% - 80px);
	height:500px;
	margin-bottom:30px;
	position:relative;
}

#map-primary .map-nav {
	width:71px;
	height:245px;
	position:absolute;
	right:0;
	transition:0.3s;
}

#map-primary .map-nav:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	cursor:pointer;
}

#map-primary .map-nav span {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

#map-primary .map-nav:nth-child(1) { background-image:url(../image/contents/shop/map-up.png); top:0; }
#map-primary .map-nav:nth-child(2) { background-image:url(../image/contents/shop/map-down.png); bottom:0; }

/*----------------------------------------------------------------------------
   after-support
------------------------------------------------------------------------------*/

.after-support #subpage-mv {
	background-image:url(../image/mainvisual/template-subpage-mv.jpg);
}

.after-support .box.tamaya-club_box {
	padding-left:178px !important;
}

.box.tamaya-club_box h4 {
	color:#0d5fc6;
	font-size:24px;
	margin:0 !important;
	padding:0 !important;
	position:absolute;
	top:27px !important;
	left:35px !important;
	border:none !important;
}

@media screen and (max-width: 800px) {
	.after-support .box.tamaya-club_box {
		padding-left:35px !important;
	}
	.box.tamaya-club_box h4 {
		position:relative;
		top:inherit !important;
		left:inherit !important;
		text-align:center;
		margin-bottom:30px !important;
	}
}

.box.tamaya-club_box .img-auto-width img {
	width:calc(33.333% - 30px) !important;
	max-width:100%;
	width:inherit;
	height:auto;
}

.box.tamaya-club_box p {
	margin-left:-140px;
	padding-bottom:0 !important;
	margin-bottom:0 !important;
}

@media screen and (max-width: 800px) {
	.box.tamaya-club_box p {
		margin-left:0;
	}
}

.box.vip-card {
	position:relative;
}

.box.vip-card h4 {
	background-color:#f1f1f1;
	display:block;
	border:none !important;
	font-size:24px !important;
	color:#404040 !important;
}

.box.vip-card ul {
	list-style:none;
	margin:0;
	padding:0;
	padding-bottom:30px;
}

.vip-card-hosyou01 {
	position:relative;
	padding-left:138px;
	padding-bottom:30px;
	border-bottom:2px solid #0d5fc6;
	margin-bottom:30px;
}

.vip-card-hosyou02 {
	position:relative;
	padding-left:138px;
}

.vip-card-hosyou01 img, .vip-card-hosyou02 img {
	position:absolute;
	top:0;
	left:0;
}

.vip-card-hosyou01 ul, .vip-card-hosyou02 ul {
	list-style:none;
	padding-bottom:0 !important;
}

.vip-card-hosyou01 ul li, .vip-card-hosyou02 ul li {
	border-bottom:1px solid #dddddd;
	padding-bottom:15px;
	margin-bottom:15px;
}

.vip-card-hosyou01 ul li:last-of-type, .vip-card-hosyou02 ul li:last-of-type {
	border-bottom:none;
	padding-bottom:0;
	margin-bottom:0 !important;
}

.vip-card-point {
	width:100%;
	padding-bottom:30px;
}

.vip-card-point img {
	max-width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.vip-card-point-list {
	list-style:none;
	margin:0;
	padding:0;
}

.vip-card-point-list li {
	border-bottom:1px solid #dddddd;
	padding-bottom:15px;
	margin-bottom:15px;
}

.vip-card-point-list li:last-of-type {
	padding-bottom:0;
	margin-bottom:0;
	border-bottom:none;
}


/*----------------------------------------------------------------------------
   contact
------------------------------------------------------------------------------*/

.contact #subpage-mv {
	background-image:url(../image/mainvisual/template-subpage-mv.jpg);
}

.contact .box.contact-alart {
	position:relative;
	min-height:156px;
	margin-bottom:40px !important;
}
.contact .box.contact-alart:after {
	background: -moz-linear-gradient(left,  rgba(255,255,255,1) 0%, rgba(255,255,255,1) 34%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 34%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 34%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border-radius:5px;
	display:block;
	content:"";
	z-index:0;
}

.contact .box.contact-alart p {
	font-size:22px;
	font-family: 'FOT-AnitoStd-M';
	font-weight:bold;
	text-align:left;
	margin:0;
	padding:0;
	padding-top:5px;
	color:#0d5fc6;
	position:relative;
	z-index:99;
	text-shadow: 
		white 2px 0px,  white -2px 0px,
		white 0px -2px, white 0px 2px,
		white 2px 2px , white -2px 2px,
		white 2px -2px, white -2px -2px,
		white 1px 2px,  white -1px 2px,
		white 1px -2px, white -1px -2px,
		white 2px 1px,  white -2px 1px,
		white 2px -1px, white -2px -1px;
}

.contact .box.contact-alart .link-button a {
	margin-bottom:0 !important;
	position:relative;
	z-index:99;
}

@media screen and (max-width: 930px) {
	.contact .box.contact-alart {
		text-align:center !important;
	}
	.contact .box.contact-alart p {
		text-align:center !important;
	}
	.contact .box.contact-alart .link-button {
		float:none !important;
		margin-left:auto !important;
		margin-right:auto !important;
		display:block !important;
		margin-top:25px !important;
	}
	.contact .box.contact-alart .link-button a {
	}
}

.entry-mail {
	padding-bottom:0;
}

.entry-info {
	padding-bottom:30px;
	text-align:center;
}


/*----------------------------------------------------------------------------
   information
------------------------------------------------------------------------------*/

.information #subpage-mv {
	background-image:url(../image/mainvisual/template-subpage-mv.jpg);
}

.information-list-primary {
	width:calc(100% + 30px);
}

.information-list-primary .list {
	background-color:#ffffff;
	width:calc(50% - 30px);
	float:left;
	margin-right:30px;
	margin-bottom:30px;
	box-sizing:border-box;
	padding:30px;
	border:2px solid #dddddd;
	border-radius:10px;
}

@media screen and (max-width: 1000px) {
	.information-list-primary {
		width:100%;
	}
	.information-list-primary .list {
		width:100%;
		margin-right:0;
	}
}

.information-list-primary .list h4 {
	position:relative;
	margin:0;
	padding:0;
	padding-top:0 !important;
	padding-bottom:0 !important;
	padding-left:0 !important;
	margin-top:-8px !important;
	margin-bottom:15px !important;
	border:none !important;
	font-size:22px;
	line-height:40px;
}

@media screen and (max-width: 640px) {
	.information-list-primary .list h4 {
		font-size:22px;
	}
}

.information-list-primary .list h4 span.date {
	display:inline-block;
	background-color:#0d5fc6;
	width:90px;
	height:30px;
	line-height:30px;
	text-align:center;
	font-size:12px;
	color:#ffffff;
	border-radius:4px;
	margin-right:10px;
}

@media screen and (max-width: 640px) {
	.information-list-primary .list h4 span.date {
		width:90px;
		height:30px;
		line-height:30px;
		text-align:center;
		font-size:12px;
		color:#ffffff;
		border-radius:4px;
		display:inline-block;
	}
}

.information-list-primary .list span.cate {
	height:30px;
	line-height:30px;
	border-radius:4px;
	color:#ffffff;
	font-size:12px;
	display:inline-block;
	padding-left:10px;
	padding-right:10px;
}

.information-list-primary .list img {
	width:200px;
	float:right;
	border-radius:5px;
	margin-left:30px;
	transition:0.3s;
}

.information-list-primary .list img:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.information-list-primary .list .more a {
	border:2px solid #0d5fc6;
	text-decoration:none;
	color:#0d5fc6;
	display:block;
	padding-left:15px;
	padding-right:15px;
	padding-top:5px;
	padding-bottom:5px;
	width:148px;
	height:30px;
	line-height:30px;
	border-radius:5px;
	background-image:url(../image/layout/ar.png);
	background-position:top 11px right 8px;
	background-repeat:no-repeat;
	font-family: 'FOT-AnitoStd-M';
	transition:0.3s;
}

@media screen and (max-width: 640px) {
	.information-list-primary .list .more a {
		width:100%;
		height:60px;
		line-height:48px;
		box-sizing:border-box;
		background-position:top 19px right 12px;
	}
}
.information-list-primary .list .more a:hover {
	background-color:#0d5fc6;
	color:#ffffff;
	background-image:url(../image/layout/ar_on.png);
}

.information-detail-primary {
	background-color:#FFFFFF;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.12);
    -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.12);
    -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.12);
	box-sizing:border-box;
	border-radius:10px;
	padding:30px;
	margin-bottom:30px;
}

.information-detail-primary h3 {
}

.information-detail-primary h3 span {
	display:inline-block;
	width:100px;
	height:32px;
	text-align:center;
	background-color:#ffffff;
	line-height:32px;
	font-size:13px;
	text-shadow:none;
	color:#0d5fc6;
	border-radius:3px;
	margin-right:20px;
}

.information-detail-primary p {
	padding-bottom:30px;
}

.information-detail-primary img {
	max-width:100%;
}

.plan-two-bana-title {
	font-family: 'FOT-AnitoStd-M';
	font-size:28px;
	color:#0d5fc6;
	margin-bottom:30px;
}

@media screen and (max-width: 920px) {
	.plan-two-bana-title br { display:none; }
}

@media screen and (max-width: 900px) {
	.plan-twobox .pc {
		display:none !important;
	}
	.plan-twobox .sp {
		display:block !important;
	}
}


/*----------------------------------------------------------------------------
   about
------------------------------------------------------------------------------*/

.about-panel01 {
	background-image:url(../image/contents/about/top-photo01.png);
	background-position:top right;
	background-repeat:no-repeat;
	min-height:492px;
	padding-top:90px;
	box-sizing:border-box;
}

@media screen and (max-width: 1000px) {
	.about-panel01 {
		background-image:url(../image/contents/about/top-photo01_sp.png);
	}
}
@media screen and (max-width: 700px) {
	.about-panel01 {
		background-image:url(../image/contents/about/top-photo01.png);
		background-position:top center;
		padding-top:547px;
	}
}

.about-panel01 img {
	margin-bottom:45px;
}

.about-panel01 p {
	width:520px;
	font-size:18px;
	margin:0;
	padding:0;
	font-family: 'NotoSerifCJKjp-Regular';
	text-shadow: 
		white 2px 0px,  white -2px 0px,
		white 0px -2px, white 0px 2px,
		white 2px 2px , white -2px 2px,
		white 2px -2px, white -2px -2px,
		white 1px 2px,  white -1px 2px,
		white 1px -2px, white -1px -2px,
		white 2px 1px,  white -2px 1px,
		white 2px -1px, white -2px -1px;
	line-height:34px;
}

@media screen and (max-width: 700px) {
	.about-panel01 p {
		width:100%;
	}
}

.about-panel02, .about-panel04 {
	background-color:#f6f6f6;
}

.about-panel {
	padding-top:70px;
	padding-bottom:70px;
}

.about-panel .point {
	position:absolute;
	top:-92px;
	left:0;
}

@media screen and (max-width: 1100px) {
	.about-panel .point {
		left:30px;
	}
}

.about-panel .point h4 {
	font-size:60px;
	color:#2871cc;
	margin:0;
	padding:0;
	display:block;
	position:absolute;
	top:58px;
	left:200px;
	font-family: 'NotoSerifCJKjp-Regular';
	font-weight:normal;
	white-space:nowrap;
	border:none !important;
}

.about-panel .point h4 br {
	display:none;
}

@media screen and (max-width: 1000px) {
	.about-panel .point h4 {
		font-size:50px;
	}
}
@media screen and (max-width: 900px) {
	.about-panel .point h4 {
		line-height:60px;
		top:56px;
	}
	.about-panel .point h4 br {
		display:block;
	}
}

.about-photo {
	margin-top:150px;
	float:left;
	margin-right:30px;
}

@media screen and (max-width: 1000px) {
	.about-photo {
		float:none !important;
		display:block;
		margin-left:auto !important;
		margin-right:auto !important;
		margin-top:0;
		padding-top:150px;
	}
}

.about-panel p {
	font-size:18px;
	font-family: 'NotoSerifCJKjp-Regular';
	margin:0;
	padding:0;
	padding-top:142px;
}

@media screen and (max-width: 1000px) {
	.about-panel p {
		padding-top:30px;
	}
}

.about-panel p img {
	margin-bottom:30px;
	max-width:100%;
	float:left;
}

@media screen and (max-width: 1000px) {
	.about-panel p img {
		float:none;
	}
}

.about-panel03 .about-photo {
	float:right;
	margin-left:30px;
	margin-right:0;
}

