@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/* スマホ専用の改行 */
br.sp {
	display:none;
}
@media screen and (max-width: 959px){
br.sp {
	display:block;
}
}

/* 2カラムの並び順 */
@media screen and (max-width: 959px){
.swell-block-columns.order .swell-block-column:nth-child(1) {
		order:2;
}
.swell-block-columns.order .swell-block-column:nth-child(2) {
		order:1;		
}	
}




/* 余白 */ 
.page .l-content {
    padding-top: 0;
}
.page .l-mainContent__inner>.post_content {
	margin-top:0;
}
.w-beforeFooter {
	margin-top:-60px !important;
}


@media screen and (max-width: 1223px){
.l-fixHeader__inner.l-container {
	padding:0 10px;
}
}

/* リスト */
.wp-block-list li,
ol.wp-block-list li {
	margin-bottom:1em;
}
ul.wp-block-list li:last-child,
ol.wp-block-list li:last-child {
	margin-bottom:0;
}

/* ヘッダー */
.c-catchphrase.u-thin {
	margin-top:6px !important;
	color:#000;
	font-size:13px !important;
	letter-spacing:0.035em;
}
.c-headLogo a.c-headLogo__link {
	color:#0096d9;	
	font-size:29px;
}
#fix_header .c-headLogo__link {
	font-size:18px;
	color:#0096d9;
}
@media screen and (max-width: 1023px){
#fix_header .c-headLogo__link {
	font-size:15px;
}	
}

h1.c-headLogo a {
	position:relative;
	display:inline-block;
}
img.logo-img {
	width:85px;
	height:85px;
	position:absolute;
	top:-17px;
	left:-92px;
}

@media screen and (max-width: 959px){
h1.c-headLogo {
	padding:33px !important;	
}
img.logo-img {
	width:60px;
	height:60px;
	position:absolute;
	top:-16px;
	left:-65px;
}
}

@media screen and (max-width: 599px){
.c-headLogo a.c-headLogo__link {
	font-size:26px;
}
}

@media screen and (max-width: 480px){
img.logo-img {
	width:60px;
	height:60px;
	top:-21px;
	left:-64px;
}	
.l-header__logo	{
	padding-left:0;
	padding-right:0;
}
.c-headLogo a.c-headLogo__link {
	font-size:18px;
}
}


/* ナビ */
.c-gnav>.menu-item>a .ttl {
	font-size:16px;
	font-weight: 550;
	letter-spacing: 0.02em;
}
#fix_header .c-gnav>.menu-item>a .ttl {
	font-size:14px;
	font-weight: 550;
	letter-spacing: 0;
}
#fix_header .c-gnav>.menu-item>a {
padding:0 7px;
}

li.menu-item-658 a {
	position:absolute !important;
	top:-65px;
	right:14px;
	background:#ffb115;
	color:#fff !important;
	padding:10px 30px !important;	
	border-radius:50px;
	box-shadow: 4px 4px 5px #ccc;
}
li.menu-item-658 a .ttl {
	font-weight: 600 !important;	
}

li.menu-item-658 a .ttl:before {
	font-family: "Font Awesome 5 Free";
	content: '\f1d8';
	font-weight: 600;
	margin-right:8px;
}

li.menu-item-658 a:after {
background:none !important;
}


li.menu-item-739 {
	display:none;
}


@media screen and (max-width: 1023px){
.c-gnav>.menu-item>a .ttl {
	font-size:14px;

}
#fix_header .c-gnav>.menu-item>a .ttl {
	font-size:13px;
	font-weight: 550;
	letter-spacing: 0;
}	
}

@media screen and (max-width: 959px){
li.menu-item-658 a {
	position:static !important;
	background:#ffb115;
	color:#fff !important;
	padding:10px 24px !important;	
	border-radius:0;
}
li.menu-item-739 {
	display:block;
}	
}

/* 固定ページの記事タイトル */ 
h1.c-pageTitle {
	display:none;
}
.swell-block-fullWide h1 {
	color:#fff;
	text-shadow: 4px 4px 8px rgba(0, 0, 0, 0.6); 
}
h2.wp-block-heading br {
	display:none;
}
@media screen and (max-width: 959px){
h2.wp-block-heading br {
	display:block;
}
}

h2.wp-block-heading .swl-fz {
  position: relative; 
}

h2.wp-block-heading .swl-fz:before {
  content: url('https://ulysses-english.com/wp/wp-content/uploads/2026/03/ulysses-s.png'); 
  position: absolute;
  left: -103px;
  top: -55px;
}

@media screen and (max-width: 959px){
.swell-block-fullWide h1 {
	line-height:1.6;
	font-size:23px;
}	
h2.wp-block-heading .swl-fz:before {
  left: -98px;
  top: -65px;
}	
}

@media screen and (max-width: 599px){
.swell-block-fullWide h1 {
	line-height:1.6;
	font-size:21px;
	padding-left:0;
	padding-right:0;
}		

h2.wp-block-heading {
		font-size:20px;
}
h2.wp-block-heading .swl-fz:before {
  content: url('https://ulysses-english.com/wp/wp-content/uploads/2026/03/ulysses-ss.png'); 
  left: -85px;
  top: -50px;
}
h3.wp-block-heading {
		font-size:20px;
}
h4.wp-block-heading {
		font-size:19px;
}	
}
.swell-block-accordion__title .swell-block-accordion__label .swl-fz {
		font-size:21px !important;	
}
p.is-style-big_icon_point .swl-fz  {
		font-size:21px !important;		
}

@media screen and (max-width: 480px){
.swell-block-fullWide h1 {
	line-height:1.6;
	font-size:17px;
}		
.swell-block-fullWide h1 {
	text-shadow: 4px 4px 8px rgba(0, 0, 0, 0.6); 
}
h2.wp-block-heading {
		font-size:17px;
}	
h2.wp-block-heading .swl-fz:before {
  left: -70px;
  top: -60px;
}
h3.wp-block-heading {
		font-size:18px;
}
h4.wp-block-heading {
		font-size:18px;
}
.swell-block-accordion__title .swell-block-accordion__label .swl-fz {
		font-size:18px !important;	
}
p.is-style-big_icon_point .swl-fz  {
		font-size:18px !important;		
}	

}


/* HERO */
.hero {
	text-align:center;	
}
.hero h1 {
	line-height:1.6;	
}
.copy-sub{
	background:#0096d9;
	padding:12px 16px;
	color:#fff;
	font-size:18px;
	text-align:center;
	letter-spacing:0.03em;
	display:inline-block;
	line-height:1.8;
	border-radius:10px;
	border:double 5px #fff;
}
.years img {
	width:240px;
	height:auto;
	position:absolute;
	top:-90px;
	left:16px;
	background:rgb(255 255 255 / 0.6);
	padding:6px;
	border-radius:2px;
}

@media screen and (max-width: 959px){
.hero h1 {
	line-height:1.6;
	font-size:24px;
}
.copy-sub{
	padding:10px 12px;
	font-size:17px;
	line-height:1.7;
}
.years img {
	width:200px;
	height:auto;
	top:-80px;
	left:15px;
}	
}

@media screen and (max-width: 599px){
.years img {
	width:200px;
	height:auto;
	top:-98px;
	left:15px;
}
}
@media screen and (max-width: 480px){
.swell-block-fullWide.hero {
	height:285px;
}
.years img {
	width:170px;
	height:auto;
	top:-164px;
	left:12px;
	background:rgb(255 255 255 / 0.9);
}	
.hero h1 {
	line-height:1.4;
	font-size:17px;
	margin-top:120px;
	margin-bottom:10px;
}
.copy-sub{
	padding:10px 6px;
	font-size:14px;
	line-height:1.7;
}
	
	h2.wp-block-heading.h2-first {
		margin-top:60px !important;
	}
	
}

/* CTA */
.cta {
	border-bottom:12px solid #0269B4;
}
.cta-header {
	position:relative;
}
.cta-ulysses {
	position:absolute;
	top:-125px;
	left:0;
}
.cta-ulysses img {
	width:180px;
	height:auto;
}
.cta-title br {
	display:none;
}	

@media screen and (max-width: 959px){
.cta-ulysses {
	position:absolute;
	top:-115px;
	left:0;
}	
.cta-ulysses img {
	width:160px;
	height:auto;
}
#text-3 .swell-block-button	a{
	border-radius:0 !important;
}
.cta-title br {
	display:block;
}	
}

@media screen and (max-width: 599px){
.cta-title .swl-fz	{
	font-size:28px !important;
}
	
.cta-ulysses img {
	width:100px;
	height:auto;
}
}

@media screen and (max-width: 480px){
.cta-title .swl-fz	{
	font-size:23px !important;
}
.cta-ulysses {
	position:absolute;
	top:-100px;
	left:0;
}		
.cta-ulysses img {
	width:100px;
	height:auto;
}
.cta-title .swl-fz	{
	font-size:22px !important;
}	
}





/* コンタクトフォーム */

.wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=submit]), .wpcf7 select, .wpcf7 textarea {
  width: 100%;
  padding: 6px 20px;
  margin:10px 0 0;
  background-color: #fff;
  border: 1.5px solid hsla(0, 0%, 78%, 0.5);
  border-radius: 999px;
}
.wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus-visible, .wpcf7 select:focus-visible, .wpcf7 textarea:focus-visible {
  outline: 1px solid var(--color_main);
}
.wpcf7 textarea {
  border-radius: 20px;
}
.wpcf7 label {
  padding-left: 10px;
}
.wpcf7 form p {
  margin-bottom: 30px;
  font-weight: bold;
}
.wpcf7 .wpcf7-list-item-label, .wpcf7 .wpcf7-quiz-label {
  font-weight: 400;
}
.wpcf7 .wpcf7-submit {
  border-radius: 0.5rem;
  padding: 0.3rem 2rem;
  min-width: 300px;
  display: block;
  margin: 3em auto 0;
  border-radius: 999px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 5px;
  background-color: #ffb115;
}


/* フローティングバナー */
#footer-floating {
	visibility: hidden;
}

@media not all and (min-width: 960px) {


	[data-scrolled=true] #footer-floating {
	    opacity: 1; /* 不透明度 0～1で調整 */
    	-webkit-transform: translateY(0);
    	transform: translateY(0);
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: #fff; /* 背景色（必要に応じて変更） */
		z-index: 1000; /* 他の要素の上に表示 */
    	visibility: visible;
	}

	#footer-floating .swell-block-column:first-child .swell-block-button a {
		background-color: #007BFF !important; /* 左のカラム（青） */
		color: #fff !important; /* 文字色を白 */
	}

	#footer-floating .swell-block-column:last-child .swell-block-button a {
		background-color: #28A745 !important; /* 右のカラム（緑） */
		color: #fff !important; /* 文字色を白 */
	}

	/* アイコンの色も白に統一 */
	#footer-floating .swell-block-button a svg {
		fill: #fff !important;
	}

	#footer-floating .is-style-more_btn{
		padding:0;
	}

	/* 上に戻るボタンの下余白を調整 */
	.p-fixBtnWrap {
		bottom: 4em;
	}
}

.menu-item-891{
	
}


