@charset "UTF-8";
/*===============================================
●画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px) {
	.link_btn {
		width: 192px;
		font-size: 14px;
		text-align: center;
	}
	#contents {
		margin-bottom: 149px;
	}
	#main_img {
		height: 803px;
		font-size: 16px;
		line-height: 35px;
		background-image: url(../img/index/bg_img_09.jpg);
		position: relative;
		position: relative;
		z-index: 0;
		border-bottom: 0;
	}
	#main_img .auto {
		pointer-events: none;
	}
	#main_img h2.logo {
		width: 291px;
		padding-top: 148px;
		margin: 0 auto 30px;
	}

	#main_img h2.logo img {
		width: 100%;
		height: auto;
	}
	#main_img p {
		color: #556954;
		font-weight: bold;
	}
	#main_img p .marker_white {
		background-color: #ffffff80;
		padding: 4px 8px;
		-webkit-text-stroke: 4px #ffffff;
		paint-order: stroke fill;
		text-shadow: 2px 2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, -2px -2px 0 #fff;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		font-weight: 700;
	}

	#conts_01 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 100px;
		padding-bottom: 61px;
	}
	#conts_01 .banner_box {
		margin-bottom: 69px;
	}
	#conts_01 .banner_box .img {
		width: 1200px;
		margin-bottom: 35px;
	}
	#conts_01 .banner_box .img a {}
	#conts_01 .banner_box .img a img {
		width: 100%;
		height: auto;
	}
	#conts_01 .title_box {
		width: 250px;
		float: left;
		margin-bottom: 47px;
	}
	#conts_01 .link_btn {
		width: 192px;
		float: right;
	}
	#conts_01 .news_list {
		width: 100%;
		float: left;
		clear: both;
	}
	#conts_01 .news_list li {
		width: 570px;
		float: left;
		margin-bottom: 50px;
	}
	#conts_01 .news_list li:nth-of-type(2n) {
		float: right;
	}
	#conts_01 .news_list li a {
		width: 100%;
		display: table;
		text-decoration: none;
		color: #ffffff;
	}
	#conts_01 .news_list li figure {
		width: 178px;
		height: 178px;
		display: table-cell;
		position: relative;
		overflow: hidden;
	}
	#conts_01 .news_list li figure img {
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	#conts_01 .news_list li .text_box {
		padding-left: 20px;
		display: table-cell;
		vertical-align: middle;
		font-size: 13px;
		line-height: 24px;
	}
	#conts_01 .news_list li .text_box .date {
		font-size: 12px;
		margin-bottom: 2px;
	}
	#conts_01 .news_list li .text_box .news_title {
		font-size: 18px;
		line-height: 24px;
		font-weight: bold;
		margin-bottom: 13px;
	}
	#conts_01 .news_list li .text_box .text {
		height: 68px;
		overflow: hidden;
	}
	#inpage_link {
		width: 100%;
		float: left;
		clear: both;
		background-color: #384c37;
	}
	#inpage_link .title_box {
		width: 293px;
		float: left;
		padding-top: 27px;
		margin-right: 38px;
	}
	#inpage_link .title_box .jp_text {
		margin-bottom: 7px;
	}
	#inpage_link .title_box h3 {
		margin-top: 0;
	}
	#inpage_link .right_box {
		width: 702px;
		float: left;
		display: table;
		padding-top: 22px;
		padding-bottom: 19px;
	}
	#inpage_link ul {
		width: 100%;
		display: table-row;

	}
	#inpage_link ul li {
		display: table-cell;
		padding-right: 40px;
		vertical-align: top;
		font-size: 10px;
		line-height: 1.5;
	}
	#inpage_link ul li a {
		display: block;
		text-decoration: none;
		color: #ffffff;
		padding: 6px 0 4px;
		position: relative;
	}
	#inpage_link ul li a::after {
		content: "";
		width: 100%;
		height: 3px;
		background-color: #fff;
		position: absolute;
		bottom: -1px;
		left: 0;
		transform: scale(0, 1);
		transform-origin: right top;
		transition: transform .3s;
	}
	#inpage_link ul li a:hover::after {
		transform-origin: left top;
		transform: scale(1, 1);
	}
	#inpage_link ul li a:hover {
		opacity: 0.6;
	}
	#inpage_link ul li .eng {
		font-size: 18px;
		line-height: 1.3;
	}

	#conts_02 {
		width: 100%;
		float: left;
		clear: both;
	}
	#conts_02 .box {
		width: 100%;
		float: left;
		height: 570px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		padding-top: 104px;
	}
	#conts_02 #project_01 {
		background-image: url(../img/index/bg_img_02.jpg);
	}
	#conts_02 #project_02 {
		background-image: url(../img/index/bg_img_03.jpg);
	}
	#conts_02 #project_03 {
		background-image: url(../img/index/bg_img_04.jpg);
	}
	#conts_02 #project_06, #conts_02 #project_07 {
		width: 50%;
		height: 514px;
	}
	#conts_02 #project_04 {
		background-image: url(../img/index/bg_img_05.jpg);
	}
	#conts_02 #project_05 {
		background-image: url(../img/index/bg_img_06.jpg);
	}
	#conts_02 #project_06 {
		background-image: url(../img/index/bg_img_07.jpg);
	}
	#conts_02 #project_07 {
		background-image: url(../img/index/bg_img_08.jpg);
	}
	#conts_02 #project_02 .auto, #conts_02 #project_04 .auto {
		padding-left: 710px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#conts_02 #project_06 .auto, #conts_02 #project_07 .auto {
		width: 524px;
	}
	#conts_02 .box .title_box {
		width: 100%;
		margin-bottom: 11px;
		position: relative;
	}
	#conts_02 .box .title_box .tokainaka_logo {
		position: absolute;
		left: 306px;
		top: -40px;
	}
	#conts_02 .box .title_box .jp_text {
		display: inline-block;
		position: relative;
	}
	#conts_02 .box .title_box h4 {
		font-size: 54px;
		line-height: 1.2;
	}
	#conts_02 .box .text {
		margin-bottom: 32px;
	}
	#conts_02 .box .logo {
		margin-top: 54px;
		margin-left: 57px;
	}

	#conts_03 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 90px;
		padding-bottom: 68px;
		background-image: url(../img/share/ptn_bg_02.jpg);
		background-repeat: repeat;
		background-position: left top;
		background-size: 600px;
	}
	#conts_03 .title_box {
		text-align: center;
		margin-bottom: 31px;
	}
	#conts_03 .works_list {
		width: 100%;
		letter-spacing: -.4em;
	}
	#conts_03 .works_list li {
		width: 384px;
		letter-spacing: normal;
		vertical-align: top;
		display: inline-block;
		margin-right: 24px;
		padding-bottom: 45px;
	}
	#conts_03 .works_list li:nth-of-type(3n) {
		margin-right: 0;
	}
	#conts_03 .works_list li a {
		color: #ffffff;
		text-decoration: none;
	}
	#conts_03 .works_list li figure {
		width: 100%;
		height: 222px;
		position: relative;
		margin-bottom: 5px;
		overflow: hidden;
	}
	#conts_03 .works_list li figure img {
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0;
	}
	#conts_03 .works_list li .category {
		font-size: 11px;
		line-height: 1.2;
		display: inline-block;
		border: 1px solid #ffffff;
		background-color: rgba(255, 255, 255, 0.14);
		padding: 2px 18px 3px;
		margin-bottom: 7px;
	}
	#conts_03 .works_list li .works_title {
		font-size: 16px;
		font-weight: bold;
		line-height: 1.4;
	}

	#conts_04 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 102px;
	}
	#conts_04 .title_box {
		width: 250px;
		float: left;
		margin-bottom: 46px;
	}
	#conts_04 .link_btn {
		width: 192px;
		float: right;
	}
	#conts_04 .press_list {
		width: 100%;
		float: left;
		clear: both;
	}
	#conts_04 .press_list li {
		width: 570px;
		float: left;
		margin-bottom: 58px;
	}
	#conts_04 .press_list li:nth-of-type(2n) {
		float: right;
	}
	#conts_04 .press_list li a {
		width: 100%;
		display: table;
		text-decoration: none;
		color: #ffffff;
	}
	#conts_04 .press_list li figure {
		width: 128px;
		display: table-cell;
	}
	#conts_04 .press_list li .text_box {
		padding-left: 20px;
		display: table-cell;
		vertical-align: middle;
		font-size: 13px;
		line-height: 24px;
	}
	#conts_04 .press_list li .text_box .date {
		font-size: 12px;
		margin-bottom: 2px;
	}
	#conts_04 .press_list li .text_box .news_title {
		font-size: 18px;
		line-height: 24px;
		font-weight: bold;
		margin-bottom: 13px;
	}
}

/*===============================================
●画面の横幅が769pxまで（iPhone6 横向きまで）
===============================================*/
@media screen and (max-width:769px) {
	.link_btn {
		width: 192px;
		font-size: 14px;
		text-align: center;
		margin: 0 auto;
	}

	#contents {
		width: 100%;
		clear: both;
		float: left;
	}
	#main_img {
		font-size: 1.2rem;
		line-height: 1.6;
		font-weight: bold;
		padding-top: 30vw;
		padding-bottom: 30vw;
		background-image: url(../img/index/bg_img_09.jpg);
		height: 40vh;
		border-bottom: 0;
	}
	#main_img h2.logo {
		width: 170px;
		margin: 0 auto 18px;
	}
	#main_img p {
		font-size: 14px;
		color: #556954;
		font-weight: 900;
	}
	#main_img p .marker_white {
		background-color: #ffffff80;
		padding: 2px 6px;
		-webkit-text-stroke: 3px #ffffff;
		paint-order: stroke fill;
		text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		font-weight: 700;
	}

	#conts_01 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 65px;
		padding-bottom: 116px;
		position: relative;
	}
	#conts_01 .banner_box {
		margin-bottom: 50px;
	}
	#conts_01 .banner_box .img {
		width: 100%;
		margin-bottom: 30px;
	}
	#conts_01 .banner_box .img a {}
	#conts_01 .banner_box .img a img {
		height: auto;
	}
	#conts_01 .title_box {
		margin-bottom: 18px;
		text-align: center;
	}
	#conts_01 .link_btn {
		width: 192px;
		margin: 0 auto;
		position: absolute;
		bottom: 65px;
		left: 50%;
		margin-left: -96px;
	}
	#conts_01 .news_list {
		width: 100%;
	}
	#conts_01 .news_list li {
		width: 100%;
		display: table;
		margin-bottom: 10px;
	}
	#conts_01 .news_list li a {
		width: 100%;
		display: table-row;
		text-decoration: none;
		color: #ffffff;
	}
	#conts_01 .news_list li figure {
		width: 90px;
		height: 90px;
		display: table-cell;
		position: relative;
		overflow: hidden;
	}
	#conts_01 .news_list li figure img {
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	#conts_01 .news_list li .text_box {
		width: calc(100% - 90px);
		display: table-cell;
		vertical-align: middle;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	#conts_01 .news_list li .text_box .date {
		font-size: 1rem;
		margin-bottom: 2px;
	}
	#conts_01 .news_list li .text_box .news_title {
		max-height: 34px;
		overflow: hidden;
		font-size: 1.3rem;
		line-height: 1.4;
		font-weight: bold;
		margin-bottom: 6px;
	}
	#conts_01 .news_list li .text_box .text {
		display: none;
	}

	#inpage_link {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 28px;
		padding-bottom: 16px;
		background-color: #384c37;
	}
	#inpage_link .title_box {
		width: 100%;
		margin-bottom: 14px;
	}
	#inpage_link .title_box .jp_text {
		margin-bottom: 5px;
	}
	#inpage_link .title_box h3 {
		font-size: 2.3rem;
		margin-top: 0;
	}
	#inpage_link .right_box {
		width: 100%;
		/* display: none; */
	}
	#inpage_link ul {
		width: 100%;
		letter-spacing: -.4em;
	}
	#inpage_link ul li {
		width: 49%;
		display: inline-block;
		letter-spacing: normal;
		vertical-align: top;
		font-size: 8px;
		line-height: 1.5;
		margin-bottom: 6px;
		margin-right: 2%;
	}
	#inpage_link ul li:nth-child(even) {
		margin-right: 0;
	}
	#inpage_link ul li a {
		display: block;
		text-decoration: none;
		color: #ffffff;
		padding: 4px 0 2px;
	}
	#inpage_link ul li a:hover {
		opacity: 0.6;
	}
	#inpage_link ul li .sp_icon {
		display: inline-block;
		background-image: url(../img/share/icon_09.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 8px;
		padding-right: 8vw;
	}
	#inpage_link ul li .eng {
		font-size: 1.5rem;
		line-height: 1.1;
	}

	#conts_02 {
		width: 100%;
		clear: both;
		letter-spacing: -.4em;
	}
	#conts_02 .auto {
		width: 100%;
	}
	#conts_02 .link_btn {
		display: none;
	}
	#conts_02 .box {
		width: 100%;
		display: inline-block;
		letter-spacing: normal;
		vertical-align: top;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		padding: 16vw 5% 30vw;
	}
	#conts_02 #project_01 {
		background-image: url(../img/index/bg_img_02.jpg);
	}
	#conts_02 #project_02 {
		background-image: url(../img/index/bg_img_03.jpg);
	}
	#conts_02 #project_03 {
		background-image: url(../img/index/bg_img_04.jpg);
	}
	#conts_02 #project_04 {
		background-image: url(../img/index/bg_img_05.jpg);
	}
	#conts_02 #project_05 {
		background-image: url(../img/index/bg_img_06.jpg);
	}
	#conts_02 #project_06 {
		background-image: url(../img/index/bg_img_07.jpg);
	}
	#conts_02 #project_07 {
		background-image: url(../img/index/bg_img_08.jpg);
	}
	#conts_02 .box .title_box {
		width: 100%;
		margin-bottom: 8px;
		position: relative;
	}
	#conts_02 .box .title_box .tokainaka_logo {
		width: 50px;
		position: absolute;
		left: 160px;
		top: -26px;
	}
	#conts_02 .box .title_box .jp_text {
		font-size: 1.1rem;
		display: inline-block;
		position: relative;
	}
	#conts_02 .box .title_box h4 {
		font-size: 3rem;
		line-height: 1.2;
	}
	#conts_02 .box .text {
		margin-bottom: 20px;
	}
	#conts_02 .box .logo {
		width: 180px;
		margin-top: 24px;
	}
	#conts_03 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 46px;
		padding-bottom: 40px;
		background-image: url(../img/share/ptn_bg_02.jpg);
		background-repeat: repeat;
		background-position: left top;
		background-size: 600px;
	}
	#conts_03 .title_box {
		text-align: center;
		margin-bottom: 18px;
	}
	#conts_03 .works_list {
		width: 100%;
		letter-spacing: -.4em;
	}
	#conts_03 .works_list li {
		width: 49%;
		letter-spacing: normal;
		vertical-align: top;
		display: inline-block;
		margin-right: 2%;
		margin-bottom: 20px;
	}
	#conts_03 .works_list li:nth-of-type(2n) {
		margin-right: 0;
	}
	#conts_03 .works_list li a {
		color: #ffffff;
		text-decoration: none;
	}
	#conts_03 .works_list li figure {
		width: 100%;
		height: 0;
		padding-top: 58%;
		position: relative;
		margin-bottom: 2px;
		overflow: hidden;
	}
	#conts_03 .works_list li figure img {
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0;
	}
	#conts_03 .works_list li .category {
		font-size: 8px;
		line-height: 1.2;
		display: inline-block;
		border: 1px solid #ffffff;
		background-color: rgba(255, 255, 255, 0.14);
		padding: 2px 7px 2px;
		margin-bottom: 5px;
	}
	#conts_03 .works_list li .works_title {
		font-size: 1.3rem;
		font-weight: bold;
		line-height: 1.4;
	}

	#conts_04 {
		width: 100%;
		float: left;
		clear: both;
		padding-top: 46px;
		padding-bottom: 58px;
		position: relative;
	}
	#conts_04 .title_box {
		margin-bottom: 18px;
		text-align: center;
	}
	#conts_04 .link_btn {
		width: 192px;
		position: absolute;
		bottom: 0;
		left: 50%;
		margin-left: -96px;
	}
	#conts_04 .press_list {
		width: 100%;
	}
	#conts_04 .press_list li {
		width: 100%;
		display: table;
		margin-bottom: 16px;
	}
	#conts_04 .press_list li a {
		width: 100%;
		display: table-row;
		text-decoration: none;
		color: #ffffff;
	}
	#conts_04 .press_list li figure {
		width: 80px;
		display: table-cell;
	}
	#conts_04 .press_list li figure img {
		width: 100%;
	}
	#conts_04 .press_list li .text_box {
		width: calc(100% - 90px);
		display: table-cell;
		vertical-align: middle;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	#conts_04 .press_list li .text_box .date {
		font-size: 1rem;
		margin-bottom: 2px;
	}
	#conts_04 .press_list li .text_box .news_title {
		max-height: 34px;
		overflow: hidden;
		font-size: 1.3rem;
		line-height: 1.4;
		font-weight: bold;
		margin-bottom: 6px;
	}
}