@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*背景画像の設定(iOS対応済)*/
.container::before {
content:"";
display:block;
position:fixed;
top:0;
left:0;
z-index:-1;
width:100%;
height:100vh;
background-repeat:no-repeat;
background-position:50% 100%;
background-image:url(https://www.introduction.tokyo/wp-content/uploads/2023/06/bgImg-scaled.jpg);
background-size:cover;
}
/*モバイルメニューエリアの最適化*/
.menu-close-button {
	margin-right: 8%;
	text-align: right !important;
	opacity: 0.7;
}
.menu-drawer > li {
  padding: 15px 0;
  line-height: 2;
  text-align: center;
}
.menu-drawer > li > a {
  border-radius: 10px;
  box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.5);
  background: linear-gradient(10deg, #2874fc, #1d2088);
  margin: 6px 0;
  padding: 4px 1em;
  border: 2px solid white;
  color: white;
}
.menu-drawer > li > a:hover {
  color: white;
  opacity: 0.6;
}
	/*  ↓↓副項目 */
	.menu-drawer .sub-menu li {
  		text-align: left;
	}
	.menu-drawer .sub-menu li a {
  		position: relative;
  		padding: 0 25px;
  		color: #1d2088;
	}
	.menu-drawer .sub-menu li a::after {
  		content: "";
  		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
		width: 0;
		height: 0;
		border-top: 8px solid transparent;
		border-left: 11px solid #1d2088;
		border-bottom: 8px solid transparent;
	}
	.menu-drawer .sub-menu li a:hover {
  		opacity: 0.6;
	}
/*アピールエリア画像の最適化*/
#appeal {
	position: relative;
	height: 95vh;
	width: 100%;
}
/*本文掲載部分の背景テーマカラー透過*/
.no-sidebar .content .main {
	background: rgba(29, 32, 136,0.7);
}
/*白抜きボックスの枠線変更*/
.blank-box {
	border-color: #fff;
}
/*青色見出しボックスの文字変更*/
.blank-box.sticky.st-blue{
	color: #000;
	font-weight: bold;
}
/*青色下線マーカー時の扱い変更*/
.marker-under-blue {
	display: inline-block;
	font-size: x-large;
}
/*企業倫理の文字リンクを白に変更*/
.block-link-decoration{
	display: block;
	height: 50px;
	line-height: 50px;
	color: #fff;
}
/*投稿一覧の文字リンクを白に変更*/
.a-wrap{
	color: #fff;
}
/*電話リンクをPCから開かないようにする*/
a[href^="tel:"] {
	cursor: default;
	color: #fff;
	text-decoration-line: none;
}
/*ナビゲーションリンクの表示設定*/
.navi-in > ul > li {
	width: 60px;
}
.navi-in > ul .sub-menu {
	right: 0;
}
/*モバイルメニューの表示設定*/
.mobile-menu-buttons .menu-button{
	width: 100%;
	right: 10px;
    justify-content: right;
}
.mobile-menu-buttons .menu-caption {
	color: #000;
	text-align: right;
}
.mobile-menu-buttons .menu-icon{
	color: #000;
}
/*下線マーカー部分のアニメーション*/
.is-active-marker{
	animation: expansion 0.8s forwards;
}
/*スクロール時のアニメーション*/
.is-popuped{
	animation: popup 1.2s forwards;
}
/*カルーセル要素*/
#customers-testimonials .shadow-effect {
	background: rgba(29,32,136,0.5);
	height: 200px;
	padding: 20px;
	line-height:160px;
	border-radius: 4px;
	border:1px solid #ECECEC;
	box-shadow: 0 19px 38px rgba(0,0,0,0.10), 0 15px 12px rgba(0,0,0,0.02);
}
#customers-testimonials .shadow-effect p {
	display: inline-block;
	vertical-align: middle;
	line-height:normal;
}
#customers-testimonials .testimonial-name {
	margin: -17px auto 0;
	display: table;
	width: auto;
	background: #e5f2ff;
	padding: 9px 35px;
	border-radius: 12px;
	text-align: center;
	color: #000;
	box-shadow: 0 9px 18px rgba(0,0,0,0.12), 0 5px 7px rgba(0,0,0,0.05);
}
#customers-testimonials .item {
	text-align: center;
	padding: 20px;
	margin-bottom:80px;
	opacity: 0.2;
	transform: scale3d(0.8, 0.8, 1);
	transition: all 0.3s ease-in-out;
}
#customers-testimonials .owl-item.active.center .item {
	opacity: 1;
	transform: scale3d(1.0, 1.0, 1);
}
#customers-testimonials.owl-carousel .owl-dots{
	display: inline-block;
	width: 100%;
	text-align: center;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot{
	display: inline-block;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot span {
	display: block;
	position: relative;
	width: 20px;
	height: 20px;
	margin: 0 30px;
	background-color: #fff;
	border-radius: 50%;
	transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) .4s;
	cursor: pointer;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot span:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transition: opacity linear 0.4s;
	content: '';
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot.active span {
	background-color: #1d2088;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot.active span:after {
	animation: pulseMotion 1.4s linear infinite;
}
/*もじ*/
.to-handwriting {
	font-family: 'Zen Kurenaido', sans-serif;
}
/*見出しのスライドイン*/
h1 {
	animation: SlideIn 1.6s forwards;
}
/*影を付けて立体化*/
.box-shadow {
	box-shadow: 5px 10px 20px rgba(0,0,0,0.75);
}
/*一時退避用クラス*/
.hidden {
	/*display: none;*/
}
/*カバーイメージ表示の最適化*/
.cvimg-size-fix {
	padding: 0 0 calc(100vw * calc(900 / 1600)) !important;
	min-height: 0 !important;
	position: relative;
}
.wp-block-cover__inner-container{
	position: absolute;
	right: 5%;
	bottom: 5%;
	width: 90% !important;
	background: #2CA9E1;
	opacity: 0.9;
    border-radius: 20% 10% 100% 40%/50% 40% 100% 60%;
    padding: 20px;
}
/*フェースブック最適化*/
.facebook_wrap{
	-webkit-transform: translatex(0);
}
/*回転イメージ*/
.circleText {
	overflow: visible;
	width: 25vw;
	animation: rotation 25s linear infinite;
}
.circleText__circle {
    fill: none;
}
.circleText__text {
    fill: #000;
    font-size: 15px;
    letter-spacing: 0.03em;
}
.svg-block {
    position: absolute;
	text-align: center;
	top: 0;
    bottom: 50vh;
    right: 0;
    left: 0;
    margin: auto;
    height: 3.2rem;
}
#typewriter::after {
    content: "|";
    animation-name: blink;
    animation-duration: 1s;
    animation-iteration-count: infinite;
}
.appeal-in {
	display:block;
}
/*スクロールイメージ*/
#scroll {
    position: absolute;
	bottom: 20px;
    left: 50%;
}
.arrows {
  width: 60px;
  height: 72px;
  left: 50%;
  margin-left: -30px;
}
.arrows path {
  stroke: #000;
  fill: transparent;
  stroke-width: 1px;  
  animation: arrow 2s infinite;
}
.arrows path.a1 {
  animation-delay:-1s;
}
.arrows path.a2 {
  animation-delay:-0.5s;
}
.arrows path.a3 { 
  animation-delay:0s;
}
/*フッターイメージ*/
.footer-widgets {
	font-size: 12px;
}
.footer-widgets a {
	text-decoration : none;
	padding: 0 20px;
}
.widget_media_image {
	text-align: center;
	margin-top: 80px;
}
/*クッキーノーティス用イメージ*/
.cn-text-container {
	text-align: left;
}
/*文字のジャンプイメージ*/
.char {
	margin: 5px 5px 10px 5px;
	font-size: xxx-large;
	font-family: monospace;
}
.char-jump {
	display: inline-block;
	animation-name: jump;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-fill-mode: both;
	animation-iteration-count: 1; /* アニメーションを1回だけ実行 */
}
/*中途採用バナーイメージ*/
#recruit-banner {
	display:none;
	position: fixed; /* 要素を固定位置にします */
	bottom: 30px; /* 上辺からの距離 */
	right: 0px; /* 右辺からの距離 */
	max-width: 50%;
	z-index: 10; /* 必要に応じてz-indexを調整して他の要素より前面に表示 */
}
#close-banner {
	position: absolute;
	top: 0px;
	right: 10px;
	cursor: pointer;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*本文掲載部分の両サイドに余白を作成*/
	.content {
		margin: 10px auto;
    	width: 96%;
	}
  /*タブレットから電話できるように設定*/
	a[href^="tel:"] {
    	pointer-events: auto !important;
		text-decoration-line: underline;
	}
  /*回転イメージの最適化*/
	.circleText {
		width: 40vw;
	}
  /*カバーイメージ表示の最適化*/
	.wp-block-cover__inner-container{
    padding: 10px;
	}
	.char {
    font-size: xx-large;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*本文掲載部分の両サイドに余白を作成*/
	.content {
		margin: 10px auto;
    	width: 96%;
	}
  /*タブレットから電話できるように設定*/
	a[href^="tel:"] {
    	pointer-events: auto !important;
		text-decoration-line: underline !important;
	}
  /*回転イメージの最適化*/
	.circleText {
		width: 60vw;
	}
  /*カバーイメージ表示の最適化*/
    .wp-block-cover__inner-container{
    padding: 0px;
    }
    .char {
    position: relative;
	bottom: 10px;
    font-size: large;
	}
}

@media (orientation: landscape) {
  /*回転イメージの最適化*/
	.circleText {
		height: 45vh;
	}
}
