@charset "utf-8";
/*
Theme Name: spicesradio
Description: spicesradio is a Tokinais's original WordPress theme.
Author: Tokinais
Author https://tokinais.com
Version: 1.1
*/


/*--------------------------------------------------------------
1.0 - basic
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	list-style: none;
}
html {
	font-size: 62.5%;
	overflow-y: scroll;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}

body,
input,
select,
textarea {
	color: #333;
	background: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 28px;
	line-height: 2.8rem;
	letter-spacing: 0.08em;
}

body {
	background: #fff;
	position: relative;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	font-family: 'Open Sans', 'Noto Sans JP', sans-serif;
	color: #242424;
}
h1 {
	font-size: 2.7em;
}
h2 {
	font-size: 2.1em;
}
h3 {
	font-size: 1.8em
}
h4 {
	font-size: 1.4em;
}

a {
	text-decoration:none;
		color: #20B2AA;
		transition: 0.5s;
}
a:hover {
	color: #62C9C3;
}
	
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
	
/*--------------------------------------------------------------
2.0 - PC
--------------------------------------------------------------*/
	#wrapper {
		width: 100%;
		margin: 0 auto;
	}
	
/* Header */
	#site-header {
		position: fixed;
		width: 100%;
		aspect-ratio: 768/51;
		z-index: 10;
		background-color: rgba(255, 255, 255, 0.9);
		box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
		padding: 0;
	}
	.hd_container {
		width: 100%;
		max-width: 85%;
		margin: 0 auto;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
		transition: 0.5s;
	}
	.logo {
		width: 14%;
		padding: 0.5% 0;
		transition: 0.5s;
	}
	.logo a {
		line-height: normal;
		transition: 0.5s;
	}
	.logo a:hover {
		opacity: .8;
	}
	.logo img {
		width: 100%;
		height: auto;
		transition: 0.5s;
		display: block;
	}
	/* Main manu */
	.nav-holder {
		width: 78.6%;
		margin: 0;
		padding: 0;
		text-align: right;
	}
	.hd-mainmenu {
		margin: 0;
		padding: 0;
		line-height: 1.0;
	}
	.hd-mainmenu li {
		position: relative;
		padding: 0 2%;
		text-align: center;
		display: inline-block;
	}
	.hd-mainmenu li a {
		display: block;
		color: #333;
		font-size: 1.1vw;
		font-weight: 500;
		text-align: center;
		transition: 0.5s;
	}
	.hd-mainmenu li a:hover {
		opacity: .7;
	}
	.hd-mainmenu li:last-child {
		padding: 0 0 0 2%;
	}
	.hd-mainmenu .have_child {
		padding: 0 3.8% 0 2%;
	}
	.hd-mainmenu li.menu-item-has-children > a::after {
		font-family: 'FontAwesome';
		content: '\f078';
		font-size: 1.0vw;
		padding: 0 0 0 3%;
		position: absolute;
		-webkit-font-smoothing: antialiased;
		-webkit-text-stroke: 0.4px #fff;
	}
	
	.hd-mainmenu li:hover ul.drop_child {
		visibility: visible;
		opacity: 1;
		z-index: 9999;
		transition: 0.5s;
	}
	.drop_child {
		list-style: none;
		visibility: hidden;
		opacity: 0;
		z-index: 1;
		display: block;
		position: absolute;
		top: 100px;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		padding: 4% 0;
		background-color: rgba(238, 238, 238, 0.9);
	}
	.drop_child li {
		display: block;
		padding: 4% 5%;
	}
	.drop_child li:last-child {
		padding: 4% 5%;
	}
	.drop_child li a {
		text-align: center;
		font-size: 1.0vw;
		line-height: 1.6;
	}
	
	.section {
	}
	.section-a {
		background: #000;
	}
	.section-b {
		background: #fff;
	}
	
	.hd_sns {
		width: 3%;
		margin: 0 0 0 4.4%;
		padding: 0;
	}
	.hd_sns a {
		transition: 0.5s;
	}
	.hd_sns a:hover {
		opacity: 0.7;
	}
	.hd_sns img {
		width: 100%;
		display: block;
	}
	
	/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
	#site-header.scroll-nav {
		aspect-ratio: 768/41;
		background-color: rgba(255, 255, 255, 0.95);
		box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
	}
	#site-header.scroll-nav .logo {
		width: 12%;
		margin-right: 2%;
		transition: 0.5s;
	}
	
	/* SP manu */
	.sp_menu {
	display: none;
	}
	
	#container {
		width: 100%;
		padding-top: 6.67%;
	}
	
/*----- パンくず -----*/
	.breadcrumb {
		width: 100%;
		max-width: 85%;
		margin: 0 auto;
		padding: 3% 0 0;
		list-style: none;
	}
	.breadcrumb li {
		display: inline;
		font-size: 1.0vw;
		line-height: 1.6;
	}
	.breadcrumb li a {
		color: #666;
	}
	.breadcrumb li a:hover {
		color: #333;
	}
	.breadcrumb li + li:before {
		font-family: 'FontAwesome';
		content: '\f105';
		margin: 0;
		padding: 0 0.7%;
		color: #999;
		-webkit-font-smoothing: antialiased;
		-webkit-text-stroke: 0.4px #fff;
	}
	.breadcrumb li:first-child::before {
		font-family: 'FontAwesome';
		content: '\f015';
		margin: 0;
		padding: 0 0.5% 0 0;
		color: #999;
		-webkit-font-smoothing: antialiased;
		-webkit-text-stroke: 0.4px #fff;
	}
	
/* Post */
	.hd_archive {
		width: 100%;
		margin: 0 auto;
		padding: 3% 0;
		background-color: #fff7df;
	}
	.hd_archive h1 {
		width: 100%;
		font-size: 1.6vw;
		text-align: center;
	}
	.primary {
		width: 100%;
		max-width: 85%;
		margin: 0 auto;
		padding: 3% 0 0 0;
		display: flex;
	}
	.main {
		width: 77%;
		margin: 0 3% 10% 0;
	}
	.roop {
		width: 100%;
		margin: 0 0 5%;
		padding: 0 0 5%;
		border-bottom: dotted 1px #ccc;
		line-height: normal;
	}
	.roop h2 {
		margin: 0;
		padding: 0 0 0.5%;
		font-size: 1.4vw;
		font-weight: 500;
		letter-spacing: 0.1em;
	}
	.roop_meta {
		width: 100%;
		margin: 0;
		padding: 0 0 1.5% 0;
		font-size: 0.95vw;
	}
	.meta_date {
		margin-right: 1.5%;
	}
	.meta_date::before {
		font-family: 'FontAwesome';
		content: '\f073';
		font-size: 1.0vw;
		margin-right: 0.8%;
		color: #999;
	}
	.meta_author {
		margin-right: 1.5%;
	}
	.meta_author::before {
		font-family: 'FontAwesome';
		content: '\f007';
		font-size: 1.0vw;
		margin-right: 0.8%;
		color: #999;
	}
	.meta_cat {
		margin-right: 1.5%;
	}
	.meta_cat::before {
		font-family: 'FontAwesome';
		content: '\f03a';
		font-size: 1.0vw;
		margin-right: 0.8%;
		color: #999;
	}
	.roop_thum {
		width: 40%;
		margin: 0;
		padding: 0;
		display: inline-block;
	}
	.roop_thum img {
		width: 100%;
		height: auto;
		vertical-align: top;
	}
	.roop_thum a img {
		transition: 0.5s;
	}
	.roop_thum a:hover img {
		opacity: .6;
	}
	.roop_excerpt {
		width: 56.3%;
		margin: 0;
		padding: 0 0 0 3%;
		display: inline-block;
		vertical-align: top;
		font-size: 1.0vw;
		line-height: 2.0;
	}
	.roop_excerpt a {
		display: block;
		text-align: right;
		padding-top: 2%;
	}
	/* Pagination */
	.pagination {
		margin: 4% 0 0 0;
		line-height: normal;
	}
	.nav-links {
		display: flex;
		justify-content: center;
	}
	.pagination .page-numbers {
		display: inline-block;
		margin-right: 1.2%;
		padding: 0.6% 1.2% 0.8% 1.2%;
		color: #333;
		border: solid 1px #eee;
		border-radius: 3px;
		background: #fff;
		font-size: 0.9vw;
		line-height: 1.2em;
	}
	.pagination .page-numbers:hover {
		background: #eee;
	}
	.pagination .current {
		padding: 0.6% 1.2% 0.8% 1.2%;
		background: #999;
		color: #fff;
	}
	.pagination .current:hover {
		background: #999;
	}
	.pagination .prev,
	.pagination .next {
		background: transparent;
		color: #111;
	}
	.pagination .dots {
		background: transparent;
		border-style: none;
	}
	.pagination .dots:hover {
		background: #fff;
	}
	/* side bar */
	.side {
		width: 23%;
		margin: 0 0 10% 3%;
		line-height: normal;
	}
	.side .widget {
		margin: 0 0 15%;
	}
	.side .widget h2 {
		padding: 0;
		font-size: 1.1vw;
		font-weight: 500;
	}
	.side .widget ul li {
		padding: 3% 0;
		font-size: 0.9vw;
		border-bottom: dotted 1px #ccc;
	}
	/* Single */
	.single_ttl {
		margin: 0;
		padding: 0 0 1%;
		font-size: 1.4vw;
		font-weight: 500;
		line-height: 1.6;
	}
	.single_meta {
		width: 100%;
		margin: 0 0 2%;
		padding: 0 0 1.5% 0;
		font-size: 0.95vw;
		border-bottom: dotted 1px #ccc;
		line-height: 1.6;
	}
	.single_cntnt p {
		margin: 0;
		padding: 0 0 1.5%;
		font-size: 1.0vw;
		line-height: 2.0;
	}
	.single_cntnt p img {
		display: block;
	}
	.single_pagination {
		margin-top: 10%;
		font-size: 0.9vw;
		line-height: 1.4;
	}
	.nav-previous {
		margin: 0;
		padding-right: 3%;
		border-right: solid 1px #aaa;
		text-align: right;
	}
	.nav-next {
		margin: 0;
		padding-left: 3%;
		text-align: left;
	}
	
	
/* Footer */
	#footer {
		width: 100%;
		padding: 2% 0;
		color: #333;
		background: #fcd13e;
		position: relative;
	}
	#footer-widget {
		width: 100%;
		max-width: 88%;
		margin: 0 auto;
		padding: 0;
		display: flex;
		color: #fff;
		font-size: 0.9vw;
		line-height: normal;
	}
	#footer-widget li {
		list-style: none;
		padding: 0 2.8% 0 0;
	}
	#footer-widget li:last-child {
		padding: 0;
	}
	#footer-widget .widget {
		width: 33.33%;
		
	}
	#footer-widget .widget h2 {
		padding-bottom: 2%;
		color: #fff;
		font-size: 1.2vw;
		text-align: center;
	}
	#footer-widget .widget p {
		padding: 0 0 2%;
		font-size: 0.9vw;
		line-height: 1.8;
	}
	.copyright {
		width: 100%;
		margin: 0;
		padding: 0;
		font-size: 0.9vw;
		text-align: center;
	}
	/* Page Top */
	#page_top {
		position: fixed;
		right: 1.5%;
		width: 4.2%;
		cursor: pointer;
	}
	#page_top a {
		background-color: #fcd13e;
		border-radius: 50%;
		width: 100%;
		height: 0;
		padding-top: 100%;
		text-align: center;
		transition: opacity .5s;
		display: block;
		color: #fff;;
		position: relative;
	}
	#page_top p {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		font-size: 0.9vw;
		font-weight: 500;
		line-height: 1.2;
	}
	
/*----- 404 NOT FOUND -----*/
	#notfound {
		width: 100%;
		margin: 0 auto;
		padding: 15% 0;
		text-align: center;
	}
	#notfound h1 {
		font-size: 3.3vw;
		color: #ccc;
		padding: 0 0 2%;
	}
	#notfound p {
		font-size: 1.0vw;
		padding: 0 0 3%;
	}
	
/*----- TOP -----*/
	.anchor {
		display: block;
		padding-top: 5%;
		margin-top: -5%;
	}
	.top_1st {
		width: 100%;
		margin: 0;
		padding: 5% 0;
	}
	.top_h2ttl {
		width: 15%;
		margin: 0 auto;
		padding: 0;
		font-size: 1.8vw;
		font-weight: 600;
		letter-spacing: 0.2em;
		position: relative;
		text-align: center;
		line-height: 1.6;
	}
	.top_h2ttl span {
		display: block;
		font-size: 70%;
		font-weight: 500;
		color: #aaa;
		letter-spacing: 0.08em;
	}
	.top_h2ttl:before,
	.top_h2ttl:after {
		position: absolute;
		content: '⚫︎';
		font-size: 1.2vw;
		color: #fcd13e;
		top: 50%;
		transform: translateY(-50%);
	}
	.top_h2ttl:before {
		left: 0;
	}
	.top_h2ttl:after {
		right: 0;
	}
	.ov_col {
		width: 70%;
		margin: 1% auto 0;
		padding: 0;
		display: flex;
		flex-wrap: nowrap;
		justify-content: center; 
		align-items: end;
	}
	.ov_detail {
		width: 68%;
		margin: 0;
	}
	.ov_detail h3 {
		margin: 0;
		padding: 0 0 3%;
		font-size: 2.3vw;
		font-family: "Zen Maru Gothic", sans-serif;
		font-weight: 900;
		color: #23b6bc;
		line-height: 1.6;
		letter-spacing: 0.08em;
		font-feature-settings: "palt";
		-webkit-font-feature-settings: "palt";
	}
	.ov_detail .ov_copy {
		margin: 0;
		padding: 0 0 5%;
		font-size: 1.9vw;
		font-weight: 900;
		font-family: "Zen Maru Gothic", sans-serif;
		color: #e75297;
		line-height: 1.6;
		letter-spacing: 0.08em;
		font-feature-settings: "palt";
		-webkit-font-feature-settings: "palt";
	}
	.ov_detail .ov_copy span {
		font-size: 80%;
		font-family: "Zen Maru Gothic", sans-serif;
	}
	.ov_detail p {
		margin: 0;
		padding: 0 0 1%;
		font-size: 1.05vw;
		font-weight: 500;
		line-height: 2.0;
	}
	.ov_detail .last {
		padding: 0;
	}
	.ov_program {
		width: 28%;
		margin: 0 0 0 4%;
	}
	.ov_program img {
		width: 80%;
		margin: 0 auto;
		display: block;
	}
	.ov_program .sp_ovp {
		display: none;
	}
	.ov_program h3 {
	margin: 0 0 3%;
	padding: 0 0 3%;
	font-size: 1.0vw;
	font-weight: 500;
	border-bottom: dotted 1px #999;
	}
	.ov_program h3:before {
	font-family: 'FontAwesome';
	font-size: 120%;
	content: '\f8d7';
	margin: 0 4% 0 0;
	color: #23b6bc;
	}
	.ov_program table {
		margin: 8% 0 0 0;
		padding: 5% 3%;
		background: #fff7df;
		border-radius: 8%;
	}
	.ov_program table td {
		font-size: 0.88vw;
		font-weight: 500;
		padding: 0 2%;
		vertical-align: middle;
		line-height: 1.8;
	}
	.ov_program table td span {
		display: block;
		font-size: 88%;
	}
	.ov_program table .td_fmk {
		width: 24%;
	}
	.ov_program table .td_fmk img {
		width: 100%;
	}
	.ov_program a:hover {
		opacity: .7;
	}
	.top_banner {
		width: 100%;
		margin: 5% auto 0;
		padding: 0;
		text-align: center;
	}
	.top_banner h3 {
		margin: 0;
		padding: 0 0 0.5%;
		font-size: 1.2vw;
		font-weight: 500;
		letter-spacing: 0.1em;
		line-height: 1.8;
	}
	.col_sponsor {
		width: 35%;
		margin: 1.5% auto 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	.col_sponsor .kmall {
		width: 32%;
		margin: 0 12% 0 0;
	}
	.col_sponsor .mgc {
		width: 56%;
		margin: 0;
	}
	.col_sponsor a img {
		width: 100%;
		transition: 0.5s;
	}
	.col_sponsor a:hover img {
		opacity: .7;
	}
	
	.top_2nd {
		width: 100%;
		margin: 0;
		padding: 6% 0;
		background: #23b6bc;
	}
	.per_ttl {
		width: 22%;
		color: #fff;
	}
	.per_ttl span {
		color: #bde9eb;
	}
	.per_col {
		width: 68%;
		margin: 2% auto 0;
		padding: 0;
		display: flex;
		flex-wrap: nowrap;
		justify-content: center; 
		align-items: start;
	}
	.per_box {
		width: 46%;
		margin: 0 2%;
		padding: 0;
		text-align: center;
	}
	.per_box img {
		width: 44%;
		border-radius: 50%;
	}
	.per_box h3 {
		margin: 0;
		padding: 2% 0 3%;
		font-size: 1.6vw;
		font-weight: 700;
		color: #fff;
		line-height: 1.8;
		letter-spacing: 0.08em;
	}
	.per_box h3 span {
		padding: 0;
		font-size: 72%;
		font-weight: 500;
		display: block;
	}
	.per_box p {
		margin: 0;
		padding: 0;
		color: #fff;
		font-size: 1.0vw;
		font-weight: 500;
		line-height: 1.8;
		letter-spacing: 0.08em;
	}
	
	/*----- CONTACT -----*/
	.contact {
		width: 100%;
		max-width: 50%;
		margin: 0 auto;
		padding: 4% 0 8%;
	}
	.contact_ttl {
		width: 38%;
	}
	.contactform {
		width: 100%;
		margin: 5% auto 0;
	}
	.contactform p {
		font-size: 1.0vw;
		text-align: center;
		line-height: 1.8;
	}
	.contactform table {
		width: 100%;
		margin: 4% auto 0;
		letter-spacing: 0.05em;
		border-collapse: collapse;
	}
	.contactform table th {
		width: 30%;
		padding: 2% 0;
		font-weight: normal;
		vertical-align: middle;
		border-bottom: solid 1px #fff;
		background: #f5f5f5;
	}
	.contactform table td {
		padding: 2%;
		vertical-align: middle;
		border-right: solid 1px #f5f5f5;
		border-bottom: solid 1px #f5f5f5;
	}
	.topboder {
		border-top: solid 1px #f5f5f5;
	}
	.contactform table th p {
		line-height: 1.6;
	}
	.contactform table td p {
		text-align: left;
		line-height: 1.5;
	}
	.attention {
		padding-left: 3%;
		color: #cc0000;
		font-size: 90%;
	}
	.par {
		padding-left: 0;
	}
	.p_submit {
		padding-top: 6%;
	}
	
	input[type="search"],
	input[type="email"],
	input[type="text"],
	input[type="url"],
	input[type="password"],
	textarea {
		width: 100%;
		background: #f5f5f5;
		border-style: none;
		outline: none;
		padding: 0.3% 2% 0.8%;
		font-size: 1.0vw;
		line-height: 1.8;
		box-sizing: border-box;
	}
	select {
		background: #f5f5f5;
		border-style: none;
		padding: 1.0% 4% 1.5% 2%;
		font-size: 1.0vw;
	}
	input[type="submit"] {
		display: inline-block;
		background: #333;
		color: #fff;
		font-size: 1.1vw;
		font-weight: 500;
		padding: 1% 5% 1.5% !important;
		text-decoration: none;
		position: relative;
		cursor: pointer;
		text-align: center;
		border-radius: 0.6vw;
		border: none;
		transition: 0.5s;
	}
	input[type="submit"]:hover {
		opacity: .8;
	}
	/* Contact Form 7 --------*/
	.wpcf7-not-valid-tip {
		font-size: 0.92vw;
		padding-top: 1%;
		color: #cc0000;
	}
	.wpcf7-spinner {
		display: none;
	}
	.wpcf7-response-output {
		width: 100%;
		margin: 6% auto 0!important;
		padding: 1.0% 2% 1.2%!important;
		text-align: center;
		display: block;
		float: none;
		font-size: 1.0vw;
		border: 1px solid #ccc;
		box-sizing: border-box;
		line-height: 1.8;
	}
	.wpcf7 form .wpcf7-response-output {
		border: 1px solid #999;
	}
	.wpcf7 form.sent .wpcf7-response-output {
		border-color: #333;
	}
	.wpcf7 form.spam .wpcf7-response-output {
		border-color: #f56e28; /* Orange */
	}
	.wpcf7 form.failed .wpcf7-response-output,
	.wpcf7 form.aborted .wpcf7-response-output,
	.wpcf7 form.invalid .wpcf7-response-output,
	.wpcf7 form.unaccepted .wpcf7-response-output,
	.wpcf7 form.payment-required .wpcf7-response-output {
		border-color: #cc0000;
	}
	
	
	
	
	
/*--------------------------------------------------------------
3.0 - Responsive
--------------------------------------------------------------*/
	@media screen and (max-width: 1366px) {
	
	}
	
	
	@media screen and (max-width: 1280px) {
		/* Header */
		.logo {
			width: 18%;
		}
		/* Main manu */
		.nav-holder {
			width: 74%;
		}
		.hd-mainmenu li a {
			font-size: 1.3vw;
		}
		.hd-mainmenu li.menu-item-has-children > a::after {
			font-size: 1.1vw;
		}
		.hd_sns {
			width: 4%;
			margin: 0 0 0 4%;
		}
		/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
		#site-header.scroll-nav {
			aspect-ratio: 1024/77;
			background-color: rgba(255, 255, 255, 0.95);
			box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
		}
		#site-header.scroll-nav .logo {
			width: 16%;
			margin-right: 2%;
			transition: 0.5s;
		}
		#site-header.scroll-nav .hd-mainmenu li a {
			font-size: 1.3vw;
		}
		#site-header.scroll-nav .hd-mainmenu li.menu-item-has-children > a::after {
			font-size: 1.1vw;
		}
		
		#container {
			padding-top: 8.47%;
		}
		
		
		
	/*----- パンくず -----*/
	.breadcrumb li {
		font-size: 1.2vw;
	}
	
	/* Post */
	.hd_archive h1 {
		font-size: 1.8vw;
	}
	.roop h2 {
		font-size: 1.6vw;
	}
	.roop_meta {
		font-size: 1.15vw;
	}
	.meta_date::before {
		font-size: 1.2vw;
	}
	.meta_author::before {
		font-size: 1.2vw;
	}
	.meta_cat::before {
		font-size: 1.2vw;
	}
	.roop_excerpt {
		width: 56.1%;
		font-size: 1.2vw;
	}
	/* Pagination */
	.pagination .page-numbers {
		font-size: 1.1vw;
	}
	/* side bar */
	.side .widget h2 {
		font-size: 1.3vw;
	}
	.side .widget ul li {
		font-size: 1.1vw;
	}
	/* Single */
	.single_ttl {
		font-size: 1.6vw;
	}
	.single_meta {
		font-size: 1.15vw;
	}
	.single_cntnt p {
		font-size: 1.15vw;
	}
	.single_pagination {
		font-size: 1.1vw;
	}
	
	/* Footer */
	#footer-widget {
		font-size: 1.1vw;
	}
	#footer-widget .widget h2 {
		font-size: 1.4vw;
	}
	#footer-widget .widget p {
		font-size: 1.1vw;
	}
	.copyright {
		font-size: 1.2vw;
	}
	/* Page Top */
	#page_top  {
		width: 4.8%;
	}
	#page_top p {
		font-size: 1.1vw;
		}
		
		/*----- TOP -----*/
		.top_h2ttl {
			width: 17%;
			font-size: 2.1vw;
		}
		.top_h2ttl:before,
		.top_h2ttl:after {
			font-size: 1.5vw;
		}
		.ov_col {
			width: 90%;
		}
		.ov_detail {
			width: 69%;
		}
		.ov_detail h3 {
			font-size: 2.6vw;
			line-height: 1.8;
		}
		.ov_detail .ov_copy {
			font-size: 2.2vw;
			line-height: 1.8;
		}
		.ov_detail p {
			font-size: 1.35vw;
			line-height: 2.0;
		}
		.ov_program {
			width: 28%;
			margin: 0 0 0 3%;
		}
		.ov_program img {
			width: 72%;
		}
		.ov_program h3 {
			font-size: 1.3vw;
		}
		.ov_program table td {
			font-size: 1.15vw;
		}
		.top_banner h3 {
			font-size: 1.4vw;
		}
		.col_sponsor {
			width: 45%;
		}
		
		.per_ttl {
			width: 25%;
		}
		.per_col {
			width: 82%;
		}
		.per_box h3 {
			font-size: 1.9vw;
		}
		.per_box p {
			font-size: 1.3vw;
		}
		
		/*----- CONTACT -----*/
		.contact {
			max-width: 68%;
		}
		.contact_ttl {
			width: 33%;
		}
		.contactform p {
			font-size: 1.2vw;
		}
		input[type="search"],
		input[type="email"],
		input[type="text"],
		input[type="url"],
		input[type="password"],
		textarea {
			font-size: 1.2vw;
		}
		select {
			font-size: 1.2vw;
		}
		input[type="submit"] {
			font-size: 1.3vw;
		}
		/* Contact Form 7 --------*/
		.wpcf7-not-valid-tip {
			font-size: 1.12vw;
		}
		.wpcf7-response-output {
			font-size: 1.2vw;
		}
		
		
		
		
	}
	
	/* tablet */
	@media screen and (max-width: 1024px) {
		/* Header */
		#site-header {
			aspect-ratio: 192/17;
		}
		.hd_container {
			max-width: 90%;
		}
		.logo {
			width: 22%;
		}
		/* Main manu */
		.nav-holder {
			width: 70.5%;
		}
		.hd-mainmenu li {
			padding: 0 1.6%;
		}
		.hd-mainmenu li a {
			font-size: 1.6vw;
		}
		.hd-mainmenu li:last-child {
			padding: 0 0 0 1.6%;
		}
		.hd-mainmenu li.menu-item-has-children > a::after {
			font-size: 1.4vw;
		}
		.hd_sns {
			width: 4.5%;
			margin: 0 0 0 3%;
		}
		/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
		#site-header.scroll-nav {
			aspect-ratio: 256/25;
		}
		#site-header.scroll-nav .logo {
			width: 20%;
			margin-right: 2%;
			transition: 0.5s;
		}
		/* Main manu */
		#site-header.scroll-nav .hd-mainmenu li a {
			font-size: 1.6vw;
		}
		#site-header.scroll-nav .hd-mainmenu li.menu-item-has-children > a::after {
			font-size: 1.4vw;
		}
		
		#container {
			padding-top: 10.61%;
		}
		
		
	/*----- パンくず -----*/
	.breadcrumb {
		max-width: 90%;
	}
	.breadcrumb li {
		font-size: 1.4vw;
	}
	
	/* Post */
	.hd_archive h1 {
		font-size: 2.0vw;
	}
	.primary {
		max-width: 90%;
	}
	.main {
		margin: 0 2% 10% 0;
	}
	.roop h2 {
		font-size: 1.8vw;
	}
	.roop_meta {
		font-size: 1.35vw;
	}
	.meta_date::before {
		font-size: 1.4vw;
	}
	.meta_author::before {
		font-size: 1.4vw;
	}
	.meta_cat::before {
		font-size: 1.4vw;
	}
	.roop_excerpt {
		width: 55.8%;
			font-size: 1.4vw;
			line-height: 1.6;
	}
	/* Pagination */
	.pagination .page-numbers {
		font-size: 1.3vw;
	}
	/* side bar */
	.side {
		margin: 0 0 10% 2%;
	}
	.side .widget h2 {
		font-size: 1.5vw;
		line-height: 1.4;
	}
	.side .widget ul li {
		font-size: 1.3vw;
	}
	/* Single */
	.single_ttl {
		font-size: 1.8vw;
	}
	.single_meta {
		font-size: 1.35vw;
	}
	.single_cntnt p {
		font-size: 1.35vw;
	}
	.single_pagination {
		font-size: 1.3vw;
	}
	
	/* Footer */
	#footer-widget {
		font-size: 1.3vw;
	}
	#footer-widget .widget h2 {
		font-size: 1.6vw;
	}
	#footer-widget .widget p {
		font-size: 1.3vw;
	}
	.copyright {
		font-size: 1.4vw;
	}
	/* Page Top */
	#page_top {
		width: 5.3%;
		right: 1.5%;
	}
	#page_top p {
		transform: translate(-48%, -50%);
		font-size: 1.3vw;
		line-height: 1.1;
	}
		
		/*----- TOP -----*/
		.top_h2ttl {
			width: 18%;
			font-size: 2.3vw;
		}
		.top_h2ttl:before,
		.top_h2ttl:after {
			font-size: 1.7vw;
		}
		.ov_col {
			width: 90%;
		}
		.ov_detail {
			width: 68%;
		}
		.ov_detail h3 {
			font-size: 2.8vw;
		}
		.ov_detail .ov_copy {
			font-size: 2.4vw;
		}
		.ov_detail p {
			font-size: 1.5vw;
			line-height: 1.8;
		}
		.ov_program {
			width: 29%;
			margin: 0 0 0 3%;
		}
		.ov_program img {
			width: 72%;
		}
		.ov_program h3 {
			font-size: 1.5vw;
		}
		.ov_program table td {
			padding: 0 2% 0 3%;
			font-size: 1.5vw;
		}
		.ov_program table .td_fmk {
			width: 32%;
			padding: 0;
		}
		.ov_program table .td_fmk img {
			width: 100%;
		}
		.top_banner h3 {
			font-size: 1.7vw;
		}
		.col_sponsor {
			width: 55%;
		}
		
		.per_ttl {
			width: 26%;
		}
		.per_col {
			width: 92%;
		}
		.per_box h3 {
			font-size: 2.1vw;
		}
		.per_box p {
			font-size: 1.5vw;
		}
		
		/*----- CONTACT -----*/
		.contact {
			max-width: 75%;
		}
		.contact_ttl {
			width: 33%;
		}
		.contactform p {
			font-size: 1.5vw;
		}
		input[type="search"],
		input[type="email"],
		input[type="text"],
		input[type="url"],
		input[type="password"],
		textarea {
			font-size: 1.5vw;
		}
		select {
			font-size: 1.5vw;
		}
		input[type="submit"] {
			font-size: 1.6vw;
		}
		/* Contact Form 7 --------*/
		.wpcf7-not-valid-tip {
			font-size: 1.42vw;
		}
		.wpcf7-response-output {
			font-size: 1.5vw;
		}
		
		
		
		
		
		
	}
	
	
	
	/* smart phone */
	@media screen and (max-width: 844px) {
	/* Header */
		
	}
	
	@media (min-width: 768px) {
		a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
		}
	}
	
	.pc_view {
		display: block;
	}
	.sp_view {
		display: none;
	}
	
	@media screen and (max-width: 768px) {
	.pc_view {
		display: none;
	}
	.sp_view {
		display: block;
	}
	
		/* Header */
		#site-header {
			height: 72px;
		}
		.hd_container {
			max-width: 90%;
			height: 72px;
		}
		.logo {
			width: 33%;
			max-width: 128px;
			padding: 0;
		}
		/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
		#site-header.scroll-nav {
			height: 72px;
		}
		.hd_container.scroll-nav {
			max-width: 92%;
			height: 72px;
		}
		#site-header.scroll-nav .logo {
			width: 33%;
			transition: 0.5s;
		}
		
		.main-nav {
			display: none;
		}
		
		.hd_sns {
			width: 8%;
			max-width: 42px;
			margin: 0 5% 0 0;
		}
		
		/* SP manu */
	.sp_menu {
	display: inline-block;
	}
	.nav-open {
	width: 28px;
	height: 22px;
	vertical-align: middle;
	}
	.nav-open span, .nav-open span:before, .nav-open span:after {
	position: absolute;
	transition: all 0.4s;
	height: 3px;/*線の太さ*/
	width: 30px;/*長さ*/
	border-radius: 3px;
	background: #666;
	display: block;
	content: '';
	cursor: pointer;
	z-index: 9999;
	}
	.nav-open span:before {
	bottom: -9px;
	}
	.nav-open span:after {
	bottom: -18px;
	}
	.nav-content {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	transition: all 600ms ease-out;
	transform: translateZ(0) translateX(100%);
	}
	.nav-content.open {
	opacity: 1;
	overflow: auto;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9998;
	width: 60%;
	height: 100%;
	background: #23b6bc;/*背景色*/
	transition: all 600ms ease-out;
	transform: translateZ(0) translateX(0%);
	}
	.navi-container {
	width: 77%;
	margin: 60px auto 0;
	}
	.navi-container ul li {
			font-size: 3.0vw;
			font-weight: 500;
	padding: 8% 0;
	border-bottom: 1px dotted #bde9eb;
	}
	.navi-container ul li a {
	display: block;
	color: #fff;
		}
		/*.menu-item-has-childrenは子メニューを持つ親メニューにつくクラス*/
	.navi-container li.menu-item-has-children a {
			position: relative;
		}
		/*メニューが閉じてる時のアイコン設定*/
	.navi-container li.menu-item-has-children > a::after {
	font-family: 'FontAwesome';
	content: '\f078';
	font-weight: 400;
	position: absolute;
	right: 10px;
	}
	/*メニューが開いてる時のアイコン設定*/
	.navi-container li.menu-item-has-children.arrowup > a::after {
	font-family: 'FontAwesome';
	content: '\f077';
	font-weight: 400;
	position: absolute;
	right: 10px;
	}
	.sub-menu li {
	font-size: 0.85em!important;
	padding: 5px 0 5px 15px!important;
	border-bottom: none!important;
	}

	/*三本線を動かす*/
	.nav-open.active span {
	-webkit-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
	background-color: #fff;
	}
	.nav-open.active span:before {
	-webkit-transform: translateY(-9px) rotate(45deg);/*打ち消す*/
	transform: translateY(-9px) rotate(45deg);/*打ち消す*/
	opacity: 0;
	}
	.nav-open.active span:after {
	-webkit-transform: translateY(-18px) rotate(45deg);
	transform: translateY(-18px) rotate(90deg);
	background-color: #fff;
	}
	
	#container {
		padding-top: 72px;
	}
	
	/*----- パンくず -----*/
	.breadcrumb li {
		font-size: 1.8vw;
	}
	
	/* Post */
	.hd_archive h1 {
		font-size: 2.3vw;
	}
	.primary {
		display: block;
	}
	.main {
		width: 100%;
		margin: 0 0 10% 0;
	}
	.roop h2 {
		font-size: 2.1vw;
	}
	.roop_meta {
		font-size: 1.65vw;
	}
	.meta_date::before {
		font-size: 1.7vw;
	}
	.meta_author::before {
		font-size: 1.7vw;
	}
	.meta_cat::before {
		font-size: 1.7vw;
	}
	.roop_excerpt {
			font-size: 1.7vw;
			line-height: 1.8;
	}
	/* Pagination */
	.pagination .page-numbers {
		font-size: 1.6vw;
	}
	/* side bar */
	.side {
		width: 60%;
		margin: 0 auto 10%;
		display: block;
	}
	.side .widget h2 {
		font-size: 1.8vw;
	}
	.side .widget ul li {
		font-size: 1.6vw;
	}
	/* Single */
	.single_ttl {
		font-size: 2.4vw;
	}
	.single_meta {
		font-size: 1.8vw;
	}
	.single_cntnt p {
			font-size: 1.9vw;
			line-height: 1.8;
	}
	.single_pagination {
		font-size: 1.8vw;
	}
	
	/* Footer */
	#footer-widget {
		max-width: 92%;
		font-size: 1.6vw;
	}
	#footer-widget .widget h2 {
		font-size: 1.9vw;
	}
	#footer-widget .widget p {
		font-size: 1.6vw;
	}
	.copyright {
		font-size: 2.0vw;
	}
	/* Page Top */
	#page_top {
		width: 6.5%;
	}
	#page_top p {
		transform: translate(-48%, -54%);
		font-size: 1.6vw;
		}
		
		/*----- TOP -----*/
		.anchor {
			padding-top: 15%;
			margin-top: -15%;
		}
		.top_1st {
			padding: 6% 0;
		}
		.top_h2ttl {
			width: 24%;
			font-size: 2.9vw;
		}
		.top_h2ttl:before,
		.top_h2ttl:after {
			font-size: 2.3vw;
		}
		.ov_col {
			width: 84%;
			margin: 3% auto 0;
			display: block;
		}
		.ov_detail {
			width: 100%;
		}
		.ov_detail h3 {
			font-size: 3.4vw;
			text-align: center;
		}
		.ov_detail .ov_copy {
			padding: 0 0 3%;
			font-size: 3.0vw;
			text-align: center;
		}
		.ov_detail p {
			font-size: 2.1vw;
			line-height: 1.8;
			letter-spacing: 0.07em;
		}
		.ov_program {
			width: 100%;
			margin: 0;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: start;
		}
		.ov_program img {
			width: 28%;
			margin: 0;
		}
		.ov_program h3 {
			font-size: 2.1vw;
		}
		.ov_program .pc_ovp {
			display: none;
		}
		.ov_program .sp_ovp {
			display: inline;
		}
		.ov_program table {
			width: 60%;
			margin: 0 6% 0 0;
			padding: 2.5% 3.5% 3% 3.5%;
		}
		.ov_program table td {
			padding: 0 2% 0 0;
			font-size: 2.1vw;
		}
		.ov_program table .td_fmk {
			width: 25%;
			vertical-align: bottom;
		}
		.top_banner {
			margin: 6% auto 0;
		}
		.top_banner h3 {
			font-size: 2.3vw;
		}
		.col_sponsor {
			width: 70%;
		}
		
		.top_2nd {
			padding: 7% 0;
		}
		.per_ttl {
			width: 33%;
		}
		.per_col {
			width: 78%;
			display: block;
		}
		.per_box {
			width: 100%;
			margin: 8% 0 0 0;
		}
		.per_box img {
			width: 45%;
		}
		.per_box h3 {
			padding: 1% 0;
			font-size: 2.7vw;
		}
		.per_box p {
			font-size: 2.1vw;
		}
		
		/*----- CONTACT -----*/
		.contact {
			max-width: 90%;
		}
		.contact_ttl {
			width: 33%;
		}
		.contactform p {
			font-size: 2.1vw;
		}
		.contactform table th {
			width: 33%;
		}
		input[type="search"],
		input[type="email"],
		input[type="text"],
		input[type="url"],
		input[type="password"],
		textarea {
			font-size: 2.1vw;
		}
		select {
			font-size: 2.1vw;
		}
		input[type="submit"] {
			font-size: 2.2vw;
		}
		/* Contact Form 7 --------*/
		.wpcf7-not-valid-tip {
			font-size: 2.0vw;
		}
		.wpcf7-response-output {
			font-size: 2.1vw;
		}
		
		
		
		
	}
	
	.pcbr {
		display: block;
	}
	.spbr {
		display: none;
	}
	
	@media screen and (max-width: 580px) {
		.pcbr {
			display: none;
		}
		.spbr {
			display: block;
		}
		/* Header */
		#site-header {
			height: 60px;
		}
		.hd_container {
			height: 60px;
		}
		.logo {
			width: 70%;
			max-width: 100px;
		}
		
		.hd_sns {
			width: 12%;
			max-width: 36px;
		}
		
			/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
			#site-header.scroll-nav {
				height: 60px;
			}
			.hd_container.scroll-nav {
				max-width: 90%;
				height: 60px;
			}
			#site-header.scroll-nav .logo {
				width: 70%;
				max-width: 100px;
				transition: 0.5s;
			}
			.navi-container ul li {
				font-size: 3.6vw;
			}
			
			#container {
				padding-top: 60px;
			}
	
	/*----- パンくず -----*/
	.breadcrumb li {
		font-size: 2.4vw;
	}
	
	/* Post */
	.primary {
		display: block;
	}
	.hd_archive h1 {
		font-size: 3.2vw;
	}
	.roop h2 {
			font-size: 3.0vw;
			padding: 0 0 1%;
	}
	.roop_meta {
		padding: 0 0 3% 0;
		font-size: 2.4vw;
	}
	.meta_date::before {
		font-size: 2.3vw;
	}
	.meta_author::before {
		font-size: 2.3vw;
	}
	.meta_cat::before {
		font-size: 2.3vw;
	}
	.roop_thum {
		width: 100%;
		display: block;
	}
	.roop_excerpt {
		width: 100%;
		margin: 0;
		padding: 2% 0 0 0;
		display: block;
		font-size: 2.5vw;
		line-height: 1.6;
	}
	/* Pagination */
	.pagination .page-numbers {
		font-size: 2.2vw;
	}
	/* side bar */
	.side {
		width: 100%;
	}
	.side .widget h2 {
		font-size: 2.4vw;
	}
	.side .widget ul li {
		font-size: 2.4vw;
	}
	/* Single */
	.single_ttl {
		font-size: 3.0vw;
	}
	.single_meta {
		font-size: 2.4vw;
	}
	.single_cntnt p {
		font-size: 2.5vw;
	}
	.single_pagination {
		font-size: 2.4vw;
	}
	
		/* Footer */
		#footer {
			padding: 3% 0 4%;
		}
	#footer-widget {
		max-width: 92%;
		padding: 0;
		display: block;
		font-size: 2.2vw;
	}
	#footer-widget li {
		list-style: none;
		padding: 0;
	}
	#footer-widget .widget {
		width: 100%;
		padding-bottom: 3%;
	}
	#footer-widget .widget h2 {
		font-size: 2.5vw;
	}
	#footer-widget .widget p {
		font-size: 2.2vw;
	}
	.copyright {
			font-size: 2.6vw;
			line-height: 1.6;
	}
	/* Page Top */
	#page_top {
		right: 3%;
		bottom: 10%;
		width: 9.5%;
	}
	#page_top p {
		font-size: 2.1vw;
	}
		/*----- TOP -----*/
		.top_1st {
			padding: 7% 0;
		}
		.top_h2ttl {
			width: 30%;
			font-size: 3.5vw;
		}
		.top_h2ttl:before,
		.top_h2ttl:after {
			font-size: 2.9vw;
		}
		.ov_col {
			width: 88%;
			margin: 4% auto 0;
		}
		.ov_detail h3 {
			font-size: 4.0vw;
		}
		.ov_detail .ov_copy {
			font-size: 3.6vw;
		}
		.ov_detail p {
			font-size: 2.7vw;
			letter-spacing: 0.08em;
		}
		.ov_program img {
			width: 30%;
			margin: 0 1% 0 0;
		}
		.ov_program h3 {
			font-size: 2.7vw;
		}
		.ov_program table {
			width: 64%;
			margin: 0 5% 0 0;
		}
		.ov_program table td {
			font-size: 2.7vw;
			line-height: 1.6;
		}
		.ov_program table .td_fmk {
			width: 28%;
			vertical-align: middle;
		}
		.top_banner {
			margin: 7% auto 0;
		}
		.top_banner h3 {
			font-size: 2.9vw;
		}
		.col_sponsor {
			width: 80%;
			margin: 1.8% auto 0;
		}
		.col_sponsor .kmall {
			width: 33%;
			margin: 0 10% 0 0;
		}
		.col_sponsor .mgc {
			width: 57%;
		}
		
		.top_2nd {
			padding: 8% 0;
		}
		.per_ttl {
			width: 40%;
		}
		.per_col {
			width: 82%;
		}
		.per_box img {
			width: 48%;
		}
		.per_box h3 {
			font-size: 3.3vw;
		}
		.per_box p {
			font-size: 2.7vw;
		}
		
		/*----- CONTACT -----*/
		.contact {
			padding: 8% 0 12%;
		}
		.contact_ttl {
			width: 42%;
		}
		.contactform p {
			font-size: 3.1vw;
			text-align: left;
			line-height: 1.6;
		}
		.contactform table th {
			width: 100%;
			display: block;
			padding: 4% 0 0;
			border-bottom: none;
			background: #fff;
		}
		.contactform table th p {
			text-align: left;
		}
		.contactform table td {
			width: 100%;
			display: block;
			padding: 2.5% 0 5%;
			border-right: none;
		}
		.topboder {
			border-top: none;
		}
		.contactform .p_submit {
			text-align: center;
		}
		input[type="search"],
		input[type="email"],
		input[type="text"],
		input[type="url"],
		input[type="password"],
		textarea {
			font-size: 3.1vw;
		}
		select {
			font-size: 3.1vw;
		}
		input[type="submit"] {
			font-size: 3.2vw;
		}
		/* Contact Form 7 --------*/
		.wpcf7-not-valid-tip {
			font-size: 3.0vw;
		}
		.wpcf7-response-output {
			padding: 1.4% 2% 1.6%!important;
			text-align: left;
			font-size: 3.1vw;
			line-height: 1.6;
		}
		
		
		
		
		
		
	}
	
	
	@media screen and (max-width: 390px) {
		/* Header */
		.hd_sns {
			width: 20%;
			max-width: 30px;
		}
		.nav-content.open {
			width: 70%;
		}
		.navi-container ul li {
			font-size: 4.2vw;
		}
	
	/*----- パンくず -----*/
	.breadcrumb {
		max-width: 90%;
	}
	.breadcrumb li {
		font-size: 2.8vw;
	}
	
	/* Post */
	.primary {
		max-width: 90%;
	}
	.hd_archive h1 {
		font-size: 3.7vw;
	}
	.roop h2 {
		font-size: 3.5vw;
	}
	.roop_meta {
		font-size: 2.9vw;
	}
	.meta_date::before {
		font-size: 2.5vw;
	}
	.meta_author::before {
		font-size: 2.8vw;
	}
	.meta_cat::before {
		font-size: 2.8vw;
	}
	.roop_excerpt {
		font-size: 3.0vw;
	}
	/* Pagination */
	.pagination .page-numbers {
		font-size: 2.7vw;
	}
	/* side bar */
	.side .widget h2 {
		font-size: 2.1vw;
	}
	.side .widget ul li {
		font-size: 2.9vw;
	}
	/* Single */
	.single_ttl {
		font-size: 3.5vw;
	}
	.single_meta {
		font-size: 2.9vw;
	}
	.single_cntnt p {
		font-size: 3.0vw;
	}
	.single_pagination {
		font-size: 2.9vw;
	}
	
		/* Footer */
		#footer {
			padding: 6% 0 6.5%;
		}
	#footer-widget {
		padding: 0;
		font-size: 2.7vw;
	}
	#footer-widget .widget {
		padding-bottom: 4%;
	}
	#footer-widget .widget h2 {
		font-size: 3.0vw;
	}
	#footer-widget .widget p {
		font-size: 2.7vw;
	}
	.copyright {
			font-size: 3.0vw;
			letter-spacing: 0.06em;
			text-align: left;
			padding-left: 5%;
	}
	/* Page Top */
	#page_top {
		right: 4%;
		bottom: 10%;
		width: 12%;
	}
	#page_top p {
		font-size: 2.6vw;
	}
		
		/*----- TOP -----*/
		.top_h2ttl {
			width: 32%;
			font-size: 3.9vw;
		}
		.top_h2ttl:before,
		.top_h2ttl:after {
			font-size: 3.3vw;
		}
		.ov_col {
			width: 90%;
		}
		.ov_detail h3 {
			font-size: 4.4vw;
			line-height: 1.7;
		}
		.ov_detail .ov_copy {
			font-size: 4.0vw;
			line-height: 1.7;
		}
		.ov_detail p {
			font-size: 3.4vw;
			line-height: 1.7;
		}
		.ov_program h3 {
			font-size: 3.3vw;
		}
		.ov_program table td {
			font-size: 3.2vw;
		}
		.ov_program table .td_fmk {
			width: 25%;
		}
		.top_banner h3 {
			font-size: 3.4vw;
		}
		.col_sponsor {
			width: 82%;
			margin: 2% auto 0;
		}
		
		
		.top_2nd {
			padding: 9% 0 12%;
		}
		.per_ttl {
			width: 49%;
		}
		.per_col {
			width: 100%;
		}
		.per_box img {
			width: 48%;
		}
		.per_box h3 {
			font-size: 3.8vw;
		}
		.per_box p {
			font-size: 3.2vw;
		}
		
		/*----- CONTACT -----*/
		.contact_ttl {
			width: 45%;
		}
		.contactform p {
			font-size: 3.6vw;
		}
		input[type="search"],
		input[type="email"],
		input[type="text"],
		input[type="url"],
		input[type="password"],
		textarea {
			font-size: 3.6vw;
		}
		select {
			font-size: 3.6vw;
		}
		input[type="submit"] {
			font-size: 3.7vw;
		}
		/* Contact Form 7 --------*/
		.wpcf7-not-valid-tip {
			font-size: 3.6vw;
		}
		.wpcf7-response-output {
			font-size: 3.6vw;
		}
		
		
		
	}