@charset "UTF-8";
/*----------------------------------------

	index CSS

	- common
	- header
	- content

-----------------------------------------*/

/*----------------------------------------
	common
-----------------------------------------*/
.bg-box {
	top: -10px;
}

/*----------------------------------------
	header
-----------------------------------------*/
.header {
	height: 96px;
}
.header-logo {
	padding: 5px 0 0 6px;
}
.header-logo a {
	width: 145px;
}
@media print, screen and (min-width:768px) {
	.header {
		height: 150px;
	}
	.header-logo {
		padding: 12px 0 8px 46px;
	}
	.header-logo a {
		max-width: 260px;
		width: calc(100% - 700px);
	}
	.header-about {
		position: relative;
		overflow: hidden;
		width: 84px;
		height: 62px;
		border-radius: 31px;
		background: rgba(255, 255, 255, 1);
		transition: width 0.6s, height 0.6s, border-radius 0.6s;
		transition-delay: 0.4s;
		cursor: pointer;
	}
	.header-about::before {
		content: '';
		position: absolute;
		top: 18px;
		right: 23px;
		width: 40px;
		height: 30px;
		background: url("../img/cmn/header_about_bg01.png") center center no-repeat;
		transition: opacity 0.4s;
	}
	.header-about:hover::before {
		opacity: 0.6;
	}
	.header-about.is-active {
		width: 640px;
		height: 160px;
		border-radius: 8px;
		transition-delay: 0s;
	}
	.header-about_txt {
		overflow: hidden;
		visibility: hidden;
		opacity: 0;
		transition: opacity 0.4s, visibility 0.4s;
	}
	.header-about.is-active .header-about_txt {
		width: auto;
		visibility: visible;
		opacity: 1;
		transition-delay: 0.6s;
	}
	.header-about_txt > span {
		background: none;
		font-weight: 500;
	}
	.header-about_supervision {
		display: none;
	}
}

/*----------------------------------------
	content
-----------------------------------------*/
.name{
	font-size: 1.5rem;
}
.content {
	margin: 0 10px;
}
@media print, screen and (min-width:768px) {
	.content {
		margin: 0 40px;
		padding: 0 0 0 4px;
	}
}

/* head */
.content-head {
	margin: 0 0 20px;
}
.content-head_txt {
	padding: 0 0 34px;
	background: url("../img/cmn/c_content_bg01.png") right bottom 20px no-repeat;
	background-size: 118px auto;
}
.content-head_data {
	margin: 0 0 15px;
	font-size: 1.2rem;
	font-weight: 700;
}
.content-head_tag {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 4px;
	font-size: 1.1rem;
	line-height: 1;
}
.content-head_tag li {
	margin: 0 3px 3px 0;
	padding: 5px 12px;
	border-radius: 50px;
	background: #000;
}
.content-head_title {
	overflow: hidden;
}
.content-head_title > div {
	margin: 0 20px;
}
.content-head_title > div > span {
	background: #fff;
	filter: drop-shadow(-20px 0px 0px #fff) drop-shadow(20px 0px 0px #fff);
}
body.isIE .content-head_title > div > span {
	filter: none;
	box-shadow: -20px 0px 0px 0 #fff, 20px 0px 0px 0 #fff;
}
.content-head_title > div.size01 {
	font-size: 2.9rem;
	font-weight: 700;
	line-height: 1.8;
}
.content-head_title > div.size01 > span {
	padding: 2px 0;
}
.content-head_title > div.size02 {
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 2.3;
}
.content-head_title > div.size02 > span {
	padding: 5px 0;
}
.content-head_title > div.size03 {
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 3;
}
.content-head_title > div.size03 > span {
	padding: 7px 0;
}
.content-head_title > div:first-child {
	margin: 0;
	padding: 0 20px;
	text-indent: -20px;
}
.content-head_title > div:first-child > span {
	padding-left: 15px;
	border-left: 5px solid #000;
}
.content-head_img figure img {
	border-radius: 16px 16px 0 16px;
}
.content-head_img figcaption {
	margin: 6px 0 0;
	font-size: 1.2rem;
	line-height: 1.5;
}
@media print, screen and (min-width:768px) {
	.content-head {
		display: flex;
		flex-direction: row-reverse;
		margin: 0 0 30px;
		background: url("../img/cmn/c_content_bg01.png") right 0 bottom 26px no-repeat;
		background-size: 236px auto;
	}
	.content-head_img {
		width: 42.4%;
		margin: 0 40px 0 0;
	}
	.content-head_img figcaption {
		margin: 8px 0 0;
	}
	.content-head_txt {
		align-self: center;
		flex: 1;
		padding: 0;
		background: none;
	}
	.content-head_data {
		margin: 0 0 8px;
		font-size: 1.6rem;
		line-height: 1.2;
	}
	.content-head_tag {
		font-size: 1.2rem;
	}
	.content-head_tag li {
		padding: 6px 12px;
	}
	.content-head_title {
		margin: 0 0 14px;
	}
	.content-head_title > div {
		margin: 0 30px;
	}
	.content-head_title > div > span {
		filter: drop-shadow(-30px 0px 0px #fff) drop-shadow(30px 0px 0px #fff);
	}
	body.isIE .content-head_title > div > span {
		filter: none;
		box-shadow: -30px 0px 0px 0 #fff, 30px 0px 0px 0 #fff;
	}
	.content-head_title > div.size01 {
		font-size: 4.8rem;
		line-height: 1.9;
	}
	.content-head_title > div.size01 > span {
		padding: 8px 0;
	}
	.content-head_title > div.size02 {
		font-size: 2.8rem;
		line-height: 2.5;
	}
	.content-head_title > div.size02 > span {
		padding: 12px 0;
	}
	.content-head_title > div.size03 {
		font-size: 1.6rem;
		line-height: 3.8;
	}
	.content-head_title > div.size03 > span {
		padding: 16px 0;
	}
	.content-head_title > div:first-child {
		margin: 0;
		padding: 0 30px;
		text-indent: -30px;
	}
	.content-head_title > div:first-child > span {
		padding-left: 22px;
		border-left: 8px solid #000;
	}
}

/* body */
.content-body_lead {
	margin: 0 0 35px;
	line-height: 1.75;
}
.content-body_lead a:link,
.content-body_lead a:visited {
	color: #0491ff;
}
.content-body_lead .notes {
	font-size: 1.2rem;
}
.content-body_mokuji {
	margin: 0 0 40px;
	border: 2px solid #000;
	background: #fff;
}
.content-body_mokuji dl {
	padding: 14px 18px 20px;
}
.content-body_mokuji dt {
	margin: 0 0 2px;
	font-size: 1.5rem;
	font-weight: 700;
}
.content-body_mokuji dd li {
	margin: 0 0 12px;
	line-height: 1.75;
}
.content-body_mokuji dd li ul {
	margin: 12px 0 0;
	padding-left: 2em;
}
.content-body_mokuji dd a {
	padding: 0 0 4px;
	border-bottom: 1px solid #0491ff;
	color: #0491ff;
}
.content-body_detail {
	padding: 30px 20px 55px;
	border-radius: 16px;
	background: #fff;
	line-height: 1.75;
}
.content-body_detail section {
	overflow: hidden;
	margin: 30px 0 0;
}
.content-body_detail section:first-child {
	margin-top: 0;
}
.content-body_detail h1 {
	overflow: hidden;
	margin: 0 0 10px;
	padding: 0 18px 4px 18px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2;
	text-indent: -18px;
}
.content-body_detail h1 > span {
	padding: 6px 0 6px 18px;
	background: #ffcc00;
	filter: drop-shadow(-18px 0px 0px #ffcc00) drop-shadow(18px 0px 0px #ffcc00);
}
body.isIE .content-body_detail h1 > span {
	filter: none;
	box-shadow: -18px 0px 0px 0 #ffcc00, 18px 0px 0px 0 #ffcc00;
}
.content-body_detail h2 {
	font-weight: 700;
}
.content-body_detail p,
.content-body_detail figure,
.content-body_detail ul,
.content-body_detail ol {
	margin-bottom: 24px;
}
.content-body_detail figure {
	margin-top: 10px;
}
.content-body_detail figcaption {
	margin: 8px 0 0;
	font-size: 1.2rem;
	line-height: 1.5;
}
.content-body_detail dt {
	font-weight: bold;
}
.content-body_detail .notes {
	font-size: 1.2rem;
}
.content-body_detail .kome {
	font-size: 0.8rem;
	vertical-align: text-top;
}
.content-body_detail .abreast {
	display: flex;
	flex-direction: column;
}
.content-body_detail .abreast.right,
.content-body_detail .abreast.bottom,
.content-body_detail .abreast.bottomleft,
.content-body_detail .abreast.bottomright {
	flex-direction: column-reverse;
}
.content-body_detail .img-center {
	overflow: hidden;
}
.content-body_detail .img-center > span {
	display: block;
	margin: 0 -30%;
}
.content-body_detail .img-wrap img {
	border: 1px solid #cfcfcf;
}
.content-body_detail .cap-center figcaption {
	text-align: center;
}
.content-body_detail .img-center > span {
	margin: 0;
}
.content-body_detail .txtarea p,
.content-body_detail .txtarea ul {
	margin-bottom: 0;
}
.content-body_detail hr {
	border: none;
	border-bottom: 2px solid #ffcc00;
	margin: 20px 0 50px;
}
.content-body_detail a:link,
.content-body_detail a:visited {
	color: #0491ff;
}
.content-body_detail .box01 {
	overflow: hidden;
	margin-bottom: 24px;
	padding: 12px 20px 0 15px;
	border-left: 5px solid #ffcc00;
	background: #f9f9f9;
}
.content-body_detail .box01 dt {
	font-weight: 500;
}
.content-body_detail .box01 dd {
	margin-bottom: 16px;
}
.content-body_detail .profile > figure {
	width: 44.75%;
	margin: 0 auto 22px;
}
.content-body_detail .profile > div > dl > dt {
	font-weight: 700;
}
.content-body_detail .profile > div > dl > dd {
	margin-bottom: 12px;
}
.content-body_detail .profile > div > dl > dd a {
	color: #0491ff;
}
.content-body_detail .profile > div > dl > dd ol {
	counter-reset: profile;
	list-style-type: none;
}
.content-body_detail .profile > div > dl > dd ol li {
	display: flex;
}
.content-body_detail .profile > div > dl > dd ol li:before {
	width: 1em;
	counter-increment: profile;
	content: counters(profile, ",") ". ";
}
.content-body_detail .profile > div > dl > dd ol li span {
	flex: 1;
}
.content-body_detail .release {
	margin: 30px 0 0;
}
.content-body_detail .source {
	text-align: right;
}
.content-body_detail .video {
	margin-top: 10px;
	margin-bottom: 24px;
}
.content-body_detail .video > video {
	display: block;
	width: 100%;
	height: auto;
	outline: none;
	background: #eee;
}
.content-body_detail .video > p {
	margin: 8px 0 0;
	font-size: 1.2rem;
	line-height: 1.5;
}
.content-body_detail .btn-01 {
	max-width: 726px;
	margin: 50px auto 0;
}
.content-body_detail .btn-01 > a {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 50px;
	padding: 5px 40px;
	border: 2px solid #e2e1e1;
	border-radius: 100px;
	background: #f8f8f8;
	color: #000;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}
.content-body_detail .btn-01 > a::after {
	content: '';
	position: absolute;
	top: calc(50% - 3px);
	right: 20px;
	width: 6px;
	height: 6px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #0491ff #0491ff transparent transparent;
	transform: rotate(45deg);
}
.content-body_detail .btn-01 > a > span {
	position: relative;
	padding-left: 15px;
}
.content-body_detail .btn-01 > a > span::before,
.content-body_detail .btn-01 > a > span::after {
	content: '';
	position: absolute;
	top: calc(0.6em - 2px);
	left: 0;
	width: 4px;
	height: 4px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #000 #000 transparent transparent;
	transform: rotate(45deg);
}
.content-body_detail .btn-01 > a > span::after {
	left: 4px;
}
.content-body_back {
	margin: 30px 0 0;
	font-size: 1.4rem;
}
.content-body_back > a {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 90%;
	height: 50px;
	margin: 0 auto;
	padding: 0 20px;
	border-radius: 100px;
	background: #fff;
	font-weight: 700;
	text-align: center;
}
.content-body_back > a::before {
	content: '';
	position: absolute;
	top: calc(50% - 6px);
	left: 30px;
	width: 10px;
	height: 10px;
	border-width: 2px 0 0 2px;
	border-style: solid;
	border-color: #0491ff transparent transparent #0491ff;
	transform: rotate(-45deg);
}
@media print, screen and (min-width:768px) {
	.content-body_lead {
		line-height: 2;
	}
	.content-body_lead a:link,
	.content-body_lead a:visited {
		transition: opacity 0.2s;
	}
	.content-body_lead a:hover,
	.content-body_lead a:active {
		opacity: 0.6;
	}
	.content-body_mokuji dl {
		display: flex;
		padding: 32px 46px 40px;
	}
	.content-body_mokuji dt {
		margin: 0 58px 0 0;
		font-size: 2.0rem;
	}
	.content-body_mokuji dd {
		display: flex;
		flex: 1;
		padding: 2px 0 0;
	}
	.content-body_mokuji dd ul {
		flex: 1;
		padding: 0 10px 0 0;
	}
	.content-body_mokuji dd ul li a:link,
	.content-body_mokuji dd ul li a:visited {
		transition: opacity 0.2s;
	}
	.content-body_mokuji dd ul li a:hover,
	.content-body_mokuji dd ul li a:active {
		opacity: 0.6;
	}
	.content-body_detail {
		padding: 55px 80px 90px;
		line-height: 2;
	}
	.content-body_detail section {
		margin: 40px 0 0;
	}
	.content-body_detail h1 {
		margin: 0 0 35px;
		padding: 0 20px 0 20px;
		font-size: 2.4rem;
		line-height: 1.85;
		text-indent: -20px;
	}
	.content-body_detail h1 > span {
		padding: 6px 0 6px 20px;
		filter: drop-shadow(-20px 0px 0px #ffcc00) drop-shadow(20px 0px 0px #ffcc00);
	}
	body.isIE .content-body_detail h1 > span {
		filter: none;
		box-shadow: -20px 0px 0px 0 #ffcc00, 20px 0px 0px 0 #ffcc00;
	}
	.content-body_detail p,
	.content-body_detail figure,
	.content-body_detail ul,
	.content-body_detail ol {
		margin-bottom: 32px;
	}
	.content-body_detail figure + figure {
		margin-top: 68px;
	}
	.content-body_detail figcaption {
		margin: 16px 0;
	}
	.content-body_detail .notes {
		display: block;
	}
	.content-body_detail .kome {
		font-size: 0.8rem;
		vertical-align: text-top;
	}
	.content-body_detail .abreast-left,
	.content-body_detail .abreast-right {
		display: block;
	}
	.content-body_detail .abreast-left::after,
	.content-body_detail .abreast-right::after {
		content: "";
		display: block;
		clear: both;
	}
	.content-body_detail .abreast-left > .abreast-img {
		float: left;
		width: 48%;
		margin: 0 40px 0 0;
	}
	.content-body_detail .abreast-right > .abreast-img {
		float: right;
		width: 48%;
		margin: 0 0 0 40px;
	}
	.content-body_detail .abreast {
		display: block;
	}
	.content-body_detail .abreast::after {
		content: "";
		display: block;
		clear: both;
	}
	.content-body_detail .abreast-img {
		width: calc(50% - 20px);
	}
	.content-body_detail .abreast-imgpic3 {
		width: calc(32%);
	}
	.content-body_detail .abreast.left .abreast-img,
	.content-body_detail .abreast.topleft .abreast-img,
	.content-body_detail .abreast.bottomleft .abreast-img {
		float: left;
		margin: 0 40px 0 0;
	}
	.content-body_detail .abreast.right .abreast-img,
	.content-body_detail .abreast.topright .abreast-img,
	.content-body_detail .abreast.bottomright .abreast-img {
		float: right;
		margin: 0 0 0 40px;
	}
	.content-body_detail .abreast.imgOnly {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		flex-direction: inherit;
	}
	.content-body_detail .abreast.imgOnly::after {
		content: none;
	}
	.content-body_detail .abreast.txtOnly {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		flex-direction: inherit;
	}
	.content-body_detail .abreast.txtOnly .abreast-txt {
		width: calc(50% - 20px);
	}
	.content-body_detail .img-center > span {
		margin: 0;
	}
	.content-body_detail hr {
		margin: 48px 0 80px;
	}
	.content-body_detail a:link,
	.content-body_detail a:visited {
		transition: opacity 0.2s;
	}
	.content-body_detail a:hover,
	.content-body_detail a:active {
		opacity: 0.6;
	}
	.content-body_detail .box01 {
		margin-bottom: 32px;
		padding: 24px 40px 0 35px;
	}
	.content-body_detail .box01 dd {
		margin-bottom: 32px;
	}
	.content-body_detail .profile {
		display: flex;
	}
	.content-body_detail .profile > figure {
		width: 28.8%;
		margin: 0 40px 0 0;
	}
	.content-body_detail .profile > div {
		flex: 1;
	}
	.content-body_detail .profile > div > p {
		margin-bottom: 30px;
	}
	.content-body_detail .profile > div > dl > dd {
		margin-bottom: 30px;
	}
	.content-body_detail .release {
		margin: 35px 0 0;
	}
	.content-body_detail .video {
		margin-bottom: 32px;
	}
	.content-body_detail .video > p {
		margin: 16px 0;
	}
	.content-body_detail .btn-01 {
		margin-top: 65px;
	}
	.content-body_detail .btn-01 > a {
		min-height: 60px;
		padding: 8px 60px;
	}
	.content-body_detail .btn-01 > a::after {
		right: 40px;
	}
	.content-body_back {
		margin: 40px 0 0;
	}
	.content-body_back > a {
		width: 280px;
		margin: 0 auto 0 0;
		transition: opacity 0.2s;
	}
	.content-body_back > a:hover {
		opacity: 0.6;
	}
}

.pdf-btn{
	text-align: center;
}
.pdf-btn .btn{
      position: relative;
    overflow: hidden;
    text-decoration: none;
    display: inline-block;
    border: 1px solid #fb9a4a;
    padding: 15px 30px;
    text-align: center;
    max-width: 300px;
    width: 100%;
    border-radius: 300px !important;
    outline: none;
    transition: ease .2s;
		background-color: #fff;
}

.pdf-btn .btn::after{
position: absolute;
  content: '';
  right: 20px;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  display: block;
  width: 15px;
  height: 15px;
  background-image: url(../../img/pdf.svg);
  background-size: contain;
  background-repeat: no-repeat;
	z-index: 4;
}

.pdf-btn .btn span {
	position: relative;
	z-index: 3;
	color:#fb9a4a;
	font-weight: bold;
}
.pdf-btn .btn:hover{opacity: 1;}
.pdf-btn .btn:hover span{
	color:#fff;
}

.bgleft:before {
 	content: '';
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
 	background:#fb9a4a;
 	width: 100%;
	height: 100%;
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}

.bgleft:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}

.mt35{
	margin-top: 35px;
}

.imgrow > div img {
    display: block;
    margin-top: 20px;
}
@media print, screen and (min-width:768px) {
    .imgrow > div {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: -20px;
    }
    .imgrow > div img {
        width: 48%;
    }
}
