@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Yusei+Magic&display=swap');

* {
	font-family: 'Noto Serif JP', serif;
	box-sizing: border-box;
	list-style: none;
	padding: 0;
	margin: 0;
	letter-spacing: 0.1em;
}

html {
  height: 100%;
}
body {
  min-height: 100%;
  display: flex;
  flex-direction: column;
	overflow-x: hidden;
}

ul, ol {
    margin: 0 0 0 0;
}

a, a:visited {
	color: rgba(0,27,77,1.00);
}

/*.current-menu-item a {
	background-color: rgba(0,27,77,1.00);align-content;
	color: #ffffff;
}*/


/**SECOND共通
---------------------------------------------------------**/
/*枠組み*/
div#page.site {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	flex: 1;
	overflow: hidden;
}

/*ヘッダー*/
header#masthead.site-header {
	position: relative;
	width: 96vw;
	margin: 0 0 0 4vw;
/*	padding-bottom: calc(50px + (45px + 2.5vw));*/
	padding: 0 0 20px;
	overflow: hidden;
}

div.site-branding {
	margin: 4vh 0 0 0;
	max-width: 18vw;
	min-width: 220px;
	float: left;
}

div.site-info {
	display: none;
}
.main-navigation {
	position: relative;
	max-width: 60vw;
	font-size: 0.95rem;
	font-weight: 700;
	color: #001446;
	margin: 25px 0 0 0;
	float: right;
}
.main-navigation a {
	display: initial;
	padding: 3px 10px;
	line-height: 2.0rem;
}

.menu-g-navi-container {
	width: 100%;
}

.menu.nav-menu {
	display: flex;
	flex-wrap: wrap;
}

.menu-g-navi-container li a {
	width: auto;
	flex-grow: 0;
	flex-shrink: 0;
	margin: 5px 0;
	transition: 1.0s;
}

.menu-g-navi-container a:hover {
	background-color: #001446;
	color: #ffffff;
}

.menu-g-navi-container li{
	flex-basis:33%;
}


/*フッター*/
footer#colophon.site-footer {
	width: 100%;
	right: 0;
	height: 350px;
	text-decoration: none;
	padding: 0 4vw;
	background-color: #001446;
	position: relative;
}

.editorial {
  display: none
}
div.footerwrap {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 350px;
	padding: 10px 0;
}
div.footerleft {
	flex-basis: 300px;
}
div.footerright {
	flex-basis: auto;
	padding: 10px 0 10px 10%;
	color: #ffffff;
}
div.footerright p.name {
	margin-bottom: initial;
	font-weight: 100;
	font-size: 0.9rem;
	margin-bottom: 10px;
}
div.footerright p.address {
	margin-bottom: initial;
	font-size: 0.8rem;
	color: #7f89a2;
	margin-bottom: 10px;
}
div.footerright p span {
	font-size: 1.3rem;
}
div.footer_menu {
	margin: 40px 0 0px 5%;
}
div.footer_menu ul{
	display: flex;
	flex-wrap: wrap;
}
div.footer_menu ul li {
	flex-basis: 30%;
	height: 1.8rem;
}
div.footer_menu ul li a {
	color: #ffffff;
	text-decoration: none;
	font-size: 1.0rem;
	padding: 3px 10px;
	transition: 1.0s;
}
div.footer_menu ul li a:hover {
	background-color: #ffffff;
	color: #001446;
	text-decoration: none;
	font-size: 1.0rem;
}

.page_top_btn {
    position: fixed;
    right: 2%;
    bottom: 3%;
    z-index: 99999;
    width: 80px;
    height: 78px;
    color: transparent;
    border: none;
    background: rgba(0,27,77,.8);
    box-shadow: 0 0 0 1px rgb(255 255 255 / 80%), 0 0 0 2px rgb(0 0 0 / 80%);
    background-image: var(--ver_page_top_button_url);
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    transition: opacity .3s;
    text-decoration: none;
}


/*サブメニュー*/
aside#secondary.widget-area {
	width: 25vw;
	margin: 0;
	padding: 50px 15px 0 0;
	position: absolute;
	top: 35vh;
	left: 0;
	font-size: 0.8rem;
	background-color: #f0f2f8;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	box-sizing: border-box;
	}

div.sub {

}

p.submenutitle {
	font-size: 1.6rem;
	font-weight: 900;
	border-bottom: 5px solid #001446;
	padding: 0 15px 20px 15px;
	letter-spacing: 0.1em;
}
h2.widget-title {
	font-size: 1.6rem;
	font-weight: 900;
	border-bottom: 5px solid #001446;
	padding: 0 15px 25px 15px;
	margin-bottom: 30px;
	letter-spacing: 0.1em;
}
h2.widget-title a {
	text-decoration: none;
}

p.submenutitle span {
	display: block;
	font-size: 0.8rem;
}

ul.submenu {

}
ul.localNavi {

}
ul.submenu li a {
	flex-basis: 100%;
	line-height: 50px;
	font-size: 1.3em;
	font-weight: 500;
	margin: 20px 0 0;
	color: #001446;
	text-decoration: none;
	padding: 3px 15px;
	transition: 1.0s;
}
ul.submenu li a:hover {
	background-color: #001446;
	color: #ffffff;
}
ul.localNavi li a {
	flex-basis: 100%;
	line-height: 50px;
	font-size: 1.3em;
	font-weight: 500;
	margin: 20px 0 0;
	text-decoration: none;
	padding: 3px 15px;
}
ul.localNavi li a:hover {
	background-color: rgba(0,27,77,1.00);align-content;
	color: #ffffff;
}
ul.localNavi .current_page_item a {
	background-color: rgba(0,27,77,1.00);align-content;
	color: #ffffff;
}


/*メインエリア*/
main#primary.site-main {
	overflow: auto;
	color: #001446;
	font-weight: 500;
}
div.entry-content {
	background-color: #f0f2f8;
	width: 100%;
	padding-left: 25vw;
	padding-bottom: 100px;
	margin-top: 100px;
	float: right;
	position: relative;
}
div.entry-content .secondtop {
	position: relative;
	height: auto;
}
div.entry-content .secondtop:after {
	content: "";
    display: block;
    padding-top: 30%;
	position: relative;
}
div.entry-content .secondtopimg {
	width: 75vw;
	height: auto;
	margin-top: -120px;
}
div.secondtoptext {
	background-color: rgba(255,255,255,0.8);
	padding: 5%;
	width: 65%;
	min-width: 600px;
	position: absolute;
	top: 15vw;
	right: 0;
	line-height: 2.5vw;
	font-size: 1.0rem;
	font-weight: 500;
}
div.secondtoptext lead {
	display: block;
	font-size: 1.5rem;
	line-height: 3.0rem;
	margin-bottom: 50px;
}

div.entry-content ul.pagesubmenu {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	align-content: flex-start;
	width: 90%;
	margin-top: 25px;
}

ul.pagesubmenu h2 {
	font-size: 1.3rem;
	margin: 0 0 15px 0;
}

ul.pagesubmenu h2:before {
	content: "＞";
	background-color: #001446;
	color: #ffffff;
	font-size: 0.8rem;
	padding: 3px 5px;
	margin: 0 15px 0 0;
}

ul.pagesubmenu li {
	width: 31%;
	min-height: 15vw;
	background-color: #fff;
	margin: 0 0 2vw 0;
	padding: 3%;
	border-top: solid 1px #001446;
}
ul.pagesubmenu li a {
	width: 100%;
	height: 100%;
	display: block;
	color: #001446;
	text-decoration: none;
	transition: 1.0s;
}
ul.pagesubmenu li:hover {
	background-color: #dfe2eb;
}
ul.pagesubmenu li.space {
    width: 31%;
    height: 15vw;
    background-color: #f0f2f8;
    margin: 0 0 2vw 0;
    padding: 3%;
    border-top: solid 1px #f0f2f8;
}
ul.pagesubmenu li p {
	display: block;
	margin: 15px 0 0;
}
div.entry-content ul.pagesubmenu::after {
	content: '';
	width: 31%;
	min-height: 15vw;
}


/*見出し*/
main#primary.site-main header.entry-header, footer.entry-footer {
	display: none;
}

/*--------------------コンテンツエリア--------------------*/
.home div.entry-content {
	background-color: #fff;
}

div.contentarea {
	margin: 5vw 5vw 10vw 0;
	line-height: 2.2rem;
}

div.contentarea h2 {
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 3.5rem;
	margin-bottom: 50px;
}

div.contentarea lead {
	display: block;
	font-size: 1.2rem;
	font-weight: 500;
	margin-bottom: 30px;
	line-height: 1.5rem;
	padding: 10px 20px;
	background-color: #001446;
	color: #ffffff;
}

div.contentarea ul.list {

}

div.contentarea ul.list, ol.list {
	margin: 20px 0;
	background-color: #fff;
	padding: 40px 60px;
}

div.contentarea ul.list li {
	list-style-type: disc;
}

div.contentarea ol.list li {
	list-style-type: decimal;
}

div.contentarea .title {
	font-size: 1.2rem;
	font-weight: 500;
	margin: 20px 0 10px;
	padding-left: 12px;
	border-left: 10px solid #001446;
}

div.contentarea h3 {
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 2.5rem;
	margin: 50px 0 20px;
}

div.contentarea .whitewrap {
	background-color: #ffffff;
	padding: 40px 60px;
	margin: 20px 0;
}

div.contentarea .whitewrap02 {
	background-color: #ffffff;
	padding: 40px 60px;
	margin: 20px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
div.contentarea .whitewrap02 img {
	width: 90vh;
	min-width: 70%;
}

/*お知らせ*/
span.noimg {
	display: none;
}

div.post_desc {
	background-color: #ffffff;
	margin-bottom: 2px;
	padding: 10px 20px;
}

span.news_date {
	display: block;
}

/*メディア実績*/
div.contentarea dl {
	background-color: #ffffff;
}
div.contentarea dt {
	border-top: solid 2px #f0f2f8;
}
div.contentarea dt {
	margin: 30px;
}
div.contentarea dd {
	margin: 30px;
}

/*プログラム*/

/*体験談*/
div.experiences p, div.experiences h3 {
  font-family: 'Yusei Magic', sans-serif;
}
div.experiences p {
	font-size: 1.2rem;
}

/*投稿*/
main#primary.site-main.single header.entry-header {
	display: block;
}
span.byline {
	display: none;
}
main#primary.site-main.single div.entry-content, div.entry-header {
	padding:5vw 5vw 0;
	line-height: 2.2;
}
main#primary.site-main.single h1.entry-title {
	padding:5vw 5vw 0;
	line-height: 2.2;
}
main#primary.site-main.single div.entry-meta {
	padding:0vw 5vw 0;
	font-size: 0.7rem;
}
.comment-navigation .nav-links, .posts-navigation .nav-links, .post-navigation .nav-links {
	width: 100%;
    display: flex;
	justify-content: space-between;
	background-color: #f0f2f8;
	padding-bottom: 5vw
}
.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation {
    margin: 0 0 0;
}
main#primary.site-main.single div.entry-content {
	margin-top: 20px;
	padding-bottom: 100px;
}
main#primary.site-main.single footer {
	margin-top: 100px;
}



/**HOME
---------------------------------------------------------**/

/*枠組み*/
.home div#page.site {
	overflow: hidden;
}

/*ヘッダー*/
.home header#masthead.site-header {
	position: absolute;
	top: calc(50vh + 0px);
	left: 0;
	width: 96vw;
	margin: 0 0 0 4vw;
	padding-bottom: 0;
	background-color: #ffffff;
	overflow: hidden;
}

.home div.site-branding {
	display: inline-block;
	position: relative;
	margin: 6vh 0 0 0;
	max-width: 18vw;
	min-width: 220px;
	float: left;
	z-index: 1;
}

.home div.site-info {
	display: block;
	margin: 4vh 0 0;
	width: 100%;
}

div.site-info a {
	position: absolute;
	bottom: 0;
	text-decoration: none;
	font-size: 0.5rem;
	letter-spacing: 0;
	color: #001446;
	right: 0;
}

.home .main-navigation {
	position: relative;
	max-width: 60vw;
	font-size: 0.95rem;
	font-weight: 700;
	color: #001446;
	margin: 6vh 0 0 0;
	float: right;
	z-index:99;
}


/*フッター*/
.home footer#colophon.site-footer {
	width: 100%;
	height: 15vh;
	position: absolute;
	bottom: 0;
	text-decoration: none;
	background-color: #f0f2f8;
	box-sizing: border-box;
}

.home .editorial {
  display: block;
  width: 100%;
  height: 60px;
  max-height: 60px;
  margin: 0;
  z-index:5;
  bottom:15vh;
  position:absolute;
  left:0px;
  float:left;
}

.home .parallax > use {
  animation: move-forever 30s linear infinite;
  &:nth-child(1) {
    animation-delay: -2s;
  }
}
@keyframes move-forever {
  0% {
    transform: translate(-90px, 0%);
  }
  100% {
    transform: translate(85px, 0%);
  }
}

.home div.topfooter {
	width: 92vw;
	display: flex;
	position: absolute;
	bottom: 15px;
	z-index: 9999;
	align-items: center;
	margin: 0;
	padding: 0;
}

/*リンクバナー*/
.home div.topfooterleft {
	width: 46vw;
}
.home div.topfooterleft p {
	font-size: 0.8rem;
}
.home div.topfooterleft ul li {
	float: left;
}
.home div.topfooterleft img {
	height: 60px;
	-webkit-backface-visibility: hidden;
	margin: 0 30px 0 0;
}

.home div.topfooterright {
	width: 46vw;
}

/*NEWS*/
.home footer#colophon.site-footer ul {
	display: block;
	width: 50vw;
	color: #001446;
	margin: 0;
}
.home footer#colophon.site-footer ul li.news:before {
	content: "NEWS : ";
}
.home footer#colophon.site-footer ul li.news {
	font-size: 0.8rem;
	padding: 1px;
	margin-bottom: 10px;
}
/*TEL*/
.home footer#colophon.site-footer ul li.phone {
	margin: 0.5vh 3vw 0 0;
}
.home footer#colophon.site-footer ul li.phone span {
	font-family: Georgia, YuMincho, "游明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-style: italic;
	font-size: 2.5rem;
	font-weight: bold;
	margin-left: 5px;
	line-height: 3.0rem;
}
.home footer#colophon.site-footer ul li.phone span:after{
	content: "（月～土 9:00～17:00）";
	font-size: 0.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	font-style: normal;
	letter-spacing: 0rem;
}
.home .fa-phone-alt:before {
	font-size: 1.5rem;
}
.home footer#colophon.site-footer ul li.phone:nth-child(2) {
	float: left;
}
/*.home footer#colophon.site-footer ul li.phone:nth-child(2):before {
	content: "館山DARC";
	display: block;
	font-size: 0.8rem;
}*/
.home footer#colophon.site-footer ul li.phone:nth-child(3):before {
	content: "S.A.R.S.千葉";
	display: block;
	font-size: 0.8rem;
}

.home .entry-content {
	margin: 0 0 0;
	min-height: auto;
	width: 100%;
	float: none;
	padding: 0;
}

.home h1 {
	display: none;
}

.home main#primary.site-main {
	background-color: #fff;
	overflow: hidden;
}

/*--------------------スライド部分--------------------*/
/*スライドする要素*/
.home .content {
	height: 50vh;
}

.content:nth-child(1) {
	width: calc(75vh * 1.6);
	background-image: url("../../uploads/2021/06/0001.jpg");
	background-size: auto 100%;
	background-position: right bottom;
	position: relative;
}
	
.content:nth-child(2) {
	width: calc(50vh * 1.05);
	background-image: url("../../uploads/2021/04/hands.jpg");
	background-size: cover;
	background-position: center bottom;
	position: relative;
}

.content:nth-child(3) {
	width: calc(50vh * 1.05);
	background-image: url("../../uploads/2021/04/capsule.jpg");
	background-size: cover;
	background-position: center top;
	position: relative;
}
.content:nth-child(4) {
	width: calc(50vh * 1.05);
	background-image: url("../../uploads/2021/02/13.jpg");
	background-size: cover;
	background-position: center top;
	position: relative;
}
.content:nth-child(5) {
	width: calc(50vh * 1.05);
	background-image: url("../../uploads/2021/02/15.jpg");
	background-size: cover;
	background-position: center top;
	position: relative;
}
.content:nth-child(6) {
	width: calc(50vh * 1.05);
	background-image: url("../../uploads/2021/02/20.jpg");
	background-size: cover;
	background-position: right bottom;
	position: relative;
}

/*スライドレールの枠*/
.home .wrap {
	overflow: hidden;
	display: flex;
	align-items: center;
	height: 50vh;
	width: 600%;
	margin-bottom: 100px;
}

/*content4つをまとめたスライドブロック*/
.slideshow {
	display: flex;
	-webkit-animation: loop-slide 20s infinite linear 1s both;
	animation: loop-slide 60s infinite linear 1s both;
}

@-webkit-keyframes loop-slide {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

@keyframes loop-slide {
	from {
		sransform: translateX(0);
	}
	to {
    	transform: translateX(-100%);
	  }
}

/* ホバー時に動きを止める（パターン2・3）*/
.slide-paused:hover .slideshow {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

/* ホバー時の装飾（パターン3） */
.home .content-hover {
  transition: all 0.2s;
}

.home .content-hover:hover {
  cursor: pointer;
}

/*スライド内リンク関連*/
.home .content a {
	display: block;
	width: 100%;
	height: 100%;
}

.home .content p {
	position: absolute;
	right: 0;
	top: 50%; /*親要素を起点に上から50%*/
	transform: translateY(-50%) translateX(0%); /*要素の大きさの半分ずつを戻す*/
	-webkit-transform: translateY(-50%) translateX(0%);
	font-size: 2rem;
	color: #001446;
	margin: 0 20px 0 0;
}

.home .content p span {
	display: block;
	font-size: 0.8rem;
	color: #4A5467;
}

span.about01, span.message01, span.program01, span.media01, span.experiences01, span.recruit01 {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 20vmin;
	min-width: 120px;
	height: calc(18vmin * 1.02);
	min-height: 105px;
	background-color: #ffffff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #001446;
}

.content span.ja {
	display: block;
	font-size: 1.8vh;
	font-weight: 700;
}
.content span.en {
	display: block;
	font-size: 0.5vh;
}

.about:hover .about01 {
	background-color: #001446;
	color: #ffffff;
}
.message:hover .message01 {
	background-color: #001446;
	color: #ffffff;
}
.program:hover .program01 {
	background-color: #001446;
	color: #ffffff;
}
.media:hover .media01 {
	background-color: #001446;
	color: #ffffff;
}
.experiences:hover .experiences01 {
	background-color: #001446;
	color: #ffffff;
}
.recruit:hover .recruit01 {
	background-color: #001446;
	color: #ffffff;
}
/*--------------------スライド部分--------------------*/



/*--------------------ハンバーガー--------------------*/
nav#s-navi.pcnone {
	position: relative;
	max-width: 67vw;
	font-size: 0.95rem;
	font-weight: 700;
	color: #001446;
	margin: 25px 10px 0 0;
	float: right;
}

#nav-drawer {
  position: relative;
  margin-left: 0px;
  margin-top: 0px;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display: none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 25px;/*長さ*/
  border-radius: 3px;
  background: #001446;/*線の色*/
  display: block;
  content: '';
  cursor: pointer;
}

#nav-open span:before {
  bottom: -8px;
}

#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/*最前面に*/
  width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 330px;/*最大幅（調整してください）*/
  height: 100%;
  background: #fff;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
}


/*チェックが入ったらもろもろ表示*/
#nav-input:checked~#nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked~#nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
  z-index: 9998;
}

/*ハンバーガーメニューの中身もろもろ*/
.hamburger-top {
  position: relative;
  background-color: #001446;
  text-align: center;
  padding: 15px 15px;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 5px;
  color: #fff;
	margin-bottom: 20px;
}

.humburger-top .cancel{
    display: inline-block;
    padding: 10px 3px;
}

.cancel {
  display: inline-block;
  position: absolute;
  cursor: pointer;
  top: 15px;
  right: 20px;
  width: 5px;
  height: 30px;
  background: #fff;
  transform: rotate(45deg);
  z-index: 99;
}

.cancel:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: -13px;
  width: 31px;
  height: 5px;
  margin-top: -3px;
  background: #fff;
}

/*中身次第で工夫してください　ここから*/
.top-info{
  padding: 10px 15px;
}
/*中身次第で工夫してください　ここまで*/

.category {
  background-color: #58a9ef;
  font-size: 22px;
  padding: 7px 10px;
  color: #fff;
  font-weight: bold;
}

.menu-container{
  padding: 5px 10px;
}
.menu-container li {
  float: none;
  font-size: 15px;
  padding: 10px 15px 10px 15px;
  list-style: none;
  text-align: left;
  border-bottom: dashed 1px #999;
}

.menu-container li:last-child {
  border: none;
}

.menu-container li a {
  text-decoration: none;
  color: #000;
}

.menu-container a:before {
  font-family: "Font Awesome 5 Free";
  content: "\f07b";
  font-weight: 900;
  color: #58a9ef;/*アイコン色*/
  margin-right: 5px;
}

.menu-container .child a:before{
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  font-weight: 900;
  color: #58a9ef;
  margin-right: 5px;
  margin-left: 15px;
}

/*--------------------ハンバーガー--------------------*/



/*--------------------モバイル対応--------------------*/

@media screen and (min-width: 961px) {
	nav#s-navi.pcnone {
		display: none;
	}
}
@media screen and (max-width: 960px) {
	header#masthead.site-header {
		position: relative;
		width: 96vw;
		margin: 0 0 0 4vw;
		/*padding-bottom: calc(50px + (45px + 2.5vw));*/
		padding: 0 0 20px;
		overflow: hidden;
	}
	nav#site-navigation.main-navigation {
		display: none;
	}
	/*MENU*/
	div.menu-smartphone-menu-container {
		border-bottom: solid 1px #f0f2f8;
		line-height: 2.5rem;
	}
	div.menu-smartphone-menu-container ul {
		border-top: solid 1px #f0f2f8;
	}
	div.menu-smartphone-menu-container ul li {
		border-bottom: solid 1px #f0f2f8;
		padding-left: 5%;
	}
	div.menu-smartphone-menu-container ul li a {
		display: block;
	}
	div.menu-smartphone-menu-container ul li:last-child {
		border-bottom: solid 0px #f0f2f8;
	}
	/*フッター*/
	div.footerwrap {
		display: block;
		height: auto;
		padding: 50px 0;
		text-align: center;
	}
	div.footerleft {
		display: block;
		width: 200px;
		height: auto;
		margin: 0 auto;
	}
	div.footerright {
		flex-basis: auto;
		padding: 10px 0 10px 0%;
		color: #ffffff;
	}
	div.footerright p.name {
		margin-bottom: initial;
		font-weight: 100;
		font-size: 0.9rem;
		margin-bottom: 10px;
	}
	div.footerright p.address {
		margin-bottom: initial;
		font-size: 0.8rem;
		color: #7f89a2;
		margin-bottom: 10px;
	}
	div.footerright p span {
		font-size: 1.3rem;
	}
	div.footer_menu {
		display: none;
	}

	.page_top_btn {
		position: fixed;
		right: 2%;
		bottom: 3%;
		z-index: 99999;
		width: 40px;
		height: 38px;
		color: transparent;
		border: none;
		background: rgba(0,27,77,.8);
		box-shadow: 0 0 0 1px rgb(255 255 255 / 80%), 0 0 0 2px rgb(0 0 0 / 80%);
		background-image: var(--ver_page_top_button_url);
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: center;
		opacity: 0;
		transition: opacity .3s;
		text-decoration: none;
	}
	/*ロゴ*/
	.home div.site-branding {
		margin: 3vh 0 0 0;
		max-width: 18vw;
		min-width: 220px;
		float: left;
	}
	.home div#page.site {
		overflow-y: scroll;
		/* IE, Edge 対応 */
		-ms-overflow-style: auto;
		/* Firefox 対応 */
		scrollbar-width: auto;
	}
	.home div#page.site::-webkit-scrollbar {
		display:none;
	}
	/*フッター*/
	.home .editorial {
		display: none;
	}
	.home footer#colophon.site-footer {
		height: auto;
		position: relative;
		padding: 5vw 4vw;
		margin-top: 100px;
		background-color: #FFFFFF;
		z-index: 99;
	}
	.home footer#colophon.site-footer ul {
    	display: block;
		position: relative;
		width: 100%;
		left: 0;
		color: #001446;
		margin: 0;
	}
	.home footer#colophon.site-footer ul li.phone span {
		font-family: Georgia, YuMincho, "游明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		font-style: italic;
		font-size: 2.0rem;
		font-weight: bold;
		margin-left: 5px;
		line-height: 3.0rem;
	}
	.home footer#colophon.site-footer ul li.phone span:after{
		display: block;
		content: "（月～土 9:00～17:00）";
		font-size: 0.8rem;
		font-family: 'Noto Serif JP', serif;
		font-weight: normal;
		font-style: normal;
		letter-spacing: 0rem;
	}
	.home div.topfooter {
		width: 92vw;
		display: flex;
		position: relative;
		bottom: 15px;
		z-index: 9999;
		align-items: center;
		margin: 0;
		padding: 0;
	}
	.home div.topfooterleft {
		width: 100%;
	}
	.home div.topfooterright {
		width: 100%;
		margin-top: 20px;
	}
	.home .fa-phone-alt:before {
		font-size: 1.8rem;
	}
	.home footer#colophon.site-footer ul li.phone:nth-child(2) {
		float: left;
	}
	.home footer#colophon.site-footer ul li.phone:nth-child(2) {
		float: none;
	}
	.home footer#colophon.site-footer ul li.phone:nth-child(3) {
		float: none;
	}
	.menu-g-navi-container {
		padding: 15px;
	}
	.menu-g-navi-container li {
	}
	
aside#secondary.widget-area {
    width: 100%;
    position: relative;
    top: initial;
    background-color: #f0f2f8;
	display: none;
}
	div.entry-content {
		background-color: #f0f2f8;
		width: 100%;
		padding: 0;
		margin-top: 0;
		float: none;
		position: relative;
	}
	div.contentarea {
		width: 100%;
		padding: 0 3%;
		margin: 5vw 5vw 0vw 0;
	}
.post, .page {
    margin: 0 0 0;
}

	div.contentarea h2 {
		font-size: 1.7rem;
		font-weight: 500;
		line-height: 2.0rem;
		margin-bottom: 30px;
	}
	div.contentarea lead {
		display: block;
		font-size: 1.0rem;
		font-weight: 500;
		margin-bottom: 30px;
		line-height: 1.5rem;
		padding: 10px;
		background-color: #001446;
		color: #ffffff;
	}
	div.contentarea ul.list, ol.list {
		margin: 20px 0;
		background-color: #fff;
		padding: 40px 30px;
	}
	div.contentarea .whitewrap {
		background-color: #ffffff;
		padding: 40px 30px;
		margin: 20px 0 0;
	}
	div.contentarea .whitewrap02 {
		background-color: #ffffff;
		padding: 20px 30px;
		margin: 20px 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	div.contentarea .whitewrap02 img {
		width: 90vh;
		min-width: 70%;
	}
	div.entry-content .secondtopimg {
    width: 100%;
    height: auto;
    margin-top: 0;
}
	div.secondtoptext {
		background-color: rgba(255,255,255,1.0);
		padding: 5%;
		width: 100%;
		min-width: initial;
		position: relative;
		top: 0;
		right: 0;
		line-height: 1.2rem;
		font-size: 1.0rem;
		font-weight: 500;
	}
	div.entry-content .secondtop:after {
		content: "";
		display: block;
		padding-top: 5%;
		position: relative;
	}
	div.entry-content ul.pagesubmenu {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		align-content: flex-start;
		width: 100%;
	}
	ul.pagesubmenu li {
		width: 100%;
		height: auto;
		background-color: #fff;
		margin: 0 0 2vw 0;
		padding: 3%;
		border-top: solid 1px #001446;
	}
}

@media screen and (max-width: 710px) {
	.home div.topfooter {
		width: 92vw;
		display: flex;
		flex-flow: column;
	}
}

/*IE*/
@media all and (-ms-high-contrast: none) {
	.ie_alert {
		display: none;
	}
	div.entry-content {
		position: absolute;
		padding-bottom: 200px;
	}
	.site-branding img {
		max-width: 18vw;
		min-width: 220px;
		margin: 2vh 0 0 0;
	}
	.main-navigation ul {
		display: block;
	}
	.main-navigation ul li {
		float: left;
		width: 33%;
		height: 1.7rem;
	}
	nav#s-navi.pcnone {
		z-index:99;
	}
	div.site#page {
		overflow: visible;
	}
	footer.site-footer#colophon {
		position: fixed;
		bottom: 0;
	}

	.home {
		overflow: hidden;
	}
	.home div.entry-content {
		position: absolute;
	}
	.home footer.site-footer#colophon {
		z-index: 99;
	}
	@media screen and (max-width: 960px) {
		.home footer.site-footer#colophon {
			position: absolute;
		}
	}
}

/*アニメーション*/

.anim-box.slidein.is-animated {
  animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}
@keyframes slideIn {
  0% {
    transform: translateX(180px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
  }
  40%,100% {
    opacity: 1;
  }
}
.smooth {
  clip-path: inset(0 100% 0 0);
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  transition-property: clip-path;
  line-height: 1;
  height: 40px;
  margin-top: 15px;
}
.smooth.is-animated {
  clip-path: inset(0);
}