@charset "utf-8";

@media screen and (max-width: 768px) {
	.main-wrap1 {
		width: 100%;
		position: relative;
		overflow: hidden;
	}
	.main-wrap1 .content-wrap {
		width: 100%;
		margin: 0 auto;
		padding: 0 0 5px 0;
	}
	.main-wrap1 .content {
		padding: 37px 0 35px;
		position: relative;
	}
	.main-wrap1 .content h2.page-title {
		text-align: center;
		position: relative;
		z-index: 10;
	}
	.main-wrap1 .content h2.page-title span.en {
		display: block;
		margin-bottom: 6px;
	}
	.main-wrap1 .content h2.page-title span.en img{
		width: 100%;
	}
	.main-wrap1 .content h2.page-title span.jp {
		display: block;
		font-size: 16px;
		font-weight: 600;
	}
	.main-wrap1 .bg-1 {
		width: 100%;
		height: 100px;
		margin: 0 auto;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 5;
	}
	.main-wrap1 .bg-1::before {
		position: absolute;
		top: 0;
		right: 80vw;
		display: block;
		content: " ";
		background-color: #d23732;
		height: 100%;
		width: 100%;
		transform: skew(-45deg);
	}
	.main-wrap1 .bg-2 {
		width: 100%;
		height: 100px;
		margin: 0 auto;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 5;
	}
	.main-wrap1 .bg-2::before {
		position: absolute;
		top: 0;
		left: 80vw;
		display: block;
		content: " ";
		background-color: #f0f0f0;
		height: 100%;
		width: 100%;
		transform: skew(-45deg);
	}
    .main-wrap2{
		width: 100%;
		margin:  0 auto;
		padding: 0;
		position: relative;
		background-color: #fff;
	}
	.main-wrap2 .content-wrap{
        width: 100%;
		margin: 0 auto 0 auto;
	}
	.main-wrap2 .content {
		width: 90%;
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		margin: 0 auto 0 auto;
		position: relative;
        padding: 2px 0 2px 0;
		-webkit-overflow-scrolling: touch;
	}
    .main-wrap2 .content .breadcrumbfr{
		width:auto;
		list-style: none;
	}
	.main-wrap2 .content .breadcrumb{
		display: inline-block;
		margin:0 0 3px 0;
	}
	.main-wrap2 .content .breadcrumb .breadcrumblnk{
		color:#1e1e1e;
		padding:0 10px;
		vertical-align: middle;
		display: inline-block;
        font-weight: 600;
    }
    .main-wrap2 .content .breadcrumb:first-child .breadcrumblnk{
        padding:0 10px 0 0;
    }
	.main-wrap2 .content .breadcrumb span.breadcrumbborder{
		vertical-align: middle;
		display: inline-block;
		position: relative;
		top:0px;
	}
	.main-wrap2 .content .breadcrumb span.breadcrumbborder img{
		vertical-align: middle;
        width: 15px;
	}
	.main-wrap3 {
		width: 100%;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		position: relative;
	}
	.main-wrap3 .content-wrap {
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap3 .content {
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap3 .content .content-bg {
		width: 100%;
		vertical-align: bottom;
	}
	.main-wrap3 .inner-wrap {
		width: 100%;
		height: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner {
		display: block;
		width: 100%;
		margin: 0 auto;
		padding: 40px 5% 60px 5%;
		position: relative;
		text-align: left;
	}
	.main-wrap3 .inner .contentleft {
		width: 100%;
	}
	.main-wrap3 .inner .contentleft .contenttitle1 {
		font-size: 18px;
		margin: 0 0 10px 0;
		padding: 0;
	}
	.main-wrap3 .inner .contentleft .contentdate {
		margin: 0 0 30px 0;
		padding: 0;
		padding: 0 0 0 3px;
		display: block;
	}
	.main-wrap3 .inner .contentleft .contentmainimage {
		width: 100%;
		margin: 0 0 30px 0;
	}
	.main-wrap3 .inner .contentleft .contentmainimage img {
		max-width: 100%;
		height: auto;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt * {
		width: 100%;
		line-height: 1.8em;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt p {
		margin: 0 0 20px 0;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt hr {
		width: 100% !important;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt a {
		text-decoration: underline;
	}
	.main-wrap3 .inner .contentright {
		width: 100%;
		padding: 60px 0 0 0;
	}
	.main-wrap3 .inner .contentright .contenttitle1 {
		margin: 0 0 10px 0;
		padding: 0;
		font-size: 18px;
	}
	.main-wrap3 .inner .contentright ul {
		margin: 0 0 30px 0;
	}
	.main-wrap3 .inner .contentright ul li {
	}
	.main-wrap3 .inner .contentright ul li a {
		display: block;
		padding: 8px 0 8px 0;
		color: #969696;
		font-weight: 500;
	}
	.main-wrap3 .inner .contentright form {
		width: 100%;
		overflow: hidden;
		margin: 0 0 40px 0;
		padding: 0;
	}
	.main-wrap3 .inner .contentright .searchtxt {
		border: solid 2px #969696;
		width: 85%;
		height: 40px;
		margin: 0;
		padding: 0 0 0 10px;
		float: left;
	}
	.main-wrap3 .inner .contentright .searchbutton {
		color: #323232;
		border: solid 2px #969696;
		border-left: none;
		width: 15%;
		height: 40px;
		display: inline-block;
		margin: 0;
		padding: 0;
		float: left;
		text-align: center;
		line-height: 40px;
		background-color: #ccc;
	}
}

@media screen and (min-width: 769px) {
	.main-wrap1 {
		min-width: 1200px;
		width: 100%;
		margin: 0 auto;
		position: relative;
		overflow: hidden;
	}
	.main-wrap1 .content-wrap {
		width: 1000px;
		margin: 0 auto;
		padding: 0 0 10px 0;
	}
	.main-wrap1 .content {
		padding: 70px 0 70px;
		position: relative;
	}
	.main-wrap1 .content h2.page-title {
		text-align: center;
		position: relative;
		z-index: 10;
	}
	.main-wrap1 .content h2.page-title span.en {
		display: block;
		margin-bottom: 12px;
	}
	.main-wrap1 .content h2.page-title span.en img{
		width: 100%;
	}
	.main-wrap1 .content h2.page-title span.jp {
		display: block;
		font-size: 24px;
		font-weight: 600;
	}
	.main-wrap1 .bg-1 {
		width: 1000px;
		height: 200px;
		margin: 0 auto;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 5;
	}
	.main-wrap1 .bg-1::before {
		position: absolute;
		top: 0;
		right: 810px;
		display: block;
		content: " ";
		background-color: #d23732;
		height: 100%;
		width: 1000%;
		transform: skew(-45deg);
	}
	.main-wrap1 .bg-2 {
		width: 1000px;
		height: 200px;
		margin: 0 auto;
		position: absolute;
		bottom:0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 5;
	}
	.main-wrap1 .bg-2::before {
		position: absolute;
		top: 0;
		left: 810px;
		display: block;
		content: " ";
		background-color: #f0f0f0;
		height: 100%;
		width: 1000%;
		transform: skew(-45deg);
	}
	.main-wrap2{
        min-width: 1200px;
		width: 100%;
		margin:  0 auto;
		padding: 0;
		position: relative;
		background-color: #fff;
	}
	.main-wrap2 .content-wrap{
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
	}
	.main-wrap2 .content {
		width: 1000px;
		margin: 0 auto 0 auto;
		position: relative;
        padding: 0;
	}
    .main-wrap2 .content .breadcrumbfr{
		width:auto;
		list-style: none;
	}
	.main-wrap2 .content .breadcrumb{
		color:#1e1e1e;
		display: inline-block;
		float: left;
		margin:0 0 3px 0;
	}
    .main-wrap2 .content .breadcrumb .breadcrumblnk{
		color:#1e1e1e;
		padding:0 20px;
		vertical-align: middle;
		display: inline-block;
        font-weight: 600;
    }
    .main-wrap2 .content .breadcrumb:first-child .breadcrumblnk{
        padding:0 20px 0 0;
    }
	.main-wrap2 .content .breadcrumb span.breadcrumbborder{
		vertical-align: middle;
		display: inline-block;
		position: relative;
		top:0;
	}
	.main-wrap2 .content .breadcrumb span.breadcrumbborder img{
        vertical-align: middle;
        width: 15px;
    }
	.main-wrap3 {
		min-width: 1200px;
		width: 100%;
		margin: 100px auto 140px auto;
		padding: 0 0 0 0;
		position: relative;
	}
	.main-wrap3 .content-wrap {
		width: 1000px;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap3 .content {
		width: 100%;
		height: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap3 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner {
		display: block;
		width: 100%;
		margin: 0 auto;
		padding: 100px 0 100px 0;
		position: relative;
		text-align: left;
		overflow: hidden;
	}
	.main-wrap3 .inner {
		width: 1000px;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		text-align: left;
	}
	.main-wrap3 .inner .contentleft {
		width: 644px;
		float: left;
	}
	.main-wrap3 .inner .contentleft .contenttitle1 {
		font-size: 26px;
		margin: 0 0 20px 0;
		padding: 0;
	}
	.main-wrap3 .inner .contentleft .contentdate {
		margin: 0 0 30px 0;
		padding: 0;
		padding: 0 0 0 3px;
		display: block;
	}
	.main-wrap3 .inner .contentleft .contentmainimage {
		max-width: 644px;
		margin: 0 0 50px 0;
	}
	.main-wrap3 .inner .contentleft .contentmainimage img {
		max-width: 100%;
		height: auto;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt * {
		mix-width: 644px !important;
		line-height: 1.8em;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt p {
		margin: 0 0 40px 0;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt hr {
		width: 100% !important;
	}
	.main-wrap3 .inner .contentleft .contentmaintxt a {
		text-decoration: underline;
	}
	.main-wrap3 .inner .contentright {
		width: 307px;
		overflow: hidden;
		float: right;
	}
	.main-wrap3 .inner .contentright .contenttitle1 {
		margin: 0 0 10px 0;
		padding: 0;
		font-size: 24px;
	}
	.main-wrap3 .inner .contentright ul {
		margin: 0 0 30px 0;
	}
	.main-wrap3 .inner .contentright ul li {
	}
	.main-wrap3 .inner .contentright ul li a {
		display: block;
		padding: 8px 0 8px 0;
		color: #969696;
		font-weight: 500;
	}
	.main-wrap3 .inner .contentright form {
		width: 307px;
		overflow: hidden;
		margin: 0 0 40px 0;
		padding: 0;
	}
	.main-wrap3 .inner .contentright .searchtxt {
		border: solid 2px #969696;
		width: 240px;
		height: 40px;
		margin: 0;
		padding: 0 0 0 10px;
		float: left;
	}
	.main-wrap3 .inner .contentright .searchbutton {
		color: #323232;
		border: solid 2px #969696;
		border-left: none;
		width: 56px;
		height: 40px;
		display: inline-block;
		margin: 0;
		padding: 0;
		float: left;
		text-align: center;
		line-height: 36px;
		background-color: #ccc;
	}
}
