@charset "utf-8";

/***************************************************************************
Media Queries
****************************************************************************/

@media print, screen and (max-width: 1000px) {
}
@media only screen and (max-width: 767px) {
}
@media only screen and (max-width: 480px) {
}

/***************************************************************************
home
****************************************************************************/

#home .main {
	padding-bottom: 0px;
}
#home .contents {
	max-width: 1240px;
}

/***************************************************************************
section_ttl
****************************************************************************/

.section_ttl .ttl {
	margin-bottom: 40px;
}
.section_ttl .ttl:after {
	content: " ";
	display: block;
	width: 80px;
	height: 1px;
	background-color: #003B80;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -30px;
}
.section_ttl .txt {
	margin-top: 0px;
	padding-top: 20px;
}

@media only screen and (max-width: 767px) {
.section_ttl .ttl {
	margin-bottom: 8.2vw;
}
.section_ttl .ttl:after {
	width: 16.4vw;
	bottom: -6.1vw;
}
.section_ttl .txt {
	padding-top: 4.1vw;
}
}

/***************************************************************************
top_sld
****************************************************************************/

/*#top_sld .sp-thumbnails-container {
	background-color: #F6F6F6;
	width: 100% !important;
	margin-top: 0;
	padding: 22px 0px 22px 0px;
}
#top_sld .sp-thumbnails {
	margin: 0px auto 0px auto;
}
#top_sld .sp-thumbnail-container {
    margin-left: 10px;
    margin-right: 10px;
	border: 1px solid #C4C4C4;
	transition: color 0.4s, border-color 0.4s, background-color 0.4s, opacity 0.4s !important;
}
#top_sld .sp-thumbnail-container:hover {
	opacity: 0.5;
}
#top_sld .sp-selected-thumbnail:before,
#top_sld .sp-selected-thumbnail:after {
	display: none;
}
#top_sld .sp-selected-thumbnail {
	opacity: 0.5;
}
#top_sld .sp-thumbnail {
	top: inherit;
}*/


@media only screen and (min-width: 768px) {
#top_sld .slick-dots {
	display: none !important;
}
#top_sld.slick-dotted.slick-slider {
    margin-bottom: 0px;
}
}

@media only screen and (max-width: 767px) {
#top_sld.slick-dotted.slick-slider {
    /*margin-bottom: 6vw;*/
	margin-bottom: 0;
}
#top_sld .slick-dots {
	display: none !important;
	bottom: -6vw;			/*dotの位置調整*/
	background-color: #f5f5f5;
}
#top_sld .slick-dots li {
	margin: 0px 1.1vw 0px 1.1vw;
}
#top_sld .slick-dots li button:before {
	color: #c5c5c5;
	opacity: 1;
	font-size: 2.9vw;
}
#top_sld .slick-dots li.slick-active button:before {
	color: #003b80;
	opacity: 1;
}
}

@media print {
#top_sld img {
    max-width: 1000px !important;
}
#top_sld.slick-dotted.slick-slider {
    margin-bottom: 0px !important;
}
#top_sld .slick-dots {
	display: none !important;
}
}

/***************************************************************************
top_bnr
****************************************************************************/

#top_bnr {
	background-color: #f5f5f5;
	padding: 22px 0px 22px 0px;
}
#top_bnr .contents {
	max-width: 1430px;
	display: flex;
	justify-content: space-between;
}
#top_bnr li {
	max-width: 340px;
	width: 24%;
}

@media only screen and (max-width: 767px) {
#top_bnr {
	padding: 6vw 0px 6vw 0px;
}
#top_bnr .contents {
	flex-wrap: wrap;
}
#top_bnr li {
	width: 48.4%;
	margin-top: 3vw;
}
#top_bnr li:nth-child(-n+2) {
	margin-top: 0;
}
}

/***************************************************************************
voice_sld/works_sld
****************************************************************************/

@media only screen and (max-width: 767px) {
#voice_sld .sld_unit .inner,
#works_sld .sld_unit .inner {
	margin: 0px 4vw 0px 4vw !important;
}
}

/***************************************************************************
voice_sld
****************************************************************************/

#voice .sld_wrap {
	margin-bottom: 30px;
}
#voice .sld_wrap .arrow {
	max-width: 1330px;
}

#voice_sld .inner {
	margin: 0px 8px 0px 8px;
}
#voice_sld .new_icon {
	top: 0;
	right: 0;
}
#voice_sld .thumb {
	/*padding-top: 69.5%;*/
	height: 275px;
}
#voice_sld .over_lay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	font-size: 15px;
	line-height: 1.4;
	padding: 18px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#voice_sld .over_lay .txt span {
	font-size: 13px;
	line-height: 1;
	display: block;
	margin-bottom: 7px;
}
#voice_sld .over_lay .txt .trim {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	width: 18em;
	display: block;
}
#voice_sld .over_lay .num {
	font-size: 16px;
	line-height: 1.2;
}
#voice_sld .over_lay .num span {
	font-size: 1.875em;
}

@media only screen and (max-width: 1385px) {
#voice_sld.contents {
	max-width: 90% !important;
}
#voice .sld_wrap .arrow {
	max-width: 97%;
}
#voice .slick-arrow {
    width: 2.0vw;
    height: 4.1vw;
}
#voice_sld .inner {
	margin: 0px 0.6vw 0px 0.6vw;
}
#voice_sld .thumb {
	height: 19.9vw;
}
#voice_sld .over_lay {
	font-size: 1.1vw;
	padding: 1.3vw;
}
#voice_sld .over_lay .txt span {
	font-size: 0.9vw;
	margin-bottom: 0.5vw;
}
#voice_sld .over_lay .num {
	font-size: 1.2vw;
}
}

@media only screen and (max-width: 1050px) {
#voice_sld .thumb {
	height: inherit;
	padding-top: 69.5%;
}
#voice_sld .over_lay {
	font-size: 1.6vw;
	padding: 1.7vw;
}
#voice_sld .over_lay .txt span {
	font-size: 1.4vw;
	margin-bottom: 0.7vw;
}
#voice_sld .over_lay .num {
	font-size: 1.6vw;
}
}

@media only screen and (max-width: 767px) {
#voice .sld_wrap {
	margin-bottom: 8.1vw;
}
#voice_sld.contents {
	max-width: 100% !important;
}
#voice .sld_wrap .arrow {
	max-width: 83% !important;
}
#voice_sld .over_lay {
	font-size: 2.9vw;
	padding: 3.5vw 3.9vw 3.5vw 3.9vw;
}
#voice_sld .over_lay .txt span {
	font-size: 2.6vw;
	margin-bottom: 1vw;
}
#voice_sld .over_lay .txt .trim {
	width: 17em;
}
#voice_sld .over_lay .num {
	font-size: 2.9vw;
}
#voice_sld .over_lay .num span {
	font-size: 1.6em;
}
}

@media only screen and (max-width: 480px) {
#voice_sld .over_lay .txt span {
	font-size: 3.4vw;
}
}

#voice > .bg_gray {
	padding-bottom: 140px;
}
#voice .more_contents {
	display: flex;
	justify-content: space-between;
	margin-top: 140px;
}
#voice .more_contents .link_box {
	max-width: 600px;
	width: 48.5%;
}
#voice .more_contents .thumb {
	/*height: 330px;*/
}
#voice .more_contents .exp {
	/*background-color: rgba(255,255,255,0.8);
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;*/
	padding-top: 35px;
	font-size: 16px;
	line-height: 1.4;
}
#voice .more_contents .exp span {
	font-size: 28px;
	display: block;
	line-height: 1;
	margin-bottom: 0.35em;
}

@media only screen and (max-width: 1300px) {
#voice > .bg_gray {
	padding-bottom: 10.8vw;
}
#voice .more_contents {
	margin-top: 10.8vw;
}
#voice .more_contents .link_box {
	width: 49%;
}
#voice .more_contents .exp {
	padding-top: 3vw;
}
#voice .more_contents .exp span {
	font-size: 2.2vw;
}
}

@media only screen and (max-width: 767px) {
#voice > .bg_gray {
	padding-bottom: 18vw;
}
#voice .more_contents {
	margin-top: 18vw;
	display: block;
}
#voice .more_contents .link_box {
	width: 100%;
	max-width: none;
	margin-top: 9.9vw;
}
#voice .more_contents .exp {
	padding-top: 5vw;
	font-size: 3.1vw;
}
#voice .more_contents .exp span {
	font-size: 3.9vw;
	font-weight: 500;
}
}

@media only screen and (max-width: 480px) {
#voice .more_contents .exp {
	font-size: 3.5vw;
}
#voice .more_contents .exp span {
	font-size: 5vw;
}
}

/***************************************************************************
works_sld
****************************************************************************/

#works .sld_wrap {
	margin-bottom: 55px;
}
#works .sld_wrap .arrow {
	max-width: 1200px;
}
#works_sld {
	max-width: 1170px;
	margin: 0px auto 0px auto;
}
#works_sld .slick-list {
	overflow: visible;
}
#works_sld .sld_unit .inner {
  margin: 0px 50px 0px 50px;
}
#works_sld .thumb {
	padding-top: 51.5%;
}
#works_sld .over_lay {
	position: absolute;
	display: flex;
	align-items: center;
	bottom: -1px;
	left: -1px;
	background-color: #FFFFFF;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	padding: 15px 30px 0px 0px;
	letter-spacing: 0.1em;
}
#works_sld .over_lay .new_icon {
	position: relative;
}
#works_sld .over_lay .name {
	margin-left: 15px;
}

@media only screen and (max-width: 1288px) {
#works .sld_wrap {
	margin-bottom: 4.3vw;
}
#works .sld_wrap .arrow {
	max-width: 86vw;
}
#works_sld {
	max-width: 83.1vw;
}
#works_sld .sld_unit .inner {
  margin: 0px 3.9vw 0px 3.9vw;
}
#works_sld .slick-arrow {
    width: 2.1vw;
    height: 4.2vw;
}
}

@media only screen and (max-width: 767px) {
#works.section {
	margin-bottom: 14vw;
}
#works .sld_wrap {
	margin-bottom: 7.0vw;
}
#works_sld {
	max-width: 100% !important;
}
#works_sld .over_lay {
	font-size: 2.3vw;
	padding: 1em 2em 0px 0px;
}
#works_sld .over_lay .name {
	margin-left: 2.0vw;
}
}

@media only screen and (max-width: 480px) {
#works_sld .over_lay {
	font-size: 3.3vw;
}
}

/***************************************************************************
youtube
****************************************************************************/

#youtube .section_ttl {
	margin-bottom: 40px;
}
#youtube .section_ttl .ttl h2 {
	line-height: 1.5;
}
#youtube .section_ttl .ttl:after {
	display: none;
}
#youtube .section_ttl .ttl {
	margin-bottom: 0;
}
#youtube .youtube_thumb {
	text-align: center;
}
#youtube .youtube_thumb .thumb {
	margin-bottom: 20px;
}


@media only screen and (max-width: 767px) {
#youtube .section_ttl {
	margin-bottom: 4vw;
}
#youtube .section_ttl .ttl h2 {
    font-size: 5vw;
}
#youtube .youtube_thumb .thumb {
	margin-bottom: 2.0vw;
}
#youtube .youtube_thumb .txt {
	font-size: 3.4vw;
}
}

/***************************************************************************
evidence
****************************************************************************/

#evidence.section {
	margin-bottom: 90px;
}
#evidence .contents {
	max-width: 1090px;
}
#evidence .evidence_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#evidence .evidence_wrap li {
	max-width: 230px;
	width: 21.5%;
}
#evidence .evidence_wrap .attention {
	margin-top: 30px;
	width: 100% !important;
	max-width: inherit;
	font-size: 14px;
	line-height: 1.7;
}

@media print, screen and (max-width: 1300px) {
#evidence.section {
	margin-bottom: 6.9vw;
}
}

@media only screen and (max-width: 767px) {
#evidence.section {
	margin-bottom: 11vw;
}
#evidence .evidence_wrap {
	justify-content: center;
}
#evidence .evidence_wrap li {
	width: 47%;
	margin-top: 7vw;
	margin-left: 3.5vw;
}
#evidence .evidence_wrap li:nth-child(-n+2) {
	margin-top: 0vw;
}
#evidence .evidence_wrap li:nth-child(2n+1) {
	margin-left: 0vw;
}
}

/***************************************************************************
about
****************************************************************************/

#about {
	padding: 140px 0px 140px 0px;
}
#about .contents {
	max-width: 1720px;
    width: 100%;
}
#about .link_box_wrap {
	display: flex;
}
#about .link_box {
	flex: 1;
	margin-left: 3px;
}
#about .link_box:nth-child(1) {
	margin-left: 0px;
}
#about .link_box .thumb {
	padding-top: 66%;
}
#about .link_box:nth-child(1) .thumb {
	background-image: url(/-/wp-content/themes/tochi/img/index/about_img_01.jpg);
}
#about .link_box:nth-child(2) .thumb {
	background-image: url(/-/wp-content/themes/tochi/img/index/about_img_02.jpg);
}
#about .link_box:nth-child(3) .thumb {
	background-image: url(/-/wp-content/themes/tochi/img/index/about_img_03.jpg);
}
#about .link_box ul {
	width: 78%;
	max-width: 440px;
	margin-top: -80px;
	left: -1px;
	background-color: #FFFFFF;
	display: flex;
	align-items: center;
	padding: 36px 30px 36px 30px;
}
#about .link_box .icon {
	margin-right: 20px;
}
#about .link_box .ttl {
	font-size: 26px;
	line-height: 1.3;
}
#about .link_box .arrow {
	width: 36px;
	height: 36px;
	border-radius: 36px;
	border: 1px solid #444444; 
	margin-left: auto;
}
#about .link_box .arrow:before {
    content: " ";
    display: block;
    width: 10px;
    height: 10px;
    border-left: 1px solid #000000;
    border-bottom: 1px solid #000000;
    position: absolute;
    top: 50%;
	left: 42.5%;
    transform: translate(-50%, -50%) rotate(-135deg);
}

@media only screen and (max-width: 1530px) {
#about .link_box ul {
	margin-top: -5.2vw;
	padding: 2vw 2vw 2vw 2vw;
	letter-spacing: 0;
}
#about .link_box .icon {
	width: 2.5vw;
	margin-right: 1.3vw;
}
#about .link_box .ttl {
	font-size: 1.7vw;
}
#about .link_box .arrow {
	width: 2.4vw;
	height: 2.4vw;
	border-radius: 2.4vw;
}
#about .link_box .arrow:before {
    width: 0.7vw;
    height: 0.7vw;
}
}

@media print, screen and (max-width: 1350px) {
#about .link_box .thumb {
	padding-top: 75%;
}
#about .link_box ul {
	max-width: inherit;
	width: 95%;
}
#about .link_box .icon {
	width: 2.6vw;
	margin-right: 1.3vw;
}
#about .link_box .ttl {
	font-size: 1.9vw;
}
#about .link_box .arrow {
	width: 2.4vw;
	height: 2.4vw;
	border-radius: 2.4vw;
}
#about .link_box .arrow:before {
    width: 0.7vw;
    height: 0.7vw;
}
}

@media print, screen and (max-width: 1300px) {
#about {
	padding: 10.8vw 0px 10.8vw 0px;
}
}

@media print, screen and (max-width: 1170px) {
#about .link_box ul {
	width: 98%;
}
#about .link_box .icon {
	width: 3vw;
}
#about .link_box .ttl {
	font-size: 2.2vw;
}
#about .link_box .arrow {
	width: 2.8vw;
	height: 2.8vw;
	border-radius: 2.8vw;
}
#about .link_box .arrow:before {
    width: 0.8vw;
    height: 0.8vw;
}
}

@media only screen and (max-width: 767px) {
#about {
	padding: 18vw 0px 18vw 0px;
}
#about .link_box_wrap {
    display: block;
}
#about .link_box {
    margin-top: 6.5vw;
}
#about .link_box:nth-child(1) {
    margin-top: 0;
}
#about .link_box .thumb {
	padding-top: 64.6%;
}
#about .link_box ul {
	width: 88%;
	margin-top: -6.5vw;
	padding: 3.3vw 5.2vw 3.3vw 5.2vw;
}
#about .link_box .icon {
	width: 7.5vw;
	margin-right: 3vw;
}
#about .link_box .ttl {
	font-size: 4.7vw;
	font-weight: 500;
	top: -0.5vw;
	letter-spacing: 0.05em;
}
#about .link_box .arrow {
	width: 5.8vw;
	height: 5.8vw;
	border-radius: 5.8vw;
}
#about .link_box .arrow:before {
    width: 1.7vw;
    height: 1.7vw;
}
}

@media only screen and (max-width: 480px) {
#about .link_box_wrap.contents {
    max-width: 92% !important
}
#about .link_box .icon {
	width: 8.5vw;
}
#about .link_box .ttl {
	font-size: 5.5vw;
}
}

/***************************************************************************
seminar
****************************************************************************/

#seminar {
	background-color: #F6F6F6;
	padding: 80px 0px 80px 0px;
}
#seminar .box_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#seminar .box_wrap .category_wrap {
	width: 48.5%;
	max-width: 600px;
}
#seminar .box_wrap .box {
	background-color: #FFFFFF;
	padding: 25px 60px 30px 0px;
	display: flex;
	margin-top: 35px;
}
#seminar .box_wrap .box:nth-child(-n+1) {
	margin-top: 0px;
}
#seminar .box .category {
	margin-right: 35px;
}
#seminar .box .exp {
	flex: 1;
}
#seminar .exp .ttl {
	line-height: 1.4;
	display: flex;
	align-items: center;
	padding-bottom: 15px;
	border-bottom: 1px solid #808080;
	margin-bottom: 20px;
	min-height: 66px;
}
#seminar .exp li {
	display: flex;
	font-size: 15px;
	margin-top: 4px;
	line-height: 1.5;
}
#seminar .exp li:nth-child(1) {
	margin-top: 0px;
}
#seminar .exp .subject {
	padding-right: 1em;
	margin-right: 0.8em;
	white-space: nowrap;
}
#seminar .exp .subject:after {
	content: "";
	display: block;
	width: 1px;
	height: 1em;
	background-color: #000000;
	position: absolute;
	right: 0;
	top: 0.3em;
}
#seminar .btn {
	margin-top: 45px;
}

@media print, screen and (max-width: 1300px) {
#seminar {
	padding: 6.2vw 0px 6.2vw 0px;
}
}

@media print, screen and (max-width: 1050px) {
#seminar .box_wrap .box {
	padding: 2.4vw 5.7vw 2.9vw 0px;
}
#seminar .box_wrap .category_wrap {
	width: 100%;
	max-width: inherit;
}
#seminar .box_wrap .category_wrap:nth-child(1) {
	margin-bottom: 8.6vw;
}
#seminar .box_wrap .box:nth-child(1) {
	margin-top: 0px;
}
#seminar .btn {
	margin-top: 4.3vw;
}
}

@media only screen and (max-width: 767px) {
#seminar {
	padding: 14vw 0px 14vw 0px;
}
#seminar .box_wrap .box {
	padding: 5.0vw 7.2vw 4.6vw 0px;
	margin-top: 4.6vw;
}
#seminar .box .category {
	width: 11.3vw;
	margin-right: 5.2vw;
}

#seminar .exp .ttl {
	padding-bottom: 3vw;
	margin-bottom: 3vw;
	font-weight: 500;
}
#seminar .exp li {
	font-size: 3.1vw;
	margin-top: 1.2vw;
}
#seminar .exp .subject:after {
	top: 0.4em;
}
#seminar .btn {
	margin-top: 5.2vw;
}
}

@media only screen and (max-width: 480px) {
#seminar .exp li {
	font-size: 3.5vw;
}
}

/***************************************************************************
footer_link
****************************************************************************/

#footer_link {
	padding: 85px 0px 85px 0px;
}
#footer_link ul {
	display: flex;
	justify-content: space-between;
}
#footer_link ul:nth-child(1) li {
	width: 48.5%;
	max-width: 600px;
}
#footer_link ul:nth-child(2) {
	margin-top: 50px;
}
#footer_link ul:nth-child(2) .btn {
	width: 32.5%;
	max-width: 400px;
	display: block;
    background-color: #F6F6F6;
	margin: 0px;
}
#footer_link ul:nth-child(2) .btn a {
	font-size: 20px;
	padding: 15px 1em 15px 1em;
	flex-direction: column;
	align-items: flex-start;
	letter-spacing: 0em;
    border: 1px solid #B0B0B0;
}
#footer_link ul:nth-child(2) .btn:hover a {
	background-color: #003B80;
}
#footer_link ul:nth-child(2) .btn a .txt_s {
	margin-bottom: 0.1em;
}
#footer_link ul:nth-child(2) .btn a:after {
	border-right-color: #FFFFFF;
	border-bottom-color: #FFFFFF;
}
#footer_link ul:nth-child(2) .btn a:before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	right: -1px;
	width: 80px;
	height: 100%;
    background-color: #003B80;
}

@media print, screen and (max-width: 1300px) {
#footer_link {
	padding: 6.5vw 0px 6.5vw 0px;
}
#footer_link ul:nth-child(2) .btn a {
	font-size: 1.5vw;
	padding: 1.2vw 1em 1.2vw 1em;
}
#footer_link ul:nth-child(2) {
	margin-top: 3.8vw;
}
#footer_link ul:nth-child(2) .btn a:before {
	width: 6.2vw;
}
#footer_link ul:nth-child(2) .btn:after {
	width: 2.3vw;
	height: 0.6vw;
}
}

@media print, screen and (max-width: 900px) {
#footer_link ul {
	flex-wrap: wrap;
}
#footer_link ul:nth-child(1) li,
#footer_link ul:nth-child(2) .btn {
	width: 49%;
	max-width: inherit;
}
#footer_link ul:nth-child(2) .btn {
	margin-top: 2vw;
}
#footer_link ul:nth-child(2) .btn:nth-child(-n+2) {
	margin-top: 0px;
}
#footer_link ul:nth-child(2) .btn a {
	font-size: 16px;
	padding: 12px 1em 12px 1em;
}
#footer_link ul:nth-child(2) .btn a:before {
	width: 64px;
}
}

@media only screen and (max-width: 767px) {
#footer_link {
	padding: 14vw 0px 14vw 0px;
}
#footer_link ul {
	display: block;
}
#footer_link ul:nth-child(1) li {
	width: 100%;
	max-width: none;
	margin-top: 4vw;
}
#footer_link ul:nth-child(1) li:nth-child(1) {
	margin-top: 0px;
}
#footer_link ul:nth-child(2) {
	margin-top: 12.0vw;
}
#footer_link ul:nth-child(2) .btn {
	width: 100%;
	max-width: none;
	margin-top: 3.3vw !important;
}
#footer_link ul:nth-child(2) .btn:nth-child(1) {
	margin-top: 0px !important;
}
#footer_link ul:nth-child(2) .btn a {
	font-size: 3.9vw;
	padding: 3.9vw 1em 3.9vw 1em;
}
#footer_link ul:nth-child(2) .btn a .txt_s {
	font-size: 3.0vw;
}
#footer_link ul:nth-child(2) .btn a:before {
	width: 16.8vw;
}
#footer_link ul:nth-child(2) .btn a:after {
	width: 6.6vw;
    height: 1.4vw;
	right: 4.8vw;
}
}

@media only screen and (max-width: 480px) {
#footer_link ul:nth-child(2) .btn a {
	font-size: 4.4vw;
}
#footer_link ul:nth-child(2) .btn a .txt_s {
	font-size: 3.5vw;
	margin-bottom: 0.2em;
}
}

.start_bana{
    width: 800px;
    margin: 30px auto 0;
}
.start_bana a{
    display: block;
}
.sponly{
    display: none;
}
@media only screen and (max-width: 767px) {
    .sponly{
    display: block;
}
    .pconly{
    display: none;
}
    .start_bana{
    width: 100%;
    margin: 30px 0 0;
}
}