@charset 'UTF-8';
/*normalize: http://necolas.github.io/normalize.css/*/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
	display: block;
}
/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,canvas,video{
	display: inline-block;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]){
	display: none;
	height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],template{
	display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html{
	font-family: sans-serif; /* 1 */

	-webkit-text-size-adjust: 100%; /* 2 */
	    -ms-text-size-adjust: 100%; /* 2 */
}
/**
 * Remove default margin.
 */
body{
	margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a{
	background: transparent;
}
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus{
	outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,a:hover{
	outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1,h2,h3,h4,p{
	font-size: 1em;
	font-weight: 400;
	margin: 0;
}
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title]{
	border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,strong,.strong{
	font-weight: bold;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn,em,.em{
	font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr{
	box-sizing: content-box;
	height: 0;
}
/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p{
	-webkit-hyphens: auto;
	        hyphens: auto;

	-epub-hyphens: auto;
	    -ms-hyphens: auto;
}
/*
 * Addresses margins set differently in IE6/7.
 */
pre{
	margin: 0;
}
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,kbd,pre,samp{
	font-family: monospace, serif;
	font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre{
	white-space: pre-wrap;
}
/**
 * Set consistent quote types.
 */
q{
	quotes: '\201C' '\201D' '\2018' '\2019';
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,q:after{
	content: '';
	content: none;
}
small,.small{
	font-size: 75%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup{
	top: -.5em;
}
sub{
	bottom: -.25em;
}
/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,menu,ol,ul{
	margin: 0;
}
dd{
	margin: 0;
}
/*
 * Addresses paddings set differently in IE6/7.
 */
menu{
	padding: 0 0 0 40px;
}
ol,ul{
	padding: 0;
	list-style-type: none;
}
/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,nav ol{
	list-style: none;
	list-style-image: none;
}
/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img{
	border: 0;
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root){
	overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure{
	margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset{
	margin: 0 2px;
	padding: .35em .625em .75em;
	border: 1px solid #c0c0c0;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend{
	padding: 0; /* 2 */
	border: 0; /* 1 */
}
/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,input,select,textarea{
	font-family: inherit; /* 1 */
	font-size: 100%; /* 2 */
	margin: 0; /* 3 */
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,input{
	line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,select{
	text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,html input[type='button'],/* 1 */
input[type='reset'],input[type='submit']{
	cursor: pointer; /* 3 */

	-webkit-appearance: button; /* 2 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],html input[disabled]{
	cursor: default;
}
/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type='checkbox'],input[type='radio']{
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type='search']{
	box-sizing: content-box;

	-webkit-appearance: textfield; /* 1 */ /* 2 */
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type='search']::-webkit-search-cancel-button,input[type='search']::-webkit-search-decoration{
	-webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea{
	overflow: auto; /* 1 */
	vertical-align: top; /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table{
	border-spacing: 0;
	border-collapse: collapse;
}
*{
	box-sizing: border-box;
}
*:before,*:after{
	box-sizing: border-box;
}
.image-replacement,.ir{
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}
.clearfix,.cf{
	zoom: 1;
}
.clearfix:before,.clearfix:after,.cf:before,.cf:after{
	display: table; 
	content: '';
}
.clearfix:after,.cf:after{
	clear: both;
}
/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp{
	font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
	font-style: italic;
}
:root{
	--color: #171310;
	/*イージング*/
	--easeInOutSine: cubic-bezier(.445, .050, .550, .950);
	--vh: 1vh;
}
/* ==========================================================================
  アニメーション
========================================================================== */
@-webkit-keyframes fadeIn{
	0%{
		display: block;
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes fadeIn{
	0%{
		display: block;
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@-webkit-keyframes fadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}
@keyframes fadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}
/* ==========================================================================
  home
========================================================================== */
@-webkit-keyframes mainText{
	0%{
		transform: translateX(100px);
		opacity: 0;
	}
	100%{
		transform: translateX(0);
		opacity: 1;
	}
}
@keyframes mainText{
	0%{
		transform: translateX(100px);
		opacity: 0;
	}
	100%{
		transform: translateX(0);
		opacity: 1;
	}
}
@-webkit-keyframes serifu{
	0%{
		opacity: 1;
	}
	1%{
		opacity: 1;
	}
	66%{
		opacity: 1;
	}
	67%{
		opacity: 0;
	}
	0%{
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}
@keyframes serifu{
	0%{
		opacity: 1;
	}
	1%{
		opacity: 1;
	}
	66%{
		opacity: 1;
	}
	67%{
		opacity: 0;
	}
	0%{
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}
@-webkit-keyframes obj1{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1255px, 788px);
		opacity: 0;
	}
}
@keyframes obj1{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1255px, 788px);
		opacity: 0;
	}
}
@-webkit-keyframes obj2{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1306px, 818px);
		opacity: 0;
	}
}
@keyframes obj2{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1306px, 818px);
		opacity: 0;
	}
}
@-webkit-keyframes obj5{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-867px, -540px);
		opacity: 0;
	}
}
@keyframes obj5{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-867px, -540px);
		opacity: 0;
	}
}
@-webkit-keyframes obj7{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(903px, -647px);
		opacity: 0;
	}
}
@keyframes obj7{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(903px, -647px);
		opacity: 0;
	}
}
@-webkit-keyframes obj8{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-1200px, 864px);
		opacity: 0;
	}
}
@keyframes obj8{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-1200px, 864px);
		opacity: 0;
	}
}
@-webkit-keyframes obj11{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1003px, 635px);
		opacity: 0;
	}
}
@keyframes obj11{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1003px, 635px);
		opacity: 0;
	}
}
@-webkit-keyframes obj14{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(902px, 568px);
		opacity: 0;
	}
}
@keyframes obj14{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(902px, 568px);
		opacity: 0;
	}
}
@-webkit-keyframes obj15{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-867px, -540px);
		opacity: 0;
	}
}
@keyframes obj15{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-867px, -540px);
		opacity: 0;
	}
}
@-webkit-keyframes obj18{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-1344px, 965px);
		opacity: 0;
	}
}
@keyframes obj18{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(-1344px, 965px);
		opacity: 0;
	}
}
@-webkit-keyframes obj21{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1030px, 647px);
		opacity: 0;
	}
}
@keyframes obj21{
	0%{
		transform: translate(0);
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	90%{
		opacity: 1;
	}
	100%{
		transform: translate(1030px, 647px);
		opacity: 0;
	}
}
@-webkit-keyframes obj1Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(108.75vw, 67.08333vw);
	}
}
@keyframes obj1Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(108.75vw, 67.08333vw);
	}
}
@-webkit-keyframes obj5Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-118.54167vw, -73.75vw);
	}
}
@keyframes obj5Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-118.54167vw, -73.75vw);
	}
}
@-webkit-keyframes obj7Sp{
	0%{
		transform: translate(-100%,-100%);
	}
	100%{
		transform: translate(119.16667vw, -84.58333vw);
	}
}
@keyframes obj7Sp{
	0%{
		transform: translate(-100%,-100%);
	}
	100%{
		transform: translate(119.16667vw, -84.58333vw);
	}
}
@-webkit-keyframes obj9Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-108.75vw, 77.08333vw);
	}
}
@keyframes obj9Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-108.75vw, 77.08333vw);
	}
}
@-webkit-keyframes obj15Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-118.54167vw, -73.95833vw);
	}
}
@keyframes obj15Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-118.54167vw, -73.95833vw);
	}
}
@-webkit-keyframes obj18Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-107.08333vw, 75.83333vw);
	}
}
@keyframes obj18Sp{
	0%{
		transform: translate(0);
	}
	100%{
		transform: translate(-107.08333vw, 75.83333vw);
	}
}
/* ==========================================================================
   共通設定
========================================================================== */
html{
	font-size: 62.5%;
	overflow-y: scroll;

	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}
body{
	font-family: 'Noto Sans','Noto Sans CJK JP','Noto Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','游ゴシック', '游ゴシック体','メイリオ',Meiryo,sans-serif;
	font-size: 1.6rem;
	line-height: 1.4;
	overflow: hidden;
	width: 100%;
	min-width: 1236px;
	text-align: justify;
	text-justify: inter-ideograph;
	color: #171310;
	color: var(--color);

	font-feature-settings: 'pkna';
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;

	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
}
a{
	text-decoration: none;
	color: #171310;
	color: var(--color);
}
a:hover{
	opacity: .8;
}
.spShow{
	display: none;
}
.pcShow{
	display: inline-block;
}
.container{
	display: -ms-grid;
	display:     grid;
	min-height: 100vh;

	-ms-grid-columns: 100%;
	-ms-grid-rows: 63px 1fr auto;
	grid-template: 'header' 63px
	'pageContainer' 1fr
	'footer' auto / 100%;
}
.header{
	position: relative;
	z-index: 2;

	grid-area: header;
	-ms-grid-column: 1;
	-ms-grid-row: 1;
}
.pageContainer{
	position: relative;
	z-index: 2;

	grid-area: pageContainer;
	-ms-grid-column: 1;
	-ms-grid-row: 2;
}
.footer{
	grid-area: footer;
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}
button{
	padding: 0;
	border: none;
	outline: none;
	background: none;
}
button:focus{
	outline: none;
}
button:hover{
	opacity: .8;
}
.anchor{
	display: block;
	margin-top: -100px;
	padding-top: 100px;
}
/* ==========================================================================
   ヘッダー
========================================================================== */
.header{
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 1236px;
	height: 63px;
	padding: 0 30px 0 50px;
}
.header .logo{
	max-width: 1325px;
	margin: 0 auto;
	padding: 13px 0 0;
}
.header .menuBtn{
	position: absolute;
	top: 20px;
	right: 27px;
}
/* ==========================================================================
   グローバルナビ
========================================================================== */
.gNav{
	font-size: 2.0rem;
	position: fixed;
	z-index: 1000;
	top: 0;
	right: 0;
	display: none;
	width: 380px;
	padding: 110px 55px 60px;
	background: #fff;
}
.gNav .menuBtnClose{
	position: absolute;
	top: 16px;
	right: 30px;
	display: block;
	width: 28px;
}
.gNav .menuBtnClose button{
	line-height: 1;
	display: block;
}
.gNav .menuLink li{
	font-weight: 500;
	line-height: 1;
}
.gNav .menuLink li+li{
	margin-top: 35px;
}
.gNav .sns{
	display: flex;
	max-width: 191px;
	margin: 75px auto 0;

	justify-content: space-between;
}
.gNav .sns li{
	flex: 0 1 48px;
}
.navOpen{
	display: block;
	-webkit-animation: fadeIn .6s linear 0s 1 forwards;
	        animation: fadeIn .6s linear 0s 1 forwards;
	opacity: 1;
}
.navClose{
	-webkit-animation: fadeOut .4s linear 0s 1 forwards;
	        animation: fadeOut .4s linear 0s 1 forwards;
}
/* ==========================================================================
   footer
========================================================================== */
.footer{
	position: relative;
	z-index: 10;
	display: -ms-grid;
	display:     grid;
	margin-top: 127px;
	padding: 35px 0 120px;
	border-top: 15px solid #eee;
	background: #f9f9f9;

	-ms-grid-columns: 60px 1fr 191px 1fr 60px;
	-ms-grid-rows: 80px 1fr;
	grid-template-columns: 60px 1fr 191px 1fr 60px;
	grid-template-rows: 80px 1fr;
}
.footer::before{
	contain: '';
	-ms-grid-column: 1;
	    grid-column: 1;
	-ms-grid-row: 1;
	    grid-row: 1 / 3;
	-ms-grid-row-span: 2;
}
.footer::after{
	contain: '';
	-ms-grid-column: 5;
	    grid-column: 5;
	-ms-grid-row: 1;
	    grid-row: 1 / 3;
	-ms-grid-row-span: 2;
}
.footer .footerLogo{
	-ms-grid-column: 1;
	    grid-column: 1 / 6;
	-ms-grid-column-align: center;
	-ms-grid-column-span: 5;
	-ms-grid-row: 1;
	    grid-row: 1;
	justify-self: center;
}
.footer .footerLogo::before{
	position: absolute;
	top: -15px;
	left: 50%;
	width: 466px;
	height: 15px;
	content: '';
	transform: translateX(-50%);
	background: #ddd;
}
.footer .footerLink{
	-ms-grid-column: 2;
	    grid-column: 2;
	-ms-grid-row: 2;
	    grid-row: 2;
}
.footer .footerLink li{
	font-size: 1.6rem;
	line-height: 1;
}
.footer .footerLink li+li{
	margin-top: 20px;
}
.footer .footerSns{
	display: flex;
	width: 100%;

	align-self: center;
	-ms-grid-column: 3;
	    grid-column: 3;
	-ms-grid-column-align: center;
	-ms-grid-row: 2;
	    grid-row: 2;
	-ms-grid-row-align: center;
	justify-content: space-between;
	justify-self: center;
}
.footer .footerSns li{
	flex: 0 1 48px;
}
.footer .copyright{
	font-size: 1.2rem;
	padding-right: 125px;

	align-self: center;
	-ms-grid-column: 4;
	    grid-column: 4;
	-ms-grid-column-align: end;
	-ms-grid-row: 2;
	    grid-row: 2;
	-ms-grid-row-align: center;
	justify-self: end;
}
/* ==========================================================================
   home
========================================================================== */
.homePage .mainText{
	position: relative;
	z-index: 10;
	max-width: 1236px;
	margin: 0 auto;
	padding: 252px 0 0 33px;
}
.homePage .mainText p{
	line-height: 1;
	-webkit-animation: mainText 1.2s 1 0s linear forwards;
	        animation: mainText 1.2s 1 0s linear forwards;
}
.homePage .mainText .text1{
	margin-bottom: 23px;
}
.homePage .roadBlock{
	position: relative;
	max-width: 1236px;
	margin: 0 auto;
}
.homePage .roadBlock::before{
	position: absolute;
	z-index: -1;
	width: 90vw;
	min-width: 1300px;
	content: '';
}
.homePage .obj{
	position: absolute;
	z-index: 1;
}
.homePage .roadBlock1{
	margin-bottom: 490px;
}
.homePage .roadBlock1::before{
	top: -83px;
	left: 90px;
	height: 880px;
	background: url('../../img/road_bk1.png') no-repeat left bottom;
}
.homePage .roadBlock1 .obj1{
	z-index: 2;
	top: 121px;
	left: -64px;
	width: 64px;
	-webkit-animation: obj1 12s infinite 0s linear both;
	        animation: obj1 12s infinite 0s linear both;
}
.homePage .roadBlock1 .obj2{
	top: 43px;
	left: -7px;
	width: 44px;
	-webkit-animation: obj2 28s infinite 0s linear both;
	        animation: obj2 28s infinite 0s linear both;
}
.homePage .roadBlock1 .obj3{
	top: 77px;
	left: -72px;
	width: 72px;
	-webkit-animation: obj2 20s infinite 1s linear both;
	        animation: obj2 20s infinite 1s linear both;
}
.homePage .roadBlock1 .obj4{
	top: 85px;
	left: -71px;
	width: 71px;
	-webkit-animation: obj2 20s infinite 2.5s linear both;
	        animation: obj2 20s infinite 2.5s linear both;
}
.homePage .secBox{
	z-index: 10;
	max-width: 449px;
	background: #fff;
}
.homePage .secBox>h2{
	line-height: 1;
	position: relative;
	text-align: center;
}
.homePage .secBox>h2::before{
	position: absolute;
	top: -47px;
	left: 50%;
	width: 28px;
	height: 33px;
	content: '';
	transform: translateX(-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.homePage .philosophy{
	position: relative;
	max-width: 449px;
	min-height: 548px;
	padding: 43px 44px;
	background: #fff;
	box-shadow: 10px 10px 0 #99cdd6;
}
.homePage .philosophy>h2{
	line-height: 1;
	margin-bottom: 27px;
	text-align: center;
}
.homePage .philosophy>h2::before{
	background-image: url('../../img/pin1.png');
}
.homePage .philosophy>h2::after{
	display: block;
	width: 360px;
	height: 134px;
	margin: 15px auto 0;
	content: '';
	background: url('../../img/philosophy_img.jpg') no-repeat center center;
	background-size: contain;
}
.homePage .philosophy dl{
	font-size: 1.8rem;
	line-height: 1.4;
}
.homePage .philosophy dl dt{
	font-weight: bold;
	color: #86a728;
}
.homePage .philosophy dl dt:not(:first-child){
	margin-top: 1em;
}
.homePage .philosophy .serifuAnime{
	position: absolute;
	top: 121px;
	left: 498px;
	width: 290px;
}
.homePage .philosophy .serifuAnime .serifu{
	position: absolute;
	top: 17px;
	right: 74px;
	width: 48px;
	-webkit-animation: serifu 3s infinite 0s linear both;
	        animation: serifu 3s infinite 0s linear both;
}
.homePage .roadBlock2{
	margin-bottom: 333px;
}
.homePage .roadBlock2::before{
	top: -340px;
	right: 312px;
	width: 90vw;
	height: 1670px;
	background: url('../../img/road_bk2.png') no-repeat right top;
}
.homePage .roadBlock2 .obj5{
	z-index: 2;
	top: 99px;
	left: 867px;
	width: 146px;
	-webkit-animation: obj5 8s infinite 0s linear both;
	        animation: obj5 8s infinite 0s linear both;
}
.homePage .roadBlock2 .obj6{
	z-index: 2;
	top: 910px;
	left: -51px;
	width: 55px;
	-webkit-animation: obj7 20s infinite 0s linear both;
	        animation: obj7 20s infinite 0s linear both;
}
.homePage .roadBlock2 .obj7{
	z-index: 2;
	top: 907px;
	left: -25px;
	width: 153px;
	-webkit-animation: obj7 8s infinite 0s linear both;
	        animation: obj7 8s infinite 0s linear both;
}
.homePage .about{
	position: relative;
	max-width: 449px;
	min-height: 518px;
	margin: 0 0 0 auto;
	padding: 43px 48px;
	background: #fff;
	box-shadow: 10px 10px 0 #c9b846;
}
.homePage .about>h2{
	line-height: 1;
	margin-bottom: 35px;
	text-align: center;
}
.homePage .about>h2::before{
	background-image: url('../../img/pin2.png');
}
.homePage .about ul{
	font-size: 1.8rem;
	line-height: 1.9;
	padding: 0 5px;
}
.homePage .about li{
	display: flex;

	align-items: center;
}
.homePage .about li::before{
	width: 20px;
	height: 16px;
	margin-right: 10px;
	content: '';
	background: url('../../img/check.png') no-repeat center center;
}
.homePage .about p{
	font-size: 1.8rem;
	line-height: 1.4;
	margin-top: 1.5em;
}
.homePage .about .serifuAnime{
	position: absolute;
	top: 157px;
	left: -397px;
	width: 290px;
}
.homePage .about .serifuAnime .serifu1{
	position: absolute;
	top: -61px;
	left: 105px;
	width: 44px;
	-webkit-animation: serifu 3s infinite 0s linear both;
	        animation: serifu 3s infinite 0s linear both;
}
.homePage .about .serifuAnime .serifu2{
	position: absolute;
	top: 9px;
	left: 229px;
	width: 48px;
	-webkit-animation: serifu 3s infinite 1s linear both;
	        animation: serifu 3s infinite 1s linear both;
}
.homePage .roadBlock3{
	margin-bottom: 351px;
}
.homePage .roadBlock3::before{
	z-index: 1;
	top: -676px;
	left: 226px;
	width: 90vw;
	height: 1572px;
	background: url('../../img/road_bk3.png') no-repeat left top;
}
.homePage .roadBlock3 .inner{
	position: relative;
}
.homePage .roadBlock3 .obj8{
	z-index: 2;
	top: -488px;
	right: -96px;
	width: 46px;
	-webkit-animation: obj8 33s infinite 0s linear both;
	        animation: obj8 33s infinite 0s linear both;
}
.homePage .roadBlock3 .obj9{
	z-index: -1;
	top: -521px;
	right: -45px;
	width: 69px;
	-webkit-animation: obj8 20s infinite 4s linear both;
	        animation: obj8 20s infinite 4s linear both;
}
.homePage .roadBlock3 .obj10{
	z-index: -1;
	top: -521px;
	right: -45px;
	width: 53px;
	-webkit-animation: obj8 20s infinite 1s linear both;
	        animation: obj8 20s infinite 1s linear both;
}
.homePage .roadBlock3 .obj11{
	z-index: -1;
	top: 326px;
	left: 214px;
	width: 61px;
	-webkit-animation: obj11 20s infinite 9s linear both;
	        animation: obj11 20s infinite 9s linear both;
}
.homePage .roadBlock3 .obj12{
	z-index: -1;
	top: 375px;
	left: 216px;
	width: 71px;
	-webkit-animation: obj11 20s infinite 4s linear both;
	        animation: obj11 20s infinite 4s linear both;
}
.homePage .roadBlock3 .obj13{
	z-index: -1;
	top: 364px;
	left: 210px;
	width: 55px;
	-webkit-animation: obj11 20s infinite 0s linear both;
	        animation: obj11 20s infinite 0s linear both;
}
.homePage .service{
	position: absolute;
	position: relative;
	top: 0;
	left: 0;
	width: -webkit-fit-content;
	width:    -moz-fit-content;
	width:         fit-content;
	max-width: 1000px;
	height: 578px;
	border: 1px solid #ccc;
	background: #fff;
	box-shadow: 10px 10px 0 #dd9074;
}
.homePage .service>h2{
	line-height: 1;
	position: absolute;
	z-index: 10;
	top: 44px;
	left: 0;
	width: 449px;
	text-align: center;
	background: #fff;
}
.homePage .service>h2 img{
	position: relative;
	z-index: 2;
}
.homePage .service>h2::before{
	z-index: 2;
	width: 100%;
	background-image: url('../../img/pin3.png');
}
.homePage .service>h2::after{
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 99px;
	content: '';
	background: #fff;
}
.homePage .service .slideWall{
	position: relative;
	width: 449px;
}
.homePage .service .slideWall .swiper-button-next,.homePage .service .slideWall .swiper-button-prev{
	top: 230px;
	width: 60px;
	height: 60px;
	margin: 0;
}
.homePage .service .slideWall .swiper-button-next::after,.homePage .service .slideWall .swiper-button-prev::after{
	display: none;
}
.homePage .service .slideWall .swiper-button-next:focus,.homePage .service .slideWall .swiper-button-prev:focus{
	outline: none;
}
.homePage .service .slideWall .swiper-button-next{
	right: -28px;
	background: url('../../img/slide_next.png') no-repeat center center;
}
.homePage .service .slideWall .swiper-button-prev{
	left: -28px;
	background: url('../../img/slide_prev.png') no-repeat center center;
}
.homePage .service .swiper-slide{
	overflow: hidden;
}
.homePage .service .slideInnerSec{
	display: -ms-grid;
	display:     grid;

	-ms-grid-columns: 449px 551px;
	-ms-grid-rows: auto 1fr;
	grid-template-columns: 449px 551px;
	grid-template-rows: auto 1fr;
}
.homePage .service .slideInnerSec .aboutService{
	padding: 125px 50px 0;

	-ms-grid-column: 1;
	    grid-column: 1;
	-ms-grid-row: 1;
	    grid-row: 1;
}
.homePage .service .slideInnerSec .aboutService h2{
	line-height: 1;
	margin-bottom: 5px;
	text-align: center;
}
.homePage .service .slideInnerSec .aboutService p{
	font-size: 1.8rem;
	line-height: 1.4;
	margin-bottom: 30px;
}
.homePage .service .slideInnerSec .aboutService2{
	padding-top: 110px;
}
.homePage .service .slideInnerSec .btnBox{
	position: relative;
	width: 300px;
	height: 43px;
	margin: 0 auto 0;

	-ms-grid-column: 1;
	    grid-column: 1;
	-ms-grid-row: 2;
	    grid-row: 2;
}
.homePage .service .slideInnerSec .btnBox .btn{
	font-size: 1.6rem;
	line-height: 38px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 38px;
	text-align: center;
	color: #fff;
	background-image: url('../../img/btn_arrow.png');
	background-repeat: no-repeat;
	background-position: 275px center;
	box-shadow: 5px 5px 0 #ddd;
}
.homePage .service .slideInnerSec .btnBox .slideOpenBtn{
	background-color: #86a728;
}
.homePage .service .slideInnerSec .btnBox .serviceSite{
	display: none;
	background-color: #00b2b2;
}
.homePage .service .slideInnerSec .hideBox{
	position: relative;
	padding: 93px 50px 30px 0;
	opacity: 0;

	-ms-grid-column: 2;
	    grid-column: 2;
	-ms-grid-row: 1;
	    grid-row: 1 / 3;
	-ms-grid-row-span: 2;
}
.homePage .service .slideInnerSec .slideCloseBtn{
	font-size: 1.4rem;
	font-weight: 500;
	position: absolute;
	top: 22px;
	left: 351px;
	display: flex;
	width: 179px;
	height: 36px;
	padding-left: 30px;
	color: #fff;
	background: url('../../img/btn_arrow2.png') no-repeat 9px center;
	background-color: #dc9070;

	align-items: center;
}
.homePage .service .slideInnerSec .hideSec>h2{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 25px;
}
.homePage .service .slideInnerSec .hideSec .innerSec h2{
	font-size: 1.8rem;
	margin-bottom: 10px;
	padding-bottom: 10px;
	color: #c33f67;
	border-bottom: 1px solid #c33f67;
}
.homePage .service .slideInnerSec .hideSec .innerSec p,.homePage .service .slideInnerSec .hideSec .innerSec li{
	font-size: 1.6rem;
	line-height: 1.4;
}
.homePage .service .slideInnerSec .hideSec .innerSec strong{
	font-weight: normal;
	color: #c33f67;
}
.homePage .service .slideInnerSec .hideSec .innerSec .green{
	color: #00b2b2;
}
.homePage .service .slideInnerSec .hideSec .innerSec li{
	margin-left: 1em;
	text-indent: -1em;
}
.homePage .service .slideInnerSec .hideSec .innerSec+.innerSec{
	margin-top: 30px;
}
.homePage .roadBlock4{
	height: 578px;
	margin-bottom: 300px;
}
.homePage .roadBlock4::before{
	z-index: 1;
	top: -340px;
	right: 302px;
	width: 90vw;
	height: 1575px;
	background: url('../../img/road_bk4.png') no-repeat right top;
}
.homePage .roadBlock4 .serifuAnime{
	position: absolute;
	z-index: 2;
	top: 147px;
	right: 427px;
	width: 291px;
}
.homePage .roadBlock4 .serifuAnime .serifu1{
	position: absolute;
	top: -53px;
	left: 63px;
	width: 44px;
	-webkit-animation: serifu 3s infinite 0s linear both;
	        animation: serifu 3s infinite 0s linear both;
}
.homePage .roadBlock4 .serifuAnime .serifu2{
	position: absolute;
	top: 11px;
	left: 187px;
	width: 48px;
	-webkit-animation: serifu 3s infinite 1s linear both;
	        animation: serifu 3s infinite 1s linear both;
}
.homePage .roadBlock4 .obj14{
	top: -360px;
	left: -54px;
	width: 49px;
	-webkit-animation: obj14 30s infinite 0s linear both;
	        animation: obj14 30s infinite 0s linear both;
}
.homePage .roadBlock4 .obj15{
	top: 116px;
	left: 867px;
	width: 148px;
	-webkit-animation: obj15 10s infinite 0s linear both;
	        animation: obj15 10s infinite 0s linear both;
}
.homePage .roadBlock4 .obj16{
	top: 917px;
	left: -41px;
	width: 55px;
	-webkit-animation: obj7 20s infinite 1s linear both;
	        animation: obj7 20s infinite 1s linear both;
}
.homePage .roadBlock4 .obj17{
	top: 942px;
	left: -23px;
	width: 55px;
	-webkit-animation: obj7 13s infinite 0s linear both;
	        animation: obj7 13s infinite 0s linear both;
}
.homePage .companySec{
	position: relative;
	max-width: 449px;
	min-height: 518px;
	margin: 0 0 0 auto;
	padding: 40px 28px;
	background: #fff;
	box-shadow: 10px 10px 0 #d9b4c0;
}
.homePage .companySec>h2{
	line-height: 1;
	margin-bottom: 30px;
	text-align: center;
}
.homePage .companySec>h2::before{
	background-image: url('../../img/pin4.png');
}
.homePage .companySec dl{
	font-size: 1.8rem;
	line-height: 1.6;
	display: flex;

	flex-flow: row wrap;
}
.homePage .companySec dl dt{
	font-weight: 500;
	margin-bottom: 10px;
	padding: 0 0 10px 15px;
	border-bottom: 1px solid #f6cdda;

	flex: 0 1 133px;
}
.homePage .companySec dl dd{
	margin-bottom: 10px;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #f6cdda;

	flex: 0 1 260px;
}
.homePage .companySec dl dd:last-child,.homePage .companySec dl dt:last-of-type{
	padding-bottom: 0;
	border-bottom: 0;
}
.homePage .companySec .serifuAnime{
	position: absolute;
	top: 173px;
	left: -438px;
	width: 290px;
}
.homePage .companySec .serifuAnime .serifu{
	position: absolute;
	top: -29px;
	left: 157px;
	width: 48px;
	-webkit-animation: serifu 3s infinite 0s linear both;
	        animation: serifu 3s infinite 0s linear both;
}
.homePage .roadBlock5{
	margin-bottom: 500px;
}
.homePage .roadBlock5::before{
	z-index: 1;
	top: -646px;
	left: 226px;
	width: 90vw;
	height: 1535px;
	background: url('../../img/road_bk5.png') no-repeat left top;
}
.homePage .roadBlock5 .obj18{
	z-index: -1;
	top: -520px;
	right: -48px;
	width: 55px;
	-webkit-animation: obj18 20s infinite 6s linear both;
	        animation: obj18 20s infinite 6s linear both;
}
.homePage .roadBlock5 .obj19{
	z-index: -1;
	top: -538px;
	right: -48px;
	width: 55px;
	-webkit-animation: obj18 20s infinite 4s linear both;
	        animation: obj18 20s infinite 4s linear both;
}
.homePage .roadBlock5 .obj20{
	z-index: -1;
	top: -537px;
	right: -43px;
	width: 82px;
	-webkit-animation: obj18 20s infinite 0s linear both;
	        animation: obj18 20s infinite 0s linear both;
}
.homePage .roadBlock5 .obj21{
	z-index: 3;
	top: 288px;
	left: 183px;
	width: 64px;
	-webkit-animation: obj21 12s infinite 0s linear both;
	        animation: obj21 12s infinite 0s linear both;
}
.homePage .roadBlock5 .obj22{
	z-index: 3;
	top: 284px;
	left: 196px;
	width: 64px;
	-webkit-animation: obj21 12s infinite 2s linear both;
	        animation: obj21 12s infinite 2s linear both;
}
.homePage .roadBlock5 .obj23{
	z-index: 3;
	top: 364px;
	left: 116px;
	width: 149px;
	-webkit-animation: obj21 12s infinite 5s linear both;
	        animation: obj21 12s infinite 5s linear both;
}
.homePage .roadBlock5 .obj24{
	z-index: 2;
	top: 277px;
	left: 210px;
	width: 71px;
	-webkit-animation: obj21 20s infinite 5s linear both;
	        animation: obj21 20s infinite 5s linear both;
}
.homePage .roadBlock5 .obj25{
	z-index: 11;
	top: 239px;
	left: 258px;
	width: 42px;
	-webkit-animation: obj21 30s infinite 2s linear both;
	        animation: obj21 30s infinite 2s linear both;
}
.homePage .newsSec{
	max-width: 1103px;
	margin: 0 auto;
}
.homePage .newsSec>h2{
	line-height: 1;
	margin-bottom: 50px;
	text-align: center;
}
.homePage .newsSec .row{
	display: flex;

	justify-content: space-between;
}
.homePage .newsSec .newsBox{
	border: 1px solid #ddd;
	box-shadow: 9px 9px 0 #ddd;

	flex: 0 1 348px;
}
.homePage .newsSec .newsBox a{
	display: flex;
	height: 100%;
	padding-bottom: 10px;

	flex-flow: column;
}
.homePage .newsSec .newsBox header{
	height: 110px;
	padding: 0 10px;

	order: 2;
}
.homePage .newsSec .newsBox header time{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1;
	display: block;
	margin-bottom: 10px;
	color: #999;
}
.homePage .newsSec .newsBox header h2{
	font-size: 1.8rem;
	font-weight: 500;
	display: -webkit-box;
	overflow: hidden;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.homePage .newsSec .newsBox .img{
	margin-bottom: 13px;

	order: 1;
}
.homePage .newsSec .newsBox .more{
	font-size: 1.6rem;
	display: flex;
	width: 328px;
	height: 38px;
	margin: 0 auto;
	text-align: center;
	color: #fff;
	background: url('../../img/btn_arrow.png') no-repeat 305px center;
	background-color: #9ecb55;

	align-items: center;
	justify-content: center;
	order: 3;
}
.homePage .newsSec .goListPage{
	font-size: 1.6rem;
	display: flex;
	width: 300px;
	height: 38px;
	margin: 60px auto 0;
	text-align: center;
	color: #fff;
	background: url('../../img/btn_arrow.png') no-repeat 276px center;
	background-color: #888;
	box-shadow: 5px 5px 0 #ddd;

	align-items: center;
	justify-content: center;
}
.homePage .contactSec{
	max-width: 870px;
	margin: 140px auto 0;
}
.homePage .contactSec>h2{
	line-height: 1;
	margin-bottom: 58px;
	text-align: center;
}
.homePage .formBox .hissu{
	font-size: 1.3rem;
	display: flex;
	width: 40px;
	height: 23px;
	color: #fff;
	border-radius: 6px;
	background: #c23e68;

	align-items: center;
	justify-content: center;
}
.homePage .formBox select,.homePage .formBox input[type='text'],.homePage .formBox input[type='tel'],.homePage .formBox input[type='email']{
	line-height: 46px;
	width: 100%;
	height: 50px;
	margin: 0;
	padding: 0 25px;
	border: 2px solid #858585;
	border-radius: 2px;
}
.homePage .formBox select{
	border-right: none;
	border-radius: 2px;
	background: url('../../img/select_arrow.png') no-repeat right center;

	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
.homePage .formBox textarea{
	line-height: 1.6;
	width: 100%;
	height: 180px;
	padding: 10px 25px;
	border: 2px solid #858585;
	border-radius: 2px;
}
.homePage .formBox .inputBox{
	display: flex;
	margin-bottom: 35px;

	align-items: center;
	justify-content: space-between;
}
.homePage .formBox .inputBox .title{
	display: flex;

	flex: 0 1 210px;
	justify-content: space-between;
}
.homePage .formBox .inputBox .input{
	flex: 0 1 647px;
}
.homePage .formBox .messageBox{
	align-items: flex-start;
}
.homePage .formBox .inputRow{
	display: flex;

	justify-content: space-between;
}
.homePage .formBox .inputRow .inputBox .input{
	flex: 0 1 250px;
}
.homePage .formBox .inputRow .inputBox:first-child{
	flex: 0 1 473px;
}
.homePage .formBox .inputRow .inputBox:last-child{
	flex: 0 1 353px;
}
.homePage .formBox .inputRow .inputBox:last-child .title{
	flex: 0 1 90px;
}
.homePage .formBox .privacy{
	font-size: 1.5rem;
	overflow-y: auto;
	height: 133px;
	margin: 40px auto 0;
	padding: 15px 20px;
	color: #666;
	border: 2px solid #858585;
}
/*スクロールバー全体*/
.homePage .formBox .privacy::-webkit-scrollbar{
	width: 10px;
}
/*スクロールバーの軌道*/
.homePage .formBox .privacy::-webkit-scrollbar-track{
	box-shadow: 0 0 0 1px rgba(133, 133, 133, 1);
}
/*スクロールバーの動く部分*/
.homePage .formBox .privacy::-webkit-scrollbar-thumb{
	background-color: #888;
	box-shadow: 0 0 0 1px rgba(133, 133, 133, 1);
}
.homePage .formBox .privacy h3{
	margin-top: 1em;
}
.homePage .formBox .acceptance{
	font-size: 1.6rem;
	margin-top: 35px;
	text-align: center;
}
.homePage .formBox .acceptance input{
	border-color: #858585;
}
.homePage .formBox .submit input{
	font-size: 1.6rem;
	display: flex;
	width: 300px;
	height: 38px;
	margin: 50px auto 0;
	text-align: center;
	color: #fff;
	border: none;
	background: url('../../img/btn_arrow.png') no-repeat 276px center;
	background-color: #88a92b;
	box-shadow: 5px 5px 0 #ddd;

	align-items: center;
	justify-content: center;
}
.homePage .formBox .submit input:hover{
	opacity: .8;
}
.homePage .formBox .submit input:disabled{
	opacity: .5;
}
.homePage .formBox .submit input:focus{
	outline: none;
}
.homePage .formBox .submit .ajax-loader{
	display: block;
	margin: 10px auto 0;
}
.homePage .formBox .wpcf7-not-valid-tip{
	font-size: 1.6rem;
	padding: .3em 0 0 0;
}
.homePage .wpcf7-response-output{
	margin: 0 !important;
	padding: 1em !important;
}
/* ==========================================================================
   お知らせ
========================================================================== */
.infoPage .headerBk{
	position: relative;
	max-width: 1110px;
	margin: 0 auto 100px;
}
.infoPage .headerBk::before{
	position: absolute;
	z-index: -1;
	top: -150px;
	left: 247px;
	width: 90vw;
	min-width: 1300px;
	height: 660px;
	content: '';
	background: url('../../img/info_bk.png') no-repeat left bottom;
}
.infoPage .headerBk .mainText{
	position: relative;
	z-index: 10;
	max-width: 1110px;
	margin: 0 auto;
	padding: 74px 0 0 0;
}
.infoPage .headerBk .mainText p{
	line-height: 1;
}
.infoPage .headerBk .mainText .text1{
	margin-bottom: 23px;
}
.infoPage .pageTitle{
	line-height: 1;
	margin-bottom: 52px;
	text-align: center;
}
.infoPage .infoContent{
	display: -ms-grid;
	display:     grid;

	-ms-grid-columns: 1fr 734px 358px 1fr;
	-ms-grid-rows: auto 1fr;
	grid-template-columns: 1fr 734px 358px 1fr;
	grid-template-rows: auto 1fr;
}
.infoPage .infoContent::before{
	content: '';

	-ms-grid-column: 1;
	    grid-column: 1;
	-ms-grid-row: 1;
	    grid-row: 1 / 3;
	-ms-grid-row-span: 2;
}
.infoPage .infoContent::after{
	content: '';

	-ms-grid-column: 4;
	    grid-column: 4;
	-ms-grid-row: 1;
	    grid-row: 1 / 3;
	-ms-grid-row-span: 2;
}
.infoPage .infoContent .pageHeader{
	-ms-grid-column: 2;
	    grid-column: 2 / 4;
	-ms-grid-column-span: 2;
	-ms-grid-row: 1;
	    grid-row: 1;
}
.infoPage .infoContent .infoMain{
	-ms-grid-column: 2;
	    grid-column: 2;
	-ms-grid-row: 2;
	    grid-row: 2;
}
.infoPage .infoContent .sideBar{
	-ms-grid-column: 3;
	    grid-column: 3;
	-ms-grid-row: 2;
	    grid-row: 2;
}
.infoPage .sideBar{
	margin-left: 16px;
	padding: 30px 15px 100px;
	border: 1px solid #ccc;
	background: #fff;

	align-self: start;
	-ms-grid-row-align: start;
}
.infoPage .sideBar .sideBox .title{
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 28px;
	padding: 0 8px 25px;
	background: url('../../img/line.png') no-repeat center bottom;
}
.infoPage .sideBar .sideBox>ul{
	font-size: 1.6rem;
	padding: 0 8px;
}
.infoPage .sideBar .sideBox>ul a{
	text-decoration: underline;
}
.infoPage .sideBar .sideBox>ul li+li{
	margin-top: 15px;
}
.infoPage .sideBar .sideBox+.sideBox{
	margin-top: 85px;
}
/* ==========================================================================
   お知らせ 詳細
========================================================================== */
.infoSingle .infoMain{
	padding: 0 0 60px;
	border: 1px solid #ccc;
	background: #fff;
}
.infoSingle .term{
	display: flex;
	height: 35px;
	text-align: center;
	background: #f9f9f9;

	align-items: center;
	justify-content: center;
}
.infoSingle .term a{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1;
	color: #c33f69;
}
.infoSingle .entryHeader{
	width: 711px;
	margin: 20px auto;
	padding: 0 25px 25px;
	background: url('../../img/line.png') no-repeat center bottom;
}
.infoSingle .update{
	line-height: 1;
	color: #777;
}
.infoSingle .title{
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.3;
	margin-top: 15px;
}
.infoSingle .snsBtn{
	display: flex;
	margin-top: 15px;

	align-items: center;
}
.infoSingle .snsBtn li{
	overflow: hidden;
	height: 20px;
	margin-right: 8px;
}
.infoSingle .snsBtn .fb_iframe_widget{
	line-height: 1;
	display: block;
}
.infoSingle .singleEdit{
	max-width: 694px;
	margin: 0 auto;
}
/* ==========================================================================
   お知らせ 一覧
========================================================================== */
.infoArchive .infoBox{
	border: 1px solid #ccc;
	background: #fff;
}
.infoArchive .infoBox a{
	display: -ms-grid;
	display:     grid;
	padding: 0 0 30px;

	-ms-grid-columns: 358px 1fr;
	-ms-grid-rows: auto auto 1fr auto;
	grid-template-columns: 358px 1fr;
	grid-template-rows: auto auto 1fr auto;
}
.infoArchive .infoBox .term{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1;
	display: flex;
	height: 35px;
	text-align: center;
	color: #ca557b;
	background: #f9f9f9;

	align-items: center;
	-ms-grid-column: 1;
	    grid-column: 1 / 3;
	-ms-grid-column-span: 2;
	-ms-grid-row: 1;
	    grid-row: 1;
	justify-content: center;
}
.infoArchive .infoBox .entryHeader{
	width: 711px;
	margin: 20px auto 25px;
	padding: 0 25px 25px;
	background: url('../../img/line.png') no-repeat center bottom;

	-ms-grid-column: 1;
	    grid-column: 1 / 3;
	-ms-grid-column-span: 2;
	-ms-grid-row: 2;
	    grid-row: 2;
}
.infoArchive .infoBox .update{
	line-height: 1;
	color: #777;
}
.infoArchive .infoBox .title{
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.3;
	margin-top: 15px;
}
.infoArchive .infoBox .tm{
	padding: 0 16px 0 20px;

	-ms-grid-column: 1;
	    grid-column: 1;
	-ms-grid-row: 3;
	    grid-row: 3 / 5;
	-ms-grid-row-span: 2;
}
.infoArchive .infoBox .text{
	line-height: 1.7;
	padding-right: 22px;
	word-break: break-all;
	color: #333;

	-ms-grid-column: 2;
	    grid-column: 2;
	-ms-grid-row: 3;
	    grid-row: 3;
}
.infoArchive .infoBox .text p{
	display: -webkit-box;
	overflow: hidden;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 7;
}
.infoArchive .infoBox .more{
	font-size: 1.6rem;
	display: flex;
	width: 354px;
	height: 38px;
	text-align: center;
	color: #fff;
	background-color: #9ecb55;
	background-image: url('../../img/btn_arrow.png');
	background-repeat: no-repeat;
	background-position: 331px center;

	align-items: center;
	-ms-grid-column: 2;
	    grid-column: 2;
	-ms-grid-row: 4;
	    grid-row: 4;
	justify-content: center;
}
.infoArchive .infoBox+.infoBox{
	margin-top: 20px;
}
/* ==========================================================================
   ページ送り
========================================================================== */
.pagenation{
	margin-top: 50px;
}
.pagenation ul{
	display: flex;

	justify-content: center;
}
.pagenation li{
	margin: 0 5px;
}
.pagenation .page-numbers{
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1;
	display: flex;
	width: 42px;
	height: 42px;
	color: #fff;
	background: #a0ca4c;

	align-items: center;
	justify-content: center;
}
.pagenation .current{
	background: #cb587c;
}
.pagenation .dots{
	width: auto;
	color: #000;
	background: none;

	align-items: flex-end;
}
/* ==========================================================================
   end
========================================================================== */
@media only screen and (max-width: 767px){
	html{
		font-size: 2.08333vw;
	}
	body{
		width: 100%;
		min-width: 0;
	}
	.spShow{
		display: inline-block;
	}
	.pcShow{
		display: none;
	}
	.container{
		-ms-grid-columns: 100%;
		-ms-grid-rows: 13.33333vw 1fr auto;
		grid-template: 'header' 13.33333vw
		'pageContainer' 1fr
		'footer' auto /100%;
	}
	/* ==========================================================================
   ヘッダー
========================================================================== */
	.header{
		display: flex;
		min-width: 0;
		height: 13.33333vw;
		padding: 0 3.75vw 0 3.75vw;

		align-items: center;
		justify-content: space-between;
	}
	.header .logo{
		margin: 0;
		padding: 0;

		align-self: flex-end;
		flex: 0 1 15.20833vw;
	}
	.header .menuBtn{
		position: static;
		padding-top: 0;

		flex: 0 1 7.91667vw;
	}
	/* ==========================================================================
   グローバルナビ
========================================================================== */
	.gNav{
		font-size: 2.1rem;
		overflow-y: auto;
		width: 100vw;
		height: calc(1vh*100);
		height: calc(var(--vh, 1vh)*100);
		padding: 2.70833vw 0 9.375vw;
		background: url('../../img/sp_menu_bk.png') no-repeat right top;
		background-color: #fff;
		background-size: 100% auto;
	}
	.gNav .menuLogo{
		width: 15.20833vw;
		margin-left: 3.75vw;
	}
	.gNav .menuBtnClose{
		top: 4.16667vw;
		right: 4.79167vw;
		width: 5.83333vw;
	}
	.gNav .menuLink{
		margin: 31.25vw 0 0 8.33333vw;
	}
	.gNav .menuLink li{
		line-height: 1;
	}
	.gNav .menuLink li+li{
		margin-top: 7.29167vw;
	}
	.gNav .sns{
		max-width: 39.79167vw;
		margin: 12.5vw auto 0;
	}
	.gNav .sns li{
		flex: 0 1 10vw;
	}
	/* ==========================================================================
   footer
========================================================================== */
	.footer{
		display: block;
		margin-top: 10vw;
		padding: 6.25vw 0 5.20833vw;
		border-top: 3.125vw solid #ddd;
	}
	.footer::before{
		display: none;
	}
	.footer::after{
		display: none;
	}
	.footer .footerLogo{
		width: 15.20833vw;
		margin: 0 auto;
	}
	.footer .footerLogo::before{
		display: none;
	}
	.footer .footerLink{
		display: none;
	}
	.footer .footerSns{
		width: 39.79167vw;
		margin: 25.41667vw auto 0;
	}
	.footer .footerSns li{
		flex: 0 1 10vw;
	}
	.footer .copyright{
		margin-top: 33.33333vw;
		padding-right: 0;
		text-align: center;
	}
	/* ==========================================================================
   home
========================================================================== */
	.homePage .mainText{
		position: relative;
		z-index: 20;
		max-width: none;
		margin: 0 auto;
		padding: 54.58333vw 0 0 4.58333vw;
	}
	.homePage .mainText p{
		line-height: 1;
		-webkit-animation: mainText 1.2s 1 0s linear forwards;
		        animation: mainText 1.2s 1 0s linear forwards;
	}
	.homePage .mainText .text1{
		width: 47.70833vw;
		margin-bottom: 5vw;
	}
	.homePage .mainText .text2{
		width: 90vw;
	}
	.homePage .roadBlock{
		max-width: none;
	}
	.homePage .roadBlock::before{
		width: 100vw;
		min-width: 0;
	}
	.homePage .roadBlock1{
		margin-bottom: 50.20833vw;
	}
	.homePage .roadBlock1::before{
		top: -13.33333vw;
		left: 0;
		height: 110vw;
		background: url('../../img/sp_road_bk1.png') no-repeat left bottom;
		background-size: contain;
	}
	.homePage .roadBlock1 .obj1{
		z-index: 2;
		top: 37.29167vw;
		left: -8.75vw;
		width: 8.125vw;
		-webkit-animation: obj1Sp 8s infinite 0s linear both;
		        animation: obj1Sp 8s infinite 0s linear both;
	}
	.homePage .roadBlock1 .obj2{
		display: none;
	}
	.homePage .roadBlock1 .obj3{
		top: 31.875vw;
		left: -9.58333vw;
		width: 9.16667vw;
		-webkit-animation: obj1Sp 16s infinite 1s linear both;
		        animation: obj1Sp 16s infinite 1s linear both;
	}
	.homePage .roadBlock1 .obj4{
		top: 31.875vw;
		left: -9.58333vw;
		width: 8.95833vw;
		-webkit-animation: obj1Sp 16s infinite 3.5s linear both;
		        animation: obj1Sp 16s infinite 3.5s linear both;
	}
	.homePage .secBox{
		z-index: 10;
		max-width: 93.54167vw;
		margin: 0 auto;
		border: .20833vw solid #ccc;
	}
	.homePage .secBox>h2{
		margin: 0 auto;
	}
	.homePage .secBox>h2::before{
		top: -10vw;
		width: 5.83333vw;
		height: 6.875vw;
	}
	.homePage .philosophy{
		max-width: 93.54167vw;
		min-height: 0;
		padding: 9.16667vw;
		box-shadow: 2.08333vw 2.08333vw 0 #99cdd6;
	}
	.homePage .philosophy>h2{
		margin-bottom: 5.20833vw;
	}
	.homePage .philosophy>h2 img{
		width: 25vw;
	}
	.homePage .philosophy>h2::after{
		width: 75vw;
		height: 27.91667vw;
		margin: 3.125vw auto 0;
	}
	.homePage .philosophy .serifuAnime{
		position: absolute;
		top: -28.75vw;
		left: 0;
		width: 36.25vw;
	}
	.homePage .philosophy .serifuAnime .serifu{
		position: absolute;
		top: 2.5vw;
		right: 9.375vw;
		width: 6.45833vw;
	}
	.homePage .roadBlock2{
		margin-bottom: 50.20833vw;
	}
	.homePage .roadBlock2::before{
		top: -48.95833vw;
		right: 0;
		height: 147.5vw;
		background: url('../../img/sp_road_bk2.png') no-repeat center center;
		background-size: contain;
	}
	.homePage .roadBlock2 .obj5{
		z-index: -1;
		top: -2.5vw;
		right: -18.33333vw;
		left: auto;
		width: 18.33333vw;
		-webkit-animation: obj5Sp 7s infinite 0s linear both;
		        animation: obj5Sp 7s infinite 0s linear both;
	}
	.homePage .roadBlock2 .obj6{
		display: none;
	}
	.homePage .roadBlock2 .obj7{
		z-index: -1;
		top: 142.70833vw;
		left: -19.16667vw;
		width: 19.16667vw;
		-webkit-animation: obj7Sp 7s infinite 0s linear both;
		        animation: obj7Sp 7s infinite 0s linear both;
	}
	.homePage .about{
		max-width: 93.54167vw;
		min-height: 107.91667vw;
		margin: 0 auto;
		padding: 8.33333vw 9.375vw;
		box-shadow: 1.66667vw 1.66667vw 0 #c9b846;
	}
	.homePage .about>h2{
		width: 26.25vw;
		margin-bottom: 7.29167vw;
	}
	.homePage .about ul{
		padding: 0 1.04167vw;
	}
	.homePage .about li::before{
		width: 4.16667vw;
		height: 3.33333vw;
		margin-right: 2.08333vw;
		background: url('../../img/check.png') no-repeat center center;
		background-size: contain;
	}
	.homePage .about .serifuAnime{
		top: -29.58333vw;
		left: 59.375vw;
		width: 36.25vw;
	}
	.homePage .about .serifuAnime .serifu1{
		top: -6.66667vw;
		left: 12.08333vw;
		width: 5.625vw;
	}
	.homePage .about .serifuAnime .serifu2{
		top: 1.25vw;
		left: 29.58333vw;
		width: 6.04167vw;
	}
	.homePage .roadBlock3{
		margin-bottom: 50.625vw;
	}
	.homePage .roadBlock3::before{
		top: -46.45833vw;
		left: 0;
		height: 132.91667vw;
		background: url('../../img/sp_road_bk3.png') no-repeat left center;
		background-size: contain;
	}
	.homePage .roadBlock3 .obj8{
		display: none;
	}
	.homePage .roadBlock3 .obj9{
		top: -63.125vw;
		right: -8.75vw;
		left: auto;
		width: 8.75vw;
		-webkit-animation: obj9Sp 16s infinite 4s linear both;
		        animation: obj9Sp 16s infinite 4s linear both;
	}
	.homePage .roadBlock3 .obj10{
		top: -65.20833vw;
		right: -6.66667vw;
		left: auto;
		width: 6.66667vw;
		-webkit-animation: obj9Sp 16s infinite 0s linear both;
		        animation: obj9Sp 16s infinite 0s linear both;
	}
	.homePage .roadBlock3 .obj11{
		display: none;
	}
	.homePage .roadBlock3 .obj12{
		display: none;
	}
	.homePage .roadBlock3 .obj13{
		display: none;
	}
	.homePage .service{
		position: relative;
		top: auto;
		left: auto;
		width: -webkit-fit-content;
		width:    -moz-fit-content;
		width:         fit-content;
		max-width: 93.54167vw;
		/* height: calc(578/480*100)vw; */
		height: auto;
		padding-top: 8.33333vw;
		/* min-height: calc(578/480*100)vw; */
		box-shadow: 1.66667vw 1.66667vw 0 #dd9074;
	}
	.homePage .service>h2{
		position: relative;
		top: auto;
		left: auto;
		width: 23.95833vw;
		margin: 0 auto 1.25vw;
		background: none;
	}
	.homePage .service>h2::before{
		z-index: 2;
		width: 100%;
		background-image: url('../../img/pin3.png');
	}
	.homePage .service>h2::after{
		display: none;
	}
	.homePage .service .slideWall{
		width: 93.54167vw;
	}
	.homePage .service .slideWall .swiper-button-next,.homePage .service .slideWall .swiper-button-prev{
		top: -14.16667vw;
		width: 12.5vw;
		height: 12.5vw;
		margin: 0;
	}
	.homePage .service .slideWall .swiper-button-next{
		right: 3.75vw;
		background: url('../../img/slide_next.png') no-repeat center center;
		background-size: contain;
	}
	.homePage .service .slideWall .swiper-button-prev{
		left: 3.75vw;
		background: url('../../img/slide_prev.png') no-repeat center center;
		background-size: contain;
	}
	.homePage .service .swiper-slide{
		overflow: hidden;
	}
	.homePage .service .slideInnerSec{
		display: block;
		padding-bottom: 8.33333vw;
	}
	.homePage .service .slideInnerSec .aboutService{
		padding: 1.25vw 10.41667vw 0;

		-ms-grid-column: 1;
		    grid-column: 1;
		-ms-grid-row: 1;
		    grid-row: 1;
	}
	.homePage .service .slideInnerSec .aboutService h2{
		width: 68.95833vw;
		margin: 0 auto 1.04167vw;
	}
	.homePage .service .slideInnerSec .aboutService p{
		margin-bottom: 6.25vw;
	}
	.homePage .service .slideInnerSec .aboutService2{
		padding-top: 0;
	}
	.homePage .service .slideInnerSec .aboutService2 h2{
		width: 71.66667vw;
	}
	.homePage .service .slideInnerSec .btnBox{
		width: 62.5vw;
		height: 8.95833vw;
	}
	.homePage .service .slideInnerSec .btnBox .btn{
		line-height: 7.91667vw;
		height: 7.91667vw;
		background-image: url('../../img/sp_btn_arrow.png');
		background-position: 56.66667vw center;
		background-size: 3.95833vw auto;
		box-shadow: 1.04167vw 1.04167vw 0 #ddd;
	}
	.homePage .service .slideInnerSec .hideBox{
		display: none;
		padding: 0 10.41667vw 10.41667vw;
		opacity: 1;
	}
	.homePage .service .slideInnerSec .slideCloseBtn{
		position: static;
		width: 41.66667vw;
		height: 7.5vw;
		margin: 6.25vw auto 0;
		padding-left: 8.33333vw;
		background: url('../../img/sp_btn_arrow2.png') no-repeat 3.33333vw center;
		background-color: #dc9070;
		background-size: 3.95833vw auto;
	}
	.homePage .service .slideInnerSec .hideSec>h2{
		margin-bottom: 5.20833vw;
	}
	.homePage .service .slideInnerSec .hideSec .innerSec h2{
		margin-bottom: 2.08333vw;
		padding-bottom: 2.08333vw;
	}
	.homePage .service .slideInnerSec .hideSec .innerSec+.innerSec{
		margin-top: 6.25vw;
	}
	.homePage .service .slideInnerSec .btnBoxSp{
		display: block;
		margin-top: 8.33333vw;
	}
	.homePage .service .slideInnerSec .btnBoxSp .btn{
		background-image: url('../../img/btn_arrow.png');
		background-size: 2.70833vw auto;
	}
	.homePage .service .slideInnerSec .btnBoxSp .serviceSite{
		display: block;
	}
	.homePage .roadBlock4{
		height: auto;
		margin-bottom: 50.83333vw;
	}
	.homePage .roadBlock4::before{
		z-index: 1;
		top: -49.16667vw;
		right: 0;
		height: 127.29167vw;
		background: url('../../img/sp_road_bk4.png') no-repeat center top;
		background-size: contain;
	}
	.homePage .roadBlock4 .serifuAnime{
		top: -27.91667vw;
		right: auto;
		left: 3.125vw;
		width: 36.45833vw;
	}
	.homePage .roadBlock4 .serifuAnime .serifu1{
		position: absolute;
		top: -6.25vw;
		left: 7.70833vw;
		width: 5.625vw;
	}
	.homePage .roadBlock4 .serifuAnime .serifu2{
		top: 1.66667vw;
		left: 25.83333vw;
		width: 6.04167vw;
	}
	.homePage .roadBlock4 .obj14{
		display: none;
	}
	.homePage .roadBlock4 .obj15{
		top: -1.875vw;
		right: -18.54167vw;
		left: auto;
		width: 18.54167vw;
		-webkit-animation: obj15Sp 8s infinite 0s linear both;
		        animation: obj15Sp 8s infinite 0s linear both;
	}
	.homePage .roadBlock4 .obj16{
		display: none;
	}
	.homePage .roadBlock4 .obj17{
		display: none;
	}
	.homePage .companySec{
		position: relative;
		max-width: 93.54167vw;
		min-height: 107.91667vw;
		margin: 0 auto;
		padding: 8.33333vw 6.25vw;
		box-shadow: 1.66667vw 1.66667vw 0 #d9b4c0;
	}
	.homePage .companySec>h2{
		width: 26.45833vw;
		margin-bottom: 6.25vw;
	}
	.homePage .companySec dl dt{
		margin-bottom: 2.08333vw;
		padding: 0 0 2.08333vw 3.125vw;

		flex: 0 1 26.66667vw;
	}
	.homePage .companySec dl dd{
		margin-bottom: 2.08333vw;
		padding: 0 0 2.08333vw 0;

		flex: 0 1 53.75vw;
	}
	.homePage .companySec dl dd:last-child,.homePage .companySec dl dt:last-of-type{
		padding-bottom: 0;
		border-bottom: 0;
	}
	.homePage .companySec .serifuAnime{
		top: -28.75vw;
		left: 57.29167vw;
		width: 36.25vw;
	}
	.homePage .companySec .serifuAnime .serifu{
		top: -3.75vw;
		left: 21.875vw;
		width: 6.04167vw;
	}
	.homePage .roadBlock5{
		margin-bottom: 31.25vw;
	}
	.homePage .roadBlock5::before{
		z-index: 1;
		top: -47.70833vw;
		left: 0;
		height: 128.125vw;
		background: url('../../img/sp_road_bk5.png') no-repeat left top;
		background-size: contain;
	}
	.homePage .roadBlock5 .obj18{
		top: -60vw;
		right: -7.08333vw;
		width: 7.08333vw;
		-webkit-animation: obj18Sp 16s infinite 6s linear both;
		        animation: obj18Sp 16s infinite 6s linear both;
	}
	.homePage .roadBlock5 .obj19{
		top: -61.45833vw;
		right: -7.08333vw;
		width: 7.08333vw;
		-webkit-animation: obj18Sp 16s infinite 4s linear both;
		        animation: obj18Sp 16s infinite 4s linear both;
	}
	.homePage .roadBlock5 .obj20{
		top: -65.625vw;
		right: -10.41667vw;
		width: 10.41667vw;
		-webkit-animation: obj18Sp 16s infinite 0s linear both;
		        animation: obj18Sp 16s infinite 0s linear both;
	}
	.homePage .roadBlock5 .obj21{
		display: none;
	}
	.homePage .roadBlock5 .obj22{
		display: none;
	}
	.homePage .roadBlock5 .obj23{
		display: none;
	}
	.homePage .roadBlock5 .obj24{
		display: none;
	}
	.homePage .roadBlock5 .obj25{
		display: none;
	}
	.homePage .newsSec{
		max-width: 93.54167vw;
	}
	.homePage .newsSec>h2{
		width: 25.83333vw;
		margin: 0 auto 9.375vw;
	}
	.homePage .newsSec .row{
		display: block;
	}
	.homePage .newsSec .newsBox{
		box-shadow: 1.66667vw 1.66667vw 0 #ddd;
	}
	.homePage .newsSec .newsBox a{
		padding-bottom: 2.70833vw;
	}
	.homePage .newsSec .newsBox header{
		height: 22.91667vw;
		padding: 0 12.5vw;
	}
	.homePage .newsSec .newsBox header time{
		font-size: 1.5rem;
		margin-bottom: 2.08333vw;
	}
	.homePage .newsSec .newsBox .img{
		margin-bottom: 4.16667vw;
	}
	.homePage .newsSec .newsBox .more{
		width: 68.33333vw;
		height: 7.91667vw;
		background: url('../../img/btn_arrow.png') no-repeat 63.54167vw center;
		background-color: #9ecb55;
		background-size: 2.70833vw auto;
	}
	.homePage .newsSec .newsBox+.newsBox{
		margin-top: 8.33333vw;
	}
	.homePage .newsSec .goListPage{
		width: 62.5vw;
		height: 7.91667vw;
		margin: 12.5vw auto 0;
		background: url('../../img/btn_arrow.png') no-repeat 57.5vw center;
		background-color: #888;
		background-size: 2.70833vw auto;
		box-shadow: 1.04167vw 1.04167vw 0 #ddd;
	}
	.homePage .contactSec{
		max-width: 95.83333vw;
		margin: 28.75vw auto 0;
	}
	.homePage .contactSec>h2{
		width: 39.16667vw;
		margin: 0 auto 9.375vw;
	}
	.homePage .formBox .hissu{
		width: 8.33333vw;
		height: 4.79167vw;
	}
	.homePage .formBox select,.homePage .formBox input[type='text'],.homePage .formBox input[type='tel'],.homePage .formBox input[type='email']{
		font-size: 16px;
		line-height: 9.58333vw;
		height: 10.41667vw;
		padding: 0 5.20833vw;
		border: .41667vw solid #858585;
	}
	.homePage .formBox select{
		border-right: none;
		background: url('../../img/select_arrow.png') no-repeat right center;
		background-size: auto 110%;
	}
	.homePage .formBox textarea{
		font-size: 16px;
		width: 100%;
		padding: 2.08333vw 5.20833vw;
		border: .41667vw solid #858585;
	}
	.homePage .formBox .inputBox{
		margin-bottom: 6.25vw;
	}
	.homePage .formBox .inputBox .title{
		padding-left: 3.125vw;

		flex: 0 1 37.5vw;
	}
	.homePage .formBox .inputBox .input{
		flex: 0 1 55.41667vw;
	}
	.homePage .formBox .inputRow{
		display: block;
	}
	.homePage .formBox .inputRow .inputBox .input{
		flex: 0 1 55.41667vw;
	}
	.homePage .formBox .inputRow .inputBox:last-child .title{
		flex: 0 1 37.5vw;
	}
	.homePage .formBox .privacy{
		height: 27.70833vw;
		margin: 5.20833vw auto 0;
		padding: 3.125vw 4.16667vw;
		border: .41667vw solid #858585;
	}
	/*スクロールバー全体*/
	.homePage .formBox .privacy::-webkit-scrollbar{
		width: 2.08333vw;
	}
	/*スクロールバーの軌道*/
	.homePage .formBox .privacy::-webkit-scrollbar-track{
		box-shadow: 0 0 0 5px rgba(133, 133, 133, 1);
	}

	/*スクロールバーの動く部分*/
	.homePage .formBox .privacy::-webkit-scrollbar-thumb{
		background-color: #888;
		box-shadow: 0 0 0 1px rgba(133, 133, 133, 1);
	}
	.homePage .formBox .privacy h3{
		margin-top: 1em;
	}
	.homePage .formBox .acceptance{
		margin-top: 7.29167vw;
	}
	.homePage .formBox .submit input{
		width: 62.5vw;
		height: 7.91667vw;
		margin: 10.41667vw auto 0;
		background: url('../../img/btn_arrow.png') no-repeat 55.625vw center;
		background-color: #88a92b;
		background-size: 2.70833vw auto;
		box-shadow: 1.04167vw 1.04167vw 0 #ddd;
	}
	/* ==========================================================================
   お知らせ
========================================================================== */
	.infoPage .headerBk{
		margin-bottom: 15.83333vw;
	}
	.infoPage .headerBk::before{
		top: -13.33333vw;
		left: 0;
		width: 100vw;
		height: 115.83333vw;
		background: url('../../img/sp_info_bk.png') no-repeat left bottom;
		background-size: contain;
	}
	.infoPage .headerBk .mainText{
		position: relative;
		z-index: 20;
		max-width: none;
		margin: 0 auto;
		padding: 54.58333vw 0 0 4.58333vw;
	}
	.infoPage .headerBk .mainText p{
		line-height: 1;
	}
	.infoPage .headerBk .mainText .text1{
		width: 47.70833vw;
		margin-bottom: 5vw;
	}
	.infoPage .headerBk .mainText .text2{
		width: 90vw;
	}
	.infoPage .pageTitle{
		width: 25.83333vw;
		margin: 0 auto 10.83333vw;
	}
	.infoPage .infoContent{
		display: block;
	}
	.infoPage .infoContent::before{
		display: none;
	}
	.infoPage .infoContent::after{
		display: none;
	}
	.infoPage .sideBar{
		width: 95.83333vw;
		margin: 4.16667vw auto 0;
		padding: 5.20833vw 5.20833vw 12.5vw;
	}
	.infoPage .sideBar .sideBox .title{
		margin-bottom: 5.83333vw;
		padding: 0 0 5.20833vw;
	}
	.infoPage .sideBar .sideBox>ul{
		padding: 0;
	}
	.infoPage .sideBar .sideBox>ul a{
		text-decoration: underline;
	}
	.infoPage .sideBar .sideBox>ul li+li{
		margin-top: 3.75vw;
	}
	.infoPage .sideBar .sideBox+.sideBox{
		margin-top: 17.70833vw;
	}
	/* ==========================================================================
   お知らせ 詳細
========================================================================== */
	.infoSingle .infoMain{
		width: 95.83333vw;
		margin: 0 auto;
		padding: 0 0 11.45833vw;
	}
	.infoSingle .term{
		height: 7.29167vw;
	}
	.infoSingle .entryHeader{
		width: 83.33333vw;
		margin: 4.16667vw auto 7.29167vw;
		padding: 0 0 5.20833vw;
	}
	.infoSingle .title{
		line-height: 1.4;
		margin-top: 3.125vw;
	}
	.infoSingle .snsBtn{
		margin-top: 3.125vw;

		flex-flow: row wrap;
	}
	.infoSingle .snsBtn li{
		margin-bottom: 8px;
	}
	.infoSingle .singleEdit{
		max-width: 83.33333vw;
	}
	/* ==========================================================================
   お知らせ 一覧
========================================================================== */
	.infoArchive .infoMain{
		width: 95.83333vw;
		margin: 0 auto;
	}
	.infoArchive .infoBox a{
		display: block;
		padding: 0 0 9.375vw;
	}
	.infoArchive .infoBox .term{
		height: 7.29167vw;
	}
	.infoArchive .infoBox .entryHeader{
		width: 83.33333vw;
		margin: 4.16667vw auto 7.29167vw;
		padding: 0 0 5.20833vw;
	}
	.infoArchive .infoBox .title{
		line-height: 1.4;
		margin-top: 3.125vw;
	}
	.infoArchive .infoBox .tm{
		width: 83.33333vw;
		margin: 0 auto 3.125vw;
		padding: 0;
	}
	.infoArchive .infoBox .tm img{
		width: 100%;
		max-width: none;
	}
	.infoArchive .infoBox .text{
		width: 83.33333vw;
		margin: 0 auto;
		padding: 0;
	}
	.infoArchive .infoBox .text p{
		-webkit-line-clamp: 6;
	}
	.infoArchive .infoBox .more{
		width: 73.75vw;
		height: 7.91667vw;
		margin: 7.29167vw auto 0;
		background-position: 69.16667vw center;
		background-size: 2.70833vw auto;
	}
	.infoArchive .infoBox+.infoBox{
		margin-top: 3.75vw;
	}
	.infoArchive .sideBar{
		margin-top: 10.41667vw;
	}
	/* ==========================================================================
   ページ送り
========================================================================== */
	.pagenation{
		margin-top: 7.29167vw;
	}
	.pagenation ul{
		flex-flow: row wrap;
	}
	.pagenation li{
		margin: 1.04167vw .625vw 0;
	}
	.pagenation li:first-child{
		margin-left: 0;
	}
	.pagenation li:last-child{
		margin-right: 0;
	}
	.pagenation .page-numbers{
		width: 8.75vw;
		height: 8.75vw;
	}
	.pagenation .dots{
		width: auto;
		background: none;
	}
	.pagenation .next img,.pagenation .prev img{
		width: 3.125vw;
	}
	/*end*/
	.header{
		-ms-grid-column: 1;
		-ms-grid-row: 1;
	}
	.pageContainer{
		-ms-grid-column: 1;
		-ms-grid-row: 2;
	}
	.footer{
		-ms-grid-column: 1;
		-ms-grid-row: 3;
	}
}
@media only screen and (max-width: 481px){
}
.singleEdit{
	line-height: 1.7;
	overflow: hidden;
	color: #333;
}
.singleEdit>*:last-child{
	margin-bottom: 0 !important;
}
.singleEdit>div,.singleEdit>figure{
	margin-bottom: 2em;
}
.singleEdit .has-normal-font-size{
	font-size: 1.6rem;
}
.singleEdit h2{
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: .6em;
}
.singleEdit h3{
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: .6em;
}
.singleEdit h2,.singleEdit h3,.singleEdit h4{
	line-height: 1.3;
	color: #171310;
	color: var(--color);
}
.singleEdit p{
	margin: 0 0 2em;
	color: #333;
}
.singleEdit ul,.singleEdit ol,.singleEdit dl{
	margin: 0 0 2em;
}
.singleEdit table{
	margin-bottom: 2em;
}
.singleEdit a{
	text-decoration: underline;
	color: #268a00;
}
.singleEdit ul li::before{
	content: '・';
}
.singleEdit ul li:last-child{
	margin-bottom: 0;
}
.singleEdit ol{
	padding-left: 2em;
	list-style-type: decimal;
}
.singleEdit ol li{
	margin: 0 0 .5em;
}
.singleEdit ol li:last-child{
	margin-bottom: 0;
}
.singleEdit table{
	width: 100%;
	margin: 0 auto 2em;
	border: 1px solid #646464;
}
.singleEdit table caption{
	margin: 0 0 7px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--meta-gray);
}
.singleEdit td{
	padding: 7px;
	border: 1px solid #646464;
}
.singleEdit td:last-child{
	border-right: 0;
}
.singleEdit th{
	padding: 7px;
	border: 1px solid #646464;
}
.singleEdit th:last-child{
	border-right: 0;
}
.singleEdit blockquote{
	font-style: italic;
	margin: 0 0 2em .75em;
	padding: 0 0 0 .75em;
	color: var(--meta-gray);
	border-left: 3px solid var(light-gray);
}
.singleEdit blockquote p{
	margin-bottom: .5em;
}
.singleEdit dd{
	font-size: .9em;
	margin-bottom: .5em;
	margin-left: 0;
	color: #0075e9;
}
.singleEdit .wp-block-image{
	margin-bottom: 2em;
}
.singleEdit .alignnone,.singleEdit img.alignnone{
	margin-bottom: 2em;
}
.singleEdit .alignleft,.singleEdit img.alignleft{
	display: inline;
	float: left;
	margin-right: 1em;
	margin-bottom: 2em;
}
.singleEdit .alignright,.singleEdit img.alignright{
	display: inline;
	float: right;
	margin-bottom: 2em;
	margin-left: 1em;
}
.singleEdit .aligncenter,.singleEdit img.aligncenter{
	display: block;
	clear: both;
	margin-right: auto;
	margin-bottom: 2em;
	margin-left: auto;
}
.singleEdit pre{
	font-size: 1em;
	margin: 0 0 2em;
	padding: 1em;
	color: var(--light-gray);
	border-radius: 3px;
	background: var(--black);
}
/* end .entry-content */
.wp-block-image figcaption{
	font-size: .9em;
	max-width: 100%;
	margin: .5em 0 0 0;
	text-align: center;
}
.wp-block-table table{
	margin-bottom: 0;
}
.wp-block-table figcaption{
	font-size: .9em;
	max-width: 100%;
	margin: .5em 0 0 0;
	text-align: center;
}
.wp-block-media-text__content ul,.wp-block-media-text__content ol,.wp-block-media-text__content dl,.wp-block-media-text__content p,.wp-block-media-text__content table{
	margin-bottom: 0;
}
@media only screen and (max-width: 767px){
	.singleEdit .alignleft,.singleEdit img.alignleft{
		display: block;
		float: none;
		margin: 0 auto 2em;
	}
	.singleEdit .alignright,.singleEdit img.alignright{
		display: block;
		float: none;
		margin: 0 auto 2em;
	}
	.singleEdit .aligncenter,.singleEdit img.aligncenter{
		display: block;
		clear: both;
		margin-right: auto;
		margin-bottom: 2em;
		margin-left: auto;
	}
	.singleEdit .wp-block-media-text{
		-ms-grid-columns: 1fr;
		grid-template-areas: 'media-text-media' 'media-text-content';
		grid-template-columns: 1fr;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__media{
		grid-area: media-text-media;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__content{
		padding: 1.5em 0 0;

		grid-area: media-text-content;
	}
}
@media only screen and (max-width: 767px){
	.singleEdit .wp-block-media-text .wp-block-media-text__media{
		-ms-grid-column: 1;
		-ms-grid-row: 1;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__content{
		-ms-grid-column: 1;
		-ms-grid-row: 2;
	}
}