@charset "UTF-8";
/* CSS Document */

/* ============================
	Reset
 ============================ */

* { margin:0;padding:0;}

html {

font-size:100%;
font-style: normal;
font-weight: normal;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
margin: 0;
padding: 0;
border: 0;
outline: 0;
vertical-align: baseline;
background: #fff;
-webkit-text-size-adjust: 100%;
}

div, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
/* font-size: 16px; */
line-height:1.75em;
vertical-align: baseline;
background: transparent;
font-style: normal;
font-weight: normal;
color: #4d4d4d;
}

span {
margin: 0;
padding: 0;
border: 0;
outline: 0;
line-height:1.0em;
vertical-align: baseline;
background: transparent;
}

body {
/* font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; */
font-family: "FOT-TsukuARdGothic Std","Century Gothic",sans-serif;
font-style: normal;
font-weight: normal;
background-color:#fff;
font-size:12px;
line-height:1.75em;
letter-spacing: 0.05em;
text-align:left;
margin: 0;
padding: 0;
border: 0;
outline: 0;
vertical-align: baseline;
background: transparent;
-webkit-text-size-adjust: 100%;
font-feature-settings : "palt" 1;
-webkit-print-color-adjust: exact;
}

.container {
position: relative;
box-sizing: border-box;
width:100%;
margin-left:auto;
margin-right:auto;
}

a {
	color: #666;
	text-decoration:none;
}

a:link {
/*	color: #006fff;*/
	text-decoration:none;
}

/*
a:hover {opacity: 0.8;}
a:hover img {opacity: 0.8;}
*/

li { list-style:none; }


.cf:before, .cf:after {
content:"";
display: table;
}
.cf:after { clear:both; }
.cf { *zoom:1; }

.clear {
    clear: both;
}
.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

ul:before, ul:after {
    content: "";
    display: table;
}


/*	---------------------------
   		display control
	--------------------------- */

.spDisplayNone {}
.tbDisplayNone {}
.pcDisplayNone {}


/* for SP */
@media screen and (max-width: 767px) {
		.spDisplayNone {display:none;}
		.smartContainer {margin: 0 15px;}
		/*.wrap {margin: 0 20px}*/
}

/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){
		.tbDisplayNone {display:none;}
		.smartContainer {margin: 0 20px;}
}

/* for PC */
@media screen and (min-width: 1025px) {
		.container { width:1024px;}
		.pcDisplayNone {display:none;}
		.smartContainer {margin: 0 125px;}
}



/* common */

h2.common {
text-align: center;
}

h2.common img {
width: 95%;
height: auto;
}


.gotoDetail {
text-align: center;
}

.gotoDetail a {
display: inline-block;
min-width: 180px;
padding: 15px 15px;
font-size: 14px;
font-weight: bold;
line-height: 1.5em;
background-color: #cec5bd;
box-shadow: 3px 3px 0 #ccc;
border-radius: 50px;
color: #fff;
}

.gotoDetail a span {
display: block;
font-size: 16px;
line-height: 1.5em;
margin: 5px 0;
/* color: #ff0; */
font-weight: bold;
}

.qualitySection .gotoDetail {
text-align: center;
margin-bottom: 100px;
margin-top: 50px;
}

.qualitySection .gotoDetail a {
display: inline-block;
width: 200px;
padding: 17px 20px 17px 30px;
font-size: 14px;
font-weight: bold;
line-height: 1.5em;
box-shadow: 3px 3px 0 #ccc;
border-radius: 100px;
color: #fff;
letter-spacing: 0.2em;
}

.qualitySection .gotoDetail a .inner {
display: inline-block;
}

.qualitySection .gotoDetail a .name {
display: block;
font-size: 14px;
line-height: 1.5em;
margin-top: 5px;
font-weight: bold;
text-align: left;
letter-spacing: 0.1em;
background-image: url("../images/bg_quality_button001.svg");
background-repeat: no-repeat;
background-position: right center;
background-size: 42px auto;
}

.bg_wh {
background-color: #fff;
}


/* for PC */
@media screen and (min-width: 1025px) {

			h2.common img {
			width: 520px;
			height: auto;
			}


			.gotoDetail {
			/* padding-top: 100px; */
			margin-bottom: 0px;
			}

			.gotoDetail a {
			width: 360px;
			padding: 15px 0;
			font-size: 22px;
			box-shadow: 5px 5px 0 #ccc;
			border-radius: 10px;
			}

			.gotoDetail a span {
			font-size: 19px;
			/* margin-top: 10px; */
			}

			.qualitySection .gotoDetail a {
			width: auto;
    		padding: 20px 40px;
    		font-size: 16px;
    		color: #fff;
    		letter-spacing: 0.2em;
    		box-shadow: 5px 5px 0 #ccc;
    		border-radius: 100px;
			}

			.qualitySection .gotoDetail a .inner {
			font-size: 20px;
			color: #fff;
			}

			.qualitySection .gotoDetail a .name {
			display: block;
			font-size: 30px;
			line-height: 1.5em;
			margin-top: 5px;
			font-weight: bold;
			text-align: left;
			color: #fff;
			letter-spacing: 0.1em;
			background-size: 84px auto;
			}

}




/* ============================
	header
 ============================ */

header {
position: fixed;
z-index: 9999;
background:linear-gradient(rgba(0,0,0,0.5),transparent);
height: 75px;
width: 100%;
}

header .haderLogo {
position: absolute;
top: 27px;
left: 25px;
}

header .haderLogo img {
width: 120px;
height: auto;
}

/* for PC */
@media screen and (min-width: 768px) {


		header {
		height: 110px;
		}

		header .haderLogo {
		position: absolute;
		top: 30px;
		left: 55px;
		}

		header .haderLogo img {
		width: 200px;
		height: auto;
		}

}




/* ============================
	worksGallery001
 ============================ */

.mainVisualSection {
margin-bottom: 0px;
position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
height: 100vh;/*高さを全画面にあわせる*/
background-image:url("../images/top_main.jpg");
background-repeat: no-repeat;
background-size: cover;
}

.mainVisualSection .tab{
width: 310px;
position: absolute;
top: 50%;
left: 50%;
z-index: 100;
transform: translate(-50%, -50%);
}

.mainVisualSection img{
width: 100%;
}

.mainVisualSection .scroll {
position: absolute;
right: 5%;
bottom: 16px;
height: 50px;
z-index: 100;
}
.mainVisualSection .scroll span {
position: absolute;
left: -15px;
top: -20px;
color: #eee;
letter-spacing: 0.05em;
font-weight: normal;
rotate: 90deg;
}

.mainVisualSection .scroll::after {
content: "";
position: absolute;
top: 0;
width: 1px;
height: 30px;
background: #eee;
animation: pathmove 1.4s ease-in-out infinite;
opacity: 0;
}

.mainVisualSection:after{
background-color: #54685F;
bottom: -1300px;
content: "";
height: 1300px;
position: absolute;
right: 0;
transform: skewY(-7deg);
transform-origin: top left;
width: 100%;
z-index: 5;
}

@keyframes pathmove{
0%{
height:0;
top:0;
opacity: 0;
}
30%{
height:30px;
opacity: 1;
}
100%{
height:0;
top:50px;
opacity: 0;
}
}


/* for PC  */
@media screen and (min-width: 1025px) {

		.mainVisualSection {
		margin-bottom: 0px;
		background-image:url("../images/top_main_a.jpg");
		}

		.mainVisualSection .tab {
		width: 390px;
    	position: absolute;
    	top: 45%;
    	left: 70%;
    	z-index: 100;
		}
	
		.mainVisualSection .scroll {
    	position: absolute;
    	right: 50%;
    	bottom: 16px;
    	height: 90px;
    	z-index: 100;
		}
	
		.mainVisualSection .scroll span {
    	position: absolute;
    	left: -15px;
    	top: -20px;
    	color: #eee;
    	letter-spacing: 0.05em;
    	font-weight: normal;
		}
	
		.mainVisualSection:after{
		bottom: -1140px;
		height: 1140px;
		background-image: url("../images/bg_feature001a.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: 80% top;
		}
	
}



/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){


		.mainVisualSection {
		margin-bottom: 0px;
		}

		
}


/*

.fadeInBody {
animation: fadeIn 12s ease 0s 1 normal;
background-color: transparent;
position: relative;
z-index: 999;
}


.fadeOutBody {
animation: fadeOut 9s ease 0s 1 normal;
animation-fill-mode: forwards;
}

@keyframes fadeIn {
0% {opacity: 0}
50% {opacity: 0}
70% {opacity: 1}
100% {opacity: 1}
}

@keyframes fadeOut {
0% {opacity: 0}
20% {opacity: 1}
80% {opacity: 1}
100% {opacity: 0}
}


.fadeOutBody .body {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background-image: url("../images/main001.jpg");
background-repeat: no-repeat;
background-size: cover;
}

.fadeOutBody .body figure {
position: absolute;
top: 30%;
left: 0;
z-index: 99999;
width: 100%;
height: 100vh;
text-align: center;
}

.fadeOutBody .body figure img {
width: 220px;
height: auto;
}

*/

/* for PC & TB */
@media screen and (min-width: 768px) {

/*
			.fadeOutBody .body figure {
			top: 40%;
			}

			.fadeOutBody .body figure img {
			width: 260px;
			height: auto;
			}

*/
}




/* ============================
	worksGallery001
 ============================ */
.main_bg {
position: absolute;
z-index: -1;/*最背面に設定*/
top: 0;
right:0;
left:0;
bottom:0;
overflow: hidden;
}

.main_bg::after {
content: '';
display: block;
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100vh;
background-color: rgba(0,0,0,0.2);
background-image: radial-gradient(#111 30%, transparent 45%);
background-size: 4px 4px;
background-position: 0 0, 2px 2px;
}

#video {
/*天地中央配置*/
position: absolute;
z-index: -1;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
/*縦横幅指定*/
width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
min-height: 100%;
min-width: 100%;
}





/* for PC */
@media screen and (min-width: 1025px) {
	
}


/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){


}




/* ============================
	formSection
 ============================ */


.formSection {
background-color: #fff;
padding: 100px 0 20px 0;
background-image: url("../images/wall_contact002.svg");
background-repeat: no-repeat;
background-position: right 10px top;
}


.thanksPage .formSection {
padding: 120px 0 100px 0;
background-position: right 10px top 20px;
}


.formSection .smartContainer {
background-color: #fff;
box-sizing: border-box;
padding: 40px 15px;
margin: 0 22px;
}


.formSection h2 {
margin-bottom: 15px;
text-align: center;
}

.formSection h2 span {
position: relative;
display: inline-block;
font-size: 19px;
font-weight: bold;
padding-bottom: 10px;
border-bottom: 6px solid #000;
}
.formSection h2 figure {
position: absolute;
top: -50px;
left: -110px;
}
.formSection h2 figure img {
width: 100px;
height: auto;
}


.formSection .requiredNote {
font-size: 13px;
text-align: right;
margin-bottom: 30px;
}
.formSection .required {
color: #f00;
}


/* main */

.formSection .main {
}

.formSection .main dl {
margin-bottom: 25px;
}

.formSection .main dt {
font-size: 16px;
font-weight: normal;
line-height: 1.5em;
margin-bottom: 10px;
}

.formSection .main dd {
}

.formSection .main h3 {
background-image: url("../images/bg_form001.png");
background-repeat: repeat-x;
background-position: left center;
}

.formSection .main h3 span {
display: inline-block;
background-color: #f4f4f4;
font-size: 18px;
font-weight: bold;
padding-left: 18px;
background-image: url("../images/mark001.svg");
background-repeat: no-repeat;
background-position: left center;
background-size: 15px auto;
line-height: 1.5em;
padding-right: 0.5em;
margin:  40px 0 30px 0;
}

.formSection .main .textList {
padding-left: 20px;

}
.formSection .main .textList li {
display: inline-block;
width: 140px;
font-size: 16px;
line-height: 1.5em;
margin-bottom: 15px;
}



.formSection .main {
}




input[type="text"] {
-moz-appearance: none;
-webkit-box-sizing: content-box;
-webkit-appearance: none;
appearance: none;
font-size:16px;
padding: 10px;
border: 1px solid #8a8989;
border-radius:0;
width: 100%;
box-sizing: border-box;
}

input[type="text"].userPlan {
width: calc(100% - 6em);
margin-right: 0.5em;
}

input[type="text"].userArea,
input[type="text"].userBuilding {
width: calc(100% - 4em);
margin-right: 0.5em;
}



textarea {
-moz-appearance: none;
-webkit-box-sizing: content-box;
-webkit-appearance: none;
appearance: none;
font-size:16px;
padding: 10px;
border: 1px solid #8a8989;
border-radius:0;
line-height: 1.5em;
width: 100%;
height: 170px;
box-sizing: border-box;
}

input[type="checkbox"],
input[type="radio"] {
/*display:none;*/
border:none;
border-radius: 0;
-moz-appearance: none;
-webkit-box-sizing: none;
-webkit-appearance: none;
appearance: none;
padding: 10px;
background-image: url(../images/mark003.svg);
background-repeat: no-repeat;
background-position: left center;
background-size: 15px auto;
cursor:pointer;
margin-right: 0em;
position: relative;
top: 4px;
}

input[type="checkbox"]:checked ,
input[type="radio"]:checked  {
background:url(../images/mark003a.svg) no-repeat left center;
background-size: 13px auto;
cursor:pointer;
opacity: 1 !important;
}

input[type="checkbox"] {
background-image: url(../images/mark003.svg);
}

input[type="checkbox"]:checked {
background-image: url(../images/mark003a.svg);
}


input[type="radio"] {
background-image: url(../images/mark002.svg);
}

input[type="radio"]:checked  {
background-image: url(../images/mark002a.svg);
}

input[type="submit"] {
-moz-appearance: none;
-webkit-box-sizing: content-box;
-webkit-appearance: none;
appearance: none;
font-size:20px;
font-weight: bold;
color: #fff;
padding: 0 10px;
background-color: #f38f1e;
border-radius: 10px;
box-sizing: border-box;
line-height: 70px;
width: 100%;
height: 80px;
position: relative;
top: -8px;
left: -8px;
border: 3px solid #fff;
cursor: pointer;
}

input[type="button"],
input[type="reset"] {
-moz-appearance: none;
-webkit-box-sizing: content-box;
-webkit-appearance: none;
appearance: none;
font-size:20px;
font-weight: bold;
color: #fff;
padding: 0 10px;
background-color: #808080;
border-radius: 10px;
box-sizing: border-box;
line-height: 70px;
width: 100%;
height: 80px;
position: relative;
top: -8px;
left: -8px;
border: 3px solid #fff;
cursor: pointer;
}



/* privacyPolicy */

.formSection .privacyPolicy {
background-color: #fff;
padding: 15px 10px;
box-sizing: border-box;
margin-bottom: 40px;
}

.formSection .privacyPolicy h3 {
font-size: 14px;
line-height: 1.5em;
margin-bottom: 15px;
}

.formSection .privacyPolicy .checkBox {
font-size: 14px;
line-height: 1.35em;
text-indent: -1em;
padding-left: 1em;
margin-bottom: 15px;
padding-bottom: 15px;
border-bottom: 1px solid #8a8989;
}

.formSection .privacyPolicy .body{
font-weight: 12px;
line-height: 1.35em;
margin-bottom: 10px;
}

.formSection .privacyPolicy .note {
font-weight: 12px;
line-height: 1.35em;
margin-bottom: 0px;
}

.formSection .privacyPolicy ul {
margin-bottom: 15px;
padding-bottom: 15px;
border-bottom: 1px solid #8a8989;
}

.formSection .privacyPolicy li {
font-weight: 12px;
line-height: 1.35em;
background-image: url("../images/mark001.svg");
background-repeat: no-repeat;
background-position: left top 4px;
background-size: 13px auto;
padding-left: 16px;
margin-bottom: 5px;
}


/* submit */

.formSection .submit {
margin-bottom: 50px;
margin-top: 50px;
}

.formSection .submit ul {
margin-bottom: 0px;
text-align: center;
}

.formSection .submit li {
display: inline-block;
width: 300px;
background-image: url("../images/bg_submit002.png");
margin-bottom: 30px;
border-radius: 10px;
}
.formSection .submit li:nth-child(2) {
background-image: url("../images/bg_submit003.png");
margin-bottom: 0;
}


/* thanksMeesage */

.formSection .thanksMeesage {
font-weight: 14px;
line-height: 1.75em;
margin: 30px 0;
}




.ui-datepicker-trigger {
width: 30px;
height: 30px;
margin: 0 0 0 10px;
}





/* for PC & TB */
@media screen and (min-width: 1025px) {

			.formSection {
			padding: 0 0 50px 0;
			background-image: none;
			}
		
			.thanksPage .formSection {
			padding: 20px 0 50px 0;
			background-position: right 10px top 20px;
			}

		
			.formSection .container {
			background-image: url("../images/wall_contact003.svg");
			background-repeat: no-repeat;
			background-position: right  top;
			padding-top: 280px;
			}
			
			.formSection .smartContainer {
			padding-top: 80px;
			margin: 0 40px;
			}

			.formSection h2 {
			padding-left: 0px;
			margin-bottom: 30px;
			}

			.formSection h2 span {
			font-size: 32px;
			padding-bottom: 15px;
			}

			.formSection .requiredNote {
			font-size: 18px;
			margin: 0 150px 75px 150px;
			}

			/* main */

			.formSection .main {
			margin: 0 50px;
			}

			.formSection .main dl {
			margin-bottom: 50px;
			}

			.formSection .main dt {
			margin-bottom: 0px;
			float: left;
			width: 230px;
			position: relative;
			top: 10px;
			font-size: 26px;
			}
			
			.formSection .main .userTiming dt {
			top: 0;
			}

			.formSection .main dd {
			float: right;
			width: calc(100% - 230px);
			font-size: 26px;
			}

			.formSection .main .textList {
			padding-left: 0px;
			position: relative;
			top: -15px;
			}
			.formSection .main .textList li {
			display: inline-block;
			width: 250px;
			margin-bottom: 15px;
			font-size: 26px;
			}

			.formSection .main h3 {
			}

			.formSection .main h3 span {
			font-size: 26px;
			}

			/* privacyPolicy */

			.formSection .privacyPolicy {
			padding: 30px 45px;
			margin: 0 0px 70px 0px;
			}

			.formSection .privacyPolicy h3 {
			margin-bottom: 25px;
			font-size: 26px;
			}

			.formSection .privacyPolicy .checkBox {
			line-height: 1.5em;
			margin-bottom: 25px;
			padding-bottom: 25px;
			font-size: 26px;
			}


			.formSection .privacyPolicy ul {
			margin-bottom: 25px;
			padding-bottom: 25px;
			padding-left: 1em;
			}

			/* submit */

			.formSection .submit {
			margin-bottom: 50px;
			}

			.formSection .submit ul {
			margin-bottom: 30px;
			text-align: center;
			}

			.formSection .submit li {
			width: 310px;
			}
			.formSection .submit li:nth-child(2) {
			margin-left: 120px;
			}

			input[type="text"] {
			font-size: 26px;
			}
			textarea {
			font-size: 26px;
			}


			input[type="checkbox"],
			input[type="radio"] {
			padding: 24px;
			background-size: 24px auto;
			top: 14px;
			}

			input[type="checkbox"]:checked,
			input[type="radio"]:checked {
			background-size: 24px auto;
			cursor:pointer;
			opacity: 1 !important;
			}

			.formSection .privacyPolicy .body {
			font-size: 26px;
			}

			.formSection .privacyPolicy li {
			font-size: 26px;
			background-position: left top 8px;
			background-size: 20px auto;
			padding-left: 24px;
			margin-bottom: 5px;
			}

			.formSection .privacyPolicy .note {
			font-size: 26px;
			}


			input[type="submit"] {
			font-size: 30px;
			}


			input[type="button"],
			input[type="reset"] {
			font-size: 30px;
			}



			/* thanksMeesage */

			.formSection .thanksMeesage {
			font-size: 18px;
			line-height: 1.75em;
			margin: 60px 0;
			text-align: center;
			}



}


/* for TB  */
/*
@media screen and (max-width: 1070px) and (min-width: 768px){

			.formSection .main {
			margin: 0 0px;
			}

			.formSection .main .textList li {
			width: 100px;
			}

			.formSection .privacyPolicy {
			padding: 20px 20px;
			margin: 0 0px 70px 0px;
			}

			.formSection .submit li:nth-child(2) {
			margin-left: 60px;
			}

}
*/

/* for PC */
@media screen and (min-width: 1071px) {
}







/* ============================
	sectionHeader
 ============================ */




/* index*/

.sectionHeader {
position: fixed;
left: 50%;
top: 0;
z-index: 999999;
transform: translateX(-50%);
width: 100%;
height: auto;
display: flex;
justify-content: flex-end;
align-items: center;
padding: 0px 30px;
}

.sectionHeader .toggle-btn {
position: relative;
height: 50px;
width: 50px;
display: block;
/*background-color: #000;*/
background-color: transparent;
top: 10px;
right: 20px;
}

.sectionHeader .toggle-btn span {
width: 32px;
height: 3px;
background-color: #fff;
border-radius: 0px;
overflow: hidden;
display: block;
position: absolute;
top: 24px;
left: 25px;
transform-origin: center;
transform: translate(-50%, 0px);
transition: 0.5s;
}

.sectionHeader .toggle-btn span:nth-child(1) {
transform: translate(-50%, -10px);
}

.sectionHeader .toggle-btn span:nth-child(3) {
transform: translate(-50%, 10px);
}

.sectionHeader .toggle-btn.active span:nth-child(2) {
width: 0;
}

.sectionHeader .toggle-btn.active span:nth-child(1) {
transform: translate(-50%, 0) rotate(45deg);
}

.sectionHeader .toggle-btn.active span:nth-child(3) {
transform: translate(-50%, 0) rotate(-45deg);
}


.section-nav {
height: 100%;
position: fixed;
z-index: 999998;
background-color: rgba(32, 63, 50, 0.8);
top: 0;
right: 0;
justify-content: center;
flex-direction: column;
width: 0;
overflow: hidden;
transition-duration: 0.3s;
transition-timing-function: ease-out;
}

.section-nav .nav-wrapper {
display: block;
width: 100%;
padding: 100px 0 0 50px;
}

.section-nav .nav-wrapper ul {
width: 100%;
}

.section-nav .nav-wrapper ul li {
opacity: 0;
font-size: 20px;
position: relative;
}

.section-nav .nav-wrapper ul a {
display: block;
font-size:15px;
color: #fff;
padding: 0 0 6px 0;
margin-bottom: 15px;
line-height: 1.5em;
}

.section-nav .nav-wrapper ul a span {
display: block;
font-size: 14px;
}


.section-nav.active {
width: 100%;
}

/* for PC */
@media screen and (min-width: 1025px) {

		.section-nav.active {
		width: 400px;
		}

}


.section-nav.active ul li {opacity: 1;}


.section-nav.active ul li.current a {
/* border-bottom: 1px solid #ffff00; */
}


/* ============================
	footer
 ============================ */



.thisPageTop {
position: fixed;
right: 0px;
bottom: 43px;
z-index: 99999;
}

.thisPageTop a {
display: block;
}


.thisPageTop img {
width: 50px;
height: auto;
}


/* for PC */
@media screen and (min-width: 1025px) {

		.thisPageTop {
		right: 10px;
		bottom: 5px;
		}

		.thisPageTop img {
		width: 60px;
		height: auto;
		}

}



/* ============================
	featureSection
 ============================ */
.featureSection {
background-image: url(../images/bg_feature001.svg);
background-repeat: no-repeat;
background-size: contain;
height: 1250px;
width: auto;
background-position: 20px 90px;
z-index: 5;
position: relative;
top: 60px;
}

.featureSection p {
color: #ffffff;
}

.featureSection img {
width: 100%;
}

.featureSection .content {

}

.featureSection h1 {
width: 135px;
margin-bottom: 40px;
}

.featureSection .lead {
font-size: 12px;
font-weight: bold;
letter-spacing: 0.1em;
line-height: 1.75rem;
}

.featureSection .box01 {
position: relative;
}

.featureSection .box01 p {
font-size: 14px;
position: relative;
top: 70px;
left: 10px;
line-height: 1.25em;
}

.featureSection .box01 p span {
font-size: 11px;
}

.featureSection .box01 .photo {
width: 260px;
margin-right: 10px;
margin-left: auto;
}

.featureSection .box02 {
margin-top: 20px;
}

.featureSection .box02 p {
font-size: 14px;
position: relative;
margin-left: 230px;
top: 30px;
line-height: 1.25em;
}

.featureSection .box02 p span {
font-size: 11px;
}

.featureSection .box02 .photo {
width: 270px;
margin-left: 10px;
margin-right: auto;
}

.featureSection .box03 {
margin-top: 0;
}

.featureSection .box03 p {
font-size: 14px;
position: relative;
line-height: 1.25em;
top: 250px;
margin-left: 160px;
}

.featureSection .box03 p span {
font-size: 11px;
}

.featureSection .box03 .photo {
width: 300px;
margin-right: 10px;
margin-left: auto;
}




/* for PC */
@media screen and (min-width: 1025px) {
	.featureSection {
	background-image: none;
	margin-top: 50px;
	height: 800px;
	/*	
	background-image: url("../images/bg_feature001a.svg");
	background-repeat: no-repeat;
	background-size: contain;
	height: 1308px;
	width: auto;
	background-position: 20px 90px;
	z-index: 5;
	position: relative;
	top: 60px;
	*/ 
	}

	.featureSection p {
	color: #ffffff;
	}

	.featureSection img {
	width: 100%;
	}

	.featureSection .content {
	height: 1000px;
	}

	.featureSection h1 {
	width: 200px;
    margin: 0 20px 40px 0;
	}

	.featureSection .lead {
	letter-spacing: 0.05em;
    line-height: 1.75rem;
    width: 450px;
	font-size: 14px;
	}

	.featureSection .box01 {
	position: absolute;
    top: -80px;
	}

	.featureSection .box01 p {
	top: 40px;
    left: 410px;
	}

	.featureSection .box01 .photo {
	width: 410px;
    margin-right: 0;
    margin-left: 0;
    position: relative;
    top: -90px;
    left: 500px;
	}

	.featureSection .box02 {
	
	}

	.featureSection .box02 p {
	
	}

	.featureSection .box02 p span {

	}

	.featureSection .box02 .photo {
	width: 430px;
    margin-left: 0;
    margin-right: 0;
    position: relative;
    top: 0;
    left: -90px;
	}

	.featureSection .box03 {
	
	}

	.featureSection .box03 p {
	top: -280px;
    margin-left: 0;
    left: 870px;
	}

	.featureSection .box03 p span {
	}

	.featureSection .box03 .photo {
	width: 530px;
    margin-right: 0;
    margin-left: 0;
    position: relative;
    left: 410px;
    bottom: 330px;
	}
	
}



/* ============================
	divisionSection
 ============================ */

.divisionSection {
background-image: url("../images/bg_division.jpg");
background-repeat: no-repeat;
background-size: cover;
}

.divisionSection img {
width: 100%;
}

.divisionSection .division {
width: auto;
overflow: auto;
padding-top: 80px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 40px;
}

.divisionSection .division img {
width: auto;
height: 560px;
}

.divisionSection .text {
position: absolute;
top: 420px;
}

.divisionSection .text h1 {
width: 175px;
margin-bottom: 30px;
}

.divisionSection .text p {
width: 300px;
color: #ffffff;
line-height: 2em;
}

.divisionSection .note {
position: absolute;
top: 340px;
font-size: 11px;
color: #ffffff;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
	.divisionSection {
	background-image: url("../images/bg_division_a.jpg");
	padding-top: 200px;
	}

	.divisionSection img {
	width: 100%;
	}

	.divisionSection .division {
	width: auto;
	overflow: auto;
	padding-top: 80px;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 60px;
	}

	.divisionSection .division img {
	width: 100%;
    height: auto;
	}

	.divisionSection .text {
	position: absolute;
    top: 440px;
    right: 410px;
	}

	.divisionSection .text h1 {
	width: 280px;
    margin-bottom: 50px;
	}

	.divisionSection .text p {
	width: 450px;
    color: #ffffff;
    line-height: 2em;
    font-size: 14px;
	}

	.divisionSection .note {
	position: absolute;
	top: 340px;
	font-size: 11px;
	color: #ffffff;
	}


}


/* ============================
	planSection
 ============================ */

.planSection {
background-color: #C3C0AB;
padding-bottom: 110px;
padding-top: 40px
}

.planSection p {
color: #3B0000;	
}

.planSection p .info {
margin: 10px 0; 
}

.planSection img {
width: 100%;
}

.planSection h1 {
width: 275px;
margin-top: 50px;
}

.planSection .plan01 {

}

.planSection .plan01 .land {
width: 210px;
margin-right: 10px;
margin-left: auto;
margin-top: 30px;
}

.planSection .plan01 .plan {
margin-top: -10px;
}

.planSection .plan01 p {
margin: 10px;
}

.planSection .plan02 {
margin-top: 40px;
}

.planSection .plan02 .land {
width: 230px;
margin-right: 0;
margin-left: auto;
}

.planSection .plan02 .plan {
	
}

.planSection .plan02 p {
margin: 10px;
}




/* for PC */
@media screen and (min-width: 1025px) {
	
	.planSection {
	position: relative;
	}
	

	.planSection p {
	font-size: 14px;
	}
	

	.planSection h1 {
	width: 430px;
    margin-top: 180px;
	}

	.planSection .plan01 {
	position: relative;
    margin-top: -50px;
	height: 500px;
	}

	.planSection .plan01 .land {
	width: 270px;
    position: relative;
    top: -120px;
    left: 40px;
	}

	.planSection .plan01 .plan {
	margin-top: 0;
    position: relative;
    top: -280px;
    width: 550px;
    left: -110px;
	}

	.planSection .plan01 .text {
	margin: 10px;
    position: absolute;
    width: 400px;
    bottom: 80px;
    left: 480px;
	}
	
	.planSection .plan01 .info {
	position: absolute;
    width: 400px;
    bottom: 35px;
    left: -80px;
	font-size: 12px;
	}

	.planSection .plan02 {
	margin-top: 40px;
    height: 500px;
	}

	.planSection .plan02 .land {
	width: 310px;
    position: relative;
    left: -600px;
 	}

	.planSection .plan02 .plan {
	margin-top: 0;
    width: 720px;
    position: relative;
    top: -288px;
    left: 170px;
	}

	.planSection .plan02 .text {
	width: 600px;
    position: relative;
    left: -135px;
    bottom: 290px;
    margin: 30px 0 0 0;
	}
	
	.planSection .plan02 .info {
	position: absolute;
    width: 400px;
    bottom: 210px;
    left: 480px;
    font-size: 12px;
    text-align: right;
	}
	
}


/* ============================
	voiceSection
 ============================ */
.voiceSection {
background-image: url(../images/bg_voice.jpg);
background-repeat: no-repeat;
background-size: cover;
padding: 100px 0;
position: relative;
clip-path: polygon(0 50px, 100% 0, 100% calc(100% - 50px), 0 100%);
margin-top: -100px;
}

.voiceSection .sp_Width {
margin: 0 15px;
}

.voiceSection p {
color: #ffffff;
}

.voiceSection img {
width: 100%;
}

.voiceSection h1 {
width: 229px;
margin-bottom: 60px;
margin-right: 0;
margin-left: auto;
}

.voiceSection .story01 {

}

.voiceSection .story01 .photo {

}

.voiceSection .story01 .title {
font-weight: bold;
margin: 5px;
font-size: 14px;
}

.voiceSection .more_btn {
width: 130px;
margin-top: 30px;
margin-right: 0;
margin-left: auto;
}

.voiceSection .story01 .text {

}

.voiceSection .story02 {
margin-top: 40px;
}

.voiceSection .story02 .photo {

}

.voiceSection .story02 .title {
font-weight: bold;
margin: 5px;
font-size: 14px;
}

.voiceSection .story02 .text {

}



/* for PC */
@media screen and (min-width: 1025px) {
	
	.voiceSection {
	background-image: url("../images/bg_voice_a.jpg");
	padding-top: 200px;
	padding-bottom: 200px;
	clip-path: polygon(0px 140px, 100% 0, 100% calc(100% - 140px), 0 100%);
	margin-top: -140px;
	}
	
	.voiceSection .sp_Width {
	margin: 0;
	}

	.voiceSection h1 {
	width: 380px;
	margin-bottom: 60px;
	margin-right: 0;
	margin-left: auto;
	}

	.voiceSection .story01 {
	position: relative;
	height: 360px;
	}

	.voiceSection .story01 .photo {
	width: 400px;
	}

	.voiceSection .story01 .title {
	font-size: 16px;
    width: 400px;
    position: absolute;
    top: 40px;
    left: 440px;
	}

	.voiceSection .story01 .more_btn {
	width: 130px;
	position: relative;
	top: -100px;
	right: 240px;
	}

	.voiceSection .story01 .text {
	position: absolute;
    top: 90px;
    left: 445px;
    width: 340px;
    line-height: 2rem;
	}

	.voiceSection .story02 {
	margin-top: 80px;
	position: relative;
	height: 390px;
	}

	.voiceSection .story02 .photo {
	width: 400px;
    position: absolute;
    right: 0;
	}

	.voiceSection .story02 .title {
	font-size: 16px;
    width: 400px;
    position: relative;
    left: 245px;
    top: 40px;
	}

	.voiceSection .story02 .text {
	width: 340px;
    line-height: 2rem;
    position: relative;
    left: 250px;
    top: 60px;
	}
	
	.voiceSection .story02 .more_btn {
	width: 130px;
    position: relative;
    top: 80px;
    right: 440px;
	}

}


/* ============================
	worksSection
 ============================ */
.worksSection {
background-image: url("../images/bg_works.svg");
background-size: cover;
background-repeat: no-repeat;
padding-top: 100px;
margin-top: 30px;
}

.worksSection p {
width: 280px;
text-align: right;
margin-left: auto;
margin-right: 10px;
}

.worksSection h2 {
width: 130px;
margin-left: auto;
margin-right: 10px;
margin-top: 10px;
margin-bottom: 30px;
}

.worksSection h2 img {
width: 100%;
}

.worksSection .box01 {
margin: 60px 10px 0 10px;
}

.worksSection .box01 img {
width: 100%;
}

.worksSection .box01 p {
text-align: left;
width: 100%;
margin: 15px 0 0 0;
line-height: 1.5em;
}

.worksSection .box01 .story01 {
position: absolute;
bottom: 350px;
width: 120px;
}

.worksSection .box01 span {
font-weight: bold;
}

.worksSection .box02 {
margin: 70px 10px 0 10px;
}

.worksSection .box02 img {
width: 100%;
}

.worksSection .box02 p {
text-align: left;
width: 100%;
margin: 15px 0 0 0;
line-height: 1.5em;
}

.worksSection .box02 .story02 {
position: absolute;
width: 120px;
bottom: 470px;
right: 0;
}

.worksSection .box02 span {
font-weight: bold;
}

.worksSection .box03 {
margin: 80px 10px 0 10px;
}

.worksSection .box03 .thumb {
width:80%;
margin:0 auto;
}

.worksSection .box03 img {
width: 100%;
}

.worksSection .box03 p {
text-align: left;
width: 100%;
margin: 15px 0 0 0;
line-height: 1.5em;
}

.worksSection .box03 .story03 {
position: absolute;
width: 120px;
bottom: 440px;
}

.worksSection .box03 span {
font-weight: bold;
}

.worksSection .btn_wks {
margin-top: 50px;
width: 260px;
margin-left: auto;
margin-right: auto;
}

.worksSection .btn_wks img {
width: 100%;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
	.worksSection {
	background-image: url("../images/bg_works_a.svg");
	background-size: cover;
	background-repeat: no-repeat;
	padding-top: 100px;
	margin-top: 30px;
	}
	
	.worksSection .list {
	position: relative;
	height: 990px;
	}

	.worksSection p {
	width: 600px;
	text-align: right;
	margin-left: auto;
	margin-right: 10px;
	font-size: 13px;
	}

	.worksSection h2 {
	width: 170px;
	margin-left: auto;
	margin-right: 10px;
	margin-top: 10px;
	margin-bottom: 30px;
	}

	.worksSection .box01 {
	position: relative;
    width: 470px;
	left: 30px;
	}

	.worksSection .box01 p {
	text-align: left;
	width: 100%;
	margin: 15px 0 0 0;
	line-height: 1.75em;
	font-size: 13px;
	}
	
	.worksSection .box01 .story01 {
	position: absolute;
	bottom: 100px;
    width: 170px;
    left: -160px
	}

	.worksSection .box01 span {
	font-weight: bold;
	}

	.worksSection .box02 {
	position: absolute;
    top: 160px;
    width: 330px;
    right: 80px;
	}

	.worksSection .box02 p {
	text-align: left;
    width: 300px;
    margin: 15px auto 0 auto;
    line-height: 1.75em;
    font-size: 13px;
	}
	
	.worksSection .box02 .story02 {
	position: absolute;
    width: 170px;
    bottom: 200px;
    right: -170px;
	}

	.worksSection .box02 span {
	font-weight: bold;
	}

	.worksSection .box03 {
	position: relative;
    width: 370px;
    left: -160px;
	}

	.worksSection .box03 .thumb {
	width:80%;
	margin:0 auto;
	}

	.worksSection .box03 p {
	text-align: left;
    width: 350px;
    margin: 15px 0 0 0;
    line-height: 1.75em;
    position: absolute;
    bottom: 90px;
    left: 365px;
    font-size: 13px;
	}
	
	.worksSection .box03 .story03 {
	position: absolute;
	width: 170px;
    bottom: 280px;
    left: 310px;
	}

	.worksSection .box03 span {
	font-weight: bold;
	}

	.worksSection .btn_wks {
	margin-top: 50px;
    width: 300px;
    position: absolute;
    top: 770px;
    right: 50px;
	}


	
}

/* ============================
	catalogSection
 ============================ */

.catalogSection {
background-color: rgba(195, 192, 171, 0.3);
padding-top: 100px;
padding-bottom: 70px;
margin-top: -60px;
}

.catalogSection .catalog {

}

.catalogSection .catalog h2 {
width: 100%;
font-weight: bold;
font-size: 16px;
text-align: center;
margin-bottom: 40px;
}

.catalogSection .catalog .story01 {
background-image: url(../images/bg_catalog001.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: bottom 5% center;
}

.catalogSection .catalog .story01 img {
width: 100%;
}

.catalogSection .catalog .story01 h3 {
font-weight: bold;
margin: 0 20px;
}

.catalogSection .catalog .story01 p {
margin: 5px 20px;
}

.catalogSection .catalog .story02 {
background-image: url(../images/bg_catalog002.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: bottom 5% center;
margin-top: 50px;
}

.catalogSection .catalog .story02 img {
width: 100%;
}

.catalogSection .catalog .story02 h3 {
font-weight: bold;
margin: 0 20px;
}

.catalogSection .catalog .story02 p {
margin: 5px 20px;
}

.catalogSection .catalog .story03 {
background-image: url(../images/bg_catalog003.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: bottom 5% center;
margin-top: 50px;
}

.catalogSection .catalog .story03 img {
width: 100%;
}

.catalogSection .catalog .story03 h3 {
font-weight: bold;
margin: 5px 20px;
}

.catalogSection .catalog .story03 p {
margin: 0 20px;
}

.catalogSection .catalog .btn_ctlg {
width: 260px;
margin-left: auto;
margin-right: auto;
margin-top: 60px;
}

.catalogSection .catalog .btn_ctlg img {
width: 100%;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
	.catalogSection {
	background-color: rgba(195, 192, 171, 0.3);
	padding-top: 200px;
	padding-bottom: 90px;
	margin-top: -160px;
	}

	.catalogSection .catalog {
	margin-left: auto;
	margin-right: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-direction: row;
	}

	.catalogSection .catalog h2 {
	width: 100%;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    margin-bottom: 40px;
	}

	.catalogSection .catalog .story01 {
	background-image: url(../images/bg_catalog001.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 30%;
	}

	.catalogSection .catalog .story01 h3 {
	font-weight: bold;
	margin: 0 20px;
	}

	.catalogSection .catalog .story01 p {
	margin: 5px 20px;
	}

	.catalogSection .catalog .story02 {
	background-image: url(../images/bg_catalog002.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-top: 15px;
    width: 30%;
	}

	.catalogSection .catalog .story02 h3 {
	font-weight: bold;
	margin: 0 20px;
	}

	.catalogSection .catalog .story02 p {
	margin: 5px 20px;
	}

	.catalogSection .catalog .story03 {
	background-image: url(../images/bg_catalog003.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin-top: 20px;
	width: 30%;
	}

	.catalogSection .catalog .story03 h3 {
	font-weight: bold;
	margin: 0 20px;
	}

	.catalogSection .catalog .story03 p {
	margin: 5px 20px;
	}

	.catalogSection .catalog .btn_ctlg {
	width: 300px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 60px;
	}


}



/* ============================
	sanplusSection
 ============================ */
.sanplusSection {
margin-top: 70px;
}

.sanplusSection .san_ti {
margin-left: 10px;
margin-right: auto;
}

.sanplusSection .san_ti p {
text-align: left;
}

.sanplusSection .san_ti h2 {
width: 130px;
margin-left: 15px;
margin-right: auto;
margin-top: 10px;
}

.sanplusSection .elec {
margin-top: 60px;	
}

.sanplusSection .elec h2 {
width: 100%;
margin: 20px 0;
font-size: 16px;
font-weight: 600;
}

.sanplusSection .elec .quality_spec_lead {
margin-bottom: 50px;
font-size: 12px;
text-align: justify;
letter-spacing: 0.15em;
line-height: 1.7;
}

.sanplusSection h2 {
width: 180px;
margin: 0 auto;
}

.sanplusSection h2 img {
width: 100%;
}

.sanplusSection .content {
margin-top:30px;
}

.sanplusSection .lead {
margin: 20px 0 30px 0;
text-align: center;
letter-spacing: 0.02em;
font-weight: bold;
}

.sanplusSection .price {

}

.sanplusSection .price img {
width: 100%;
}

.sanplusSection .soratomo {
margin-top: 50px;
}

.sanplusSection .soratomo img {
width: 100%;
}

.sanplusSection .quality {
margin-top: 50px;
}

.sanplusSection h3 {
width: 110px;
margin: 0 auto 20px auto;
}

.sanplusSection h3 img {
width: 100%;
}

.sanplusSection .quality .intro {
margin: 20px 0 30px 0;
text-align: center;
letter-spacing: 0.02em;
font-weight: bold;
}

.sanplusSection .point {

}

.sanplusSection .point .box1 {
margin-bottom: 30px;
}

.sanplusSection .point .box2 {
margin-bottom: 30px;
}

.sanplusSection .point .box3 {

}

.sanplusSection .point .box1 img {
width: 100%;
}

.sanplusSection .point .box2 img {
width: 100%;
}

.sanplusSection .point .box3 img {
width: 100%;
}

.sanplusSection .point .title {
font-size: 14px;
line-height: 1.5em;
margin-bottom: 10px;
font-weight: bold;
}

.sanplusSection .point .title span {
font-size: 10px;
}
	
.sanplusSection .point .text {
font-weight: normal;
line-height: 1.5em;
font-size: 12px;
letter-spacing: 0.02em;
}

.sanplusSection .studio {
width: 260px;
margin-top: 50px;
margin-left: auto;
margin-right: auto;
}
	
.sanplusSection .studio img {
width: 100%;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
	.sanplusSection {
	margin-top: 140px;
	}

	.sanplusSection .san_ti p {
	text-align: right;
	font-size: 13px;
	}
	
	.sanplusSection .elec h2 {
     margin-top: 140px;
     font-size: 20px;
     font-weight: 700;
     letter-spacing: 0.15em;
     line-height: 1.25;
     text-align: center;
	}
	
	.sanplusSection .elec p {
	letter-spacing: 0.15em;
	}
	
	 .sanplusSection .elec .quality_spec_lead {
     width: 700px;
     margin: auto;
     font-size: 14px;
     letter-spacing: 0em;
     line-height: 1.8;
	}

	.sanplusSection .san_ti h2 {
	width: 210px;
    margin-left: 0;
    margin-right: auto;
    margin-top: 10px;
	}

	.sanplusSection h2 {
	width: 280px;
    margin: 0px auto 50px auto;
	}
	
	.sanplusSection h2 img {
	width: 100%;
	}
	
	.sanplusSection .content {
	margin-top: 0;
	}

	.sanplusSection .lead {
    font-size: 14px;
    margin: 0 0 50px 0;
    letter-spacing: 0.07em;
	}

	.sanplusSection .price {

	}
	
	.sanplusSection .price img {
	width: 100%;
	}

	.sanplusSection .soratomo {
	margin-top: 0;
	}
	
	.sanplusSection .soratomo img {
	width: 100%;
	}

	.sanplusSection .quality {
	margin-top: 80px;
	
	}

	.sanplusSection h3 {
	width: 160px;
	margin: 0 auto 30px auto;
	}
	
	.sanplusSection h3 img {
	width: 100%;
	}

	.sanplusSection .quality .intro {	
    text-align: center;
    font-size: 14px;
	}

	.sanplusSection .point {
	display: flex;
    justify-content: space-between;
    flex-direction: row;
	}

	.sanplusSection .point .box1 {
	width: 30%;
    margin-top: 0;
	margin-bottom: 0;
	}
	
	.sanplusSection .point .box1 img {
	width: 100%;
	}

	.sanplusSection .point .box2 {
	width: 30%;
    margin-top: 0;
	margin-bottom: 0;
	}
	
	.sanplusSection .point .box2 img {
	width: 100%;
	}

	.sanplusSection .point .box3 {
	width: 30%;
    margin-top: 0;
	}
	
	.sanplusSection .point .box3 img {
	width: 100%;
	}

	.sanplusSection .point .title {
	font-size: 14px;
    line-height: 1.5em;
    margin-bottom: 10px;
	}
	
	.sanplusSection .point .title span {
	font-size: 10px;
	}
	
	.sanplusSection .point .text {
	font-weight: normal;
	line-height: 1.5em;
	font-size: 12px;
	}
	
	.sanplusSection .studio {
	width: 300px;
    margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
	}
	
	
}


/* ============================
	lifeInfoSection
 ============================ */

.lifeInfoSection {
margin-top: 100px;
background-image: url(../images/bg_lifeinfo001.svg);
background-size: contain;
height: 2640px;
background-position: 0 15%;
background-repeat: repeat-y;
}

.lifeInfoSection .bg_info {

}

.lifeInfoSection .lead {
text-align: right;
margin-right: 10px;
margin-left: auto;
}

.lifeInfoSection .illust01 {
width: 186px;
margin: 0 10px 0 auto;
}

.lifeInfoSection .illust02 {
width: 300px;
margin: 90px 10px 0 auto;
}

.lifeInfoSection h1 {
margin-top: 10px;
width: 290px;
margin-left: auto;
margin-right: 10px;
}

.lifeInfoSection img {
width: 100%;
}

.lifeInfoSection .list {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 10px;
padding-top: 50px;
}

.lifeInfoSection .list .box_item {
width: calc(49% - 8px);
display: flex;
flex-direction: column;
padding: 0 4px;
margin-top: 10px;
}

.lifeInfoSection .list .box_SubItem {
width: calc(49% - 8px);
display: flex;
flex-direction: column;
padding: 0 4px;
margin-top: 10px;
}

.lifeInfoSection .list .box_item img {
width: 100%;
}

.lifeInfoSection .list .box_item .name,.box_SubItem .name {
font-weight: bold;
text-align: left;
margin-top: 5px;
font-size: 11px;
line-height: 1.25em;
}

.lifeInfoSection .list .box_item .text {
font-size: 10px;
line-height: 1.5em;
letter-spacing: 0.02em;
margin-top: 5px;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
	.lifeInfoSection {
	margin-top: 100px;
    background-image: url(../images/bg_lifeinfo001a.svg);
    background-size: contain;
    height: 2030px;
    background-position: 120px 145%;
    background-repeat: no-repeat;
	}
	
	.lifeInfoSection .title {
	width: 1024px;
	margin-left: auto;
	margin-right: auto;
	}

	.lifeInfoSection .bg_info {
	
	}

	.lifeInfoSection .lead {
	text-align: right;
	}
	
	.lifeInfoSection .illust01 {
	width: 260px;
	margin: 0 10px 20px auto;
	}

	.lifeInfoSection .illust02 {
	width: 460px;
    margin: 70px 0 0 auto;
	}

	.lifeInfoSection h1 {
	margin-top: 10px;
	width: 450px;
	margin-left: auto;
	margin-right: 10px;
	}

	.lifeInfoSection .list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 125px;
	padding-top: 90px;
	}

	.lifeInfoSection .list .box_item {
	width: 32%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    padding: 0;
	}
	
	.lifeInfoSection .list .box_SubItem {
	width: 24%;
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
    padding: 0;
	}

	.lifeInfoSection .list .box_item .name {
	font-weight: bold;
    text-align: left;
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.25em;
	}
	
	.lifeInfoSection .list .box_SubItem .name {
	font-weight: bold;
    text-align: left;
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.25em;
	}

	.lifeInfoSection .list .box_item .text {
	font-size: 11px;
	line-height: 1.5em;
	letter-spacing: 0.02em;
	margin-top: 5px;
	}

	
}


/* ============================
	mapSection
 ============================ */
.mapSection {
margin-bottom: 30px;
}

.mapSection .gMap {
width: 100%;
}

.mapSection .gMap iframe{
-webkit-filter: hue-rotate(330deg);
-moz-filter:hue-rotate(330deg);
-ms-filter: hue-rotate(330deg);
-o-filter: hue-rotate(330deg);
filter: hue-rotate(330deg);
}


/* for PC */
@media screen and (min-width: 1025px) {

		.mapSection {
    	
		}
	
		.mapSection .gMap {
    	width: 100%;
		}
	
}




/* ============================
	quickAccessSection
 ============================ */

.quickAccessSection {
background-color: rgba(245, 245, 177, 1);
/* border-radius: 20px 20px 0 0; */
position: fixed;
bottom: 0;
left: 0;
width: 100%;
z-index: 99999;
}

.quickAccessSection a {
display: block;
text-align: center;
font-size: 65px;
line-height: 65px;
}

.quickAccessSection .floatNav {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
z-index: 100;
}

.quickAccessSection .floatNav li {
float: left;
width: 50%;
}

.quickAccessSection .floatNav li a {
display: block;
background-color: rgba(245, 245, 177, 1);
font-size: 15px;
font-weight: bold;
text-align: center;
line-height: 50px;
color: #54685F;
}

.quickAccessSection .floatNav li a span {
display: inline-block;
background-image:url("../images/bg_float_nav001.svg");
background-repeat: no-repeat;
background-size: 9px auto;
background-position: right center;
padding-right: 20px;
padding-left: 20px;
letter-spacing: 0.2em;
}

.quickAccessSection .floatNav li:nth-child(2) a {
background-color: rgba(202, 198, 153, 1);
color: #54685F;
}



/* for PC */
@media screen and (min-width: 1025px) {

		.quickAccessSection {
		background-color: transparent;
		width: auto;
		top: calc(50% - 150px);
		right: 0;
		left: auto;
		bottom: auto;
		}

		.quickAccessSection a {
		display: block;
		text-align: center;
		font-size: 65px;
		line-height: 65px;
		}
	
		.quickAccessSection .floatNav {
    	position: fixed;
    	top: calc(50% - 245px);
    	right: 0;
    	left: auto;
    	z-index: 10;
    	width: 60px;
		}
	
		.quickAccessSection .floatNav ul {
    	display: block;
    	margin-top: 50px;
		}
	
		.quickAccessSection .floatNav li {
    	width: auto;
		}
	
		.quickAccessSection .floatNav li a {
    	display: block;
    	background-color: rgba(245, 245, 177, 1);
    	font-weight: bold;
    	text-align: center;
    	color: #54685F;
    	font-size: 16px;
    	padding: 40px 0;
    	line-height: 1.5em;
    	margin-bottom: 20px;
		}
		
		.quickAccessSection .floatNav li a span {
    	display: inline-block;
    	background-image: url(../images/bg_float_nav001.svg);
    	background-repeat: no-repeat;
    	background-size: 12px auto;
    	background-position: center bottom;
    	padding: 0 22px 22px 22px;
		line-height: 1.25em;
		}
			
}



/* ============================
	popUpSectoion
 ============================ */

.popUpSectoion {
margin: 50px auto;
position: relative;
}

.popUpSectoion img {
width: 100%;
}

.popUpSectoion .bird {
position: absolute;
top: -28px;
left: 262px;
width: 100px;
}

.popUpSectoion p {
text-align: center;
color: #54685F;
font-weight: bold;
font-size: 16px;
}


.popUpSectoion a {
display: block;
}



/* for PC */
@media screen and (min-width: 1025px) {


	.popUpSectoion {
	margin: 150px auto;
	}
	
	.popUpSectoion .bird {
	top: -55px;
    left: 790px;
    width: 160px;
	}

}



.popTableSection {
margin-bottom: 50px;
}

.popTableSection h2 {
font-size: 16px;
font-weight: bold;
color: #54685F;
margin-bottom: 20px;
}

.popTableSection h3 {
margin-bottom: 20px;
font-size: 16px;
font-weight: bold;
color: #54685F;
line-height: 1.5em;
}

.popTableSection table {
width: 100%;
border-collapse: collapse;
margin-bottom: 60px;
}

.popTableSection th {
font-size: 14px;
font-weight: bold;
text-align: center;
line-height: 1.5em;
border: 1px solid #46566c;
padding: 5px;
white-space: nowrap;
vertical-align: middle;
}

.popTableSection td {
font-size: 14px;
line-height: 1.5em;
border: 1px solid #54685F;
padding: 5px;
vertical-align: middle;
}


.popTableSection .inList li {
font-size: 14px;
line-height: 1.5em;
padding-left: 1em;
text-indent: -1em;
}




.popTableNoteSection h3 {
margin-bottom: 20px;
font-size: 16px;
font-weight: bold;
color: #54685F;
line-height: 1.5em;
}

.popTableNoteSection .body {
font-size: 12px;
line-height: 1.5em;
}

.popTableNoteSection ul {
margin-bottom: 20px;
}

.popTableNoteSection li {
font-size: 10px;
line-height: 1.5em;
}


/* for PC */
@media screen and (min-width: 1025px) {
	
		.popTableNoteSection li {
		font-size: 12px;
		line-height: 1.55em;
		}	
	
}




#model002,
#model003,
#model004,
#model005 {
position: relative;
margin:10px auto;
width: 100%;
height: auto;
background-color: transparent;
padding: 50px 0 0 0;
}



#inline-wrap01,
#inline-wrap02 {
position: relative;
margin:10px auto;
width: 90%;
height: 70vh;
background-color: transparent;
padding: 50px 0 0 0;
}

.inline-wrap .inner {
height: 70vh;
overflow-y: scroll;
background-color: #fff;
padding: 20px;
}

.mfp-close {
font-size: 70px !important;
color: #fff !important;
}

.popPhotoSection .photo {
line-height: 0;
}
.popPhotoSection .photo img {
width: 100%;
height: auto;
}

.popPhotoSection .photo {
text-align: center;
}


.popPhotoSection .body {
background-color: #000;
padding: 15px;
font-size: 15px;
line-height: 1.6em;
color: #fff;
}

.popPhotoSection.tate {
width: 80%;
margin: 0 auto;
}


/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){


			#inline-wrap01,
			#inline-wrap02  {
			width: 700px;
			height: 70vh;
			z-index: 999999;
			}


			#model002,
			#model003,
			#model004,
			#model005 {
			width: 500px;
			height: 70vh;
			padding: 50px 0 0 0;
			}


}



/* for PC & TB */
@media screen and (min-width: 1025px) {

			#inline-wrap01,
			#inline-wrap02  {
			width: 700px;
			height: 70vh;
			z-index: 999999;
			}

			#model002,
			#model003 {
			width: 1000px;
			}
			#model004,
			#model005 {
			width: 700px;
			height:auto;
			}

			
			.popPhotoSection .body {
			display: none;
			}


}



/* ============================
	footer
 ============================ */


footer {
background-color: #54685F;
background-position: center bottom;
padding: 50px 0 100px 0;
}

footer .telephone {
width: 230px;
margin: 0 auto;
}

footer .telephone a {
display: block;
text-align: center;
}

footer .telephone img {
width: 100%;
height: auto;
}


/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){

	footer {
	padding-top:50px; 
	}

}



/* for PC */
@media screen and (min-width: 1025px) {


	footer {
	background-color: #54685F;
    background-position: center bottom;
    padding: 100px 0;
	}

	footer .telephone {
	width: 500px;
	}

	footer .telephone a {
	display: block;
	text-align: center;
	}

	
}





/* ============================
		フェードイン用css　（重要）
 ============================ */


/* 下からフェードイン（） */
.fadeUp {
opacity: 0;											/*表示0％*/
transform : translate(0, 50px);	/*Y軸100px*/
transition: all 1.3s;							/*動作時間1秒*/
}

/* 上からフェードイン */
.fadeDown {
opacity: 0;
transform : translate(0, -100px);
transition: all 1.0s;
}

/*右からフェードイン*/
.fadeLeft {
opacity: 0;
transform : translate(-100px, 0);
transition: all 1.0s;
}

/*右からフェードイン*/
.fadeRight {
opacity: 0;
transform : translate(100px, 0);
transition: all 1.0s;
}

/* フェードインをリセット*/
.scrollin{
opacity: 1;													/*表示100％*/
transform: translate(0, 0) scale(1,1);	/*Y軸0px、X軸0px、拡大率100％(おまけ)*/
}




/* ============================
	other
 ============================ */

/* ----------------------------------------
	other
  ----------------------------------------- */

/* for PC & TB */
@media screen and (min-width: 768px) {
}

/* for SP */
@media screen and (max-width: 767px) {
}

/* for TB  */
@media screen and (max-width: 1024px) and (min-width: 768px){
}

/* for PC */
@media screen and (min-width: 1025px) {
}


