@charset "utf-8";
/* CSS Document */

@media screen and (max-width: 640px){

	/* -------------------- all -------------------- */

	img{
		width: 100%;
	}

	/* -------------------- header -------------------- */

	header{
		width: 100%;
		min-width: 100%;
		border-top: 3px solid #E68718;
		border-bottom: 1px solid #ddd;
		padding: 7.5px 0;
	}

	.head_inner{
		width: 95%;
		margin: auto;
		justify-content: space-between;
		position: relative;
		align-items: flex-start;
	}

	.head_inner .accordion {
		display: block;
		background-color: #fff;
		font-size: 12px;
		font-weight: bold;
		border: 1px solid #a2a2a2;
		border-radius: 4px;
		padding: 6px 10px;
	}

	.head_inner .accordion .line:not(:first-child) {
		margin-top: 5px;
	}

	.head_logo_box {
		width: 130px;
	}

	nav{
		display: none;
		width: 100vw;
		height: auto;
		border-top: none;
		border-bottom: none;
		max-width: initial;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}

	.menu{
		display: none;
	}

	.sp_menu{
		width: 100%;
		display: block;
		margin-top: 10px;
	}

	.sp_menu_list li{
		width: 100%;
		text-align: center;
		border-bottom: dotted 1px #d55513;
		background: #ffe7c6;
	}

	.sp_menu_list li:last-child{
		border-bottom: solid 1px #d55513;
	}

	.sp_menu li a{
		color: #d55513;
		line-height: 40px;
		display: block;
	}

	.sp_menu_list li a:hover{
		color: #fff;
		text-decoration: none;
		background-color: #d55513;
	}

	.sp_menu .nav-submenu li {
		background-color: #fff8ef;
	}

	.sp_menu .nav-submenu li:last-child {
		border: 0;
	}

	.sp_menu li.toggle-submenu {
		position: relative;
	}

	.sp_menu li.toggle-submenu::before {
		content: '';
		position: absolute;
		display: block;
		width: 7px;
		height: 7px;
		right: 20px;
		top: 10px;
		border: 2px solid;
		border-width: 2px;
		border-style: solid;
		border-color: #d55513 #d55513 transparent transparent;
		transform: rotate(135deg);
		transition: 0.2s;
	}

	.sp_menu li.toggle-submenu.open::before {
		transform: rotate(-45deg);
		top: 17px;
		border-color: #fff #fff transparent transparent;
	}


	/* -------------------- contents -------------------- */

	#contents{
		width: 100%;
	}

	.cnt_ttl{
		font-size: 23px;
	}

	.cnt_ttl + p {
		margin-top: 0;
		margin-bottom: 20px;
		font-size: 9px;
	}

	.sub_ttl {
		text-align: left;
		font-size: 16px;
		border-bottom: 1px solid #ddd;
		padding-left: 10px;
		width: 100%;
	}


	/* ---------- main ---------- */

	#main{
		width: 100%;
		margin-bottom: 60px;
		float: none;
	}

	#contents.child #main {
		width: 100%;
		margin-top: 15px;
	}

	.section_box {
		padding-top: 30px;
		width: 100%;
		min-width: initial;
	}

	.section_box.top_news {
		padding-bottom: 1px;
	}

	.pankuzu {
		font-size: 12px;
		padding-left: 10px;
		margin-bottom: 40px;
	}

	.child_head {
		font-size: 24px;
		padding-bottom: 15px;
	}

	.child_head.noline {
		display: none;
	}

	.head_description {
		font-size: 14px;
		width: 90%;
		margin: auto;
	}


	/* ---------- side ---------- */

	aside{
		width: 85%;
		margin: 0 auto;
		float: none;
	}

	.side_worldonepress{
		padding: 10px 15px;
	}

	.side_bnr_recruit{
		margin-top: 10px;
	}

	.side_category,
	.side_brand,
	.side_archive,
	.side_area {
		margin-bottom: 30px;
	}


	/* -------------------- footer -------------------- */

	footer{
		width: 100%;
		min-width: initial;
	}

	.foot_inner{
		width: 80%;
		padding: 15px 0 30px;
		font-size: 85%;
	}

	.foot_menu{
		width: 49%;
		margin-bottom: 20px;
	}

	.foot_info{
		width: 100%;
		margin: 15px auto 0;
	}

	.foot_sns {
		max-width: 250px;
	}

	.foot_sns li img{
		width: 90%;
	}

	.foot_logo_box{
		margin: 0 auto;
		padding-bottom: 30px;
	}

	.foot_txt{
		width: 90%;
		margin: 0 auto;
		padding: 10px;
		font-size: 10px;
		line-height: 1.7;
		text-align: left;
	}

	.copyright{
		font-size: 72%;
	}


} /* @media screen and (max-width: 640px) */
