@charset "utf-8";
/* CSS Document */

/* =======================================

	base css

========================================== */
body {
	-webkit-text-size-adjust: 100%;
}
.wrapper {
	min-width: auto;
	top: 200px;
}
.contents {
	width: auto;
	margin: 0 auto 30px;
}
.main,.sub {
	width: auto;
	margin: 0 13px 20px;
	float: none;
}
.sub {
	padding: 0;
}
.textLeft01 {
	float: none;
	width: auto;
}
.imageHalfRight01 {
	float: none;
	padding-left: 0;
	margin: 0 auto;
	width: 100%;
	max-width: 320px;
}
.imageHalfRight02 {
	float: none;
	padding-left: 0;
	margin: 0 auto;
	width: auto;
}
.imageHalfCenter01 {
	width: 100%;
	max-width: 350px;
}
/* =========== table =========== */
.tableHistory th,
.tableHistory td {
	display: block;
}
.tableHistory th {
	width: 100%;
}
/* =========== header =========== */
#topHead,
.inner {
	width: 100%;
	padding: 0;
}
#topHead {
	top: 0;
	position: fixed;
	margin-top: 0;
}
/* Fixed reset */
#topHead.fixed {
	padding-top: 0;
}
#mobileHead {
	width: 100%;
	height: 56px;
	z-index: 999;
	position: relative;
}
#topHead.fixed .logo,
#topHead .logo {
	position: absolute;
	left: 13px;
	top: 10px;
	width: 240px;
	height: 28px;
	font-size: 0.625em;
}
#topHead.fixed .logo em,
#topHead .logo em,
#topHead.fixed .logo a,
#topHead .logo a {
	width: 100%;
	height: 28px;
	padding: 0 0 0 90px;
	line-height: 1.2;
	-webkit-background-size: 85px 28px;
	background-size: 85px 28px;
}
#globalNav {
	position: absolute;
	top: -800px;
	background: #333;
	width: 100%;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
.open #globalNav {
	height: 100vh;
}
#globalNav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
	height: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
#globalNav ul li {
	float: none;
	position: static;
	border-bottom: 1px dotted #fff;
	margin: 0;
}
.open #globalNav ul li:last-child {
	padding-bottom: 60px;
	border-bottom: none;
}
.open #globalNav ul li ul li:last-child {
	padding-bottom: 0;
}
#globalNav ul li a:hover::before,
.home #globalNav ul li:nth-child(1) a::before,
.about #globalNav ul li:nth-child(2) a::before,
.guidance #globalNav ul li:nth-child(3) a::before,
.news #globalNav ul li:nth-child(4) a::before,
.link #globalNav ul li:nth-child(5) a::before {
    visibility: hidden;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}
#topHead #globalNav ul li a,
#topHead.fixed #globalNav ul li a {
	width: 100%;
	display: block;
	color: #fff;
	box-sizing: border-box;
}
#navToggle {
	display: block;
}
/* #navToggle 切り替えアニメーション */
.open #navToggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #navToggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #navToggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #globalNav スライドアニメーション */
.open #globalNav {
	/* #globalNav top + #mobileHead height */
	-moz-transform: translateY(856px);
	-webkit-transform: translateY(856px);
	transform: translateY(856px);
}
/*ドロップダウン解除*/
#globalNav ul .menuSecondLevel {
    visibility: visible;
    opacity: 1;
}
#globalNav ul .menuSecondLevel li:last-child {
    border-bottom: none;
}
#globalNav ul .menuDropDown .menuSecondLevel {
    position: static;
	padding: 0;
	top: auto;
    left: auto;
}
#globalNav ul .menuDropDown:hover .menuSecondLevel {
    top: auto;
}
.headerImage {
	height: 200px;
}
/* =========== footer =========== */
footer {
	width: auto;
	margin: 0 13px;
}
footer nav ul li {
	display: block;
}
.contactLink {
	margin: 0 auto 10px;
}
.contactLink .btnContact,
footer .tel {
	width: 80%;
	margin: 0 auto 10px;
}
.snsLinks {
	width: 200px;
	text-align: center;
	position: static;
	top: auto;
	right: auto;
	justify-content: center;
	margin: 0 auto 10px;
}
.snsLinks li {
	margin: 5px;
}

/* =========== side area =========== */
.boxFacebook .boxFacebookInner {
	width: 260px;
	margin: 0 auto;
}
.boxFacebook h2 {
	margin-bottom: 10px;
}

ul.sideBanner li img,
.outsideBannerList2 dd ul li img {
	width: 260px;
	margin: 0 auto;
}

ul.sideBanner li a,
.outsideBannerList2 dd ul li a {
	display: inline-block;
}
/* =========== heading =========== */
.heading01 {
	height: auto;
	margin-bottom: 30px;
}
/* =======================================

	unique css

========================================== */
/* home */
.contentsLink li {
	width: 50%;
	box-sizing: border-box;
}
.contentsLink li:nth-child(odd) {
	padding: 0 10px 0 0;
}
.contentsLink li:nth-child(even) {
	padding: 0 0 0 10px;
}
.home .homeGuidance {
	background-color: #666;
	background-size: cover;
	padding: 36px 20px 0;
}
.home .homeGuidance h2,
.home .homeGuidance p {
	font-weight: bold;
	text-align: center;
	color: #fff;
	text-shadow: 2px 2px 2px #000;
}
.home .homeGuidance h2 {
	font-size: 1.200em;
}
.home .homeGuidance .homeGuidanceLead {
	font-size: 1.200em;
	line-height: 1.4;
	margin-bottom: 15px;
}
.home .homeGuidance .homeGuidanceLead em {
	display: block;
}
.home .homeGuidance .homeGuidanceButton {
	text-align: center;
	font-weight: normal;
	line-height: 1.2;
}
.home .homeGuidance .homeGuidanceButton a::before {
	top: 8px;
}
.home .home_end_text {
	width: auto;
    margin: 0 13px 20px;
    float: none;
}
/* about */
.aboutIntroduction {
	padding: 20px 20px 260px;
}
.thumbnailList01 {
	display: inherit;
}
.thumbnailList01 li {
	max-width: 250px;
	width: auto;
	margin: 0 auto 20px;
}
.uniHeader p {
	width: 100%;
}
.uniHeader h5 {
	width: 100%;
	margin-bottom: 30px;
}
.uniHeader h5::after {
	top: 14px;
	left: 50%;
	margin-left: -20px;
}
.uniHeader h5 a {
	height: 38px;
	padding: 14px 10px 0;
}
.businessCooperationAgency .outsideBannerList dd ul li {
	width: 100%;
}
.pointWrap > div {
	-ms-flex-wrap: wrap-reverse;
	flex-wrap: wrap-reverse;
}
.pointWrap > div .pointDetail {
	padding-left: 0;
}
.pointWrap > div .pointDetail p {
	margin-bottom: 20px;
}
.pointWrap > div figure {
	width: 100%;
	text-align: center;
}
.pointWrap > div figure img {
	border-radius: 0;
}
/* news */
.news .sectionChild figure {
	float: none;
	width: auto;
	text-align: center;
	margin: 0 0 20px;
}
.news .sectionChild figure img {
	display: block;
	max-width: 250px;
	margin: 0 auto 5px;
}
.entrySentence,
.entryImages {
	float: none;
	width: auto;
	margin: 0 0 20px;
}
.entryImages figure {
	text-align: center;
}
.entryImages figure img {
	max-width: 375px;
	margin: 0 auto 5px;
}
.eventInfo li {
	width: 100%;
}
.entryList01 .sectionChild .hasThumbnail {
	float: none;
	width: auto;
}
.entryList01 .sectionChild figure {
	float: none;
	width: auto;
	max-width: 200px;
	margin: 0 auto;
}
/* link */
.linkList01 li {
	width: 100%;
}
/* guidance */
.contentInner01 p {
	width: 100%;
}
.contentInner01 .contentInnerImages01 {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	padding-left: 0;
}
.guidanceLeadCaption {
	background-color: transparent;
	padding: 10px 0;
	text-align: left;
}
.main .latticeBox dl {
	max-width: 350px;
	margin: 0 auto 30px;
}
.main .latticeBox dl:last-child {
	margin: 0 auto;
}
.latticeBox dl dt,
.latticeBox dl dd {
	width: 100%;
}
.main .latticeBox dl dd {
	padding: 10px 0 0;
}
.latticeBox2 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	max-width: 340px;
	margin: 0 auto 20px;
}
.latticeBox2 li {
	width: 100%;
	overflow: hidden;
}
.latticeBox2 li:nth-child(odd) {
	padding: 0 0 20px;
}
.latticeBox2 li:nth-child(even) {
	padding: 0 0 20px;
}
.main .latticeBox3 dl {
	max-width: 350px;
	margin: 0 auto 30px;
}
.latticeBox3 dl dt,
.latticeBox3 dl dd {
	width: 100%;
}
.main .latticeBox3 dl dd {
	padding: 10px 0 0;
}
.main .latticeBox3Incidental {
	max-width: 350px;
	margin: 0 auto;
	text-align: left;
}
.comparisonBox dl {
	width: 100%;
	margin: 0 auto 20px;
}
.thirdHierarchyMenu dl {
	width: 100%;
}
.thirdHierarchyMenu dl dd figure {
	max-width: 770px;
	margin: 0 auto;
}
.mainCategoryContents article blockquote ul li {
	width: auto;
	max-width: 280px;
	margin: 0 auto 20px;
}
.research .mainCategoryContents article blockquote ul li {
	padding: 0;
}
.picture-bookContentInner01 dl {
  margin: 0 auto 20px;
}
.listDelusion {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.listDelusion::after {
  content: none;
}
.listDelusion li {
  width: auto;
  max-width: 350px;
  min-width: 220px;
}
