@charset "UTF-8";
@import url(reset.css);
/*------------------------------------------
	fonts
-------------------------------------------*/
@font-face {
  font-family: "zen-kaku-gothic-antique";
  src:
    local("ZenKakuGothic"),
    url("../../fonts/ZenKakuGothicAntique-Light.woff") format("woff");
	font-weight: 300; 
	font-style: normal;
}
@font-face {
  font-family: "zen-kaku-gothic-antique";
  src:
    local("ZenKakuGothic"),
    url("../../fonts/ZenKakuGothicAntique-Regular.woff") format("woff");
	font-weight: 400; 
	font-style: normal;
}
@font-face {
  font-family: "zen-kaku-gothic-antique";
  src:
    local("ZenKakuGothic"),
    url("../../fonts/ZenKakuGothicAntique-Medium.woff") format("woff");
	font-weight: 500; 
	font-style: normal;
}
@font-face {
  font-family: "zen-kaku-gothic-antique";
  src:
    local("ZenKakuGothic"),
    url("../../fonts/ZenKakuGothicAntique-Bold.woff") format("woff");
	font-weight: 700; 
	font-style: normal;
}
@font-face {
  font-family: "zen-old-mincho";
  src:
    local("ZenOldMincho"),
    url("../../fonts/ZenOldMincho-Regular.woff") format("woff");
	font-weight: 400; 
	font-style: normal;
}
@font-face {
  font-family: "zen-old-mincho";
  src:
    local("ZenOldMincho"),
    url("../../fonts/ZenOldMincho-Medium.woff") format("woff");
	font-weight: 500; 
	font-style: normal;
}
@font-face {
  font-family: "zen-old-mincho";
  src:
    local("ZenOldMincho"),
    url("../../fonts/ZenOldMincho-SemiBold.woff") format("woff");
	font-weight: 600; 
	font-style: normal;
}
@font-face {
  font-family: "zen-old-mincho";
  src:
    local("ZenOldMincho"),
    url("../../fonts/ZenOldMincho-Bold.woff") format("woff");
	font-weight: 700; 
	font-style: normal;
}
@font-face {
  font-family: "zen-old-mincho";
  src:
    local("ZenOldMincho"),
    url("../../fonts/ZenOldMincho-Black.woff") format("woff");
	font-weight: 900; 
	font-style: normal;
}


/*------------------------------------------
	基本css
-------------------------------------------*/
* html body {
	background: url(null) fixed;
}
html, body {
	width: 100%;
	height: auto;
}
html {
	scroll-behavior: smooth;
	font-size: 10px;
}
body {
	position: relative;
	margin: 0;
	padding: 0;
	font-family: "zen-old-mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #222;
	letter-spacing: 0.1em;
	background-color: #FFFFFF;
	-webkit-text-size-adjust: 100%;
}

img {
	width: 100%;
	height: auto;
	object-fit: cover;
	-webkit-backface-visibility: hidden;
}
/*------------------------------------------
  画像の長押し保存・選択の無効化
-------------------------------------------*/
img {
    -webkit-touch-callout: none; /* iOS Safariの長押しメニューを無効化 */
    -webkit-user-select: none;   /* 選択ハイライトを無効化 */
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;     /* ドラッグの無効化 */
}
*:focus {
	outline: none;
}
input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}
a {
	position: relative;
	display: block;
	color: #000;
	text-decoration: none;
	transition: all ease-out 0.6s ;
}
a:hover {
	text-decoration: none;
	opacity: 0.6;
	transition: all ease-out 0.4s ;
}
a img:hover {
	text-decoration: none;
	opacity: 0.6;
	transition: 0.4s;
}
.pcnone {
	display: none!important;
}
@media screen and (max-width: 896px) {
	.spnone {
		display: none!important;
	}
	.pcnone {
		display: block!important;
	}
}

/*------------------------------------------
	general
-------------------------------------------*/
.home h2 {
	font-family: "futura-pt", sans-serif;
}
.u-mgb-10 {
	margin-bottom: 10px;
}
.u-mgb-20 {
	margin-bottom: 20px;
}
.u-mgb-30 {
	margin-bottom: 30px;
}
.u-mgb-40 {
	margin-bottom: 40px;
}
@media screen and (max-width: 896px) {
	.u-mgb-50 {
		margin-bottom: 30px;
	}
}
.u-mgb-60 {
	margin-bottom: 60px;
}
@media screen and (max-width: 896px) {
	.u-mgb-60 {
		margin-bottom: 40px;
	}
}
.u-mgb-70 {
	margin-bottom: 70px;
}

.u-mgb-80 {
	margin-bottom: 80px;
}
@media screen and (max-width: 896px) {
	.u-mgb-80 {
		margin-bottom: 40px;
	}
}
.u-mgb-90 {
	margin-bottom: 90px;
}
.u-mgb-100 {
	margin-bottom: 100px;
}
.u-flex_sb {
	display: flex;
	justify-content: space-between;
}

/*--flex box--*/
.flex_wrapper {
	display: flex;
}
.u-flex_rw_f-star {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}
.u-flex_rrw_f-star {
	display: flex;
	flex-flow: row-reverse wrap;
	justify-content: flex-start;
}
.u-flex_rw_f-end {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
}
.u-flex_rrw_f-end {
	display: flex;
	flex-flow: row-reverse wrap;
	justify-content: flex-end;
}
.u-flex_rw_cent {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}
.u-flex_nw_s-bet {
	display: flex;
	justify-content: space-between;
}
.u-flex_rw_s-bet {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.u-flex_rrw_s-bet {
	display: flex;
	flex-flow: row-reverse wrap;
	justify-content: space-between;
}


/*------------------------------------------
fadein
-------------------------------------------*/
.fadein {
 opacity: 0;
 -webkit-transition: all 3s;
 -moz-transition: all 3s;
 -o-transition: all 3s;
 -ms-transition: all 3s;
 transition: all 3s;
 transform: translateY(100px);
}
@media screen and (max-width: 896px) {
	.fadein {
	 opacity: 0;
	 -webkit-transition: all 2s;
	 -moz-transition: all 2s;
	 -o-transition: all 2s;
	 -ms-transition: all 2s;
	 transition: all 2s;
	 transform: translateY(100px);
	}
}

.fade_on {
 opacity: 1;
 transform: translateY(0px);
}


/*------------------------------------------
header_navi
-------------------------------------------*/
header {
	position: fixed;
	margin: 0 auto;
	padding: 20px 0;
	width: 100%;
	background: rgba(255,255,255,0.80);
	z-index: 999;
}
header .nav_wrapper  {
	margin: 0 auto;
	max-width: 1250px;
	width: 90%;
	height: auto;
	align-items: center;
	z-index: 999;
}
.nav_wrapper .header_logo {
	margin: 0 auto;
	width: 220px;
	
}
.nav_wrapper .header_logo {
	width: 220px;
	height: auto;
}
@media screen and (max-width: 896px) {
	.nav_wrapper .header_logo {
		padding-top: 3px;
		width: 180px;
		height: 50px;
	}
	.nav_wrapper .header_logo img {
		vertical-align: middle;
	}
}
.nav_wrapper .global_menu ul li a {
	padding: 0 25px 0 0;
	color: #222;
	line-height: 55px;
}
@media screen and (max-width: 896px) {
	.nav_wrapper .global_menu ul li a {
		padding: 0 25px;
		color: #222;
		line-height: 55px;
	}
}
.nav_wrapper .global_menu ul li a.active {
	color: #00b3d6;
}

/*----ハンバーガーメニュー-----*/
header #h_btn {
	position: absolute;
	display: block;
	width: 30px;
	height: 20px;
	top: 50%;
	right: 40px;
	pointer-events: auto;
	box-sizing: border-box;
	z-index: 50;
	transform: translateY(-50%);
}
#h_btn .h_bar,
#h_btn .h_bar span {
  display: block;
  transition: all .4s;
  box-sizing: border-box;
}
header #h_btn .h_bar {
  position: relative;
  width: 30px;
  height: 22px;
}
header #h_btn .h_bar span {
  position: absolute;
  width: 100%;
  height: 4px;
  right: 0;
  font-weight: bold;
  background-color: #222;
}
@media screen and (max-width: 896px) {
	header #h_btn .h_bar span {
	  position: absolute;
	  width: 100%;
	  height: 2px;
	  right: 0;
	  font-weight: bold;
	  background-color: #222;
	}
}
header #h_btn .h_bar span:first-child {
  top: 0;
}
header #h_btn .h_bar span:nth-child(2) {
  top: 10px;
}
header #h_btn .h_bar span:last-child {
  bottom: 0;
}
header #h_btn.active .h_bar span {
  width: 30px;
  background: #222;
}
header #h_btn.active .h_bar span:first-child {
  transform: translateY(10px) rotate(-315deg);
}
header #h_btn.active .h_bar span:nth-child(2) {
  opacity: 0;
}
header #h_btn.active .h_bar span:last-child {
  transform: translateY(-10px) rotate(315deg);
}
header #h_content {
	position: fixed;
	padding: 100px 10%;
	right: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(246,248,244,0.9);
	pointer-events: auto;
	transition: all 0.4s;
	transform: translateX(100%);
	opacity: 0;
	z-index: 30;
}
header #h_content.active {
  transform: translateX(0px);
  transition: all 0.8s;
  opacity: 1;
}
header #h_content .nav_inner {
  position: absolute;
  margin: 0 auto;
  width: 50%;
  height: auto;
  display: block;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateY(-50%);
}
header #h_content .nav_inner li {
  position: relative;
  margin-bottom: 40px;
}
header #h_content .nav_inner li a {
  color: #222;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 26px;
  white-space: nowrap;
}
header #h_content .nav_inner li a::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 1px;
  background: #222;
  transform: scale(0, 1);
  transform-origin: center left;
  transition: transform .8s;
}
header #h_content .nav_inner li a:hover::after {
  transform: scale(1, 1);
  transition: transform .4s;
}
header #h_content .nav_inner li:last-child {
  margin-bottom: 0;
}
header #h_content .nav_inner a {
  display: inline-block;
  text-decoration: none;
}

/*------------------------------------------
footer
-------------------------------------------*/
footer section:nth-of-type(1) {
	background: #00b3d6;
}
footer section:nth-of-type(2) {
	background: rgba(71,74,91,1.00);
}
footer section:nth-of-type(2) > .inner {
	padding: 40px 10px;
}
footer .inner {
	margin: 0 auto 0!important;
	padding: 40px 0;
	display: flex;
	max-width: 1250px;
	width: 90%;
	justify-content: space-between;
	align-items: center;
	color: #fff;
}
footer .inner .footer_logo {
	width: 200px;
	height: auto;
}
footer .inner .footer_nav ul {
	display: flex;
	flex-flow: row wrap;
}
footer .inner .footer_nav ul li {
	padding: 5px 0;
	display: inline-block;
}
@media screen and (max-width: 896px) {
	footer .inner .footer_nav ul li {
		padding: 5px 0;
	
	}
}
footer .inner .footer_nav ul li a {
	padding-left: 20px;
	color: #fff;
}
@media screen and (max-width: 896px) {
	footer .inner .footer_nav ul li a {
		padding-left: 0;
		color: #fff;
	}
}
footer .inner {
	padding: 20px 0;
	margin: 0 auto;
	display: flex;
	max-width: 1170px;
	width: 90%;
	justify-content: space-between;
}
@media screen and (max-width: 896px) {
	footer .inner {
		padding: 40px 0;
		margin: 0 auto;
		display: block;
		max-width: 1170px;
		width: 90%;
	}
}
@media screen and (max-width: 896px) {
	footer .footer_logo {
		margin: 0 auto 20px;
	}
}
footer .inner .footer_nav ul {
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	align-items: center;
	align-self: center;
}
@media screen and (max-width: 896px) {
	footer .inner .footer_nav ul {
		display: block;
	}
}
footer .inner .footer_nav ul li {
	padding: 5px 10px;
	display: inline-block;
}
@media screen and (max-width: 896px) {
	footer .inner .footer_nav ul li {
		margin-bottom: 5px;
		max-width:80%;
		display: block;
	}
}
footer .inner .footer_nav ul li a {
	color: #fff;
}
@media screen and (max-width: 896px) {
footer .inner .footer_nav ul li a {
		color: #fff;
	}
}
/*
.page-template-page-test_top_page footer .inner,
.page-template-page-contact footer .inner {
	margin: 0 auto;
	padding: 20px 0;
	max-width: 1170px;
	width: 90%;
	display: flex;
	justify-content: space-between;
}
.page-template-page-test_top_page footer .inner h2,
.page-template-page-contact footer .inner h2 {
	margin-right: 10px;
	font-size: 2.8rem;
	font-weight: bold;
	display: flex;
	align-self: center;
	align-items: center;
}
.page-template-page-test_top_page footer .inner h2 span,
.page-template-page-contact footer .inner h2 span {
	font-size: 1.8rem;
	font-weight: bold;
}
.page-template-page-test_top_page footer .inner .text_wrapper,
.page-template-page-contact .inner .text_wrapper {
	padding-left: 20px;
	font-size: 1.8rem;
	font-weight: bold;
	border-left: 2px solid #222;
}
.page-template-page-test_top_page footer .inner .text_wrapper .add,
.page-template-page-contact .inner .text_wrapper .add {
	font-weight: bold;
}
@media screen and (max-width: 896px) {
	.page-template-page-test_top_page footer .inner,
	.page-template-page-contact .inner {
		margin: 0 auto;
		padding: 20px 0;
		max-width: 1170px;
		width: 90%;
		display: block;
		justify-content: space-between;
	}
	.page-template-page-test_top_page footer .inner h2,
	.page-template-page-contact .inner h2 {
		margin-right: 10px;
		font-size: 2.8rem;
		font-weight: bold;
		display: flex;
		align-self: center;
		align-items: center;
	}
	.page-template-page-test_top_page footer .inner h2 span,
	.page-template-page-contact .inner h2 span {
		font-size: 1.8rem;
		font-weight: bold;
	}
	.page-template-page-test_top_page footer .inner .text_wrapper,
	.page-template-page-contact .inner .text_wrapper {
		padding-left: 0;
		font-size: 1.8rem;
		font-weight: bold;
		border-left: none;
	}
	.page-template-page-test_top_page footer .inner .text_wrapper .add,
	.page-template-page-contact .inner .text_wrapper .add {
		font-weight: bold;
	}
}*/

/*------------------------------------------
サブページヘッダー
-------------------------------------------*/
.page-header .header_inner {
	position: relative;
	margin: 0 auto;
	padding: 80px 0;
	max-width: 1250px;
	width: 90%;
	z-index: 2;
}
.page-header .page-title {
	font-size: clamp(2.5rem, 3.3vw, 4rem);
    font-weight: 500;
	color: #fff;
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-shadow: 0 0 10px rgba(0,0,0,0.8);
}

.home .sec-title-mincho {
	font-family: "zen-old-mincho", serif;
}
/*------------------------------------------
サブページ
-------------------------------------------*/
.btn-gray {
	background: #8B8989!important;
}
/*------------------------------------------
サブページ
-------------------------------------------*/
.page-template-page-test_top_page .wp_content_wrapper {
	margin: 0 auto;
	padding: 200px 0 200px;
	max-width: 900px;
	width: 90%;
	height: auto;
	min-height: 100vh;
	text-align: center;
	font-size: 2.0rem;
}
.page-template-page-test_top_page .wp_content_wrapper p {
	margin-bottom: 20px
}
@media screen and (max-width: 896px) {
	.page-template-page-test_top_page .wp_content_wrapper {
		margin: 0 auto;
		padding: 200px 0 200px;
		max-width: 900px;
		width: 90%;
		height: auto;
		text-align: left;
		font-size: 2.0rem;
	}
	
}
.page-template-page-test_top_page .wp_content_wrapper a {
	display: inline-block;
	color: blue;
	text-decoration: underline;
}
.page-template-page-contact .main_contents {
	padding-top: 100px;
}
