@charset "UTF-8";

/*========================================================================

  base

========================================================================*/

/*  section
------------------------------------------------*/

.base-section.tokken_red {
	background: #F2E4E4;
}
.base-section.tokken_pd125 > div {
    padding-top: 125px;
}
.base-section.tokken_red .base-h1text.underline > div {
    border-bottom: 1px solid #D8D8D8;
}

@media (max-width: 767px) {
	.base-section.tokken_red > div {
	    padding: 40px 0;
	}
}

/*  link-none
------------------------------------------------*/

.link-none a {
   pointer-events: none;
}

/*  is-sp is-pc
------------------------------------------------*/

@media (min-width: 768px) {
	div[class^=tokken_] .is-sp {
		display: none;
	}
}

@media (max-width: 767px) {
	div[class^=tokken_] .is-pc {
		display: none;
	}
}

/*  margin
------------------------------------------------*/

.tokken-mt-middle:not(:first-child) {
	margin-top: 65px !important;
}
@media (max-width: 767px) {
	.tokken-mt-middle:not(:first-child) {
		margin-top: 30px !important;
	}
}

.tokken_mt30:not(:first-child) {
	margin-top: 30px !important;
}
@media (max-width: 767px) {
	.tokken_mt30:not(:first-child) {
		margin-top: 30px !important;
	}
}

/*  plugin
------------------------------------------------*/

.skeleton {
display: none !important;
}
.is-hidden {
display: none !important;
}

/*  tokken_slider
========================================================================*/

.tokken_slider {
	position: relative;
}
.tokken_slider h1 {
    font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", "YuGothic", "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", "Helvetica Neue", "arial", sans-serif;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
    color: #fff;
    font-size: 36px;
    text-align: center;
    width: 100%;
    font-weight: bold;
    letter-spacing: 0.054em;
    margin: 25px 0 0;
}
.tokken_slider .inner {
	max-width: 1158px;
	margin: auto;
}
.tokken_slider img {
	width: 100%;
	height: 634px;
	object-fit: cover;
}

@media (max-width: 767px) {
	.tokken_slider h1 {
		font-size: 20px;
		letter-spacing: 0.035em;
		margin: 0;
	}
	.tokken_slider img {
		width: 100%;
		height: 435px !important;
		object-fit: cover;
	}	
}

.tokken_slider .slick-dots li {
    margin: 0 3px;
}
.tokken_slider .slick-dots li button:before {
    font-size: 12px;
}

@media (max-width: 767px) {
	.tokken_slider .slick-dots li {
	    margin: 0;
	}
	.tokken_slider .slick-dots li button:before {
	    font-size: 6px;
	    width: 18px;
	    height: 18px;
	}
}

/*  panel
------------------------------------------------*/

.base-panel.tokken .tag {
	position: relative;
}
.base-panel.tokken .tag ul {
	display: flex;
	flex-wrap: wrap;
	margin: 20px -3px -3px;
	padding: 10px 0;
	border-top: 1px dotted #D8D8D8;
	border-bottom: 1px dotted #D8D8D8;
}
.base-panel.tokken .tag li {
	margin: 3px;
}
.base-panel.tokken .tag li a {
	display: inline-block;
	padding: 3px 10px 2px;
	background: #E3E6E9;
	color: #83838C;
	font-weight: bold;
	border-radius: 15px;
}
@media (min-width: 768px) {
	.base-panel.tokken .tag li a:hover {
		color: #242424;
	}
}
@media all and (-ms-high-contrast:none){
	.base-panel.tokken .tag li a {
		padding-top: 5px;
	}
}
@media (max-width: 767px) {
	.base-panel.tokken .tag ul {
		font-size: 12px;
	}
}

.base-panel.tokken .text:not(:first-child) {
    margin-top: 19px;
}

/*  news
------------------------------------------------*/

.tokken-news {
	margin-top: 20px;
}
.tokken-news ul {
	border-top: 1px solid #DDDDDD;
}
.tokken-news li {
	border-bottom: 1px solid #DDDDDD;
}
.tokken-news a {
	position: relative;
	display: flex;
	align-items: baseline;
	padding: 23px 110px 23px 0;
    color: #242424;
    text-decoration: none;
}
.tokken-news a .text:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    width: 1em;
    height: 1em;
    min-width: 15px;
    min-height: 15px;
    background: url(../img/icon_link.png) no-repeat center / contain;
	transition: all .2s;
}
@media (min-width: 768px) {
	.tokken-news a:hover .text:after {
		right: 5px;
	}
}
.tokken-news .day {
	min-width: 90px;
	white-space: nowrap;
	margin-right: 15px;
}
.tokken-news a[target=_blank] .text:after,
.tokken-news a.pbOpenNewWindow .text:after {
	content: '';
    position: absolute;
	width: 1em;
	height: 1em;
	margin-left: 5px;
	background: url(../img/icon_outbound.png) no-repeat center / contain;
}

@media (max-width: 767px) {
	.tokken-news {
		margin-top: 8px;
	}
	.tokken-news a {
		display: flex;
		padding: 15px 10px 15px 0;
		flex-direction: column-reverse;
	}
	.tokken-news a:after {
		top: auto;
		bottom: 20px;
	}
	.tokken-news .day {
		min-width: auto;
		margin-right: 10px;
	}
	.tokken-news .text {
		width: 100%;
		margin-top: 5px;
		line-height: 1.8;
	}
}

/*  contact-intro
------------------------------------------------*/

.tokken_contact-intro {
	display: none;
} 
.tokken_contact-intro .title:not(:first-child) {
	margin-top: 15px;
}
.tokken_contact-intro .title {
	background: #fff;
	padding: 10px;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	border: 1px solid #D8D8D8;
	border-radius: 2px;
	line-height: 1.6;
}

@media (max-width: 767px) {
	.tokken_contact-intro {
		display: block;
	} 
}

/*  contact
------------------------------------------------*/

.tokken_contact:not(:first-child) {
	margin-top: 30px;
}
.tokken_contact {
	border-top: 2px solid #B92424;
	background-color: #fff;
}
.tokken_contact > div {
	display: flex;
	justify-content: space-between;
}
.tokken_contact > div.pbNested:after {
	content: none;
}
.tokken_contact .imagebox {
	width: 428px;
	position: relative;
}
.tokken_contact .imagebox .image img {
	width: 100%;
}
.tokken_contact .imagebox .text {
	font-size: 12px;
	position: absolute;
	top: 17px;
	left: 15px;
	min-width: 60px;
	display: block;
}
.tokken_contact .textbox {
	padding: 46px 30px;
	width: 350px;
}
.tokken_contact .textbox > div {
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}
.tokken_contact .textbox .title-box .title {
	font-size: 18px;
	font-weight: bold;
	margin-top: 15px;
}
.tokken_contact .textbox .title-box .sub-title {
	font-size: 12px;
	font-weight: bold;
}
.tokken_contact .buttonbox .pbNested:after {
	content: none;
}
.tokken_contact .buttonbox {
	padding: 45px 35px 45px 0px;
}
.tokken_contact .tel-box .title {
	font-size: 15px;
}
.tokken_contact .tel-box .inner {
	padding: 15px  0 10px;
	border-top: 1px solid #D8D8D8;
	border-bottom: 1px solid #D8D8D8;
}
.tokken_contact .tel-box .number {
	padding-left: 57px;
	position: relative;
	font-size: 32px;
	font-weight: bold;
	color: #B92424;
	line-height: 1.2;
}
.tokken_contact .tel-box .number:before {
	content: "";
	background: url(/crepre/tokken/assets/img/ic_freecall.png) no-repeat center / contain;
	position: absolute;
	height: 38px;
	width: 48px;
	top: calc(50% - 19px);
	left: 0px;
}
.tokken_contact .tel-box .text {
	font-size: 12px;
	margin-top: 5px;
}

/*  button
------------------------------------------------*/

.tokken_contact-button:not(:first-child) {
	margin-top: 15px;
}
.tokken_contact-button a {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 337px;
	padding: 17px 45px 17px 20px;
	background: #C03F3F;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	border-color: #C03F3F;
	border-radius: 3px;
	line-height: 1.6;
}

@media (min-width: 768px) {
	.tokken_contact-button a:hover {
		opacity: .6;
	}
}
@media all and (-ms-high-contrast:none){
	.tokken_contact-button a {
		padding-top: 21px;
		padding-bottom: 13px;
	}
}
.tokken_contact-button a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 25px;
	width: 1em;
	height: 1em;
	min-width: 15px;
	min-height: 15px;
	background: url(../img/icon_conv.png) no-repeat center / contain;
}
div[class^=base-] .tokken_contact-button a[target=_blank]:after,
div[class^=base-] .tokken_contact-button a.pbOpenNewWindow:after {
	position: absolute;
	margin: auto;
	background-image: url(../img/icon_outbound.png);
}


@media (max-width: 767px) {
	
	.tokken_contact:not(:first-child) {
		margin-top: 20px;
	}
	.tokken_contact > div {
		display: flex;
		flex-direction: column;
	}
	.tokken_contact .imagebox {
		width: 100%;
		order: 2;
	}
	.tokken_contact .imagebox .image {
		margin-top: 47px
	}
	.tokken_contact .imagebox .text {
		top: 15px;
		left: 20px;
	}
	.tokken_contact .textbox {
		padding: 0;
		width: 100%;
		order: 1;
	}
	.tokken_contact .textbox .title-box {
		padding: 15px;
	}
	.tokken_contact .textbox .title-box .title {
		margin-top: 7px;
	}
	.tokken_contact .textbox .title-box .sub-title {
		font-size: 15px;
		font-weight: bold;
		line-height: 1.4;
	}
	.tokken_contact .buttonbox {
		padding: 20px;
		order: 3;
		margin: 0 auto;
	}
	.tokken_contact .tel-box .title {
		padding: 0 15px;
	}
	.tokken_contact .tel-box .inner {
		padding: 15px 30px 10px;
		margin-top: 14px;
	}
	.tokken_contact-button a {
		font-size: 14px;
		padding: 16px 30px 16px 20px;
		font-weight: normal;
	}
	.tokken_contact-button a:after {
		right: 15px;
	}
}

/*  tokken-banner
========================================================================*/

.tokken-banner:not(:first-child) {
	margin-top: 45px;
}
.tokken-banner .box > div {
	position: relative;
}
.tokken-banner .textbox {
	position: absolute;
	top: 43%;
	width: 90%;
	margin: 0 5%;
	text-align: center;
	color: #FFFFFF;
}
.pbPage:not(.pbPage--edit) .tokken-banner .textbox {
	pointer-events: none;
}
.tokken-banner .image a {
	position: relative;
	display: inline-block;
	width: 100%;
}
.tokken-banner .image > div {
	background: #242424;
}
.tokken-banner .image img {
	width: 100%;
}
.tokken-banner .title {
    display: inline-block;
    padding-right: 30px;
    background: url(../img/icon_banner.png) no-repeat right center;
}
.tokken-banner .title > div {
	font-size: 18px;
	font-weight: bold;
}
.tokken-banner .text > div {
	font-size: 12px;
}
.pbPage.pbPage--edit .tokken-banner .textbox {
	top: 50%;
	transform: translateY(-50%);
}
.pbPage.pbPage--edit .tokken-banner .title,
.pbPage.pbPage--edit .tokken-banner .text {
	padding-bottom: 0;
}

@media (max-width: 767px) {
	.tokken-banner:not(:first-child) {
		margin-top: 30px;
	}
	.tokken-banner .textbox {
		top: 50%;
		transform: translateY(-50%);
	}
	.tokken-banner .image img {
		height: 124px;
		object-fit: cover;
	}
	.tokken-banner .title > div,
	.tokken-banner .text > div {
		line-height: 1.5;
	}
}

/*  tokken-panel
========================================================================*/

.tokken-panel:not(:first-child) {
	margin-top: 23px;
}
.tokken-panel.kodate:not(:first-child) {
	margin-top: 75px;
}
div[class^=base-h] + .tokken-panel:not(:first-child) {
	margin-top: 25px;
}
.tokken-panel.liaison + div {
	margin-top: 45px;
}
.tokken-panel a {
	color: #242424;
	text-decoration: none;
}

@media (max-width: 767px) {
	.tokken-panel:not(:first-child) {
		margin-top: 13px;
	}
}

/*  clum2
------------------------------------------------*/

.tokken-panel .clum2 > div {
	display: flex;
	justify-content: space-between;
}
.tokken-panel .clum2 > div:after {
	display: none;
}
@media (max-width: 767px) {
	.tokken-panel .clum2 > div {
		display: flex;
		flex-direction: column;
	}
}

/*  title
------------------------------------------------*/

.tokken-panel .title:not(:first-child) {
	margin-top: 5px;
}
@media (min-width: 768px) {
	.tokken-panel .linkbox:hover .title {
		opacity: .6;
	}
}
.tokken-panel .title {
	font-size: 18px;
	font-weight: bold;
}
.tokken-panel .title img {
	margin-right: 10px;
}

@media (max-width: 767px) {
	.tokken-panel .title {
		font-size: 18px;
	}
}

/*  tel
------------------------------------------------*/

.tokken-panel .tel {
	padding-left: 57px;
	position: relative;
	font-size: 32px;
	font-weight: bold;
	color: #B92424;
	line-height: 1.2;
}
.tokken-panel .tel:before {
	content: "";
	background: url(/crepre/tokken/assets/img/ic_freecall.png) no-repeat center / contain;
	position: absolute;
	height: 38px;
	width: 48px;
	top: calc(50% - 19px);
	left: 0px;
}

@media (max-width: 767px) {
	.tokken-panel .tel {
		margin: 8px auto 0;
	}
	.tokken-panel .tel a {
		color: #B92424;
		text-decoration: none;
	}
}

/*  text
------------------------------------------------*/

.tokken-panel .text:not(:first-child) {
	margin-top: 40px;
}
.tokken-panel .text {
	line-height: 1.5;
}

@media (max-width: 767px) {
	.tokken-panel .text:not(:first-child) {
		margin-top: 13px;
	}
	.tokken-panel .text {
		line-height: 2;
	}
}

/*  panel-2clum
------------------------------------------------*/

.tokken-panel.panel-2clum > div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.tokken-panel.panel-2clum > div:after {
	display: none;
}
.tokken-panel.panel-2clum .box {
	width: 47.415%;
	padding: 45px;
	background: #fff;
	border-top: 2px solid #B92424;
}
.tokken-panel.panel-2clum.only .box:only-child {
	margin-left: auto;
	margin-right: auto;
}
.tokken-panel.panel-2clum .box:nth-child(n+3) {
	margin-top: 45px;
}

@media (max-width: 767px) {
	.tokken-panel.panel-2clum .box {
		width: 100%;
		padding: 15px 20px 20px;
	}
	.tokken-panel.panel-2clum .box:not(:first-child) {
		margin-top: 20px;
	}
}

/*  tokken_event-panel
========================================================================*/

.tokken_event-panel {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.tokken_event-panel .box {
	background: #F4F4F4;
	padding: 15px;
	width: calc(100%/3 - 20px);
}
.base-section.gray .tokken_event-panel .box {
	background: #fff;
}
.tokken_event-panel .box:nth-child(n+4) {
	margin-top: 30px;
}
.tokken_event-panel .title {
	margin-top: 5px;
	font-size: 18px;
	line-height: 1.6;
	font-weight: bold;
	display: block;
}
.tokken_event-panel a.title {
	padding-right: 20px;
	background: url(../img/icon_link_red.png) no-repeat 99.9% .3em / 15px;
	text-decoration: none;
	color: #242424;
}
@media (min-width: 768px) {
	.tokken_event-panel a.title:hover {
	    opacity: .6;
	}
}

.tokken_event-panel .label {
	font-size: 12px;
	padding: 3px;
	background: #F5F6F8;
	border: 1px solid #AAABAD;
	font-weight: bold;
}
.tokken_event-panel .imagebox {
	display: flex;
	margin-top: 15px;
	justify-content: space-between;
	align-items: center;
}
.tokken_event-panel .image {
	width: 160px;
}
.tokken_event-panel .text-box {
	width: calc(100% - 175px);
}
.tokken_event-panel .place,
.tokken_event-panel .date {
	font-size: 15px;
	line-height: 1.6;
}
.tokken_event-panel .date {
	margin-top: 5px;
}
.tokken_event-panel .button {
	border-top: 1px solid #D8D8D8;
	border-bottom: 1px solid #D8D8D8;
	margin: 30px -15px -15px;
	padding: 30px 30px;
}
.tokken_event-panel .button a {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 366px;
	padding: 17px 45px;
	background: #B92424;
	color: #fff;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
	line-height: 1.6;
}
.tokken_event-panel .button a:before,
.tokken_event-panel .button a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 1em;
	height: 1em;
}
.tokken_event-panel .button a:before {
	left: 21px;
	min-width: 18px;
	min-height: 18px;
	background: url(../img/icon_check.png) no-repeat center / contain;
}
.tokken_event-panel .button a:after {
	right: 25px;
	min-width: 15px;
	min-height: 15px;
	background: url(../img/icon_conv.png) no-repeat center / contain;
}

@media (min-width: 768px) {
	.tokken_event-panel .button a:hover {
	    opacity: .6;
	}
}

@media (max-width: 767px) {
	.tokken_event-panel {
		display: flex;
		flex-direction: column;
	}
	.tokken_event-panel .box:not(:first-child) {
		margin-top: 20px;
	}
	.tokken_event-panel .box {
		width: 100%;
	}
	.tokken_event-panel .label {
		padding: 4px 6px;
		border: 1px solid #DDDDDD;
		border-radius: 2px;
	}
	.tokken_event-panel .title {
		margin-top: 10px;
		font-size: 15px;
	}
	.tokken_event-panel .image {
		width: 130px;
	}
	.tokken_event-panel .text-box {
		width: calc(100% - 145px);
	}
	.tokken_event-panel .place,
	.tokken_event-panel .date {
		font-size: 12px;
		line-height: 2;
	}
	.tokken_event-panel .button {
		border-bottom: 1px solid #D8D8D8;
		margin: 20px -15px -15px;
		padding: 25px 35px;
	}
	.tokken_event-panel .button a {
		padding: 10px 45px;
	}
	.tokken_event-panel .button a:after {
		right: 16px;
	}

}

/*  tokken_contact-banner
========================================================================*/

.tokken_contact-banner:not(:first-child) {
	margin-top: 35px;
}
.tokken_contact-banner > div {
    position: relative;
	padding: 70px 20px;
    width: 100%;
    border-radius: 2px;
    text-align: center;
	background: url(../img/img_contact.jpg);
}
.tokken_contact-banner a {
	color: #fff;
	text-decoration: none;
	font-size: 22px;
	line-height: 1.6;
	font-weight: bold;
	padding-right: 30px;
	background: url(../img/icon_conv.png) no-repeat right / contain;
}
.pbPage:not(.pbPage--edit) .tokken_contact-banner a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	display: block;
}

@media (min-width: 768px) {
	.tokken_contact-banner a:hover {
	    opacity: .6;
	}
}
@media (max-width: 767px) {
	.tokken_contact-banner:not(:first-child) {
		margin-top: 30px;
	}
	.tokken_contact-banner > div {
		padding: 45px 20px;
		background: url(../img/img_contact_sp.jpg) no-repeat right / cover;
	}
	.tokken_contact-banner a {
		font-size: 16px;
		padding-right: 25px;
	}
}

/*  tokken_point-panel
========================================================================*/

.tokken_point-panel:not(:first-child) {
	margin-top: 24px;
}
.tokken_point-panel > div {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.tokken_point-panel > div:after{
	content:'';
	display:block;
	width:31.552%;
}
.tokken_point-panel .box {
	display:flex;
	width:31.552%;
}
.tokken_point-panel .box > div {
	display:flex;
	width:100%;
	line-height:1.6;
	flex-direction: column;
}
.tokken_point-panel .title {
	font-size:18px;
	font-weight:bold;
	background: #023986;
	color: #fff;
	padding: 10px;
	text-align: center;
}
.tokken_point-panel .text {
	padding: 28px 30px 24px;
	background: #fff;
	flex-grow: 1;
}

@media (max-width: 767px){
	.tokken_point-panel:not(:first-child) {
		margin-top: 12px;
	}
	.tokken_point-panel .text {
		padding: 15px 20px 14px;
		font-size: 15px;
		line-height: 2;
	}
	.tokken_point-panel .box{
		width:100%;
	}
	.tokken_point-panel .box:not(:first-child){
		margin-top: 20px;
	}
}

/*  modal
========================================================================*/

/*  side menu
------------------------------------------------*/

.tokken_localSearchNavi > .b-a-textLink .tokken_textLink_mail_anchor {
    background-image: url("/library/img/common/local_search/icon_mail.png");
    padding-top: 9px;
    padding-left: 38px;
}

.tokken_localSearchNavi.b-is-opened {
    padding-left: 20px;
    width: 140px;
}
.tokken_localSearchNavi.b-is-opened .b-a-simpleButton_toggle {
    left: -20px;
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
    width: 140px;
}
.tokken_localSearchNavi > .b-a-textLink .b-a-textLink_anchor:after,
.tokken_localSearchNavi > .b-a-textLink .b-a-textLink_anchor:before {
	display: none;
}

@media (max-width: 767px) {
	.tokken_localSearchNavi > .b-a-textLink .tokken_textLink_mail_anchor {
	    background-image: url("/library/img/common/local_search/icon_mail.png");
	    padding: 25px 0 25px 60px;
	    background-position: 20px;
	    height: 100%;
	    text-align: left;
	}
	.tokken_localSearchNavi.b-is-opened {
	    padding-left: 40px;
	    -webkit-transform: translate3d(0, 0, 0);
	    transform: translate3d(0, 0, 0);
	    width: 100%;
	}
    .tokken_localSearchNavi.b-is-opened .b-a-simpleButton_toggle {
        left: 0;
        width: 42px;
    }

}

/*  tokken_works
========================================================================*/

.tokken_works_section {
    padding: 0 0 70px;
}
.tokken_works .tokken_works_inntoro-title {
	font-size: 22px;
    letter-spacing: .59px;
    font-weight: bold;
    color: #242424;
    line-height: 1.6;
    display: none;
    font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", "YuGothic", "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", "Helvetica Neue", "arial", sans-serif;
}
.tokken_works .tokken_works_inntoro-text {
	font-size: 15px;
	margin-top: 19px;
	margin-bottom: 23px;
	letter-spacing: 0.023em;
	line-height: 1.6;
	display: none;
    font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", "YuGothic", "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", "Helvetica Neue", "arial", sans-serif;
}
.tokken_works .tokken_works_inntoro-title.active,
.tokken_works .tokken_works_inntoro-text.active {
	display: block;
}
.tokken_works .b-m-boxLink_anchor {
    display: flex;
    flex-direction: column;
}
.tokken_works .b-m-boxLink .b-a-fullImage {
    background: #D8D8D8;
}
.tokken_works .b-m-boxLink .b-a-fullImage_image {
    object-fit: contain;
    height: 100% !important;
}
.tokken_works .b-m-boxLink .b-a-plainText:last-child {
    padding: 15px 0 5px;
    border-top: 1px dotted #d8d8d8;
    margin: auto 12.5px 0 12.5px;
}
.tokken_works .b-m-boxLink {
    margin-bottom: 30px;
}
.tokken_works .base-button {
    margin-top: 15px;
}
.tokken_works .b-m-boxLink_tags {
    margin: 25px 12.5px 0 12.5px;
    padding: 12.5px 0;
}
.tokken_works .b-a-simpleButton_tag[disabled] {
    opacity: unset;
    cursor: default;
}

.tokken_works .b-m-moduleRadioCollection .b-m-accordion_inner {
    opacity: 1;
    padding: 13px 0 80px 0;
}
.tokken_works .b-a-radioButton_label {
    height: auto;
}

@media (max-width: 767px) {
	.tokken_works .b-m-moduleRadioCollection {
	    margin-bottom: 30px;
	    margin-top: 15px;
	}
    .tokken_works .b-m-moduleRadioCollection_content .b-a-radioButton {
        width: 100%;
        padding: 17px 10px 17px 16px;
        height: auto;
        display: block;
    }
	.tokken_works .b-m-moduleRadioCollection_content .b-a-radioButton_label {
	    position: inherit;
	}
	.tokken_works .b-a-radioButton_text {
	    width: 100%;
	}
	.tokken_works .tokken_works_inntoro-title {
		font-size: 18px;
	}
	.tokken_works .tokken_works_inntoro-text {
	    margin-top: 5px;
		line-height: 2;
	}
	.tokken_works .b-o-moduleCards .b-a-wrapper {
	    width: 100%;
	}
	.tokken_works .b-m-boxLink {
	    margin-bottom: 20px;
	}
	.tokken_works .b-m-boxLink .b-a-plainText:nth-of-type(2) {
		font-size: 12px;
	}
	.tokken_works  .b-m-boxLink_anchor {
	    display: block;
	}
	.tokken_works .b-m-boxLink .b-a-plainText:last-child {
	    margin: 0px 12.5px 0 12.5px;
	    font-size: 12px;
	}
	.tokken_works .b-m-boxLink_tags {
	    margin: 12px 12.5px 0 12.5px;
	}
	.tokken_works .b-m-moduleRadioCollection .b-m-accordion_inner {
	    padding: 13px 0 0 0;
	}

}

/*  tokken_works-detail
========================================================================*/

/*  h1
------------------------------------------------*/

.tokken_works-detail_h1 {
	font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", "YuGothic", "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", "Helvetica Neue", "arial", sans-serif;
}
.tokken_works-detail_h1 .title h1 {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.4;
	margin: 0;
}
.tokken_works-detail_h1 {
	background:#E3E6E9;
}
.tokken_works-detail_h1 > div {
	display: flex;
}
.tokken_works-detail_h1 .image {
	width: calc(50% - 46px);
	height: 518px;
}
.tokken_works-detail_h1 .image > div,
.tokken_works-detail_h1 .image > div > div,
.tokken_works-detail_h1 .image p {
	height: 100%;
}
.tokken_works-detail_h1 .image img {
	object-fit: contain;
	height: 100%;
	width: 100%;
}
.tokken_works-detail_h1 .image > div {
	text-align: center;
}
.tokken_works-detail_h1 .box {
	width: calc(50% + 46px);
	background:#F4F4F4;
	display: flex;
	z-index: 1;
	height: 518px;
}
.tokken_works-detail_h1 .box > div{
	width: 626px;
	padding: 60px 0 60px 60px;
	margin-top: 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.tokken_works-detail_h1 .box > div > div:nth-child(2) {
	margin-top: 25px;
}
.tokken_works-detail_h1 .tag ul {
	display: flex;
	flex-wrap: wrap;
	margin: -3px;
}
.tokken_works-detail_h1 .tag li {
    background: #e3e6e9;
    border-radius: 15px;
    color: #838586;
    font-size: 15px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 10px;
    margin: 3px;
}
.tokken_works-detail_h1 .tag li a {
    color: #838586;
    text-decoration: none;
}
.tokken_works-detail_h1 .tag li a:hover {
 opacity: .6;
}
.tokken_works-detail_h1 .text {
    font-size: 15px;
    margin-top: 22px;
    line-height: 2;
    letter-spacing: 0.026em;
}

@media (max-width: 767px){
	.tokken_works-detail_h1 .title h1 {
		font-size: 20px;
		border-left: 4px solid #BAC1CA;
		padding-left: 10px;
		letter-spacing: 0.035em;
	}
	.tokken_works-detail_h1 {
		background: none;
	}
	.tokken_works-detail_h1 > div {
		display: flex;
		flex-wrap: wrap;
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 40px 0 0;
	}
	.tokken_works-detail_h1 .image {
		width: 100%;
		max-height: 308px;
		height: auto;
		order: 2;
		margin-top: 25px;
	}
	.tokken_works-detail_h1 .box {
		width: 100%;
		background: none;
		display: contents;
		height: auto;
	}
	.tokken_works-detail_h1 .box > div{
		width: 100%;
		padding: 25px 20px 0;
		margin-top: 0;
		display: contents;
	}
	.tokken_works-detail_h1 .title {
		order: 1;
	}
	.tokken_works-detail_h1 .box > div > div:nth-child(2) {
		order: 3;
		margin-top: 25px;
	}
	.tokken_works-detail_h1 .tag li {
		font-size: 12px;
	}
	.tokken_works-detail_h1 .text {
		margin-top: 20px;
		order: 4;
	}
	.tokken_works-detail_h1 .base-button {
		order: 5;
		width: 100%;
	}
}

/*  table
------------------------------------------------*/

.tokken_works-detail_table tr {
	line-height: 1.6;
}
.tokken_works-detail_table th {
	font-weight: bold;
	padding-right: 30px;
}
.tokken_works-detail_table td {
	width: 250px;
	padding-right: 30px;
}
.tokken_works-detail_table tr:first-child th,
.tokken_works-detail_table tr:first-child td {
	padding-bottom: 10px;
}
.tokken_works-detail_table tr:not(:first-child,:last-child) th,
.tokken_works-detail_table tr:not(:first-child,:last-child) td {
	padding: 10px 30px 10px 0;
}
.tokken_works-detail_table tr:last-child th,
.tokken_works-detail_table tr:last-child td {
	padding-top: 10px;
}

@media (max-width: 767px){
	.tokken_works-detail_table tr {
		display: block;
	}
	.tokken_works-detail_table th {
		width: 100%;
		display: block;
		text-align: left;
	}
	.tokken_works-detail_table td {
		width: 100%;
		display: block;
		line-height: 2;
	}
	.tokken_works-detail_table tr:first-child th,
	.tokken_works-detail_table tr:not(:first-child,:last-child) th,
	.tokken_works-detail_table tr:last-child th {
		padding: 0 0 5px;
	}
	.tokken_works-detail_table tr:first-child td,
	.tokken_works-detail_table tr:not(:first-child,:last-child) td {
		padding: 0 0 20px;
	}
	.tokken_works-detail_table tr:last-child td {
		padding-top: 0;
	}
}

/*  list
------------------------------------------------*/

.tokken_works-detail_list ul li {
    margin-left: 1.45em;
    position: relative;
    list-style: none;
}

.tokken_works-detail_list ul li:before {
    content: "";
    display: block;
    width: 4px;
    height: 4px;
	border-radius: 50%;
    background: #242424;
    position: absolute;
    left: -1.3em;
    top: calc(1em - 2px);
}

/*  slider
------------------------------------------------*/

.tokken_works-detail_slider .b-a-plainText:nth-of-type(2) {
	padding: 0;
}
.tokken_works-detail_slider .b-m-boxLink {
    background: none;
    box-shadow: none;
    padding: 0;
}
.tokken_works-detail_slider .b-o-moduleCards[data-b-row-num='3'] .b-m-boxLink .b-a-fullImage {
    height: 205px;
    text-align: center;
    background: #d8d8d8;
}
.tokken_works-detail_slider .b-o-moduleCards[data-b-row-num='3'] .b-m-boxLink .b-a-fullImage img {
    object-fit: contain;
}

@media (max-width: 767px){
	.tokken_slider .b-a-plainText:nth-of-type(2) {
		padding: 0;
	}
	.tokken_slider .b-m-boxLink {
	    background: none;
	    box-shadow: none;
	    padding: 0;
	}
	.tokken_works-detail_slider .b-m-boxLink .b-a-plainText:first-of-type {
		padding-top: 9px;
	}
	
}