@charset "utf-8";
/*
Theme Name: oda Skin
Theme URI:
Description:WordPressテーマ「MASSIVE (TCD084)」子テーマ
Author:TCD
Author URI:https://tcd-theme.com/
Template:massive_tcd084
Version:2.9.6
Text Domain:tcd-massive
*/

br.sp{display: none;}

/* 750px以下のデバイスでspとpcの改行タグを切り替える */
@media screen and (max-width: 750px) {
  br.sp {display: block;}
  br.pc {display: none;}
}

.wp-block-gallery.has-nested-images figure.wp-block-image { flex-grow: 0; }

/* ----------------------------------------------------------------------
 トップページ（ヘッダーコンテンツ）
---------------------------------------------------------------------- */
/* キャプション内のアニメーション設定 */
#header_slider .animate_item { opacity:1; }
#header_slider .catch.animate { animation:none; -webkit-animation:none; }
#header_slider .catch{
text-shadow: 0 0 10px #477300,0 0 10px #477300,0 0 10px #477300,0 0 10px #477300;
font-family: "Noto Serif JP", serif;
letter-spacing:0.15em;
line-height:1.8;
}

/* スライダーのキャプション */
@media screen and (min-width:751px) {
  #header_slider .catch{
    text-indent: -10.4em;
    padding-left: 8em;
  }
}

/* ----------------------------------------------------------------------
 トップページ（コンテンツビルダー）
---------------------------------------------------------------------- */
/* フリースペース */
.cb_free_space.type2 .cb_contents_inner {width: 840px;}

/* ボックスコンテンツ */
.cb_box_content .box_content .item{
  width: calc(100% / 3 - 50px);
  margin-right: 0;
  flex:none;
}
.cb_box_content .box_content .content_top{
    height: 200px;
    text-align: center;
}
.cb_box_content .box_content .content_bottom{height: 400px;}
@media screen and (min-width:951px) and (max-width:1200px) {
  .cb_box_content .box_content .content_top { height:200px!important; }
}
@media screen and (max-width:750px) {
  .cb_box_content .box_content .content_top { height:200px!important; }
}

/* バナーコンテンツ */
@media screen and (min-width:751px) {
  .banner_content .desc br { display: none; }
}

/* ----------------------------------------------------------------------
 エントリーフォーム（コンタクトページ）
---------------------------------------------------------------------- */
.post_content p.tel{margin: 0!important;line-height: 1.4!important;}

.snow-monkey-form { width:auto; margin:60px 0 0 0 !important; border:none; background:#f8f8f8; }
.snow-monkey-form .smf-form{margin: 1.5em 1.5em 0;}
.snow-monkey-form .smf-form .smf-item{
  font-size:16px;
  margin:0;
  display:flex;
  flex-wrap:wrap;
}
.snow-monkey-form .smf-form .smf-item .smf-item__col--label{ width:250px; height:50px; line-height:50px; margin-bottom:50px; font-weight:500; }
.snow-monkey-form .smf-form .smf-item .smf-item__col--controls{ width:calc(100% - 250px); margin-bottom:50px; line-height:1; padding-top:2px; }
.snow-monkey-form .smf-form input[type="text"],
.snow-monkey-form .smf-form input[type="email"],
.snow-monkey-form .smf-form input[type="tel"],
.snow-monkey-form .smf-form input[type="date"],
.snow-monkey-form .smf-form textarea {
    box-sizing:border-box;
    width:100%;
    padding:8px;
    border:1px solid #ccc;
    line-height:1.2;
}
.snow-monkey-form .smf-form input[type="text"],
.snow-monkey-form .smf-form input[type="email"],
.snow-monkey-form .smf-form input[type="tel"],
.snow-monkey-form .smf-form input[type="date"] { padding:0 20px; height:50px; }
.snow-monkey-form .smf-form textarea { padding:20px 25px; height:250px; line-height:1.6; }
.snow-monkey-form .smf-form select { height:50px; padding:0 20px; min-width:270px; }
.snow-monkey-form .smf-form input[type="text"]:focus,
.snow-monkey-form .smf-form input[type="email"]:focus,
.snow-monkey-form .smf-form input[type="tel"]:focus,
.snow-monkey-form .smf-form input[type="date"]:focus,
.snow-monkey-form .smf-form textarea:focus { border-color:#01bfff; }
/* 必須ラベル */
.smf-item:has([data-validations~="required"]) .smf-item__label__text::after {
	content: "必須";
	display: inline-block;
	padding: 5px 6px;
	color: #fff;
	background-color: crimson;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	margin-left: 1em;
	border-radius: 4px;
}
.smf-action .smf-button-control__control[data-action="complete"] {
  font-family: var(--tcd-font-type1);
  border-radius: 0;
  transition:all .3s;
  box-sizing:border-box;
  display:block;
  position:relative;
  width:300px;
  height:70px;
  margin:0 auto;
  border:none !important;
  outline:none;
  background:#9ddc37!important;
  color:#fff !important;
  font-size:16px;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
}
.smf-action .smf-button-control__control[data-action="complete"]:hover{ background:#477300!important; }
@media screen and (min-width: 951px) {
  .snow-monkey-form {padding:50px 130px 60px;}
}
@media screen and (max-width: 950px) {
  .snow-monkey-form {padding: 15px 0px 25px;}
}
@media screen and (max-width: 750px) {
  .post_content p.tel{font-size: 35px!important;}
  .snow-monkey-form .smf-form .smf-item{
    display: block;
    font-size: 14px;
  }
  .snow-monkey-form .smf-form .smf-item .smf-item__col--label { width:100%; height:30px; line-height:30px; margin-bottom:5px; }
  .snow-monkey-form .smf-form .smf-item .smf-item__col--controls { width:100%; margin-bottom:30px; line-height:1; padding-top:2px; }
  .snow-monkey-form .smf-form input[type="text"],
  .snow-monkey-form .smf-form input[type="email"],
  .snow-monkey-form .smf-form input[type="tel"],
  .snow-monkey-form .smf-form input[type="date"] { height:45px; }
  .smf-action .smf-button-control__control[data-action="complete"] { margin-top:40px; font-size:14px; width:200px; height:50px; line-height:50px; padding:0 20px;}
}

/* ----------------------------------------------------------------------
 LPページ
---------------------------------------------------------------------- */
/* 沿革 */
.timeline {
    width: 96%;
    max-width: 940px;
    margin: 28px auto;
    border: 1px solid #eeeeee;
}

.timeline-list { padding: 40px 0; }

.timeline-list-item {
    display: flex;
    line-height: 1.5!important;
    font-size: 16px;
}
.timeline-list-item .date {
    width: 20%;
    padding: 0 0 0 20px;
    color: #888888;
    font-weight: bold;
}
.timeline-list-item .content {
    position: relative;
    width: 80%;
    padding: 0 20px 60px 30px;
    border-left: 1px solid #aaaaaa;
}
.timeline-list-item .content::before {
    content: "";
    position: absolute;
    top: 0;
    left: -10px;
    width: 20px;
    height: 20px;
    background-color: #9ddc37;
    border-radius: 10px;
}

@media screen and (max-width: 750px) {
  .timeline-list-item .date { width: 35%; }
  .timeline-list-item .content { width: 65%; }
}

/* 募集要項 */
.tcd_demo_recruit_table th{
-moz-text-align-last: justify;
	text-align-last: justify;
}
.tcd_demo_recruit_table td dl {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
}
.tcd_demo_recruit_table td dl dt { width: 25%; }
.tcd_demo_recruit_table td dl dd { width: 75%; }
.tcd_demo_recruit_table td dl dd::before {
  background-color: #333; /* 線の色 */
  content: "";
  height: 1px; /* 線の高さ */
  width: 20px; /* 線の長さ */
  margin-right: 0.5em;
  margin-bottom: 0.3em;
  transform: rotate(-60deg); /* 傾ける */
  display: inline-block;
}

.wp-block-buttons.entry-btn > .wp-block-button{height: 100px;}
.wp-block-buttons.entry-btn > .wp-block-button a.wp-block-button__link:hover{background-color: #477300!important;}

@media screen and (max-width: 750px) {
  .tcd_demo_recruit_table td dl {display: block;}
  .tcd_demo_recruit_table td dl dt,
  .tcd_demo_recruit_table td dl dd { width: 100%; }
  .wp-block-buttons.entry-btn > .wp-block-button{width: 90%;height: auto;}
}

@media screen and (max-width: 750px) {
  #page_header .sub_title {
    font-size: 14px;
    line-height: 1.8;
  }
}

/* ----------------------------------------------------------------------
 デザインページ１
---------------------------------------------------------------------- */
/* ヘッダー画像 */
.dc1_content .headline {width: 450px;}

/* ----------------------------------------------------------------------
 インタビュー詳細ページ
---------------------------------------------------------------------- */
/* デザインコンテンツ */
.interview_design_content {margin-bottom:3em;border-bottom: 1px solid var(--_light-color-gray);}
.interview_design_content .desc { line-height:1.8;margin-top:1.5em;margin-bottom:1.5em; }

/* ----------------------------------------------------------------------
　ヘッダー
---------------------------------------------------------------------- */
/* ヘッダーボタン */
#header_button a { padding:0 25px; }

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_address {
    margin: 27px 0 0;
    font-size: 16px;
    line-height: 1.8;
}
#footer_address .widget .is-layout-flex{
  justify-content: center;
  gap: 3em;
}
#footer_address .widget .is-layout-flex p{text-align: left;}
@media screen and (max-width: 750px) {
  #footer_address .widget .is-layout-flex{flex-direction: column;}
}