/* サブページトップ・タイトル */
.sub_top {
    width: 100%;
    height: 150px;
    background: linear-gradient(45deg, #daf4ef99, #ffeedbee), 
    url(../img/sub_bg_head_2111.avif);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
h2.h2_sub {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
}
h2 .h2_sub_cat {
    font-size: 18px;
    line-height: 100%;
    color: #009683;
    border-bottom: solid 1px #009683;
    padding: 0 2px 5px;
    margin-bottom: 15px;
    display: inline-block;
    z-index: 1;
}
h2 .h2_sub_title {
    font-size: 26px;
    text-align: center;
    line-height: 130%;
    z-index: 1;
}
h2 .h2_sub_eng {
    font-size: clamp(2.813rem, -0.17rem + 6.36vw, 5rem);
    /* 45px - 80px */
    /* 750px - 1300px */
    line-height: 100%;
    font-family: "Jost", serif;
    font-weight: 600;
    text-align: center;
    color: #00ac9722;
    position: absolute;
    letter-spacing: 0.01em;
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%; 
}
@media screen and (min-width: 768px) {
h2 .h2_sub_cat {
    font-size: 20px;
}
}
@media screen and (min-width: 1000px) {
.sub_top {
    height: 250px;
    margin-top: 90px;
}
h2 .h2_sub_cat {
    font-size: 22px;
    padding: 0 4px 7px;
    margin-bottom: 20px;
}
h2 .h2_sub_title {
    font-size: 28px;
}
}


/* 2カラム */
.clm_box {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
}
.clm_boxL {
    margin-top: 80px;
}
@media screen and (min-width: 1000px) {
.clm_box {
    justify-content: space-between;
    flex-direction: row;
}
.clm_boxL {
    width: 240px;
    margin-top: 0;
}
.clm_boxR {
    width: calc(100% - 240px - 50px);
    margin-left: 50px;
}
.stick {
    position: sticky;
    top: 150px;
}
}


/* 左カラム */
/* メニューリスト */
.stick_in {
    background: #fff;
    border: 1px solid #00ac97;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    position: relative;
}
.stick_in::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(30deg, #00ac97, #00a18d);
}
.visually_hidden { /* スクリーンリーダー用 */
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
}
.clm_article {
    font-size: 17px;
    line-height: 130%;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: linear-gradient(30deg, #00ac97, #00a18d);
    padding: 10px 15px;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
}
ul.clm_list li {
    margin: 0;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
}
a.clm_title {
    font-size: 18px;
    line-height: 130%;
    border-bottom: solid 1px #00ac97;
    background-color: #fff;
    padding: 15px;
    display: block;
    position: relative;
}
a.clm_title i {
    color: #00a18d;
    position: absolute;
    right: 15px;
    top: calc(50% - 9px);
}
ul.clm_list li:last-of-type {
    margin-bottom: 0;
}
ul li:last-of-type a.clm_title {
    border-bottom: 0;
    margin-bottom: 0;
}
a.clm_title.tit_now {
    background-color: #dff7f1;
}
@media screen and (min-width: 1000px){
.clm_article {
    font-size: 18px;
}
a.clm_title {
    padding: 17px 10px;
    /* 内容によって調整する。デフォは17px 15px; */
}
a.clm_title:hover {
    background-color: #dff7f1;
}
a.clm_title i {
    right: 10px;
    /* 内容によって調整する。デフォは15px; */
}
.clm_box.yesPC1000 .clm_list a.active {
    background-color: #dff7f1;
}
}


/* サブページタイトル */
.h2_cat01 {
    font-size: 18px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #fff;
    background-color: #00ac97;
    width: fit-content;   
    max-width: 100%; 
    padding: 5px 10px;
    margin-bottom: 15px;
}
.h2_cat02 {
    font-size: 18px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #fff;
    background-color: #ff894c;
    width: fit-content;   
    max-width: 100%; 
    padding: 5px 10px;
    margin-bottom: 15px;
}
h2.h2_title01 {
    font-size: 24px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #00ac97;
    display: block;
    border-bottom: solid 1px #00ac97;
    margin: 0 0 20px;
    padding-bottom: 10px;
}
h2.h2_title02 {
    font-size: 24px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #ff894c;
    display: block;
    border-bottom: solid 1px #ff894c;
    margin: 0 0 20px;
    padding-bottom: 10px;
}
h3.h3_philo01 {
    font-size: 20px;
    line-height: 180%;
    font-weight: normal;
    color: #00ac97;
}
h3.h3_philo02 {
    font-size: 20px;
    line-height: 180%;
    font-weight: normal;
    color: #ff894c;
}
.sub_title00 {
    font-size: 17px;
    line-height: 160%;
    font-weight: 600;
    color: #00ac97;
}

.sub_title00_sub {
    font-size: 17px;
    line-height: 160%;
    font-weight: 600;
    color: #ff894c;
}
p.sub_title01 {
    font-size: 19px;
    line-height: 160%;
    font-weight: 600;
    color: #00ac97;
}
p.sub_title02 {
    font-size: 19px;
    line-height: 160%;
    font-weight: 600;
    color: #ff894c;
}
@media screen and (min-width: 1000px) {
h2.h2_title01, h2.h2_title02 {
    font-size: 26px;
    margin: 0 0 20px;
}
h3.h3_philo01, 
h3.h3_philo02 {
    font-size: 22px;
    line-height: 160%;
}
p.sub_title01, p.sub_title02 {
    font-size: 20px;
    list-style: 200%;
}
}


/* サブページボックス */
.subbox {
    padding: 50px 0;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (min-width: 1000px) {
.subbox {
    padding: 80px 0;
}
.subbox:first-of-type {
    padding-bottom: 0;
}
}

/* 右カラム */
.s01 {
    text-align: center;
    margin-bottom: 50px;
}
.s01:last-of-type {
    margin-bottom: 0;
}
.s01_subclr {
    padding: 25px 15px;
    background: linear-gradient(90deg, #ffeedb, #ffdfca);
}
@media screen and (min-width: 768px) {
.s01_subclr {
    padding: 30px;
}
}
@media screen and (min-width: 1000px) {
.s01 {
    margin-bottom: 100px;
}
}
@media screen and (min-width: 1000px) {
.s01_subclr {
    padding: 50px;
}
}


/* フレックスボックス */
/* sub_flex01 */
.sub_flex01 {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 20px;
}
.sf01 {
    width: calc(50% - 10px);
}
@media screen and (min-width: 768px){
.sub_flex01 {
    gap: 30px;
}
.sf01 {
    width: calc(50% - 15px);
}
}
@media screen and (min-width: 1100px){
.sf01 {
    width: calc(25% - 90px / 4);
}
}

/* sub_flex02 */
.sub_flex02 {
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.sub_flex02c {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
@media screen and (min-width: 768px){
.sub_flex02 {
    justify-content: space-between;
    align-items: stretch;
    flex-direction: row;
    gap: 40px;
}
.sub_flex02c {
    align-items: center;
    flex-direction: row;
    gap: 0;
}
.sf02 {
    width: calc(50% - 20px);
}
}

/* sub_flex03 */
.sub_flex03 {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
@media screen and (min-width: 768px){
.sub_flex03 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
}
.sf03_2, .sf03_3 {
    width: calc(50% - 15px);
}
}
@media screen and (min-width: 1300px){
.sf03_3 {
    width: calc(100% / 3 - 20px);
}
}

/* sub_flex11 */
.sub_flex11 {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
@media screen and (min-width: 1100px){
.sub_flex11 {
    justify-content: space-between;
    flex-direction: row;
    gap: 40px;
}
.sf11_L, .sf11_R {
    width: calc(50% - 20px);
}
}



/* メッセージ*/
.sub_flex_boss {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
@media screen and (min-width: 1100px){
.sub_flex_boss {
    justify-content: space-between;
    flex-direction: row;
    gap: 50px;
}
.sf_boss_L {
    width: calc(100% - 250px);
}
.sf_boss_R {
    width: 200px;
}
.sf_boss_R img {
    width: 200px;
    height: auto;
}
}
@media screen and (min-width: 1200px){
.sf_boss_L {
    margin-bottom: 0;
    width: calc(100% - 300px);
}
.sf_boss_R {
    width: 250px;
}
.sf_boss_R img {
    width: 250px;
}
}

h2.bossmsg_txt {
    font-size: 23px;
    line-height: 150%;
    text-align: center;
    color: #00ac97;
    margin-bottom: 25px;
    display: inline-block;
    position: relative;
}
h2.bossmsg_txt:before,
h2.bossmsg_txt:after {
    font-size: 160px;
    line-height: 100%;
    font-family: "Liter", sans-serif;
    color: #dff7f1;
    position: absolute;
    z-index: -1;
}
h2.bossmsg_txt:before {
    content: "“";
    top: -20px;
    left: -40px;
}
h2.bossmsg_txt:after {
    content: "”";
    bottom: -115px;
    right: -40px;
}
p.boss_name {
    font-size: 17px;
    text-align: right;
    margin-top: 5px;
}
@media screen and (min-width: 768px) {
h2.bossmsg_txt {
    font-size: 25px;
    margin-bottom: 40px;
}
h2.bossmsg_txt:before,
h2.bossmsg_txt:after {
    font-size: 170px;
}
h2.bossmsg_txt:before {
    top: -30px;
    left: -40px;
}
h2.bossmsg_txt:after {
    bottom: -135px;
    right: -40px;
}
}
@media screen and (min-width: 1000px) {
h2.bossmsg_txt {
    font-size: 26px;
}
p.boss_name {
    font-size: 18px;
}
}
@media screen and (min-width: 1100px) {
h2.bossmsg_txt {
    text-align: left;
    margin-bottom: 35px;
}
h2.bossmsg_txt:before,
h2.bossmsg_txt:after {
    font-size: 180px;
}
h2.bossmsg_txt:before {
    top: -35px;
    left: -30px;
}
h2.bossmsg_txt:after {
    bottom: -140px;
    right: -30px;
}
}


/* 数字で見る */
.sub_records_box {
    text-align: center;
	height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
.srb_01 {
    background: linear-gradient(135deg, #e9fdf5, #e4faf3);
}
.srb_02 {
    background: linear-gradient(135deg, #fff3e6, #ffeedb);
}
.sub_records_tri {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.srtri_01 {
    background-color: #00ac97;
}
.srtri_02 {
    background-color: #ff894c;
}
p.sub_records_title {
    font-size: 18px;
    line-height: 140%;
    font-weight: 600;
    text-align: center;
    padding: 15px 5px 20px;
    position: relative;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
}
p.srt_01 {
    color: #005547;
}
p.srt_02 {
    color: #c85215;
}
p.sub_records_title:after {
	width: 40px;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
p.srt_01:after {
    border-bottom: 5px solid #00ac97;
}
p.srt_02:after {
    border-bottom: 5px solid #ff894c;
}
.sub_records_box_in01, 
.sub_records_box_in02 {
    padding: 20px 5px 20px;
	flex: 1; /* タイトル以外のエリアを自然に伸ばす */
	display: flex;
	align-items: center;
	justify-content: center;
    flex-direction: column;
}
.sub_records_box_in01 i {
    font-size: 35px;
    color: #00ac97;
    margin-bottom: 10px;
}
.sub_records_box_in02 i {
    font-size: 35px;
    color: #ff894c;
    margin-bottom: 10px;
}
/* カウントアップ */
.countup_num {
	font-size: 20px;
	line-height: 100%;
	font-weight: 600;
}
.cn_01 {
    color: #00ac97;
}
.cn_02 {
    color: #ff894c;
}
.countup_num .num {
	font-size: 35px;
	display: inline-block;
	margin-right: 2px;
	margin-left: 2px;
	vertical-align: -2px;
}
@media screen and (min-width: 1100px){
p.sub_records_title {
    padding: 20px 5px 20px;
}
.sub_records_box_in01, 
.sub_records_box_in02 {
    padding: 20px 15px;
}
.sub_records_box_in01 i, 
.sub_records_box_in02 i {
    margin-bottom: 10px;
}
.countup_num .num {
	font-size: 40px;
}
}

/* どーなつ */
.donut_box {
    margin-top: 30px;
}
.donut {
    display: block;
    --dur: 1000ms;
    margin: 0 auto 20px;
}
.sweep {
    stroke-dasharray: 0 var(--C);
}
svg.start .sweep {
    animation: sweep var(--dur) linear forwards;
}
@keyframes sweep {
  to {
    stroke-dasharray: var(--C) 0;
}
}
.legend {
    width: auto;
    margin: 0 auto;
    display: inline-block;
}
.legend span {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 2px;
    vertical-align: -1px;
}
/* 円グラフが2個のときのみ記述 */
@media screen and (min-width: 768px){
.legend {
    margin: 30px auto 0 0;
}
}
/* 円グラフが2個のときのみ記述ここまで */


/* アクセス */
.accsmap iframe {
    width: 100%;
    height: 300px;
    border: 0;
}
@media screen and (min-width: 768px){
.accsmap iframe {
    height: 400px;
}
}
@media screen and (min-width: 1000px){
.accsmap iframe {
    height: 500px;
}
}

/* アクセス近隣情報 */
.accs_whereis {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.accs_whereis_box {
    background: linear-gradient(135deg, #f9f7ec, #f5f3e8);
    max-width: 100%;    
    display: flex;
    flex-direction: column;
    flex: 1 1 100%;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.awb_text {
    height: 100%;
    padding: 15px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.accs_whereis_box img {
    max-height: 250px;
}
p.station {
    font-size: 23px;
    line-height: 140%;
    font-weight: 600;
    text-align: center;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
}
.time {
    font-size: 19px;
    text-align: center;
}
.time_num {
    font-size: 38px;
    font-family: "Jost", serif;
    font-weight: 600;
    color: #c84b19;
    margin: 0 1px;
    vertical-align: -3px;
}
.time_min {
    font-size: 22px;
    font-weight: bold;
    color: #c84b19;
    vertical-align: -1px;
}
/* タブレット：2列 */
@media screen and (min-width: 599px) {
.accs_whereis_box {
    flex: 0 0 calc(50% - 10px);
}
}
/* PC：3列 */
@media screen and (min-width: 1200px) {
.accs_whereis_box {
    flex: 0 0 calc(100% / 3 - 40px / 3);
}
}


/* 1日のスケジュールページ */
.schedule_box {
    position: relative;
}
.schedule_box::before {
    content: "";
    position: absolute;
    top: 35px;
    left: calc(30px - 2px);
    width: 4px;
    height: calc(100% - 35px);
    z-index: 0;
}
.sche01::before {
    background: linear-gradient(#ffa165, #ff6b2e);
}
.sche02::before {
    background: linear-gradient(#00c2ab, #009683);
}
.sche_step {
    display: flex;
    align-items: flex-start;
    position: relative;
    padding-bottom: 40px;
}
.sche_step:last-child {
    padding-bottom: 0;
}
.sche_time {
    font-size: 13px;
    line-height: 130%;
    font-weight: bold;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    z-index: 1; /* 縦線より前に出す */
    font-feature-settings: "palt";
}
.sche01 p.sche_time {
    background: linear-gradient(135deg, #ff985b, #ff7a3d);
}
.sche02 p.sche_time {
    background: linear-gradient(135deg, #00b7a1, #00a18d);
}
.sche_content {
    text-align: left;
    margin-left: 15px;
    flex: 1;
}
.sche_content h3 {
    font-size: 19px;
    line-height: 140%;
    font-weight: bold;
    text-align: left;
    margin-top: 15px;
    margin-bottom: 10px;
}
.sche_txt01 {
    margin-bottom: 20px;
}
.sche01 .sche_content h3 {
    color: #ff894c;
}
.sche02 .sche_content h3 {
    color: #00ac97;
}
.sche_pic01 img {
    max-width: 400px;
    border: solid 6px #fff;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
}
@media screen and (min-width: 768px) {
.sche_step {
    padding-bottom: 50px;
} 
.sche_flex01 {
    display: flex;
    justify-content: space-between;
}
.sche_txt01 {
    margin-bottom: 0;
    margin-right: 40px;
}
.sche_pic01 img {
    width: 240px;
    height: 180px;
    border: solid 7px #fff;
}
}
@media screen and (min-width: 1000px) {
.schedule_box::before {
    top: 45px;
    left: calc(50px - 2px);
    height: calc(100% - 50px);
}
p.sche_time {
    font-size: 18px;
    width: 100px;
    height: 100px;
}
p.sche_time span {
    font-size: 15px;
    font-weight: 500;
}
.sche_content h3 {
    margin-top: 25px;
}
.sche_pic01 img {
    width: 200px;
    height: 160px;
}
}
@media screen and (min-width: 1200px) {
.sche_step {
    padding-bottom: 60px;
}    
.sche_pic01 img {
    width: 260px;
    height: 200px;
    border: solid 8px #fff;
}
}


/* シフト例 */
.tbl_shift {
	border: solid 1px #ddd;
}
.tbl_shift th, .tbl_shift td {
    padding: 5px;
    border-bottom: solid 1px #ddd;
    font-feature-settings: "palt";
}
.tbl_shift tr:last-of-type th, 
.tbl_shift tr:last-of-type td {
    border-bottom: 0;
}
.tbl_shift th {
    font-weight: 700;
    text-align: center;
    border-right: solid 1px #ddd;
    white-space: nowrap;
}
.tbl_shift th.th01 {
    color: #00ac97;
    background-color: #dff7f1;
}
.tbl_shift th.th02 {
    color: #ff894c;
    background-color: #ffe7d3;
}
.tbl_shift td {
    line-height: 140%;
    font-size: 14px;
    font-weight: bold;
    text-align: justify;
    border-right: solid 1px #ddd;
}

.td_date01 p { /*日勤*/
    background-color: #fe9f31;   
}
.td_date02 p { /*夜勤*/
    background-color: #33d3fe;
}
.td_date03 p { /*休み*/
    background-color: #ff8296;
}
.td_date04 p { /*明け*/
    background-color: #33d3fe;
}
.td_date05 p { /*有休*/
    background-color: #ff3333;
}
.td_date06 p { /*早番*/
    background-color: #2BA150;
}
.td_date07 p { /*遅番*/
    background-color: #9B59B6;
}
.tbl_shift td p {
    font-size: 14px;
    font-weight: lighter; 
    text-align: center;
    color: #fff;
    border-radius: 5px;
    margin-top: 8px;
}
@media screen and (min-width: 768px) {
.tbl_shift th {
    padding: 8px;
    font-size: 18px;
}
.tbl_shift td {
    font-size: 18px; 
    padding: 5px 15px 15px 15px; 
}
.tbl_shift td p {
    font-size: 18px;
    margin-top: 15px;
}
}
@media screen and (min-width: 1000px) {
 .tbl_shift th {
    padding: 6px;
}
.tbl_shift td {
    padding: 3px 10px 10px 10px; 
}
.tbl_shift td p { 
    margin-top: 20px;
}
}
@media screen and (min-width: 1200px) {
 .tbl_shift th {
    font-size: 19px;
}
.tbl_shift td {
    font-size: 19px;
    padding: 3px 18px 10px 18px; 
}
.tbl_shift td p{
    font-size: 19px;
    margin-top: 25px;   
}
}


/* 看護部長・教育担当インタビューボタン */
.intv {
    max-width: 500px;
    height: 80px;
    background: linear-gradient(90deg, #ff985b, #ff7a3d);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
.intv p {
    font-size: 15px;
    line-height: 140%;
    text-align: center;
    color: #fff;
    width: calc(100% - 150px);
}
.intv p i {
    margin-left: 10px;
}
.intv img {
    width: 150px;
    height: 80px;
    object-fit: cover;
    clip-path: polygon(9% 0%, 100% 0%, 100% 100%, 0% 100%);
}
@media screen and (min-width: 768px) {
.intv {
    height: 100px;
}
.intv p {
    font-size: 16px;
    line-height: 150%;
}
.intv img {
    height: 100px;
}
}
@media screen and (min-width: 1000px) {
.intv {
    height: 120px;
    transition: all 0.2s ease;
}
.intv:hover {
    opacity: 0.8;
}
.intv p {
    width: 400px;
}
.intv img {
    width: 200px;
    height: 120px;
}
}


/* 先輩の声 */
.sv_box01, .sv_box02 {
    position: relative;
}
.sv_box01 {
    background: linear-gradient(135deg,#e4faf3, #daf4ef);
}
.sv_box02 {
    background :linear-gradient(135deg,#ffeedb, #ffdfca);
}
.sv_num {
    position: absolute;
    top: -6px;
    left: -1px;
    z-index: 10;
}
.sv_num p {
    font-size: 40px;
    line-height: 100%;
    font-family: "Jost", serif;
    font-weight: 600;
    color: #ffffff44;
}
.sv_catchbox {
    position: relative;
}
.sv_catchpic img {
    max-height: 300px;
}
h2.sv_catch {
    text-align: right;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    position: absolute;
    bottom: 5px;
    right: -20px;
}
h2.sv_catch span {
    line-height: 130%;
    font-weight: 600;
    text-align: left;
    letter-spacing: 0.05em;
    font-feature-settings: "palt";
    clip-path: inset(0 100% 0 0);
    transition: clip-path 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
h2.sv_catch.-visible span {
    clip-path: inset(0 0 0 0);
}
h2.sv_catch.-visible span.sv_main01, 
h2.sv_catch.-visible span.sv_sub01 {
    transition-delay: 0.4s; /* 先に出す */
}
h2.sv_catch.-visible span.sv_main02, 
h2.sv_catch.-visible span.sv_sub02 {
    transition-delay: 1.4s; /* 少し遅れて出す */
}
h2.sv_catch span.sv_main01 {
    font-size: 19px;
    color: #fff;
    background-color: #00ac97;
    padding: 7px 10px;
    margin-bottom: 5px;
    display: inline-block;
}
h2.sv_catch span.sv_main02 {
    font-size: 16px;
    color: #00ac97;
    background-color: #fff;
    padding: 5px 10px;
    display: inline-block;
}
h2.sv_catch span.sv_sub01 {
    font-size: 19px;
    color: #fff;
    background-color: #ff894c;
    padding: 7px 10px;
    margin-bottom: 5px;
    display: inline-block;
}
h2.sv_catch span.sv_sub02 {
    font-size: 16px;
    color: #ff894c;
    background-color: #fff;
    padding: 5px 10px;
    display: inline-block;
}
@media screen and (min-width: 768px){
h2.sv_catch {
    bottom: 10px;
    right: -20px;
}
h2.sv_catch span.sv_main01, 
h2.sv_catch span.sv_sub01 {
    padding: 8px 10px;
    margin-bottom: 10px;
}
h2.sv_catch span.sv_main02, 
h2.sv_catch span.sv_sub02 {
    padding: 6px 10px;
}
.sv_catchpic img {
    max-height: 350px;
}
}
@media screen and (min-width: 1000px){
.sv_box01, .sv_box02 {
    margin-top: 30px;
}
.sv_catchbox {
    display: flex;
}
.sv_num {
    top: -8px;
    right: -8px;
    left: auto;
    text-wrap: nowrap;
}
.sv_num p {
    font-size: 60px;
    color: #ffffffb0;
}
.sv_catchpic img {
    height: 300px;
    max-width: 450px;
    margin-top: -30px;
    margin-left: 50px;
}
}
@media screen and (min-width: 1200px){
.sv_catchbox {
    display: flex;
}
.sv_num {
    top: -15px;
    right: -10px;
}
.sv_num p {
    font-size: 90px;
}
h2.sv_catch {
    text-align: left;
    align-items: flex-start;
    bottom: 20px;
    left: 420px;
}
h2.sv_catch span.sv_main01 {
    font-size: 22px;
    padding: 8px 15px 10px;
    margin-bottom: 12px;
    display: inline-block;
}
h2.sv_catch span.sv_sub01 {
    font-size: 22px;
    padding: 8px 15px 10px;
    margin-bottom: 12px;
    display: inline-block;
}
}

/* Q&A */
.sv_qa01, .sv_qa02 {
    padding: 20px 15px;
}
.qa_flex {
    display: flex;
}
.q_circle, .a_circle {
    font-family: "Jost", serif;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    color: #fff;
    margin-right: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.q_circle {
    background: #ff894c;
    margin-top: 2px;
}
.a_circle {
    background: #00ac97;
    margin-top: 2px;
}
p.q_txt {
    line-height: 150%;
    font-weight: 700;
    color: #ff894c;
    width: calc(100% - 30px);
    margin-bottom: 10px;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
}
p.a_txt {
    width: calc(100% - 30px);
    margin-bottom: 20px;
}
.sv_qa01 .qa_flex:last-of-type p.a_txt, 
.sv_qa02 .qa_flex:last-of-type p.a_txt {
    margin-bottom: 0;
}
.qa_bdb_mainclr {
    border-bottom: solid 1px #00ac97;
}
.qa_bdb_subclr {
    border-bottom: solid 1px #ff894c;
}
.qa_bdb_mainclr, .qa_bdb_subclr {
    margin-bottom: 20px;
}
@media screen and (min-width: 600px) {
.sv_qa01, .sv_qa02 {
    padding: 30px 40px;
}
}
@media screen and (min-width: 768px) {
.sv_qa01, .sv_qa02 {
    padding: 40px;
}
.q_circle,
.a_circle {
    width: 25px;
    height: 25px;
    margin-right: 10px;
}
.q_circle {
    background: #ff894c;
    margin-top: 1px;
}
.a_circle {
    background: #00ac97;
    margin-top: 2px;
}
p.q_txt {
    width: calc(100% - 35px);
    margin-bottom: 12px;
}
p.a_txt {
    width: calc(100% - 35px);
    margin-bottom: 30px;
}
.qa_bdb_mainclr, .qa_bdb_subclr {
    margin-bottom: 30px;
}
}
@media screen and (min-width: 768px) {
.sv_qa01, .sv_qa02 {
    padding: 50px;
}
}
@media screen and (min-width: 1200px) {
.sv_qa01, .sv_qa02 {
    padding: 60px 80px;
}
p.q_txt {
    margin-bottom: 15px;
}
p.a_txt {
    margin-bottom: 35px;
}
.qa_bdb_mainclr, .qa_bdb_subclr {
    margin-bottom: 40px;
}
}

/* マーカー */
.marker, .marker_mainclr, .marker_subclr {
    background-repeat: no-repeat;
    background-size: 0% 100%;
    display: inline;
    padding: 0 1px 5px;
    transition: background-size 1.5s;
    transition-delay: 0.75s;
}
.marker {
    background-image: linear-gradient(transparent 60%, #00000017 60%);
}
.marker_mainclr {
    background-image: linear-gradient(transparent 60%, #00554733 60%);
}
.marker_subclr {
    background-image: linear-gradient(transparent 60%, #c8521533 60%);
}
.marker.on, .marker_mainclr.on, .marker_subclr.on {
    background-size: 100% 100%;
}


/* 教育 */

.arrow {
    font-size: 30px;
    color: #222;
    margin: 10px;
}

.career_txt_box {
    border: solid 1px #ff6e8c;
    background: #fce5eb;
    padding: 10px 15px;
}

.career_txt {
    font-weight: bold;
    color: #ff6e8c;
}

.career_img_box {
    border: solid 1px #ccc;
}

@media screen and (min-width: 768px) {
.career_img_box {
    width: 80%;
    margin: auto;
}
}

@media screen and (min-width: 1000px) {
.arrow {
    font-size: 35px;
    text-align: left;
    margin: 30px 10px;
    }
}

@media screen and (min-width: 1100px) {

.career_box {
    width: 55%;
}
.career_img_box {
    width: 45%;
    margin-top: 50px;
}
}

/* 教育キャリアデザイン テーブル*/
.tbl_edu {
	border: solid 1px #222;
}

.tbl_edu th {
    font-weight: 700;
    border-right: solid 1px #222;
    border-bottom: solid 1px #222;
    color: #222;
    text-align: center;
    padding: 10px;
    
}

.tbl_edu th.th01 {
    background-color: #a5d5e2;
}
.tbl_edu th.th02 {
    background-color: #aff0a2;
}
.tbl_edu th.th03 {
    background-color: #fbcaa2;
}
.tbl_edu td {
    border-bottom: solid 1px #222;
    padding: 10px;
}

@media screen and (min-width: 768px) {
.tbl_edu th {
    padding: 5px 10px;
}
.tbl_edu td {
    padding: 15px;
}
}


/* 入職後のサポート制度 */
.support_box {
    position: relative;
}
.support_box::before {
    content: "";
    position: absolute;
    top: 35px;
    left: calc(30px - 2px);
    width: 4px;
    height: calc(100% - 35px);
    background: linear-gradient(#00c2ab, #009683);
    z-index: 0;
}
.supp_step {
    display: flex;
    align-items: flex-start;
    position: relative;
    padding-bottom: 40px;
}
.supp_step:last-child {
    padding-bottom: 0;
}
.supp_time {
    font-size: 10px;
    /* 内容によって調整する。デフォは13px; */
    line-height: 130%;
    font-weight: bold;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    width: 65px;
    height: 65px;
    /* 内容によって調整する。デフォは60px */
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    z-index: 1; /* 縦線より前に出す */
    font-feature-settings: "palt";
}
p.supp_time span {
    font-size: 9px;
    /* 内容によって調整する。デフォは未設定 。*/
    margin-top: 3px;
}
p.supp_time {
    background: linear-gradient(135deg, #00b7a1, #00a18d);
}
.supp_content {
    text-align: left;
    margin-left: 15px;
    flex: 1;
}
.supp_content h3 {
    font-size: 19px;
    line-height: 140%;
    font-weight: bold;
    text-align: left;
    color: #00ac97;
    margin-top: 20px;
    /* 内容によって調整する。デフォは15px */
    margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
.supp_step {
    padding-bottom: 50px;
} 
}
@media screen and (min-width: 1000px) {
.support_box::before {
    top: 45px;
    left: calc(50px - 2px);
    height: calc(100% - 50px);
}
p.supp_time {
    font-size: 15px;
    /* 内容によって調整する。デフォは18px; */
    width: 100px;
    height: 100px;
}
p.supp_time span {
    font-size: 13px;
    /* 内容によって調整する。デフォは未設定 */
    font-weight: 500;
}
.supp_content h3 {
    margin-top: 25px;
}
}
@media screen and (min-width: 1200px) {
.supp_step {
    padding-bottom: 60px;
}    
}


/* よくある質問 */
ul.faq_accordion {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.faq_accordion .faq_box {
	border: solid 1px #ddd;
}
.faq_question {
    position: relative;
    cursor: pointer;
    padding: 20px 45px 20px 10px;
    display: flex;
    transition: all 0.5s ease;
}
p.mark_Q, p.mark_A {
    font-family: "Jost", serif;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}
p.mark_Q {
    background-color: #00ac97;
}
p.mark_A {
    background-color: #ff894c;
}
.faq_txt {
    width: calc(100% - 40px);
    margin-top: 1.5px;
    margin-left: 10px;
}
.faq_question::before,
.faq_question::after {
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #ff894c;
    transition: all 0.5s ease;
}
.faq_question::before{
    top: 48%;
    right: 15px;
    transform: rotate(0deg);
}
.faq_question::after{    
    top: 48%;
    right: 15px;
    transform: rotate(90deg);
}
.faq_question.close::before{
	transform: rotate(45deg);
}
.faq_question.close::after{
	transform: rotate(-45deg);
}
.faq_answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: #ffe7d3;
    padding: 0 15px 0 10px
}
.faq_answer_in {
    padding: 15px 0;
    display: flex;
}
@media screen and (min-width: 1000px){
ul.faq_accordion {
    gap: 25px;
}
.faq_txt {
    margin-top: 0;
}
.faq_question {
    padding: 25px 50px 25px 20px;
}
.faq_question::before{
    right: 20px;
}
.faq_question::after{    
    right: 20px;
}
.faq_answer {
    padding: 0 20px;
}
.faq_answer_in {
    padding: 25px 0;
}
}

/* table */
.tbl500 {
    max-width: 500px;
}
.tbl700 {
    max-width: 700px;
}


/* table01一生横並び */
.tbl01 {
	border: solid 1px #00ac97;
}
.tbl01_subclr {
    border: solid 1px #ff894c;
}
.tbl01 th, .tbl01 td {
    padding: 10px;
    border-bottom: solid 1px #00ac97;
    font-feature-settings: "palt";
}
.tbl01_subclr th, .tbl01_subclr td {
    border-bottom: solid 1px #ff894c;
} 
.tbl01 tr:last-of-type th, 
.tbl01 tr:last-of-type td {
    border-bottom: 0;
}
.tbl01 th {
    font-weight: 700;
    text-align: center;
    color: #00ac97;
    background-color: #dff7f1;
    border-right: solid 1px #00ac97;
    white-space: nowrap;
}
.tbl01_subclr th {
    color: #ff894c;
    background-color: #ffe7d3;
    border-right: solid 1px #ff894c;
}
.tbl01 th.th01 {
    font-weight: 500;
    padding: 7px 10px;
    color: #fff;
    background-color: #00ac97;
    border-right: solid 1px #dff7f1;
    border-bottom: solid 1px #00ac97;
}
.tbl01 th.th01:last-of-type {
    border-right: solid 1px #00ac97;
}
.tbl01 th.th02 {
    color: #fff;
    background-color: #00ac97;
    border-right: solid 1px #00ac97;
    border-bottom: solid 1px #00ac97;
}
.tbl01 th.th03 {
    font-size: 15px;
    line-height: 140%;
    background-color: #d5f1ed;
    width: 15%;
    padding: 10px 5px;
}
.tbl01 th.th04 {
    padding: 10px 5px;
}
.tbl01 td {
    line-height: 140%;
    text-align: justify;
    background-color: #fff;
}
.tbl01 td.td01 {
    text-align: center;
    color: #00ac97;
    background-color: #dff7f1;
    border-right: solid 1px #00ac97;
    border-bottom: solid 1px #00ac97;
}

.tbl01 td.td02 {
    text-align: center;
    border-right: solid 1px #00ac97;
}
.tbl01 td.td03 {
    font-size: 15px;
    line-height: 140%;
    text-align: center;
    background-color: #dff7f1;
    border-right: solid 1px #00ac97;
    width: 15%;
    padding: 10px 5px;
}
a.tbl_tel {
	font-size: 28px;
    line-height: 100%;
	font-family: "Outfit", sans-serif;
    font-weight: 500;
    color: #00ac97;
    letter-spacing: 0.03em;
}

a.tbl_link01 {
    color: #00ac97;
    border-bottom: solid 1px #00ac97;
}

@media screen and (min-width: 768px) {
.tbl01 th, .tbl01 td {
    padding: 15px;
}
.tbl01 th.th03 {
    font-size: 16px;
}
.tbl01 td.td03 {
    font-size: 16px;
}
a.tbl_link01:hover {
    color: #009683;
    border-bottom: solid 1px #009683;
}
}
@media screen and (min-width: 1000px) {
.tbl01 th.th03 {
    font-size: 17px;
}
.tbl01 td.td03 {
    font-size: 17px;
}
}

/* 横スクロール専用 */
.has_tbl_scroll,
.has_tbl_scroll_inner,
.has_tbl_scroll .s01,
.has_tbl_scroll .tbl01_wrap {
    min-width: 0;
}
.has_tbl_scroll_inner {
    width: 100%;
}
.has_tbl_scroll .tbl01_wrap {
    position: relative;
    width: 100%;
    max-width: 100%;
}
/* 599px以下だけ横スクロール */
@media screen and (max-width: 599px) {
.has_tbl_scroll .tbl01_wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #00a6ba #ddd;
}
.has_tbl_scroll .tbl01_wrap::-webkit-scrollbar {
    height: 8px;
}
.has_tbl_scroll .tbl01_wrap::-webkit-scrollbar-track {
    background: #ddd;
}
.has_tbl_scroll .tbl01_wrap::-webkit-scrollbar-thumb {
    background: #00a6ba;
}
/* テーブルに必要幅を持たせる */
.has_tbl_scroll .tbl01_wrap .tbl01 {
    width: max-content;
    min-width: 600px;
    /* 何px以下で横スクロールするかで数字を変える。何pxの数字+1pxにしよう */
}
/* スクロールヒント */
.has_tbl_scroll .tbl01_wrap.is-scrollable::after {
    content: "横にスクロールできます →";
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 11px;
    line-height: 100%;
    color: #fff;
    background: #00a6ba;
    border-radius: 999px;
    padding: 5px 10px 7px;
    transition: opacity 0.3s ease;
    z-index: 2;
}
.has_tbl_scroll .tbl01_wrap.is-scrolled::after {
    opacity: 0;
}
}
/* 動きを減らしたいユーザー向け */
@media (prefers-reduced-motion: reduce) {
.has_tbl_scroll .tbl01_wrap.is-scrollable::after {
    transition: none;
}
}

/* table02 */
.tbl02  {
    border: solid 1px #00ac97;
}
.tbl02 th {
    border-bottom: solid 1px #00ac97;
    background-color: #dff7f1;
    color: #00ac97;
    display: block;
    text-align: center;
    padding: 10px;
    white-space: nowrap;
}
.tbl02 th.th02 {
    font-size: 15px;
    line-height: 140%;
    font-weight: 700;
    text-align: left;
    padding: 5px 10px;
}
.tbl02 td {
    border-bottom: solid 1px #00ac97;
    font-size: 16px;
    line-height: 180%;
    text-align: justify;
    background-color: #fff;
    display: block;
}
.tbl02 td.td01 {
    padding: 15px;
}

.tbl02 td.last {
    border-bottom: none;
}

.tbl02 td.td02 {
    font-size: 16px;
    padding: 15px 15px 0 15px;
    border-bottom: none;
}

@media screen and (min-width: 768px) {
.tbl02 th {
    border-right: solid 1px #00ac97;
    display: table-cell;
}
.tbl02 th.th02 {
    text-align: center;
    width: 170px;
    padding: 10px;
}
.tbl02 td {
    display: table-cell;
}
}

@media screen and (min-width: 1000px) {
.tbl02 td.td01 {
    padding: 15px 20px;
}

.tbl02 td.td02 {
    padding: 15px 20px 0 15px;
}
}



/* table03 */
.tbl03 tr {
    border: solid 1px #00ac97;
}
.tbl03 th {
    color: #00ac97;
    background-color: #dff7f1;
    border-bottom: solid 1px #00ac97;
    display: block;
    padding: 10px;
    white-space: nowrap;
}
.tbl03 td {
    font-size: 16px;
    line-height: 150%;
    text-align: justify;
    background-color: #fff;
    display: block;
    padding: 10px;
}
.tbl03 td p.scl {
    line-height: 160%;
    font-weight: bold;
    color: #00ac97;
    margin-bottom: 5px;
}
.tbl03 td p.scl_wide {
    line-height: 160%;
    font-weight: bold;
    color: #00ac97;
    padding-bottom: 1px;
}
@media screen and (min-width: 768px) {
.tbl03 th {
    padding: 10px 15px;
}
.tbl03 td {
    padding: 15px;
}
.tbl03 th.th02 {
    text-align: center;
    width: 170px;
    padding: 10px;
}
.tbl03 td.td02 {
    padding: 10px;
}
}


/* 背景bgと理念系背景三角 */
.sb_bg_main {
    background: linear-gradient(135deg, #e4faf3, #daf4ef);
    padding: 20px 15px;
}
.sb_bg_sub {
    background: linear-gradient(135deg, #ffeedb, #ffdfca);
    padding: 20px 15px;
}
.sb_bg01, .sb_bg01_wide, .sb_bg02 {
    padding: 30px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
}
.sb_bg01 {
    background: linear-gradient(135deg, #e4faf3, #daf4ef);
}
.sb_bg02 {
    background: linear-gradient(135deg, #ffeedb, #ffdfca);
}
.sb_bg01_wide, 
.sb_bg01_narrow {
    padding: 40px 20px;
}
.philo_tri_a {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.philo_tri_b {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30px;
    height: 30px;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.ptri_01 {
    background-color: #00ac97;
    
}
.ptri_02 {
    background-color: #ff894c;
    
}
.philo_txt_box { 
/*理念とともに説明文があるときのテキスト囲む箱。あった方がいいです?*/
    margin-top: 10px;
}

@media screen and (min-width: 499px) {
.sb_bg01,
.sb_bg02 {
    padding: 30px 40px;
}
.sb_bg01_wide, 
.sb_bg01_narrow {
    padding: 60px 40px;
}
}
@media screen and (min-width: 768px) {
.sb_bg_main, 
.sb_bg_sub {
    padding: 30px 20px;
}
}
@media screen and (min-width: 1100px) {
.sb_bg01 {
    padding: 50px 100px;
    margin-bottom: 50px;
}
.sb_bg02 {
    padding: 50px 140px;
    margin-bottom: 50px;
}
.sb_bg01_wide {
    padding: 80px 100px;
}
.sb_bg01_narrow {
    padding: 80px 40px;
}
}


/* 見学・説明会・インターンシップ */
/* プログラム化する */
.int_s01, .int_s02 {
    padding-bottom: 50px;
}
.int_s01 h2.h2_int_title {
    font-size: 24px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #00ac97;
    display: block;
    border-bottom: solid 1px #00ac97;
    margin: 0 0 20px;
    padding-bottom: 10px;
}
.int_s02 h2.h2_int_title {
    font-size: 24px;
    line-height: 140%;
    font-weight: normal;
    text-align: left;
    color: #ff894c;
    display: block;
    border-bottom: solid 1px #ff894c;
    margin: 0 0 20px;
    padding-bottom: 10px;
}
.int_box {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.int_box_txt {
    text-align: left;
}
.int_box_assets {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.int_link {
    font-size: 16px;
    line-height: 140%;
    font-weight: 600;
    padding: 15px 35px 15px 20px;
    border-radius: 999px;
    width: 100%;
    max-width: 320px;
    display: inline-flex;
    align-items: center;
    position: relative;
}
.int_s01 .int_link {
    color: #00ac97;
    background-color: #e4faf3;
    border: solid 1px #00ac97;
}
.int_s02 .int_link {
    color: #ff894c;
    background-color: #ffeedb;
    border: solid 1px #ff894c;
}
.int_link i {
    position: absolute;
    top: calc(50% - 8px);
    right: 15px;
}
@media screen and (min-width: 701px) {
.int_s01, .int_s02 {
    padding-bottom: 100px;
}
.int_box {
    gap: 30px;
}
.int_s01 .int_link:hover {
     background-color: #d5f1ed;
}
.int_s02 .int_link:hover {
     background-color: #ffdfca;
}
}

/* インターンシップ表のtableプログラム */
/* --- 共通設定 --- */
.table_title {
    font-size: 18px;
    line-height: 140%;
    font-weight: 600;
    text-align: left;
    margin-bottom: 10px;
}
.table_title::before {
    content: "■";
    margin-right: 2px;
}
.tbl_int {
    border-collapse: collapse;
    width: 100%;
}
.tbl_int th, 
.tbl_int td {
    padding: 10px 5px;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
}
.tbl_int th {
    font-weight: 700;
    text-align: center;
}
.tbl_int th.th_title {
    padding: 7px 5px;
}
.tbl_int td {
    line-height: 150%;
    text-align: justify;
    background-color: #fff;
}
.int_bold {
    font-weight: bold;
}
@media screen and (min-width: 810px) {/* 画面全体で1100px */
.tbl_int th, .tbl_int td {
    padding: 15px;
}
}

/* --- パターン01（メインカラー） --- */
.int_s01 .table_title { 
    color: #00ac97;
}
.int_s01 .tbl_int {
    border: solid 1px #00ac97;
}
.int_s01 .tbl_int th {
    color: #00ac97;
    background-color: #e9fdf5;
    border-right: solid 1px #00ac97;
    border-bottom: solid 1px #00ac97;
}
.int_s01 .tbl_int th.th_title {
    background-color: #d5f1ed;
}
.int_s01 .tbl_int td {
    border-bottom: solid 1px #00ac97;
}
.int_s01 .int_bold {
    color: #00ac97;
}

/* --- パターン02（サブカラー） --- */
.int_s02 .table_title { 
    color: #ff894c;
}
.int_s02 .tbl_int {
    border: solid 1px #ff894c;
}
.int_s02 .tbl_int th {
    color: #ff894c;
    background-color: #fff3e6;
    border-right: solid 1px #ff894c;
    border-bottom: solid 1px #ff894c;
}
.int_s02 .tbl_int th.th_title {
    background-color: #ffd6c0;
}
.int_s02 .tbl_int td {
    border-bottom: solid 1px #ff894c;
}
.int_s02 .int_bold {
    color: #ff894c;
}

/* thのwidthサイズ4パターン */
.int_s01 th.th01, 
.int_s02 th.th01 {
    width: 15%;
}
.int_s01 th.th02, 
.int_s02 th.th02 {
    width: 20%;
}
.int_s01 th.th03, 
.int_s02 th.th03 {
    width: 30%;
}
.int_s01 th.th04, 
.int_s02 th.th04 {
    width: 40%;
}
@media screen and (min-width: 500px) {
.int_box_table td[style*="width"] {
    width: auto !important;
}
.int_s01 th.th01, 
.int_s02 th.th01, 
.int_s01 th.th02, 
.int_s02 th.th02 {
    width: 100px !important;
    min-width: 100px !important;
}
}
@media screen and (min-width: 600px) {
.int_s01 th.th03, 
.int_s02 th.th03 {
    width: 200px !important;
    min-width: 200px !important;
}
}
@media screen and (min-width: 810px) {/* 画面全体で1100px */
.int_s01 th.th04, 
.int_s02 th.th04 {
    width: 300px !important;
    min-width: 300px !important;
}
}

/* エントリーボタン */
.int_btn01 {
    color: #fff;
    background-color: #00ac97;
    border-radius: 30px;
    width: 100%;
    max-width: 320px;
    height: 60px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.int_btn01 i {
	margin: 0 10px 0 0;
}
.int_btn02 {
    color: #fff;
    background-color: #ff894c;
    border-radius: 30px;
    width: 100%;
    max-width: 320px;
    height: 60px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.int_btn02 i {
	margin: 0 10px 0 0;
}
@media screen and (min-width: 610px){
.int_btn01:hover {
	background-color: #009683;
}
.int_btn02:hover {
	background-color: #ff6b2e;
}
}

