/* ----------------------------------------------------------------
 01. Utility
----------------------------------------------------------------- */

/**
 * Reset
 */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	border: 0;
	box-sizing: border-box;
	font-size: 100%;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
h1, h2, h3, h4, h5, h6, p ,li {
	font-size: 100%;
	margin: 0;
	padding: 0;
}
blockquote:before, blockquote:after, q:before, q:after { content: none }
nav, ul, ol, dl { list-style: none }
blockquote, q { quotes: none }
a {
	background: transparent;
	color: inherit;
	display: block;
	font-size: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	text-decoration: none;
	vertical-align: baseline;
	outline: none;
}
input[type="text"]:focus {
  outline: none;
}

.mgb0{margin-bottom:0px!important;}
.mgb1em { margin-bottom: 1em !important; }
.mgt0{margin-top:0!important;}
.mgr0{margin-right:0!important;}
.pd0{padding:0px!important;}
.pdb0{padding-bottom:0px!important;}
.pdr0{padding-right:0px!important;}
.pdt0{padding-top:0px!important;}
.tac{text-align:center!important;}
.tal{text-align:left!important;}
.tar{text-align:right!important;}
.taj { text-align: justify!important; }
.fwb{font-weight: bold!important;}
.fwn{font-weight:normal!important;}
.wsn{white-space:nowrap!important;}
.vam{vertical-align:middle!important;}
.vat{vertical-align:top!important;}
.vab{vertical-align:bottom!important;}
.dpb{display:block!important;}
.dpi{display:inline!important;}
.dpn{display:none!important;}
.dpib{display:inline-block!important;}
.psr{position:relative!important;}
.fll{float:left!important;}
.flr{float:right!important;}
.clb{clear:both;}
.tdu{text-decoration:underline;}
.bdn{border:none!important;}
.lh0 { line-height: 0;}
.lh1_6{line-height:1.6;}
.lh1_8{line-height:1.8;}
.ovfh{overflow:hidden;}
input[type="text"], 
input[type="password"], 
textarea, 
select {
    outline: none;
}
*:focus {
  outline: none;
}




/* font setting */

small { font-size: 80%; }
.runda {
	font-family: "runda";
	font-weight: 300;
}
.runda.bold {
	font-family: "runda";
	font-weight: 500;
}


/* other */

.img100 {
	width: 100%;
}
.m-img100 {
	max-width: 100%;
}

.move,
.move:hover {
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-webkit-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
}

.link_line {
	text-decoration: underline;
}
.link_line:hover {
	opacity: 0.6;
}

.list_disc li {
	list-style: disc outside;
	margin: 0 0 0 25px;
}

.btn_01 {
	background: none;
	border: solid 7px #000;
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	font-size: 1.5rem;
	font-weight: bold;
	height: 60px;
	line-height: 46px;
	margin: auto;
	max-width: 400px;
	overflow: hidden;
	position: relative;
	text-align: center;
	width: 70%;
}
.btn_01.submit {
	line-height: 34px;
}
.btn_01:after {
	background: url(common/img/arrow.png) no-repeat;
	background-size: contain;
	content: "";
	height: 17.5px;
	position: absolute; right: 5%; top: calc(50% - 9px);
	width: 10.5px;
}
@media only screen and (min-width: 768px) {
		.btn_01 {
			font-size: 20px;
			height: 80px;
			line-height: 66px;
		}
		.btn_01.submit {
			line-height: 33px;
		}
		.btn_01:hover {
			background: #000;
			color: #fff;
			transition:all 0.3s ease-in-out;
		}
		.btn_01:after {
			background-size: 14px;
			height: 35px;
			position: absolute; right: 5%; top: calc(50% - 11.5px);
			transition:all 0.3s ease-in-out;
			width: 21px;
		}
		.btn_01:hover:after {
			background: url(common/img/arrow_whi.png) no-repeat;
			background-size: 14px;
			transition:all 0.3s ease-in-out;
			position: absolute; right: 2.5%; top: calc(50% - 11.5px);
		}
}
	
/* ==== General settings ====*/

.op_01:hover { opacity: 0.6; }

.only_pc {
	display: inherit;
}
.only_pc_dpib {
	display: inline-block;
}
.only_pc_th {
	display: table-header-group;
}
.only_sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.only_pc,
	.only_pc_dpib,
	.only_pc_th {
		display: none !important;
	}
	.only_sp {
		display: inherit;
	}
	.op_01:hover { opacity: 1; }
}

.hidden_box {
	-webkit-transform: translateY(20px);
	-moz-transform: translateY(20px);
	transform: translateY(20px);
	opacity: 0;
}

@media screen and (max-width: 768px) {
	.hidden_box {
		-webkit-transform: none;
		-moz-transform: none;
		transform: none;
		margin: 0 0 0 0;
		opacity: 1;
	}
}




/* ==== Structure ====*/
html {
	-webkit-overflow-scrolling: touch;
	overflow-x: hidden !important;
} 


html {
	font-size: 14px;
}
@media only screen and (min-width: 768px) {
		html {
			font-size: 18px;
		}
}
body {
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	color: #000;
	height: 100%;
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.4;
	overflow-x: hidden !important;
	overflow-wrap: break-word;
	position: relative;
}
@media only screen and (min-width: 768px) {
		body {
			padding: 0;
			width: 100%;
		}
}



/* ==== Header ====*/

.header {
	background: #fff;
	margin: 0 0 30px;
	padding: 5% 5% 0;
	width: 100%;
}
.header.index {
	margin: 0 0 0;
}
.header .txt_head {
	margin: 0 0 3%;
	width: calc(100% - 70px);
}
.header .logo {
	margin: auto;
	max-width: 155px;
	width: 28%;
}
.header .logo.index {
	margin: auto;
	max-width: 233px;
	width: 33.75%;
}
@media only screen and (min-width: 768px) {
		.header {
			background: none;
			padding: 25px 0;
			width: 100%;
		}
		.header.index {
			margin: 0 0 40px;
		}
		.header .txt_head {
			margin: 0 auto 3%;
			width: 430px;
		}
		.header .logo.index {
			width: 233px;
		}
}




/*==== gmenu ====*/

.menu-trigger,
.menu-trigger span,
.drawer-close .menu-trigger,
.drawer-close .menu-trigger span{
	cursor: pointer;
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger,
.drawer-close .menu-trigger{
	background: none;
	border: none;
	box-sizing: border-box;
  position: fixed; top: 20px; right: 20px;
  width: 50px;
  height: 70px;
	z-index: 100;
}
.menu-trigger span,
.drawer-close .menu-trigger span{
  position: absolute;
  left: 0px;
  width: 50px;
  height: 10px;
  background-color: #030303;
}
.menu-trigger span:nth-of-type(1),
.drawer-close .menu-trigger span:nth-of-type(1){
  top: 10px;
}
.menu-trigger span:nth-of-type(2),
.drawer-close .menu-trigger span:nth-of-type(2){
  top: 25px;
}
.menu-trigger span:nth-of-type(3),
.drawer-close .menu-trigger span:nth-of-type(3){
  top: 40px;
}
.menu-trigger span:nth-of-type(4),
.drawer-close .menu-trigger span:nth-of-type(4){
	background: url(common/img/menu.png) no-repeat center;
	background-size: contain;
	height: 25px;
  top: 55px;
}

.menu-trigger .txt,
.drawer-close .menu-trigger .txt {
	color: #3e3e3e;
	font-size: 85%;
	font-weight: 600;
	position: absolute; bottom: 0; left: 0;
	text-align: center;
	width: 35px;
}
.menu-trigger:hover span:nth-child(1),
.menu-trigger:hover span:nth-child(2),
.menu-trigger:hover span:nth-child(3) {
	opacity: 0.6;
}
.drawer-open .menu-trigger:hover span {
	transform: none;
}
.sns_wrap li:nth-child(2) {
	-webkit-animation-duration: 1.9s;
	-moz-animation-duration: 1.9s;
	animation-duration: 1.9;
}

@-webkit-keyframes rotate3 {
0% {-webkit-transform: rotateY(0deg); opacity: 100;} 
50% {-webkit-transform: rotateY(20deg); opacity: 100;}
51% {-webkit-transform: rotateY(180deg); opacity: 100;}
100% {-webkit-transform: rotateY(360deg); opacity: 100;}
}
@-moz-keyframes rotate3 {
0% {-moz-transform: rotateY(0deg); opacity: 100;} 
50% {-moz-transform: rotateY(20deg); opacity: 100;}
51% {-moz-transform: rotateY(180deg); opacity: 100;}
100% {-moz-transform: rotateY(360deg); opacity: 100;}
}
@keyframes rotate3 {
0% {transform: rotateY(0deg); opacity: 100;} 
50% {transform: rotateY(20deg); opacity: 100;}
51% {transform: rotateY(180deg); opacity: 100;}
100% {transform: rotateY(360deg); opacity: 100;}
}

.drawer-open .menu-trigger {
	background: none;
	cursor: pointer;
  position: fixed; top: 20px; right: 20px;
  height: 70px;
	width: 50px;
	z-index: 1001;
}
.drawer-open .menu-trigger span:nth-of-type(1) {
  background: #030303;
  top: 17px;
	right: -10px;
	transform:rotate(45deg);
	width: 50px;
}

.drawer-open .menu-trigger span:nth-of-type(2) {
	background: #030303;
  bottom: inherit;
	top: 17px;
	transform:rotate(-45deg);
	right: 0px;
	width: 50px;
}
.drawer-open .menu-trigger span:nth-of-type(3) {
	opacity: 0;
}
.drawer-open .menu-trigger span:nth-of-type(4) {
	top: 45px;
}

.drawer-nav {
	background: url(common/img/bg_01.png) repeat;
	overflow-y: scroll;
	padding: 10px 0 100px !important;
	width: 100%;
	z-index: 90;
}
.drawer--right .drawer-nav {
    right: -100%;
}
.drawer-menu {
	color: #000;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 100px;
	max-width: 600px;
	padding: 30px 0 150px;
	width: 90%;
}
.drawer-menu li {
	flex-basis: auto;
	padding: 0 0 5%;
	width: 45%;
}
.drawer-menu li img {
	height: auto;
	width: 100%;
}
.drawer-menu li:first-child {
	flex-basis: auto;
	padding: 0 0 10%;
	text-align: center;
	width: 100%;
}
.drawer-menu li:first-child img {
	height: auto;
	width: 30%;
}
@media only screen and (min-width: 768px) {
		.drawer-menu li img {
			transition:all .3s ease-in-out;
		}
		.drawer-menu li:hover img {
			transform: scale(1.1);
			transition:all .3s ease-in-out;
		}
}




/*==== Footer ====*/

.footer {
	background:
	url(common/img/line_02.png) no-repeat,
	url(common/img/bg_foot.png) no-repeat bottom ,
	url(common/img/titeijin_02.png) no-repeat,
	url(common/img/bg_02.png) repeat;
	background-position: top, bottom center, right;
	background-size: contain, 1000px, 40px, auto;
	padding: 40px 0 160px;
}
.footer .logo {
	margin: 0 auto 2%;
	max-width: 170px;
	width: 40%;
}
.footer .txt {
	margin: 0 auto;
	max-width: 392px;
	width: 80%;
}
.footer .copy {
	font-size: .65rem;
	margin: 0 auto;
	max-width: 392px;
	text-align: center;
	width: 80%;
}

@media only screen and (min-width: 768px) {
		.footer {
			padding: 80px 0 160px;
		}
}




body .btn_contact {
	animation-name: jump;
	animation-duration: 4.5s;
	animation-iteration-count: infinite;
	display: block;
	height: auto;
	max-width: 263px;
	position: fixed; bottom: -15px; right: 20px;
	width: 40%;
	z-index: 1000;
}
@keyframes jump {
0% {transform: translateY(0) rotateZ(0deg);}
95% {transform: translateY(0px) rotateZ(0deg);}
98% {transform:  translateY(-5px) rotateZ(1deg);}
100% {transform:  translateY(0px) rotateZ(0deg);}
}
@media only screen and (min-width: 768px) {
		body .btn_contact {
			position: fixed; bottom: -20px; right: 20px;
		}
		@keyframes jump {
		0% {transform: translateY(0px);}
		95% {transform: translateY(0px) rotateZ(0deg);}
		98% {transform:  translateY(-15px) rotateZ(1deg);}
		100% {transform:  translateY(0px) rotateZ(0deg);}
		}
		body .btn_contact:hover {
			bottom: -7px;
			transform: rotateZ(5deg);
		}
}

/* ==== Index ====*/

.orange_wrap {
	background: url(common/img/titeijin_01.png) no-repeat ,#d85e2d;
	background-position: 0 100%, 100%;
	background-size: 35px , 100%;
	padding: 0 0 80px;
	position: relative;
}
.ttl_wrap_index {
	margin: 0 0 5%;
}
.ttl_index_01 {
	margin: 0 0 3%;
	width: 100%;
}
.txt_index_01 {
	margin: auto;
	width: 80%;
}
.txt_info {
	border-bottom: solid 3px #fff000;
	color: #fff000;
	margin: 0 auto 5%;
	padding: 0 0 5%;
	max-width: 850px;
	width: 90%;
}
.txt_info p {
	margin: 0 0 2em;
}
.txt_info p:last-child {
	margin: 0;
}

.brostel_wrap {
	margin: 0 auto;
	max-width: 700px;
	width: 90%;
}
.brostel_wrap.corner {
	border-bottom: solid 3px #fff;
	margin: 0 auto 5%;
	padding: 0 0 5%;
}
.brostel_wrap .ttl_wrap_02 {
	align-items: center ;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 5%;
}
.brostel_wrap .ttl_wrap_02 .logo {
	flex-basis: auto;
	width: 20%;
}
.brostel_wrap .ttl_wrap_02 .logo img {
	height: auto;
	width: 100%;
}
.brostel_wrap .ttl_wrap_02 .ttl {
	flex-basis: auto;
	font-size: 1.5rem;
	width: 77%;
}
@media only screen and (min-width: 768px) {
		.orange_wrap {
			background: url(common/img/titeijin_01.png) no-repeat ,#d85e2d;
			background-position: 0 100%, 100%;
			background-size: 40px , 100%;
			padding: 160px 0 80px;
			position: relative;
		}
		.ttl_wrap_index {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			margin: 0 auto 5%;
			position: absolute; top: -81px; left: calc(50% - 450px);
			width: 900px;
		}
		.ttl_index_01 {
			flex-basis: auto;
			margin: 0 0 3%;
			width: 525px;
		}
		.txt_index_01 {
			flex-basis: auto;
			padding: 95px 0 0;
			width: 350px;
		}
		.txt_info {
			color: #fff000;
		}
		.txt_info p {
			margin: 0 0 2em;
		}
		.txt_info p:last-child {
			margin: 0;
		}
		.btn_01.radio {
			margin-bottom: 90px;
		}
		.brostel_wrap .ttl_wrap_02 .ttl {
			font-size: 2rem;
		}

		.brostel_wrap a {
			background: linear-gradient(to bottom, var(--mainColor) 0%, var(--mainColor) 100%);
			background-position: 0 100%;
			background-repeat: repeat-x;
			background-size: 3px 3px;
			color: #fff000;
			display: inline-block;
			text-decoration: none;
		}

		.brostel_wrap a:hover {
			background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='squiggle-link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:ev='http://www.w3.org/2001/xml-events' viewBox='0 0 20 4'%3E%3Cstyle type='text/css'%3E.squiggle{animation:shift .3s linear infinite;}@keyframes shift {from {transform:translateX(0);}to {transform:translateX(-20px);}}%3C/style%3E%3Cpath fill='none' stroke='#fff000' stroke-width='1' class='squiggle' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E%3C/svg%3E");
			background-position: 0 100%;
			background-size: auto 6px;
			background-repeat: repeat-x;
			text-decoration: none;
		}
}

.menu_wrap {
	background: url(common/img/line_01.png) no-repeat top, url(common/img/bg_01.png) repeat;
	background-size: contain, auto;
	padding: 40px 0;
}
.menu_wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1080px;
	width: 90%;
}
.menu_wrap ul li {
	flex-basis: auto;
	padding: 0 0 10%;
	width: 45%;
}
.menu_wrap ul li:nth-child(3),
.menu_wrap ul li:nth-child(4) {
	padding: 0;
}
.menu_wrap ul li img {
	height: auto;
	width: 100%;
}
@media only screen and (min-width: 768px) {
		.menu_wrap {
			padding: 80px 0;
		}
		.menu_wrap ul li {
			flex-basis: auto;
			padding: 10px 0 0;
			width: 23%;
		}
		.menu_wrap ul li:nth-child(2) {
			padding: 40px 0 0;
		}
		.menu_wrap ul li:nth-child(3) {
			padding: 00px 0 0;
		}
		.menu_wrap ul li:nth-child(4) {
			padding: 40px 0 0;
		}

.menu_wrap ul li img {
			transition:all .3s ease-in-out;
		}
		.menu_wrap ul li:hover img {
			transform: scale(1.1);
			transition:all .3s ease-in-out;
		}
}



/* ==== About ====*/

.ttl_about_01 {
	margin: 0 auto 20px;
	max-width: 422px;
	width: 65.93%;
}
.catch_01 {
	margin: 0 auto 10px;
	max-width: 700px;
	width: 90%;
}
.ttl_wrap {
	margin: 0 0 5%;
}
@media only screen and (min-width: 768px) {
		.catch_01 {
			margin: 0 auto 90px;
			max-width: 700px;
			width: 90%;
		}
		.ttl_wrap {
			margin: 0 auto 5%;
			position: absolute; top: -81px; left: calc(50% - 320px);
			width: 640px;
		}
}

.charactor_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 0%;
	max-width: 400px;
	width: 90%;
}
.charactor_wrap li {
	flex-basis: auto;
	text-align: center;
	margin: 0 0 10%;
	width: 48%;
}
.charactor_wrap li img {
	height: auto;
	margin: 0 0 5px;
	width: 100%;
}
.charactor_wrap li p {
	text-align: center;
}
.charactor_wrap li p span {
	display: block;
	font-size: 0.66rem;
	font-weight: normal;
	text-align: left;
}

.ttl_about_02 {
	margin: 0 auto 5%;
	max-width: 281px;
	width: 43.9%;
}
.txt_about_01 {
	margin: auto;
	max-width: 700px;
	width: 90%;
}
.txt_about_01 span {
	font-size: 2rem;
}



/* ==== 全国のラジオ局の皆様へ ====*/

.ttl_radio_01 {
	margin: 0 auto 20px;
	max-width: 468px;
	width: 73.2%;
}

.dl_contact {
	margin: 0 auto 50px;
	max-width: 700px;
	width: 90%;
}
.dl_contact dt {
	margin: 0 0 5px;
}
.dl_contact dt span {
	font-size: .77rem;
	margin: 0 0 0 5px;
}
.dl_contact dd {
	margin: 0 0 50px;
}
.form_01 {
	background: #fff;
	border-radius: 0;
	box-sizing: border-box;
	font-size: 1.5rem;
	font-weight: bold;
	height: 40px;
	line-height: 40px;
	padding: 0 10px;
	width: 100%;
}
@media only screen and (min-width: 768px) {
		.dl_contact {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			margin: 0 auto 50px;
		}
		.dl_contact dt {
			flex-basis: auto;
			line-height: 40px;
			margin: 0 0 50px;
			width: 190px;
		}
		.dl_contact dd {
			flex-basis: auto;
			margin: 0 0 50px;
			width: calc(100% - 200px);
		}
}



/* ==== 地底人ラジオの聴き方 ====*/

.ttl_howto_01 {
	margin: 0 auto 20px;
	max-width: 422px;
	width: 65.9%;
}
.catch_01.radio {
	margin-bottom: 10px;
}
.btn_01.radio {
	font-size: 1rem;
	margin-bottom: 10px;
	width: 90%;
}
.btn_01.radio span {
	padding: 0 0 0 25px;
	position: relative;
}
.btn_01.radio span:after {
	background: url("common/img/icn_sibuya-radio.png") no-repeat;
	background-size: contain;
	content: "";
	height: 20px;
	position: absolute; left: 0; top: -2px;
	width: 20px;
}
.ul_howto {
	color: #fff;
	margin: auto;
	max-width: 700px;
	width: 90%;
}
.ul_howto li {
	border-bottom: solid 3px #fff;
	margin: 0 0 10%;
	padding: 0 0 10%;
	text-align: center;
}
.ul_howto li:last-child {
	border-bottom: none;
	margin: 0;
	padding: 0;
}
.ul_howto li h3 {
	font-size: 2rem;
	line-height: 1;
	margin: 0 0 5%;
}
.ul_howto li h3 small {
	font-size: 1rem;
}
.ul_howto li h4 {
	border: solid 1px #fff000;
	display: inline-block ;
	font-size: 1.5rem;
	margin: 0 0 2%;
	padding: 0 10px;
}
.ul_howto li p {
	margin: 0 0 0rem;
}
.ul_howto li a.mgb {
	margin: 0 0 8%;
}
.ul_howto li:last-child {
	margin: 0 0 0rem;
}
.ul_howto li:nth-child(2n) {
	color: #fff000;
}
.ul_howto li a {
	margin: 0 0 .2rem;
}

.dl_howto {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.77rem;
	justify-content: space-between;
	margin: 0 auto 3%;
	padding: 3% 0 0;
	text-align: left;
}
.dl_howto dt {
	flex-basis: auto;
	width: 90px;
}
.dl_howto dd {
	flex-basis: auto;
	width: calc(100% - 100px);
}
.logo_01 {
	background: #fff;
	border-radius: 10px;
	margin: 0 auto 1%;
	padding: 15px 15px 5px 15px;
	width: 68.75%;
}
.logo_02 {
	background: #fff;
	border-radius: 10px;
	margin: 0 auto 1%;
	width: 22%;
}
.logo_03 {
	margin: 0 auto 1%;
	padding: 15px 15px 5px 15px;
	width: 68.75%;
}
.station_wrap {
	margin-bottom: 10%;
}

@media only screen and (min-width: 768px) {
		.btn_01.radio {
			margin-bottom: 90px;
		}
		.btn_01.radio span {
			padding: 0 0 0 50px;
			position: relative;
		}
		.btn_01.radio span:after {
			background: url("common/img/icn_sibuya-radio.png") no-repeat;
			background-size: contain;
			content: "";
			height: 40px;
			position: absolute; left: 0; top: -10px;
			width: 40px;
		}

		.ul_howto li a {
			background: linear-gradient(to bottom, var(--mainColor) 0%, var(--mainColor) 100%);
			background-position: 0 100%;
			background-repeat: repeat-x;
			background-size: 3px 3px;
			display: inline-block;
			text-decoration: none;
		}

		.ul_howto li a:hover {
			background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='squiggle-link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:ev='http://www.w3.org/2001/xml-events' viewBox='0 0 20 4'%3E%3Cstyle type='text/css'%3E.squiggle{animation:shift .3s linear infinite;}@keyframes shift {from {transform:translateX(0);}to {transform:translateX(-20px);}}%3C/style%3E%3Cpath fill='none' stroke='#fff000' stroke-width='1' class='squiggle' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E%3C/svg%3E");
			background-position: 0 100%;
			background-size: auto 6px;
			background-repeat: repeat-x;
			text-decoration: none;
		}
		.ul_howto li .logo_01 a:hover {
			background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='squiggle-link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:ev='http://www.w3.org/2001/xml-events' viewBox='0 0 20 4'%3E%3Cstyle type='text/css'%3E.squiggle{animation:shift .3s linear infinite;}@keyframes shift {from {transform:translateX(0);}to {transform:translateX(-20px);}}%3C/style%3E%3Cpath fill='none' stroke='#d85e2d' stroke-width='1' class='squiggle' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E%3C/svg%3E");
			background-position: 0 100%;
			background-size: auto 6px;
			background-repeat: repeat-x;
			text-decoration: none;
		}

		.dl_howto {
			width: 60%;
		}
		.dl_howto dt {
			width: 100px;
		}
		.dl_howto dd {
			flex-basis: auto;
			width: calc(100% - 110px);
		}
		.logo_01,
		.logo_03{
			width: 300px;
		}
		.logo_02 {
			width: 142px;
		}	
}



/* ==== コーナー紹介 ====*/

.ttl_corner_01 {
	margin: 0 auto 20px;
	max-width: 281px;
	width: 43.9%;
}
.ul_corner {
	color: #fff;
	margin: auto;
	max-width: 700px;
	width: 90%;
}
.ul_corner li {
	margin: 0 0 10%;
	text-align: center;
}
.ul_corner li:last-child {
	border-bottom: none;
	margin: 0;
	padding: 0;
}
.ul_corner li h3 {
	background: #000;
	border-radius: 20px;
	display: inline-block;
	font-size: 2rem;
	margin: 0 0 5%;
	padding: .7rem 20px;
	position: relative;
}
.ul_corner li h3:after {
	background: #000;
	content: "";
	height: 16px;
	position: absolute; bottom: -8px; left: calc(50% - 8px);
	transform: rotate(45deg);
	width: 16px;
}
.ul_corner li h4 {
	font-size: 1.5rem;
}
.ul_corner li p {
	margin: 0 0 2rem;
}
.ul_corner li a.mgb {
	margin: 0 0 2rem;
}
.ul_corner li:last-child {
	margin: 0 0 0rem;
}
.ul_corner li a {
	margin: 0 0 .2rem;
}




/* ==== お便り募集 ====*/

.ttl_contact_01 {
	margin: 0 auto 20px;
	max-width: 507px;
	width: 79.3%;
}
.link_01 {
	background: linear-gradient(to bottom, var(--mainColor) 0%, var(--mainColor) 100%);
	background-position: 0 100%;
	background-repeat: repeat-x;
	background-size: 3px 3px;
	color: #d85e2d;
	display: inline-block;
	text-decoration: none;
}

.link_01:hover {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='squiggle-link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:ev='http://www.w3.org/2001/xml-events' viewBox='0 0 20 4'%3E%3Cstyle type='text/css'%3E.squiggle{animation:shift .3s linear infinite;}@keyframes shift {from {transform:translateX(0);}to {transform:translateX(-20px);}}%3C/style%3E%3Cpath fill='none' stroke='#d85e2d' stroke-width='1' class='squiggle' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E%3C/svg%3E");
	background-position: 0 100%;
	background-size: auto 6px;
	background-repeat: repeat-x;
	text-decoration: none;
}

.select_01 {
	background: #fff;
	border-radius: 0 !important;
	box-sizing: border-box;
	font-size: 1.5rem;
	font-weight: bold;
	height: 40px;
	line-height: 40px;
	padding: 0 10px;
	width: 100%;
}
.form_01.size_02 {
	width: 20%;
}
.radio02-input{
  display: none;
}
.radio02-input + label{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}
.radio02-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #fff;
  border-radius: 50%;
}
.radio02-input:checked + label{
  color: #000;
}
.radio02-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #fff000;
  border-radius: 50%;
}
.textarea_01 {
	background: #fff;
	border-radius: 0;
	box-sizing: border-box;
	font-size: 1.5rem;
	font-weight: bold;
	height: 200px;
	line-height: 40px;
	padding: 0 10px;
	width: 100%;
}
.btn_01.mgb {
	margin-bottom: 3rem;
}