@charset "UTF-8";

/* SP
----------------------------------------------------------*/
@media only screen and (max-width: 640px) {
	/* page */
    .wrapper {
        min-width: 0;
        overflow: visible;
    }
	.core-parts.header_01,
	.core-parts.footer_01{
        min-width: 0;
        overflow: hidden;
	}
		/* inner　デバイスのモニター幅に納めるコンテナ */
		.inner,
		.main.inner{
			padding: 0 5%;
		}
		/*** main ***/
		.main {
			margin-top: 0;
			margin-bottom: 30%;
		}
		.main.inner {
			padding: 0 0 0 0;
		}
		.main-cont-01,
		.main-cont-02 {
			float: none;
			width: auto;
		}
		.main-cont-01 {
			margin: 0 0 50px 0;
		}


/*--------------------------------------

	header

-------------------------------------*/
	.core-parts.header_01.header-group{
		background-color: #fff;
		padding: 5% 5% 7%;
		border: none;
		z-index: unset;
	}
	.core-parts.header_01 .header-width{
		position: relative;
		padding: 0;
	}
	.core-parts.header_01 .header-logo{
		width: 74.44%;
		padding: 0;
	}
	.core-parts.header_01 .hglb-sp-btn{
		width: 7.35%;
		padding: 1.65% 0 0;
	}
	.core-parts.header_01 .hglb-sp-btn .btn-open{
		display: none;
	}
	.core-parts.header_01 .hglb-sp-btn .btn-close{
		display: none;
		text-align: center;
	}
	.core-parts.header_01 .hglb-sp-btn .active {
		display: block;
	}
	.core-parts.header_01 .hglb-sp-btn .btn-close img{
		vertical-align: middle;
	}

	/*ナビ*/

	.core-parts.header_01 #sidr {
		display: block;
		position: fixed;
		top: 0;
		height: 100%;
		z-index: 999999;
		width: 100%;
		overflow-x: hidden;
		overflow-y: auto;
		background: #eee;
		box-sizing: border-box;
		padding: 3% 3% 0;
	}
	.core-parts.header_01 #sidr.right {
		right: -100%;
	}
	.core-parts.header_01 .global-02-close {
		margin: 0;
	}
	.core-parts.header_01 #sidr .js-spmenu {
		width: 10%;
	}
	.core-parts.header_01 .hglb02-nav{
		margin-top: 8%;
	}
	.core-parts.header_01 .hglb02-nav li:first-child {
		border-top: 1px solid #ccc;
	}
	.core-parts.header_01 .hglb02-nav li{
		border-bottom: 1px solid #ccc;
		border-top: 1px solid #ccc;
		box-sizing: border-box;
		margin-top: -1px;
		padding: 0;
		margin: -1px 0 0;
	}
	.core-parts.header_01 .hglb02-nav li a{
		padding: 7% 4% 6% 4%;
		display: block;
		font-size: 14px;
	}
	.core-parts.header_01 .hglb02-nav li a:hover {
		margin: 0;
	}
	.core-parts.header_01 .glb02nav-txt{
		padding: 2px 0;
		border: none;
	}

/*--------------------------------------

	footer

-------------------------------------*/
	.core-parts.footer_01 .ft-bnpt-wrap{
		margin-top: 0;
		margin-bottom: 0;
		left: auto;
		margin-left: auto;
		overflow: hidden;
		position: absolute;
		text-align: center;
		top: 1%;
		width: 100%;
		z-index: 100;
	}
	.core-parts.footer_01 .pagetop a{
		width: 100%;
	}
	.core-parts.footer_01 .pagetop a .arrow-btn{
		width: 15.31%;
		display: inline-block;
	}
	.core-parts.footer_01 .ft-img01 {
		margin-top: 0;
		margin-bottom: 0;
		left: auto;
		right: 6.25%;
		margin-left: auto;
		overflow: hidden;
		position: absolute;
		text-align: center;
		top: 0;
		width: 100%;
		z-index: 100;
	}
	.core-parts.footer_01 .ft-img01 p {
		width: 19.37%;
	}
	.core-parts.footer_01 .footer-global-01 {
		padding: 11.875% 5% 6.25%;
		margin-top: 7.9%;
	}
	.core-parts.footer_01 .fglb01-inner-02 {
		padding-bottom: 9.19%;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-01 {
		text-align: center;
		float: none;
		width: 100%;
		padding-right: 0;
		padding-bottom: 5.51%;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-01 .ftr-logo {
		padding-bottom: 6px;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-01 img {
		width: 45.4%;
		min-width: 200px;
		vertical-align: bottom;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-02 {
		text-align: center;
		float: none;
		margin-top: 0;
		margin-bottom: 22px;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-02 p .tel2 {
		display: block;
	}
	.core-parts.footer_01 .fglb01-inner-02 .fglb02-wrap-02 .tell-box-02 {
		padding-top: 10px;
	}
	.core-parts.footer_01 .fglb01-inner-02 .buttons {
		max-width: 400px;
		font-size: 16px;
		width: 90%;
		margin: 0 auto;
		background: url(/common/imgs/ico_mail.png) #03a9f5 no-repeat scroll 17.86% 47% / 8.41% auto;
		border-radius: 50px;
	}
	.core-parts.footer_01 .fglb01-inner-02 .buttons a {
		font-weight: bold;
		padding-left: 30.19%;
		padding-top: 3.46%;
		padding-bottom: 2.97%;
		display: block;
		color: #fff;
		box-sizing: border-box;
	}
	.core-parts.footer_01 .fglb01-inner-03 {
		padding: 5.51% 8.27%;
		display: block;
		box-sizing: border-box;
	}
	.core-parts.footer_01 .fglb01-inner-03 .ttl {
		width: 100%;
		border-right: none;
		display: block;
		padding: 0 0 0.75em;
	}
	.core-parts.footer_01 .fglb01-inner-03 .ttl hr{
		width: 24px;
		display: inline-block !important;
		margin: 4px 10px;
		color: #191919;
	}
	.core-parts.footer_01 .fglb01-inner-03 .dtl{
		display: block;
		padding: 0;
	}
	.core-parts.footer_01 .fglb02-inner-01 {
		padding: 16px 0;
	}
	.core-parts.footer_01 .fglb02-inner-01 p {
		font-size: 0.75em;
		color:#656260;
	}





	/*最下部*/
	.core-parts.footer_01 .fglb02-wrap .fglb02w-nav{
		color: #fff;
		margin-bottom: 12.5%;
	}
	.core-parts.footer_01 .fglb02-wrap .fglb02w-nav li{
		background: url(/common/imgs/arw_01.png) no-repeat right center;
		background-size: 6%;
		padding-right: 0;
	}
	.core-parts.footer_01 .fglb02-wrap .fglb02w-nav li a{
		padding: 6.25% 6% 3.75% 0;
		border-bottom: 1px solid #555;
		display: inline-block;
		width: 100%;
		box-sizing: border-box;
	}
	.core-parts.footer_01 .fglb02-wrap .cpt-logo{
		width: 70%;
		float: none;
		margin: 0 auto;
		text-align: center;
	}
	.core-parts.footer_01 .fglb02-wrap .copyright{
		width: 93.75%;
		margin: 0 auto;
	}
	.core-parts.footer_01 .fglb02-inner-01 p{
		float: none;
		clear: both;
	}
	.core-parts.footer_01 .fglb02-inner-01 .other_lnk{
		width: 100%;
		margin-bottom: 5%;
		float: none;
	}
	.core-parts.footer_01 .fglb02-inner-01 .other_lnk li{
		width: 50%;
		margin-right: 0;
	}

/*--------------------------------------

	clm

-------------------------------------*/
	.clm-01{
		margin-bottom: 9.375%;
	}
	.clm-02{
		margin-bottom: 12.5%;
	}

/*--------------------------------------

	ttl

-------------------------------------*/
	/*中ページ ttl*/
	.ttl-wrap{
		background: url(/common/imgs/ttl_bg_sp.png) center top no-repeat;
		padding-top: 23%;
		padding-bottom: 14%;
		margin-bottom: 15.6%;
	}
	.ttl-01{
		text-align: left;
	}

/*--------------------------------------

	txt

-------------------------------------*/
	.lead-01{
		text-align: left;
	}
/*--------------------------------------

	link / btn

-------------------------------------*/
	.btn-01 a{
		width: 100%;
		background-position:center left 8%;
		padding: 3% 5% 3% 14%;
		background-size: 26px;
		font-size: 4vw;
	}
	.btn-02 a,
	.btn-02 input[type="submit"],
	.btn-03 a,
	.btn-03 input[type="submit"]{
		width: 100%;
		max-width: 304px;
	}
	
	.bnr-01{
		width: 100%;
	}


/*--------------------------------------

	list

-------------------------------------*/
	/*+-リスト*/
	.tab-list .cnt-ttl a{
		padding: 6.25% 3.9%;
		background-size: 3.5vw;
		background-position: right 3.9% center;
	}
	/*open*/
	.tab-list li.open .cnt-ttl a{
		background-position: right 3.9% center;
		background-size: 3.5vw;
	}
	.tab-list li .tab-inner{
		padding: 0 3.6% 30px;
	}

	/*背景bg 交互*/
	.list-01 dt,
	.list-01 dd{
		padding: 18px 3.9%;
	}


}
