@font-face {
    font-family: 'M+ 1p heavy';
    src: url('/mplus-1p-heavy-sub.eot');
    src: url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-heavy-sub.eot?#iefix') format('embedded-opentype'),
    url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-heavy-sub.woff') format('woff'),
    url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-heavy-sub.ttf') format('truetype');
}
@font-face {
    font-family: 'M+ 1p regular';
    src: url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-regular-sub.eot');
    src: url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-regular-sub.eot?#iefix') format('embedded-opentype'),
    url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-regular-sub.woff') format('woff'),
    url('https://webhiden.jp/wp/wp-content/themes/cocoon-child-master/fonts/mplus-1p-regular-sub.ttf') format('truetype');
}

.heavy { font-family: 'M+ 1p heavy'; }
.regular { font-family: 'M+ 1p regular'; }


body {
  width: 100%;
  height: auto;
  box-sizing:border-box;
  padding: 0;
  margin: 0;
  font-family: "Lato", sans-serif;
}

br.sp {
  display:block;
}

br.pc {
  display:none;
}

.yel {
  color: #fff100;
}

.bold {
  font-weight:bold;
}

.bgc-green {
  background-color:#00561f !important;
  color:#fff !important;
}

p {
  font-size:16px;
  line-height:1.6;
  margin:0 0 20px;
}

a {
  color: #00561f;
  text-decoration: underline;
}

a:hover {
  color: #0074a7;
  text-decoration: none;
}

a img:hover {
  opacity:0.6;
}

a {
  outline:none;
}

h2 a:hover {
  color:#fff;
  text-decoration:none;
}

img {
  width: 100%;
  height: auto;
}

.yellow {
  color:#fee101;
}

.red {
  color:#e61a0f;
}

.blue {
  font-size:110%;
  color:#b90006
}

.small {
  font-size:80%;
}

.big {
  font-size:120% !important;
}

header {
  width: auto;
  height: 36px;
  padding: 6px 0;
  background: #011;
}

header #site-logo {
  width: 120px;
  margin: 0 auto;
  line-height: 0;
}
header #site-logo img {
  width: 100%;
  margin: 0 auto;
}

#mv {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:10px;
  margin:0 0 10px;
}

#mv .inner {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mv img {
  width:100%;
}

#mv h1 {
  float:none;
  width:auto;
  margin:0;
  font-size:18px;
  line-height:1.4;
  color:#;
  text-align:right;
  letter-spacing:-1px;
}

#mv h1 .sub {
  display:block;
  font-size:18px;
  line-height:1.6;
}

#mv .logo {
  width:120px;
  height:auto;
  color:#fff;
  text-align:center;
}

#mv .logo a {
  display:block;
  font-size:10px;
  line-height:1.4;
  color:#00561f;
}

#anchor ul.col5 {
  flex-wrap: wrap;
}

#mag {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mag .left {
  width:auto;
  height:auto;
  overflow:hidden;
  margin-bottom:20px;
}

#mag .left img {
  display:block;
  width:260px;
  margin:0 auto;
}

#mag .right {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mag h2 {
  clear: both;
  padding: 10px;
  background: #011;
  margin:0;
  font-size: 20px;
  line-height: 32px;
  color: #fff;
}

#wrapper {
  width: auto;
  height: auto;
  overflow: hidden;
  margin: 10px;
}

footer {
  width: auto;
  height: 130px;
  background: none;
  background-color: #011;
  margin: 0;
  font-size: 12px;
  color: #fff;
  text-align: center;
  line-height: 60px;
}
footer p {
  width: auto;
  padding: 20px 0 0;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 22px;
}

#lead {
  width: auto;
  height: auto;
  overflow: hidden;
  margin-bottom:20px;
}

#lead .image {
  float:right;
  width:45%;
  margin:20px 0 0;
}

#lead .image img {
  width:100%;
}

#lead p {
  margin: 5px 0 20px;
  font-size: 14px;
  line-height: 1.8;
}

#lead ul {
  clear:both;
  list-style-type:disc;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0 0 0 20px;
  margin:0 0 30px;
}

#lead li {
  font-size: 14px;
  line-height: 1.8;
}

.lead p {
  text-align:left;
}

.tokushu b {
  font-size:16px;
}

.tokushu .big1 {
  font-size:140%;
}

.tokushu .big2 {
  font-size:115%;
}

.tokushu .col2 {
  width:auto;
  height:auto;
  overflow:hidden;
}

.tokushu .col2 h4 {
  margin:0 0 20px;
  font-size:18px;
  line-height:1.4;
  color:#b90006
}

.tokushu .col2 .left {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 15px;
}

.tokushu .col2 .left img,
.tokushu .col2 .lw300 img,
.tokushu .col2 .lw500 img {
  display:block;
  width:260px;
  height:auto;
  margin:0 auto;
}

.tokushu .col2 .lw200 img {
  display:block;
  width:200px;
  height:auto;
  margin:0 auto;
}

.tokushu .col2 .right {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 15px;
}

.tokushu .col2 .rw300 img,
.tokushu .col2 .rw500 img {
  display:block;
  width:260px;
  height:auto;
  margin:0 auto;
}

.tokushu .col2 .right .left {
  float:left;
  width:48%;
}

.tokushu .col2 .right .right {
  float:right;
  width:48%;
}

.tokushu .col2 .right .right img {
  width:100%;
}

.tokushu .col2 .prof {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:10px;
  margin-bottom:10px;
  border:dotted 1px #607d8b;
  border-radius:5px;
  font-size:13px;
  line-height:1.6;
}

.kikaku .col2 .left {
  width:auto;
  height:auto;
  overflow:hidden;
}

.kikaku .col2 .right {
  width:auto;
  height:auto;
  overflow:hidden;
}

#share{
	width:100%;
	margin:auto;
	text-align:right;
	clear:both;
	margin:15px 0 0;
}
#share ul{
	height:auto;
	padding:0;
	margin:0 0 10px;
}
#share li{
	font-size:14px;
	font-family:"Lato", sans-serif;
	display:inline-block;
	text-align:center;
	width:69px;
	height:30px;
	line-height:30px;
	border-radius:2px;
	list-style:none;
}
#share li.share-twitter{
	background:#55acee;
}
#share li.share-facebook{
	background:#3b5998;
}
#share li.share-google{
	background:#dd4b39;
}
#share li.share-line{
	background:#00C300;
}
#share a{
	display:block;
	color:#ffffff;
	text-decoration:none;
}
#share a:hover{
	text-decoration:none;
	color:#ffffff;
}

.tokushu h2 {
  clear: both;
  padding: 10px;
  background:#000;
  font-size: 19px;
  line-height: 1.4;
  color: #fff;
}

.tokushu h3 {
  padding:0 0 5px;
  margin:0 0 15px;
  border-bottom:solid 1px #000;
  font-size:20px;
  color:#000;
}

.list h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:18px;
  color:#b90006
}

.list ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 30px;
  display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
}

.list li {
  width:100%;
  aspect-ratio: 16 / 9;
}

.youtube {
  aspect-ratio: 16 / 9;
}

.youtube iframe {
  width:100%;
  height:100%;
}

.list-col2 ul,
.list-col3 ul {
	display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
}

.list-col3 h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:22px;
  color:#b90006
}

.list-col3 ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 30px;
}

.list-col3 li {
  width:48%;
}

.list-col3 li p {
  text-align:center;
}

.list-col3 li .btn a {
  width:auto;
}

.list-col3 li .title {
  display:block;
  margin:10px 0;
  font-size:16px;
  line-height:1.4;
  font-weight:bold;
  text-align:center;
}

li.youtube {
  width:100%;
}

.list-col2 h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:22px;
  color:#b90006
}

.list-col2 ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 30px;
}

.list-col2 li {
  width:240px;
  margin:0 auto 30px;
}

.list-col2 li .title {
  display:block;
  margin:10px 0;
  font-size:16px;
  line-height:1.4;
  font-weight:bold;
}

li.youtube-col2 {
  width:100%;
}

.info {
  width:auto;
  height:auto;
  overflow:hidden;
  border:solid 1px #901f25;
  margin:0 0 30px;
}

.info img {
  display:block;
  width:260px;
  margin:0 auto 10px;
}

.info h2 {
  padding: 10px;
  background: #901f25;
  margin:0;
  font-size: 20px;
  line-height: 32px;
  color: #fff;
}

.info .inner {
  width:auto
  height:auto;
  padding:10px;
}

.info span {
  display:block;
  margin:0 0 5px;
  font-size:16px;
  font-weight:bold;
  color:#b90006
  line-height:28px;
}

.btn a {
    display: block;
    clear: both;
    width: 320px;
    height: auto;
    padding: 6px 4px;
    background-size: 12px;
    background-color: #fee101;
    border-radius:4px;
    margin: 0 auto 20px;
    font-size: 18px;
    font-weight: bold;
    color: #000;
    line-height: 1.6;
    text-align: center;
    text-decoration:none;
}


.info .sp {
  display:block;
}

.info .pc {
  display:none;
}

.col2 h2 {
    padding: 10px 0;
    border-top: solid 2px #901f25;
    border-bottom: solid 2px #901f25;
    margin: 20px 0;
    font-size: 20px;
    color: #901f25;
    line-height: 36px;
    text-align: center;
}

.cap {
  display:block;
  margin-top:5px;
  font-size:12px;
  color:#fff;
  text-align:center;
}

.cap-l {
  display:block;
  margin-top:5px;
  font-size:14px;
  font-weight:bold;
  text-align:center;
}

.list .cap {
  text-align:left;
}

.video-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin:0 0 10px;
}

.video-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

p.left {
  width:auto !important;
}

ul.right {
  list-style-type:none;
  width:auto !important;
  padding:0;
  margin:0 0 20px;
}

ul.right li {
  float:left;
  width:31%;
  margin:0 3% 0 0;
}

ul.right li:last-child {
  margin:0;
}

ul.right li img {
  width:100%;
}

#mokuji {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:10px;
  background:#fffce6;
  margin-bottom:20px;
}

#mokuji ul {
  padding:0 10px 0 20px;
}

#mokuji li {
  margin-bottom:5px;
  font-size:14px;
  line-height:1.4;
}

#mokuji li a {
  display:block;
  font-size:14px;
  font-weight:bold;
  color:#795548;
}

#mokuji li a:hover {
  opacity:1;
  text-decoration:none;
}

#mokuji li .icon {
  display:block;
  width:70px;
  height:26px;
  background:#fff;
  border:solid 1px #333;
  margin:10px 0 5px;
  font-size:12px;
  line-height:28px;
  font-weight:normal;
  color:#333;
  text-align:center;
}

#mokuji li .sub {
  display:block;
  font-size:14px;
  line-height:1.6;
}

#mokuji h3 {
  font-size:20px;
  line-height:1.6;
  color:#ff5722;
}

#mokuji h4 {
  font-size:18px;
  line-height:1.6;
  color:#ff5722;
}

#mokuji .in01 {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mokuji .in02 {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mokuji .btn-mokuji {
  display: block;
  width:260px;
  height:38px;
  background: #795548;
  border-radius: 6px;
  margin:0 auto;
  font-size: 16px;
  line-height: 38px;
  font-weight:bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.fancybox-wrap {
  width:88% !important;
}

.fancybox-inner {
  width:auto !important;
}

.back-sitetop {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:40px 0;
  text-align:center;
}

.back-sitetop a {
  font-size:16px;
  color:#2196f3;
}


@media screen and (min-width: 640px) {

body {
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  box-sizing:border-box;
}

br.sp {
  display:none;
}

br.pc {
  display:block;
}

p {
  font-size: 16px;
}

img {
  width: auto;
  height: auto;
}

header {
  width: 100%;
  height: 70px;
  padding: 8px 0;
  background: #011;
}

header #site-logo {
  width: 200px;
  height: auto;
  margin: 0 auto;
}

header #site-logo img {
  width: 100%;
}

#wrapper {
  clear:both;
  width: 1000px;
  height: auto;
  overflow: hidden;
  margin: 10px auto;
}

#mv {
  width:1000px;
  height:auto;
  overflow:hidden;
  padding:10px 0;
  margin:0 auto 20px;
}

#mv img {
  display:block;
  max-width:1500px;
  width:100%;
  height:auto;
  margin:0 auto;
}

#mv h1 {
  width:auto;
  font-size:48px;
  line-height:1.4;
  text-align:center;
}

#mv h1 .sub {
  display:block;
  font-size:28px;
  line-height:1.6;
  text-align:center;
}

#mag {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mv .logo {
  width:140px;
  height:auto;
}

#mv .logo a {
  font-size:12px;
}

.mv {
  width:100%;
  height:auto;
  overflow:hidden;
  text-align:center;
}

.mv img {
  width:100%;
  max-width:1500px;
  margin:0 auto;
}

.lead p {
  font-size:18px;
}

#mag .left {
  float:left;
  width:400px;
  height:auto;
  overflow:hidden;
}

#mag .left img {
  width:400px;
}

#mag .right {
  float:right;
  width:620px;
  height:auto;
  overflow:hidden;
}

#mag h2 {
  clear: both;
  padding: 15px;
  margin-top:0;
  font-size: 30px;
  line-height: 44px;
}

footer {
  width: 100%;
  height: 150px;
  background: none;
  background-color: #011;
  font-size: 14px;
  color: #fff;
  text-align: center;
}
footer p {
  width: 100%;
  padding: 20px 0 0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 38px;
}

h2 .blue {
  display:block;
  font-size:38px;
  color:#b90006
  line-height:50px;
  text-align:center;
}

h2 .ssmall {
  display:block;
  font-size:22px;
  line-height:34px;
  text-align:center;
}

#lead {
  width: 1px;
  height: auto;
  overflow: hidden;
  margin-bottom:40px;
}

#lead .image {
  float:right;
  width:33%;
  margin:20px 0 0;
}

#lead .ssmall {
  display:block;
  font-size:22px;
  line-height:34px;
  text-align:center;
}

#lead .small {
  display:block;
  margin:30px 0 10px;
  font-size:30px;
  line-height:44px;
  text-align:center;
}

#lead .big {
  font-size:46px;
  line-height:66px;
  text-align:center;
}

#lead p {
  font-size: 18px;
  line-height: 1.8;
}

#lead ul {
  float:left;
  list-style-type:disc;
  width:550px;
  height:auto;
  overflow:hidden;
  padding:0 0 0 30px;
  margin:0 0 30px;
}

#lead li {
  font-size: 18px;
  line-height: 1.8;
}

.lead p {
  text-align:center;
}

.tokushu {
  clear:both;
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 40px;
}

.tokushu .col2 {
  width:auto;
  height:auto;
  overflow:auto;
  margin:0 0 15px;
}

.tokushu .col2 .left {
  float:left;
  width:400px;
  height:auto;
  overflow:auto;
}

.tokushu .col2 .lw200 {
  float:left;
  width:200px;
}

.tokushu .col2 .lw300 {
  float:left;
  width:300px;
}

.tokushu .col2 .lw480 {
  float:left;
  width:480px;
}

.tokushu .col2 .lw500 {
  float:left;
  width:500px;
}

.tokushu .col2 .lw600 {
  float:left;
  width:600px;
}

.tokushu .col2 .lw680 {
  float:left;
  width:680px;
  margin:0 auto;
}

.tokushu .col2 .left img,
.tokushu .col2 .lw300 img,
.tokushu .col2 .lw500 img {
  width:100%;
}

.tokushu .col2 h4 {
  clear:both;
  font-size:24px;
  line-height:1.6;
  margin:0 0 20px;
}

.tokushu .col2 h4 .sub {
  display:block;
  font-size:22px;
}

.tokushu .col2 .left img {
  width:100%;
  margin:0;
}

.tokushu .col2 .right {
  float:right;
  width:580px;
  height:auto;
  overflow:hidden;
  margin:0;
}

.tokushu .col2 .rw780 {
  float:right;
  width:780px;
  margin:0 auto;
}

.tokushu .col2 .rw680 {
  float:right;
  width:680px;
  margin:0 auto;
}

.tokushu .col2 .rw300 {
  float:right;
  width:300px;
}

.tokushu .col2 .rw380 {
  float:right;
  width:380px;
}

.tokushu .col2 .rw480 {
  float:right;
  width:480px;
}

.tokushu .col2 .rw500 {
  float:right;
  width:500px;
}

.tokushu .col2 .left img,
.tokushu .col2 .rw300 img,
.tokushu .col2 .rw500 img {
  width:100%;
}

.tokushu .col2 .right .left {
  float:left;
  width:48%;
}

.tokushu .col2 .right .right {
  float:right;
  width:48%;
}

.tokushu .col2 .right .right img {
  width:100%;
}

.tokushu .col2 .prof {
  clear:both;
  width: auto;
  height: auto;
  overflow: hidden;
  padding:15px;
  border:dotted 1px #607d8b;
  border-radius:5px;
  font-size:14px;
  line-height:1.6;
}

.tokushu b {
  font-size:18px;
}

.kikaku .col2 .left {
  float:left;
  width:300px;
  height:auto;
  overflow:auto;
  margin: 0 0 30px;
}

.kikaku .col2 .right {
  float:right;
  width:680px;
  height:auto;
  overflow:hidden;
}

.tokushu .col1 {
  clear:both;
  width:630px;
  height:auto;
  overflow:hidden;
  margin:0 auto;
}

#share{
	width:100%;
	margin:auto;
	overflow:hidden;
	text-align:right;
	clear:both;
	margin:20px 0;
}
#share ul{
	height:auto;
}
#share li{
	font-size:14px;
	font-family:"Lato", sans-serif;
	display:inline-block;
	text-align:center;
	width:84px;
	margin-right:4px;
	border-radius:4px;
	list-style:none;
}
#share li:last-child{
	margin-right:0;
}
#share li.share-twitter{
	background:#55acee;
}
#share li.share-twitter:hover{
	background:#83c3f3;
}
#share li.share-facebook{
	background:#3b5998;
}
#share li.share-facebook:hover{
	background:#4c70ba;
}
#share li.share-google{
	background:#dd4b39;
}
#share li.share-google:hover{
	background:#e47365;
}
#share li.share-line{
	background:#00C300;
}
#share li.share-line:hover{
	background:#2bd92b;
}
#share a{
	display:block;
	color:#ffffff;
	text-decoration:none;
}
#share a:hover{
	text-decoration:none;
	color:#ffffff;
}

.tokushu h2 {
  clear: both;
  padding: 15px;
  font-size: 30px;
  line-height: 44px;
}

.tokushu h3 {
  clear:both;
  padding:0 0 5px;
  margin:0 0 15px;
  border-bottom:solid 1px #000;
  font-size:20px;
  line-height:1.4;
  color:#000;
}

.list h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:22px;
  color:#b90006
}

.list ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 30px;
}

.list li {
  width:48%;
}

.list li .title {
  display:block;
  margin:5px 0 0;
  font-size:16px;
  line-height:1.4;
  font-weight:bold;
  text-align:center;
}

.list li .name .title {
  display:block;
  margin:5px 0 10px;
  font-size:20px;
  line-height:1.4;
  font-weight:bold;
  text-align:center;
}

.list-col3 h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:22px;
  color:#b90006
}

.list-col3 ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0;
}

.list-col3 li {
  width:30%;
}

.list-col3 li img {
  width:100%;
}

.list-col3 li .title {
  display:block;
  margin:10px 0;
  font-size:18px;
  line-height:1.4;
  font-weight:bold;
}

li.youtube {
  width:320px;
}

.list-col2 h3 {
  padding:0 0 5px;
  margin:30px 0 15px;
  border-bottom:solid 1px #b90006
  font-size:22px;
  color:#b90006
}

.list-col2 ul {
  list-style-type:none;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 30px;
}

.list-col2 li {
  float:left;
  width:500px;
  margin:0 60px 40px 0;
}

.list-col2 li:nth-child(2n) {
  float:right;
  margin:0 0 40px 0;
}

.list-col2 li img {
  width:100%;
}

.list-col2 li .title {
  display:block;
  margin:10px 0;
  font-size:18px;
  line-height:1.4;
  font-weight:bold;
}

li.youtube-col2 {
  width:500px;
}

.btn a {
    display: block;
    clear: both;
    width: 400px;
    height: auto;
    padding: 10px;
    background: url(../img/arrow_right_w.png) right 10px center no-repeat;
    background-color: #fee101;
    border-radius:4px;
    margin: 20px auto;
    font-size: 22px;
    font-weight: bold;
    color: #000;
    line-height: 1.6;
    text-align: center;
    text-decoration:none;
}

.btn a:hover {
  opacity:0.6;
}

.btn p {
  text-align:center;
}

.info {
  width:auto;
  height:auto;
  overflow:hidden;
  border:solid 1px #901f25;
  margin:40px 0;
}

.info h2 {
  padding: 15px;
  background: #901f25;
  margin:0;
  font-size: 30px;
  line-height: 44px;
  color: #fff;
}

.info .inner {
  width:auto
  height:auto;
  padding:20px;
}

.info span {
  display:block;
  font-size:20px;
  font-weight:bold;
  color:#b90006
  line-height:32px;
}

.info .left {
  float:left;
  margin:0 20px 160px 0;
}

.info .left2 {
  float:left;
  margin:0 20px 70px 0;
}

.info .right {
  float:right;
  width:220px;
  margin:0 0 20px 20px;
}

.info .sp {
  display:none;
}

.info .pc {
  display:block;
}

.col2 h2 {
    padding: 10px 0;
    border-top: solid 3px #901f25;
    border-bottom: solid 3px #901f25;
    margin: 20px 0;
    font-size: 26px;
    color: #901f25;
    line-height: 38px;
    text-align: center;
}

#lead .right {
  float:right;
  width:400px;
  height:auto;
  overflow:hidden;
  margin:0 0 20px 20px;
}

.cap {
  display:block;
  margin-top:5px;
  font-size:12px;
  text-align:center;
}

.cap-l {
  display:block;
  margin-top:5px;
  font-size:18px;
  line-height:1.6;
  text-align:center;
}

.video-wrap {
  float:right;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin:0 0 20px;
}

.video-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

p.left {
  float:left;
  width:560px !important;
}

ul.right {
  list-style-type:none;
  float:right !important;
  width:470px !important;
  padding:0;
  margin:0 0 20px;
}

ul.right li {
  float:left;
  width:150px;
  margin:0 10px 0 0;
}

ul.right li:last-child {
  margin:0;
}

ul.right li img {
  width:100%;
}

#mokuji {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:10px 10px 20px;
  background:#fffce6;
  margin-bottom:40px;
}

#mokuji ul {
  padding:10px 10px 10px 30px;
}

#mokuji li {
  margin-bottom:5px;
  font-size:16px;
  line-height:1.6;
}

#mokuji li a {
  display:block;
  font-size:18px;
  font-weight:bold;
  color:#795548;
}

#mokuji li a:hover {
  opacity:1;
  color:#ff5722;
  text-decoration:none;
}

#mokuji li .icon {
  display:block;
  width:70px;
  height:26px;
  background:#fff;
  border:solid 1px #333;
  margin:10px 0 5px;
  font-size:12px;
  line-height:28px;
  font-weight:normal;
  color:#333;
  text-align:center;
}

#mokuji li .sub {
  display:block;
  font-size:14px;
  line-height:1.6;
}

#mokuji li b {
  font-size:18px;
}

#mokuji h3 {
  font-size:20px;
  line-height:1.6;
  color:#ff5722;
}

#mokuji h4 {
  font-size:18px;
  line-height:1.6;
  color:#ff5722;
}

#mokuji .in01 {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mokuji .in02 {
  width:auto;
  height:auto;
  overflow:hidden;
}

#mokuji .btn-mokuji {
  display: block;
  width:260px;
  height:38px;
  background: #795548;
  border-radius: 6px;
  margin:0 auto;
  font-size: 16px;
  line-height: 38px;
  font-weight:bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.fancybox-wrap {
  width:800px !important;
}

.fancybox-inner {
  width:auto !important;
}

.back-sitetop {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:40px 0;
  text-align:center;
}

.back-sitetop a {
  font-size:18px;
}

}


.video-list {
  list-style-type:none;
  padding:0;
  margin:0;
}

.video-list li {
  margin: 0 0 20px;
}

.video-list li .videoWrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	background-color: #031 !important;
}

.video-list li .videoWrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.video-list h3 {
  margin:5px 0 20px;
  border-bottom:none;
  font-size:16px;
  line-height:1.6;
}

#gototop {
  width: 40px;
  bottom: 80px;
  right: 10px;
  position: fixed;
  z-index: 9999;
}

.logo-yt {
  display:block !important;
  width:80px !important;
  padding:2px 6px;
  background:#fff;
  border-radius:4px;
  margin:0 auto 6px !important;
}

.bnr {
  margin:0 0 40px;
  font-size:14px;
  line-height:1.6;
  text-align:center;
}

.bnr img {
  margin:0 0 5px;
}

@media screen and (min-width: 640px) {

.video-list {
  list-style-type:none;
  padding:0;
  margin:0;
  display:-webkit-box;
  display:-moz-box;
  display:-ms-box;
  display:-webkit-flexbox;
  display:-moz-flexbox;
  display:-ms-flexbox;
  display:-webkit-flex;
  display:-moz-flex;
  display:-ms-flex;
  display:flex;
  -webkit-box-lines:multiple;
  -moz-box-lines:multiple;
  -webkit-flex-wrap:wrap;
  -moz-flex-wrap:wrap;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}

.video-list li {
  float:left;
  width:510px;
  height:auto;
  margin:0 40px 10px 0;
}

.video-list li:nth-child(2n) {
  margin:0 0 40px 0;
}

.video-list li iframe {
  width:510px;
  height:287px;
}

.video-list h3 {
  border-bottom:none;
  font-size:20px;
}

#gototop {
  width: 80px;
  bottom: 30px;
  right: 30px;
  position: fixed;
  z-index: 9999;
}

.logo-yt {
  display:inline-block !important;
  width:auto !important;
  padding:5px 10px;
  background:#fff;
  border-radius:4px;
  margin-right:15px !important;
  vertical-align:bottom;
}

.bnr {
  margin:0 0 60px;
  font-size:18px;
  text-align:center;
}

.bnr img {
  margin:0 0 10px;
}

}


#anchor {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 20px;
}

#anchor ul {
  list-style-type:none;
  padding:0;
  margin:0;
}

#anchor li {
  width:auto;
  height:30px;
  margin:0 0 5px;
}

#anchor a {
  display:block;
  background-color:#ff9800;
  border-radius:4px;
  font-size:14px;
  line-height:30px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  text-decoration:none;
}

#anchor ul.col3,
#anchor ul.col5,
#anchor ul.col6 {
  list-style-type:none;
  padding:0;
  margin:0;
  display:flex;
  flex-wrap:wrap;
  justify-content: space-between;
}

#anchor ul.col3 li {
  width:32%;
  height:30px;
  margin:0 0 5px;
}

#anchor ul.col5 li {
  width:49%;
  height:30px;
  margin:0 0 5px;
}

#anchor ul.col6 li {
  width:49%;
  height:30px;
  margin:0 0 5px;
}

#anchor ul.col3 a,
#anchor ul.col5 a,
#anchor ul.col6 a {
  display:block;
  background-repeat:no-repeat;
  background-position:right 5px center;
  background-color:#0071bc;
  border-radius:4px;
  font-size:14px;
  line-height:30px;
  font-weight:bold;
  color:#;
  text-align:center;
  text-decoration:none;
}

#anchor ul.col3 a:hover,
#anchor ul.col5 a:hover,
#anchor ul.col6 a:hover {
  opacity:0.6;
}


@media screen and (min-width: 640px) {

#anchor {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 30px;
}

#anchor a {
  display:block;
  background:#ff9800;
  font-size:18px;
  line-height:50px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  text-decoration:none;
}

#anchor ul.col3 li {
  width:19%;
  height:50px;
}

#anchor ul.col5 li {
  width:19%;
  height:50px;
}

#anchor ul.col6 li {
  width:24%;
  height:50px;
}

#anchor ul.col3 a,
#anchor ul.col5 a,
#anchor ul.col6 a {
  display:block;
  font-size:18px;
  line-height:50px;
  background-image:url(../img/arrow_right_w.png);
  background-repeat:no-repeat;
  background-position:right 5px center;
}

}

.profile {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:10px 0;
  margin:0 0 20px;
  border-top:solid 1px #fff;
  border-bottom:solid 1px #fff;
}

.profile .right {
  float:right;
  width:100px;
  margin:0 0 5px 10px;
}

.profile .right img {
  margin-top:30px;
}

.profile p {
  margin-bottom:20px;
  font-size:12px;
  line-height:1.6;
}

.profile b {
  display:block;
  margin-bottom:6px;
  font-size:16px;
}

.image {
  width:auto;
  height:auto;
  overflow:hidden;
}

.image img {
  display:block;
  width:70%;
  margin:0 auto 20px;
}

.btn-big {
  width:auto;
  height:auto;
  overflow:hidden;
  margin:0 0 30px;
}

.btn-big a {
    display: block;
    clear: both;
    width: auto;
    height: auto;
    padding:10px;
    background-color: #fb2818;
    margin: 0 auto;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    line-height: 1.6;
    text-align: center;
    text-decoration:none;
}

.btn-big a:hover {
  background-color: #f59992;
}

@media screen and (min-width: 640px) {

.profile {
  padding:20px;
  margin:0 0 60px;
}

.profile .right {
  float:right;
  width:200px;
  margin:0 0 0 20px;
}

.profile p {
  font-size:16px;
  line-height:1.6;
}

.profile b {
  font-size:18px;
}

.image {
  width:auto;
  height:auto;
  overflow:hidden;
}

.image img {
  display:block;
  width:400px;
  margin:0 auto 30px;
}

.btn-big {
  margin:0 0 50px;
}

.btn-big a {
    display: block;
    clear: both;
    width: 500px;
    height: auto;
    padding:10px;
    background-color: #fb2818;
    margin: 0 auto;
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    line-height: 1.6;
    text-align: center;
    text-decoration:none;
}

}


.relate {
  width:auto;
  height:auto;
  overflow:hidden;
}

.relate ul {
  padding:0;
  display:flex;
  justify-content: space-around;
  flex-wrap:wrap;
}

.relate li {
  width:45%;
  text-align:center;
  margin:0 0 15px;
}

.relate li:last-child img {
  width:30%;
  text-align:center;
  margin:0 0 15px;
}

.relate b {
  display:block;
  margin:0 0 5px;
  font-size:14px;
  color:#fff;
}

.relate img {
  border-radius:6px;
}

@media screen and (min-width: 640px) {

.relate {
  width:auto;
  height:auto;
  overflow:hidden;
}

.relate ul {
  display:flex;
  justify-content: space-around;
}

.relate li {
  width:fit-content;
  text-align:center;
}

.relate li:last-child img {
  width:auto;
  text-align:center;
  margin:0;
}

.relate b {
  display:block;
  margin:0 0 5px;
  font-size:16px;
  color:#fff;
}

.relate img {
  border-radius:6px;
}

}


.pc-center {
  margin-top:0;
  text-align:left;
}

@media screen and (min-width: 640px) {

.pc-center {
  text-align:center;
}

}


#lead h2 {
  font-size:20px;
  line-height:1.6;
  color:#bf8;
  text-align:center;
}

.kikaku b {
  font-size:16px;
  line-height:1.6;
}

@media screen and (min-width: 640px) {

#lead h2 {
  font-size:36px;
}

.kikaku b {
  font-size:18px;
  line-height:1.8;
}

}


.tokushu table {
  width:100%;
  margin:0 0 30px;
}

.tokushu th {
  width:30%;
  padding:10px;
  background:#0074a7;
  font-size:16px;
  line-height:1.6;
  color:#fff;
}

.tokushu td {
  padding:10px;
  background:#fff;
  font-size:16px;
  line-height:1.6;
}

.tokushu .box {
  width:auto;
  height:auto;
  padding:15px 10px 5px;
  background:#fff;
  border-radius:4px;
  color:# !important;
  text-align:center;
}

.tokushu .box p {
  font-weight:bold;
  color:# !important;
}

.tokushu .box span {
  font-weight:normal !important;
}

.tokushu .box img {
  display:block !important;
  width:240px !important;
  height:auto !important;
  margin:0 auto 5px !important;
}

.tokushu .box p a {
  color:#b90006
}

@media screen and (min-width: 640px) {

.tokushu table {
  margin:0 0 50px;
}

.tokushu th {
  width:20%;
  padding:20px;
  background:#0074a7;
  font-size:16px;
  line-height:1.6;
  color:#fff;
}

.tokushu td {
  padding:20px;
  background:#fff;
  font-size:16px;
  line-height:1.6;
}

.tokushu .box {
  padding:15px 15px 5px;
}

.tokushu .box .btn a {
  width:400px;
  height:50px;
  font-size:30px;
  line-height:50px;
}

}


h5 {
  font-size:14px;
  line-height:1.6;
  text-align:center;
  margin:0.5em 0 1.2em;
}

@media screen and (min-width: 640px) {

h5 {
  font-size:18px;
}

}


.swiper-button-next, .swiper-button-prev {
  color: #bf8 !important;
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: #bf8 !important;
}

@media screen and (min-width: 640px) {

.inner {
  display:block;
  width:900px;
  margin:0 auto;
}

.swiper-wrapper {
  padding:0 0 30px;
}

.swiper-slide img {
  height: auto;
  width: 100%;
}

}

@media screen and (max-width: 640px) {

.swiper-pagination {
  display:none !important;
}

}


.translate-wrap {
  width:auto;
  height:auto;
  margin:0 10px;
}

.goog-te-gadget img {
  width:auto !important;
}

@media screen and (min-width: 640px) {

.translate-wrap {
  width:auto;
  margin:10px 190px 0 190px;
}

}


#dantai h2 {
  padding:8px;
  background:#;
  font-size:18px;
  color:#fff;
}

#dantai h2.h2-brd {
  background:none;
  border-top:solid 2px #;
  border-bottom:solid 2px #;
  color:#;
}

#dantai h3 {
  padding:8px;
  margin:0 0 15px;
  border-bottom:solid 1px #b90006
  font-size:18px;
  color:#b90006
}

@media screen and (min-width: 640px) {

#dantai h2 {
  padding:10px;
  background:#;
  font-size:24px;
  color:#fff;
}

#dantai h2.h2-brd {
  
}

#dantai h3 {
  padding:10px;
  font-size:20px;
}

}


.cta ul {
  list-style-type:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 10px;
}

.cta li {
  width:49%;
  height:auto;
  margin:0 0 8px;
}

.cta li a {
  display: block;
  height:40px;
  background: #ff5722;
  border-radius: 4px;
  font-size: 16px;
  line-height: 40px;
  font-weight:bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.cta li a.bab {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 5px center;
  background-color: #ff5722;
}

.cta li a.store {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 5px center;
  background-color: #795548;
}

.cta li a.amazon {
  background: url(https://webhiden.jp/wp/wp-content/uploads/btn_amazon.png) no-repeat center center;
  background-color: #fff;
  background-size: contain;
  border: solid 2px #ff9900;
  box-sizing: border-box;
}

.cta li a.rakuten {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 5px center;
  background-color: #bf0;
}

@media screen and (min-width: 640px) {

.cta ul {
  display:flex;
  flex-wrap:inherit;
  justify-content:space-around;
  width:auto;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 0 10px;
}

.cta li {
  width:24%;
  height:auto;
  margin:0;
}

.cta li a {
  display: block;
  height:60px;
  background: #ff5722;
  border-radius: 14px;
  font-size: 18px;
  line-height: 60px;
  font-weight:bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.cta li a:hover {
  opacity:0.6;
}

.cta li a.bab {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 10px center;
  background-color: #ff5722;
}

.cta li a.store {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 10px center;
  background-color: #795548;
}

.cta li a.amazon {
  background: url(https://webhiden.jp/wp/wp-content/uploads/btn_amazon.png) no-repeat center center;
  background-color: #fff;
  border: solid 2px #ff9900;
  box-sizing: border-box;
}

.cta li a.rakuten {
  background: url(https://webhiden.jp/wp/wp-content/uploads/arrow_right_w.png) no-repeat right 10px center;
  background-color: #bf0;
}

}


.catch h2 {
  font-size:22px;
  text-align:center;
}

@media screen and (min-width: 640px) {

.catch h2 {
  font-size:36px;
}

}


.sp {
  display:block;
}

.pc {
  display:none;
}

@media screen and (min-width: 640px) {

.sp {
  display:none;
}

.pc {
  display:block;
}

}


h1 {
  font-size:20px;
  color:#b90006;
  text-align:center;
}

@media screen and (min-width: 640px) {

h1 {
  font-size:34px;
}

}


.apply-wrap {
  margin: 30px 0;
}

.apply-btn {
  display: block;
  width: 300px;
  height: 60px;
  background-color:#b90006;
  color: #fff;
  border-radius: 100px;
  margin: 0 auto;
  text-decoration: none;
  font-size: 22px;
  line-height: 60px;
  font-weight:bold;
  text-align: center;
}

.apply-btn:hover {
  opacity:0.6;
  color:#fff;
}

.apply-wrap b {
  display:block;
  margin:10px 0;
  font-size:18px;
  text-align:center;
}

@media screen and (min-width: 640px) {

.apply-wrap {
  margin: 50px 0;
}

.apply-btn {
  width: 600px;
  height: 80px;
  color: #fff;
  border-radius: 100px;
  text-decoration: none;
  font-size: 28px;
  line-height: 80px;
  text-align: center;
}

.apply-wrap b {
  font-size:22px;
  text-align:center;
}

}

.image-right {
  display:block;
  width:150px;
  margin:0 auto 15px;
}

@media screen and (min-width: 640px) {

.image-right {
  float:right;
  width:150px;
  margin-right:100px;
}

}


.contact {
  width:auto;
  height:auto;
  overflow:hidden;
  padding:20px 0;
  font-weight:bold;
  text-align:center;
}

.contact b {
  display:block;
  font-size:20px;
  color:#4387bd;
}


.map {
  width:100%;
  aspect-ratio: 1 / 1;
}

.map iframe {
  width:100%;
  height:100%;
}

@media screen and (min-width: 640px) {

.map {
  width:100%;
  height:600px;
  aspect-ratio: inherit;
}

}


.link {
  margin:1em 0 0;
  font-size:20px;
  text-align:center;
}


/* 本講習でフォーカスする「4つの柱」：既存LPのCSS末尾に追記 */
.four-pillars {
  box-sizing: border-box;
  width: 100%;
  margin: 30px 0 45px;
  color: #191919;
}
.four-pillars *, .four-pillars *::before, .four-pillars *::after { box-sizing: border-box; }
.four-pillars .four-pillars-title {
  margin: 0 0 12px;
  padding: 15px 22px;
  background: #241916;
  color: #fff;
  font-size: 23px;
  font-weight: normal;
  line-height: 1.4;
}
.four-pillars .four-pillars-lead {
  
}
.four-pillars-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 225px;
  gap: 25px;
}
.four-pillars-items { display: grid; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 12px; }
.four-pillars .pillar-item { min-width: 0; }
.four-pillars .pillar-item h3 {
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  color: #e60012;
  font-family: 'M+ 1p regular', sans-serif;
  font-size: 21px;
  font-weight: 900;
  line-height: 1.45;
}
.four-pillars .pillar-item p {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}
.four-pillars-photos { display: grid; grid-template-rows: repeat(3, 1fr); gap: 15px; }
.four-pillars-photos img {
  display: block;
  width: 100%;
  height: 150px;
  object-fit: cover;
}

@media (max-width: 767px) {
  .four-pillars { margin: 25px 0 35px; }
  .four-pillars .four-pillars-title { padding: 12px 14px; font-size: 20px; }
  .four-pillars .four-pillars-lead { margin: 0 5px 22px; font-size: 15px; }
  .four-pillars-grid { display: block; padding: 0 5px; }
  .four-pillars-items { display: block; }
  .four-pillars .pillar-item { margin-bottom: 24px; }
  .four-pillars .pillar-item h3 { font-size: 19px; margin-bottom: 8px; }
  .four-pillars .pillar-item p { font-size: 15px; line-height: 1.7; }
  .four-pillars-photos { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; gap: 8px; margin: 0 0 25px; }
  .four-pillars-photos img { height: auto; aspect-ratio: 3 / 2; }
  .four-pillars .pillar-item-last { padding: 0 5px; margin-top: 0; }
}



/* 開催概要：テキスト＋Googleマップ */

.overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 4fr);
  gap: 25px;
  align-items: start;
  margin: 0 0 30px;
}

.overview-text {
  min-width: 0;
}

.overview-text p {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 20px;
  overflow-wrap: anywhere;
}

.overview-map {
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 5;
}

.overview-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* スマートフォン */
@media screen and (max-width: 767px) {

  .overview-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .overview-text p {
    font-size: 14px;
    line-height: 1.8;
  }

  .overview-map {
    aspect-ratio: 4 / 3;
  }

}



/* 田村装備開発株式会社 */

.tamura-company .company-body {
  display: flow-root;
}

.tamura-company .company-image {
  float: right;
  display: block;
  width: 38%;
  max-width: 380px;
  height: auto;
  margin: 0 0 20px 25px;
}

.tamura-company .company-body p {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 20px;
}

/* スマートフォン */
@media screen and (max-width: 639px) {

  .tamura-company .company-image {
    float: none;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 20px;
  }

  .tamura-company .company-body p {
    font-size: 14px;
    line-height: 1.8;
  }

}



/* =====================================
   田村装備開発 関連サイト
===================================== */

.tamura-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 50px;
  margin: 40px 0;
}

.tamura-link-item {
  min-width: 0;
  text-align: center;
}

.tamura-link-item h3 {
  margin: 0 0 6px;
  padding: 0;
  border: none;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  color: #0071bc;
}

.tamura-link-url {
  margin: 0 0 16px;
  font-size: 18px;
  line-height: 1.5;
  color: #222;
  overflow-wrap: anywhere;
}

.tamura-link-item a {
  display: block;
  text-decoration: none;
}

.tamura-link-item img {
  display: block;
  width: 100%;
  height: auto;
  box-shadow: 10px 12px 20px rgba(0, 0, 0, 0.15);
  transition: opacity 0.3s ease;
}

.tamura-link-item a:hover img {
  opacity: 0.75;
}

/* スマートフォン */
@media screen and (max-width: 639px) {

  .tamura-links {
    grid-template-columns: 1fr;
    gap: 35px;
    margin: 30px 0;
  }

  .tamura-link-item h3 {
    font-size: 19px;
  }

  .tamura-link-url {
    font-size: 14px;
    margin-bottom: 12px;
  }

}



/* =====================================
   セミナー申込ボタン＋案内文
===================================== */

.seminar-apply {
  margin: 40px 0;
}

.seminar-apply-button {
  text-align: center;
  margin-bottom: 20px;
}

.seminar-apply-button a {
  display: inline-block;
  box-sizing: border-box;
  width: 460px;
  max-width: 100%;
  padding: 12px 20px;
  background: #e60012;
  border-radius: 18px;
  font-size: 34px;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.seminar-apply-button a:hover {
  color: #fff;
  opacity: 0.75;
}

.seminar-apply-notes {
  padding: 0 5px;
}

.seminar-apply-notes p {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
}

/* スマートフォン */
@media screen and (max-width: 639px) {

  .seminar-apply {
    margin: 30px 0;
  }

  .seminar-apply-button a {
    width: 100%;
    padding: 14px 10px;
    border-radius: 12px;
    font-size: clamp(20px, 6vw, 28px);
  }

  .seminar-apply-notes p {
    font-size: 12px;
    line-height: 1.7;
  }

}



/* =====================================
   追従申込ボタン
===================================== */

#floating-apply {
  display: none;
  position: fixed;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 460px;
  max-width: calc(100% - 30px);
  z-index: 9999;
}

#floating-apply a {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 12px 20px;
  background: #e60012;
  border-radius: 18px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.25);
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

#floating-apply a:hover {
  color: #fff;
  opacity: 0.8;
}

/* スマートフォン */
@media screen and (max-width: 639px) {

  #floating-apply {
    bottom: 20px;
    width: calc(100% - 30px);
  }

  #floating-apply a {
    padding: 12px 10px;
    border-radius: 12px;
    font-size: clamp(20px, 6vw, 26px);
  }

}

