@charset "utf-8";


.inbox {
	position: relative;
	width: 98%;
	max-width: 1360px;
	margin: 0 auto;
}
.dmycontents {
	display: block;
	width: 100%;
	height: 2000px;
	background: #efefef;
}
.smpbr {
	display: none;
}

.pgctgsub {
	position: relative;
	margin: 0 0 40px;
	color: #444;
	line-height: 1.0em;

}


.page_header {
	display: block;
	width: 100%;
	margin-bottom: 60px;
}
.page_header .title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 340px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.pgsurvey .page_header .title {
	background-image: url(../photo/head_about.jpg);
}
.pgprice .page_header .title {
	background-image: url(../photo/head_about.jpg);
}
.pgabout .page_header .title {
	background-image: url(../photo/head_about.jpg);
}
.pgtopics .page_header .title {
	background-image: url(../photo/head_topics.jpg);
}

.page_header h2 {
	margin-bottom: 60px;
	padding-top: 85px;
	font-size: 2.4em;
	color: #fff;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0.2em;
}


.breadlist {
	width: 96%;
	margin: 4px 2%;
}
.breadlist li {
	display: inline-block;
	font-size: 0.857em;
}
.breadlist li:first-child {
	background: url(../../apple-touch-icon.png) no-repeat left center;
	background-size: 20px 20px;
	padding-left: 20px;
}
.breadlist li + li:before {
	content: "/";
	display: inline-block;
	vertical-align: middle;
	font-size: 1em;
	color: #9a9a9a;
	margin: -5px 10px 0 6px;
}
.breadlist li a {
	color: #000;
	text-decoration: none;
}


/* page_contents
---------------------------------------------------- */

.page_contents {
	display: flex;
	margin: 0 auto;
	padding: 0 4%;
	max-width: 1280px;
	box-sizing: content-box;
}
.l-container {
	flex-grow: 1;
}
.l-container_side {
	display: block;
	flex: 0 0 215px;
	margin-left: calc(95 / 1280 * 100%);
}


/* l-container_side
---------------------------------------------------- */
/* pgservbox
---------------------------------------------------- */

.pgservbox {
	width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.pgservbox li {
	position: relative;
	margin: 0 0 8px;
	padding: 0 0 30px;
	border: solid 4px #fff;
	box-shadow: 0 0 0 1px #999;
}
.pgservbox li a img {
	width: 100%;
	height: auto;
}
.pgservbox li h1 {
	position: absolute;
	content: '';
	bottom: 0px;
	width: 100%;
	height: 30px;
	background-image: linear-gradient(90deg, rgba(234, 27, 47, 1) 57%, rgba(255, 255, 255, 1));
}
.pgservbox li h1 span {
	padding: 0 0 0 5px;
	font-size: 1.04em;
	color: #fff;
	font-weight: 500;
	line-height: 28px;
	text-align: left;
}


.sbnrbox {
	width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.sbnrbox .sbnritem {
	position: relative;
	margin: 0 0 8px;
}
.sbnrbox .sbnritem img {
	width: 100%;
	height: auto;
}

.areatxt dt {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.areatxt dt::after {
	content: '';
	flex-grow: 1;
	height: 1px;
	background: #999;
}
.areatxt dd {
	padding: 6px 6px 10px;
}
.areatxt a {
	position: relative;
	display: inline-block;
	margin: 0 .1em .2em 0;
	padding: .2em .5em .4em;
	line-height: 1;
	font-size: 0.78em;
	color: #666;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #999;
	border-radius: 2em;
	transition: all 0.2s;
}
.areatxt a:hover {
	color: #fff;
	background-color: #666;
}


.contactbnr {
	width: 100%;
	border: solid 1px #ff7014;
	background-image: url(../n_img/borderline.png);
	text-align: center;
}
.contactbnr .mbnrtt {
	margin: 12px auto 6px;
	font-size:20px;
	color: #111;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
}
.contactbnr .mbnrtxt {
	position: relative;
	margin: 0 0 8px 58px;
	font-size: 12px;
	color: #111;
	font-weight: 500;
	letter-spacing: -0.04em;
	text-align: left;
	line-height: 1.3em;
}
.contactbnr .mbnrtxt:before {
	position: absolute;
	content: '';
	top: 60%;
	left: -54px;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../n_img/fticon_mail.png);
}
.ctbnrbtn {
	position: relative;
	display: block;
	width: 96%;
	margin: 0 auto 12px;
	padding: .5em 0 .5em;
	line-height: 1;
	font-size: 0.9em;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	background-color: #ff7014;
	border: none;
	border-radius: 2em;
	transition: all 0.2s;
	cursor: pointer;
}
.ctbnrbtn:hover {
	background-color: #333;
}

.linebnr {
	width: 100%;
	border: solid 1px #00c201;
	background: #fff;
	text-align: center;
}
.linebnrimg {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 98%;
	margin: 12px auto 8px;
}
.linebnrimg div {
	margin: 0 5px;
	width: 100%;
}
.linebnrimg img {
	width: 100%;
	height: auto;
}
.linebnr .linebnrbtn {
	background-color: #00c201;
}
.linebnr .linebnrbtn:hover {
	background-color: #333;
}


.side_areamap {
	position: relative;
	display: block;
	width: 100%;
	background-color: #efefef;
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: auto 86%;
	background-image: url(../n_img/side_areamap.png);
}
.side_areamap .inbox {
	width: 80%;
	margin: 0 auto 0 0;
	padding: 9px 12px;
}
.side_areamap .textbox {
	padding: 0 0 13px;
	font-size: 0.82em;
	color: #c40857;
	text-decoration: none;
	line-height: 1.5em;
}
.side_areamap .subtextbox {
	padding: 0;
	font-size: 1.1em;
	color: #c40857;
	font-weight: 500;
	text-decoration: none;
	line-height: 1.0em;
}


/* l-container main
---------------------------------------------------- */


.ctgsub {
	padding: 0 0 3px;
	border-bottom: dotted 1px #111;
}
.ctgsub h3 {
	padding: 8px 0 9px 12px;
	font-size: 1.4em;
	color: #111;
	text-decoration: none;
	line-height: 1.6em;
	border-left: solid 5px #e36f24;
}
.ctgsub2 {
	margin: 0 0 18px;
	padding: 10px 10px 12px 10px;
	font-size: 1.24em;
	color: #111;
	text-decoration: none;
	background: #ddd;
}
.pgsub02 {
	font-size: 1.5em;
	color: #111;
	text-decoration: none;
	line-height: 1.6em;
}
.pgsub03 {
	padding: 0 0 8px;
	font-size: 1.5em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
	border-bottom: dotted 1px #111;
}
.circle_number {
	display: inline-block;
	width: 40px;
	height: 40px;
	margin-right: 8px;
	padding-top: 8px;
	background-color: #e36f24;
	border-radius: 50%;
	font-size: 18pt;
	color: #fff;
	text-align: center;
	box-sizing: border-box;
}
.pgnavibox {
	margin: 0 auto;
	padding: 8px 0 12px;
}
.pgnavibox li {
	padding: 1px 50px 2px 0;
	display: inline-block;
}
.pgnavibox li+li{
	position: relative;
}
.pgnavibox a {
	position: relative;
	font-weight: 400;
	color: #000;
	text-decoration: underline;
	padding: 5px 20px 5px 5px;
}
.pgnavibox a:hover {
	color: #e36f24;
	text-decoration: none;
}
.pgnavibox a::after {
	position: absolute;
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	top: -1px;
	right: 0;
	bottom: 0;
	margin: auto;
	border-bottom: solid 2px #333;
	border-right: solid 2px #333;
	transform: rotate(45deg);
	transition: all 0.1s;
}
.pgnavibox a:hover::after {
	top: 1px;
	bottom: 0;
	border-bottom: solid 2px #e36f24;
	border-right: solid 2px #e36f24;
}
.pgnavibox.btmpgnavi a::after {
	top: 5px;
	right: 0;
	border-bottom: solid 2px #333;
	border-right: solid 2px #333;
	transform: rotate(-135deg);
}
.pgnavibox.btmpgnavi a:hover::after {
	top: 3px;
	right: 0;
	border-bottom: solid 2px #e36f24;
	border-right: solid 2px #e36f24;
}


.pgcont {
	position: relative;
	width: 100%;
	margin: 0 auto 50px;
}

.pgcontactbox .imgbox {
	position: relative;
	width: 100%;
}
.pgcontactbox .imgbox h2 {
	position: absolute;
	bottom: 16px;
	left: 16px;
	font-size: 32px;
	color: #fff;
	font-weight: 500;
	letter-spacing: 0.2em;
}
.contactblock {
	position: relative;
	width: 100%;
	background-color: #fbe5d0;
}
.contactblock .inbox {
	width: 100%;
	margin: 0;
	padding: 15px 0 20px;
	text-align: center;
}
.contactblock .subtt {
	width: 94%;
	margin: 0 auto 15px;
	font-size: min(1.66vw,23px);
	color: #111;
	font-weight: 500;
	letter-spacing: 0.01em;
	text-align: left;
	line-height: 1.4em;
}
.contactflex {
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
}
.contactflex .telbody {
	width: 66%;
	padding: 10px 0 0;
	text-align: center;
}
.contactflex .ctselect {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
	width: 34%;
	max-width: 200px;
	padding: 0px 0 0;
}
.telbody a {
	position: relative;
	font-size: min(6.0vw,80px);
	color: #ff7014;
	font-weight: 700;
	letter-spacing: -0.03em;
}
.telbody span {
	font-size: 0.7em;
	color: #ff7014;
	font-weight: 700;
}
.telbody a:before {
	position: absolute;
	content: '';
	top: 66%;
	left: -46px;
	transform: translateY(-50%);
	width: 36px;
	height: 36px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../n_img/icon_freedial_ct.png);
}
.telbody div {
	margin: 0 0 0 -20px;
	padding: 10px 0 0;
	display: block;
	font-size: min(1.56vw,21px);
	color: #111;
	font-weight: 500;
}
.contactflex .ctselect li {
	width: 45%;
	margin: 0 auto;
	text-align: center;
}
.contactflex .ctselect li+li {
	margin: 0 0 0 16px;
}

.ctmailbtn {
	display: block !important;
	margin: 0 auto;
	width: 88px;
	height: 88px;
	text-align: center;
	z-index: 4;
	line-height: 1.0em;
}
.ctmailbtn a {
	display: block !important;
	width: 88px;
	height: 88px;
	background: #fff;
		-moz-border-radius: 12px;
		-webkit-border-radius: 12px;
	border-radius: 12px;
		-webkit-transition: all 0.2s;
		-moz-transition: all 0.2s;
		-ms-transition: all 0.2s;
		-o-transition: all 0.2s;
	transition: all 0.2s;
}
.ctmailbtn a img {
	display: block !important;
	margin: 0 auto 0;
	padding: 4px 0 0;
	width: 60px;
	height: auto;
}



/* pgabout
---------------------------------------------------- */

.pgabout01 h4 {
	padding: 0 0 15px;
	font-size: 2.4em;
	color: #111;
	text-decoration: none;
	line-height: 1.6em;
}

table.outline {
	width: 100%;
	padding: 0;
	text-align:left;
	border-top: dotted 1px #ccc;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
}
table.outline th {
	width: 20%;
	font-size: 0.86em;
	color: #111;
	font-weight: normal;
	padding: 10px 2px 10px 12px;
	border-bottom: dotted 1px #ccc;
	background: #f3f3f3;
}
table.outline td {
	font-size: 0.86em;
	color:#555;
	padding: 10px 6px 10px 16px;
	border-bottom: dotted 1px #ccc;
}
table a {
	color: #e36f24;
	text-decoration: underline;
}
table a:hover {
	color: #333;
	text-decoration: none;
}

table.outline td dl {
	width: 100%;
	padding: 8px 0;
	clear: both;
}
table.outline td dl dt {
	font-size: 106%;
	float: left;
	clear: both;
	margin: 2px 0;
	padding: 0 1em;
	border-right: dotted 1px #ccc;
}
table.outline td dl dd {
	margin: 2px 0;
	padding-left: 6.4em;
}

.cpphotobox {
	position: relative;
	width: 100%;
	margin: 0 auto 50px;
}
.cpphotobox ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.cpphotobox ul:after {
	content: "";
	display: block;
	width: 31%;
	height: 0;
}
.cpphotobox ul li {
	width: 31%;
	margin-bottom: 20px;
}
.cpphotobox ul li img {
	width: 100%;
	height: auto;
}


.pgabout01 h4 {
	padding: 0 0 15px;
	font-size: 2.4em;
	color: #111;
	text-decoration: none;
	line-height: 1.6em;
}


.pgabout04 {
}
.privacy-wrap {
	width: 100%;
}
.privacy-item {
	width: 100%;
	padding: 0 0 40px;
	text-align: left;
}
.pp-title {
	margin: 0 0 20px;
	padding: 0 0 10px;
	font-size: 1.2em;
	color: #eb1c30;
	line-height: 1.8em;
	border-bottom: solid 1px #ccc;
}
.pp-text {
	padding: 0 0 10px;
	color: #111;
	line-height: 1.8em;
}
.pp-text ol {
	padding: 10px 0 12px 14px;
	font-size: 1.0em;
	color: #111;
	line-height: 1.8em;
	list-style: disc;
}
.pp-text ol li {
	padding: 0 0 8px;
	list-style: none;
}
.pp-text ol.type01 {
	padding: 10px 0 14px 26px;
	list-style: none;
	text-indent: -1.6em;
}
.pp-text ol.type02 {
	padding: 10px 0 14px 30px;
	list-style: none;
	text-indent: -3.0em;
}
.pp-text ol.type00 li {
	padding: 0 0 1px;
}
.pp-text ol li ol {
	padding: 10px 0 12px 14px;
}

#section5 .imgbox img {
	max-width: 640px;
	height: auto;
}


/* pgsurvey
---------------------------------------------------- */

.pgsurv01box {
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: nowrap;
	width: 100%;
	padding: 0;
}
.pgsurv01box .textbox h3 {
	padding: 0 0 6px;
	font-size: 1.1em;
	color: #111;
	font-weight: 500;
}
.pgsurv01box .textbox .btnbox {
	margin-top: 80px;
	width: 60%;
	height: 60px;
	margin-right: 40%;
}
.pgsurv01box .textbox .btnbox .dbutton {
	width: 100%;
	margin:0 auto;
	padding: .3em 1em .2.5em;
	color: #fff;
	font-weight: 500;
	font-size: 1.0em;
}
.pgsurv01box .photobox {
	width: 70%;
	margin-left: 3%;
}
.pgsurv03 .pgsurv01box,
.pgsurv05 .pgsurv01box,
.pgsurv07 .pgsurv01box {
	flex-direction: row-reverse;
}
.pgsurv03 .pgsurv01box .textbox .btnbox,
.pgsurv05 .pgsurv01box .textbox .btnbox,
.pgsurv07 .pgsurv01box .textbox .btnbox {
	margin-left: 40%;
	margin-right: 0;
}
.pgsurv06 .pgsurv01box .textbox .btnbox {
	margin-top: 40px;
}
.pgsurv06 .pgsurv01box .textbox .btnbox .dbutton {
	margin:0 auto 8px;
}
.pgsurv03 .pgsurv01box .photobox,
.pgsurv05 .pgsurv01box .photobox,
.pgsurv07 .pgsurv01box .photobox {
	margin-left: 0;
	margin-right: 3%;
}
.pgsurv01box .photobox figure {
	position: relative;
	width: 100%;
}
.pgsurv01box .photobox figure img {
	width: 100%;
	height:auto;
}
.pgsurv01box .photobox figure::before {
	position: absolute;
	top: 0;
	left: 0;
	content:"";
	width: 100%;
	height: 100%;
	display:block;
	border: 5px rgba( 0,0,0,.2) solid;
	box-sizing:border-box;
}
.pgsurv01box .photobox figure::after {
	position: absolute;
	top: 5px;
	left: 5px;
	content:"";
	width: calc( 100% - 10px );
	height: calc( 100% - 10px );
	display:block;
	border:1px rgba( 255,255,255,.4) solid;
	box-sizing:border-box;
}

/* pgprice
---------------------------------------------------- */

.pricetbbox {
	width: 100%;
	margin: 0 0 20px;
	padding: 40px;
	font-size: 1.2em;
	color: #eb1c30;
	line-height: 1.8em;
	border: solid 1px #ccc;
	border-radius: 2em;
}
.pgprice table.outline th {
	width: 30%;
	font-size: 0.86em;
	color: #111;
	font-weight: normal;
	padding: 10px 2px 10px 12px;
	border-bottom: dotted 1px #ccc;
	background: #f3f3f3;
}
.pgprice table.outline td span.price01 {
	margin: 0 4px 0 0;
	font-size: 1.60em;
	color: #111;
	font-weight: 500;
}





/* pginvestigation
---------------------------------------------------- */

.exlist ul {
    	width: 100%;
	margin: 2px 0;
}
.exlist ul li  {
    	width: 100%;
	margin: 0 0 12px;
	padding: 2px 0 6px 32px;
	font-size: 110%;
	color: #e60012;
	background: url(../n_img/icon_check.png) no-repeat 0 2px;
	background-size: 28px 28px;
	border-bottom: dotted 1px #ccc;
}
.jireioutbox {
    	width: 100%;
	padding: 30px 20px;
	margin: 0;
	background: #fbe5d0;
}
.jireibtm {
	padding: 10px 20px 30px;
}
.jireiinbox {
	width: 100%;
	padding: 25px 20px;
	margin: 0 auto;
	background: #fff;
	color: #000;
}
.jireiinbox h1 {
	padding: 0 0 18px;
	font-size: 1.8em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
	border-bottom: dotted 1px #111;
	text-align: center;
}
.jireitape {
	width: 200px;
	height: 35px;
	margin: -70px auto 40px;
	background: rgba(109,212,220, 0.2);
	transform: rotate(-2deg);
	opacity: 0.8;
}
.jireiarrow {
	width: 70px;
	height: 60px;
	margin: -65px auto 20px;
	background: rgba(195,0,81, .8);
	clip-path: polygon(0 41.1%, 35.9% 41.1%, 35.9% 0, 64.1% 0, 64.1% 41.1%, 100% 41.1%, 50% 100%);
}
.sample_box12_title {
    text-align: center;
    font-size: 1.3em!important;
    margin-top: 10px!important;
}
.sample_box12_subtitle {
    text-align: center;
    font-size: 0.7em!important;
    margin-bottom: 1em!important;
}



/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 1280px){


.l-container_side {
	display: block;
	flex: 0 0 215px;
	margin-left: calc(80 / 1280 * 100%);
}

/* pgancnavi
---------------------------------------------------- */


}

/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 1000px){


.page_contents {
	display: block;
	margin: 0 auto;
	padding: 0 4%;
	box-sizing: content-box;
}
.l-container {
	display: block;
	width: 100%;
	margin: 0 0 4%;
}
.l-container_side {
	display: block;
	width: 100%;
	margin: 0 auto 3%;
}


/* l-container_side
---------------------------------------------------- */
/* pgservbox
---------------------------------------------------- */

.pgservbox ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.pgservbox li {
	width: 48%;
}
.pgservbox li {
	padding: 0 0 30px;
	border: solid 4px #fff;
	box-shadow: 0 0 0 1px #999;
}

.sbnrbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.contactbnr,
.linebnr,
.sbnrbox .sbnritem {
	width: 48%;
}

.contactbnr {
	border: solid 1px #ff7014;
	background-image: url(../n_img/borderline.png);
	text-align: center;
}
.contactbnr .mbnrtt {
	margin: 18px auto 16px;
	font-size: min(4.0vw,60px);
	color: #111;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}
.contactbnr .mbnrtxt {
	position: relative;
	margin: 0 0 18px 78px;
	font-size: min(2.3vw,38px);
	color: #111;
	font-weight: 500;
	letter-spacing: -0.04em;
	text-align: left;
	line-height: 1.3em;
}
.contactbnr .mbnrtxt:before {
	position: absolute;
	content: '';
	top: 58%;
	left: -70px;
	transform: translateY(-50%);
	width: 60px;
	height: 60px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../n_img/fticon_mail.png);
}

.linebnrimg {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: 12px auto 8px;
}
.linebnrimg div {
	margin: 0 5px;
}
.linebnrimg div img {
	width: 100%;
	max-width: 100px;
	height: auto;
}

.side_areamap {
	position: relative;
	display: block;
	width: 100%;
}
.side_areamap .inbox {
	width: 80%;
	margin: 0 auto 0 0;
	padding: 20px 20px 28px;
}
.side_areamap .textbox {
	padding: 0 0 20px;
	font-size: 1.0em;
	color: #c40857;
	text-decoration: none;
	line-height: 1.5em;
}
.side_areamap .subtextbox {
	font-size: 1.2em;
	color: #c40857;
	font-weight: 500;
	text-decoration: none;
	line-height: 1.0em;
}



.pgcontactbox {
}


.contactblock .subtt {
	font-size: 2.4vw;
	color: #111;
	font-weight: 500;
}
.telbody a {
	position: relative;
	font-size: 7.0vw;
	color: #ff7014;
	font-weight: 700;
	letter-spacing: -0.03em;
}
.telbody div {
	margin: 0 0 0 -20px;
	padding: 10px 0 0;
	display: block;
	font-size: 2.0vw;
	color: #111;
	font-weight: 500;
}


.pgnavibox.btmpgnavi {
	display: none;
}



}



/* ------------------------------------------------------------------------------------------------------------------------ */

@media only screen and (max-width: 768px){



table.outline {
	width: 100%;
	padding: 0;
	text-align:left;
	border-top: dotted 1px #ccc;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
}
table.outline th {
	display: block;
	width: 100%;
	font-size: 0.86em;
	color: #111;
	font-weight: normal;
	padding: 10px 2px 10px 12px;
	border-bottom: dotted 1px #ccc;
	background: #f3f3f3;
}
table.outline td {
	display: block;
	width: 100%;
	font-size: 0.86em;
	color:#555;
	padding: 10px 6px 10px 16px;
	border-bottom: dotted 1px #ccc;
}


/* pgancnavi
---------------------------------------------------- */


}


/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 640px){

.page_header {
	margin-bottom: 6.7vw;
}
.page_header .title {
	display: flex;
	height: 81.25vw;
	max-height: 100vh;
	align-items: center;
	justify-content: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.page_header h2 {
	margin-bottom: 10%;
	padding-top: 9.6vw;
	color: #fff;
	font-weight: normal;
	font-size: 1.8em;
	text-align: center;
}
.pgabout .page_header .title {
	background-image: url(../photo/head_about_sp.jpg);
}
.pgtopics .page_header .title {
	background-image: url(../photo/head_topics_sp.jpg);
}


.breadlist {
	display: none;
}


/* l-container_side
---------------------------------------------------- */
/* pgservbox
---------------------------------------------------- */


.pgcontactbox .imgbox {
	position: relative;
	width: 100%;
}
.pgcontactbox .imgbox .fiximg {
	width: 140%;
	height: auto;
}
.pgcontactbox .imgbox h2 {
	position: absolute;
	bottom: 16px;
	left: 16px;
	font-size: 4.6vw;
}

.contactblock {
	position: relative;
	width: 100%;
	background-color: #fbe5d0;
}
.contactblock .inbox {
	width: 100%;
	margin: 0;
	padding: 15px 0 20px;
	text-align: center;
}
.contactblock .subtt {
	width: 94%;
	margin: 0 auto 6px;
	font-size: 2.4vw;
	text-align: left;
	line-height: 1.4em;
}
.contactflex {
	width: 90%;
	margin: 0 auto;
	display: block !important;
}
.contactflex .telbody {
	width: 100%;
	padding: 10px 0 0;
	text-align: center;
}
.contactblock .subtt {
	font-size: 2.4vw;
	color: #111;
	font-weight: 500;
}
.telbody a {
	position: relative;
	font-size: 9.0vw;
	color: #ff7014;
}
.telbody div {
	margin: 0 0 0 -20px;
	padding: 10px 0 0;
	display: block;
	font-size: 2.6vw;
	color: #111;
	font-weight: 500;
}
.contactflex .ctselect {
	width: 100%;
	max-width: 100%;
	padding: 6px 0 0;
}

.contactflex .ctselect li {
	width: 45%;
	margin: 0 auto;
	text-align: center;
}
.contactflex .ctselect li+li {
	margin: 0 0 0 16px;
}

.ctmailbtn {
	display: flex !important;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: nowrap;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	height: auto;
	text-align: center;
	z-index: 4;
	line-height: 2.8em;
}
.ctmailbtn a {
	display: block !important;
	width: 100%;
	height: auto;
	font-size: 2.6vw;
	background: #fff;
		-moz-border-radius: 12px;
		-webkit-border-radius: 12px;
	border-radius: 12px;
		-webkit-transition: all 0.2s;
		-moz-transition: all 0.2s;
		-ms-transition: all 0.2s;
		-o-transition: all 0.2s;
	transition: all 0.2s;
}
.ctmailbtn a img {
	display: inline-block !important;
	margin: 0 10px 0 0;
	padding: 2px 0 0;
	width: 38px;
	height: auto;
}


.pgnavibox.btmpgnavi {
	display: none;
}




/* pgsurvey
---------------------------------------------------- */

.pgsurv01box {
	display: block;
	width: 100%;
	padding: 0;
}
.pgsurv01box .textbox .btnbox {
	margin: 20px 0 30px;
	width: 60%;
	height: 60px;
	margin-right: 40%;
}
.pgsurv01box .textbox .btnbox .dbutton {
	width: 100%;
	margin:0 auto;
	padding: .3em 1em .2.5em;
	color: #fff;
	font-weight: 500;
	font-size: 1.0em;
}
.pgsurv01box .photobox {
	width: 90%;
	margin: 0 auto;
}


}



/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 480px){



/* l-container_side
---------------------------------------------------- */
/* pgservbox
---------------------------------------------------- */


.sbnrbox {
	width: 100%;
	margin: 0 auto;
	display: block;
}
.contactbnr,
.sbnrbox .sbnritem {
	width: 100%;
}
.contactbnr .mbnrtt {
	margin: 15px auto 10px;
	font-size: 7.0vw;
	color: #111;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}
.contactbnr .mbnrtxt {
	position: relative;
	margin: 0 20px 12px 82px;
	font-size: 4.0vw;
	color: #111;
	font-weight: 500;
	letter-spacing: -0.04em;
	text-align: left;
	line-height: 1.3em;
}
.contactbnr .mbnrtxt br {
	display: none;
}

.linebnr {
	width: 100%;
	border: solid 1px #00c201;
	background: #fff;
	text-align: center;
}
.linebnrimg {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 98%;
	margin: 12px auto 8px;
}
.linebnrimg div {
	margin: 0 5px;
	width: 100%;
}
.linebnrimg img {
	width: 100%;
	height: auto;
}
.side_areamap .textbox {
	padding: 0 0 20px;
	font-size: 0.9em;
}


.pgcontactbox {
}
.pgnavibox.btmpgnavi {
	display: none;
}

}

/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 400px){




}
