@charset "utf-8";


@media only screen and (max-width:1180px) {
		.base #container.column2 .wrap,
		#gHeader .wrap,
		.footerLogo .wrap,
		.copyRight .wrap {
			width: auto;
			margin-left: 10px;
			margin-right: 10px;
			min-width: 960px;
		}

		#gNav > ul > li > a,
		#gNav > ul > li > strong {
			padding: 12px 25px 20px;
		}

		.subMenu .navTitle {
			width: 240px;
			margin-right: 30px;
		}
		.subMenu-01 .menuList li {
			margin-left: 30px;
		}
		/*.subMenu-02 .menuList li {
			margin-left: 50px;
		}*/

		.pageTop {
			right: 0;
	    margin-right: 0;
	  }
	}

@media screen and (max-width:599px){

	body.base {
		min-width:auto;
	}

/* list */
	/* dl */
	dl.list dt {
	     padding: 0;
    	 width: auto;
    	 margin: 20px 0 -22px;
	}
	dl.list dt:first-child {
		margin-top: 0;
	}
	dl.list dd {
		clear: both;
    	padding: 22px 0;
	    padding-left: 0;
	    _padding-left: 0;
	}
	dl.list dd span {
    	top: 4px;
	    _left: -13em;
	}
	/* add170207 */
	#mainContent dl.list dd img.new {
		position: absolute;
		top: 4px;
		left: 15.5em;
    	width: 4.0em;
	}
	/* add170207 */

/* wrap */
    #wrap{
        padding-bottom: 60px;
    }
	.base .wrap {
		width: 100%;
	}

	:root *> .selectArea {
		position: relative;
	}
	:root *> .selectArea select{
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	:root *> .selectArea div{
		width: auto;
	}
	:root *> .selectArea div:before{
		content: "";
		display: block;
		width: 24px;
		height: 24px;
		background : #3390cf;
		border-radius: 3px;
		padding: 3px;
		position: absolute;
		right: 2px;
		top: 2px;
	}
	:root *> .selectArea div:after{
		content: "";
		width: 0;
		height: 0;
		display: block;
		border: 4px solid transparent;
		border-top: 4px solid white;
		position: absolute;
		right: 12px;
		top: 15px;
	}

    br.sp-only {
		display: block;
	}

	body.base {
		min-width: inherit;
		height: 100%;
	}

	.base .wrap {
		width: auto;
		padding-left: 10px;
		padding-right: 10px
	}
	.base #container {
		width: auto;
	}
	.base #container.column2 #mainContent,
	.base #container.column2 .wrap{
		width: auto;
	}

	.base #container.column2 .wrap,
	#gHeader .wrap,
	.footerLogo .wrap,
	.copyRight .wrap {
		min-width: inherit;
		margin-left: 0;
		margin-right: 0;
	}

	/* page */
	.page.unLayindex ,
	.page {
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
		padding-top: 100px;
	}

	/* gHeader */
	#gHeader {
		padding-top: 0;
		padding-bottom: 0;
	}

	#gHeader .wrap {
		box-sizing: border-box;
		width: 100%;
		padding: 0;
	}

	.siteTitle {
		display: none;
	}

	.headerLogo {
		position: static;
		top: auto;
		left: auto;
		text-align: left;
		padding: 0 0;
		margin-left: -4px;
	}
	.headerLogo a {
		display: inline-block;
		vertical-align: top;
	}


	#spMenu, .sp-fSize {
		display: block;
		position: absolute;
	}

	/* spMenu */
	#spMenu,
	#spMenu span {
		display: inline-block;
		box-sizing: border-box;
	}
	#spMenu {
		top: 14px;
		right: 13px;
		width: 24px;
		height: 20px;
	    margin-top: 4px;
	}
	#spMenu span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 3px;
		margin-bottom: 0;
		background-color: #0060b0;
	}
	#spMenu span:nth-of-type(1) {
		top: 0;
	}
	#spMenu span:nth-of-type(2) {
		top: 50%;
		margin-top: -2px;
	}
	#spMenu span:nth-of-type(3) {
		bottom: 1px;
	}


	#spMenu.menu-state-on span:nth-of-type(1) {
		top: 0;
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	#spMenu.menu-state-on span:nth-of-type(3) {
		top: 8px;
		-webkit-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#spMenu.menu-state-on span:nth-of-type(2) {
		opacity: 0;
	}


	/* sp-fSize */
	.sp-fSize {
		top: 10px;
		right: 50px;
		width: 60px;
		line-height: 1;
		padding: 2px;
		background-color: #999;
		border-radius: 3px;
		-webkit-box-shadow: inset 0px 0px 4px 1px rgba(0,0,0,0.1);
		-moz-box-shadow: inset 0px 0px 4px 1px rgba(0,0,0,0.1);
		box-shadow: inset 0px 0px 4px 1px rgba(0,0,0,0.1);
		transition: background-color .3s;
	}


	.sp-fSize a {
		display: block;
		color: #aaa;
		font-size: 14px;
		font-weight: bold;
		line-height: 1;
		padding: 8px;
	}
	.sp-fSize a:nth-child(1) {
		float: left;
	}
	.sp-fSize a:nth-child(2) {
		float: right;
	}

	.sp-fSize a.fSize-state-on {
		color: #777;
		border-radius: 2px;
		background-color: #fff;
	}

	/*.sp-fSize .sp-fSize__btn {
		pointer-events: none;
		position: absolute;
		top: 2px;
		left: 2px;
		width: 26px;
		height: 26px;
		background-color: #fff;
		border-radius: 50px;
		-webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);
		-moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);
		box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);
		transition: .3s;
	}
	.sp-fSize .sp-fSize__btn.f_medium {
		-webkit-transform: translateX(30px);
		transform: translateX(30px);
	}
	.sp-fSize .sp-fSize__btn.f_large {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}*/

	/* spNav-wrap */
	.spNav-wrap {
		display: none;
		position: fixed;
		top: 80px;
		left: 0;
		right: 0;
		width: 100%;
	    height: -webkit-calc(100% - 55px);
	    height: calc(100% - 55px);
	    overflow-y: scroll;
	    padding: 10px;
		background-color: #333;
		box-sizing: border-box;
	}
	.spNav-wrap.spNav-state-on {
		display: block;
	}

	.spNav-wrap .wrap {
		padding: 0;
	}

	/* gNav */
	#gNav {
		opacity: 1;
		float: none;
	}

	#gNav > ul > li {
		float: none;
		padding: 15px 0;
		border-bottom: 1px solid #666;
	}
	#gNav > ul > li > a,
	#gNav > ul > li > strong {
		color: #fff;
		text-align: left;
		padding: 0;
	}
	#gNav > ul > li > strong {
		margin-bottom: 10px;
	}
	#gNav > ul > li > a br,
	#gNav > ul > li > strong br {
		display: none;
	}

	#gNav > ul > li > a:hover,
	#gNav > ul > li > strong:hover {
		color: #fff;
	}
	#gNav > ul > li > a:hover::before,
	#gNav > ul > li > strong:hover::before {
		display: none;
	}

	.subMenu {
	    opacity: 1;
	    visibility: visible;
	    position: inherit;
	    top: inherit;
	    left: inherit;
	    right: inherit;
	    background-color: transparent;
	}
	.subMenu .navTitle {
		display: none;
	}

	.menuList li {
		float: none;
		margin-left: 0;
		padding: 0;
	}

	.subMenu-01 .menuList li,
	.subMenu-02 .menuList li,
	.subMenu-03 .menuList li {
		width: 100%;
		margin-left: 0;
	}

	.menuList li a {
		font-size: 10px;
		padding-top: 5px;
		padding-bottom: 5px;
	}

	#gNav > ul > li.gNav-state-on > strong,
	#gNav > ul > li > a:hover,
	#gNav > ul > li > strong:hover {
		color: #fff;
	}
	#gNav > ul > li.gNav-state-on > strong::before,
	#gNav > ul > li > strong::before {
		display: none;
	}
	.subMenu .wrap {
		-webkit-transform: inherit;
		transform: inherit;
		transition: inherit;
	}
	.subMenu.subMenu-state-on .wrap {
		transform: inherit;
	}

	.navSDW {
		display: none;
	}

	/* pNav */
	#pNav {
		position: static;
		top: auto;
		right: auto;
		opacity: 1;
	}
	#pNav ul, #pNav ul li {
		float: none;
	}

	.pNav__main {
		padding: 12px 0;
	}
	.pNav__main li {
		padding: 0;
	}
	.pNav__main li::before {
		display: none;
	}
	.pNav__main li a {
		display: block;
		color: #fff;
		font-size: 14px;
		padding: 8px 0;
	}
	#gHeader .pNav__main li a:hover {
		text-decoration: none;
	}

	.pNav__lang, .pNav__fSize {
		display: none;
	}


	/* gFooter */
	#gFooter {
	}

	/* fNav */
	#fNav {
		padding: 30px 0 0;
	}
	#fNav .fNav__block {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-top: 40px;
	}
	#fNav .fNav__block .navTitle {
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
	#fNav .fNav__block .navTitle.navTitle-mt {
		margin-top: 40px;
	}
	#fNav .fNav__block:first-child {
		margin-top: 0;
	}

	#fNav .fNav__block ul li {
		margin-top: 8px;
	}

	#fNav .fNav-sub {
		text-align: left;
		padding-top: 30px;
	}
	#fNav .fNav-sub li {
		display: block;
		padding: 0;
		border-top: 1px solid #e3e3e3;
	}
	#fNav .fNav-sub li::before {
		display: none;
	}
	#fNav .fNav-sub li a {
		display: block;
		padding: 15px 0;
	}


	.footerLogo .logo-01,
	.footerLogo .logo-02 {
		float: none;
		text-align: center;
	}
	.footerLogo .logo-01 a,
	.footerLogo .logo-02 a {
		display: block;
		padding: 5px 0;
	}


	.copyRight {
		text-align: center;
	}
	.copyRight p {
		font-size: .6em;
	}



	/* main */
	/* 1 column */
	.base #container {
		width: 100%;
	}
	.base #container #mainContent,
	.base #container .wrap {
	    margin: 0 8%;
	    box-sizing: border-box;
	}
	.titleArea.titleIndex .pTitle{
	    text-align: center;
	    width: 100%;
	    box-sizing: border-box;
	}
	/* 2 column */
	.base #container.column2 #mainContent,
	.base #container.column2 .wrap {
	    margin: 0 8%;
	    float: none;
	    box-sizing: border-box;
	}
	.breadcrumbList{
	    display: none;
	}
	#pageIndex .box{
	    float: none;
	    width: 96%;
	    margin: 0 auto 10px;
	}
	#pageIndex .box .inner{
	    width: 100%;
	    background: #ffffff url(../imgs/bg-inner.gif) repeat-x 50% 0;
	}
	#pageIndex .box .inner:hover {
		background: #f9f9f9 url(../imgs/bg-inner.gif) repeat-x 50% 0;
	}
	.column2 #sideContent{
	    float: none;
	    width: 100%;
	    margin-top: 20px;
	}

	#sideContent .navTitle{
	    padding-left: 10px;
	}
	#sNav{
	    margin-bottom: 0;
	}


	/* mainContent */
	#mainContent img{
	    width: 100%;
	    height: auto;
	}
	.titleArea{
	    border: none;
	    overflow: hidden;
	    padding-top: 50px;
	}
	.titleArea .pageTag{
	    position: absolute;
	    float: right;
	    display: block;
	    top:10px;
	}
	.pTitle{
	    float: left;
	    margin-top: 5px;
	    position: relative;
	    bottom: 0;
	}
	h3{
	    font-size: 20px !important;
	    line-height: 1.4;
	}
	/*
	p{
	    font-size: 10px;
	    line-height: 25px;
	}
	*/

	.titleArea-service_icn-quarter li {
		width: 24%;
		margin-right: 1%;
	}

	.titleArea-service_icn-oneFifth li {
		width: 19%;
		margin-right: 1%;
	}

		.titleArea-service_icn-oneSixth li {
		width: 15.66%;
		margin-right: 1%;
	}

	.titleArea-service_icn-oneFifth

	/* unLayindex */
	.titleArea.titleIndex{
	    background-position: -215px 0;
	}
	.unLayindex .fr{
	    float: left;
	}
	.unLayindex .box .titleA{
	    margin-left: 10px;
	}
	.ellipsis.multiline{
	    width: 100%;
	}
	#pageIndex01 .left,
	#pageIndex01 .right{
	    width: 96%;
	    margin: 0 auto;
	    float: none;
	}
	#pageIndex01 .box .clearfix {
		background: transparent url(../../common/imgs/bg-arrw-top-sp.gif) no-repeat 95% 50%;
	    background-size: 13px;
	    padding: 15px;
	}
	#pageIndex01 .box .clearfix.off {
		background: transparent url(../../common/imgs/bg-arrw-bottom-sp.gif) no-repeat 95% 50%;
	    background-size: 13px;
	}
	#pageIndex01 .box .clearfix .fr{
	    width: auto;
	}
	#pageIndex01 .box .body p{
	    text-align: center;
	}
	#pageIndex01 .box .body dl{
	    border-top: 1px solid #0060b0;
	    margin-top: 20px;
	}
	 #pageIndex01 .box .body dt {
	    border-bottom: 1px dotted #0060b0;
	    padding: 10px;
	}
	#pageIndex01 .box .body dt a{
	    color: #333;
	    text-decoration: none;
		background: transparent url(../../common/imgs/bg-arrw-left-sp.gif) no-repeat 100% 50%;
	    background-size: 13px;
	    padding: 0 10px;
	}
	#pageIndex01 .box .body dd{
	    display: none;
	}
	#pageIndex01 .bnrBox .left{
	    display: none;
	}
	#pageIndex01 .box p.close {
	    text-align: center;
	    padding-top: 15px;
	    display: block;
	    font-weight: bold;
	}
	#pageIndex .fl,
	#pageIndex01 .fl{
	    float: left;
	    width: auto !important;
	}
	#pageIndex .fr,
	#pageIndex01 .fr{
	    float: left;
	    width: auto !important;
	}
	/* message */
	.imgClmBlockR .img{
	    float: none;
	    margin-bottom: 20px;
	}
	.imgClmBlockR .txt{
	    padding-right: 0;
	}

	/* Pagenation */
	 #Pagenation .inner {
	 	margin: 0;
	 }
	 #Pagenation ul {
	 	min-width: 100px;
	 	width: 39.5%;
	 	margin: 0 auto;
	 }
	 #Pagenation ul li {
	 	display: inline;
	 	float: left;
	 	margin: 0 2.5px 5px;
	 }
	 #Pagenation ul li span.current_page,
	 #Pagenation ul li a {
	 	width: 28px;
	 	height: 28px;
	 	display: block;
	 	text-align: center;
	 	text-decoration: none;
	 }
	 #Pagenation ul li span.current_page,
	 #Pagenation ul li a:hover,
	 #Pagenation ul li strong {
	 	background-color: #2f8bcc;
	 	border: 1px solid #2c84c8;
	 	color: #ffffff;
	 }
	 #Pagenation .pageBack,
	 #Pagenation .pageNext {
	 	font-size: 10px;
	 }
	 #Pagenation .pageBack {
	 	background-position: left 7px;
	 	background-size: 10px;
	 	padding: 3px 0 2px 15px;
	 }
	 #Pagenation .pageNext {
	 	background-position: right 7px;
	 	background-size: 10px;
	 	padding: 3px 15px 2px 0;
	 }

	/* outline */
	.list02{
	    background: none;
	}
	.list02 th,
	.list02 td{
	    background: #fff;
	    display: block;
	    width: 100%;
	    box-sizing: border-box;
	}
	.list02 th {
	    border-top: 1px solid #0060b0;
	    border-bottom: 1px dotted #0060b0;
	}
	.list02 .first th {
		background: #fff url(../imgs/bg-list02-th.gif) repeat-x 0 0;
	}
	.list02 .first td {
		padding-top: 14px;
		background: #fff;
	}
	.list02 table{
	    font-size: 90%;
	    width: 100%;
	}
	.list02 table td{
	    display: table-cell;
	    width: auto;
	}
	/* office */
	#mainContent .ar.spImg a{
	    display: inline-block;
	    width: 50%;
	    padding:0 1px;
	    box-sizing: border-box;
	}
	.pageNav ul{
	    text-align: left;
	}
	.pageNav ul li{
	    display: inline-block;
	}
	.pageNav a{
	    padding: 3px 20px 3px 35px;
	}

	/* group */
	.ttlSet h3{
	    width: 100%;
	    position: static;
	}
	.fl{
	    float: none;
	    width: 100% !important;
	}
	.ttlSet h3,
	.ttlSet h3{
	    text-align: center;
	    margin: 0 auto 20px;
	}
	.ttlSet h3 img,
	.ttlSet h3 img{
	    text-align: center;
	    margin: 0 auto;
	    width: auto !important;
	}

	/* mansion */
	.fr{
	    float: none;
	    width: 100% !important;
	}

	/* total */
	#mainContent .fList a{
	    width: 100%;
	}
	#mainContent .fList li{
	    width: 50%;
	}
	#mainContent .fList li.mr20{
	    margin-right: 0;
	}

	/* hotline */
	#bgArea{
	    background-size: 40%;
	}
	#bgArea .titleA{
	    margin-top: 40%;
	}
	.boxContact{
	    width: 98%;
	    height: auto;
	    padding: 20px 10px;
	    box-sizing: border-box;
	    margin-left: auto;
	    margin-right: auto;
	}
	.boxContact p.title,
	.boxContact p.number,
	.boxContact p.hours,
	.boxContact p.boxmail{
	    position: static;
	    width: auto;
	    float: none;
	}
	.boxContact p.title {
		margin-bottom: 10px;
	}
	.boxContact p.title img,
	.boxContact p.number img{
	    text-align: center;
	    width: auto;
	    display: block;
	    margin: 0 auto;
	    max-width: 100%;
	    width: auto!important;
	}
	.boxContact p.number span {
		margin-top: 10px;
	}
	.boxContact .ttlbox,
	.boxContact .telbox {
		width: 100%;
	}
	.boxContact .telbox{
		margin-top: 20px;
		border:none;
	}
	.contact .mail{
	    position: relative;
	    left: 0;
	    top:0;
	}
	.relative .mail{
	    position: relative;
	    right: 0;
	    top:0 !important;
	    text-align: left;
	}
	.inconts .tab-box{
	    line-height: 1.2 !important;
	}
	#bunjoguide .inconts .tab-box{
	    height: auto;
	    overflow: hidden;
	}
	.inconts .tab-box div{
	    height: auto;
	}
	.inconts .tab-box a{
	    padding: 15px 0;
	    height: auto !important;
	}
	.inconts .content{
	    clear: both;
	}
	.content .tabinnerconts {
	    margin-top: 0;
	}
	.inner .titinner h3 {
	    font-size: 15px !important;
	}
	.midwidthbox .formcontact, .midwidthbox .formcontact a{
	    font-size: 15px;
	}

	/* map */
	body.pop{
	padding: 0 8%;
	width: 100%;
	box-sizing: border-box;
	}
	body.pop .page{
	padding-top: 20px;
	}
	body.pop #header {
	padding: 0 0 20px;
	}
	body.pop #header .wrap {
	width: 100%;
	}
	body.pop #header h1 {
	margin: 0 auto;
	float: none;
	width: 100%;
	}
	body.pop .page h1 img{
	width: 45%;
	height: auto;
	display: block;
	margin-left: 2.8125%
	}
	body.pop #container{
	width: 100%;
	}
	body.pop #container #mainContent{
	width: 100%;
	}
	body.pop #hNav{
	  display: none;
	}
	body.pop #map{
	width: 100%;
	}
	body.pop #map img{
	width: 100%;
	}
	body.pop .ac img{
	width: 30% !important;
	}
	body.pop #footer .wrap{
	width: 100%;
	}

	/* privacy */
	.base #container #mainContent.privacy{
	    margin: 0 8%;
	    float: none;
	    box-sizing: border-box;
	}
	.base #container #mainContent.privacy .contact .bt01,
	.base #container #mainContent.privacy .contact .bt02{
	    position:static;
	}

	/* policy */
	.base #container #mainContent.policy{
	    margin: 0 8%;
	    float: none;
	    box-sizing: border-box;
	}

	/* social */
	.base #container #mainContent.social{
	    margin: 0 8%;
	    float: none;
	    box-sizing: border-box;
	}
	.base #container #mainContent.social .btnArea li{
	    width: 100%;
	    height: auto;
	    margin: 0;
	    padding: 10px 0;
	}
	.base #container #mainContent.social .socialList li{
	    width: 100%;
	    margin: 0;
	}
	.base #container #mainContent.social .socialList li p.thum{
	    width: 100%;
	}
	.base #container #mainContent.social .socialList li p.thum img{
	    margin: 10px auto;
	    text-align: center;
	    display: block;
	    width: 60%;
	}
	.base #container #mainContent.social .socialList li .txt{
	    float: none;
	    width:100%;
	}
	/* 画像切り替え */

	.section .pcImg{
	    display: none;
	}

	.section .spImg{
	    display: block;
	}

	/* SP時非表示 */
	 .pcOnly{
	    display: none;
	}

}
